*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{clip:rect(0,0,0,0);border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.right-3{right:.75rem}.top-3{top:.75rem}.z-50{z-index:50}.m-1{margin:.25rem}.m-5{margin:1.25rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-0\.5{margin-left:.125rem}.mt-0\.5{margin-top:.125rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-1{height:.25rem}.h-12{height:3rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-full{height:100%}.w-12{width:3rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-64{width:16rem}.w-80{width:20rem}.w-\[400px\]{width:400px}.w-full{width:100%}.max-w-full{max-width:100%}.max-w-sm{max-width:24rem}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-x-1\.5{column-gap:.375rem}.gap-y-0\.5{row-gap:.125rem}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:var(--radius-md)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-none{border-radius:0}.rounded-xl{border-radius:var(--radius-xl)}.border{border-width:1px}.border-2{border-width:2px}.border-l{border-left-width:1px}.border-card-border-strong{border-color:var(--card-border-strong)}.border-clay-border{border-color:var(--clay-border)}.border-crisp-sage{border-color:var(--crisp-sage)}.border-current{border-color:currentColor}.border-sage-border{border-color:var(--sage-border)}.border-taupe-light{border-color:var(--taupe-light)}.border-t-transparent{border-top-color:transparent}.bg-bg{background-color:var(--bg)}.bg-card-border{background-color:var(--card-border)}.bg-clay{background-color:var(--clay)}.bg-clay-tint{background-color:var(--clay-tint)}.bg-cream{background-color:var(--cream)}.bg-cream-2{background-color:var(--cream-2)}.bg-crisp-clay{background-color:var(--crisp-clay)}.bg-crisp-sage{background-color:var(--crisp-sage)}.bg-sage-tint{background-color:var(--sage-tint)}.bg-sage-tint-strong{background-color:var(--sage-tint-strong)}.bg-transparent{background-color:transparent}.object-cover{object-fit:cover}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-left{text-align:left}.text-center{text-align:center}.font-display{font-family:var(--font-playfair),Georgia,serif}.font-mono{font-family:var(--font-jetbrains-mono),ui-monospace,monospace}.font-sans{font-family:var(--font-inter),-apple-system,BlinkMacSystemFont,sans-serif}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[11px\]{font-size:11px}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-md{font-size:var(--text-md)}.text-sm{font-size:var(--text-sm)}.text-xl{font-size:var(--text-xl)}.text-xs{font-size:var(--text-xs)}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-charcoal{color:var(--charcoal)}.text-clay{color:var(--clay)}.text-cream{color:var(--cream)}.text-crisp-sage-dark{color:var(--crisp-sage-dark)}.text-current{color:currentColor}.text-inherit{color:inherit}.text-ink{color:var(--ink)}.text-sage-deep{color:var(--sage-deep)}.text-taupe-deep{color:var(--taupe-deep)}.text-text{color:var(--text)}.text-text-mute{color:var(--text-mute)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.accent-sage{accent-color:var(--sage)}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.shadow{--tw-shadow:var(--shadow-md);--tw-shadow-colored:var(--shadow-md)}.shadow,.shadow-none{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-clay{--tw-ring-color:var(--clay)}.ring-sage-deep{--tw-ring-color:var(--sage-deep)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,.transition-colors{transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg:#f8f5f0;--bg-elev:#efeae0;--card:#ffffff;--card-border:#e8ded0;--card-border-strong:#d8ccbb;--text:#3d3630;--text-mute:#6b6057;--text-dim:#726860;--sage:#547243;--sage-deep:#476138;--sage-tint:rgba(84,114,67,0.10);--sage-tint-strong:rgba(84,114,67,0.18);--sage-border:rgba(84,114,67,0.35);--sage-light:#b8c9a5;--taupe:#b29e8e;--taupe-deep:#8a7d70;--taupe-tint:rgba(178,158,142,0.15);--clay:#a0453a;--clay-tint:rgba(160,69,58,0.09);--clay-border:rgba(160,69,58,0.32);--clay-accent:#c6613f;--fraunces:var(--font-playfair),"Playfair Display",Georgia,serif;--inter:var(--font-inter),-apple-system,BlinkMacSystemFont,sans-serif;--mono:var(--font-jetbrains-mono),monospace;--cream:#f8f5f0;--cream-2:#f0ebe0;--charcoal:#3d3630;--ink:#6b5d4a;--taupe-light:#d4c8b8;--crisp-clay:#c6613f;--crisp-sage:#547243;--crisp-sage-dark:#476138;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--radius-sm:0;--radius-md:0;--radius-lg:0;--radius-xl:0;--radius-2xl:0;--radius-pill:9999px;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--shadow-xl:none;--text-xs:0.6875rem;--text-sm:0.8125rem;--text-base:0.9375rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:3rem;--text-hero:clamp(2.375rem,6.5vw,4.625rem);--text-hero-sm:clamp(1.875rem,4vw,2.625rem)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link,body{font-family:var(--inter)}.skip-link{position:absolute;left:8px;top:-100px;z-index:999;padding:10px 16px;border-radius:0;background:var(--sage);color:#fff;font-size:14px;font-weight:600;text-decoration:none;transition:top .12s ease}.skip-link:focus{top:8px}:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}#main-content:focus,#main-content:focus-visible{outline:none}nav:not(.crisp-rail-nav){position:sticky;top:0;background:rgba(248,245,240,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:100;border-bottom:1px solid var(--taupe-light,var(--card-border))}.nav-inner{max-width:1180px;margin:0 auto;padding:16px 32px;justify-content:space-between}.nav-inner,.nav-logo{display:flex;align-items:center}.nav-logo{gap:10px;text-decoration:none;color:var(--charcoal,var(--text));font-family:var(--fraunces);font-weight:400;font-size:20px;letter-spacing:-.01em}.nav-logo .accent{color:var(--crisp-sage,var(--sage))}.wordmark{white-space:nowrap}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{color:var(--ink,var(--text-mute));text-decoration:none;font-size:13px;font-weight:500;letter-spacing:.01em;transition:color .12s}.nav-links a:hover{color:var(--charcoal,var(--text))}.nav-links a{gap:6px}.nav-badge,.nav-links a{display:inline-flex;align-items:center}.nav-badge{justify-content:center;min-width:17px;height:17px;padding:0 5px;border-radius:var(--radius-pill);color:var(--cream,var(--bg));font-size:10px;font-family:var(--mono);font-weight:500;line-height:1}.nav-badge,.nav-cta{background:var(--crisp-sage,var(--sage))}.nav-cta{padding:9px 16px;font-weight:600!important;letter-spacing:.12em;text-transform:uppercase;font-size:11px}.nav-cta,.nav-cta:hover{color:var(--cream,var(--bg))!important}.nav-cta:hover{background:var(--crisp-sage-dark,var(--sage-deep))}@media (max-width:700px){.nav-links a:not(.nav-cta){display:none}}.crisp-app{display:grid;grid-template-columns:240px 1fr 300px;min-height:100vh;background:var(--cream,var(--bg))}@media (max-width:1199px) and (min-width:768px){.crisp-app{grid-template-columns:56px 1fr}.crisp-nav-rail{min-width:56px;max-width:56px;overflow:hidden}.crisp-nav-label{display:none}.crisp-nav-section{padding:8px 0}.crisp-nav-item{padding:8px 0;justify-content:center;border-left-width:2px}.crisp-nav-text{display:none}.crisp-nav-icon{display:inline-flex}.crisp-nav-badge{position:absolute;top:4px;right:4px}.crisp-nav-item{position:relative}.crisp-brand-block{padding:14px 0;justify-content:center}.crisp-nav-footer{padding:10px 0;align-items:center}.crisp-nav-footer-email{display:none}.crisp-context-rail{position:fixed;right:0;top:0;bottom:0;width:300px;transform:translateX(calc(100% + 1px));visibility:hidden;z-index:300;transition:transform .25s ease,visibility 0s linear .25s;box-shadow:none;min-height:100vh;height:100vh;overflow-y:auto}.crisp-context-rail.is-open{transform:translateX(0);visibility:visible;box-shadow:-4px 0 24px rgba(0,0,0,.12);transition:transform .25s ease}.crisp-right-sheet-btn,.crisp-right-sheet-close{display:flex}}@media (max-width:767px){.crisp-app{grid-template-columns:1fr}.crisp-nav-rail{display:none}.crisp-main{padding-bottom:72px}.crisp-context-rail{position:fixed;right:0;top:0;bottom:0;width:min(300px,88vw);transform:translateX(calc(100% + 1px));visibility:hidden;z-index:300;transition:transform .25s ease,visibility 0s linear .25s;min-height:100vh;height:100vh;overflow-y:auto}.crisp-context-rail.is-open{transform:translateX(0);visibility:visible;box-shadow:-4px 0 24px rgba(0,0,0,.15);transition:transform .25s ease}.crisp-bottom-nav,.crisp-right-sheet-btn,.crisp-right-sheet-close{display:flex}}.crisp-nav-rail{background:var(--cream-2,var(--bg-elev));border-right:1px solid var(--taupe-light,var(--card-border));display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}@media (max-width:767px){.crisp-nav-rail{display:none}}.crisp-brand-block{display:flex;align-items:center;gap:10px;padding:18px 20px;border-bottom:1px solid var(--taupe-light,var(--card-border));text-decoration:none;color:var(--charcoal,var(--text))}.crisp-brand-word{font-family:var(--fraunces);font-size:20px;font-weight:400;letter-spacing:-.005em;white-space:nowrap}.crisp-brand-word .home{color:var(--charcoal,var(--text))}.crisp-brand-word .ration{color:var(--crisp-sage,var(--sage))}.crisp-nav-section{padding:14px 0;border-bottom:1px solid var(--taupe-light,var(--card-border))}.crisp-nav-label{padding:0 20px 8px;font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--taupe,var(--text-mute));text-transform:uppercase}.crisp-nav-item{display:flex;align-items:center;justify-content:space-between;padding:8px 20px;font-size:13px;color:var(--charcoal,var(--text));text-decoration:none;border-left:3px solid transparent;transition:background .1s}.crisp-nav-item.is-active,.crisp-nav-item:hover{background:var(--cream,var(--bg))}.crisp-nav-item.is-active{border-left-color:var(--crisp-sage,var(--sage));color:var(--crisp-sage-dark,var(--sage-deep));font-weight:500}.crisp-nav-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:currentColor}.crisp-nav-text{flex:1;min-width:0}.crisp-nav-badge{font-family:var(--mono);font-size:11px;color:var(--taupe,var(--text-mute))}.crisp-nav-badge.hot{color:var(--crisp-clay,var(--clay-accent))}.crisp-nav-footer{margin-top:auto;padding:14px 20px;border-top:1px solid var(--taupe-light,var(--card-border));font-family:var(--mono);font-size:11px;color:var(--taupe,var(--text-mute));line-height:1.6}.crisp-status-dot{display:inline-block;width:6px;height:6px;background:var(--crisp-sage,var(--sage));border-radius:var(--radius-pill);margin-right:6px}.crisp-main{background:var(--cream,var(--bg));overflow-y:auto;min-height:100vh}.crisp-top-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;border-bottom:1px solid var(--taupe-light,var(--card-border));background:var(--cream-2,var(--bg-elev))}.crisp-top-title{font-family:var(--fraunces);font-size:22px;font-weight:400;letter-spacing:-.01em;color:var(--charcoal,var(--text))}.crisp-top-meta{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--ink,var(--text-mute));text-transform:uppercase}.crisp-top-meta strong{color:var(--charcoal,var(--text));font-weight:500}.crisp-context-rail{background:var(--cream-2,var(--bg-elev));border-left:1px solid var(--taupe-light,var(--card-border));overflow-y:auto}.crisp-rail-section{padding:14px 18px;border-bottom:1px solid var(--taupe-light,var(--card-border))}.crisp-rail-section:last-child{border-bottom:none}.crisp-rail-label{font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--taupe,var(--text-mute));text-transform:uppercase;margin-bottom:10px}.crisp-right-sheet-btn{display:flex;position:fixed;top:12px;right:12px;z-index:301;align-items:center;justify-content:center;width:36px;height:36px;background:var(--cream-2,var(--bg-elev));border:1px solid var(--taupe-light,var(--card-border));color:var(--charcoal,var(--text));cursor:pointer;transition:background .1s}.crisp-right-sheet-btn:hover{background:var(--cream,var(--bg))}.crisp-right-sheet-btn.is-open{color:var(--crisp-sage-dark,var(--sage-deep))}.crisp-right-sheet-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:12px 12px 0 auto;background:transparent;border:1px solid var(--taupe-light,var(--card-border));color:var(--charcoal,var(--text));cursor:pointer;transition:background .1s}.crisp-right-sheet-close:hover{background:var(--cream,var(--bg))}.crisp-right-sheet-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.25);z-index:299}@media (min-width:1200px){.crisp-nav-icon,.crisp-right-sheet-btn,.crisp-right-sheet-close{display:none}}.crisp-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--cream-2,var(--bg-elev));border-top:1px solid var(--taupe-light,var(--card-border));z-index:200;align-items:stretch}.crisp-bottom-nav-item{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:var(--taupe,var(--text-mute));font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;transition:color .1s}.crisp-bottom-nav-item:hover{color:var(--charcoal,var(--text))}.crisp-bottom-nav-item.is-active{color:var(--crisp-sage-dark,var(--sage-deep))}@media (min-width:768px){.crisp-bottom-nav{display:none}}.ask-chef-fab{bottom:24px;right:24px}.ask-chef-fab-hint{bottom:30px;right:84px}@media (max-width:767px){.ask-chef-fab{bottom:80px}.ask-chef-fab-hint{bottom:86px}}body:has(.shop) .ask-chef-fab{bottom:128px}body:has(.shop) .ask-chef-fab-hint{bottom:134px}.crisp-kpi-strip{display:grid;border-bottom:1px solid var(--taupe-light,var(--card-border))}.crisp-kpi{padding:14px 20px;border-right:1px solid var(--taupe-light,var(--card-border))}.crisp-kpi:last-child{border-right:none}.crisp-kpi-label{font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--taupe,var(--text-mute));text-transform:uppercase;margin-bottom:6px}.crisp-kpi-value{font-family:var(--fraunces);font-size:24px;letter-spacing:-.01em;color:var(--charcoal,var(--text));line-height:1}.crisp-kpi-value.sage{color:var(--crisp-sage-dark,var(--sage-deep))}.crisp-kpi-value.clay{color:var(--crisp-clay,var(--clay-accent))}.crisp-kpi-delta{font-family:var(--mono);font-size:11px;color:var(--ink,var(--text-mute));margin-top:4px}.crisp-kpi-delta.up{color:var(--crisp-sage-dark,var(--sage-deep))}.crisp-kpi-delta.down{color:var(--crisp-clay,var(--clay-accent))}.dash-secondary{margin-top:48px;padding-top:24px;border-top:1px solid var(--taupe-light,var(--card-border));display:flex;flex-direction:column;gap:16px}.crisp-kpi-empty-copy{font-family:var(--inter);font-size:13px;line-height:1.4;color:var(--text-mute);margin-top:8px;max-width:22ch}.crisp-panel{border:1px solid var(--taupe-light,var(--card-border));background:var(--cream,var(--bg))}.crisp-panel.accent-sage{border-left:3px solid var(--crisp-sage,var(--sage))}.crisp-panel.accent-clay{border-left:3px solid var(--crisp-clay,var(--clay-accent))}.crisp-panel-header{display:flex;justify-content:space-between;align-items:baseline;padding:12px 20px;background:var(--cream-2,var(--bg-elev));border-bottom:1px solid var(--taupe-light,var(--card-border))}.crisp-panel-title{font-family:var(--fraunces);font-size:16px;font-weight:400;letter-spacing:-.01em;color:var(--charcoal,var(--text))}.crisp-panel-meta{font-family:var(--mono);font-size:11px;color:var(--ink,var(--text-mute))}.crisp-section-h{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.28em;color:var(--crisp-sage-dark,var(--sage-deep));text-transform:uppercase;margin-bottom:14px;padding-bottom:6px;border-bottom:2px solid var(--crisp-sage,var(--sage))}.crisp-section-h.clay{color:var(--crisp-clay,var(--clay-accent));border-color:var(--crisp-clay,var(--clay-accent))}.crisp-chef-quote{font-family:var(--fraunces);font-style:italic;font-size:13px;line-height:1.6;color:var(--ink,var(--text-mute))}.crisp-chef-quote strong{color:var(--charcoal,var(--text));font-style:normal;font-weight:500}.crisp-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px dashed var(--taupe-light,var(--card-border));font-size:12px}.crisp-row:last-child{border-bottom:none}.crisp-mono{font-family:var(--mono);font-size:11px}.crisp-stamp{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--taupe,var(--text-mute));text-transform:uppercase}.crisp-avatar{width:24px;height:24px;background:var(--crisp-sage,var(--sage));color:var(--cream,var(--bg));display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;flex-shrink:0}.crisp-avatar.clay{background:var(--crisp-clay,var(--clay-accent))}.crisp-avatar.taupe{background:var(--taupe,#b29e8e)}.crisp-avatar.ink{background:var(--ink,#6b5d4a)}.crisp-tag{display:inline-block;font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;padding:2px 5px;background:var(--cream-2,var(--bg-elev));color:var(--crisp-sage-dark,var(--sage-deep));border:1px solid var(--crisp-sage,var(--sage))}.crisp-tag.expiring{background:rgba(198,97,63,.1);color:var(--crisp-clay,var(--clay-accent));border-color:var(--crisp-clay,var(--clay-accent))}.crisp-progress-track{height:4px;background:var(--cream,var(--bg));border:1px solid var(--taupe-light,var(--card-border));position:relative}.crisp-progress-fill{position:absolute;top:0;left:0;bottom:0;background:var(--crisp-sage,var(--sage))}.crisp-sticky-bar{position:sticky;bottom:0;background:var(--charcoal,var(--text));color:var(--cream,var(--bg));padding:12px 24px;display:flex;justify-content:space-between;align-items:center;border-top:2px solid var(--crisp-sage,var(--sage));z-index:20}.crisp-timer-card{border:2px solid var(--crisp-clay,var(--clay-accent));padding:18px 20px;text-align:center;background:var(--cream-2,var(--bg-elev))}.crisp-timer-card.done{border-color:var(--crisp-sage,var(--sage))}.crisp-timer-big{font-family:var(--mono);font-size:44px;letter-spacing:-.02em;color:var(--charcoal,var(--text));line-height:1}.crisp-aisle-btn{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;font-size:13px;color:var(--charcoal,var(--text));text-decoration:none;border-left:3px solid transparent;cursor:pointer}.crisp-aisle-btn.is-active,.crisp-aisle-btn:hover{background:var(--cream,var(--bg))}.crisp-aisle-btn.is-active{border-left-color:var(--crisp-sage,var(--sage));color:var(--crisp-sage-dark,var(--sage-deep));font-weight:500}.crisp-aisle-count{font-family:var(--mono);font-size:11px;color:var(--taupe,var(--text-mute))}.crisp-aisle-count.done{color:var(--crisp-sage-dark,var(--sage-deep))}.crisp-item-row{display:grid;grid-template-columns:40px 1fr 100px 90px 80px 32px;gap:12px;padding:10px 20px;border-bottom:1px dashed var(--taupe-light,var(--card-border));align-items:center}.crisp-item-row:hover{background:var(--cream-2,var(--bg-elev))}.crisp-item-row.is-checked{opacity:.5;text-decoration:line-through}.crisp-check{width:20px;height:20px;border:2px solid var(--charcoal,var(--text));cursor:pointer;background:transparent;appearance:none;-webkit-appearance:none;flex-shrink:0}.crisp-check:checked{background:var(--crisp-sage,var(--sage));border-color:var(--crisp-sage,var(--sage));background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 12 10' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5l4 4L11 1' stroke='%23f8f5f0' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:10px}.crisp-step-nav{display:grid;grid-template-columns:32px 1fr auto;gap:10px;padding:11px 20px;align-items:center;border-left:3px solid transparent;font-size:12px;cursor:pointer}.crisp-step-nav:hover{background:var(--cream,var(--bg))}.crisp-step-nav.is-done{color:var(--taupe,var(--text-mute))}.crisp-step-nav.is-active{background:var(--cream,var(--bg));border-left-color:var(--crisp-clay,var(--clay-accent));font-weight:500}.crisp-step-num{font-family:var(--fraunces);font-size:20px;font-style:italic;color:var(--taupe,var(--text-mute));line-height:1}.crisp-step-nav.is-done .crisp-step-num{color:var(--crisp-sage,var(--sage))}.crisp-big-num,.crisp-step-nav.is-active .crisp-step-num{color:var(--crisp-clay,var(--clay-accent))}.crisp-big-num{font-family:var(--fraunces);font-size:96px;line-height:.85;font-style:italic}.crisp-big-text{font-family:var(--fraunces);font-size:28px;line-height:1.2;letter-spacing:-.01em;color:var(--charcoal,var(--text))}.crisp-big-text strong{color:var(--crisp-clay,var(--clay-accent));font-weight:500}.crisp-hero-strip{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--taupe-light,var(--card-border))}.crisp-hero-info{padding:24px 32px;display:flex;flex-direction:column;justify-content:space-between;background:var(--cream-2,var(--bg-elev));border-left:1px solid var(--taupe-light,var(--card-border))}.crisp-hero-kicker{font-family:var(--mono);font-size:10px;letter-spacing:.28em;color:var(--crisp-sage-dark,var(--sage-deep));text-transform:uppercase;margin-bottom:8px}.crisp-hero-title{font-family:var(--fraunces);font-size:30px;line-height:1.1;letter-spacing:-.01em;font-weight:400;margin-bottom:14px;color:var(--charcoal,var(--text))}.crisp-hero-desc{font-family:var(--fraunces);font-style:italic;font-size:14px;line-height:1.6;color:var(--ink,var(--text-mute))}.crisp-hero-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--taupe-light,var(--card-border))}.crisp-meta-label{font-family:var(--mono);font-size:9px;letter-spacing:.22em;color:var(--taupe,var(--text-mute));text-transform:uppercase}.crisp-meta-value{font-family:var(--fraunces);font-size:18px;letter-spacing:-.01em;color:var(--charcoal,var(--text));margin-top:2px}.crisp-meta-value.clay{color:var(--crisp-clay,var(--clay-accent))}.crisp-ing-row{display:grid;grid-template-columns:60px 1fr auto;gap:10px;padding:7px 0;border-bottom:1px dashed var(--taupe-light,var(--card-border));align-items:baseline;font-size:13px}.crisp-ing-row:last-child{border-bottom:none}.crisp-ing-qty{color:var(--crisp-sage-dark,var(--sage-deep));letter-spacing:.05em}.crisp-ing-cost,.crisp-ing-qty{font-family:var(--mono);font-size:11px}.crisp-ing-cost{color:var(--taupe,var(--text-mute))}.crisp-have-chip{font-family:var(--mono);font-size:9px;letter-spacing:.15em;text-transform:uppercase;padding:1px 5px;background:rgba(84,114,67,.12);color:var(--crisp-sage-dark,var(--sage-deep));border:1px solid var(--crisp-sage,var(--sage));margin-left:6px}.crisp-step{display:grid;grid-template-columns:40px 1fr 100px;gap:16px;padding:14px 0;border-bottom:1px solid var(--taupe-light,var(--card-border))}.crisp-step:last-child{border-bottom:none}.crisp-step-roman{font-family:var(--fraunces);font-size:24px;color:var(--crisp-sage-dark,var(--sage-deep));font-style:italic;line-height:1}.crisp-step-text{font-size:14px;line-height:1.6;color:var(--charcoal,var(--text))}.crisp-step-timing{font-family:var(--mono);font-size:11px;color:var(--taupe,var(--text-mute));text-align:right;letter-spacing:.05em}.crisp-step-timing strong{color:var(--crisp-clay,var(--clay-accent));display:block}.crisp-detail-panel{background:var(--cream-2,var(--bg-elev));padding:20px 24px;border:1px solid var(--taupe-light,var(--card-border));border-left:3px solid var(--crisp-sage,var(--sage))}.crisp-detail-txt{font-family:var(--fraunces);font-style:italic;font-size:15px;line-height:1.7;color:var(--ink,var(--text-mute))}.crisp-detail-txt strong{color:var(--crisp-clay,var(--clay-accent));font-style:normal;font-weight:500}.crisp-ask-chef-panel{background:var(--cream,var(--bg));border:1px solid var(--crisp-clay,var(--clay-accent));padding:12px}.crisp-ask-chef-btn{width:100%;background:var(--crisp-clay,var(--clay-accent));color:var(--cream,var(--bg));border:none;padding:10px;font-family:var(--inter);font-size:11px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer}.crisp-ask-chef-btn:hover{background:var(--charcoal,var(--text))}.crisp-btn{background:transparent;border:1px solid var(--taupe-light,var(--card-border));color:var(--charcoal,var(--text));padding:10px 14px;font-family:var(--inter);font-size:11px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:background .12s,color .12s}.crisp-btn:hover{background:var(--charcoal,var(--text));color:var(--cream,var(--bg));border-color:var(--charcoal,var(--text))}.crisp-btn.primary{background:var(--crisp-clay,var(--clay-accent));border-color:var(--crisp-clay,var(--clay-accent));color:var(--cream,var(--bg))}.crisp-btn.primary:hover{background:var(--charcoal,var(--text));border-color:var(--charcoal,var(--text))}.crisp-btn.sage{background:var(--crisp-sage,var(--sage));border-color:var(--crisp-sage,var(--sage));color:var(--cream,var(--bg))}.crisp-btn.sage:hover{background:var(--crisp-sage-dark,var(--sage-deep));border-color:var(--crisp-sage-dark,var(--sage-deep))}.hero-shell{position:relative;overflow:hidden;isolation:isolate;background:var(--bg)}.hero-photo{position:absolute;inset:0;z-index:0}.hero-photo-frame{position:absolute;inset:-7% 0;will-change:transform}.hero-photo-img{object-fit:cover;object-position:center 56%}.hero-photo-wash{position:absolute;inset:0;pointer-events:none}.hero{position:relative;z-index:1;padding:100px 32px 80px;max-width:1000px;margin:0 auto;text-align:center}.hero-eyebrow{font-family:var(--mono);color:var(--sage);font-size:12px;text-transform:uppercase;letter-spacing:3px;margin-bottom:24px;font-weight:500}.hero h1{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(38px,6.5vw,74px);font-weight:500;color:var(--text);line-height:1.05;letter-spacing:-.025em;margin-bottom:24px}.hero h1 .accent-word{color:var(--sage-deep);font-style:italic;font-weight:500}.hero-sub{font-size:clamp(16px,2vw,19px);color:var(--text-mute);max-width:620px;margin:0 auto 40px;line-height:1.6}.hero-form{display:flex;gap:8px;max-width:460px;margin:0 auto;flex-wrap:wrap}.hero-form input[type=email]{flex:1;min-width:240px;padding:16px 18px;background:var(--card);border:1px solid var(--card-border-strong);border-radius:0;font-family:var(--inter);font-size:15px;color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s}.hero-form input[type=email]:focus{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}.hero-form button{padding:16px 24px;background:var(--sage);color:var(--bg);border:none;border-radius:0;font-family:var(--inter);font-weight:700;font-size:15px;cursor:pointer;transition:background .22s ease,transform .22s ease,box-shadow .22s ease;white-space:nowrap}.hero-form button:hover{background:var(--sage-deep);transform:translateY(-1.5px);box-shadow:0 6px 18px rgba(71,97,56,.28)}.hero-form button:active{transform:translateY(0);box-shadow:none}@media (prefers-reduced-motion:reduce){.hero-form button{transition:background .15s}.hero-form button:hover{transform:none;box-shadow:none}}.hero-form-note{font-family:var(--mono);font-size:11px;color:var(--text-mute);margin-top:16px;letter-spacing:.5px;text-transform:uppercase}.hero-visual{margin-top:60px;padding:32px;background:var(--card);border:1px solid var(--card-border);border-radius:0;box-shadow:0 8px 32px rgba(61,54,48,.06);max-width:520px;margin-left:auto;margin-right:auto;text-align:left}.visual-eyebrow{font-family:var(--mono);color:var(--sage-deep);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;margin-bottom:8px}.visual-h{font-family:var(--fraunces);font-size:24px;font-weight:500;color:var(--text);margin-bottom:4px}.visual-sub{font-size:13px;color:var(--text-mute);margin-bottom:20px}.visual-savings{background:linear-gradient(135deg,var(--sage-tint),transparent);border:1px solid var(--sage-border);border-radius:0;padding:14px 16px;margin-bottom:12px}.visual-savings-label{font-family:var(--mono);font-size:10px;color:var(--sage-deep);letter-spacing:1.2px;text-transform:uppercase;font-weight:600;margin-bottom:6px}.visual-savings-value{font-family:var(--fraunces);font-size:32px;font-weight:500;color:var(--sage-deep);line-height:1;letter-spacing:-.02em}.visual-meals{background:var(--bg-elev);border-radius:0;padding:14px 16px}.visual-meals-label{font-family:var(--mono);font-size:10px;color:var(--text-mute);letter-spacing:1.2px;text-transform:uppercase;font-weight:600;margin-bottom:8px}.visual-meal-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;color:var(--text);border-bottom:1px solid var(--card-border)}.visual-meal-row:last-child{border-bottom:none}.visual-meal-row span:last-child{color:var(--text-mute)}.visual-meal-dot{color:var(--taupe);margin-right:8px}section.faq,section.guarantee,section.household,section.how,section.pillars{padding:80px 32px;max-width:1180px;margin:0 auto}.section-eyebrow{font-family:var(--mono);color:var(--sage);font-size:11px;text-transform:uppercase;letter-spacing:2.5px;margin-bottom:16px;font-weight:500;text-align:center}.section-title{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(30px,4vw,42px);font-weight:500;color:var(--text);letter-spacing:-.02em;text-align:center;max-width:720px;margin:0 auto 20px;line-height:1.15}.section-sub{color:var(--text-mute);font-size:16px;text-align:center;max-width:620px;margin:0 auto 60px;line-height:1.6}.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media (max-width:800px){.pillars-grid{grid-template-columns:1fr}}.pillar{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:32px 28px}.pillar-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--sage-tint);border-radius:0;margin-bottom:20px}.pillar-title{font-family:var(--fraunces);font-size:22px;font-weight:600;color:var(--text);margin-bottom:10px;letter-spacing:-.01em}.pillar-desc{font-size:14px;color:var(--text-mute);line-height:1.7}.how{background:var(--bg-elev);max-width:none;padding-left:32px;padding-right:32px}.how-inner{max-width:1180px;margin:0 auto}.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:40px}@media (max-width:800px){.how-steps{grid-template-columns:1fr}}.how-step{text-align:center}.how-step-num{font-family:var(--fraunces);font-size:56px;font-weight:500;color:var(--sage);line-height:1;margin-bottom:16px;font-style:italic;letter-spacing:-.03em}.how-step-title{font-family:var(--fraunces);font-size:20px;font-weight:600;color:var(--text);margin-bottom:8px}.how-step-desc{font-size:14px;color:var(--text-mute);line-height:1.7;max-width:300px;margin:0 auto}.household-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width:800px){.household-grid{grid-template-columns:1fr}}.household-card{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:28px}.household-tag{display:inline-block;background:var(--sage-tint);color:var(--sage-deep);padding:4px 12px;border-radius:0;font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;font-weight:600;margin-bottom:16px}.household-title{font-family:var(--fraunces);font-size:20px;font-weight:600;color:var(--text);margin-bottom:12px}.household-desc{font-size:13px;color:var(--text-mute);line-height:1.7}.guarantee-card{background:linear-gradient(135deg,var(--sage-tint),transparent);border:1px solid var(--sage-border);border-radius:0;padding:48px 40px;text-align:center;max-width:720px;margin:0 auto}.guarantee-quote{font-family:var(--fraunces);font-style:italic;font-size:clamp(22px,3vw,28px);font-weight:500;color:var(--sage-deep);line-height:1.4;margin-bottom:24px;letter-spacing:-.01em}.guarantee-body{font-size:15px;color:var(--text);line-height:1.7;max-width:540px;margin:0 auto}.faq-list{max-width:780px;margin:0 auto}.faq-item{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:24px 28px;margin-bottom:12px}.faq-q{font-family:var(--fraunces);font-size:17px;font-weight:600;color:var(--text);margin-bottom:8px;letter-spacing:-.01em}.faq-a{font-size:14px;color:var(--text-mute);line-height:1.7}.final-cta{padding:80px 32px;text-align:center;background:var(--sage);color:var(--bg)}.final-cta .section-eyebrow{color:rgba(248,245,240,.7)}.final-cta .section-title{color:var(--bg)}.final-cta .section-sub{color:rgba(248,245,240,.85)}.final-cta .hero-form input[type=email]{background:rgba(248,245,240,.15);border-color:rgba(248,245,240,.3);color:var(--bg)}.final-cta .hero-form input[type=email]::placeholder{color:rgba(248,245,240,.5)}.final-cta .hero-form input[type=email]:focus{border-color:var(--bg);box-shadow:0 0 0 3px rgba(248,245,240,.15)}.final-cta .hero-form button{background:var(--bg);color:var(--sage-deep)}.final-cta .hero-form button:hover{background:#ffffff}.final-cta .hero-form-note{color:rgba(248,245,240,.6)}footer{padding:40px 32px;background:var(--text);color:var(--bg)}.footer-inner{max-width:1180px;margin:0 auto;justify-content:space-between;flex-wrap:wrap;gap:20px}.footer-inner,.footer-logo{display:flex;align-items:center}.footer-logo{gap:10px;font-family:var(--fraunces);font-weight:500;font-size:20px;letter-spacing:-.02em}.footer-logo .accent{color:var(--sage-light)}.footer-links{display:flex;gap:20px;font-size:13px}.footer-links a{color:rgba(248,245,240,.7);text-decoration:none}.footer-links a:hover{color:var(--bg)}.footer-social{display:flex;gap:16px;font-family:var(--mono);font-size:11px;color:rgba(248,245,240,.5);letter-spacing:.5px}.footer-social a{color:rgba(248,245,240,.7);text-decoration:none}.footer-social a:hover{color:var(--bg)}.footer-copyright{max-width:1180px;margin:32px auto 0;padding-top:20px;border-top:1px solid rgba(248,245,240,.1);font-family:var(--mono);font-size:10px;color:rgba(248,245,240,.62);letter-spacing:1px;text-transform:uppercase;text-align:center}.success-message{display:none;max-width:460px;margin:0 auto;padding:20px 24px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;text-align:center}.success-message.show{display:block}.success-message strong{color:var(--sage-deep);font-family:var(--fraunces);font-size:17px;font-weight:600}.splash{max-width:640px;margin:0 auto;padding:120px 32px 100px;text-align:center}.splash h1{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(32px,5vw,44px);font-weight:500;color:var(--text);line-height:1.15;letter-spacing:-.02em;margin-bottom:28px}.splash-note{font-size:16px;color:var(--text-mute);max-width:480px;margin:0 auto 44px;line-height:1.65}.splash .divider{margin-bottom:44px}.analytics-note{font-family:var(--inter);font-size:12px;color:var(--taupe-deep,var(--text-mute));margin-top:10px}.analytics-note a{color:var(--ink,var(--text-mute));text-decoration:underline;text-decoration-color:var(--taupe-light,var(--card-border));text-underline-offset:2px}.analytics-note a:hover{color:var(--sage-deep)}.success-message p{color:var(--text);font-size:13px;margin-top:4px}@media (scripting:enabled) and (prefers-reduced-motion:no-preference){.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s cubic-bezier(.22,.61,.36,1),transform .6s cubic-bezier(.22,.61,.36,1)}.reveal.is-in{opacity:1;transform:none}}.divider{display:flex;align-items:center;justify-content:center;gap:22px;max-width:1180px;margin:0 auto;padding:4px 32px;color:var(--sage)}.divider .botanical{flex:none;opacity:.55}.divider-rule{height:1px;flex:1 1 auto;max-width:190px;background:linear-gradient(90deg,transparent,var(--card-border-strong))}.divider-rule:last-child{background:linear-gradient(270deg,transparent,var(--card-border-strong))}@media (min-width:900px){.hero-shell{min-height:640px}.hero{max-width:1180px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:56px;align-items:center;text-align:left;padding:104px 32px 100px}.hero-copy{max-width:580px}.hero h1{font-size:clamp(40px,4.4vw,62px)}.hero-sub{margin:0 0 36px;max-width:500px}.hero-form{margin:0}.hero-form-note{text-align:left}.hero .success-message{margin:0}.hero-photo-wash{background:linear-gradient(94deg,var(--bg) 0,rgba(248,245,240,.965) 30%,rgba(248,245,240,.74) 47%,rgba(248,245,240,.3) 63%,rgba(248,245,240,.42) 100%),linear-gradient(0deg,var(--bg) 0,rgba(248,245,240,0) 24%),linear-gradient(180deg,rgba(248,245,240,.55) 0,rgba(248,245,240,0) 16%)}.hero-visual{margin:0;max-width:430px;justify-self:end;width:100%;background:rgba(255,255,255,.84);backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);border-color:rgba(255,255,255,.75);box-shadow:0 18px 50px rgba(61,54,48,.16)}.hero-visual .visual-meals{background:rgba(239,234,224,.75)}}@media (max-width:899px){.hero-photo-frame{inset:0}.hero-photo-img{object-position:center 48%}.hero-photo-wash{background:linear-gradient(180deg,rgba(248,245,240,.9) 0,rgba(248,245,240,.93) 34%,rgba(248,245,240,.93) 68%,rgba(248,245,240,.97) 86%,var(--bg) 100%)}.hero{padding-top:76px}}.numbers{position:relative;overflow:hidden;isolation:isolate;padding:74px 32px;border-top:1px solid var(--card-border);border-bottom:1px solid var(--card-border);background:var(--bg-elev)}.numbers-photo{position:absolute;inset:0;z-index:0}.numbers-photo-img{object-fit:cover;object-position:center 60%}.numbers-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(248,245,240,.93),rgba(248,245,240,.9)),linear-gradient(90deg,rgba(239,234,224,.6),rgba(248,245,240,.25))}.numbers-inner{position:relative;z-index:1;max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.number{text-align:center}.number-value{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(46px,6.4vw,78px);font-weight:500;line-height:1;letter-spacing:-.03em;color:var(--sage-deep);margin-bottom:12px}.number:nth-child(2) .number-value{color:var(--clay-accent)}.number-label{font-size:14px;color:var(--text-mute);max-width:260px;margin:0 auto;line-height:1.55}@media (max-width:760px){.numbers{padding:56px 24px}.numbers-inner{grid-template-columns:1fr;gap:34px}.number-label{max-width:300px}}.week{padding:88px 32px;max-width:1180px;margin:0 auto}.week-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.week-card{min-width:0}.week-card-media{position:relative;width:100%;aspect-ratio:8/9;border-radius:0;overflow:hidden;background:var(--bg-elev);border:1px solid var(--card-border);box-shadow:0 6px 20px rgba(61,54,48,.07)}.week-card-img{object-fit:cover;transition:transform .6s cubic-bezier(.22,.61,.36,1)}.week-card:hover .week-card-img{transform:scale(1.045)}.week-card-name{font-family:var(--fraunces);font-size:15px;font-weight:500;color:var(--text);line-height:1.35;margin-top:12px;letter-spacing:-.01em}.week-card-more{display:flex}.week-more-inner{width:100%;aspect-ratio:8/9;border-radius:0;border:1px dashed var(--sage-border);background:var(--sage-tint);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;gap:10px}.week-more-num{font-family:var(--fraunces);font-size:40px;line-height:1;color:var(--sage-deep)}.week-more-text{font-size:13px;color:var(--sage-deep);line-height:1.5;max-width:180px}@media (max-width:1000px){.week-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:620px){.week{padding:64px 24px}.week-grid{grid-template-columns:repeat(2,1fr);gap:14px}.week-card-name{font-size:13.5px}}.family{max-width:1180px;margin:0 auto;padding:40px 32px 88px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:56px;align-items:center}.family-media{position:relative;width:100%;aspect-ratio:11/10;border-radius:0;overflow:hidden;background:var(--bg-elev);border:1px solid var(--card-border);box-shadow:0 16px 44px rgba(61,54,48,.12)}.family-img{object-fit:cover;object-position:center 40%}.family-copy .section-eyebrow,.family-copy .section-title{text-align:left;margin-left:0}.family-copy .section-title{margin-bottom:22px;max-width:520px}.family-text{color:var(--text-mute);font-size:16px;line-height:1.7;margin-bottom:16px;max-width:520px}.family-cta{display:inline-block;margin-top:10px;font-family:var(--inter);font-weight:600;font-size:15px;color:var(--sage-deep);text-decoration:none;border-bottom:1.5px solid var(--sage-border);padding-bottom:3px;transition:color .2s ease,border-color .2s ease}.family-cta:hover{color:var(--text);border-color:var(--sage)}@media (max-width:900px){.family{grid-template-columns:1fr;gap:32px;padding:24px 24px 72px}.family-media{aspect-ratio:16/11}.family-copy .section-eyebrow,.family-copy .section-title,.family-text{text-align:center;margin-left:auto;margin-right:auto}.family-copy{text-align:center}}.legal{line-height:1.7;font-family:var(--font-inter),-apple-system,sans-serif}.legal .nav-back{color:var(--text-mute);text-decoration:none;font-size:14px;font-weight:500}.legal .nav-back:hover{color:var(--text)}.legal main{max-width:720px;margin:0 auto;padding:80px 32px 120px}.legal .eyebrow{font-family:var(--mono);color:var(--sage);font-size:11px;text-transform:uppercase;letter-spacing:2.5px;margin-bottom:20px;font-weight:500}.legal main h1{font-family:var(--fraunces);font-optical-sizing:auto;font-size:48px;font-weight:500;color:var(--text);line-height:1.1;letter-spacing:-.025em;margin-bottom:12px}.legal .lede{font-size:17px;color:var(--text-mute);margin-bottom:40px}.legal main h2{font-size:24px;margin-top:40px;margin-bottom:12px;letter-spacing:-.01em}.legal main h2,.legal main h3{font-family:var(--fraunces);font-weight:600;color:var(--text)}.legal main h3{font-size:18px;margin-top:24px;margin-bottom:8px}.legal main p{color:var(--text);font-size:15px;margin-bottom:14px}.legal main ul{list-style:disc;padding-left:24px;margin-bottom:16px}.legal main li{color:var(--text);font-size:15px;margin-bottom:6px}.legal main strong{color:var(--text);font-weight:600}.legal .placeholder-note{background:linear-gradient(135deg,var(--sage-tint),transparent);border:1px solid var(--sage-border);border-left:3px solid var(--sage);border-radius:0;padding:18px 22px;margin-bottom:32px;font-size:14px}.legal .placeholder-note strong,.legal main a{color:var(--sage-deep)}.legal main a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.legal footer{padding:32px;background:var(--text);color:var(--bg);text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase}.admin-shell{max-width:1180px;margin:0 auto;padding:44px 32px 96px}.admin-nav-right{display:flex;align-items:center;gap:20px}.notif-bell,.notif-bell-wrap{position:relative;display:flex;align-items:center}.notif-bell{justify-content:center;width:34px;height:34px;border-radius:0;border:1px solid transparent;background:transparent;color:var(--text-mute);cursor:pointer}.notif-bell:hover{color:var(--text);background:var(--bg-elev)}.notif-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 3px;border-radius:100px;background:var(--clay);color:#fff;font-family:var(--mono);font-size:10px;font-weight:700;line-height:16px;text-align:center}.notif-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:320px;max-height:380px;overflow-y:auto;background:var(--card);border:1px solid var(--card-border);border-radius:0;box-shadow:0 12px 32px rgba(61,54,48,.14);padding:8px 0;z-index:40}.notif-dropdown-head{margin:0;padding:8px 16px 10px;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--text-mute);border-bottom:1px solid var(--card-border)}.notif-empty{margin:0;padding:20px 16px;font-size:13.5px;color:var(--text-mute)}.notif-list{list-style:none;margin:0;padding:0}.notif-item-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 16px;border:0;background:transparent;text-align:left;cursor:pointer}.notif-item.is-unread .notif-item-btn{background:var(--sage-tint)}.notif-item-btn:disabled{cursor:default}.notif-item-btn:hover:not(:disabled){background:var(--bg-elev)}.notif-item-title{font-size:13.5px;font-weight:600;color:var(--text)}.notif-item-body{font-size:13px;color:var(--text-mute);line-height:1.4}.notif-item-time{font-size:11px;color:var(--text-dim);margin-top:2px}.admin-nav-email{font-family:var(--mono);font-size:11px;letter-spacing:.4px;color:var(--text-mute)}@media (max-width:620px){.admin-nav-email{display:none}}.admin-signout{background:none;border:1px solid var(--card-border-strong);border-radius:0;padding:8px 14px;font-family:var(--inter);font-size:13px;font-weight:500;color:var(--text-mute);cursor:pointer;transition:border-color .15s,color .15s}.admin-signout:hover:not(:disabled){border-color:var(--sage-border);color:var(--sage-deep)}.admin-signout:disabled{opacity:.55;cursor:not-allowed}.admin-eyebrow{font-family:var(--mono);color:var(--crisp-sage-dark,var(--sage));font-size:10px;text-transform:uppercase;letter-spacing:.28em;font-weight:400;margin-bottom:8px}.admin-h1{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(32px,4vw,48px);letter-spacing:-.02em;line-height:1.1}.admin-h1,.admin-h2{font-weight:400;color:var(--charcoal,var(--text))}.admin-h2{font-family:var(--fraunces);font-size:clamp(20px,2.2vw,28px);letter-spacing:-.01em}.p-card{background:var(--cream,var(--card));border:1px solid var(--taupe-light,var(--card-border));border-radius:0;padding:24px}.p-card+.p-card{margin-top:16px}.p-card-hero{background:var(--cream-2,var(--bg-elev));border:1px solid var(--crisp-sage,var(--sage-border));border-left:3px solid var(--crisp-sage,var(--sage));border-radius:0;padding:24px 28px;box-shadow:none}.admin-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:32px}@media (max-width:980px){.admin-grid{grid-template-columns:1fr}}@media (min-width:981px){.admin-col-right{position:sticky;top:92px}}.field{margin-bottom:24px}.field:last-of-type{margin-bottom:0}.field-label{display:flex;align-items:baseline;gap:8px;font-family:var(--mono);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;font-weight:600;color:var(--text-mute);margin-bottom:9px}.field-req{color:var(--sage);letter-spacing:0}.field-opt{color:var(--text-dim);font-weight:500;letter-spacing:.6px}.field-hint{font-size:12px;color:var(--text-dim);margin-top:7px;line-height:1.5}.input,.select,.textarea{width:100%;padding:12px 14px;background:var(--bg);border:1px solid var(--card-border-strong);border-radius:0;font-family:var(--inter);font-size:15px;color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.input::placeholder,.textarea::placeholder{color:var(--text-dim)}.input:focus,.select:focus,.textarea:focus{border-color:var(--sage);background:var(--card);box-shadow:0 0 0 3px var(--sage-tint)}.textarea{font-family:var(--mono);font-size:13px;line-height:1.65;resize:vertical}.select{appearance:none;-webkit-appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.75 6 6.25 11 1.75' stroke='%23547243' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer}.chip-row{display:flex;flex-wrap:wrap;gap:7px}.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:1px solid var(--card-border-strong);border-radius:0;background:var(--bg);color:var(--text-mute);font-family:var(--mono);font-size:11px;letter-spacing:.5px;line-height:1.2;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.chip:hover{border-color:var(--sage-border);color:var(--text)}.chip:focus-visible{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}.chip.is-on{background:var(--sage-tint-strong);border-color:var(--sage-border);color:var(--sage-deep);font-weight:600}.chip-add{border-style:dashed;color:var(--sage)}.chip-add:hover{background:var(--sage-tint)}.chip-value{background:var(--sage-tint-strong);border-color:var(--sage-border);font-weight:600;cursor:default}.chip-value,.chip-x{color:var(--sage-deep)}.chip-x{background:none;border:none;padding:0;margin-left:1px;font-family:var(--mono);font-size:13px;line-height:1;opacity:.55;cursor:pointer}.chip-x:hover{opacity:1}.chip-input{flex:1;min-width:190px;padding:7px 4px;background:none;border:none;outline:none;font-family:var(--mono);font-size:12px;color:var(--text)}.chip-input::placeholder{color:var(--text-dim)}.chip-well{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:8px 10px;background:var(--bg);border:1px solid var(--card-border-strong);border-radius:0;transition:border-color .15s,box-shadow .15s,background .15s;cursor:text}.chip-well:focus-within{border-color:var(--sage);background:var(--card);box-shadow:0 0 0 3px var(--sage-tint)}.radio-row{display:flex;gap:8px}.radio-opt{flex:1;min-width:0;text-align:center;padding:10px 6px;background:var(--bg);border:1px solid var(--card-border-strong);border-radius:0;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.radio-opt:hover{border-color:var(--sage-border)}.radio-opt.is-on{background:var(--sage-tint-strong);border-color:var(--sage)}.radio-opt:has(input:focus-visible){border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}.check-opt input,.radio-opt input{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.radio-num{display:block;font-family:var(--mono);font-size:15px;font-weight:600;color:var(--text);line-height:1.3}.radio-opt.is-on .radio-num{color:var(--sage-deep)}.radio-label{display:block;font-size:11px;color:var(--text-mute);line-height:1.3}.radio-opt.is-on .radio-label{color:var(--sage-deep)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (max-width:520px){.check-grid{grid-template-columns:1fr}}.check-opt{display:flex;align-items:center;gap:9px;padding:10px 12px;background:var(--bg);border:1px solid var(--card-border-strong);border-radius:0;font-family:var(--mono);font-size:11px;letter-spacing:.3px;color:var(--text-mute);cursor:pointer;transition:background .14s,border-color .14s,color .14s}.check-opt.is-on,.check-opt:hover{border-color:var(--sage-border)}.check-opt.is-on{background:var(--sage-tint-strong);color:var(--sage-deep);font-weight:600}.check-opt:has(input:focus-visible){border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}.check-box{flex:none;width:15px;height:15px;border:1.5px solid var(--card-border-strong);border-radius:0;background:var(--card);display:grid;place-items:center;color:transparent;font-size:10px;line-height:1}.check-opt.is-on .check-box{background:var(--sage);border-color:var(--sage);color:var(--bg)}.time-row{display:flex;align-items:center;gap:14px}.time-num{flex:none;width:88px;text-align:center;font-family:var(--mono);font-size:15px;font-weight:600}.time-slider{flex:1;min-width:0;accent-color:var(--sage);cursor:pointer}.time-slider:focus-visible{outline:2px solid var(--sage);outline-offset:4px}.time-scale{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--text-dim);letter-spacing:.8px;margin-top:7px;padding-left:102px}.form-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:28px;padding-top:24px;border-top:1px solid var(--card-border)}.btn-primary{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;background:var(--sage);color:var(--bg);border:none;border-radius:0;font-family:var(--inter);font-size:15px;font-weight:700;text-decoration:none;cursor:pointer;transition:background .2s cubic-bezier(.22,.61,.36,1),transform .2s cubic-bezier(.22,.61,.36,1),box-shadow .2s cubic-bezier(.22,.61,.36,1),opacity .15s}@media (hover:hover) and (pointer:fine){.btn-primary:not(.is-danger):hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px var(--sage-tint-strong),0 2px 6px rgba(61,54,48,.08)}}.btn-primary:hover:not(:disabled){background:var(--sage-deep)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-primary:focus-visible{outline:2px solid var(--sage-deep);outline-offset:3px}.btn-primary:disabled{opacity:.55;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.btn-primary:hover:not(:disabled){transform:none}}.btn-hint{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-dim)}.spinner{width:14px;height:14px;flex:none;border:2px solid rgba(248,245,240,.35);border-top:2px solid var(--bg);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.form-error{background:var(--clay-tint);border:1px solid var(--clay-border);border-left:3px solid var(--clay);border-radius:0;padding:13px 16px;margin-bottom:22px;color:var(--clay);font-size:13.5px;line-height:1.55}.form-error strong{font-weight:700}.form-error-slot{margin-top:16px;scroll-margin-bottom:16px}.form-error .field-hint{color:var(--text-mute)}.pantry-seed .form-error .field-hint{color:var(--text)}.form-ok{background:var(--sage-tint);border:1px solid var(--sage-border);border-left:3px solid var(--sage);border-radius:0;padding:13px 16px;margin-bottom:22px;color:var(--sage-deep);font-size:13.5px}.count-row{display:flex;align-items:baseline;gap:8px}.count-value{font-family:var(--fraunces);font-optical-sizing:auto;font-size:54px;font-weight:500;color:var(--sage-deep);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.count-target{font-family:var(--mono);font-size:17px;font-weight:500;color:var(--text-mute)}.progress-track{height:8px;background:rgba(84,114,67,.14);border-radius:0;overflow:hidden;margin-top:20px}.progress-fill{height:100%;background:var(--sage);border-radius:0;transition:width .45s cubic-bezier(.4,0,.2,1)}@media (prefers-reduced-motion:reduce){.progress-fill{transition:none}}.progress-note{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;font-weight:600;color:var(--sage-deep);margin-top:11px;opacity:.8}.progress-note,.recent-head{display:flex;justify-content:space-between;gap:12px}.recent-head{align-items:baseline;margin-bottom:6px}.recent-count{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-dim)}.recent-list{list-style:none}.recent-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--card-border)}.recent-item:last-child{border-bottom:none}.recent-name{font-family:var(--fraunces);font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.01em;line-height:1.3}.recent-meta{display:flex;flex-wrap:wrap;gap:7px;font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;color:var(--text-mute);margin-top:5px}.recent-meta .dot{color:var(--taupe)}.recent-style{font-size:12px;font-style:italic;color:var(--text-mute);margin-top:4px}.recent-time{flex:none;font-family:var(--mono);font-size:10px;letter-spacing:.6px;color:var(--text-dim);white-space:nowrap;padding-top:3px;min-width:52px;text-align:right}.recent-empty{font-size:13.5px;color:var(--text-mute);line-height:1.6;padding:6px 0 2px}.recent-item.is-new{animation:recent-in 1.1s ease-out}@keyframes recent-in{0%{background:var(--sage-tint-strong)}to{background:transparent}}@media (prefers-reduced-motion:reduce){.recent-item.is-new{animation:none}}.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:32px}.login-card{width:100%;max-width:420px}.login-mark{display:flex;align-items:center;justify-content:center;gap:10px;font-family:var(--fraunces);font-weight:500;font-size:22px;letter-spacing:-.02em;color:var(--text);margin-bottom:28px}.login-mark .accent{color:var(--sage)}.login-title{font-family:var(--fraunces);font-size:27px;font-weight:500;letter-spacing:-.02em;color:var(--text);text-align:center;margin-bottom:6px}.login-sub{font-size:13.5px;color:var(--text-mute);text-align:center;margin-bottom:28px}.login-card .btn-primary{width:100%;justify-content:center;margin-top:4px}.login-foot{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-dim);text-align:center;margin-top:24px}.admin-col-right>*+*{margin-top:20px}.macro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.macro-cell{display:flex;flex-direction:column;gap:6px}.macro-label{display:flex;align-items:baseline;gap:6px;font-size:12px;font-weight:600;letter-spacing:.3px;color:var(--text-mute)}.macro-unit{font-family:var(--mono);font-size:10px;letter-spacing:.8px;color:var(--text-dim)}.queue-banner{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;color:var(--sage-deep);font-size:13.5px;font-weight:600;text-decoration:none;transition:background .15s}.queue-banner:hover{background:var(--sage-tint-strong)}.queue-count{font-family:var(--mono);font-size:16px;font-weight:700;min-width:28px;text-align:center}.queue-arrow{margin-left:auto;font-size:16px}.gen-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.gen-cost-tag{font-family:var(--mono);font-size:11px;letter-spacing:.8px;color:var(--sage-deep);background:var(--sage-tint);border-radius:999px;padding:4px 10px}.gen-copy{font-size:13px;line-height:1.55;color:var(--text-mute);margin-bottom:18px}.gen-cta{width:100%;justify-content:center}.gen-focus-toggle{display:flex;align-items:center;gap:8px;width:100%;margin-top:14px;background:none;border:none;border-top:1px solid var(--card-border);padding:14px 0 0;font-family:var(--inter);font-size:12.5px;font-weight:600;color:var(--text-mute);cursor:pointer}.gen-focus-toggle:hover{color:var(--sage-deep)}.gen-focus-count{font-family:var(--mono);font-size:10px;background:var(--sage);color:var(--bg);border-radius:999px;padding:2px 7px}.gen-focus,.gen-focus-group+.gen-focus-group{margin-top:14px}.gen-focus-label{display:block;margin-bottom:7px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-dim)}.gen-focus-note{margin-top:9px;line-height:1.5;border-left:2px solid var(--sage);padding-left:9px}.gen-focus-clear,.gen-focus-note{font-family:var(--inter);font-size:12px;color:var(--text-mute)}.gen-focus-clear{margin-top:16px;background:none;border:none;padding:0;text-decoration:underline;cursor:pointer}.modal-scrim{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:rgba(61,54,48,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.modal-card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--card-border-strong);border-radius:0;padding:28px;box-shadow:0 24px 64px rgba(61,54,48,.22)}.modal-title{font-family:var(--fraunces);font-size:22px;font-weight:500;letter-spacing:-.02em;color:var(--text);margin-bottom:10px}.modal-copy{font-size:13.5px;line-height:1.6;color:var(--text-mute);margin-bottom:24px}.modal-copy strong{color:var(--text);font-weight:700}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.btn-quiet{display:inline-flex;align-items:center;gap:8px;padding:13px 20px;background:none;border:1px solid var(--card-border-strong);border-radius:0;font-family:var(--inter);font-size:14px;font-weight:600;color:var(--text-mute);text-decoration:none;cursor:pointer;transition:border-color .2s cubic-bezier(.22,.61,.36,1),color .2s cubic-bezier(.22,.61,.36,1),transform .2s cubic-bezier(.22,.61,.36,1),box-shadow .2s cubic-bezier(.22,.61,.36,1)}.btn-quiet:hover:not(:disabled){border-color:var(--sage-border);color:var(--sage-deep)}@media (hover:hover) and (pointer:fine){.btn-quiet:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px var(--sage-tint)}}.btn-quiet:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-quiet:disabled{opacity:.55;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.btn-quiet:hover:not(:disabled){transform:none}}.notfound-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px}.notfound-card{max-width:480px;width:100%;text-align:center}.notfound-logo{justify-content:center;margin-bottom:4px}.notfound-sprig{color:var(--sage);display:flex;justify-content:center;margin:4px 0 18px}.notfound-title{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(26px,4vw,34px);font-weight:500;color:var(--text);letter-spacing:-.02em;line-height:1.2;margin-bottom:12px}.notfound-copy{color:var(--text-mute);font-size:15px;line-height:1.6;margin-bottom:28px}.notfound-cta{display:inline-flex;text-decoration:none}.review-wrap{max-width:860px;margin:0 auto}.review-empty-wrap{max-width:620px;margin:0 auto}.review-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:20px}.review-progress{text-align:right}.review-progress-value{display:block;font-family:var(--mono);font-size:26px;font-weight:700;color:var(--sage-deep);letter-spacing:-.02em}.review-progress-label{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--text-dim)}.review-legend{display:flex;flex-wrap:wrap;gap:18px;padding:12px 18px;margin-bottom:26px;background:var(--bg-elev);border-radius:0}.review-shortcut{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--text-mute)}.palette-foot kbd,.review-legend kbd{font-family:var(--mono);font-size:10px;padding:3px 7px;background:var(--card);border:solid var(--card-border-strong);border-width:1px 1px 2px;border-radius:0;color:var(--text)}.review-batch+.review-batch{margin-top:44px}.review-batch-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:12px;margin-bottom:18px;border-bottom:1px solid var(--card-border)}.review-batch-head .admin-h2{display:flex;align-items:baseline;gap:12px;font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.4px;color:var(--text-mute)}.review-batch-date{color:var(--text-dim);font-size:11px}.review-batch-count{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.8px;color:var(--sage-deep)}.review-batch-filtered{padding:3px 8px;border:1px solid var(--clay-border);border-radius:999px;color:var(--clay);letter-spacing:.4px}.review-header-right{display:flex;align-items:center;gap:18px}.review-reset{padding:9px 14px;font-size:12.5px}.review-reset:hover:not(:disabled){border-color:var(--clay-border);color:var(--clay)}.review-list{list-style:none}.review-list>li+li{margin-top:16px}.review-done,.review-empty{text-align:center}.review-done-copy,.review-empty-copy{font-size:14px;line-height:1.6;color:var(--text-mute);margin-bottom:20px}.review-done-copy strong{color:var(--text)}.review-empty-copy code{font-family:var(--mono);font-size:12px;background:var(--bg-elev);padding:2px 6px;border-radius:0}.review-done{background:linear-gradient(135deg,var(--sage-tint),transparent)}.cand{padding:22px 24px;transition:border-color .15s,box-shadow .15s;cursor:default}.cand.is-focused{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint),0 8px 24px rgba(61,54,48,.07)}.cand.is-busy{opacity:.6}.cand-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.cand-name{font-family:var(--fraunces);font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--text);line-height:1.3}.cand-badges{display:flex;flex-wrap:wrap;gap:6px}.cand-badge{font-family:var(--mono);font-size:10px;letter-spacing:.6px;padding:4px 9px;border-radius:999px;background:var(--bg-elev);color:var(--text-mute);white-space:nowrap}.cand-fields{display:grid;gap:5px;margin-bottom:12px}.cand-row{display:flex;gap:10px;font-size:12.5px;line-height:1.5}.cand-row dt{flex:none;width:66px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.1px;color:var(--text-dim);padding-top:2px}.cand-row dd{color:var(--text-mute)}.cand-notes{font-size:13px;line-height:1.6;color:var(--text);padding:12px 14px;margin-bottom:14px;background:var(--bg-elev);border-left:2px solid var(--sage-light);border-radius:0 8px 8px 0}.cand-macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 0;border-top:1px solid var(--card-border)}.cand-macro{text-align:center}.cand-macro-value{display:block;font-family:var(--mono);font-size:15px;font-weight:700;color:var(--text)}.cand-macro-unit{font-weight:500;margin-left:1px}.cand-macro-label,.cand-macro-unit{font-size:9px;color:var(--text-dim)}.cand-macro-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:1.1px}.cand-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--card-border)}.cand-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 15px;background:none;border:1px solid var(--card-border-strong);border-radius:0;font-family:var(--inter);font-size:13px;font-weight:600;color:var(--text-mute);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.cand-btn:hover:not(:disabled){border-color:var(--sage-border);color:var(--text)}.cand-btn:disabled{opacity:.5;cursor:not-allowed}.cand-btn.is-approve{border-color:var(--sage-border);color:var(--sage-deep)}.cand-btn.is-approve:hover:not(:disabled){background:var(--sage-tint)}.cand-btn.is-trash:hover:not(:disabled){border-color:var(--clay-border);color:var(--clay);background:var(--clay-tint)}.spinner.is-dark{border-color:var(--sage-tint-strong);border-top-color:var(--sage)}.cand-editor{padding-top:16px;border-top:1px solid var(--card-border)}.cand-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}@media (max-width:620px){.cand-edit-grid{grid-template-columns:1fr}.cand-macros{grid-template-columns:repeat(2,minmax(0,1fr))}}.cand-edit-field{display:flex;flex-direction:column;gap:5px}.cand-edit-field.is-wide{grid-column:1/-1}.cand-edit-label{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.1px;color:var(--text-dim)}.cand-edit-field .input,.cand-edit-field .select{padding:10px 12px;font-size:13.5px}.cand-edit-hint{font-size:11.5px;line-height:1.5;color:var(--text-dim);margin-bottom:14px}.palette{width:100%;max-width:480px;align-self:start;margin-top:12vh;background:var(--card);border:1px solid var(--card-border-strong);border-radius:0;overflow:hidden;box-shadow:0 24px 64px rgba(61,54,48,.24)}.palette-input{width:100%;padding:18px 22px;background:none;border:none;border-bottom:1px solid var(--card-border);font-family:var(--inter);font-size:15px;color:var(--text)}.palette-input:focus{outline:none}.palette-input::placeholder{color:var(--text-dim)}.palette-list{list-style:none;padding:8px}.palette-item{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:12px 14px;background:none;border:none;border-radius:0;font-family:var(--inter);text-align:left;cursor:pointer}.palette-item.is-active{background:var(--sage-tint)}.palette-item:disabled{opacity:.5;cursor:not-allowed}.palette-label{font-size:14px;font-weight:600;color:var(--text)}.palette-item.is-destructive .palette-label{color:var(--clay)}.palette-item.is-destructive.is-active{background:var(--clay-tint)}.palette-hint{font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;color:var(--text-dim);text-align:right;white-space:nowrap}.palette-empty{padding:24px 22px;font-size:13px;color:var(--text-dim)}.palette-foot{display:flex;align-items:center;gap:7px;padding:11px 18px;border-top:1px solid var(--card-border);background:var(--bg-elev);font-size:11px;color:var(--text-dim)}.admin-nav-links{gap:24px}.nav-review{display:inline-flex;align-items:center;gap:7px;color:var(--sage-deep)!important;font-weight:600!important}.nav-review-count{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.4px;padding:2px 7px;border-radius:100px;background:var(--sage-tint-strong);border:1px solid var(--sage-border)}.browse-header{margin-bottom:4px}.browse-grid{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr)}@media (max-width:1040px){.browse-grid{grid-template-columns:1fr}}.browse-main{min-width:0}.browse-rail>*+*{margin-top:20px}.browse-search{display:flex;align-items:center;gap:10px;padding:0 14px;background:var(--bg);border:1px solid var(--card-border-strong);border-radius:0;transition:border-color .15s,box-shadow .15s,background .15s}.browse-search:focus-within{border-color:var(--sage);background:var(--card);box-shadow:0 0 0 3px var(--sage-tint)}.browse-search-icon{font-size:17px;line-height:1;color:var(--text-dim)}.browse-search-input{flex:1;min-width:0;padding:12px 0;background:none;border:none}.browse-search-input:focus{outline:none;box-shadow:none;border:none}.browse-search-input::-webkit-search-cancel-button{cursor:pointer}.browse-controls>*+*{margin-top:16px}.browse-filter-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:4px;border-top:1px solid var(--card-border)}.browse-filter-title{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--text-mute)}.browse-filter-count{font-size:10px;font-weight:700;letter-spacing:.4px;color:var(--sage-deep);background:var(--sage-tint-strong);border-radius:100px;padding:2px 7px}.browse-clear{background:none;border:none;padding:0;font-family:var(--inter);font-size:12px;font-weight:600;color:var(--text-mute);cursor:pointer;transition:color .15s}.browse-clear:hover{color:var(--clay)}.browse-filter-group{display:flex;flex-direction:column;gap:8px}.browse-filter-label{font-size:12px;font-weight:600;letter-spacing:.3px;color:var(--text-mute)}.chip-count{font-size:9.5px;font-weight:700;letter-spacing:.3px;color:var(--text-dim)}.chip.is-on .chip-count{color:var(--sage-deep)}.chip.is-empty{border-style:dashed}.browse-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:22px 0 14px}.browse-result-count{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-mute)}.browse-sort{display:inline-flex;align-items:center;gap:9px}.browse-sort-label{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-dim)}.browse-sort-select{padding:8px 34px 8px 12px;font-size:12.5px}.browse-list{list-style:none}.browse-list>li+li{margin-top:14px}.browse-row .cand-head{align-items:flex-start}.browse-style{font-size:12px;font-style:italic;color:var(--text-mute);margin-top:4px}.browse-personas{font-family:var(--mono);font-size:10.5px;letter-spacing:.5px;color:var(--sage-deep);margin-bottom:10px}.browse-notes{font-size:13px;line-height:1.6;color:var(--text-mute);margin-bottom:4px}.browse-notes.is-clamped{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.browse-expand{background:none;border:none;padding:0;margin-bottom:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.6px;color:var(--sage);cursor:pointer}.browse-expand:hover{color:var(--sage-deep)}.browse-added{margin-left:auto;font-family:var(--mono);font-size:10px;letter-spacing:.6px;color:var(--text-dim);white-space:nowrap}.browse-empty{text-align:center}.btn-primary.is-danger{background:var(--clay)}.btn-primary.is-danger:hover:not(:disabled){background:#8b3a30}.btn-primary.is-danger:focus-visible{outline-color:var(--clay)}.cov-stats{display:grid;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--card-border)}.cov-stat{display:flex;flex-direction:column;gap:2px}.cov-stat-label{font-size:12px;font-weight:600;letter-spacing:.3px;color:var(--text-mute)}.cov-stat-value{font-family:var(--mono);font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.2}.cov-stat-of{font-size:13px;font-weight:500;color:var(--text-dim);letter-spacing:.4px}.cov-stat-note{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-dim)}.cov-chart{padding-top:18px}.cov-chart+.cov-chart{border-top:1px solid var(--card-border)}.cov-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}.cov-chart-title{font-size:12px;font-weight:600;letter-spacing:.3px;color:var(--text-mute)}.cov-chart-caption{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-dim)}.cov-bars{display:grid;gap:6px}.cov-bar-row{display:grid;grid-template-columns:74px minmax(0,1fr) 26px;align-items:center;gap:10px}.cov-bar-label{font-family:var(--mono);font-size:10px;letter-spacing:.4px;color:var(--text-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cov-bar-track{display:block;height:8px;background:var(--bg-elev);border-radius:0;overflow:hidden}.cov-bar-fill{display:block;height:100%;min-width:4px;background:var(--sage);border-radius:0 4px 4px 0;transition:width .2s}@media (prefers-reduced-motion:reduce){.cov-bar-fill{transition:none}}.cov-bar-value{font-family:var(--mono);font-size:11px;font-weight:700;color:var(--text);text-align:right}.cov-bar-value.is-zero{font-weight:500;color:var(--text-dim)}.p-empty-state{background:var(--cream-2,var(--bg-elev));border:1px solid var(--taupe-light,var(--card-border));border-left:3px solid var(--crisp-sage,var(--sage));border-radius:0;padding:24px}.p-empty-state .wow-title{color:var(--charcoal,var(--text))}.p-empty-state .wow-copy{color:var(--ink,var(--text-mute))}.p-card-wow{background:linear-gradient(155deg,var(--text) 0,#2e2924 100%);border:1px solid var(--text);border-radius:0;padding:26px 24px;box-shadow:0 12px 40px rgba(61,54,48,.18);color:var(--bg)}.wow-title{font-family:var(--fraunces);font-optical-sizing:auto;font-size:21px;font-weight:600;letter-spacing:-.015em;color:var(--bg);margin-bottom:16px}.wow-copy{font-size:13px;line-height:1.65;color:rgba(248,245,240,.8)}.gap-list{list-style:none}.gap-item{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-bottom:1px solid rgba(248,245,240,.12)}.gap-item:last-child{border-bottom:none}.gap-count{flex:none;min-width:26px;padding:3px 0;border-radius:0;background:rgba(248,245,240,.14);font-family:var(--mono);font-size:11px;font-weight:700;color:var(--sage-light);text-align:center}.gap-body{display:flex;flex-direction:column;gap:2px;min-width:0}.gap-label{font-size:13.5px;font-weight:600;line-height:1.35;color:var(--bg)}.gap-axis{font-size:9.5px;text-transform:uppercase;letter-spacing:1.2px;color:rgba(248,245,240,.62)}.gap-axis,.gap-more{font-family:var(--mono)}.gap-more{font-size:10px;line-height:1.6;letter-spacing:.5px;color:rgba(248,245,240,.66);margin-top:12px}.gap-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;padding:13px 18px;background:var(--bg);border-radius:0;font-family:var(--inter);font-size:13.5px;font-weight:600;color:var(--text);text-decoration:none;transition:background .15s}.gap-cta:hover{background:#ffffff}a.login-mark{text-decoration:none}a.login-mark:hover .accent{color:var(--sage-deep)}.login-card form .btn-primary{margin-top:18px}.auth-alt{margin-top:22px;font-size:13.5px;color:var(--text-mute);text-align:center}.auth-alt a{color:var(--sage-deep);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.auth-alt a:hover{color:var(--sage)}.field-checkbox{display:flex;align-items:flex-start;gap:8px;margin-bottom:20px;font-size:13.5px;line-height:1.5;color:var(--text);cursor:pointer}.field-checkbox input{margin-top:3px;accent-color:var(--sage);flex-shrink:0}.field-checkbox a{color:var(--sage-deep);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.field-checkbox a:hover{color:var(--sage)}.form-error code{font-family:var(--mono);font-size:12px;background:rgba(160,69,58,.1);border-radius:0;padding:1px 5px}.onb-wrap{max-width:560px;margin:0 auto;padding:56px 24px 96px}.onb-wrap.is-full{min-height:100dvh;display:grid;place-items:center;padding:40px 24px}.onb-shell{width:100%}.onb-sprig-row{display:flex;align-items:center;gap:14px;margin-bottom:26px}.onb-sprig{flex:1;min-width:0}.sprig-svg{display:block;width:100%;height:auto;overflow:visible}.sprig-track{fill:none;stroke:var(--sage);stroke-width:2;stroke-linecap:round;opacity:.16}.sprig-stem{fill:none;stroke:var(--sage);stroke-width:2.4;stroke-linecap:round;stroke-dasharray:100;transition:stroke-dashoffset .65s cubic-bezier(.4,0,.2,1)}.sprig-leaf{opacity:0;transform:scale(.2);transform-origin:0 0;transition:opacity .4s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.34,1.4,.64,1);transition-delay:.28s}.sprig-leaf.is-grown{opacity:1;transform:scale(1)}.sprig-leaf-blade{fill:var(--sage);opacity:.9}.sprig-leaf-rib{fill:none;stroke:var(--bg);stroke-width:.9;opacity:.55}.sprig-bud{opacity:0;transform:scale(.3);transform-origin:center;transition:opacity .4s ease,transform .5s cubic-bezier(.34,1.4,.64,1);transition-delay:.4s}.sprig-bud.is-grown{opacity:1;transform:scale(1)}.sprig-bud-core{fill:var(--clay-accent);opacity:.85}.sprig-bud-petal{fill:none;stroke:var(--bg);stroke-width:1.1}.onb-sprig-caption{flex:none;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.4px;font-weight:600;color:var(--text-dim);white-space:nowrap}@media (prefers-reduced-motion:reduce){.sprig-bud,.sprig-leaf,.sprig-stem{transition:none}}.onb-stage{animation-duration:.26s;animation-timing-function:cubic-bezier(.4,0,.2,1);animation-fill-mode:backwards}.onb-stage.is-in-forward{animation-name:onb-enter-right}.onb-stage.is-in-back{animation-name:onb-enter-left}.onb-stage.is-out-forward{animation-name:onb-leave-left;animation-duration:.17s;animation-fill-mode:forwards}.onb-stage.is-out-back{animation-name:onb-leave-right;animation-duration:.17s;animation-fill-mode:forwards}.onb-stage.is-out-back,.onb-stage.is-out-forward{pointer-events:none}@keyframes onb-enter-right{0%{opacity:0;transform:translate3d(28px,0,0)}to{opacity:1;transform:none}}@keyframes onb-enter-left{0%{opacity:0;transform:translate3d(-28px,0,0)}to{opacity:1;transform:none}}@keyframes onb-leave-left{0%{opacity:1;transform:none}to{opacity:0;transform:translate3d(-28px,0,0)}}@keyframes onb-leave-right{0%{opacity:1;transform:none}to{opacity:0;transform:translate3d(28px,0,0)}}@media (prefers-reduced-motion:reduce){.onb-stage{animation:none!important}}.onb-prompt{display:flex;align-items:flex-start;gap:14px;margin-bottom:10px}.onb-prompt-glyph{flex:none;width:42px;height:42px;margin-top:2px;display:grid;place-items:center;border-radius:0;background:var(--sage-tint);border:1px solid var(--sage-border);color:var(--sage)}.onb-prompt-body{flex:1;min-width:0;display:block}.onb-glyph{width:22px;height:22px;display:block}@media (max-width:420px){.onb-prompt-glyph{width:36px;height:36px;border-radius:0}.onb-glyph{width:19px;height:19px}}.onb-eyebrow{display:block;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:2px;font-weight:600;color:var(--text-mute);margin-bottom:8px}.onb-h1{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(28px,5vw,36px);font-weight:500;letter-spacing:-.025em;line-height:1.1;color:var(--text);margin-bottom:10px}.onb-prompt-body .onb-h1{margin-bottom:0}.onb-sub{font-size:15px;line-height:1.6;color:var(--text-mute);margin-bottom:28px}.onb-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid var(--card-border)}.onb-back{margin-right:auto;background:none;border:none;padding:8px 0;font-family:var(--inter);font-size:13.5px;font-weight:500;color:var(--text-mute);cursor:pointer;transition:color .15s}.onb-back:hover:not(:disabled){color:var(--text)}.onb-back:disabled{opacity:.5;cursor:not-allowed}.onb-actions-end{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.onb-skip{background:none;border:none;padding:8px 2px;font-family:var(--inter);font-size:13.5px;font-weight:500;color:var(--text-mute);text-decoration:underline;text-decoration-color:var(--card-border-strong);text-underline-offset:3px;cursor:pointer;transition:color .15s,text-decoration-color .15s}.onb-skip:hover:not(:disabled){color:var(--sage-deep);text-decoration-color:var(--sage-border)}.onb-skip:focus-visible{outline:2px solid var(--sage);outline-offset:3px;border-radius:0}.onb-skip:disabled{opacity:.5;cursor:not-allowed}.onb-welcome{text-align:center;max-width:440px}.onb-welcome-mark{display:flex;justify-content:center;margin-bottom:14px}.onb-wordmark{font-family:var(--fraunces);font-size:26px;font-weight:500;letter-spacing:-.02em;color:var(--text);white-space:nowrap}.onb-wordmark .accent{color:var(--sage)}.onb-tagline{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(32px,6vw,42px);font-weight:500;font-style:italic;letter-spacing:-.025em;line-height:1.15;color:var(--sage-deep);margin:40px 0 18px}.onb-promise{font-size:16px;line-height:1.65;color:var(--text-mute);margin-bottom:40px}.onb-cta{width:100%;justify-content:center;text-decoration:none}.onb-welcome-foot{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-dim);margin-top:16px}.member-list{list-style:none}.member-list>li+li{margin-top:10px}.member-row{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--card);border:1px solid var(--card-border);border-radius:0}.member-avatar{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--taupe);color:var(--bg);font-family:var(--fraunces);font-size:15px;font-weight:600}.member-avatar.is-you{background:var(--sage)}.member-avatar.is-photo{object-fit:cover;background:var(--bg-elev)}.member-form-photo{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:14px}.member-avatar-picker{display:flex;align-items:center;gap:10px;background:none;border:none;padding:2px;cursor:pointer}.member-avatar-picker:disabled{cursor:not-allowed;opacity:.6}.member-avatar-picker-label{font-family:var(--inter);font-size:12.5px;font-weight:600;color:var(--sage-deep)}.member-strip{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0 4px;padding:4px 0}.member-strip-avatar{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;padding:2px;cursor:pointer;width:60px}.member-strip-avatar .member-avatar{width:44px;height:44px;font-size:17px;border:2px solid transparent;transition:box-shadow .15s,border-color .15s}.member-strip-avatar.is-selected .member-avatar{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint-strong)}.member-avatar.is-everyone-glyph{background:var(--bg-elev);font-size:18px}.member-strip-avatar.is-everyone.is-selected .member-avatar.is-everyone-glyph{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint-strong);background:var(--sage-tint)}.member-strip-name{font-family:var(--inter);font-size:11px;font-weight:600;color:var(--text-mute);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px}.member-strip-avatar.is-selected .member-strip-name{color:var(--sage-deep)}.member-body{flex:1;min-width:0;display:flex;flex-direction:column}.member-name{font-family:var(--fraunces);font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text);line-height:1.3}.member-meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.5px;color:var(--text-mute);margin-top:2px}.member-you{flex:none;font-family:var(--mono);font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:1.1px;padding:3px 9px;border-radius:0;background:var(--sage-tint-strong);border:1px solid var(--sage-border);color:var(--sage-deep)}.member-action{flex:none;background:none;border:none;padding:6px 2px;font-family:var(--inter);font-size:12.5px;font-weight:600;color:var(--text-mute);cursor:pointer;transition:color .15s}.member-action:hover{color:var(--sage-deep)}.member-action.is-remove:hover{color:var(--clay)}.member-add{display:flex;align-items:center;gap:10px;width:100%;margin-top:10px;padding:14px 16px;background:none;border:1px dashed var(--card-border-strong);border-radius:0;font-family:var(--inter);font-size:14px;font-weight:500;color:var(--text-mute);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.member-add:hover{border-color:var(--sage-border);color:var(--sage-deep);background:var(--sage-tint)}.member-add-plus{font-size:18px;line-height:1;color:var(--sage)}.member-form{margin-top:10px;padding:18px;background:var(--bg-elev);border:1px solid var(--card-border-strong);border-radius:0}.member-form-error{margin-bottom:12px;font-size:12.5px;line-height:1.5;color:var(--clay)}.member-form-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:16px}@media (max-width:540px){.member-form-grid{grid-template-columns:1fr}}.member-field{display:flex;flex-direction:column;gap:5px}.member-field .field-opt{margin-left:5px;text-transform:lowercase;letter-spacing:.4px}.member-field .input,.member-field .select{padding:10px 12px;font-size:14px}.member-field .select{padding-right:34px}.member-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px}.btn-primary.is-compact,.btn-quiet.is-compact{padding:11px 18px;font-size:14px}.btn-quiet.is-destructive{color:var(--clay)}.btn-quiet.is-destructive:hover:not(:disabled){border-color:var(--clay-border);color:var(--clay)}.persona-suggest{padding:12px 16px;margin-bottom:16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-left:3px solid var(--sage);border-radius:0;font-size:13px;line-height:1.55;color:var(--sage-deep)}.persona-list{display:grid;gap:10px}.persona-opt{display:flex;flex-direction:column;gap:4px;width:100%;padding:16px 18px;text-align:left;background:var(--card);border:1px solid var(--card-border);border-radius:0;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.persona-opt:hover{border-color:var(--sage-border)}.persona-opt:focus-visible{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}.persona-opt.is-on{background:linear-gradient(135deg,var(--sage-tint-strong),transparent);border-color:var(--sage);box-shadow:0 4px 18px rgba(84,114,67,.1)}.persona-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.persona-name{font-family:var(--fraunces);font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.persona-opt.is-on .persona-name{color:var(--sage-deep)}.persona-badge{flex:none;font-family:var(--mono);font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:1.1px;padding:3px 9px;border-radius:100px;background:var(--sage);color:var(--bg)}.persona-desc{font-size:13px;line-height:1.55;color:var(--text-mute)}.onb-group+.onb-group{margin-top:26px;padding-top:26px;border-top:1px solid var(--card-border)}.onb-group-label{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.5px;font-weight:600;color:var(--text);margin-bottom:4px}.onb-group-label.is-with-glyph{display:flex;align-items:center;gap:7px}.onb-group-glyph{display:grid;place-items:center;color:var(--sage)}.onb-group-glyph .onb-glyph{width:16px;height:16px}.onb-group-hint{font-size:12.5px;line-height:1.5;color:var(--text-dim);margin-bottom:12px}.onb-member-group+.onb-member-group{margin-top:16px}.onb-member-group-label{font-size:13px;font-weight:600;color:var(--text);margin-bottom:6px}.budget-card{background:linear-gradient(135deg,var(--sage-tint),transparent);border:1px solid var(--sage-border);border-radius:0;padding:28px 26px 22px;text-align:center;margin-bottom:30px}.budget-value{display:block;font-family:var(--fraunces);font-optical-sizing:auto;font-size:52px;font-weight:500;line-height:1;letter-spacing:-.03em;color:var(--sage-deep);font-variant-numeric:tabular-nums}.budget-note{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-mute);margin-top:8px}.budget-slider{width:100%;margin-top:22px;accent-color:var(--sage);cursor:pointer}.budget-slider:focus-visible{outline:2px solid var(--sage);outline-offset:4px}.budget-scale{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;letter-spacing:.8px;color:var(--text-dim);margin-top:6px}.budget-primary{margin-top:12px;font-size:12.5px;line-height:1.55;color:var(--text-mute)}.budget-primary strong{color:var(--sage-deep);font-weight:700}.budget-primary.is-empty{color:var(--text-dim)}.onb-composing{text-align:center;max-width:380px}.compose-mark{display:block;margin:0 auto 24px}.compose-arc{animation:compose-breathe 2s ease-in-out infinite}.compose-arc.is-inner{opacity:.5;animation-name:compose-breathe-inner;animation-delay:.3s}@keyframes compose-breathe{0%,to{opacity:1}50%{opacity:.28}}@keyframes compose-breathe-inner{0%,to{opacity:.5}50%{opacity:.15}}@media (prefers-reduced-motion:reduce){.compose-arc{animation:none}}.compose-title{font-family:var(--fraunces);font-optical-sizing:auto;font-size:clamp(26px,5vw,32px);font-weight:500;letter-spacing:-.025em;line-height:1.2;color:var(--text);margin-bottom:28px}.compose-steps{list-style:none;text-align:left;display:grid;gap:10px}.compose-step{display:flex;align-items:baseline;gap:10px;font-size:14px;line-height:1.5;color:var(--text-mute);opacity:0;transform:translateY(4px);transition:opacity .35s ease-out,transform .35s ease-out}.compose-step.is-shown{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.compose-step{transition:none;transform:none}}.compose-glyph{flex:none;width:14px;font-family:var(--mono);font-size:12px;color:var(--text-dim)}.compose-step.is-done .compose-glyph{color:var(--sage)}.compose-step.is-active{color:var(--text)}.compose-step.is-active .compose-glyph{color:var(--sage-deep)}.compose-eta,.compose-step.is-idle{color:var(--text-dim)}.compose-eta{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.4px;margin-top:26px}.p-card-hero .onb-composing{margin:0 auto}.compose-error{text-align:center;max-width:380px;margin:0 auto}.compose-error-title{font-family:var(--fraunces);font-optical-sizing:auto;font-size:21px;font-weight:600;letter-spacing:-.015em;color:var(--text);margin-bottom:10px}.compose-error-copy{font-size:13px;line-height:1.6;color:var(--text-mute);margin-bottom:18px}.onb-confetti{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:5}.confetti-leaf{position:absolute;top:-8vh;width:22px;animation:confetti-fall var(--fall-duration,5s) cubic-bezier(.35,.1,.55,1) var(--fall-delay,0s) 1 both}.confetti-leaf svg{display:block;width:100%;height:auto}.confetti-leaf.is-sage{color:var(--sage)}.confetti-leaf.is-sage-light{color:var(--sage-light)}.confetti-leaf.is-clay{color:var(--clay-accent)}.confetti-leaf.is-cream{color:var(--bg-elev)}@keyframes confetti-fall{0%{transform:translateZ(0) rotate(0deg) scale(var(--fall-scale,1));opacity:0}8%{opacity:1}85%{opacity:1}to{transform:translate3d(var(--fall-drift,0),116vh,0) rotate(var(--fall-spin,300deg)) scale(var(--fall-scale,1));opacity:0}}@media (prefers-reduced-motion:reduce){.onb-confetti{display:none}}.onb-landing{width:100%;max-width:480px;position:relative;z-index:6}.onb-landing .p-card-wow{margin-bottom:20px}.app-hero-thanks,.onb-landing-thanks{margin-top:14px}.p-card-wow a{color:var(--bg);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.p-card-wow a:hover{color:#ffffff}.app-shell{max-width:100%;margin:0;padding:28px 24px 72px}.app-hero{margin-top:26px}.app-summary{margin-top:20px}.app-summary-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:16px;margin-bottom:4px;border-bottom:1px solid var(--card-border)}.app-summary-edit{font-size:13px;font-weight:600;color:var(--sage-deep);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.app-summary-edit:hover{color:var(--sage)}.app-summary-list{display:grid}.app-summary-row{display:grid;grid-template-columns:148px minmax(0,1fr);gap:18px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--card-border)}.app-summary-row:last-child{border-bottom:none}@media (max-width:560px){.app-summary-row{grid-template-columns:1fr;gap:8px}}.app-summary-row dt{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.4px;font-weight:600;color:var(--text-dim)}.app-summary-figure{font-family:var(--mono);font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.app-summary-unit{font-size:11px;font-weight:500;letter-spacing:.6px;color:var(--text-dim);margin-left:5px}.app-summary-text{font-size:13.5px;line-height:1.6;color:var(--text-mute)}.app-summary-text.is-strong{color:var(--text);font-weight:600}.app-summary-none{font-size:13px;color:var(--text-dim);font-style:italic}.app-summary-more{align-self:center;font-family:var(--mono);font-size:10px;letter-spacing:.6px;color:var(--text-dim)}.app-summary-empty{font-size:14px;line-height:1.6;color:var(--text-mute)}.app-summary-empty a{color:var(--sage-deep);font-weight:600;text-decoration:underline}.app-member-list{list-style:none;display:grid;gap:10px}.app-member{display:flex;flex-direction:column;gap:1px}.app-member-name{display:flex;align-items:center;gap:8px;font-family:var(--fraunces);font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.app-member-goal{font-family:var(--mono);font-size:10.5px;letter-spacing:.5px;color:var(--text-mute)}.settings-shell{padding:40px 24px 96px}.settings-header{margin-bottom:32px}.settings-sub{font-size:15px;color:var(--text-mute);margin-top:8px;max-width:520px;line-height:1.55}.settings-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start}@media (max-width:820px){.settings-layout{grid-template-columns:1fr;gap:24px}}.settings-sidebar{position:sticky;top:96px}@media (max-width:820px){.settings-sidebar{position:static}}.settings-nav{list-style:none;display:grid;gap:4px}.settings-nav-link{display:block;padding:12px 16px;border-radius:0;border:1px solid transparent;text-decoration:none;color:var(--text);transition:background .12s,border-color .12s}.settings-nav-link:hover{background:var(--sage-tint);border-color:var(--sage-border)}.settings-nav-link.is-current{background:var(--sage-tint-strong);border-color:var(--sage-border)}.settings-nav-label{display:block;font-family:var(--fraunces);font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text);margin-bottom:2px}.settings-nav-link.is-current .settings-nav-label{color:var(--sage-deep)}.settings-nav-blurb{display:block;font-size:12.5px;color:var(--text-mute);line-height:1.4}.settings-nav-toggle{display:none}@media (max-width:820px){.settings-nav-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:12px 16px;background:var(--cream,var(--card));border:1px solid var(--taupe-light,var(--card-border));border-radius:0;color:var(--text);font-family:var(--fraunces);font-size:16px;font-weight:600;letter-spacing:-.01em;text-align:left;cursor:pointer;touch-action:manipulation}.settings-nav-toggle-chevron{flex:none;color:var(--text-mute);transition:transform .15s ease}.settings-nav-toggle[aria-expanded=true] .settings-nav-toggle-chevron{transform:rotate(180deg)}.settings-sidebar .settings-nav{display:none;margin-top:4px}.settings-nav-toggle[aria-expanded=true]+.settings-nav{display:grid}}.settings-content{min-width:0}.settings-card{padding:32px 36px}@media (max-width:560px){.settings-card{padding:24px 20px}}.settings-card-stacked{margin-top:24px}.settings-card-head{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--card-border)}.settings-card-sub{margin-top:8px;line-height:1.55;max-width:520px}.settings-card-sub,.settings-empty{color:var(--text-mute);font-size:14px}.settings-empty{line-height:1.6;padding:12px 0}.settings-empty.is-inline{padding:0 0 20px}.settings-link{color:var(--sage-deep);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.settings-link:hover{color:var(--sage)}.settings-form>.field+.field{margin-top:4px}.settings-form .onb-group+.onb-group{margin-top:28px}.settings-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:28px;padding-top:20px;border-top:1px solid var(--card-border)}.settings-saved{font-family:var(--mono);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--sage-deep);font-weight:600}.settings-budget-row{display:flex;align-items:center;gap:10px;max-width:240px}.settings-budget-prefix{font-family:var(--mono);font-size:18px;font-weight:700;color:var(--text-mute)}.settings-budget-input{font-family:var(--mono);font-size:18px;font-weight:600;letter-spacing:-.01em;padding:12px 14px;width:110px}.settings-budget-suffix{font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);font-weight:500}.settings-members .member-list{margin-bottom:20px}.settings-row-error{padding:12px 0 0}.settings-member-form{border:1px solid var(--taupe-tint);border-radius:0;padding:20px;background:rgba(248,245,240,.5);margin:12px 0}.settings-member-form fieldset.member-availability,.settings-member-form fieldset.member-field{border:0;min-width:0}.settings-member-form>.member-availability,.settings-member-form>.member-field{margin-top:16px}.settings-member-form>.member-availability{margin-bottom:0}.settings-member-form .member-field{gap:4px}.settings-member-form .field-helper{margin-top:4px}.settings-member-form .availability-days{gap:4px;margin-top:8px}.settings-member-form .member-form-actions{margin-top:16px}.field-label{display:block;font-size:14px;font-weight:500;color:var(--text);margin-bottom:8px;font-family:var(--inter)}.field-opt{font-weight:400;color:var(--text-mute)}.field-helper,.field-opt{font-size:12px;font-style:italic}.field-helper{color:var(--taupe);margin-top:6px;line-height:1.5}.field-input,.field-select,.field-textarea{font-family:var(--inter);font-size:14px;padding:12px 14px;border:1px solid var(--taupe);border-radius:0;background:#faf8f5;color:var(--text);min-height:44px;display:flex;align-items:center;transition:border-color .15s,background .15s}.field-input::placeholder,.field-select::placeholder,.field-textarea::placeholder{color:var(--text-mute)}.field-input:focus-visible,.field-select:focus-visible,.field-textarea:focus-visible{outline:2px solid var(--sage);outline-offset:2px;border-color:var(--sage)}.field-textarea{min-height:auto;padding:12px 14px;resize:vertical;line-height:1.6}.member-allergens{border:none;padding:0;margin:16px 0}.member-allergens .field-label{margin-bottom:12px}.allergen-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.allergen-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid;border-radius:0;background:#faf8f5;cursor:pointer;font-size:13px;font-weight:500;transition:all .12s;font-family:var(--inter)}.allergen-chip:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.allergen-name{font-weight:600;color:var(--text)}.allergen-severity{font-size:11px;font-weight:400;opacity:.8}.allergen-chip.allergen-preference{border-color:var(--sage-border);color:var(--sage-deep);background:var(--sage-tint)}.allergen-chip.allergen-preference:hover{background:var(--sage-tint-strong);border-color:var(--sage-deep)}.allergen-chip.allergen-sensitivity{border-color:var(--taupe-deep);color:var(--taupe-deep);background:var(--taupe-tint)}.allergen-chip.allergen-sensitivity:hover{background:rgba(178,158,142,.25);border-color:var(--taupe-deep)}.allergen-chip.allergen-severe{border-color:var(--clay-border);color:var(--clay);background:var(--clay-tint)}.allergen-chip.allergen-severe:hover{background:rgba(160,69,58,.15);border-color:var(--clay)}.member-availability{margin-bottom:14px}.availability-days{display:flex;gap:6px;margin-top:6px}.availability-day{width:32px;height:32px;border-radius:50%;border:1px solid var(--card-border-strong);background:var(--card);color:var(--text-mute);font-family:var(--mono);font-size:11px;font-weight:700;cursor:pointer;transition:all .12s}.availability-day:hover{border-color:var(--sage-border)}.availability-day.is-on{background:var(--sage-tint-strong);border-color:var(--sage);color:var(--sage-deep)}.availability-day:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.member-archived-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--card-border)}.member-archived-summary{cursor:pointer;padding:10px 0;font-size:14px;font-weight:600;color:var(--text-mute);user-select:none}.member-archived-summary:hover{color:var(--text)}.member-archived-summary::marker{color:var(--text-dim)}.member-archived-list{margin-top:12px}.member-row.is-archived{opacity:.65;background:var(--bg-elev)}.settings-store-list{list-style:none;display:grid;gap:10px;margin-bottom:32px}.settings-store-row{display:grid;grid-template-columns:minmax(120px,auto) minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 16px;border:1px solid var(--card-border);border-radius:0;background:var(--card)}@media (max-width:560px){.settings-store-row{grid-template-columns:1fr auto;grid-template-areas:"name remove" "primary primary";gap:10px}.settings-store-row .settings-store-name{grid-area:name}.settings-store-row .settings-store-primary{grid-area:primary;justify-self:stretch}.settings-store-row .member-action.is-remove{grid-area:remove}}.settings-store-primary{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px solid var(--card-border);background:var(--bg-elev);font-family:var(--mono);font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--text-mute);cursor:pointer;transition:background .12s,border-color .12s,color .12s;font-weight:600}.settings-store-primary.is-on,.settings-store-primary:hover:not(:disabled){border-color:var(--sage-border);color:var(--sage-deep)}.settings-store-primary.is-on{background:var(--sage-tint-strong);cursor:default}.settings-store-primary:disabled:not(.is-on){opacity:.55;cursor:not-allowed}.settings-store-dot{font-size:10px;line-height:1}.settings-store-name{font-family:var(--fraunces);font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.settings-store-add{padding:20px;border:1px dashed var(--card-border-strong);border-radius:0;background:var(--bg-elev)}.settings-store-add .onb-group-label{margin-bottom:12px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-dim);font-weight:600}.settings-store-add .chip-row{margin-bottom:16px}.settings-store-form{display:flex;gap:10px;align-items:stretch}.settings-store-form .input{flex:1}.settings-store-form .btn-primary{flex-shrink:0}@media (max-width:560px){.settings-store-form{flex-direction:column}}.nav-links a.is-current{color:var(--sage-deep);font-weight:600}.migration-warn{background:var(--clay-tint);border:1px solid var(--clay-border);border-left:3px solid var(--clay);border-radius:0;padding:18px 22px;margin-bottom:28px}.migration-warn-head{font-size:15px;font-weight:600;line-height:1.5;color:var(--clay);margin-bottom:8px}.migration-warn-head strong{font-weight:700}.migration-warn-copy{font-size:13.5px;line-height:1.6;color:var(--text);margin-bottom:10px}.migration-warn-list{list-style:decimal;padding-left:22px;margin-bottom:12px}.migration-warn-list li{font-size:13px;line-height:1.8;color:var(--text)}.migration-warn-list code{font-family:var(--mono);font-size:12px;background:rgba(160,69,58,.1);border-radius:0;padding:2px 6px}.migration-warn-foot{font-size:12.5px;line-height:1.6;color:var(--text-mute)}.app-shell-wide{max-width:100%;margin:0;padding:24px 24px 72px}.app-headrow{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--taupe-light,var(--card-border))}.plan-generate{min-width:220px}.plan-picker{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:18px;min-width:320px;display:grid;gap:14px}.plan-picker-row{display:grid;gap:8px}.plan-picker-label{font-family:var(--mono);font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:var(--text-mute);font-weight:600}.plan-picker-chips{display:flex;flex-wrap:wrap;gap:6px}.plan-picker-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.plan-picker-note{font-family:var(--mono);font-size:11px;color:var(--sage-deep);letter-spacing:.3px;line-height:1.5}.plan-grid-wrap{margin-bottom:32px}.plan-status-note{font-family:var(--mono);font-size:12px;letter-spacing:.6px;color:var(--sage-deep);margin-bottom:14px;padding:10px 14px;background:var(--sage-tint);border-radius:0;border:1px solid var(--sage-border)}.plan-status-note.is-error{color:var(--clay);background:var(--clay-tint);border-color:var(--clay-border)}.plan-status-note.is-warn{color:var(--taupe-deep);background:var(--taupe-tint);border-color:var(--taupe)}.plan-status-dismiss{margin-left:6px;font-family:var(--mono);font-size:11px;letter-spacing:.5px;text-decoration:underline;text-underline-offset:2px;color:inherit;background:none;border:none;cursor:pointer;padding:0}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:14px}.plan-day{background:var(--card);border:1px solid var(--card-border);border-radius:0;overflow:hidden;display:flex;flex-direction:column}.plan-day.is-today{border-color:var(--sage-border)}.plan-day.is-today .plan-day-head{background:var(--sage-tint);border-bottom-color:var(--sage-border)}.plan-day.is-today .plan-day-label{color:var(--sage-deep)}.plan-day-head{display:flex;align-items:baseline;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--card-border);background:var(--bg-elev)}.plan-day-head-main{display:flex;align-items:baseline;gap:8px}.plan-day-people-chip{font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--sage-deep);background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:100px;padding:3px 8px;white-space:nowrap}.plan-meal.is-filtered-out{opacity:.28;filter:grayscale(.6)}.plan-day-label{font-family:var(--mono);font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-mute);font-weight:600}.plan-day-date{font-family:var(--fraunces);font-size:18px;color:var(--text);font-weight:600}.plan-day-summary,.plan-day-toggle{display:none}@media (max-width:480px){.plan-day-head{position:relative;align-items:center;gap:12px;min-height:44px}.plan-day-summary{display:flex;align-items:center;gap:8px;margin-left:auto;font-family:var(--mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--text-mute)}.plan-day-summary-flag{color:var(--clay);font-weight:700}.plan-day-chevron{display:inline-block;font-size:12px;transition:transform .15s ease}.plan-day:not(.is-collapsed) .plan-day-chevron{transform:rotate(180deg)}.plan-day-toggle{display:block;position:absolute;inset:0;width:100%;padding:0;background:transparent;border:0;border-radius:0;cursor:pointer;touch-action:manipulation}.plan-day-toggle:focus-visible{outline:2px solid var(--sage);outline-offset:-2px}.plan-day.is-collapsed .plan-day-body,.plan-day.is-collapsed .plan-day-total{display:none}.plan-day.is-collapsed .plan-day-head{border-bottom:0}}.plan-day-body{padding:10px;display:grid;gap:8px;flex:1}.plan-meal{display:flex;align-items:flex-start;gap:10px;padding:10px;border-radius:0;background:var(--bg);border:1px solid var(--card-border);text-decoration:none;color:var(--text);transition:border-color .15s,background .15s;position:relative}.plan-meal:hover{border-color:var(--sage-border);background:var(--sage-tint)}.plan-meal-slot{position:relative}.plan-meal.is-dragging{opacity:.4;cursor:grabbing}.plan-meal.is-drop-target{border-color:var(--sage);background:var(--sage-tint-strong);box-shadow:0 0 0 2px var(--sage-border);transform:scale(1.02)}.plan-meal.is-swapping{opacity:.6}@media (hover:hover) and (pointer:fine){.plan-meal:not(.is-empty){cursor:grab}}@media (prefers-reduced-motion:reduce){.plan-meal.is-drop-target{transform:none}}@keyframes plan-meal-land{0%{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:none}}.plan-meal.is-landing{animation:plan-meal-land .5s cubic-bezier(.22,.61,.36,1) both}@media (prefers-reduced-motion:reduce){.plan-meal.is-landing{animation:none}}.plan-meal-skeleton{display:flex;align-items:flex-start;gap:10px;padding:10px;border-radius:0;background:var(--bg);border:1px solid var(--card-border)}.plan-meal-skeleton-emoji{flex-shrink:0;width:22px;height:22px;border-radius:100px;background:var(--card-border)}.plan-meal-skeleton-body{flex:1;display:flex;flex-direction:column;gap:8px;padding-top:3px}.plan-meal-skeleton-bar{height:9px;border-radius:0;background:var(--card-border);width:85%}.plan-meal-skeleton-bar.is-short{width:45%}.plan-meal-skeleton-bar,.plan-meal-skeleton-emoji{animation:plan-skeleton-shimmer 1.5s ease-in-out infinite}.plan-meal-skeleton-bar.is-short{animation-delay:.12s}@keyframes plan-skeleton-shimmer{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.plan-meal-skeleton-bar,.plan-meal-skeleton-emoji{animation:none;opacity:.7}}.plan-meal-empty{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:10px;border-radius:0;background:var(--bg);border:1px dashed var(--card-border)}.plan-meal-empty-label{font-size:12px;color:var(--taupe-deep)}.plan-meal-empty-retry{font-family:var(--mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;padding:5px 8px;border-radius:0;cursor:pointer;color:var(--taupe-deep);background:var(--card);border:1px dashed var(--taupe);transition:border-color .15s,background .15s,color .15s}.plan-meal-empty-retry:hover:not(:disabled){border-style:solid;border-color:var(--sage-border);background:var(--sage-tint);color:var(--text)}.plan-meal-empty-retry:disabled{cursor:progress;opacity:.6}.plan-meal-preview{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:30;display:none;align-items:center;gap:10px;width:max-content;max-width:240px;padding:10px 12px;background:var(--card);border:1px solid var(--card-border-strong);border-radius:0;box-shadow:0 10px 28px rgba(61,54,48,.16);opacity:0;transform:translateY(4px);transition:opacity .18s ease,transform .18s cubic-bezier(.22,.61,.36,1);pointer-events:none}.plan-meal-preview-emoji{font-size:26px;line-height:1;flex-shrink:0}.plan-meal-preview-body{display:flex;flex-direction:column;gap:2px;min-width:0}.plan-meal-preview-body strong{font-family:var(--fraunces);font-size:14px;font-weight:600;color:var(--text);line-height:1.25}.plan-meal-preview-meta{font-family:var(--mono);font-size:10px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-mute)}.plan-meal-preview-macros{font-family:var(--mono);font-size:10px;color:var(--taupe-deep)}@media (hover:hover) and (pointer:fine){.plan-meal-preview{display:flex}.plan-meal-slot:focus-within .plan-meal-preview,.plan-meal-slot:hover .plan-meal-preview{opacity:1;transform:none;transition-delay:.28s}}@media (prefers-reduced-motion:reduce){.plan-meal-preview{transition:none}}.plan-meal-emoji{font-size:22px;line-height:1;flex-shrink:0}.plan-meal.has-photo{flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden}.plan-meal-photo{position:relative;display:block;aspect-ratio:4/3;background:var(--bg-elev)}.plan-meal-photo-img{object-fit:cover;border-radius:0}.plan-meal.has-photo .plan-meal-body{padding:9px 10px 10px}.plan-meal.has-photo:hover .plan-meal-photo-img{transform:scale(1.03)}.plan-meal-photo-img{transition:transform .25s ease}@media (prefers-reduced-motion:reduce){.plan-meal-photo-img{transition:none}.plan-meal.has-photo:hover .plan-meal-photo-img{transform:none}}.plan-meal-body{display:flex;flex-direction:column;gap:2px;min-width:0}.plan-meal-title{font-family:var(--fraunces);font-size:14px;line-height:1.25;font-weight:600;letter-spacing:-.01em;color:var(--text)}@media (max-width:480px){.plan-grid{grid-template-columns:1fr}.plan-meal-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}}.plan-meal-time{font-family:var(--mono);font-size:10px;letter-spacing:.6px;color:var(--text-mute);text-transform:uppercase}.plan-meal-macros{margin-top:1px}.plan-day-total,.plan-meal-macros{font-family:var(--mono);font-size:9.5px;letter-spacing:.3px;color:var(--taupe-deep);font-variant-numeric:tabular-nums}.plan-day-total{padding:8px 12px 10px;border-top:1px solid var(--card-border);background:var(--bg-elev)}.plan-day-total.is-partial{color:var(--text-mute)}.plan-meal.is-flagged{border-style:dashed}.plan-meal.is-incomplete{border-color:var(--taupe)}.plan-meal.is-incomplete:hover{border-color:var(--taupe-deep);background:var(--taupe-tint)}.plan-meal.is-blocked{border-color:var(--clay-border);background:var(--clay-tint)}.plan-meal.is-blocked:hover{border-color:var(--clay);background:var(--clay-tint)}.plan-meal.is-blocked .plan-meal-emoji{filter:grayscale(1);opacity:.55}.plan-meal.is-blocked .plan-meal-photo-img{filter:grayscale(1);opacity:.5}.plan-meal-pill{margin-top:4px;align-self:flex-start;font-family:var(--mono);font-size:9px;letter-spacing:.6px;text-transform:uppercase;padding:2px 6px;border-radius:var(--radius-md);background:var(--taupe-tint);color:var(--taupe-deep);border:1px solid var(--taupe)}.plan-meal.is-blocked .plan-meal-pill{background:var(--card);color:var(--clay);border-color:var(--clay-border)}.plan-meal-pill.is-expiring{background:var(--sage-tint);color:var(--sage-deep);border-color:var(--sage-border);text-transform:none;letter-spacing:0;font-family:var(--inter);font-weight:600}.plan-meal-rating{position:absolute;top:6px;right:6px;z-index:1;display:flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:12px;line-height:1;border-radius:100px;background:rgba(255,255,255,.88);box-shadow:0 1px 3px rgba(61,54,48,.16);pointer-events:none}.plan-meal:not(.has-photo) .plan-meal-rating{background:transparent;box-shadow:none}.plan-meal.is-rated:not(.has-photo) .plan-meal-body{padding-right:18px}.plan-meal.is-blocked .plan-meal-rating{filter:grayscale(1);opacity:.6}.plan-meal-slot,.plan-meal-tile-wrap{display:flex;flex-direction:column;gap:4px}.plan-meal-tile-wrap{position:relative}.plan-meal-quickrow{display:flex;align-items:center;gap:4px}@media (max-width:480px){.plan-meal{min-height:78px}.plan-meal-quickrow{position:absolute;bottom:6px;right:6px;flex-direction:column;z-index:2}}.plan-meal-quick-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:100px;border:1px solid var(--card-border);background:var(--bg);color:var(--text-mute);cursor:pointer;font-size:12px;line-height:1;transition:color .14s ease,border-color .14s ease,background .14s ease}.plan-meal-quick-btn:hover:not(:disabled){border-color:var(--sage-border);background:var(--sage-tint);color:var(--sage-deep)}.plan-meal-quick-btn:disabled{cursor:progress;opacity:.6}.plan-meal-quick-bookmark.is-on{color:var(--sage-deep);border-color:var(--sage-border)}.plan-meal-retry{align-self:stretch;font-family:var(--mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;padding:5px 8px;border-radius:0;cursor:pointer;color:var(--taupe-deep);background:var(--card);border:1px dashed var(--taupe);transition:border-color .15s,background .15s,color .15s}.plan-meal-retry:hover:not(:disabled){border-style:solid;border-color:var(--sage-border);background:var(--sage-tint);color:var(--text)}.plan-meal-retry:disabled{cursor:progress;opacity:.6}.plan-meal-retry-error{margin:0;font-size:11px;line-height:1.35;color:var(--clay)}.plan-accordion{margin-top:20px;background:var(--card);border:1px solid var(--card-border);border-radius:0;overflow:hidden}.plan-accordion-head{width:100%;padding:16px 20px;background:none;border:none;display:flex;align-items:center;justify-content:space-between;font-family:var(--fraunces);font-size:16px;font-weight:600;color:var(--text);cursor:pointer}.plan-accordion-caret{font-family:var(--mono);font-size:18px;color:var(--text-mute)}.plan-accordion-body{padding:0 20px 20px}.recipe-head{margin-bottom:22px}.recipe-title{font-family:var(--fraunces);font-size:clamp(28px,4vw,42px);font-weight:500;letter-spacing:-.02em;color:var(--text);line-height:1.1;margin-bottom:14px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.recipe-emoji{font-size:.7em}.recipe-chips{display:flex;gap:8px;flex-wrap:wrap}.meal-title~.recipe-chips{margin-top:16px}.recipe-chip{font-family:var(--mono);font-size:11px;letter-spacing:.6px;text-transform:uppercase;padding:6px 12px;border-radius:0;background:var(--bg-elev);border:1px solid var(--card-border);color:var(--text)}.recipe-chip em{font-style:normal;color:var(--text-mute);margin-right:6px;font-weight:600}.recipe-chip-servings{background:var(--sage-tint-strong);border-color:var(--sage-border);color:var(--sage-deep);font-weight:600}.recipe-chip-cost{background:var(--taupe-tint);border-color:var(--taupe);color:var(--taupe-deep);font-weight:600}.recipe-grid{display:grid;grid-template-columns:1.2fr 1.5fr 1fr;gap:20px;margin-bottom:24px}@media (max-width:900px){.recipe-grid{grid-template-columns:1fr}}.recipe-col{padding:22px}.recipe-col .admin-h2{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--card-border)}.recipe-ingredients{list-style:none;display:grid;gap:10px}.recipe-ingredient{display:grid;grid-template-columns:90px 1fr;gap:12px;align-items:baseline;font-size:14px;line-height:1.5}.recipe-qty{font-family:var(--mono);font-size:12px;color:var(--sage-deep);font-weight:600;letter-spacing:.3px}.recipe-ingredient-body{display:flex;flex-direction:column;gap:2px}.recipe-ingredient-note{font-size:12px;color:var(--text-mute);font-style:italic}.recipe-steps{list-style:none;display:grid;gap:14px}.recipe-step{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:baseline;font-size:14.5px;line-height:1.55;color:var(--text)}.recipe-step-num{font-family:var(--fraunces);font-size:18px;font-weight:600;color:var(--sage-deep);letter-spacing:-.02em}.recipe-mods{list-style:none;display:grid;gap:10px}.recipe-mod{padding:12px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;display:flex;flex-direction:column;gap:4px}.recipe-mod-name{font-family:var(--mono);font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:var(--sage-deep);font-weight:600}.recipe-mod-delta{font-family:var(--fraunces);font-size:14px;color:var(--text);line-height:1.4}.recipe-empty{font-size:13px;color:var(--text-mute);font-style:italic;line-height:1.5}.recipe-chef-notes,.recipe-kid-strategy{padding:20px 22px;border-radius:0;margin-bottom:16px}.recipe-chef-notes{background:linear-gradient(135deg,var(--sage-tint),transparent);border:1px solid var(--sage-border)}.recipe-kid-strategy{background:var(--taupe-tint);border:1px solid var(--card-border-strong)}.recipe-chef-eyebrow,.recipe-kid-eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;font-weight:600;color:var(--sage-deep);display:block;margin-bottom:6px}.recipe-kid-eyebrow{color:var(--taupe-deep)}.recipe-chef-notes p,.recipe-kid-strategy p{font-family:var(--fraunces);font-size:15px;line-height:1.55;color:var(--text);font-style:italic}.recipe-actions{margin-top:24px}.meal-regen .form-error{margin-top:8px}.grocery-lede{font-size:15px;color:var(--text-mute);margin:8px 0 24px;line-height:1.55}.grocery-shop-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:-8px 0 22px}.grocery-shop-cta-hint{font-size:13px;color:var(--text-mute);line-height:1.4}.grocery-controls{display:flex;align-items:center;gap:16px;padding:14px 18px;background:var(--card);border:1px solid var(--card-border);border-radius:0;margin-bottom:20px;flex-wrap:wrap}.grocery-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;font-family:var(--mono);font-size:12px;letter-spacing:.4px;color:var(--text);font-weight:600}.grocery-toggle input{cursor:pointer}.grocery-note{font-size:12.5px;color:var(--text-mute);font-style:italic}.grocery-section{margin-bottom:24px}.grocery-section-head{padding-bottom:10px;border-bottom:1px solid var(--card-border);margin-bottom:12px}.grocery-items{list-style:none;display:grid;gap:4px}.grocery-qty{font-family:var(--mono);font-size:12px;color:var(--sage-deep);font-weight:600}.grocery-name{min-width:0;font-size:14px;color:var(--text);font-weight:500}.grocery-cost{font-family:var(--mono);font-size:11px;color:var(--text-dim);letter-spacing:.4px;text-align:right}.grocery-cost.is-unpriced{opacity:.5}.grocery-store{color:var(--text-dim);letter-spacing:.3px;text-align:right;white-space:nowrap}.grocery-savings-tag,.grocery-store{font-family:var(--mono);font-size:10.5px}.grocery-savings-tag{display:inline-flex;margin-left:10px;padding:2px 8px;border-radius:999px;background:var(--sage-tint);border:1px solid var(--sage-border);letter-spacing:.2px;font-weight:600;color:var(--sage-deep)}.grocery-savings-tag.is-saving{background:var(--sage-tint);border-color:var(--sage-border);color:var(--sage-deep)}.grocery-savings-tag.is-neutral{background:var(--taupe-tint);border-color:rgba(178,158,142,.3);color:var(--taupe-deep)}.grocery-savings-tag.is-worse{background:var(--cream-2,rgba(245,240,232,.6));border-color:var(--taupe-light);color:var(--taupe-deep)}.grocery-savings-tag.is-stale{background:var(--taupe-tint);border-color:rgba(178,158,142,.3);color:var(--taupe-deep)}.grocery-stale-age{font-family:var(--mono);font-size:9.5px;opacity:.7;margin-left:4px}.grocery-report-trigger{display:block;margin-top:2px;padding:0;background:none;border:none;font-family:var(--mono);font-size:10px;letter-spacing:.2px;color:var(--text-dim);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.grocery-report-trigger:hover{color:var(--sage-deep)}.grocery-report-thanks{font-size:14px;color:var(--sage-deep);font-weight:600;padding:8px 0 4px}.pricing-page{min-height:100vh;display:flex;flex-direction:column}.pricing-page .nav-back{color:var(--text-mute);text-decoration:none;font-size:14px;font-weight:500}.pricing-page .nav-back:hover{color:var(--text)}.pricing-main{flex:1;max-width:1000px;margin:0 auto;padding:64px 24px 80px;width:100%}.pricing-header{text-align:center;margin-bottom:44px}.pricing-title{font-family:var(--fraunces);font-size:clamp(32px,5vw,46px);line-height:1.12;font-weight:600;color:var(--text);margin:12px 0 16px;letter-spacing:-.02em}.pricing-sub{font-size:17px;line-height:1.65;color:var(--text-mute);max-width:560px;margin:0 auto}.pricing-notice{max-width:620px;margin:0 auto 32px;padding:14px 18px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:15px;color:var(--sage-deep);text-align:center}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}@media (max-width:760px){.pricing-grid{grid-template-columns:minmax(0,1fr)}}.pricing-card{position:relative;display:flex;flex-direction:column;background:var(--cream,var(--card));border:1px solid var(--taupe-light,var(--card-border));border-radius:0;padding:28px 24px}.pricing-card.is-featured{border-color:var(--crisp-sage,var(--sage));border-top:3px solid var(--crisp-sage,var(--sage));box-shadow:none}.pricing-badge{position:absolute;top:-11px;left:24px;padding:3px 10px;background:var(--crisp-sage,var(--sage));color:var(--cream,var(--bg));border-radius:var(--radius-pill);font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.pricing-card-name{font-family:var(--fraunces);font-size:22px;font-weight:600;color:var(--text);margin:0 0 14px}.pricing-amount{display:flex;align-items:baseline;gap:6px;margin:0}.pricing-figure{font-family:var(--fraunces);font-size:44px;font-weight:600;color:var(--text);letter-spacing:-.02em;line-height:1}.pricing-cadence{font-size:16px;color:var(--text-mute);font-weight:500}.pricing-note{margin:10px 0 0;font-family:var(--mono);font-size:12px;letter-spacing:.4px;color:var(--sage-deep)}.pricing-note.is-placeholder{color:transparent;user-select:none}.pricing-blurb{margin:20px 0 0;font-size:15px;line-height:1.6;color:var(--text-mute)}.pricing-features{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:11px}.pricing-features li{position:relative;padding-left:26px;font-size:15px;line-height:1.5;color:var(--text)}.pricing-features li:before{content:"";position:absolute;left:4px;top:7px;width:9px;height:5px;border-left:2px solid var(--sage);border-bottom:2px solid var(--sage);transform:rotate(-45deg)}.pricing-cta{margin-top:auto;padding-top:28px}.pricing-cta .btn-primary,.pricing-cta .btn-quiet{width:100%;justify-content:center}.pricing-unavailable{margin:0;font-size:14px;line-height:1.5;color:var(--text-dim);text-align:center}.pricing-faq{margin-top:64px}.pricing-faq-title{font-family:var(--fraunces);font-size:24px;font-weight:600;color:var(--text);margin:0 0 24px;text-align:center}.pricing-faq dl{max-width:680px;margin:0 auto;display:grid;gap:22px}.pricing-faq dt{font-size:16px;font-weight:600;color:var(--text);margin-bottom:6px}.pricing-faq dd{margin:0;font-size:15px;line-height:1.65;color:var(--text-mute)}.pricing-footnote{margin:48px 0 0;text-align:center;font-size:14px;color:var(--text-dim)}.pricing-footer{padding:28px 24px;text-align:center;font-size:13px;color:rgba(248,245,240,.7);border-top:1px solid var(--card-border)}.sub-status{display:inline-block;padding:4px 11px;border-radius:999px;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase}.sub-status.is-active,.sub-status.is-comped,.sub-status.is-incomplete,.sub-status.is-trialing{background:var(--sage-tint);color:var(--sage-deep);border:1px solid var(--sage-border)}.sub-status.is-past_due{background:var(--clay-tint);color:var(--clay);border:1px solid var(--clay-border)}.sub-status.is-canceled,.sub-status.is-none{background:var(--taupe-tint);color:var(--taupe-deep);border:1px solid var(--card-border-strong)}.sub-headline{font-family:var(--fraunces);font-size:20px;font-weight:600;color:var(--text);margin:14px 0 8px}.sub-detail{margin:0;font-size:15px;line-height:1.6;color:var(--text-mute)}.sub-facts{display:grid;gap:12px;margin:22px 0 0;padding:18px 20px;background:var(--bg-elev);border:1px solid var(--card-border);border-radius:0}.sub-fact{display:flex;justify-content:space-between;gap:16px}.sub-fact-label{font-family:var(--mono);font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--text-dim)}.sub-fact-value{font-size:14px;font-weight:600;color:var(--text)}.sub-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.qs-wrap{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:40px 20px 48px;background:radial-gradient(120% 80% at 15% 0,rgba(84,114,67,.07),transparent 60%),radial-gradient(100% 70% at 100% 100%,rgba(178,158,142,.16),transparent 55%),var(--bg)}.qs-shell{width:100%;max-width:560px;margin:0 auto}.qs-dots{list-style:none;display:flex;gap:10px;justify-content:center;margin-bottom:40px}.qs-dot{width:8px;height:8px;border-radius:100px;background:var(--taupe);opacity:.4;transition:width .3s ease-out,opacity .3s ease-out,background .3s ease-out}.qs-dot.is-done{opacity:.75}.qs-dot.is-current{width:26px;background:var(--sage);opacity:1}@media (prefers-reduced-motion:reduce){.qs-dot{transition:none}}.qs-step{animation:qs-in .3s ease-out both}.qs-step-back{animation-name:qs-in-back}@keyframes qs-in{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}@keyframes qs-in-back{0%{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.qs-step{animation:qs-fade .3s ease-out both}.qs-step-back{animation-name:qs-fade}@keyframes qs-fade{0%{opacity:0}to{opacity:1}}}.qs-h1{font-family:var(--fraunces);font-size:34px;line-height:1.12;letter-spacing:-.02em;font-weight:600;color:var(--text);margin-bottom:12px;text-wrap:balance}.qs-sub{font-size:17px;line-height:1.55;color:var(--text-mute);margin-bottom:36px;max-width:44ch}.qs-h2{font-family:var(--fraunces);font-size:21px;font-weight:600;letter-spacing:-.01em;margin-bottom:14px}.qs-note{margin-top:22px;font-size:14px;color:var(--text-dim)}.qs-counters{display:grid;gap:18px}.qs-counter{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:20px}.qs-counter-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.qs-counter-label{font-family:var(--fraunces);font-size:19px;font-weight:600}.qs-counter-controls{display:flex;align-items:center;gap:6px}.qs-step-btn{width:40px;height:40px;border-radius:100px;border:1px solid var(--card-border-strong);background:var(--bg);color:var(--text);font-size:20px;line-height:1;cursor:pointer;transition:background .15s ease-out,border-color .15s ease-out}.qs-step-btn:hover:not(:disabled){background:var(--sage-tint);border-color:var(--sage-border)}.qs-step-btn:disabled{opacity:.35;cursor:not-allowed}.qs-counter-value{font-family:var(--mono);font-size:18px;min-width:30px;text-align:center}.qs-figures{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:14px;min-height:30px}.qs-figure{font-size:24px;line-height:1;animation:qs-pop .26s ease-out both}@keyframes qs-pop{0%{opacity:0;transform:scale(.5) translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.qs-figure{animation:none}}.qs-figure-more,.qs-figure-none{font-size:14px;color:var(--text-dim);margin-left:4px}.qs-checks{border:0;display:grid;gap:8px}@media (min-width:520px){.qs-checks{grid-template-columns:1fr 1fr}}.qs-check{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid var(--card-border);border-radius:0;background:var(--card);cursor:pointer;transition:border-color .15s ease-out,background .15s ease-out}.qs-check:hover{border-color:var(--card-border-strong)}.qs-check.is-on{border-color:var(--sage-border);background:var(--sage-tint)}.qs-check input{position:absolute;opacity:0;width:0;height:0}.qs-check-box{flex:0 0 auto;width:20px;height:20px;border-radius:0;border:1.5px solid var(--card-border-strong);background:var(--bg);display:grid;place-items:center;color:transparent;transition:background .15s ease-out,border-color .15s ease-out,color .15s ease-out}.qs-check.is-on .qs-check-box{background:var(--sage);border-color:var(--sage);color:#fff}.qs-check input:focus-visible+.qs-check-box{outline:2px solid var(--sage);outline-offset:2px}.qs-check-label{font-size:15px;line-height:1.35}.qs-field{margin-top:26px}.qs-field-label{display:block;font-size:14px;font-weight:600;color:var(--text-mute);margin-bottom:8px}.qs-input{width:100%;padding:13px 14px;border:1px solid var(--card-border-strong);border-radius:0;background:var(--card);color:var(--text);font-family:var(--inter);font-size:16px}.qs-input::placeholder{color:var(--text-dim)}.qs-input:focus-visible{outline:2px solid var(--sage);outline-offset:1px;border-color:transparent}.qs-field-hint{margin-top:7px;font-size:13px;color:var(--text-dim)}.qs-tiles{display:grid;gap:10px}.qs-tile{text-align:left;padding:18px;border:1px solid var(--card-border);border-radius:0;background:var(--card);cursor:pointer;display:grid;gap:4px;transition:border-color .15s ease-out,background .15s ease-out,transform .15s ease-out}.qs-tile:hover{border-color:var(--card-border-strong)}.qs-tile.is-on{border-color:var(--sage-border);background:var(--sage-tint)}.qs-tile-range{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--sage-deep);text-transform:uppercase}.qs-tile-label{font-family:var(--fraunces);font-size:19px;font-weight:600}.qs-tile-blurb{font-size:14px;color:var(--text-mute);line-height:1.45}.qs-subquestion{margin-top:34px;padding-top:28px;border-top:1px solid var(--card-border)}.qs-toggle{display:grid;gap:8px}@media (min-width:520px){.qs-toggle{grid-template-columns:1fr 1fr}}.qs-toggle-half{padding:14px 16px;border:1px solid var(--card-border);border-radius:0;background:var(--card);font-size:15px;line-height:1.35;color:var(--text-mute);cursor:pointer;transition:border-color .15s ease-out,background .15s ease-out,color .15s ease-out}.qs-toggle-half.is-on{border-color:var(--sage-border);background:var(--sage-tint);color:var(--text);font-weight:500}.qs-budget{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:28px 22px 20px}.qs-budget-readout{display:block;text-align:center;font-family:var(--mono);font-size:46px;line-height:1;letter-spacing:-.03em;color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:26px}.qs-budget-currency{color:var(--sage)}.qs-budget-per{font-family:var(--inter);font-size:15px;color:var(--text-dim);letter-spacing:0;margin-left:4px}.qs-slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:100px;background:linear-gradient(to right,var(--sage) 0,var(--sage) var(--qs-fill,50%),rgba(178,158,142,.35) var(--qs-fill,50%),rgba(178,158,142,.35) 100%);cursor:pointer}.qs-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:100px;background:var(--card);border:2px solid var(--sage);box-shadow:0 1px 4px rgba(61,54,48,.18);cursor:grab}.qs-slider::-moz-range-thumb{width:26px;height:26px;border-radius:100px;background:var(--card);border:2px solid var(--sage);box-shadow:0 1px 4px rgba(61,54,48,.18);cursor:grab}.qs-slider::-moz-range-track{background:transparent}.qs-slider:focus-visible{outline:2px solid var(--sage);outline-offset:6px}.qs-slider-ends{margin-top:12px;font-family:var(--mono);font-size:12px;color:var(--text-dim)}.qs-actions,.qs-slider-ends{display:flex;justify-content:space-between}.qs-actions{align-items:center;gap:16px;margin-top:36px}.qs-back{background:none;border:0;color:var(--text-mute);font-size:15px;cursor:pointer;padding:8px 2px}.qs-back:hover:not(:disabled){color:var(--text)}.qs-back:disabled{opacity:.5;cursor:not-allowed}.btn-primary.qs-cta-final{font-size:17px;padding:17px 30px;border-radius:100px}@media (max-width:419px){.qs-actions{flex-direction:row}.btn-primary.qs-cta-final{padding:16px 22px}}@media (min-width:640px){.qs-wrap{padding:56px 24px 72px}.qs-h1{font-size:48px}.qs-sub{font-size:18px;margin-bottom:44px}.qs-dots{margin-bottom:48px}.qs-budget-readout{font-size:58px}}.fpl-wrap{min-height:100dvh;display:grid;place-items:center;padding:40px 24px;background:radial-gradient(110% 70% at 50% 0,rgba(84,114,67,.09),transparent 65%),var(--bg)}.fpl-inner{width:100%;max-width:460px;text-align:center}.fpl-botanical{display:flex;justify-content:center;align-items:flex-end;gap:4px;color:var(--sage);margin-bottom:26px}.fpl-sprig{animation:fpl-sway 4s ease-in-out infinite;transform-origin:50% 100%}.fpl-sprig-1{animation-delay:0s;opacity:.55}.fpl-sprig-2{animation-delay:-1.3s}.fpl-sprig-3{animation-delay:-2.6s;opacity:.55}@keyframes fpl-sway{0%,to{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-5px)}}@media (prefers-reduced-motion:reduce){.fpl-sprig{animation:none}}.fpl-title{font-family:var(--fraunces);font-size:30px;line-height:1.15;letter-spacing:-.02em;font-weight:600;margin-bottom:18px;text-wrap:balance}.fpl-message{position:relative;display:block;min-height:52px;margin-bottom:22px}.fpl-line{position:absolute;inset:0;display:grid;place-items:center;font-size:17px;color:var(--text-mute);opacity:0;transform:translateY(6px);transition:opacity .5s ease-out,transform .5s ease-out}.fpl-line.is-on{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.fpl-line{transition:opacity .5s ease-out;transform:none}}.fpl-eta{font-family:var(--mono);font-size:13px;letter-spacing:.02em;color:var(--sage-deep)}.fpl-note{margin-top:10px;font-size:14px;line-height:1.5;color:var(--text-dim)}.fpl-error{font-size:16px;color:var(--clay);background:var(--clay-tint);border:1px solid var(--clay-border);border-radius:0;padding:14px 16px;margin-bottom:14px}.fpl-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}@media (min-width:640px){.fpl-title{font-size:38px}}.meal-hero{position:relative;width:100%;height:clamp(240px,40vh,460px);background:var(--bg-elev);overflow:hidden}.meal-page{padding-top:28px}.meal-back{font-family:var(--mono);font-size:11px;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:18px}.meal-back a{color:var(--text-mute);text-decoration:none;transition:color .15s}.meal-back a:hover{color:var(--sage-deep)}.meal-head{margin-bottom:30px}.meal-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--sage);font-weight:500;margin-bottom:10px}.meal-title{font-family:var(--fraunces);font-size:clamp(30px,4.4vw,46px);line-height:1.08;letter-spacing:-.02em;font-weight:600;color:var(--text);max-width:20ch}.meal-rollup{margin-top:8px;font-size:12.5px;color:var(--text-dim);letter-spacing:.1px}.meal-mods{margin-top:20px;padding:22px 24px}.meal-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:20px;align-items:start}@media (max-width:860px){.meal-cols{grid-template-columns:1fr}}.meal-col{padding:24px}.meal-col-head{font-family:var(--mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--text-mute);font-weight:600;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--card-border)}.meal-checklist{list-style:none;display:grid;gap:2px}.meal-check{display:flex;align-items:flex-start;gap:12px;padding:9px 8px;margin:0 -8px;border-radius:0;cursor:pointer;transition:background .15s}.meal-check:hover{background:var(--sage-tint)}.meal-check-input{position:absolute;width:1px;height:1px;opacity:0;margin:0;pointer-events:none}.meal-check-box{flex-shrink:0;width:20px;height:20px;margin-top:1px;border:1.5px solid var(--card-border-strong);border-radius:0;background:var(--card);display:grid;place-items:center;transition:background .18s ease,border-color .18s ease}.meal-check-input:focus-visible+.meal-check-box{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}.meal-check.is-checked .meal-check-box{background:var(--sage);border-color:var(--sage)}.meal-check-tick{width:13px;height:13px;stroke:var(--card);stroke-dasharray:22;stroke-dashoffset:22;transition:stroke-dashoffset .22s ease .04s}.meal-check.is-checked .meal-check-tick{stroke-dashoffset:0}@media (prefers-reduced-motion:reduce){.meal-check-box,.meal-check-tick{transition:none}}.meal-check-body{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 8px;min-width:0;transition:opacity .18s ease}.meal-check.is-checked .meal-check-body{opacity:.5}.meal-check.is-checked .meal-check-name{text-decoration:line-through}.meal-check-qty{font-family:var(--mono);font-size:11.5px;letter-spacing:.4px;color:var(--sage-deep);font-variant-numeric:tabular-nums;white-space:nowrap}.meal-check-name{font-size:14.5px;color:var(--text);font-weight:500}.meal-check-note{flex-basis:100%;font-size:12.5px;color:var(--text-mute);line-height:1.4}.meal-checklist-foot{margin-top:16px;padding-top:14px;border-top:1px solid var(--card-border);font-family:var(--mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-mute)}.meal-steps{list-style:none;display:grid;gap:18px}.meal-step{display:flex;gap:14px;align-items:flex-start}.meal-step-num{flex-shrink:0;width:26px;height:26px;border-radius:100px;display:grid;place-items:center;font-family:var(--mono);font-size:11px;font-weight:600;color:var(--sage-deep);background:var(--sage-tint);border:1px solid var(--sage-border);font-variant-numeric:tabular-nums}.meal-step-body{display:flex;flex-direction:column;gap:6px;min-width:0}.meal-step-text{font-size:14.5px;line-height:1.62;color:var(--text)}.meal-step-time{align-self:flex-start;font-family:var(--mono);font-size:9.5px;letter-spacing:1.1px;text-transform:uppercase;padding:3px 8px;border-radius:100px;color:var(--taupe-deep);background:var(--taupe-tint);font-variant-numeric:tabular-nums}.meal-footrow{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:20px;margin-top:24px}.meal-macros{padding:22px 24px;flex:1 1 420px}.meal-macros-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(74px,1fr));gap:8px}.meal-macro{display:flex;flex-direction:column;gap:3px;padding:12px 10px;border-radius:0;background:var(--bg);border:1px solid var(--card-border);text-align:center}.meal-macro-value{font-family:var(--fraunces);font-size:21px;font-weight:600;color:var(--text);line-height:1.1;font-variant-numeric:tabular-nums}.meal-macro-label{font-family:var(--mono);font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:var(--text-mute)}.meal-macros-note{margin-top:12px;font-size:11.5px;line-height:1.45;color:var(--text-dim)}.meal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:4px}.meal-action-back,.meal-action-cooked,.meal-cooked-done{white-space:nowrap}.meal-cooked-done{font-size:13px;color:var(--sage-deep)}.meal-notes,.meal-rating{margin-top:24px}.meal-rating{padding:22px 24px}.meal-rating-sub{margin-top:-2px;margin-bottom:14px;font-size:12.5px;line-height:1.5;color:var(--text-dim)}.meal-rating-members{display:flex;flex-direction:column;gap:18px}.meal-rating-member+.meal-rating-member{padding-top:18px;border-top:1px solid var(--card-border)}.meal-rating-member-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.meal-rating-member-name{font-family:var(--inter);font-size:13.5px;font-weight:600;color:var(--text)}.member-avatar.is-small{width:24px;height:24px;font-size:11px}.meal-rating-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px}.meal-rating-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:13px 8px 11px;text-align:center;cursor:pointer;border-radius:0;background:var(--bg);border:1px solid var(--card-border);transition:border-color .15s ease,background .15s ease,transform .12s ease}.meal-rating-btn:hover:not(:disabled){border-color:var(--card-border-strong);background:var(--bg-elev)}.meal-rating-btn:active:not(:disabled){transform:scale(.985)}.meal-rating-btn:disabled{cursor:progress;opacity:.72}.meal-rating-btn:focus-visible{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint-strong)}.meal-rating-btn.is-selected{border-color:var(--sage-border);background:var(--sage-tint)}.meal-rating-btn.is-selected:nth-child(5){border-color:var(--clay-border);background:var(--clay-tint)}.meal-rating-emoji{font-size:19px;line-height:1.15}.meal-rating-label{font-size:12.5px;font-weight:550;color:var(--text);line-height:1.25}.meal-rating-hint{font-family:var(--mono);font-size:8.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim);line-height:1.3}.meal-rating-btn.is-selected .meal-rating-hint{color:var(--text-mute)}.meal-rating-portion{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px}.meal-rating-portion-label{font-family:var(--mono);font-size:9.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-dim);margin-right:2px}.meal-portion-btn{padding:5px 10px;border-radius:999px;background:var(--bg);border:1px solid var(--card-border);font-size:12px;font-weight:550;color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease}.meal-portion-btn:hover:not(:disabled){border-color:var(--card-border-strong)}.meal-portion-btn:disabled{cursor:progress;opacity:.72}.meal-portion-btn.is-selected{border-color:var(--sage-border);background:var(--sage-tint);color:var(--sage-deep)}.meal-rating-note{margin-top:16px}.meal-rating-note-label{display:block;margin-bottom:6px;font-family:var(--mono);font-size:9.5px;letter-spacing:1.1px;text-transform:uppercase;color:var(--text-mute)}.meal-rating-textarea{width:100%;resize:vertical;min-height:58px;padding:10px 12px;font-family:var(--inter);font-size:13.5px;line-height:1.5;color:var(--text);background:var(--bg);border:1px solid var(--card-border);border-radius:0}.meal-rating-textarea::placeholder{color:var(--text-dim)}.meal-rating-textarea:focus{outline:none;border-color:var(--sage-border);box-shadow:0 0 0 3px var(--sage-tint)}.meal-rating-note-foot{display:flex;align-items:center;gap:10px;margin-top:8px}.meal-rating-save{font-size:12px;padding:6px 12px}.meal-rating-save:disabled{opacity:.5;cursor:default}.meal-rating-ok{font-family:var(--mono);font-size:9.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--sage-deep)}.meal-rating-error{margin-top:10px;font-size:12.5px;line-height:1.5;color:var(--clay)}.meals-shell{padding-top:28px}.meals-page-title{font-family:var(--fraunces);font-size:clamp(26px,3.5vw,38px);font-weight:600;color:var(--text);margin-bottom:22px}.meals-empty{padding:32px 0;font-size:14.5px;color:var(--text-dim)}.meals-empty a{color:var(--sage-deep);text-decoration:underline}.meals-index{display:flex;flex-direction:column;gap:32px}.meals-filters{display:flex;gap:8px;flex-wrap:wrap}.meals-filter-btn{padding:6px 14px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.8px;text-transform:uppercase;background:var(--bg);border:1px solid var(--card-border);color:var(--text-dim);cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease;border-radius:0}.meals-filter-btn:hover{border-color:var(--card-border-strong);color:var(--text)}.meals-filter-btn.is-active{background:var(--sage-tint);border-color:var(--sage-border);color:var(--sage-deep)}.meals-empty-filter{font-size:13.5px;color:var(--text-dim);padding:12px 0}.meals-day{display:flex;flex-direction:column;gap:12px}.meals-day-label{font-family:var(--mono);font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-mute);font-weight:500}.meals-day-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.meals-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--card-border);text-decoration:none;transition:border-color .15s ease,transform .12s ease}.meals-card:hover{border-color:var(--card-border-strong);transform:translateY(-1px)}.meals-card-media{position:relative;height:130px;background:var(--taupe-tint);display:flex;align-items:center;justify-content:center;overflow:hidden}.meals-card-img{object-fit:cover}.meals-card-emoji{font-size:40px;line-height:1}.meals-card-body{display:flex;flex-direction:column;gap:3px;padding:12px 14px 14px}.meals-card-slot{font-family:var(--mono);font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--sage-deep);font-weight:500}.meals-card-title{font-size:14.5px;font-weight:600;color:var(--text);line-height:1.3}.meals-card-meta{font-size:12px;color:var(--text-dim);margin-top:2px}@media (max-width:600px){.meals-day-grid{grid-template-columns:1fr}}.rcpt-header{margin-bottom:28px}.rcpt-shop-banner{padding:12px 16px;margin:0 0 20px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:13.5px;line-height:1.5;color:var(--text-mute)}.rcpt-shop-banner strong{color:var(--sage-deep);font-weight:600}.rcpt-upload{margin-bottom:36px}.rcpt-dz-wrap{gap:10px}.rcpt-dz,.rcpt-dz-wrap{display:flex;flex-direction:column}.rcpt-dz{position:relative;align-items:center;justify-content:center;gap:8px;min-height:226px;padding:34px 24px;text-align:center;cursor:pointer;background:radial-gradient(120% 90% at 50% 0,var(--sage-tint) 0,transparent 62%),var(--card);border:1.5px dashed var(--card-border-strong);border-radius:0;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.rcpt-dz:hover:not(.is-disabled){border-color:var(--sage-border);background:radial-gradient(120% 90% at 50% 0,var(--sage-tint-strong) 0,transparent 64%),var(--card)}.rcpt-dz.is-dragging{border-style:solid;border-color:var(--sage);background:var(--sage-tint-strong);transform:scale(1.006);box-shadow:0 8px 28px -18px var(--sage)}.rcpt-dz.is-busy{cursor:progress}.rcpt-dz.is-disabled{cursor:not-allowed;opacity:.7;background:var(--bg-elev)}.rcpt-dz:focus-within{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint-strong)}@media (prefers-reduced-motion:reduce){.rcpt-dz,.rcpt-dz.is-dragging{transition:none;transform:none}}.rcpt-dz-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:inherit}.rcpt-dz-input:disabled{cursor:not-allowed}.rcpt-dz-input.is-offscreen{position:absolute;width:1px;height:1px;inset:auto;clip-path:inset(50%)}.rcpt-dz-mark{width:46px;height:46px;color:var(--taupe);transition:color .18s ease}.rcpt-dz.is-dragging .rcpt-dz-mark,.rcpt-dz:hover:not(.is-disabled) .rcpt-dz-mark{color:var(--sage)}.rcpt-dz-title{font-family:var(--fraunces);font-size:20px;font-weight:600;letter-spacing:-.015em;color:var(--text)}.rcpt-dz-copy{max-width:36ch;font-size:13.5px;line-height:1.55;color:var(--text-mute)}.rcpt-dz-hint{margin-top:2px;font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;color:var(--text-dim)}.rcpt-dz-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;font-size:12.5px;color:var(--text-mute)}.rcpt-dz-action{padding:2px 0;background:none;border:none;font:inherit;font-weight:600;color:var(--sage-deep);cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.rcpt-dz-action:hover:not(:disabled){color:var(--sage)}.rcpt-dz-action:disabled{color:var(--text-dim);cursor:not-allowed;text-decoration:none}.rcpt-dz-action:focus-visible{outline:2px solid var(--sage);outline-offset:3px;border-radius:0}.rcpt-dz-sep{color:var(--card-border-strong)}.rcpt-dz-paste{color:var(--text-dim)}.rcpt-dz-paste kbd{padding:1px 5px;background:var(--bg-elev);border:1px solid var(--card-border);border-radius:0}.rcpt-dz-paste kbd,.rcpt-dz-quota{font-family:var(--mono);font-size:10.5px}.rcpt-dz-quota{letter-spacing:.6px;text-transform:uppercase;color:var(--text-dim);text-align:center}.rcpt-notice{margin-top:10px;padding:9px 12px;font-size:12.5px;line-height:1.5;color:var(--text-mute);background:var(--taupe-tint);border-radius:0}.rcpt-consent{margin-top:14px;padding:14px 16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0}.rcpt-consent-copy{margin:0;font-size:13.5px;line-height:1.55;color:var(--text)}.rcpt-consent-error{margin:10px 0 0;font-size:12.5px;color:var(--clay)}.rcpt-consent-actions{display:flex;align-items:center;gap:14px;margin-top:12px}.rcpt-consent-cancel{background:none;border:none;padding:0;font-size:13px;color:var(--text-mute);cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.rcpt-consent-cancel:hover{color:var(--text)}.rcpt-queue{list-style:none;display:grid;gap:10px;margin-top:14px}.rcpt-queue-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;background:var(--card);border:1px solid var(--card-border);border-left:3px solid var(--sage);border-radius:0}.rcpt-queue-card.is-failed{border-left-color:var(--clay);background:var(--clay-tint)}.rcpt-queue-thumb{width:52px;height:52px;object-fit:cover;border-radius:0;border:1px solid var(--card-border);background:var(--bg-elev)}.rcpt-queue-body{min-width:0;display:flex;flex-direction:column;gap:4px}.rcpt-queue-name{font-size:13.5px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rcpt-queue-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:12.5px;line-height:1.5;color:var(--text-mute)}.rcpt-queue-note.is-failed{color:var(--clay)}.rcpt-queue-total{font-family:var(--fraunces);font-size:19px;font-weight:700;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}.rcpt-queue-total.is-incomplete{color:var(--clay)}.rcpt-queue-count{font-family:var(--mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--text-dim)}.rcpt-queue-actions{display:flex;align-items:center;gap:8px}.rcpt-queue-retry{padding:7px 12px;font-size:12.5px;font-weight:600;color:var(--sage-deep);background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;cursor:pointer}.rcpt-queue-retry:hover{background:var(--sage-tint-strong)}.rcpt-queue-x{width:26px;height:26px;display:grid;place-items:center;font-size:17px;line-height:1;color:var(--text-dim);background:none;border:none;border-radius:0;cursor:pointer}.rcpt-queue-x:hover{color:var(--text);background:var(--bg-elev)}.rcpt-queue-x:focus-visible{outline:2px solid var(--sage);outline-offset:1px}@media (max-width:560px){.rcpt-queue-card{grid-template-columns:44px minmax(0,1fr)}.rcpt-queue-thumb{width:44px;height:44px}.rcpt-queue-actions{grid-column:1/-1;justify-content:flex-end}}.rcpt-parsing{display:flex;flex-direction:column;gap:10px;width:100%}.rcpt-parsing-bar{position:relative;height:4px;overflow:hidden;background:var(--bg-elev);border-radius:0}.rcpt-parsing-fill{display:block;height:100%;width:0;border-radius:0;background:linear-gradient(90deg,var(--sage-light),var(--sage))}.rcpt-parsing-caption{font-size:12.5px;line-height:1.5;color:var(--text-mute);font-style:italic}.rcpt-parsing-panel{display:flex;flex-direction:column;gap:14px}.rcpt-parsing-foot{font-size:12.5px;line-height:1.6;color:var(--text-dim)}.rcpt-skeleton{list-style:none;display:grid;gap:2px;margin-top:2px}.rcpt-skeleton-row{display:grid;grid-template-columns:minmax(0,1fr) 56px;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--card-border)}.rcpt-skeleton-row:last-child{border-bottom:none}.rcpt-skeleton-cell{display:block;height:11px;border-radius:0;background:linear-gradient(90deg,var(--bg-elev) 0,var(--card-border) 42%,var(--bg-elev) 84%);background-size:260% 100%;animation:rcpt-shimmer 1.5s ease-in-out infinite}.rcpt-skeleton-cell.is-price{width:100%;justify-self:end}@keyframes rcpt-shimmer{0%{background-position:140% 0}to{background-position:-60% 0}}@media (prefers-reduced-motion:reduce){.rcpt-skeleton-cell{animation:none;background:var(--bg-elev)}}.rcpt-review{gap:16px;margin-top:20px}.rcpt-review,.rcpt-review-head{display:flex;flex-direction:column}.rcpt-review-head{gap:4px}.rcpt-review-title{font-family:var(--fraunces);font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.rcpt-review-sub{font-size:13px;line-height:1.6;color:var(--text-mute)}.rcpt-review-empty{font-size:13px;line-height:1.6;font-style:italic;color:var(--text-dim)}.rcpt-rows{list-style:none;display:grid;gap:6px}.rcpt-row-item{display:grid;grid-template-columns:22px minmax(0,1fr) auto;grid-template-areas:"toggle name price" ".      meta meta";align-items:center;column-gap:10px;row-gap:7px;padding:11px 10px;border:1px solid transparent;border-radius:0;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.rcpt-row-item:hover{background:var(--bg-elev)}.rcpt-row-item.is-unsure{background:rgba(198,97,63,.07);border-color:rgba(198,97,63,.3)}.rcpt-row-item.is-unsure:hover{background:rgba(198,97,63,.1)}.rcpt-row-item.is-skipped{opacity:.5}.rcpt-row-item.is-skipped .rcpt-row-name{text-decoration:line-through}.rcpt-row-toggle{grid-area:toggle;position:relative;display:block;width:20px;height:20px}.rcpt-row-toggle input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.rcpt-row-toggle-box{display:grid;place-items:center;width:20px;height:20px;border:1.5px solid var(--card-border-strong);border-radius:0;background:var(--card);color:#fff;transition:background .14s ease,border-color .14s ease}.rcpt-row-toggle-box svg{opacity:0;transition:opacity .12s ease}.rcpt-row-toggle input:checked+.rcpt-row-toggle-box{background:var(--sage);border-color:var(--sage)}.rcpt-row-toggle input:checked+.rcpt-row-toggle-box svg{opacity:1}.rcpt-row-toggle input:focus-visible+.rcpt-row-toggle-box{outline:2px solid var(--sage);outline-offset:2px}.rcpt-row-toggle input:disabled+.rcpt-row-toggle-box{opacity:.5;cursor:not-allowed}.rcpt-row-name{grid-area:name;min-width:0;width:100%;font-size:13.5px;padding:8px 10px}.rcpt-row-meta{grid-area:meta;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:7px}.rcpt-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.7px;text-transform:uppercase;border-radius:0;white-space:nowrap}.rcpt-tag.is-matched{color:var(--sage-deep);background:var(--sage-tint);border:1px solid var(--sage-border)}.rcpt-tag.is-new{color:var(--taupe-deep);background:var(--taupe-tint);border:1px solid var(--taupe)}.rcpt-tag.is-quiet{color:var(--text-dim);background:var(--bg-elev);border:1px solid var(--card-border)}.rcpt-tag.is-unsure-chip{color:#fff;background:var(--clay-accent);border:1px solid var(--clay-accent)}.rcpt-row-unsure{flex:1 0 100%;font-size:11.5px;line-height:1.5;color:#8a4227;font-style:italic}.rcpt-row-raw{font-style:normal;font-weight:600}.rcpt-row-qty{min-width:64px;max-width:90px}.rcpt-row-aisle,.rcpt-row-qty{flex:0 1 auto;width:auto;font-size:12.5px;padding:6px 8px}.rcpt-row-aisle{min-width:108px}.rcpt-row-aisle.is-new{border-color:var(--taupe);background:var(--taupe-tint)}.rcpt-row-price{grid-area:price;font-family:var(--mono);font-size:12.5px;color:var(--text-mute);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.rcpt-totals-foot{padding:14px 16px;background:var(--bg-elev);border:1px solid var(--card-border);border-radius:0}.rcpt-totals-foot.is-off{background:var(--clay-tint);border-color:var(--clay-border)}.rcpt-totals-grid{display:grid;gap:6px}.rcpt-totals-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.rcpt-totals-row dt{font-size:12.5px;color:var(--text-mute)}.rcpt-totals-row dd{font-family:var(--mono);font-size:13px;color:var(--text-mute);font-variant-numeric:tabular-nums}.rcpt-totals-row dd.is-strong{font-family:var(--fraunces);font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.rcpt-totals-warning{margin-top:10px;padding-top:10px;border-top:1px solid var(--clay-border);font-size:12.5px;line-height:1.6;color:var(--clay)}.rcpt-review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-top:4px}.rcpt-add-all{display:inline-flex;align-items:center;gap:8px}.rcpt-review-secondary{padding:11px 16px;font-size:13px;font-weight:600;color:var(--text-mute);background:var(--card);border:1px solid var(--card-border-strong);border-radius:0;cursor:pointer}.rcpt-review-secondary:hover:not(:disabled){border-color:var(--taupe);color:var(--text)}.rcpt-review-secondary:disabled{opacity:.5;cursor:not-allowed}.rcpt-review-cancel{font-size:13px;color:var(--text-dim);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.rcpt-review-cancel:hover{color:var(--text-mute)}.rcpt-review-blocked{margin-top:0}.rcpt-dupe{display:flex;flex-direction:column;gap:10px;padding:16px 18px;background:var(--clay-tint);border:1px solid var(--clay-border);border-radius:0}.rcpt-dupe-title{font-family:var(--fraunces);font-size:16px;font-weight:600;color:var(--clay)}.rcpt-dupe-copy{font-size:13px;line-height:1.6;color:var(--text-mute)}.rcpt-dupe-copy strong{color:var(--text)}.rcpt-dupe-actions{display:flex;flex-wrap:wrap;gap:10px}.rcpt-dupe-alt{padding:11px 18px;font-size:14px;font-weight:600;color:var(--clay);background:var(--card);border:1px solid var(--clay-border);border-radius:0;cursor:pointer}.rcpt-dupe-alt:hover:not(:disabled){background:var(--clay);color:#fff}.rcpt-dupe-alt:disabled{opacity:.55;cursor:not-allowed}.rcpt-dupe-ignore{align-self:flex-start;padding:0;font-size:12.5px;color:var(--text-mute);background:none;border:none;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.rcpt-dupe-ignore:hover{color:var(--text)}.rcpt-done{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:20px;padding:40px 24px 36px;text-align:center;background:var(--card);border:1px solid var(--sage-border);border-radius:0;overflow:hidden}.rcpt-done-tick{width:54px;height:54px;color:var(--sage)}.rcpt-done-title{font-family:var(--fraunces);font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.rcpt-done-copy{font-size:14.5px;line-height:1.6;color:var(--text-mute);max-width:36ch}.rcpt-done-meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--text-dim)}.rcpt-done-link{margin-top:6px;font-size:13px;font-weight:600;color:var(--sage-deep);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.rcpt-done-link:hover{color:var(--sage)}.rcpt-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.rcpt-confetti-piece{position:absolute;top:-24px;border-radius:2px 6px 2px 6px;opacity:0;animation-name:rcpt-fall;animation-timing-function:cubic-bezier(.35,.1,.5,1);animation-fill-mode:forwards}@keyframes rcpt-fall{0%{opacity:0;transform:translate3d(0,-10px,0) rotate(0deg)}12%{opacity:1}to{opacity:0;transform:translate3d(var(--drift),300px,0) rotate(var(--spin))}}.rcpt-reviewed-note{margin-top:14px;font-size:13px;line-height:1.6;color:var(--text-mute)}.rcpt-result-link{font-size:13px;font-weight:600;white-space:nowrap;color:var(--sage-deep);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.rcpt-result-link:hover{color:var(--sage)}.rcpt-pill{display:inline-flex;align-items:center;padding:3px 9px;font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:1.1px;text-transform:uppercase;white-space:nowrap;border-radius:999px;border:1px solid transparent}.rcpt-pill.is-processing{color:var(--taupe-deep);background:var(--taupe-tint);border-color:var(--card-border-strong)}.rcpt-pill.is-parsed,.rcpt-pill.is-reviewed{color:var(--sage-deep);background:var(--sage-tint);border-color:var(--sage-border)}.rcpt-pill.is-failed,.rcpt-pill.is-incomplete{color:var(--clay);background:var(--clay-tint);border-color:var(--clay-border)}.rcpt-section{margin-top:8px}.rcpt-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--card-border)}.rcpt-section-title{font-family:var(--fraunces);font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.rcpt-section-note{font-family:var(--mono);font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:var(--text-dim)}.rcpt-list{list-style:none;display:grid}.rcpt-row-wrap{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--card-border)}.rcpt-list li:last-child .rcpt-row-wrap{border-bottom:none}.rcpt-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 4px;flex:1;min-width:0;transition:background .15s ease,padding-left .15s ease}.rcpt-row:hover{background:var(--sage-tint);padding-left:10px}.rcpt-row-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.rcpt-row-action{font-family:var(--inter);font-size:11.5px;font-weight:600;padding:6px 10px;border:1px solid var(--card-border);border-radius:100px;background:transparent;color:var(--text-mute);cursor:pointer;transition:color .14s ease,border-color .14s ease,background .14s ease}.rcpt-row-action:hover:not(:disabled){border-color:var(--sage-border);background:var(--sage-tint);color:var(--sage-deep)}.rcpt-row-action:disabled{cursor:progress;opacity:.6}.rcpt-row-action.is-dismiss{width:26px;height:26px;padding:0;display:inline-flex;align-items:center;justify-content:center}.rcpt-row-action.is-dismiss:hover:not(:disabled){border-color:var(--clay-border);background:var(--clay-tint);color:var(--clay)}.rcpt-row-error{margin:0 4px 12px}@media (max-width:520px){.rcpt-row-wrap{flex-wrap:wrap}.rcpt-row-actions{width:100%;justify-content:flex-end;padding:0 4px 10px}}.rcpt-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.rcpt-row-store{font-family:var(--fraunces);font-size:15.5px;font-weight:600;letter-spacing:-.01em;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rcpt-row-meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.5px;color:var(--text-mute)}.rcpt-row-dot{margin:0 6px;color:var(--text-dim)}.rcpt-row-right{display:flex;align-items:center;gap:12px}.rcpt-row-total{font-family:var(--mono);font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums}@media (max-width:520px){.rcpt-row{flex-direction:column;align-items:flex-start;gap:8px}.rcpt-row-right{width:100%;justify-content:space-between}}.rcpt-empty{padding:40px 4px;text-align:center}.rcpt-empty-title{font-family:var(--fraunces);font-size:19px;font-weight:600;letter-spacing:-.01em;color:var(--text);margin-bottom:8px}.rcpt-empty-copy{max-width:42ch;margin:0 auto;font-size:13.5px;line-height:1.6;color:var(--text-mute)}.rcpt-back{display:inline-block;margin-bottom:20px;font-family:var(--mono);font-size:11px;letter-spacing:.6px;color:var(--text-mute)}.rcpt-back:hover{color:var(--sage-deep)}.rcpt-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.rcpt-failure{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:24px;padding:16px 18px;background:var(--clay-tint);border:1px solid var(--clay-border);border-radius:0}.rcpt-failure.is-processing{background:var(--taupe-tint);border-color:var(--card-border-strong)}.rcpt-failure-copy{flex:1 1 240px;font-size:13.5px;line-height:1.55;color:var(--text)}.rcpt-retry{display:flex;flex-direction:column;gap:6px}.rcpt-detail-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:28px;align-items:start}@media (max-width:780px){.rcpt-detail-grid{grid-template-columns:1fr;gap:24px}}.rcpt-photo-panel{padding:10px;background:var(--card);border:1px solid var(--card-border);border-radius:0;position:sticky;top:24px}@media (max-width:780px){.rcpt-photo-panel{position:static}}.rcpt-photo{display:block;width:100%;height:auto;border-radius:0}.rcpt-photo-missing{padding:32px 12px;text-align:center;font-size:13px;font-style:italic;color:var(--text-dim)}.rcpt-totals{display:grid;margin-bottom:28px;padding:4px 0;border-top:1px solid var(--card-border);border-bottom:1px solid var(--card-border)}.rcpt-total-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:10px 0}.rcpt-total-row dt{font-family:var(--mono);font-size:10px;letter-spacing:1.3px;text-transform:uppercase;font-weight:600;color:var(--text-dim)}.rcpt-total-row dd{font-family:var(--mono);font-size:15px;color:var(--text-mute);font-variant-numeric:tabular-nums}.rcpt-total-row.is-strong{border-top:1px solid var(--card-border)}.rcpt-total-row.is-strong dt{color:var(--text)}.rcpt-total-row.is-strong dd{font-family:var(--fraunces);font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.rcpt-items-title{font-family:var(--fraunces);font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text);margin-bottom:10px}.rcpt-items{list-style:none;display:grid}.rcpt-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid var(--card-border)}.rcpt-items li:last-child{border-bottom:none}.rcpt-item-name{font-size:13.5px;color:var(--text);overflow-wrap:anywhere}.rcpt-item-unit{font-size:10.5px;letter-spacing:.4px;color:var(--text-dim)}.rcpt-item-total,.rcpt-item-unit{font-family:var(--mono);white-space:nowrap}.rcpt-item-total{font-size:13px;color:var(--text-mute);font-variant-numeric:tabular-nums}.rcpt-items-empty{font-size:13px;line-height:1.6;font-style:italic;color:var(--text-dim)}.spend-pill{display:inline-flex;flex-direction:column;gap:4px;margin-top:10px;padding:9px 14px 10px;background:var(--card);border:1px solid var(--card-border);border-radius:0;transition:border-color .15s ease,background .15s ease}.spend-pill:hover{border-color:var(--sage-border);background:var(--sage-tint)}.spend-pill-label{font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:var(--text-dim)}.spend-pill-figure{font-family:var(--fraunces);font-size:19px;font-weight:700;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}.spend-pill-budget{font-size:12.5px;color:var(--text-mute)}.spend-pill-budget,.spend-pill-note{font-family:var(--inter);font-weight:500;letter-spacing:0}.spend-pill-note{font-size:11px;color:var(--clay)}.dash-trend-note{margin-top:6px}.spend-pill-track{height:3px;margin-top:3px;overflow:hidden;background:var(--bg-elev);border-radius:0}.spend-pill-fill{display:block;height:100%;background:var(--sage);border-radius:0;transition:width .3s ease}.spend-pill.is-over .spend-pill-figure{color:var(--clay)}.spend-pill.is-over .spend-pill-fill{background:var(--clay)}.spend-pill.is-over:hover{border-color:var(--clay-border);background:var(--clay-tint)}.danger-zone .settings-card-head{border-bottom-color:var(--card-border-strong)}.danger-row{display:flex;align-items:flex-start;justify-content:space-between;gap:28px}.danger-row-copy{max-width:460px}.danger-row-copy h3{margin:0 0 6px;font-family:var(--fraunces);font-size:17px;font-weight:600;color:var(--text)}.danger-row-copy p{margin:0;font-size:14px;line-height:1.55;color:var(--text-mute)}.danger-row-action{flex-shrink:0;padding-top:2px}@media (max-width:620px){.danger-row{flex-direction:column;gap:14px}.danger-row-action{width:100%}.danger-row-action .btn-primary,.danger-row-action .btn-quiet{width:100%;justify-content:center}}.danger-divider{border:none;border-top:1px solid var(--card-border);margin:28px 0}.danger-success{margin-top:16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-left:3px solid var(--sage);border-radius:0;padding:13px 16px;font-size:13.5px;line-height:1.55;color:var(--sage-deep)}.danger-zone.is-scheduled{border-left:3px solid var(--clay)}.danger-scheduled-date{margin:0 0 12px;font-size:16px;line-height:1.5;color:var(--text)}.danger-actions{margin-top:22px}.danger-modal-backdrop{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(61,54,48,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.danger-modal{width:100%;max-width:520px;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--card);border:1px solid var(--card-border-strong);border-top:3px solid var(--clay);border-radius:0;padding:30px 32px}@media (max-width:560px){.danger-modal{padding:24px 20px}}.danger-modal h3{font-family:var(--fraunces);font-size:22px;font-weight:600}.danger-modal h3,.danger-modal>p{margin:0 0 14px;color:var(--text)}.danger-modal>p{font-size:15px;line-height:1.6}.danger-modal-list{margin:0 0 18px;padding-left:18px;font-size:14px;line-height:1.65;color:var(--text-mute)}.danger-modal-list li+li{margin-top:10px}.danger-modal-list strong{color:var(--text);font-weight:600}.danger-modal-note{margin:0 0 20px;padding:12px 14px;background:var(--taupe-tint);border-radius:0;font-size:13.5px;line-height:1.55;color:var(--taupe-deep)}.danger-modal-note strong{color:var(--text)}.danger-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}@media (max-width:460px){.danger-modal-actions{flex-direction:column-reverse;align-items:stretch}.danger-modal-actions .btn-primary,.danger-modal-actions .btn-quiet{width:100%;justify-content:center}}.restore-shell{max-width:640px;margin:0 auto;padding:56px 24px 96px}@media (max-width:560px){.restore-shell{padding:32px 18px 64px}}.restore-card{background:var(--card);border:1px solid var(--card-border);border-top:3px solid var(--clay);border-radius:0;padding:40px 40px 34px}@media (max-width:560px){.restore-card{padding:28px 22px 24px}}.restore-chip{display:inline-block;margin-bottom:18px;padding:5px 12px;background:var(--clay-tint);border:1px solid var(--clay-border);border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--clay)}.restore-h1{margin:0 0 14px;font-family:var(--fraunces);font-size:28px;line-height:1.25;font-weight:600;color:var(--text)}@media (max-width:560px){.restore-h1{font-size:23px}}.restore-lede{margin:0 0 24px;font-size:16px;line-height:1.6;color:var(--text-mute)}.restore-date-block{margin-bottom:24px;padding:18px 20px;background:var(--bg-elev);border-radius:0}.restore-date-label{margin:0 0 4px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute)}.restore-date-value{margin:0;font-family:var(--fraunces);font-size:22px;font-weight:600;color:var(--clay)}.restore-date-note{margin:6px 0 0;font-size:13.5px;color:var(--text-mute)}.restore-body{margin:0 0 26px;font-size:15px;line-height:1.65;color:var(--text)}.restore-actions{display:flex;align-items:center;gap:12px;margin-bottom:18px}@media (max-width:460px){.restore-actions{flex-direction:column;align-items:stretch}.restore-actions .btn-primary,.restore-actions .btn-quiet{width:100%;justify-content:center}}.restore-footnote{margin:0;font-size:13.5px;line-height:1.55;color:var(--text-mute)}.restore-divider{border:none;border-top:1px solid var(--card-border);margin:28px 0 18px}.restore-help{margin:0;font-size:13.5px;line-height:1.55;color:var(--text-mute)}.ratelimit-backdrop{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(61,54,48,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.ratelimit-modal{width:100%;max-width:480px;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--card);border:1px solid var(--card-border-strong);border-top:3px solid var(--sage);border-radius:0;padding:30px 32px}@media (max-width:560px){.ratelimit-modal{padding:24px 20px}}.ratelimit-modal h3{margin:0 0 14px;font-family:var(--fraunces);font-size:22px;font-weight:600;line-height:1.3;color:var(--text)}.ratelimit-copy{margin:0 0 14px;font-size:15px;line-height:1.6;color:var(--text)}.ratelimit-copy strong{color:var(--text);font-weight:700}.ratelimit-pitch{margin:0 0 20px;padding:14px 16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0}.ratelimit-pitch .ratelimit-copy{margin:0;font-size:14.5px;color:var(--sage-deep)}.ratelimit-pitch .ratelimit-copy strong{color:var(--sage-deep)}.ratelimit-contact{margin:0 0 20px;padding:12px 14px;background:var(--taupe-tint);border-radius:0;font-size:13.5px;line-height:1.55;color:var(--taupe-deep)}.ratelimit-contact a{color:var(--sage-deep);font-weight:600;text-decoration:underline;text-underline-offset:2px}.ratelimit-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}@media (max-width:460px){.ratelimit-actions{flex-direction:column-reverse;align-items:stretch}.ratelimit-actions .btn-primary,.ratelimit-actions .btn-quiet{width:100%;justify-content:center}}.install-banner{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:180;width:calc(100% - 24px);max-width:520px;display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--sage);border-radius:0;box-shadow:0 10px 32px rgba(61,54,48,.28);animation:install-banner-in .26s ease-out both;margin-bottom:env(safe-area-inset-bottom,0)}@keyframes install-banner-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.install-banner{animation:none}}.install-banner-mark{flex:0 0 auto;display:grid;place-items:center;width:40px;height:40px;border-radius:0;background:rgba(248,245,240,.16)}.install-banner-copy{flex:1 1 auto;min-width:0}.install-banner-title{margin:0;font-size:14.5px;font-weight:600;line-height:1.35;color:#f8f5f0}.install-banner-sub{margin:2px 0 0;font-size:12.5px;line-height:1.4;color:rgba(248,245,240,.78)}.install-banner-actions{flex:0 0 auto;display:flex;align-items:center;gap:8px}.install-banner-dismiss{order:1;padding:8px 10px;border:0;border-radius:0;background:transparent;font-family:inherit;font-size:12.5px;font-weight:500;color:rgba(248,245,240,.75);cursor:pointer}.install-banner-dismiss:hover{color:#f8f5f0}.install-banner-cta{order:2;padding:9px 16px;border:0;border-radius:0;background:#f8f5f0;font-family:inherit;font-size:13px;font-weight:600;color:var(--sage-deep);cursor:pointer;white-space:nowrap}.install-banner-cta:hover{background:#fff}.install-banner-cta:focus-visible,.install-banner-dismiss:focus-visible{outline:2px solid #f8f5f0;outline-offset:2px}@media (max-width:400px){.install-banner{gap:10px;padding:12px 13px;flex-wrap:wrap}.install-banner-mark{display:none}.install-banner-actions{width:100%;justify-content:flex-end}}.install-backdrop{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(61,54,48,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.install-modal{width:100%;max-width:440px;max-height:calc(100vh - 40px);overflow-y:auto;padding:24px 24px 20px;background:var(--card);border-radius:0;border-top:3px solid var(--sage);box-shadow:0 20px 60px rgba(61,54,48,.32)}.install-modal-title{margin:0 0 6px;font-family:var(--font-fraunces),Georgia,serif;font-size:21px;font-weight:600;color:var(--text)}.install-modal-sub{margin:0 0 20px;font-size:14px;line-height:1.55;color:var(--text-mute)}.install-steps{margin:0 0 22px;padding:0;list-style:none;display:flex;flex-direction:column;gap:18px}.install-step{display:flex;gap:12px;align-items:flex-start}.install-step-num{flex:0 0 auto;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--sage-tint-strong);font-size:12.5px;font-weight:700;color:var(--sage-deep)}.install-step-body{flex:1 1 auto;min-width:0}.install-step-copy{margin:2px 0 0;font-size:13.5px;line-height:1.55;color:var(--text)}.install-step-copy strong{font-weight:600;color:var(--sage-deep)}.install-step-art{display:block;margin-top:10px}.install-step-art svg{display:block;width:100%;height:auto}.install-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}@media (max-width:460px){.install-modal-actions{flex-direction:column-reverse;align-items:stretch}.install-modal-actions .btn-primary,.install-modal-actions .btn-quiet{width:100%;justify-content:center}}.offline-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.offline-card{width:100%;max-width:400px;text-align:center}.offline-mark{display:inline-grid;place-items:center;width:76px;height:76px;margin-bottom:18px;border-radius:0;background:var(--sage-tint);border:1px solid var(--sage-border)}.offline-title{margin:0 0 12px;font-family:var(--font-fraunces),Georgia,serif;font-size:27px;font-weight:600;color:var(--text)}.offline-copy{margin:0 0 12px;font-size:14.5px;line-height:1.6;color:var(--text-mute)}.offline-copy-quiet{color:var(--text-dim);font-size:13.5px}.offline-retry{margin-top:10px;display:inline-flex;text-decoration:none}.fb-launcher{position:fixed;right:20px;bottom:20px;z-index:150;display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid var(--card-border-strong);border-radius:999px;background:var(--card);color:var(--taupe-deep);font-family:var(--inter);font-size:13.5px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 2px 10px rgba(61,54,48,.08);opacity:.6;transition:opacity .16s ease,border-color .16s ease,color .16s ease}.fb-launcher:focus-visible,.fb-launcher:hover{opacity:1;border-color:var(--taupe);color:var(--text)}.fb-launcher:focus-visible{outline:2px solid var(--sage-deep);outline-offset:3px}@media (max-width:480px){.fb-launcher{right:14px;bottom:14px;padding:11px}.fb-launcher-label{display:none}}@media (prefers-reduced-motion:reduce){.fb-launcher{transition:none}}.fb-backdrop{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(61,54,48,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.fb-modal{width:100%;max-width:460px;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--card);border:1px solid var(--card-border-strong);border-top:3px solid var(--taupe);border-radius:0;padding:24px 28px}@media (max-width:560px){.fb-modal{padding:22px 18px}}.fb-modal h3{margin:0 0 6px;font-family:var(--fraunces);font-size:21px;font-weight:600;line-height:1.3;color:var(--text)}.fb-sub{margin:0 0 16px;font-size:14px;line-height:1.55}.fb-legend,.fb-sub{color:var(--text-mute)}.fb-legend{display:block;margin:0 0 8px;font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.fb-types{border:none;margin:0 0 14px;padding:0}.fb-type{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 10px;padding:8px 12px;margin-bottom:5px;border:1px solid var(--card-border);border-radius:0;cursor:pointer;transition:border-color .14s ease,background .14s ease}.fb-type:hover{border-color:var(--card-border-strong)}.fb-type.is-active{border-color:var(--sage-border);background:var(--sage-tint)}.fb-type input{grid-row:span 2;margin:0;accent-color:var(--sage)}.fb-type-label{font-size:14.5px;font-weight:600;color:var(--text)}.fb-type-hint{grid-column:2;font-size:12.5px;color:var(--text-mute)}.fb-type:focus-within{outline:2px solid var(--sage-deep);outline-offset:2px}.fb-field{display:block;margin:0 0 4px}.fb-textarea{width:100%;padding:11px 13px;border:1px solid var(--card-border-strong);border-radius:0;background:var(--bg);color:var(--text);font-family:var(--inter);font-size:15px;line-height:1.55;resize:vertical}.fb-textarea:focus-visible{outline:2px solid var(--sage-deep);outline-offset:1px;border-color:var(--sage-border)}.fb-meta{display:flex;justify-content:flex-end;margin:0 0 14px}.fb-counter{font-size:12px;color:var(--text-dim);font-variant-numeric:tabular-nums}.fb-counter.is-close{color:var(--clay);font-weight:600}.fb-context{display:flex;align-items:flex-start;gap:10px;margin:0 0 14px;padding:10px 13px;background:var(--taupe-tint);border-radius:0;font-size:13.5px;line-height:1.5;color:var(--text);cursor:pointer}.fb-context input{margin-top:2px;accent-color:var(--sage)}.fb-context-hint{display:block;margin-top:2px;font-size:12px;color:var(--text-mute);word-break:break-word}.fb-error{margin:0 0 14px;padding:10px 12px;background:var(--clay-tint);border:1px solid var(--clay-border);border-radius:0;font-size:13.5px;line-height:1.5;color:var(--clay)}.fb-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}@media (max-width:460px){.fb-actions{flex-direction:column-reverse;align-items:stretch}.fb-actions .btn-primary,.fb-actions .btn-quiet{width:100%;justify-content:center}}.fb-toast{position:fixed;right:20px;bottom:20px;z-index:210;max-width:min(340px,calc(100vw - 40px));padding:13px 17px;border:1px solid var(--sage-border);border-radius:0;background:var(--card);color:var(--sage-deep);font-size:14px;font-weight:600;line-height:1.45;box-shadow:0 4px 16px rgba(61,54,48,.12);animation:fb-toast-in .2s ease}@keyframes fb-toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.fb-toast{animation:none}}@media (max-width:480px){.fb-toast{right:14px;bottom:14px}}.nps-backdrop{position:fixed;inset:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(61,54,48,.68);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.nps-modal{position:relative;width:100%;max-width:620px;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--card);border:1px solid var(--card-border-strong);border-top:3px solid var(--sage);border-radius:0;padding:34px 38px 30px;text-align:center}@media (max-width:640px){.nps-modal{padding:28px 18px 22px}}.nps-close{position:absolute;top:12px;right:14px;width:32px;height:32px;border:none;border-radius:50%;background:transparent;color:var(--text-dim);font-size:22px;line-height:1;cursor:pointer}.nps-close:hover{background:var(--bg-elev);color:var(--text)}.nps-close:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.nps-eyebrow{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--sage)}.nps-title{margin:0 0 24px;font-family:var(--fraunces);font-size:25px;font-weight:600;line-height:1.3;color:var(--text)}@media (max-width:640px){.nps-title{font-size:21px}}.nps-scale{display:grid;grid-template-columns:repeat(11,1fr);gap:5px;margin:0 0 10px}.nps-score{aspect-ratio:1;min-width:0;border:1px solid var(--card-border-strong);border-radius:0;background:var(--card);color:var(--text);font-family:var(--inter);font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;transition:transform .1s ease,border-color .14s ease,background .14s ease}@media (max-width:560px){.nps-score{font-size:13px;border-radius:0}.nps-scale{gap:3px}}.nps-score:hover{transform:translateY(-2px)}.nps-score:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.nps-score.is-detractor.is-picked,.nps-score.is-detractor:hover{border-color:var(--clay-border);background:var(--clay-tint)}.nps-score.is-passive.is-picked,.nps-score.is-passive:hover{border-color:var(--taupe);background:var(--taupe-tint)}.nps-score.is-promoter.is-picked,.nps-score.is-promoter:hover{border-color:var(--sage-border);background:var(--sage-tint)}.nps-score.is-picked{transform:translateY(-2px);font-weight:700}@media (prefers-reduced-motion:reduce){.nps-score{transition:none}.nps-score.is-picked,.nps-score:hover{transform:none}}.nps-anchors{display:flex;justify-content:space-between;margin:0 0 4px;font-size:12.5px;color:var(--text-mute)}.nps-anchors span{display:flex;align-items:center;gap:5px}.nps-anchors em{font-style:normal;font-size:11px;color:var(--text-dim);font-variant-numeric:tabular-nums}@media (max-width:560px){.nps-anchors{font-size:11px}.nps-anchors em{display:none}}.nps-hint{margin:18px 0 0;font-size:13.5px;color:var(--text-mute)}.nps-followup{margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--card-border);text-align:left}.nps-followup-label{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-family:var(--fraunces);font-size:17px;font-weight:600;color:var(--text)}.nps-followup-emoji{font-size:20px}.nps-textarea{width:100%;padding:11px 13px;border:1px solid var(--card-border-strong);border-radius:0;background:var(--bg);color:var(--text);font-family:var(--inter);font-size:15px;line-height:1.55;resize:vertical}.nps-textarea:focus-visible{outline:2px solid var(--sage-deep);outline-offset:1px;border-color:var(--sage-border)}.nps-error{margin:12px 0 0;padding:10px 12px;background:var(--clay-tint);border:1px solid var(--clay-border);border-radius:0;font-size:13.5px;color:var(--clay)}.nps-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:16px}@media (max-width:460px){.nps-actions{flex-direction:column-reverse;align-items:stretch}.nps-actions .btn-primary,.nps-actions .btn-quiet{width:100%;justify-content:center}}.settings-subsection{margin-top:32px;padding-top:24px;border-top:1px solid var(--card-border)}.settings-subsection-head{margin:0 0 16px;font-family:var(--mono);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-dim);font-weight:600}.settings-toggle-row{display:flex;align-items:center;gap:12px;margin-top:16px}.settings-toggle{position:relative;flex:0 0 auto;width:44px;height:26px;padding:0;border:1px solid var(--card-border-strong,var(--card-border));border-radius:999px;background:var(--bg-elev,#efeae0);cursor:pointer;transition:background .2s cubic-bezier(.22,.61,.36,1),border-color .2s cubic-bezier(.22,.61,.36,1)}.settings-toggle[data-on=true]{background:var(--sage);border-color:var(--sage-deep)}.settings-toggle:disabled{opacity:.6;cursor:progress}.settings-toggle:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.settings-toggle-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#ffffff;box-shadow:0 1px 2px rgba(61,54,48,.28);transition:transform .2s cubic-bezier(.22,.61,.36,1)}.settings-toggle[data-on=true] .settings-toggle-knob{transform:translateX(18px)}@media (prefers-reduced-motion:reduce){.settings-toggle,.settings-toggle-knob{transition:none}}.settings-toggle-state{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--text)}.settings-toggle-saved{font-weight:600}.settings-toggle-note{margin-top:12px;max-width:460px}.pantry-header{margin-bottom:24px}.pantry-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:18px}.pantry-search{flex:1;min-width:0}.pantry-search .input{width:100%}@media (max-width:560px){.pantry-toolbar{flex-direction:column;align-items:stretch}.pantry-toolbar .btn-primary{width:100%;justify-content:center}}.pantry-undo{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin-bottom:16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:13.5px;color:var(--text)}.pantry-undo strong{font-weight:600}.pantry-undo-btn{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--sage-deep);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.pantry-undo-btn:hover{color:var(--text)}.pantry-section{margin-bottom:24px}.pantry-section-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.pantry-section-count{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--sage-deep);background:var(--sage-tint);border-radius:999px;padding:2px 8px}.pantry-items{list-style:none;display:grid;gap:8px}.pantry-item{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px 14px;background:var(--card);border:1px solid var(--card-border);border-radius:0}.pantry-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.pantry-item-name{font-size:14px;font-weight:500;color:var(--text)}.pantry-item-note{font-size:12px;color:var(--text-mute);font-style:italic}.pantry-item .pantry-qty{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--sage-deep);white-space:nowrap}.pantry-item .pantry-qty.is-empty{color:var(--text-dim);font-weight:500}.pantry-item-actions{display:flex;gap:6px;align-items:center}.pantry-step{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-elev);border:1px solid var(--card-border);border-radius:0;font-size:15px;line-height:1;color:var(--text);cursor:pointer}.pantry-step:hover:not(:disabled){border-color:var(--sage-border);color:var(--sage-deep)}.pantry-step:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.pantry-step:disabled{opacity:.4;cursor:not-allowed}.pantry-step.is-remove{font-size:13px}.pantry-step.is-remove:hover:not(:disabled){border-color:var(--clay-border);color:var(--clay)}.pantry-empty{text-align:left}.pantry-starter-label{margin:18px 0 8px}.pantry-link-btn{background:none;border:none;padding:0;font:inherit;color:var(--sage-deep);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.pantry-feed{margin-top:8px;padding-top:20px;border-top:1px solid var(--card-border)}.pantry-feed-head{margin-bottom:10px}.pantry-feed-list{list-style:none;display:grid;gap:6px}.pantry-feed-item{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--text-mute);line-height:1.5}.pantry-feed-title{color:var(--text);font-weight:500}.pantry-feed-detail{color:var(--text-mute)}.pantry-modal{max-width:520px;border-top-color:var(--sage)}.pantry-modal-sub{font-size:13.5px;color:var(--text-mute);line-height:1.55;margin:0 0 18px}.pantry-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.pantry-field .input{width:100%}.pantry-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:460px){.pantry-field-row{grid-template-columns:1fr}}.pantry-optional{font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-dim)}.pantry-autocomplete{position:relative}.pantry-suggest-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:5;list-style:none;margin:0;padding:4px;max-height:232px;overflow-y:auto;background:var(--card);border:1px solid var(--card-border-strong);border-radius:0;box-shadow:0 8px 24px rgba(61,54,48,.12)}.pantry-suggest-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:8px 10px;background:none;border:none;border-radius:0;font:inherit;font-size:13.5px;color:var(--text);text-align:left;cursor:pointer}.pantry-suggest-item:hover{background:var(--sage-tint)}.pantry-suggest-cat{font-family:var(--mono);font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--text-dim)}.pantry-suggest-card{margin-bottom:22px}.pantry-suggest-head{margin-bottom:14px}.pantry-suggest-sub{font-size:13.5px;color:var(--text-mute);line-height:1.55;margin:4px 0 0}.pantry-suggest-rows{list-style:none;display:grid;gap:8px}.pantry-suggest-row{display:grid;grid-template-columns:minmax(0,1fr) 150px auto auto;gap:10px;align-items:center;padding:8px;background:var(--bg-elev);border:1px solid var(--card-border);border-radius:0}@media (max-width:720px){.pantry-suggest-row{grid-template-columns:1fr 1fr}.pantry-suggest-name{grid-column:1/-1}.pantry-suggest-actions{grid-column:1/-1;justify-content:flex-end}}.pantry-suggest-row .input{padding:8px 10px;font-size:13.5px}.pantry-suggest-qty{font-family:var(--mono);font-size:12px;color:var(--text-mute);white-space:nowrap}.pantry-suggest-actions{display:flex;gap:10px;align-items:center}.fridge-scan-modal{max-width:560px}.fridge-scan-rows{max-height:50vh;overflow-y:auto}.fridge-scan-row{grid-template-columns:minmax(0,1fr) 80px 130px auto}@media (max-width:720px){.fridge-scan-row{grid-template-columns:1fr 1fr}.fridge-scan-row .fridge-scan-qty{grid-column:1/-1}}.fridge-scan-qty{font-size:13.5px}.expiring-banner{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:0;margin-bottom:22px}.expiring-banner.is-warn{background:var(--clay-tint);border:1px solid var(--clay-border);border-left:3px solid var(--clay)}.expiring-banner.is-clear{flex-direction:row;align-items:center;background:var(--sage-tint);border:1px solid var(--sage-border)}.expiring-banner-head{display:flex;align-items:center;gap:8px}.expiring-banner-emoji{font-size:17px;line-height:1}.expiring-banner-copy{font-family:var(--fraunces);font-size:15px;font-weight:600;color:var(--text)}.expiring-banner.is-clear .expiring-banner-copy{color:var(--sage-deep)}.expiring-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.expiring-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--bg-elev);border:1px solid var(--clay-border);border-radius:999px;font-size:12.5px}.expiring-chip-name{font-weight:600;color:var(--text)}.expiring-chip-when{color:var(--clay);font-family:var(--mono);font-size:11.5px}.expiring-chip-cook{display:inline-flex;align-items:center;padding:3px 9px;margin-left:2px;background:var(--sage-tint);color:var(--sage-deep);border-radius:999px;font-size:11.5px;font-weight:600;text-decoration:none;white-space:nowrap}.expiring-chip-cook:hover{background:var(--sage-tint-strong)}.barcode-scanner-modal{max-width:420px}.barcode-scanner-viewport{position:relative;width:100%;aspect-ratio:4/3;border-radius:0;overflow:hidden;background:#0d0d0d;margin-bottom:12px}.barcode-scanner-video{width:100%;height:100%;object-fit:cover}.barcode-scanner-guide{position:absolute;inset:22% 12%;border:2px dashed rgba(255,255,255,.75);border-radius:0;pointer-events:none}.barcode-scanner-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:rgba(13,13,13,.55);color:#fff;font-size:13.5px;font-weight:500}.barcode-scanner-hint{text-align:center}.barcode-scanner-added{text-align:center;color:var(--sage-deep);font-size:13.5px;margin:4px 0 0}.barcode-confirm-card{margin-top:14px;padding-top:14px;border-top:1px solid var(--card-border)}.barcode-confirm-title{font-family:var(--mono);font-size:11.5px;color:var(--text-mute);margin:0 0 8px}.barcode-confirm-row{display:grid;grid-template-columns:130px 1fr;gap:10px;margin:10px 0}@media (max-width:480px){.barcode-confirm-row{grid-template-columns:1fr}}.grocery-pantry-note{padding:10px 14px;margin:0 0 16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:13px;color:var(--text-mute);line-height:1.5}.grocery-pantry-note strong{color:var(--text);font-weight:600}.pantry-seed{margin:0 0 16px;padding:16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:13px;color:var(--text-mute);line-height:1.5}.pantry-seed-title{margin:0 0 4px}.pantry-seed-hint{margin:0 0 12px}.pantry-seed-list{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pantry-seed-choice{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;background:var(--card);border:1px solid var(--card-border);border-radius:0;color:var(--text);font-size:14px;cursor:pointer}.pantry-seed-choice input{accent-color:var(--sage-deep);cursor:pointer}.pantry-seed-choice:has(input:checked){border-color:var(--sage)}.pantry-seed-choice:focus-within{outline:2px solid var(--sage-deep);outline-offset:2px}.pantry-seed-choice.is-added{background:var(--bg-elev);cursor:default}.pantry-seed-name{min-width:0;overflow-wrap:anywhere}.pantry-seed-added{margin-left:auto;font-family:var(--mono);font-size:12px;letter-spacing:.4px;color:var(--sage-deep);font-weight:600}.pantry-seed-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.pantry-seed-scan{margin:0}.pantry-seed-done{padding:12px 16px}.pantry-seed-done strong{color:var(--text);font-weight:600}@media (max-width:599px){.pantry-seed-list{grid-template-columns:minmax(0,1fr)}}.grocery-item.is-have{background:var(--bg-elev);border-color:var(--sage-border)}.grocery-item.is-have .grocery-cost,.grocery-item.is-have .grocery-qty{opacity:.55}.grocery-item.is-have .grocery-name{text-decoration:line-through;text-decoration-color:var(--sage);text-decoration-thickness:1.5px;color:var(--text-mute)}.grocery-source-tag{display:inline-flex;align-items:baseline;max-width:min(100%,36ch);margin-left:10px;padding:2px 8px;border-radius:999px;background:var(--bg-elev);border:1px solid var(--card-border);font-family:var(--mono);font-size:10.5px;letter-spacing:.3px;color:var(--text-mute)}.grocery-source-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grocery-have-tag{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin-left:10px;padding:2px 8px;border-radius:999px;background:var(--sage-tint-strong);text-decoration:none;font-family:var(--mono);font-size:10.5px;letter-spacing:.5px;text-transform:uppercase;font-weight:600;color:var(--sage-deep)}.grocery-have-detail{font-family:var(--sans);font-size:11.5px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--text-mute)}.grocery-header-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px;flex-wrap:wrap}.grocery-action-buttons{display:flex;gap:10px;flex-wrap:wrap}.grocery-button{padding:10px 16px;border:1px solid var(--card-border);border-radius:0;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;background:var(--card);color:var(--text);font-family:var(--sans)}.grocery-button:hover:not(:disabled){background:var(--bg-elev);border-color:var(--sage-border)}.grocery-button:disabled{opacity:.6;cursor:not-allowed}.grocery-button-primary{background:var(--sage-tint);border-color:var(--sage-border);color:var(--sage-deep)}.grocery-button-primary:hover:not(:disabled){background:var(--sage-tint-strong);border-color:var(--sage);color:var(--sage)}.grocery-button-secondary{background:transparent}.grocery-button-secondary:hover:not(:disabled){background:var(--bg-elev)}.grocery-checkbox{width:18px;height:18px;cursor:pointer;margin-right:4px;accent-color:var(--sage)}.grocery-item{display:grid;grid-template-columns:96px minmax(0,1fr) auto minmax(96px,auto);gap:12px;align-items:baseline;padding:10px 14px;background:var(--card);border:1px solid var(--card-border);border-radius:0;transition:background .2s cubic-bezier(.22,.61,.36,1),border-color .2s cubic-bezier(.22,.61,.36,1)}@media (max-width:640px){.grocery-item{grid-template-columns:auto minmax(0,1fr) auto;row-gap:4px}.grocery-qty{grid-column:1;grid-row:1}.grocery-name{grid-column:2/-1;grid-row:1}.grocery-cost{grid-column:2;grid-row:2;text-align:left}.grocery-store{grid-column:3;grid-row:2}.grocery-store:empty{display:none}}.grocery-wrap.is-prices-hidden .grocery-item{grid-template-columns:96px minmax(0,1fr)}@media (max-width:640px){.grocery-wrap.is-prices-hidden .grocery-item{grid-template-columns:auto minmax(0,1fr)}}.grocery-item.is-checked{background:var(--bg-elev);border-color:var(--text-mute)}.grocery-item.is-checked .grocery-cost,.grocery-item.is-checked .grocery-qty{opacity:.5}.grocery-item.is-checked .grocery-name{text-decoration:line-through;text-decoration-color:var(--text-mute);text-decoration-thickness:1.5px;color:var(--text-mute)}.grocery-cost-footer{margin-top:32px;padding:16px 18px;background:linear-gradient(135deg,rgba(142,150,112,.08),rgba(185,188,164,.08));border:1px solid var(--sage-border);border-radius:0;text-align:center}.grocery-cost-estimate{margin:0;font-size:18px;font-weight:700;color:var(--sage-deep);font-family:var(--mono);letter-spacing:.5px}.grocery-cost-caption{margin:6px 0 0;font-size:12px;color:var(--text-mute);font-style:italic}.grocery-voice-add{margin-bottom:18px}.grocery-voice-add .btn-quiet.is-listening{border-color:var(--sage-border);color:var(--sage-deep);animation:voice-pulse 1.4s ease-in-out infinite}@keyframes voice-pulse{0%,to{box-shadow:0 0 0 0 var(--sage-tint-strong)}50%{box-shadow:0 0 0 6px transparent}}@media (prefers-reduced-motion:reduce){.grocery-voice-add .btn-quiet.is-listening{animation:none}}.grocery-voice-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin-top:10px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:13.5px;color:var(--text)}.grocery-voice-error{margin-top:8px;font-size:13px;color:var(--clay)}.grocery-voice-unsupported{font-size:12.5px;color:var(--text-dim);margin-bottom:18px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:var(--bg);border-radius:0;box-shadow:0 20px 60px rgba(0,0,0,.2);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--card-border)}.modal-header .admin-h2{margin:0;font-size:18px}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-mute);padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:0;transition:all .2s ease}.modal-close:hover{background:var(--card);color:var(--text)}.modal-body{padding:24px}.modal-description{font-size:14px;color:var(--text-mute);line-height:1.6;margin:0 0 20px}.swap-loading{padding:24px 0;text-align:center;font-family:var(--mono);font-size:11.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim)}.swap-alt-list{display:flex;flex-direction:column;gap:10px}.swap-alt-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;text-align:left;border-radius:0;border:1px solid var(--card-border);background:var(--bg);cursor:pointer;transition:border-color .15s ease,background .15s ease}.swap-alt-card:hover:not(:disabled){border-color:var(--sage-border);background:var(--sage-tint)}.swap-alt-card:disabled{cursor:progress;opacity:.65}.swap-alt-emoji{font-size:24px;line-height:1;flex-shrink:0}.swap-alt-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.swap-alt-title{font-family:var(--fraunces);font-size:14.5px;font-weight:600;color:var(--text);line-height:1.25}.swap-alt-meta{font-family:var(--mono);font-size:10px;letter-spacing:.3px;color:var(--text-mute)}.swap-alt-action{flex-shrink:0;font-size:12px;font-weight:600;color:var(--sage-deep);white-space:nowrap}.modal-qr-container{display:flex;justify-content:center;margin:24px 0;padding:16px;background:var(--card);border-radius:0;border:1px solid var(--card-border)}.modal-qr-canvas{max-width:300px;height:auto}.modal-url-label{font-size:13px;font-weight:600;color:var(--text-mute);margin:20px 0 8px;text-transform:uppercase;letter-spacing:.5px}.modal-url-box{display:flex;gap:8px;margin-bottom:8px}.modal-url-input{flex:1;padding:10px 12px;border:1px solid var(--card-border);border-radius:0;font-size:12px;font-family:var(--mono);color:var(--text);background:var(--card);word-break:break-all}.modal-url-copy{padding:10px 14px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:12px;font-weight:600;color:var(--sage-deep);cursor:pointer;transition:all .2s ease;white-space:nowrap}.modal-url-copy:hover{background:var(--sage-tint-strong);border-color:var(--sage);color:var(--sage)}@media print{.no-print{display:none!important}body{background:white;color:black}.grocery-wrap{max-width:100%;margin:0;padding:0}.grocery-section{page-break-inside:avoid;margin-bottom:20px}.grocery-section-head{font-size:18px;font-weight:700;margin-bottom:10px;border-bottom:2px solid black;padding-bottom:8px}.grocery-items{list-style:none}.grocery-item{display:flex;align-items:center;gap:12px;padding:8px 0;background:white;page-break-inside:avoid;border:none;border-bottom:1px solid #f0f0f0}.grocery-checkbox{width:16px;height:16px;border:2px solid black;flex-shrink:0}.grocery-checkbox,.grocery-checkbox:checked{-webkit-print-color-adjust:exact;print-color-adjust:exact}.grocery-checkbox:checked{background:black}.grocery-qty{font-size:12px;color:black;font-weight:700;font-family:monospace;flex-shrink:0;width:90px}.grocery-name{flex:1;font-size:14px;color:black;font-weight:500}.grocery-item.is-checked .grocery-name{text-decoration:line-through;color:#666}.grocery-cost{font-size:12px;color:black;font-weight:700;font-family:monospace;flex-shrink:0;width:50px;text-align:right}.grocery-have-tag,.grocery-savings-tag,.grocery-source-tag,.grocery-store{display:none}@page{size:letter;margin:.5in}}.app-notice{padding:10px 14px;margin:0 0 24px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:13px;color:var(--text-mute);line-height:1.5}.app-notice a{color:var(--sage-deep);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.mh-header{margin-bottom:22px}.mh-header .settings-sub{max-width:62ch;margin-top:8px}.mh-controls{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}.mh-search{width:100%;padding:11px 14px;border:1px solid var(--card-border);border-radius:0;background:var(--card);font-family:var(--inter);font-size:14.5px;color:var(--text)}.mh-search::placeholder{color:var(--text-dim)}.mh-search:focus-visible{outline:2px solid var(--sage-deep);outline-offset:1px;border-color:var(--sage-border)}.mh-search::-webkit-search-cancel-button{cursor:pointer}.mh-chips{display:flex;flex-wrap:wrap;gap:7px}.mh-search-container{width:100%}.mh-sort-container{display:flex;align-items:center;gap:8px}.mh-sort-label{font-family:var(--mono);font-size:11px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-mute);white-space:nowrap}.mh-sort{padding:8px 12px;border:1px solid var(--card-border);border-radius:0;background:var(--card);font-family:var(--inter);font-size:14px;color:var(--text);cursor:pointer;transition:border-color .14s}.mh-sort:hover{border-color:var(--sage-border)}.mh-sort:focus-visible{outline:2px solid var(--sage-deep);outline-offset:1px;border-color:var(--sage-border)}.chip-clear{background:var(--clay-tint);border-color:var(--clay-border);color:var(--clay)}.chip-clear:hover{background:rgba(160,69,58,.15)}.mh-count{min-height:18px;margin-bottom:14px;font-family:var(--mono);font-size:11px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-mute)}.mh-recipe-book-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.mh-recipe-book-head .mh-count{margin-bottom:0}.mh-recipe-cost{margin-bottom:10px}.mh-recipe-cost-line{font-size:12.5px;line-height:1.5;color:var(--text-mute);margin:0}.mh-recipe-cost-line strong{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text)}.mh-recipe-cost-driver{color:var(--text-dim)}.mh-recipe-badge{display:inline-block;margin-top:4px;padding:3px 9px;border-radius:999px;background:var(--sage-tint);color:var(--sage-deep);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.mh-action-error,.mh-error{margin:8px 0;font-size:13px;color:#a1392b}.mh-week{margin-bottom:30px}.mh-week-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--card-border)}.mh-week-label{font-family:var(--fraunces);font-size:17px;font-weight:600;color:var(--text)}.mh-week-count{font-family:var(--mono);font-size:10.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--text-mute)}.mh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:14px}.mh-tile{position:relative;display:flex;flex-direction:column;border:1px solid var(--card-border);border-radius:0;background:var(--card);overflow:hidden;transition:border-color .14s ease}@media (prefers-reduced-motion:reduce){.mh-tile{transition:none}}.mh-tile:hover{border-color:var(--card-border-strong)}.mh-tile:focus-within{border-color:var(--sage-border)}.mh-tile-main{display:flex;flex-direction:column;text-decoration:none;color:inherit}.mh-tile-main:focus-visible{outline:2px solid var(--sage-deep);outline-offset:-2px}.mh-tile-photo{position:relative;display:block;width:100%;aspect-ratio:4/3;background:var(--bg-elev)}.mh-tile-photo-img{object-fit:cover}.mh-tile-emoji{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;background:var(--bg-elev);font-size:34px;line-height:1}.mh-tile-body{display:flex;flex-direction:column;gap:4px;padding:11px 12px 12px}.mh-tile-title{font-family:var(--fraunces);font-size:14.5px;font-weight:600;line-height:1.3;color:var(--text)}.mh-tile-meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-mute)}.mh-tile-rating{position:absolute;top:8px;left:8px;z-index:1;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:100px;background:rgba(255,255,255,.9);box-shadow:0 1px 3px rgba(61,54,48,.16);font-size:13px;line-height:1;pointer-events:none}.mh-tile-actions{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 12px}.mh-action{font-size:12.5px;padding:6px 10px}.mh-action.is-primary{border-color:var(--sage-border);color:var(--sage-deep);background:var(--sage-tint)}@media (min-width:641px){.mh-action.is-primary{flex-basis:100%}}.mh-action-ok{flex-basis:100%;margin-top:2px;font-size:12.5px;line-height:1.45}.mh-action-link,.mh-action-ok{color:var(--sage-deep)}.mh-swap-picker{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:6px;padding:10px;background:var(--bg-elev);border-radius:0}.mh-swap-picker-label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-mute);flex:1 1 200px}.mh-swap-picker-label .input{font-size:13px;padding:7px 10px}.mh-swap-picker-actions{display:flex;gap:8px}.mh-bookmark{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:100px;background:transparent;color:var(--text-mute);cursor:pointer;transition:color .14s ease,background .14s ease}@media (prefers-reduced-motion:reduce){.mh-bookmark{transition:none}}.mh-bookmark.is-on,.mh-bookmark:hover:not(:disabled){color:var(--sage-deep)}.mh-bookmark:disabled{cursor:progress;opacity:.6}.mh-bookmark:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.meal-hero-bookmark,.mh-tile-bookmark{position:absolute;z-index:2;width:32px;height:32px;background:rgba(255,255,255,.9);box-shadow:0 1px 3px rgba(61,54,48,.18)}.mh-tile-bookmark{top:8px;right:8px}.mh-tile-bookmark:hover:not(:disabled){background:#ffffff}.mh-bookmark.is-labeled{position:static;width:auto;height:auto;padding:6px 10px;border-radius:0;border-color:var(--card-border);background:transparent;box-shadow:none;font-family:var(--inter);font-size:12.5px;font-weight:500}.mh-bookmark.is-labeled:hover:not(:disabled){border-color:var(--sage-border);background:var(--sage-tint)}.mh-bookmark-error{display:block;margin-top:6px;font-size:12px;color:#a1392b}.meal-hero-bookmark{top:16px;right:16px}.meal-hero.is-bare{position:relative;height:0;overflow:visible}.meal-hero.is-bare .meal-hero-bookmark{top:12px;right:16px}.mh-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:44px 28px;text-align:center}.mh-empty-mark{color:var(--sage-deep);opacity:.55}.mh-empty-title{font-family:var(--fraunces);font-size:19px;font-weight:600;color:var(--text)}.mh-empty-copy{max-width:46ch;font-size:14px;line-height:1.6;color:var(--text-mute)}.mh-empty-action{margin-top:6px}.mh-more{margin:8px 0 24px}.mh-more,.plan-meal-encore{display:flex;justify-content:center}.plan-meal-encore{position:absolute;top:6px;right:6px;z-index:1;align-items:center;width:22px;height:22px;border-radius:100px;background:rgba(255,255,255,.88);box-shadow:0 1px 3px rgba(61,54,48,.16);font-size:11px;line-height:1;color:var(--sage-deep);pointer-events:none}.plan-meal:not(.has-photo) .plan-meal-encore{background:transparent;box-shadow:none}.plan-meal.is-blocked .plan-meal-encore{filter:grayscale(1);opacity:.6}@media (max-width:640px){.mh-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.mh-tile-title{font-size:13.5px}.mh-tile-actions{flex-direction:column}.mh-action,.mh-bookmark.is-labeled{width:100%;justify-content:center}}.refer-hero{padding-bottom:26px}.refer-title{margin:6px 0 10px;font-family:var(--fraunces);font-size:27px;line-height:1.2;font-weight:600;color:var(--text)}.refer-copy{max-width:52ch;font-size:15px;line-height:1.65;color:var(--text-mute)}.refer-fields{gap:16px;margin:24px 0 4px}.refer-field,.refer-fields{display:flex;flex-direction:column}.refer-field{gap:7px}.refer-value-row{display:flex;align-items:stretch;gap:10px}.refer-code,.refer-url{flex:1;min-width:0;display:flex;align-items:center;padding:12px 14px;background:var(--bg-elev);border:1px solid var(--card-border);border-radius:0;font-family:var(--mono);color:var(--text);user-select:all}.refer-code{font-size:19px;letter-spacing:.08em;font-weight:600}.refer-url{font-size:13px;overflow-wrap:anywhere;word-break:break-all}.refer-copy-btn{flex:0 0 auto;padding:11px 18px}.refer-share{margin-top:20px}.refer-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.refer-list{list-style:none;display:flex;flex-direction:column}.refer-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid var(--card-border)}.refer-row:last-child{border-bottom:none}.refer-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.refer-row-who{font-family:var(--mono);font-size:14px;color:var(--text);overflow-wrap:anywhere}.refer-row-when{font-size:12.5px;color:var(--text-dim)}.refer-row-status{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}.refer-row-blurb{font-size:12.5px;color:var(--text-mute);max-width:34ch}.refer-pill{display:inline-block;padding:3px 10px;border-radius:100px;font-size:11.5px;font-weight:600;letter-spacing:.02em;white-space:nowrap;background:var(--taupe-tint);color:var(--text-mute)}.refer-pill.is-subscribed{background:var(--sage-tint);color:var(--sage-deep)}.refer-pill.is-credited{background:var(--sage-tint-strong);color:var(--sage-deep)}.refer-pill.is-ineligible{background:var(--clay-tint);color:var(--clay)}.signup-referral code{font-family:var(--mono);font-size:13px;letter-spacing:.06em}.refer-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px;padding:13px 16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0}.refer-banner-copy{font-size:14px;color:var(--text)}.refer-banner-copy strong{font-weight:600}.refer-banner-actions{display:flex;align-items:center;gap:6px}.refer-banner-cta{padding:9px 18px;font-size:13.5px;text-decoration:none}.refer-banner-dismiss{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:0;font-size:20px;line-height:1;color:var(--text-mute);cursor:pointer;transition:color .15s,background .15s}.refer-banner-dismiss:hover{color:var(--text);background:var(--sage-tint-strong)}.refer-banner-dismiss:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}@media (max-width:640px){.refer-value-row{flex-direction:column;align-items:stretch}.refer-copy-btn,.refer-share{justify-content:center}.refer-share{width:100%}.refer-row-status{align-items:flex-start;text-align:left}.refer-row-blurb{max-width:none}.refer-banner{align-items:flex-start}.refer-banner-actions{width:100%;justify-content:space-between}}.cook{--cook-bg:var(--bg);--cook-surface:var(--bg-elev);--cook-text:var(--text);--cook-mute:var(--text-mute);--cook-line:rgba(61,54,48,0.14);--cook-accent:var(--sage);--cook-accent-deep:var(--sage-deep);--cook-accent-tint:var(--sage-tint);--cook-clay:var(--clay-accent);--cook-clay-tint:rgba(198,97,63,0.14);--cook-step-ms:250ms;--cook-ease:cubic-bezier(0.4,0,0.2,1);position:fixed;inset:0;z-index:190;display:flex;flex-direction:column;height:100dvh;background:var(--cook-bg);color:var(--cook-text);overscroll-behavior:none;-webkit-user-select:none;user-select:none;touch-action:pan-y;transition:transform .14s var(--cook-ease),opacity .14s var(--cook-ease)}body:has(.cook) .crisp-bottom-nav,body:has(.cook) .crisp-right-sheet-btn{display:none}.cook[data-dismissing=true]{transform:scale(.985) translateY(8px);transform-origin:50% 100%;opacity:.92}@media (prefers-reduced-motion:reduce){.cook{transition:none}.cook[data-dismissing=true]{transform:none;opacity:1}}.cook-progress{flex:none;height:4px;background:var(--cook-line)}.cook-progress-fill{height:100%;background:var(--cook-accent);transition:width .26s ease}@media (prefers-reduced-motion:reduce){.cook-progress-fill{transition:none}}.cook-head{flex:none;gap:12px;padding:10px 16px;border-bottom:1px solid var(--cook-line);touch-action:none}.cook-head,.cook-head-tools{display:flex;align-items:center}.cook-head-tools{margin-left:auto;gap:8px}.cook-count{font-size:15px;color:var(--cook-mute);letter-spacing:.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cook-count strong{color:var(--cook-text);font-weight:600}.cook-count-title{color:var(--cook-mute);opacity:.75}.cook-chip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 12px;border:1px solid var(--cook-line);border-radius:100px;background:transparent;color:var(--cook-mute);font-family:var(--inter);font-size:14px;cursor:pointer;touch-action:manipulation}.cook-chip:hover{color:var(--cook-text);border-color:var(--cook-accent)}.cook-mic-dot{width:7px;height:7px;border-radius:100px;background:var(--cook-accent);animation:cook-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.cook-mic-dot{animation:none}}.cook-chip.is-live{color:var(--cook-accent-deep);border-color:var(--cook-accent);background:var(--cook-accent-tint)}.cook-chip-exit{min-width:48px;min-height:48px;justify-content:center;padding:6px;font-size:20px;line-height:1;color:var(--cook-text);border-color:var(--cook-line)}.cook-chip-exit:hover{background:var(--cook-clay-tint);border-color:var(--cook-clay);color:var(--cook-clay)}.cook-armed{flex:none;display:flex;align-items:center;justify-content:center;gap:8px;padding:6px;background:var(--cook-accent-tint);color:var(--cook-accent-deep);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.cook-armed-dot{width:8px;height:8px;border-radius:100px;background:var(--cook-accent);animation:cook-pulse 1.4s ease-in-out infinite}@keyframes cook-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}@media (prefers-reduced-motion:reduce){.cook-armed-dot{animation:none}}.cook-ring{position:relative;flex:none;display:inline-grid;place-items:center;width:var(--cook-ring-size);height:var(--cook-ring-size)}.cook-ring svg{position:absolute;inset:0;width:100%;height:100%}.cook-ring-track{stroke:var(--cook-line)}.cook-ring-arc{stroke:var(--cook-accent);transition:stroke-dashoffset .56s linear,stroke .4s ease}.cook-ring.is-urgent .cook-ring-arc{stroke:var(--cook-clay)}.cook-ring.is-paused{opacity:.5}.cook-ring.is-done .cook-ring-track{stroke:var(--cook-accent)}.cook-ring-face{position:relative;font-family:var(--mono);font-size:calc(var(--cook-ring-size) * var(--cook-ring-face-scale));font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1;color:var(--cook-text)}.cook-ring.is-urgent .cook-ring-face{color:var(--cook-clay)}@media (prefers-reduced-motion:reduce){.cook-ring-arc{transition:none}}.cook-timers{flex:none;display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px;border-bottom:1px solid var(--cook-line)}.cook-timer{display:inline-flex;align-items:center;gap:10px;padding:6px 8px;border:1px solid var(--cook-line);border-radius:100px;background:var(--cook-surface)}.cook-timer .cook-ring{--cook-ring-size:44px}.cook-timer-clock{font-family:var(--mono);font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--cook-text)}.cook-timer-label{font-size:15px;color:var(--cook-mute);max-width:20ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cook-timer.is-paused{opacity:.62}.cook-timer.is-done{border-color:var(--cook-accent);background:var(--cook-accent-tint);animation:cook-flash 1s ease-in-out 3}.cook-timer.is-done .cook-timer-clock{color:var(--cook-accent-deep)}@keyframes cook-flash{0%,to{background:var(--cook-accent-tint)}50%{background:transparent}}@media (prefers-reduced-motion:reduce){.cook-timer.is-done{animation:none}}.cook-timer-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:100px;background:transparent;color:var(--cook-mute);font-size:16px;cursor:pointer;touch-action:manipulation}.cook-timer-btn:hover{background:var(--cook-line);color:var(--cook-text)}.cook-main{flex:1 1 auto;grid-template-columns:minmax(0,1fr) 320px;grid-template-rows:auto minmax(0,1fr);grid-template-areas:"stage callout" "stage list"}.cook-main,.cook-stage{display:grid;min-height:0;overflow:hidden}.cook-stage{grid-area:stage;position:relative;min-width:0;padding:20px 28px}.cook-stage:after{content:"";position:absolute;left:0;right:0;bottom:0;height:26px;background:linear-gradient(to bottom,transparent,var(--cook-bg));pointer-events:none}.cook-layer,.cook-steps{display:grid;min-height:0}.cook-layer{grid-area:1/1;grid-template-rows:auto minmax(0,1fr);overflow:hidden;animation:cook-step-in-right var(--cook-step-ms) var(--cook-ease) both}.cook-steps.dir-back .cook-layer{animation-name:cook-step-in-left}.cook-steps.dir-next .cook-layer.is-leaving{animation-name:cook-step-out-left}.cook-steps.dir-back .cook-layer.is-leaving{animation-name:cook-step-out-right}@keyframes cook-step-in-right{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:none}}@keyframes cook-step-in-left{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:none}}@keyframes cook-step-out-left{0%{opacity:1;transform:none}to{opacity:0;transform:translateX(-100%)}}@keyframes cook-step-out-right{0%{opacity:1;transform:none}to{opacity:0;transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.cook-layer,.cook-steps.dir-back .cook-layer,.cook-steps.dir-back .cook-layer.is-leaving,.cook-steps.dir-next .cook-layer.is-leaving{animation-name:cook-step-fade}@keyframes cook-step-fade{0%{opacity:0}to{opacity:1}}}.cook-stepno{font-family:var(--fraunces);font-size:clamp(64px,9.5vw + 12px,132px);font-weight:600;line-height:.82;letter-spacing:-.045em;color:var(--cook-accent);font-variant-numeric:lining-nums tabular-nums;margin-left:-.05em}.cook-instruction{display:grid;align-content:center;align-content:safe center;min-height:0;padding-top:12px;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y}.cook-step{font-family:var(--fraunces);font-weight:400;line-height:1.24;letter-spacing:-.015em;color:var(--cook-text);text-wrap:balance;font-size:clamp(32px,3.2vw + 16px,56px);max-width:24ch}.cook-step[data-length=short]{font-size:clamp(36px,3.6vw + 18px,60px);max-width:20ch}.cook-step[data-length=medium]{font-size:clamp(32px,2.2vw + 14px,46px);max-width:26ch}.cook-step[data-length=long]{font-size:clamp(32px,1.1vw + 20px,36px);max-width:40ch;text-wrap:pretty}.cook-callout{grid-area:callout;padding:16px 20px;border-left:1px solid var(--cook-line);background:var(--cook-surface)}.cook-callout:empty{display:none}.cook-callout-label{margin-bottom:10px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cook-mute)}.cook-callout-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.cook-callout-pill{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 14px;border:1px solid var(--cook-accent);border-radius:100px;background:var(--cook-accent-tint);color:var(--cook-accent-deep);font-size:17px;font-weight:600;line-height:1.2}.cook-sub-chip{flex:none;padding:4px 10px;border:1px solid var(--cook-line);border-radius:100px;background:var(--cook-surface);color:var(--cook-mute);font-family:var(--inter);font-size:13px;font-weight:600;cursor:pointer;touch-action:manipulation}.cook-sub-chip:hover{color:var(--cook-text);border-color:var(--cook-accent)}.cook-sub-list{display:grid;gap:14px;margin:4px 0 22px;text-align:left}.cook-sub-option{padding:12px 14px;border:1px solid var(--cook-line);border-radius:0;background:var(--cook-surface)}.cook-sub-option-swap{font-size:17px;font-weight:600;color:var(--cook-text)}.cook-sub-option-note{margin-top:4px;font-size:14px;line-height:1.4;color:var(--cook-mute)}.askchef-card{width:min(32rem,100%)}.askchef-hint{font-size:14.5px;text-align:left;margin:4px 0 18px}.askchef-input-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:6px}.askchef-textarea{flex:1;min-height:64px;padding:12px 14px;border-radius:0;border:1px solid var(--cook-line);background:var(--cook-surface);color:var(--cook-text);font:inherit;font-size:15px;line-height:1.4;resize:vertical;text-align:left}.askchef-textarea:focus-visible{outline:2px solid var(--cook-accent);outline-offset:1px}.askchef-mic{flex-shrink:0;width:48px;height:48px;border-radius:50%;border:1px solid var(--cook-line);background:var(--cook-surface);font-size:19px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.askchef-mic:hover{border-color:var(--cook-accent)}.askchef-mic.is-listening{background:var(--cook-clay-tint);border-color:var(--cook-clay);animation:askchef-pulse 1.4s ease-in-out infinite}@keyframes askchef-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.askchef-mic{transition:none;animation:none}}.askchef-question{font-size:14px;font-style:italic;color:var(--cook-mute);text-align:left;margin:0 0 10px}.askchef-answer{text-align:left;white-space:pre-wrap}.askchef-cursor{display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:text-bottom;background:var(--cook-accent);animation:askchef-blink .9s step-end infinite}@keyframes askchef-blink{0%,to{opacity:1}50%{opacity:0}}@media (prefers-reduced-motion:reduce){.askchef-cursor{animation:none}}.askchef-meta{font-size:12.5px;color:var(--cook-mute);text-align:left;margin:0 0 20px}.cook-list{grid-area:list;padding:16px 20px 20px;border-left:1px solid var(--cook-line);background:var(--cook-surface);overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y}.cook-list-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;font-family:var(--inter);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cook-mute)}.cook-list-count{font-variant-numeric:tabular-nums}.cook-servings{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--cook-line)}.cook-servings-btn{width:32px;height:32px;flex:none;display:grid;place-items:center;font-size:16px;line-height:1;color:var(--cook-accent-deep);background:var(--cook-surface);border:1px solid var(--cook-line);border-radius:0;cursor:pointer;touch-action:manipulation}.cook-servings-btn:hover:not(:disabled){border-color:var(--cook-accent)}.cook-servings-btn:disabled{opacity:.4;cursor:not-allowed}.cook-servings-value{min-width:84px;text-align:center;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;color:var(--cook-mute)}.cook-list-items{list-style:none;display:grid;gap:2px}.cook-list-item{display:flex;align-items:flex-start;gap:10px;padding:9px 10px;border-radius:0;font-size:16px;line-height:1.35;color:var(--cook-text);cursor:pointer}.cook-list-item input{flex:none;width:20px;height:20px;margin-top:1px;accent-color:var(--cook-accent)}.cook-list-item.is-checked{color:var(--cook-mute)}.cook-list-item.is-checked span{text-decoration:line-through}.cook-list-item.is-now{background:var(--cook-accent-tint);color:var(--cook-accent-deep);font-weight:600}.cook-list-item.is-now.is-checked span{text-decoration:none}.cook-toast-slot{flex:none;position:relative;z-index:5;height:0;padding:0 16px}.cook-toast{position:absolute;left:16px;right:16px;bottom:10px;margin:0 auto;max-width:44rem;padding:12px 18px;border:1px solid var(--cook-accent);border-radius:0;background:linear-gradient(var(--cook-accent-tint),var(--cook-accent-tint)),var(--cook-surface);box-shadow:0 6px 24px rgba(33,30,27,.18);color:var(--cook-text);font-size:19px;line-height:1.4;text-align:center}.cook-foot{flex:none;display:grid;gap:10px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--cook-line);background:var(--cook-surface)}.cook-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:10px}.cook-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:64px;padding:0 16px;border-radius:0;border:1px solid var(--cook-line);background:var(--cook-bg);color:var(--cook-text);font-family:var(--inter);font-size:20px;font-weight:600;cursor:pointer;touch-action:manipulation}.cook-btn:disabled{opacity:.38;cursor:default}.cook-btn-primary,.cook-btn-quiet:not(:disabled):hover{border-color:var(--cook-accent)}.cook-btn-primary{background:var(--cook-accent);color:var(--bg)}.cook-btn-primary:not(:disabled):hover{background:var(--cook-accent-deep)}.cook-foot-timer{display:flex;align-items:center;justify-content:center;gap:8px;min-width:132px}.cook-foot-timer-empty{display:block;width:132px}.cook-timer-primary{display:flex;flex-direction:column;align-items:center;gap:2px;padding:2px 10px;border:none;border-radius:0;background:transparent;color:var(--cook-text);font-family:var(--inter);cursor:pointer;touch-action:manipulation}.cook-timer-primary .cook-ring{--cook-ring-size:72px}.cook-timer-primary:hover{background:var(--cook-accent-tint)}.cook-timer-primary-name{max-width:16ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--cook-mute)}.cook-timer-offer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;padding:8px 18px;border:1px solid var(--cook-accent);border-radius:0;background:var(--cook-accent-tint);color:var(--cook-accent-deep);font-family:var(--inter);cursor:pointer;touch-action:manipulation}.cook-timer-offer:hover{background:var(--cook-accent);color:var(--bg)}.cook-timer-offer.is-secondary{padding:6px 12px;background:transparent;border-style:dashed}.cook-timer-offer.is-secondary .cook-timer-offer-time{font-size:16px}.cook-timer-offer.is-secondary .cook-timer-offer-name{max-width:12ch}.cook-timer-offer-time{font-size:19px;font-weight:700}.cook-timer-offer-name{max-width:18ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;opacity:.85}.cook-foot-all{justify-self:center;min-height:40px;padding:0 16px;border:1px solid var(--cook-line);border-radius:100px;background:transparent;color:var(--cook-mute);font-family:var(--inter);font-size:14px;font-weight:600;cursor:pointer;touch-action:manipulation}.cook-foot-all:hover{color:var(--cook-text);border-color:var(--cook-accent)}.cook-mic-row{display:flex;align-items:center;gap:12px}.cook-ptt{flex:none;min-height:48px;padding:0 18px;border:1px solid var(--cook-line);border-radius:100px;background:var(--cook-bg);color:var(--cook-text);font-family:var(--inter);font-size:16px;font-weight:600;cursor:pointer;touch-action:manipulation}.cook-ptt:disabled{opacity:.38;cursor:default}.cook-ptt.is-held{border-color:var(--cook-accent);background:var(--cook-accent);color:var(--bg)}.cook-mic-hint{font-size:14px;line-height:1.35;color:var(--cook-mute)}.cook-mic-error{color:var(--clay)}.cook-mic-hint-unsupported{text-align:center}.cook-mic-invite{border:none;background:none;padding:0;font:inherit;font-weight:700;color:var(--cook-accent-deep);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.cook-mic-invite:hover{color:var(--cook-text)}.cook-speed{display:flex;justify-content:center;gap:6px}.cook-speed-btn{min-width:56px;min-height:36px;border:1px solid var(--cook-line);border-radius:0;background:transparent;color:var(--cook-mute);font-family:var(--inter);font-size:14px;font-weight:600;cursor:pointer;touch-action:manipulation}.cook-speed-btn.is-on{border-color:var(--cook-accent);background:var(--cook-accent-tint);color:var(--cook-accent-deep)}.cook[data-asking=true] .cook-toast{opacity:.7}.cook-confirm{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:24px;background:rgba(33,30,27,.55);animation:cook-confirm-in .16s var(--cook-ease) both}.cook-confirm-card{width:min(30rem,100%);padding:26px;border-radius:0;background:var(--cook-bg);border:1px solid var(--cook-line);box-shadow:0 24px 60px rgba(33,30,27,.28);text-align:center}.cook-confirm-title{font-family:var(--fraunces);font-size:26px;font-weight:600;letter-spacing:-.01em;color:var(--cook-text)}.cook-confirm-body{margin:10px 0 22px;font-size:17px;line-height:1.5;color:var(--cook-mute)}.cook-confirm-actions{display:grid;gap:10px}@keyframes cook-confirm-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.cook-confirm{animation:none}}.cook-empty{max-width:34rem;margin:0 auto;padding:96px 24px;text-align:center;display:grid;gap:16px;justify-items:center}.cook-empty h1{font-family:var(--fraunces);font-size:30px;font-weight:400}.cook-empty p{color:var(--text-mute)}@media (orientation:portrait){.cook-main{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"callout" "stage" "list"}.cook-stage{padding:14px 20px 10px}.cook-step{max-width:none}.cook-callout{padding:12px 20px;border-left:none;border-bottom:1px solid var(--cook-line)}.cook-callout-list{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;touch-action:pan-x}.cook-callout-pill{flex:none;max-width:100%}.cook-callout-label{margin-bottom:8px}.cook-list{max-height:26vh;padding:12px 20px;border-left:none;border-top:1px solid var(--cook-line)}}@media (orientation:landscape) and (max-height:500px){.cook-main{grid-template-columns:minmax(0,1fr) 280px;grid-template-rows:minmax(0,1fr);grid-template-areas:"stage callout"}.cook-list{display:none}.cook-callout{overflow-y:auto;touch-action:pan-y}.cook-stage{padding:8px 18px}.cook-stepno{font-size:clamp(40px,6vw,56px);line-height:.9}.cook-instruction{padding-top:2px}.cook-step,.cook-step[data-length=long],.cook-step[data-length=medium],.cook-step[data-length=short]{font-size:32px;max-width:none}.cook-btn{font-size:17px}.cook-btn,.cook-timer-offer{min-height:52px}.cook-timer-primary .cook-ring{--cook-ring-size:52px}.cook-foot{gap:6px;padding:8px 12px}.cook-mic-hint,.cook-speed{display:none}.cook-mic-hint-unsupported{display:block;font-size:12px}.cook-timers{padding:6px 18px}}@media (max-width:480px){.cook-head{gap:8px;padding:8px 12px}.cook-chip-label{display:none}.cook-chip{padding:6px 10px}.cook-chip-exit{min-width:44px;min-height:44px}.cook-count{font-size:14px}.cook-count-title{display:none}.cook-timers{flex-direction:column;padding:8px 12px}.cook-timer{width:100%;border-radius:0}.cook-timer-label{flex:1 1 auto;min-width:0;max-width:none}.cook-stage{padding:8px 16px 6px}.cook-stepno{font-size:clamp(48px,13vw,64px)}.cook-instruction{padding-top:4px}.cook-callout{display:flex;align-items:center;gap:10px;padding:8px 16px}.cook-callout-label{flex:none;margin-bottom:0;font-size:10px;letter-spacing:.1em;white-space:nowrap}.cook-callout-pill{font-size:16px;padding:6px 12px}.cook-list{max-height:20vh;padding:8px 16px}.cook-list-head{margin-bottom:6px}.cook-list-item{padding:6px 8px;font-size:15px}.cook-foot{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.cook-controls{gap:8px}.cook-btn{min-height:58px;padding:0 8px;font-size:17px}.cook-btn-label{font-size:16px}.cook-foot-timer,.cook-foot-timer-empty{min-width:96px;width:96px}.cook-timer-primary .cook-ring{--cook-ring-size:58px}.cook-timer-primary-name{display:none}.cook-timer-offer{padding:6px 10px}.cook-timer-offer-time{font-size:17px;white-space:nowrap}.cook-timer-offer-name{display:none}.cook-toast{font-size:17px;padding:10px 14px}.cook-mic-more,.cook-speed{display:none}.cook-mic-row{gap:10px}.cook-mic-hint{font-size:13px}.cook-ptt{min-height:44px;padding:0 14px;font-size:15px}}@media (prefers-color-scheme:dark){.cook{--cook-bg:#f8f5f0;--cook-surface:#f0ebe0;--cook-text:#3d3630;--cook-mute:#6b5d4a;--cook-line:#d4c8b8;--cook-accent:var(--sage);--cook-accent-deep:#3d5530;--cook-accent-tint:rgba(84,114,67,0.12);--cook-clay:#c6613f;--cook-clay-tint:rgba(198,97,63,0.14)}.cook-btn-primary,.cook-timer-offer:hover{color:#f8f5f0}.cook-confirm{background:rgba(61,54,48,.45)}}.cook-celebrate{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:24px;overflow-y:auto;background:rgba(33,30,27,.55);animation:cook-confirm-in .16s var(--cook-ease) both}.cook-celebrate-leaves{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}@media (prefers-reduced-motion:reduce){.cook-celebrate-leaves{display:none}}.cook-celebrate-card{position:relative;z-index:1;width:min(30rem,100%);margin:auto;padding:28px;border-radius:0;background:var(--card);border:1px solid var(--card-border);box-shadow:0 24px 60px rgba(33,30,27,.32);text-align:center}.cook-celebrate-title{font-family:var(--fraunces);font-size:28px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.cook-celebrate-pantry{margin:10px 0 0;min-height:1.4em;font-size:14px;line-height:1.5;color:var(--text-mute)}.cook-celebrate-undo{margin-left:6px;background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--cook-accent-deep);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.cook-celebrate-undo:hover{color:var(--text)}.cook-celebrate-card .meal-rating{text-align:left}.cook-celebrate-leftovers{margin-top:18px}.cook-celebrate-leftovers-note{margin:0;font-size:13.5px;line-height:1.5;color:var(--text-mute)}.cook-celebrate-done{width:100%;margin-top:18px}@media (min-width:900px){.cook{display:grid;grid-template-columns:240px 1fr 300px;flex-direction:unset}.cook-armed,.cook-foot,.cook-head,.cook-progress,.cook-timers,.cook-toast-slot,.cook>.cook-main{display:none}}@media (max-width:899px){.cook .cook-rail-left,.cook .cook-rail-right,.cook .cook-stage-desktop{display:none}}.cook-rail-left{background:#f0ebe0;border-right:1px solid #d4c8b8;display:flex;flex-direction:column;overflow:hidden;grid-column:1}.cook-brand-block{display:flex;align-items:center;gap:10px;padding:16px 20px}.cook-brand-block,.cook-rail-meta{border-bottom:1px solid #d4c8b8;flex:none}.cook-rail-meta{padding:12px 20px}.cook-rail-title{font-family:var(--fraunces,var(--font-playfair),Georgia,serif);font-size:16px;line-height:1.15;margin-bottom:4px;color:#3d3630}.cook-rail-sub{font-size:11px;color:#6b5d4a}.cook-rail-stamp{font-family:"JetBrains Mono",var(--mono),monospace;font-size:10px;letter-spacing:.1em;color:#b29e8e;margin-top:6px;text-transform:uppercase}.cook-steps-nav{flex:1;overflow-y:auto;padding:16px 0}.cook-steps-nav-label{padding:0 20px 10px;font-size:10px;letter-spacing:.22em;color:#b29e8e;text-transform:uppercase}.cook-step-nav-row{display:grid;grid-template-columns:32px 1fr auto;gap:10px;padding:10px 20px;align-items:center;border-left:3px solid transparent;font-size:12px;cursor:pointer;color:#3d3630;transition:background .12s ease}.cook-step-nav-row:hover{background:#f8f5f0}.cook-step-nav-row.is-done{color:#b29e8e}.cook-step-nav-row.is-active{background:#f8f5f0;border-left-color:#c6613f;font-weight:500;color:#3d3630}.cook-step-nav-num{font-family:var(--fraunces,var(--font-playfair),Georgia,serif);font-size:20px;font-style:italic;color:#b29e8e;line-height:1}.cook-step-nav-row.is-done .cook-step-nav-num{color:var(--cook-accent)}.cook-step-nav-row.is-active .cook-step-nav-num{color:#c6613f}.cook-step-nav-time{font-size:10px;color:#b29e8e}.cook-step-nav-check,.cook-step-nav-time{font-family:"JetBrains Mono",var(--mono),monospace}.cook-step-nav-check{font-size:13px;color:transparent}.cook-step-nav-row.is-done .cook-step-nav-check{color:var(--cook-accent)}.cook-step-nav-row.is-active .cook-step-nav-check{color:#c6613f}.cook-overall-bar{padding:16px 20px;border-top:1px solid #d4c8b8;flex:none}.cook-overall-meta{display:flex;justify-content:space-between;font-family:"JetBrains Mono",var(--mono),monospace;font-size:10px;color:#b29e8e}.cook-overall-track{height:6px;background:#f8f5f0;margin:8px 0;border:1px solid #d4c8b8}.cook-overall-fill{height:100%;background:var(--cook-accent);transition:width .4s ease}.cook-stage-desktop{background:#f8f5f0;display:flex;flex-direction:column;overflow:hidden;grid-column:2}.cook-stage-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid #d4c8b8;padding:14px 32px;flex:none}.cook-stage-step-label{font-family:"JetBrains Mono",var(--mono),monospace;font-size:11px;letter-spacing:.28em;color:#6b5d4a;text-transform:uppercase}.cook-stage-step-label strong{color:#c6613f;font-weight:500}.cook-stage-ticker{display:flex;gap:20px;font-family:"JetBrains Mono",var(--mono),monospace;font-size:11px;color:#6b5d4a}.cook-stage-ticker strong{color:#3d3630;font-weight:500}.cook-big-step{display:flex;align-items:baseline;gap:20px;padding:20px 32px 12px;flex:none}.cook-big-num{font-size:96px;line-height:.85;color:#c6613f;font-style:italic;flex:none}.cook-big-num,.cook-big-text{font-family:var(--fraunces,var(--font-playfair),Georgia,serif)}.cook-big-text{font-size:32px;line-height:1.15;letter-spacing:-.01em;color:#3d3630}.cook-step-body-grid{display:grid;grid-template-columns:1fr 300px;gap:24px;flex:1;overflow:hidden;padding:0 32px 16px;min-height:0}.cook-detail-panel-desktop{background:#f0ebe0;padding:20px 24px;border:1px solid #d4c8b8;border-left:3px solid var(--cook-accent);overflow-y:auto}.cook-detail-subs{margin-top:12px}.cook-detail-subs:first-child{margin-top:-8px}.cook-detail-panel-desktop>.cook-whats-next:first-child{margin-top:0;padding-top:0;border-top:0}.cook-detail-panel-desktop:empty{background:none;border:0}.cook-sub-chip-desktop{display:inline-block;margin-top:8px;margin-right:6px;padding:4px 10px;background:transparent;border:1px solid #b29e8e;color:#6b5d4a;font-size:10px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;font-family:var(--inter,Inter,sans-serif)}.cook-sub-chip-desktop:hover{background:#3d3630;color:#f8f5f0;border-color:#3d3630}.cook-timer-panel-desktop{display:flex;flex-direction:column;gap:14px;overflow-y:auto}.cook-timer-card-desktop{background:#f0ebe0;border:2px solid #c6613f;padding:18px;text-align:center;flex:none}.cook-timer-card-desktop.is-done{border-color:var(--cook-accent)}.cook-timer-card-label{font-size:10px;letter-spacing:.28em;color:#b29e8e;text-transform:uppercase;margin-bottom:8px}.cook-timer-card-desktop.is-done .cook-timer-card-label{color:#3d5530}.cook-timer-big{font-family:"JetBrains Mono",var(--mono),monospace;font-size:44px;letter-spacing:-.02em;color:#3d3630;line-height:1}.cook-timer-card-desktop.is-done .cook-timer-big{color:#3d5530}.cook-timer-total-label{font-family:"JetBrains Mono",var(--mono),monospace;font-size:11px;color:#b29e8e;margin-top:4px}.cook-timer-progress-bar{height:6px;background:#f8f5f0;margin-top:12px;border:1px solid #d4c8b8}.cook-timer-progress-fill{height:100%;background:#c6613f}.cook-timer-card-desktop.is-done .cook-timer-progress-fill{background:var(--cook-accent);width:100%}.cook-timer-placeholder{background:#f0ebe0;border:1px dashed #d4c8b8;padding:20px;text-align:center;font-size:11px;color:#b29e8e;font-family:"JetBrains Mono",var(--mono),monospace;letter-spacing:.08em}.cook-action-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:14px 32px;border-top:1px solid #d4c8b8;flex:none;background:#f8f5f0}.cook-action-btn{padding:13px 8px;background:transparent;border:1px solid #b29e8e;color:#3d3630;font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-family:var(--inter,Inter,sans-serif);cursor:pointer;transition:background .12s ease,color .12s ease;white-space:nowrap}.cook-action-btn:hover{background:#3d3630;color:#f8f5f0;border-color:#3d3630}.cook-action-btn:disabled{opacity:.38;cursor:not-allowed}.cook-action-btn:disabled:hover{background:transparent;color:#3d3630;border-color:#b29e8e}.cook-action-btn.is-primary{background:#c6613f;border-color:#c6613f;color:#f8f5f0}.cook-action-btn.is-primary:hover{background:#3d3630;border-color:#3d3630}.cook-rail-right{background:#f0ebe0;border-left:1px solid #d4c8b8;display:flex;flex-direction:column;overflow-y:auto;grid-column:3}.cook-rail-section{padding:14px 18px;border-bottom:1px solid #d4c8b8;flex:none}.cook-rail-section:last-child{border-bottom:none}.cook-rail-section-label{font-size:10px;letter-spacing:.22em;color:#b29e8e;text-transform:uppercase;margin-bottom:10px}.cook-mise-row{display:grid;grid-template-columns:58px 1fr auto;gap:6px;padding:5px 0;font-size:12px;border-bottom:1px dashed #d4c8b8;align-items:center;color:#3d3630}.cook-mise-row:last-child{border-bottom:none}.cook-mise-row.is-used{opacity:.4;text-decoration:line-through}.cook-mise-qty{font-size:10px;color:#3d5530;letter-spacing:.05em;text-transform:uppercase}.cook-mise-check,.cook-mise-qty{font-family:"JetBrains Mono",var(--mono),monospace}.cook-mise-check{font-size:11px;color:#b29e8e}.cook-mise-check.is-done{color:#3d5530}.cook-ask-panel{background:#f8f5f0;border:1px solid #c6613f;padding:12px}.cook-ask-hint{font-family:var(--fraunces,var(--font-playfair),Georgia,serif);font-style:italic;font-size:12px;color:#6b5d4a;line-height:1.5;margin-bottom:8px}.cook-ask-listening-btn{width:100%;background:#c6613f;color:#f8f5f0;border:none;padding:9px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;font-family:var(--inter,Inter,sans-serif)}.cook-ask-listening-btn:hover{background:#3d3630}.cook-family-row{display:grid;grid-template-columns:22px 1fr auto;gap:8px;padding:5px 0;font-size:12px;align-items:start;border-bottom:1px dashed #d4c8b8;color:#3d3630}.cook-family-row:last-child{border-bottom:none}.cook-family-avatar{width:22px;height:22px;background:var(--cook-accent);color:#f8f5f0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600;flex-shrink:0}.cook-family-note{color:#6b5d4a;text-align:right}.cook-family-note,.cook-family-pref{font-family:"JetBrains Mono",var(--mono),monospace;font-size:10px}.cook-family-pref{color:#b29e8e}.cook-servings-row{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12px;color:#3d3630}.cook-servings-desktop-btn{width:24px;height:24px;border:1px solid #b29e8e;background:transparent;color:#3d3630;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:15px;font-family:var(--inter,Inter,sans-serif);flex-shrink:0}.cook-servings-desktop-btn:hover{background:#3d3630;color:#f8f5f0;border-color:#3d3630}.cook-servings-desktop-btn:disabled{opacity:.38;cursor:not-allowed}.cook-pull-temp-value{font-family:var(--fraunces,var(--font-playfair),Georgia,serif);font-size:40px;color:#c6613f;line-height:1}.cook-pull-note{margin-top:6px;line-height:1.5}.cook-ink-note,.cook-pull-note{font-family:"JetBrains Mono",var(--mono),monospace;font-size:11px;color:#6b5d4a}.cook-ink-note{font-style:italic}.cook-whats-next{margin-top:20px;padding-top:14px;border-top:1px solid #d4c8b8}.cook-whats-next-label{font-size:10px;letter-spacing:.28em;color:#b29e8e;text-transform:uppercase;margin-bottom:10px}.cook-whats-next-row{display:flex;gap:10px;padding:6px 0;align-items:baseline;border-bottom:1px dashed #d4c8b8}.cook-whats-next-row:last-child{border-bottom:none}.cook-whats-next-num{font-family:var(--fraunces,var(--font-playfair),Georgia,serif);font-style:italic;font-size:15px;color:#b29e8e;flex:none;width:20px}.cook-whats-next-text{font-size:12px;color:#b29e8e;line-height:1.45}.cook-pref-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.cook-pref-chip{display:inline-block;padding:2px 6px;background:transparent;border:1px solid #b29e8e;color:#6b5d4a;font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-family:var(--inter,Inter,sans-serif)}.cook~.fb-launcher,.cook~.nps-backdrop,body:has(.cook) .fb-launcher,body:has(.cook) .nps-backdrop{display:none}.meal-action-cook{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.meal-hero{height:62vh;min-height:340px}@media (min-width:861px){.meal-hero{height:clamp(360px,52vh,540px)}}.meal-hero:after{content:"";position:absolute;inset:auto 0 0 0;height:88px;pointer-events:none;background:linear-gradient(to bottom,rgba(248,245,240,0),var(--bg))}@keyframes meal-ken-burns{0%{transform:scale(1.04) translateZ(0)}to{transform:scale(1.11) translate3d(-1.4%,-1.8%,0)}}.meal-hero-img{object-fit:cover;animation:meal-ken-burns 30s ease-in-out infinite alternate;will-change:transform}.meal-hero.is-drawn{background:radial-gradient(120% 120% at 50% 15%,#fffdf9 0,var(--bg-elev) 62%,#e7dfd2 100%)}.meal-hero-art{position:absolute;inset:0;display:grid;place-items:center;color:var(--sage);opacity:.42}.meal-hero-art-svg{width:100%;height:100%;animation:meal-ken-burns 42s ease-in-out infinite alternate;will-change:transform}.meal-hero-art-emoji{position:absolute;font-size:clamp(44px,9vw,76px);line-height:1;filter:drop-shadow(0 2px 10px rgba(61,54,48,.14))}@media (prefers-reduced-motion:reduce){.meal-hero-art-svg,.meal-hero-img{animation:none}}.meal-servings{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--card-border)}.meal-servings-btn{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;font-size:20px;line-height:1;font-weight:500;color:var(--sage-deep);background:var(--bg);border:1px solid var(--card-border-strong);border-radius:0;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease}.meal-servings-btn:hover:not(:disabled){background:var(--sage-tint);border-color:var(--sage-border)}.meal-servings-btn:active:not(:disabled){transform:scale(.94)}.meal-servings-btn:focus-visible{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint-strong)}.meal-servings-btn:disabled{opacity:.4;cursor:not-allowed}.meal-servings-value{display:flex;align-items:baseline;gap:6px;min-width:104px;justify-content:center}.meal-servings-value strong{font-family:var(--fraunces);font-size:24px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.meal-servings-word{font-size:10px;letter-spacing:1.4px}.meal-servings-reset,.meal-servings-word{font-family:var(--mono);text-transform:uppercase;color:var(--text-mute)}.meal-servings-reset{margin-left:auto;padding:8px 12px;font-size:9.5px;letter-spacing:1.1px;background:none;border:1px solid var(--card-border);border-radius:100px;cursor:pointer;transition:color .15s ease,border-color .15s ease}.meal-servings-reset:hover{color:var(--sage-deep);border-color:var(--sage-border)}.meal-scaled-note{margin:-6px 0 14px;font-size:12px;line-height:1.45;color:var(--text-dim)}.meal-availability{margin:-6px 0 16px;padding:12px 14px;border-radius:0;background:var(--sage-tint);border:1px solid var(--sage-border)}.meal-availability-chip{margin:0;font-size:13px;line-height:1.5;color:var(--sage-deep)}.meal-availability-warning{margin:8px 0 0;padding:8px 10px;border-radius:0;background:var(--clay-tint);border:1px solid var(--clay-border);font-size:12.5px;line-height:1.4;color:var(--clay)}.meal-availability-actions{margin-top:10px}.meal-availability-buy{font-size:12.5px;padding:9px 14px}.meal-availability-error{margin:8px 0 0;font-size:12px;color:var(--clay)}.meal-availability-done{margin:-6px 0 14px;font-size:12.5px;line-height:1.45;color:var(--sage-deep)}.meal-check{min-height:44px;align-items:center;padding:11px 10px;margin:0 -10px}.meal-check:has(.meal-check-note){align-items:flex-start}.meal-check:has(.meal-check-note) .meal-check-box{margin-top:2px}@keyframes meal-check-pop{0%{transform:scale(1)}38%{transform:scale(.84)}70%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes meal-check-ring{0%{opacity:.5;transform:scale(.9)}to{opacity:0;transform:scale(2.1)}}.meal-check-box{position:relative}.meal-check-box:after{content:"";position:absolute;inset:-1px;border-radius:0;border:2px solid var(--sage);opacity:0;pointer-events:none}.meal-check.is-checked .meal-check-box{animation:meal-check-pop .3s ease}.meal-check.is-checked .meal-check-box:after{animation:meal-check-ring .42s ease-out}@media (prefers-reduced-motion:reduce){.meal-check.is-checked .meal-check-box,.meal-check.is-checked .meal-check-box:after{animation:none}}.meal-checklist-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.meal-check-clear{font-family:var(--mono);font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:var(--text-mute);background:none;border:none;padding:6px 2px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.meal-check-clear:hover{color:var(--clay)}.meal-steps.is-observing .meal-step{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s cubic-bezier(.22,.61,.36,1)}.meal-steps.is-observing .meal-step.is-revealed{opacity:1;transform:none}.meal-nutrition{margin-top:24px;padding:0;overflow:hidden}.meal-nutrition-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:20px 24px;background:none;border:none;cursor:pointer;text-align:left}.meal-nutrition-toggle:hover{background:var(--sage-tint)}.meal-nutrition-toggle:focus-visible{outline:2px solid var(--sage-deep);outline-offset:-2px}.meal-nutrition-heading{font-family:var(--mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--text-mute);font-weight:600}.meal-nutrition-summary{font-size:13.5px;color:var(--text);font-variant-numeric:tabular-nums}.meal-nutrition-chevron{width:16px;height:16px;margin-left:auto;flex-shrink:0;color:var(--text-mute);transition:transform .34s cubic-bezier(.4,0,.2,1)}.meal-nutrition-toggle[aria-expanded=true] .meal-nutrition-chevron{transform:rotate(180deg)}.meal-nutrition-body{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .34s cubic-bezier(.4,0,.2,1),visibility .34s}.meal-nutrition-body.is-open{grid-template-rows:1fr;visibility:visible}.meal-nutrition-inner{overflow:hidden}.meal-nutrition-body.is-open .meal-nutrition-inner{padding:4px 24px 24px}@media (prefers-reduced-motion:reduce){.meal-nutrition-body,.meal-nutrition-chevron{transition:none}}.fda-label{font-variant-numeric:tabular-nums;color:var(--text);max-width:22rem}.fda-title{font-family:var(--fraunces);font-size:26px;font-weight:700;line-height:1.1;margin:0 0 2px}.fda-servings-per{font-size:13px;font-weight:600;margin:0 0 4px;padding-bottom:4px;border-bottom:1px solid var(--text)}.fda-serving-size{display:flex;justify-content:space-between;font-size:15px;font-weight:700;padding:3px 0 6px}.fda-rule-thick{height:7px;background:var(--text);margin:2px 0}.fda-rule-medium{height:3px;background:var(--text);margin:2px 0 4px}.fda-calories{display:flex;justify-content:space-between;align-items:baseline;font-weight:800;padding:2px 0}.fda-calories>span:first-child{font-size:16px}.fda-calories-value{font-family:var(--fraunces);font-size:30px}.fda-dv-head{text-align:right;font-size:11px;font-weight:700;margin:2px 0;padding-bottom:3px;border-bottom:1px solid var(--text)}.fda-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:13.5px;padding:4px 0;border-bottom:1px solid var(--card-border)}.fda-row.is-bold .fda-row-label{font-weight:700}.fda-row.is-indent .fda-row-label{padding-left:18px;font-weight:400}.fda-row-value{font-weight:400;color:var(--text)}.fda-row-dv{font-weight:700;flex-shrink:0}.fda-footnote{font-size:10.5px;line-height:1.45;color:var(--text-dim);margin:8px 0 0}.meal-cta-bar{position:sticky;bottom:0;z-index:20;display:flex;align-items:center;gap:14px;margin:0 -24px 26px;padding:12px 24px max(12px,env(safe-area-inset-bottom));background:rgba(248,245,240,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--card-border)}.btn-cook{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:1 1 auto;min-height:52px;padding:14px 26px;font-family:var(--inter);font-size:16px;font-weight:600;letter-spacing:.1px;color:#fffaf5;background:var(--clay-accent);border:none;border-radius:0;text-decoration:none;box-shadow:0 6px 18px rgba(198,97,63,.26);transition:background .16s ease,transform .12s ease,box-shadow .16s ease}.btn-cook:hover{background:#b45535;color:#fffaf5;box-shadow:0 8px 22px rgba(198,97,63,.32)}.btn-cook:active{transform:translateY(1px);box-shadow:0 3px 12px rgba(198,97,63,.28)}.btn-cook:focus-visible{outline:2px solid var(--clay);outline-offset:3px}.meal-cta-hint{display:none;font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-mute)}@media (min-width:861px){.meal-cta-bar{position:static;margin:0 0 30px;padding:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-top:none}.btn-cook{flex:0 0 auto}.meal-cta-hint{display:inline}}.btn-mark-cooked{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;margin:0 0 20px;font-family:var(--inter);font-size:14px;font-weight:600;color:var(--sage-deep);background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;cursor:pointer;transition:background .14s ease,border-color .14s ease}.btn-mark-cooked:hover:not(:disabled){background:var(--sage-tint-strong)}.btn-mark-cooked:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.btn-mark-cooked:disabled{opacity:.6;cursor:not-allowed}.meal-eating-out-toggle{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;margin:0 0 20px 10px;font-family:var(--inter);font-size:13.5px;font-weight:600;color:var(--text-mute);background:transparent;border:1px solid var(--card-border-strong);border-radius:0;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.meal-eating-out-toggle:hover:not(:disabled){background:var(--bg-elev);color:var(--text)}.meal-eating-out-toggle[data-on=true]{color:var(--clay);background:var(--clay-tint);border-color:var(--clay-border)}.meal-eating-out-toggle:disabled{opacity:.6;cursor:not-allowed}.cooked-toast,.meal-cooked-error{margin:-12px 0 20px}.cooked-toast{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-radius:0;font-size:13.5px;color:var(--text);line-height:1.5}.cooked-toast-undo{flex:0 0 auto;background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--sage-deep);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.cooked-toast-undo:hover:not(:disabled){color:var(--text)}.cooked-toast-undo:disabled{opacity:.6;cursor:not-allowed}.meal-page .meal-footrow{justify-content:flex-start}.dash-widgets-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:32px}@media (max-width:860px){.dash-widgets-grid{grid-template-columns:1fr}}.dash-widgets-grid>:last-child:nth-child(odd){grid-column:1/-1}.dash-card{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:22px 24px;gap:14px;min-height:0}.dash-card,.dash-card-head{display:flex;flex-direction:column}.dash-card-head{gap:4px}.dash-card-title{font-family:var(--inter,var(--sans));font-size:11px;font-weight:500;color:var(--ink,var(--text-mute));letter-spacing:.18em;text-transform:uppercase;margin:0}.dash-card-caption{font-size:12.5px;line-height:1.5;color:var(--text-mute);margin:0}.dash-card-body{display:flex;flex-direction:column;justify-content:center;min-height:120px}.dash-empty{font-size:13px;color:var(--text-dim);font-style:italic;margin:0;padding:24px 0;text-align:center}.dash-skeleton{display:flex;flex-direction:column;gap:10px;padding:8px 0}.dash-skeleton-bar{display:block;height:14px;border-radius:0;background:linear-gradient(90deg,var(--bg-elev) 0,var(--card-border) 42%,var(--bg-elev) 84%);background-size:260% 100%;animation:dash-shimmer 1.5s ease-in-out infinite}@keyframes dash-shimmer{0%{background-position:140% 0}to{background-position:-60% 0}}@media (prefers-reduced-motion:reduce){.dash-skeleton-bar{animation:none;background:var(--bg-elev)}}.dash-savings{background:linear-gradient(135deg,var(--sage-tint),transparent);border:1px solid var(--sage-border);border-radius:0;padding:18px 20px;display:flex;flex-direction:column;gap:8px}.dash-savings-headline{font-family:var(--fraunces);font-size:22px;font-weight:600;color:var(--sage-deep);margin:0;letter-spacing:-.01em}.dash-savings-sub{font-size:12.5px;line-height:1.5;color:var(--text-mute);margin:0}.dash-nutrition-list{list-style:none;display:flex;flex-direction:column;gap:16px;margin:0;padding:0}.dash-nutrition-row+.dash-nutrition-row{padding-top:16px;border-top:1px solid var(--card-border)}.dash-nutrition-name{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.dash-nutrition-name span:first-child{font-weight:600;font-size:13.5px;color:var(--text)}.dash-nutrition-cals{font-size:11.5px;color:var(--text-mute)}.dash-nutrition-bars{display:flex;flex-direction:column;gap:6px}.dash-nutrition-bar-track{display:grid;grid-template-columns:52px minmax(0,1fr) 36px;align-items:center;gap:8px}.dash-nutrition-bar-label{font-size:11px;color:var(--text-mute)}.dash-nutrition-bar-rail{height:8px;border-radius:0;background:var(--bg-elev);overflow:hidden}.dash-nutrition-bar-fill{display:block;height:100%;border-radius:0}.dash-nutrition-bar-fill.is-protein{background:var(--sage)}.dash-nutrition-bar-fill.is-carbs{background:var(--taupe)}.dash-nutrition-bar-fill.is-fat{background:var(--clay-accent)}.dash-nutrition-bar-value{font-size:11px;color:var(--text-dim);text-align:right}.dash-store-copy{font-size:14px;line-height:1.6;color:var(--text);margin:0}.dash-store-copy strong{color:var(--sage-deep)}.dash-waste{background:linear-gradient(135deg,var(--clay-tint),transparent);border:1px solid var(--clay-border);border-radius:0;padding:18px 20px;display:flex;flex-direction:column;gap:8px}.dash-waste-headline{font-family:var(--fraunces);font-size:22px;font-weight:600;color:var(--clay);margin:0;letter-spacing:-.01em}.dash-waste-sub{font-size:12.5px;line-height:1.5;color:var(--text-mute);margin:0}.dash-waste-toggle{align-self:flex-start;margin-top:2px;padding:0;background:none;border:none;font-family:var(--mono);font-size:10.5px;letter-spacing:.3px;color:var(--clay);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.dash-waste-member-list{display:flex;flex-direction:column;gap:10px;margin-top:4px;padding-top:10px;border-top:1px solid var(--clay-border)}.dash-waste-member-row{display:flex;flex-direction:column;gap:3px}.dash-waste-member-head{display:flex;align-items:center;gap:8px}.dash-waste-member-name{font-size:13.5px;font-weight:600;color:var(--text)}.dash-waste-member-detail{font-size:12.5px;color:var(--text-mute);padding-left:32px}.dash-waste-scale-chip{display:inline-flex;align-self:flex-start;margin-left:32px;margin-top:2px;padding:3px 9px;border-radius:999px;background:var(--sage-tint);border:1px solid var(--sage-border);font-size:11px;font-weight:550;color:var(--sage-deep)}.dash-waste-family-row{font-size:12.5px;color:var(--text-mute);padding-top:4px;border-top:1px dashed var(--clay-border)}.waste-patterns-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.waste-culprit-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}.waste-culprit-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--card-border)}.waste-culprit-row:last-child{border-bottom:none}.waste-culprit-name{font-size:14px;font-weight:600;color:var(--text)}.waste-culprit-detail{font-family:var(--mono);font-size:12px;color:var(--text-dim);white-space:nowrap}.waste-intervention-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin-top:8px}.waste-intervention-row{padding:12px 14px;border-radius:0;background:var(--sage-tint);border:1px solid var(--sage-border);font-size:14px;color:var(--text);line-height:1.5}.dash-chef-context{display:flex;flex-direction:column;gap:10px}.dash-chef-context-headline{display:flex;align-items:baseline;gap:8px}.dash-chef-context-count{font-family:var(--fraunces);font-size:22px;font-weight:600;color:var(--sage-deep);letter-spacing:-.01em}.dash-chef-context-label{font-size:12.5px;color:var(--text-mute)}.dash-chef-context-track{height:8px;border-radius:999px;background:var(--bg-elev);overflow:hidden}.dash-chef-context-fill{display:block;height:100%;border-radius:999px;background:var(--sage);transition:width .4s ease}.dash-chef-context-details{margin-top:2px}.dash-chef-context-details summary{cursor:pointer;font-size:12.5px;color:var(--sage-deep);font-weight:600;list-style:none}.dash-chef-context-details summary::-webkit-details-marker{display:none}.dash-chef-context-details summary:before{content:"▸ ";display:inline-block;transition:transform .15s ease}.dash-chef-context-details[open] summary:before{transform:rotate(90deg)}.dash-chef-context-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.dash-chef-context-item{display:flex;align-items:flex-start;gap:10px}.dash-chef-context-dot{flex:0 0 auto;width:8px;height:8px;border-radius:999px;margin-top:4px;background:var(--card-border)}.dash-chef-context-item.is-active .dash-chef-context-dot{background:var(--sage)}.dash-chef-context-item-body{display:flex;flex-direction:column;gap:2px;min-width:0}.dash-chef-context-item-label{font-size:13px;color:var(--text);font-weight:500}.dash-chef-context-item.is-active .dash-chef-context-item-label{color:var(--sage-deep)}.dash-chef-context-item-hint{font-size:12px;line-height:1.5;color:var(--text-mute)}.dash-chef-context-item-hint a{color:var(--sage-deep);font-weight:600;text-decoration:none}.dash-chef-context-item-hint a:hover{text-decoration:underline}.achievement-toast-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:195}.achievement-confetti{position:absolute;inset:0;overflow:hidden}.achievement-confetti .confetti-leaf{top:-6vh;width:18px}@media (prefers-reduced-motion:reduce){.achievement-confetti{display:none}}.achievement-toast{position:absolute;top:20px;left:50%;transform:translateX(-50%);display:flex;align-items:flex-start;gap:12px;max-width:min(420px,calc(100vw - 32px));background:var(--card);border:1px solid var(--sage-border);border-radius:0;box-shadow:0 12px 32px rgba(0,0,0,.16);padding:14px 18px;animation:achievement-toast-in .35s cubic-bezier(.2,.7,.3,1) both}@keyframes achievement-toast-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.achievement-toast{animation:none}}.achievement-toast-emoji{font-size:26px;line-height:1}.achievement-toast-copy{display:flex;flex-direction:column;gap:2px}.achievement-toast-title{font-family:var(--fraunces);font-size:15px;font-weight:600;color:var(--text);margin:0}.achievement-toast-desc{font-size:12.5px;line-height:1.4;color:var(--text-mute);margin:0}.streak-card{margin-top:16px;padding:12px 16px;background:var(--card);border:1px solid var(--card-border);display:flex;flex-direction:column;gap:8px}.streak-card-row{display:flex;align-items:center;gap:12px}.streak-card-icon{font-size:24px;line-height:1;flex:0 0 auto}.streak-card-body{display:flex;flex-direction:column;gap:2px}.streak-card-number{font-family:var(--font-playfair);font-size:18px;font-weight:700;color:var(--text);line-height:1.2}.streak-card-label{font-size:12.5px;color:var(--text-mute)}.streak-card-banner{font-size:12.5px;color:var(--sage);padding:6px 10px;background:var(--sage-tint);border-left:2px solid var(--sage-border);margin-left:36px}.milestone-bar{display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px 16px;background:var(--card);border:1px solid var(--card-border);border-radius:0;text-decoration:none;transition:border-color .15s ease}.milestone-bar:hover{border-color:var(--sage-border)}.milestone-bar-emoji{font-size:20px;line-height:1;flex:0 0 auto}.milestone-bar-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.milestone-bar-label{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--text)}.milestone-bar-label strong{font-weight:600}.milestone-bar-count{color:var(--text-mute);font-variant-numeric:tabular-nums}.milestone-bar-track{height:6px;border-radius:999px;background:var(--bg-elev);overflow:hidden}.milestone-bar-fill{display:block;height:100%;border-radius:999px;background:var(--sage);transition:width .4s ease}.milestone-bar-chevron{flex:0 0 auto;color:var(--text-dim);font-size:13px}.achievements-shell{max-width:780px;margin:0 auto;padding:48px 24px 96px}.achievements-head{margin-bottom:8px}.achievements-summary{font-size:13px;color:var(--text-mute);margin:4px 0 28px}.achievements-category{margin-top:32px}.achievements-category:first-of-type{margin-top:0}.achievements-category-title{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--sage-deep);margin:0 0 12px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.achievement-card{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--card);border:1px solid var(--card-border);border-radius:0}.achievement-card.is-unlocked{border-color:var(--sage-border);background:linear-gradient(135deg,var(--sage-tint),var(--card))}.achievement-card.is-locked{opacity:.55}.achievement-card-emoji{font-size:24px;line-height:1;flex:0 0 auto}.achievement-card.is-locked .achievement-card-emoji{filter:grayscale(1)}.achievement-card-body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.achievement-card-title{font-family:var(--fraunces);font-size:14.5px;font-weight:600;color:var(--text);margin:0}.achievement-card-desc{font-size:12px;line-height:1.45;color:var(--text-mute);margin:0}.achievement-card-progress{margin-top:4px;height:4px;border-radius:999px;background:var(--bg-elev);overflow:hidden}.achievement-card-progress-fill{display:block;height:100%;background:var(--sage-light);border-radius:999px}.achievement-card-count{font-size:11px;color:var(--text-dim);margin-top:2px}.achievement-card-date{font-size:11px;color:var(--sage-deep);margin-top:2px}.recap-card{background:linear-gradient(135deg,var(--sage-tint),var(--card));border:1px solid var(--sage-border);border-radius:0;padding:22px 24px;margin-top:20px;display:flex;flex-direction:column;gap:12px}.recap-card-eyebrow{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--sage-deep);margin:0}.recap-card-title{font-family:var(--fraunces);font-size:19px;font-weight:600;color:var(--text);margin:0}.recap-stats{display:flex;flex-wrap:wrap;gap:18px;margin-top:4px}.recap-stat{display:flex;flex-direction:column;gap:2px}.recap-stat-value{font-family:var(--fraunces);font-size:20px;font-weight:600;color:var(--sage-deep)}.recap-stat-label{font-size:11.5px;color:var(--text-mute)}.recap-highlight{font-size:13px;color:var(--text);margin:4px 0 0}.recap-highlight strong{color:var(--sage-deep)}.chef-signoff{font-family:var(--fraunces);font-style:italic;font-size:14px;line-height:1.6;color:var(--ink,var(--text-mute));margin:8px 0 0;max-width:60ch}.chef-signoff strong{color:var(--charcoal,var(--sage-deep));font-style:normal;font-weight:500}.ask-chef{margin-top:8px}.ask-chef .btn-quiet.is-listening{border-color:var(--sage-border);color:var(--sage-deep);animation:voice-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.ask-chef .btn-quiet.is-listening{animation:none}}.ask-chef-ack{font-size:13.5px;color:var(--sage-deep);font-weight:500;margin:8px 0 0}.ask-chef-error{font-size:13px;color:var(--clay);margin:8px 0 0}.ask-chef-chips{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 0;padding:0}.ask-chef-chip{gap:8px;padding:6px 8px 6px 13px;border:1px solid var(--card-border-strong);border-radius:100px;background:var(--bg);color:var(--text-mute);font-size:12px}.ask-chef-chip,.ask-chef-chip button{display:inline-flex;align-items:center}.ask-chef-chip button{justify-content:center;width:18px;height:18px;border:none;border-radius:999px;background:transparent;color:var(--text-dim);font-size:11px;line-height:1;cursor:pointer}.ask-chef-chip button:hover{background:var(--clay-tint);color:var(--clay)}.decision-overlay{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:24px;overflow-y:auto;background:rgba(33,30,27,.55);animation:cook-confirm-in .16s cubic-bezier(.16,1,.3,1) both}.decision-card{width:min(26rem,100%);margin:auto;padding:28px;border-radius:0;background:var(--card);box-shadow:0 24px 60px rgba(33,30,27,.28)}.decision-title{font-family:var(--fraunces);font-size:21px;font-weight:600;text-align:center;margin:0 0 20px;color:var(--text)}.decision-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.decision-option{display:flex;flex-direction:column;align-items:center;gap:5px;padding:16px 8px;border-radius:0;border:2px solid var(--card-border);background:var(--bg);cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.decision-option:hover{transform:translateY(-2px)}.decision-option:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.decision-emoji{font-size:24px;line-height:1}.decision-label{font-size:13.5px;font-weight:650;color:var(--text)}.decision-hint{font-size:10px;line-height:1.3;color:var(--text-mute);text-align:center}.decision-option.is-sage.is-selected{border-color:var(--sage);background:var(--sage-tint)}.decision-option.is-clay.is-selected{border-color:var(--clay);background:var(--clay-tint)}.decision-option.is-taupe.is-selected{border-color:var(--taupe);background:var(--taupe-tint)}@media (prefers-reduced-motion:reduce){.decision-option{transition:none}.decision-overlay{animation:none}}.decision-note{margin-top:18px}.decision-note-label{display:block;font-size:12px;color:var(--text-mute);margin-bottom:6px}.decision-textarea{width:100%;min-height:60px;padding:10px 12px;border-radius:0;border:1px solid var(--card-border);background:var(--bg);color:var(--text);font:inherit;font-size:13px;resize:vertical}.decision-textarea:focus-visible{outline:2px solid var(--sage-deep);outline-offset:1px}.decision-error{margin:12px 0 0;font-size:12.5px;color:var(--clay)}.decision-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.shop{position:fixed;inset:0;z-index:190;display:flex;flex-direction:column;height:100dvh;background:var(--bg);color:var(--text);overscroll-behavior:none}body:has(.shop) .crisp-bottom-nav,body:has(.shop) .crisp-right-sheet-btn{display:none}.shop-topbar{flex:none;padding:max(14px,env(safe-area-inset-top)) 16px 14px;background:var(--card);border-bottom:1px solid var(--card-border)}.shop-topbar-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.shop-exit{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:0;color:var(--text-mute);text-decoration:none;font-size:16px;flex:none;touch-action:manipulation}.shop-exit:hover{background:var(--bg-elev);color:var(--text)}.shop-store-name{font-family:var(--fraunces);font-size:17px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shop-figures{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px}.shop-figure{display:flex;flex-direction:column;gap:2px;min-width:0}.shop-figure-value{font-family:var(--mono);font-weight:700;font-size:clamp(17px,5vw,21px);color:var(--text);letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-figure-lg .shop-figure-value{font-size:clamp(22px,7vw,28px);color:var(--sage-deep)}.shop-figure-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-mute)}.shop-figures.is-prices-hidden{grid-template-columns:minmax(0,1fr) auto;align-items:center}.shop-figure-note{margin:0;font-size:13px;line-height:1.4;color:var(--text-mute)}.shop-figure.is-over .shop-figure-label,.shop-figure.is-over .shop-figure-value{color:var(--clay)}.shop-scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:14px 14px 24px}.shop-section{margin-bottom:14px}.shop-section-head{width:100%;display:flex;align-items:center;gap:10px;padding:13px 14px;background:var(--card);border:1px solid var(--card-border);border-radius:0;cursor:pointer;min-height:48px;touch-action:manipulation}.shop-section-title{font-family:var(--fraunces);font-size:15px;font-weight:600;color:var(--text);flex:1;text-align:left}.shop-section-progress{font-family:var(--mono);font-size:12px;color:var(--sage-deep);font-weight:600}.shop-section-chevron{display:inline-block;color:var(--text-mute);transition:transform .18s ease;font-size:16px;line-height:1}.shop-section-chevron.is-collapsed{transform:rotate(-90deg)}.shop-items{list-style:none;display:grid;gap:8px;margin-top:8px}.shop-item{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:12px;padding:8px 14px 8px 8px;background:var(--card);border:1.5px solid var(--card-border);border-radius:0;min-height:64px;transition:border-color .15s ease,background .15s ease}.shop-item.is-checked{border-color:var(--sage-border);background:var(--sage-tint)}.shop-check{width:60px;height:60px;display:inline-flex;align-items:center;justify-content:center;border-radius:0;border:2px solid var(--card-border-strong);background:var(--card);color:var(--bg);cursor:pointer;flex:none;touch-action:manipulation}.shop-check svg{width:26px;height:26px}.shop-item.is-checked .shop-check{border-color:var(--sage);background:var(--sage)}.shop-item-body{display:flex;flex-direction:column;gap:2px;min-width:0;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.shop-item-name{font-size:15.5px;font-weight:600;color:var(--text);line-height:1.3}.shop-item.is-checked .shop-item-name{text-decoration:line-through;text-decoration-color:var(--text-mute);text-decoration-thickness:1.5px;color:var(--text-mute)}.shop-item-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.shop-item-desc{font-family:var(--mono);font-size:12px;color:var(--text-mute)}.shop-item-aisle{font-family:var(--mono);font-size:10px;color:var(--text-dim);background:var(--taupe-tint);padding:1px 5px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.shop-item.is-checked .shop-item-desc{opacity:.6}.shop-item.is-checked .shop-item-aisle{opacity:.5}.shop-item-sub{font-size:11.5px;color:var(--sage-deep);font-weight:600}.shop-item-swap-link{align-self:flex-start;padding:4px 0;margin:0;border:none;background:none;color:var(--text-dim);font-size:11.5px;text-decoration:underline dotted;text-underline-offset:2px;cursor:pointer;touch-action:manipulation}.shop-item-cost{font-family:var(--mono);font-size:14px;font-weight:700;color:var(--text);white-space:nowrap}.shop-item-cost.is-unpriced{color:var(--text-dim);font-style:italic;font-weight:400;font-size:12px}.shop-item.is-checked .shop-item-cost{opacity:.55}.shop-bottombar{flex:none;padding:12px 16px max(12px,env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--card-border);display:grid;gap:10px}.shop-bottombar-figures{display:flex;justify-content:space-between;gap:12px;font-family:var(--mono);font-size:12.5px;color:var(--text-mute)}.shop-bottombar-figures .is-over{color:var(--clay);font-weight:600}.shop-done-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;border-radius:0;border:1.5px solid var(--sage-border);background:var(--card);color:var(--sage-deep);font-size:16px;font-weight:700;text-decoration:none;cursor:pointer;touch-action:manipulation;box-sizing:border-box}.shop-done-btn.is-ready{border-color:var(--sage);background:var(--sage);color:var(--bg)}.shop-sheet-overlay{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.5);display:flex;align-items:flex-end;justify-content:center;padding:0}.shop-sheet{width:100%;max-width:480px;background:var(--bg);border-radius:0;padding:24px 24px max(24px,env(safe-area-inset-bottom));animation:slideUp .25s ease}.shop-sheet-title{font-family:var(--fraunces);font-size:17px;font-weight:600;color:var(--text);margin:0 0 4px}.shop-sheet-sub{font-size:13px;color:var(--text-mute);margin:0 0 12px}.shop-sheet-input{width:100%;padding:12px 16px;font-size:16px;border:1.5px solid var(--card-border-strong);border-radius:0;background:var(--card);color:var(--text);font-family:var(--inter)}.shop-sheet-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.shop-sheet-actions .grocery-button{min-height:44px;touch-action:manipulation}.shop-sheet-actions .grocery-button-primary{margin-left:auto}.shop-toast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);z-index:80;display:flex;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:12px 16px;border-radius:999px;background:var(--text);color:var(--bg);font-size:13px;box-shadow:0 8px 24px rgba(0,0,0,.2)}.shop-toast button{border:none;background:none;color:var(--bg);opacity:.7;cursor:pointer;font-size:13px;flex:none}.shop-toast button:hover{opacity:1}@media (max-width:380px){.shop-figures{grid-template-columns:1.2fr 1fr .9fr}.shop-item{grid-template-columns:56px 1fr auto}.shop-check{width:56px;height:56px}}.admin-nav-back{font-family:var(--inter);font-size:13px;font-weight:500;color:var(--text-mute);text-decoration:none;transition:color .15s}.admin-nav-back:hover{color:var(--sage-deep)}.admin-layout{display:flex;align-items:flex-start;max-width:1440px;margin:0 auto}.admin-sidebar{flex:0 0 208px;position:sticky;top:61px;align-self:flex-start;padding:32px 12px 48px 32px;display:flex;flex-direction:column;gap:4px}.admin-sidebar-heading{font-family:var(--mono);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;font-weight:600;color:var(--text-dim);margin:18px 0 6px 12px}.admin-sidebar-heading:first-child{margin-top:0}.admin-sidebar-group{display:flex;flex-direction:column;gap:1px}.admin-sidebar-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:0;font-size:13.5px;font-weight:500;color:var(--text-mute);text-decoration:none;transition:background .14s,color .14s}.admin-sidebar-link:hover{background:var(--bg-elev);color:var(--text)}.admin-sidebar-link.is-active{background:var(--sage-tint);color:var(--sage-deep);font-weight:600}.admin-sidebar-badge{background:var(--clay);color:var(--bg);font-family:var(--mono);font-size:10px;font-weight:700;line-height:1;padding:3px 6px;border-radius:999px;min-width:16px;text-align:center}.admin-shell--content{flex:1 1 auto;min-width:0;max-width:none;margin:0;padding:32px 32px 96px}@media (max-width:860px){.admin-layout{flex-direction:column}.admin-sidebar{position:static;flex-direction:row;flex-wrap:wrap;width:100%;padding:16px 20px 0;gap:6px 4px}.admin-sidebar-heading{display:none}.admin-shell--content{padding:24px 20px 64px}}.admin-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}.admin-page-header p{color:var(--text-mute);font-size:14px;margin:8px 0 0;max-width:60ch}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:28px}.stat-card{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:16px 18px}.stat-card-label{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;font-weight:600;color:var(--text-dim);margin-bottom:8px}.stat-card-value{font-family:var(--fraunces);font-size:26px;font-weight:500;color:var(--text);letter-spacing:-.01em;line-height:1.15}.stat-card-sub{font-size:12px;color:var(--text-mute);margin-top:4px}.stat-card-delta{font-family:var(--mono);font-size:11px;font-weight:600;margin-top:6px;display:inline-block}.stat-card-delta.is-up{color:var(--sage-deep)}.stat-card-delta.is-down{color:var(--clay)}.admin-section{background:var(--card);border:1px solid var(--card-border);border-radius:0;padding:22px;margin-bottom:20px}.admin-section-title{font-family:var(--fraunces);font-size:16px;font-weight:600;color:var(--text);margin:0 0 4px}.admin-section-desc{font-size:12.5px;color:var(--text-mute);margin:0 0 16px}.data-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th{text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:600;color:var(--text-dim);padding:0 10px 10px;border-bottom:1px solid var(--card-border-strong);white-space:nowrap}.admin-table td{padding:11px 10px;border-bottom:1px solid var(--card-border);color:var(--text);vertical-align:middle}.admin-table tbody tr:hover{background:var(--bg-elev)}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table-empty{padding:32px 12px;text-align:center;color:var(--text-mute);font-size:13px}.admin-table .num{font-family:var(--mono);text-align:right}.admin-table-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--card-border-strong);margin-bottom:20px}.admin-tab{padding:9px 14px;font-size:13px;font-weight:500;color:var(--text-mute);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .14s,border-color .14s;text-decoration:none;display:inline-block}.admin-tab:hover{color:var(--text)}.admin-tab.is-active{color:var(--sage-deep);border-bottom-color:var(--sage);font-weight:600}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;white-space:nowrap}.status-pill.is-active,.status-pill.is-ok{background:var(--sage-tint);color:var(--sage-deep)}.status-pill.is-new,.status-pill.is-trialing,.status-pill.is-warn{background:rgba(198,97,63,.14);color:var(--clay-accent)}.status-pill.is-canceled,.status-pill.is-churned,.status-pill.is-fail{background:var(--clay-tint);color:var(--clay)}.status-pill.is-closed,.status-pill.is-neutral,.status-pill.is-replied{background:var(--taupe-tint);color:var(--taupe-deep)}.toggle-switch{position:relative;display:inline-block;width:38px;height:22px;flex:none}.toggle-switch input{opacity:0;width:100%;height:100%;margin:0;cursor:pointer;position:absolute;inset:0;z-index:1}.toggle-switch-track{position:absolute;inset:0;background:var(--card-border-strong);border-radius:999px;transition:background .16s ease}.toggle-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--card);border-radius:50%;box-shadow:0 1px 2px rgba(61,54,48,.25);transition:transform .16s ease}.toggle-switch input:checked~.toggle-switch-track{background:var(--sage)}.toggle-switch input:checked~.toggle-switch-track:after{transform:translateX(16px)}.toggle-switch input:focus-visible~.toggle-switch-track{outline:2px solid var(--sage-deep);outline-offset:2px}.toggle-switch input:disabled~.toggle-switch-track{opacity:.5;cursor:not-allowed}.admin-inline-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-empty-state{padding:48px 24px;text-align:center;color:var(--text-mute);font-size:13.5px}.admin-mono-id{font-family:var(--mono);font-size:11px;color:var(--text-dim)}.admin-progress-track{height:6px;border-radius:999px;background:var(--bg-elev);overflow:hidden}.admin-progress-fill{height:100%;background:var(--sage);border-radius:999px}.admin-denied-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:200;display:flex;align-items:center;gap:14px;background:var(--text);color:var(--bg);padding:12px 16px 12px 18px;border-radius:0;font-size:13.5px;box-shadow:0 10px 32px rgba(61,54,48,.28);max-width:calc(100vw - 32px)}.admin-denied-toast button{background:none;border:none;color:var(--bg);opacity:.7;font-size:18px;line-height:1;cursor:pointer;padding:0}.admin-denied-toast button:hover{opacity:1}.broadcast-banner{background:var(--sage-tint);border-bottom:1px solid var(--sage-border)}.broadcast-banner-inner{max-width:1180px;margin:0 auto;padding:12px 32px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.broadcast-banner-inner strong{font-family:var(--fraunces);font-size:14.5px;color:var(--sage-deep)}.broadcast-banner-inner p{margin:3px 0 0;font-size:13px;color:var(--text);max-width:72ch}.broadcast-banner-inner button{background:none;border:none;color:var(--sage-deep);opacity:.7;font-size:18px;line-height:1;cursor:pointer;flex:none}.broadcast-banner-inner button:hover{opacity:1}.cb-collections{margin-bottom:40px}.cb-collections-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:22px}.cb-collections-sub{max-width:58ch;margin-top:6px}.cb-collections-actions{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.cb-saved-head{margin:36px 0 4px;padding-top:20px;border-top:1px solid var(--card-border)}.cb-cook-of-month{background:linear-gradient(135deg,var(--sage-tint),transparent);border:1px solid var(--sage-border);border-radius:0;padding:20px;margin-bottom:32px}.cb-cook-of-month-label{display:flex;align-items:center;gap:12px;margin-bottom:14px}.cb-cook-of-month-crown{font-size:22px;line-height:1}.cb-cook-of-month-eyebrow{font-family:var(--mono);color:var(--sage-deep);font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:600;margin:0}.cb-cook-of-month-caption{font-family:var(--fraunces);color:var(--text);font-size:15px;margin:2px 0 0}.cb-cook-of-month-card{max-width:320px}.cb-collection{margin-bottom:34px}.cb-collection-head{margin-bottom:14px}.cb-collection-blurb{color:var(--text-mute);font-size:13.5px;margin:4px 0 0;max-width:60ch}.cb-dish-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:14px}.cb-dish-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--card-border);border-radius:0;background:var(--card);overflow:hidden;transition:border-color .14s ease}.cb-dish-card:hover{border-color:var(--card-border-strong)}.cb-dish-card:focus-within{border-color:var(--sage-border)}.cb-dish-card-main{display:flex;flex-direction:column;color:inherit;text-decoration:none}.cb-dish-card-main:focus-visible{outline:2px solid var(--sage-deep);outline-offset:-2px}.cb-dish-card-photo{position:relative;display:block;width:100%;aspect-ratio:4/3;background:var(--bg-elev)}.cb-dish-card-photo-img{object-fit:cover;width:100%;height:100%}.cb-dish-card-emoji{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;font-size:40px;background:var(--sage-tint)}.cb-dish-card-body{display:flex;flex-direction:column;gap:3px;padding:12px 14px 14px}.cb-dish-card-title{font-family:var(--fraunces);font-size:15px;color:var(--text);line-height:1.3}.cb-dish-card-meta{font-family:var(--mono);font-size:10.5px;color:var(--text-mute);letter-spacing:.2px}.cb-dish-card-line{font-size:12.5px;color:var(--sage-deep);margin-top:2px}.cb-dish-card-rating{position:absolute;top:8px;left:8px;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:100px;background:rgba(255,255,255,.9);box-shadow:0 1px 3px rgba(61,54,48,.16);font-size:13px}.cb-dish-ribbon{position:absolute;top:8px;right:8px;z-index:1;padding:3px 9px;border-radius:999px;background:var(--sage-deep);color:#fff;font-size:9.5px;font-weight:600;letter-spacing:.4px}.cb-dish-ribbon,.cb-modal-label{font-family:var(--mono);text-transform:uppercase}.cb-modal-label{display:block;font-size:11px;letter-spacing:1px;color:var(--text-mute);margin-bottom:6px}.cb-picker-list{max-height:280px;overflow-y:auto;border:1px solid var(--card-border);border-radius:0;padding:6px}.cb-picker-row{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:0;cursor:pointer}.cb-picker-row:hover{background:var(--bg-elev)}.cb-picker-row input[type=checkbox]{flex:none}.cb-picker-emoji{font-size:16px;flex:none}.cb-picker-title{flex:1;font-size:13.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cb-picker-meta{font-family:var(--mono);font-size:10.5px;color:var(--text-mute);flex:none}.cb-modal-actions{display:flex;gap:10px;margin-top:20px}.cb-export{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.meal-cookbook-rollup{font-size:13.5px;color:var(--sage-deep);margin-top:6px}.notifications-shell{max-width:720px;margin:0 auto;padding:40px 24px 80px}.notifications-head{margin-bottom:4px}.notifications-summary{color:var(--text-mute);font-size:14px;margin:0 0 28px}.notifications-empty{padding:48px 24px;text-align:center;color:var(--text-mute)}.notifications-empty,.notifications-panel{background:var(--card);border:1px solid var(--card-border);border-radius:0}.notifications-panel{overflow:hidden}.notifications-toolbar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--card-border)}.notifications-unread-count{font-size:13px;font-weight:600;color:var(--sage-deep)}.notifications-list{list-style:none;margin:0;padding:0}.notification-row{border-bottom:1px solid var(--card-border)}.notification-row:last-child{border-bottom:none}.notification-row-link{display:flex;align-items:flex-start;gap:12px;width:100%;padding:16px 20px;background:none;border:none;text-align:left;text-decoration:none;color:inherit;cursor:pointer;font:inherit;transition:background .15s}.notification-row-link:hover{background:var(--bg-elev)}.notification-row-dot{flex:none;width:8px;height:8px;margin-top:6px;border-radius:999px;background:transparent}.notification-row.is-unread .notification-row-dot{background:var(--sage)}.notification-row-body{min-width:0}.notification-row-title{font-family:var(--fraunces);font-size:15px;font-weight:600;color:var(--text);margin:0 0 3px}.notification-row.is-unread .notification-row-title{font-weight:700}.notification-row-text{font-size:13.5px;line-height:1.5;color:var(--text-mute);margin:0 0 6px}.notification-row-date{font-size:11.5px;color:var(--text-dim);margin:0}.notification-toast-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:195}.notification-toast{position:absolute;top:20px;right:20px;display:flex;align-items:flex-start;gap:12px;max-width:min(380px,calc(100vw - 32px));background:var(--card);border:1px solid var(--sage-border);border-radius:0;box-shadow:0 12px 32px rgba(0,0,0,.16);padding:14px 16px;pointer-events:auto;animation:notification-toast-in .3s cubic-bezier(.2,.7,.3,1) both}@keyframes notification-toast-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.notification-toast{animation:none}}.notification-toast-copy{flex:1;min-width:0}.notification-toast-title{font-family:var(--fraunces);font-size:14px;font-weight:600;color:var(--text);margin:0 0 2px}.notification-toast-desc{font-size:12.5px;line-height:1.4;color:var(--text-mute);margin:0}.notification-toast-link{flex:none;align-self:center;font-size:12px;font-weight:600;color:var(--sage-deep);text-decoration:none;white-space:nowrap}.notification-toast-link:hover{text-decoration:underline}.notification-prefs-list{display:flex;flex-direction:column;gap:4px}.notification-prefs-row{padding:14px 0;border-bottom:1px solid var(--card-border);align-items:flex-start}.notification-prefs-row:last-child{border-bottom:none}.waste-saved-hero{background:var(--sage-tint);border:1px solid var(--sage-border);border-left:3px solid var(--sage-deep);border-radius:0;padding:16px 18px;display:flex;flex-direction:column;gap:6px}.waste-saved-hero-head{display:flex;align-items:center;gap:6px;margin-bottom:2px}.waste-saved-hero-icon{font-size:16px;line-height:1}.waste-saved-hero-label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--sage-deep)}.waste-saved-hero-amount{font-family:var(--fraunces);font-size:17px;font-weight:600;color:var(--text);line-height:1.25}.waste-saved-hero-sub{font-size:13px;color:var(--text-mute)}.waste-saved-hero-link{font-size:12.5px;color:var(--sage-deep);text-decoration:none;font-weight:600;margin-top:4px}.waste-saved-hero-link:hover{text-decoration:underline}.expiry-dash-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;background:var(--sage-tint);border:1px solid var(--sage-border);border-left:3px solid var(--sage-deep);border-radius:0;margin-bottom:16px}.expiry-dash-banner-icon{font-size:18px;line-height:1;flex-shrink:0;margin-top:1px}.expiry-dash-banner-body{display:flex;flex-direction:column;gap:6px;min-width:0}.expiry-dash-banner-headline{font-family:var(--fraunces);font-size:15px;font-weight:600;color:var(--text)}.expiry-dash-banner-meals{list-style:none;display:flex;flex-wrap:wrap;gap:6px}.expiry-dash-banner-meal-link{display:inline-flex;align-items:center;padding:4px 10px;background:var(--bg-elev);border:1px solid var(--sage-border);border-radius:999px;font-size:12.5px;font-weight:600;color:var(--sage-deep);text-decoration:none}.expiry-dash-banner-meal-link:hover{background:var(--sage-tint-strong)}.expiry-dash-banner-swap{font-size:13px;color:var(--text-mute)}.expiry-dash-banner-swap-link{color:var(--sage-deep);font-weight:600;text-decoration:none}.expiry-dash-banner-swap-link:hover{text-decoration:underline}.freeze-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;background:var(--bg-elev);border:1px solid var(--sage-border);border-radius:999px;font-size:11.5px;font-weight:600;color:var(--sage-deep);cursor:pointer;line-height:1.4;white-space:nowrap;margin-top:4px;align-self:flex-start}.freeze-chip:hover:not(:disabled){background:var(--sage-tint);border-color:var(--sage-deep)}.freeze-chip:focus-visible{outline:2px solid var(--sage-deep);outline-offset:2px}.freeze-chip:disabled{opacity:.5;cursor:not-allowed}.hover\:border-charcoal:hover{border-color:var(--charcoal)}.hover\:border-sage-border:hover{border-color:var(--sage-border)}.hover\:bg-charcoal:hover{background-color:var(--charcoal)}.hover\:bg-cream-2:hover{background-color:var(--cream-2)}.hover\:bg-crisp-sage-dark:hover{background-color:var(--crisp-sage-dark)}.hover\:bg-sage-tint:hover{background-color:var(--sage-tint)}.hover\:text-charcoal:hover{color:var(--charcoal)}.hover\:text-sage-deep:hover{color:var(--sage-deep)}.hover\:text-text:hover{color:var(--text)}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\:opacity-100:focus-visible{opacity:1}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-clay:focus-visible{--tw-ring-color:var(--clay)}.focus-visible\:ring-crisp-clay:focus-visible{--tw-ring-color:var(--crisp-clay)}.focus-visible\:ring-crisp-sage:focus-visible{--tw-ring-color:var(--crisp-sage)}.focus-visible\:ring-sage-deep:focus-visible{--tw-ring-color:var(--sage-deep)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-bg:focus-visible{--tw-ring-offset-color:var(--bg)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-55:disabled{opacity:.55}