/* Velia Aura atmosphere: appearance only, no geometry or interaction changes. */
:root{--aura-shadow:0 2px 3px rgba(30,58,78,.035),0 10px 24px rgba(30,58,78,.075);--aura-light:inset 0 1px 0 rgba(255,255,255,.95)}
body,body:has(#startPage:not([hidden])){background-color:#f5f8fa;background-image:radial-gradient(ellipse at 0% 10%,#d9edf475,transparent 48%),radial-gradient(ellipse at 100% 90%,#e3e8f560,transparent 48%);background-attachment:fixed}
:is(.login-card,.customer-card,.meal-library-card,.recipe-card,.workout-detail-card,#slots>section.card,#startPage .calendar,.day-summary-card:not(.weather),.plan-card-with-delete){box-shadow:var(--aura-light),var(--aura-shadow)!important;background-image:linear-gradient(145deg,rgba(255,255,255,.9),rgba(244,248,251,.3))}
:is(#startPage .my-calendar-card,.my-calendar-page .my-calendar-card,.activity-calendar-views .my-calendar-card){box-shadow:inset 0 1px 0 #ffffffc0,0 2px 3px #28465a08,0 6px 14px #28465a0d!important;background-image:linear-gradient(140deg,#ffffff65,transparent 75%)}
:is(.day-summary-card,.customer-card,.meal-library-card,#slots>section.card,.plan-card-with-delete){border-color:#dce5e9}
:is(.day-summary-card:not(.weather) strong,#slots .meal-nutrients dd){text-shadow:0 1px 0 #fff}
.day-summary-card.weather{box-shadow:inset 0 1px 0 #ffffff35,0 10px 24px #23485a20!important}
:is(dialog,.workout-dialog,.activity-card-dialog){box-shadow:inset 0 1px 0 #ffffffb0,0 18px 65px #19394d30}
:is(.bottom-nav,.bottom-nav .uniform-nav-menu){box-shadow:inset 0 1px 0 #ffffff25,0 4px 8px #17384b12,0 16px 34px #17384b24!important}
.bottom-nav,body:has(#startPage:not([hidden])) .bottom-nav{background-image:linear-gradient(145deg,#ffffff0f,transparent 65%)}
.bottom-nav>.plus,body:has(#startPage:not([hidden])) .bottom-nav>.plus{box-shadow:inset 0 2px 1px #ffffff70,0 3px 5px #102b4135,0 8px 15px #102b4120;background-image:linear-gradient(145deg,#ffffff40,transparent 75%)}
:is(#slots>.card>.row>button,.select-meal,.dialog-actions>.primary,.workout-actions>button){box-shadow:inset 0 1px 0 #ffffff30,0 2px 4px #17384b12;background-image:linear-gradient(145deg,#ffffff10,transparent)}
:is(.calendar-period-display,.day-date-picker,.profile-menu>summary){box-shadow:inset 0 1px 0 #ffffffc0,0 2px 5px #28465a06}
@media(hover:hover){:is(.day-summary-card,.plan-card-with-delete,.meal-library-card,.recipe-card):hover{box-shadow:var(--aura-light),0 3px 6px #2343560b,0 12px 28px #23435618!important}}

/* Eine plastische, schwebende Navigationsleiste mit sichtbarer Materialkante. */
.bottom-nav,body:has(#startPage:not([hidden])) .bottom-nav{
 background-image:linear-gradient(180deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,.035) 42%,rgba(0,12,28,.17) 100%)!important;
 box-shadow:inset 0 2px 1px rgba(255,255,255,.32),inset 1px 0 1px rgba(255,255,255,.12),inset 0 -4px 2px rgba(7,24,37,.35),0 5px 0 rgba(16,38,51,.8),0 8px 8px rgba(16,38,51,.2),0 18px 28px rgba(16,38,51,.26),0 30px 48px rgba(16,38,51,.12)!important;
}
.bottom-nav>button[aria-current=page],body:has(#startPage:not([hidden])) .bottom-nav>button[aria-current=page]{
 background-image:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.015));
 box-shadow:inset 0 1px 1px rgba(255,255,255,.16),inset 0 -1px 1px rgba(0,15,28,.14);
}
.bottom-nav>.plus,body:has(#startPage:not([hidden])) .bottom-nav>.plus{
 box-shadow:inset 0 2px 2px rgba(255,255,255,.75),inset 0 -3px 2px rgba(35,85,102,.16),0 3px 0 rgba(49,92,103,.55),0 6px 9px rgba(6,25,39,.3)!important;
}

/* Nunito: sanft gerundete Formen für Leben, Flow und Balance. */
@font-face{font-family:"Nunito";src:url("vendor/fonts/Nunito-variable.ttf") format("truetype");font-style:normal;font-weight:200 1000;font-display:swap}
:root,body,body:has(#startPage:not([hidden])){font-family:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif}
button,input,select,textarea{font-family:inherit}
:is(h1,h2,h3,.day-summary-card strong,.workout-card strong){font-family:"Nunito",system-ui,sans-serif}
:is(.plan-card-with-delete,.workout-card,.my-calendar-card,.workout-detail-card,.meal-library-card,.day-summary-card){border-radius:16px}
:is(.calendar-period-field,.calendar-period-display,.day-date-picker,.activity-status-switches button,.calendar-view-switch button){border-radius:10px}
:is(.day-summary-card strong,.meal-nutrients dd,.performance-table){font-variant-numeric:tabular-nums}

/* Geöffnetes Modulmenü erhält die aktive optische Markierung. */
.bottom-nav:has(>button[aria-expanded=true])>button[aria-current=page]:not([aria-expanded=true]){
 background:transparent!important;box-shadow:none!important;
}
.bottom-nav>button[aria-expanded=true]:not(.plus){
 background-color:rgba(255,255,255,.14)!important;
 background-image:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.025))!important;
 box-shadow:inset 0 1px 1px rgba(255,255,255,.25),inset 0 -1px 1px rgba(0,15,28,.14)!important;
 color:#fff!important;
}

/* Menüs als sanft beleuchtete Oberfläche statt weißer Box mit Farbbalken. */
.bottom-nav .uniform-nav-menu{
 border-color:#d7e5ed!important;border-top-color:#d7e5ed!important;
 background-color:#f1f7fa!important;
 background-image:radial-gradient(ellipse at 8% 0%,rgba(183,234,254,.45),transparent 65%),linear-gradient(145deg,#ffffffd9,#eaf2f8b3)!important;
 box-shadow:inset 0 2px 2px #ffffffed,inset 0 -2px 2px #9ab4c01c,0 3px 5px #2947590d,0 16px 36px #29475925!important;
}
.bottom-nav .uniform-nav-menu .nav-menu-head>strong{color:#2e4c64}
.bottom-nav .uniform-nav-menu .nav-menu-display{
 background:linear-gradient(145deg,#ffffffc9,#dfedf5)!important;border-color:#cadde8!important;color:#42647c!important;
 box-shadow:inset 0 1px 0 #fff,0 2px 5px #29475909;
}
.bottom-nav .uniform-nav-menu .nav-menu-main>button:hover,.bottom-nav .uniform-nav-menu .nav-menu-settings button:hover{background:linear-gradient(135deg,#ffffffc0,#dcecf580)!important}

/* Dezente echte Wassertextur, Hintergrundfläche ohne Layoutwirkung. */
body,body:has(#startPage:not([hidden])){
 background-color:#f8fcff;
 background-image:linear-gradient(rgba(255,255,255,.36),rgba(255,255,255,.36)),url("assets/velia-water.png");
 background-size:cover;background-position:center bottom;background-repeat:no-repeat;background-attachment:fixed;
}

/* Mahlzeiten erhalten die Aqua-Identität der neuen Oberfläche. */
:root{--pfet-food:#5a9fba;--pfet-food-soft:#edf7fb;--pfet-food-ink:#2e5b70}
.my-calendar-card[data-type=food],#startPage .calendar .my-calendar-card[data-type=food],#myCalendarPage .my-calendar-card[data-type=food]{background-color:#edf7fb;border-color:#8fbaca;color:#2e5b70;background-image:linear-gradient(140deg,#ffffff90,#dceff640)}
#slots>section.card{background-color:#f8fcfe;background-image:linear-gradient(145deg,#fff,#edf7fb80);border-color:#d5e6ee}
#slots .row h2,#slots>section.card:has(.meal-nutrients)>p.muted{color:#284f67}
#slots .row>button{background-color:#447f9c;color:#fff}
#slots .select-meal{background-color:#e7f2f8;color:#3d657d}
#slots .meal-time-inline button{background-color:#e7f2f8;color:#3d657d}
#slots .meal-food-list>summary{color:#426b82}
#slots .meal-nutrients dt{color:#6c8392}
#slots .meal-nutrients dd{color:#2e5268}

/* Kalender-Datumszeilen in derselben Blau-/Aqua-Palette. */
#startPage .day-slot-weekday,.plan-weekdays,.iphone-calendar #myCalendarHost .plan-weekdays{background:#edf5fa;color:#446780;border-color:#d7e5ee}
.plan-day.is-today>h3,#startPage .day-calendar-slot.is-today>h3{background:linear-gradient(135deg,#588aab,#42728f);color:#fff;box-shadow:inset 0 1px 0 #ffffff30,0 2px 4px #28465a12}

/* Weiße Wetterschrift bleibt scharf: kein heller Prägeschatten. */
#startPage .day-summary-card.weather,#startPage .day-summary-card.weather *{text-shadow:none!important}
#startPage .day-summary-card.weather .weather-tile-heading{color:#fff;font-weight:700}

/* Übersichtskacheln mit Materialkante und schwebender Tiefe wie die Navi. */
#startPage .day-summary-card:not(.weather){
 background-image:linear-gradient(155deg,#ffffff,#f4f9fc 58%,#e4eef5)!important;
 box-shadow:inset 0 2px 1px #ffffff,inset 1px 0 1px #ffffffc0,inset 0 -3px 2px #9bb2c02e,0 4px 0 #c5d4df,0 7px 8px #28465a14,0 14px 24px #28465a1c!important;
}
#startPage .day-summary-card.weather{
 box-shadow:inset 0 2px 1px #ffffff55,inset 1px 0 1px #ffffff22,inset 0 -3px 2px #102b4160,0 4px 0 #2b4656,0 7px 8px #18374922,0 14px 24px #1837492b!important;
}
@media(hover:hover){#startPage .day-summary-card:hover{box-shadow:inset 0 2px 1px #ffffff90,inset 0 -3px 2px #28465a25,0 4px 0 #b6cad7,0 8px 12px #28465a20,0 16px 28px #28465a25!important}#startPage .day-summary-card.weather:hover{box-shadow:inset 0 2px 1px #ffffff60,inset 0 -3px 2px #102b4160,0 4px 0 #2b4656,0 8px 12px #18374928,0 16px 28px #18374930!important}}

#startPage .day-energy-track{background:#e0edf5;box-shadow:inset 0 1px 2px #274b6815}
#startPage .day-energy-track>span{background:linear-gradient(90deg,#4d89b2,#86c9de);box-shadow:inset 0 1px 0 #ffffff45}
#startPage .day-energy-track>span.over-goal{background:linear-gradient(90deg,#b98346,#dab16b)}

/* Mein Tag: freistehende Kalenderflächen statt weißem Sammelrahmen. */
#startPage .calendar{background:transparent!important;border-color:transparent!important;box-shadow:none!important;overflow:visible}
#startPage .scroll-calendar,#startPage .day-calendar-slot{background:transparent!important}
#startPage .day-slot-weekday{background:linear-gradient(145deg,#ffffffc9,#e8f3fac9);border-color:transparent;border-radius:12px;box-shadow:inset 0 1px 0 #fff,0 2px 4px #29475908,0 5px 12px #2947590c}
#startPage .day-calendar-slot>h3{border-radius:10px;box-shadow:inset 0 1px 0 #ffffff70,0 2px 3px #2947590c,0 5px 10px #29475914}
#startPage .calendar .my-calendar-card{box-shadow:inset 0 1px 0 #ffffffc0,inset 0 -1px 0 #29475909,0 2px 3px #29475908,0 6px 14px #29475914!important}
