@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2)format("woff2");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:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.WYba5q_className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.WYba5q_variable{--font-body:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.HPcqWW_className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.HPcqWW_variable{--font-display:"Fraunces", "Fraunces Fallback"}
:root{--bg:#f6f1e8;--bg-glow:#eef0e2;--surface:#fffdf8;--surface-2:#f1ebdf;--text:#2e2a24;--muted:#7b7165;--line:#e7dfd1;--shadow:0 1px 2px #4637230f, 0 6px 18px #46372312;--accent:#5b7d58;--accent-strong:#476646;--accent-soft:#e2ebdb;--accent-text:#fff;--clay:#a2714f;--clay-soft:#f2e3d6;--warn:#8f5a12;--warn-soft:#f9ebcf;--error:#b0413e;--danger:#b0413e;--tone-sky:#dde9f0;--tone-sky-ink:#35576b;--tone-blush:#f6dfd9;--tone-blush-ink:#8a4a3f;--tone-butter:#f5ebc6;--tone-butter-ink:#6f5b1c;--tone-lavender:#e6e0f1;--tone-lavender-ink:#574d7b;--tone-sage:#dfeadb;--tone-sage-ink:#46633f;--tone-clay:#efe2d6;--tone-clay-ink:#7a5236;--radius:16px;--radius-sm:10px;--font-sans:var(--font-body,system-ui), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif:var(--font-display,Georgia), Georgia, "Times New Roman", serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#181a16;--bg-glow:#1f241d;--surface:#22251f;--surface-2:#2a2d26;--text:#ece6da;--muted:#a69d8f;--line:#353830;--shadow:0 1px 2px #0000004d, 0 8px 20px #00000040;--accent:#9fc093;--accent-strong:#b5d3a9;--accent-soft:#2d3a2a;--accent-text:#142012;--clay:#d3a483;--clay-soft:#3a2f27;--warn:#f0c27a;--warn-soft:#3a2f1c;--error:#f19b93;--danger:#f19b93;--tone-sky:#253540;--tone-sky-ink:#b9d4e3;--tone-blush:#3d2a27;--tone-blush-ink:#f0c7bd;--tone-butter:#3a3420;--tone-butter-ink:#ecdca0;--tone-lavender:#302c3d;--tone-lavender-ink:#d5cdef;--tone-sage:#2b3828;--tone-sage-ink:#c4dcb9;--tone-clay:#392d24;--tone-clay-ink:#e7c6ab;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{color:var(--text);font:16px/1.45 var(--font-sans);-webkit-text-size-adjust:100%;margin:0}body{background:radial-gradient(1200px 600px at 10% -10%, var(--bg-glow), transparent 60%), var(--bg);background-attachment:fixed;min-height:100dvh}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1{font-family:var(--font-serif);letter-spacing:-.01em;margin:0;font-size:1.7rem;font-weight:600}h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin:0 0 10px;font-size:.78rem;font-weight:700;display:flex}ul,ol{margin:0;padding:0;list-style:none}.app{max-width:660px;padding:max(16px, env(safe-area-inset-top)) 16px max(32px, env(safe-area-inset-bottom));margin:0 auto}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.back{font-weight:600;text-decoration:none}.tabs{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.tabs a{color:var(--muted);border-radius:999px;padding:7px 15px;font-size:.95rem;font-weight:600;text-decoration:none}.tabs a[aria-current=page]{background:var(--accent);color:var(--accent-text)}.who{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:6px 14px;font-size:.9rem}.who-prompt{background:var(--accent-soft);border-radius:var(--radius);margin-bottom:16px;padding:14px}.who-prompt p{margin:0 0 8px;font-weight:600}.who-options{flex-wrap:wrap;gap:8px;display:flex}.who-options button,.who-options input{border:1px solid var(--line);background:var(--surface);border-radius:999px;min-height:40px;padding:6px 16px}.who-options input{width:9rem}.add{margin-bottom:22px;position:relative}.add-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:flex}.add-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.add-row input{background:0 0;border:0;outline:none;flex:1;min-width:0;padding:15px 16px;font-size:1.05rem}.clear,.mic{color:var(--muted);background:0 0;border:0;align-items:center;padding:0 16px;font-size:1.4rem;display:flex}.mic{color:var(--accent)}.mic.listening{color:var(--danger);animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.4}}@media (prefers-reduced-motion:reduce){.mic.listening{animation:none}}.voice-status,.notice{border-radius:var(--radius-sm);background:var(--accent-soft);margin:10px 0 0;padding:10px 14px}.suggestions{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:8px;overflow:hidden}.suggestion,.note{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:12px;width:100%;min-height:58px;padding:9px 14px;display:flex}.suggestion:hover,.note:hover{background:var(--accent-soft)}.note{color:var(--accent);min-height:48px;font-weight:600}.note:last-child{border-bottom:0}.section,.hint{color:var(--muted);margin:0;padding:8px 14px;font-size:.85rem}.section{background:var(--surface-2);font-weight:700}.thumb{object-fit:contain;background:#fff;border-radius:12px;flex:none;width:46px;height:46px;padding:3px}span.thumb{background:var(--surface-2)}.info{flex-direction:column;flex:1;min-width:0;display:flex}.name{overflow-wrap:break-word;min-width:0}.meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.85rem;display:flex}.badge{background:var(--warn-soft);color:var(--warn);border-radius:999px;padding:0 9px;font-size:.75rem;font-weight:600}.badge.ok{background:var(--accent-soft);color:var(--accent-strong)}.by:before{content:"· "}.link{color:var(--accent);text-transform:none;letter-spacing:0;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:600;text-decoration:none}.link.quiet{color:var(--muted);font-weight:500}.link.danger{color:var(--danger)}.error{color:var(--error)}.banner{background:var(--accent-soft);border-radius:var(--radius);margin-bottom:22px;padding:14px 16px}.banner.warn{background:var(--warn-soft)}.banner p{margin:0}.banner-details{margin:8px 0 0;padding-left:20px;font-size:.92rem;list-style:outside}.banner-details li{margin-top:4px}.banner-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.banner-actions button{background:var(--accent);min-height:40px;color:var(--accent-text);border:0;border-radius:999px;padding:8px 18px;font-weight:600}.banner-actions button.quiet{color:var(--text);border:1px solid var(--line);background:0 0}.send,.cook-button{border-radius:var(--radius);background:linear-gradient(135deg, var(--accent), var(--accent-strong));width:100%;color:var(--accent-text);text-align:center;box-shadow:var(--shadow);border:0;margin-top:10px;padding:15px;font-size:1.05rem;font-weight:700;text-decoration:none;display:block}.send.secondary,.cook-button.secondary{background:var(--surface);color:var(--accent);border:1px solid var(--accent);box-shadow:none}.send:disabled,.banner-actions button:disabled{opacity:.6}.due{margin-bottom:24px}.chips{scroll-snap-type:x proximity;gap:10px;padding:2px 2px 8px;display:flex;overflow-x:auto}.chip{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);text-align:left;scroll-snap-align:start;width:136px;box-shadow:var(--shadow);flex-direction:column;flex:none;align-items:flex-start;gap:6px;padding:11px;display:flex}.chip-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;display:-webkit-box;overflow:hidden}.chip-meta{color:var(--accent);font-size:.8rem;font-weight:700}.estimate{text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:600}.item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:11px;margin-bottom:8px;padding:9px 11px;display:flex}.tick{border:2px solid var(--accent);width:30px;height:30px;color:var(--accent-text);background:0 0;border-radius:50%;flex:none;place-items:center;display:grid}.tick:hover{background:var(--accent-soft)}.tick.on{background:var(--accent);border-color:var(--accent)}.stepper{border:1px solid var(--line);background:var(--surface-2);border-radius:999px;flex:none;align-items:center;display:flex}.stepper button{width:36px;height:36px;color:var(--accent);background:0 0;border:0;font-size:1.2rem}.stepper span{text-align:center;min-width:1.5em;font-weight:700}.list.other,.checked{margin-top:26px}.checked-item{box-shadow:none;background:0 0;border-style:dashed;min-height:0}.checked-item .name{color:var(--muted);text-decoration:line-through}footer{text-align:center;margin-top:34px;font-size:.9rem}.review-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px;padding:14px}.review-item h2{text-transform:none;letter-spacing:0;color:var(--text);justify-content:flex-start;font-size:1rem}.review-item small{color:var(--muted);font-weight:400}.candidates{flex-direction:column;gap:6px;display:flex}.candidate{border:1px solid var(--line);border-radius:var(--radius-sm);text-align:left;background:0 0;padding:10px 12px}.candidate.suggested{border-color:var(--accent);background:var(--accent-soft)}.candidate.skip,.empty,.hint{color:var(--muted)}.login{place-items:center;min-height:100dvh;padding:16px;display:grid}.login form{background:var(--surface);border:1px solid var(--line);width:100%;max-width:340px;box-shadow:var(--shadow);border-radius:22px;flex-direction:column;gap:12px;padding:26px;display:flex}.login input{border:1px solid var(--line);background:var(--bg);border-radius:var(--radius-sm);padding:12px}.login button{border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-text);border:0;padding:12px;font-weight:700}.day{min-height:60px}.day-label{flex:none;width:92px;font-size:.9rem;font-weight:700}a.info{color:var(--text);text-decoration:none}.actions{flex-direction:column;gap:8px;display:flex}.staples{margin-top:24px}.staples summary{cursor:pointer;color:var(--muted);font-weight:600}.staples li{justify-content:space-between;gap:12px;padding:6px 2px;display:flex}.kitchen{padding:max(14px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));max-width:660px;margin:0 auto}.kitchen-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:16px;display:flex}.clock{flex-direction:column;display:flex}.clock-greeting{color:var(--clay);font-size:.95rem;font-weight:600}.clock-time{font-family:var(--font-serif);letter-spacing:-.02em;font-size:2.6rem;font-weight:600;line-height:1.05}.clock-date{color:var(--muted)}.kitchen-grid{gap:16px;display:grid}.kitchen-side{align-content:start;gap:16px;min-height:0;display:grid}.panel{background:color-mix(in srgb, var(--surface) 82%, transparent);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);border-radius:22px;padding:16px}.panel-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.panel-head h2{margin:0}.legend{flex-wrap:wrap;flex:1;gap:6px;display:flex}.legend-item,.ev{background:var(--tone-sage);color:var(--tone-sage-ink)}.legend-item{border-radius:999px;padding:2px 10px;font-size:.78rem;font-weight:700}[data-tone=sky]{background:var(--tone-sky);color:var(--tone-sky-ink)}[data-tone=blush]{background:var(--tone-blush);color:var(--tone-blush-ink)}[data-tone=butter]{background:var(--tone-butter);color:var(--tone-butter-ink)}[data-tone=lavender]{background:var(--tone-lavender);color:var(--tone-lavender-ink)}[data-tone=sage]{background:var(--tone-sage);color:var(--tone-sage-ink)}[data-tone=clay]{background:var(--tone-clay);color:var(--tone-clay-ink)}.segmented{background:var(--surface-2);border-radius:999px;padding:3px;display:inline-flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:5px 12px;font-size:.85rem;font-weight:600}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.week{gap:10px;display:grid}.day-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:8px;min-width:0;padding:12px;display:flex}.day-card.today{border-color:var(--accent);background:linear-gradient(180deg, var(--accent-soft), var(--surface) 70%)}.day-head{align-items:baseline;gap:6px;display:flex}.day-name{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.85rem;font-weight:700}.day-card.today .day-name{color:var(--accent-strong)}.day-num{font-family:var(--font-serif);font-size:1.7rem;font-weight:600;line-height:1}.day-month{color:var(--muted);font-size:.85rem}.day-events{flex-direction:column;flex:1;gap:6px;display:flex}.day-free{color:var(--muted);margin:0;font-size:.85rem;font-style:italic}.ev{border-radius:var(--radius-sm);flex-direction:column;min-width:0;padding:7px 9px;line-height:1.3;display:flex}.ev.all-day{padding:5px 9px;font-size:.9rem;font-weight:600}.ev-time{opacity:.85;font-size:.78rem;font-weight:700}.ev-end{opacity:.75;font-weight:500}.ev-title{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-weight:600}.ev-where{opacity:.8;overflow-wrap:break-word;font-size:.78rem}.day-dinner{border-top:1px dashed var(--line);color:var(--clay);align-items:flex-start;gap:6px;padding-top:8px;font-size:.88rem;font-weight:600;line-height:1.3;text-decoration:none;display:flex}.day-dinner svg{flex:none;margin-top:1px}.agenda-day{border-bottom:1px solid var(--line);flex-direction:column;gap:6px;padding:10px 0;display:flex}.agenda-day:last-child{border-bottom:0}.agenda-day h3{font-family:var(--font-serif);align-items:baseline;gap:8px;margin:0;font-size:1.15rem;font-weight:600;display:flex}.agenda-day h3 small{font-family:var(--font-sans);color:var(--muted);font-size:.85rem;font-weight:500}.agenda .ev{flex-flow:wrap;align-items:baseline;gap:2px 10px}.agenda .day-dinner{border-top:0;padding-top:2px}.tonight{color:var(--text);background:linear-gradient(135deg, var(--accent-soft) 0%, var(--clay-soft) 100%);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px;padding:18px;position:relative;overflow:hidden}.tonight p{margin:0;position:relative}.tonight-art{width:130px;height:130px;color:var(--clay);position:absolute;top:-6px;right:-10px}.tonight-label{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-strong);font-size:.78rem;font-weight:700}.tonight-name{font-family:var(--font-serif);max-width:90%;font-size:1.45rem;font-weight:600;line-height:1.2;margin:6px 0 2px!important}.tonight-name.quiet,.tonight-time{color:var(--muted)}.tonight .cook-button{margin-top:14px;position:relative}.shopping.compact .add{margin-bottom:16px}.list-panel .item{box-shadow:none;background:var(--surface);gap:8px;padding:8px}.list-panel .thumb{border-radius:9px;width:36px;height:36px}.list-panel .stepper button{width:30px;height:32px}.list-panel .tick{width:26px;height:26px}.list-panel .name{font-size:.95rem}@media (min-width:1000px){.kitchen{flex-direction:column;max-width:none;height:100dvh;padding:18px 22px;display:flex}.kitchen-top{margin-bottom:18px}.clock-time{font-size:3.2rem}.kitchen-grid{flex:1;grid-template-columns:minmax(0,2.15fr) minmax(350px,1fr);min-height:0}.kitchen-side{grid-template-rows:auto minmax(0,1fr)}.calendar-panel,.list-panel{overflow-y:auto}.calendar-panel{flex-direction:column;display:flex}.week{flex:1;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:8px}.week .day-card{padding:10px 8px}.week .day-month,.week .ev-end,.week .ev-where{display:none}.week .ev{padding:6px 7px;font-size:.86rem}.week .day-dinner{font-size:.82rem}}.cook{max-width:1100px;padding:max(16px, env(safe-area-inset-top)) 16px max(32px, env(safe-area-inset-bottom));margin:0 auto}.cook h1{margin-top:6px;font-size:2rem}.cook-meta{color:var(--muted);margin-top:4px}.cook-grid{gap:24px;display:grid}.ingredient-row{align-items:stretch;gap:8px;margin-bottom:8px;display:flex}.ingredient,.step{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);width:100%;padding:12px 14px;font-size:1.1rem;line-height:1.45;display:block}.ingredient{flex:1}.step{margin-bottom:8px}.ingredient.done{color:var(--muted);background:0 0;text-decoration:line-through}.ingredient-add,.ingredient-state{border-radius:var(--radius);flex:none;place-items:center;width:64px;font-size:.8rem;font-weight:700;display:grid}.ingredient-add{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent-strong);font-size:1.4rem}.ingredient-state{color:var(--muted);border:1px dashed var(--line)}.ingredient-state.on{color:var(--accent-strong);border-color:var(--accent)}.step.current{border:2px solid var(--accent);background:var(--accent-soft);font-size:1.3rem}.step.done{color:var(--muted)}.step-buttons{bottom:max(12px, env(safe-area-inset-bottom));gap:8px;display:flex;position:sticky}.step-buttons button{border-radius:var(--radius);background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:var(--accent-text);box-shadow:var(--shadow);border:0;flex:1;padding:16px;font-size:1.1rem;font-weight:700}.step-buttons button:first-child{background:var(--surface);color:var(--accent);border:1px solid var(--accent);flex:0 0 30%}.step-buttons button:disabled{opacity:.4}@media (min-width:800px){.cook-grid{grid-template-columns:1fr 1.5fr}}
