.install-prompt{padding:.4rem var(--space-3);max-width:var(--shell-max);border-bottom:1px solid color-mix(in srgb, var(--color-wood) 22%, var(--color-border));background:linear-gradient(180deg, color-mix(in srgb, var(--color-accent-soft) 55%, #fff8ee), color-mix(in srgb, var(--color-brass-soft) 40%, var(--color-surface)));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem .75rem;margin:0 auto;display:flex}.install-prompt-copy{min-width:min(100%,12rem);color:var(--color-ink);flex-direction:column;flex:10rem;gap:.1rem;font-size:.82rem;line-height:1.3;display:flex}.install-prompt-copy strong{font-family:var(--font-display);font-size:.88rem;font-weight:700}.install-prompt-copy span{color:var(--color-ink-muted);font-size:.78rem}@media (width<=639px){.install-prompt{align-items:stretch}.install-prompt-copy span{display:none}.install-prompt-actions{width:100%}.install-prompt-primary{flex:auto;justify-content:center}}.install-prompt-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.install-prompt-primary{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--color-accent) 40%, var(--color-border));background:linear-gradient(165deg, var(--color-accent-mid), var(--color-accent));color:#fffaf4;min-height:2.5rem;font:inherit;cursor:pointer;align-items:center;margin:0;padding:.45rem .9rem;font-size:.85rem;font-weight:800;text-decoration:none;display:inline-flex}.install-prompt-primary:hover{background:var(--color-accent-hover)}.install-prompt-dismiss{border-radius:var(--radius-sm);min-height:2.5rem;color:var(--color-ink-muted);font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:.45rem .65rem;font-size:.82rem;font-weight:700}.install-prompt-dismiss:hover{color:var(--color-ink)}.mkt-loading{background:var(--color-accent-hover);min-height:100dvh;color:var(--color-surface);font-family:var(--font-body);place-items:center;margin:0;display:grid}.mkt-loading p{margin:0}html:has(.mkt){overscroll-behavior:none;background-color:#2a3d32;background-image:none}html:has(.mkt) body{overscroll-behavior:none;background-color:#2a3d32;background-image:none}html:has(.mkt) #root{overscroll-behavior:none;background-color:#2a3d32;background-image:none}.mkt{background:var(--color-bg);min-height:100svh;color:var(--color-ink);overscroll-behavior-y:none;overflow-x:clip}.mkt-hero{isolation:isolate;min-height:100svh;color:var(--color-surface);background:#2a3d32;place-items:end stretch;display:grid;position:relative;overflow:hidden}.mkt-hero-scene{will-change:transform;pointer-events:none;background-color:#2a3d32;background-image:url(/mkt-hero-household-kitchen.webp);background-position:50% 28%;background-repeat:no-repeat;background-size:cover;animation:22s ease-in-out infinite alternate mkt-drift;position:absolute;inset:-4%}.mkt-hero-veil{pointer-events:none;background:linear-gradient(90deg,#141c1647 0%,#0000 45%),linear-gradient(#141c162e 0%,#0000 30%,#141c16e6 100%);position:absolute;inset:0}.mkt-hero-inner{z-index:1;width:min(100%,40rem);animation:mkt-rise .64s var(--ease-out);flex-direction:column;align-items:flex-start;gap:.75rem;margin:0 auto;padding:clamp(2rem,6vh,3.5rem) 1.35rem clamp(2.75rem,8vh,4.5rem);display:flex;position:relative}.mkt-kicker{letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb, var(--color-surface) 55%, var(--color-brass));margin:0;font-size:.72rem;font-weight:700}.mkt-brand{align-items:center;gap:.85rem;display:flex}.mkt-brand-mark{filter:drop-shadow(0 2px 8px #0000004d);flex-shrink:0;width:3.4rem;height:auto}.mkt-brand-name{font-family:var(--font-display);letter-spacing:-.03em;flex-direction:column;margin:0;font-size:clamp(1.9rem,5.5vw,2.7rem);font-weight:700;line-height:1.05;display:flex}.mkt-brand-home{color:#f7ebda}.mkt-brand-planner{color:color-mix(in srgb, #f7ebda 75%, var(--color-brass))}.mkt-headline{font-family:var(--font-display);color:color-mix(in srgb, #f7ebda 90%, var(--color-brass));margin:0;font-size:clamp(1.35rem,3.2vw,1.75rem);font-weight:650}.mkt-lede{color:#ede7d7;max-width:28rem;margin:0;font-size:1.05rem;line-height:1.5}.mkt-cta{margin-top:.45rem}.mkt-btn{appearance:none;border-radius:var(--radius-sm);min-height:2.85rem;font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:.7rem 1.35rem;font-weight:700;text-decoration:none;display:inline-flex}a.mkt-btn.mkt-btn--primary,.mkt-btn--primary{color:#1a140c;border-color:color-mix(in srgb, var(--color-brass) 55%, #1a140c);box-shadow:var(--shadow-lift);background:#e4c36a}a.mkt-btn.mkt-btn--primary:hover,.mkt-btn--primary:hover{color:#1a140c;background:#d4b05a}.mkt-section{gap:1.75rem 2.5rem;max-width:1120px;margin:0 auto;padding:clamp(3rem,8vw,5rem) 1.25rem;display:grid}@media (width>=860px){.mkt-section{grid-template-columns:minmax(14rem,.9fr) minmax(0,1.4fr);align-items:center}.mkt-section--flip{grid-template-columns:minmax(0,1.4fr) minmax(14rem,.9fr)}.mkt-section--flip .mkt-section-copy{order:2}.mkt-section--flip .mkt-stage{order:1}.mkt-section--solo{text-align:center;grid-template-columns:1fr;max-width:36rem}}.mkt-section-copy h2{font-family:var(--font-display);color:var(--color-ink);margin:0 0 .55rem;font-size:clamp(1.65rem,3.5vw,2.15rem)}.mkt-section-copy p{color:var(--color-ink-muted);max-width:28rem;margin:0;font-size:1.05rem;line-height:1.55}.mkt-section-copy--solo{justify-self:center}.mkt-section-copy--solo p{max-width:32rem;margin-inline:auto}.mkt-stage{border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-soft);animation:mkt-rise .7s var(--ease-out) both;overflow:hidden}.mkt-stage-chrome{border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-accent-hover) 92%, black);align-items:center;gap:.35rem;padding:.65rem .9rem;display:flex}.mkt-stage-dot{background:#f7ebda59;border-radius:50%;width:.55rem;height:.55rem}.mkt-stage-dot:first-child{background:#c97b5a}.mkt-stage-dot:nth-child(2){background:#c9a84a}.mkt-stage-dot:nth-child(3){background:#5a9a6e}.mkt-stage-label{letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb, #f7ebda 75%, var(--color-brass));margin-left:.55rem;font-size:.72rem;font-weight:700}.mkt-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;padding:1rem;display:grid}.mkt-day{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg-elevated) 80%, white);flex-direction:column;gap:.35rem;min-height:5.5rem;padding:.45rem;display:flex}.mkt-day--hot{border-color:var(--color-brass);background:color-mix(in srgb, var(--color-brass-soft) 55%, white)}.mkt-day-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted);font-size:.65rem;font-weight:700}.mkt-day-meal{font-family:var(--font-display);color:var(--color-ink);font-size:.78rem;font-weight:650;line-height:1.25}.mkt-meal-list,.mkt-grocery-list{gap:.65rem;margin:0;padding:1rem;list-style:none;display:grid}.mkt-meal-list li,.mkt-grocery-list li{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg-elevated) 70%, white);flex-direction:column;gap:.2rem;padding:.75rem .85rem;display:flex}.mkt-meal-list strong{font-family:var(--font-display);color:var(--color-ink);font-size:1.05rem}.mkt-meal-list span,.mkt-grocery-list em{color:var(--color-ink-muted);font-size:.88rem;font-style:normal}.mkt-grocery-list li{flex-direction:row;align-items:center;gap:.65rem}.mkt-grocery-list em{letter-spacing:.06em;text-transform:uppercase;margin-left:auto;font-size:.75rem;font-weight:700}.mkt-check{border:1.5px solid var(--color-border-strong);border-radius:.3rem;flex-shrink:0;width:1.1rem;height:1.1rem}.mkt-check--on{background:var(--color-accent);border-color:var(--color-accent);box-shadow:inset 0 0 0 2px var(--color-surface)}.mkt-request-list{gap:.65rem;margin:0;padding:1rem;list-style:none;display:grid}.mkt-request{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg-elevated) 70%, white);flex-direction:column;gap:.55rem;padding:.8rem .9rem;display:flex}.mkt-request--pending{border-color:color-mix(in srgb, var(--color-brass) 55%, var(--color-border));background:linear-gradient(120deg, color-mix(in srgb, var(--color-brass-soft) 45%, white), transparent 60%), color-mix(in srgb, var(--color-bg-elevated) 70%, white)}.mkt-request--denied{opacity:.92;border-color:color-mix(in srgb, var(--color-cherry) 35%, var(--color-border))}.mkt-request--ok{border-color:color-mix(in srgb, var(--color-accent) 40%, var(--color-border))}.mkt-request-body{flex-direction:column;gap:.2rem;display:flex}.mkt-request-body strong{font-family:var(--font-display);color:var(--color-ink);font-size:1.05rem}.mkt-request-body span{color:var(--color-ink-muted);font-size:.88rem}.mkt-request-actions{flex-wrap:wrap;gap:.45rem;display:flex}.mkt-req-btn{border-radius:var(--radius-sm);letter-spacing:.04em;text-transform:uppercase;justify-content:center;align-items:center;min-height:2.1rem;padding:.35rem .85rem;font-size:.82rem;font-weight:800;display:inline-flex}.mkt-req-btn--no{border:1px solid color-mix(in srgb, var(--color-danger) 45%, var(--color-border));color:var(--color-danger);background:color-mix(in srgb, var(--color-cherry-soft) 40%, white)}.mkt-req-btn--yes{border:1px solid color-mix(in srgb, var(--color-accent) 50%, black);color:#f7ebda;background:var(--color-accent)}.mkt-request-status{font-size:.82rem;font-style:italic;font-weight:700;font-family:var(--font-display);color:var(--color-danger)}.mkt-request-status--ok{color:var(--color-accent-hover);font-style:normal}.mkt-close{text-align:center;border-top:1px solid var(--color-border);flex-direction:column;align-items:center;gap:.75rem;max-width:36rem;margin:0 auto;padding:clamp(2.5rem,6vw,4rem) 1.25rem;display:flex}.mkt-close h2{font-family:var(--font-display);margin:0;font-size:clamp(1.55rem,3.2vw,2rem)}.mkt-close p{color:var(--color-ink-muted);max-width:26rem;margin:0}.mkt-footer{text-align:center;padding:1.5rem 1.25rem 2.25rem}.mkt-footer p{letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-muted);margin:0;font-size:.72rem;font-weight:700}@keyframes mkt-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes mkt-drift{0%{transform:scale(1)translate(0,0)}to{transform:scale(1.04)translate(-1%,-.6%)}}@media (prefers-reduced-motion:reduce){.mkt-hero-scene,.mkt-hero-inner,.mkt-stage{animation:none}}@media (width<=640px){.mkt-week{grid-template-columns:repeat(4,minmax(0,1fr))}}:root{--color-bg:#e8d5b8;--color-bg-deep:#d4bc98;--color-bg-elevated:#f3e4cd;--color-surface:#f7ebda;--color-ink:#2f241c;--color-ink-muted:#6a5646;--color-accent:#456651;--color-accent-mid:#567a62;--color-accent-soft:#c9dacd;--color-accent-hover:#344d3d;--color-brass:#b9863f;--color-brass-soft:#efd5a8;--color-cherry:#a84e42;--color-cherry-soft:#f0d5ce;--color-wood:#7a5738;--color-wood-light:#c9a882;--color-copper:#b9863f;--color-danger:#8f3a32;--color-border:#d2b894;--color-border-strong:#b8956e;--color-focus:#456651;--shadow-soft:0 18px 42px #2f241c24;--shadow-lift:0 10px 22px #2f241c1a;--radius:14px;--radius-sm:10px;--nav-height:3.65rem;--dock-legend:5.6rem;--dock-sticky:calc(var(--touch) + .85rem);--dock-request:calc(var(--touch) + 1.35rem);--dock-grocery:calc(var(--touch) + 1.35rem);--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Nunito", "Segoe UI", sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--touch:44px;--ease-out:cubic-bezier(.22, 1, .36, 1);--shell-max:42rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (width>=768px){:root{--shell-max:52rem;--nav-height:4rem}body{font-size:1rem;line-height:1.5}}@media (width>=960px){:root{--shell-max:72rem}}@media (width>=1280px){:root{--shell-max:90rem}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;height:100%}body{min-height:100%;font-family:var(--font-body);color:var(--color-ink);background-color:var(--color-bg);background-image:radial-gradient(ellipse 980px 560px at 8% -8%, #ffecc8b8, transparent 58%), radial-gradient(ellipse 820px 520px at 100% 4%, #45665138, transparent 54%), radial-gradient(ellipse 700px 480px at 40% 110%, #b9863f38, transparent 56%), linear-gradient(168deg, #f0dcc0 0%, var(--color-bg) 42%, #c9ae86 100%);background-attachment:fixed;margin:0;font-size:.9375rem;line-height:1.45}body:before{content:"";pointer-events:none;z-index:0;opacity:.28;background-image:linear-gradient(#7a573812 1px,#0000 1px),linear-gradient(90deg,#7a57380d 1px,#0000 1px);background-size:36px 36px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(85% 75% at 50% 20%,#000 28%,#0000 100%);mask-image:radial-gradient(85% 75% at 50% 20%,#000 28%,#0000 100%)}body:after{content:"";pointer-events:none;z-index:0;opacity:.28;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.45'/%3E%3C/svg%3E");position:fixed;inset:0}#root{z-index:1;min-height:100dvh;position:relative}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 var(--space-2);font-weight:650;line-height:1.15}h1{font-size:1.35rem}h2{font-size:1.2rem}h3{font-size:1.05rem}p{margin:0 0 var(--space-3)}a{color:var(--color-accent)}a:hover:not(.btn):not(.mkt-btn){color:var(--color-accent-hover)}img{max-width:100%;height:auto}:focus{outline:none}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.skip-link{left:var(--space-4);top:var(--space-4);z-index:1000;background:var(--color-ink);color:#fff;padding:var(--space-3) var(--space-4);border-radius:8px;text-decoration:none;position:absolute}.skip-link:not(:focus):not(:focus-visible){clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;pointer-events:none;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.skip-link:focus,.skip-link:focus-visible{clip:auto;clip-path:none;white-space:normal;pointer-events:auto;width:auto;height:auto;margin:0;overflow:visible}.app-shell{width:100%;max-width:var(--shell-max);min-height:100dvh;padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));box-shadow:0 0 0 1px color-mix(in srgb, var(--color-border) 55%, transparent), 0 24px 60px #2f241c1f;background:linear-gradient(#f7ebdab8 0%,#f3e4cd8c 40%,#e8d5b859 100%);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow-x:clip}.app-shell:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 36% at 50% 0,#fff4dc8c,#0000 70%),radial-gradient(60% 30% at 100% 18%,#45665114,#0000 65%);position:absolute;inset:0}.app-header,.app-banners,.app-shell>.main{z-index:1;position:relative}.app-banners{padding:0 var(--space-4)}.app-banners .banner{margin-bottom:var(--space-3)}.app-banners .banner:last-child{margin-bottom:var(--space-2)}.app-header{padding:var(--space-2) var(--space-3);padding-top:max(var(--space-2), env(safe-area-inset-top,0px));justify-content:space-between;align-items:center;gap:var(--space-3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#f7ebdaeb,#f3e4cd8c);min-height:2.85rem;display:flex;position:relative}.app-header-brand{align-items:center;gap:var(--space-2);flex:auto;min-width:0;display:flex}.app-header-section{font-family:var(--font-display);letter-spacing:-.015em;color:var(--color-ink);margin:0;font-size:clamp(1.15rem,3.8vw,1.4rem);font-weight:700;line-height:1}.app-header-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;position:relative}.header-refresh{z-index:1;pointer-events:none;background:0 0;border-radius:50%;width:.42rem;height:.42rem;position:absolute;top:50%;right:calc(100% + .28rem);transform:translateY(-50%)}.header-refresh.is-on{background:var(--color-accent);animation:.9s ease-in-out infinite header-refresh-pulse}@keyframes header-refresh-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.header-refresh.is-on{animation:none}}.header-settings{border-radius:var(--radius-md,.75rem);width:2.5rem;min-width:44px;height:2.5rem;min-height:44px;color:var(--color-ink);justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.header-settings:hover,.header-settings:focus-visible{color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 12%, transparent)}.header-settings[aria-current=page]{color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 16%, transparent)}.header-settings-mark{width:1.4rem;height:1.4rem}.app-header:after{content:"";left:var(--space-4);right:var(--space-4);background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-brass) 65%, var(--color-border)) 18%, color-mix(in srgb, var(--color-accent) 55%, var(--color-border)) 82%, transparent);border-radius:999px;height:2px;position:absolute;bottom:0}.app-header .brand-lockup{gap:var(--space-2)}.app-header .brand-mark{border-radius:12px;width:2.25rem;height:2.25rem;box-shadow:0 4px 12px #4f6f5a29}.app-header .brand-title{padding-bottom:0;font-size:clamp(1.25rem,4vw,1.55rem);line-height:1}.brand-credit{margin:0 0 var(--space-2);font-family:var(--font-display);letter-spacing:.02em;text-transform:none;color:var(--color-ink-muted);font-size:.9rem;font-style:italic;font-weight:650}.brand-lockup{align-items:center;gap:var(--space-3);margin:0;display:flex}.brand-lockup--lg{text-align:center;gap:var(--space-4);flex-direction:column}.brand-mark{object-fit:cover;width:3rem;height:3rem;animation:brand-settle .7s var(--ease-out) both;border-radius:18px;flex-shrink:0;display:block;box-shadow:0 10px 22px #4f6f5a2e}.brand-lockup--lg .brand-mark{border-radius:22px;width:5.5rem;height:5.5rem}.brand-title{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.015em;flex-wrap:wrap;align-items:baseline;gap:.28em;margin:0;padding-bottom:.06em;font-size:clamp(1.85rem,5vw,2.3rem);font-weight:700;line-height:1.08;display:flex}.brand-lockup--lg .brand-title{justify-content:center;font-size:clamp(2.5rem,8vw,3.4rem);line-height:1.02}.brand-home{color:var(--color-accent)}.brand-planner{color:var(--color-wood);font-style:normal;font-weight:650}.main{min-width:0;max-width:100%;padding:var(--space-3);flex:1}@media (width>=960px){.main{padding:var(--space-5) var(--space-5) var(--space-6)}.main form.panel{max-width:40rem}.main .panel:has(form){max-width:40rem}}.banner{background:linear-gradient(135deg, var(--color-brass-soft), #fff6ea);border:1px solid color-mix(in srgb, var(--color-brass) 28%, transparent);color:var(--color-ink);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4);box-shadow:var(--shadow-lift);font-size:.95rem}.inventory-due-note{flex-wrap:wrap;align-items:baseline;gap:.35rem .85rem;display:flex}.inventory-due-note .text-link{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.panel{border:1px solid color-mix(in srgb, var(--color-border) 85%, var(--color-wood));border-radius:var(--radius-sm);padding:var(--space-3);box-shadow:var(--shadow-soft), inset 0 1px 0 #fffaf0bf;animation:fade-up .42s var(--ease-out);background:linear-gradient(165deg,#fcf3e4f5,#f1e1c8eb);position:relative;overflow:hidden}.guide-panel{gap:var(--space-4);display:grid}.guide-steps{gap:var(--space-2);color:var(--color-ink);margin:0;padding-left:1.25rem;display:grid}.guide-steps--compact{margin-top:var(--space-3);gap:var(--space-1)}.guide-example{padding:var(--space-4);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-accent) 6%, var(--color-bg-elevated));border:1px solid color-mix(in srgb, var(--color-accent) 18%, var(--color-border))}.guide-examples,.guide-example-list{gap:var(--space-3);display:grid}.guide-example--component{background:color-mix(in srgb, var(--color-bg-deep) 28%, white)}.guide-example-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-muted);margin:0;font-size:.72rem;font-weight:650}.guide-coach{border-color:color-mix(in srgb, var(--color-accent) 28%, var(--color-border));background:color-mix(in srgb, var(--color-accent) 5%, var(--color-bg-elevated))}.sample-suggestions{gap:var(--space-2);display:grid}.sample-suggestions-list{-webkit-overflow-scrolling:touch;gap:0;max-height:min(16rem,40vh);margin:0;padding:0;display:grid;overflow-y:auto}.sample-suggestions-item{scroll-snap-align:start}.sample-suggestions-cta{min-height:44px;margin-top:.85rem}.meal-pick__row{align-items:stretch;gap:.4rem;min-width:0;display:flex}.meal-pick__row .eatout-place__box{flex:1;min-width:0}.day-plan-new-meal-btn{width:auto;min-width:var(--touch);min-height:var(--touch);flex:none;align-self:stretch}.day-slot-editor-title{flex-wrap:nowrap;flex:auto;align-items:center;gap:.45rem;width:100%;min-width:0;display:flex}.day-slot-editor-name{white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%;text-overflow:unset;flex:auto;font-weight:800;line-height:1.25;overflow:visible}.day-slot-editor-title .day-slot-editor-name{flex-basis:auto}.day-slot-editor-title .meal-read-menu{flex:none;margin-inline-start:auto}.day-slot-editor-title .watch-kind{flex:none}.day-slot-editor-mealtime{min-width:0;max-width:100%;min-height:var(--touch);flex:auto;font-size:16px}.day-plan-time-row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.day-plan-time-row select{flex:1;min-width:8rem}.day-plan-reservation-row{align-items:center;gap:.55rem;min-width:0;display:flex}.day-plan-reservation-check{flex:none;margin:0}.day-plan-buy-summary{white-space:nowrap;text-overflow:ellipsis;max-width:42%;margin-left:auto;margin-right:.35rem;font-weight:600;overflow:hidden}.panel:before{content:"";border-radius:var(--radius) 0 0 var(--radius);background:linear-gradient(180deg, var(--color-brass), var(--color-wood), var(--color-accent));opacity:.85;width:5px;position:absolute;inset:0 auto 0 0}.panel--board{border-color:color-mix(in srgb, var(--color-wood) 35%, var(--color-border));background:linear-gradient(160deg,#f8ebda 0%,#efd9b8 55%,#e4c9a0 100%)}.panel--board:after{content:none}.stack{gap:var(--space-3);flex-direction:column;min-width:0;max-width:100%;display:flex}.row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.muted{color:var(--color-ink-muted)}.eyebrow{margin:0 0 var(--space-2);letter-spacing:.12em;text-transform:uppercase;color:var(--color-wood);font-size:.74rem;font-weight:800}.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}label.field-label{margin-bottom:var(--space-2);letter-spacing:-.01em;font-weight:700;display:block}.field-hint{color:var(--color-ink-muted);margin-top:var(--space-1);font-size:.8rem;line-height:1.35;display:block}input:not([type=checkbox],[type=radio],[type=button],[type=submit],[type=reset],[type=hidden],[type=image],[type=range],[type=color]),select,textarea{width:100%;min-height:var(--touch);font:inherit;color:inherit;background:color-mix(in srgb, var(--color-surface) 70%, #fff6e8);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.7rem .95rem;font-size:1rem;transition:border-color .16s,box-shadow .16s;box-shadow:inset 0 1px 2px #2f241c0f}input[type=search]{appearance:none}input:hover,select:hover,textarea:hover{border-color:var(--color-border-strong)}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 22%, transparent)}textarea{resize:vertical;min-height:6rem}.checkbox-grid{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.checkbox-row{align-items:center;gap:var(--space-2);min-height:var(--touch);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-accent-soft) 45%, white);cursor:pointer;border:1px solid #0000;padding:.35rem .6rem;transition:border-color .16s,background-color .16s;display:flex}.checkbox-row:hover{border-color:color-mix(in srgb, var(--color-accent) 25%, transparent)}.checkbox-row input{width:1.35rem;height:1.35rem;accent-color:var(--color-accent);flex-shrink:0}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch);min-width:var(--touch);touch-action:manipulation;border-radius:var(--radius-sm);font:inherit;letter-spacing:-.01em;cursor:pointer;transition:transform .18s var(--ease-out), background-color .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;border:1px solid #0000;padding:.35rem .85rem;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:linear-gradient(165deg, var(--color-accent-mid), var(--color-accent));color:#fffaf4;box-shadow:0 4px 10px #4f6f5a2e}.btn-primary:hover,.btn-primary:focus-visible{background:linear-gradient(165deg, var(--color-accent), var(--color-accent-hover));color:#fffaf4}.btn-secondary{background:color-mix(in srgb, var(--color-surface) 85%, transparent);border-color:var(--color-border);color:var(--color-ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.btn-secondary:hover,.btn-secondary:focus-visible{border-color:var(--color-brass);background:var(--color-brass-soft);color:var(--color-ink)}.btn-ghost{color:var(--color-ink-muted);box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover,.btn-ghost:focus-visible{color:var(--color-ink);background:color-mix(in srgb, var(--color-surface) 80%, transparent)}.btn-danger{border-color:color-mix(in srgb, var(--color-danger) 40%, var(--color-border));color:var(--color-danger);background:0 0}.btn-danger:hover,.btn-danger:focus-visible{background:color-mix(in srgb, var(--color-danger) 8%, white);color:var(--color-danger)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.bottom-nav{z-index:60;box-sizing:border-box;height:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));padding:.2rem max(var(--space-2), env(safe-area-inset-right,0px)) calc(.2rem + env(safe-area-inset-bottom,0px)) max(var(--space-2), env(safe-area-inset-left,0px));border-top:1px solid color-mix(in srgb, var(--color-wood) 32%, var(--color-border));pointer-events:auto;background-color:#f3e4cd;background-image:linear-gradient(#f7ebdaf0,#e8d2b0f7);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -14px 32px #2f241c1a}.bottom-nav ul{width:100%;max-width:var(--shell-max);grid-template-columns:repeat(6,1fr);gap:.12rem;margin:0 auto;padding:0;list-style:none;display:grid}.bottom-nav a{min-height:var(--touch);color:var(--color-ink-muted);letter-spacing:0;text-transform:none;pointer-events:auto;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;font-size:.68rem;font-weight:800;text-decoration:none;transition:background-color .18s,color .18s;display:flex}.bottom-nav a>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav a:hover{color:var(--color-accent);background:color-mix(in srgb, var(--color-accent-soft) 55%, transparent)}.bottom-nav a[aria-current=page],.bottom-nav a.is-active{color:var(--color-accent);background:linear-gradient(180deg, var(--color-accent-soft), #eef5f0);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 16%, transparent)}.meal-read-name{margin:0;font-size:1.55rem}.meal-read-photos{gap:.65rem;display:grid}.meal-read-photos img{object-fit:cover;border-radius:.75rem;width:100%;max-height:16rem}.meal-photo-open{border-radius:inherit;width:100%;color:inherit;cursor:zoom-in;font:inherit;background:0 0;border:0;margin:0;padding:0;display:block}.meal-photo-open:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.meal-read-ingredients{flex-direction:column;gap:.12rem;margin:0;padding:0;list-style:none;display:flex}.meal-read-ingredient{border-bottom:1px solid color-mix(in srgb, var(--color-border) 55%, transparent);flex-direction:row;justify-content:space-between;align-items:baseline;gap:.75rem;width:100%;min-width:0;padding:.12rem 0;display:flex;overflow:visible}.meal-read-ingredient__name{overflow-wrap:anywhere;flex:auto;width:auto;min-width:0;max-width:100%;font-size:.88rem;font-weight:700;line-height:1.2}.meal-read-ingredient__measure{text-overflow:clip;white-space:nowrap;text-align:right;width:auto;max-width:none;color:var(--color-ink-muted);flex:none;margin-left:auto;font-size:.84rem;font-weight:650;line-height:1.2;overflow:visible}.meal-read-actions,.meal-form-actions{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;width:100%;display:flex}.meal-form-actions .meal-photo-add-empty{flex:none;width:auto}.meal-photo-field--idle{display:contents}.meal-action-remove{margin-left:auto}.meal-section-head,.meal-ingredients-head{justify-content:space-between;align-items:center;gap:.5rem;width:100%;min-width:0;display:flex}.meal-section-label{min-width:0;margin:0}.meal-section-edit{flex:none;width:auto;margin-left:auto}.meal-read-title .meal-read-name{flex:auto;min-width:0}.meal-read-title-tools{flex:none;align-items:center;gap:.15rem;margin-left:auto;display:flex}.btn.meal-icon-btn{width:var(--touch);min-width:var(--touch);max-width:var(--touch);height:var(--touch);min-height:var(--touch);color:var(--color-accent);box-shadow:none;background:0 0;border:none;border-radius:12px;flex:none;padding:0}.btn.meal-icon-btn:hover{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent-hover);border:none}.btn.meal-icon-btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;border:none}.meal-read-menu{flex:none;position:relative}.btn.meal-read-kebab{width:var(--touch);min-width:var(--touch);max-width:var(--touch);height:var(--touch);min-height:var(--touch);color:var(--color-accent);box-shadow:none;background:0 0;border:none;flex:none;padding:0}.btn.meal-read-kebab:hover{background:color-mix(in srgb, var(--color-accent) 10%, transparent);color:var(--color-accent-hover);border:none}.btn.meal-read-kebab:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;border:none}.meal-read-menu__panel{z-index:30;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:11.5rem;box-shadow:var(--shadow-lift);flex-direction:column;padding:.3rem;display:flex;position:absolute;top:calc(100% + .25rem);right:0}.meal-read-menu__item{min-height:var(--touch);text-align:left;font:inherit;color:var(--color-ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:.4rem .75rem;font-weight:700}.meal-read-menu__item:hover,.meal-read-menu__item:focus-visible{background:var(--color-accent-soft)}.meal-read-menu__item--danger{color:var(--color-danger)}form .btn.meal-icon-btn,form .btn.meal-read-kebab{width:var(--touch);max-width:var(--touch)}.meal-read-section{gap:.35rem}.meal-read-recipes{margin:0;padding:0;list-style:none}.meal-read-recipes a{overflow-wrap:anywhere}.meal-ingredients-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.meal-ingredients-head .field-label{margin:0}.bottom-nav .nav-icon{font-size:1.2rem;line-height:1;position:relative}.nav-badge{background:var(--color-accent);color:#fff;text-align:center;border-radius:999px;min-width:1rem;height:1rem;padding:0 .22rem;font-size:.62rem;font-weight:800;line-height:1rem;position:absolute;top:-.35rem;right:-.55rem}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:.5rem;display:grid}.calendar-dow{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:var(--color-wood);padding:var(--space-2) 0;font-size:.72rem;font-weight:800}.calendar-cell{aspect-ratio:1;min-height:var(--touch);border:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);border-radius:var(--radius-sm);background:linear-gradient(165deg, color-mix(in srgb, var(--color-surface) 88%, #fff8ec), color-mix(in srgb, var(--color-bg-elevated) 80%, var(--color-wood-light)));font:inherit;color:inherit;cursor:pointer;transition:background-color .16s ease, border-color .16s ease, transform .16s var(--ease-out), box-shadow .16s ease;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.2rem;font-weight:700;display:flex;box-shadow:inset 0 1px #fff8eba6}.calendar-cell--empty{background:color-mix(in srgb, var(--color-bg-deep) 22%, transparent);box-shadow:none;cursor:default;pointer-events:none;border-color:#0000}.calendar-cell:hover{border-color:color-mix(in srgb, var(--color-accent) 40%, var(--color-border));box-shadow:var(--shadow-lift);transform:translateY(-1px)}.calendar-cell--today{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.calendar-cell--marked{background:color-mix(in srgb, var(--color-accent-soft) 72%, white)}.calendar-cell--shop{background:color-mix(in srgb, var(--color-brass-soft) 70%, white)}.calendar-cell--marked.calendar-cell--shop{background:linear-gradient(145deg, color-mix(in srgb, var(--color-accent-soft) 78%, white), color-mix(in srgb, var(--color-brass-soft) 75%, white))}.calendar-dots{gap:.2rem;min-height:.4rem;display:flex}.dot{border-radius:50%;width:.4rem;height:.4rem;display:inline-block}.dot-meal{background:var(--color-accent)}.dot-shop{background:var(--color-brass)}.legend .dot{vertical-align:middle;margin-right:.35rem}.list-plain{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list-link{color:inherit;padding:var(--space-3) 0;flex-direction:column;gap:.2rem;text-decoration:none;display:flex}.list-link:hover strong{color:var(--color-accent)}.meal-list-item{align-items:center;gap:var(--space-3);flex-direction:row;padding:var(--space-2) var(--space-3)!important;display:flex!important}.meals-page{gap:var(--space-2)}.meals-page__title{flex:1;min-width:0}.meals-page__title-row{flex-wrap:nowrap;align-items:center;gap:.15rem .75rem;width:100%;display:flex}.meals-page__title-row .text-link{min-height:var(--touch)}.meals-page__title-row .meals-onhand-toggle{margin-left:auto}.meals-page .checkbox-row{align-items:flex-start;padding:.25rem .5rem}.meals-page .list-plain{gap:var(--space-2)}.meals-toolbar{gap:var(--space-2);display:grid}.meals-search-row{align-items:center;gap:.45rem;display:flex}.meals-search-field{flex:1;min-width:0}.meals-onhand-toggle{min-height:var(--touch);min-width:var(--touch);border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 88%, transparent);color:var(--color-ink);font:inherit;cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.8125rem;font-weight:800;display:inline-flex}.meals-onhand-toggle:disabled{opacity:.62;cursor:not-allowed}.meals-onhand-toggle.is-on,.meals-onhand-toggle[aria-checked=true]{background:var(--color-danger);border-color:var(--color-danger);color:#fff8f4;box-shadow:inset 0 0 0 1px #ffffff2e}.meals-view{flex-wrap:nowrap;flex:none;width:max-content;max-width:none}.meals-view .segmented__btn{min-height:var(--touch);min-width:var(--touch);padding:.3rem .45rem;font-size:.75rem}.meals-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.22rem;margin:0;padding:0;list-style:none;display:grid}.meal-tile{min-height:0;color:inherit;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-lift);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.meal-tile .meal-thumb,.meal-tile .meal-thumb--empty{aspect-ratio:5/4;border:0;border-radius:0;width:100%;height:auto}.meal-tile__copy{gap:.05rem;min-width:0;padding:.2rem .28rem .28rem;display:grid}.meal-tile__copy strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.72rem;line-height:1.15;display:-webkit-box;overflow:hidden}.meal-tile__copy .muted{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.72rem;display:-webkit-box;overflow:hidden}.meal-list-copy{flex-direction:column;gap:.2rem;min-width:0;display:flex}.meal-thumb{border-radius:var(--radius-sm);object-fit:cover;background:var(--color-accent-soft);border:1px solid var(--color-border);flex-shrink:0;width:4.5rem;height:4.5rem}.meal-thumb--empty{background:linear-gradient(145deg, var(--color-accent-soft), color-mix(in srgb, var(--color-brass-soft) 55%, white));display:inline-block}.photo-preview{margin-top:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border);box-shadow:var(--shadow-lift);overflow:hidden}.photo-preview img{width:100%;display:block}.photo-preview-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.meal-photo-field{justify-items:start;gap:var(--space-2);display:grid}.meal-photo-field .photo-preview{margin-top:0}.meal-photo-add-empty{align-items:center;gap:.4rem;width:auto;display:inline-flex}.meal-photo-gallery{gap:var(--space-3);width:100%;display:grid}.meal-photo-cover-add{z-index:2;width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch);justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;inset:.45rem auto auto .45rem}.photo-preview--edit{background:var(--color-ink);position:relative}.photo-preview--edit img{object-fit:contain;background:var(--color-ink);max-height:min(22rem,70dvh)}.photo-preview-fallback{min-height:10rem;padding:var(--space-4);color:#fffaf4;background:linear-gradient(145deg, var(--color-accent), color-mix(in srgb, var(--color-ink) 55%, var(--color-wood)));place-items:center;font-weight:700;display:grid}.photo-actions{z-index:1;gap:.35rem;display:flex;position:absolute;top:.45rem;right:.45rem}.photo-action{width:var(--touch);height:var(--touch);min-height:var(--touch);cursor:pointer;color:#fffaf4;-webkit-backdrop-filter:blur(10px);background:#2f241c9e;border:0;border-radius:999px;place-items:center;padding:0;display:grid;box-shadow:0 8px 18px #2f241c38}.photo-action svg{display:block}.photo-action:disabled{opacity:.55;cursor:not-allowed}.photo-action-add{color:#f4fff6;background:#2e5c3ae6}.photo-action-delete{background:#8f3a32db}.confirm-backdrop{z-index:95;background:#2f241cb8;place-items:center;padding:1.2rem;display:grid;position:fixed;inset:0}.confirm-dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:min(100%,22rem);box-shadow:var(--shadow-soft);gap:.7rem;padding:1.15rem 1.15rem 1rem;display:grid}.confirm-dialog h2{font-family:var(--font-display);margin:0;font-size:1.2rem}.confirm-dialog p{color:var(--color-ink-muted);margin:0;font-weight:600}.confirm-dialog .row{gap:var(--space-2)}.confirm-dialog .btn{flex:1}.confirm-dialog--stack{gap:.75rem}.confirm-dialog__choices{gap:var(--space-2);display:grid}.confirm-dialog--stack .btn{flex:none;width:100%}.confirm-dialog--stack .btn[aria-pressed=true]{color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 14%, transparent)}html.cropper-open,html.cropper-open body{overscroll-behavior:none;touch-action:none;overflow:hidden!important}html.cropper-open .bottom-nav{visibility:hidden}.cropper{z-index:90;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#2a211a;grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;inset:0}.cropper-chrome{touch-action:manipulation;background:#2a211a;align-items:center;gap:.5rem;display:flex}.cropper-chrome-top{padding:max(.55rem, env(safe-area-inset-top,0px)) .75rem .55rem;justify-content:space-between}.cropper-chrome-bottom{padding:.55rem .75rem max(.85rem, env(safe-area-inset-bottom,0px));gap:.55rem;display:grid}.cropper-title{color:#f7ebda;text-align:center;margin:0;font-weight:700}@media (width<=480px){.cropper-title{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.cropper-btn{min-height:var(--touch);cursor:pointer;border:0;border-radius:12px;flex:none;min-width:5.5rem;padding:.65rem 1rem;font-weight:700}.cropper-btn-cancel{color:#2f241c;background:#f7ebda}.cropper-btn-done{background:var(--color-brass);color:#2f241c}.cropper-btn-done:disabled{opacity:.6}.cropper-aspects{justify-content:center;gap:.5rem;display:flex}.cropper-aspect{min-height:var(--touch);color:#f7ebda;cursor:pointer;background:0 0;border:2px solid #c9a882;border-radius:999px;padding:.55rem 1.1rem;font-weight:700}.cropper-aspect.is-on{color:#2f241c;background:#f7ebda;border-color:#f7ebda}.cropper-hint{color:#f7ebda;text-align:center;margin:0;font-size:.95rem}.cropper-stage{touch-action:none;justify-content:center;align-items:center;min-height:0;padding:.4rem .75rem;display:flex;position:relative}.cropper-frame{touch-action:none;max-width:100%;max-height:100%;display:inline-block;position:relative}.cropper-stage img{pointer-events:none;max-width:100%;height:auto;max-height:calc(100dvh - 12.5rem);margin:0;display:block}.crop-box{border:2px solid var(--color-brass);touch-action:none;cursor:move;position:absolute;box-shadow:0 0 0 999px #00000073}.crop-box-idle{display:none}.crop-grid{pointer-events:none;position:absolute;inset:0}.crop-grid span{background:#f7ebda73;position:absolute}.crop-grid span:first-child,.crop-grid span:nth-child(2){width:100%;height:1px;left:0}.crop-grid span:first-child{top:33.333%}.crop-grid span:nth-child(2){top:66.667%}.crop-grid span:nth-child(3),.crop-grid span:nth-child(4){width:1px;height:100%;top:0}.crop-grid span:nth-child(3){left:33.333%}.crop-grid span:nth-child(4){left:66.667%}.crop-handle{background:var(--color-brass);cursor:nwse-resize;touch-action:none;border:0;border-radius:999px;width:44px;height:44px;padding:0;position:absolute;bottom:-14px;right:-14px;box-shadow:0 0 0 3px #2a211a}.photo-preview--slot{max-width:14rem}.chip-option{align-items:center;gap:var(--space-2);min-height:var(--touch);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;padding:.4rem .95rem;font-weight:600;display:inline-flex}.chip-option:has(input:checked){border-color:var(--color-accent);background:var(--color-accent-soft)}.slot-card{padding:var(--space-4);border-radius:var(--radius-sm);background:linear-gradient(160deg, color-mix(in srgb, var(--color-bg-elevated) 85%, #fff8ec), color-mix(in srgb, var(--color-surface) 70%, var(--color-bg-deep)));border:1px solid var(--color-border);box-shadow:inset 0 1px #fff8eb8c}.day-slot-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.day-slot-item{align-items:center;gap:.15rem;display:flex}.day-slot-item .day-slot-row,.day-slot-item .slot-card{flex:1;min-width:0}.day-slot-reorder{flex-direction:row;flex:none;justify-content:flex-end;align-items:center;gap:.15rem;margin-left:auto;display:flex}.day-slot-reorder .btn{min-height:var(--touch);height:var(--touch);width:var(--touch);min-width:var(--touch);padding:0;line-height:1}.day-empty{flex-wrap:wrap;align-items:center;gap:.65rem .85rem;display:flex}.day-empty__copy{flex:12rem;min-width:0;margin:0}.day-empty__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem .85rem;margin-left:auto;display:flex}.day-plan-notes-row{justify-content:flex-end;margin-left:auto;display:flex}.day-slot-toolbar{flex-wrap:wrap;align-items:center;gap:.15rem .75rem;display:flex}.day-slot-toolbar .text-link{white-space:nowrap;min-height:var(--touch);flex:none;align-items:center;display:inline-flex}.day-slot-toolbar .btn{white-space:nowrap;flex:none;width:auto;margin-left:auto}.day-slot-place-trip{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.day-slot-row{border:1px solid color-mix(in srgb, var(--color-border) 80%, var(--color-wood));width:100%;min-height:0;font:inherit;color:inherit;cursor:pointer;text-align:left;background:linear-gradient(165deg,#fcf3e4fa,#f4e4ccf0);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;padding:.2rem .55rem;display:flex;box-shadow:inset 0 1px #fffaf0b8}.day-slot-row--static{cursor:default}.day-slot-row:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.day-slot-row__name{white-space:normal;overflow-wrap:anywhere;flex:8rem;min-width:0;font-weight:800;line-height:1.25;overflow:visible}.day-slot-people{flex:none;gap:.2rem;display:inline-flex}.member-initial{background:var(--color-accent);color:#fffaf4;border-radius:999px;place-items:center;width:1.35rem;height:1.35rem;font-size:.75rem;font-weight:800;line-height:1;display:inline-grid}.day-slot-split{flex-direction:column;flex:8rem;gap:.1rem;min-width:0;display:flex}.day-slot-split__person{align-items:center;gap:.35rem;min-width:0;display:flex}.meal-line-marks{flex:none;align-items:center;gap:.2rem;display:inline-flex}.meal-place-mark{width:1.15rem;height:1.15rem;color:var(--color-wood);flex:none;justify-content:center;align-items:center;display:inline-flex}.meal-place-mark svg{width:1rem;height:1rem;display:block}.day-slot-split__choice{white-space:normal;overflow-wrap:anywhere;min-width:0;font-weight:800;line-height:1.25}.day-portion{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0;display:flex}.day-portion .watch-kind{flex:none}.week-meal-line .day-slot-split,.plan-agenda__title .day-slot-split{flex:auto;min-width:0}.slot-portion{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.day-slot-editor-head{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.4rem}.ingredient-stock-check{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-bg-deep) 25%, white);margin:0}.ingredient-stock-check legend{padding:0 var(--space-2)}.ingredient-stock-check-actions{justify-content:space-between;align-items:center;gap:var(--space-2);margin:0 0 .35rem;display:flex}.ingredient-stock-check-actions .text-link{min-height:var(--touch);align-items:center;display:inline-flex}.grocery-check-list{gap:.12rem}.grocery-dept-stack{gap:.55rem}.grocery-dept-title{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-ink);border-bottom:1px solid var(--color-border);margin:0 0 .15rem;padding-bottom:.12rem;font-size:.88rem;font-weight:650}.grocery-check-row{gap:.15rem;min-height:0;padding:0}.grocery-check-row.is-checked{opacity:.62;background:color-mix(in srgb, var(--color-bg-deep) 40%, white)}.grocery-check-row.is-checked .grocery-check-name{text-decoration:line-through}.grocery-check-main{cursor:pointer;flex:1;align-items:center;gap:.35rem;min-width:0;padding:.08rem .15rem .08rem .2rem;display:flex}.grocery-check-main input{flex:0 0 .95rem;width:.95rem;height:.95rem;margin:0}.grocery-check-label{flex:1;align-items:center;gap:.4rem;min-width:0;line-height:1.15;display:flex}.grocery-check-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.88rem;line-height:1.15;overflow:hidden}.grocery-check-measure{text-overflow:ellipsis;white-space:nowrap;text-align:right;flex:none;max-width:42%;margin-left:auto;font-size:.78rem;font-weight:650;line-height:1.15;overflow:hidden}.grocery-check-edit{flex-shrink:0;margin-left:0}.grocery-check-edit.btn-icon{justify-content:flex-end;align-items:center;gap:.35rem;width:auto;min-width:1.85rem;max-width:58%;height:auto;min-height:1.85rem;padding:0 .1rem;display:inline-flex}.grocery-check-edit .grocery-check-measure{max-width:9.5rem;margin-left:0}.grocery-check-edit-panel{padding:0 .35rem .45rem .6rem}.ingredient-qty-fields{flex-wrap:nowrap;align-items:center;gap:.25rem;min-width:0;padding:0;display:flex}.ingredient-qty-fields.is-incomplete select,.ingredient-qty-fields.is-incomplete input{border-color:color-mix(in srgb, var(--color-brass) 55%, var(--color-border))}.ingredient-qty-fields input,.ingredient-qty-fields select{height:2rem;min-height:2rem;padding:0 .35rem;font-size:16px}.ingredient-qty-fields__qty-wrap input{text-align:right;appearance:textfield;-webkit-appearance:none;width:3.1rem;min-width:3.1rem}.ingredient-qty-fields__unit-wrap select{width:4.8rem;min-width:4.8rem}.ingredient-qty-fields__size-wrap select{width:6.4rem;min-width:6.4rem}.ingredient-chip-row,.ingredient-line{border-bottom:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);flex-direction:column;align-items:stretch;gap:.05rem;width:100%;padding:.1rem 0;display:flex}.ingredient-line__identity{flex-direction:column;align-items:flex-start;gap:0;min-width:0;line-height:1.15;display:flex}.ingredient-line__name{white-space:normal;overflow-wrap:anywhere;font-weight:700;overflow:visible}.ingredient-line__dept{font-size:.72rem;font-weight:550}.ingredient-line__measure{flex-wrap:nowrap;align-items:center;gap:.2rem;min-width:0;display:flex}.ingredient-line__measure .ingredient-qty-fields{flex:auto;min-width:0}.ingredient-line__remove{border-radius:var(--radius-sm);width:2rem;min-width:2rem;height:2rem;min-height:2rem;color:var(--color-ink-muted);font:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin:0;padding:0;font-size:1.25rem;line-height:1;display:inline-flex}.ingredient-line__remove:hover,.ingredient-line__remove:focus-visible{color:var(--color-danger);background:color-mix(in srgb, var(--color-cherry-soft) 55%, transparent)}.ingredient-line--meal{flex-flow:row;align-items:center;gap:.15rem .35rem;min-width:0;padding:.08rem 0}.ingredient-line--meal .ingredient-line__identity{flex-direction:row;flex:auto;align-items:center;min-width:0}.ingredient-line--meal .ingredient-line__name{min-width:0;font-size:.88rem;line-height:1.15}.ingredient-line--meal .ingredient-line__measure{flex:auto;min-width:0;overflow:hidden}.ingredient-line--meal .ingredient-qty-fields{flex:auto;width:100%;min-width:0;overflow:hidden}.ingredient-line--meal .ingredient-qty-fields input,.ingredient-line--meal .ingredient-qty-fields select{width:100%;max-width:100%;height:2rem;min-height:2rem;padding:0 .4rem;font-size:16px}.ingredient-line--meal .ingredient-qty-fields__qty-wrap{flex:0 0 3.4rem;min-width:0}.ingredient-line--meal .ingredient-qty-fields__qty-wrap input{width:3.4rem;min-width:0}.ingredient-line--meal .ingredient-qty-fields__unit-wrap,.ingredient-line--meal .ingredient-qty-fields__size-wrap{flex:4.5rem;min-width:0;max-width:8.75rem}.ingredient-line--meal .ingredient-qty-fields__unit-wrap select,.ingredient-line--meal .ingredient-qty-fields__size-wrap select{width:100%;min-width:0;max-width:100%}.ingredient-line--meal .ingredient-line__remove{flex:0 0 var(--touch);width:var(--touch);min-width:var(--touch);max-width:var(--touch);height:var(--touch);min-height:var(--touch);font-size:inherit;align-self:center;margin-left:0}@media (width<=639px){.ingredient-chip-row,.ingredient-line{grid-template-columns:minmax(0,1fr) auto}.ingredient-line .ingredient-qty-fields{grid-column:1/-1}.ingredient-line--meal{flex-flow:row;display:flex}.ingredient-line--meal .ingredient-qty-fields{grid-column:auto;width:auto}}.sort-need-row .ingredient-qty-fields{padding:0 .45rem .4rem}.grocery-draft-row{align-items:flex-end}.grocery-decide-row{gap:var(--space-3)}.grocery-review-card.is-kept{border-color:color-mix(in srgb, var(--color-accent) 45%, var(--color-border));background:color-mix(in srgb, var(--color-accent) 8%, var(--color-bg-elevated))}.grocery-skipped-row{opacity:.78;justify-content:space-between;align-items:center}.chores-page{gap:var(--space-2)}.chores-toolbar{gap:var(--space-2);display:grid}.chores-week-row{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.chores-week-row .chore-week-filter{flex:auto;min-width:0;max-width:none;margin:0}.chores-week-row .btn{flex:none;width:auto}.dining-page{gap:var(--space-2)}.dining-toolbar{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.dining-toolbar .segmented{flex:auto;min-width:0}.dining-toolbar .btn{flex:none;width:auto}.dining-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.dining-card{border:1px solid color-mix(in srgb, var(--color-border) 80%, var(--color-wood));background:linear-gradient(165deg,#fcf3e4fa,#f4e4ccf0);border-radius:12px;position:relative;overflow:hidden;box-shadow:inset 0 1px #fffaf0b8}.dining-card.is-editing{padding:.75rem .8rem .75rem .95rem}.dining-card-row{align-items:center;gap:.15rem;min-height:0;padding:.1rem .2rem .1rem .35rem;display:flex}.dining-card-open{min-width:0;min-height:var(--touch);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:auto;justify-content:center;align-items:flex-start;gap:.05rem;margin:0;padding:.15rem .35rem;display:flex}.dining-card-notes{color:var(--color-ink-muted);white-space:normal;font-size:.82rem;font-weight:400;line-height:1.3}.dining-card-open:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:8px}.dining-card-tools{flex:none;align-items:center;gap:0;margin-left:auto;display:flex}.dining-card-tools .btn-icon{width:1.85rem;min-width:1.85rem;height:1.85rem;min-height:1.85rem;padding:0}.dining-list-kind{gap:.25rem;max-width:16rem;display:grid}.dining-wishlist-empty{justify-items:center;gap:var(--space-3);text-align:center;border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--color-wood) 26%, var(--color-border));background:radial-gradient(ellipse 80% 70% at 50% 18%, color-mix(in srgb, var(--color-accent-soft) 55%, transparent), transparent 68%), linear-gradient(165deg, color-mix(in srgb, var(--color-surface) 92%, #f3e2c4), color-mix(in srgb, var(--color-brass-soft) 38%, #ead3ae));margin:0;padding:1.4rem 1.1rem 1.5rem;display:grid;box-shadow:inset 0 1px #fff8eb9e}.dining-wishlist-empty__mark{color:var(--color-accent-hover)}.dining-wishlist-empty__copy{max-width:18rem;color:var(--color-ink);margin:0;font-size:1rem;line-height:1.4}.dining-wishlist-empty .btn{min-height:var(--touch)}.chore-board-toggle{flex-wrap:wrap;gap:.4rem;display:flex}.chore-board-toggle--pending{min-height:var(--touch)}.chore-boards{gap:var(--space-3);display:grid}.chore-board-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.chore-board-title{min-width:0;margin:0}.chore-board-progress{font-variant-numeric:tabular-nums;color:var(--color-ink-muted);flex:none;margin:0;padding-top:.15rem;font-size:.95rem;font-weight:800}.chore-shared-group{margin-top:.85rem}.chore-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.chore-card{border:1px solid color-mix(in srgb, var(--color-border) 80%, var(--color-wood));background:linear-gradient(165deg,#fcf3e4fa,#f4e4ccf0);border-radius:12px;position:relative;overflow:hidden;box-shadow:inset 0 1px #fffaf0b8}.chore-card:before{content:"";background:var(--chore-day,var(--color-accent));width:4px;position:absolute;inset:0 auto 0 0}.chore-card.is-editing{padding:.75rem .8rem .75rem .95rem}.chore-edit-form{gap:var(--space-2);width:100%}.chore-card.is-done{opacity:.74}.chore-card.is-done .chore-card-name{text-decoration:line-through}.chore-card.is-pending{background:color-mix(in srgb, var(--color-brass) 14%, var(--color-surface))}.chore-card.is-missed{background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-danger) 22%, transparent)}.chore-card-bar{min-height:var(--touch);align-items:center;gap:.45rem;padding:.2rem .55rem .2rem .85rem;display:flex}.chore-card-check{width:var(--touch);height:var(--touch);min-width:var(--touch);min-height:var(--touch);cursor:pointer;flex:none;place-items:center;margin:0;display:grid}.chore-card-check input{width:1.25rem;height:1.25rem;accent-color:var(--color-accent);margin:0}.chore-card-toggle{min-width:0;min-height:var(--touch);font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:.5rem;padding:0;display:flex}.chore-card-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:8px}.chore-card-name{min-width:0;text-overflow:unset;white-space:normal;flex:auto;font-weight:800;overflow:visible}.chore-card.is-expanded .chore-card-name,.dining-card.is-expanded .chore-card-name{text-overflow:unset;white-space:normal;overflow:visible}.chore-card-chevron{color:var(--color-ink-muted);transition:transform .18s var(--ease-out);flex:none;display:inline-flex}.chore-card.is-expanded .chore-card-chevron,.dining-card.is-expanded .chore-card-chevron{transform:rotate(180deg)}.chore-card-details{background:linear-gradient(180deg, color-mix(in srgb, var(--color-bg-elevated) 82%, white), var(--color-surface));border:1px solid color-mix(in srgb, var(--chore-day,var(--color-accent)) 22%, var(--color-border));border-radius:12px;gap:.7rem;margin:0 .7rem .8rem .95rem;padding:.75rem .85rem .8rem;display:grid;box-shadow:inset 0 1px #fffaf0a6}.chore-card-hope{gap:.12rem;display:grid}.chore-card-hope-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted);font-size:.7rem;font-weight:800}.chore-card-hope-date{font-family:var(--font-display);color:var(--chore-day-ink,var(--color-ink));font-size:1.2rem;font-weight:650;line-height:1.2}.chore-card-flags{flex-wrap:wrap;gap:.35rem;display:flex}.chore-card-flag{border-radius:999px;align-items:center;padding:.18rem .55rem;font-size:.75rem;font-weight:800;display:inline-flex}.chore-card-flag-together{background:color-mix(in srgb, var(--color-accent) 16%, var(--color-surface));color:var(--color-accent-hover)}.chore-card-flag-open{background:color-mix(in srgb, var(--color-brass) 20%, var(--color-surface));color:var(--color-wood)}.chore-card-flag-done{background:color-mix(in srgb, var(--color-accent-soft) 55%, var(--color-surface));color:var(--color-ink-muted)}.chore-card-note{color:var(--color-ink-muted);margin:0;font-size:.88rem;font-weight:650}.chore-card-bar .chore-card-tools{border-top:0;flex-wrap:nowrap;flex:none;justify-content:flex-end;align-items:center;gap:.15rem;margin-left:auto;padding-top:0;display:flex}.chore-pending-icon{color:var(--color-brass);flex:none;display:inline-flex}.chores-page--with-legend{padding-bottom:calc(3.4rem + var(--nav-height) + env(safe-area-inset-bottom,0px))}.chore-legend{left:0;right:0;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));z-index:55;border-top:1px solid color-mix(in srgb, var(--color-wood) 28%, var(--color-border));background:linear-gradient(#f7ebdaf5,#e8d2b0fa);flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .7rem;margin:0;padding:.35rem .75rem;font-size:.75rem;font-weight:700;display:flex;position:fixed;box-shadow:0 -8px 20px #2f241c1a}.chore-legend__pending{align-items:center;gap:.3rem;display:inline-flex}.chore-legend__day{align-items:center;gap:.25rem;display:inline-flex}.chore-legend__day:before{content:"";background:var(--chore-day,var(--color-accent));border-radius:2px;width:.55rem;height:.85rem}.chore-section-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);margin:0 0 .35rem;font-size:.82rem}.chore-done-section,.grocery-done-section{margin:0}.grocery-done-summary{cursor:pointer;min-height:var(--touch);align-items:center;margin:0;list-style:none;display:flex}.grocery-done-summary::-webkit-details-marker{display:none}.grocery-done-summary:before{content:"▸";color:var(--color-muted);margin-right:.35rem;font-size:.7rem;display:inline-block}.grocery-done-section[open]>.grocery-done-summary:before{content:"▾"}.grocery-done-heading{font-family:var(--font-display);margin:0;font-size:1.05rem;font-weight:650}.chore-section-heading-missed,.follow-through-missed{color:var(--color-danger)}.chore-actions{flex-wrap:nowrap;flex:none;align-items:center;gap:0;display:inline-flex}.chore-add-form{gap:var(--space-2)}.chore-schedule-fields{gap:.7rem}.chore-stop-row{margin:0}.chore-bucket-fieldset{border:0;gap:.4rem;margin:0;padding:0;display:grid}.chore-bucket-grid{flex-wrap:wrap;gap:.4rem;display:flex}.chore-bucket-btn{min-height:var(--touch);min-width:var(--touch);border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 88%, transparent);color:var(--color-ink);font:inherit;cursor:pointer;border-radius:999px;padding:.35rem .9rem;font-size:.875rem;font-weight:800}.chore-bucket-btn.is-selected,.chore-bucket-btn[aria-checked=true]{background:color-mix(in srgb, var(--color-accent) 16%, var(--color-surface));border-color:var(--color-accent);box-shadow:inset 0 0 0 2px var(--color-accent)}.chore-icon-btn{color:var(--color-ink-muted)}.chore-icon-btn:hover,.chore-icon-btn:focus-visible{color:var(--color-ink)}.chore-icon-btn-remove:hover,.chore-icon-btn-remove:focus-visible{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, var(--color-surface))}.chore-due-chip{color:var(--chore-day-ink,var(--color-ink-muted));background:color-mix(in srgb, var(--chore-day,var(--color-accent)) 18%, var(--color-surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--chore-day,var(--color-accent)) 42%, transparent);border-radius:999px;align-items:center;margin-top:0;padding:.12rem .5rem;font-size:.82rem;font-weight:700;display:inline-flex}.chore-weekday-mon{--chore-day:var(--color-accent);--chore-day-ink:#2a3d32}.chore-weekday-tue{--chore-day:var(--color-brass);--chore-day-ink:#5c3f16}.chore-weekday-wed{--chore-day:var(--color-cherry);--chore-day-ink:#6b2e28}.chore-weekday-thu{--chore-day:var(--color-wood);--chore-day-ink:#4a301c}.chore-weekday-fri{--chore-day:#3d6f73;--chore-day-ink:#1f3f42}.chore-weekday-sat{--chore-day:#5c6b3a;--chore-day-ink:#2f3618}.chore-weekday-sun{--chore-day:#8a5340;--chore-day-ink:#4a261c}.chore-week-filter{min-width:11rem;max-width:18rem;margin:0}.chore-due-picker{border:0;min-width:0;margin:0;padding:0}.chore-due-picker .field-label{margin-bottom:.4rem}.chore-due-picker .chore-week-filter{width:100%;max-width:none;margin-bottom:.5rem}.chore-day-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem;display:grid}.chore-day-btn{min-height:var(--touch);border:1px solid color-mix(in srgb, var(--chore-day) 35%, var(--color-border));background:color-mix(in srgb, var(--chore-day) 10%, var(--color-surface));min-width:0;color:var(--chore-day-ink);font:inherit;cursor:pointer;border-radius:10px;padding:.25rem .15rem;font-size:.72rem;font-weight:800}.chore-day-btn.is-selected,.chore-day-btn[aria-pressed=true]{background:color-mix(in srgb, var(--chore-day) 32%, var(--color-surface));box-shadow:inset 0 0 0 2px var(--chore-day)}.chore-day-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;color:var(--color-muted);background:color-mix(in srgb, var(--color-border) 28%, var(--color-surface));border-color:color-mix(in srgb, var(--color-border) 80%, transparent)}.chore-assignee-fieldset{border:0;gap:.35rem;margin:0;padding:0;display:grid}.chore-assignee-row{margin:0}.chore-shared-board{border-color:color-mix(in srgb, var(--color-accent) 28%, var(--color-border))}@media (prefers-reduced-motion:reduce){.chore-day-btn,.chore-card-chevron{transition:none}}.follow-through-missed li{border-bottom:1px solid color-mix(in srgb, var(--color-danger) 18%, var(--color-border));padding:.35rem 0}.follow-through-card{border-color:color-mix(in srgb, var(--color-border) 70%, var(--color-honey,#e4b15a))}.page-title-row{justify-content:space-between;align-items:center;gap:var(--space-2)}.btn-compact{min-height:var(--touch);padding:.25rem .7rem;font-size:.8125rem}.btn-icon{width:var(--touch);padding:0;font-size:1.25rem;font-weight:500;line-height:1}.page-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.page-head h2{margin:0}.grocery-hub-toolbar{flex-wrap:wrap;align-items:center;gap:.15rem .75rem;display:flex}.grocery-hub-toolbar .text-link{white-space:nowrap;flex:none}.grocery-hub-toolbar .btn{white-space:nowrap;flex:none;width:auto;margin-left:auto}.meal-form-name-row{flex:1;align-items:center;gap:.25rem;min-width:0;display:flex}.meal-form-name-input{min-width:0;min-height:var(--touch);font-family:var(--font-display);border:1px solid var(--color-border);background:var(--color-surface);color:inherit;flex:1;margin:0;padding:.35rem .4rem;font-size:1.35rem;font-weight:700;line-height:1.2}.page-head__meta{flex-wrap:wrap;align-items:center;gap:.15rem .75rem;display:flex}.text-link{min-height:var(--touch);color:var(--color-accent);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 .1rem;font-family:inherit;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.text-link:hover,.text-link:focus-visible{color:var(--color-accent-hover)}.page-hint{margin:0;font-size:.82rem}.page-hint summary{cursor:pointer;color:var(--color-ink-muted);min-height:var(--touch);align-items:center;font-weight:700;list-style:none;display:inline-flex}.page-hint summary::-webkit-details-marker{display:none}.page-hint summary:before{content:"▸";margin-right:.35rem;font-size:.7rem;display:inline-block}.page-hint[open] summary:before{content:"▾"}.page-hint__body{padding:0 0 var(--space-2);color:var(--color-ink-muted);line-height:1.4}.page-hint__body p{margin:0}.empty-start{gap:var(--space-2);padding:var(--space-2) 0;display:grid}.empty-start h2{margin:0}.empty-start__lede{margin:0;font-size:.88rem}.empty-start__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.inline-status{justify-content:space-between;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--color-accent) 22%, var(--color-border));background:color-mix(in srgb, var(--color-accent) 6%, var(--color-bg-elevated));flex-wrap:wrap;margin:0;padding:.45rem .7rem;font-size:.88rem;display:flex}.week-pager{flex-shrink:0;justify-content:flex-start;align-items:center;gap:.25rem;display:flex}.week-pager .btn-icon{flex:0 0 var(--touch)}.sample-suggestions-row{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--touch);border-bottom:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);padding:0 .15rem;display:flex}.sample-suggestions-row:last-child{border-bottom:0}.segmented{background:color-mix(in srgb, var(--color-bg-deep) 55%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-border) 85%, transparent);border-radius:14px;flex-wrap:wrap;gap:0;padding:.2rem;display:inline-flex}.segmented__btn{appearance:none;color:var(--color-ink-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;min-height:2.5rem;padding:.35rem .85rem;font-size:.88rem;font-weight:700}.segmented__btn:hover,.segmented__btn:focus-visible{color:var(--color-ink);background:color-mix(in srgb, var(--color-surface) 80%, transparent);outline:none}.segmented__btn.is-active,.segmented__btn--primary{color:var(--color-accent);background:linear-gradient(180deg, var(--color-accent-soft), #eef5f0);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 18%, transparent)}.segmented__btn--danger.is-active{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, white);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-danger) 28%, transparent)}.segmented.inventory-tabs{width:100%;display:flex}.segmented.inventory-tabs .segmented__btn{text-align:center;flex:1 1 0}.segmented.stock-sections{flex-wrap:wrap;gap:.2rem}.segmented.stock-sections .segmented__btn{flex:calc(33.33% - .2rem);min-width:5.4rem;min-height:2.75rem;padding:.35rem .5rem;font-size:.82rem}.requests-view .segmented__btn{min-height:2.75rem}.segmented--status{width:100%}.segmented--status .segmented__btn{flex:1 1 0}.sort-week-controls{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap}.sort-week-field{flex:12rem;margin:0}.sort-review-meta{justify-content:space-between;align-items:center}.sort-store-heading{margin:0;font-size:1.05rem}.sort-page{gap:var(--space-2)}.sort-plan-date{max-width:16rem}.sort-plan-date .input{min-height:var(--touch);font-size:1rem}.sort-need-list{flex-direction:column;gap:.2rem;display:flex}.sort-need-row{border:1px solid color-mix(in srgb, var(--color-border) 90%, transparent);background:color-mix(in srgb, var(--color-surface) 92%, white);border-radius:10px;flex-direction:column;gap:0;padding:0;display:flex}.sort-need-row.is-proposed{border-color:color-mix(in srgb, var(--color-brass) 40%, var(--color-border))}.sort-need-row.is-kept{border-color:color-mix(in srgb, var(--color-accent) 40%, var(--color-border));background:color-mix(in srgb, var(--color-accent) 7%, var(--color-surface))}.sort-need-row.is-skipped{opacity:.72}.sort-need-bar{min-height:var(--touch);flex-direction:row;align-items:center;gap:.35rem;padding:0 .3rem 0 .4rem;display:flex}.sort-need-bar .chore-card-toggle{padding:0}.sort-need-label{font-size:.95rem}.sort-need-store{flex:0 9.25rem;min-width:7rem;margin:0}.sort-need-store select{min-height:var(--touch);width:100%;padding:.3rem .45rem;font-size:1rem}.sort-need-details{gap:.45rem;padding:0 .55rem .5rem;display:grid}.sort-need-meta{margin:0;font-size:.88rem}.sort-need-row.is-expanded .chore-card-chevron{transform:rotate(180deg)}.sort-inline-field{min-width:7.5rem;margin:0}.sort-inline-field select{min-height:2.5rem;padding:.35rem .55rem;font-size:.88rem}.sort-preview-list li{padding:.35rem 0}.sort-builder-tools{align-items:flex-end;gap:var(--space-2) .75rem;flex-wrap:wrap;display:flex}.sort-builder-tools .ingredient-picker{flex:12rem;min-width:0}.sort-builder-tools .ingredient-picker--add{gap:.35rem}.sort-builder-tools .btn{flex:none}.stack--with-sticky-bar{padding-bottom:calc(var(--dock-sticky) + var(--space-5))}.sticky-action-bar{width:min(100%, var(--shell-max));left:50%;right:auto;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));z-index:55;min-height:var(--touch);background:color-mix(in srgb, var(--color-surface) 92%, #f7ebdaf5);border-top:1px solid color-mix(in srgb, var(--color-wood) 22%, var(--color-border));pointer-events:auto;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;padding:.25rem .75rem;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 -4px 12px #2f241c0f}.sticky-action-bar .btn{pointer-events:auto}.sticky-action-bar__meta{flex:auto;min-width:0;margin:0;font-size:.8rem;line-height:1.25}.flow-handoff{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.meal-list-row{gap:var(--space-2);display:grid}.meal-plan-link{justify-self:start}.notes-disclosure,.inventory-add{margin:0}.notes-disclosure>summary,.inventory-add>summary{cursor:pointer;color:var(--color-ink-muted);min-height:var(--touch);align-items:center;font-weight:700;display:inline-flex}.grocery-trip-group{gap:var(--space-3);display:grid}.grocery-trip-group>h3{font-family:var(--font-display);color:var(--color-ink-muted);margin:0;font-size:1.05rem;font-weight:650}.grocery-hub-trips{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.grocery-hub-card{padding:0;position:relative;overflow:hidden}.grocery-hub-card.panel:before{background:var(--grocery-hub-accent,var(--color-accent));opacity:1;width:6px}.grocery-hub-card--herb{--grocery-hub-accent:var(--color-accent)}.grocery-hub-card--honey{--grocery-hub-accent:var(--color-brass)}.grocery-hub-card--wood{--grocery-hub-accent:var(--color-wood)}.grocery-hub-card--cherry{--grocery-hub-accent:var(--color-cherry)}.grocery-hub-card-head{min-height:var(--touch);padding:var(--space-3) var(--space-4) var(--space-3) calc(var(--space-4) + .15rem);color:inherit;background:linear-gradient(180deg, color-mix(in srgb, var(--grocery-hub-accent,var(--color-accent)) 14%, var(--color-surface)), color-mix(in srgb, var(--color-bg-elevated) 70%, transparent) 100%);border-bottom:1px solid color-mix(in srgb, var(--grocery-hub-accent,var(--color-border)) 28%, var(--color-border));flex-direction:row;justify-content:space-between;align-items:flex-start;gap:.5rem .75rem;text-decoration:none;display:flex}.grocery-hub-card-main{min-width:0;color:inherit;flex-direction:column;flex:auto;justify-content:center;gap:.35rem;text-decoration:none;display:flex}.grocery-hub-card-main:after{content:"";position:absolute;inset:0}.grocery-hub-card-main:hover .grocery-hub-store,.grocery-hub-card-main:focus-visible .grocery-hub-store{color:var(--color-accent-hover)}.grocery-hub-store{font-family:var(--font-display);color:var(--color-ink);font-size:1.28rem;font-weight:650;line-height:1.2}.grocery-hub-card-sub{flex-wrap:wrap;align-items:center;gap:.4rem .7rem;display:flex}.grocery-hub-date{margin:0}.grocery-hub-progress{color:var(--color-ink-muted);font-size:.85rem;font-weight:700}.grocery-hub-empty{padding:var(--space-3) var(--space-4) var(--space-4);pointer-events:none;margin:0}.grocery-hub-items{pointer-events:none;flex-direction:column;gap:.06rem;margin:0;padding:.2rem .55rem .4rem;list-style:none;display:flex}.grocery-hub-item{min-height:0;box-shadow:none;background:0 0;border-radius:0;flex-direction:row;align-items:center;gap:.35rem;padding:0;display:flex}.grocery-hub-item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-body);color:var(--color-ink);flex:auto;font-size:.84rem;font-weight:700;line-height:1.15;overflow:hidden}.grocery-hub-item-measure{text-overflow:ellipsis;white-space:nowrap;text-align:right;flex:none;max-width:42%;font-size:.78rem;font-weight:650;overflow:hidden}.grocery-hub-item.is-checked{opacity:.64;background:color-mix(in srgb, var(--color-bg-deep) 32%, var(--color-surface))}.grocery-hub-item.is-checked .grocery-hub-item-name{text-decoration:line-through}.inventory-manage{margin:0}.inventory-manage summary{cursor:pointer;color:var(--color-ink-muted);margin-bottom:var(--space-2);font-weight:700}.inventory-location-pick{min-width:10rem;margin:0}.inventory-reconcile-label{margin-bottom:var(--space-2)}.auth-screen{min-height:100dvh;padding:var(--space-5);background:radial-gradient(75% 55% at 50% -5%,#ffecc8d9,#0000 58%),radial-gradient(55% 45% at 95% 90%,#45665147,#0000 55%),radial-gradient(45% 35% at 5% 80%,#b9863f38,#0000 55%),linear-gradient(#f0d8b4 0%,#e2c496 48%,#c9a878 100%);place-items:center;display:grid;position:relative;overflow:hidden}.auth-atmosphere{border:1px solid color-mix(in srgb, var(--color-brass) 35%, transparent);pointer-events:none;background:radial-gradient(70% 50% at 50% 15%,#fff6e68c,#0000 65%),linear-gradient(165deg,#f7ebda47,#45665114);border-radius:28px;animation:5s ease-in-out infinite alternate soft-glow;position:absolute;inset:6% 8%;box-shadow:inset 0 0 0 1px #fff8eb33}.auth-atmosphere:before,.auth-atmosphere:after{content:none}.auth-hero{align-items:center;gap:var(--space-4);width:min(100%,26rem);animation:fade-up .52s var(--ease-out);flex-direction:column;display:flex;position:relative}.auth-form{width:100%;padding:var(--space-6) var(--space-5)}.auth-sent{width:100%;padding:var(--space-6) var(--space-5);text-align:center}.auth-sent-title{font-family:var(--font-display);margin:0;font-size:1.15rem;font-weight:650}.auth-sent-detail{margin:0}.auth-copy{color:var(--color-ink);text-align:center;text-shadow:0 1px #fff4dc59;max-width:22rem;margin:0;font-size:1.05rem;line-height:1.45}.auth-footnote{text-align:center;font-family:var(--font-display);color:var(--color-ink);text-shadow:0 1px #fff4dc59;max-width:22rem;margin:0;font-size:.95rem;font-style:italic;font-weight:650}.ingredient-chips{flex-flow:column;align-items:stretch;gap:0;width:100%;min-height:0;display:flex}.ingredient-chip{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--color-accent) 22%, var(--color-border));background:color-mix(in srgb, var(--color-accent-soft) 55%, var(--color-surface));min-height:2.25rem;color:var(--color-ink);font:inherit;cursor:pointer;align-items:center;gap:.4rem;padding:.35rem .75rem;font-weight:600;display:inline-flex}.ingredient-chip__main{flex-direction:column;align-items:flex-start;gap:.05rem;line-height:1.2;display:inline-flex}.ingredient-chip__dept{font-size:.75rem;font-weight:500}.ingredient-chip:hover{border-color:var(--color-accent)}.ingredient-refine{flex-direction:column;gap:.85rem;padding:.9rem 1rem;display:flex}.ingredient-refine__title{font-family:var(--font-display);margin:0;font-size:1.15rem}.ingredient-refine__set{border:0;min-inline-size:0;margin:0;padding:0}.ingredient-refine__set legend{margin-bottom:.4rem;font-weight:700}.ingredient-refine__chips{flex-wrap:wrap;gap:.45rem;display:flex}.ingredient-refine__chip{min-height:var(--touch);border:1px solid var(--color-border-strong);background:color-mix(in srgb, var(--color-surface) 80%, var(--color-accent-soft));color:var(--color-ink);font:inherit;cursor:pointer;border-radius:999px;padding:.35rem .85rem;font-weight:650}.ingredient-refine__chip.is-selected{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent-soft) 70%, var(--color-surface))}.ingredient-refine__chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ingredient-combobox,.eatout-place__box{position:relative}.eatout-place__group{letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-muted);padding:.4rem .75rem .15rem;font-size:.72rem;font-weight:800}.ingredient-suggestions{z-index:20;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);max-height:14rem;box-shadow:var(--shadow-lift);margin:.35rem 0 0;padding:.25rem;list-style:none;position:absolute;left:0;right:0;overflow:auto}.ingredient-suggestions button{width:100%;min-height:var(--touch);text-align:left;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:.55rem .75rem;font-weight:650}.ingredient-suggestions button:hover,.ingredient-suggestions button:focus-visible{background:color-mix(in srgb, var(--color-accent-soft) 65%, transparent)}.ingredient-suggestions__create{color:var(--color-accent)!important}.ingredient-suggestions__pinned{z-index:1;background:var(--color-surface);position:sticky;top:0}.confirm-dialog--ingredient-new{width:min(100%,24rem)}.confirm-dialog--ingredient-new .field{margin:0}.ingredient-library-list{gap:var(--space-2)}.ingredient-library-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);display:flex}.toast-region{left:50%;bottom:calc(var(--nav-height) + 1rem + env(safe-area-inset-bottom,0px));z-index:80;pointer-events:none;width:min(92vw,28rem);position:fixed;transform:translate(-50%)}.toast{background:var(--color-ink);color:#fffaf4;text-align:center;box-shadow:var(--shadow-soft);animation:fade-up .28s var(--ease-out);border-radius:999px;padding:.85rem 1.15rem}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes brand-settle{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes soft-glow{0%{opacity:.65;transform:scale(1)}to{opacity:1;transform:scale(1.04)}}.page-stack{gap:var(--space-5)}.page-header{box-shadow:none;background:0 0;border:0;border-radius:0;margin-bottom:0;padding:0}.page-header h1{margin:0 0 var(--space-2)}.lede{max-width:40rem;margin:0;line-height:1.5}.calendar-toolbar{justify-content:flex-start;align-items:center;gap:var(--space-2);min-width:0;max-width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;flex-flow:row;padding:0;display:flex}.calendar-toolbar .week-pager{flex:auto;justify-content:flex-start;width:auto;min-width:0}.week-day-card--readable .week-meal-line__title{white-space:normal;text-overflow:unset;-webkit-line-clamp:unset;display:block;overflow:visible}.plan-agenda{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.plan-agenda__hit{border:1px solid color-mix(in srgb, var(--color-border) 80%, var(--color-wood));width:100%;min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:linear-gradient(165deg,#fcf3e4fa,#f4e4ccf0);border-radius:14px;flex-direction:column;gap:.35rem;padding:.7rem .85rem;display:flex}.plan-agenda__hit:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.plan-agenda__head{align-items:baseline;gap:.4rem;display:flex}.plan-agenda__dow{font-weight:800}.plan-day-chip{flex:none;align-items:baseline;gap:.35rem;width:fit-content;max-width:100%;display:inline-flex}.plan-day-chip.is-today{border:1px solid color-mix(in srgb, var(--color-accent) 55%, var(--color-wood));border-radius:999px;padding:.05rem .5rem .08rem}.plan-day-chip__today,.plan-agenda__today{color:var(--color-accent);margin-left:0;font-size:.8rem;font-weight:700}.app-header-crumbs{flex:auto;min-width:0;max-width:100%;overflow:hidden}.app-header-crumbs ol{flex-wrap:nowrap;align-items:baseline;gap:.15rem .35rem;min-width:0;max-width:100%;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.app-header-crumbs li{flex:none;align-items:baseline;gap:.35rem;min-width:max-content;display:inline-flex}.app-header-crumbs li:not(:last-child){flex:none;min-width:max-content}.app-header-crumbs li:last-child{flex:auto;min-width:0;overflow:hidden}.app-header-crumbs [aria-current=page]{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;display:block;overflow:hidden}.app-header-crumbs a{color:inherit;white-space:nowrap;font-weight:800}.app-header-crumb-sep{color:var(--color-ink-muted);flex:none;font-weight:700}.plan-agenda__meals{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.plan-agenda__meal{align-items:flex-start;gap:.45rem;min-width:0;display:flex}.plan-agenda__title{white-space:normal;min-width:0;font-weight:700}.grocery-request-banner{box-sizing:border-box;height:var(--touch);max-height:var(--touch);white-space:nowrap;text-overflow:ellipsis;border:1px solid color-mix(in srgb, var(--color-danger) 35%, var(--color-wood));background:color-mix(in srgb, var(--color-danger) 10%, var(--color-bg-elevated));color:inherit;border-radius:10px;align-items:center;padding:0 .75rem;font-size:.88rem;font-weight:800;line-height:1.2;text-decoration:none;display:flex;overflow:hidden}.grocery-trip-meta{flex-wrap:wrap;gap:.5rem .85rem;display:flex}.grocery-trip-date-edit{flex-wrap:wrap;align-items:flex-end;gap:.25rem .75rem;margin-top:.35rem;display:flex}.grocery-trip-date-edit .field{flex:0 11.5rem;margin:0}.grocery-trip-date-edit input[type=date]{min-height:var(--touch);width:100%;font-size:1rem}.grocery-trip-date-edit .grocery-trip-meta{flex:100%}.grocery-trip-date{font:inherit}.grocery-check-edit-panel{min-width:0;padding:.55rem .2rem .2rem}.grocery-check-edit-actions{flex-wrap:wrap;gap:.75rem;display:flex}.grocery-hub-complete,.grocery-hub-status{z-index:2;flex:none;align-self:flex-start;width:auto;margin:0;position:relative}.grocery-hub-status{min-height:var(--touch);align-items:center;padding:0;font-size:.85rem;font-weight:700;display:inline-flex}.grocery-trip-page{gap:var(--space-2);padding-bottom:calc(var(--touch) + 1.25rem)}.grocery-trip-toolbar{align-items:stretch;gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.grocery-trip-progress-row{align-items:center;gap:.35rem;width:100%;min-width:0;display:flex}.grocery-trip-progress-row .grocery-trip-add{flex:none;width:auto;margin-left:auto}.grocery-trip-toolbar__id{flex-wrap:wrap;flex:auto;align-items:center;gap:.25rem .65rem;min-width:0;display:flex}.grocery-trip-store{font-family:var(--font-display);margin:0;font-size:1.05rem;font-weight:700;line-height:1.2}.grocery-trip-toolbar__id .store-select{flex:0 12rem;gap:0;min-width:0}.grocery-trip-toolbar__id .store-select select{font-family:var(--font-display);min-height:var(--touch);font-size:1.05rem;font-weight:700}.grocery-trip-date-input{width:auto;min-height:var(--touch);flex:0 11rem;font-size:1rem}.grocery-trip-progress{white-space:nowrap;flex:none}.grocery-trip-toolbar .grocery-trip-meta{flex-wrap:wrap;align-items:center;gap:.25rem .65rem;margin:0;display:flex}.grocery-trip-toolbar__actions{flex-wrap:wrap;align-items:center;gap:.15rem .65rem;margin-left:auto;display:flex}.grocery-trip-toolbar__actions .btn{flex:none;width:auto}.grocery-trip-finish{z-index:55;left:0;right:0;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));padding:.2rem max(.75rem, env(safe-area-inset-right,0px)) .45rem max(.75rem, env(safe-area-inset-left,0px));border-top:1px solid color-mix(in srgb, var(--color-wood) 32%, var(--color-border));background:linear-gradient(#f7ebdaf5,#e8d2b0fa);flex-direction:column;gap:.15rem;display:flex;position:fixed;box-shadow:0 -8px 20px #2f241c1a}.grocery-trip-finish__complete{width:100%}.day-plan-page{min-width:0;overflow-x:clip}.day-plan-page,.day-plan-page .day-slot-list,.day-plan-page .slot-card,.day-plan-page .day-slot-editor-head,.day-plan-page .day-slot-editor-title,.day-plan-page .row,.day-plan-page .meal-pick__row,.day-plan-page .day-plan-time-row,.day-plan-page .day-plan-reservation-row,.day-plan-page .week-pager--day,.day-plan-page .week-pager__meal-title,.grocery-draft-row{min-width:0;max-width:100%}.day-plan-page .day-slot-editor-head,.day-plan-page .day-slot-editor-title{flex-wrap:nowrap}.day-plan-page .meal-pick__row,.day-plan-page .meal-pick__row .eatout-place__box,.day-plan-page .meal-pick__row>*{min-width:0}.grocery-draft-row{flex-wrap:wrap}.trip-wizard__progress{margin:0;font-weight:700}.trip-wizard-nav{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.trip-wizard-nav .btn{flex:none;width:auto}.trip-item-composer{flex-direction:column;gap:.55rem;display:flex}.trip-item-searchbar{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.trip-item-kind{flex:none}.trip-item-kind .segmented__btn{min-height:var(--touch)}.trip-item-searchbar__main{flex-wrap:nowrap;flex:14rem;align-items:center;gap:.4rem;min-width:0;display:flex}.trip-item-searchbar__main .ingredient-combobox{flex:auto;min-width:0}.trip-item-qty{flex:0 0 5.25rem;width:5.25rem}.trip-item-composer__add{justify-content:flex-end;display:flex}.trip-item-composer__add .btn-primary{flex:none;width:auto}.trip-draft-list{flex-direction:column;gap:.35rem;margin:0;padding:0;display:flex}.trip-draft-line{flex-flow:row;align-items:center;gap:.4rem;min-width:0;display:flex}.trip-draft-line__name{flex:auto;min-width:0;font-weight:700}.trip-draft-line__qty{flex:0 0 5.25rem;width:5.25rem}.meal-recipe-links{flex-direction:column;gap:.25rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}.meal-recipe-links a{word-break:break-word}.calendar-toolbar .week-pager--day,.week-pager--day{flex-wrap:nowrap;flex-shrink:1;justify-content:flex-start;gap:.2rem;min-width:0;max-width:100%}.week-pager--day{width:100%}.week-pager__weekly{width:auto;min-height:var(--touch);white-space:nowrap;flex:none;margin-left:auto;text-decoration:none}.week-pager__weekly:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.week-pager--day .week-pager__label{text-align:left;justify-content:flex-start;padding-left:.25rem}.week-pager__meal-title{overflow-wrap:normal;white-space:nowrap;text-overflow:ellipsis;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:none;cursor:default;flex:auto;min-width:0;max-width:100%;display:block;overflow:auto hidden}.week-pager__meal-title::-webkit-scrollbar{width:0;height:0;display:none}.week-pager__meal-title:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.week-pager__meal-title-text{white-space:nowrap}.calendar-toolbar h2{overflow-wrap:anywhere;font-size:1.15rem}.week-pager__label{min-height:var(--touch);min-width:0;color:inherit;font-family:var(--font-display);text-align:left;overflow-wrap:anywhere;background:0 0;border:0;flex:0 auto;justify-content:flex-start;align-items:center;margin:0;padding:0 .4rem;font-size:1.15rem;font-weight:700;line-height:1.2;display:flex}.week-pager__label--jump{cursor:pointer;border-radius:var(--radius-sm)}.week-pager__label--jump:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.page-head__meta .btn{flex:none;width:auto}.week-plan{gap:var(--space-2);min-width:0;max-width:100%;display:grid}.week-plan__legend{flex-wrap:wrap;align-items:center;gap:.35rem .65rem;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}.week-plan__legend-item{align-items:center;gap:.2rem;margin:0;display:inline-flex}.week-plan__legend .week-meal-mark{margin-right:0}.plan-coach{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius);background:linear-gradient(165deg, color-mix(in srgb, var(--color-surface) 88%, #fff8ee), color-mix(in srgb, var(--color-brass-soft) 22%, var(--color-bg-elevated)));box-shadow:var(--shadow-soft);display:grid}.plan-coach h2{margin:0}.plan-coach__lede{max-width:36rem;margin:0;line-height:1.5}.plan-coach__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.plan-coach-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid}.plan-coach-day{min-height:var(--touch);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-surface) 80%, white);color:inherit;font:inherit;flex-direction:column;align-items:center;gap:.15rem;padding:.4rem .2rem;text-decoration:none;display:flex}.plan-coach-day--today{border-color:color-mix(in srgb, var(--color-accent) 45%, var(--color-border));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 18%, transparent)}.plan-coach-day__dow{letter-spacing:.04em;text-transform:uppercase;color:var(--color-wood);font-size:.68rem;font-weight:800}.plan-coach-day__num{font-family:var(--font-display);font-size:1.1rem;font-weight:700;line-height:1}.plan-coach-day__badge{letter-spacing:.05em;text-transform:uppercase;color:var(--color-accent);font-size:.58rem;font-weight:800}.plan-tip{width:min(100% - 1.5rem,22rem);left:50%;bottom:calc(var(--nav-height) + 4.35rem + env(safe-area-inset-bottom,0px));z-index:56;gap:var(--space-3);border:1px solid color-mix(in srgb, var(--color-accent) 28%, var(--color-border));border-radius:var(--radius);background:linear-gradient(180deg, #fff8ee, var(--color-surface));box-shadow:var(--shadow-lift);padding:.85rem 1rem;display:grid;position:fixed;transform:translate(-50%)}.plan-tip:before{content:"";border-left:1px solid color-mix(in srgb, var(--color-accent) 28%, var(--color-border));border-top:1px solid color-mix(in srgb, var(--color-accent) 28%, var(--color-border));background:#fff8ee;width:.8rem;height:.8rem;position:absolute;top:-.45rem;left:1.4rem;transform:rotate(45deg)}.plan-tip__title{font-family:var(--font-display);margin:0;font-size:1.15rem;font-weight:700}.plan-tip__body{color:var(--color-ink-muted);margin:0;line-height:1.45}.plan-tip__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.coach-target{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 45%, transparent);animation:coach-pulse 1.6s var(--ease-out) infinite}@keyframes coach-pulse{50%{box-shadow:0 0 0 7px color-mix(in srgb, var(--color-accent) 12%, transparent)}}@media (prefers-reduced-motion:reduce){.coach-target{animation:none}}.week-plan__strip{grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch;gap:.25rem;width:100%;min-width:0;max-width:100%;display:grid}.plan-week-carousel-wrap{grid-template-rows:auto auto;gap:.55rem;min-width:0;display:grid}.plan-week-carousel__nav{justify-content:center;align-items:center;gap:.75rem;display:flex}.plan-week-carousel{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;isolation:isolate;gap:.5rem;max-width:100%;margin-inline:-.15rem;padding-inline:7%;scroll-padding-inline:7%;display:flex;overflow:auto hidden}.plan-week-carousel:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.plan-week-carousel__slide{scroll-snap-align:center;scroll-snap-stop:always;flex-direction:column;flex:0 0 86%;min-width:0;max-width:24rem;display:flex}.plan-week-carousel__slide.is-peek{filter:blur(2.5px);opacity:.58;transition:filter .18s,opacity .18s,transform .18s;transform:scale(.96)}.plan-week-carousel__slide.is-center{filter:none;opacity:1;z-index:1;transform:none}.plan-week-carousel__slide .week-day-card{flex:auto;min-height:100%}.plan-week-carousel__slide .week-day-card__body{text-align:left;align-items:stretch;padding:.55rem .7rem .7rem}.plan-week-carousel__slide .week-day-card__header{flex-direction:row;justify-content:flex-start;align-items:baseline}.plan-week-carousel__slide .week-meal-line{grid-template-columns:auto minmax(0,1fr);justify-items:start}.plan-week-carousel__slide .week-meal-line__title,.plan-week-carousel__slide .week-day-card__shop-stores{white-space:normal;text-overflow:unset;-webkit-line-clamp:unset;font-size:.95rem;display:block;overflow:visible}@media (prefers-reduced-motion:reduce){.plan-week-carousel__slide.is-peek{filter:none;opacity:.62;transition:none;transform:none}.plan-week-carousel{scroll-behavior:auto}}.week-plan__strip>.week-day-card{min-width:0}@media (width<=639px){.stack--with-plan-legend{padding-bottom:calc(var(--dock-legend) + var(--space-5))}.week-plan{padding-bottom:0}.week-plan__legend{left:0;right:0;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));z-index:55;border-top:1px solid color-mix(in srgb, var(--color-wood) 28%, var(--color-border));background:linear-gradient(#f7ebdaf5,#e8d2b0fa);justify-content:center;gap:.3rem .55rem;margin:0;padding:.4rem .75rem;position:fixed;box-shadow:0 -8px 20px #2f241c1a}}@media (width>=640px){.week-plan__strip{gap:var(--space-2)}}.week-day-card{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:linear-gradient(165deg, color-mix(in srgb, var(--color-surface) 88%, #fff8ee), color-mix(in srgb, var(--color-brass-soft) 28%, var(--color-bg-elevated)));cursor:pointer;flex-direction:column;min-width:0;min-height:100%;margin:0;padding:0;display:flex;position:relative;box-shadow:inset 0 1px #fff8eb73}.week-day-card--past{opacity:.62;filter:saturate(.72);border-color:color-mix(in srgb, var(--color-border) 80%, var(--color-ink-muted));background:linear-gradient(165deg, color-mix(in srgb, var(--color-surface) 70%, #ebe3d6), color-mix(in srgb, var(--color-bg-elevated) 80%, #ddd3c4));box-shadow:none}.week-day-card--today{border-color:color-mix(in srgb, var(--color-accent) 70%, var(--color-wood));box-shadow:var(--shadow-lift), inset 0 0 0 2px color-mix(in srgb, var(--color-accent) 34%, transparent);background:linear-gradient(165deg, color-mix(in srgb, var(--color-accent-soft) 48%, #fff8ee), color-mix(in srgb, var(--color-brass-soft) 36%, #f3e2c4))}.week-day-card--filled{background:linear-gradient(165deg, color-mix(in srgb, var(--color-accent-soft) 32%, #fcf3e4), color-mix(in srgb, var(--color-brass-soft) 26%, #f1e1c8))}.week-day-card__hit{z-index:0;border-radius:inherit;width:100%;height:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;position:absolute;inset:0}.week-day-card__hit:focus-visible{outline:none}.week-day-card:has(.week-day-card__hit:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.week-day-card__body{z-index:1;width:100%;min-height:var(--touch);text-align:left;flex-direction:column;flex:auto;gap:.45rem;margin:0;padding:.55rem .6rem .65rem;display:flex;position:relative}.week-day-card__header{flex-wrap:wrap;align-items:baseline;gap:.35rem;margin:0;display:flex}.week-day-card__when{flex-wrap:wrap;align-items:baseline;gap:.55rem;display:flex}.week-day-card__dow{letter-spacing:.04em;text-transform:uppercase;color:var(--color-wood);font-size:.72rem;font-weight:800}.week-day-card__num{font-family:var(--font-display);font-size:1.2rem;font-weight:700;line-height:1}.week-day-card__badge{letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);background:color-mix(in srgb, var(--color-accent-soft) 70%, white);border:1px solid color-mix(in srgb, var(--color-accent) 25%, transparent);border-radius:999px;padding:.12rem .4rem;font-size:.62rem;font-weight:800}.week-day-card__meals{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.week-meal-line{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.35rem;min-width:0;display:grid}.week-meal-line__title{overflow-wrap:anywhere;font-size:.86rem;font-weight:700;line-height:1.25}.week-meal-mark{letter-spacing:.02em;border:1px solid #0000;border-radius:.4rem;flex-shrink:0;justify-content:center;align-items:center;min-width:1.35rem;height:1.35rem;padding:0 .28rem;font-size:.68rem;font-weight:800;line-height:1;display:inline-flex}.week-meal-mark svg{width:.95rem;height:.95rem;display:block}.week-meal-mark--breakfast{color:#6a4a1c;background:color-mix(in srgb, var(--color-brass-soft) 75%, white);border-color:color-mix(in srgb, var(--color-brass) 35%, transparent)}.week-meal-mark--lunch{color:var(--color-accent-hover);background:color-mix(in srgb, var(--color-accent-soft) 78%, white);border-color:color-mix(in srgb, var(--color-accent) 30%, transparent)}.week-meal-mark--dinner{color:#6e322a;background:color-mix(in srgb, var(--color-cherry-soft) 80%, white);border-color:color-mix(in srgb, var(--color-cherry) 32%, transparent)}.week-meal-mark--dessert{color:#5c3a16;background:color-mix(in srgb, var(--color-honey,#e8b86d) 70%, white);border-color:color-mix(in srgb, var(--color-brass) 40%, transparent)}.week-meal-mark--home{color:#2f5d3a;background:color-mix(in srgb, var(--color-accent-soft) 70%, white);border-color:color-mix(in srgb, var(--color-accent) 32%, transparent)}.week-meal-mark--out{color:var(--color-wood);background:color-mix(in srgb, var(--color-wood-light) 45%, white);border-color:color-mix(in srgb, var(--color-wood) 28%, transparent);min-width:1.7rem;font-size:.58rem}.week-meal-mark--shop{color:#2f5d3a;background:color-mix(in srgb, var(--color-accent-soft) 48%, #eef6ef);border-color:color-mix(in srgb, var(--color-accent) 36%, transparent)}.week-meal-mark--open{color:var(--color-ink-muted);background:color-mix(in srgb, var(--color-bg-deep) 35%, white);border-color:var(--color-border)}.week-day-card__empty{margin:0;font-size:.82rem}.week-day-card__shop{align-items:center;gap:.3rem;margin:auto 0 0;padding-top:.15rem;font-size:.72rem;line-height:1.25;display:flex}.week-day-card__shop-stores{overflow-wrap:anywhere;min-width:0}@media (width<=639px){.week-day-card__hit{text-align:left}.week-day-card__body{text-align:left;align-items:stretch;gap:.35rem;padding:.55rem .7rem .7rem}.week-day-card__header{flex-direction:row;justify-content:flex-start;align-items:baseline;gap:.35rem}.week-day-card__dow{font-size:.72rem}.week-day-card__num{font-size:1.2rem}.week-day-card__badge,.week-plan__strip .week-day-card__shop-stores,.week-plan__strip .week-meal-line__title{display:none}.plan-week-carousel__slide .week-meal-line__title,.plan-week-carousel__slide .week-day-card__shop-stores{display:block}.week-day-card__shop{justify-content:flex-start;margin:0;padding-top:.15rem}.week-day-card__meals{justify-items:start;width:100%}.week-meal-line{grid-template-columns:auto minmax(0,1fr);justify-items:start}.week-meal-mark{min-width:1.15rem;height:1.15rem;padding:0 .1rem;font-size:.58rem}.week-meal-mark--out{min-width:1.15rem;font-size:.48rem}.week-plan:has(.plan-week-carousel-wrap){min-height:calc(100svh - var(--nav-height) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--dock-legend) - 6.5rem);flex-direction:column;display:flex}.bottom-nav{visibility:visible;position:fixed;bottom:0}.plan-week-carousel-wrap{flex-direction:column;flex:auto;justify-content:safe center;min-height:0;display:flex}}.day-focus__meals{gap:.45rem;margin:0;padding-left:1.15rem;font-size:1.05rem;display:grid}.settings-member-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.settings-member-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding-block:var(--space-2);border-bottom:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);display:flex}.settings-member-row:last-child{border-bottom:none}.settings-member-main{flex-direction:column;gap:.15rem;min-width:0;display:flex}.settings-member-email{word-break:break-word;font-weight:650}.settings-member-meta{font-size:.88rem}.settings{gap:var(--space-5);flex-direction:column;display:flex}.settings-hero{flex-direction:column;gap:.35rem;display:flex}.settings-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);margin:0;font-size:.72rem;font-weight:700}.settings-hero h1{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.02em;margin:0;font-size:clamp(1.8rem,4vw,2.3rem);font-weight:700}.settings-toc{max-width:40rem}.settings-toc-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.settings-toc-item{width:100%;min-height:var(--touch);border:1px solid color-mix(in srgb, var(--color-accent) 16%, var(--color-border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-surface) 88%, var(--color-bg-elevated));color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .14s var(--ease-out), border-color .14s var(--ease-out), transform .14s var(--ease-out);justify-content:space-between;align-items:center;gap:.85rem;margin:0;padding:.95rem 1.05rem;display:flex}.settings-toc-item:hover{background:color-mix(in srgb, var(--color-brass-soft) 45%, var(--color-surface));border-color:color-mix(in srgb, var(--color-accent) 32%, var(--color-border));transform:translateY(-1px)}.settings-toc-item:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.settings-toc-copy{flex-direction:column;gap:.2rem;min-width:0;display:flex}.settings-toc-title{font-family:var(--font-display);color:var(--color-ink);font-size:1.08rem;font-weight:650}.settings-toc-hint{color:var(--color-ink-muted);font-size:.88rem;line-height:1.35}.settings-toc-chevron{border-right:2px solid var(--color-ink-muted);border-bottom:2px solid var(--color-ink-muted);flex:none;width:.48rem;height:.48rem;transform:rotate(-45deg)}.settings-section-back{margin-bottom:.15rem}.settings-stack{gap:var(--space-4);flex-direction:column;max-width:40rem;display:flex}.settings-panel{border:1px solid color-mix(in srgb, var(--color-accent) 14%, var(--color-border));border-radius:var(--radius);background:color-mix(in srgb, var(--color-surface) 88%, var(--color-bg-elevated));flex-direction:column;gap:.75rem;padding:1.15rem 1.2rem;display:flex}.settings-panel h2{font-family:var(--font-display);color:var(--color-ink);margin:0;font-size:1.2rem;font-weight:650}.settings-panel h3,.ingredients-promoted h3{margin:var(--space-5) 0 var(--space-2);font-family:var(--font-display);color:var(--color-ink);font-size:1.05rem;font-weight:650}.settings-account-email{word-break:break-all;font-weight:650}.settings-back{appearance:none;min-height:var(--touch);font:inherit;color:var(--color-accent);cursor:pointer;background:0 0;border:0;align-self:flex-start;margin:0;padding:0;font-size:.9rem;font-weight:650}.settings-back:hover{color:var(--color-accent-hover);text-decoration:underline}.settings-back:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){.settings-toc-item{transition:none}.settings-toc-item:hover{transform:none}}.inventory-tabs{gap:var(--space-2);flex-wrap:wrap;display:flex}.inventory-due{justify-content:space-between;align-items:center;gap:var(--space-3);border-color:color-mix(in srgb, var(--color-brass) 55%, var(--color-border));background:linear-gradient(135deg, color-mix(in srgb, var(--color-brass-soft) 70%, var(--color-surface)), var(--color-surface));flex-wrap:wrap;display:flex}.inventory-item-list{gap:var(--space-2);flex-direction:column;display:flex}.inventory-item-row{align-items:stretch;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid color-mix(in srgb, var(--color-border) 80%, transparent);flex-direction:column;display:flex}.inventory-item-row:last-child{border-bottom:none;padding-bottom:0}.inventory-item-bar{align-items:center;gap:var(--space-2);display:flex}.inventory-item-toggle{appearance:none;min-width:0;min-height:var(--touch);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;margin:0;padding:0}.inventory-item-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.inventory-item-name{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inventory-item-row.is-expanded .inventory-item-name{white-space:normal}.inventory-item-details{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.inventory-item-main{align-items:center;gap:var(--space-3);flex-wrap:wrap;flex:14rem;min-width:0;display:flex}.inventory-item-status,.inventory-item-expiry{min-width:8rem;margin:0}.stock-toolbar{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.stock-toolbar .inventory-location-pick{flex:auto;min-width:0;margin:0}.stock-toolbar .btn{flex:none;width:auto}.stock-search-field{margin:0}.stock-search-field input{width:100%}.stock-add-location{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.stock-add-location .field{flex:12rem;margin:0}.inventory-location-list{flex-direction:column;gap:.35rem;display:flex}.inventory-location-choice,.inventory-location-row{appearance:none;justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-height:var(--touch);border:1px solid color-mix(in srgb, var(--color-accent) 16%, var(--color-border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-surface) 88%, var(--color-bg-elevated));color:inherit;font:inherit;text-align:left;margin:0;padding:.45rem .7rem;display:flex}.inventory-location-choice{cursor:pointer}.inventory-location-choice.is-active,.inventory-location-row.is-active{border-color:color-mix(in srgb, var(--color-accent) 42%, var(--color-border));background:linear-gradient(180deg, var(--color-accent-soft), #eef5f0)}.inventory-location-name{flex:auto;min-width:0;margin:0}.inventory-location-name input{width:100%}.inventory-location-save:empty{display:none}.inventory-schedule>summary{cursor:pointer;min-height:var(--touch);align-items:center;font-weight:700;display:flex}.inventory-item-row--reconcile{flex-direction:column;align-items:stretch}.inventory-reconcile-choices{gap:var(--space-3);border:none;flex-wrap:wrap;margin:0;padding:0;display:flex}.inventory-waste-row{padding:var(--space-2) 0;border-bottom:1px solid color-mix(in srgb, var(--color-border) 70%, transparent)}.inventory-waste-row:last-child{border-bottom:none}@media (width<=420px){.brand-lockup--lg .brand-title{font-size:clamp(2.2rem,10vw,2.8rem)}}@media (width<=639px){.main,.panel{padding:var(--space-2)}.grocery-hub-card.panel{padding:0}.page-head,.page-title-row{flex-direction:column;align-items:stretch}.calendar-toolbar{flex-flow:row;align-items:center}.meals-page .page-head{align-items:center;gap:var(--space-2);flex-flow:row}.meals-page .page-head .btn{flex:none;width:auto}.grocery-hub-toolbar{flex-wrap:wrap;gap:.1rem .5rem}.grocery-hub-toolbar .text-link{font-size:.8125rem}.grocery-hub-toolbar .btn,.page-head__meta .btn,.grocery-hub-complete{flex:none;width:auto}.chores-week-row,.dining-toolbar{flex-wrap:nowrap;width:100%}.grocery-trip-toolbar__id{flex-flow:row;align-items:center;width:100%}.grocery-trip-toolbar__id .store-select{flex:1 1 0;align-self:center;width:auto;min-width:0;max-width:none}.grocery-trip-toolbar__id .store-select select{width:100%;height:var(--touch);min-height:var(--touch);max-height:var(--touch);padding-top:0;padding-bottom:0;font-size:1rem}.grocery-trip-toolbar__id>input.grocery-trip-date-input{width:auto;min-width:0;max-width:none;height:var(--touch);min-height:var(--touch);max-height:var(--touch);flex:1 1 0;align-self:center;padding-top:0;padding-bottom:0;font-size:1rem}.meals-page .meal-list-item .meal-thumb{width:3.25rem;height:3.25rem}.chore-week-filter{min-width:0;max-width:none}.grocery-hub--with-request-dock{padding-bottom:calc(var(--dock-request) + var(--space-5))}.grocery-request-dock{left:0;right:0;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));z-index:55;min-height:var(--touch);background:linear-gradient(#f7ebdaf5,#e8d2b0fa);border-bottom:0;border-left:0;border-right:0;border-radius:0;margin:0;padding:.55rem 1rem;position:fixed;box-shadow:0 -8px 20px #2f241c1a}.grocery-request-dock .text-link{min-height:var(--touch);align-items:center;display:inline-flex}.watch-search-row{flex-wrap:nowrap}.watch-search-field{flex:1;width:auto}.watch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.watch-card{aspect-ratio:4/5;border-radius:10px;width:100%;max-width:100%;max-height:none}.watch-card>.watch-card__fallback{font-size:1.5rem}.watch-card__meta{padding:.18rem .3rem .22rem}.watch-card__meta strong{font-size:.75rem;line-height:1.2}.watch-card__meta>span{margin-top:.1rem;font-size:.68rem}.week-pager{justify-content:flex-start;width:100%}.week-pager--day{justify-content:flex-start}.week-pager .btn-compact{flex:0 auto}form .btn[type=submit],form .btn-primary{width:100%}form .day-slot-toolbar .btn-primary,form .day-plan-new-meal-btn,form .trip-wizard-nav .btn,form .trip-item-composer__add .btn-primary{width:auto}form .btn.meal-icon-btn,form .btn.meal-read-kebab{width:var(--touch);max-width:var(--touch)}.trip-draft-line{flex-flow:row;align-items:center}.confirm-dialog .btn,.confirm-dialog .btn-primary{width:auto}.confirm-dialog--stack .btn{width:100%}.sticky-action-bar{flex-direction:row;align-items:center;padding:.2rem .65rem}.sticky-action-bar .btn{width:auto;min-height:var(--touch);flex:none;padding-inline:.7rem}.sort-builder-tools{flex-wrap:wrap;align-items:flex-end}.sort-builder-tools .btn{width:auto}.sort-need-bar{flex-direction:row;align-items:center}.sort-need-store{width:auto;min-width:7rem}.inventory-item-main,.inventory-item-details,.settings-member-row,.grocery-draft-row,.flow-handoff{flex-direction:column;align-items:stretch}.sort-inline-field,.inventory-item-expiry{width:100%;min-width:0}.stock-toolbar{flex-wrap:nowrap;width:100%}.stock-toolbar .inventory-location-pick{width:auto;min-width:0}.stock-toolbar .btn{width:auto}.inventory-item-bar .inventory-item-status{flex:0 0 7.5rem;width:auto;min-width:7.5rem}.chore-card-tools{flex-wrap:nowrap}.bottom-nav a{letter-spacing:0;gap:.1rem;font-size:.62rem}.auth-screen{padding:var(--space-3);padding-top:max(var(--space-4), env(safe-area-inset-top,0px));align-items:start}.auth-atmosphere{inset:1.5% 2.5%}.auth-form,.auth-sent{padding:var(--space-4) var(--space-3)}.auth-form .btn{width:100%}.auth-copy,.auth-footnote{font-size:.95rem}}.watch-page{gap:var(--space-2)}.watch-search-row{align-items:center;gap:.4rem;display:flex}.watch-kind{flex:none;align-items:center;gap:.15rem;display:inline-flex;position:relative}.watch-kind-btn{width:var(--touch);height:var(--touch);min-width:var(--touch);min-height:var(--touch);border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 88%, transparent);color:var(--color-ink);cursor:pointer;border-radius:12px;place-items:center;padding:0;display:grid}.watch-kind-btn.is-on,.watch-kind-btn[aria-checked=true]{background:color-mix(in srgb, var(--color-accent) 16%, var(--color-surface));border-color:var(--color-accent);box-shadow:inset 0 0 0 2px var(--color-accent)}.watch-kind-menu{z-index:6;border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;flex-direction:column;min-width:11.5rem;padding:.25rem;display:flex;position:absolute;top:calc(100% + .25rem);left:0;box-shadow:0 8px 24px #00000029}.watch-kind-option{min-height:var(--touch);color:var(--color-ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:.6rem;padding:0 .75rem;display:flex}.watch-kind-option.is-on,.watch-kind-option[aria-selected=true]{background:color-mix(in srgb, var(--color-accent) 16%, var(--color-surface))}.watch-search-status{color:var(--color-ink-muted,var(--color-muted,#5c5346));margin:0}.watch-news-mast{border-bottom:3px double color-mix(in srgb, var(--color-ink) 72%, transparent);flex-wrap:nowrap;align-items:stretch;gap:.35rem;min-width:0;margin:0;padding:.15rem 0 .55rem;display:flex}.watch-news-mast__field{min-width:0;min-height:var(--touch);border-bottom:1px solid var(--color-ink);color:var(--color-ink);flex:1 1 0;align-items:center;gap:.2rem;padding:0 .1rem;display:flex;position:relative}.watch-news-mast__field--source{flex:1.4 1 0}.watch-news-mast__field--when{flex:.95 1 0}.watch-news-mast__field--order{flex:.85 1 0}.watch-news-mast__field:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}.watch-news-mast__field svg{flex:none;width:1.05rem;height:1.05rem}.watch-news-mast__field:after{content:"";pointer-events:none;border-bottom:1.5px solid;border-right:1.5px solid;flex:none;width:.4rem;height:.4rem;margin-right:.05rem;transform:rotate(45deg)translateY(-1px)}.watch-news-mast__value{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-body);pointer-events:none;flex:auto;font-size:16px;line-height:1.2;overflow:hidden}.watch-news-mast__value--wide{display:none}.watch-news-mast select{width:100%;height:100%;min-height:var(--touch);box-shadow:none;opacity:0;cursor:pointer;background:0 0;border:0;border-radius:0;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.watch-news-mast select:hover,.watch-news-mast select:focus-visible{box-shadow:none;border:0}@media (width>=640px){.watch-news-mast{gap:.85rem}.watch-news-mast__field--source,.watch-news-mast__field--when,.watch-news-mast__field--order{flex:1 1 0}.watch-news-mast__value--short{display:none}.watch-news-mast__value--wide{display:block}}.watch-news-column{gap:.7rem}.watch-news-list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.watch-news-sentinel{height:1px;margin:0;padding:0;list-style:none}.watch-news-recap{margin:0;padding:0;list-style:none}.watch-news-recap a{min-width:0;min-height:var(--touch);border:1px solid color-mix(in srgb, var(--color-ink) 22%, transparent);color:inherit;background:#f6f1e6;border-radius:2px;grid-template-columns:minmax(0,17.8rem) minmax(0,1fr);align-items:center;gap:.65rem;padding:.45rem;text-decoration:none;display:grid;overflow:hidden}.watch-news-recap a.is-quiet{grid-template-columns:auto minmax(0,1fr)}.watch-news-recap__still{aspect-ratio:16/9;background:#1c1915;width:min(100%,17.8rem);min-width:0;height:auto;max-height:11rem;position:relative;overflow:hidden}.watch-news-recap__still img{object-fit:cover;width:100%;height:100%;display:block}.watch-news-recap__play{background:#0000009e;border-radius:50%;width:1.75rem;height:1.75rem;position:absolute;bottom:.4rem;left:.4rem}.watch-news-recap__play--quiet{background:#2c261f;width:2.75rem;height:2.75rem;position:relative;bottom:auto;left:auto}.watch-news-recap__play:after{content:"";border:.36rem solid #0000;border-left:.58rem solid #fff;border-right-width:0;position:absolute;top:.5rem;left:.68rem}.watch-news-recap__play--quiet:after{border-width:.55rem 0 .55rem .85rem;top:.78rem;left:1.05rem}.watch-news-card a{border:1px solid color-mix(in srgb, var(--color-ink) 22%, transparent);min-width:0;color:inherit;background:#f6f1e6;border-radius:2px;grid-template-columns:minmax(0,1fr);align-items:start;gap:.55rem;padding:.55rem .65rem;text-decoration:none;display:grid;overflow:hidden}.watch-news-card a.has-photo{grid-template-columns:7.25rem minmax(0,1fr);gap:.7rem;padding:.45rem}.watch-news-card.is-lead a,.watch-news-card.is-lead a.has-photo{grid-template-columns:minmax(0,1fr)}.watch-news-visual{aspect-ratio:16/9;width:7.25rem;min-width:0;max-width:100%;height:auto;position:relative;overflow:hidden}.watch-news-card.is-lead .watch-news-visual{aspect-ratio:16/9;width:100%;height:auto}.watch-news-visual img{object-fit:cover;width:100%;max-width:100%;height:100%;display:block}.watch-news-copy{flex-direction:column;gap:.28rem;min-width:0;display:flex}.watch-news-kicker{color:var(--color-ink-muted,#5c5346);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;align-items:baseline;gap:.45rem .65rem;font-size:.72rem;font-weight:800;display:flex}.news-source-label{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800;line-height:1.2}.watch-news-when{letter-spacing:.02em;text-transform:none;margin-left:auto;font-weight:700}.watch-news-copy strong{font-family:var(--font-display);font-size:1.02rem;font-weight:650;line-height:1.25}.watch-news-card.is-lead .watch-news-copy strong{font-size:1.45rem;line-height:1.15}.watch-news-dek{-webkit-line-clamp:3;color:var(--color-ink-muted,#5c5346);-webkit-box-orient:vertical;font-size:.92rem;line-height:1.35;display:-webkit-box;overflow:hidden}.watch-news-card.is-lead .watch-news-dek{-webkit-line-clamp:4}@media (width<=639px){.watch-news-recap a.has-still,.watch-news-card a.has-photo{grid-template-columns:minmax(0,1fr)}.watch-news-recap__still{aspect-ratio:16/9;width:min(100%,19.5rem);height:10rem;max-height:11rem}.watch-news-card:not(.is-lead) .watch-news-visual,.watch-news-card.is-lead .watch-news-visual{aspect-ratio:16/9;width:100%;height:auto}}.watch-card-shell{flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0;display:flex;position:relative}.watch-card-shell .watch-card{width:100%}.watch-card-shell .watch-card>img{position:absolute;inset:0}a.watch-libby{width:auto;max-width:100%;min-height:var(--touch);min-width:var(--touch);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.watch-libby-shelves{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.watch-libby-btn__mark,.watch-steam__mark{flex:none;width:1.15em;height:1.15em}a.watch-libby-btn.btn{color:#fff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#631a35;border:0;border-radius:12px;align-self:flex-start;gap:.4rem;width:auto}.watch-libby-shelves>a.watch-libby-btn.btn{flex:0 0 8.75rem;align-self:auto}a.watch-libby-btn.btn:hover,a.watch-libby-btn.btn:focus-visible{color:#fff;background:#53142c;border-color:#0000}a.watch-libby-btn.btn:focus-visible{outline-offset:3px;outline:2px solid #631a35}a.btn.watch-steam{color:#fff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#171a21;border:0;border-radius:2px;gap:.45rem}a.btn.watch-steam:hover,a.btn.watch-steam:focus-visible{color:#fff;background:#1b2838;border-color:#0000}a.btn.watch-steam:focus-visible{outline-offset:3px;outline:2px solid #171a21}a.watch-cover-app{z-index:4;width:var(--touch);height:var(--touch);min-width:var(--touch);min-height:var(--touch);border:0;border-radius:12px;place-items:center;padding:0;text-decoration:none;display:grid;position:absolute;top:.35rem;left:.35rem;box-shadow:0 2px 6px #140e0a59}a.watch-cover-app .watch-libby-btn__mark,a.watch-cover-app .watch-steam__mark{width:1.35rem;height:1.35rem}a.watch-cover-app.watch-libby-btn{color:#fff;background:#631a35}a.watch-cover-app.watch-libby-btn:hover,a.watch-cover-app.watch-libby-btn:focus-visible{color:#fff;background:#53142c}a.watch-cover-app.watch-steam{color:#fff;background:#171a21}a.watch-cover-app.watch-steam:hover,a.watch-cover-app.watch-steam:focus-visible{color:#fff;background:#1b2838}a.watch-cover-app:focus-visible{outline-offset:-3px;outline:2px solid #fff}a.watch-steam-mark.btn{width:var(--touch);height:var(--touch);min-width:var(--touch);min-height:var(--touch);align-self:flex-start;padding:0}.watch-review-links{flex-wrap:wrap;align-items:center;gap:.35rem .75rem;display:flex}.watch-kind-btn [data-eat-out-chef]{width:1.55em;height:1.55em}.watch-search-field{flex:1;min-width:0;position:relative}.watch-search-field input{width:100%;padding-right:calc(var(--touch) + .15rem)}.watch-search-clear{width:var(--touch);height:var(--touch);min-width:var(--touch);min-height:var(--touch);color:var(--color-ink-muted);cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:.1rem;transform:translateY(-50%)}.watch-list-row{align-items:center;gap:.4rem;display:flex}.watch-list-tabs{flex:0 auto;width:auto;min-width:0}.watch-list-tabs .segmented__btn{flex:none}.watch-sort-wrap{z-index:2;flex:none;margin-left:auto;position:relative}.watch-sort-btn{width:var(--touch);height:var(--touch);min-width:var(--touch);min-height:var(--touch);border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 88%, transparent);color:var(--color-ink);cursor:pointer;border-radius:12px;place-items:center;padding:0;display:grid}.watch-sort-btn.is-on,.watch-sort-btn[aria-expanded=true]{background:color-mix(in srgb, var(--color-accent) 16%, var(--color-surface));border-color:var(--color-accent);box-shadow:inset 0 0 0 2px var(--color-accent)}.watch-sort-backdrop{z-index:18;position:fixed;inset:0}.watch-sort-panel{z-index:20;border:1px solid var(--color-border);background:var(--color-surface);width:min(16.5rem,100vw - 1.5rem);box-shadow:var(--shadow-soft);border-radius:14px;gap:.7rem;padding:.65rem .65rem .7rem;display:grid;position:absolute;top:calc(100% + .25rem);right:0}.watch-sort-legend{letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-muted);margin:0 .15rem .1rem;font-size:.7rem;font-weight:800}.watch-sort-option{width:100%;min-height:var(--touch);color:var(--color-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;padding:0 .6rem;font-size:.88rem;font-weight:700;display:flex}.watch-sort-option:hover,.watch-sort-option:focus-visible{background:color-mix(in srgb, var(--color-surface) 40%, var(--color-bg-deep));outline:none}.watch-sort-option.is-on,.watch-sort-option[aria-checked=true]{color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 14%, transparent)}.watch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.watch-card{isolation:isolate;aspect-ratio:4/5;color:#f7ebda;background:linear-gradient(180deg, color-mix(in srgb, var(--color-accent) 18%, #d8c4a2), #c9ae86);width:100%;max-width:100%;max-height:none;box-shadow:0 10px 24px #2f241c24, inset 0 0 0 1px color-mix(in srgb, var(--color-wood) 28%, transparent);border-radius:18px;text-decoration:none;display:block;position:relative;overflow:hidden}.watch-card__star{z-index:3;width:1.55rem;height:1.55rem;color:var(--color-brass);pointer-events:none;background:#1a140f8c;border-radius:999px;place-items:center;display:grid;position:absolute;top:.35rem;right:.35rem;box-shadow:0 1px 4px #140e0a59}.watch-card img{object-fit:cover;width:100%;height:100%;display:block}.watch-card__fallback{width:100%;height:100%;font-family:var(--font-display);color:color-mix(in srgb, var(--color-accent) 70%, #2a241c);place-items:center;font-size:3rem;display:grid}.watch-card__scrim{z-index:1;pointer-events:none;background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--color-ink) 48%, transparent) 42%, color-mix(in srgb, var(--color-ink) 92%, #1a140f) 100%);height:34%;position:absolute;bottom:0;left:0;right:0}.watch-card__meta{z-index:2;background:0 0;padding:.22rem .4rem .28rem;position:absolute;bottom:0;left:0;right:0}.watch-card__meta strong,.watch-card__meta span{display:block}.watch-card__meta strong{-webkit-line-clamp:1;color:#f7ebda;-webkit-box-orient:vertical;font-size:.78rem;line-height:1.15;display:-webkit-box;overflow:hidden}.watch-card__meta>span{color:#f3e4ce;margin-top:0;font-size:.68rem;line-height:1.15}.watch-card__air{color:#f7ebda;font-weight:700}@media (prefers-reduced-transparency:reduce){.watch-card__scrim{background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--color-ink) 58%, transparent) 38%, color-mix(in srgb, var(--color-ink) 94%, #1a140f) 100%);height:36%}}.watch-back{margin:0;font-size:.92rem}.watch-detail.panel{gap:var(--space-4);padding:var(--space-4);background:linear-gradient(165deg, color-mix(in srgb, var(--color-surface) 92%, #fff8ee), color-mix(in srgb, var(--color-brass-soft) 22%, var(--color-bg-elevated)));box-shadow:var(--shadow-soft), inset 0 1px 0 #fff8eb8c}.watch-detail__hero{gap:var(--space-3);grid-template-columns:minmax(7.5rem,9.75rem) minmax(0,1fr);align-items:start;display:grid}.watch-detail__hero>.watch-detail__poster{grid-area:1/1}.watch-detail__hero>.watch-detail__copy{grid-area:1/2}.watch-title-hero{align-items:stretch;width:100%}.watch-title-hero>.watch-detail__poster{border-radius:16px;align-self:stretch;min-height:0;position:relative;overflow:hidden}.watch-title-hero>.watch-detail__poster img,.watch-title-hero>.watch-detail__poster .watch-card__fallback{aspect-ratio:auto;width:100%;height:100%;max-height:none;position:absolute;inset:0}.watch-title-hero>.watch-detail__copy{align-self:stretch;width:100%;max-width:none}.watch-title-hero .watch-detail__lists,.watch-title-hero .watch-status-pills{width:100%;max-width:none}.watch-title-hero .watch-detail__lists{flex-wrap:nowrap}.watch-title-hero .watch-detail__lists>.btn,.watch-title-hero .watch-status-pills>.btn{flex:1 1 0;width:auto;max-width:none}.watch-title-hero .watch-status-pills{flex-wrap:wrap}.watch-title-hero .watch-status-pills>.btn{min-width:min(100%,9.5rem)}.watch-detail__synopsis{width:100%;max-width:none;margin:0}.watch-guide-hero{grid-template-columns:minmax(6.25rem,8.25rem) minmax(0,1fr)}.watch-detail__poster{align-self:start;min-width:0}.watch-detail__poster img,.watch-detail__poster .watch-card__fallback{aspect-ratio:2/3;object-fit:cover;background:color-mix(in srgb, var(--color-accent-soft) 70%, #d8c4a2);width:100%;box-shadow:0 10px 20px #2f241c29, inset 0 0 0 1px color-mix(in srgb, var(--color-wood) 28%, transparent);border-radius:16px;display:block;overflow:hidden}.watch-title-hero>.watch-detail__poster>.watch-poster-open{border-radius:inherit;width:100%;color:inherit;cursor:zoom-in;background:0 0;border:0;margin:0;padding:0;display:block}.watch-title-hero:not(.watch-title-hero--game)>.watch-detail__poster>.watch-poster-open{height:100%;position:absolute;inset:0}.watch-title-hero--game>.watch-detail__poster>.watch-poster-open{height:auto;position:relative}.watch-poster-viewer{z-index:110;box-sizing:border-box;padding:calc(env(safe-area-inset-top,0px) + 3.5rem) .75rem max(.75rem, env(safe-area-inset-bottom,0px));background:#0c0907f0;display:flex;position:fixed;inset:0}.watch-poster-viewer__dialog{outline:none;flex:auto;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex}.watch-poster-viewer__frame{justify-content:center;align-items:center;width:100%;min-width:0;height:100%;min-height:0;display:flex}.watch-poster-viewer__image{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;max-height:100%;animation:.18s ease-out watch-poster-in;display:block}.watch-poster-viewer__close{top:max(.5rem, env(safe-area-inset-top,0px));right:max(.5rem, env(safe-area-inset-right,0px));z-index:1;min-width:var(--touch);min-height:var(--touch);border-radius:var(--radius-sm);color:#fff8ee;font:inherit;cursor:pointer;background:#140e0aeb;border:1px solid #fff8eb66;padding:.4rem .9rem;font-weight:700;position:fixed}@keyframes watch-poster-in{0%{transform:scale(.94)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.watch-poster-viewer__image{animation:none}}.watch-detail__copy{flex-direction:column;align-self:start;gap:.22rem;min-width:0;display:flex;container:watch-title/inline-size}.watch-title-head{align-items:flex-start;gap:.5rem;display:flex}.watch-title-head .watch-detail__title{flex:auto;min-width:0}.watch-title-actions{flex-direction:row;flex:none;justify-content:flex-end;align-items:center;gap:.25rem;margin-left:auto;display:flex}.watch-detail__meta{flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem;display:flex}.watch-detail__lists,.watch-status-pills{flex-wrap:wrap;gap:.35rem;margin-top:.35rem;display:flex}.watch-detail__lists{flex-flow:wrap;align-items:center}.watch-detail__lists>.btn{white-space:nowrap;flex:auto;width:auto}.watch-detail__title{font-family:var(--font-display);color:var(--color-ink);margin:0;font-size:1.35rem;font-weight:700;line-height:1.15}.watch-detail__title .watch-detail__years{font-family:var(--font-body);color:var(--color-ink-muted);font-size:.78em;font-weight:700}.watch-detail__facts{color:var(--color-ink-muted);margin:0;font-size:.88rem;line-height:1.35}.watch-detail__overview{max-width:42rem;color:var(--color-ink);margin:.55rem 0 0;font-size:.95rem;line-height:1.5}.watch-episode-pager{top:var(--space-2);right:var(--space-2);z-index:1;justify-content:flex-end;gap:.25rem;margin:0;display:flex;position:absolute}.watch-episode-page .watch-detail__kind,.watch-episode-page .watch-detail__title{padding-right:calc(var(--touch) * 2)}.watch-detail__bookmark{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--color-accent) 22%, var(--color-border));background:color-mix(in srgb, var(--color-accent-soft) 42%, var(--color-surface));color:var(--color-accent-hover);margin:0;padding:.45rem .7rem;font-size:.88rem;font-weight:700}.watch-detail__rating{color:var(--color-accent);white-space:nowrap;margin:0;font-weight:800}a.watch-detail__rating{text-underline-offset:.12em;text-decoration:underline}a.watch-detail__rating:hover{color:var(--color-accent-hover)}.watch-detail__air{color:var(--color-wood);margin:0;font-size:.88rem;font-weight:700}.watch-detail__kind{letter-spacing:.1em;text-transform:uppercase;color:var(--color-wood);white-space:nowrap;font-size:.72rem;font-weight:800}.watch-kind-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-muted);margin:0;font-size:.62rem;font-weight:700;line-height:1.2;display:block}.watch-screen-scores{flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start;gap:.45rem;width:100%;max-width:16.5rem;margin:0;padding:0;list-style:none;display:flex}.watch-screen-scores>li{flex:2.55rem;width:2.55rem;min-width:0;max-width:3.05rem}.watch-screen-score{width:100%;min-width:0;color:var(--color-ink);flex-direction:column;align-items:center;gap:.12rem;line-height:1;display:flex;container-type:inline-size}.watch-score-mark{flex:none;justify-content:center;align-items:center;width:100%;height:1rem;line-height:1;display:flex}.watch-score-mark svg{width:.9rem;height:.9rem;display:block}.watch-score-chip{white-space:nowrap;letter-spacing:-.03em;border-radius:.14rem;justify-content:center;align-items:center;height:.72rem;padding:0 .16rem;font-weight:800;line-height:1;display:inline-flex}.watch-score-chip--imdb{color:#1c1408;background:#f3d27a;font-size:clamp(.42rem,20cqw,.54rem)}.watch-score-chip--meta{background:var(--color-accent);color:#f6f1e6;letter-spacing:.03em;min-width:1.05rem;font-size:clamp(.4rem,18cqw,.5rem)}.watch-score-chip--tvmaze{max-width:100%;height:auto;color:var(--color-accent-hover);letter-spacing:-.04em;background:0 0;padding:0;font-size:clamp(.4rem,19cqw,.5rem)}.watch-score-value{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:-.02em;color:var(--color-ink);white-space:nowrap;font-size:clamp(.72rem,34cqw,.95rem);font-weight:800;line-height:1}.watch-score-caption{max-width:100%;color:var(--color-wood);letter-spacing:-.03em;text-align:center;white-space:nowrap;font-size:clamp(.4rem,16cqw,.5rem);font-weight:700;line-height:1}@container watch-title (width<=13.5rem){.watch-screen-scores{gap:.28rem;max-width:100%}.watch-screen-scores:has(>li:nth-child(5)){gap:.16rem}}.watch-detail__actions{flex-wrap:wrap;align-items:center;gap:.3rem .45rem;margin-top:.15rem;display:flex}.watch-detail__actions .btn-icon,.watch-detail__where-btn{flex:none}.watch-detail__where{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin:0;padding:0;list-style:none;display:flex}@media (width>=640px){.watch-detail__hero{gap:var(--space-4);grid-template-columns:minmax(12rem,16rem) minmax(0,1fr)}.watch-guide-hero{grid-template-columns:minmax(9rem,12rem) minmax(0,1fr)}.watch-detail__title{font-size:1.55rem}}@media (width>=960px){.watch-detail__hero{gap:var(--space-5);grid-template-columns:minmax(18rem,38%) minmax(0,1fr)}.watch-detail__title{font-size:1.85rem}}@media (width>=1280px){.watch-detail__hero{grid-template-columns:minmax(22rem,42%) minmax(0,1fr)}}.watch-title-hero--game{grid-template-columns:clamp(6.75rem,32%,11rem) minmax(0,1fr);align-items:start}.watch-title-hero--game>.watch-detail__poster{align-self:start;width:100%;max-width:100%;height:auto;position:relative;overflow:hidden}.watch-title-hero--game>.watch-detail__poster img,.watch-title-hero--game>.watch-detail__poster .watch-card__fallback{width:100%;height:auto;max-height:none;aspect-ratio:var(--game-poster-aspect,460 / 215);object-fit:cover;object-position:center center;position:static;inset:auto}.watch-title-hero--game>.watch-game-poster--portrait img,.watch-title-hero--game>.watch-game-poster--portrait .watch-card__fallback{aspect-ratio:var(--game-poster-aspect,2 / 3)}.watch-title-hero--game>.watch-detail__copy{gap:.45rem;min-width:0;overflow:visible}.watch-title-hero--game .watch-detail__title{white-space:normal;overflow-wrap:break-word;overflow:visible}.watch-game-identity{color:var(--color-ink-muted);margin:0;font-size:.88rem;font-weight:700;line-height:1.3}.watch-game-scores{flex-wrap:wrap;align-items:center;gap:.15rem .85rem;width:100%;min-width:0;display:flex;overflow:visible}.watch-game-score{min-width:0;max-width:100%;color:var(--color-accent);white-space:normal;overflow-wrap:break-word;text-overflow:unset;flex:100%;margin:0;font-weight:800;line-height:1.35;overflow:visible}a.watch-game-score{min-height:var(--touch);text-underline-offset:.12em;align-self:center;align-items:center;text-decoration:underline;display:inline-flex}a.watch-game-score:hover,a.watch-game-score:focus-visible{color:var(--color-accent-hover)}.watch-title-hero--game .watch-detail__lists{flex-wrap:wrap}.watch-title-hero--game .watch-detail__lists>.btn{white-space:nowrap;flex:1 1 0;width:auto;min-width:0}.watch-title-hero--game .watch-detail__copy>a.watch-libby{width:100%;margin-top:.1rem}.watch-title-hero--game .watch-status-pills{flex-wrap:wrap;gap:.35rem;width:auto;max-width:100%}.watch-title-hero--game .watch-status-pills>.btn{flex:0 auto;width:auto;min-width:0;max-width:100%}@media (width>=640px){.watch-title-hero--game{grid-template-columns:clamp(11rem,24%,16rem) minmax(0,1fr)}}.watch-detail__where-btn{min-height:var(--touch);min-width:var(--touch);border:1px solid color-mix(in srgb, var(--color-accent) 28%, var(--color-border));background:color-mix(in srgb, var(--color-accent-soft) 55%, var(--color-surface));color:var(--color-accent-hover);font:inherit;cursor:pointer;border-radius:999px;padding:.25rem .85rem;font-weight:700}.watch-detail__where-btn:hover,.watch-detail__where-btn:focus-visible{border-color:var(--color-accent);background:var(--color-accent-soft)}.watch-guide__heading{font-family:var(--font-display);margin:0;font-size:1.15rem;font-weight:700}.watch-guide-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.watch-guide-link{min-height:var(--touch);border:1px solid color-mix(in srgb, var(--color-wood) 18%, var(--color-border));background:linear-gradient(180deg, color-mix(in srgb, var(--color-surface) 94%, #fff8ee), color-mix(in srgb, var(--color-brass-soft) 16%, var(--color-bg-elevated)));min-width:0;color:var(--color-ink);border-radius:12px;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem .8rem;font-weight:700;text-decoration:none;display:flex;box-shadow:inset 0 1px #fff8eb73}.watch-guide-link:hover,.watch-guide-link:focus-visible{border-color:color-mix(in srgb, var(--color-accent) 40%, var(--color-border));background:color-mix(in srgb, var(--color-accent-soft) 28%, var(--color-surface))}.watch-guide-link>span:first-child{overflow-wrap:anywhere;min-width:0}.watch-guide-link .muted,.watch-guide-mark{flex:none;font-size:.8125rem;font-weight:700}.watch-guide-mark{color:var(--color-accent)}.watch-card__badge{letter-spacing:.02em;color:var(--color-brass-soft);font-size:.72rem;font-weight:700}.watch-grid.watch-grid--book-search{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=640px){.watch-grid{grid-template-columns:repeat(auto-fit,minmax(9.5rem,11rem));justify-content:start}.watch-grid.watch-grid--book-search{grid-template-columns:repeat(auto-fit,minmax(14rem,16rem));justify-content:start}.meals-view .segmented__btn{padding:.3rem .7rem;font-size:.88rem}.meals-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width>=960px){.meals-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.watch-poster-viewer__image{animation:none!important}}
