/*
Theme Name: OYA Theme
Theme URI: https://oya.marinadimitrova.com
Description: Индивидуална, лека и бърза тема за уеб приложението OYA. Без Elementor.
Version: 1.3.6
Author: MD Theme
Author URI: https://marinadimitrova.com
Text Domain: oya-theme
*/

/* =========================================
   1. ДИЗАЙН СИСТЕМА И ПРОМЕНЛИВИ
   ========================================= */
:root { 
    --oya-sidebar-bg: #f7fdff; 
    --oya-sidebar-width: 320px; 
    --oya-blue: #0cc0df; 
    --oya-header-height: 60px;
    --nav-bar-height: 55px;
    --primary-color: #0cc0df;
    --primary-hover: #0aa3be;
    --bg-color: #ffffff;
    --card-bg: #ffffff;
    --text-color: #2c3e50;
    --text-muted: #65676b;
    --border-color: #cbd5e1;
    --font-main: 'Roboto', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --border-radius: 20px;
    --transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    
    --en-red: #e74c3c; 
    --en-yellow: #fcd204; 
    --en-green: #8ca092; 
}

/* =========================================
   2. ГЛОБАЛНО НУЛИРАНЕ И ЕСТЕСТВЕН СКРОЛ
   ========================================= */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    background-color: var(--bg-color) !important;
}

body { 
    background-color: transparent !important;
    overflow-y: auto !important; 
    overflow-x: hidden !important; 
    min-height: 100vh !important; 
    margin: 0 !important; 
    padding: 0 !important; 
    font-family: var(--font-main);
    -webkit-font-smoothing: antialiased;
}

a {
    color: var(--primary-color);
    text-decoration: none;
    transition: var(--transition);
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* ЗАКЛЮЧВАНЕ НА СКРОЛА САМО ЗА WELCOME СТРАНИЦАТА */
body.page-template-template-oya-welcome,
body.page-template-template-oya-welcome html {
    overflow: hidden !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
}

/* =========================================
   3. ФОН С 80% ПРОЗРАЧНОСТ (OYA ФОН)
   ========================================= */
.oya-fixed-bg-wrap {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    z-index: -1 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    background-image: url('https://oya.marinadimitrova.com/wp-content/uploads/2026/07/oya_background.webp') !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-attachment: fixed !important;
    opacity: 0.5 !important; 
}

/* =========================================
   4. КОНТЕЙНЕР НА ПРИЛОЖЕНИЕТО
   ========================================= */
#oya-core-feed.oya-feed-container {
    width: 100% !important; 
    max-width: 450px !important; 
    margin: 0 auto !important; 
    padding: 80px 15px 120px 15px !important; 
    display: flex !important; 
    flex-direction: column !important; 
    gap: 25px !important; 
    box-sizing: border-box !important;
}

#oya-core-feed h1, #oya-core-feed h2, #oya-core-feed p { margin: 0 !important; padding: 0 !important; line-height: 1.2 !important; }

/* КАРТИ */
#oya-core-feed .oya-card { 
    background: #ffffff !important; 
    border-radius: 35px !important; 
    box-shadow: 0 10px 30px rgba(0,0,0,0.06) !important; 
    padding: 25px 20px !important; 
    display: flex; 
    flex-direction: column; 
    border: 1px solid rgba(0,0,0,0.02) !important; 
    overflow: hidden !important; 
    width: 100% !important; 
    box-sizing: border-box !important; 
}

.hidden-card { display: none !important; }

#oya-core-feed #card-onboarding-d1,
#oya-core-feed #card-onboarding-d2 {
    display: flex !important;
    flex-direction: column !important;
    gap: 25px !important; 
    width: 100% !important;
    box-sizing: border-box !important;
}

/* COLLAPSE АНИМАЦИЯ */
#oya-core-feed .card-collapsible-body { 
    transition: max-height 0.4s ease-out, opacity 0.3s ease-out; 
    max-height: 2000px; 
    opacity: 1; 
    overflow: hidden; 
}

#oya-core-feed .oya-card.collapsed .card-collapsible-body { 
    max-height: 0 !important; 
    opacity: 0 !important; 
    pointer-events: none !important; 
}
#oya-core-feed .oya-card.collapsed .header-collapse-icon { 
    transform: rotate(180deg) !important; 
}

/* ИНТРО КАРТА */
#oya-core-feed .intro-card { padding: 0 !important; }
#oya-core-feed .intro-title-wrap { padding: 30px 20px 20px 20px !important; text-align: center !important; }
#oya-core-feed .intro-title { font-family: var(--font-main) !important; font-size: 26px !important; font-weight: 700 !important; color: #050505 !important; }
#oya-core-feed .intro-img { width: 100% !important; height: 220px !important; object-fit: cover !important; display: block !important; border-radius: 0 !important; margin: 0 !important; border-top: 1px solid #eee; border-bottom: 1px solid #eee; }
#oya-core-feed .intro-action-wrap { padding: 20px !important; display: flex !important; justify-content: center !important; align-items: center !important; }
#oya-core-feed .universal-outline-btn { height: 40px !important; padding: 0 30px !important; border: 1px solid #cbd5e1 !important; background: white !important; border-radius: 20px !important; cursor: pointer !important; font-size: 15px !important; font-weight: 600 !important; color: #050505 !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: 0.2s !important; }
#oya-core-feed .universal-outline-btn:hover { background: #f0f2f5 !important; }

/* ХЕДЪРИ НА КАРТИТЕ */
#oya-core-feed .card-header { display: flex !important; align-items: center !important; gap: 15px !important; margin-bottom: 0px !important; width: 100% !important; cursor: pointer; user-select: none; }
#oya-core-feed .header-icon-wrap { width: 42px !important; height: 42px !important; background-color: #f0f2f5 !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
#oya-core-feed .header-title-wrap { flex: 1 !important; display: flex !important; flex-direction: column !important; justify-content: center !important; text-align: left !important; }
#oya-core-feed .card-title { font-size: 16px !important; font-weight: 600 !important; color: #050505 !important; }
#oya-core-feed .card-subtitle { font-size: 13px !important; font-weight: 400 !important; color: #65676b !important; margin-top: 2px !important; }
#oya-core-feed .header-actions-group { display: flex !important; align-items: center !important; gap: 12px !important; }
#oya-core-feed .header-info-icon { color: #8e8f94; font-size: 18px; cursor: pointer; transition: 0.2s; }
#oya-core-feed .header-info-icon:hover { color: #050505; }
#oya-core-feed .header-collapse-icon { color: #8e8f94; font-size: 20px; cursor: pointer; transition: 0.3s; padding: 5px; }

/* =========================================
   5. СУТРЕШЕН ТРАКЕР (ЧИПОВЕ И ЦВЕТОВЕ)
   ========================================= */
#oya-core-feed .tracker-group { border: 1px solid #cbd5e1 !important; border-radius: 20px !important; padding: 20px 15px !important; margin-bottom: 15px !important; background: #ffffff !important; display: block !important; }
#oya-core-feed .tracker-label { text-align: center !important; font-weight: 700 !important; color: #555555 !important; margin-bottom: 15px !important; font-size: 15px !important; display: block !important; }
#oya-core-feed .tracker-btn-row { display: flex !important; gap: 10px !important; width: 100% !important; }
#oya-core-feed .t-chip { flex: 1 !important; padding: 12px 0 !important; border-radius: 30px !important; border: 1px solid #cbd5e1 !important; background: transparent !important; color: #050505 !important; font-size: 14px !important; font-weight: 700 !important; cursor: pointer !important; transition: all 0.2s ease-out !important; text-align: center !important; outline: none !important; }
#oya-core-feed .t-chip:hover { border-color: #6bb0ce !important; color: #6bb0ce !important; background-color: #f7fdff !important; }
#oya-core-feed .t-chip.active { transform: scale(0.95) translateY(2px) !important; border-color: transparent !important; }

#oya-core-feed .t-chip.active[data-val="3"] { background-color: #7da08c !important; color: #ffffff !important; box-shadow: inset 0 4px 8px rgba(0, 0, 0, 0.1) !important; }
#oya-core-feed .t-chip.active[data-val="6"] { background-color: #fcd204 !important; color: #333333 !important; box-shadow: inset 0 4px 8px rgba(0, 0, 0, 0.08) !important; }
#oya-core-feed .t-chip.active[data-val="10"] { background-color: #39455f !important; color: #ffffff !important; box-shadow: inset 0 4px 8px rgba(0, 0, 0, 0.2) !important; }

/* =========================================
   6. СТИЛИ за ДЕН 1 & ДЕН 2 (АНКЕТИ, КАЛЕНДАРИ)
   ========================================= */
.oya-questionnaire-card { width: 100% !important; background: #ffffff !important; border-radius: 25px !important; box-sizing: border-box !important; }
.oya-q-group { margin-bottom: 25px !important; text-align: left !important; display: flex !important; flex-direction: column !important; }
.oya-q-group label { display: block !important; font-family: var(--font-main) !important; font-weight: 500 !important; font-size: 15px !important; color: #444 !important; margin-bottom: 10px !important; line-height: 1.45 !important; }
.oya-q-input { width: 100% !important; background: #fdfdfd !important; border: 2px solid #e1e8ed !important; border-radius: 12px !important; padding: 15px !important; font-size: 15px !important; color: #333 !important; transition: all 0.3s ease !important; box-sizing: border-box !important; resize: vertical !important; }
.oya-q-input:focus { outline: none !important; border-color: #0cc0df !important; box-shadow: 0 0 0 4px rgba(12, 192, 223, 0.1) !important; background: #fff !important; }

.oya-checklist-container { display: flex !important; flex-direction: column !important; gap: 12px !important; margin-top: 20px !important; }
.oya-check-label { display: flex !important; align-items: flex-start !important; cursor: pointer !important; font-size: 15px !important; color: #444 !important; line-height: 1.4 !important; transition: 0.2s !important; margin: 0 !important; }
.oya-check-label:hover { color: var(--oya-blue) !important; }
.oya-hidden-chk { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; }

.oya-custom-chk { height: 22px !important; width: 22px !important; background-color: #fdfdfd !important; border: 2px solid #e1e8ed !important; border-radius: 6px !important; margin-right: 12px !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; transition: all 0.2s !important; margin-top: 1px; }
.oya-hidden-chk:checked ~ .oya-custom-chk { background-color: var(--oya-blue); border-color: var(--oya-blue); }
.oya-custom-chk:after { content: ""; display: none; width: 5px; height: 10px; border: solid white; border-width: 0 2px 2px 0; transform: rotate(45deg); margin-bottom: 2px; }
.oya-hidden-chk:checked ~ .oya-custom-chk:after { display: block; }
.oya-other-wrapper { flex-wrap: wrap; gap: 10px; }
.oya-inline-input { flex: 1; min-width: 200px; padding: 8px 15px !important; margin-top: -5px; }

/* Календар */
.oya-interactive-cal { background: #fdfdfd !important; border: 2px solid #e1e8ed !important; border-radius: 15px !important; padding: 20px !important; margin-top: 15px !important; font-family: var(--font-main) !important; }
.oya-cal-header-nav { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 15px !important; }
.oya-cal-nav-btn { background: transparent !important; border: none !important; font-size: 22px !important; color: #666666 !important; cursor: pointer !important; padding: 5px 15px !important; box-shadow: none !important; outline: none !important; }
.oya-cal-nav-btn:hover { color: var(--oya-blue) !important; }
.oya-cal-month-title { font-weight: 700 !important; font-size: 18px !important; color: #333 !important; text-transform: capitalize !important; }
.oya-cal-weekdays { display: grid !important; grid-template-columns: repeat(7, minmax(0, 1fr)) !important; text-align: center !important; font-weight: 700 !important; font-size: 12px !important; color: #999 !important; margin-bottom: 10px !important; width: 100% !important; }
.oya-cal-grid { display: grid !important; grid-template-columns: repeat(7, minmax(0, 1fr)) !important; row-gap: 5px !important; width: 100% !important; }
.oya-day-cell { aspect-ratio: 1 !important; min-height: 40px !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 14px !important; font-weight: 500 !important; color: #444 !important; cursor: pointer !important; position: relative !important; z-index: 2 !important; transition: 0.2s !important; }
.oya-day-cell:hover:not(.oya-empty) { background-color: #f0f0f0 !important; border-radius: 50% !important; }
.oya-empty { cursor: default !important; }
.oya-in-range { background-color: rgba(12, 192, 223, 0.15) !important; color: #088b9e !important; border-radius: 0 !important; }
.oya-start-date { background-color: var(--oya-blue) !important; color: #fff !important; border-top-left-radius: 50% !important; border-bottom-left-radius: 50% !important; font-weight: 700 !important; }
.oya-end-date { background-color: var(--oya-blue) !important; color: #fff !important; border-top-right-radius: 50% !important; border-bottom-right-radius: 50% !important; font-weight: 700 !important; }
.oya-cal-result { background-color: #f0fbfe !important; border-left: 4px solid var(--oya-blue) !important; padding: 15px 20px !important; border-radius: 8px !important; font-size: 15px !important; color: #444 !important; margin-top: 20px !important; line-height: 1.5 !important; }
.oya-cal-highlight { display: block !important; font-size: 20px !important; font-weight: 900 !important; color: var(--oya-blue) !important; margin-top: 5px !important; }
.oya-cal-actions { display: flex !important; flex-direction: column !important; gap: 10px !important; margin-top: 20px !important; }
.oya-cal-btn { display: flex !important; align-items: center !important; justify-content: center !important; padding: 12px 20px !important; border-radius: 12px !important; font-size: 15px !important; font-weight: 700 !important; text-decoration: none !important; transition: all 0.2s !important; text-align: center !important; }
.gcal-btn { background-color: #ffffff !important; color: #444444 !important; border: 2px solid #e1e8ed !important; }
.gcal-btn:hover { border-color: #4285F4 !important; color: #4285F4 !important; background-color: #f8fbff !important; }
.ical-btn { background-color: #000000 !important; color: #ffffff !important; border: 2px solid #000000 !important; }
.ical-btn:hover { background-color: #333333 !important; color: #ffffff !important; }

/* Чекбоксове за Ден 2 */
.oya-check-item { display: flex; align-items: flex-start; cursor: pointer; padding: 12px 18px; background: #fdfdfd; border: 2px solid #f0f0f0; border-radius: 15px; transition: all 0.3s ease; width: 100% !important; margin: 0 !important; }
.oya-check-item:hover { background: #f4fcfe; border-color: rgba(12, 192, 223, 0.3); transform: translateY(-2px); }
.oya-check-item input[type="checkbox"] { display: none !important; } 
.oya-checkmark { width: 26px; height: 26px; border: 2px solid #d1dee8; border-radius: 50%; margin-right: 15px; display: flex !important; align-items: center !important; justify-content: center !important; transition: all 0.3s; flex-shrink: 0; align-self: flex-start; margin-top: 2px; }
.oya-check-item input:checked + .oya-checkmark { background-color: #0cc0df; border-color: #0cc0df; }
.oya-check-item input:checked + .oya-checkmark::after { content: '✓'; color: white; font-weight: 900; font-size: 16px; }
.oya-check-item input:checked ~ .oya-check-text { color: #b0b0b0; text-decoration: line-through; }
.oya-check-text { font-size: 15px; font-weight: 400; color: #050505; transition: color 0.3s; line-height: 1.5; text-align: left; }
.oya-check-text strong { font-weight: 700; color: #050505; }
.oya-check-item input:checked ~ .oya-check-text strong { color: #b0b0b0; }
.oya-task-tip { background: #fdfdfd; border-left: 4px solid #f1c40f; padding: 15px; border-radius: 0 12px 12px 0; font-size: 14px; color: #666; line-height: 1.6; box-shadow: 0 4px 15px rgba(0,0,0,0.03); text-align: left; }

@media (min-width: 600px) { .oya-cal-actions { flex-direction: row !important; } .oya-cal-btn { flex: 1 !important; } }
@media (max-width: 400px) { .oya-interactive-cal { padding: 15px 10px !important; } .oya-day-cell { min-height: 30px !important; font-size: 13px !important; } .oya-cal-nav-btn { font-size: 18px !important; padding: 5px !important; } .oya-cal-month-title { font-size: 16px !important; } }

/* =========================================
   7. ДНЕВЕН РИТЪМ (ДЕН 3+)
   ========================================= */
.rhythm-locked-state { text-align: center !important; padding: 20px 10px !important; color: #65676b !important; font-size: 14px !important; line-height: 1.5 !important; }
.rhythm-block { background: #6bb0ce !important; border-radius: 20px !important; padding: 12px 15px !important; margin-bottom: 12px !important; color: white !important; transition: 0.3s !important; }
.rhythm-block.gray-mode { background: #e6e6e6 !important; color: #999999 !important; }
.rhythm-block-header { display: flex !important; align-items: center !important; justify-content: space-between !important; cursor: pointer !important; width: 100% !important; box-sizing: border-box !important; }
.rhythm-time { font-size: 12px !important; font-weight: 600 !important; line-height: 1.2 !important; text-align: center !important; width: 45px !important; flex-shrink: 0 !important; }
.rhythm-title-wrap { flex: 1 !important; display: flex !important; align-items: center !important; gap: 10px !important; font-weight: 700 !important; font-size: 16px !important; margin-left: 10px !important; text-align: left !important; }
.rhythm-chevron { transition: 0.3s !important; font-size: 14px !important; }
.rhythm-tasks-container { display: none; margin-top: 15px !important; flex-direction: column !important; gap: 8px !important; }
.rhythm-block.is-open .rhythm-tasks-container { display: flex !important; }
.rhythm-block.is-open .rhythm-chevron { transform: rotate(180deg) !important; }

.rhythm-task-item { background: #f8fafc !important; border: 1px solid #e2e8f0 !important; box-shadow: 0 2px 5px rgba(0,0,0,0.02) !important; color: #050505 !important; padding: 0 15px !important; height: 50px !important; border-radius: 15px !important; font-weight: 600 !important; font-size: 15px !important; display: flex !important; justify-content: space-between !important; align-items: center !important; cursor: pointer !important; transition: 0.2s !important; margin-bottom: 8px !important; }
.rhythm-task-item:hover { background: #f1f5f9 !important; transform: translateY(-1px) !important; }
.radio-circle { width: 24px !important; height: 24px !important; border-radius: 50% !important; border: 2px solid #cbd5e1 !important; display: flex !important; align-items: center !important; justify-content: center !important; background: white !important; box-shadow: inset 0 2px 4px rgba(0,0,0,0.05) !important; transition: 0.2s !important; }
.rhythm-task-item.checked .radio-circle { border-color: #6bb0ce !important; background: #6bb0ce !important; }
.rhythm-task-item.checked .radio-circle::after { content: "✓" !important; color: white !important; font-size: 14px !important; font-weight: bold !important; background: transparent !important; width: auto !important; height: auto !important; }

/* Бутон завърших деня */
.feed-footer { display: flex !important; justify-content: center !important; margin-top: 10px !important; }
.btn-finish { background-color: #8ca092 !important; color: white !important; border: none !important; padding: 15px 50px !important; border-radius: 30px !important; font-size: 16px !important; font-weight: 700 !important; cursor: pointer !important; transition: all 0.2s ease !important; box-shadow: 0 4px 15px rgba(140, 160, 146, 0.3) !important; outline: none !important; }
.btn-finish:active { transform: scale(0.95) !important; }

/* =========================================
   8. ГЛОБАЛНИ СТИЛОВЕ НА ХЕДЪРА И САЙДБАРА
   ========================================= */
.oya-global-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: var(--oya-header-height) !important;
    background: #000000 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important;
    display: flex !important;
    justify-content: space-between !important; 
    align-items: center !important;
    padding: 0 15px !important;
    box-sizing: border-box !important;
    z-index: 9998 !important;
}

.oya-header-logo-link {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    z-index: 10001 !important;
    pointer-events: auto !important;
}

.oya-header-logo-img {
    width: 100px !important;
    height: auto !important;
    object-fit: contain !important;
}

.oya-back-btn, .oya-hamburger-btn {
    background: transparent !important;
    border: none !important;
    color: #fff !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 40px !important;
    transition: transform 0.2s !important;
    outline: none !important;
    z-index: 10002 !important;
}

.oya-back-btn:active, .oya-hamburger-btn:active {
    transform: scale(0.9) !important;
    color: var(--primary-color) !important;
}

.oya-back-btn i, .oya-hamburger-btn i {
    font-size: 20px !important;
}

.oya-back-btn span, .oya-hamburger-btn span {
    font-family: var(--font-main) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #fff !important;
}
.oya-back-btn span { margin-left: 6px !important; }

/* САЙДБАР */
.oya-sidebar-overlay { 
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; height: 100dvh; 
    background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(4px); 
    z-index: 999998 !important; display: none; opacity: 0; 
    transition: opacity 0.3s ease; 
}
.oya-sidebar-overlay.active { display: block; opacity: 1; }

.oya-sidebar { 
    position: fixed; top: 0; 
    right: -350px; 
    width: var(--oya-sidebar-width); height: 100vh; height: 100dvh; 
    background: var(--oya-sidebar-bg); z-index: 999999 !important; 
    display: flex; flex-direction: column; 
    transition: right 0.4s cubic-bezier(0.77, 0, 0.175, 1); 
    box-shadow: -5px 0 25px rgba(0,0,0,0.15); 
}
.oya-sidebar.active { right: 0; }

.oya-sidebar-close { position: absolute; top: 20px; left: 20px; font-size: 32px; cursor: pointer; color: #333; z-index: 9999; }

.oya-sidebar-user-header {
    padding: 85px 30px 10px 30px !important; 
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    flex-shrink: 0 !important;
}
.user-fullname {
    font-family: var(--font-main) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.2 !important;
}
.user-plan-status {
    font-family: var(--font-main) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #888888 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.oya-sidebar-nav { 
    flex-grow: 1; 
    padding: 10px 30px 40px 30px; 
    display: flex; 
    flex-direction: column; 
    gap: 15px; 
    overflow-y: auto; 
}

.oya-sidebar-nav a { 
    font-family: var(--font-main) !important; 
    font-size: 17px !important; 
    color: #333333 !important; 
    text-decoration: none !important; 
    transition: all 0.2s !important; 
    font-weight: 600 !important; 
    display: flex !important; 
    align-items: center !important; 
    gap: 14px !important;
    box-sizing: border-box !important;
}

.oya-sidebar-nav a:hover:not(.locked-menu-item) { color: var(--oya-blue) !important; transform: translateX(5px) !important; }
.oya-sidebar-nav a.locked-menu-item { color: #aaa !important; cursor: not-allowed !important; }

.oya-sidebar-nav i {
    width: 24px !important;
    text-align: center !important;
    font-size: 18px !important;
    color: var(--oya-blue) !important;
    flex-shrink: 0 !important;
}

.menu-logout-btn {
    margin-top: auto !important;
    padding-top: 30px !important;
    border-top: 1px solid #eaeaea !important;
}

/* =========================================
   9. LOCK ПОПЪП И WELCOME СЛАЙДЕР
   ========================================= */
.oya-upgrade-lock-overlay { 
    position: fixed !important; 
    top: 0 !important; 
    left: 0 !important; 
    width: 100vw !important; 
    height: 100vh !important; 
    height: 100dvh !important;
    background: rgba(255, 255, 255, 0.85) !important; 
    backdrop-filter: blur(8px) !important; 
    -webkit-backdrop-filter: blur(8px) !important;
    display: none !important; 
    align-items: center !important; 
    justify-content: center !important; 
    z-index: 1000200 !important; 
    opacity: 0; 
    transition: opacity 0.3s ease !important; 
    box-sizing: border-box !important;
}
.oya-upgrade-lock-overlay.active { 
    display: flex !important; 
    opacity: 1 !important; 
}

.oya-upgrade-lock-content {
    position: relative !important; 
    background: #ffffff !important; 
    padding: 40px 30px !important; 
    border-radius: 25px !important;
    width: 85% !important; 
    max-width: 400px !important; 
    text-align: center !important;
    box-shadow: 0 20px 50px rgba(0,0,0,0.1) !important; 
    box-sizing: border-box !important; 
    border: 1px solid rgba(0,0,0,0.05) !important;
}

/* Слайдер и Добре дошли */
.oya-app-container {
    width: 100%; margin: 0 auto; display: flex; flex-direction: column; align-items: center;
    padding-top: calc(var(--oya-header-height) + var(--nav-bar-height) + 10px) !important;
    height: 100dvh !important; max-height: 100dvh !important; box-sizing: border-box !important;
    position: relative !important; z-index: 50 !important; background: transparent !important;
}

.oya-icon-nav-bar {
    position: fixed !important; top: var(--oya-header-height) !important; left: 0 !important; width: 100% !important; height: var(--nav-bar-height) !important; background-color: #000000 !important; margin: 0 !important; z-index: 9999 !important; display: flex; justify-content: center;
}

.oya-icon-tab-btn { flex: 0 1 120px; background: transparent !important; border: none !important; border-bottom: 3px solid transparent !important; color: #555555 !important; font-size: 20px !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: var(--transition) !important; outline: none !important; padding: 0 !important; }
.oya-icon-tab-btn:hover { color: #888888 !important; }
.oya-icon-tab-btn.active { color: var(--oya-blue) !important; border-bottom: 3px solid var(--oya-blue) !important; }

.oya-slider-viewport { width: 100%; overflow: hidden; flex-grow: 1; height: calc(100dvh - var(--oya-header-height) - var(--nav-bar-height)) !important; position: relative !important; }
.oya-slider-track { display: flex; width: 300%; height: 100%; align-items: flex-start; transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1); transform: translateX(-33.333%); }

.oya-slide {
    width: 33.333% !important; 
    flex: 0 0 33.333% !important; 
    height: 100% !important; 
    box-sizing: border-box !important; 
    flex-shrink: 0; 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    justify-content: flex-start; 
    overflow-y: auto !important; 
    overflow-x: hidden !important;
    padding: 10px 15px 85px 15px !important; 
    scrollbar-width: none;
}
.oya-slide::-webkit-scrollbar { display: none !important; }

/* Капацитет и Рингове */
.oya-welcome-header-wrap { display: flex; justify-content: center; width: 100%; text-align: center; margin-top: 15px; }
.oya-welcome-header h2 { font-family: 'Playfair Display', serif; font-size: 32px; font-weight: 600; color: #1a1a1a; line-height: 1.1; font-style: normal; }
.oya-welcome-header span { color: var(--oya-blue); font-weight: 600; font-style: normal; }

.oya-dashboard-circles { display: flex; flex-direction: row; align-items: flex-end; justify-content: center; gap: 40px; width: 100%; margin-top: 80px; }
.oya-widget-block { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; }
.oya-widget-title { font-family: 'Playfair Display', serif; font-size: 20px; color: #666; font-style: italic; text-align: center; margin-bottom: 10px; }

.oya-svg-widget-wrapper { position: relative; width: 190px; height: 190px; display: flex; justify-content: center; align-items: center; }
.oya-capacity-svg-ring { width: 100%; height: 100%; transform: rotate(90deg); filter: drop-shadow(0 2px 10px rgba(0,0,0,0.03)); }
.oya-svg-bg-track { fill: none; stroke: #f0f0f0; stroke-width: 26; }
.oya-svg-fill-track { fill: none; stroke: var(--oya-blue); stroke-width: 26; stroke-linecap: round; stroke-dasharray: 628.31; stroke-dashoffset: 628.31; transition: stroke-dashoffset 2s cubic-bezier(0.1, 0.8, 0.3, 1); }

.oya-capacity-text-val { position: absolute; top: 60px; left: 50%; transform: translateX(-50%); font-family: var(--font-main); font-size: 24px; font-weight: 600; color: #999999; opacity: 0; transition: opacity 1s ease; z-index: 10; }

.oya-fasting-inner-content { position: absolute; display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 10; }
.oya-fasting-label { font-size: 11px; font-weight: 700; color: #999; letter-spacing: 1px; margin-bottom: 5px; }
#welcome-fasting-time { font-size: 26px; font-weight: 700; color: var(--oya-blue); line-height: 1; margin-bottom: 12px; }
.oya-fasting-stop-btn { width: 34px !important; height: 34px !important; border-radius: 50% !important; background-color: #e74c3c !important; border: none !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; box-shadow: 0 4px 10px rgba(231, 76, 60, 0.3) !important; padding: 0 !important; margin: 0 auto !important; transition: transform 0.2s !important; }
.oya-fasting-stop-btn:active { transform: scale(0.9) !important; }
.oya-fasting-stop-icon { width: 11px !important; height: 11px !important; background-color: #ffffff !important; border-radius: 2px !important; display: block !important; }

/* Лотос */
.oya-lotus-only-container { --theme-color: #81cce2; position: absolute; bottom: -3px; left: 50%; transform: translateX(-50%); width: 180px; height: 115px; display: flex; justify-content: center; align-items: flex-end; z-index: 5; pointer-events: none; }
.oya-lily-pad { position: absolute; bottom: 0px; left: 50%; transform: translateX(-50%); width: 160px; height: 18px; background: #6d8a65; border-radius: 50%; z-index: 1; }
.oya-lotus-svg { position: absolute; bottom: 8px; left: 50%; transform: translateX(-50%); width: 140px; height: 100px; z-index: 2; overflow: visible; }
.lotus-scaler { transform-origin: 100px 150px; transform: scale(0.8); transition: transform 1s cubic-bezier(0.34, 1.56, 0.64, 1); }
.petal-wrapper { transform-origin: 100px 150px; filter: drop-shadow(0px 3px 5px rgba(0,0,0,0.15)); }
.sway-leaf { transform: rotate(var(--base-deg)); animation: oyaSway 4s ease-in-out infinite alternate; animation-delay: var(--sway-delay); }
@keyframes oyaSway { 0% { transform: rotate(calc(var(--base-deg) - var(--sway-amt))); } 100% { transform: rotate(calc(var(--base-deg) + var(--sway-amt))); } }
.petal-shape { fill: var(--theme-color); opacity: 0.9; transition: fill 1s ease; }
.petal-pulse { fill: none; stroke: rgba(255, 255, 255, 0.85); stroke-width: 4; stroke-linecap: round; stroke-dasharray: 300; stroke-dashoffset: 300; }
.oya-lotus-only-container.is-pumping .petal-pulse { animation: pumpLight 1.2s ease-out forwards; }
@keyframes pumpLight { 0% { stroke-dashoffset: 300; opacity: 1; } 50% { opacity: 1; } 100% { stroke-dashoffset: -300; opacity: 0; } }

/* Дни Карусел */
.oya-welcome-select-day-text { font-family: 'Playfair Display', serif; font-size: 20px; color: #666; margin-top: 60px; margin-bottom: 15px; font-style: italic; text-align: center; }
.oya-carousel-wrapper { display: flex; align-items: center; justify-content: center; gap: 15px; width: 100%; max-width: 440px; box-sizing: border-box; }
.oya-nav-btn { width: 40px !important; height: 40px !important; border-radius: 50% !important; background-color: transparent !important; color: var(--oya-blue) !important; border: 2px solid var(--oya-blue) !important; font-size: 18px !important; cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; transition: all 0.2s ease !important; outline: none !important; }
.oya-nav-btn:hover { background-color: var(--oya-blue) !important; color: #fff !important; }
.oya-nav-btn span { line-height: 1; margin-top: -2px; }
.oya-days-viewport { width: 305px; overflow-x: auto !important; scroll-snap-type: x mandatory !important; scroll-behavior: smooth !important; position: relative; padding: 10px 5px 15px 5px; flex-shrink: 0; scrollbar-width: none !important; }
.oya-days-viewport::-webkit-scrollbar { display: none !important; }
.oya-days-track { display: flex; gap: 15px; }
.oya-day-node { scroll-snap-align: start !important; width: 85px; height: 110px; flex-shrink: 0; background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(5px); border-radius: 20px; border: 1px solid rgba(0,0,0,0.05); display: flex; flex-direction: column; align-items: center; justify-content: center; text-decoration: none; position: relative; transition: 0.3s; box-shadow: 0 4px 15px rgba(0,0,0,0.03); }
.oya-day-node.unlocked { border: 1px solid var(--oya-blue); cursor: pointer; }
.oya-day-node.unlocked:hover { transform: translateY(-5px); background: #fff; box-shadow: 0 8px 20px rgba(12,192,223,0.15); }
.oya-day-node.locked { cursor: pointer; opacity: 0.8; }
.oya-day-num { font-size: 38px; font-weight: 900; line-height: 1; color: #ccc; }
.oya-day-node.unlocked .oya-day-num { color: var(--oya-blue); }
.oya-day-label { font-size: 13px; font-weight: 700; color: #999; text-transform: uppercase; margin-top: 5px; }
.oya-lock-badge { position: absolute; top: -10px; right: -10px; background: #fff; width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 13px; box-shadow: 0 3px 8px rgba(0,0,0,0.1); z-index: 2; }

@media (max-width: 600px) { 
    .oya-dashboard-circles { flex-direction: column; align-items: center !important; gap: 35px; } 
    .oya-widget-block { width: 100%; align-items: center !important; } 
}
@media (max-width: 420px) { .oya-carousel-wrapper { gap: 10px; } .oya-nav-btn { width: 36px !important; height: 36px !important; } .oya-days-viewport { width: 205px; } }

/* Попъп за пропускане на ден */
.oya-skip-day-overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(8px); z-index: 10005; display: none; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; }
.oya-skip-day-overlay.active { display: flex; opacity: 1; }
.oya-skip-day-content { position: relative; background: #ffffff; padding: 40px 30px; border-radius: 25px; width: 85%; max-width: 400px; text-align: center; box-shadow: 0 20px 50px rgba(0,0,0,0.1); box-sizing: border-box; border: 1px solid rgba(0,0,0,0.05); }
.oya-close-modal-btn { position: absolute !important; top: 15px !important; right: 20px !important; background: transparent !important; border: none !important; font-size: 28px !important; color: #999999 !important; cursor: pointer !important; padding: 0 !important; }
.oya-close-modal-btn:hover { color: #333333 !important; }

/* Escape Карти */
.oya-escape-intro-block { width: 100%; max-width: 450px; margin: 0 auto; padding: 30px 15px 5px 15px; text-align: center; box-sizing: border-box; }
.oya-escape-intro-title { font-family: 'Playfair Display', serif !important; font-size: 26px !important; color: #1a1a1a !important; margin: 0 0 10px 0 !important; font-weight: 700 !important; line-height: 1.2 !important; }
.oya-escape-intro-text { font-size: 15px !important; line-height: 1.5 !important; color: #666666 !important; margin: 0 !important; font-style: italic !important; }
.oya-escape-scroll-wrapper { width: 100%; max-width: 450px; margin: 0 auto; height: 100% !important; padding: 15px 5px; box-sizing: border-box; }
.oya-escape-card { background: rgba(255, 255, 255, 0.45) !important; backdrop-filter: blur(10px) !important; border-radius: 24px; border: 1px solid rgba(255, 255, 255, 0.2) !important; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important; margin-bottom: 25px; overflow: hidden; width: 100%; box-sizing: border-box; }
.oya-escape-card-img-wrap { width: 100%; height: 180px; overflow: hidden; }
.oya-escape-card-img-wrap img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
.oya-escape-card-body { padding: 25px 20px; text-align: left; }
.oya-escape-card-title { font-family: 'Playfair Display', serif !important; font-size: 22px !important; color: #1a1a1a !important; margin-top: 0 !important; margin-bottom: 12px !important; font-weight: 700 !important; }
.oya-escape-card-text { font-size: 15px !important; line-height: 1.6 !important; color: #444 !important; }
.oya-escape-card-text p { margin-bottom: 12px; }

/* =================================================== */
/* НОВОТО СТИКИ МЕНЮ (КОРИГИРАНИ ЛОГИЧНИ НОТИФИКАЦИИ)  */
/* =================================================== */
.oya-new-bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    z-index: 99990;
    pointer-events: none; 
}

.oya-nav-container {
    width: 100%;
    max-width: 800px;
    background: var(--card-bg);
    border-radius: 30px 30px 0 0;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08); 
    display: flex;
    justify-content: space-evenly; 
    align-items: center; 
    height: 75px; 
    padding: 0 10px calc(env(safe-area-inset-bottom, 0px)) 10px;
    pointer-events: auto; 
    box-sizing: border-box;
}

.oya-nav-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end; 
    text-decoration: none;
    color: #1a1a1a;
    cursor: pointer;
    padding: 6px 10px 8px 10px; 
    border-radius: 18px;
    transition: all 0.2s ease;
    border: 1px solid transparent;
    height: 60px; 
    width: 70px; 
}

.oya-nav-item:hover {
    background: #f0f2f5;
    box-shadow: inset 0 4px 8px rgba(0,0,0,0.06);
    transform: translateY(2px);
}

.oya-nav-item:active {
    transform: scale(0.95) translateY(4px);
    background: #e9ecef;
    box-shadow: inset 0 6px 12px rgba(0,0,0,0.1);
}

.oya-nav-icon {
    position: relative;
    font-size: 24px;
    height: 30px; 
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1a1a1a; 
    margin-bottom: 5px; 
}

.oya-nav-label {
    font-family: var(--font-main);
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    text-align: center;
    width: 100%;
    white-space: nowrap; 
}

.oya-nav-water .oya-nav-icon { font-size: 28px; }

.oya-notification-dot {
    position: absolute;
    top: -2px;
    right: -8px;
    width: 10px;
    height: 10px;
    background-color: #ef4444;
    border-radius: 50%;
    border: 2px solid #fff;
    display: none; 
}

@media (max-width: 600px) {
    .oya-nav-container {
        border-radius: 20px 20px 0 0;
        padding: 0 5px calc(env(safe-area-inset-bottom, 0px)) 5px;
        height: 70px;
    }
    .oya-nav-item { width: 60px; height: 55px; padding: 4px 5px 6px 5px; }
    .oya-nav-icon { font-size: 22px; height: 26px; margin-bottom: 4px; }
    .oya-nav-water .oya-nav-icon { font-size: 26px; }
    .oya-nav-label { font-size: 10px; }
}

/* СТИКИ МЕНЮТО СЛИЗА ЗАД БЛУРА ПРИ АКТИВЕН ПОПЪП */
body:has(.oya-popup-overlay.active) .oya-new-bottom-nav,
body:has(.oya-sidebar-overlay.active) .oya-new-bottom-nav {
    z-index: 999 !important; 
    opacity: 0.1 !important;  
    pointer-events: none !important; 
}

/* БЛОКИРАНЕ НА GDPR БИСКВИТКИ В OYA */
#cookie-notice, 
#moove_gdpr_cookie_info_bar, 
#cookie-law-info-bar, 
.cli-plugin-main, 
.cc-window, 
.cmplz-cookiebanner,
#sp-cc,
.cookie-notice-container { display: none !important; pointer-events: none !important; }

/* =================================================== */
/* УНИВЕРСАЛЕН ПОПЪП (БРОНИРАНА ВЕРСИЯ С ИКОНИ)        */
/* =================================================== */
#oya-universal-overlay * { box-sizing: border-box !important; }

.u-modal-overlay { 
    position: fixed !important; top: 0 !important; left: 0 !important; width: 100vw !important; height: 100vh !important; height: 100dvh !important;
    background: rgba(0, 0, 0, 0.6) !important; backdrop-filter: blur(5px) !important; -webkit-backdrop-filter: blur(5px) !important;
    display: none; align-items: center !important; justify-content: center !important; z-index: 1000000 !important; 
    opacity: 0; transition: opacity 0.3s ease !important; 
}
.u-modal-overlay.active { display: flex !important; opacity: 1 !important; pointer-events: auto !important; }

.universal-card {
    background: white !important; width: 92% !important; max-width: 420px !important; height: 85vh !important; 
    border-radius: 35px !important; box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    display: flex !important; flex-direction: column !important; padding: 25px 20px !important; 
    transform: translateY(20px) !important; transition: transform 0.3s ease !important;
    position: relative !important; overflow: hidden !important;
}
.u-modal-overlay.active .universal-card { transform: translateY(0) !important; }

.u-header { display: flex !important; align-items: center !important; gap: 15px !important; margin-bottom: 20px !important; flex-shrink: 0 !important; }
.u-icon-container { 
    width: 42px !important; height: 42px !important; 
    background-color: #f0f2f5 !important; 
    border-radius: 50% !important; 
    display: flex !important; align-items: center !important; justify-content: center !important; 
    flex-shrink: 0 !important; 
}

.u-icon-container .u-icon { 
    display: none !important; 
    font-size: 20px !important; 
    color: var(--oya-blue) !important; 
}

.universal-card.state-task .u-icon-container .icon-compass { display: block !important; }
.universal-card.state-book .u-icon-container .icon-book { display: block !important; }
.universal-card.state-heartbeat .u-icon-container .icon-heartbeat { display: block !important; }

.u-titles { flex: 1 !important; display: flex !important; flex-direction: column !important; text-align: left !important; }
.u-title { 
    font-family: var(--font-main) !important; 
    font-size: 16px !important; 
    font-weight: 600 !important; 
    color: #050505 !important; 
    line-height: 1.2 !important; 
}
.u-actions { color: #8e8f94 !important; font-size: 22px !important; cursor: pointer !important; padding: 5px !important; z-index: 999 !important; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; }

.u-body { flex: 1 !important; display: flex !important; flex-direction: column !important; overflow: hidden !important; position: relative !important; margin-bottom: 15px !important; }
.u-content-scroll-viewport { width: 100% !important; height: 100% !important; overflow-y: auto !important; overflow-x: hidden !important; scrollbar-width: none !important; padding: 0 5px !important; }
.u-content-scroll-viewport::-webkit-scrollbar { display: none !important; }

.utask-cover-img { 
    width: 100% !important; 
    max-height: 220px !important; 
    object-fit: cover !important; 
    border-radius: 20px !important; 
    margin-bottom: 15px !important; 
    display: block !important;
    flex-shrink: 0 !important; 
}

.u-content-scroll-viewport img:not(.utask-cover-img) {
    width: auto !important;
    height: auto !important;
    max-width: 32px !important;
    max-height: 32px !important;
    display: inline-block !important;
    margin: 0 8px 0 0 !important;
    vertical-align: middle !important;
}

.u-content-scroll-viewport p, .u-content-scroll-viewport div { 
    font-family: var(--font-main) !important; 
    font-size: 15px !important; 
    font-weight: 400 !important; 
    color: #050505 !important; 
    line-height: 1.4 !important; 
    margin-bottom: 10px !important;
}

.u-content-scroll-viewport ul { list-style: none !important; padding-left: 0 !important; margin-bottom: 20px !important; }
.u-content-scroll-viewport li { position: relative !important; padding-left: 35px !important; margin-bottom: 15px !important; cursor: pointer !important; line-height: 1.4 !important; transition: 0.3s !important; display: block !important; font-family: var(--font-main) !important; font-size: 15px !important; color: #050505 !important; }
.u-content-scroll-viewport li::before { content: "" !important; position: absolute !important; left: 0 !important; top: 0 !important; width: 22px !important; height: 22px !important; border: 2px solid #6bb0ce !important; border-radius: 50% !important; background: #fff !important; transition: 0.3s !important; box-sizing: border-box !important; }
.u-content-scroll-viewport li.checked-item::before { background: #6bb0ce !important; border-color: #6bb0ce !important; }
.u-content-scroll-viewport li.checked-item::after { content: "✓" !important; position: absolute !important; left: 6px !important; top: 2px !important; color: white !important; font-size: 14px !important; font-weight: bold !important; }
.u-content-scroll-viewport li.checked-item { opacity: 0.5 !important; text-decoration: line-through !important; }

.u-footer { flex-shrink: 0 !important; background: white !important; display: flex !important; flex-direction: column !important; gap: 15px !important; }
.footer-buttons { display: flex !important; gap: 15px !important; width: 100% !important; justify-content: center !important; }

.btn-bottom { flex: 1 !important; height: 48px !important; border-radius: 30px !important; color: white !important; font-family: var(--font-main) !important; font-weight: 700 !important; font-size: 16px !important; cursor: pointer !important; transition: all 0.2s ease !important; display: flex !important; align-items: center !important; justify-content: center !important; text-align: center !important; user-select: none !important; z-index: 999 !important; }
.btn-bottom:active { transform: scale(0.95) !important; }
.btn-innershift { background-color: #c4a759 !important; box-shadow: 0 4px 15px rgba(196, 167, 89, 0.3) !important; }
.btn-gotovo { background-color: #8ca092 !important; box-shadow: 0 4px 15px rgba(140, 160, 146, 0.3) !important; }

.hidden-btn { display: none !important; }

/* INNER SHIFT */
.oya-inner-shift-layer { 
    position: absolute !important; 
    top: 0 !important; 
    left: 0 !important; 
    width: 100% !important; 
    height: 100% !important; 
    background: #ffffff !important; 
    z-index: 999999 !important; 
    display: none; 
    flex-direction: column !important; 
    padding: 25px 20px !important; 
    border-radius: 35px !important; 
    box-sizing: border-box !important;
}
.oya-inner-shift-layer.active { 
    display: flex !important; 
    animation: fadeInShift 0.25s ease-out forwards; 
}
@keyframes fadeInShift { 
    from { opacity: 0; transform: scale(0.95); } 
    to { opacity: 1; transform: scale(1); } 
}

.ishift-header { display: flex !important; align-items: center !important; gap: 15px !important; margin-bottom: 20px !important; flex-shrink: 0 !important; }
.ishift-icon-wrap { 
    width: 42px !important; height: 42px !important; 
    background-color: #f0f2f5 !important; 
    border-radius: 50% !important; 
    display: flex !important; align-items: center !important; justify-content: center !important; 
    flex-shrink: 0 !important; 
}
.ishift-main-icon { font-size: 24px !important; color: #000000 !important; }
.ishift-titles { display: flex !important; flex-direction: column !important; flex: 1 !important; text-align: left !important;}
.ishift-title-text { 
    font-family: var(--font-main) !important; 
    font-size: 16px !important; 
    font-weight: 600 !important; 
    color: #c4a759 !important; 
    line-height: 1.2 !important; 
}
.ishift-subtitle-text { 
    font-family: var(--font-main) !important; 
    font-size: 13px !important; 
    font-weight: 400 !important; 
    color: var(--text-muted) !important; 
    margin-top: 2px !important; 
}
.ishift-actions { display: flex !important; align-items: center !important; gap: 15px !important; }
.ishift-info-btn { font-size: 18px !important; color: #8e8f94 !important; cursor: pointer !important; }
.ishift-info-btn:hover { color: #050505 !important; }
.ishift-close-btn-icon { font-size: 22px !important; color: #8e8f94 !important; cursor: pointer !important; display: flex; align-items: center; justify-content: center; width: 35px; height: 35px;}
.ishift-close-btn-icon:hover { color: #ef4444 !important; }

.ishift-body { flex: 1 !important; overflow: hidden !important; margin-bottom: 15px !important; display: flex !important; flex-direction: column !important; }
.oya-inner-shift-scroll-area { overflow-y: auto !important; flex: 1 !important; text-align: left !important; scrollbar-width: none !important; }
.oya-inner-shift-scroll-area::-webkit-scrollbar { display: none !important; }

.ishift-cover-img { 
    width: 100% !important; 
    max-height: 200px !important; 
    object-fit: cover !important; 
    border-radius: 12px !important; 
    margin-bottom: 15px !important; 
    display: block !important;
}

.oya-inner-shift-scroll-area p, .oya-inner-shift-scroll-area div { 
    font-family: var(--font-main) !important; 
    font-size: 15px !important; 
    font-weight: 400 !important; 
    color: #050505 !important; 
    line-height: 1.4 !important; 
    margin-bottom: 10px !important; 
}

.ishift-footer { flex-shrink: 0 !important; display: flex !important; justify-content: center !important; }
.btn-bottom-shift { width: 100% !important; height: 48px !important; border-radius: 30px !important; color: white !important; font-family: var(--font-main) !important; font-weight: 700 !important; font-size: 16px !important; cursor: pointer !important; transition: 0.2s !important; display: flex !important; align-items: center !important; justify-content: center !important; text-align: center !important; user-select: none; background-color: #8ca092 !important; border: none !important; box-shadow: 0 4px 15px rgba(140, 160, 146, 0.3) !important; z-index: 9999999 !important; }
.btn-bottom-shift:active { transform: scale(0.95) !important; }

/* =================================================== */
/* ДИНАМИЧНО ОЦВЕТЯВАНЕ НА ИКОНИТЕ В УНИВЕРСАЛНИЯ ПОПЪП */
/* =================================================== */

/* 1. КОМПАС (Дневен Ритъм - Сиво/Синьо) */
.universal-card.state-task .u-icon-container {
    background-color: #f0f2f5 !important; 
}
.universal-card.state-task .u-icon-container .icon-compass {
    color: #4a5568 !important; 
}

/* 2. КНИГА (Дневник - Нежно лилаво) */
.universal-card.state-book .u-icon-container {
    background-color: rgba(186, 104, 200, 0.08) !important; 
}
.universal-card.state-book .u-icon-container .icon-book {
    color: #ba68c8 !important; 
}

/* 3. СЪРЦЕ (Сигнали на тялото - Нежно червено) */
.universal-card.state-heartbeat .u-icon-container {
    background-color: rgba(239, 68, 68, 0.08) !important; 
}
.universal-card.state-heartbeat .u-icon-container .icon-heartbeat {
    color: #ef4444 !important; 
}

/* =================================================== */
/* ОЯ РЕЗЕРВ ПОПЪП (КАЛИБРИРАНА ВЕРСИЯ С ИНФО БУТОН V4.5) */
/* =================================================== */
.energy-card { 
    width: 92% !important;
    max-width: 420px !important;
    height: 85vh !important; 
    background: #ffffff !important;
    border-radius: 35px !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 25px 20px !important;
    position: relative !important;
    overflow: hidden !important;
}

.en-fixed-header {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 25px !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
}

.en-percentage-display {
    font-family: var(--font-main) !important;
    font-size: 80px !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin: 15px 0 10px 0 !important;
    line-height: 1 !important;
}

.en-main-bar-container {
    width: 100% !important;
    max-width: 280px !important;
    height: 32px !important;
    background: #e9ecef !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    margin: 0 auto 15px auto !important;
}
.en-main-bar-fill {
    height: 100% !important;
    border-radius: 16px !important;
    width: 0%;
    transition: width 1s cubic-bezier(0.25, 1, 0.5, 1), background-color 0.4s !important;
}

.en-status-label { font-family: var(--font-main) !important; font-weight: 600 !important; margin-bottom: 20px !important; text-align: center !important; font-size: 15px !important; color: #1a1a1a !important; }
.en-info-text-centered { font-family: var(--font-main) !important; font-size: 14px !important; color: #777777 !important; line-height: 1.45 !important; text-align: center !important; max-width: 92% !important; margin: 0 auto 15px auto !important; }

.en-divider { height: 1px !important; background-color: #eee !important; width: 100% !important; margin: 25px 0 !important; border: none !important; }

.en-top5-title { font-family: 'Playfair Display', serif !important; font-style: italic !important; font-size: 26px !important; font-weight: 500 !important; text-align: center !important; margin-bottom: 10px !important; color: #1a1a1a !important; }

.t5-item { margin-bottom: 15px !important; }
.t5-item-header { display: flex !important; justify-content: space-between !important; font-family: var(--font-main) !important; font-size: 14px !important; margin-bottom: 6px !important; padding: 0 5px !important; }
.t5-item-name { font-weight: 600 !important; color: #1a1a1a !important; }
.t5-item-val { font-weight: 700 !important; color: var(--en-green) !important; }

.t5-bar-container { width: 100% !important; height: 20px !important; background: #f1f3f5 !important; border-radius: 10px !important; overflow: hidden !important; }
.t5-bar-fill { height: 100% !important; background: var(--en-green) !important; border-radius: 10px !important; width: 0%; transition: width 1s cubic-bezier(0.25, 1, 0.5, 1) !important; }

/* =================================================== */
/* ГЛОБАЛЕН ОВЪРЛЕЙ ЗА ВСИЧКИ ПОПЪПИ В ПРИЛОЖЕНИЕТО     */
/* =================================================== */
.oya-popup-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: rgba(0, 0, 0, 0.4) !important; 
    backdrop-filter: blur(6px) !important; 
    -webkit-backdrop-filter: blur(6px) !important;
    display: none !important; 
    align-items: center !important;
    justify-content: center !important;
    z-index: 1000100 !important; 
    opacity: 0;
    transition: opacity 0.3s ease !important;
    box-sizing: border-box !important;
}

/* Активиране на попъпа с плавно появяване */
.oya-popup-overlay.active {
    display: flex !important;
    opacity: 1 !important;
}

/* Плавно изскачане на картата нагоре при отваряне */
.oya-popup-content {
    transform: translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}
.oya-popup-overlay.active .oya-popup-content {
    transform: translateY(0) !important;
}

/* =================================================== */
/* 🌟 ГЛОБАЛНА УЕДНАКВЕНОСТ НА ПОПЪП ХЕДЪРИТЕ И БУТОНИТЕ 🌟 */
/* =================================================== */

/* 1. Уеднаквяване на самите хедър контейнери в попъпите */
.en-fixed-header, .u-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 25px !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
}

/* 2. Уеднаквяване на кръглите икони вляво */
.u-icon-container {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    margin-right: 15px !important;
    box-sizing: border-box !important;
}

/* 3. Групата за действия вдясно (Инфо и Хикс) */
.header-actions-group, .u-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important; 
    margin-left: auto !important; 
    flex-shrink: 0 !important;
}

/* 4. Стил за Инфо и Хикс бутоните (Сиви по подразбиране) */
.popup-info-icon,
.popup-close-icon,
.u-actions i {
    color: #8e8f94 !important; 
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    font-size: 18px !important;
    box-sizing: border-box !important;
}

.popup-info-icon:hover {
    color: #050505 !important;
    background-color: #f0f2f5 !important;
}
.popup-close-icon:hover,
.u-actions i:hover {
    color: #ef4444 !important;
    background-color: #fef2f2 !important;
}

/* =================================================== */
/* ДНЕВНИК ПОПЪП (НОВИЯТ ОБЛИК С ВЕЧЕРНИ ВЪПРОСИ)       */
/* =================================================== */
.oya-diary-card { 
    width: 92% !important;
    max-width: 420px !important;
    height: 85vh !important; 
    background: #ffffff !important; 
    border-radius: 35px !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    display: flex !important; 
    flex-direction: column !important; 
    padding: 25px 20px !important;
    position: relative !important;
    overflow: hidden !important; 
}

.diary-scrollable-body { 
    flex: 1 !important; 
    overflow-y: auto !important; 
    overflow-x: hidden !important; 
    scrollbar-width: none !important;
}
.diary-scrollable-body::-webkit-scrollbar { display: none !important; }

/* ГРУПИ ВЪПРОСИ */
.field-group { background: #ffffff !important; border: 1px solid #cbd5e1 !important; border-radius: 25px !important; padding: 25px 20px !important; margin-bottom: 25px !important; box-shadow: 0 4px 15px rgba(0,0,0,0.02) !important; }
.field-group label { display: block !important; font-family: var(--font-main) !important; font-weight: 700 !important; color: #1e293b !important; margin-bottom: 18px !important; font-size: 15px !important; text-align: left !important; line-height: 1.35 !important; }
.hint-text { font-size: 13px !important; color: #94a3b8 !important; font-weight: 400 !important; margin-left: 5px !important; }

/* БУТОНИ ЗА ИЗБОР: ПО ЕДИН НА РЕД */
.diary-chip-grid { 
    display: flex !important; 
    flex-direction: column !important; 
    gap: 10px !important; 
}

.d-chip { 
    display: flex !important; 
    flex-direction: column !important; 
    align-items: flex-start !important; 
    justify-content: center !important; 
    padding: 12px 20px !important; 
    border-radius: 20px !important; 
    border: 1px solid #cbd5e1 !important; 
    background: #ffffff !important; 
    color: #475569 !important; 
    font-family: var(--font-main) !important; 
    cursor: pointer !important; 
    transition: all 0.2s ease-out !important; 
    text-align: left !important; 
    width: 100% !important; 
    box-sizing: border-box !important; 
    min-height: 48px !important;
}
.chip-title { font-weight: 600 !important; font-size: 14px !important; line-height: 1.2 !important; text-align: left !important; }
.chip-sub { font-weight: 400 !important; font-size: 12px !important; opacity: 0.7 !important; margin-top: 3px !important; line-height: 1.2 !important; text-align: left !important; }

.d-chip:hover { border-color: var(--oya-blue) !important; color: var(--oya-blue) !important; background-color: #f7fdff !important; }
.d-chip.active { background: #f0f9ff !important; border-color: var(--oya-blue) !important; color: var(--oya-blue) !important; }
.d-chip.active .chip-sub { opacity: 0.9 !important; }

/* emulation */
.eval-grid { display: flex !important; flex-direction: column !important; gap: 10px !important; }
.d-eval-green.active { background: #dcfce7 !important; border-color: #22c55e !important; color: #166534 !important; }
.d-eval-yellow.active { background: #fef9c3 !important; border-color: #eab308 !important; color: #854d0e !important; }
.d-eval-red.active { background: #fee2e2 !important; border-color: #ef4444 !important; color: #991b1b !important; }

.optional-note-section { margin-top: 20px; padding-top: 15px; border-top: 1px dashed #cbd5e1; text-align: center; }
.d-toggle-note-btn { background: transparent !important; border: none !important; color: #64748b !important; font-family: var(--font-main) !important; font-size: 14px !important; font-weight: 500 !important; cursor: pointer !important; text-decoration: underline !important; padding: 0 !important; transition: 0.2s; outline: none !important; }
.d-toggle-note-btn:hover { color: var(--oya-blue) !important; }
.diary-input-box { width: 100% !important; border: 2px solid #cbd5e1 !important; border-radius: 15px !important; padding: 12px 15px !important; font-size: 14px !important; font-family: var(--font-main) !important; box-sizing: border-box !important; background: #fff !important; min-height: 80px; outline: none !important; margin-top: 12px; }

/* ФУТЪР И ПЕЙДЖЪР */
.diary-footer { flex-shrink: 0 !important; background: white !important; display: flex !important; flex-direction: column !important; gap: 15px !important; width: 100% !important; }
.diary-action-row { display: flex !important; gap: 15px !important; width: 100% !important; justify-content: center !important; }

.diary-pill-btn {
    flex: 1 !important; 
    height: 48px !important; 
    border-radius: 25px !important; 
    color: white !important; 
    font-family: var(--font-main) !important; 
    font-weight: 700 !important; 
    font-size: 16px !important; 
    cursor: pointer !important; 
    transition: 0.2s !important; 
    display: flex !important; 
    align-items: center !important; 
    justify-content: center !important; 
    border: none !important;
    outline: none !important;
}
.diary-pill-btn:active { transform: scale(0.95) !important; }
.diary-pill-btn.add-btn { background-color: #5bc0de !important; font-size: 22px !important; box-shadow: 0 4px 12px rgba(91, 192, 222, 0.3) !important; }
.diary-pill-btn.delete-btn { background-color: #ef5350 !important; box-shadow: 0 4px 12px rgba(239, 83, 80, 0.3) !important; }

.diary-pager-row { display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; margin-top: 5px !important; }

.pager-arrow { 
    background-color: #5bc0de !important; 
    color: white !important; 
    border-radius: 50% !important; 
    width: 36px !important; 
    height: 36px !important; 
    display: flex !important; 
    align-items: center !important; 
    justify-content: center !important; 
    font-size: 14px !important; 
    cursor: pointer !important; 
    border: none !important;
    transition: 0.2s !important; 
    box-shadow: 0 4px 10px rgba(91, 192, 222, 0.3) !important; 
    outline: none !important; 
}
.pager-arrow:active { transform: scale(0.9) !important; }
.pager-arrow.disabled-arrow { opacity: 0.35 !important; pointer-events: none !important; }

.page-info { font-family: var(--font-main) !important; font-weight: 700 !important; color: #475569 !important; font-size: 14px !important; min-width: 60px !important; text-align: center !important; }

/* =================================================== */
/* ДНЕВНА ХИДРАТАЦИЯ ПОПЪП (ЧИСТА И МОДУЛНА ВЕРСИЯ)     */
/* =================================================== */
.oya-water-card { 
    width: 92% !important;
    max-width: 420px !important;
    height: 85vh !important; 
    background: #ffffff !important; 
    border-radius: 35px !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    display: flex !important; 
    flex-direction: column !important; 
    padding: 25px 20px !important;
    position: relative !important;
    overflow: hidden !important; 
}

.water-centered-body { 
    flex: 1 !important; 
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important; 
    overflow-y: auto !important; 
    scrollbar-width: none !important;
}
.water-centered-body::-webkit-scrollbar { display: none !important; }

/* ВЕКТОРНА ЧАША ЗА ВОДА */
.oya-glass-wrapper {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 20px auto 25px auto !important;
    width: 150px !important;
    height: 230px !important;
    flex-shrink: 0 !important;
}

.oya-glass-shape {
    position: relative !important;
    width: 130px !important;
    height: 210px !important;
    background: rgba(240, 248, 255, 0.1) !important;
    border: 4px solid #cbd5e1 !important;
    border-top: none !important;
    border-radius: 0 0 18px 18px !important;
    clip-path: polygon(0% 0%, 100% 0%, 82% 100%, 18% 100%) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.oya-water-fill {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 0%; 
    background: linear-gradient(180deg, #6bb0ce, #4fc3f7) !important;
    transition: height 0.8s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.oya-glass-shape::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 12px !important;
    background: rgba(12, 192, 223, 0.05) !important;
    border-bottom: 2px solid #cbd5e1 !important;
    z-index: 10 !important;
}

/* ПОКАЗАТЕЛИ */
.water-metrics-wrap { text-align: center !important; flex-shrink: 0 !important; margin-bottom: 15px !important; }

.water-percentage-display {
    font-family: var(--font-main) !important;
    font-size: 52px !important;
    font-weight: 700 !important;
    color: #5bc0de !important; 
    line-height: 1 !important;
    margin-bottom: 10px !important;
}

.water-fraction-display {
    font-family: var(--font-main) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.5px !important;
}

/* ФУТЪР С БУТОНИТЕ ЗА ДОЗИРАНЕ */
.water-footer { flex-shrink: 0 !important; background: white !important; display: flex !important; flex-direction: column !important; padding-top: 10px !important;}

.water-controls-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 280px !important;
    margin: 0 auto !important;
}

.water-ctrl-btn {
    background-color: #5bc0de !important;
    color: white !important;
    border: none !important;
    border-radius: 50% !important;
    width: 44px !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    cursor: pointer !important;
    transition: 0.2s !important;
    box-shadow: 0 4px 12px rgba(91, 192, 222, 0.3) !important;
    outline: none !important;
}
.water-ctrl-btn:active { transform: scale(0.9) !important; }

.water-increment-label {
    font-family: var(--font-main);
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--text-muted) !important;
}

/* =================================================== */
/* НАГРАДИ ПОПЪП (УЕДНАКВЕН ДИЗАЙН И ЧИСТ КОД)         */
/* =================================================== */
.oya-awards-card { 
    width: 92% !important;
    max-width: 420px !important;
    height: 85vh !important; 
    background: #ffffff !important; 
    border-radius: 35px !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    display: flex !important; 
    flex-direction: column !important; 
    padding: 25px 20px !important;
    position: relative !important;
    overflow: hidden !important; 
}

.oya-awards-list { 
    display: flex !important; 
    flex-direction: column !important; 
    gap: 15px !important; 
    align-items: flex-start !important; 
    flex: 1 !important; 
    overflow-y: auto !important; 
    overflow-x: hidden !important; 
    scrollbar-width: none !important;
}
.oya-awards-list::-webkit-scrollbar { display: none !important; }

.oya-award-item { display: flex !important; align-items: center !important; gap: 15px !important; cursor: pointer !important; width: 100% !important; justify-content: flex-start !important; padding: 5px 0 !important; flex-shrink: 0 !important; }
.oya-award-icon-box { width: 70px !important; height: 70px !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.oya-award-icon { width: 62px !important; height: 62px !important; border-radius: 50% !important; object-fit: contain !important; filter: grayscale(100%) opacity(0.3) drop-shadow(0 2px 4px rgba(0,0,0,0.05)); transition: all 0.25s ease-out !important; }

.oya-award-text { font-family: 'Playfair Display', serif !important; font-size: 19px !important; font-weight: 700 !important; color: #999999 !important; text-align: left !important; line-height: 1.2 !important; transition: color 0.3s ease !important; margin: 0 !important; }

.oya-award-item.unlocked .oya-award-icon { filter: grayscale(0%) opacity(1) drop-shadow(0 6px 12px rgba(0,0,0,0.18)); }
.oya-award-item.unlocked .oya-award-text { color: #1a1a1a !important; }

/* МИНИ-ПОПЪП СЛОЙ НА НАГРАДИТЕ */
.oya-mini-popup-overlay { 
    position: absolute !important; 
    top: 0 !important; 
    left: 0 !important; 
    width: 100% !important; 
    height: 100% !important; 
    background: #ffffff !important; 
    z-index: 999999 !important; 
    display: none; 
    flex-direction: column !important; 
    align-items: center !important; 
    justify-content: center !important; 
    padding: 25px 20px !important; 
    box-sizing: border-box !important;
    border-radius: 35px !important;
}
.oya-mini-popup-overlay.active { 
    display: flex !important; 
    animation: fadeInShift 0.25s ease-out forwards; 
}

.oya-mini-icon { width: 85px !important; height: 85px !important; border-radius: 50% !important; margin-bottom: 20px !important; }

.mini-popup-title-text { 
    font-family: 'Playfair Display', serif !important; 
    font-size: 24px !important; 
    font-weight: 700 !important; 
    margin-bottom: 12px !important; 
    color: #1a1a1a !important; 
    text-align: center !important;
}

.mini-popup-desc-text { 
    font-family: 'Segoe UI', sans-serif !important; 
    font-size: 15px !important; 
    color: #65676b !important; 
    line-height: 1.45 !important; 
    text-align: center !important; 
    padding: 0 10px !important; 
    margin-bottom: 30px !important; 
}

.oya-btn-group { display: flex !important; flex-direction: column !important; gap: 12px !important; width: 100% !important; align-items: center !important; }
.oya-reward-action-btn { background-color: #5bc0de !important; color: white !important; border: none !important; padding: 12px 20px !important; border-radius: 30px !important; font-family: 'Segoe UI', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; cursor: pointer !important; width: 100% !important; max-width: 240px !important; text-decoration: none !important; text-align: center !important; box-shadow: 0 4px 12px rgba(91,192,222,0.3) !important; }

/* ФАНФАРЕН ЕКРАН - ЦЕНТРАЛИЗИРАН СТИЛ */
.fanfare-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: rgba(15, 23, 42, 0.92) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 1000500 !important;
    opacity: 0;
    transition: opacity 0.3s ease-in-out !important;
}
.fanfare-overlay.active {
    display: flex !important;
    opacity: 1 !important;
}
.fanfare-content {
    display: flex !important;
    flex-direction: column !important; 
    align-items: center !important;     
    justify-content: center !important;
    text-align: center !important;
    gap: 15px !important;
    width: 85% !important;
    max-width: 320px !important;
    animation: oyaFanfareScale 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards !important;
}
.fanfare-title {
    color: #f1c40f !important;
    font-family: 'Playfair Display', serif !important;
    font-size: 32px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: 3px !important;
    margin: 0 0 10px 0 !important;
    text-shadow: 0 4px 12px rgba(241, 196, 15, 0.3) !important;
}
#fanfare-large-img {
    width: 140px !important;
    height: 140px !important;
    object-fit: contain !important;
    margin: 0 auto !important; 
    display: block !important;
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.3)) !important;
}
#fanfare-large-name {
    color: #ffffff !important;
    font-family: 'Playfair Display', serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    margin: 10px 0 0 0 !important;
    line-height: 1.35 !important;
}

@keyframes oyaFanfareScale {
    0% { transform: scale(0.6); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}

/* =================================================== */
/* СИГНАЛИ НА ТЯЛОТО (САМОСТОЯТЕЛЕН СЛАЙДЕР И БУТОНИ)  */
/* =================================================== */
.oya-symptoms-card { 
    width: 92% !important;
    max-width: 420px !important;
    height: 85vh !important; 
    background: #ffffff !important; 
    border-radius: 35px !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    display: flex !important; 
    flex-direction: column !important; 
    padding: 25px 20px !important;
    position: relative !important;
    overflow: hidden !important; 
}

.symp-slider-viewport { overflow: hidden !important; width: 100% !important; flex: 1 !important; position: relative !important; display: flex !important; flex-direction: column !important; }
.symp-slider-track { display: flex !important; width: 200% !important; transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; flex: 1 !important; }
.symp-panel { width: 50% !important; box-sizing: border-box !important; flex-shrink: 0 !important; display: flex !important; flex-direction: column !important; gap: 12px !important; }

/* КАТЕГОРИИ */
.symp-cat-btn {
    width: 100% !important; 
    height: 48px !important;
    background: #ffffff !important; 
    border: 1px solid #cbd5e1 !important;
    border-radius: 30px !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--font-main) !important; 
    font-size: 15px !important; 
    font-weight: 600 !important;
    color: #1e293b !important; 
    cursor: pointer !important; 
    transition: all 0.2s ease-out !important; 
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02) !important;
    box-sizing: border-box !important;
}
.symp-cat-btn:hover { 
    border-color: var(--oya-blue) !important; 
    color: var(--oya-blue) !important; 
    background-color: #f7fdff !important;
}
.symp-cat-btn.has-value-3 { background: #fef08a !important; border-color: transparent !important; color: #854d0e !important; box-shadow: inset 0 3px 6px rgba(0,0,0,0.06) !important; }
.symp-cat-btn.has-value-6 { background: #fdba74 !important; border-color: transparent !important; color: #9a3412 !important; box-shadow: inset 0 3px 6px rgba(0,0,0,0.06) !important; }
.symp-cat-btn.has-value-10 { background: #fca5a5 !important; border-color: transparent !important; color: #991b1b !important; box-shadow: inset 0 3px 6px rgba(0,0,0,0.06) !important; }

/* СИГНАЛИ */
.symp-sig-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 30px !important;
    padding: 0 20px !important;
    height: 48px !important;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    position: relative !important;
    flex-shrink: 0 !important;
}
.symp-sig-wrapper:hover:not(.expanded) { border-color: var(--oya-blue) !important; background-color: #f7fdff !important; }
.symp-sig-wrapper.has-value-3 { background: #fef08a !important; border-color: transparent !important; }
.symp-sig-wrapper.has-value-6 { background: #fdba74 !important; border-color: transparent !important; }
.symp-sig-wrapper.has-value-10 { background: #fca5a5 !important; border-color: transparent !important; }

.symp-sig-header {
    font-family: var(--font-main) !important; 
    font-weight: 600 !important; 
    font-size: 15px !important;
    color: #1e293b !important; 
    transition: 0.2s !important; 
    white-space: nowrap !important; 
    width: 100% !important; 
    text-align: center !important; 
    line-height: 1.2 !important; 
    display: block !important;
}

.symp-sig-wrapper.expanded {
    height: 115px !important; 
    background: #f8fafc !important; 
    border: 1px solid #cbd5e1 !important;
    border-radius: 20px !important; 
    padding: 12px 15px !important; 
    justify-content: space-between !important;
    box-shadow: inset 0 3px 10px rgba(0,0,0,0.03) !important;
}
.symp-sig-wrapper.expanded .symp-sig-header { color: var(--oya-blue) !important; font-weight: 700 !important; margin-top: 2px !important; }

.symp-int-row { display: none !important; width: 100% !important; gap: 8px !important; justify-content: space-between !important; }
.symp-sig-wrapper.expanded .symp-int-row { display: flex !important; animation: oyaFadeInUp 0.25s ease forwards; }

.symp-int-btn {
    flex: 1 !important; 
    height: 36px !important;
    border-radius: 18px !important; 
    border: 1px solid #cbd5e1 !important;
    background: #ffffff !important; 
    color: var(--text-muted) !important; 
    font-family: var(--font-main) !important; 
    font-weight: 600 !important;
    font-size: 13px !important; 
    cursor: pointer !important; 
    transition: all 0.2s ease !important; 
}
.symp-int-btn:hover { border-color: var(--oya-blue) !important; color: var(--oya-blue) !important; }
.symp-int-btn.active { transform: scale(0.94) translateY(1px) !important; border-color: transparent !important; }
.symp-int-btn.active[data-val="3"] { background: #fef08a !important; color: #854d0e !important; box-shadow: inset 0 3px 6px rgba(0,0,0,0.1) !important; }
.symp-int-btn.active[data-val="6"] { background: #fdba74 !important; color: #9a3412 !important; box-shadow: inset 0 3px 6px rgba(0,0,0,0.12) !important; }
.symp-int-btn.active[data-val="10"] { background: #fca5a5 !important; color: #991b1b !important; box-shadow: inset 0 3px 6px rgba(0,0,0,0.15) !important; }

.symp-back-btn-circle {
    position: absolute !important;
    left: 20px !important;
    bottom: 25px !important;
    background-color: #5bc0de !important;
    color: white !important;
    border: none !important;
    border-radius: 50% !important;
    width: 38px !important;
    height: 38px !important;
    display: none; 
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: 0.2s !important;
    box-shadow: 0 4px 10px rgba(91, 192, 222, 0.3) !important;
    outline: none !important;
    z-index: 99 !important;
}
.symp-back-btn-circle:active { transform: scale(0.9) !important; }

/* =================================================== */
/* DEЛИКАТНО ПОДСЕЩАНЕ ЗА ВОДА (САМОСТОЯТЕЛЕН БАНЕР)   */
/* =================================================== */
#oya-water-toast {
    position: fixed !important;
    top: 80px !important; 
    left: 50% !important;
    transform: translateX(-50%) translateY(-150px) !important; 
    background-color: #fffdf7 !important; 
    border: 1px solid #cbd5e1 !important;
    border-radius: 30px !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1) !important;
    display: flex !important;
    align-items: center !important;
    padding: 8px 15px 8px 10px !important;
    width: 90% !important;
    max-width: 360px !important;
    z-index: 1000200 !important; 
    transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.5s ease !important;
    opacity: 0;
    pointer-events: none !important;
}

#oya-water-toast.oya-toast-visible {
    transform: translateX(-50%) translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

.oya-toast-icon { font-size: 24px !important; margin-right: 12px !important; line-height: 1 !important; }
.oya-toast-text { font-family: var(--font-main) !important; font-size: 13px !important; font-weight: 700 !important; color: #4a3721 !important; flex: 1 !important; line-height: 1.3 !important; text-align: left; }

.oya-toast-btn {
    background-color: #5bc0de !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 20px !important;
    padding: 8px 15px !important;
    font-family: var(--font-main) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    margin-left: 10px !important;
    box-shadow: 0 4px 10px rgba(91,192,222,0.3) !important;
    transition: transform 0.2s !important;
}
.oya-toast-btn:active { transform: scale(0.9) !important; }

.oya-toast-close {
    background: transparent !important; 
    border: none !important; 
    box-shadow: none !important;
    outline: none !important;
    color: #999 !important; 
    font-size: 20px !important;
    cursor: pointer !important; 
    margin-left: 10px !important; 
    padding: 0 5px !important; 
    line-height: 1 !important;
}

/* ========================================================== */
/* ГЛОБАЛЕН OYA INFO HUB С УМНО ИЗВЛИЧАНЕ (V3.5)              */
/* ========================================================== */
#oya-info-modal.oya-popup-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: rgba(0, 0, 0, 0.4) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 1000300 !important; 
    opacity: 0;
    transition: opacity 0.25s ease !important;
    box-sizing: border-box !important;
}
#oya-info-modal.oya-popup-overlay.active {
    display: flex !important;
    opacity: 1 !important;
}

.info-modal-card {
    position: relative !important;
    background: #ffffff !important;
    padding: 30px 25px !important;
    border-radius: 30px !important;
    width: 88% !important;
    max-width: 380px !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.12) !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(0,0,0,0.02) !important;
    animation: oyaInfoScaleUp 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes oyaInfoScaleUp {
    0% { transform: scale(0.9); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}

.info-modal-header {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 20px !important;
    box-sizing: border-box !important;
}

.info-icon-circle {
    width: 40px !important;
    height: 40px !important;
    border-radius: 14px !important;
    background-color: rgba(12, 192, 223, 0.08) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 15px !important;
    flex-shrink: 0 !important;
}

.info-title-group {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    text-align: left !important;
}
.info-title-group h3 {
    font-family: var(--font-main) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}
.info-title-group p {
    font-family: var(--font-main) !important;
    font-size: 12px !important;
    color: #94a3b8 !important;
    font-weight: 500 !important;
    margin: 4px 0 0 0 !important;
}

.info-close-action {
    color: #8e8f94 !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    width: 34px !important;
    height: 34px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    box-sizing: border-box !important;
}
.info-close-action:hover, .info-close-action:active {
    color: #ef4444 !important;
    background-color: #fef2f2 !important;
}

.info-modal-body {
    width: 100% !important;
    box-sizing: border-box !important;
    margin-bottom: 25px !important;
    max-height: 45vh !important; 
    overflow-y: auto !important;
    padding-right: 5px !important;
}
.info-modal-body::-webkit-scrollbar {
    width: 4px !important;
}
.info-modal-body::-webkit-scrollbar-thumb {
    background: #cbd5e1 !important;
    border-radius: 4px !important;
}

#oya-info-popup-text {
    font-family: var(--font-main) !important;
    font-size: 14.5px !important;
    line-height: 1.6 !important;
    color: #475569 !important;
    text-align: left !important;
    margin: 0 !important;
}

#oya-info-popup-text img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: 15px !important;
    margin: 15px 0 !important;
    display: block !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.04) !important;
}

#oya-info-popup-text li img,
#oya-info-popup-text li .wp-block-image img {
    width: 64px !important;
    max-width: 64px !important;
    height: 64px !important;
    object-fit: contain !important;
    margin: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    display: block !important;
    flex-shrink: 0 !important;
}

#oya-info-popup-text ul {
    margin: 10px 0 15px 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
#oya-info-popup-text li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 15px !important;
    margin-bottom: 20px !important;
    padding-left: 0 !important;
}
#oya-info-popup-text li::before {
    display: none !important;
}

#oya-info-popup-text [style*="background-color"] img,
#oya-info-popup-text [class*="tip"] img,
#oya-info-popup-text .wp-block-group img {
    width: 20px !important;
    max-width: 20px !important;
    height: 20px !important;
    object-fit: contain !important;
    margin: -5px 0 0 0 !important;
    display: inline-block !important;
    vertical-align: middle !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

.info-modal-footer {
    flex-shrink: 0 !important;
}
.info-modal-confirm-btn {
    width: 100% !important;
    height: 46px !important;
    background-color: #0cc0df !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 23px !important;
    font-family: var(--font-main) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    box-shadow: 0 4px 12px rgba(12, 192, 223, 0.2) !important;
    outline: none !important;
}
.info-modal-confirm-btn:hover {
    background-color: #0ab1ce !important;
    transform: translateY(-1px);
}

/* =================================================== */
/* 🏆 СТИЛОВЕ ЗА ФИНАЛНАТА СТРАНИЦА "ПОЗДРАВЛЕНИЯ"     */
/* =================================================== */
.oya-congrats-dashboard { 
    max-width: 800px; 
    margin: 0 auto; 
    font-family: var(--font-main); 
    color: #333; 
    padding: 20px; 
}

.congrats-header { 
    text-align: center; 
    margin-bottom: 50px; 
}

.congrats-main-title { 
    font-family: 'Playfair Display', serif !important; 
    font-size: 42px !important; 
    font-weight: 700 !important; 
    color: #1a1a1a !important; 
    margin-bottom: 15px !important; 
    font-style: italic !important; 
    line-height: 1.2 !important; 
}

.congrats-subtitle { 
    font-size: 18px; 
    color: #888; 
}

.oya-stats-grid { 
    display: flex; 
    gap: 20px; 
    margin-bottom: 40px; 
}

.oya-stat-box { 
    flex: 1; 
    background: #fff; 
    border-radius: 25px; 
    padding: 35px 20px; 
    text-align: center; 
    box-shadow: 0 15px 35px rgba(0,0,0,0.04); 
    border: 1px solid #f0f0f0; 
}

.stat-icon { font-size: 40px; margin-bottom: 15px; }
.stat-value { font-size: 42px; font-weight: 900; color: #0cc0df; margin-bottom: 5px; line-height: 1; }
.stat-label { font-size: 14px; color: #999; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; }

.oya-victory-section, .oya-chart-container { 
    background: #fff; 
    border-radius: 25px; 
    padding: 35px; 
    box-shadow: 0 15px 35px rgba(0,0,0,0.04); 
    border: 1px solid #f0f0f0; 
    margin-bottom: 40px; 
}

.section-title { 
    text-align: center; 
    font-family: 'Playfair Display', serif; 
    font-style: italic; 
    font-size: 26px; 
    color: #1a1a1a; 
    margin-bottom: 10px; 
    font-weight: 700; 
}

.section-desc { 
    text-align: center; 
    color: #666; 
    margin-bottom: 25px; 
    font-size: 16px; 
}

.victory-item { 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    padding: 18px 25px; 
    background: #fdfdfd; 
    border: 1px solid #eee; 
    border-radius: 20px; 
    margin-bottom: 12px; 
    transition: 0.3s; 
}
.victory-item:hover { transform: translateX(5px); border-color: #0cc0df; }
.victory-name { font-weight: 700; color: #444; font-size: 17px; }
.victory-perc { font-weight: 900; color: #849b89; font-size: 20px; }

.oya-metric-dropdown {
    padding: 12px 20px;
    font-family: var(--font-main);
    font-size: 15px;
    font-weight: 700;
    color: #444;
    background-color: #f8f9fa;
    border: 2px solid #e2e8f0;
    border-radius: 30px;
    outline: none;
    cursor: pointer;
    width: 100%;
    max-width: 350px;
    transition: border-color 0.3s;
}
.oya-metric-dropdown:focus { border-color: #0cc0df; }

.oya-final-rewards-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    margin-top: 20px;
}

.oya-final-reward-item {
    width: 100px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

.oya-final-reward-icon {
    width: 70px;
    height: 70px;
    object-fit: contain;
    border-radius: 50%;
    transition: all 0.3s;
    margin-bottom: 8px;
}

.oya-final-reward-item.locked .oya-final-reward-icon {
    filter: grayscale(100%) opacity(0.3);
}

.oya-final-reward-item.unlocked .oya-final-reward-icon {
    filter: grayscale(0%) opacity(1) drop-shadow(0 6px 12px rgba(0,0,0,0.15));
}

.oya-final-reward-name {
    font-family: 'Playfair Display', serif;
    font-size: 13px;
    font-weight: 700;
    color: #444;
    line-height: 1.2;
}
.oya-final-reward-item.locked .oya-final-reward-name { color: #aaa; }

.oya-reward-badge {
    position: absolute;
    top: -10px;
    right: 0px; 
    z-index: 10; 
    background: #0cc0df;
    color: white;
    font-size: 12px;
    font-weight: 900;
    font-family: var(--font-main);
    padding: 3px 7px;
    border-radius: 10px;
    border: 2px solid #fffdf7; 
    box-shadow: 0 3px 8px rgba(0,0,0,0.25);
}

@media (max-width: 600px) {
    .oya-stats-grid { flex-direction: column; }
    .congrats-main-title { font-size: 32px !important; }
    .oya-victory-section, .oya-chart-container { padding: 20px; }
}

/* ========================================== */
/* OYA EDITORIAL APP-READER PANEL (ULTRA LUX) */
/* ========================================== */
.oya-reader-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: rgba(15, 23, 42, 0.45) !important;
    backdrop-filter: blur(15px) !important;
    -webkit-backdrop-filter: blur(15px) !important;
    z-index: 1000600 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.oya-reader-overlay.active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.oya-reader-card {
    width: 100% !important;
    height: 100% !important;
    background: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 25px 60px rgba(0,0,0,0.18) !important;
    box-sizing: border-box !important;
    transition: transform 0.4s cubic-bezier(0.1, 0.8, 0.3, 1) !important;
    transform: translateX(100%); 
}
.oya-reader-overlay.active .oya-reader-card {
    transform: translateX(0) !important;
}

@media (min-width: 768px) {
    .oya-reader-card {
        width: 90% !important;
        max-width: 720px !important;
        height: 90vh !important;
        border-radius: 35px !important;
        overflow: hidden !important;
        transform: translateY(50px) scale(0.95);
        opacity: 0;
        transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
    }
    .oya-reader-overlay.active .oya-reader-card {
        transform: translateY(0) scale(1) !important;
        opacity: 1 !important;
    }
}

.oya-reader-header {
    height: 64px !important;
    background: #000000 !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 20px !important;
    flex-shrink: 0 !important;
    position: relative !important;
}

.oya-reader-back-btn {
    background: none !important;
    border: none !important;
    color: #ffffff !important; 
    font-family: var(--font-main) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 12px !important;
    border-radius: 20px !important;
    transition: all 0.2s !important;
}
.oya-reader-back-btn:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

.oya-reader-title-center {
    color: #ffffff !important; 
    font-family: 'Playfair Display', serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    font-style: normal !important; /* Изправен бранд текст */
    text-align: center !important;
    flex-grow: 1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 60% !important;
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

.oya-reader-close-btn {
    background: none !important;
    border: none !important;
    color: #ffffff !important; 
    font-size: 20px !important;
    cursor: pointer !important;
    padding: 8px 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    transition: all 0.2s !important;
}
.oya-reader-close-btn:hover {
    color: #ef4444 !important; 
    background: rgba(255, 255, 255, 0.1) !important;
}

.oya-reader-body {
    flex: 1 !important;
    overflow: hidden !important;
    width: 100% !important;
}
.oya-reader-scroll-viewport {
    width: 100% !important;
    height: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 30px 20px !important;
    box-sizing: border-box !important;
    scrollbar-width: none !important;
    background: #d1dee8 !important; /* Пастелен син фон */
}
.oya-reader-scroll-viewport::-webkit-scrollbar {
    display: none !important;
}

#oya-reader-content-area {
    max-width: 620px !important; 
    margin: 0 auto !important;
    text-align: left !important;
}
#oya-reader-content-area h1,
#oya-reader-content-area h2,
#oya-reader-content-area h3 {
    font-family: 'Playfair Display', serif !important;
    color: #1e293b !important;
    font-weight: 700 !important;
    margin-top: 30px !important;
    margin-bottom: 15px !important;
    line-height: 1.25 !important;
}
#oya-reader-content-area h1 { font-size: 28px !important; }
#oya-reader-content-area h2 { font-size: 24px !important; border-bottom: 1px solid rgba(255, 255, 255, 0.3); padding-bottom: 10px; }
#oya-reader-content-area h3 { font-size: 20px !important; }

#oya-reader-content-area p {
    font-family: 'Roboto', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: #334155 !important;
    margin-bottom: 20px !important;
}
#oya-reader-content-area img,
#oya-reader-content-area video {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: 20px !important;
    margin: 25px 0 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.04) !important;
}

/* ========================================== */
/* OYA UNIVERSAL GRID & CARDS SYSTEM (PERFECT)*/
/* ========================================== */
.oya-universal-grid-wrapper {
    width: 100% !important;
    margin: 20px 0 !important;
    box-sizing: border-box !important;
}

.oya-filters-scroll-bar {
    display: flex !important;
    gap: 6px !important;
    overflow-x: auto !important;
    padding-bottom: 15px !important;
    margin-bottom: 25px !important;
    scrollbar-width: none !important; 
    cursor: grab !important;
    user-select: none !important;
    -webkit-overflow-scrolling: touch !important;
}
.oya-filters-scroll-bar:active {
    cursor: grabbing !important;
}
.oya-filters-scroll-bar::-webkit-scrollbar {
    display: none !important; 
}

.oya-text-filter {
    background: #f1f5f9 !important;
    border: none !important;
    border-radius: 30px !important;
    padding: 8px 18px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
}
.oya-text-filter:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
}
.oya-text-filter.active {
    background: #0cc0df !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(12, 192, 223, 0.2) !important;
}

.oya-grid-container {
    display: grid !important;
    grid-template-columns: 1fr !important; 
    gap: 15px !important;
    width: 100% !important;
}

@media (min-width: 600px) {
    .oya-grid-container {
        grid-template-columns: repeat(2, 1fr) !important; 
    }
}
@media (min-width: 900px) {
    .oya-grid-container {
        grid-template-columns: repeat(3, 1fr) !important; 
    }
}

/* КАРТАТА НА ПОСТОВЕТЕ (ПЛОСКА, НАПЪЛНО ИЗПЪЛВАЩА ВЕРСИЯ С ПОДСВЕТКА) */
.oya-custom-card {
    background: #ffffff !important;
    border-radius: 25px !important;
    border: none !important; 
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06) !important; 
    box-sizing: border-box !important;
    max-height: 400px !important;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.oya-custom-card:hover {
    transform: translateY(-6px) !important; /* Издигане при посочване */
    box-shadow: 0 20px 40px rgba(0,0,0,0.12) !important; /* Омекване на сянката */
}

/* ГАРАНТИРАНО НУЛИРАНЕ НА ВСЯКАКЪВ PADDING ВЪТРЕ В РИЙДЪРА */
#oya-reader-content-area .oya-custom-card,
#oya-reader-content-area .oya-grid-item {
    padding: 0 !important; /* Премахва бялата рамка около снимката */
    margin: 0 !important;
}

/* СНИМКАТА (ЕЛИМИНИРА ВСЯКАКВИ МЪРТВИ ВЪТРЕШНИ ПРОСТРАНСТВА) */
.oya-card-image-wrap {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    height: 180px !important; /* Плътна височина за перфектен кадър */
    border-radius: 20px 20px 0 0 !important; /* Заобляне само в горните два ъгъла */
    overflow: hidden !important;
    display: block !important;
}

/* СУПЕР ФИКС: ПРИЦЕЛВАМЕ СЕ ДИРЕКТНО ВЪВ ВСЯКА СНИМКА В КАРТАТА */
#oya-reader-content-area .oya-custom-card img,
#oya-reader-content-area .oya-custom-card video,
.oya-custom-card img,
.oya-custom-card video {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important; 
    border-radius: 0 !important; /* Премахва вътрешното заобляне на самата снимка */
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.oya-custom-card:hover .oya-card-image-wrap img {
    transform: scale(1.05) !important; /* Фин зуум ефект при посочване */
}

/* СЪДЪРЖАНИЕ НА КАРТАТА */
.oya-card-content {
    padding: 24px 20px !important; 
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: left !important;
    flex-grow: 1 !important;
    box-sizing: border-box !important;
}

/* Категория (Рецепти/Млечни) - Roboto 12px */
.oya-card-content span,
.oya-card-content .parent-sub-cat,
.oya-card-content .oya-card-badge {
    background: transparent !important; 
    padding: 0 !important; 
    margin: 0 0 -20px 0 !important;
    color: #65676b !important; 
    font-family: 'Roboto', sans-serif !important; 
    font-size: 12px !important; 
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    display: block !important;
    text-align: left !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Заглавие на рецептата - Roboto 16px */
.oya-card-title,
.oya-card-title a {
    font-family: 'Roboto', sans-serif !important; 
    font-size: 18px !important; 
    font-weight: 600 !important;
    color: #1a1a1a !important;
    margin: 0 0 0 0 !important;
    line-height: 1.1 !important;
    text-align: left !important;
    flex-grow: 1 !important;
}

/* Линк ВИЖ -> (подравнен долу вдясно) */
.oya-read-more-link {
    font-family: 'Roboto', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #0cc0df !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    align-self: flex-start !important; 
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-top: auto !important; 
}

/* БЕЛИ ЗАГЛАВИЯ НА СЕКЦИИТЕ В БИБЛИОТЕКАТА ВЪРХУ СИНИЯ ФОН */
.bookshelf-section-wrap h2 {
    font-family: 'Playfair Display', serif !important;
    font-size: 26px !important;
    color: #ffffff !important; /* Бяло заглавие върху красивия син фон */
    font-weight: 700 !important;
    margin: 0 0 20px 0 !important;
}

/* КОРЕКЦИЯ И ОФОРМЛЕНИЕ НА БУТОНА ЗАРЕДИ ОЩЕ */
.oya-pagination-area {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin-top: 35px !important;
    margin-bottom: 25px !important;
}

.oya-load-more-btn {
    background: #ffffff !important;
    border: 2px solid #cbd5e1 !important;
    border-radius: 30px !important;
    padding: 12px 35px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #475569 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    outline: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.02) !important;
}

.oya-load-more-btn:hover {
    background: #f8fafc !important;
    border-color: #0cc0df !important;
    color: #0cc0df !important;
    box-shadow: 0 6px 15px rgba(12, 192, 223, 0.15) !important;
}

/* ЕЛИМИНИРАНЕ НА ЗАСТЪПВАНЕТО НА ТЕКСТА НА ТЕЛЕФОН (iOS/Material Design СТИЛ) */
.oya-reader-title-center {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    max-width: 50vw !important; /* Лимитира заглавието до 50% от ширината на екрана */
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important; /* Автоматично добавя три точки (...) при дълъг текст */
}

/* КРАСИВО ОФОРМЛЕНИЕ НА СЪСТАВКИТЕ И СВИВАНЕ НА РАЗСТОЯНИЯТА */
#oya-reader-content-area ul {
    list-style: none !important; /* Напълно махаме грозните черни точки */
    padding-left: 0 !important;
    margin: 8px 0 20px 0 !important; /* СУПЕР ФИКС: Свиваме горния маргин на 8px за елиминиране на празния гап */
}

#oya-reader-content-area li {
    position: relative !important;
    padding-left: 20px !important; /* Място за новата бранд точка */
    font-family: 'Roboto', sans-serif !important;
    font-size: 15px !important;
    color: #475569 !important;
    line-height: 1.5 !important;
    margin-bottom: 8px !important; /* Свиваме разстоянието между съставките до 8px за по-голяма компактност */
}

#oya-reader-content-area li::before {
    content: "•" !important;
    position: absolute !important;
    left: 5px !important;
    color: #0cc0df !important; 
    font-size: 22px !important;
    line-height: 1 !important;
    top: -2px !important;
}

/* СЛАГАМЕ КРАСИВА, ДЕЛИКАТНА БРАНДОВА ТОЧКА ПРЕД ВСЯКА СЪСТАВКА */
#oya-reader-content-area li::before {
    content: "•" !important;
    position: absolute !important;
    left: 5px !important;
    color: #0cc0df !important; /* Успокояващ бранд син цвят за точката */
    font-size: 22px !important;
    line-height: 1 !important;
    top: -2px !important;
}

/* Увеличаваме страничното разстояние на телефона за повече въздух при четене */
.oya-reader-scroll-viewport {
    padding: 30px 24px !important;
}

/* ========================================================== */
/* ПЕРСОНАЛИЗИРАН СЛАДКАРСКИ ФОН ЗА ЗДРАВОСЛОВНИТЕ ДЕСЕРТИ      */
/* ========================================================== */

/* Сладкарски фон под картичките */
.oya-reader-scroll-viewport.slug-healthy-desserts {
    background: #F8F4F7 !important;
}

/* Какаови изящни заглавия за десертите */
.slug-healthy-desserts h2,
.slug-healthy-desserts .bookshelf-section-wrap h2,
.slug-healthy-desserts h2.desserts-title {
    color: #513e43 !important; /* Топъл шоколадов/какаов тон */
    font-family: 'Playfair Display', serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
}

/* ФИНАЛЕН ФИКС ЗА ДИНАМИЧНО РАЗТЯГАНЕ НА ЧЕКАУТ КУТИЯТА И ПОЛЕТАТА */
.oya-fields-wrapper,
.oya-fields-wrapper *,
.pms-account-subscription-details-table,
.pms-account-subscription-details-table__14614,
html body .oya-price-card {
    height: auto !important; /* Отключва височината на балона и полетата */
    min-height: 0 !important;
    max-height: none !important;
    padding-bottom: 30px !important; /* Добавя чист отстъп най-отдолу, за да не се допират текстовете */
}

/* OYA 2026-09-09.3: Reader header and Inner Shift controls. */
#oya-app-reader .oya-reader-header { position: relative !important; }
#oya-app-reader #oya-reader-title {
    display: block !important; visibility: visible !important; opacity: 1 !important;
    color: #fff !important; width: calc(100% - 200px) !important;
    max-width: calc(100% - 200px) !important; min-width: 0 !important;
    top: 50% !important; left: 50% !important; transform: translate(-50%, -50%) !important;
    line-height: 1.3 !important; z-index: 1 !important;
}
#oya-inner-shift-layer .ishift-titles { flex: 1 1 auto !important; min-width: 0 !important; }
#oya-inner-shift-layer .ishift-actions { margin-left: auto !important; display: flex !important; align-items: center !important; gap: 15px !important; flex: 0 0 auto !important; }
#oya-inner-shift-layer .ishift-info-btn,
#oya-inner-shift-layer .ishift-close-btn-icon {
    position: static !important; transform: none !important; margin: 0 !important;
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    width: 20px !important; height: 24px !important; line-height: 1 !important;
}
#oya-inner-shift-layer .ishift-info-btn { font-size: 18px !important; }
#oya-inner-shift-layer .ishift-close-btn-icon { font-size: 20px !important; }

#oya-universal-overlay #u-btn-escapecard {
    background-color: #0cc0df !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(12, 192, 223, .3) !important;
}

/* Append to the END of OYA theme style.css. Only the day carousel arrows. */
.oya-carousel-wrapper .oya-nav-btn {
    position: relative;
    padding: 0 !important;
    box-sizing: border-box;
}
.oya-carousel-wrapper .oya-nav-btn span {
    /* Preserve the existing text for assistive technology. */
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    margin: 0;
}
.oya-carousel-wrapper .oya-nav-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 20px;
    height: 20px;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 5l7 7-7 7' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 5l7 7-7 7' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    pointer-events: none;
}
.oya-carousel-wrapper #nav-left::after { transform: rotate(180deg); }
.oya-carousel-wrapper #nav-right::after { transform: none; }
.oya-carousel-wrapper .oya-nav-btn:focus-visible {
    outline: 2px solid currentColor !important;
    outline-offset: 3px;
}