:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#FFFFFF;--ui-bg:#101318;--ui-surface:#121820;--ui-card:#141920db;--ui-border:#2d3541;--ui-border-soft:#ffffff14;--ui-text:#FFFFFF;--ui-muted:#aeb8c4;--day-today:#5ce08a;--day-today-text:#5ce08a;--day-today-soft:#5ce08a1f;--day-past:#fc6;--day-past-text:#fc6;--day-past-soft:#ffcc661a;--day-future:#7ea8ff;--day-future-text:#7ea8ff;--day-future-soft:#7ea8ff1a;--nutrient-kcal:#ff8a3d;--nutrient-fat:#d85cc7;--nutrient-carbs:#22c7c9;--nutrient-protein:#4865ff;--button-bg:#1a2029;--button-border:#2d3541;--button-text:#FFFFFF;--button-hover-filter:brightness(1.12);--button-active-bg:#222832;--button-success-bg:#5ce08a;--button-success-text:#08130c;--button-danger-text:#FF3232;background:#101318;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scrollbar-gutter:stable;min-height:100%}body{background:#000001;min-height:100vh;margin:0;overflow-y:scroll}button,input,select{font:inherit}button{cursor:pointer}input,select{color:#FFFFFF;background:#151a21;border:1px solid #303846;border-radius:10px;outline:none;width:100%;padding:.55rem .68rem}input:focus,select:focus{border-color:#5ce08a;box-shadow:0 0 0 3px #5ce08a24}label{color:#aeb8c4;gap:.32rem;font-weight:400;display:grid}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.04em;margin-bottom:0;font-size:clamp(2rem,4vw,3.3rem)}h2{margin-bottom:.25rem}h3{margin-bottom:.2rem}p{color:#aeb8c4;line-height:1.4}.app{width:min(1180px,100% - 28px);margin:0 auto;padding:20px 0 58px}.topbar{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:14px;display:flex}.eyebrow{color:#5CE08A;letter-spacing:.05em;text-transform:uppercase;margin:0 0 .25rem;font-size:.72rem;font-weight:700}.dateNav{align-items:end;gap:.45rem;display:flex}.datePick{gap:.25rem;min-width:190px;display:grid}.datePick b{color:#FFFFFF}.tabs{z-index:5;background:linear-gradient(#101318 80%,#10131800);gap:.45rem;padding:10px 0 14px;display:flex;position:sticky;top:0;overflow-x:auto}.tabs button{white-space:nowrap;color:#FFFFFF;background:#1a2029;border:1px solid #2d3541;border-radius:10px;padding:.5rem .72rem;font-weight:700}.tabs button.active.globalActive{background:var(--button-bg);color:var(--ui-text);border-color:#ffffff4d;box-shadow:inset 0 0 0 2px #ffffff2e}.tabs button.active.dateActive.today{background:var(--day-today);color:#08130c;border-color:var(--day-today)}.tabs button.active.dateActive.past{background:var(--day-past);color:#171104;border-color:var(--day-past)}.tabs button.active.dateActive.future{background:var(--day-future);color:#071126;border-color:var(--day-future)}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.card{background:#141920db;border:1px solid #ffffff14;border-radius:20px;padding:1rem;box-shadow:0 18px 60px #00000133}.card.wide{grid-column:1/-1}.cardHead{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.pill{color:#5CE08A;white-space:nowrap;background:#5ce08a24;border-radius:999px;padding:.28rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.empty{color:#aeb8c4;background:#ffffff05;border:1px dashed #3a4350;border-radius:16px;padding:.9rem}.smallEmpty{padding:.55rem}.iconBtn,.fileButton{color:#FFFFFF;background:#1a2029;border:1px solid #2d3541;border-radius:10px;justify-content:center;align-items:center;gap:.35rem;min-height:36px;padding:.45rem .62rem;font-weight:700;line-height:1;display:inline-flex}.iconBtn svg,.fileButton svg{width:18px;height:18px}.iconBtn.ghost{color:#FFFFFF;background:#222832}.iconBtn.successFlash,.successFlash{color:#08130c!important;background:#5ce08a!important;border-color:#5ce08a!important}.fileButton input{display:none}.macroLine{color:#FFFFFF;flex-wrap:wrap;gap:.28rem .68rem;margin-top:.38rem;font-size:.88rem;display:flex}.macroLine span{white-space:nowrap;color:#aeb8c4}.macroLine b{color:#FFFFFF}.diffGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem;margin-top:.6rem;display:grid}.diffGrid div{color:#FFFFFF;background:#10151c;border:1px solid #28313d;border-radius:14px;padding:.58rem}.diffGrid .over,.sum.bad{background:#FF32321A;border-color:#FF323273}.diffGrid .under,.sum.ok{background:#5ce08a12;border-color:#5ce08a59}.sum{border-radius:14px;margin:.8rem 0;padding:.7rem}.entryList,.favoriteList,.results,.ingredientList{gap:.65rem;display:grid}.entry,.favoriteCard,.resultCard,.quickItem,.plannerRow,.recipeRow,.preview,.ingredientLine{background:#121820;border:1px solid #2a3340;border-radius:16px;padding:.75rem}.entry{grid-template-columns:auto 1fr auto;align-items:start;gap:.75rem;display:grid}.entry.planned{border-color:#ffcc6659}.entryActions,.actions,.searchRow,.inlineEdit{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.entryActions{justify-content:flex-end}.entryMain p{margin-bottom:.1rem}.actions,.searchRow{margin-top:.7rem}.actions input,.inlineEdit input{max-width:120px}.productImage{object-fit:contain;color:#6f7a88;background:#0d1117;border:1px solid #2a3340;border-radius:14px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.productImage.large{width:154px;height:154px}.productImage.medium{width:112px;height:112px}.productImage.small{width:78px;height:78px}.productImage.tiny{border-radius:12px;width:52px;height:52px;font-size:.72rem}.productImageFrame{justify-self:start;display:block;position:relative}.productImageFrame img.productImage{display:block}.productImage.placeholderGraphic{background:#FFFFFF;padding:.5rem}.imageEditBadge{color:#FFFFFF;pointer-events:none;background:#121820f0;border:1px solid #ffffff2e;border-radius:50%;place-items:center;width:26px;min-width:26px;height:26px;min-height:26px;display:inline-grid;position:absolute;bottom:8px;right:8px;box-shadow:0 8px 18px #00000159}.imageEditBadge svg{width:14px;height:14px}.resultCard{grid-template-columns:170px 1fr auto;align-items:center;gap:.9rem;display:grid}.resultActions{justify-items:end;gap:.45rem;display:grid}.favoriteCard{grid-template-columns:auto 1fr;align-items:start;gap:.85rem;display:grid}.favoriteCard.dish{grid-template-columns:auto 1fr}.dishIcon{color:#ffd27a;background:#ffcc661a;border:1px solid #ffcc6659;border-radius:16px;place-items:center;width:90px;height:90px;font-weight:700;display:grid}.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.75rem;display:grid}.editorBox,.targetPreview{background:#5ce08a12;border:1px solid #5ce08a40;border-radius:16px;margin-top:.85rem;padding:.9rem}.editorBox.inline{background:#ffffff08}.targetsGrid .card{align-self:start}.targetFields{grid-template-columns:repeat(2,minmax(0,1fr))}.orientationText{color:var(--ui-muted);gap:.34rem;margin:.35rem 0 .75rem;font-size:.86rem;line-height:1.35;display:grid}.orientationText p{margin:0}.orientationText strong{color:var(--ui-text)}@media (width<=760px){.targetFields{grid-template-columns:1fr}}.error,.warning{color:#FF3232}.hint{margin-top:.6rem;font-size:.9rem}.quickGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.quickItem{grid-template-columns:auto 1fr 110px auto;align-items:center;gap:.6rem;display:grid}.plannerSection{margin-top:.7rem}.sectionToggle{text-align:left;color:#FFFFFF;background:#1a2029;border:1px solid #2d3541;border-radius:12px;width:100%;padding:.62rem .7rem;font-weight:700}.plannerList{gap:.45rem;margin-top:.5rem;display:grid}.plannerRow{grid-template-columns:auto 1fr auto auto;align-items:center;gap:.55rem;display:grid}.statusIcon{color:#FFFFFF;background:#151a21;border:1px solid #303846;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.statusIcon.active{color:#08130c;background:#5ce08a;border-color:#5ce08a}.statusIcon svg{width:20px;height:20px}.shoppingList{gap:.5rem;display:grid}.shoppingList div{background:#121820;border:1px solid #2a3340;border-radius:14px;align-items:center;gap:.55rem;padding:.65rem;display:flex}.recipeRows{gap:.6rem;margin-top:.75rem;display:grid}.recipeRow{grid-template-columns:1fr 120px auto auto;align-items:start;gap:.55rem;display:grid}.ingredientPreview{grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;gap:.55rem;display:grid}.ingredientPreview .macroLine{grid-column:2;margin-top:0}.ingredientLine{grid-template-columns:auto 1fr;align-items:center;gap:.55rem;display:grid}.ingredientLine .macroLine{grid-column:2}.miniIngredients{flex-wrap:wrap;gap:.35rem;margin-top:.5rem;display:flex}.miniIngredients span{color:#aeb8c4;background:#10151c;border:1px solid #28313d;border-radius:999px;padding:.25rem .5rem;font-size:.83rem}.weightList{gap:.5rem;display:grid}.weightList>.weightRow{background:#121820;border:1px solid #2a3340;border-radius:14px;justify-content:space-between;padding:.65rem;display:flex}@media (width<=760px){.app{width:min(100% - 18px,1180px);padding-top:12px}.topbar{align-items:stretch;display:grid}.dateNav{justify-content:stretch}.datePick{flex:1}.grid,.quickGrid,.formGrid,.diffGrid,.resultCard{grid-template-columns:1fr}.productImage.large{width:100%;height:220px}.favoriteCard{grid-template-columns:1fr}.productImage.medium{width:100%;height:190px}.productImageFrame{width:100%}.quickItem{grid-template-columns:auto 1fr}.quickItem input,.quickItem .iconBtn{grid-column:1/-1}.recipeRow{grid-template-columns:1fr}.entry{grid-template-columns:auto 1fr}.entryActions{grid-column:1/-1;justify-content:flex-start}.plannerRow{grid-template-columns:auto 1fr auto auto}h1{font-size:2.25rem}}.fieldError{color:#FF3232;margin:.25rem 0 0;font-size:.9rem}.formGrid.oneCol{grid-template-columns:1fr}.fieldInvalid{color:#FF3232}.invalidInput{box-shadow:0 0 0 2px #FF32322E;border-color:#FF3232!important}.fieldHint{color:#FF3232;margin-top:.15rem;font-size:.85rem}.rowsHint{grid-column:1/-1;margin:0}.inlineDishEditor{border-top:1px solid #2a3340;margin-top:.85rem;padding-top:.85rem}.dishEditorPanel h2{margin-bottom:.65rem}.preview.totalOnly{margin-top:.85rem}.preview.totalOnly p strong{color:#FFFFFF}.recipeRow .iconBtn{width:38px;height:38px}.iconBtn,.fileButton{border-radius:11px;height:40px;min-height:40px}.iconBtn svg,.fileButton svg,.statusIcon svg{flex:0 0 20px;width:20px;height:20px}.iconBtn span:empty{display:none}.iconBtn:has(span:empty){width:40px;padding:0}.statusIcon{border-radius:11px;width:40px;height:40px}.dishNameSaveRow{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem;margin-top:.65rem;display:grid}.dishNameActions{flex-wrap:wrap;align-items:end;gap:.45rem;padding-bottom:0;display:flex}.ingredientAddBox,.dishIngredientSection{background:#121820;border:1px solid #2a3340;border-radius:16px;margin-top:.85rem;padding:.8rem}.ingredientAddBox h3,.dishIngredientSection h3{margin-bottom:.55rem}.ingredientAddRow{grid-template-columns:minmax(0,1fr) 140px auto;align-items:end;gap:.55rem;display:grid}.ingredientConfirm{align-self:end}.invalidBox{border-color:#FF3232;box-shadow:0 0 0 2px #FF323224}.dishIngredientList{gap:.5rem;display:grid}.dishIngredientLine{background:#10151c;border:1px solid #28313d;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.55rem;padding:.6rem;display:grid}.dishIngredientLine .macroLine{margin-top:.2rem}.totalOnly .sumLine{margin-bottom:.55rem}.sectionLabel{color:#FFFFFF;margin:.55rem 0 .1rem;font-weight:700}.sectionLabel.afterGap{margin-top:.95rem}.modalBackdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000019E;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modalPanel{background:#141920fa;border:1px solid #ffffff1f;border-radius:22px;width:min(920px,100%);max-height:min(88vh,980px);padding:1rem;overflow:auto;box-shadow:0 30px 90px #00000173}@media (width<=760px){.dishNameSaveRow,.ingredientAddRow,.dishIngredientLine{grid-template-columns:1fr}.dishNameActions{align-items:stretch}.dishNameActions .iconBtn{justify-content:center}.modalBackdrop{align-items:start;padding:10px}}.dishIngredientLine{grid-template-columns:auto minmax(0,1fr) 128px 40px 40px;align-items:start}.dishIngredientMain strong{margin-top:.12rem;display:block}.inlineAmount{color:#aeb8c4;gap:.22rem;font-size:.78rem;font-weight:700;display:grid}.inlineAmount input{height:40px;padding:.45rem .55rem}.buttonSpacer{width:40px;height:40px;display:block}.ingredientAddBox .hint,.dishEditorPanel>.hint{margin-bottom:.55rem}@media (width<=760px){.dishIngredientLine{grid-template-columns:auto 1fr}.dishIngredientLine .inlineAmount,.dishIngredientLine .buttonSpacer,.dishIngredientLine .iconBtn{grid-column:1/-1}.buttonSpacer{display:none}}.unitField{align-self:end;gap:.18rem;display:grid}.unitInputWrap{align-items:center;gap:.38rem;min-width:0;display:flex}.unitInputWrap input{flex:auto;min-width:0;height:40px}.unitSuffix{color:#aeb8c4;white-space:nowrap;flex:none;font-weight:700;line-height:1}.quickUnit{width:148px;max-width:100%}.quickItem{grid-template-columns:auto 1fr 148px auto}.ingredientAddRow{grid-template-columns:minmax(0,1fr) 160px auto}.inlineAmount{font-size:.78rem;font-weight:700}.inlineAmount .unitInputWrap{width:124px}.inlineAmount input{padding:.45rem .55rem}@media (width<=760px){.quickItem .quickUnit,.actions .quickUnit,.inlineAmount .unitInputWrap,.unitInputWrap{width:100%}.quickItem .quickUnit,.quickItem .fieldError{grid-column:1/-1}}.todayEntry{align-items:center}.todayAmountRow{align-items:center;gap:.45rem;margin-top:.45rem;display:flex}.todayUnit{flex:0 0 140px;width:140px}.todayAmountRow .iconBtn{flex:none}.dailySummary{gap:.75rem;display:grid}.dailySummary h2,.dailySummary h3{margin-bottom:.25rem}.dailySummary h3{color:#FFFFFF;font-size:1rem}.targetMain,.bookedBlock,.restSmall{background:#10151c;border:1px solid #28313d;border-radius:16px;padding:.75rem}.targetMain>strong{letter-spacing:-.04em;color:#FFFFFF;font-size:clamp(1.8rem,5vw,2.6rem);line-height:1;display:block}.restSmall .diffGrid{margin-top:.45rem}.restSmall .diffGrid div{padding:.48rem .55rem;font-size:.86rem}@media (width<=760px){.todayAmountRow{flex-wrap:nowrap}.todayUnit{flex-basis:132px;width:124px}}.amountControlRow{align-items:center;gap:.45rem;min-width:0;margin-top:.55rem;display:flex}.todayEntry,.dishIngredientLine{align-items:start}.todayEntry .macroLine,.dishIngredientMain .macroLine{margin-top:.28rem}.dishIngredientLine{grid-template-columns:auto minmax(0,1fr)!important}.dishIngredientLine .inlineAmount,.dishIngredientLine .buttonSpacer,.dishIngredientLine .iconBtn{grid-column:auto}.dishAmountRow .inlineAmount,.todayAmountRow .unitInputWrap{flex:0 0 132px;width:124px}.dishAmountRow .buttonSpacer,.dishAmountRow .iconBtn,.todayAmountRow .iconBtn{flex:0 0 40px}.dishIngredientMain{min-width:0}@media (width<=760px){.amountControlRow{flex-wrap:nowrap}.todayEntry,.dishIngredientLine{grid-template-columns:auto minmax(0,1fr)}.dishIngredientLine .inlineAmount,.dishIngredientLine .buttonSpacer,.dishIngredientLine .iconBtn{grid-column:auto}.dishAmountRow .inlineAmount,.todayAmountRow .unitInputWrap{flex:0 0 126px;width:118px}}.dateNav .todayBtn{text-transform:lowercase;min-width:72px}.dateNav .todayBtn.active{color:var(--day-today);background:#5ce08a29;border-color:#5ce08a73}.dailySummary{border-color:#5ce08a38}.targetMain>strong{font-size:clamp(1.35rem,4.6vw,2.2rem);line-height:1.12}.compactLabel{color:#FFFFFF;margin:.42rem 0 .05rem;font-size:.9rem}.dialogEditor{margin-top:0}.smallModal{width:min(720px,100%)}.favoriteCard .actions{align-items:center}.favoriteCard .invalidInput,.quickItem .invalidInput,.todayEntry .invalidInput,.dishIngredientLine .invalidInput{box-shadow:0 0 0 2px #FF32322E;border-color:#FF3232!important}.fieldHint,.fieldError{display:none}@media (width<=760px){.dateNav{grid-template-columns:auto auto 1fr auto;align-items:center;display:grid}.dateNav .todayBtn{min-width:64px}.favoriteCard .actions{grid-template-columns:1fr auto auto auto;align-items:center;display:grid}.favoriteCard .actions .quickUnit{width:100%}.favoriteCard .actions .iconBtn{min-width:40px}}.dayStatus{white-space:nowrap;color:#FFFFFF;background:#121820;border:1px solid #2d3541;border-radius:12px;padding:.5rem .7rem;font-weight:700}.dayStatus.today{color:var(--day-today);background:#5ce08a1f;border-color:#5ce08a85}.dayStatus.past{color:var(--day-past);background:#ffcc661a;border-color:#ffcc6673}.dayStatus.future{color:var(--day-future);background:#7ea8ff1a;border-color:#7ea8ff73}.todayJump{min-height:36px;color:var(--day-today);white-space:nowrap;background:#5ce08a21;border:1px solid #5ce08a;border-radius:10px;padding:.45rem .7rem;font-weight:700}@media (width<=760px){.dateNav{grid-template-columns:1fr auto auto;gap:.45rem;display:grid}.dayStatus{text-align:center;grid-column:1/-1}.todayJump{grid-column:1/-1}.datePick{min-width:0}}.dayAccent{position:relative;overflow:hidden}.dayAccent:before{content:"";background:#5ce08ab8;border-radius:20px 0 0 20px;width:5px;position:absolute;top:0;bottom:0;left:0}.dayAccent.today{border-color:#5ce08a47}.dayAccent.past{border-color:#ffcc664d}.dayAccent.future{border-color:#7ea8ff4d}@media (width<=760px){.dayAccent:before{width:4px}}.iconBtn,.fileButton{background:var(--button-bg);border-color:var(--button-border);color:var(--button-text)}.iconBtn:hover,.fileButton:hover{filter:var(--button-hover-filter)}.iconBtn.danger{color:var(--button-danger-text)}.iconBtn.successFlash,.successFlash{background:var(--button-success-bg)!important;color:var(--button-success-text)!important;border-color:var(--button-success-bg)!important}.dayStatus.today{border-color:color-mix(in srgb, var(--day-today) 52%, transparent);background:var(--day-today-soft);color:var(--day-today-text)}.dayStatus.past{border-color:color-mix(in srgb, var(--day-past) 45%, transparent);background:var(--day-past-soft);color:var(--day-past-text)}.dayStatus.future{border-color:color-mix(in srgb, var(--day-future) 45%, transparent);background:var(--day-future-soft);color:var(--day-future-text)}.todayJump{border-color:var(--day-today);background:var(--day-today-soft);color:var(--day-today-text)}.dayAccent.today,.dayTone.today{--day-current:var(--day-today-text);--day-current-strong:var(--day-today)}.dayAccent.past,.dayTone.past{--day-current:var(--day-past-text);--day-current-strong:var(--day-past)}.dayAccent.future,.dayTone.future{--day-current:var(--day-future-text);--day-current-strong:var(--day-future)}.dayAccent.today:before{background:var(--day-today)}.dayAccent.past:before{background:var(--day-past)}.dayAccent.future:before{background:var(--day-future)}.dayAccent h2,.dayAccent .targetMain>strong{color:var(--day-current)}.dayAccent .targetMain>strong{text-shadow:0 0 18px color-mix(in srgb, var(--day-current-strong) 18%, transparent)}.iconBtn,.fileButton,.statusIcon,.todayJump,.tabs button{transition:background .16s,border-color .16s,color .16s,box-shadow .16s,filter .16s}.dailySummary .cardHead{margin-bottom:0}.dailySummary .cardHead p{display:none}.targetMain,.bookedBlock,.restSmall{background:0 0;border:0;padding:.15rem 0}.bookedBlock,.restSmall{border-top:1px solid #ffffff14;padding-top:.75rem}.phaseInfo{gap:.5rem;margin-top:.75rem;display:grid}.phaseInfo div{background:#10151c;border:1px solid #28313d;border-radius:14px;justify-content:space-between;gap:.75rem;padding:.65rem;display:flex}.phaseInfo span{color:var(--ui-muted)}.phaseInfo strong{color:var(--ui-text)}.weightList .weightRow.neutral{border-color:#2a3340}.weightList .weightRow.down{background:#5ce08a14;border-color:#5ce08a73}.weightList .weightRow.down strong,.weightList .weightRow.down span{color:var(--day-today-text)}.weightList .weightRow.up{background:#FF323214;border-color:#FF323273}.weightList .weightRow.up strong,.weightList .weightRow.up span{color:#FF3232}@media (width<=760px){.phaseInfo div,.weightList .weightRow{gap:.2rem;display:grid}}.weightRow.total{border-width:2px;font-weight:700}.weightRow.total strong:before{content:"Σ ";opacity:.85}.cardHead .iconBtn{flex:none}@media (width<=760px){.cardHead{display:grid}.cardHead .iconBtn{justify-self:start}}.weightPhaseList{gap:.65rem;display:grid}.weightPhaseGroup{background:#121820;border:1px solid #2a3340;border-radius:16px;overflow:hidden}.weightPhaseGroup.current{border-color:color-mix(in srgb, var(--day-current-strong) 38%, #2a3340)}.weightPhaseHeader{text-align:left;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.75rem;display:flex}.weightPhaseHeader strong{color:var(--ui-text)}.weightPhaseHeader span{color:var(--ui-muted);font-weight:700}.weightPhaseHeader span.down{color:var(--day-today-text)}.weightPhaseHeader span.up{color:#FF3232}.weightPhaseGroup .weightList{padding:0 .75rem .75rem}@media (width<=760px){.weightPhaseHeader{gap:.22rem;display:grid}}.weightPhaseHeaderWrap{grid-template-columns:1fr auto;align-items:stretch;gap:.4rem;display:grid}.weightPhaseHeaderWrap .weightPhaseHeader{min-width:0}.phaseDeleteBtn{align-self:center;margin-right:.55rem}@media (width<=760px){.weightPhaseHeaderWrap{grid-template-columns:1fr auto}.phaseDeleteBtn{margin-right:.45rem}}.compactDateNav{align-items:center;gap:.45rem;display:flex}.dateStatusDisplay{justify-content:center;align-items:center;min-height:36px;display:inline-flex}.compactDateNav .todayJump{margin-left:.15rem}@media (width<=760px){.compactDateNav{grid-template-columns:auto 1fr auto;width:100%;display:grid}.compactDateNav .dateStatusDisplay{white-space:normal;text-align:center;grid-column:auto;min-width:0}.compactDateNav .todayJump{grid-column:1/-1;margin-left:0}}.stableDateNav{grid-template-rows:auto auto;grid-template-columns:auto 124px auto auto 104px;align-items:center;gap:.45rem;display:grid;position:relative}.stableDateNav .iconBtn,.stableDateNav .todayJump,.stableDateNav .dateButton{border-radius:14px;min-height:44px}.stableDateNav .dateButton{text-align:center;letter-spacing:.01em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;justify-content:center;align-items:center;width:124px;padding:.45rem .58rem;font-size:1.02rem;display:inline-flex}.stableDateNav .todayJump{grid-column:5;justify-content:center;align-items:center;min-width:104px;padding:.45rem .72rem;display:inline-flex}.stableDateNav .todayJump.isTodayPlaceholder{opacity:.28;pointer-events:none;cursor:default}.stableDateNav .dayBadge{border:1px solid var(--ui-border);color:var(--ui-muted);background:#121820;border-radius:999px;grid-column:2;justify-self:center;margin-top:.05rem;padding:.22rem .62rem;font-size:.82rem;font-weight:700}.stableDateNav .dayBadge.today{border-color:color-mix(in srgb, var(--day-today) 38%, transparent);background:var(--day-today-soft);color:var(--day-today-text)}.stableDateNav .dayBadge.past{border-color:color-mix(in srgb, var(--day-past) 38%, transparent);background:var(--day-past-soft);color:var(--day-past-text)}.stableDateNav .dayBadge.future{border-color:color-mix(in srgb, var(--day-future) 38%, transparent);background:var(--day-future-soft);color:var(--day-future-text)}.calendarPopover{z-index:20;background:var(--ui-surface);border:1px solid var(--ui-border-strong);border-radius:14px;padding:.55rem;position:absolute;top:calc(44px + .55rem);right:0;box-shadow:0 18px 50px #00000159}.calendarPopover input{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;min-width:170px}.nativeDateHidden{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;bottom:0;right:0}@media (width<=760px){.stableDateNav{grid-template-rows:auto auto auto;grid-template-columns:auto 118px auto auto;width:100%}.stableDateNav .dateButton{width:118px;min-width:0;font-size:1rem}.stableDateNav .todayJump{grid-column:1/-1;width:100%;min-width:0}.stableDateNav .dayBadge{grid-column:1/-1}}textarea{resize:vertical;color:#FFFFFF;width:100%;min-height:92px;font:inherit;background:#151a21;border:1px solid #303846;border-radius:10px;outline:none;padding:.62rem .68rem}textarea:focus{border-color:#5ce08a;box-shadow:0 0 0 3px #5ce08a24}.tabs button{align-items:center;gap:.35rem;display:inline-flex}.tabs button svg{width:17px;height:17px}.diffGrid .neutral,.sum.neutral{color:var(--ui-muted);background:#ffffff09;border-color:#ffffff1f}.targetPillLine{flex-wrap:wrap;align-items:center;gap:.28rem;margin-top:.5rem;display:flex}.targetPillLabel{color:var(--ui-muted);margin-right:.1rem;font-weight:700}.targetPill{min-width:38px;color:var(--ui-muted);background:#ffffff0d;border:1px solid #ffffff24;border-radius:999px;justify-content:center;align-items:center;padding:.22rem .5rem;font-size:.78rem;font-weight:700;display:inline-flex}.targetPill.ok{color:var(--day-today-text);background:#5ce08a1f;border-color:#5ce08a73}.targetPill.bad{color:#FF3232;background:#FF32321F;border-color:#FF32328C}.targetPill.off{color:#75808d;background:#ffffff09;border-color:#ffffff1f}.afterTargetMini .diffGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.32rem;margin-top:.45rem}.afterTargetMini .diffGrid div{padding:.42rem .48rem;font-size:.78rem}.planRestBlock{margin-top:.7rem}.planBox{background:#10151c;border:1px solid #28313d;border-radius:16px;margin-top:.75rem;padding:.75rem}.planHead{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.55rem;display:flex}.planHead h3{margin:0}.planToggle{color:var(--ui-text);text-align:left;background:0 0;border:0;padding:.12rem 0;font-weight:700}.compactActions{margin-top:0}.planList{gap:.38rem;display:grid}.planLine{background:#121820;border:1px solid #2a3340;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto auto auto;align-items:center;gap:.42rem;padding:.45rem .5rem;display:grid;position:relative}.planName{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.45rem;min-width:0;display:flex;overflow:hidden}.nutritionSignal{pointer-events:none;z-index:1;grid-template-rows:repeat(4,minmax(0,1fr));gap:2px;width:4px;display:grid;position:absolute;top:6px;bottom:6px;left:3px}.nutritionSignalSegment{background:0 0;border-radius:999px;min-height:0}.nutritionSignalSegment.active.nutrient-kcal{background:var(--nutrient-kcal)}.nutritionSignalSegment.active.nutrient-fat{background:var(--nutrient-fat)}.nutritionSignalSegment.active.nutrient-carbs{background:var(--nutrient-carbs)}.nutritionSignalSegment.active.nutrient-protein{background:var(--nutrient-protein)}.planName em{color:var(--day-past-text);background:#ffcc6617;border:1px solid #ffcc6659;border-radius:999px;flex:none;padding:.12rem .42rem;font-size:.76rem;font-style:normal;font-weight:700}.planLine strong{white-space:nowrap;color:var(--ui-text)}.planLine .iconBtn{min-height:32px;padding:.35rem .45rem}.planActions{align-items:center}.dishInfoText{color:var(--ui-muted);margin:.45rem 0 0;font-size:.86rem}.infoField{margin-top:.75rem}.authFields input:disabled{opacity:.65;cursor:not-allowed}@media (width<=760px){.planHead{display:grid}.compactActions{grid-template-columns:1fr 1fr;display:grid}.afterTargetMini .diffGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.planActions{grid-template-columns:1fr auto auto auto auto auto;display:grid}.planActions .quickUnit{width:100%}}.tabs button[aria-label=Einstellungen]{justify-content:center;min-width:44px}.tabs button[aria-label=Einstellungen] svg{margin:0}.mergedTargetFields{grid-template-columns:repeat(2,minmax(0,1fr))}.targetInputRow{gap:.35rem}.targetValueWrap{grid-template-columns:minmax(0,1fr) minmax(68px,auto);align-items:center;gap:.45rem;display:grid}.targetValueWrap span{color:var(--ui-text);text-align:right;white-space:nowrap;background:#ffffff09;border:1px solid #ffffff1f;border-radius:10px;padding:.55rem .62rem;font-weight:700}.targetOrientation{border-top:1px solid #ffffff14;margin-top:.85rem;padding-top:.75rem}@media (width<=760px){.compactActions{grid-template-columns:1fr 1fr 1fr}.planLine{grid-template-columns:minmax(0,1fr) auto auto auto auto;gap:.32rem}.planName{gap:.2rem;display:grid}.planName em{justify-self:start}.mergedTargetFields{grid-template-columns:1fr}}.iconBtn.shoppingFlash{color:var(--day-today-text)!important;background:#5ce08a2e!important;border-color:#5ce08a94!important}.targetInputRow.fieldInvalid .targetValueWrap span{color:#FF3232;background:#FF32321A;border-color:#FF32328C}@media (width<=760px){.compactActions{grid-template-columns:1fr 1fr}}.targetCompactLine{color:var(--ui-muted);flex-wrap:wrap;align-items:center;gap:.18rem .34rem;margin-top:.55rem;font-size:.86rem;font-weight:700;display:flex}.targetCompactLabel{color:var(--ui-muted);margin-right:.08rem}.targetCompactValue{white-space:nowrap;color:var(--ui-muted)}.targetCompactValue em{color:#ffffff47;margin-right:.18rem;font-style:normal}.targetCompactValue.ok{color:var(--day-today-text)}.targetCompactValue.bad{color:#FF3232}.targetCompactValue.off{color:#75808d}.tabs button[aria-label=Einstellungen] svg{flex-basis:28px;width:28px;height:28px}.targetCompactLine{margin-top:.65rem}.macroLine{color:var(--ui-muted);gap:.28rem .6rem;font-weight:400}.macroLine span,.macroLine b{color:var(--ui-muted);font-weight:400}.macroInline{color:var(--ui-muted);margin:.34rem 0 0;font-size:.88rem;font-weight:400;line-height:1.35}.macroInline.afterGap{margin-top:.18rem}.planRestBlock{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#10151cf5;border:1px solid #ffffff1f;position:sticky;top:64px}.iconBtn.shoppingActive{color:var(--day-today-text);background:#5ce08a2e;border-color:#5ce08a94}.targetCompactLine{font-weight:400}@media (width<=760px){.planRestBlock{top:58px}}.dayAccent.today,.dayAccent.past,.dayAccent.future{--meter-color:var(--day-today);--meter-text:var(--day-today-text)}.donutOverview{grid-template-columns:minmax(190px,1.15fr) repeat(3,minmax(120px,.85fr));align-items:start;gap:.85rem;display:grid}.donutOverview.compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:.42rem}.journalMeters{grid-template-columns:minmax(230px,310px) 1fr;align-items:center;gap:1rem;display:grid}.journalMacroMeters{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.journalKcalMeter .donutMeter{max-width:300px;margin-inline:auto}.donutMeter{min-width:0;color:var(--ui-text);justify-items:center;gap:.42rem;display:grid}.donutTitle{color:var(--ui-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:700}.donutRing{--meter-angle:0deg;background:conic-gradient(from -90deg, var(--meter-color) 0 var(--meter-angle), transparent var(--meter-angle) 360deg);border-radius:50%;place-items:center;width:180px;height:180px;display:grid;position:relative}.donutMeter.compact .donutRing{width:108px;height:108px}.donutOverview.compact .donutMeter .donutRing{width:76px;height:76px}.donut-kcal{--nutrient-color:var(--nutrient-kcal)}.donut-fat{--nutrient-color:var(--nutrient-fat)}.donut-carbs{--nutrient-color:var(--nutrient-carbs)}.donut-protein{--nutrient-color:var(--nutrient-protein)}.donutMeter.over .donutRing{--meter-color:var(--nutrient-color)}.donutMeter.inactive .donutRing{--meter-color:#1A1D20}.donutRing:after{content:"";background:#121820;border-radius:50%;position:absolute;inset:14px}.donutMeter.compact .donutRing:after{inset:10px}.donutOverview.compact .donutMeter .donutRing:after{inset:8px}.donutCenter{z-index:1;text-align:center;justify-items:center;gap:.06rem;line-height:1.05;display:grid;position:relative}.donutCenter strong{color:var(--ui-text);font-size:1.75rem;font-weight:700}.donutCenter span{color:var(--ui-muted);font-size:.8rem}.donutMeter.compact .donutCenter strong{font-size:1.05rem}.donutMeter.compact .donutCenter span{font-size:.86rem}.donutOverview.compact .donutCenter span{display:none}.donutRest{min-height:1.05rem;color:var(--meter-text);text-align:center;font-size:.86rem;line-height:1.25}.donutRest.over{color:var(--nutrient-color)}.donutMeter.inactive .donutRest{color:#75808d}.donutOverview.compact .donutRest{font-size:.86rem}.stickyPlanRest{z-index:6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#10151cf7;position:sticky;top:64px}.planBoxCard .planBox{margin-top:0}.planName em{color:#FF3232;background:#FF32321F;border-color:#FF323280}.iconBtn.hasBadge{position:relative}.btnBadge{color:#fff;background:#FF3232;border:2px solid #101318;border-radius:999px;justify-content:center;align-items:center;min-width:1.15rem;height:1.15rem;padding:0 .25rem;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:-.42rem;right:-.38rem}.iconBtn.shoppingActive{color:var(--day-today-text)!important;background:#5ce08a33!important;border-color:#5ce08a9e!important;transition:none!important}.favoriteCard.dish .dishIcon{width:112px;height:112px}.journalEntryList{gap:.36rem;display:grid}.journalEntryLine{background:#ffffff06;border:1px solid #ffffff14;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;padding:.45rem .5rem;display:grid}.journalEntryName{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.journalEntryAmount{color:var(--ui-muted);white-space:nowrap;font-size:.86rem}.journalEntryLine .iconBtn{min-height:30px;padding:.32rem .42rem}.macroInline,.targetCompactLine,.targetCompactLabel,.targetCompactValue{font-weight:400}@media (width<=760px){.journalMeters{grid-template-columns:1fr}.journalMacroMeters,.donutOverview.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.journalMacroMeters{gap:.45rem}.donutRing{width:168px;height:168px}.donutMeter.compact .donutRing{width:82px;height:82px}.donutOverview.compact .donutMeter .donutRing{width:64px;height:64px}.donutOverview.compact .donutRest{font-size:.86rem}.stickyPlanRest{top:58px}}.tabs{z-index:39;padding-top:10px;top:86px}.donutRing{background:0 0!important}.donutSvg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.donutProgress{fill:none;stroke:var(--meter-color);stroke-width:9px;stroke-linecap:round;stroke-dasharray:var(--meter-dash) 100;transform-origin:50%;transform:rotate(-90deg)}.donutProgress.empty{opacity:0}.donutMeter.over .donutProgress{stroke:var(--nutrient-color)}.donutMeter.inactive .donutProgress{stroke:#1A1D20}.donutMeter.noTitle{gap:.34rem}.journalKcalMeter .donutTitle{display:none}.donutRest{white-space:normal}.donutOverview.compact .donutRest{line-height:1.15}.favoriteCard h3+p{margin-bottom:.08rem}.favoriteCard .macroInline{margin-top:.1rem}.goalWeightCard{align-self:stretch}.goalWeightText{color:var(--ui-text);margin:.25rem 0 0;font-size:1rem;line-height:1.4}.goalWeightDetail{color:var(--ui-muted);margin:.45rem 0 0;font-size:.86rem}.goalWeightCard.ok .goalWeightText{color:var(--day-today-text)}.goalWeightCard.bad .goalWeightText{color:#FF3232}@media (width<=760px){.topbar{align-items:start;gap:.65rem;display:grid;position:sticky;top:0}.tabs{top:136px}.stickyPlanRest{top:198px}}.app{padding-top:0}.appHeader{z-index:50;background:linear-gradient(#101318 92%,#101318f5);padding-top:20px;padding-bottom:8px;position:sticky;top:0}.topbar{z-index:auto;background:0 0;margin-bottom:0;padding:0 0 10px;position:static;top:auto}.tabs{z-index:auto;background:0 0;padding:8px 0 10px;position:static;top:auto}.planToggle{color:var(--meter-text);font-size:1.5em;font-weight:700;line-height:1.2}.donutOverview.compact .donutCenter span{font-size:.58rem;line-height:1.05;display:block}.donutOverview.compact .donutCenter strong{font-size:.82rem}@media (width<=760px){.appHeader{padding-top:14px}.topbar,.tabs{position:static;top:auto}.stickyPlanRest{top:206px}}.planRestBlock{padding:1rem}.planRestBlock h3{color:var(--day-current);margin-left:0;padding-left:0}.planToggle{letter-spacing:-.035em;font-size:clamp(1.55rem,2.8vw,2.15rem);font-weight:700;line-height:1.08}.searchActionRow{align-items:stretch}.searchActionRow input{flex:280px}.searchInputClearGroup{flex:280px;grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:.55rem;min-width:0;display:grid}.searchInputClearGroup input{width:100%;min-width:0;margin:0}.searchInputClear{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;color:var(--button-danger-text)!important;border-radius:50%!important;padding:0!important}.searchActionRow .iconBtn{flex:none}.shareActionWrap{display:inline-flex;position:relative}.shareMenu{z-index:80;background:#10151cfa;border:1px solid #ffffff24;border-radius:14px;gap:.35rem;min-width:190px;padding:.45rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 18px 50px #00000159}.shareMenu .iconBtn{justify-content:flex-start;width:100%}.weightStack{align-self:start;gap:.85rem;display:grid}.donutOverview.compact .donutCenter span{font-size:.7rem;font-weight:700;line-height:1.05}.donutOverview.compact .donutMeter.donut-kcal .donutCenter span{display:none}.appHeader{border-bottom:1px solid #ffffff0f}.dateNav{align-items:center}@media (width<=760px){.searchActionRow{grid-template-columns:1fr;display:grid}.shareActionWrap,.shareActionWrap>.iconBtn{width:100%}.shareMenu{width:min(260px,100%);left:0;right:auto}}.donutTrack{fill:none;stroke:#1A1D20;stroke-width:9px}.donutProgress{position:relative}.planToggle{letter-spacing:0;color:var(--day-current);font-size:1.5em;font-weight:700;line-height:1.15}.goalWeightCard .goalWeightText,.goalWeightCard.ok .goalWeightText,.goalWeightCard.bad .goalWeightText{color:var(--day-current);font-size:1rem;font-weight:700}.favoriteLibraryCard{gap:.8rem;display:grid}.favoriteSubTabs{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.favoriteSubTabs button{color:var(--ui-muted);cursor:pointer;background:#ffffff0b;border:1px solid #ffffff1f;border-radius:999px;padding:.46rem .76rem;font-weight:700}.favoriteSubTabs button.active{background:var(--day-current-strong,var(--day-today));border-color:var(--day-current-strong,var(--day-today));color:#06140d}.favoriteTabPanel{gap:.65rem;display:grid}.plannerListSearchCard{background:#121820;border:1px solid #2a3340;border-radius:16px;padding:.75rem}.plannerListSearchCard input{margin:0}.librarySectionTitle{margin:.1rem 0 0}.topMeta{color:var(--day-today-text);margin-top:.25rem;font-size:.84rem;font-weight:700}.favoriteCard .actions .iconBtn,.favoriteCard .actions .iconBtn svg{transform:none}.favoriteCard .actions .iconBtn svg{flex:0 0 18px;display:block}.favoriteCard .magicBtn{isolation:isolate;background:var(--button-active-bg);border-color:#ffffff38;transition:border-color .18s,color .18s,filter .18s;position:relative;overflow:hidden}.favoriteCard .magicBtn>svg,.favoriteCard .magicBtn>span{z-index:2;position:relative}.favoriteCard .magicBtn:before{content:"";border-radius:inherit;opacity:0;z-index:0;pointer-events:none;background:linear-gradient(45deg,red,#ff7300,#fffb00,#48ff00,#00ffd5,#002bff,#7a00ff,#ff00c8,red) 0 0/400%;transition:opacity .22s ease-in-out;animation:20s linear infinite magicRainbowGlow;position:absolute;inset:0}.favoriteCard .magicBtn:after{content:"";background:var(--button-active-bg);z-index:1;pointer-events:none;border-radius:7px;position:absolute;inset:3px}.favoriteCard:hover .magicBtn:not(:disabled),.favoriteCard .magicBtn:not(:disabled):hover{color:#fff;border-color:#ffffff75;transform:none}.favoriteCard:hover .magicBtn:not(:disabled):before,.favoriteCard .magicBtn:not(:disabled):hover:before{opacity:1}.favoriteCard .magicBtn:not(:disabled):active:after{background:#222832bd}@keyframes magicRainbowGlow{0%{background-position:0 0}50%{background-position:400% 0}to{background-position:0 0}}.favoriteCard .actions .iconBtn{box-sizing:border-box;backface-visibility:hidden;filter:none;flex-shrink:0;transition:background-color .16s,border-color .16s,color .16s;transform:translateZ(0)}.favoriteCard .actions .iconBtn:hover{filter:none;background-color:color-mix(in srgb, var(--button-active-bg) 86%, white 14%);border-color:color-mix(in srgb, var(--button-border) 70%, white 30%);transform:translateZ(0)}.favoriteCard .actions .iconBtn svg{backface-visibility:hidden;flex:0 0 20px;width:20px;min-width:20px;height:20px;min-height:20px;transform:translateZ(0)}.favoriteCard .actions .iconBtn:active{transform:translateZ(0)}.infoCard{background:#ffffff06;border:1px solid #ffffff14;border-radius:16px;padding:.75rem;display:block}.infoCard textarea{margin-top:.4rem}@media (width<=760px){.favoriteSubTabs{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.favoriteSubTabs button{padding-left:.45rem;padding-right:.45rem}}.homeApp{align-items:center;min-height:100vh;padding-top:36px;display:grid}.homeScreen{gap:1rem;width:min(720px,100%);margin:0 auto;display:grid}.homeHero{text-align:center;box-shadow:none;background:0 0;border:0;border-radius:0;padding:clamp(.35rem,1.8vw,.95rem) clamp(.4rem,1.6vw,.8rem) clamp(.75rem,2.2vw,1.1rem)}.homeHero h1{margin-bottom:.25rem}.homeHero h2{color:var(--day-today-text);margin-bottom:.35rem;font-size:clamp(1.25rem,3vw,1.75rem)}.homeHero p:last-child{margin-bottom:0}.homeLogo{width:74px;height:74px;color:var(--day-today-text);background:#5ce08a1f;border:1px solid #5ce08a6b;border-radius:22px;place-items:center;margin:0 auto 1rem;display:grid}.homeLogo svg{width:38px;height:38px}.homeNav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.homeNav button{min-height:74px;color:var(--ui-text);background:linear-gradient(#5ce08a29,#1a2029eb);border:1px solid #5ce08a4d;border-radius:18px;justify-content:center;align-items:center;gap:.62rem;font-size:1.02rem;font-weight:700;display:flex;box-shadow:0 14px 42px #0000012E}.homeNav button:hover{filter:brightness(1.08);border-color:#5ce08a94}.homeNav svg{flex:0 0 24px;width:24px;height:24px}.homeNav button:last-child{grid-column:1/-1}.tabs button svg{vertical-align:middle;width:18px;height:18px}@media (width<=560px){.homeApp{align-items:start;padding-top:18px}.homeNav{grid-template-columns:1fr}.homeNav button:last-child{grid-column:auto}}.workHeader{z-index:60;scrollbar-width:none;-webkit-overflow-scrolling:touch;background:#000001;justify-content:space-between;align-items:center;gap:.55rem;padding:12px 0 10px;display:flex;position:sticky;top:0;overflow:auto visible}.workHeader::-webkit-scrollbar{display:none}.workHeader .tabs{z-index:auto;background:0 0;flex:none;gap:.35rem;margin:0;padding:0;display:flex;position:static;top:auto;overflow:visible}.workHeader .tabs button{border-radius:14px;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;line-height:1;display:inline-grid;position:relative}.workHeader .tabs button svg,.homeNav button svg{flex:0 0 24px;width:24px;height:24px;display:block}.workHeader .tabs button[aria-label=Einstellungen] svg{width:24px;height:24px}.homeNav button:has(svg) svg{width:24px;height:24px}.compactWorkDateNav{flex:none;justify-content:flex-end;align-items:center;gap:.35rem;width:auto;min-width:max-content;position:relative;grid-template-rows:none!important;grid-template-columns:none!important;display:flex!important}.compactWorkDateNav .iconBtn,.compactWorkDateNav .todayJump,.compactWorkDateNav .dateButton{border-radius:14px;height:44px;min-height:44px}.compactWorkDateNav .iconBtn{width:44px;min-width:44px;padding:0}.compactWorkDateNav .dateButton{width:124px;min-width:124px;padding:0 .55rem;font-size:1rem}.compactWorkDateNav .todayJump{place-items:center;width:44px;min-width:44px;padding:0;display:inline-grid}.compactWorkDateNav .todayJump svg{width:22px;height:22px}.compactWorkDateNav .todayJump.isTodayPlaceholder{opacity:.28;pointer-events:none;cursor:default}.compactWorkDateNav .calendarPopover{top:calc(44px + .45rem);right:0}.compactWorkDateNav .dayBadge,.compactWorkDateNav .calendarBtn{display:none}.stickyPlanRest{top:76px}.plannerNavBtn{isolation:isolate;overflow:hidden}.plannerNavBtn>svg{z-index:2;position:relative}.plannerNavBtn:before{content:"";border-radius:inherit;opacity:0;z-index:0;pointer-events:none;background:linear-gradient(45deg,red,#ff7300,#fffb00,#48ff00,#00ffd5,#002bff,#7a00ff,#ff00c8,red) 0 0/400%;transition:opacity .22s ease-in-out;animation:20s linear infinite magicRainbowGlow;position:absolute;inset:0}.plannerNavBtn:after{content:"";background:inherit;z-index:1;pointer-events:none;border-radius:10px;position:absolute;inset:3px}.plannerNavBtn:hover:before{opacity:1}.plannerNavBtn.active:before{opacity:.72}@media (width<=760px){.app{width:min(100% - 14px,1180px)}.workHeader{flex-wrap:nowrap;gap:.4rem;padding-top:8px;padding-bottom:8px}.workHeader .tabs{gap:.28rem}.workHeader .tabs button,.compactWorkDateNav .iconBtn,.compactWorkDateNav .todayJump{border-radius:13px;width:40px;min-width:40px;height:40px;min-height:40px}.workHeader .tabs button svg,.homeNav button svg{width:24px;height:24px}.compactWorkDateNav .dateButton{width:112px;min-width:112px;height:40px;min-height:40px;font-size:.95rem}.compactWorkDateNav .todayJump svg{width:21px;height:21px}.stickyPlanRest{top:64px}}.compactWorkDateNav .calendarPopover.customCalendar{z-index:120;background:var(--cc-m);border:1px solid #ffffff24;border-radius:18px;gap:.55rem;width:min(318px,100vw - 24px);padding:.7rem;display:grid;position:fixed;top:64px;right:max(12px,50vw + min(1180px,100vw - 28px)/-2);box-shadow:0 22px 70px #0000017A}.calendarHeader{grid-template-columns:36px 1fr 36px;align-items:center;gap:.4rem;display:grid}.calendarHeader strong{text-align:center;color:var(--ui-text);text-transform:capitalize}.calendarHeader button,.calendarGrid button{border:1px solid var(--ui-border);background:var(--button-bg);color:var(--ui-text);border-radius:12px;min-height:34px;font-weight:700}.calendarHeader button:hover,.calendarGrid button:hover{filter:brightness(1.12)}.calendarWeekdays,.calendarGrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem;display:grid}.calendarWeekdays span{color:var(--ui-muted);text-align:center;font-size:.76rem;font-weight:700}.calendarGrid button{font-variant-numeric:tabular-nums;min-width:0;padding:0;background:var(--cc-m);border-color:#858A91;color:var(--cc-w)}.calendarGrid button.muted{color:var(--cc-g);background:var(--cc-m);border-color:#858A91}.customCalendar.today .calendarGrid button.active{background:var(--day-today);border-color:var(--day-today);color:var(--cc-s)}.customCalendar.past .calendarGrid button.active{background:var(--day-past);border-color:var(--day-past);color:var(--cc-s)}.customCalendar.future .calendarGrid button.active{background:var(--day-future);border-color:var(--day-future);color:var(--cc-s)}.stickyPlanRest{z-index:58;isolation:isolate;background:#10151c;overflow:hidden;box-shadow:0 -16px #101318,0 18px 48px #00000147}.favoriteLibraryCard,.planBoxCard{z-index:1;position:relative}.plannerNavBtn span,.homePlannerBtn span{z-index:2;position:relative}.homeNav .homePlannerBtn{isolation:isolate;position:relative;overflow:hidden}.homeNav .homePlannerBtn:after{background:linear-gradient(#0f2416,#181d26);border-radius:15px;inset:3px}.homeNav .homePlannerBtn:hover:before{opacity:1}.homeNav .homePlannerBtn:hover{filter:none}@media (width<=760px){.compactWorkDateNav .calendarPopover.customCalendar{width:min(304px,100vw - 16px);top:56px;right:8px}.stickyPlanRest{box-shadow:0 -12px #101318,0 16px 42px #00000147}}.planRestBlock h3{color:var(--day-current)}.homeNav .homePlannerBtn:after{background:linear-gradient(#0f2416,#181d26)}.homeNav .homePlannerBtn:hover{border-color:#5ce08aa3}.productImage.previewable{cursor:zoom-in}.productImage.previewable:focus-visible{outline:2px solid var(--day-today);outline-offset:3px}.imagePreviewBackdrop{z-index:160;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:zoom-out;background:#000001B8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.imagePreviewLarge{object-fit:contain;background:#0d1117;border:1px solid #ffffff29;border-radius:20px;max-width:min(88vw,720px);max-height:82vh;box-shadow:0 30px 90px #0000018C}@media (width<=760px){.favoriteCard,.favoriteCard.dish{grid-template-columns:56px minmax(0,1fr);align-items:start;gap:.62rem;padding:.62rem}.favoriteCard .productImage.medium,.favoriteCard.dish .dishIcon{border-radius:12px;width:56px;height:56px}.favoriteCard.dish .dishIcon{text-align:center;font-size:.64rem;line-height:1.05}.favoriteCard>div:last-child{min-width:0}.favoriteCard h3{overflow-wrap:anywhere;margin-bottom:.12rem;font-size:1rem;line-height:1.18}.favoriteCard p,.favoriteCard .macroInline,.favoriteCard .targetCompactLine{overflow-wrap:anywhere;font-size:.8rem;line-height:1.25}.favoriteCard .macroInline,.favoriteCard .targetCompactLine{white-space:normal}.favoriteCard .actions.planActions{flex-wrap:wrap;align-items:center;gap:.32rem;margin-top:.55rem;display:flex}.favoriteCard .actions.planActions .quickUnit{flex:100%;width:100%;min-width:0}.favoriteCard .actions.planActions .iconBtn{white-space:nowrap;min-width:40px;height:40px;min-height:40px;padding:.34rem .44rem;font-size:.82rem}.favoriteCard .actions.planActions .magicBtn,.favoriteCard .actions.planActions .iconBtn.ghost.danger,.favoriteCard .actions.planActions .iconBtn.ghost:not(.magicBtn){width:40px;padding:0}.favoriteCard .actions.planActions .iconBtn svg{width:19px;min-width:19px;height:19px;min-height:19px}.planLine{grid-template-columns:minmax(0,1fr) auto auto;gap:.32rem}.planLine strong{font-size:.86rem}.planLine .statusIcon,.planLine .iconBtn{width:36px;min-width:36px;height:36px;min-height:36px;padding:0}.planLine .iconBtn svg,.planLine .statusIcon svg{width:18px;height:18px}.imagePreviewBackdrop{padding:12px}.imagePreviewLarge{border-radius:16px;max-width:94vw;max-height:78vh}}@media (width<=430px){.donutOverview.compact,.journalMacroMeters{grid-template-columns:repeat(2,minmax(0,1fr))}.donutOverview.compact .donutMeter .donutRing,.donutMeter.compact .donutRing{width:72px;height:72px}.donutOverview.compact .donutRest{font-size:.8rem}.favoriteSubTabs button{font-size:.82rem}}@media (width<=760px){.planLine{grid-template-columns:minmax(0,1fr) auto 34px 34px 34px!important;align-items:center!important;gap:.28rem!important}.planLine .planName{text-overflow:ellipsis;white-space:nowrap;gap:.32rem;min-width:0;overflow:hidden;display:flex!important}.planLine strong{white-space:nowrap;font-size:.82rem}.planLine .iconBtn,.planLine .statusIcon{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:0!important}.weightList .weightRow{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:.65rem!important;display:flex!important}.weightList .weightRow strong,.weightList .weightRow span{white-space:nowrap}}@media (width<=380px){.planLine{padding-left:.42rem;padding-right:.42rem;grid-template-columns:minmax(0,1fr) auto 32px 32px 32px!important;gap:.24rem!important}.planLine .iconBtn,.planLine .statusIcon{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important}.planLine strong{font-size:.78rem}}.homeNavItem{align-content:start;gap:.45rem;display:grid;position:relative}.homeNavItem>button{width:100%}.homeTipBubble{color:#FFFFFFE6;opacity:0;visibility:hidden;pointer-events:none;z-index:80;background:linear-gradient(#12181ff7,#0d1218fa);border:1px solid #5ce08a94;border-radius:14px;align-items:flex-start;gap:.42rem;width:min(260px,84vw);min-height:0;padding:.62rem .72rem;font-size:.84rem;line-height:1.32;transition:opacity .16s,transform .16s,visibility .16s;display:flex;position:absolute;top:auto;bottom:calc(100% + .55rem);left:50%;transform:translate(-50%,4px);box-shadow:0 18px 42px #00000152}.homeTipBubble:before{content:"";background:#0d1218fa;border-bottom:1px solid #5ce08a94;border-right:1px solid #5ce08a94;width:12px;height:12px;position:absolute;top:auto;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.homeNav.tipsActive .homeNavItem:hover .homeTipBubble,.homeNav.tipsActive .homeNavItem:focus-within .homeTipBubble{opacity:1;visibility:visible;transform:translate(-50%)}.homeTipBubble p{margin:0}.tipIcon{border:1.5px solid var(--day-today-text);width:18px;height:18px;color:var(--day-today-text);border-radius:999px;flex:0 0 18px;place-items:center;font-size:.72rem;font-weight:700;line-height:1;display:inline-grid}.homeTipsToggleCard{color:var(--ui-text);background:linear-gradient(#141920e0,#10141beb);border:1px solid #ffffff14;border-radius:18px;justify-content:space-between;align-items:center;gap:.8rem;padding:.68rem .82rem;font-weight:700;display:flex;box-shadow:0 12px 34px #0000012E}.tipSwitch{cursor:pointer;background:#ffffff21;border:0;border-radius:999px;justify-content:flex-start;align-items:center;width:64px;min-width:64px;height:30px;padding:4px;transition:background .18s,box-shadow .18s;display:flex;box-shadow:inset 0 0 0 1px #ffffff0f,0 8px 22px #0000012E}.tipSwitch.on{background:linear-gradient(90deg,#5ce08ac7,#5CE08AF5);justify-content:flex-end;box-shadow:inset 0 0 0 1px #ffffff29,0 8px 22px #5ce08a2e}.tipSwitchThumb{background:#FFFFFF;border-radius:999px;width:34px;height:22px;display:block;box-shadow:0 2px 10px #00000147}.tipSwitch:focus-visible{outline:2px solid var(--day-today-text);outline-offset:3px}@media (width<=560px){.homeNavItem:last-child{grid-column:auto}.homeTipsToggleCard{border-radius:16px;padding:.62rem .76rem}.homeTipBubble{width:auto;max-width:none;font-size:.82rem;position:fixed;inset:auto 1rem 5.9rem;transform:translateY(6px)}.homeTipBubble:before{display:none}.homeNav.tipsActive .homeNavItem:hover .homeTipBubble,.homeNav.tipsActive .homeNavItem:focus-within .homeTipBubble{transform:translateY(0)}}.homeNav{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:.95rem}.homeNavItem{min-width:0}.homeNavItem>button,.homeNav button{aspect-ratio:1.08;text-align:center;border-radius:28px;flex-direction:column;justify-content:flex-start;align-items:center;gap:.5rem;width:100%;min-height:clamp(158px,26vw,224px);padding:1.05rem .9rem .9rem;line-height:1.12}.homeNav button svg,.workHeader .tabs button svg.homeDummyNever{flex:none;width:clamp(40px,6.2vw,54px);height:clamp(40px,6.2vw,54px);margin-top:.4rem}.homeNav button span{margin-top:auto;font-size:clamp(1.12rem,2.6vw,1.4rem);font-weight:700;display:block}.homeTipsToggleCard{box-shadow:none;background:0 0;border:0;border-radius:0;padding:.25rem .1rem .1rem}.homeTipBubble{width:min(248px,100vw - 2rem);inset:auto auto calc(100% + .55rem) 0;transform:translateY(4px)}.homeTipBubble:before{top:auto;bottom:-7px;left:28px;transform:rotate(45deg)}.homeNavItem:nth-child(2n) .homeTipBubble{left:auto;right:0}.homeNavItem:nth-child(2n) .homeTipBubble:before{left:auto;right:28px}.homeNavItem:nth-child(-n+2) .homeTipBubble{top:calc(100% + .55rem);bottom:auto}.homeNavItem:nth-child(-n+2) .homeTipBubble:before{border:0;border-top:1px solid #5ce08a94;border-left:1px solid #5ce08a94;top:-7px;bottom:auto}@media (width<=680px){.homeHero{padding-top:.1rem}.homeNav{gap:.72rem}.homeNavItem>button,.homeNav button{border-radius:25px;min-height:148px}.homeNav button span{font-size:1.08rem}}@media (width<=560px){.homeNav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem}.homeNavItem:last-child{grid-column:auto}.homeNavItem>button,.homeNav button{aspect-ratio:1;border-radius:22px;min-height:132px;padding:.8rem .55rem .75rem}.homeNav button svg{width:40px;height:40px;margin-top:.25rem}.homeNav button span{font-size:.98rem}.homeTipBubble{width:min(226px,100vw - 2rem);max-width:none;font-size:.8rem;position:absolute;inset:auto auto calc(100% + .5rem) 0;transform:translateY(4px)}.homeNavItem:nth-child(2n) .homeTipBubble{left:auto;right:0}.homeTipBubble:before{display:block}.homeNavItem:nth-child(-n+2) .homeTipBubble{top:calc(100% + .5rem);bottom:auto}}@media (width<=340px){.homeNav{grid-template-columns:1fr}.homeNavItem:nth-child(2n) .homeTipBubble,.homeTipBubble{width:auto;left:0;right:0}.homeNavItem:nth-child(2n) .homeTipBubble:before,.homeTipBubble:before{left:28px;right:auto}}.homeNav{--home-tile-size:clamp(132px, 18vw, 156px);grid-template-columns:repeat(2, var(--home-tile-size));justify-content:center;align-items:start;gap:.82rem;width:fit-content;max-width:100%;margin-inline:auto}.homeNavItem{width:var(--home-tile-size);min-width:0}.homeNavItem:last-child{grid-column:auto}.homeNavItem>button,.homeNav button{width:var(--home-tile-size);height:var(--home-tile-size);aspect-ratio:1;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:.78rem;min-height:0;padding:1rem .62rem .78rem;display:flex}.homeNav button svg,.workHeader .tabs button svg.homeDummyNever{flex:none;width:clamp(48px,7vw,58px);height:clamp(48px,7vw,58px);margin:0}.homeNav button span{white-space:nowrap;margin:0;font-size:clamp(.93rem,1.75vw,1.05rem);font-weight:700;line-height:1.08;display:block}.homeNav .homePlannerBtn:after{border-radius:25px}.homeTipsToggleCard{width:fit-content;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;gap:.8rem;margin:.48rem auto 0;padding:.1rem;display:flex}.homeTipsToggleCard>span{white-space:nowrap}.homeTipBubble,.homeNavItem:nth-child(-n+2) .homeTipBubble,.homeNavItem:nth-child(2n) .homeTipBubble{width:min(248px,100vw - 2rem);inset:auto auto calc(100% + .55rem) 50%;transform:translate(-50%,4px)}.homeTipBubble:before,.homeNavItem:nth-child(-n+2) .homeTipBubble:before,.homeNavItem:nth-child(2n) .homeTipBubble:before{border:1px solid #5ce08a94;border-top:0;border-left:0;display:block;inset:auto auto -7px 50%;transform:translate(-50%)rotate(45deg)}.homeNav.tipsActive .homeNavItem:hover .homeTipBubble,.homeNav.tipsActive .homeNavItem:focus-within .homeTipBubble{transform:translate(-50%)}@media (width<=560px){.homeNav{--home-tile-size:clamp(124px, 42vw, 142px);gap:.62rem}.homeNavItem>button,.homeNav button{width:var(--home-tile-size);height:var(--home-tile-size);border-radius:24px;gap:.65rem;min-height:0;padding:.82rem .48rem .64rem}.homeNav button svg{width:clamp(42px,13vw,50px);height:clamp(42px,13vw,50px)}.homeNav button span{font-size:clamp(.82rem,3.6vw,.94rem)}.homeTipBubble,.homeNavItem:nth-child(-n+2) .homeTipBubble,.homeNavItem:nth-child(2n) .homeTipBubble{width:min(226px,100vw - 1.2rem);position:absolute;inset:auto auto calc(100% + .5rem) 50%;transform:translate(-50%,4px)}.homeNav.tipsActive .homeNavItem:hover .homeTipBubble,.homeNav.tipsActive .homeNavItem:focus-within .homeTipBubble{transform:translate(-50%)}}@media (width<=320px){.homeNav{--home-tile-size:min(136px, 86vw);grid-template-columns:var(--home-tile-size)}}.homeNav button svg{flex:none;width:clamp(72px,9vw,96px);height:clamp(72px,9vw,96px);margin-top:.1rem}@media (width<=560px){.homeNav button svg{width:clamp(58px,18vw,78px);height:clamp(58px,18vw,78px)}}.homeNav button svg{width:clamp(92px,12vw,128px);height:clamp(92px,12vw,128px);margin:0}.homeNav button{gap:.5rem}@media (width<=560px){.homeNav button svg{width:clamp(72px,22vw,102px);height:clamp(72px,22vw,102px)}.homeNav button{gap:.42rem}}.homeNav button .homeTileIcon{color:#FFFFFFFA;filter:drop-shadow(0 0 12px #5ce08a38);flex:none;width:clamp(78px,10vw,104px);height:clamp(78px,10vw,104px);margin:.05rem 0 .1rem}.homeNav button .homeTileIconAccent{stroke:var(--day-today-text)}.homeNav button span{margin-top:.1rem}@media (width<=560px){.homeNav button .homeTileIcon{width:clamp(68px,21vw,92px);height:clamp(68px,21vw,92px)}}.homeNav button .homeTileIcon{filter:drop-shadow(0 0 9px #5ce08a29)}.homeNav button .homeTileIconAccent{stroke:var(--day-today-text);stroke-width:3.6px}.iconBtn.targetSaveBtn.dirty{box-shadow:0 0 0 2px #FF323247,0 10px 28px #FF323214;border-color:#FF3232!important}.iconBtn.targetSaveBtn.saved{box-shadow:0 0 0 2px #5ce08a47,0 10px 28px #5ce08a1a;border-color:var(--button-success-bg)!important}.workHeader .tabs button[aria-label=Planer] svg{width:28px;height:28px}.settingsInfoCard{align-content:space-between;gap:.75rem;display:grid}.infoModalPanel{width:min(820px,100%)}.infoModalHead{margin-bottom:.9rem}.infoSections{gap:.7rem;display:grid}.infoSections section{background:#121820db;border:1px solid #ffffff14;border-radius:16px;padding:.85rem}.infoSections h3{color:var(--ui-text);margin-bottom:.18rem}.infoSections p{margin-bottom:0}.infoModalActions{justify-content:flex-end}@media (width<=760px){.infoModalHead{display:grid}.infoModalHead .iconBtn{justify-self:start}}:root{--button-radius-pill:999px;--button-pad-y:.48rem;--button-pad-x:.82rem}.iconBtn,.fileButton,.sectionToggle,.dayStatus,.todayJump,.favoriteSubTabs button,.calendarHeader button,.calendarGrid button{border-radius:var(--button-radius-pill)}.iconBtn,.fileButton{padding:var(--button-pad-y) var(--button-pad-x)}.iconBtn:has(span:empty){border-radius:var(--button-radius-pill)}.iconBtn.ghost{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%)}.iconBtn.danger{border-color:color-mix(in srgb, var(--button-danger-text) 42%, var(--button-border));color:var(--button-danger-text)}.fileButton{min-width:max-content}.workHeader .tabs button,.compactWorkDateNav .iconBtn,.compactWorkDateNav .todayJump,.compactWorkDateNav .dateButton,.favoriteCard .magicBtn,.plannerNavBtn{border-radius:var(--button-radius-pill)}.favoriteCard .magicBtn:after,.plannerNavBtn:after{border-radius:inherit}.planLine .iconBtn,.planLine .statusIcon,.statusIcon{border-radius:var(--button-radius-pill)}.calendarHeader button,.calendarGrid button{min-width:34px}button:focus-visible,.fileButton:focus-within{outline:2px solid var(--day-today-text);outline-offset:3px}.workHeader .tabs button,.workHeader .tabs .plannerNavBtn,.workHeader .tabs .plannerNavBtn:after{border-radius:14px}.planHead .actions .iconBtn:first-child{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%)}.iconBtn.targetSaveBtn{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%);margin-top:.78rem}.journalEntryLine .iconBtn{border-radius:999px;width:28px;min-width:28px;height:28px;min-height:28px;padding:0}.journalEntryLine .iconBtn svg{flex-basis:15px;width:15px;height:15px}.journalEntryLine .iconBtn.ghost.danger{aspect-ratio:1;flex:0 0 28px;gap:0;max-width:28px;max-height:28px;border-radius:50%!important;width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;padding:0!important}.journalEntryLine .iconBtn.ghost.danger span,.journalEntryLine .iconBtn.ghost.danger .btnBadge{display:none!important}.iconBtn.primarySoft,.fileButton.primarySoft{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%);border-color:color-mix(in srgb, var(--button-border) 78%, white 22%);color:var(--ui-text);border-radius:var(--button-radius-pill)}.iconBtn.primarySoft.ghost{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%)}.iconBtn.primarySoft:hover,.fileButton.primarySoft:hover{filter:brightness(1.12)}.modalBackdrop{z-index:220}.dishModalBackdrop{place-items:start center;padding-top:20px}.dishModalPanel{max-height:calc(100vh - 40px)}.planAmountEdit{gap:.3rem;width:108px;max-width:108px}.planAmountEdit input{text-align:right;height:34px;min-height:34px;padding:.32rem .42rem;font-size:.86rem}@media (width<=760px){.dishModalBackdrop{padding-top:10px}.dishModalPanel{max-height:calc(100vh - 20px)}.planLine{grid-template-columns:minmax(0,1fr) 92px 34px 34px 34px!important}.planAmountEdit{width:92px!important;max-width:92px!important}.planAmountEdit input{height:34px;min-height:34px;font-size:.82rem}.planAmountEdit .unitSuffix{font-size:.68rem}}@media (width<=380px){.planLine{grid-template-columns:minmax(0,1fr) 84px 32px 32px 32px!important}.planAmountEdit{gap:.22rem;width:84px!important;max-width:84px!important}.planAmountEdit input{padding-left:.32rem;padding-right:.32rem;font-size:.78rem}.planAmountEdit .unitSuffix{font-size:.62rem}}.searchActionRow .iconBtn.primarySoft,.planActions .iconBtn.primarySoft,.cardHead .iconBtn.primarySoft,.planHead .actions .iconBtn.primarySoft,.settingsGrid .iconBtn.primarySoft,.fileButton.primarySoft{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%);border-color:color-mix(in srgb, var(--button-border) 78%, white 22%);color:var(--ui-text);border-radius:var(--button-radius-pill)}.planAmountEdit input[type=number]{appearance:auto}.targetOrientation p{line-height:1.25}.targetOrientation p:not(:first-child){white-space:normal}@media (width<=760px){.planLine{grid-template-columns:minmax(0,1fr) 86px 34px 34px 34px!important}.planAmountEdit{width:86px!important;max-width:86px!important}.planAmountEdit input{text-align:left;width:42px;max-width:42px}}@media (width<=380px){.planLine{grid-template-columns:minmax(0,1fr) 80px 32px 32px 32px!important}.planAmountEdit{width:80px!important;max-width:80px!important}.planAmountEdit input{text-align:left;width:40px;max-width:40px}}:root{--button-border-soft:color-mix(in srgb, var(--button-border) 58%, white 42%)}.iconBtn:not(.danger):not(.successFlash):not(.dirty),.fileButton,button.iconBtn:not(.danger):not(.successFlash):not(.dirty),.iconBtn.primarySoft,.fileButton.primarySoft,.searchActionRow .iconBtn.primarySoft,.planActions .iconBtn.primarySoft,.cardHead .iconBtn.primarySoft,.planHead .actions .iconBtn.primarySoft,.settingsGrid .iconBtn.primarySoft{border-color:var(--button-border-soft)}.iconBtn.targetSaveBtn.saved{border-color:var(--button-border-soft)!important;box-shadow:none!important}.planAmountEdit{width:106px;max-width:106px}.planAmountEdit input{text-align:left;width:60px;max-width:60px;padding-left:.42rem;padding-right:.18rem}.planLine .iconBtn,.planLine button.iconBtn{border-radius:999px;width:36px;min-width:36px;height:36px;min-height:36px;padding:0}.planLine .iconBtn svg,.planLine button.iconBtn svg{width:17px;height:17px}@media (width<=760px){.planLine{grid-template-columns:minmax(0,1fr) 98px 34px 34px 34px!important}.planAmountEdit{width:98px!important;max-width:98px!important}.planAmountEdit input{width:56px;max-width:56px}.planLine .iconBtn,.planLine button.iconBtn{width:34px;min-width:34px;height:34px;min-height:34px}}@media (width<=380px){.planLine{grid-template-columns:minmax(0,1fr) 94px 32px 32px 32px!important}.planAmountEdit{width:94px!important;max-width:94px!important}.planAmountEdit input{width:54px;max-width:54px}.planLine .iconBtn,.planLine button.iconBtn{width:32px;min-width:32px;height:32px;min-height:32px}}.phaseModalActions .iconBtn.primarySoft{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%);border-color:var(--button-border-soft);color:var(--ui-text)}.homeLogoImage{width:min(196.35px,59.5vw - 1.19rem);height:auto;margin:0 auto .6rem;display:block}.homeHero{padding-top:.25rem}.homeHero h2{margin-top:.15rem}.btnBadge{min-width:1.35rem;height:1.35rem;padding:0 .32rem;font-size:.78rem;top:-.5rem;right:-.5rem}.targetInputInline{grid-template-columns:minmax(128px,auto) minmax(0,1fr);align-items:center;gap:.55rem;display:grid}.targetInputInline .targetLabel,.inlineField>span,.authFieldRow>span,.phaseFieldRow>span{color:var(--ui-muted);white-space:nowrap;font-weight:700}.inlineField,.authFieldRow,.phaseFieldRow{grid-template-columns:minmax(108px,auto) minmax(0,1fr);align-items:center;gap:.55rem;display:grid}.phaseFieldRow{grid-template-columns:minmax(150px,auto) minmax(0,1fr)}.weightInputRow{margin-top:.75rem}.authFields{gap:.55rem}.authActions{margin-top:.75rem}.iconBtn:disabled{opacity:.58;cursor:not-allowed;filter:none}.fileButton:has(input:disabled){opacity:.58;cursor:not-allowed;filter:none}@media (width<=520px){.homeApp{align-items:start;align-content:start;padding-top:18px}.homeScreen{margin-top:0}.homeHero{padding-top:4px}.homeLogoImage{width:min(166.6px,59.5vw - 1.19rem)}.targetInputInline{grid-template-columns:112px minmax(0,1fr)}.inlineField,.authFieldRow{grid-template-columns:72px minmax(0,1fr)}.phaseFieldRow{grid-template-columns:130px minmax(0,1fr)}.targetValueWrap{grid-template-columns:minmax(0,1fr) minmax(58px,auto)}}.homeStatsIcon .homeStatsBase,.homeStatsIcon .homeStatsBar,.homeStatsIcon .homeStatsBarAccent,.statsNavIcon .statsBase,.statsNavIcon .statsBar,.statsNavIcon .statsBarAccent{fill:none;stroke-linecap:round;stroke-linejoin:round}.homeStatsIcon .homeStatsBase,.homeStatsIcon .homeStatsBar{stroke:currentColor}.homeStatsIcon .homeStatsBarAccent{stroke:var(--day-today-text)}.statsNavIcon .statsBase,.statsNavIcon .statsBar,.statsNavIcon .statsBarAccent{stroke:currentColor}.statisticsGrid{align-items:stretch}.statisticsCard{background:var(--ui-card);border-color:var(--ui-border-soft)}.statisticsCard h2{margin-bottom:.25rem}.statisticsCard p{margin-bottom:0}.statisticsTrendCard{overflow:hidden}.statisticsTrendHead{align-items:flex-start;gap:1rem}.statisticsToggle{background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px;flex-wrap:wrap;gap:.35rem;padding:.28rem;display:inline-flex}.statisticsToggle button{color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.52rem .9rem;transition:background-color .18s,color .18s,box-shadow .18s}.statisticsToggle button.active{color:#0b1510;background:#5ce08af0;box-shadow:0 6px 16px #5ce08a3d}.weightTrendChartWrap{background:linear-gradient(#ffffff08,#ffffff04);border:1px solid #ffffff14;border-radius:22px;margin-top:.75rem;padding:.65rem .45rem .25rem}.weightTrendChart{width:100%;height:auto;display:block;overflow:visible}.weightTrendGridLine{stroke:#ffffff1f;stroke-width:1.2px;stroke-dasharray:4 7}.weightTrendAxisLabel{fill:#FFFFFFAD;font-size:14px}.weightTrendPolyline{fill:none;stroke:var(--day-today-text);stroke-width:9.5px;stroke-linecap:round;stroke-linejoin:round}.weightTrendPointGroup{cursor:pointer;outline:none}.weightTrendPointHit{fill:#00000100;stroke:none}.weightTrendPointDot{fill:var(--day-today-text);stroke:#050807eb;stroke-width:3.1px}.weightTrendPointGroup.latest .weightTrendPointDot{stroke-width:3.1px}.weightTrendPointGroup:focus-visible .weightTrendPointDot,.weightTrendPointGroup.active .weightTrendPointDot{filter:drop-shadow(0 0 8px #5ce08a6b)}.weightTrendValuePill rect{fill:#000001D1;stroke:var(--day-current,var(--day-today-text));stroke-width:1.4px}.weightTrendValuePill text{fill:#FFFFFF;font-size:14px;font-weight:700}.weightTrendDateLabel{fill:#FFFFFF85;font-size:12px}.weightTrendSummaryRow{gap:.3rem;margin-top:.85rem;display:grid}.weightTrendSummaryRow p{margin:0}.weightTrendDelta.down{color:var(--day-today-text)}.weightTrendDelta.up{color:var(--text-main)}.weightTrendHint{color:var(--text-dim);font-size:.92rem}.statisticsMiniChart{background:#ffffff06;border:1px solid #ffffff14;border-radius:16px;height:92px;margin:.85rem 0 .7rem;overflow:hidden}.statisticsMiniChart.line{position:relative}.statisticsMiniChart.line span{transform-origin:0;background:#ffffff8f;border-radius:999px;width:42%;height:2px;position:absolute}.statisticsMiniChart.line span:first-child{top:62%;left:12%;transform:rotate(-14deg)}.statisticsMiniChart.line span:nth-child(2){top:54%;left:34%;transform:rotate(9deg)}.statisticsMiniChart.line span:nth-child(3){top:46%;left:54%;transform:rotate(-20deg)}.statisticsMiniChart.line span:nth-child(4){width:22%;top:34%;left:67%;transform:rotate(7deg)}.statisticsMiniChart.bars{grid-template-columns:repeat(5,1fr);align-items:end;gap:.34rem;padding:.65rem;display:grid}.statisticsMiniChart.bars span{background:#ffffff75;border-radius:999px 999px 8px 8px;display:block}.statisticsMiniChart.bars span:first-child{height:38%}.statisticsMiniChart.bars span:nth-child(2){height:58%}.statisticsMiniChart.bars span:nth-child(3){height:46%}.statisticsMiniChart.bars span:nth-child(4){height:72%}.statisticsMiniChart.bars span:nth-child(5){height:64%}@media (width<=760px){.statisticsTrendHead{flex-direction:column}.statisticsToggle{justify-content:center;width:100%}.weightTrendChartWrap{padding-left:.15rem;padding-right:.15rem}}@media (width<=520px){.targetInputInline{grid-template-columns:138px minmax(0,1fr)}.targetInputInline .targetLabel{white-space:normal;line-height:1.12}}.productImage{aspect-ratio:1;object-fit:contain;overflow:hidden}.productImage.placeholder{text-align:center;-webkit-user-select:none;user-select:none;place-items:center;display:grid}.productImage.manageable{cursor:zoom-in}.productImage.manageable:hover{filter:brightness(1.08);border-color:#5ce08a6b}.imageDialogBackdrop{cursor:default;z-index:260}.imageDialogPanel{grid-template-rows:minmax(0,auto) auto auto;justify-items:center;gap:.85rem;width:min(92vw,760px);max-height:calc(100dvh - 36px);display:grid;position:relative;overflow:visible}.imageDialogDropzone{aspect-ratio:1;background:#0d1117e0;border:1px dashed #ffffff2e;border-radius:22px;place-items:center;width:min(78vw,520px,100dvh - 210px);max-width:100%;height:auto;padding:.7rem;transition:border-color .16s,background .16s;display:grid;box-shadow:0 30px 90px #0000017A}.imageDialogDropzone:hover{border-color:#5ce08a6b}.imageDialogDropzone .imagePreviewLarge{object-fit:contain;width:100%;max-width:100%;height:100%;max-height:100%;box-shadow:none;border-radius:16px}.imagePreviewPlaceholder{aspect-ratio:1;color:#6f7a88;background:#0d1117;border:1px solid #2a3340;border-radius:22px;place-items:center;width:min(66vw,360px);font-weight:700;display:grid}.imageDialogActions{flex-wrap:wrap;justify-content:center;align-items:start;gap:1rem;display:flex}.imageActionItem{color:var(--ui-muted);justify-items:center;gap:.34rem;font-size:.78rem;font-weight:700;display:grid}.imageCloseBtn{border:1px solid color-mix(in srgb, var(--button-danger-text) 45%, var(--button-border));width:38px;min-width:38px;height:38px;min-height:38px;color:var(--button-danger-text);z-index:2;background:#FF32321F;border-radius:50%;place-items:center;padding:0;display:inline-grid;position:absolute;top:-.35rem;right:-.35rem}.imageCloseBtn:hover{filter:brightness(1.14);background:#FF32322E}.imageCloseBtn svg{width:18px;height:18px}.imageRoundBtn{border:1px solid color-mix(in srgb, var(--button-border) 72%, white 28%);background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%);width:48px;min-width:48px;height:48px;min-height:48px;color:var(--ui-text);border-radius:50%;place-items:center;padding:0;display:inline-grid}.imageRoundBtn svg{width:22px;height:22px}.hiddenImageInput{display:none}.imageDialogError{color:#FF3232;text-align:center;margin:-.35rem 0 0}.homeStatsIcon .homeStatsBase,.homeStatsIcon .homeStatsBar,.homeStatsIcon .homeStatsBarAccent,.statsNavIcon .statsBase,.statsNavIcon .statsBar,.statsNavIcon .statsBarAccent{fill:none}@media (width<=760px){.imageDialogPanel{gap:.72rem;width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.imageDialogDropzone{aspect-ratio:1;width:min(100vw - 44px,340px,100dvh - 190px);height:auto}.imageDialogActions{gap:.74rem}.imageRoundBtn{width:40px;min-width:40px;height:40px;min-height:40px}.imageActionItem{font-size:.72rem}}.homeNav .homePlannerBtn .homeTileIcon{z-index:2;transition:none;position:relative;transform:translateZ(0)}.homeNav .homePlannerBtn:hover .homeTileIcon,.homeNav .homePlannerBtn:focus-visible .homeTileIcon{transform:translateZ(0)}.homeNav .homePlannerBtn:before,.homeNav .homePlannerBtn:after{pointer-events:none}.imageDialogDropzone .imagePreviewLarge{display:block}@media (height<=560px){.imageDialogDropzone{width:min(70vw,100dvh - 176px)}.imageDialogActions{gap:.55rem}}.editImageBlock{background:#ffffff06;border:1px solid #ffffff14;border-radius:16px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:.55rem;margin-top:.65rem;padding:.55rem;display:grid}.editImageBlock.compact{grid-template-columns:auto auto minmax(0,1fr);margin-top:.55rem;padding:.5rem}.editImageDropzone{place-items:center;display:grid}.editImageDropzone .productImage.medium,.editImageBlock.compact .productImage.medium{width:112px;height:112px}.editImageActions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.compactFormGrid label,.dishNameSaveRow label,.ingredientAddRow label{grid-template-columns:155px minmax(0,1fr);align-items:center;gap:.55rem;display:grid}.compactFormGrid label input,.dishNameSaveRow label input,.ingredientAddRow label select{min-width:0}.dialogEditorActions .iconBtn.danger,.dishNameActions .iconBtn.danger{color:var(--button-danger-text);border-color:color-mix(in srgb, var(--button-danger-text) 42%, var(--button-border))}.dialogRoundBtn{box-sizing:border-box;aspect-ratio:1;flex:0 0 40px;gap:0;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.imagePreviewOnlyPanel{grid-template-rows:minmax(0,auto)}.imagePreviewOnlyBox{aspect-ratio:auto;cursor:zoom-out;width:min(78vw,520px,100dvh - 120px);height:min(78vw,520px,100dvh - 120px);overflow:hidden}.imagePreviewOnlyBox:hover{border-color:#ffffff2e}.imagePreviewOnlyBox .imagePreviewLarge{object-fit:contain;width:100%;max-width:100%;height:100%;max-height:100%}@media (width<=760px){.editImageBlock,.editImageBlock.compact{grid-template-columns:auto 1fr}.editImageActions{justify-content:flex-start}.compactFormGrid label,.dishNameSaveRow label,.ingredientAddRow label{grid-template-columns:132px minmax(0,1fr)}.editImageDropzone .productImage.medium,.editImageBlock.compact .productImage.medium{width:96px;height:96px}}@media (width<=520px){.compactFormGrid label,.dishNameSaveRow label,.ingredientAddRow label{grid-template-columns:1fr;gap:.22rem}}label,label>span,.targetInputInline .targetLabel,.inlineField>span,.authFieldRow>span,.phaseFieldRow>span,.weightInputRow>span,.compactFormGrid label,.dishNameSaveRow label,.ingredientAddRow label,.unitField,.inlineAmount,.infoField,.homeTipsToggleCard>span{font-weight:400!important}.imagePreviewOnlyPanel{place-items:center!important;width:min(92vw,720px)!important;max-width:calc(100vw - 36px)!important;max-height:calc(100dvh - 36px)!important;display:grid!important;overflow:hidden!important}.imagePreviewOnlyBox{aspect-ratio:1!important;box-sizing:border-box!important;place-items:center!important;width:min(82vw,620px,100dvh - 72px)!important;max-width:100%!important;height:min(82vw,620px,100dvh - 72px)!important;max-height:calc(100dvh - 72px)!important;padding:.7rem!important;display:grid!important;overflow:hidden!important}.imagePreviewOnlyBox .imagePreviewLarge{object-fit:contain!important;width:100%!important;min-width:0!important;max-width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;display:block!important}@media (width<=760px){.imagePreviewOnlyPanel{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important}.imagePreviewOnlyBox{width:min(100vw - 44px,100dvh - 60px,430px)!important;height:min(100vw - 44px,100dvh - 60px,430px)!important}}@media (height<=520px){.imagePreviewOnlyBox{width:min(72vw,100dvh - 44px)!important;height:min(72vw,100dvh - 44px)!important}}.unitSuffix,.planAmountEdit .unitSuffix{font-weight:400!important}.shareModalPanel{width:min(440px,100%)}.shareModalHead{align-items:flex-start}.shareDialogActions{gap:.55rem;margin-top:.9rem;display:grid}.shareDialogActions .iconBtn{justify-content:flex-start;width:100%}.statsNavIcon{width:22px;height:22px}.weightTrendAxisLabel,.weightTrendDateLabel{font-variant-numeric:tabular-nums}.weightTrendPointDot{r:5.8px}.weightTrendValuePill rect{fill:#000001DB}@media (width<=560px){.statsNavIcon{width:21px;height:21px}}.targetsGrid{align-items:start}.targetsCardCompact{grid-column:auto}.targetCardHead{align-items:flex-start;gap:1rem}.targetCardHead .iconBtn{flex:none}.compactTargetFields{grid-template-columns:1fr}@media (width>=980px){.compactTargetFields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.targetCardHead{grid-template-columns:1fr;display:grid}.targetCardHead .iconBtn{justify-self:start}}.targetWeightCombinedCard{gap:1rem;display:grid}.combinedPhaseBlock{border-top:1px solid #ffffff14;padding-top:.95rem}.combinedPhaseBlock h3{letter-spacing:.01em;margin:0 0 .7rem;font-size:1rem}.statisticsTrendHead{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.statisticsTrendTopRight{justify-items:end;gap:.55rem;display:grid}.statisticsWeightStatus{text-align:right;background:#0000017A;border:1px solid #ffffff17;border-radius:22px;min-width:142px;padding:.78rem .9rem .72rem;box-shadow:inset 0 0 0 1px #ffffff06}.statisticsWeightStatus strong{color:var(--day-today-text);letter-spacing:-.04em;font-size:clamp(1.65rem,3.2vw,2.55rem);font-weight:700;line-height:.98;display:block}.statisticsWeightStatus span{color:var(--day-today-text);margin-top:.32rem;font-size:1rem;font-weight:700;display:block}.statisticsWeightStatus em{color:var(--text-dim);margin-top:.16rem;font-size:.83rem;font-style:normal;display:block}.statisticsWeightStatus.up span{color:var(--text-main)}.statisticsGoalProjection{background:#ffffff09;border:1px solid #ffffff13;border-radius:18px;margin-top:.85rem;padding:.9rem 1rem}.statisticsGoalProjection .goalWeightText,.statisticsGoalProjection .goalWeightDetail{margin:0}.statisticsGoalProjection .goalWeightDetail{margin-top:.28rem}@media (width<=760px){.statisticsTrendHead{grid-template-columns:1fr}.statisticsTrendTopRight{justify-items:stretch}.statisticsWeightStatus{text-align:left}}.homeStatsIcon .homeStatsBase,.homeStatsIcon .homeStatsBar,.homeStatsIcon .homeStatsBarAccent,.statsNavIcon .statsBase,.statsNavIcon .statsBar,.statsNavIcon .statsBarAccent{stroke-linecap:round;stroke-linejoin:round}.targetCardHead{align-items:flex-start}.targetCardHead .targetSaveBtn{margin-top:0}.targetCardHead p{max-width:none}.compactTargetFields .targetInputRow:first-child .targetValueWrap{grid-template-columns:minmax(5.8rem,1fr) minmax(74px,auto)}.compactTargetFields .targetInputRow:first-child input{min-width:5.8rem}.targetWeightCombinedCard .combinedPhaseBlock h3{color:var(--day-current);letter-spacing:-.02em;font-size:1.36rem;font-weight:700;line-height:1.16}.weightTrendChartWrap{padding-top:1rem;position:relative}.weightTrendChartWrap .statisticsWeightStatus{z-index:2;pointer-events:none;position:absolute;top:.75rem;right:.75rem}.weightTrendProjectionPolyline{fill:none;stroke:#d7dee07a;stroke-width:5.4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:9 9}.weightTrendProjectionPoint circle{fill:#000001B8;stroke:#d7dee0b8;stroke-width:3px}.weightTrendProjectionPoint text{fill:#FFFFFFBD;font-size:12px;font-weight:700}.weightTrendDateLabel.projected{fill:#FFFFFFBD}@media (width<=760px){.weightTrendChartWrap .statisticsWeightStatus{text-align:right;width:fit-content;margin:.1rem .35rem .35rem auto;position:static}}.targetsCardCompact .compactTargetFields,.targetsCardCompact .mergedTargetFields{grid-template-columns:1fr!important}.targetsCardCompact .targetValueWrap{grid-template-columns:minmax(132px,.85fr) minmax(96px,auto)}.targetsCardCompact .targetValueWrap input{min-width:132px}.targetsCardCompact .targetCardHead p{max-width:none}.weightTrendProjectionPoint{cursor:pointer;outline:none}.weightTrendProjectionDot{fill:#000001B8;stroke:#d7dee0c7;stroke-width:3px}.weightTrendProjectionPoint .weightTrendProjectionPill text{fill:#FFFFFF}@media (width<=720px){.targetsCardCompact .targetInputInline{grid-template-columns:1fr;align-items:start}.targetsCardCompact .targetValueWrap{grid-template-columns:minmax(132px,1fr) minmax(90px,auto)}}.favoriteSubTabs button:not(.active),.planHead .actions .iconBtn,.authActions .iconBtn,.authActions .iconBtn:disabled{color:var(--ui-text)!important}.planShareIconOnly{width:38px;min-width:38px;padding-left:.55rem;padding-right:.55rem}.backupLoadButton,.backupLoadButton span{font-weight:700!important}.infoModalHead .iconBtn.danger{color:var(--button-danger-text)!important;border-color:color-mix(in srgb, var(--button-danger-text) 42%, var(--button-border))!important}.searchActionRow input.invalidInput{border-color:#FF3232!important;box-shadow:0 0 0 2px #FF32322E!important}.targetsCardCompact .compactTargetFields .targetInputRow:first-child .targetValueWrap,.targetsCardCompact .targetValueWrap{grid-template-columns:minmax(132px,.85fr) minmax(96px,auto)}.targetsCardCompact .compactTargetFields .targetInputRow:first-child input,.targetsCardCompact .targetValueWrap input{width:100%;min-width:132px}.statisticsTrendCard .weightTrendPolyline{stroke:var(--day-current)}.statisticsTrendCard .weightTrendPointDot{fill:var(--day-current)}.statisticsTrendCard .statisticsWeightStatus strong,.statisticsTrendCard .statisticsWeightStatus span,.statisticsTrendCard .statisticsWeightStatus.up span{color:var(--day-current)}.weightTrendProjectionPoint circle.weightTrendProjectionDot,.weightTrendProjectionDot{fill:#d7dee0d1;stroke:none;stroke-width:0}.weightTrendProjectionPoint:focus-visible .weightTrendProjectionDot,.weightTrendProjectionPoint.active .weightTrendProjectionDot{filter:none}.authActions .iconBtn:disabled{opacity:1;color:#FFFFFF;cursor:not-allowed;filter:none;background:#171c24;border-color:#ffffff2e}.authActions .iconBtn:disabled svg,.authActions .iconBtn:disabled span{color:#FFFFFF;opacity:1}.iconBtn svg,.fileButton svg{backface-visibility:hidden;flex-shrink:0;display:block;transform:translateZ(0)}.iconBtn:hover svg,.fileButton:hover svg,.iconBtn:focus-visible svg,.fileButton:focus-visible svg{transform:translateZ(0)}.targetConfirmRow{justify-content:flex-start;margin:.2rem 0 .6rem;display:flex}.targetConfirmRow .iconBtn,.weightConfirmBtn{width:42px;min-width:42px;padding-left:.55rem;padding-right:.55rem}.weightEntryConfirmRow .weightInputRow{margin:0}.phaseActionRow{justify-content:flex-start;margin-top:.75rem;display:flex}.authCombinedCard .authActions .iconBtn:disabled{background:var(--button-bg,#ffffff14);border-color:var(--button-border,#ffffff29);color:#FFFFFF}.weightTrendProjectionPoint{outline:none!important}.weightTrendProjectionPoint .weightTrendProjectionDot{pointer-events:all}@media (width<=720px){.weightEntryConfirmRow{grid-template-columns:1fr auto}.authCombinedCard .authActions{align-items:stretch}}.targetConfirmRow,.phaseActionRow{justify-content:flex-end}.settingsTabbedCard{padding-top:.85rem}.settingsSubTabs{margin-bottom:1rem}.settingsActionLabel{color:var(--text-muted);margin:.9rem 0 .55rem}.settingsIconActions{gap:.7rem}.settingsIconOnly{color:#FFFFFF;width:44px;min-width:44px;height:40px;padding:.45rem}.fileButton.settingsIconOnly{cursor:pointer}.fileButton.settingsIconOnly input{display:none}.weightTrendValuePill .weightTrendPillWeight{font-size:12px;font-weight:700}.weightTrendValuePill .weightTrendPillDate{opacity:.78;font-size:9px;font-weight:700}@media (width<=720px){.settingsSubTabs{width:100%}}.settingsTabbedCard{min-height:460px}.settingsTabPanel{min-height:360px}.settingsInnerCard{background:#ffffff09;border:1px solid #ffffff1a;border-radius:18px;min-height:300px;padding:1rem}.settingsInfoText{gap:.85rem;display:grid}.settingsInfoText p{margin:0;line-height:1.45}.uploadBackupButton{color:#FFFFFF!important;opacity:1!important;background:#222832!important;border:1px solid #2d3541!important}.uploadBackupButton:hover{background:#2a313c!important}.cloudBackupButton svg{width:26px;height:26px}.uploadBackupButton svg{width:22px;height:22px}.settingsInfoCard .cardHead{align-items:flex-start}.settingsInfoCard .cardHead .iconBtn{margin-left:auto}@media (width<=720px){.settingsTabbedCard,.settingsTabPanel,.settingsInnerCard{min-height:auto}}.settingsTabbedCard,.settingsTabPanel,.settingsInnerCard{min-height:0!important}.settingsTabPanel{padding-top:.2rem}.settingsInnerCard{height:auto}.settingsIconActions{align-items:center}.settingsIconOnly,.fileButton.settingsIconOnly,.uploadBackupButton,.cloudBackupButton{color:#FFFFFF!important;opacity:1!important;box-sizing:border-box!important;vertical-align:middle!important;background:#222832!important;border:1px solid #2d3541!important;border-radius:12px!important;justify-content:center!important;align-items:center!important;width:44px!important;min-width:44px!important;height:40px!important;padding:.45rem!important;line-height:1!important;display:inline-flex!important}.settingsIconOnly:hover,.fileButton.settingsIconOnly:hover,.uploadBackupButton:hover,.cloudBackupButton:hover{background:#2a313c!important;border-color:#394353!important}.settingsIconOnly svg,.fileButton.settingsIconOnly svg,.uploadBackupButton svg,.cloudBackupButton svg{flex:none;display:block;transform:translateZ(0)}.settingsSubTabs button,.favoriteSubTabs button{transform:translateZ(0)}.settingsSubTabs button svg,.favoriteSubTabs button svg,.iconBtn svg{transform-origin:50%;backface-visibility:hidden}.authCombinedCard .authActions .iconBtn:disabled{color:#FFFFFF!important;opacity:1!important;filter:none!important;background:#222832!important;border-color:#2d3541!important}.authCombinedCard .authActions .iconBtn:disabled svg{color:#FFFFFF!important}.tabs button.plannerNavBtn.active.dateActive.today,.tabs button.plannerNavBtn.active.dateActive.past,.tabs button.plannerNavBtn.active.dateActive.future{color:#FFFFFF;background:#1a2029;border-color:#2d3541}.tabs button.plannerNavBtn.active.dateActive.today svg,.tabs button.plannerNavBtn.active.dateActive.past svg,.tabs button.plannerNavBtn.active.dateActive.future svg{color:#FFFFFF;stroke:currentColor}.authFieldRow input::placeholder{color:#aeb8c4c7;opacity:1}.weightAndHeightFields{gap:.65rem;min-width:0;display:grid}.weightEntryConfirmRow{align-items:end}@media (width>=760px){.weightAndHeightFields{grid-template-columns:repeat(2,minmax(0,1fr))}}.weightEntryConfirmRow{grid-template-columns:1fr!important;align-items:stretch!important;gap:.7rem!important;display:grid!important}.weightAndHeightFields{grid-template-columns:1fr!important}.weightConfirmRow{justify-content:flex-end;display:flex}.weightEntryConfirmRow .weightConfirmBtn{align-self:auto}.targetsCardCompact .targetValueWrap,.targetsCardCompact .compactTargetFields .targetInputRow:first-child .targetValueWrap{width:100%;min-width:0;grid-template-columns:5.8rem minmax(0,1fr)!important}.targetsCardCompact .targetValueWrap input,.targetsCardCompact .compactTargetFields .targetInputRow:first-child input{width:5.8rem!important;min-width:0!important;max-width:5.8rem!important}.targetsCardCompact .targetValueWrap span{min-width:0;overflow:visible}.statisticsWeightStatus{gap:.15rem;display:grid}.statisticsWeightStatus strong,.statisticsWeightStatus span{margin-top:0}.statisticsWeightStatus em{margin-top:.18rem}.bmiCard{align-self:stretch}.bmiContent{gap:.35rem;display:grid}.bmiIntro,.bmiStatus{margin:0}.bmiIntro{color:var(--text-dim);font-size:.92rem}.bmiValue{letter-spacing:-.055em;margin-top:.05rem;font-size:clamp(2.7rem,7vw,4.5rem);font-weight:700;line-height:.95;display:block}.bmiValue.recommended{color:var(--day-current)}.bmiValue.under{color:#e5c65b}.bmiValue.over{color:#FF3232}.bmiStatus{font-weight:700}.bmiStatus.recommended{color:var(--day-current)}.bmiStatus.under{color:#e5c65b}.bmiStatus.over{color:#FF3232}.bmiScaleWrap{margin-top:.8rem}.bmiScale{border-radius:999px;grid-template-columns:14fr 26fr 60fr;height:16px;display:grid;position:relative;overflow:visible;box-shadow:inset 0 0 0 1px #ffffff1f}.bmiRange{min-width:0}.bmiRange.under{background:#e5c65b;border-radius:999px 0 0 999px}.bmiRange.recommended{background:var(--day-current)}.bmiRange.over{background:#FF3232;border-radius:0 999px 999px 0}.bmiMarker{background:#FFFFFF;border-radius:999px;width:5px;height:25px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #000001A6}.bmiScaleLabels{color:var(--text-dim);grid-template-columns:14fr 26fr 60fr;margin-top:.38rem;font-size:.72rem;display:grid}.bmiScaleLabels span:first-child{text-align:left}.bmiScaleLabels span:nth-child(2){text-align:center}.bmiScaleLabels span:nth-child(3){text-align:right}@media (width<=720px){.targetsCardCompact .targetValueWrap,.targetsCardCompact .compactTargetFields .targetInputRow:first-child .targetValueWrap{grid-template-columns:5.8rem minmax(0,1fr)!important}}.targetsCardCompact .targetInputInline{grid-template-columns:minmax(180px,1fr) auto!important}.targetsCardCompact .targetValueWrap,.targetsCardCompact .compactTargetFields .targetInputRow:first-child .targetValueWrap{grid-template-columns:5.8rem 5.8rem!important;justify-content:end!important;justify-self:end!important;width:max-content!important}.targetsCardCompact .targetValueWrap input,.targetsCardCompact .compactTargetFields .targetInputRow:first-child input,.targetsCardCompact .targetValueWrap span{box-sizing:border-box;text-align:right!important;width:5.8rem!important;min-width:5.8rem!important;max-width:5.8rem!important}.orientationFootnote{color:var(--ui-muted);font-size:.78rem;line-height:1.35;margin-top:.28rem!important}.statisticsWeightStatus .statisticsStatusLabel{margin-bottom:0}.statisticsWeightStatus .statisticsStatusDate{margin-top:-.08rem}.bmiContent{text-align:center;justify-items:center}.bmiDonutWrap{aspect-ratio:1;place-items:center;width:min(220px,72vw);margin-top:.25rem;display:grid;position:relative}.bmiDonut{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.bmiDonutTrack,.bmiDonutSegment{fill:none;stroke-width:11px}.bmiDonutTrack{stroke:#ffffff14}.bmiDonutSegment{stroke-linecap:round}.bmiDonutSegment.over{stroke:#FF3232}.bmiDonutMarker{stroke:#050807eb;stroke-width:3.1px;vector-effect:non-scaling-stroke}.bmiDonutMarker.over{fill:#FF3232}.bmiDonutCenter{align-content:center;justify-items:center;gap:.18rem;line-height:1;display:grid;position:absolute;inset:22%}.bmiDonutCenter span{color:var(--ui-muted);font-size:.8rem;line-height:1.2}.bmiDonutCenter .bmiValue{margin:0;font-size:clamp(2.45rem,8vw,4rem)}.bmiStatus{margin-top:.15rem}.bmiDonutLegend{width:min(280px,100%);color:var(--ui-muted);grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin-top:.45rem;font-size:.72rem;display:grid}.bmiDonutLegend span{justify-content:center;align-items:center;gap:.28rem;display:inline-flex}.bmiDonutLegend span:before{content:"";border-radius:50%;flex:none;width:.55rem;height:.55rem}.bmiDonutLegend .over:before{background:#FF3232}@media (width<=720px){.targetsCardCompact .targetInputInline{grid-template-columns:1fr!important}.targetsCardCompact .targetValueWrap,.targetsCardCompact .compactTargetFields .targetInputRow:first-child .targetValueWrap{justify-self:end!important}}.targetsCardCompact .targetInputInline{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;column-gap:.7rem!important;width:100%!important;min-width:0!important;display:grid!important}.targetsCardCompact .targetValueWrap,.targetsCardCompact .compactTargetFields .targetInputRow:first-child .targetValueWrap{--target-number-box:clamp(6.4rem, 15vw, 7.2rem);grid-template-columns:repeat(2, var(--target-number-box))!important;justify-self:end!important;gap:.55rem!important;width:auto!important;min-width:0!important;max-width:100%!important;display:grid!important}.targetsCardCompact .targetValueWrap input,.targetsCardCompact .compactTargetFields .targetInputRow:first-child input,.targetsCardCompact .targetValueWrap span{width:var(--target-number-box)!important;box-sizing:border-box!important;text-align:right!important;min-width:0!important;max-width:none!important;overflow:hidden!important}.targetsCardCompact .targetValueWrap span{text-overflow:clip;padding-left:.5rem!important;padding-right:.5rem!important}@media (width<=520px){.targetsCardCompact .targetInputInline{grid-template-columns:minmax(0,1fr) auto!important}.targetsCardCompact .targetValueWrap,.targetsCardCompact .compactTargetFields .targetInputRow:first-child .targetValueWrap{--target-number-box:6.4rem}.targetsCardCompact .targetLabel{line-height:1.12;white-space:normal!important}}.bmiDonutTrack,.bmiDonutSegment{stroke-width:9px!important}.workHeader .tabs button:not(.plannerNavBtn) svg{transition:color .16s,filter .16s}.workHeader .tabs button:not(.plannerNavBtn):hover svg,.workHeader .tabs button:not(.plannerNavBtn):focus-visible svg{color:color-mix(in srgb, currentColor 76%, #fff 24%);filter:brightness(1.08)}.workHeader .tabs .plannerNavBtn:hover svg,.workHeader .tabs .plannerNavBtn:focus-visible svg{color:inherit;filter:none}.favoriteCard .magicBtn,.favoriteCard .magicBtn:hover,.favoriteCard:hover .magicBtn{filter:none!important;transform:none!important}.favoriteCard .magicBtn>svg{backface-visibility:hidden;flex:0 0 18px!important;width:18px!important;min-width:18px!important;height:18px!important;transition:color .18s!important;transform:none!important}.bmiDonut{transform:none!important}.bmiDonutTrack{display:none!important}.noticeModalPanel{text-align:left;width:min(390px,100vw - 32px)}.noticeModalPanel h2{margin-bottom:.45rem}.searchActionRow .iconBtn,.resultActions .iconBtn[aria-label="In Lebensmittel speichern"]{width:42px;min-width:42px;padding-left:.55rem;padding-right:.55rem}.favoriteCard .actions.planActions .magicBtn,.favoriteCard .actions.planActions .plannerIconOnly{box-sizing:border-box;aspect-ratio:1;backface-visibility:hidden;flex:0 0 40px;gap:0;max-width:40px;max-height:40px;filter:none!important;border-radius:50%!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;transform:translateZ(0)!important}.favoriteCard .actions.planActions .magicBtn:after{border-radius:50%!important}.favoriteCard .actions.planActions .magicBtn>svg,.favoriteCard .actions.planActions .plannerIconOnly>svg{backface-visibility:hidden;transform:translateZ(0)!important}.imageRoundBtn,.editorSaveBtn{backface-visibility:hidden;transition:background-color .16s,border-color .16s,color .16s;transform:translateZ(0);filter:none!important}.imageRoundBtn:hover,.imageRoundBtn:focus-visible,.editorSaveBtn:hover,.editorSaveBtn:focus-visible{background-color:color-mix(in srgb, var(--button-active-bg) 76%, white 24%);border-color:color-mix(in srgb, var(--button-border) 60%, white 40%);color:#fff;transform:translateZ(0);filter:none!important}.editorSaveBtn{box-sizing:border-box;aspect-ratio:1;flex:0 0 40px;gap:0;max-width:40px;max-height:40px;border-radius:50%!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}.ingredientConfirm{box-sizing:border-box;aspect-ratio:1;background:color-mix(in srgb, var(--button-active-bg) 70%, white 30%);border-color:color-mix(in srgb, var(--button-border) 64%, white 36%);gap:0;max-width:40px;max-height:40px;transition:background-color .16s,border-color .16s,color .16s;transform:translateZ(0);filter:none!important;border-radius:50%!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}.ingredientConfirm:hover,.ingredientConfirm:focus-visible{background:color-mix(in srgb, var(--button-active-bg) 60%, white 40%);border-color:color-mix(in srgb, var(--button-border) 52%, white 48%);color:#fff;transform:translateZ(0);filter:none!important}.workHeader .tabs button[aria-label=Tagesjournal] svg,.workHeader .tabs button[aria-label=Planer] svg,.workHeader .tabs button[aria-label=Erfolge] svg,.workHeader .tabs button[aria-label=Einstellungen] svg{backface-visibility:hidden;shape-rendering:geometricprecision;filter:none!important;transition:color .16s!important;transform:translateZ(0)!important}.workHeader .tabs button[aria-label=Tagesjournal]:hover svg,.workHeader .tabs button[aria-label=Tagesjournal]:focus-visible svg,.workHeader .tabs button[aria-label=Erfolge]:hover svg,.workHeader .tabs button[aria-label=Erfolge]:focus-visible svg,.workHeader .tabs button[aria-label=Einstellungen]:hover svg,.workHeader .tabs button[aria-label=Einstellungen]:focus-visible svg{color:color-mix(in srgb, currentColor 76%, #fff 24%);filter:none!important;transform:translateZ(0)!important}.workHeader .tabs button[aria-label=Planer]:hover svg,.workHeader .tabs button[aria-label=Planer]:focus-visible svg{color:inherit;filter:none!important;transform:translateZ(0)!important}.weightTrendProjectionNote{color:var(--ui-muted);margin:.62rem .15rem 0;font-size:.86rem;line-height:1.35}.settingsOpenItems{margin-top:.2rem}.settingsOpenItems p{margin:.42rem 0 .16rem}.settingsOpenItems ul{color:var(--ui-muted);margin:.12rem 0 .55rem 1.15rem;padding:0}.settingsOpenItems li+li{margin-top:.18rem}.favoriteCard .actions.planActions .iconBtn,.dialogEditorActions .iconBtn.danger,.dishNameActions .iconBtn.danger{box-sizing:border-box;aspect-ratio:1;flex:0 0 40px;gap:0;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.ingredientConfirm:not(.successFlash){background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%)!important;border-color:var(--button-border-soft)!important;color:var(--button-text)!important;filter:none!important}.ingredientConfirm:not(.successFlash):hover,.ingredientConfirm:not(.successFlash):focus-visible{background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%)!important;border-color:var(--button-border-soft)!important;color:var(--button-text)!important;filter:var(--button-hover-filter)!important}.planRestBlock>h3{margin-bottom:1rem}:root{--bmi-recommended-green:#5ce08a;--bmi-under-blue:#00a7eb}.bmiDonutSegment.under{stroke:var(--bmi-under-blue)!important}.bmiDonutSegment.recommended{stroke:var(--bmi-recommended-green)!important}.bmiDonutMarker.under{fill:var(--bmi-under-blue)!important}.bmiDonutMarker.recommended{fill:var(--bmi-recommended-green)!important}.bmiDonutLegend .under:before{background:var(--bmi-under-blue)!important}.bmiDonutLegend .recommended:before{background:var(--bmi-recommended-green)!important}.bmiStatus.under,.bmiValue.under{color:var(--bmi-under-blue)!important}.bmiStatus.recommended,.bmiValue.recommended{color:var(--bmi-recommended-green)!important}.buttonTooltipOverlay{z-index:10000;box-sizing:border-box;color:#FFFFFF;white-space:normal;text-align:center;pointer-events:none;background:#111820;border:1px solid #3a4655;border-radius:8px;width:max-content;max-width:min(220px,100vw - 24px);padding:.42rem .58rem;font-size:.74rem;font-weight:700;line-height:1.25;position:fixed;box-shadow:0 6px 18px #00000152}.buttonTooltipOverlay.above{transform:translate(-50%,calc(-100% - 8px))}.buttonTooltipOverlay.below{transform:translate(-50%,8px)}.favoriteCard .actions.planActions .magicBtn:before{inset:0;border-radius:50%!important}.favoriteCard .actions.planActions .magicBtn:after{background:var(--button-active-bg);inset:3px;border-radius:50%!important}.planShareIconOnly{box-sizing:border-box;flex:0 0 40px;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.planLine .iconBtn,.planLine button.iconBtn,.targetConfirmRow .iconBtn,.weightConfirmBtn{box-sizing:border-box;flex:0 0 40px;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.settingsIconOnly,.fileButton.settingsIconOnly,.uploadBackupButton,.cloudBackupButton{flex:0 0 40px;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}@media (width<=760px){.planLine{grid-template-columns:minmax(0,1fr) 98px repeat(3,40px)!important}}@media (width<=380px){.planLine{grid-template-columns:minmax(0,1fr) 80px repeat(3,40px)!important}}.calendarHeader button{box-sizing:border-box;width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;max-height:36px;padding:0}.searchActionRow .iconBtn,.resultActions .iconBtn[aria-label="In Lebensmittel speichern"]{box-sizing:border-box;flex:0 0 40px;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.dishEditorPanel .editImageBlock.compact .imageRoundBtn{box-sizing:border-box;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.journalEntryLine .iconBtn.ghost.danger{flex:0 0 40px;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.journalEntryLine .iconBtn.ghost.danger svg{flex-basis:18px;width:18px;height:18px}.savedPhaseOverview{border-top:1px solid #ffffff14;margin-top:.8rem;padding-top:.72rem}.savedPhaseToggle{width:100%;color:var(--ui-text);text-align:left;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.2rem 0;font-weight:700;display:flex}.savedPhaseToggle:hover,.savedPhaseToggle:focus-visible{color:var(--day-current);filter:none}.savedPhaseChevron{color:var(--ui-muted);font-size:1.3rem;line-height:1;transition:transform .16s;display:inline-block;transform:rotate(0)}.savedPhaseToggle.open .savedPhaseChevron{transform:rotate(90deg)}.savedPhaseList{gap:.45rem;margin-top:.55rem;display:grid}.savedPhaseRow{background:#10151c;border:1px solid #28313d;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.55rem .65rem;display:grid}.savedPhaseText{gap:.12rem;min-width:0;display:grid}.savedPhaseText strong{color:var(--ui-text)}.savedPhaseText span{color:var(--ui-muted);font-size:.82rem;line-height:1.3}.phaseOverviewDeleteBtn{box-sizing:border-box;flex:0 0 40px;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.editDialogActions{justify-content:flex-end}.phaseActionRow .phaseAddBtn{box-sizing:border-box;flex:0 0 40px;gap:0;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.phaseDeleteModalActions .iconBtn{box-sizing:border-box;flex:0 0 40px;gap:0;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.phaseModalActions{justify-content:flex-end}.phaseModalActions .iconBtn{box-sizing:border-box;flex:0 0 40px;gap:0;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.phaseDeleteModalActions{justify-content:flex-end}.restrictionNotice{color:var(--ui-muted);background:#ffffff09;border:1px solid #ffffff1f;border-radius:13px;align-items:flex-start;gap:.5rem;margin:.7rem 0;padding:.62rem .72rem;font-size:.86rem;line-height:1.35;display:flex}.restrictionNotice svg{width:18px;height:18px;color:var(--day-current,var(--ui-muted));flex:0 0 18px;margin-top:.03rem}.restrictionNotice span{min-width:0}.planRestrictionNotice{margin-top:.55rem;margin-bottom:.55rem}input:disabled,select:disabled{opacity:.52;cursor:not-allowed;box-shadow:none}@media (orientation:landscape) and (width>=560px){.homeNav{grid-template-columns:repeat(3, var(--home-tile-size))}}.planRestBlock.stickyPlanRest{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background-clip:padding-box;overflow:hidden}@media (orientation:landscape) and (height<=500px){.homeApp{align-items:start;padding-top:4px}.homeScreen{gap:.3rem;width:min(660px,100%)}.homeHero{padding:0}.homeLogoImage{width:min(69.7px,15.3vh);margin:0 auto .05rem}.homeHero h2{margin:0;font-size:.9rem;line-height:1.05}.homeNav{--home-tile-size:min(88px, 23vh);grid-template-columns:repeat(3, var(--home-tile-size));gap:.34rem}.homeNavItem>button,.homeNav button{width:var(--home-tile-size);height:var(--home-tile-size);border-radius:18px;gap:.12rem;padding:.28rem .3rem .32rem}.homeNav button .homeTileIcon{width:min(50px,13vh);height:min(50px,13vh);margin:0}.homeNav button span{margin:0;font-size:.68rem;line-height:1}.homeNav .homePlannerBtn:after{border-radius:16px}.homeTipsToggleCard{transform-origin:top;gap:.5rem;margin:.04rem auto 0;transform:scale(.88)}}.homeUtilityBar{justify-content:center;align-items:center;gap:.7rem;width:fit-content;max-width:100%;margin:.48rem auto 0;display:flex}.homeUtilityBar .homeTipsToggleCard{margin:0}.homeTourPill{min-height:40px;color:var(--ui-text);font:inherit;white-space:nowrap;box-shadow:none;background:#ffffff14;border:1px solid #ffffff38;border-radius:999px;padding:.48rem 1rem;font-weight:700;line-height:1}.homeTourPill:hover,.homeTourPill:focus-visible{background:#5ce08a1f;border-color:#5ce08a94}@media (orientation:landscape) and (height<=500px) and (width<=950px){.homeApp{align-items:start;padding:4px 8px 6px}.homeScreen{gap:.28rem;width:min(940px,100%)}.homeHero{padding:0}.homeLogoImage{width:min(112.2px,25.5vh);margin:0 auto .02rem}.homeHero h2{margin:0;font-size:.92rem;line-height:1.05}.homeNav{--home-tile-size:clamp(82px, 13vw, 104px);grid-template-columns:repeat(6, var(--home-tile-size));gap:.28rem}.homeNavItem>button,.homeNav button{width:var(--home-tile-size);height:var(--home-tile-size);border-radius:18px;gap:.12rem;padding:.3rem .22rem .34rem}.homeNav button .homeTileIcon{width:clamp(48px,8.2vw,62px);height:clamp(48px,8.2vw,62px);margin:0}.homeNav button span{margin:0;font-size:clamp(.62rem,1.55vw,.72rem);line-height:1}.homeNav .homePlannerBtn:after{border-radius:16px}.homeUtilityBar{transform-origin:top;gap:.5rem;margin:.05rem auto 0;transform:scale(.88)}.homeTipsToggleCard{transform:none}}.favoriteFoodEditor{position:relative}.favoriteFoodEditor .favoriteEditorCloseBtn{box-sizing:border-box;color:var(--button-danger-text);border-color:color-mix(in srgb, var(--button-danger-text) 42%, var(--button-border));z-index:3;position:absolute;top:.9rem;right:.9rem;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.favoriteFoodEditor .editImageBlock{grid-template-columns:minmax(0,240px) auto minmax(0,1fr);align-items:center}.favoriteFoodEditor .editImageDropzone,.favoriteFoodEditor .editImageDropzone .productImage.medium{width:240px;max-width:100%;height:240px}.productImage.placeholderGraphic{background:#b8bec5}@media (width<=760px){.favoriteFoodEditor>h3{padding-right:3.35rem}.favoriteFoodEditor .editImageBlock{grid-template-columns:minmax(0,240px) auto}.favoriteFoodEditor .editImageDropzone,.favoriteFoodEditor .editImageDropzone .productImage.medium{width:min(240px,100vw - 110px);height:min(240px,100vw - 110px)}}@media (width<=420px){.favoriteFoodEditor .editImageBlock{grid-template-columns:1fr;justify-items:center}.favoriteFoodEditor .editImageDropzone,.favoriteFoodEditor .editImageDropzone .productImage.medium{width:min(240px,100vw - 84px);height:min(240px,100vw - 84px)}.favoriteFoodEditor .editImageActions{justify-content:center}}.favoriteFoodEditor .editDialogActions{justify-content:flex-end;width:100%}.favoriteCard .actions.planActions.selectionOnlyAction{grid-template-columns:none;justify-content:flex-end;align-items:center;display:flex}.plannerMobileTabs,.plannerMobileChoiceBtn{display:none}.planLine{grid-template-columns:minmax(0,1fr) 106px repeat(4,40px)!important}.planLine .planMagicBtn{isolation:isolate;background:var(--button-active-bg);color:var(--ui-text);backface-visibility:hidden;border-color:#ffffff38;position:relative;overflow:hidden;transform:translateZ(0)}.planLine .planMagicBtn>svg,.planLine .planMagicBtn>span{z-index:2;position:relative}.planLine .planMagicBtn:before{content:"";opacity:0;z-index:0;pointer-events:none;background:linear-gradient(45deg,red,#ff7300,#fffb00,#48ff00,#00ffd5,#002bff,#7a00ff,#ff00c8,red) 0 0/400%;border-radius:50%;transition:opacity .22s ease-in-out;animation:20s linear infinite magicRainbowGlow;position:absolute;inset:0}.planLine .planMagicBtn:after{content:"";background:var(--button-active-bg);z-index:1;pointer-events:none;border-radius:50%;position:absolute;inset:3px}.planLine:hover .planMagicBtn:not(:disabled):before,.planLine .planMagicBtn:not(:disabled):hover:before{opacity:1}.planLine .planMagicBtn.successFlash:before,.planLine .planMagicBtn.successFlash:after{display:none}@media (width<=600px),(orientation:landscape) and (height<=500px){.plannerMobileTabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin-top:.85rem;display:grid}.plannerMobileTabs button{border:1px solid var(--button-border-soft);background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%);min-height:40px;color:var(--ui-text);border-radius:999px;justify-content:center;align-items:center;gap:.42rem;padding:.48rem .7rem;font-weight:700;display:inline-flex}.plannerMobileTabs button.active{background:var(--day-current-strong,var(--day-today));border-color:var(--day-current-strong,var(--day-today));color:#06140d}.plannerTabBadge{color:#fff;background:#101318;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 .36rem;font-size:.74rem;line-height:1;display:inline-grid}.plannerMobilePaneHidden{display:none!important}.plannerMobileChoiceBtn{border:1px solid var(--button-border-soft);background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%);min-height:40px;color:var(--ui-text);border-radius:999px;justify-content:center;align-items:center;margin-top:.65rem;padding:.48rem .82rem;font-weight:700}.plannerEmptyState .plannerMobileChoiceBtn,.plannerMoreChoiceBtn{display:inline-flex}.plannerMoreChoiceBtn{margin-left:auto}.planLine{gap:.42rem;grid-template-columns:minmax(0,1fr) repeat(4,40px)!important}.planLine .planName{white-space:normal;text-overflow:clip;grid-column:1/-1;overflow:visible}.planAmountEdit{justify-self:start;width:106px!important;max-width:106px!important}.plannerMoreChoiceBtn{width:max-content;margin-left:auto;display:flex}}.dishTabLabelPhone{display:none}@media (width<=600px),(orientation:landscape) and (height<=500px){.dishTabLabelDesktop{display:none}.dishTabLabelPhone{display:inline}.plannerMerklistePane .donutOverview.compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:.18rem}.plannerMerklistePane .donutOverview.compact .donutMeter{gap:.24rem}.plannerMerklistePane .donutOverview.compact .donutMeter .donutRing{width:56px;height:56px}.plannerMerklistePane .donutOverview.compact .donutMeter .donutRing:after{inset:6px}.plannerMerklistePane .donutOverview.compact .donutCenter strong{font-size:.7rem}.plannerMerklistePane .donutOverview.compact .donutRest{min-height:0;font-size:.69rem;line-height:1.08}}.plannerListTabLabelPhone,.planTitlePhone,.planContentClosed{display:none}.favoriteCard .topMeta{margin-bottom:.08rem}.favoriteCard .topMeta+.macroInline{margin-top:.08rem}@media (width<=600px),(orientation:landscape) and (height<=500px){.plannerListTabLabelDesktop{display:none}.plannerListTabLabelPhone{display:inline}.plannerMerklistePane .planToggleDesktop{display:none}.plannerMerklistePane .planTitlePhone{color:var(--day-current);margin:0;padding:.12rem 0;display:block}.plannerMerklistePane .planContentClosed{display:block}}@media (width<=600px) and (orientation:portrait){.favoriteCard .selectionNutrition .nutritionPrefix,.favoriteCard .selectionNutrition .nutritionValues{display:block}.favoriteCard .selectionNutrition .nutritionValues{margin-top:.08rem}}.editModalShell{padding-top:4.35rem;position:relative}.editModalShell .modalTopCloseBtn{box-sizing:border-box;color:var(--button-danger-text);border-color:color-mix(in srgb, var(--button-danger-text) 42%, var(--button-border));z-index:4;position:absolute;top:.75rem;right:.75rem;border-radius:50%!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.favoriteFoodEditor>h3{padding-right:0}.favoriteFoodEditor .editDialogActions,.dishEditDialog .dishNameActions{justify-content:flex-end;width:100%}@media (width<=760px){.editModalShell{padding-top:4rem}.editModalShell .modalTopCloseBtn{top:.55rem;right:.55rem}.favoriteFoodEditor>h3{padding-right:0}}.magicFocusField{background:#ffffff06;border:1px solid #ffffff1c;border-radius:14px;margin:.85rem 0 .2rem;padding:.8rem .9rem}.magicFocusField legend{color:var(--ui-text);padding:0 .25rem;font-weight:700}.magicFocusOptions{flex-wrap:wrap;gap:.55rem;display:flex}.magicFocusOptions label{border:1px solid var(--button-border-soft);background:var(--button-active-bg);min-height:40px;color:var(--ui-text);cursor:pointer;border-radius:999px;align-items:center;gap:.42rem;padding:.42rem .75rem;font-weight:700;display:inline-flex}.magicFocusOptions input{width:18px;height:18px;accent-color:var(--day-today)}.magicFocusOptions .focusOptionDisabled{opacity:.48;cursor:not-allowed}.magicFocusField p{color:var(--ui-muted);margin:.55rem 0 0;font-size:.85rem}.planHead .compactActions{align-items:center}.magicMasterBtn{isolation:isolate;position:relative;overflow:hidden;border-color:#ffffff40!important}.magicMasterBtn>svg,.magicMasterBtn>span{z-index:2;position:relative}.magicMasterBtn:before{content:"";border-radius:inherit;opacity:0;z-index:0;pointer-events:none;background:linear-gradient(45deg,red,#ff7300,#fffb00,#48ff00,#00ffd5,#002bff,#7a00ff,#ff00c8,red) 0 0/400%;transition:opacity .22s ease-in-out;animation:20s linear infinite magicRainbowGlow;position:absolute;inset:0}.magicMasterBtn:after{content:"";border-radius:inherit;background:var(--button-active-bg);z-index:1;pointer-events:none;position:absolute;inset:3px}.magicMasterBtn:not(:disabled):hover:before{opacity:1}.magicMasterBtn.successFlash:before,.magicMasterBtn.successFlash:after{display:none}.planLine .planLockBtn.locked{border-color:color-mix(in srgb, var(--day-past-text) 58%, var(--button-border));background:color-mix(in srgb, var(--day-past-text) 16%, var(--button-active-bg));color:var(--day-past-text)}.planLine .planLockBtn:disabled{opacity:.38}.magicColdStartPanel{width:min(620px,100vw - 28px);max-height:min(82vh,760px);overflow:auto}.magicColdStartHead{align-items:flex-start}.magicColdStartHead h2{margin-bottom:.25rem}.magicColdStartHead p{margin:0}.magicColdStartRows{gap:.55rem;margin-top:.9rem;display:grid}.magicColdStartRow{background:#ffffff06;border:1px solid #ffffff17;border-radius:12px;grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:.75rem;padding:.55rem .65rem;display:grid}.magicColdStartRow>span{overflow-wrap:anywhere;min-width:0;font-weight:700}.magicColdStartRow .unitInputWrap{width:130px}@media (width<=760px){.planHead .compactActions{grid-template-columns:repeat(3,minmax(0,auto))}.magicColdStartRow{grid-template-columns:1fr;gap:.35rem}.magicColdStartRow .unitInputWrap{width:min(160px,100%)}}.noticeDialogDetail{color:var(--ui-text);margin-top:.2rem}.planAmountGroup{align-items:center;gap:.38rem;min-width:0;height:34px;display:flex}.planAmountGroup .nutritionSignal{pointer-events:none;flex:0 0 7px;grid-template-rows:repeat(4,7px);align-content:center;gap:2px;width:7px;height:34px;display:grid;position:static}.planAmountGroup .nutritionSignalSegment{background:0 0;border-radius:50%;width:7px;height:7px;min-height:7px}.planAmountGroup .nutritionSignalSegment.active{box-shadow:0 0 0 1px #ffffff29}.planAmountGroup .planAmountEdit{flex:none}@media (width<=600px),(orientation:landscape) and (height<=500px){.planAmountGroup{justify-self:start}}@media (width>=761px){.planLine{grid-template-columns:minmax(0,1fr) 120px 36px 36px 36px}}@media (width>=601px) and (width<=760px){.planLine{grid-template-columns:minmax(0,1fr) 112px 34px 34px 34px!important}}@media (hover:none),(pointer:coarse){.app{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.app input,.app textarea,.app select,.app [contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}}.reminderPlaceholderCard{opacity:.72}.reminderPlaceholderControls{gap:.75rem;margin-top:.85rem;display:grid}.reminderToggleRow,.reminderTimeRow{justify-content:space-between;align-items:center;gap:1rem;min-height:40px;display:flex}.reminderToggleRow>span,.reminderTimeRow>span{color:var(--ui-text);font-weight:700}.reminderDisabledSwitch,.reminderDisabledSwitch:disabled{opacity:.48;cursor:not-allowed}.reminderTimeRow input{flex:0 0 128px;width:128px}.reminderPlaceholderNote{margin:.85rem 0 0;font-size:.88rem}.goalFidelityCard{flex-direction:column;align-items:stretch;display:flex}.goalFidelityGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem;margin-top:.72rem;display:grid}.goalFidelityMetric{--goal-fidelity-color:var(--ui-text);border:1px solid color-mix(in srgb, var(--goal-fidelity-color) 24%, transparent);background:color-mix(in srgb, var(--goal-fidelity-color) 9%, #ffffff05);text-align:center;border-radius:16px;align-content:center;justify-items:center;gap:.62rem;min-width:0;min-height:136px;padding:.85rem .55rem .78rem;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff09}.goalFidelityMetric.nutrient-kcal{--goal-fidelity-color:var(--nutrient-kcal)}.goalFidelityMetric.nutrient-fat{--goal-fidelity-color:var(--nutrient-fat)}.goalFidelityMetric.nutrient-carbs{--goal-fidelity-color:var(--nutrient-carbs)}.goalFidelityMetric.nutrient-protein{--goal-fidelity-color:var(--nutrient-protein)}.goalFidelityMetricValue{min-width:0;color:var(--goal-fidelity-color);white-space:nowrap;text-shadow:0 0 18px color-mix(in srgb, var(--goal-fidelity-color) 16%, transparent);justify-content:center;align-items:baseline;line-height:.92;display:inline-flex}.goalFidelityMetricValue strong{letter-spacing:-.055em;font-variant-numeric:tabular-nums;font-size:clamp(2.45rem,8vw,4rem);font-weight:700}.goalFidelityMetricValue>span{color:var(--ui-text);letter-spacing:-.03em;text-shadow:none;margin-left:.08em;font-size:clamp(1.1rem,3.2vw,1.75rem);font-weight:700}.goalFidelityMetricLabel{color:var(--ui-text);white-space:nowrap;font-size:.84rem;font-weight:700;line-height:1.15}.goalFidelityLabelShort{display:none}.goalFidelityMeta{color:var(--ui-muted);margin:.72rem 0 0;font-size:.84rem;line-height:1.3}@media (width<=360px){.goalFidelityLabelLong{display:none}.goalFidelityLabelShort{display:inline}}@media (width<=560px){.reminderToggleRow,.reminderTimeRow{gap:.65rem}.reminderTimeRow input{flex-basis:116px;width:116px}}.bodyCompositionField{grid-template-columns:minmax(132px,auto) minmax(0,1fr);align-items:start;gap:.55rem;margin-top:.75rem;display:grid}.bodyCompositionField>label{color:var(--ui-muted);white-space:nowrap;padding-top:.65rem;font-weight:700}.bodyCompositionInputArea{gap:.3rem;min-width:0;display:grid}.bodyCompositionControl{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:.45rem;min-width:0;display:grid}.bodyCompositionControl input{min-width:0}.bodyCompositionUnitToggle{border:1px solid var(--button-border);background:var(--button-bg);border-radius:12px;grid-template-columns:repeat(2,42px);display:inline-grid;overflow:hidden}.bodyCompositionUnitToggle button{min-width:0;min-height:40px;color:var(--ui-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;padding:0;font-size:.86rem;font-weight:700}.bodyCompositionUnitToggle button+button{border-left:1px solid var(--button-border)}.bodyCompositionUnitToggle button.active{background:color-mix(in srgb, var(--day-current-strong) 18%, var(--button-active-bg));color:var(--day-current)}.bodyCompositionUnitToggle button:disabled{cursor:not-allowed;opacity:.58}.bodyCompositionEquivalent{min-height:1.1em;color:var(--ui-muted);font-size:.78rem;line-height:1.2}.bodyCompositionHint{color:var(--ui-muted);margin:.55rem 0 0;font-size:.82rem;line-height:1.3}.developmentCard{flex-direction:column;align-self:start;align-items:stretch;display:flex}.developmentGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem;margin-top:.72rem;display:grid}.developmentMetric{border:1px solid color-mix(in srgb, var(--day-current-strong) 24%, transparent);background:color-mix(in srgb, var(--day-current-strong) 9%, #ffffff05);text-align:center;border-radius:16px;align-content:center;justify-items:center;gap:.62rem;min-width:0;min-height:136px;padding:.85rem .55rem .78rem;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff09}.developmentMetricValue{min-width:0;color:var(--day-current);white-space:nowrap;text-shadow:0 0 18px color-mix(in srgb, var(--day-current-strong) 16%, transparent);justify-content:center;align-items:baseline;line-height:.92;display:inline-flex}.developmentMetricValue strong{letter-spacing:-.055em;font-variant-numeric:tabular-nums;font-size:clamp(2.45rem,8vw,4rem);font-weight:700}.developmentMetricValue>span{letter-spacing:-.03em;margin-left:.12em;font-size:clamp(.95rem,2.8vw,1.5rem);font-weight:700}.developmentMetricLabel{max-width:100%;color:var(--ui-text);text-align:center;font-size:.82rem;font-weight:700;line-height:1.2}.developmentMeta{color:var(--ui-muted);margin:.72rem 0 0;font-size:.84rem;line-height:1.3}@media (width<=520px){.bodyCompositionUnitToggle{grid-template-columns:repeat(2,38px)}.weightAndHeightFields .inlineField,.bodyCompositionField{grid-template-columns:126px minmax(0,1fr)}}@media (width<=360px){.weightAndHeightFields .inlineField,.bodyCompositionField{grid-template-columns:1fr;gap:.32rem}.bodyCompositionField>label{white-space:normal}}.donutMeter.journalDayColor .donutProgress,.donutMeter.journalDayColor.over .donutProgress{stroke:var(--day-current-strong)!important}.donutMeter.journalDayColor .donutRest,.donutMeter.journalDayColor .donutRest.over{color:var(--day-current)!important}.donutMeter.plannerNutrientColor .donutProgress{stroke:var(--day-today)!important}.donutMeter.plannerNutrientColor.over .donutProgress{stroke:var(--nutrient-color)!important}.donutMeter.plannerNutrientColor .donutRest{color:var(--day-today-text)!important}.donutMeter.plannerNutrientColor .donutRest.over{color:var(--nutrient-color)!important}.bmiDonutCenter{gap:0}.bmiDonutCenter .bmiValue{line-height:1}.bmiDonutLegend{width:min(420px,100%);font-size:.7rem}.developmentMetricValue>span{color:var(--ui-text);margin-left:.34em}.weightTrendPolyline{stroke-linecap:round;stroke-linejoin:round}.weightTrendInteractionLayer{fill:none;stroke:#00000100;stroke-width:32px;stroke-linecap:round;stroke-linejoin:round;pointer-events:stroke;cursor:crosshair;touch-action:pan-y}.weightTrendTargetReference{stroke:#d7dee04d;stroke-width:1.6px;stroke-dasharray:5 7;pointer-events:none}.weightTrendActualPill{pointer-events:none}.weightTrendGoalReachedNote{color:var(--day-current);font-weight:700}.goalFidelityMetricLabel{margin-top:.14rem}.bodyCompositionField.bodyCompositionOptionalStart{margin-top:1.15rem}@media (width>=700px) and (width<=1100px) and (orientation:portrait){.developmentMetricKcal .developmentMetricValue strong{font-size:clamp(2.15rem,4.5vw,2.75rem)}.developmentMetricKcal .developmentMetricValue>span{margin-left:.28em;font-size:clamp(.82rem,1.8vw,1rem)}}.autoSaveInputShell{width:100%;min-width:0;position:relative}.autoSaveInputShell>input{box-sizing:border-box;width:100%;padding-right:.68rem}.autoSaveCheckBadge{background:var(--day-current);color:#07110b;pointer-events:none;border-radius:999px;place-items:center;width:1.3rem;min-width:1.3rem;height:1.3rem;font-size:.82rem;font-weight:700;line-height:1;display:inline-grid}.autoSaveInputShell>.autoSaveCheckBadge{position:absolute;top:50%;right:.48rem;transform:translateY(-50%)}.magicFocusField{position:relative}.magicFocusField>.autoSaveCheckBadge{position:absolute;top:.62rem;right:.72rem}.targetWeightCombinedCard .weightAndHeightFields .inlineField,.targetWeightCombinedCard .weightAndHeightFields .bodyCompositionField{grid-template-columns:132px minmax(0,1fr)!important}.targetWeightCombinedCard .weightAndHeightFields .autoSaveInputShell,.targetWeightCombinedCard .bodyCompositionInputArea,.targetWeightCombinedCard .bodyCompositionControl{width:100%;min-width:0}.combinedPhaseBlock .phaseInfo{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.combinedPhaseBlock .phaseInfo>div{text-align:center;grid-template-columns:1fr;align-content:center;justify-items:center;gap:.1rem;min-width:0;padding:.36rem .42rem;display:grid!important}.combinedPhaseBlock .phaseInfo span{white-space:normal;align-items:center;min-height:1.15em;font-size:.74rem;line-height:1.05;display:grid}.combinedPhaseBlock .phaseInfo strong{white-space:nowrap;font-size:.9rem;line-height:1.15}.savedPhaseToggleLabel{align-items:center;gap:.48rem;min-width:0;display:inline-flex}.savedPhaseCountBadge{background:var(--day-current);color:#07110b;border-radius:999px;place-items:center;min-width:1.42rem;height:1.42rem;padding:0 .38rem;font-size:.76rem;font-weight:700;line-height:1;display:inline-grid}.targetConfirmRow,.weightConfirmRow{display:none!important}@media (width<=520px){.targetWeightCombinedCard .weightAndHeightFields .inlineField,.targetWeightCombinedCard .weightAndHeightFields .bodyCompositionField{grid-template-columns:126px minmax(0,1fr)!important}.combinedPhaseBlock .phaseInfo span{font-size:.68rem}.combinedPhaseBlock .phaseInfo strong{font-size:.82rem}}@media (width<=360px){.targetWeightCombinedCard .weightAndHeightFields .inlineField,.targetWeightCombinedCard .weightAndHeightFields .bodyCompositionField{gap:.32rem;grid-template-columns:1fr!important}}.editModalShell .modalTopCloseBtn{aspect-ratio:1;border-radius:999px!important;flex:0 0 40px!important;place-items:center!important;line-height:1!important;display:inline-grid!important}.dishAmountRow .dishIngredientRemoveBtn{box-sizing:border-box;aspect-ratio:1;border-radius:50%!important;flex:0 0 40px!important;place-items:center!important;gap:0!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important;line-height:1!important;display:inline-grid!important}.magicFeedback{color:#FFFFFF;background:#151b22;border:1px solid #34404d;border-radius:12px;margin:.75rem 0 0;padding:.72rem .9rem}.magicFeedback p{margin:0;line-height:1.45}.magicFeedback p+p{margin-top:.35rem}.magicFeedback-unlock{border-color:#5ce08a7a}.magicFeedback-gap{border-color:#ffbe5c8c}.storageLoading{text-align:center;place-content:center;justify-items:center;gap:18px;min-height:100dvh;padding:32px;display:grid}.storageLoading img{width:min(260px,72vw);height:auto}.developmentMetricDate{opacity:.78;margin-top:3px;font-size:.82rem;display:block}.developmentMetric{position:relative}.developmentTrendBadge{border:1px solid color-mix(in srgb, var(--day-current) 58%, transparent);background:color-mix(in srgb, var(--day-current) 18%, #0a0e12e6);width:1.7rem;height:1.7rem;color:var(--day-current);box-shadow:0 0 14px color-mix(in srgb, var(--day-current-strong) 18%, transparent);border-radius:999px;place-items:center;font-size:1.05rem;font-weight:700;line-height:1;display:inline-grid;position:absolute;top:.62rem;right:.62rem}.bmiCard{flex-direction:column;display:flex}.bmiCard>h2{flex:none}.bmiCard>.bmiContent{flex:auto;align-content:center}.journalBookedActions{flex:none}@media (width<=620px){.journalBookedActions{justify-content:flex-end;width:100%}}.savedResultCard{border-color:#5ce08a61}.savedResultStatus,.searchEditorHint{color:#5CE08A;font-size:.88rem}.savedResultStatus{margin-top:.45rem}.searchEditorHint{margin:-.2rem 0 .75rem}.searchResultCard{grid-template-columns:170px minmax(0,1fr);align-items:center}.searchResultContent{min-width:0}.searchResultMeta{margin-bottom:0}.searchResultNutrition{margin:0}.searchResultSaveRow{justify-content:flex-end;margin-top:.55rem;display:flex}.searchResultSaveRow .iconBtn{box-sizing:border-box;flex:0 0 40px;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.savedResultCard{border-color:#5ce08a;box-shadow:inset 0 0 0 1px #5ce08a2e}.proteinPerKgHint{color:var(--ui-muted);margin:-.25rem 0 .1rem;font-size:.82rem;line-height:1.35}@media (width<=620px){.searchResultCard{grid-template-columns:1fr}}.searchResultSaveRow{justify-content:flex-start}.searchResultsList{margin-top:1.15rem}.searchActionRow .eanCameraBtn{flex:0 0 40px}.planEntryBlock{min-width:0;transition:transform .16s,opacity .16s;position:relative}.planEntryBlock.expanded .planLine{border-radius:12px 12px 0 0}.planNameCell{align-items:center;gap:.28rem;min-width:0;display:flex}.planNameCell .planName{white-space:nowrap;flex:auto;align-items:center;gap:.45rem;min-width:0;display:flex;overflow:hidden}.planNameText,.planDishToggleText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.planDragHandle{box-sizing:border-box;width:28px;min-width:28px;height:36px;min-height:36px;color:var(--ui-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:8px;flex:0 0 28px;place-items:center;padding:0;display:inline-grid}.planDragHandle:hover,.planDragHandle:focus-visible{color:var(--ui-text);background:#ffffff0e;outline:none}.planDragHandle:active,.planEntryBlock.dragging .planDragHandle{cursor:grabbing}.planDragGrip{pointer-events:none;grid-template-columns:repeat(2,3px);gap:3px;display:grid}.planDragGrip i{background:currentColor;border-radius:50%;width:3px;height:3px}.planDishToggle{min-width:0;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:.34rem;padding:0;display:inline-flex}.planDishToggle:hover .planDishToggleText,.planDishToggle:focus-visible .planDishToggleText{text-underline-offset:.18em;text-decoration:underline}.planDishToggle:focus-visible{outline:none}.planDishChevron{width:.85rem;color:var(--ui-muted);flex:none;place-items:center;font-size:1.18rem;line-height:1;transition:transform .16s;display:inline-grid;transform:rotate(0)}.planDishChevron.open{transform:rotate(90deg)}.planDishIngredients{background:#0f151c;border:1px solid #2a3340;border-top-color:#ffffff12;border-radius:0 0 12px 12px;gap:.3rem;margin-top:-1px;padding:.52rem .72rem .58rem 2.95rem;display:grid}.planDishIngredients>p{color:var(--ui-muted);margin:0;font-size:.82rem}.planDishIngredientLine{min-width:0;color:var(--ui-muted);justify-content:space-between;align-items:baseline;gap:.8rem;font-size:.82rem;line-height:1.3;display:flex}.planDishIngredientLine span{overflow-wrap:anywhere;min-width:0}.planDishIngredientLine strong{color:var(--ui-text);white-space:nowrap;flex:none;font-weight:700}.planEntryBlock.dragging{z-index:12;opacity:.96;transform:scale(1.012)}.planEntryBlock.dragging .planLine,.planEntryBlock.dragging .planDishIngredients{border-color:color-mix(in srgb, var(--day-current) 68%, #2a3340 32%);box-shadow:0 12px 28px #00000147}.planList.dragActive .planEntryBlock:not(.dragging){transition:transform .12s}@media (width<=600px),(orientation:landscape) and (height<=500px){.planNameCell{grid-column:1/-1;width:100%}.planNameCell .planName{display:flex}.planDishIngredients{padding-left:2.72rem}}.favoriteCard .actions.planActions.selectionOnlyAction{justify-content:flex-start}.dishTotalWeight{color:var(--ui-muted);white-space:nowrap;font-weight:700}.dishPlanAmountPanel{width:min(520px,100vw - 28px)}.dishPlanAmountPanel .cardHead{align-items:flex-start}.dishPlanAmountPanel .cardHead p{color:var(--ui-muted);margin:.2rem 0 0}.dishPlanAmountPanel>label{gap:.38rem;margin-top:.9rem;font-weight:700;display:grid}.dishPlanAmountInput{width:min(180px,100%)}.planDishToggle{flex:0 auto}.planName>em{flex:none}.planDishIngredientLine{justify-content:flex-start;gap:.28rem}.dishTotalWeight{font-size:.88rem;font-weight:400}.developmentMetricCaption{justify-items:center;gap:0;display:grid}.developmentMetricDate{margin-top:0;line-height:1.2}@media (width<=600px),(orientation:landscape) and (height<=500px){.dishTotalWeight{font-size:.8rem}}.workHeader .tabs button svg[data-icon=stats]{opacity:.62;transition:opacity .16s,filter .16s}.workHeader .tabs button:hover svg[data-icon=stats],.workHeader .tabs button:focus-visible svg[data-icon=stats],.workHeader .tabs button.active svg[data-icon=stats]{opacity:1;filter:brightness(1.08)}.workHeader .tabs button:not(.plannerNavBtn) svg[data-icon=stats]{opacity:1!important;filter:none!important;transition:color .16s!important}.workHeader .tabs button:not(.plannerNavBtn):hover svg[data-icon=stats],.workHeader .tabs button:not(.plannerNavBtn):focus-visible svg[data-icon=stats]{color:color-mix(in srgb, currentColor 76%, #fff 24%);opacity:1!important;filter:none!important}.workHeader .tabs button:not(.plannerNavBtn)[aria-label] svg{color:inherit;backface-visibility:hidden;shape-rendering:geometricprecision;opacity:.76!important;filter:none!important;transition:opacity .16s,color .16s!important;transform:none!important}.workHeader .tabs button:not(.plannerNavBtn)[aria-label] svg[data-icon=stats] path{stroke:currentColor!important}.workHeader .tabs button:not(.plannerNavBtn)[aria-label]:hover svg,.workHeader .tabs button:not(.plannerNavBtn)[aria-label]:focus-visible svg{color:#fff!important;opacity:1!important;filter:none!important;transform:none!important}.workHeader .tabs button:not(.plannerNavBtn)[aria-label].active svg{opacity:1!important}.compactWorkDateNav .iconBtn,.compactWorkDateNav .iconBtn:hover,.compactWorkDateNav .iconBtn:focus-visible,.compactWorkDateNav .iconBtn:active{box-sizing:border-box;border-width:1px;border-color:var(--button-border-soft)!important;box-shadow:none!important;filter:none!important;transform:none!important}.compactWorkDateNav .iconBtn{transition:background-color .16s,color .16s!important}.compactWorkDateNav .iconBtn:hover,.compactWorkDateNav .iconBtn:focus-visible{background:color-mix(in srgb, var(--button-bg) 82%, white 18%);color:#fff}.compactWorkDateNav .iconBtn svg,.compactWorkDateNav .iconBtn:hover svg,.compactWorkDateNav .iconBtn:focus-visible svg,.compactWorkDateNav .iconBtn:active svg{backface-visibility:hidden;filter:none!important;transform:none!important}.dishModalPanel{width:min(720px,100%)}.dishIngredientNameNote{color:var(--ui-muted);margin:-.32rem 0 .62rem;font-size:.78rem;line-height:1.3}.dishIngredientLine{align-items:start;grid-template-columns:28px auto minmax(0,1fr)!important}.dishIngredientDragHandle{box-sizing:border-box;width:28px;min-width:28px;height:40px;min-height:40px;color:var(--ui-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:inline-grid}.dishIngredientDragHandle:hover,.dishIngredientDragHandle:focus-visible{color:var(--ui-text);background:#ffffff0e;outline:none}.dishIngredientDragHandle:active,.dishIngredientLine.dragging .dishIngredientDragHandle{cursor:grabbing}.dishIngredientLine.dragging{z-index:12;border-color:color-mix(in srgb, var(--day-current) 68%, #28313d 32%);transform:scale(1.008);box-shadow:0 12px 28px #00000147}.dishIngredientList.dragActive .dishIngredientLine:not(.dragging){transition:transform .12s}.dishIngredientAmountCheck:disabled{opacity:.34;cursor:default;visibility:visible!important;display:inline-grid!important}.dishNameActions .dialogRoundBtn,.dishNameActions .dialogRoundBtn:hover,.dishNameActions .dialogRoundBtn:focus-visible,.dishAmountRow .iconBtn,.dishAmountRow .iconBtn:hover,.dishAmountRow .iconBtn:focus-visible,.editModalShell .modalTopCloseBtn,.editModalShell .modalTopCloseBtn:hover,.editModalShell .modalTopCloseBtn:focus-visible{box-sizing:border-box;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;box-shadow:none!important;border-width:1px!important;border-radius:50%!important;transform:none!important}.authPreparationOptions{border-top:1px solid #ffffff14;gap:.55rem;margin-top:.8rem;padding-top:.8rem;display:grid}.authToggleRow{justify-content:space-between;align-items:center;gap:1rem;min-height:40px;display:flex}.authDisabledSwitch:disabled{opacity:.48;cursor:default}@media (width<=760px){.dishModalPanel{width:100%}.dishIngredientLine{grid-template-columns:28px auto minmax(0,1fr)!important}}.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor .donutProgress{stroke:var(--day-current-strong)!important}.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor .donutRest{color:var(--day-current)!important}.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor.over .donutProgress{stroke:var(--nutrient-color)!important}.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor .donutRest.over{color:var(--nutrient-color)!important}.authActions{margin-bottom:.8rem}.foodEditorColumns{grid-template-columns:minmax(220px,280px) minmax(360px,1fr);align-items:start;gap:1.15rem;margin-top:.65rem;display:grid}.foodEditorMediaColumn,.foodEditorFieldsColumn{min-width:0}.foodEditorMediaColumn .editImageBlock,.favoriteFoodEditor .foodEditorMediaColumn .editImageBlock{grid-template-columns:1fr;justify-items:center;gap:.65rem;margin-top:0;display:grid}.foodEditorMediaColumn .editImageDropzone,.foodEditorMediaColumn .editImageDropzone .productImage.medium,.favoriteFoodEditor .foodEditorMediaColumn .editImageDropzone,.favoriteFoodEditor .foodEditorMediaColumn .editImageDropzone .productImage.medium{aspect-ratio:1;width:min(240px,100%);height:auto}.foodEditorMediaColumn .editImageActions,.favoriteFoodEditor .foodEditorMediaColumn .editImageActions{justify-content:center}.foodEditorFormGrid{margin-top:0}.foodNutritionHeading{color:var(--ui-muted);margin:.35rem 0 -.05rem;font-size:.78rem;line-height:1.2}@media (width<=860px){.foodEditorColumns{grid-template-columns:1fr}.foodEditorMediaColumn .editImageDropzone,.foodEditorMediaColumn .editImageDropzone .productImage.medium,.favoriteFoodEditor .foodEditorMediaColumn .editImageDropzone,.favoriteFoodEditor .foodEditorMediaColumn .editImageDropzone .productImage.medium{width:min(240px,100vw - 84px)}}.goalFidelityMetric{position:relative}.goalFidelityMetric .developmentTrendBadge{border-color:color-mix(in srgb, var(--day-current) 58%, transparent);background:color-mix(in srgb, var(--day-current) 18%, #0a0e12e6);color:var(--day-current);box-shadow:0 0 14px color-mix(in srgb, var(--day-current-strong) 18%, transparent)}.bmiDonutTrendArrow{fill:#050807f2;text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:9px;font-weight:700}.bmiStatus{min-height:1.25em}.statisticsToggle.dayTone button.active{color:#07110b;background:var(--day-current);box-shadow:0 6px 16px color-mix(in srgb, var(--day-current-strong) 28%, transparent)}.cardDateLine{color:var(--ui-muted);margin:0;font-size:.82rem;line-height:1.25}.bmiStatus{text-align:center;justify-content:center;align-items:flex-start;width:100%;height:2.8em;min-height:2.8em;line-height:1.35;display:flex;overflow:hidden}.bmiStatus.placeholder{visibility:hidden}.bmiDonutTrendArrow{direction:ltr;unicode-bidi:isolate}.foodEditorFormGrid label{grid-template-columns:1fr!important;align-items:stretch!important;gap:.24rem!important}.foodEditorFormGrid label input{width:100%;min-width:0}.statisticsPageToolbar{grid-column:1/-1;justify-content:flex-end;min-height:40px;display:flex}.statisticsShareButton{border-radius:10px;width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.donutMeter.plannerNutrientColor .donutRest,.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor .donutRest,.donutMeter.plannerNutrientColor .donutRest.over,.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor .donutRest.over{color:var(--nutrient-color)!important}@media (width<=760px){.statisticsPageToolbar{min-height:40px}}.planToggleDesktop{align-items:center;gap:.22em;display:inline-flex}.planSectionChevron{transform-origin:50%;flex:0 0 .9em;place-items:center;width:.9em;line-height:1;transition:transform .16s;display:inline-grid;transform:rotate(0)}.planSectionChevron.open{transform:rotate(90deg)}.iconBtn:has(svg[data-icon=remove]){color:var(--button-danger-text)!important;border-color:color-mix(in srgb, var(--button-danger-text) 42%, var(--button-border))!important}.editModalShell.headerActionsModal{padding-top:1rem!important}.foodEditorDialogHead,.dishEditorDialogHead{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;margin-bottom:.55rem;display:grid}.foodEditorDialogHead h3,.dishEditorDialogHead h2{min-width:0;margin:0}.foodEditorHeadActions,.dishEditorHeadActions{flex-wrap:nowrap;flex:none;justify-content:flex-end;align-items:center}.foodEditorHeadActions .iconBtn,.dishEditorHeadActions .iconBtn,.shareModalCloseBtn{box-sizing:border-box;border-radius:50%!important;flex:0 0 40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.modalDishNameRow{grid-template-columns:minmax(0,1fr)!important}@media (width<=420px){.foodEditorDialogHead,.dishEditorDialogHead{gap:.55rem}.foodEditorHeadActions,.dishEditorHeadActions{gap:.35rem}}.plannerListSearchCard{grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:.55rem;display:grid}.plannerListSearchCard input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;display:none}.plannerListSearchClear{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;color:var(--button-danger-text)!important;border-radius:50%!important;padding:0!important}.phaseCreateModalHead{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;margin-bottom:.55rem;display:grid}.phaseCreateModalHead h2{margin:0}.phaseCreateModalHead .phaseModalActions{flex-wrap:nowrap;margin:0}.weightTrendSvgStack{position:relative}.weightTrendPillOverlay{z-index:3;pointer-events:none;position:absolute;inset:0}.weightTrendSvgStack>.weightTrendChart:not(.weightTrendPillOverlay)>.weightTrendActualPill{opacity:0}.quantityWheelDock{z-index:10050;padding:.55rem max(.55rem, env(safe-area-inset-right)) calc(.55rem + env(safe-area-inset-bottom)) max(.55rem, env(safe-area-inset-left));pointer-events:none;justify-content:center;display:flex;position:fixed;inset:auto 0 0}.quantityWheelPanel{pointer-events:auto;background:#121820;border:1px solid #ffffff1f;border-radius:24px;width:min(430px,100%);padding:.9rem;box-shadow:0 -10px 38px #00000180}.quantityWheelHead{grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:.65rem;margin-bottom:.65rem;display:grid}.quantityWheelHead strong,.quantityWheelHead span{display:block}.quantityWheelHead strong{color:var(--ui-text);font-size:1rem}.quantityWheelHead span{color:var(--day-current,var(--day-today-text));margin-top:.18rem;font-size:.9rem;font-weight:700}.quantityWheelClose{border-radius:50%!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}.quantityWheelViewport{background:#00000147;border:1px solid #ffffff1a;border-radius:18px;height:176px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#00000100,#000001 22% 78%,#00000100);mask-image:linear-gradient(#00000100,#000001 22% 78%,#00000100)}.quantityWheelSelection{z-index:2;border-top:1px solid color-mix(in srgb, var(--day-current,var(--day-today-text)) 55%, transparent);border-bottom:1px solid color-mix(in srgb, var(--day-current,var(--day-today-text)) 55%, transparent);background:color-mix(in srgb, var(--day-current,var(--day-today-text)) 9%, transparent);pointer-events:none;border-radius:10px;height:44px;position:absolute;top:66px;left:.6rem;right:.6rem}.quantityWheelList{overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;height:100%;padding:66px 0;overflow-y:auto}.quantityWheelList::-webkit-scrollbar{display:none}.quantityWheelList button{width:100%;height:44px;color:var(--ui-muted);font:inherit;scroll-snap-align:center;background:0 0;border:0;font-size:1.08rem;font-weight:700;display:block}.quantityWheelList button.active{color:var(--ui-text);font-weight:700}.quantityWheelDirect{color:var(--ui-muted);grid-template-columns:minmax(0,1fr) minmax(110px,145px);align-items:center;gap:.7rem;margin-top:.75rem;font-size:.86rem;font-weight:700;display:grid}.quantityWheelDirect input{margin:0}@media (width<=420px){.plannerListSearchCard{grid-template-columns:minmax(0,1fr) 40px}.quantityWheelDock{padding-top:.35rem}.quantityWheelPanel{border-radius:20px}}@media (width<=600px),(orientation:landscape) and (height<=500px){.journalMeters{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:.18rem}.journalKcalMeter,.journalMacroMeters{display:contents}.journalMeters .donutMeter{gap:.24rem;max-width:none;margin:0}.journalMeters .donutRing,.journalMeters .donutMeter.compact .donutRing{width:56px;height:56px}.journalMeters .donutRing:after,.journalMeters .donutMeter.compact .donutRing:after{inset:6px}.journalMeters .donutCenter strong,.journalMeters .donutMeter.compact .donutCenter strong{font-size:.7rem}.journalMeters .donutCenter span,.journalMeters .donutMeter.compact .donutCenter span{display:none}.journalMeters .donutRest,.journalMeters .donutMeter.compact .donutRest{min-height:0;font-size:.69rem;line-height:1.08}}@media (width<=600px){.quantityWheelPanel{padding:.72rem}.quantityWheelHead{margin-bottom:.45rem}.quantityWheelDirect{margin-top:.5rem}.weightTrendValuePill .weightTrendPillWeight{font-size:16px}.weightTrendValuePill .weightTrendPillDate{opacity:.86;font-size:12px}}.bmiDonutMarker.under,.bmiDonutMarker.recommended,.bmiDonutMarker.over{stroke:var(--ui-card)}.medalCard{align-self:start;overflow:hidden}.medalCardHead{margin-bottom:.35rem}.medalLayout{align-content:start;gap:.28rem;display:grid}.currentMedal{background:var(--ui-card);border:1px solid var(--ui-card);border-radius:18px;grid-template-columns:minmax(118px,150px) minmax(0,1fr);align-items:center;gap:.35rem;min-height:0;padding:.2rem .35rem;display:grid;overflow:hidden}.medalImageWrap{align-self:center;place-items:center;padding:0 2px;display:grid;position:relative}.medalImageWrap img{object-fit:contain;filter:drop-shadow(0 10px 18px #00000147);width:auto;max-width:100%;height:auto;max-height:152px;display:block}.medalCopy{min-width:0}.medalProgressValue{align-items:baseline;gap:.08em;margin-bottom:.24rem;line-height:.92;display:flex}.medalProgressValue strong{color:var(--day-current);letter-spacing:-.055em;font-variant-numeric:tabular-nums;font-size:clamp(2.45rem,8vw,4rem);font-weight:700}.medalProgressValue span{color:#fff;letter-spacing:-.03em;font-size:clamp(1.1rem,3.2vw,1.75rem);font-weight:700}.medalCopy p{color:var(--ui-muted);margin:0;font-weight:700;line-height:1.35}.medalAchievementText{color:var(--ui-text)!important}.medalMeta{color:var(--ui-muted);margin:0;font-size:.82rem;font-weight:400;line-height:1.3}.medalHistory{scroll-snap-type:x mandatory;scrollbar-width:thin;gap:.55rem;padding:.1rem 0 .2rem;display:flex;overflow-x:auto}.historyMedal{scroll-snap-align:start;background:#ffffff09;border-radius:14px;flex:0 0 132px;align-content:start;justify-items:center;gap:.08rem;padding:.22rem .3rem .34rem;display:grid}.historyMedal img{object-fit:contain;width:138px;max-width:100%;height:138px;margin-top:-.1rem}.historyMedal span{color:var(--ui-muted);text-align:center;font-size:.72rem}.goalReachedActions{justify-content:flex-end}.goalReachedActions button{min-width:84px}.iphoneLandscapeBlock{display:none}@media (orientation:landscape) and (height<=500px) and (pointer:coarse){.iphoneLandscapeBlock{z-index:99999;text-align:center;background:#050807;place-items:center;padding:2rem;display:grid;position:fixed;inset:0}.iphoneLandscapeBlock>div{gap:.65rem;max-width:520px;display:grid}.iphoneLandscapeBlock strong{font-size:1.35rem}.iphoneLandscapeBlock span{color:var(--ui-muted)}}@media (width<=600px){.weightTrendValuePill .weightTrendPillWeight{font-size:24px}.weightTrendValuePill .weightTrendPillDate{font-size:18px}.weightTrendValuePill{min-width:112px;padding:10px 16px}.shareModalPanel{padding-top:4.4rem;position:relative}.shareModalHead{display:block}.shareModalCloseBtn{position:absolute;top:.8rem;right:.8rem}.currentMedal{text-align:left;grid-template-columns:142px minmax(0,1fr);gap:.16rem;padding:.16rem .28rem .16rem .14rem}.medalImageWrap{padding-inline:0}.medalImageWrap img{width:auto;max-height:152px}.medalCopy p{font-size:.9rem}.historyMedal{flex-basis:132px}}.statisticsCard>h2,.statisticsCard>.cardHead,.medalCardHead{margin-bottom:.75rem}.currentMedal{isolation:isolate;background:var(--ui-card);border:1px solid var(--ui-card);position:relative}.currentMedal>*{z-index:1;position:relative}.currentMedal.gold{border:3px solid #00000100}.currentMedal.gold:before{content:"";border-radius:inherit;pointer-events:none;z-index:0;-webkit-mask-composite:xor;background:linear-gradient(45deg,red,#ff7300,#fffb00,#48ff00,#00ffd5,#002bff,#7a00ff,#ff00c8,red) 0 0/400% 400%;padding:3px;animation:20s linear infinite magicRainbowGlow;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000001 0 0),linear-gradient(#000001 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.globalTodayHeading{color:var(--day-today-text)}@media (width<=600px){.searchActionRow{grid-template-columns:minmax(0,1fr) repeat(3,40px);align-items:center;gap:.55rem;display:grid}.searchActionRow>.searchInputClearGroup{grid-column:1/-1;min-width:0}.searchActionRow>.searchInputClearGroup+.iconBtn{grid-column:2}.foodFavoriteCard .favoriteCardContent{grid-template-rows:repeat(5,auto);grid-template-columns:minmax(0,1fr) 40px;align-items:start;column-gap:.55rem;min-width:0;display:grid}.foodFavoriteCard .favoriteCardContent>h3,.foodFavoriteCard .favoriteCardContent>p{grid-column:1;min-width:0}.foodFavoriteCard .favoriteCardContent .selectionOnlyAction{grid-area:1/2/6;place-self:center end;width:40px;justify-content:center!important;margin:0!important}.foodFavoriteCard .foodSelectionNutrition .nutritionDivider{display:none}.foodFavoriteCard .foodSelectionNutrition .nutritionMacroValues{margin-top:.08rem;display:block}}.weightTrendGoalPoint{pointer-events:all;cursor:pointer;outline:none}.weightTrendGoalHit{fill:#00000100;stroke:none;pointer-events:all}.weightTrendGoalPill rect{fill:#121820f5;stroke:#d7dee0b8;stroke-width:2px}.weightTrendGoalPill .weightTrendPillWeight{fill:#FFFFFF;font-weight:700}.weightTrendGoalZoneStatus{fill:#FFFFFFD1;pointer-events:none;font-size:15px;font-weight:700}.weightTrendGoalZoneStatus.goal-reached{fill:var(--day-current)}@media (width<=600px) and (orientation:portrait){.favoriteCardContent{grid-template-columns:minmax(0,1fr) 40px;align-items:start;column-gap:.55rem;min-width:0;display:grid}.favoriteCardContent>h3,.favoriteCardContent>p{grid-column:1;min-width:0}.favoriteCardContent .selectionOnlyAction{grid-area:1/2/span 8;place-self:center end;width:40px;justify-content:center!important;margin:0!important}.favoriteCard .selectionNutrition .nutritionPrimary,.favoriteCard .selectionNutrition .nutritionPrimary .nutritionPrefix,.favoriteCard .selectionNutrition .nutritionPrimary .nutritionKcal{display:inline}.favoriteCard .selectionNutrition .nutritionDivider{display:none}.favoriteCard .selectionNutrition .nutritionMacroValues{margin-top:.08rem;display:block}}.weightTrendGoalPill{pointer-events:none}.weightTrendGoalPoint:focus-visible .weightTrendProjectionDot,.weightTrendGoalPoint.active .weightTrendProjectionDot{filter:drop-shadow(0 0 8px #d7dee06b)}.weightTrendDateLabel.goal{fill:#FFFFFFB8;font-weight:700}.weightTrendMilestoneMarker{pointer-events:none;filter:drop-shadow(0 2px 3px #0000017A)}.dateButtonShell{flex:none;display:inline-flex;position:relative}.nativeDateInput{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.weightTrendGoalPoint .weightTrendGoalHit{fill:#00000100!important;stroke:none!important;stroke-width:0!important}@media (width<=600px) and (orientation:portrait){.workHeader{grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:center;gap:.4rem;display:grid;overflow-x:visible}.workHeader .tabs{grid-row:1;justify-self:start;min-width:max-content}.workHeader.datedWorkHeader .compactWorkDateNav{grid-row:2;justify-self:end;gap:.35rem;width:auto;min-width:max-content}.workHeader.globalWorkHeader .compactWorkDateNav{display:none!important}.compactWorkDateNav .dateButtonShell,.compactWorkDateNav .dateButton{width:112px;min-width:112px;height:40px;min-height:40px}.compactWorkDateNav .nativeDateInput{opacity:0;pointer-events:auto;cursor:pointer;width:100%;height:100%;inset:0}.datedWorkHeader+.grid .stickyPlanRest,.stickyPlanRest{top:108px}.journalBookedCard .cardHead{margin-bottom:.75rem}.journalBookedCard .journalBookedActions{justify-content:flex-end;justify-self:end;gap:.45rem;width:auto;margin-top:.25rem;margin-bottom:0}.journalBookedCard .journalBookedActions .iconBtn{justify-self:auto}.settingsInfoCard .cardHead .settingsFeedbackButton{justify-self:end;margin-left:0}}.saveAsDishModal{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--ui-text);background:#141920}.saveAsDishDialogHead h2{min-width:0;margin:0}.saveAsDishDialogHead .dialogRoundBtn{box-sizing:border-box;border-radius:50%!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}.saveAsDishModal label{color:var(--ui-text)}.saveAsDishModal input{color:#FFFFFF;background:#0d1117;border-color:#ffffff2e}.saveAsDishActions,.discardDialogActions{justify-content:flex-end}@media (width<=600px) and (orientation:portrait){.journalBookedCard>.cardHead{grid-template-columns:minmax(0,1fr)!important;align-items:start!important;gap:.65rem!important;margin-bottom:.75rem!important;display:grid!important}.journalBookedCard>.cardHead>.journalBookedActions{justify-content:flex-end!important;justify-self:end!important;gap:.45rem!important;width:max-content!important;max-width:100%!important;margin:0 0 0 auto!important}.settingsInfoCard>.cardHead{grid-template-columns:minmax(0,1fr)!important;align-items:start!important;gap:.65rem!important;display:grid!important}.settingsInfoCard>.cardHead>.settingsFeedbackButton{justify-self:end!important;width:max-content!important;margin:0 0 0 auto!important}.compactWorkDateNav .dateStepButton,.compactWorkDateNav .dateStepButton:hover,.compactWorkDateNav .dateStepButton:focus,.compactWorkDateNav .dateStepButton:focus-visible{-webkit-tap-highlight-color:transparent;background:var(--button-bg)!important;color:var(--ui-text)!important;box-shadow:none!important;filter:none!important}.compactWorkDateNav .dateStepButton:active{background:color-mix(in srgb, var(--button-bg) 82%, white 18%)!important;color:#fff!important}}.iphoneRightAlignedActions{justify-content:flex-end!important;place-self:flex-end end!important;width:max-content!important;max-width:100%!important;margin-left:auto!important;margin-right:0!important}.iphoneRightAlignedButton{place-self:flex-end end!important;width:max-content!important;margin-left:auto!important;margin-right:0!important}.discardFoodEditorBackdrop{z-index:280!important}.saveAsDishDialogHead{grid-template-columns:minmax(0,1fr);align-items:start;gap:.65rem;margin-bottom:.8rem;display:grid}.saveAsDishHeadActions{justify-content:flex-start;align-items:center;gap:.45rem;width:max-content;margin:0}.saveAsDishHeadActions .dialogRoundBtn{box-sizing:border-box;border-radius:50%!important;gap:0!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.saveAsDishHeadActions .dialogRoundBtn span{display:none!important}.saveAsDishDialogHead h2{margin:0}.discardFoodEditorDialogHead{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;margin-bottom:.55rem;display:grid}.discardFoodEditorDialogHead h2{min-width:0;margin:0}.discardFoodEditorHeadActions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:.45rem;width:max-content;margin:0}.discardFoodEditorHeadActions .dialogRoundBtn{box-sizing:border-box;border-radius:50%!important;flex:0 0 40px!important;gap:0!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.discardFoodEditorPanel>p:last-child{margin-bottom:0}@media (width<=600px) and (orientation:portrait){.journalBookedCard>.cardHead{width:100%!important;display:block!important}.journalBookedCard>.cardHead>.journalBookedActions{flex-wrap:nowrap!important;justify-content:flex-end!important;align-items:center!important;gap:.45rem!important;width:100%!important;max-width:none!important;margin:.65rem 0 0!important;display:flex!important}.journalBookedCard>.cardHead>.journalBookedActions .iconBtn{flex:none!important;justify-self:auto!important}}.noticeDialogHead{grid-template-columns:minmax(0,1fr) 40px;align-items:start;gap:.75rem;margin-bottom:.55rem;display:grid}.noticeDialogHead h2{min-width:0;margin:0}.noticeDialogHeadButton{box-sizing:border-box;justify-self:end;border-radius:50%!important;gap:0!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important}.noticeHeadActionPanel>p:last-child{margin-bottom:0}.bmiLegendMobileBreak{display:none}@media (width<=600px) and (orientation:portrait){.workHeader .tabs,.workHeader.datedWorkHeader .compactWorkDateNav{justify-self:center!important}.bmiDonutLegend>span{text-align:center;display:block}.bmiDonutLegend>span:before{vertical-align:middle;margin-right:.28rem;display:inline-block}.bmiLegendMobileBreak{display:block}}.storageSafety{max-width:720px;margin:0 auto}.storageSafety p{max-width:620px;margin:0;line-height:1.5}.storageSafetyActions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}:root,body{background:#000001}.statisticsTrendControls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.statisticsTrendControls .statisticsShareButton{flex:0 0 40px}@media (width<=760px){.statisticsTrendControls{justify-content:flex-end}}.currentMedal.gray .medalImageWrap img,.historyMedal.gray img{opacity:.42;filter:grayscale()brightness(.72)drop-shadow(0 7px 12px #00000133)}.medalImageWrap{grid-template-rows:minmax(0,auto) auto;gap:.12rem}.medalStatusLabel{text-align:center;white-space:nowrap;margin:0;font-size:.72rem;font-weight:700;line-height:1.15;display:block}.medalStatusLabel.bronze{color:#c98552}.medalStatusLabel.silver{color:#c9d0d7}.medalStatusLabel.gold{color:#e5bd4e}.historyMedal .medalStatusLabel{margin-top:-.12rem}.saveAsDishDialogHead{grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.saveAsDishHeadActions{justify-content:flex-end;justify-self:end}.iconBtn.iconOnlyButton,.fileButton.iconOnlyButton,.todayJump.iconOnlyButton{box-sizing:border-box;aspect-ratio:1;flex:0 0 40px;gap:0;width:40px;min-width:40px;max-width:40px;height:40px;min-height:40px;max-height:40px;padding:0;border-radius:50%!important}.compactWorkDateNav .iconBtn.iconOnlyButton,.compactWorkDateNav .todayJump.iconOnlyButton{flex-basis:44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px}.journalEntryLine .iconBtn.iconOnlyButton{flex-basis:28px!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;max-height:28px!important}.weightPhaseDeleteDialogHead,.magicColdStartHead,.dishPlanAmountHead{grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:.75rem!important;display:grid!important}.weightPhaseDeleteDialogHead h2,.magicColdStartHead h2,.dishPlanAmountHead h2{min-width:0;margin-top:0}.phaseDeleteModalActions,.magicColdStartHeadActions,.dishPlanAmountHeadActions{flex-wrap:nowrap!important;justify-content:flex-end!important;justify-self:end!important;align-items:center!important;gap:.45rem!important;width:max-content!important;margin:0!important;display:flex!important}.confirmActionBackdrop,.copyFallbackBackdrop{z-index:300!important}.confirmActionDialogHead,.copyFallbackDialogHead{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;margin-bottom:.55rem;display:grid}.confirmActionDialogHead h2,.copyFallbackDialogHead h2{min-width:0;margin:0}.confirmActionDialogHeadActions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.confirmActionDialog>p:last-child,.copyFallbackDialog>p:last-child{margin-bottom:0}.copyFallbackText{resize:vertical;box-sizing:border-box;width:100%;min-height:180px;max-height:48vh;font:inherit;margin-top:.35rem;line-height:1.45}:root{--type-hl1:24px;--type-hl2:18px;--type-subline:14px;--type-copy:16px;--type-hint:14px;--type-field:16px;--type-field-label:14px;--type-button:16px;--type-list-name:16px;--type-list-copy:14px;--type-metric:32px;--type-metric-xl:48px;--type-achievements-number:64px;--type-donut:13px;--type-badge:12px;--type-work-nav:12px}@media (width<=600px),(orientation:landscape) and (height<=500px) and (pointer:coarse){:root{--type-hl1:22px;--type-metric:30px;--type-metric-xl:42px;--type-achievements-number:40px}.journalMeters .donutCenter strong{font-size:var(--type-donut)}}body{font-size:var(--type-copy)}h1,h2{font-size:var(--type-hl1)}h3{font-size:var(--type-hl2)}p{font-size:var(--type-copy)}.planToggle,.foodEditorDialogHead h3{font-size:var(--type-hl1)}.dailySummary h3,.combinedPhaseBlock h3,.targetWeightCombinedCard .combinedPhaseBlock h3{font-size:var(--type-hl2)}.cardHead p,.magicColdStartHead p,.searchEditorHint,.cardDateLine{font-size:var(--type-subline)}.orientationText,.hint,.fieldError,.fieldHint,.compactLabel,.dishInfoText,.goalWeightText,.goalWeightDetail,.homeTipBubble,.weightTrendHint,.bmiIntro,.orientationFootnote,.weightTrendProjectionNote,.restrictionNotice,.magicFocusField p,.reminderPlaceholderNote,.goalFidelityMeta,.bodyCompositionEquivalent,.bodyCompositionHint,.developmentMeta,.developmentMetricDate,.savedResultStatus,.proteinPerKgHint,.dishIngredientNameNote,.medalMeta,.medalCopy p,.goalWeightCard .goalWeightText,.goalWeightCard.ok .goalWeightText,.goalWeightCard.bad .goalWeightText{font-size:var(--type-hint)}label,.unitSuffix,.foodNutritionHeading,.quantityWheelHead span{font-size:var(--type-field-label)}.quantityWheelHead strong{font-size:var(--type-copy)}input,select,textarea,.planAmountEdit input,.quantityWheelDirect{font-size:var(--type-field)}.planAmountEdit .unitSuffix,.inlineAmount{font-size:var(--type-field-label)}button,.iconBtn,.fileButton,.tabs button,.favoriteSubTabs button,.settingsSubTabs button,.plannerMobileTabs button,.bodyCompositionUnitToggle button,.quantityWheelList button,.favoriteCard .actions.planActions .iconBtn,.stableDateNav .dateButton,.compactWorkDateNav .dateButton,.pill,.targetPill{font-size:var(--type-button)}.favoriteCard h3,.searchResultContent h3,.journalEntryName,.planLine strong,.dishIngredientMain strong{font-size:var(--type-list-name)}.favoriteCard p,.favoriteCard .macroInline,.favoriteCard .targetCompactLine,.macroLine,.miniIngredients span,.restSmall .diffGrid div,.afterTargetMini .diffGrid div,.targetCompactLine,.macroInline,.journalEntryAmount,.topMeta,.savedPhaseText span,.planDishIngredients>p,.planDishIngredientLine,.dishTotalWeight,.imageActionItem,.goalFidelityMetricLabel,.developmentMetricLabel,.combinedPhaseBlock .phaseInfo span{font-size:var(--type-list-copy)}.combinedPhaseBlock .phaseInfo strong{font-size:var(--type-list-name)}.targetMain>strong,.statisticsWeightStatus strong,.developmentMetricValue strong,.developmentMetricKcal .developmentMetricValue strong{font-size:var(--type-metric)}.statisticsWeightStatus span{font-size:var(--type-copy)}.statisticsWeightStatus em{font-size:var(--type-hint)}.bmiValue,.bmiDonutCenter .bmiValue,.goalFidelityMetricValue strong,.medalProgressValue strong{font-size:var(--type-metric-xl)}.goalFidelityMetricValue>span,.medalProgressValue span,.developmentMetricValue>span,.developmentMetricKcal .developmentMetricValue>span{font-size:var(--type-hl1)}.donutTitle,.donutCenter span,.bmiDonutCenter span,.donutMeter.compact .donutCenter strong,.donutMeter.compact .donutCenter span,.donutOverview.compact .donutCenter strong,.donutOverview.compact .donutCenter span,.donutRest,.donutOverview.compact .donutRest,.plannerMerklistePane .donutOverview.compact .donutCenter strong,.plannerMerklistePane .donutOverview.compact .donutRest,.journalMeters .donutMeter.compact .donutCenter strong,.journalMeters .donutMeter.compact .donutRest,.journalMeters .donutRest{font-size:var(--type-donut)}.donutCenter strong{font-size:var(--type-metric)}.eyebrow,.btnBadge,.stableDateNav .dayBadge,.planName em,.calendarWeekdays span,.tipIcon,.plannerTabBadge,.bmiScaleLabels,.bmiDonutLegend,.favoriteCard.dish .dishIcon,.buttonTooltipOverlay,.autoSaveCheckBadge,.savedPhaseCountBadge,.historyMedal span,.medalStatusLabel,.productImage.tiny{font-size:var(--type-badge)}.developmentTrendBadge,.planDishChevron{font-size:var(--type-button)}.targetWeightCombinedCard .cardDateLine,.targetsCardCompact .cardDateLine{font-size:var(--type-subline)}.targetOrientation,.targetOrientation p,.targetOrientation .orientationFootnote{font-size:var(--type-hint)}.bmiDonutLegend.bmiHintLine{text-align:center;width:100%;font-size:var(--type-hint);display:block}.bmiDonutLegend.bmiHintLine>span{display:inline-flex}.bmiDonutLegend.bmiHintLine .bmiLegendMobileBreak{display:none}.foodFavoriteCard .btnBadge{border-color:var(--ui-surface)}.targetsCardCompact .targetValueWrap span{font-size:var(--type-field)}.bmiValue,.bmiDonutCenter .bmiValue,.goalFidelityMetricValue strong,.developmentMetricValue strong,.developmentMetricKcal .developmentMetricValue strong,.medalProgressValue strong{font-size:var(--type-achievements-number)}.statisticsToggle button{font-weight:700}.currentMedal{background:0 0;border-color:#00000100}.currentMedal.gold{border-color:#00000100}.authCombinedCard .authActions .authLogoutButton:disabled,.authCombinedCard .authActions .authDeleteButton{color:var(--ui-text)!important;border-color:#2d3541!important}.authCombinedCard .authActions .authLogoutButton:disabled svg,.authCombinedCard .authActions .authDeleteButton svg{color:var(--button-danger-text)!important}.authCombinedCard .authActions .authLogoutButton:disabled span,.authCombinedCard .authActions .authDeleteButton span{color:var(--ui-text)!important}@media (width<=600px) and (orientation:portrait){.statisticsTrendControls{flex-wrap:nowrap;justify-content:flex-end;width:100%}.statisticsTrendControls .statisticsToggle{flex-wrap:nowrap;flex:auto;justify-content:center;width:auto;min-width:0}.statisticsTrendControls .statisticsToggle button{white-space:nowrap;padding-left:.68rem;padding-right:.68rem}.statisticsTrendControls .statisticsShareButton{flex:0 0 40px}.currentMedal.gray .medalImageWrap img{opacity:.68;filter:grayscale()brightness(.92)drop-shadow(0 8px 14px #0000013D)}}.authCombinedCard .authActions .authDeleteButton,.settingsInfoCard .settingsFeedbackButton{background:var(--button-bg)!important;border-color:var(--button-border)!important;color:var(--ui-text)!important;border-radius:var(--button-radius-pill)!important}.authCombinedCard .authActions .authDeleteButton:hover,.settingsInfoCard .settingsFeedbackButton:hover{filter:var(--button-hover-filter)}.homeNav.homeNavLocked .homeNavItem>button{opacity:.42;filter:grayscale(.22)saturate(.55)blur(.35px);cursor:not-allowed;pointer-events:none}.homeNav.homeNavLocked .homeNavItem>button:after,.homeNav.homeNavLocked .homePlannerBtn:after{opacity:.25;animation:none!important}.homeLoginEntry{justify-content:center;margin:.65rem auto 0;display:flex}.homeMagicStartPill{isolation:isolate;color:#fff;min-height:44px;font:inherit;background:#0b0b0b;border:0;border-radius:999px;padding:0 22px;font-weight:700;line-height:1;position:relative;overflow:hidden;box-shadow:0 0 18px #5ce08a2e,0 0 34px #5ce08a1a}.homeMagicStartPill:before{content:"";border-radius:inherit;pointer-events:none;z-index:-1;-webkit-mask-composite:xor;background:linear-gradient(45deg,red,#ff7300,#fffb00,#48ff00,#00ffd5,#002bff,#7a00ff,#ff00c8,red) 0 0/400% 400%;padding:3px;animation:20s linear infinite magicRainbowGlow;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000001 0 0),linear-gradient(#000001 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.searchInputClearGroup,.plannerListSearchCard{display:block;position:relative}.searchInputClearGroup input,.plannerListSearchCard input{width:100%;padding-right:48px!important}.searchInputClearGroup .searchInputClear,.plannerListSearchCard .plannerListSearchClear{z-index:2;position:absolute;top:50%;right:4px;transform:translateY(-50%);background:0 0!important;border:0!important;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important}.foodTabLabelPhone{display:none}@media (width<=600px),(orientation:landscape) and (height<=500px){.foodTabLabelDesktop{display:none}.foodTabLabelPhone{display:inline}}.settingsAccountGrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.85rem;display:grid}.settingsAccountGrid .settingsInnerCard{min-width:0}@media (width<=760px){.settingsAccountGrid{grid-template-columns:1fr}}.passwordFieldWrap{display:block;position:relative}.passwordFieldWrap input{width:100%;padding-right:48px!important}.passwordEyeButton{position:absolute;top:50%;right:4px;transform:translateY(-50%);border-radius:50%!important;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:.38rem!important}.contractFacts{gap:.55rem;margin-top:.85rem;display:grid}.contractFacts p{justify-content:space-between;gap:1rem;margin:0;display:flex}.contractFacts span{color:var(--text-muted)}.contractFacts strong{color:var(--ui-text)}.settingsPreparationNote{color:var(--text-muted);margin-top:.8rem}.contractActions,.faqActions{margin-top:.9rem}.settingsReminderBlock{border-top:1px solid #ffffff14;margin-top:1rem;padding-top:1rem}.settingsReminderBlock h3{color:var(--ui-text)}.faqCard .homeTourPill{margin-top:.35rem}.authLoginPanel{width:min(560px,100%)}.authLoginHead{align-items:flex-start}.authLoginHead h2{margin:0}.authLoginFields{margin-top:.85rem}.authLoginActions{justify-content:flex-end;margin-top:.85rem}.authCombinedCard .authActions,.contractCard .contractActions{justify-content:flex-end}.contractFields{margin-top:.85rem}.contractCancelButton:disabled{color:var(--ui-text)!important}.contractCancelButton:disabled span{color:#fff!important}.contractCancelButton:disabled svg{color:var(--button-danger-text)!important}.settingsFaqIntro{margin-top:1.2rem}.settingsFaqHeadline{letter-spacing:-.045em;max-width:900px;margin:0;font-size:clamp(2rem,4.35vw,4.35rem);font-weight:700;line-height:1.03}.settingsFaqHeadline>span{display:block}.settingsFaqHeadline>span:first-child{color:var(--day-today)}.settingsFaqHeadline>span:nth-child(2){color:var(--ui-text)}.settingsFaqSubline{max-width:760px;color:var(--ui-muted);margin:30px 0 0;font-size:clamp(1rem,1.45vw,1.14rem);line-height:1.65}.settingsFaqList{gap:12px;max-width:860px;margin-top:30px;display:grid}.settingsFaqItem{background:#050505;border:1px solid #ffffff29;border-radius:18px;overflow:hidden}.settingsFaqItem summary{cursor:pointer;color:var(--day-today);padding:18px 20px;font-weight:700;list-style:none}.settingsFaqItem summary::-webkit-details-marker{display:none}.settingsFaqItem summary:after{content:"+";float:right;color:var(--day-today);font-size:1.35rem;line-height:1}.settingsFaqItem[open] summary:after{content:"–"}.settingsFaqItem p{color:var(--ui-muted);margin:0;padding:0 20px 20px;line-height:1.6}.homeNav .homePlannerBtn:before,.homeNav .homePlannerBtn:after,.workHeader .tabs .plannerNavBtn:before,.workHeader .tabs .plannerNavBtn:after{display:none!important}.magicMasterBtn:before{opacity:.72!important}.magicMasterBtn:disabled:before{opacity:.42!important}.medalStatusPlaceholder{visibility:hidden}.accountOverviewCard{gap:.8rem;display:grid}.accountSubCard{border:1px solid var(--button-border);background:#ffffff04;border-radius:14px;padding:1rem}.accountSubCard .globalTodayHeading{margin-top:0}.premiumFunctionList{gap:.55rem;margin-top:.8rem;display:grid}.premiumFunctionList>div{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.premiumFunctionList span{color:var(--ui-text)}.premiumStatus{white-space:nowrap}.premiumStatus.active{color:var(--day-today-text)}.premiumStatus.inactive{color:var(--button-danger-text)}.accountCustomerCenter{padding:.2rem .1rem 0}.accountCustomerCenter p{color:var(--text-muted);margin:.2rem 0 .8rem;line-height:1.45}.accountCustomerCenter .actions{justify-content:flex-end}@media (width<=760px){.premiumFunctionList>div{align-items:flex-start}}.workHeader .tabs button[aria-label=Tagesjournale] svg,.workHeader .tabs button[aria-label=Planer] svg,.workHeader .tabs button[aria-label=Erfolge] svg,.workHeader .tabs button[aria-label=Einstellungen] svg,.workHeader .tabs button[aria-label=Tagesjournale]:hover svg,.workHeader .tabs button[aria-label=Tagesjournale]:focus-visible svg,.workHeader .tabs button[aria-label=Planer]:hover svg,.workHeader .tabs button[aria-label=Planer]:focus-visible svg,.workHeader .tabs button[aria-label=Erfolge]:hover svg,.workHeader .tabs button[aria-label=Erfolge]:focus-visible svg,.workHeader .tabs button[aria-label=Einstellungen]:hover svg,.workHeader .tabs button[aria-label=Einstellungen]:focus-visible svg{filter:none!important;opacity:1!important;backface-visibility:visible!important;will-change:auto!important;color:inherit!important;transition:none!important;transform:none!important}.workHeader .tabs button[aria-label=Tagesjournale]:not(.active):hover,.workHeader .tabs button[aria-label=Tagesjournale]:not(.active):focus-visible,.workHeader .tabs button[aria-label=Planer]:not(.active):hover,.workHeader .tabs button[aria-label=Planer]:not(.active):focus-visible,.workHeader .tabs button[aria-label=Erfolge]:not(.active):hover,.workHeader .tabs button[aria-label=Erfolge]:not(.active):focus-visible,.workHeader .tabs button[aria-label=Einstellungen]:not(.active):hover,.workHeader .tabs button[aria-label=Einstellungen]:not(.active):focus-visible{background:var(--button-active-bg);border-color:#ffffff4d;filter:none!important;transform:none!important}.workHeader .tabs .workNavStableBtn{isolation:isolate;contain:layout paint}.workHeader .tabs .workNavStaticIcon{pointer-events:none;background-color:currentColor;flex:0 0 24px;width:24px;min-width:24px;height:24px;min-height:24px;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:24px 24px;mask-size:24px 24px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;filter:none!important;opacity:1!important;transition:none!important;transform:none!important}.workHeader .tabs .workNavStaticIcon--calendar{-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3crect%20x='4'%20y='5.5'%20width='16'%20height='15'%20rx='2.5'/%3e%3cpath%20d='M8%203.5v4'/%3e%3cpath%20d='M16%203.5v4'/%3e%3cpath%20d='M4%2010h16'/%3e%3cpath%20d='M8%2014h.01'/%3e%3cpath%20d='M12%2014h.01'/%3e%3cpath%20d='M16%2014h.01'/%3e%3cpath%20d='M8%2017h.01'/%3e%3cpath%20d='M12%2017h.01'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3crect%20x='4'%20y='5.5'%20width='16'%20height='15'%20rx='2.5'/%3e%3cpath%20d='M8%203.5v4'/%3e%3cpath%20d='M16%203.5v4'/%3e%3cpath%20d='M4%2010h16'/%3e%3cpath%20d='M8%2014h.01'/%3e%3cpath%20d='M12%2014h.01'/%3e%3cpath%20d='M16%2014h.01'/%3e%3cpath%20d='M8%2017h.01'/%3e%3cpath%20d='M12%2017h.01'/%3e%3c/svg%3e")}.workHeader .tabs .workNavStaticIcon--book{-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M11.8%206.8c-2.2-2-5.6-2.1-8.2-.5v13.2c2.7-1.6%206.2-1.4%208.2.7V6.8z'/%3e%3cpath%20d='M12.2%206.8c2.2-2%205.6-2.1%208.2-.5v13.2c-2.7-1.6-6.2-1.4-8.2.7V6.8z'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M11.8%206.8c-2.2-2-5.6-2.1-8.2-.5v13.2c2.7-1.6%206.2-1.4%208.2.7V6.8z'/%3e%3cpath%20d='M12.2%206.8c2.2-2%205.6-2.1%208.2-.5v13.2c-2.7-1.6-6.2-1.4-8.2.7V6.8z'/%3e%3c/svg%3e")}.workHeader .tabs .workNavStaticIcon--stats{-webkit-mask-image:url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20version='1.1'%20viewBox='0%200%2020%2020'%3e%3c!--%20Generator:%20Adobe%20Illustrator%2030.6.0,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%202.1.4%20Build%20109)%20--%3e%3cg%20id='Ebene_2'%3e%3crect%20width='20'%20height='20'%20fill='none'/%3e%3c/g%3e%3cg%20id='Ebene_1'%3e%3cpath%20d='M1.93,16.65h16.13'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3cpath%20d='M3.45,16.65V3.75h2.62v12.91'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3cpath%20d='M8.82,16.65V6.97h2.62v9.68'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3cpath%20d='M14.2,16.65v-6.45h2.62v6.45'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3c/g%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20version='1.1'%20viewBox='0%200%2020%2020'%3e%3c!--%20Generator:%20Adobe%20Illustrator%2030.6.0,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%202.1.4%20Build%20109)%20--%3e%3cg%20id='Ebene_2'%3e%3crect%20width='20'%20height='20'%20fill='none'/%3e%3c/g%3e%3cg%20id='Ebene_1'%3e%3cpath%20d='M1.93,16.65h16.13'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3cpath%20d='M3.45,16.65V3.75h2.62v12.91'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3cpath%20d='M8.82,16.65V6.97h2.62v9.68'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3cpath%20d='M14.2,16.65v-6.45h2.62v6.45'%20fill='none'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.46'/%3e%3c/g%3e%3c/svg%3e")}.workHeader .tabs .workNavStaticIcon--settings{-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M9.7%203.5h4.6l.55%202.55c.5.2.98.48%201.42.82l2.45-.82%202.3%203.98-1.9%201.72c.04.26.06.52.06.78s-.02.52-.06.78l1.9%201.72-2.3%203.98-2.45-.82c-.44.34-.92.62-1.42.82l-.55%202.55H9.7l-.55-2.55a6.7%206.7%200%200%201-1.42-.82l-2.45.82-2.3-3.98%201.9-1.72a5.4%205.4%200%200%201-.06-.78c0-.26.02-.52.06-.78l-1.9-1.72%202.3-3.98%202.45.82c.44-.34.92-.62%201.42-.82L9.7%203.5z'/%3e%3ccircle%20cx='12'%20cy='12'%20r='3.2'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M9.7%203.5h4.6l.55%202.55c.5.2.98.48%201.42.82l2.45-.82%202.3%203.98-1.9%201.72c.04.26.06.52.06.78s-.02.52-.06.78l1.9%201.72-2.3%203.98-2.45-.82c-.44.34-.92.62-1.42.82l-.55%202.55H9.7l-.55-2.55a6.7%206.7%200%200%201-1.42-.82l-2.45.82-2.3-3.98%201.9-1.72a5.4%205.4%200%200%201-.06-.78c0-.26.02-.52.06-.78l-1.9-1.72%202.3-3.98%202.45.82c.44-.34.92-.62%201.42-.82L9.7%203.5z'/%3e%3ccircle%20cx='12'%20cy='12'%20r='3.2'/%3e%3c/svg%3e")}.workHeader .tabs .workNavStaticIcon--home{-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M3.5%2011.5L12%204l8.5%207.5'/%3e%3cpath%20d='M5.5%2010.5V20h13v-9.5'/%3e%3cpath%20d='M9.5%2020v-5.5h5V20'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M3.5%2011.5L12%204l8.5%207.5'/%3e%3cpath%20d='M5.5%2010.5V20h13v-9.5'/%3e%3cpath%20d='M9.5%2020v-5.5h5V20'/%3e%3c/svg%3e")}.workHeader .tabs .workNavStaticIcon--search{-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3ccircle%20cx='10.8'%20cy='10.8'%20r='6.2'/%3e%3cpath%20d='M16%2016l4.5%204.5'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3ccircle%20cx='10.8'%20cy='10.8'%20r='6.2'/%3e%3cpath%20d='M16%2016l4.5%204.5'/%3e%3c/svg%3e")}.workHeader .tabs .workNavStaticIcon--flag{-webkit-mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M6%2021V4'/%3e%3cpath%20d='M6%205h10l-1.4%203L16%2011H6'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20aria-hidden='true'%3e%3cpath%20d='M6%2021V4'/%3e%3cpath%20d='M6%205h10l-1.4%203L16%2011H6'/%3e%3c/svg%3e")}.workHeader .tabs .workNavStableBtn:not(.active){color:#aeb8c4!important;box-shadow:none!important;filter:none!important;background:#1a2029!important;border-color:#2d3541!important;transform:none!important}.workHeader .tabs .workNavStableBtn:not(.active):hover,.workHeader .tabs .workNavStableBtn:not(.active):focus-visible{color:#fff!important;filter:none!important;background:#1a2029!important;border-color:#ffffff75!important;transform:none!important;box-shadow:inset 0 0 0 1px #ffffff1a!important}.workHeader .tabs .workNavStableBtn.active.dateActive.today,.workHeader .tabs .workNavStableBtn.active.dateActive.past,.workHeader .tabs .workNavStableBtn.active.dateActive.future{color:#000001!important}.workHeader .tabs .workNavStableBtn.active.globalActive{background:var(--button-bg)!important;color:var(--ui-text)!important;border-color:#ffffff4d!important;box-shadow:inset 0 0 0 2px #ffffff2e!important}.workHeader .tabs .workNavStableBtn,.workHeader .tabs .workNavStableBtn:hover,.workHeader .tabs .workNavStableBtn:focus-visible,.workHeader .tabs .workNavStableBtn:active,.workHeader .tabs .workNavStableBtn .workNavStaticIcon{filter:none!important;transition:none!important;transform:none!important}.accountCustomerActions{align-items:center;justify-content:flex-end!important}.accountLogoutButton,.accountLogoutButton span{color:#fff!important}.accountLogoutButton svg{color:var(--button-danger-text)!important}


/* v1.2.195.8 – UI-Runde: permanente Makro-Ampel, Magic-Quellenhinweis, BMI-Referenzen */
.selectionOnlyAction {
  align-items: center;
  justify-content: flex-end;
}
.selectionMacroSignal {
  display: inline-grid;
  grid-template-columns: repeat(3, 8px);
  gap: 4px;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 32px;
  margin-right: .08rem;
}
.selectionMacroDot,
.magicGapSourceDot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.12);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.selectionMacroDot.active.nutrient-fat,
.magicGapSourceDot.nutrient-fat { background: var(--nutrient-fat); }
.selectionMacroDot.active.nutrient-carbs,
.magicGapSourceDot.nutrient-carbs { background: var(--nutrient-carbs); }
.selectionMacroDot.active.nutrient-protein,
.magicGapSourceDot.nutrient-protein { background: var(--nutrient-protein); }
.selectionMacroDot:not(.active) { opacity: .28; }
.magicGapHint {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .28em;
}
.magicGapSourceDots {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 1em;
}
.bmiReferenceMarker {
  cursor: help;
  outline: none;
}
.bmiReferenceMarker circle {
  vector-effect: non-scaling-stroke;
  stroke-width: 1.35;
}
.bmiReferenceStart circle {
  fill: var(--ui-card);
  stroke: #ffffff;
}
.bmiReferenceTarget circle {
  fill: var(--day-current);
  stroke: rgba(5,8,7,.92);
}
.bmiReferencePill {
  position: absolute;
  left: 50%;
  top: -1.1rem;
  z-index: 5;
  transform: translate(-50%, -4px);
  opacity: 0;
  pointer-events: none;
  white-space: nowrap;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  background: rgba(17,24,32,.97);
  color: var(--ui-text);
  padding: .34rem .62rem;
  font-size: .72rem;
  line-height: 1.1;
  font-weight: 700;
  box-shadow: 0 10px 28px rgba(0,0,1,.36);
  transition: opacity .12s ease, transform .12s ease;
}
.bmiDonutWrap:has(.bmiReferenceStart:hover) .bmiReferencePillStart,
.bmiDonutWrap:has(.bmiReferenceStart:focus) .bmiReferencePillStart,
.bmiDonutWrap:has(.bmiReferenceStart:focus-visible) .bmiReferencePillStart,
.bmiDonutWrap:has(.bmiReferenceTarget:hover) .bmiReferencePillTarget,
.bmiDonutWrap:has(.bmiReferenceTarget:focus) .bmiReferencePillTarget,
.bmiDonutWrap:has(.bmiReferenceTarget:focus-visible) .bmiReferencePillTarget {
  opacity: 1;
  transform: translate(-50%, 0);
}
@media (max-width: 600px) {
  .selectionMacroSignal {
    grid-template-columns: repeat(3, 7px);
    gap: 3px;
    min-width: 27px;
  }
  .selectionMacroDot,
  .magicGapSourceDot {
    width: 7px;
    height: 7px;
  }
  .bmiReferencePill {
    font-size: .68rem;
    max-width: calc(100vw - 34px);
  }
}


/* v1.2.195.9 – Tagesliste terminology + UI refinements */
.selectionMacroSignal {
  grid-template-columns: 8px;
  grid-template-rows: repeat(3, 8px);
  gap: 4px;
  min-width: 8px;
  min-height: 32px;
}
.selectionMacroDot:not(.active) {
  background: rgba(174,184,196,.42);
  opacity: 1;
  box-shadow: none;
}
.planAmountGroup .nutritionSignalSegment {
  background: rgba(174,184,196,.38);
}
.plannerListSearchCard .plannerListSearchClear {
  right: calc(.75rem + 4px) !important;
}
@media (max-width: 600px), (orientation: landscape) and (max-height: 500px) {
  .plannerMobileTabsStandalone {
    grid-column: 1 / -1;
    margin-top: 0;
  }
  .selectionMacroSignal {
    grid-template-columns: 7px;
    grid-template-rows: repeat(3, 7px);
    gap: 3px;
    min-width: 7px;
    min-height: 27px;
  }
}


/* v1.2.195.10 – UI polish: four-position source signal, BMI cursor, AutoKcal placeholder */
.selectionMacroSignal {
  grid-template-columns: 4px !important;
  grid-template-rows: repeat(4, 4px) !important;
  gap: 2px !important;
  min-width: 4px !important;
  min-height: 22px !important;
  margin-right: .08rem;
}
.selectionMacroDot {
  width: 4px !important;
  height: 4px !important;
  border-radius: 999px;
  background: rgba(174,184,196,.38) !important;
  opacity: 1 !important;
  box-shadow: none !important;
}
.selectionMacroDot.active.nutrient-kcal { background: var(--nutrient-kcal) !important; }
.selectionMacroDot.active.nutrient-fat { background: var(--nutrient-fat) !important; }
.selectionMacroDot.active.nutrient-carbs { background: var(--nutrient-carbs) !important; }
.selectionMacroDot.active.nutrient-protein { background: var(--nutrient-protein) !important; }
.bmiReferenceMarker { cursor: default !important; }
.magicAutoKcalCard { align-self: start; }
.magicAutoKcalHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.magicAutoKcalHead h2 { margin: 0; }
.magicAutoKcalDisabledSwitch { flex: 0 0 auto; }
.magicAutoKcalNote { margin: .75rem 0 0; }
@media (max-width: 600px), (orientation: landscape) and (max-height: 500px) {
  .selectionMacroSignal {
    grid-template-columns: 4px !important;
    grid-template-rows: repeat(4, 4px) !important;
    gap: 2px !important;
    min-width: 4px !important;
    min-height: 22px !important;
  }
  .selectionMacroDot {
    width: 4px !important;
    height: 4px !important;
  }
}


/* v1.2.195.11 – source-list traffic lights exactly match Tagesliste */
.selectionMacroSignal {
  grid-template-columns: 7px !important;
  grid-template-rows: repeat(4, 7px) !important;
  gap: 2px !important;
  min-width: 7px !important;
  min-height: 34px !important;
  height: 34px !important;
  align-content: center !important;
}
.selectionMacroDot {
  width: 7px !important;
  height: 7px !important;
  min-width: 7px !important;
  min-height: 7px !important;
}
@media (max-width: 600px), (orientation: landscape) and (max-height: 500px) {
  .selectionMacroSignal {
    grid-template-columns: 7px !important;
    grid-template-rows: repeat(4, 7px) !important;
    gap: 2px !important;
    min-width: 7px !important;
    min-height: 34px !important;
    height: 34px !important;
  }
  .selectionMacroDot {
    width: 7px !important;
    height: 7px !important;
    min-width: 7px !important;
    min-height: 7px !important;
  }
}


/* v1.2.195.12 – Magic feedback / badges */
.planBoxCard .magicFeedback{
  border-color:color-mix(in srgb,var(--day-current) 72%,transparent)!important;
}
.magicGapSourceLabel{
  font-weight:700;
  white-space:nowrap;
}
.magicGapSourceLabel.nutrient-fat{color:var(--nutrient-fat)}
.magicGapSourceLabel.nutrient-carbs{color:var(--nutrient-carbs)}
.magicGapSourceLabel.nutrient-protein{color:var(--nutrient-protein)}
.favoriteCard .btnBadge{
  border-color:#121820!important;
}


/* v1.2.195.13 – Konto-/Badge-/Magic-Feinschliff */
/* Anzeigename is the only directly editable row in the otherwise server-owned account facts. */
.authFields .displayNameField input:not(:disabled){
  opacity:1;
}

/* Magic source point: exact 7 px traffic-light point, matching Tagesliste/source-list signals. */
.magicGapSourceLabel{
  display:inline-flex;
  align-items:center;
  gap:.32em;
}
.magicGapSourceLabel::before{
  content:"";
  width:7px;
  min-width:7px;
  height:7px;
  min-height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:none;
}

/* Badge cut-out: card/list surface from the Styleguide (#121820 / --ui-surface). */
.favoriteCard .btnBadge,
.resultCard .btnBadge{
  border-color:var(--ui-surface)!important;
  box-shadow:0 0 0 1px var(--ui-surface)!important;
}

/* Same typography as the existing "Angemeldet bleiben" row. */
.reminderToggleRow>span{
  color:var(--ui-text);
  font-size:inherit;
  font-weight:400;
}


/* v1.2.195.14 – Badge-Ausstanzung exakt auf derselben Listenfläche */
.favoriteCard,
.resultCard{
  --mk-list-card-surface:#121820;
  background:var(--mk-list-card-surface)!important;
}
.favoriteCard .btnBadge,
.resultCard .btnBadge{
  border-color:var(--mk-list-card-surface)!important;
  box-shadow:none!important;
}


/* v1.2.195.15 – Badge echte Ausstanzung / Login-Haken */
.favoriteCard .btnBadge,
.resultCard .btnBadge{
  z-index:2;
  border-color:var(--mk-list-card-surface)!important;
  box-shadow:0 0 0 3px var(--mk-list-card-surface)!important;
}
/* Beim Pre-Auth-Login bleibt der normale grüne Haken-Press-Feedback trotz kurzzeitigem disabled sichtbar. */
.authLoginActions .iconBtn.successFlash:disabled{opacity:1!important;}


/* v1.2.195.16 – Tagesziele relative Datumszeile */
.targetWeightCombinedCard .cardDateLine,
.targetsCardCompact .cardDateLine{
  color:var(--day-current);
  font-weight:700;
}


/* v1.2.195.18 – Chat45 UI-Runde */
/* Makronährwerte in Bibliothek/Gerichte entsprechend dem etablierten Farbkonzept. */
.favoriteCard .selectionNutrition .nutritionKcal{color:var(--nutrient-kcal)!important}
.favoriteCard .selectionNutrition .nutritionFat{color:var(--nutrient-fat)!important}
.favoriteCard .selectionNutrition .nutritionCarbs{color:var(--nutrient-carbs)!important}
.favoriteCard .selectionNutrition .nutritionProtein{color:var(--nutrient-protein)!important}
.favoriteCard .selectionNutrition .nutritionMacroValues>span{font-weight:400}

/* Tageslisten-Auswahl: große Außenkachel wie alle datumsbezogenen Hauptkacheln. */
.favoriteLibraryCard.dayTone{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--day-current-strong) 30%,#ffffff14)}
.favoriteLibraryCard.dayTone:before{content:"";background:var(--day-current-strong);border-radius:20px 0 0 20px;width:5px;position:absolute;top:0;bottom:0;left:0}

/* Tagesliste: die Subkachel selbst ist die Drag-Fläche; kein separater 6-Punkt-Griff. */
.planLine.planDragSurface{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:auto}
.planEntryBlock.dragging .planLine.planDragSurface{cursor:grabbing;touch-action:none}
.planLine.planDragSurface:focus-visible{outline:1px solid color-mix(in srgb,var(--day-current) 65%,transparent);outline-offset:2px}
.planLine.planDragSurface button,.planLine.planDragSurface input{user-select:auto}

/* Einstellungen mobil: Reiter folgen der Textbreite statt gleich breiter Rasterspalten. */
@media (max-width:720px){
  .favoriteSubTabs.settingsSubTabs{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;align-items:center!important;width:100%!important;gap:.42rem!important}
  .favoriteSubTabs.settingsSubTabs button{flex:0 0 auto!important;width:auto!important;min-width:0!important;padding:.44rem .72rem!important}
}

/* iPhone/kleine Displays: Ampel direkt links vor Plus; Placeholder komplett lesbar. */
@media (max-width:600px),(orientation:landscape) and (max-height:500px){
  .favoriteLibraryCard.dayTone:before{width:4px}
  .favoriteCardContent,.foodFavoriteCard .favoriteCardContent{grid-template-columns:minmax(0,1fr) 54px!important;column-gap:.42rem!important}
  .favoriteCardContent .selectionOnlyAction,.foodFavoriteCard .favoriteCardContent .selectionOnlyAction{grid-area:1/2/span 8!important;place-self:center end!important;width:54px!important;display:flex!important;flex-wrap:nowrap!important;justify-content:flex-end!important;align-items:center!important;gap:.42rem!important;margin:0!important}
  .favoriteCardContent .selectionOnlyAction .selectionMacroSignal{flex:0 0 7px!important;margin:0!important}
  .plannerListSearchCard input::placeholder{font-size:.78rem}
}


/* v1.2.195.19 – Chat45 Login iPhone + Touch-Drag */
.planLine.planDragSurface{-webkit-touch-callout:none}
.authLoginNotice:empty{display:none!important}
@media (max-width:760px){
  .authLoginHead{display:flex!important;flex-direction:row!important;align-items:flex-start!important;justify-content:space-between!important;gap:.65rem!important}
  .authLoginHead .dialogRoundBtn{flex:0 0 40px!important;justify-self:auto!important;margin:0 0 0 auto!important}
  .authLoginFields{margin-top:.65rem!important;gap:.55rem!important}
  .authLoginActions{margin-top:.55rem!important;gap:.45rem!important}
}


/* Chat45 v1.2.195.20 – Donut-Farblogik konsequent durchziehen. */
.donutMeter.plannerNutrientColor:not(.inactive):not(.over) .donutProgress,
.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor:not(.inactive):not(.over) .donutProgress{
  stroke:var(--nutrient-color)!important;
}
.donutMeter.journalDayColor:not(.inactive):not(.over) .donutProgress{
  stroke:var(--day-current-strong)!important;
}
.donutMeter.plannerNutrientColor .donutRest,
.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor .donutRest,
.donutMeter.journalDayColor .donutRest,
.donutMeter.plannerNutrientColor .donutRest.over,
.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor .donutRest.over,
.donutMeter.journalDayColor .donutRest.over{
  color:var(--nutrient-color)!important;
}
.donutMeter.over:not(.inactive) .donutTrack,
.donutMeter.over:not(.inactive) .donutProgress,
.donutMeter.plannerNutrientColor.over:not(.inactive) .donutProgress,
.donutMeter.journalDayColor.over:not(.inactive) .donutProgress,
.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor.over:not(.inactive) .donutProgress{
  stroke:#FF3232!important;
}

/* iOS: nativer Touch-Drag wird bereits vor Touchstart nicht-passiv registriert. */
.planLine.planDragSurface{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.planEntryBlock.dragging .planLine.planDragSurface{touch-action:none}


/* Chat45 v1.2.195.21 – einheitliches Donut-Farbsystem + iPhone Konto-Feinschliff. */
/* Donut-Ringe bleiben auch bei Zielüberschreitung konsequent in der Makrofarbe. */
.donutMeter.over:not(.inactive) .donutTrack{
  stroke:#1A1D20!important;
}
.donutMeter.over:not(.inactive) .donutProgress,
.donutMeter.plannerNutrientColor.over:not(.inactive) .donutProgress,
.donutOverview.plannerDayContext .donutMeter.plannerNutrientColor.over:not(.inactive) .donutProgress{
  stroke:var(--nutrient-color)!important;
}
/* Warnung ohne zusätzliche Ringfarbe: nur der tatsächlich erreichte Wert wird rot. */
.donutMeter.over:not(.inactive) .donutCenter strong{
  color:var(--button-danger-text)!important;
}
/* Die Statuszeile unter dem Donut bleibt in ihrer Makrofarbe. */
.donutMeter.over:not(.inactive) .donutRest{
  color:var(--nutrient-color)!important;
}

/* iPhone: Konto-Subkacheln dürfen durch lange Feldinhalte nicht nach rechts überbreit werden. */
@media (max-width:600px) and (orientation:portrait){
  .settingsAccountGrid,
  .settingsAccountGrid .settingsInnerCard,
  .settingsAccountGrid .accountOverviewCard,
  .settingsAccountGrid .accountSubCard,
  .settingsAccountGrid .authFields,
  .settingsAccountGrid .authFieldRow,
  .settingsAccountGrid .authFieldRow input{
    min-width:0!important;
    max-width:100%!important;
  }
  .settingsAccountGrid .accountSubCard{
    width:100%!important;
  }
}


/* MagicKcal AppServer 1.2.195.22 – Chat 46 UI-Freigaberunde */
.quantityWheelPanelCompact{width:min(250px,calc(100% - 1rem));padding:.55rem;border-radius:20px}
.quantityWheelCompactRow{display:grid;grid-template-columns:minmax(0,168px) 44px;align-items:center;justify-content:center;gap:.55rem}
.quantityWheelPanelCompact .quantityWheelViewport{width:168px;max-width:168px;height:176px}
.quantityWheelPanelCompact .quantityWheelClose{width:44px;height:44px;min-width:44px;align-self:center}

.weightTrendChartPhone .weightTrendAxisLabel{font-size:18px}
.weightTrendChartPhone .weightTrendDateLabel{font-size:16px}

.dishNameSaveRow>label{display:block!important;min-width:0}
.dishNameSaveRow>label>input{width:100%}
.ingredientAddRow{grid-template-columns:minmax(0,1fr) 112px auto!important;align-items:end}
.ingredientAddRow>label{display:block!important;min-width:0}
.ingredientAddRow>label>select{width:100%;min-width:0}
.dishIngredientLine.dishIngredientDragSurface{grid-template-columns:auto minmax(0,1fr)!important;align-items:start!important;gap:.75rem;padding:.72rem;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:auto}
.dishIngredientLine.dishIngredientDragSurface:focus-visible{outline:2px solid color-mix(in srgb,var(--day-current,var(--day-today-text)) 72%,white 28%);outline-offset:2px}
.dishIngredientLine.dishIngredientDragSurface.dragging{z-index:12;opacity:.96;cursor:grabbing;touch-action:none;border-color:color-mix(in srgb,var(--day-current,var(--day-today-text)) 68%,#2a3340 32%);box-shadow:0 12px 28px #00000147;transform:scale(1.012)}
.dishIngredientDragSurface button,.dishIngredientDragSurface input,.dishIngredientDragSurface textarea,.dishIngredientDragSurface select{user-select:auto;-webkit-user-select:auto}
.dishIngredientNutrition{display:flex;align-items:baseline;flex-wrap:wrap;gap:0!important}
.dishIngredientNutrition .nutritionDivider{display:inline!important}
.dishIngredientNutrition .nutritionMacroValues{display:inline!important;margin:0!important}
.dishIngredientNutrition .nutritionKcal{color:var(--nutrient-kcal)!important}
.dishIngredientNutrition .nutritionFat{color:var(--nutrient-fat)!important}
.dishIngredientNutrition .nutritionCarbs{color:var(--nutrient-carbs)!important}
.dishIngredientNutrition .nutritionProtein{color:var(--nutrient-protein)!important}
.dishUsedNotice{margin-top:1rem}

.accountKcButton,.faqTourButton{display:inline-flex;align-items:center;gap:.48rem}
.accountKcButton:before,.faqTourButton:before{content:"";display:inline-block;width:22px;height:22px;flex:0 0 auto;background:#fff;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.accountKcButton:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='8' r='3.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.5 19c1-4.1 3.3-6.2 6.5-6.2s5.5 2.1 6.5 6.2' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='8' r='3.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.5 19c1-4.1 3.3-6.2 6.5-6.2s5.5 2.1 6.5 6.2' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.faqTourButton:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='8.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M15.2 8.8 13.1 13.1 8.8 15.2l2.1-4.3 4.3-2.1Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='8.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M15.2 8.8 13.1 13.1 8.8 15.2l2.1-4.3 4.3-2.1Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.faqActions{justify-content:flex-end!important}
.settingsFaqHeadline{display:block!important;max-width:none!important;margin:0!important;font-size:1.5em!important;line-height:1.15!important;letter-spacing:normal!important;white-space:nowrap!important}
.faqCard.today .settingsFaqHeadline{color:var(--day-today-text)!important}
.faqCard.past .settingsFaqHeadline{color:var(--day-past-text)!important}
.faqCard.future .settingsFaqHeadline{color:var(--day-future-text)!important}
.settingsFaqHeadline span{display:inline!important;color:inherit!important}

@media(max-width:760px){
  .ingredientAddRow{grid-template-columns:minmax(0,1fr) 104px auto!important}
  .dishIngredientLine.dishIngredientDragSurface{grid-template-columns:auto minmax(0,1fr)!important}
}


/* MagicKcal AppServer 1.2.195.23 – Chat 46 UI Follow-up */
/* FAQ headline follows the normal app H2 typography and fixed headline green. */
.settingsFaqHeadline{font-size:var(--type-hl1)!important;font-weight:700!important;line-height:normal!important;letter-spacing:normal!important;color:var(--day-today-text)!important;white-space:nowrap!important}
.faqCard.today .settingsFaqHeadline,.faqCard.past .settingsFaqHeadline,.faqCard.future .settingsFaqHeadline{color:var(--day-today-text)!important}

/* iPhone quantity wheel: selected source remains clearly active until confirm. */
input.quantityWheelSourceActive{border-color:var(--day-today-text)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--day-today-text) 18%,transparent)!important}
.quantityWheelCompactRow{grid-template-columns:minmax(0,168px) 44px!important;align-items:center!important}
.quantityWheelActions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}
.quantityWheelPanelCompact .quantityWheelCancel{box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:0;border-radius:50%}

/* Dish ingredient picker must use the app dark UI on every platform. */
.ingredientAddRow select{color-scheme:dark;color:var(--ui-text)!important;background:#151a21!important;border-color:#303846!important}
.ingredientAddRow select option{color:var(--ui-text);background:#151a21}

/* Exact readable separators and macro colors in dish editor. */
.dishIngredientNutrition{display:flex!important;align-items:baseline;flex-wrap:wrap;gap:0!important}
.dishIngredientNutrition .nutritionDivider,.dishTotalNutrition .nutritionDivider{display:inline-block!important;color:var(--ui-muted)!important;margin:0 .34em!important}
.dishTotalNutrition{display:inline;white-space:normal}
.dishTotalNutrition .nutritionKcal{color:var(--nutrient-kcal)!important}
.dishTotalNutrition .nutritionFat{color:var(--nutrient-fat)!important}
.dishTotalNutrition .nutritionCarbs{color:var(--nutrient-carbs)!important}
.dishTotalNutrition .nutritionProtein{color:var(--nutrient-protein)!important}

/* Native touch-drag owns iPhone/iPad gestures after the hold delay. */
.dishIngredientLine.dishIngredientDragSurface{touch-action:auto!important}
.dishIngredientLine.dishIngredientDragSurface.dragging{touch-action:none!important;border-color:var(--day-today-text)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--day-today-text) 28%,transparent),0 12px 28px #00000147!important}


/* MagicKcal AppServer 1.2.195.24 – Chat 46 UI final touch round */
/* Wheel actions: exact round dialog-button geometry from the app styleguide. */
.quantityWheelPanelCompact .quantityWheelClose,
.quantityWheelPanelCompact .quantityWheelCancel{
  box-sizing:border-box!important;
  aspect-ratio:1!important;
  flex:0 0 40px!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  padding:0!important;
  border-radius:50%!important;
}
.quantityWheelCompactRow{grid-template-columns:minmax(0,168px) 40px!important}

/* Native select/picker follows MagicKcal's dark UI on iPhone/iPad as well. */
.ingredientAddRow,
.ingredientAddRow select,
.ingredientAddRow select:focus,
.ingredientAddRow select option{
  color-scheme:dark!important;
}
.ingredientAddRow select,
.ingredientAddRow select:focus{
  background-color:#151a21!important;
  color:var(--ui-text)!important;
  border-color:#303846!important;
}
.ingredientAddRow select option{
  background-color:#151a21!important;
  color:var(--ui-text)!important;
}

/* Dish ingredient hold-drag: suppress callout/selection; active row owns the touch gesture. */
.dishIngredientLine.dishIngredientDragSurface{
  -webkit-touch-callout:none!important;
  -webkit-user-select:none!important;
  user-select:none!important;
  touch-action:auto!important;
}
.dishIngredientLine.dishIngredientDragSurface.dragging{
  touch-action:none!important;
}

/* iPhone: first Tagesliste card starts at the exact same Y offset as Auswahl. */
@media (max-width:600px) and (orientation:portrait){
  .plannerMerklistePane.planRestBlock{margin-top:0!important}
}


/* MagicKcal AppServer 1.2.195.25 – Chat 46 final iPad/dialog fixes */
/* iPhone/iPad: native select popovers are OS-rendered and can ignore page dark mode.
   Use an in-app selector so field AND list stay in the MagicKcal dark UI. */
.ingredientTouchSelect{
  position:relative;
  width:100%;
  min-height:40px;
  padding:.55rem 2rem .55rem .68rem;
  border:1px solid #303846;
  border-radius:12px;
  background:#151a21;
  color:var(--ui-text);
  font:inherit;
  line-height:1.2;
  text-align:left;
  cursor:pointer;
}
.ingredientTouchSelect::after{
  content:"⌄";
  position:absolute;
  right:.68rem;
  top:50%;
  transform:translateY(-54%);
  color:#FFFFFF;
  font-weight:700;
  pointer-events:none;
}
.ingredientTouchSelect.invalidInput{border-color:#FF3232!important}
.ingredientTouchPickerBackdrop{
  position:fixed;
  inset:0;
  z-index:140;
  display:grid;
  place-items:center;
  padding:16px;
  background:#000001B8;
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
  overscroll-behavior:none;
}
.ingredientTouchPickerPanel{
  width:min(560px,100%);
  max-height:min(76dvh,720px);
  overflow:hidden;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  background:#141920;
  border:1px solid #ffffff26;
  border-radius:22px;
  box-shadow:0 30px 90px #0000018C;
}
.ingredientTouchPickerHead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.8rem;
  padding:.85rem .9rem;
  border-bottom:1px solid #2b3440;
}
.ingredientTouchPickerHead h3{margin:0;color:var(--ui-text)}
.ingredientTouchPickerList{
  min-height:0;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  padding:.35rem;
}
.ingredientTouchPickerOption{
  display:block;
  width:100%;
  min-height:46px;
  padding:.62rem .72rem;
  border:0;
  border-bottom:1px solid #252d38;
  border-radius:10px;
  background:transparent;
  color:var(--ui-text);
  font:inherit;
  text-align:left;
}
.ingredientTouchPickerOption:last-child{border-bottom:0}
.ingredientTouchPickerOption.active{
  background:color-mix(in srgb,var(--day-today-text) 13%,#151a21 87%);
  outline:1px solid color-mix(in srgb,var(--day-today-text) 55%,#303846 45%);
}

/* iPad/iPhone dish sorting: use the native non-passive TouchEvent path on both.
   The work page itself is scroll-locked while the dish modal is open, so a first
   touch cannot move the covered background. The modal panel keeps its own scroll. */
.dishModalBackdrop{overscroll-behavior:none}
.dishModalPanel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}


/* MagicKcal AppServer 1.2.195.26 – Konto-Renderstabilität
   „Sitzung beenden“ bleibt beim Umschalten von „Angemeldet bleiben“ visuell
   exakt stabil, obwohl der Button während des kurzen Server-Requests gesperrt ist. */
.accountCustomerActions .accountLogoutButton,
.accountCustomerActions .accountLogoutButton:disabled{
  opacity:1!important;
  background:#222832!important;
  border-color:#2d3541!important;
  filter:none!important;
  transform:none!important;
  transition:none!important;
}
.accountCustomerActions .accountLogoutButton:disabled span{opacity:1!important;color:#fff!important}
.accountCustomerActions .accountLogoutButton:disabled svg{opacity:1!important;color:var(--button-danger-text)!important}


/* MagicKcal AppServer 1.2.195.27 – historischer Einstellungen/Suche-Kachelakzent
   Die frueheren komponentenspezifischen ::before-Regeln wurden in Chat 71
   entfernt. Akzentbalken und Kontur werden ausschliesslich zentral ueber KA-H
   in mk-ui-styleguide-v014.css gesteuert. */


/* =========================================================
   v1.2.195.28 – UI-Feinschliff Chat 47
   ========================================================= */

/* Tagesliste: erste Kachel auf dieselbe Y-Position wie in den anderen Reitern. */
.plannerMerklistePane.planRestBlock { margin-top: 0 !important; }

/* Einstellungen/Konto: historischer Wrapper-Akzent entfernt.
   Sichtbare Konto-Subkacheln folgen zentral dem KA-H-System; technische
   Gruppenwrapper bleiben unsichtbar. */

/* Meine Körperdaten: einheitliche Feldabstände und identische Control-Höhen. */
.targetWeightCombinedCard .weightAndHeightFields {
  display: grid !important;
  gap: .72rem !important;
}
.targetWeightCombinedCard .weightAndHeightFields .weightInputRow,
.targetWeightCombinedCard .weightAndHeightFields .bodyCompositionField {
  margin-top: 0 !important;
}
.targetWeightCombinedCard .bodyCompositionOptionalStart { margin-top: 0 !important; }
.targetWeightCombinedCard .bodyCompositionControl > .autoSaveInputShell,
.targetWeightCombinedCard .bodyCompositionControl > .autoSaveInputShell > input,
.targetWeightCombinedCard .bodyCompositionUnitToggle,
.targetWeightCombinedCard .bodyCompositionUnitToggle button {
  box-sizing: border-box;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
}

/* Gewichtsphase: Plus direkt rechts in der Überschrift; gespeicherte Phasen rücken hoch. */
.targetWeightCombinedCard .combinedPhaseHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin: 0 0 .7rem;
}
.targetWeightCombinedCard .combinedPhaseHead h3 { margin: 0 !important; }
.targetWeightCombinedCard .combinedPhaseHead .phaseAddBtn { margin-left: auto; }
.targetWeightCombinedCard .savedPhaseOverview { margin-top: .55rem; }

/* Temporärer Diagnosebutton zur Verifikation des Tageslisten-Buchungsfehlers. */
.planDiagnosticBtn { white-space: nowrap; }
@media (max-width:600px) {
  .plannerMerklistePane .compactActions { flex-wrap: wrap; }
}


/* =========================================================
   v1.2.195.29 – UI-Feinschliff: Tagesliste + Wheel-Modalität
   ========================================================= */

/* Tagesliste: der sticky Tagesstand darf beim ersten Rendern nicht tiefer
   als die erste Kachel anderer Reiter gedrückt werden. Die Sticky-Kante
   entspricht jetzt exakt der jeweiligen WorkHeader-Höhe. Dadurch bleibt
   zugleich der normale Grid-Abstand zwischen Kachel 1/2/3 erhalten. */
.plannerGrid{
  row-gap:.85rem!important;
}
@media (min-width:761px){
  .stickyPlanRest{top:66px!important;}
}
@media (min-width:601px) and (max-width:760px){
  .stickyPlanRest{top:56px!important;}
}
@media (max-width:600px) and (orientation:portrait){
  .datedWorkHeader+.grid .stickyPlanRest,
  .stickyPlanRest{top:102px!important;}
}
@media (max-width:600px) and (orientation:landscape){
  .stickyPlanRest{top:56px!important;}
}

/* Alle Zahlen-Wheels auf iPhone/iPad sind während der Auswahl modal:
   solange ein Wheel offen ist, fängt der Dock die komplette Touch-Fläche ab.
   Ein anderes Wertefeld kann erst nach Haken oder X aktiviert werden. */
.quantityWheelDock{
  inset:0!important;
  align-items:flex-end!important;
  justify-content:center!important;
  pointer-events:auto!important;
  touch-action:none;
}
.quantityWheelPanel{
  flex:0 1 430px;
  max-height:calc(100dvh - env(safe-area-inset-top) - .55rem);
}
.quantityWheelViewport,
.quantityWheelList,
.quantityWheelPanel button{
  touch-action:auto;
}


/* =========================================================
   v1.2.195.30 – UI-Feinschliff: Schloss + Tagesziele iOS
   ========================================================= */

/* Tagesliste: Magic-Mengenstatus.
   Entriegelt bleibt der normale weiße Ghost-Button.
   Verriegelt entspricht die Warnfarbe der X-/Danger-Logik:
   rotes Schloss, rote Umrandung, kein gelb/orange Hintergrund. */
.planLine .planLockBtn.locked{
  color:var(--button-danger-text)!important;
  border-color:color-mix(in srgb,var(--button-danger-text) 42%,var(--button-border))!important;
  background:color-mix(in srgb,var(--button-active-bg) 88%,white 12%)!important;
}
.planLine .planLockBtn.locked svg{
  color:currentColor!important;
}


/* MagicKcal AppServer 1.2.195.36 – mobile Tagesliste notices stay visible in Auswahl */
.plannerMobileSelectionNotices{display:none}
@media (max-width:600px), (orientation:landscape) and (max-height:500px){
  .plannerSelectionPane .plannerMobileSelectionNotices{display:block;margin-bottom:.72rem}
  .plannerSelectionPane .plannerMobileSelectionNotices .planRestrictionNotice:first-child{margin-top:0}
  .plannerSelectionPane .plannerMobileSelectionNotices .magicFeedback:first-child{margin-top:0}
}


/* =========================================================
   MagicKcal AppServer 1.2.195.44 – Chat48 iPhone-/Touch-Glättung
   - Tagesfarben fuer Auswahl/Tagesliste
   - app-eigener Kalender auf iPhone
   - Dialoghintergrund gesperrt
   - kompakter Lebensmittel-Editor
   - Suchbutton und engere Subkartenabstaende
   - Styleguide-Toggle/HL2 abgesichert
   ========================================================= */

/* iPhone nutzt denselben MagicKcal-Kalender wie iPad/Desktop statt des
   transparent darueberliegenden nativen date-inputs. */
@media (max-width:600px) and (orientation:portrait){
  .compactWorkDateNav .nativeDateInput{
    pointer-events:none!important;
  }
}

/* Tagesplaner: aktive mobile Bereichswahl folgt dem aktuell angezeigten Tag. */
.plannerMobileTabs.today{--mk-planner-tab-day:var(--day-today);--mk-planner-tab-text:#08130c}
.plannerMobileTabs.past{--mk-planner-tab-day:var(--day-past);--mk-planner-tab-text:#171104}
.plannerMobileTabs.future{--mk-planner-tab-day:var(--day-future);--mk-planner-tab-text:#071126}
.plannerMobileTabs.today button.active,
.plannerMobileTabs.past button.active,
.plannerMobileTabs.future button.active{
  background:var(--mk-planner-tab-day)!important;
  border-color:var(--mk-planner-tab-day)!important;
  color:var(--mk-planner-tab-text)!important;
}

/* Expliziter Suchen-Button in Auswahl. X bleibt innerhalb des Eingabefelds. */
.plannerListSearchCard{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:.5rem!important;
  display:grid!important;
  align-items:center!important;
}
.plannerListSearchInputGroup{
  min-width:0;
  position:relative;
}
.plannerListSearchInputGroup input{
  width:100%;
  padding-right:48px!important;
}
.plannerListSearchInputGroup .plannerListSearchClear{
  z-index:2;
  position:absolute!important;
  top:50%!important;
  right:4px!important;
  transform:translateY(-50%)!important;
  background:transparent!important;
  border:0!important;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  min-height:34px!important;
}
.plannerListSearchButton{
  box-sizing:border-box;
  min-height:40px;
  height:40px;
  padding:0 .82rem;
  border:1px solid var(--button-border-soft);
  border-radius:999px;
  background:color-mix(in srgb,var(--button-active-bg) 88%,white 12%);
  color:var(--ui-text);
  font-size:var(--type-button);
  font-weight:700;
}

/* Dialoge/Wheels sperren den Hintergrund auf iPhone/iPad. Der jeweilige
   Panelinhalt bleibt scrollbar und bedienbar. */
body:has(.modalBackdrop),
body:has(.quantityWheelDock),
body:has(.ingredientTouchPickerBackdrop),
body:has(.imagePreviewBackdrop){
  overflow:hidden!important;
  overscroll-behavior:none!important;
}
.modalBackdrop,
.ingredientTouchPickerBackdrop,
.imagePreviewBackdrop,
.quantityWheelDock{
  overscroll-behavior:contain;
  touch-action:none;
}
.modalPanel,
.ingredientTouchPickerPanel,
.imagePreviewPanel,
.quantityWheelPanel,
.quantityWheelViewport,
.quantityWheelList,
.quantityWheelPanel button,
.modalPanel input,
.modalPanel textarea,
.modalPanel select,
.modalPanel button{
  touch-action:pan-y;
}

/* Lebensmittel-Editor: Standard-Subkartenflaeche statt gruenlichem EditorBox-
   Tint; Nährwertzeilen auf kompakten Screens Label + Feld nebeneinander. */
.foodEditorTwoColumn.editorBox{
  background:var(--ui-surface)!important;
  border-color:var(--ui-border)!important;
}
@media (max-width:600px),(orientation:landscape) and (max-height:500px){
  .foodEditorFormGrid{
    gap:.48rem!important;
  }
  .foodEditorFormGrid .foodNutritionHeading{
    margin:.18rem 0 .04rem!important;
  }
  .foodEditorFormGrid .foodNutritionHeading~label{
    display:grid!important;
    grid-template-columns:minmax(116px,.8fr) minmax(0,1.2fr)!important;
    align-items:center!important;
    gap:.55rem!important;
  }
  .foodEditorFormGrid .foodNutritionHeading~label>input{
    width:100%!important;
    margin:0!important;
  }
}

/* Tagesliste: mobile Info-/Subkarten enger, ohne Touchziele zu verkleinern. */
@media (max-width:600px),(orientation:landscape) and (max-height:500px){
  .plannerSelectionPane .plannerMobileSelectionNotices{
    margin-bottom:.48rem!important;
  }
  .plannerSelectionPane .plannerMobileSelectionNotices .restrictionNotice,
  .plannerSelectionPane .plannerMobileSelectionNotices .magicFeedback{
    margin:.34rem 0!important;
  }
  .restrictionNotice{
    padding:.5rem .6rem!important;
  }
  .favoriteList{
    gap:.5rem!important;
  }
}

/* Styleguide-Audit: Kachel-/Abschnittsheadline HL2 = 18 px / 700. */
.globalTodayHeading{
  font-size:var(--type-hl2)!important;
  line-height:1.2!important;
  font-weight:700!important;
}

/* Styleguide-Audit: alle App-Toggles bleiben exakt bei der Mastergeometrie. */
.tipSwitch{
  box-sizing:border-box!important;
  width:64px!important;
  min-width:64px!important;
  max-width:64px!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  padding:4px!important;
  flex:0 0 64px!important;
}
.tipSwitchThumb{
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  border-radius:999px!important;
}


/* =========================================================
   MagicKcal AppServer 1.2.195.45 – Chat48 iPhone-UX Kompaktrunde
   - Tageslisten-Suche als kreisrunder Lupe-Button
   - Zielmedaillen-Ziffer auf iPhone auf normale Metric-Groesse
   - mobile Tageslisten-Hinweise deutlich kompakter
   - Gewichtsstatus auf iPhone in zwei Kacheln nebeneinander
   - Touch-Scrollbars ausblenden
   - iPhone-Vertikalabstaende reduzieren, Touchziele unveraendert
   ========================================================= */

/* Tagesliste / Auswahl: neue Suche ist eine echte Icon-only-Buttonfamilie. */
.plannerListSearchButton.iconOnlyButton{
  box-sizing:border-box!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  padding:0!important;
  border-radius:50%!important;
}

/* Touch: keine sichtbaren Browser-/System-Scrollleisten reservieren.
   Scrollen per Finger bleibt vollständig erhalten. */
@media (pointer:coarse){
  html{
    scrollbar-gutter:auto!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  body{
    overflow-y:auto!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  *{
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  html::-webkit-scrollbar,
  body::-webkit-scrollbar,
  *::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
  }
}

/* iPhone: Hauptziel ist mehr sichtbarer Inhalt bei unveränderten Touchflächen. */
@media (max-width:600px) and (orientation:portrait){
  .grid{
    gap:.62rem!important;
  }
  .card{
    padding:.82rem!important;
  }
  .cardHead{
    gap:.65rem!important;
  }

  /* Zielmedaille: Prozentziffer entspricht der normalen Subkachel-Metric. */
  .medalProgressValue strong{
    font-size:var(--type-metric)!important;
  }

  /* Tagesliste: Hinweise eng setzen; Typografie bleibt Styleguide-Hint. */
  .plannerSelectionPane .plannerMobileSelectionNotices{
    margin-bottom:.22rem!important;
  }
  .plannerSelectionPane .plannerMobileSelectionNotices .restrictionNotice,
  .plannerSelectionPane .plannerMobileSelectionNotices .magicFeedback{
    margin:.18rem 0!important;
    padding:.4rem .5rem!important;
    border-radius:11px!important;
    line-height:1.24!important;
  }
  .plannerSelectionPane .plannerMobileSelectionNotices .restrictionNotice{
    gap:.38rem!important;
  }
  .plannerSelectionPane .plannerMobileSelectionNotices .restrictionNotice svg{
    width:16px!important;
    height:16px!important;
    flex-basis:16px!important;
  }
  .plannerSelectionPane .plannerMobileSelectionNotices .magicFeedback p{
    line-height:1.24!important;
  }
  .plannerSelectionPane .plannerMobileSelectionNotices .magicFeedback p+p{
    margin-top:.12rem!important;
  }

  /* Gewichtsverlauf: zwei kleine Statuskacheln rechtsbündig nebeneinander. */
  .weightTrendChartWrap .statisticsWeightStatusGroup{
    position:static!important;
    width:100%!important;
    margin:.02rem 0 .22rem!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:stretch!important;
    gap:.3rem!important;
    pointer-events:none!important;
  }
  .weightTrendChartWrap .statisticsWeightStatusGroup .statisticsWeightStatus{
    position:static!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:.48rem .58rem .46rem!important;
    border-radius:14px!important;
    text-align:right!important;
    align-content:center!important;
    gap:.08rem!important;
  }
  .weightTrendChartWrap .statisticsWeightCurrent{
    flex:0 1 118px!important;
  }
  .weightTrendChartWrap .statisticsWeightChange{
    flex:0 1 136px!important;
  }
  .weightTrendChartWrap .statisticsWeightStatusGroup em,
  .weightTrendChartWrap .statisticsWeightStatusGroup strong,
  .weightTrendChartWrap .statisticsWeightStatusGroup span{
    white-space:nowrap;
  }
  .weightTrendChartWrap .statisticsWeightStatusGroup .statisticsStatusDate{
    margin-top:-.04rem!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.46 – Chat48 Feinschliff + Desktop-Buchung
   - Kachel-HLs wieder auf einheitliche HL1-Größe
   - Anzeigename-Feld ohne Außenlabel
   - Zielmedaillen-Ziffer exakt wie Tagesveränderung
   - Tageslisten-Auswahl vertikal kompakter
   - Gewichtsstatus-Kacheln mit sauberem Innenabstand
   ========================================================= */

/* Grundregel: normale Kachel-HLs sind gleich groß wie Tagesjournal /
   Mein Gewichtsverlauf. Die bewusst kleineren Sonder-HLs (u. a.
   Tagesstand nach Buchung, Gewichtsphase) verwenden diese Klasse nicht. */
.globalTodayHeading{
  font-size:var(--type-hl1)!important;
  line-height:1.2!important;
  font-weight:700!important;
}

/* Anzeigename: Placeholder übernimmt die Beschriftung; Feld nutzt die
   komplette vorhandene Eingabebreite. */
.displayNameField input{
  grid-column:1/-1!important;
  width:100%!important;
}

@media (max-width:600px) and (orientation:portrait){
  /* Exakt dieselbe Zahlengröße wie „Tagesveränderung (g/Tag)“. */
  .medalProgressValue strong{
    font-size:var(--type-achievements-number)!important;
  }

  /* Tagesliste: Bibliothek / Gerichte / Top 10 näher an die Hinweise. */
  .plannerSelectionPane .plannerMobileSelectionNotices{
    margin-bottom:0!important;
  }
  .plannerSelectionPane>.favoriteSubTabs{
    margin-top:-.16rem!important;
  }

  /* Gewichtsverlauf: Text nicht mehr am Rand der kleinen Statuskacheln. */
  .weightTrendChartWrap .statisticsWeightStatusGroup .statisticsWeightStatus{
    padding:.52rem .72rem .5rem!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.47 – Chat48 iPhone-UX Feinschliff
   - Gewichtsstatus-Kacheln sauber innerhalb des Diagramms
   - aktuelles Datum am Messpunkt auf iPhone rechtsbündig (JS)
   - Bild-Stift als graues Corner-Badge, Größe unverändert
   - Tageslisten-Reiter näher an die Außenkachel
   ========================================================= */

/* Alle Plattformen: Bearbeiten-Stift bleibt exakt gleich groß. Nur die
   Position wird zum Corner-Badge und der Hintergrund folgt dem DS-Grau
   der übrigen Ghost-Buttons. */
.imageEditBadge{
  background:color-mix(in srgb, var(--button-active-bg) 88%, white 12%)!important;
  bottom:-5px!important;
  right:-5px!important;
}

@media (max-width:600px) and (orientation:portrait){
  /* Gewichtsverlauf: beide Statuskacheln bleiben kompakt, haben aber genug
     Breite für die unveränderte Typografie. Rechts bleibt bewusst Luft zur
     umgebenden Hauptkachel. */
  .weightTrendChartWrap .statisticsWeightStatusGroup{
    box-sizing:border-box!important;
    padding-right:.42rem!important;
    gap:.42rem!important;
  }
  .weightTrendChartWrap .statisticsWeightStatusGroup .statisticsWeightStatus{
    box-sizing:border-box!important;
    padding:.5rem .62rem .48rem!important;
    overflow:hidden!important;
  }
  .weightTrendChartWrap .statisticsWeightCurrent{
    flex:0 0 138px!important;
    width:138px!important;
  }
  .weightTrendChartWrap .statisticsWeightChange{
    flex:0 0 144px!important;
    width:144px!important;
  }

  /* Tagesliste: Buttongröße unverändert; nur der Innenabstand der drei
     Reiter zur umgebenden Außenkachel wird ungefähr halbiert. */
  .plannerSelectionPane>.favoriteSubTabs{
    margin-left:-.4rem!important;
    margin-right:-.4rem!important;
  }
  .plannerSelectionPane .plannerMobileSelectionNotices:empty + .favoriteSubTabs{
    margin-top:-.42rem!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.48 – Chat48 iPhone-/Tageslisten-Feinschliff
   - iPhone-Reiter: vertikal kompakt, horizontal normales Kachelraster
   - Haupttab „Auswahl treffen“ (Text in JS)
   - Tageslisten-Anzahlbadge rot wie bestehende LM-/Button-Badges
   ========================================================= */
.plannerTabBadge{
  background:#FF3232!important;
  color:#fff!important;
}
@media (max-width:600px) and (orientation:portrait){
  .plannerSelectionPane>.favoriteSubTabs{
    margin-left:0!important;
    margin-right:0!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.49 – Chat48 iPad-Suchfeld-Fix
   - Tagesliste/Bibliothek/Gerichte: Suchfelder auf Touch-Tablets
     explizit als interaktive Textfelder in der obersten lokalen
     Stacking-Ebene halten. Finger-Scrollen bleibt erhalten.
   - JS fokussiert auf echtem Touch-/Pen-pointerup zusätzlich explizit.
   ========================================================= */
@media (hover:none) and (pointer:coarse) and (min-width:601px){
  .plannerListSearchInputGroup{
    position:relative!important;
    z-index:3!important;
    pointer-events:auto!important;
  }
  .plannerListSearchInputGroup input{
    position:relative!important;
    z-index:4!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-user-select:text!important;
    user-select:text!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.50 – Chat48 iPad-Suchfeld-X
   - Tagesliste/Bibliothek/Gerichte: Das vorhandene X bleibt auf iPad
     oberhalb des fokussierbaren Eingabefelds sichtbar und bedienbar.
   - Keine Aenderung an iPhone/Desktop oder an der Suchlogik.
   ========================================================= */
@media (hover:none) and (pointer:coarse) and (min-width:601px){
  .plannerListSearchInputGroup .plannerListSearchClear{
    z-index:6!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
}

/* =========================================================
   AppServer 1.2.195.53 – Touch-UX: Listenanfang-Overlay
   - iPhone/iPad: zentrierter Pfeil-nach-oben-Button fuer lange LM-/Gerichtelisten in Tagesfarbe.
   - erscheint nur nach deutlichem Scrollen innerhalb einer langen Liste.
   - Desktop bleibt unveraendert.
   ========================================================= */
.mkTouchListTopButton{
  position:fixed;
  left:50%;
  right:auto;
  bottom:max(22px,calc(env(safe-area-inset-bottom,0px) + 22px));
  z-index:8500;
  width:40px;
  min-width:40px;
  height:40px;
  min-height:40px;
  padding:0;
  margin:0;
  border:1px solid var(--day-today,#5ce08a);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#000001;
  background:var(--day-today,#5ce08a);
  box-shadow:0 8px 20px rgba(0,0,1,.38);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,8px);
  transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;
  -webkit-tap-highlight-color:transparent;
}
.mkTouchListTopButton[data-day-tone="past"]{
  background:var(--day-past,#fc6);
  border-color:var(--day-past,#fc6);
}
.mkTouchListTopButton[data-day-tone="future"]{
  background:var(--day-future,#7ea8ff);
  border-color:var(--day-future,#7ea8ff);
}
.mkTouchListTopButton svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.mkTouchListTopButton.isVisible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
  transition-delay:0s;
}
.mkTouchListTopButton:active{
  filter:brightness(1.12);
}
@media (hover:hover) and (pointer:fine){
  .mkTouchListTopButton{display:none!important;}
}
@media (prefers-reduced-motion:reduce){
  .mkTouchListTopButton{transition:none!important;}
}


/* =========================================================
   MagicKcal AppServer 1.2.195.54 – Chat49 iPhone Bibliothek-Suche
   - Nur iPhone/kleine Portrait-Displays: der lange Bibliothek-Placeholder
     wird so weit verkleinert, dass er vollständig in das bestehende Feld passt.
   - Feldgeometrie, Suchbutton und eingegebener Text bleiben unverändert.
   ========================================================= */
@media (max-width:600px) and (orientation:portrait){
  .plannerListSearchInputGroup input[aria-label="Lebensmittel, Marken oder Makros suchen"]::placeholder{
    font-size:.66rem!important;
  }
}


/* MagicKcal AppServer 1.2.195.57 – globale Hakenfarbe.
   Nur das Haken-Piktogramm wird CI-gruen; Button-/Textregeln bleiben unveraendert. */
.iconBtn svg[data-icon="check"],
.authLoginActions button[aria-label="Anmelden"] svg {
  color:#5CE08A!important;
  stroke:#5CE08A!important;
}

/* Chat49 – Gekochte Gerichte / Fertiggewicht */
.dishCookedCard,.saveAsDishCookedCard{background:#10151c;border:1px solid #28313d;border-radius:16px;margin-top:.75rem;padding:.75rem}.dishCookedCard.invalidBox,.saveAsDishCookedCard.invalidBox{border-color:#FF3232}.dishCookedHead{display:flex;align-items:center;justify-content:space-between;gap:.9rem}.dishCookedHead h3{margin:0}.dishCookedHead p{margin:.22rem 0 0;font-size:.88rem}.dishCookedHead .tipSwitch{flex:0 0 auto}.dishCookedWeightField{margin-top:.72rem}.dishCookedWeightInput{max-width:190px}.dishCookedMissingHint{margin:.45rem 0 0}.saveAsDishCookedCard{margin-bottom:.15rem}@media (max-width:560px){.dishCookedHead{align-items:flex-start}.dishCookedWeightInput{max-width:100%}}

/* AppServer 1.2.195.59 – Magic AutoKcal v1
   Neue AutoKcal-Piktogramme ausschliesslich als externe SVG-Dateien. */
.magicAutoKcalCard .magicAutoKcalNote{
  margin:.42rem 0 0;
}
.mkAutoKcalControls{
  display:grid;
  gap:.65rem;
  margin-top:.7rem;
}
.mkAutoKcalGoalPills{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
}
.mkAutoKcalGoalPill,
.mkAutoKcalPlainButton,
.mkAutoKcalConfirmButton{
  appearance:none;
  -webkit-appearance:none;
  min-height:40px;
  border:1px solid var(--button-border);
  border-radius:12px;
  background:var(--button-bg);
  color:var(--button-text);
  padding:.5rem .72rem;
  font-size:var(--type-button,16px);
  font-weight:700;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
}
.mkAutoKcalGoalPill:hover,
.mkAutoKcalPlainButton:hover,
.mkAutoKcalConfirmButton:hover{
  filter:var(--button-hover-filter);
}
.mkAutoKcalGoalPill:focus-visible,
.mkAutoKcalPlainButton:focus-visible,
.mkAutoKcalConfirmButton:focus-visible{
  outline:2px solid var(--day-today-text);
  outline-offset:2px;
}
.mkAutoKcalGoalPill:disabled,
.mkAutoKcalPlainButton:disabled,
.mkAutoKcalConfirmButton:disabled{
  cursor:default;
  opacity:.55;
  filter:none;
}
.mkAutoKcalGoalPill.active{
  border-color:#ffffff4d;
}
.mkAutoKcalCheck{
  display:block;
  width:18px;
  height:18px;
  flex:0 0 18px;
  object-fit:contain;
}
.mkAutoKcalMaintainRow{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:.65rem;
  align-items:end;
}
.mkAutoKcalMaintainRow label{
  gap:.32rem;
}
.mkAutoKcalMaintainRow input,
.mkAutoKcalMaintainRow select{
  min-height:40px;
}
.mkAutoKcalStopMessage,
.mkAutoKcalReviewMessage{
  border:1px solid #FF323273;
  border-radius:14px;
  padding:.75rem;
}
.mkAutoKcalStopMessage{
  background:#FF32321A;
}
.mkAutoKcalStopMessage>strong{
  color:#FF3232;
  display:block;
  margin-bottom:.35rem;
  letter-spacing:.02em;
}
.mkAutoKcalStopMessage p,
.mkAutoKcalReviewMessage p{
  margin:0 0 .6rem;
  color:var(--ui-text);
}
.mkAutoKcalSafetyStop{
  border-color:#FF323273!important;
}
.mkAutoKcalReviewMessage{
  background:#ffffff05;
  border-color:var(--ui-border);
}
.mkAutoKcalSafetyReviewButton{
  border-color:#FF323273;
}
.mkAutoKcalModalBackdrop{
  position:fixed;
  inset:0;
  z-index:420;
  display:grid;
  place-items:center;
  padding:20px;
  background:#000001A8;
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
}
.mkAutoKcalModal{
  width:min(620px,100%);
  max-height:min(88vh,820px);
  overflow:auto;
  border:1px solid #ffffff1f;
  border-radius:22px;
  background:#141920fa;
  padding:1rem;
  box-shadow:0 30px 90px #00000173;
}
.mkAutoKcalModal h2{
  margin:0 0 .7rem;
}
.mkAutoKcalModalText p,
.mkAutoKcalAdjustmentText{
  color:var(--ui-text);
  margin:0 0 .7rem;
}
.mkAutoKcalConsentChecks{
  display:grid;
  gap:.55rem;
  margin:.85rem 0 .35rem;
}
.mkAutoKcalConsentChecks label{
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:.55rem;
  color:var(--ui-text);
  font-weight:400;
}
.mkAutoKcalConsentChecks input[type="checkbox"]{
  width:20px;
  height:20px;
  margin:.05rem 0 0;
  padding:0;
  accent-color:#5CE08A;
}
.mkAutoKcalModalError{
  color:#FF3232;
  margin:.6rem 0 0;
}
.mkAutoKcalModalActions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:.45rem;
  margin-top:1rem;
}
.mkAutoKcalAdjustmentValues{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.55rem;
  margin:.8rem 0 .2rem;
}
.mkAutoKcalAdjustmentValues span{
  border:1px solid var(--ui-border);
  border-radius:14px;
  background:#10151c;
  padding:.65rem;
  color:var(--ui-muted);
}
.mkAutoKcalAdjustmentValues strong{
  display:block;
  margin-top:.2rem;
  color:var(--ui-text);
}
@media (max-width:600px), (orientation:landscape) and (max-height:500px) and (pointer:coarse){
  .mkAutoKcalGoalPills{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .mkAutoKcalGoalPill{
    min-width:0;
    padding:.48rem .38rem;
  }
  .mkAutoKcalMaintainRow,
  .mkAutoKcalAdjustmentValues{
    grid-template-columns:1fr;
  }
  .mkAutoKcalModalBackdrop{
    align-items:start;
    padding:10px;
  }
  .mkAutoKcalModal{
    max-height:calc(100vh - 20px);
  }
}

/* AppServer 1.2.195.60 – AutoKcal UI-Nachzug + Makro-Prozent-Summe */
.magicAutoKcalCard .magicAutoKcalNote{
  white-space:pre-line;
}
.mkAutoKcalGoalPill{
  border-radius:999px;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.mkMacroPercentSum{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-height:38px;
  margin-top:.1rem;
  padding:.42rem .58rem;
  border:1px solid var(--ui-border);
  border-radius:12px;
  background:#ffffff05;
  color:var(--ui-text);
  font-weight:700;
}
.mkMacroPercentSum.invalid{
  color:#FF3232;
  border-color:#FF323273;
}


/* AppServer 1.2.195.61 – TAGESZIELE Touch-Fix / klare Anzeige-Felder / AutoKcal-Pillen */
.mkAutoKcalGoalLabel{
  margin:0;
  color:var(--ui-muted);
  font-weight:700;
}
.mkAutoKcalGoalPills{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:.45rem!important;
}
.mkAutoKcalGoalPill{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  border-radius:999px!important;
  padding:.5rem .78rem!important;
}
.targetsCardCompact .targetValueWrap > span{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
}
.mkMacroPercentSumNative{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-height:38px;
  margin-top:.1rem;
  padding:.42rem 0;
  background:transparent;
  border:0;
  color:var(--ui-text);
  font-weight:700;
}
.mkMacroPercentSumNative.invalid{
  color:#FF3232;
}
\n\n/* AppServer 1.2.195.62 – TAGESZIELE Ein-Tap-Fix + AutoKcal Halten-Wheel */\n.mkAutoKcalMaintainRow{\n  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;\n  align-items:end!important;\n}\n.mkAutoKcalMaintainRow label{\n  min-width:0;\n  white-space:nowrap;\n}\n.mkAutoKcalMaintainRow input,\n.mkAutoKcalMaintainRow select,\n.mkAutoKcalTouchValue{\n  width:100%;\n  min-width:0;\n  min-height:40px;\n}\n.mkAutoKcalTouchValue{\n  appearance:none;\n  -webkit-appearance:none;\n  border:1px solid #303846;\n  border-radius:10px;\n  background:#151a21;\n  color:var(--ui-text);\n  padding:.55rem .68rem;\n  text-align:left;\n  font:inherit;\n}\n.mkAutoKcalTouchValue:focus-visible{\n  border-color:var(--day-today-text);\n  box-shadow:0 0 0 3px color-mix(in srgb,var(--day-today-text) 18%,transparent);\n  outline:0;\n}\n.mkAutoKcalWheelCancel{position:relative;color:var(--button-danger-text)!important;}\n.mkAutoKcalWheelCancel>span{display:block;width:18px;height:18px;position:relative;}\n.mkAutoKcalWheelCancel>span:before,\n.mkAutoKcalWheelCancel>span:after{\n  content:'';\n  position:absolute;\n  left:8px;\n  top:0;\n  width:2px;\n  height:18px;\n  border-radius:2px;\n  background:currentColor;\n}\n.mkAutoKcalWheelCancel>span:before{transform:rotate(45deg);}\n.mkAutoKcalWheelCancel>span:after{transform:rotate(-45deg);}\n.mkAutoKcalWheelOk .mkAutoKcalCheck{width:18px;height:18px;}\n@media (hover:none) and (pointer:coarse){\n  .mkAutoKcalMaintainRow{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;}\n  .mkAutoKcalMaintainRow label{white-space:nowrap;}\n}\n

/* AppServer 1.2.195.63 – TAGESZIELE/Körperdaten Text + AutoKcal Halten UI Nachzug */
.mkAutoKcalMaintainRow{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:end!important;
}
.mkAutoKcalMaintainRow label{min-width:0!important;white-space:nowrap!important;}
.mkAutoKcalMaintainRow input,
.mkAutoKcalMaintainRow select,
.mkAutoKcalTouchField{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  border-radius:10px!important;
}
.mkAutoKcalTouchField{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:#151a21!important;
  border:1px solid #303846!important;
  color:var(--ui-text)!important;
  -webkit-text-fill-color:var(--ui-text)!important;
  opacity:1!important;
  padding:.55rem .68rem!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer;
}
.mkAutoKcalTouchField:focus{
  border-color:var(--day-today-text)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--day-today-text) 18%,transparent)!important;
  outline:0!important;
}
.mkAutoKcalWheelCancel{color:var(--button-danger-text)!important;}
.mkAutoKcalWheelCancel .mkAutoKcalX{
  display:block;
  width:18px;
  height:18px;
  object-fit:contain;
}


/* AppServer 1.2.195.64 – AutoKcal Halten UI: Tageslisten-Wheelbreite / kein iPhone-Zoom / Toleranzfeld */
.mkAutoKcalMaintainRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:.65rem!important;
  align-items:end!important;
}
.mkAutoKcalMaintainRow label{
  min-width:0!important;
  white-space:nowrap!important;
}
.mkAutoKcalMaintainRow input{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  border-radius:10px!important;
}
/* Touch-Felder bleiben optisch Eingabefelder, öffnen aber das MagicKcal-Wheel. */
.mkAutoKcalTouchField{
  font-size:16px!important; /* iOS darf beim Antippen nicht in die Seite zoomen */
  line-height:1.2!important;
  -webkit-user-select:none!important;
  user-select:none!important;
  caret-color:transparent!important;
}
/* AutoKcal-Wheel exakt auf die bewährte kompakte Tageslisten-Geometrie festnageln. */
.mkAutoKcalWheelDock .quantityWheelPanelCompact{
  box-sizing:border-box!important;
  flex:0 0 auto!important;
  width:min(250px,calc(100% - 1rem))!important;
  max-width:min(250px,calc(100% - 1rem))!important;
  padding:.55rem!important;
  border-radius:20px!important;
}
.mkAutoKcalWheelDock .quantityWheelCompactRow{
  display:grid!important;
  grid-template-columns:minmax(0,168px) 40px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.55rem!important;
}
.mkAutoKcalWheelDock .quantityWheelViewport{
  width:168px!important;
  min-width:168px!important;
  max-width:168px!important;
  height:176px!important;
}
/* Desktop: Haltegewicht/Toleranz sind reine Text-Eingabefelder, daher keine nativen Stepper. */
.mkAutoKcalMaintainRow input[type=number]{
  appearance:textfield!important;
  -moz-appearance:textfield!important;
}
.mkAutoKcalMaintainRow input[type=number]::-webkit-inner-spin-button,
.mkAutoKcalMaintainRow input[type=number]::-webkit-outer-spin-button{
  -webkit-appearance:none!important;
  margin:0!important;
}
@media (hover:none) and (pointer:coarse){
  .mkAutoKcalMaintainRow{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  }
}

/* =========================================================
   MagicKcal AppServer 1.2.195.70 – Chat50 UI-/Touch-Feinschliff
   - Tageslisten-Reiter + Tagesstand bleiben auf iPhone gemeinsam sticky.
   - Redundanter „Weitere auswählen“-Button entfällt im Bundle.
   - Magic-Hinweise in der Tagesliste kompakter und fortlaufend.
   - Tagesziele: Autosave bleibt aktiv.
   ========================================================= */
@media (max-width:600px) and (orientation:portrait){
  .plannerMobileTabsStandalone{
    position:sticky!important;
    top:108px!important;
    z-index:59!important;
    background:#000001!important;
    box-shadow:0 -12px 0 #000001,0 14px 0 #000001!important;
  }
  .datedWorkHeader+.grid .stickyPlanRest,
  .stickyPlanRest{
    top:162px!important;
  }
  .plannerMerklistePane .magicFeedback,
  .plannerSelectionPane .magicFeedback{
    font-size:var(--type-donut)!important;
  }
  .plannerMerklistePane .magicFeedback p,
  .plannerSelectionPane .magicFeedback p{
    font-size:var(--type-donut)!important;
    line-height:1.22!important;
    margin:0!important;
  }
  .plannerMerklistePane .magicGapHint,
  .plannerSelectionPane .magicGapHint{
    display:block!important;
  }
}

@media (orientation:landscape) and (max-height:500px){
  .plannerMobileTabsStandalone{
    position:sticky!important;
    top:56px!important;
    z-index:59!important;
    background:#000001!important;
    box-shadow:0 -10px 0 #000001,0 14px 0 #000001!important;
  }
  .stickyPlanRest{
    top:110px!important;
  }
  .plannerMerklistePane .magicFeedback,
  .plannerSelectionPane .magicFeedback,
  .plannerMerklistePane .magicFeedback p,
  .plannerSelectionPane .magicFeedback p{
    font-size:var(--type-donut)!important;
    line-height:1.22!important;
  }
  .plannerMerklistePane .magicGapHint,
  .plannerSelectionPane .magicGapHint{
    display:block!important;
  }
}



/* =========================================================
   MagicKcal AppServer 1.2.195.73 – Chat51 Runde 1
   - Tageslisten-Badges ohne schwarz/graue Außenkontur.
   ========================================================= */
.favoriteCard .btnBadge,
.resultCard .btnBadge{
  border-color:transparent!important;
  box-shadow:none!important;
}

/* v1.2.195.76 – iPhone Tagesliste: oberen Kachelabschluss freistellen, iPad/Desktop unverändert */
@media (max-width: 767px) {
  html.mkIPhone .plannerGrid .favoriteLibraryCard { margin-top: 2px; }
}

/* =========================================================
   MagicKcal AppServer 1.2.195.82 – Chat52 iPhone Login-HOME
   - Nur iPhone / gesperrte HOME-Ansicht mit "Los geht's".
   - Locked-State bekommt am APP-Root eine explizite Klasse; kein :has().
   - Exakt derselbe feste obere HOME-Rhythmus wie im iPhone-Master.
   - Keine vertikale Zentrierung; Logo-Größe unverändert.
   ========================================================= */
@media (max-width:520px) and (orientation:portrait){
  html.mkIPhone .homeApp.homeLockedApp{
    align-items:start!important;
    align-content:start!important;
    padding-top:18px!important;
  }
  html.mkIPhone .homeApp.homeLockedApp .homeScreen{
    margin-top:0!important;
  }
  html.mkIPhone .homeApp.homeLockedApp .homeHero{
    padding-top:4px!important;
  }
  html.mkIPhone .homeApp.homeLockedApp .homeLogoImage{
    width:min(166.6px,59.5vw - 1.19rem)!important;
  }
}

/* =========================================================
   MagicKcal AppServer 1.2.195.86 – Chat52 iPad quer HOME-Master
   - Nur iPad im Querformat (normale + gesperrte HOME).
   - Overlay-Master ist fuer beide HOME-Zustaende verbindlich.
   - Keine vertikale Zentrierung, unabhaengig von pointer/hover-Mediawerten.
   - Fester Topanker 44,8 px; bestehende innere HOME-Geometrie bleibt unveraendert.
   - Logo 196,35 px; HOME und Overlay erhalten identische Logo-/Button-Y-Geometrie.
   ========================================================= */
@media (orientation:landscape) and (min-width:700px) and (max-width:1180px) and (min-height:501px){
  html.mkIPad .homeApp{
    align-items:start!important;
    align-content:start!important;
    padding-top:44.8px!important;
  }
  html.mkIPad .homeApp .homeScreen{
    margin-top:0!important;
  }
  html.mkIPad .homeApp .homeLogoImage{
    width:196.35px!important;
  }
}

/* =========================================================
   MagicKcal AppServer 1.2.195.87 – Chat52 iPad hoch HOME-Master
   - Nur iPad APP im Hochformat: normale HOME + gesperrte Overlay-HOME.
   - Beide Seiten verwenden dieselbe feste Master-Geometrie.
   - Keine vertikale Zentrierung auf beiden Seiten.
   - Fester Topanker 126,5 px; bestehendes Hero-Padding 4 px.
   - Sichtbare Logo-Oberkante damit 130,5 px; Logo 196,35 px.
   - Innere Abstaende und Button-Geometrien bleiben unveraendert.
   ========================================================= */
@media (orientation:portrait) and (min-width:700px) and (max-width:1180px) and (min-height:501px){
  html.mkIPad .homeApp{
    align-items:start!important;
    align-content:start!important;
    padding-top:126.5px!important;
  }
  html.mkIPad .homeApp .homeScreen{
    margin-top:0!important;
  }
  html.mkIPad .homeApp .homeLogoImage{
    width:196.35px!important;
  }
  html.mkIPad .homeApp .homeNav{
    grid-template-columns:repeat(3,var(--home-tile-size))!important;
  }
}


/* v1.2.195.95 – Chat55: Auswahlkarten statt Plus-Badges */
/* TAGESLISTE: bereits hinzugefügte LM/Gerichte werden über eine 2-px-Kartenkontur markiert.
   Die Farbe folgt dem aktiven Tag (gestern/heute/morgen) über dayTone. */
.favoriteCard.plannedSelectionCard{
  border-width:2px!important;
  border-color:var(--day-current-strong)!important;
}
/* SUCHE ist tagesunabhängig: gespeicherte Lebensmittel bleiben CI-grün, jetzt mit echter 2-px-Linie. */
.searchResultCard.savedResultCard{
  border-width:2px!important;
  border-color:var(--day-today)!important;
  box-shadow:none!important;
}


/* =========================================================
   MagicKcal AppServer 1.2.195.96 – Chat55 Tagesliste Auswahl 2-spaltig
   - Nur TAGESLISTE > Auswahl treffen > Bibliothek / Gerichte / Top 10.
   - Ab ausreichend breiter Viewportbreite zwei Spalten in Reihenfolge 1|2, 3|4.
   - iPad Hochformat bleibt ungeachtet seiner CSS-Breite ausdrücklich einspaltig.
   - Suchkarte/Leerzustand spannen über beide Spalten.
   - Karteninhalte/Typografie bleiben unverändert; Grid-Karten strecken sich zeilenweise gleich hoch.
   ========================================================= */
@media (min-width:1024px){
  .plannerSelectionPane .favoriteList{
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
  }
  .plannerSelectionPane .favoriteList>.plannerListSearchCard,
  .plannerSelectionPane .favoriteList>.empty{
    grid-column:1/-1;
  }
  .plannerSelectionPane .favoriteList>.favoriteCard{
    min-width:0;
    height:100%;
  }
}
@media (orientation:portrait){
  html.mkIPad .plannerSelectionPane .favoriteList{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   MagicKcal AppServer 1.2.195.100 – Chat56 Konsistenzkorrekturen
   - iPhone: Tageslisten-Startreiter wird im Bundle auf „Tagesliste“ gesetzt.
   - iPhone: Suchergebnis-Haken rechts mit bestehendem Karteninnenabstand.
   - iPhone: Gewichtsstatus „Gewicht am …“ mit HEUTE-Innenabstand und genug Breite.
   - iPhone: Copytext „Wird dieses Gericht gekocht?“ nutzt die volle Kachelbreite.
   - Zukunfts-/OFF-Logik wird im Bundle korrigiert; keine globale Layoutänderung.
   ========================================================= */
@media (max-width:600px) and (orientation:portrait){
  /* SUCHE: rechtsbündig innerhalb der vorhandenen Kartenpolsterung. */
  .searchResultSaveRow{
    justify-content:flex-end!important;
  }

  /* ERFOLGE: unveränderter HEUTE-Innenabstand; längeres Datumslabel bekommt
     ausreichend Kachelbreite, damit der rechte Innenabstand sichtbar bleibt. */
  .statisticsTrendCard.past .statisticsWeightCurrent,
  .statisticsTrendCard.future .statisticsWeightCurrent{
    box-sizing:border-box!important;
    flex:0 0 150px!important;
    width:150px!important;
    padding:.5rem .62rem .48rem!important;
  }

  /* GERICHT BEARBEITEN: Headline + Toggle in Zeile 1, Copytext darunter
     über die komplette Innenbreite der Kachel. */
  .dishCookedHead{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:.22rem .9rem!important;
  }
  .dishCookedHead>div{
    display:contents!important;
  }
  .dishCookedHead h3{
    grid-column:1!important;
    grid-row:1!important;
  }
  .dishCookedHead .tipSwitch{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
  }
  .dishCookedHead p{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
    margin:.22rem 0 0!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.101 – Chat56 iPhone Gewichtsverlauf
   - Vergangenheit/Zukunft: linke Status-Subkachel bekommt genug Breite,
     damit das laengere „Gewicht am …“-Label den Grid-Track nicht ueber
     den Inhaltsbereich hinausdrueckt. Rechter Text-Innenabstand entspricht
     damit wieder HEUTE; Typografie und rechte Statuskachel bleiben unveraendert.
   ========================================================= */
@media (max-width:600px) and (orientation:portrait){
  .statisticsTrendCard.past .statisticsWeightCurrent,
  .statisticsTrendCard.future .statisticsWeightCurrent{
    flex:0 0 160px!important;
    width:160px!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.102 – Chat56 Tageslisten-Buttons + SUCHE Raster
   - TAGESLISTE alle Plattformen: Zukunft behaelt den Buchen-Haken unsichtbar
     als Platzhalter; Vergangenheit behaelt den Warenkorb unsichtbar als Platzhalter.
     So bleiben Schloss / Warenkorb / Haken / X in allen Tageszustaenden geometrisch stabil.
   - Der alte Vergangenheit-Hinweis zum Warenkorbstatus wurde im Bundle entfernt.
   - SUCHE: ab derselben breiten Desktop-/iPad-Quer-Schwelle wie TAGESLISTE
     werden Suchergebniskarten zweispaltig in DOM-Reihenfolge 1|2, 3|4 dargestellt.
     iPad Hochformat bleibt ausdruecklich einspaltig.
   ========================================================= */
.planActionPlaceholder{
  visibility:hidden!important;
  pointer-events:none!important;
}

@media (min-width:1024px){
  .searchPageCard .searchResultsList{
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
  }
  .searchPageCard .searchResultsList>.searchResultCard{
    min-width:0;
    height:100%;
  }
}
@media (orientation:portrait){
  html.mkIPad .searchPageCard .searchResultsList{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   MagicKcal AppServer 1.2.195.104 – Chat56 SUCHE + Mengen-Startwert
   - SUCHE alle Plattformen: Haken-Button immer rechtsbuendig innerhalb
     der bestehenden Karten-Innenflaeche.
   - Mengenlogik im Bundle: Zutaten in Gerichten erzeugen keinen Lernwert.
     Ohne gebuchten Direktwert und ohne explizit bekannte uebliche Menge
     wird beim Hinzufuegen eines Lebensmittels der neutrale Startwert
     50 g/ml verwendet. Erst eine direkte Buchung landet in logsByDate
     und kann damit die bestehende Lernlogik beeinflussen.
   ========================================================= */
.searchPageCard .searchResultSaveRow{
  justify-content:flex-end!important;
}


/* 1.2.195.107 CHAT59: external logout pictogram + media interaction protection */
.accountLogoutButton .accountLogoutIcon{
  width:20px;
  height:20px;
  flex:0 0 20px;
  object-fit:contain;
  -webkit-user-drag:none;
  user-select:none;
  -webkit-user-select:none;
  -webkit-touch-callout:none;
}
img,svg,picture{
  -webkit-user-drag:none;
  user-select:none;
  -webkit-user-select:none;
  -webkit-touch-callout:none;
}


/* 1.2.195.108 CHAT59: Abmelden-Kontur exakt wie KCclient */
.accountCustomerActions .accountLogoutButton,
.accountCustomerActions .accountLogoutButton:hover,
.accountCustomerActions .accountLogoutButton:focus,
.accountCustomerActions .accountLogoutButton:focus-visible,
.accountCustomerActions .accountLogoutButton:active,
.accountCustomerActions .accountLogoutButton:disabled{
  border-color:#ff3232!important;
}


/* =========================================================
   MagicKcal AppServer 1.2.195.160 – Chat75 Touch-Drag Nachkorrektur
   - iPhone Tagesliste: Scroll-Inhalte bleiben unter dem sticky Tagesstand verborgen.
   - Nur Sichtmaske im bestehenden Grid-Abstand; Geometrie des Tagesstands unverändert.
   ========================================================= */
@media (max-width:600px) and (orientation:portrait){
  html.mkIPhone.mkStyleguideV014 body.mkStyleguideV014 .plannerGrid .stickyPlanRest:not(.plannerMobilePaneHidden){
    box-shadow:0 -18px 0 #000001!important;
  }
}

.withingsConnectedModel{margin:.35rem 0 0}

/* Chat 76 / 1.2.195.175 – Meine Körperzusammensetzung
   Layout only. Typography reuses existing Styleguide text styles. */
.BG-A{--bg-a-day:var(--day-today);width:27.2px;height:27.2px;border-radius:999px;display:inline-grid;place-items:center;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;font-weight:700;line-height:1;color:var(--bg-a-day);border:1px solid color-mix(in srgb,var(--bg-a-day) 58%,transparent);background:color-mix(in srgb,var(--bg-a-day) 18%,#0A0E12E6);box-shadow:0 0 14px color-mix(in srgb,var(--bg-a-day) 18%,transparent)}
.BG-A.today{--bg-a-day:var(--day-today)}.BG-A.past{--bg-a-day:var(--day-past)}.BG-A.future{--bg-a-day:var(--day-future)}
.bodyCompositionAnalyticsCard{flex-direction:column;align-self:start;align-items:stretch;display:flex;overflow:hidden}
.bodyCompositionAnalyticsLayout{grid-template-columns:minmax(118px,32%) minmax(0,1fr);align-items:center;gap:1rem;margin-top:.35rem;display:grid}
.bodyCompositionAnalyticsPerson{place-items:center;min-height:250px;display:grid;position:relative;isolation:isolate;overflow:hidden}
.bodyCompositionAnalyticsPerson.scannerActive:before,.bodyCompositionAnalyticsPerson.scannerActive:after{content:"";pointer-events:none;z-index:2;width:min(160px,88%);position:absolute;left:50%;top:10%;transform:translate(-50%,-50%);animation:mkBodyScanner 4.2s ease-in-out infinite alternate}
.bodyCompositionAnalyticsPerson.scannerActive:before{height:2px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--cc-day,var(--day-current)) 36%,transparent) 20%,var(--cc-day,var(--day-current)) 50%,color-mix(in srgb,var(--cc-day,var(--day-current)) 36%,transparent) 80%,transparent 100%);opacity:.78;box-shadow:0 0 7px color-mix(in srgb,var(--cc-day,var(--day-current)) 56%,transparent),0 0 16px color-mix(in srgb,var(--cc-day,var(--day-current)) 32%,transparent)}
.bodyCompositionAnalyticsPerson.scannerActive:after{height:24px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--cc-day,var(--day-current)) 7%,transparent) 25%,color-mix(in srgb,var(--cc-day,var(--day-current)) 24%,transparent) 50%,color-mix(in srgb,var(--cc-day,var(--day-current)) 7%,transparent) 75%,transparent 100%);opacity:.62;filter:blur(4px)}
@keyframes mkBodyScanner{from{top:10%}to{top:90%}}
.bodyCompositionAnalyticsPerson img{z-index:1;object-fit:contain;width:auto;max-width:84%;height:220px;max-height:220px;display:block;position:relative}
.bodyCompositionAnalyticsMetrics{min-width:0;display:grid}
.bodyCompositionAnalyticsMetric{grid-template-columns:42px minmax(0,1fr) 27.2px;align-items:center;gap:.7rem;min-width:0;padding:.72rem 0;border-bottom:1px solid var(--cc-r,#292C2E);display:grid;position:relative}
.bodyCompositionAnalyticsMetric:last-child{border-bottom:0}
.bodyCompositionAnalyticsIcon{border:1px solid var(--cc-r,#292C2E);border-radius:999px;place-items:center;width:42px;height:42px;display:grid;position:relative}
.bodyCompositionAnalyticsIcon:before{content:"";width:24px;height:24px;background:currentColor;display:block;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}
.bodyCompositionAnalyticsIcon.lean{color:var(--cc-p,#4865FF)}
.bodyCompositionAnalyticsIcon.lean:before{-webkit-mask-image:url('/assets/pictograms/body/lean.svg');mask-image:url('/assets/pictograms/body/lean.svg')}
.bodyCompositionAnalyticsIcon.water{color:var(--cc-b,#00A7EB)}
.bodyCompositionAnalyticsIcon.water:before{-webkit-mask-image:url('/assets/pictograms/body/water.svg');mask-image:url('/assets/pictograms/body/water.svg')}
.bodyCompositionAnalyticsIcon.bone{color:var(--cc-w,#FFFFFF)}
.bodyCompositionAnalyticsIcon.bone:before{-webkit-mask-image:url('/assets/pictograms/body/bone.svg?v=1.2.195.182');mask-image:url('/assets/pictograms/body/bone.svg?v=1.2.195.182')}
.bodyCompositionAnalyticsCopy{min-width:0;display:grid;gap:.18rem}
.bodyCompositionAnalyticsValue{white-space:nowrap;align-items:baseline;gap:.34rem;min-width:0;display:flex;line-height:1}
.bodyCompositionAnalyticsValue .txt-bz-tma{font-variant-numeric:tabular-nums}
.bodyCompositionAnalyticsMetric .developmentTrendBadge{position:static;top:auto;right:auto;justify-self:end}
.bodyCompositionAnalyticsMeta{margin-top:.62rem!important}
.bodyCompositionAnalyticsSync{margin:.14rem 0 0!important}
@media (width<=900px){
  .bodyCompositionAnalyticsLayout{grid-template-columns:minmax(96px,30%) minmax(0,1fr);gap:.55rem}
  .bodyCompositionAnalyticsPerson{min-height:190px}
  .bodyCompositionAnalyticsPerson.scannerActive:before,.bodyCompositionAnalyticsPerson.scannerActive:after{width:min(118px,88%)}
  .bodyCompositionAnalyticsPerson img{height:152px;max-height:152px;max-width:108px}
  .bodyCompositionAnalyticsMetric{padding:.62rem 0}
}
@media (width<=420px){
  .bodyCompositionAnalyticsLayout{grid-template-columns:minmax(86px,29%) minmax(0,1fr);gap:.45rem}
  .bodyCompositionAnalyticsPerson{min-height:174px}
  .bodyCompositionAnalyticsPerson.scannerActive:before,.bodyCompositionAnalyticsPerson.scannerActive:after{width:min(98px,88%)}
  .bodyCompositionAnalyticsPerson img{height:132px;max-height:132px;max-width:92px}
  .bodyCompositionAnalyticsMetric{grid-template-columns:36px minmax(0,1fr) 27.2px;gap:.42rem;padding:.58rem 0}
  .bodyCompositionAnalyticsIcon{width:36px;height:36px}
  .bodyCompositionAnalyticsIcon:before{width:20px;height:20px}
  .bodyCompositionAnalyticsValue{gap:.24rem}
}
@media (width<=600px),(orientation:landscape) and (height<=500px){.developmentUnitBreak{display:none}}
@media (prefers-reduced-motion:reduce){.bodyCompositionAnalyticsPerson.scannerActive:before,.bodyCompositionAnalyticsPerson.scannerActive:after{display:none!important;animation:none!important}}

/* Chat 79 / AppServer 1.2.195.205 – iPhone-only line break in Meine Einstellungen */
.settingsToolTipsIphoneBreak{display:none}
@media (max-width:600px) and (orientation:portrait){html.mkIPhone .settingsToolTipsIphoneBreak{display:block}}

/* Chat 79 / AppServer 1.2.195.205 – Einstellungen Standposition */
@media (min-width:601px){
  .settingsTabbedCard{padding-top:.425rem!important}
}
@media (max-width:600px) and (orientation:portrait){
  .settingsTabbedCard{padding-top:0!important}
}
