@font-face{font-family:League Gothic;font-style:normal;font-display:swap;font-weight:400;src:url(../media/league-gothic-vietnamese-400-normal.06ryy.j9nkucc.woff2)format("woff2"),url(../media/league-gothic-vietnamese-400-normal.01s6xnmh-7_yu.woff)format("woff");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:League Gothic;font-style:normal;font-display:swap;font-weight:400;src:url(../media/league-gothic-latin-ext-400-normal.0fzivk~7l2av8.woff2)format("woff2"),url(../media/league-gothic-latin-ext-400-normal.0_g2fqqet.9tn.woff)format("woff");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:League Gothic;font-style:normal;font-display:swap;font-weight:400;src:url(../media/league-gothic-latin-400-normal.0kxdx0w7w68rj.woff2)format("woff2"),url(../media/league-gothic-latin-400-normal.0n.ffob69yvky.woff)format("woff");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}
@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-cyrillic-ext-wght-normal.0f_n1lzbmjsth.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-cyrillic-wght-normal.0h3nfhvv2m3d8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-greek-wght-normal.0-b7k8a8.-y0b.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-vietnamese-wght-normal.15hnttuouuckd.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-latin-ext-wght-normal.0bko.tvg3g1d9.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-latin-wght-normal.0jqazm8k6u60w.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{--night:#0b111d;--ink:#101827;--slate:#172235;--slate-2:#213047;--cream:#f4e9d5;--cream-dim:#d7ccba;--muted:#aeb9c6;--paprika:#d95f3b;--orange:#e7783e;--citrus:#f4c95d;--sage:#94a67a;--red:#f0826c;--rule:#f4e9d526;--rule-strong:#f4e9d547;--shadow:0 24px 70px #00000057;--display:"League Gothic", "Arial Narrow", sans-serif;--body:"Manrope Variable", "Manrope", sans-serif;--text-prose:1rem}@media (min-width:1024px){:root{--text-prose:1.125rem}}*{box-sizing:border-box}html{background:var(--night);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth;min-height:100%}body{background:radial-gradient(circle at 72% -20%, #3f5b7d30, transparent 40%), var(--night);min-height:100vh;color:var(--cream);font-family:var(--body);text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.5}body:before{z-index:-1;content:"";pointer-events:none;background-image:repeating-linear-gradient(90deg,#0000 0 47px,#ffffff03 48px),radial-gradient(#ffffff09 .7px,#0000 .7px);background-size:auto,7px 7px;position:fixed;inset:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--citrus);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.38}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--cream);font-family:var(--display);letter-spacing:.012em;text-transform:uppercase;margin-bottom:0;font-weight:400;line-height:.92}h1{font-size:clamp(3.2rem,13vw,5.8rem)}h2{font-size:clamp(2.1rem,8vw,3.35rem)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;text-transform:none;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--citrus);letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:7px;margin-bottom:10px;font-size:.68rem;font-weight:760;line-height:1.3;display:flex}.primary-button,.quiet-button,.danger-button{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:9px;min-height:48px;font-size:.76rem;font-weight:760;line-height:1;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.primary-button{background:var(--orange);color:#1a1010;padding:0 20px;box-shadow:4px 4px #702c1e}.primary-button:hover{background:var(--citrus);transform:translate(-1px,-1px)}.quiet-button{border-color:var(--rule-strong);color:var(--cream);background:#f4e9d50b;padding:0 17px}.quiet-button:hover{border-color:var(--cream-dim);background:#f4e9d514}.danger-button{color:var(--red);background:#f0826c14;border-color:#f0826c66;padding:0 17px}.icon-button{border:1px solid var(--rule);cursor:pointer;background:#0b111dad;border-radius:50%;flex:0 0 48px;place-items:center;width:48px;height:48px;display:inline-grid}.text-button{min-height:44px;color:var(--citrus);cursor:pointer;letter-spacing:.04em;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:.75rem;font-weight:720;display:inline-flex}.brand-lockup{align-items:center;gap:12px;display:flex}.brand-lockup strong,.mobile-topbar strong{font-family:var(--display);letter-spacing:.055em;text-transform:uppercase;font-size:1.36rem;font-weight:400;line-height:1;display:block}.brand-lockup small,.mobile-topbar small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:5px;font-size:.61rem;display:block}.brand-mark{background:linear-gradient(135deg, transparent 0 72%, var(--orange) 72% 100%), var(--ink);width:46px;height:46px;color:var(--cream);font-family:var(--display);letter-spacing:.06em;border:1px solid #f4e9d580;flex:0 0 46px;place-items:center;font-size:1.14rem;line-height:1;display:grid}.private-gate{place-items:center;min-height:100svh;padding:32px 20px;display:grid;position:relative;overflow:hidden}.private-gate__glow{border:1px solid #f4c95d29;border-radius:50%;width:430px;height:430px;position:absolute;top:-160px;left:-180px;box-shadow:0 0 0 70px #d95f3b06,0 0 0 140px #f4c95d05}.private-gate__panel{z-index:2;border-block:1px solid var(--rule-strong);width:min(100%,560px);padding:28px 0;position:relative}.brand-lockup--gate{margin-bottom:76px}.private-gate__copy h1{max-width:420px;font-size:clamp(4.8rem,23vw,7.6rem)}.private-gate__copy>p:last-child{max-width:460px;color:var(--cream-dim);margin:24px 0 0;font-size:1rem;line-height:1.75}.private-gate__button{width:100%;margin-top:38px}.privacy-note{color:var(--muted);font-size:var(--text-prose);align-items:flex-start;gap:10px;margin:25px 0 0;line-height:1.6;display:flex}.privacy-note svg{color:var(--sage);flex:none;margin-top:2px}.private-gate__still-life{display:none}.kitchen-shell{min-height:100svh;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.desktop-rail{display:none}.mobile-topbar{z-index:30;border-bottom:1px solid var(--rule);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0b111de8;justify-content:space-between;align-items:center;min-height:72px;padding:10px 17px;display:flex;position:sticky;top:0}.mobile-topbar>button:first-child{text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.mobile-topbar .brand-mark{flex-basis:42px;width:42px;height:42px}.mobile-topbar__actions{align-items:center;gap:8px;display:flex}.mobile-topbar__actions .icon-button[aria-expanded=true]{border-color:var(--orange);color:var(--citrus)}.mobile-dock{z-index:50;padding:7px 5px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--rule-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0b111df5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -20px 45px #00000047}.dock-link{color:#7f8b99;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:58px;padding:4px 2px;display:flex;position:relative}.dock-link span{letter-spacing:.025em;text-overflow:ellipsis;max-width:100%;font-size:.59rem;font-weight:700;overflow:hidden}.dock-link[data-active=true]{color:var(--citrus)}.dock-link[data-active=true]:before{background:var(--orange);content:"";width:25px;height:3px;position:absolute;top:-8px}.kitchen-main{width:min(100%,1120px);margin:0 auto;padding:16px 16px 56px}.route-stage{min-width:0}.view-header{justify-content:space-between;align-items:flex-end;gap:20px;margin:28px 0 22px;display:flex}.view-header h1{max-width:770px}.view-intro{max-width:610px;color:var(--muted);font-size:var(--text-prose);margin:15px 0 0;line-height:1.65}.freshness-seal{display:none}.section-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.section-heading .eyebrow{margin-bottom:7px}.section-heading>span,.section-heading>div+span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-weight:700}.section-heading--line{border-bottom:1px solid var(--rule-strong);padding-bottom:15px}.kitchen-assistant{z-index:20;border-bottom:1px solid var(--rule);background:#101827b8;position:relative}.kitchen-assistant[data-open=false]{display:none}.kitchen-assistant__toggle{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;width:100%;min-height:58px;padding:10px 14px;display:none}.kitchen-assistant__toggle>span{color:var(--citrus);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:8px;font-size:.74rem;font-weight:760;display:flex}.kitchen-assistant__toggle small{color:var(--muted);font-size:var(--text-prose);grid-column:1}.kitchen-assistant__toggle>svg{grid-area:1/2/3}.kitchen-assistant__body{border-top:1px solid var(--rule);padding:14px}.kitchen-assistant__body form{grid-template-columns:auto 1fr;gap:10px;display:grid}.kitchen-assistant__body form>.search-field{grid-column:1/-1}.assistant-chip{border:1px solid var(--orange);min-height:46px;color:var(--citrus);cursor:pointer;letter-spacing:.07em;text-transform:uppercase;background:#e7783e1f;border-radius:3px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.7rem;font-weight:760;line-height:1;transition:background .18s,border-color .18s;display:inline-flex}.assistant-chip:hover:not(:disabled){background:#e7783e33}.assistant-chip:disabled:not([data-working=true]){border-color:var(--rule-strong);color:var(--muted);background:0 0}.assistant-results,.assistant-handoff{border-top:1px dashed var(--rule-strong);margin-top:16px;padding-top:16px}.assistant-results>p,.assistant-handoff p{color:var(--muted);font-size:var(--text-prose);margin-bottom:12px}.assistant-results>button{border:0;border-bottom:1px solid var(--rule);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:64px;padding:10px 0;display:flex}.assistant-results strong,.assistant-results small{display:block}.assistant-results strong{font-size:var(--text-prose)}.assistant-results small{color:var(--muted);font-size:var(--text-prose);margin-top:4px}.assistant-handoff>div:first-child strong{font-family:var(--display);text-transform:uppercase;font-size:1.5rem;font-weight:400}.assistant-handoff pre{border-left:3px solid var(--citrus);background:var(--night);max-height:170px;color:var(--cream-dim);font-family:var(--body);white-space:pre-wrap;margin:14px 0;padding:14px;font-size:.68rem;overflow:auto}.assistant-handoff>div:last-child{flex-wrap:wrap;gap:10px;display:flex}.assistant-stream:empty{display:none}.assistant-answer{border-top:1px dashed var(--rule-strong);margin-top:16px;padding-top:16px}.assistant-answer__text{color:var(--cream);font-size:var(--text-prose);line-height:1.6}.assistant-answer__points{gap:7px;margin-top:12px;padding-left:17px;list-style:outside;display:grid}.assistant-answer__points li{color:var(--cream-dim);font-size:var(--text-prose);line-height:1.55}.assistant-answer__ideas{border-top:1px solid var(--rule);margin-top:16px;padding-top:14px}.assistant-answer__ideas>strong{color:var(--citrus);letter-spacing:.07em;text-transform:uppercase;margin-bottom:10px;font-size:.7rem;font-weight:760;display:block}.assistant-answer__ideas ul{gap:11px;list-style:none;display:grid}.assistant-answer__ideas li{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.assistant-answer__ideas b{font-size:var(--text-prose);font-weight:700}.assistant-answer__ideas li>span{color:var(--muted);font-size:var(--text-prose);line-height:1.55}.assistant-idea__draft{justify-self:start;margin-top:5px}.assistant-idea__failure{border:1px solid var(--rule-strong);border-radius:12px;gap:4px;margin-top:12px;padding:11px 12px;display:grid}.assistant-idea__failure strong{color:var(--cream);font-size:var(--text-prose)}.assistant-idea__failure p{color:var(--muted);font-size:.78rem;line-height:1.5}.assistant-proposals{border-top:1px solid var(--rule);margin-top:16px;padding-top:14px}.assistant-proposals>strong{color:var(--citrus);letter-spacing:.07em;text-transform:uppercase;margin-bottom:10px;font-size:.7rem;font-weight:760;display:block}.assistant-proposals ul{gap:10px;list-style:none;display:grid}.assistant-proposal{border:1px solid var(--rule-strong);background:#0b111d8c;justify-items:start;gap:8px;padding:12px 13px;display:grid}.assistant-proposal>p{min-width:0;color:var(--cream);font-size:var(--text-prose);overflow-wrap:anywhere;line-height:1.5}.assistant-proposal>small{color:var(--muted);overflow-wrap:anywhere;font-size:.72rem;line-height:1.5}.assistant-proposal__gate{border:1px solid var(--orange);background:#d95f3b17;gap:10px;width:100%;min-width:0;padding:11px 12px;display:grid}.assistant-proposal__gate-question{min-width:0;color:var(--cream);font-size:var(--text-prose);overflow-wrap:anywhere;line-height:1.5}.assistant-proposal__gate-actions{flex-wrap:wrap;gap:8px;display:flex}.assistant-proposal__done,.assistant-proposal__failed{align-items:center;gap:6px;font-size:.78rem;line-height:1.45;display:flex}.assistant-proposal__done{color:var(--sage)}.assistant-proposal__failed{color:var(--red)}.assistant-answer__note{color:var(--muted);margin-top:14px;font-size:.68rem;display:block}.assistant-failure{background:#f0826c14;border:1px solid #f0826c6b;justify-items:start;gap:8px;margin-top:16px;padding:14px 15px;display:grid}.assistant-failure strong{color:var(--red);font-size:var(--text-prose)}.assistant-failure p{color:var(--cream-dim);font-size:var(--text-prose);margin:0;line-height:1.55}.search-field{border:1px solid var(--rule-strong);background:#0b111dab;align-items:center;gap:9px;min-height:50px;padding:0 13px;display:flex}.search-field:focus-within{border-color:var(--citrus)}.search-field>svg{color:var(--muted);flex:none}.search-field input{width:100%;min-width:0;min-height:48px;color:var(--cream);background:0 0;border:0;outline:0;font-size:16px}.search-field input::placeholder,.field-label input::placeholder,.shopping-add input::placeholder{color:#728092}.search-field>button{min-height:44px;color:var(--citrus);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:.7rem;font-weight:700}.speech-search{display:inline-flex;position:relative}.speech-button{border:1px solid var(--rule-strong);background:var(--slate);cursor:pointer;min-width:94px;min-height:50px;color:var(--cream);justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:.72rem;font-weight:700;display:inline-flex}.speech-button[data-listening=true]{border-color:var(--orange);color:var(--orange)}.speech-search__preview{z-index:5;border:1px solid var(--rule-strong);background:var(--night);width:max-content;max-width:240px;color:var(--cream);margin:0;padding:8px 10px;font-size:.75rem;line-height:1.35;position:absolute;top:calc(100% + 6px);left:0}.speech-unavailable{border:1px solid var(--rule);color:#637082;flex:0 0 50px;place-items:center;width:50px;height:50px;display:grid}.field-label{color:var(--muted);letter-spacing:.075em;text-transform:uppercase;gap:7px;font-size:.67rem;font-weight:700;display:grid}.field-label input,.field-label select,.field-label textarea,.pantry-details input,.shopping-add input{border:1px solid var(--rule-strong);background:var(--night);min-height:49px;color:var(--cream);border-radius:0;outline:0;font-size:16px}.field-label input,.field-label select,.field-label textarea{width:100%;padding:0 13px}.field-label textarea{resize:vertical;padding-block:11px;font-family:inherit;line-height:1.5}.field-label select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 17px) 21px,calc(100% - 11px) 21px;background-repeat:no-repeat;background-size:6px 6px}.week-ribbon{scrollbar-width:none;scroll-snap-type:x proximity;grid-auto-columns:68px;grid-auto-flow:column;gap:8px;margin:0 -16px 19px;padding:0 16px 8px;display:grid;overflow-x:auto}.week-ribbon::-webkit-scrollbar{display:none}.week-ribbon button{border:1px solid var(--rule);cursor:pointer;scroll-snap-align:center;background:#101827b8;place-items:center;min-height:86px;padding:8px 4px 12px;display:grid;position:relative}.week-ribbon button span{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.61rem;font-weight:740}.week-ribbon button strong{font-family:var(--display);font-size:2rem;font-weight:400;line-height:.85}.week-ribbon button i{background:var(--sage);border-radius:50%;width:5px;height:5px;position:absolute;bottom:6px}.week-ribbon button[data-mode=leftover] i{background:var(--citrus)}.week-ribbon button[data-active=true]{border-color:var(--orange);background:var(--orange);color:var(--night);box-shadow:4px 4px #702c1ec7}.week-ribbon button[data-active=true] span{color:#0b111dc2}.week-ribbon button[data-active=true] i{background:var(--night)}.meal-hero{grid-template-columns:1fr;gap:14px;display:grid}.meal-panel{border:1px solid var(--rule-strong);background:var(--ink);flex-direction:column;display:flex;position:relative;overflow:hidden}.meal-panel:before{z-index:3;background:var(--orange);content:"";width:72px;height:6px;position:absolute;top:0;left:16px}.meal-panel[data-status=suggested]:before{background:var(--citrus)}.meal-panel[data-status=empty]:before{background:var(--rule-strong)}.meal-panel__image{aspect-ratio:16/9;background:var(--slate);position:relative;overflow:hidden}.meal-panel__image:after{background:linear-gradient(to top, var(--ink), #0b111d80 34%, transparent 68%);content:"";position:absolute;inset:0}.meal-panel__image img{object-fit:cover;object-position:50% 45%;width:100%;height:100%}.meal-panel__placeholder{background:radial-gradient(circle at 66% 32%, #f4c95d2b, transparent 28%), linear-gradient(145deg, var(--slate), var(--night) 64%);text-align:center;border:1px solid #f4c95d1f;place-content:center;height:100%;display:grid}.meal-panel__placeholder span{color:var(--cream);font-family:var(--display);letter-spacing:.04em;font-size:clamp(2.8rem,11vw,4.4rem);line-height:1}.meal-panel__placeholder small{color:var(--citrus);letter-spacing:.2em;text-transform:uppercase;font-size:.62rem;font-weight:800}.meal-panel__label{z-index:2;border:1px solid var(--rule-strong);color:var(--cream);letter-spacing:.2em;text-transform:uppercase;background:#0b111dc7;align-items:center;gap:7px;padding:6px 10px;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:14px;left:14px}.meal-panel__copy{flex-direction:column;flex:1;padding:18px 16px 20px;display:flex;position:relative}.meal-panel__status[data-status]{color:var(--citrus)}.meal-panel[data-status=planned] .meal-panel__status{color:var(--sage)}.meal-panel[data-status=empty] .meal-panel__status{color:var(--muted)}.meal-panel__copy h2{overflow-wrap:anywhere;font-size:clamp(2rem,8vw,2.7rem)}.meal-panel__summary{-webkit-line-clamp:2;line-clamp:2;color:var(--muted);font-size:var(--text-prose);-webkit-box-orient:vertical;margin:11px 0 0;line-height:1.55;display:-webkit-box;overflow:hidden}.meal-panel__meta{flex-wrap:wrap;gap:6px;margin-top:15px;display:flex}.meal-panel__meta>span{border:1px solid var(--rule);color:var(--cream-dim);letter-spacing:.055em;text-transform:uppercase;padding:6px 9px;font-size:.63rem;font-weight:700}.meal-panel .hero-actions{margin-top:auto;padding-top:18px}.meal-panel .hero-actions .primary-button{flex:auto}.meal-panel .hero-actions .quiet-button{flex:0 auto}.leftover-link{color:var(--citrus);font-size:var(--text-prose);border-block:1px dashed #f4c95d4d;align-items:flex-start;gap:10px;margin-top:18px;padding:12px 0;line-height:1.5;display:flex}.leftover-link svg{flex:none;margin-top:1px}.leftover-link--future{color:var(--sage)}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:21px;display:flex}.hero-actions .primary-button{flex:175px}.hero-actions .quiet-button{flex:145px}.ingredient-run{padding:38px 0 24px}.readiness{align-items:center;gap:7px;display:none;color:var(--sage)!important}.ingredient-run__scroller{scrollbar-width:none;scroll-snap-type:x proximity;grid-auto-columns:minmax(280px,70vw);grid-auto-flow:column;gap:10px;margin:18px -16px 0;padding:0 16px 12px;display:grid;overflow-x:auto}.ingredient-run__scroller>div{scroll-snap-align:start}.ingredient-run__empty{color:var(--muted);margin:14px 0 0}.used-up-trigger{margin-top:4px}.used-up-panel{border:1px solid var(--rule-strong);background:var(--ink);margin-top:12px;padding:14px}.used-up-panel header{justify-content:space-between;align-items:center;display:flex}.used-up-panel header strong,.used-up-panel header small{display:block}.used-up-panel header small{color:var(--muted);font-size:var(--text-prose);margin-top:3px}.used-up-panel>div{margin-top:12px;display:grid}.used-up-panel__empty{color:var(--muted);font-size:var(--text-prose);margin:0}.used-up-panel>div button{border:0;border-top:1px solid var(--rule);cursor:pointer;min-height:50px;font-size:var(--text-prose);text-align:left;background:0 0;justify-content:space-between;align-items:center;display:flex}.used-up-panel>div button span{color:var(--citrus);font-size:.65rem}.ingredient-ticket{border:1px solid var(--rule);background:linear-gradient(90deg, #f4e9d509, transparent 50%), var(--ink);width:100%;min-height:118px;color:var(--cream);text-align:left;border-radius:0;grid-template-columns:70px 1fr 26px;align-items:start;gap:10px;padding:8px 9px 8px 7px;display:grid;position:relative;overflow:hidden}button.ingredient-ticket{cursor:pointer;min-height:96px}.ingredient-ticket:before,.ingredient-ticket:after{background:var(--night);content:"";border-radius:50%;width:6px;height:6px;position:absolute;left:84px}.ingredient-ticket:before{top:-3px}.ingredient-ticket:after{bottom:-3px}.ingredient-ticket__visual{border-right:1px dashed var(--rule-strong);place-items:center;width:70px;height:76px;display:grid}.ingredient-ticket__visual img{object-fit:contain;filter:drop-shadow(0 7px 10px #00000047);width:66px;height:66px}.category-stamp{border:1px solid var(--sage);width:50px;height:50px;color:var(--sage);font-family:var(--display);place-items:center;font-size:1.3rem;display:grid}.ingredient-ticket__copy{min-width:0}.ingredient-ticket__copy strong,.ingredient-ticket__copy small{display:block}.ingredient-ticket__copy strong{font-size:var(--text-prose);-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.ingredient-ticket__copy small{color:var(--muted);font-size:var(--text-prose);margin-top:5px}.ingredient-ticket__state{border:1px solid var(--rule-strong);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.ingredient-ticket__state[data-stocked=true]{border-color:var(--sage);background:var(--sage);color:var(--night)}.ingredient-ticket[data-selected=true]{border-color:var(--citrus)}.meal-timeline{padding:24px 0 56px}.meal-timeline__track{margin-top:22px}.meal-stop{grid-template-columns:44px 1fr;gap:12px;display:grid}.meal-stop__time{grid-template-rows:42px 1fr;justify-items:center;display:grid}.meal-stop__time>span{border:1px solid var(--rule-strong);background:var(--ink);width:38px;height:38px;color:var(--citrus);border-radius:50%;place-items:center;display:grid}.meal-stop__time i{border-left:1px dashed #f4c95d66;width:1px;min-height:34px}.meal-stop__body{border-bottom:1px solid var(--rule);min-height:130px;padding:3px 0 22px}.meal-stop:last-child .meal-stop__body{border-bottom:0}.meal-stop__kicker{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.meal-stop__kicker>span{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;font-size:.63rem;font-weight:760}.meal-stop__kicker em{color:var(--sage);letter-spacing:.08em;text-transform:uppercase;border:1px solid #94a67a66;padding:4px 7px;font-size:.55rem;font-style:normal;font-weight:740}.meal-stop__kicker em[data-mode=leftover]{color:var(--citrus);border-color:#f4c95d66}.meal-stop__meal{cursor:pointer;text-align:left;background:0 0;border:0;width:100%;min-height:44px;padding:0;display:block}.meal-stop__meal strong,.meal-stop__meal small{display:block}.meal-stop__meal strong{font-family:var(--display);text-transform:uppercase;font-size:1.55rem;font-weight:400;line-height:1}.meal-stop__meal small{color:var(--muted);font-size:var(--text-prose);margin-top:6px}.meal-stop__empty{border:1px dashed var(--rule-strong);cursor:pointer;width:100%;min-height:50px;color:var(--muted);background:#f4e9d505;align-items:center;gap:8px;padding:0 11px;font-size:.72rem;display:flex}.view-header--with-actions{flex-direction:column;align-items:flex-start}.week-switcher{border-block:1px solid var(--rule);grid-template-columns:48px 1fr 48px;align-items:center;width:100%;display:grid}.week-switcher button{background:0 0;border:0;place-items:center;width:48px;height:48px;display:grid}.week-switcher strong{text-align:center;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.week-ledger{border-top:1px solid var(--rule-strong)}.week-ledger__head{display:none}.week-day{border-bottom:1px solid var(--rule-strong);padding:17px 0;display:grid}.week-day[data-selected=true]{position:relative}.week-day[data-selected=true]:before{background:var(--orange);content:"";width:3px;position:absolute;top:0;bottom:0;left:-16px}.week-day__date{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:1fr auto;align-items:end;gap:1px 12px;min-height:72px;padding:0 0 12px;display:grid}.week-day__date>span{color:var(--citrus);letter-spacing:.13em;text-transform:uppercase;font-size:.69rem;font-weight:760}.week-day__date>strong{font-family:var(--display);grid-area:1/2/3;font-size:4.4rem;font-weight:400;line-height:.75}.week-day__date>small{width:max-content;color:var(--sage);letter-spacing:.09em;text-transform:uppercase;background:#94a67a1f;padding:3px 6px;font-size:.55rem;font-weight:700}.week-day__date>small[data-mode=leftover]{color:var(--citrus);background:#f4c95d1a}.week-meal{border-top:1px solid var(--rule);grid-template-columns:74px 1fr auto;align-items:center;gap:9px;min-height:78px;display:grid;position:relative}.week-meal__label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.57rem;font-weight:760}.week-meal>button:not(.week-meal__edit){cursor:pointer;text-align:left;background:0 0;border:0;min-height:56px;padding:6px 0}.week-meal>button strong,.week-meal>button small{display:block}.week-meal>button strong{font-size:var(--text-prose)}.week-meal>button small{color:var(--muted);font-size:var(--text-prose);align-items:center;gap:5px;margin-top:4px;display:flex}.week-meal__empty{color:var(--muted);align-items:center;gap:7px;font-size:.7rem;display:flex!important}.week-meal__edit{min-width:48px;min-height:48px;color:var(--citrus);cursor:pointer;background:0 0;border:0;font-size:.62rem}.pattern-note{border-block:1px dashed #f4c95d57;grid-template-columns:60px 1fr;gap:16px;margin:25px 0 50px;padding:18px 0;display:grid}.pattern-note>span{background:var(--citrus);width:54px;height:54px;color:var(--night);font-family:var(--display);place-items:center;font-size:2.2rem;display:grid}.pattern-note strong{font-family:var(--display);text-transform:uppercase;font-size:1.45rem;font-weight:400}.pattern-note p{color:var(--muted);font-size:var(--text-prose);margin:4px 0 0;line-height:1.55}.pantry-counts{display:none}.pantry-search-row{align-items:stretch;gap:8px;display:flex}.pantry-search-row .search-field{flex:1}.category-rail,.recipe-filters{scrollbar-width:none;gap:7px;margin:14px -16px 0;padding:0 16px 9px;display:flex;overflow-x:auto}.category-rail button,.recipe-filters button,.pantry-toolbar button{border:1px solid var(--rule);min-height:42px;color:var(--muted);cursor:pointer;background:0 0;flex:none;align-items:center;gap:6px;padding:0 12px;font-size:.66rem;font-weight:700;display:inline-flex}.category-rail button[data-active=true],.recipe-filters button[data-active=true],.pantry-toolbar button[data-active=true]{border-color:var(--citrus);color:var(--citrus);background:#f4c95d14}.pantry-toolbar{border-bottom:1px solid var(--rule-strong);justify-content:space-between;align-items:center;gap:12px;min-height:58px;margin-top:5px;display:flex}.pantry-toolbar p{color:var(--muted);font-size:var(--text-prose);margin:0}.pantry-toolbar p strong{color:var(--cream)}.pantry-toolbar button{min-height:40px}.pantry-ledger{padding-bottom:52px}.pantry-row{border-bottom:1px solid var(--rule);content-visibility:auto;contain-intrinsic-size:110px;grid-template-columns:1fr auto;align-items:center;display:grid;position:relative}.pantry-row .ingredient-ticket{background:0 0;border:0}.pantry-row__details{min-width:66px;min-height:48px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:.6rem}.pantry-row__details svg{vertical-align:middle;margin-left:4px;transition:transform .18s}.pantry-row__details[data-open=true] svg{transform:rotate(180deg)}.pantry-details{border-top:1px dashed var(--rule-strong);grid-column:1/-1;gap:11px;padding:15px 0 18px;display:grid}.pantry-details label,.pantry-details fieldset{min-width:0;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border:0;gap:6px;margin:0;padding:0;font-size:.62rem;font-weight:700;display:grid}.pantry-details legend{margin-bottom:6px;padding:0}.pantry-details input{width:100%;padding:0 11px}.pantry-quantity-picks{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.pantry-quantity-picks button{border:1px solid var(--rule-strong);min-height:42px;color:var(--cream);cursor:pointer;background:#f4e9d506;font-size:.82rem}.pantry-quantity-picks button[data-active=true]{border-color:var(--citrus);color:var(--citrus);background:#f4c95d1a}.pantry-details__package{padding-top:3px!important}.pantry-details__package>div{grid-template-columns:minmax(72px,.65fr) 1fr;gap:7px;display:grid}.pantry-details__package small{color:var(--muted);font-size:var(--text-prose);letter-spacing:0;text-transform:none;font-weight:500;line-height:1.45}.pantry-details__package-hint{border-block:1px dashed var(--rule);color:var(--muted);font-size:var(--text-prose);align-self:end;margin:0;padding:11px 0;line-height:1.5}.pantry-details__error{border-left:2px solid var(--orange);color:var(--cream);font-size:var(--text-prose);background:#f2774214;margin:0;padding:9px 11px;line-height:1.45}.empty-state{text-align:center;align-content:center;place-items:center;min-height:330px;padding:36px 20px;display:grid}.empty-state>span{border:1px solid var(--rule-strong);width:66px;height:66px;color:var(--citrus);font-family:var(--display);place-items:center;font-size:2.5rem;display:grid}.empty-state h2{margin-top:17px}.empty-state p{max-width:340px;color:var(--muted);font-size:var(--text-prose);margin:11px 0 19px}.recipe-count{display:none}.ingredient-filter-panel{border-block:1px solid var(--rule);margin:4px 0 17px}.ingredient-filter-panel__toggle{width:100%;min-height:54px;color:var(--cream);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:14px;display:flex}.ingredient-filter-panel__toggle>span{text-transform:uppercase;align-items:center;gap:8px;font-size:.72rem;font-weight:800;display:inline-flex}.ingredient-filter-panel__toggle small{color:var(--muted);font-size:var(--text-prose)}.ingredient-filter-panel__body{padding:0 0 14px}.ingredient-mode{align-items:center;gap:7px;margin-bottom:10px;display:flex}.ingredient-mode>span{color:var(--muted);font-size:var(--text-prose);margin-right:auto}.ingredient-mode button{border:1px solid var(--rule);min-height:38px;color:var(--muted);background:0 0;padding:0 10px;font-size:.62rem;font-weight:750}.ingredient-mode button[data-active=true]{border-color:var(--sage);color:var(--sage)}.ingredient-choice-ledger{border-top:1px solid var(--rule);content-visibility:auto;max-height:280px;margin-top:10px;display:grid;overflow-y:auto}.ingredient-choice-ledger button{border:0;border-bottom:1px solid var(--rule);min-height:48px;color:var(--cream);cursor:pointer;text-align:left;background:0 0;grid-template-columns:1fr auto 20px;align-items:center;gap:10px;padding:0 8px;display:grid}.ingredient-choice-ledger button small{color:var(--muted);text-transform:uppercase;font-size:.59rem}.ingredient-choice-ledger button svg{color:var(--muted)}.ingredient-choice-ledger button[data-selected=true]{background:#94a67a14}.ingredient-choice-ledger button[data-selected=true] svg{color:var(--sage)}.match-summary{border-block:1px dashed var(--rule-strong);justify-content:space-between;align-items:center;gap:16px;margin:5px 0 25px;padding:13px 0;display:flex}.match-summary>span{color:var(--citrus);font-size:var(--text-prose);align-items:center;gap:7px;display:flex}.match-summary small{color:var(--muted);font-size:var(--text-prose);display:none}.recipe-group{margin-bottom:36px}.recipe-ledger{margin-top:7px}.recipe-row{border-bottom:1px solid var(--rule);content-visibility:auto;contain-intrinsic-size:126px;grid-template-columns:1fr 48px;align-items:center;display:grid;position:relative}.recipe-row__main{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:104px 1fr;align-items:center;gap:12px;min-height:126px;padding:9px 0;display:grid}.recipe-row__miniatures{border-left:3px solid var(--orange);background:var(--ink);width:104px;height:98px;display:block;position:relative;overflow:hidden}.recipe-row__miniatures img,.recipe-row__miniatures i{object-fit:contain;place-items:center;width:52px;height:52px;font-style:normal;display:grid;position:absolute}.recipe-row__miniatures img:first-child,.recipe-row__miniatures i:first-child{top:2px;left:4px}.recipe-row__miniatures img:nth-child(2),.recipe-row__miniatures i:nth-child(2){top:0;right:1px}.recipe-row__miniatures img:nth-child(3),.recipe-row__miniatures i:nth-child(3){bottom:1px;left:19px}.recipe-row__miniatures img:nth-child(4),.recipe-row__miniatures i:nth-child(4){bottom:-3px;right:3px}.recipe-row__copy{min-width:0}.recipe-row__copy>strong,.recipe-row__copy>small{display:block}.recipe-row__copy>strong{font-family:var(--display);text-transform:uppercase;font-size:1.45rem;font-weight:400;line-height:1}.recipe-row__copy>small{color:var(--muted);font-size:var(--text-prose);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;line-height:1.45;display:-webkit-box;overflow:hidden}.recipe-row__copy>span{color:var(--cream-dim);text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;font-size:.58rem;font-weight:680;display:flex}.recipe-row__copy>span.recipe-row__author{color:var(--cream-dim);text-transform:none;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.7rem;font-weight:600;display:block;overflow:hidden}.recipe-row__copy>span i{background:var(--rule-strong);border-radius:50%;width:3px;height:3px;margin:0 3px}.favorite-button{border:1px solid var(--rule);width:48px;height:48px;color:var(--muted);cursor:pointer;background:#0b111db8;border-radius:50%;place-items:center;display:grid}.favorite-button[data-active=true]{color:var(--orange);border-color:#d95f3b73}.shopping-tally{display:none}.shopping-add{grid-template-columns:1fr auto;gap:9px;margin-bottom:14px;display:grid}.shopping-add>label:first-child{grid-column:1/-1}.shopping-add input[type=text],.shopping-add>label:first-child input{width:100%;padding:0 13px}.household-toggle{min-height:48px;color:var(--muted);font-size:var(--text-prose);align-items:center;gap:8px;display:flex}.household-toggle input{width:18px;height:18px;accent-color:var(--orange)}.shopping-source-note{border-block:1px dashed var(--rule-strong);color:var(--citrus);font-size:var(--text-prose);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.shopping-source-note span{align-items:center;gap:7px;display:flex}.shopping-source-note small{color:var(--muted);display:none}.shopping-ledger{padding-bottom:100px}.shopping-category>header{border-bottom:1px solid var(--rule-strong);justify-content:space-between;align-items:center;padding:25px 0 9px;display:flex}.shopping-category h2{font-size:1.75rem}.shopping-category>header span{border:1px solid var(--rule-strong);width:28px;height:28px;color:var(--muted);place-items:center;font-size:.65rem;display:grid}.shopping-item{border-bottom:1px solid var(--rule);cursor:pointer;grid-template-columns:30px 52px 1fr;align-items:center;gap:8px;min-height:78px;display:grid}.shopping-item input{opacity:0;pointer-events:none;position:absolute}.shopping-item__check{border:1px solid var(--rule-strong);color:#0000;place-items:center;width:24px;height:24px;display:grid}.shopping-item[data-checked=true] .shopping-item__check{border-color:var(--sage);background:var(--sage);color:var(--night)}.shopping-item__visual{place-items:center;width:48px;height:56px;display:grid}.shopping-item__visual img{object-fit:contain;width:50px;height:50px}.shopping-item__visual i{border:1px solid var(--rule);width:42px;height:42px;color:var(--muted);font-family:var(--display);place-items:center;font-style:normal;display:grid}.shopping-item__copy{min-width:0}.shopping-item__copy strong,.shopping-item__copy small{display:block}.shopping-item__copy strong{font-size:var(--text-prose)}.shopping-item__copy small{color:var(--muted);font-size:var(--text-prose);margin-top:4px}.shopping-item[data-checked=true] .shopping-item__copy{opacity:.48;text-decoration:line-through}.shopping-completed-bar{z-index:40;right:10px;bottom:calc(82px + env(safe-area-inset-bottom));border:1px solid var(--rule-strong);min-height:66px;box-shadow:var(--shadow);background:#101827f7;align-items:center;gap:8px;padding:9px 10px;display:flex;position:fixed;left:10px}.shopping-completed-bar>span{margin-right:auto;font-size:.65rem}.shopping-completed-bar .quiet-button,.shopping-completed-bar .primary-button{min-height:46px;padding-inline:11px;font-size:.6rem}.sheet-backdrop{z-index:80;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#03060ccc;justify-content:center;align-items:flex-end;padding-top:30px;display:flex;position:fixed;inset:0}.bottom-sheet{width:100%;max-height:92svh;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--rule-strong);background:var(--ink);overflow-y:auto;box-shadow:0 -28px 80px #0000008c}.sheet-header{border-bottom:1px solid var(--rule-strong);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:18px;display:flex}.sheet-header h2{font-size:3rem}.sheet-actions{justify-content:space-between;gap:11px;margin-top:19px;display:flex}.sheet-actions>*{flex:1}.segmented-field{border:0;margin:17px 0 13px;padding:0}.segmented-field legend{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:.63rem;font-weight:700}.segmented-field>div{border:1px solid var(--rule);grid-template-columns:repeat(3,1fr);display:grid}.segmented-field button{border:0;border-right:1px solid var(--rule);cursor:pointer;min-height:48px;color:var(--muted);background:0 0;padding:0 6px;font-size:.62rem}.segmented-field button:last-child{border-right:0}.segmented-field button[data-active=true]{background:var(--citrus);color:var(--night);font-weight:760}.meal-editor>.search-field{margin:14px 0 8px}.meal-editor__recipes{border-block:1px solid var(--rule);max-height:270px;overflow-y:auto}.meal-editor__recipes>button{border:0;border-bottom:1px solid var(--rule);cursor:pointer;text-align:left;background:0 0;grid-template-columns:1fr 20px;align-items:center;gap:12px;width:100%;min-height:65px;padding:7px 0;display:grid}.meal-editor__recipes strong,.meal-editor__recipes small{display:block}.meal-editor__recipes strong{font-size:var(--text-prose)}.meal-editor__recipes small{color:var(--muted);font-size:var(--text-prose);margin-top:4px}.meal-editor__recipes i{border:1px solid var(--rule-strong);border-radius:50%;width:13px;height:13px}.meal-editor__recipes>button[data-active=true] i{border:4px solid var(--ink);background:var(--orange);box-shadow:0 0 0 1px var(--orange)}.meal-editor>.field-label{margin-top:15px}.servings-row{border-block:1px solid var(--rule);justify-content:space-between;align-items:center;min-height:65px;margin-top:12px;display:flex}.servings-row>span{color:var(--muted);text-transform:uppercase;font-size:.66rem;font-weight:700}.servings-row>div,.servings-control{align-items:center;display:flex}.meal-copy-row{grid-template-columns:1fr auto;align-items:end;gap:10px;margin-top:15px;display:grid}.meal-copy-row .quiet-button{min-width:112px}.servings-row button,.servings-control button{border:1px solid var(--rule);cursor:pointer;background:0 0;place-items:center;width:44px;height:44px;display:grid}.servings-row strong,.servings-control strong{place-items:center;min-width:45px;height:44px;font-size:.75rem;display:grid}.recipe-detail{background:var(--ink);width:100%;max-height:96svh;box-shadow:var(--shadow);overflow-y:auto}.recipe-detail__hero{height:250px;position:relative;overflow:hidden}.recipe-detail__hero:after{background:linear-gradient(to top, var(--ink), transparent 58%);content:"";position:absolute;inset:0}.recipe-detail__hero>img{object-fit:cover;width:100%;height:100%}.recipe-detail__placeholder{background:radial-gradient(circle at 72% 28%, #f4c95d2e, transparent 28%), linear-gradient(145deg, var(--slate), var(--night));text-align:center;place-content:center;height:100%;display:grid}.recipe-detail__placeholder span{font-family:var(--display);font-size:5rem}.recipe-detail__placeholder small{color:var(--citrus);letter-spacing:.18em;text-transform:uppercase;font-size:.62rem;font-weight:800}.recipe-detail__close,.recipe-detail__hero .favorite-button{z-index:2;position:absolute;top:13px}.recipe-detail__close{right:13px}.recipe-detail__hero .favorite-button{left:13px}.recipe-detail__body{padding:0 17px 96px}.recipe-detail__body>.eyebrow{margin-top:-14px}.recipe-detail__body h1{font-size:clamp(3.5rem,15vw,5.6rem)}.recipe-detail__summary{color:var(--muted);font-size:var(--text-prose);margin:16px 0 0;line-height:1.65}.recipe-detail__author{color:var(--cream-dim);margin:7px 0 0;font-size:.78rem;font-weight:600}.recipe-detail__owner-actions{flex-wrap:wrap;gap:18px;margin-top:14px;display:flex}.recipe-detail__delete-button{color:var(--red)}.recipe-edit-form{gap:14px;margin-top:6px;display:grid}.recipe-edit-form__actions{gap:8px;display:flex}.recipe-edit-form__actions>*{flex:1}.recipe-facts{flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}.recipe-facts>span{border:1px solid var(--rule);min-height:34px;color:var(--muted);align-items:center;gap:6px;padding:0 9px;font-size:.61rem;display:flex}.recipe-facts svg{color:var(--citrus)}.recipe-detail__dairy-toggle{margin-top:13px}.recipe-detail__dairy-toggle[data-active=true]{border-color:var(--sage);color:var(--sage)}.substitution-note{border-left:3px solid var(--sage);background:#94a67a14;gap:11px;margin-top:18px;padding:13px;display:flex}.substitution-note svg{color:var(--sage);flex:none}.substitution-note strong{font-size:var(--text-prose)}.substitution-note p{color:var(--muted);font-size:var(--text-prose);margin:4px 0 0}.substitution-note--warning{border-left-color:var(--citrus);background:#f4c95d14}.substitution-note--warning svg{color:var(--citrus)}.recipe-section{margin-top:34px}.recipe-ingredients{display:grid}.recipe-ingredients>div{border-bottom:1px solid var(--rule);grid-template-columns:108px 1fr;align-items:center;gap:11px;min-height:92px;display:grid}.recipe-ingredients .ingredient-ticket{background:0 0;border:0;grid-template-columns:70px;min-height:82px;padding:2px}.recipe-ingredients .ingredient-ticket__copy,.recipe-ingredients .ingredient-ticket__state,.recipe-ingredients .ingredient-ticket:before,.recipe-ingredients .ingredient-ticket:after{display:none}.recipe-ingredients>div>span:last-child strong,.recipe-ingredients>div>span:last-child small{display:block}.recipe-ingredients>div>span:last-child strong{font-size:var(--text-prose)}.recipe-ingredients>div>span:last-child small{color:var(--muted);font-size:var(--text-prose);margin-top:5px}.recipe-steps{margin:0;padding:0;list-style:none}.recipe-steps li{border-bottom:1px solid var(--rule);grid-template-columns:47px 1fr;gap:14px;min-height:125px;padding:18px 0;display:grid}.recipe-steps li>span{color:var(--orange);font-family:var(--display);font-size:2.4rem;line-height:1}.recipe-steps p{color:var(--cream-dim);font-size:var(--text-prose);margin:0;line-height:1.75}.equipment-note{border-block:1px dashed var(--rule-strong);gap:4px;margin-top:24px;padding:14px 0;display:grid}.equipment-note strong{color:var(--citrus);letter-spacing:.1em;text-transform:uppercase;font-size:.61rem}.equipment-note span{color:var(--muted);font-size:var(--text-prose)}.recipe-detail__actions{z-index:4;border-top:1px solid var(--rule-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#101827f5;gap:8px;padding:10px;display:flex;position:sticky;bottom:0;left:0;right:0}.recipe-detail__actions>*{flex:1;padding-inline:8px;font-size:.62rem}.cooking-mode{z-index:110;padding:max(20px, env(safe-area-inset-top)) 18px max(20px, env(safe-area-inset-bottom));background:radial-gradient(circle at 80% 20%, #d95f3b1f, transparent 30%), var(--night);grid-template-rows:auto auto 1fr auto;display:grid;position:fixed;inset:0}.cooking-mode>header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.cooking-mode>header h1{max-width:560px;font-size:clamp(2.5rem,12vw,4.5rem)}.cooking-progress{gap:5px;margin-top:20px;display:flex}.cooking-progress i{background:var(--slate-2);flex:1;height:3px}.cooking-progress i[data-active=true]{background:var(--orange)}.cooking-substitutions{border-left:3px solid var(--sage);background:#94a67a14;gap:5px;margin-top:18px;padding:12px 14px;display:grid}.cooking-substitutions strong{color:var(--sage);text-transform:uppercase;font-size:.7rem}.cooking-substitutions span{color:var(--muted);font-size:var(--text-prose)}.cooking-mode>main{align-content:center;padding:26px 0;display:grid}.cooking-mode__number{color:var(--citrus);font-family:var(--display);opacity:.22;font-size:clamp(6rem,30vw,12rem);line-height:.75}.cooking-mode>main p{max-width:760px;color:var(--cream);margin:-10px 0 0;font-size:clamp(1.35rem,5vw,2.1rem);font-weight:560;line-height:1.48}.cooking-mode>footer{justify-content:space-between;gap:10px;display:flex}.cooking-mode>footer>*{flex:1}.settings-section{border-bottom:1px solid var(--rule-strong);gap:14px;padding:22px 0;display:grid}.settings-section__heading strong,.settings-section__heading small{display:block}.settings-section__heading strong{font-family:var(--display);text-transform:uppercase;font-size:1.55rem;font-weight:400}.settings-section__heading small{color:var(--muted);font-size:var(--text-prose);margin-top:4px}.setting-toggle{border-block:1px solid var(--rule);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:10px 0;display:flex;position:relative}.setting-toggle>span{align-items:flex-start;gap:10px;display:flex}.setting-toggle>span>svg{color:var(--sage);flex:none;margin-top:3px}.setting-toggle strong,.setting-toggle small{display:block}.setting-toggle strong{font-size:var(--text-prose)}.setting-toggle small{color:var(--muted);font-size:var(--text-prose);margin-top:3px}.setting-toggle input{opacity:0;position:absolute}.setting-toggle>i{border:1px solid var(--rule-strong);color:#0000;border-radius:20px;flex:0 0 44px;place-items:center start;width:44px;height:26px;padding:4px;display:grid}.setting-toggle>i:before{background:var(--muted);content:"";border-radius:50%;width:16px;height:16px;transition:transform .18s}.setting-toggle input:checked+i{border-color:var(--sage);background:#94a67a21}.setting-toggle input:checked+i:before{background:var(--sage);transform:translate(17px)}.setting-toggle>i svg{display:none}.member-row{border-block:1px solid var(--rule);grid-template-columns:45px 1fr auto auto;align-items:center;gap:10px;min-height:68px;display:grid}.member-avatar{background:var(--citrus);width:40px;height:40px;color:var(--night);font-family:var(--display);place-items:center;font-size:1.3rem;display:grid}.member-row strong,.member-row small{display:block}.member-row strong{font-size:var(--text-prose)}.member-row small{color:var(--muted);font-size:var(--text-prose);margin-top:3px}.member-row em{color:var(--sage);text-transform:uppercase;font-size:.57rem;font-style:normal;font-weight:700}.member-diets{flex-wrap:wrap;grid-column:1/-1;gap:6px;padding-bottom:12px;display:flex}.diet-toggle{border:1px solid var(--rule);min-height:32px;color:var(--muted);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:0 0;border-radius:3px;align-items:center;padding:0 11px;font-size:.61rem;font-weight:700;transition:border-color .18s,color .18s;display:flex}.diet-toggle[data-active=true]{border-color:var(--sage);color:var(--sage)}.diet-toggle:disabled{cursor:default;opacity:.55}.diet-disclaimer{color:var(--muted);font-size:var(--text-prose);margin:4px 0 25px;line-height:1.6}.invite-row{gap:10px;display:grid}.invite-note{color:var(--citrus);font-size:var(--text-prose);margin:0}.privacy-note--settings{border-left:3px solid var(--sage);background:#94a67a0f;margin-top:0;padding:12px}.privacy-note--settings strong{color:var(--cream);font-size:var(--text-prose);display:block}.settings-footer{min-height:58px;color:var(--muted);font-size:var(--text-prose);justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-footer>span,.settings-footer a{align-items:center;gap:7px;display:flex}.settings-footer a{color:var(--citrus)}.status-toast{z-index:130;top:calc(12px + env(safe-area-inset-top));border:1px solid var(--rule-strong);min-height:46px;box-shadow:var(--shadow);color:var(--cream-dim);font-size:var(--text-prose);background:#101827f7;align-items:center;gap:8px;padding:0 13px;display:flex;position:fixed;right:12px}.status-toast[data-state=saved]{color:var(--sage);border-color:#94a67a6b}.status-toast[data-state=error]{color:var(--red);border-color:#f0826c73}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.working-dots{color:var(--cream-dim);font-size:var(--text-prose);flex-wrap:wrap;align-items:center;gap:5px 10px;margin-top:14px;line-height:1.55;display:flex}.working-dots__dots{gap:5px;display:inline-flex}.working-dots__dots>span{background:var(--citrus);opacity:.82;border-radius:50%;width:7px;height:7px;animation:1.3s ease-in-out infinite working-pulse}.working-dots__dots>span:nth-child(2){animation-delay:.18s}.working-dots__dots>span:nth-child(3){animation-delay:.36s}.working-dots__note{color:var(--muted);flex-basis:100%}@keyframes working-pulse{0%,75%,to{opacity:.26}38%{opacity:1}}@media (prefers-reduced-motion:reduce){.working-dots__dots>span{opacity:.82;animation:none}}.working-button__labels{grid-template-areas:"label";place-items:center;display:inline-grid}.working-button__label,.working-button__reserve{grid-area:label}.working-button__reserve,.working-button__label[aria-hidden=true]{visibility:hidden}button:disabled[data-working=true]{cursor:progress;opacity:.78}.kitchen-loading,.access-state{text-align:center;align-content:center;place-items:center;min-height:100svh;padding:30px 20px;display:grid}.kitchen-loading p{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:14px;font-size:.7rem}.access-state__stamp{border:1px solid var(--rule-strong);width:80px;height:80px;color:var(--citrus);font-family:var(--display);place-items:center;font-size:3rem;display:grid}.access-state .eyebrow{margin-top:22px}.access-state h1{max-width:640px}.access-state>p:not(.eyebrow){max-width:480px;color:var(--muted);font-size:var(--text-prose);margin:18px 0 25px;line-height:1.65}.access-state__actions{gap:10px;display:flex}.recipe-review{gap:16px;display:grid}.recipe-review__head h2{font-size:2.6rem}.recipe-review__summary{color:var(--cream-dim);font-size:var(--text-prose);margin:9px 0 0;line-height:1.6}.recipe-review__drafted{color:var(--citrus);letter-spacing:.02em;background:#f4c95d12;border:1px solid #f4c95d52;align-items:center;gap:8px;margin:13px 0 0;padding:9px 11px;font-size:.72rem;line-height:1.4;display:flex}.recipe-review__drafted svg{flex:none}.review-card{border:1px solid var(--rule);background:#f4e9d506;padding:15px 14px 17px}.review-card__head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.review-card__head .eyebrow{margin-bottom:6px}.review-card h3{font-size:1.75rem}.review-card__head .text-button{text-transform:capitalize;flex:none}.review-card__empty{color:var(--muted);font-size:var(--text-prose);margin:13px 0 0}.review-card__facts{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.review-card__facts>span{border:1px solid var(--rule);min-height:34px;color:var(--muted);align-items:center;padding:0 10px;font-size:.72rem;display:flex}.calorie-line{gap:.15rem;display:grid}.calorie-line__figure{font-size:.95rem}.calorie-line__total{color:var(--muted)}.calorie-line__missing,.calorie-line__note{color:var(--muted);font-size:.8rem}.calorie-line--unknown{color:var(--muted);font-size:.85rem}.calorie-line--compact .calorie-line__missing{font-size:.75rem}.diet-verdict--full{border-left:3px solid var(--sage);background:#94a67a14;margin-top:18px;padding:13px;display:block}.diet-verdict--full.diet-verdict--impossible{border-left-color:var(--citrus);background:#f4c95d14}.diet-verdict__header{font-size:var(--text-prose);align-items:center;gap:9px;margin:0;display:flex}.diet-verdict--full.diet-verdict--swaps .diet-verdict__header svg{color:var(--sage)}.diet-verdict--full.diet-verdict--impossible .diet-verdict__header svg{color:var(--citrus)}.diet-verdict__list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.diet-verdict__item{font-size:var(--text-prose);align-items:flex-start;gap:8px;display:flex}.diet-verdict__item svg{color:var(--muted);flex:none;margin-top:3px}.diet-verdict__item small{color:var(--muted);margin-top:2px;font-size:.85rem;display:block}.diet-verdict__item--omit{color:var(--muted)}.diet-verdict__reason{margin-top:12px}.diet-verdict__reason>p{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:.85rem;display:flex}.diet-verdict__reason--unknown>p{color:var(--citrus)}.diet-verdict--compact{color:var(--muted);align-items:center;gap:6px;margin:2px 0 0;font-size:.75rem;display:flex}.diet-verdict--compact.diet-verdict--impossible{color:var(--citrus)}.review-card__list{margin:0;padding:0;list-style:none}.review-card__list li{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:baseline;gap:12px;min-height:46px;padding:10px 0;display:flex}.review-card__list li:last-child{border-bottom:0}.review-card__list strong{color:var(--cream);font-size:var(--text-prose);font-weight:640}.review-card__list small{color:var(--muted);font-size:var(--text-prose);flex:none}.review-card__new{background:#94a67a14;border:1px solid #94a67a61;gap:10px;margin-top:14px;padding:12px;display:flex}.review-card__new svg{color:var(--sage);flex:none}.review-card__new strong{color:var(--cream);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:760;display:block}.review-card__new p{color:var(--cream-dim);font-size:var(--text-prose);margin:6px 0 0;line-height:1.55}.review-card__new p+p{color:var(--muted)}.review-card__steps{margin:0;padding:0;list-style:none}.review-card__steps li{border-bottom:1px solid var(--rule);grid-template-columns:36px 1fr;gap:12px;padding:13px 0;display:grid}.review-card__steps li:last-child{border-bottom:0}.review-card__steps li>span{color:var(--orange);font-family:var(--display);font-size:1.9rem;line-height:1}.review-card__steps p{color:var(--cream-dim);font-size:var(--text-prose);margin:0;line-height:1.65}.recipe-review__save{gap:11px;margin-top:3px;display:grid}.recipe-review__error{color:var(--red);font-size:var(--text-prose);background:#f0826c14;border:1px solid #f0826c6b;margin:0;padding:10px 12px;line-height:1.5}.recipes-view__actions{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.recipes-view__actions .primary-button{white-space:nowrap}.recipe-builder{align-content:start;gap:17px;max-height:94svh;display:grid}.recipe-builder .sheet-header{z-index:1;background:var(--ink);margin:-20px -16px 0;padding:20px 16px 15px;position:sticky;top:-20px}.builder-section{gap:14px;display:grid}.builder-hint{color:var(--muted);font-size:var(--text-prose);margin:0;line-height:1.55}.builder-empty{border-block:1px solid var(--rule);color:var(--muted);font-size:var(--text-prose);margin:0;padding:15px 0}.builder-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.builder-actions{justify-content:space-between;align-items:center;gap:13px;display:flex}.builder-actions .quiet-button{flex:none}.builder-rows{gap:15px;margin:0;padding:0;list-style:none;display:grid}.builder-row,.builder-step{border-bottom:1px solid var(--rule);gap:9px;padding-bottom:15px;display:grid}.builder-rows>li:last-child{border-bottom:0;padding-bottom:0}.builder-row__measure,.builder-step__controls{align-items:end;gap:9px;display:flex}.builder-row__measure>.field-label{flex:1 1 0;min-width:0}.builder-row__measure>.icon-button,.builder-step__controls>.icon-button{border-radius:0;flex:0 0 49px;width:49px;height:49px}.builder-step__controls{justify-content:flex-end}.icon-button:disabled{color:var(--muted);cursor:default;opacity:.35}.builder-meals{border:0;margin:0;padding:0}.builder-meals legend{color:var(--muted);letter-spacing:.075em;text-transform:uppercase;padding:0;font-size:.67rem;font-weight:700}.builder-meals>div{gap:3px;margin-top:11px;display:grid}.builder-confirm{z-index:1;padding:16px calc(16px + env(safe-area-inset-left)) calc(16px + env(safe-area-inset-bottom));background:#03060cb8;align-items:end;display:grid;position:absolute;inset:0}.builder-confirm__panel{border:1px solid var(--rule-strong);background:var(--ink);padding:20px 17px;box-shadow:0 22px 60px #0000008c}.builder-confirm__panel h2{font-size:1.9rem}.builder-confirm__body{color:var(--cream-dim);font-size:var(--text-prose);margin:11px 0 0;line-height:1.6}.builder-confirm__error{color:var(--red);font-size:var(--text-prose);background:#f0826c14;border:1px solid #f0826c59;margin:13px 0 0;padding:10px 12px;line-height:1.5}.builder-confirm__actions{gap:9px;margin-top:19px;display:grid}.describe-recipe{gap:14px;display:grid}.describe-recipe .builder-actions{justify-content:end}.describe-recipe__failure{background:#f0826c14;border:1px solid #f0826c6b;justify-items:start;gap:8px;padding:14px 15px;display:grid}.describe-recipe__failure strong{color:var(--red);font-size:var(--text-prose)}.describe-recipe__failure p{color:var(--cream-dim);font-size:var(--text-prose);margin:0;line-height:1.55}.describe-recipe__door-one{border-top:1px solid var(--rule);gap:12px;padding-top:17px;display:grid}.describe-recipe__door-one strong{font-size:var(--text-prose)}.describe-recipe__door-one p{color:var(--muted);font-size:var(--text-prose);margin:5px 0 0;line-height:1.55}.describe-recipe__door-one .quiet-button{justify-self:start}@media (min-width:760px){.kitchen-main{padding-inline:28px}.private-gate__button{width:auto;min-width:280px}.readiness,.match-summary small,.shopping-source-note small{display:flex}.ingredient-run__scroller{grid-auto-columns:minmax(200px,250px);margin-inline:-28px;padding-inline:28px}.meal-hero{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.meal-panel__image{aspect-ratio:4/3}.meal-panel__copy h2{font-size:clamp(1.7rem,2.9vw,2.4rem)}.pantry-details{grid-template-columns:repeat(3,1fr)}.pantry-details__package,.pantry-details__package-hint,.pantry-details__error,.pantry-details__note{grid-column:1/3}.recipe-detail{width:min(92vw,880px);max-height:92svh}.recipe-detail__hero{height:330px}.recipe-detail__body{padding-inline:32px}.recipe-ingredients{grid-template-columns:1fr 1fr;column-gap:22px}.settings-sheet,.meal-editor{border:1px solid var(--rule-strong);width:min(620px,92vw);max-height:88svh;margin-bottom:3vh;padding:26px}.recipe-builder{border:1px solid var(--rule-strong);width:min(780px,94vw);max-height:90svh;margin-bottom:3vh;padding:26px}.recipe-builder .sheet-header{margin:-26px -26px 0;padding:26px 26px 16px;top:-26px}.builder-grid{grid-template-columns:repeat(4,1fr)}.builder-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.describe-recipe__door-one{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px}.builder-confirm{place-items:center}.builder-confirm__panel{width:min(520px,92vw);padding:26px}.builder-confirm__actions{grid-auto-flow:column;justify-content:start}.sheet-backdrop{align-items:center}}@media (min-width:1024px){.kitchen-shell{grid-template-columns:232px 1fr;min-height:100svh;padding-bottom:0;display:grid}.mobile-topbar,.mobile-dock{display:none}.desktop-rail{border-right:1px solid var(--rule-strong);background:#080d17e6;grid-template-rows:auto 1fr auto;height:100svh;padding:23px 16px 19px;display:grid;position:sticky;top:0}.brand-lockup--button{cursor:pointer;min-height:62px;color:inherit;text-align:left;background:0 0;border:0;padding:0}.brand-lockup--button strong{font-size:1.22rem}.desktop-rail__nav{align-content:center;gap:5px;display:grid}.rail-link{color:#7e8b9b;cursor:pointer;letter-spacing:.05em;text-align:left;background:0 0;border:0;border-left:2px solid #0000;align-items:center;gap:12px;min-height:52px;padding:0 12px;font-size:.69rem;font-weight:700;display:flex;position:relative}.rail-link:hover{color:var(--cream)}.rail-link[data-active=true]{border-left-color:var(--orange);color:var(--citrus);background:#e7783e14}.rail-link--settings{border-top:1px solid var(--rule)}.kitchen-main{width:min(100%,1240px);padding:24px 44px 70px}.kitchen-assistant{border:1px solid var(--rule)}.kitchen-assistant[data-open=false]{display:block}.kitchen-assistant__toggle{display:grid}.kitchen-assistant__body form{grid-template-columns:1fr auto auto}.kitchen-assistant__body form>.search-field{grid-column:auto}.view-header{margin-top:52px}.view-header h1{font-size:clamp(4.5rem,7vw,7.1rem)}.freshness-seal{border:1px solid var(--sage);width:96px;height:96px;color:var(--sage);letter-spacing:.12em;text-align:center;text-transform:uppercase;border-radius:50%;flex:0 0 96px;place-items:center;font-size:.59rem;font-weight:760;display:grid}.freshness-seal[data-mode=leftover]{border-color:var(--citrus);color:var(--citrus)}.week-ribbon{grid-template-columns:repeat(7,1fr);grid-auto-columns:1fr;grid-auto-flow:initial;margin-inline:0;padding-inline:0;overflow:visible}.meal-hero{gap:20px}.meal-panel__copy{padding:22px 20px 24px}.hero-actions>*{flex:0 auto!important}.ingredient-run{padding-top:50px}.ingredient-run__scroller{grid-template-columns:repeat(3,1fr);grid-auto-columns:minmax(205px,1fr);grid-auto-flow:initial;margin-inline:0;padding-inline:0;overflow:visible}.meal-timeline{grid-template-columns:300px 1fr;gap:55px;padding-top:58px;display:grid}.meal-timeline .section-heading{flex-direction:column;align-self:start;align-items:flex-start}.meal-timeline__track{margin-top:0}.view-header--with-actions{flex-direction:row;align-items:flex-end}.week-switcher{flex:0 0 270px;width:270px}.week-ledger__head,.week-day{grid-template-columns:118px repeat(3,1fr);display:grid}.week-ledger__head{min-height:45px;color:var(--muted);letter-spacing:.09em;text-transform:uppercase;align-items:center;font-size:.58rem;font-weight:740}.week-day{padding:0}.week-day[data-selected=true]:before{left:-12px}.week-day__date{border-right:1px solid var(--rule);grid-template-columns:1fr;align-content:center;min-height:116px;padding:10px 20px 10px 0}.week-day__date>strong{grid-area:auto;margin:5px 0;font-size:3.2rem}.week-meal{border-top:0;border-right:1px solid var(--rule);grid-template-columns:1fr 40px;min-width:0;min-height:116px;padding:11px 12px}.week-meal__label{display:none}.week-meal__edit{width:40px;min-width:40px}.pattern-note{max-width:650px;margin-left:auto}.pantry-counts,.shopping-tally{gap:9px;display:flex}.pantry-counts>span{border:1px solid var(--rule);min-width:116px;color:var(--muted);grid-template-columns:auto auto;justify-content:center;align-items:center;gap:1px 7px;padding:11px;font-size:.59rem;display:grid}.pantry-counts>span svg{color:var(--sage);grid-row:1/3}.pantry-counts strong{color:var(--cream);font-size:1.1rem}.category-rail,.recipe-filters{margin-inline:0;padding-inline:0}.pantry-ledger{grid-template-columns:1fr 1fr;column-gap:27px;display:grid}.pantry-details{grid-template-columns:1fr 1fr}.pantry-details__package,.pantry-details__package-hint,.pantry-details__error,.pantry-details__note{grid-column:1/-1}.recipe-count{border-block:1px solid var(--rule-strong);min-width:110px;color:var(--muted);text-transform:uppercase;place-items:center;padding:13px;font-size:.61rem;display:grid}.recipe-count strong{color:var(--citrus);font-family:var(--display);font-size:2.4rem;font-weight:400;line-height:1}.recipe-ledger{grid-template-columns:1fr 1fr;column-gap:28px;display:grid}.shopping-tally{border-left:3px solid var(--orange);background:var(--ink);align-items:center;padding:13px 16px}.shopping-tally svg{color:var(--citrus)}.shopping-tally strong,.shopping-tally span{display:block}.shopping-tally strong{font-family:var(--display);font-size:2.2rem;font-weight:400;line-height:.8}.shopping-tally span{color:var(--muted);text-transform:uppercase;font-size:.58rem}.shopping-add{grid-template-columns:1fr auto auto}.shopping-add>label:first-child{grid-column:auto}.shopping-ledger{grid-template-columns:1fr 1fr;gap:0 35px;display:grid}.shopping-completed-bar{width:min(590px,100vw - 290px);bottom:28px;left:auto;right:28px}.cooking-mode{padding-inline:clamp(40px,8vw,130px)}.cooking-mode>footer>*{flex:0 240px}}@media (min-width:1360px){.kitchen-shell{grid-template-columns:258px 1fr}.kitchen-main{padding-inline:58px}}.auth-shell{min-height:100svh;padding:32px 20px calc(32px + env(safe-area-inset-bottom));place-items:center;display:grid;position:relative;overflow:hidden}.auth-shell__glow{pointer-events:none;border:1px solid #f4c95d29;border-radius:50%;width:430px;height:430px;position:absolute;top:-160px;left:-180px;box-shadow:0 0 0 70px #d95f3b06,0 0 0 140px #f4c95d05}.auth-shell__panel{z-index:2;width:min(100%,420px);position:relative}.auth-shell__brand{margin-bottom:34px}.auth-shell__panel h1{max-width:100%;font-size:clamp(2.5rem,11vw,3.4rem)}.auth-card__lede{max-width:420px;color:var(--cream-dim);font-size:var(--text-prose);margin:16px 0 26px;line-height:1.65}.auth-form{gap:16px;display:grid}.auth-form__submit{width:100%;margin-top:4px}.form-error{border-left:2px solid var(--red);color:var(--cream);font-size:var(--text-prose);background:#f0826c17;margin:0;padding:10px 12px;line-height:1.45}.field-hint{color:var(--muted);margin:-6px 0 0;font-size:.72rem;line-height:1.4}.member-list,.invite-list{margin:0;padding:0;list-style:none;display:grid}.invite-list{gap:4px;margin-top:4px}.invite-list__row{border-bottom:1px solid var(--rule);font-size:var(--text-prose);grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:10px 0;display:grid}.invite-list__row>span{color:var(--cream);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invite-list__row em{color:var(--sage);text-transform:uppercase;font-size:.6rem;font-style:normal;font-weight:700}.kitchen-switcher{flex-wrap:wrap;gap:10px;display:flex}.kitchen-switcher__create{gap:7px;margin-top:14px;display:grid}.kitchen-switcher__create-row{flex-wrap:wrap;gap:8px;display:flex}.kitchen-switcher__create-row input{flex:190px;min-width:0}.kitchen-switcher__note{color:var(--muted);font-size:.72rem;line-height:1.5}.recipe-row__cover{border-left:3px solid var(--orange);background:var(--ink);width:104px;height:98px;display:block;overflow:hidden}.recipe-row__cover img{aspect-ratio:101/98;object-fit:cover;width:100%;height:100%;display:block}.recipe-detail__cover{background:var(--ink)}.meal-editor__recipes[data-thumbnails=true]>button{grid-template-columns:44px 1fr 20px}.meal-editor__thumb{border-left:2px solid var(--orange);background:var(--ink);width:44px;height:44px;display:block;overflow:hidden}.meal-editor__thumb:empty{background:0 0;border-left:0}.meal-editor__thumb img{object-fit:cover;width:100%;height:100%;display:block}.meal-editor__recipes>button>span{min-width:0}.meal-editor__recipes strong,.meal-editor__recipes small{overflow-wrap:anywhere}@media (min-width:760px){.auth-shell__panel{width:min(100%,460px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.member-leave{border-top:1px solid var(--rule);margin-top:16px;padding-top:14px}.member-leave__blocked{color:var(--muted);font-size:.78rem;line-height:1.5}
