@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-ext-wght-normal-okcGN4Nq.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-wght-normal-BS41q_Tv.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-ext-wght-normal-DQgQPNk4.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-wght-normal-sS1B39LI.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-vietnamese-wght-normal-TKKdAiBA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-ext-wght-normal-B4u9PlvR.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-wght-normal-DX-nOvPD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0f0e13;--surface:#17161d;--surface-2:#1f1e27;--ink:#f5f4fa;--ink-soft:#9c99ad;--brand:#8b7cff;--brand-strong:#6c5ce7;--brand-soft:#8b7cff24;--protein:#4ade97;--carbs:#6c9fff;--fat:#ffb86b;--danger:#ff6b6b;--warn:#ffb86b;--ok:#4ade97;--l-bg:#f5f4fa;--l-ink:#141320;--l-ink-soft:#5d5a6f;--l-surface:#fff;--l-surface-2:#eceaf4;--l-cta:#8b7cff;--l-cta-hover:#7a6af5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px;--radius-card:16px;--radius-button:12px;--radius-chip:999px;--shadow-card:0 1px 2px #00000059, 0 6px 20px #00000059;--shadow-float:0 8px 16px #00000073, 0 20px 48px #0000008c;--shadow-cta:0 8px 24px #8b7cff59;--motion-fast:.16s;--motion-slow:.22s;--motion-ease:cubic-bezier(0, 0, .2, 1);--font-display:"Inter Tight Variable", "Inter Tight", -apple-system, "SF Pro Display", system-ui, sans-serif;--font-body:-apple-system, "SF Pro Text", Inter, system-ui, sans-serif;--text-display:2rem;--text-title:1.5rem;--text-section:1.17rem;--text-body:1rem;--text-meta:.875rem;--text-foot:.8125rem;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root{--bg:#f5f4fa;--surface:#fff;--surface-2:#eceaf4;--ink:#141320;--ink-soft:#5d5a6f;--brand:#6c5ce7;--brand-strong:#6c5ce7;--brand-soft:#8b7cff29;--shadow-card:0 1px 2px #1413200f, 0 6px 20px #14132014;--shadow-float:0 8px 16px #1413201a, 0 20px 48px #14132029;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}.theme-light{--bg:var(--l-bg);--surface:var(--l-surface);--surface-2:var(--l-surface-2);--ink:var(--l-ink);--ink-soft:var(--l-ink-soft);--brand:var(--l-cta);--brand-strong:var(--l-cta);--brand-soft:#8b7cff24;--shadow-card:0 1px 2px #1413200d, 0 6px 20px #14132012;--shadow-float:0 12px 28px #1413201f, 0 32px 64px #14132024;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.theme-dark{--bg:#0f0e13;--surface:#17161d;--surface-2:#1f1e27;--ink:#f5f4fa;--ink-soft:#9c99ad;--brand:#8b7cff;--brand-strong:#6c5ce7;--brand-soft:#8b7cff24;--shadow-card:0 1px 2px #00000059, 0 6px 20px #00000059;--shadow-float:0 8px 16px #00000073, 0 20px 48px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-body);-webkit-font-smoothing:antialiased;min-height:100dvh;margin:0;line-height:1.45}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,select,textarea{font:inherit;color:inherit}a{color:var(--brand)}img,svg{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-property:opacity!important;transition-duration:1ms!important;animation-duration:1ms!important}}.container{width:100%;max-width:1120px;padding-left:max(var(--space-5), var(--safe-left));padding-right:max(var(--space-5), var(--safe-right));margin:0 auto}.muted{color:var(--ink-soft)}.text-meta{font-size:var(--text-meta)}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-2);display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.num{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:800}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-6);border-radius:var(--radius-chip);font-weight:600;font-size:var(--text-body);transition:filter var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) var(--motion-ease);-webkit-tap-highlight-color:transparent;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn--primary{background:linear-gradient(135deg, var(--brand-strong), var(--brand));color:#fff;box-shadow:var(--shadow-cta)}.btn--primary:hover{filter:brightness(1.07)}.btn--secondary{background:var(--brand-soft);color:var(--brand)}.btn--secondary:hover{filter:brightness(1.05)}.btn--ghost{color:var(--brand);background:0 0}.btn--ghost:hover{background:var(--brand-soft)}.btn--danger{color:var(--danger);background:0 0;box-shadow:inset 0 0 0 1.5px}.btn--sm{min-height:38px;padding:0 var(--space-4);font-size:var(--text-meta)}.btn--lg{min-height:54px;padding:0 var(--space-7);font-size:var(--text-section)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn__spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.icon-btn{border-radius:var(--radius-button);width:44px;height:44px;color:var(--ink-soft);transition:background-color var(--motion-fast) var(--motion-ease);justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.card{background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-5)}.card--flat{box-shadow:none;border:1px solid var(--surface-2)}.card--pressable{cursor:pointer;text-align:left;width:100%;transition:transform var(--motion-fast) var(--motion-ease)}.card--pressable:active{transform:scale(.99)}.list-row{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-3) var(--space-2);text-align:left;border-radius:var(--radius-button);width:100%;transition:background-color var(--motion-fast) var(--motion-ease);display:flex}button.list-row:hover{background:var(--surface-2)}.list-row+.list-row{border-top:1px solid var(--surface-2)}.banner{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-button);font-size:var(--text-foot);line-height:1.35;display:flex}.banner a{color:inherit;font-weight:600}.banner--demo,.banner--trial{background:var(--brand-soft);color:var(--brand)}.banner--warn{background:color-mix(in srgb, var(--warn) 14%, var(--surface));color:var(--warn)}.banner--offline{background:var(--surface-2);color:var(--ink-soft)}.banner--subtle{color:var(--ink-soft);background:0 0;justify-content:center;padding-top:2px;padding-bottom:2px;font-size:.75rem}.banner--error{background:color-mix(in srgb, var(--danger) 12%, var(--surface));color:var(--danger)}.person-avatar{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:.7rem;font-weight:700;display:inline-flex}.person-avatar--lg{width:44px;height:44px;font-size:1rem}.avatar-ring{background:linear-gradient(135deg, var(--ring-color,var(--brand)), var(--brand));border-radius:50%;flex:none;padding:2px;display:inline-flex}.avatar-ring>.person-avatar{border:2px solid var(--surface)}.chip{align-items:center;gap:var(--space-1);padding:2px var(--space-3);border-radius:var(--radius-chip);background:var(--surface-2);color:var(--ink-soft);font-size:var(--text-foot);white-space:nowrap;font-weight:500;display:inline-flex}.person-kcal-row{gap:var(--space-3);padding-bottom:var(--space-1);scrollbar-width:none;display:flex;overflow-x:auto}.person-kcal-row::-webkit-scrollbar{display:none}.person-kcal{align-items:center;gap:var(--space-1);min-width:76px;padding:var(--space-3) var(--space-2);background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);flex-direction:column;flex:none;display:flex}.person-kcal__name{font-size:var(--text-foot);font-weight:600}.person-kcal__value{font-size:var(--text-foot);color:var(--ink-soft);font-variant-numeric:tabular-nums}.person-chip{align-items:center;gap:var(--space-2);font-size:var(--text-meta);min-height:28px;font-weight:600;display:inline-flex}.person-chip__meta{color:var(--ink-soft);font-weight:500;font-size:var(--text-foot)}.person-chip--variant .person-chip__meta{color:var(--carbs)}.person-chip--replacement .person-chip__meta{color:var(--fat)}.person-chip--eaten .person-chip__meta{color:var(--ok)}.wish-badge{align-items:center;gap:var(--space-1);padding:2px var(--space-3);border-radius:var(--radius-chip);font-size:var(--text-foot);font-weight:600;display:inline-flex}.wish-badge--offen{background:var(--brand-soft);color:var(--brand)}.wish-badge--eingeplant{background:color-mix(in srgb, var(--carbs) 16%, var(--surface));color:var(--carbs)}.wish-badge--gekocht{background:color-mix(in srgb, var(--ok) 16%, var(--surface));color:var(--ok)}.wish-badge--abgelehnt{background:var(--surface-2);color:var(--ink-soft)}.badge--conflict{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-chip);background:color-mix(in srgb, var(--danger) 16%, var(--surface));color:var(--danger);font-size:var(--text-foot);font-weight:600;display:inline-flex}.badge--warn{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-chip);background:color-mix(in srgb, var(--warn) 18%, var(--surface));color:var(--warn);font-size:var(--text-foot);font-weight:600;display:inline-flex}.macro-bars{gap:var(--space-2);flex-direction:column;display:flex}.macro-bar{align-items:center;gap:var(--space-3);font-size:var(--text-foot);grid-template-columns:92px 1fr auto;display:grid}.macro-bar__label{color:var(--ink-soft);font-weight:600}.macro-bar__track{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.macro-bar__fill{height:100%;transition:width var(--motion-slow) var(--motion-ease);border-radius:3px}.macro-bar__value{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.day-summary__kcal{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:800;line-height:1.05}.day-summary__kcal span{font-size:var(--text-body);color:var(--ink-soft);letter-spacing:0;font-weight:600}.macro-bars--mini{gap:var(--space-1)}.macro-bars--mini .macro-bar__track{height:5px;display:block}.photo{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-button);background:var(--surface-2);width:100%;display:block}.photo--wide{aspect-ratio:16/10}.photo-row-thumb{border-radius:var(--radius-button);object-fit:cover;background:var(--surface-2);flex:none;width:56px;height:56px}.tile-badges{gap:4px;display:flex;position:absolute;top:6px;right:6px}.tile-badge{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f0e13b8;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.tile-badge--danger{background:var(--danger);color:#fff}.tile-badge--wish{background:var(--brand);color:#fff}.tile-badge--cook{color:#fff}.sheet-backdrop{z-index:60;animation:fade-in var(--motion-fast) var(--motion-ease);background:#08070c99;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border-radius:var(--radius-card) var(--radius-card) 0 0;box-shadow:var(--shadow-float);width:100%;max-height:88dvh;padding:var(--space-5);padding-bottom:calc(var(--space-6) + var(--safe-bottom));overflow-y:auto}.sheet__grabber{background:var(--surface-2);width:36px;height:4px;margin:0 auto var(--space-4);border-radius:2px}@media (width>=744px){.sheet-backdrop{padding:var(--space-6);align-items:center}.sheet{border-radius:var(--radius-card);max-width:560px;padding-bottom:var(--space-6)}.sheet__grabber{display:none}}@keyframes fade-in{0%{opacity:0}}.shell{flex-direction:column;min-height:100dvh;display:flex}.shell__header{padding-top:var(--safe-top)}.shell__header-inner{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-3) max(var(--space-4), var(--safe-right)) 0 max(var(--space-4), var(--safe-left));display:flex}.shell__greeting{font-family:var(--font-display);font-size:var(--text-title);letter-spacing:-.02em;font-weight:800;line-height:1.1}.shell__greeting small{font-family:var(--font-body);font-size:var(--text-foot);color:var(--ink-soft);letter-spacing:0;margin-top:2px;font-weight:500;display:block}.shell__banners{padding:var(--space-2) max(var(--space-4), var(--safe-right)) 0 max(var(--space-4), var(--safe-left))}.shell__banners:empty{display:none}.shell__content{width:100%;max-width:960px;padding:var(--space-5) max(var(--space-4), var(--safe-right)) calc(104px + var(--safe-bottom)) max(var(--space-4), var(--safe-left));flex:1;margin:0 auto}.tabbar{z-index:50;background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--surface-2);padding-bottom:var(--safe-bottom);align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar__item{padding:var(--space-2) 0;min-height:54px;color:var(--ink-soft);transition:color var(--motion-fast) var(--motion-ease);flex-direction:column;flex:1;align-items:center;gap:2px;font-size:.6875rem;font-weight:600;text-decoration:none;display:flex}.tabbar__item[aria-current=page]{color:var(--brand)}.tabbar__plus-slot{flex:1;justify-content:center;align-items:center;display:flex}.tabbar__plus{background:linear-gradient(135deg, var(--brand-strong), var(--brand));color:#fff;width:52px;height:52px;box-shadow:var(--shadow-cta);transition:transform var(--motion-fast) var(--motion-ease);border-radius:50%;justify-content:center;align-items:center;margin-top:-22px;display:inline-flex}.tabbar__plus:active{transform:scale(.94)}.sidebar{display:none}@media (width>=1024px){.shell{flex-direction:row}.tabbar{display:none}.sidebar{gap:var(--space-1);width:216px;padding:calc(var(--space-6) + var(--safe-top)) var(--space-4) var(--space-6) max(var(--space-4), var(--safe-left));border-right:1px solid var(--surface-2);flex-direction:column;flex:none;height:100dvh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar__brand{align-items:center;gap:var(--space-3);padding:0 var(--space-3) var(--space-5);font-family:var(--font-display);font-weight:800;font-size:var(--text-section);letter-spacing:-.02em;color:var(--ink);text-decoration:none;display:flex}.sidebar__item{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-button);color:var(--ink-soft);font-weight:600;font-size:var(--text-meta);transition:background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);text-decoration:none;display:flex}.sidebar__item:hover{background:var(--surface-2);color:var(--ink)}.sidebar__item[aria-current=page]{background:var(--brand-soft);color:var(--brand)}.shell__main{flex-direction:column;flex:1;min-width:0;display:flex}.shell__content{padding-bottom:calc(var(--space-8) + var(--safe-bottom))}}.screen{gap:var(--space-6);flex-direction:column;display:flex}.screen-header h1{font-size:var(--text-title);font-weight:800}.section-title{font-size:var(--text-foot);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);font-weight:700}.next-meal{padding:0;position:relative;overflow:hidden}.next-meal__photo{aspect-ratio:16/10;object-fit:cover;background:var(--surface-2);width:100%;display:block}.next-meal__body{padding:var(--space-4) var(--space-5) var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.next-meal__title{font-family:var(--font-display);font-size:var(--text-title);letter-spacing:-.02em;font-weight:800}.photo-row{align-items:center;gap:var(--space-3);text-align:left;width:100%;padding:var(--space-2);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);min-height:64px;transition:transform var(--motion-fast) var(--motion-ease);display:flex}.photo-row:active{transform:scale(.99)}.photo-row__main{flex:1;min-width:0}.photo-row__title{font-weight:600;font-size:var(--text-meta);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.photo-row__meta{color:var(--ink-soft);font-size:var(--text-foot);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.slim-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);min-height:52px;display:flex}.slim-row__text{min-width:0;font-size:var(--text-meta);flex:1}.slim-row__text strong{font-weight:600}.slim-row__text .muted{font-size:var(--text-foot);display:block}.week-grid{gap:var(--space-5);flex-direction:column;display:flex}@media (width>=744px){.week-grid{gap:var(--space-3);grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;display:grid}}.day-col{gap:var(--space-2);flex-direction:column;display:flex}.day-col__head{align-items:baseline;gap:var(--space-2);font-weight:700;font-size:var(--text-foot);color:var(--ink-soft);display:flex}.day-col__head--today{color:var(--brand)}.day-col__today-dot{background:var(--brand);border-radius:50%;width:6px;height:6px}.day-col__meals{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}@media (width>=744px){.day-col__meals{grid-template-columns:1fr}}.meal-tile{gap:var(--space-1);text-align:left;width:100%;transition:transform var(--motion-fast) var(--motion-ease);flex-direction:column;display:flex}.meal-tile:active{transform:scale(.98)}.meal-tile__imgwrap{position:relative}.meal-tile__name{font-size:var(--text-foot);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.meal-tile__slot{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:.6875rem;font-weight:600}.day-totals{gap:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.day-totals__item{align-items:center;gap:var(--space-2);font-size:var(--text-foot);color:var(--ink-soft);font-variant-numeric:tabular-nums;display:inline-flex}.recipe-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=744px){.recipe-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){.recipe-grid{grid-template-columns:repeat(4,1fr)}}.recipe-card{gap:var(--space-2);text-align:left;transition:transform var(--motion-fast) var(--motion-ease);flex-direction:column;display:flex;position:relative}.recipe-card:active{transform:scale(.98)}.recipe-card__main{gap:var(--space-2);text-align:left;flex-direction:column;width:100%;display:flex}.recipe-card__title{font-weight:600;font-size:var(--text-meta);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.recipe-card__meta{color:var(--ink-soft);font-size:var(--text-foot)}.recipe-card__fav{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f0e13b8;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:absolute;top:6px;left:6px}.recipe-card__fav[aria-pressed=true]{color:var(--brand)}.recipe-hero{margin:calc(-1 * var(--space-5)) calc(-1 * var(--space-5)) 0;position:relative}.recipe-hero img{aspect-ratio:16/11;object-fit:cover;width:100%;display:block}.recipe-hero__scrim{background:linear-gradient(to bottom, transparent 35%, var(--surface) 96%);position:absolute;inset:0}.recipe-hero__title{left:var(--space-5);right:var(--space-5);bottom:var(--space-2);font-family:var(--font-display);font-size:var(--text-title);letter-spacing:-.02em;font-weight:800;line-height:1.1;position:absolute}.recipe-hero__meta{font-family:var(--font-body);font-size:var(--text-foot);color:var(--ink-soft);letter-spacing:0;margin-top:2px;font-weight:500;display:block}.stat-line{gap:var(--space-2);text-align:center;grid-template-columns:repeat(4,1fr);display:grid}.stat-line__item{background:var(--surface-2);border-radius:var(--radius-button);padding:var(--space-2)}.stat-line__value{font-family:var(--font-display);font-weight:800;font-size:var(--text-body);font-variant-numeric:tabular-nums}.stat-line__label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem}.ingredient-check{align-items:center;gap:var(--space-3);text-align:left;width:100%;min-height:44px;padding:var(--space-1) 0;font-size:var(--text-meta);display:flex}.ingredient-check__box{border:1.75px solid var(--ink-soft);color:#0000;width:22px;height:22px;transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ingredient-check--done .ingredient-check__box{background:var(--ok);border-color:var(--ok);color:#0f0e13}.ingredient-check--done .ingredient-check__name{color:var(--ink-soft);text-decoration:line-through}.sticky-cta{bottom:calc(-1 * var(--space-6));margin:0 calc(-1 * var(--space-5));padding:var(--space-3) var(--space-5) var(--space-4);background:linear-gradient(to top, var(--surface) 70%, transparent);position:sticky}.sticky-cta .btn{width:100%}.segmented{background:var(--surface-2);border-radius:var(--radius-chip);gap:2px;padding:3px;display:flex}.segmented__item{border-radius:var(--radius-chip);min-height:38px;font-size:var(--text-meta);color:var(--ink-soft);transition:background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);flex:1;font-weight:600}.segmented__item[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}.input{width:100%;min-height:46px;padding:0 var(--space-4);border-radius:var(--radius-button);border:1.5px solid var(--surface-2);background:var(--surface);transition:border-color var(--motion-fast) var(--motion-ease)}.input:focus{border-color:var(--brand);outline:none}.field{gap:var(--space-1);flex-direction:column;display:flex}.field>label{font-size:var(--text-meta);color:var(--ink-soft);font-weight:600}.checkbox-row{align-items:flex-start;gap:var(--space-3);font-size:var(--text-meta);color:var(--ink-soft);cursor:pointer;display:flex}.checkbox-row input{width:20px;height:20px;accent-color:var(--brand);flex:none;margin-top:1px}.shopping-check{border:1.75px solid var(--ink-soft);color:#0000;width:26px;height:26px;transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.shopping-check--done{background:var(--ok);border-color:var(--ok);color:#0f0e13}.shopping-item--done .shopping-item__name{color:var(--ink-soft);text-decoration:line-through}.trial-days{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:800;line-height:1.05}.trial-days span{font-family:var(--font-body);font-size:var(--text-meta);color:var(--ink-soft);letter-spacing:0;font-weight:500}.public-page{background:var(--bg);min-height:100dvh;color:var(--ink);padding-top:var(--safe-top);flex-direction:column;display:flex}.public-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) 0;display:flex}.public-header__brand{align-items:center;gap:var(--space-3);font-family:var(--font-display);font-weight:800;font-size:var(--text-section);letter-spacing:-.02em;color:var(--ink);text-decoration:none;display:flex}.public-main{padding-bottom:var(--space-8);flex:1}.hero{text-align:center;align-items:center;gap:var(--space-5);padding:var(--space-8) 0 var(--space-7);flex-direction:column;display:flex}.hero-badge{align-items:center;gap:var(--space-2);border-radius:var(--radius-chip);background:var(--surface);box-shadow:var(--shadow-card);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);padding:8px 16px;font-size:.72rem;font-weight:700;display:inline-flex}.hero-badge__dot{background:var(--ok);border-radius:50%;flex:none;width:8px;height:8px}.hero h1{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);font-size:clamp(2.6rem,8vw,5rem);font-weight:850;line-height:1.02}.hero h1 em{color:var(--l-cta);font-style:normal}.hero>p{font-size:var(--text-section);color:var(--ink-soft);max-width:46ch;line-height:1.55}.hero__actions{justify-content:center;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.hero__pricenote{font-size:var(--text-foot);color:var(--ink-soft);max-width:60ch}.phone-stage{padding:var(--space-6) 0 var(--space-7);justify-content:center;display:flex;position:relative}.phone{width:340px;max-width:88vw;height:660px;box-shadow:var(--shadow-float);background:#0f0e13;border:10px solid #141320;border-radius:44px;flex:none;position:relative;overflow:hidden}.phone__notch{z-index:2;background:#141320;border-radius:14px;width:110px;height:26px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.phone__screen{pointer-events:none;background:var(--bg);position:absolute;inset:0;overflow:hidden}.phone__app{transform-origin:top;background:var(--bg);width:116%;color:var(--ink);min-height:100%;margin-left:-8%;padding:52px 18px 24px;transform:scale(.86)}.float-card{background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-float);padding:var(--space-3) var(--space-4);font-size:var(--text-foot);max-width:220px;display:none;position:absolute}@media (width>=744px){.float-card{display:block}}.float-card--left{top:110px;left:calc(50% - 380px)}.float-card--right{top:300px;right:calc(50% - 380px)}.float-card__big{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:800}.landing-section{padding:var(--space-7) 0;gap:var(--space-5);flex-direction:column;display:flex}.landing-section h2{font-family:var(--font-display);letter-spacing:-.025em;text-align:center;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800}.landing-section__intro{text-align:center;color:var(--ink-soft);max-width:560px;margin:0 auto}.landing-section__cta{gap:var(--space-3);text-align:center;flex-direction:column;align-items:center;display:flex}.feature-card__num{font-family:var(--font-display);font-weight:800;font-size:var(--text-meta);letter-spacing:.08em;color:var(--l-cta)}.feature-grid{gap:var(--space-4);display:grid}@media (width>=744px){.feature-grid{grid-template-columns:repeat(3,1fr)}}.feature-card{gap:var(--space-3);flex-direction:column;display:flex}.feature-card h3{font-size:var(--text-body);font-weight:700}.feature-card p{font-size:var(--text-meta);color:var(--ink-soft)}.feature-card__visual{border-radius:var(--radius-button);background:var(--surface-2);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.feature-card__tiles{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.pricing-card{gap:var(--space-4);text-align:center;flex-direction:column;align-items:center;width:100%;max-width:440px;margin:0 auto;display:flex}.pricing-card__price{font-family:var(--font-display);letter-spacing:-.03em;font-size:3rem;font-weight:850;line-height:1.1}.pricing-card__price span{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-soft);letter-spacing:0;font-weight:500}.pricing-list{gap:var(--space-2);font-size:var(--text-meta);color:var(--ink-soft);text-align:left;flex-direction:column;display:flex}.pricing-list li{gap:var(--space-2);align-items:flex-start;display:flex}.pricing-list svg{color:var(--ok);flex:none;margin-top:2px}.public-footer{border-top:1px solid var(--surface-2);padding:var(--space-6) 0 calc(var(--space-6) + var(--safe-bottom));font-size:var(--text-foot);color:var(--ink-soft)}.public-footer__links{gap:var(--space-4);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.public-footer__links a{color:var(--ink-soft)}.public-footer__links .is-pending{opacity:.7}.narrow-page{width:100%;max-width:440px;padding:var(--space-7) max(var(--space-5), var(--safe-left)) var(--space-8);gap:var(--space-5);flex-direction:column;flex:1;margin:0 auto;display:flex}.narrow-page h1{font-size:var(--text-title);font-weight:800}.narrow-page--wide{max-width:560px}.divider-label{align-items:center;gap:var(--space-3);color:var(--ink-soft);font-size:var(--text-foot);display:flex}.divider-label:before,.divider-label:after{content:"";background:var(--surface-2);flex:1;height:1px}.loading-screen{justify-content:center;align-items:center;gap:var(--space-3);min-height:60dvh;color:var(--ink-soft);flex-direction:column;display:flex}.loading-screen .btn__spinner{width:24px;height:24px;color:var(--brand)}.price-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.price-grid__cell{background:var(--surface-2);border-radius:var(--radius-button);padding:var(--space-3) var(--space-4)}.price-grid__value{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.3rem;font-weight:800}.price-grid__label{font-size:var(--text-foot);color:var(--ink-soft)}.perspective-menu{position:relative}.perspective-menu__list{top:calc(100% + var(--space-1));z-index:70;background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-float);padding:var(--space-2);min-width:220px;animation:fade-in var(--motion-fast) var(--motion-ease);flex-direction:column;gap:2px;display:flex;position:absolute;right:0}.perspective-menu__item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-button);min-height:44px;font-size:var(--text-meta);text-align:left;width:100%;font-weight:600;display:flex}.perspective-menu__item:hover{background:var(--surface-2)}.perspective-menu__item[aria-pressed=true]{background:var(--brand-soft);color:var(--brand)}.empty-state{text-align:center;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);color:var(--ink-soft);flex-direction:column;display:flex}.empty-state svg{color:var(--brand);opacity:.7}
