/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.lowercase{text-transform:lowercase}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.invert{--tw-invert:invert(100%);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,)}.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,)}}:root{--ink:#24312b;--muted:#414a42;--paper:#cdc4b0;--rail:#232b26;--card:#fffdf8;--sage:#668274;--sage-dark:#47665a;--line:#efe9db;--peach:#f2b99d;--blue:#a8c7c6;--lav:#c7bdd7;--gold:#e8c985}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #a8c7c6}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:500;line-height:1.02}h2{font-size:1.25rem}.app-shell{min-height:100vh}.sidebar{background:linear-gradient(180deg,#2b332d 0%,var(--rail) 100%);z-index:10;border-right:1px solid #39443d;flex-direction:column;width:248px;padding:30px 22px 22px;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden}.sidebar:after{content:"";pointer-events:none;border:1px solid #3c473f;border-radius:50%;width:170px;height:170px;position:absolute;bottom:145px;left:-95px}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#fffefa;background:linear-gradient(145deg,#59776a,#385348);border-radius:13px;flex:none;place-items:center;width:38px;height:38px;display:grid;transform:rotate(-3deg);box-shadow:0 8px 18px #3450442b,inset 0 1px #ffffff38}.brand-mark svg{width:23px;height:23px}.brand strong{letter-spacing:.16em;font-size:1rem;display:block}.brand small{color:var(--muted);margin-top:1px;font-size:.72rem;display:block}.sidebar .brand strong{color:#f4f1e8}.sidebar .brand small{color:#9aa79f}.sidebar nav{z-index:1;gap:7px;margin-top:50px;display:grid;position:relative}.sidebar nav button{text-align:left;cursor:pointer;color:#c4cec6;background:0 0;border:1px solid #0000;border-radius:15px;align-items:center;gap:11px;min-height:50px;padding:7px 10px;transition:transform .2s,background .2s,border-color .2s,color .2s,box-shadow .2s;display:flex;position:relative}.sidebar nav button:before{content:"";background:var(--gold);border-radius:99px;width:3px;height:0;transition:height .2s;position:absolute;left:-11px}.sidebar nav button:hover{color:#fff;background:#ffffff12;transform:translate(2px)}.sidebar nav button.active{color:#26302a;background:#f4f1e8;border-color:#0000;font-weight:750;box-shadow:0 8px 22px #0f161333}.sidebar nav button.active:before{height:24px}.nav-icon{color:#aab6ae;background:#ffffff10;border-radius:11px;flex:0 0 34px;place-items:center;width:34px;height:34px;transition:transform .2s,background .2s,color .2s;display:grid}.sidebar nav button:hover .nav-icon{color:#fff;transform:scale(1.04)}.sidebar nav button.active .nav-icon{color:#2d4a3d;background:#dbe6db;box-shadow:inset 0 0 0 1px #c8d8c8}.nav-label{min-width:0}.sidebar-note{z-index:1;color:#c3cdc5;background:#ffffff0f;border:1px solid #414c44;border-radius:16px;gap:10px;margin-top:auto;padding:16px;font-size:.77rem;display:flex;position:relative}.sidebar-note strong{color:#f0ece0}.sidebar-note>span{width:27px;height:27px;color:var(--gold);background:#4a4028;border-radius:9px;align-self:flex-start;place-items:center;display:grid}.sidebar-note p{margin:0}.profile-chip{z-index:1;color:#e7e3d8;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #414c44;align-items:center;gap:11px;margin-top:16px;padding:18px 4px 0;transition:transform .2s,color .2s;display:flex;position:relative}.profile-chip:hover{color:#fff;transform:translate(2px)}.profile-chip>span{background:#d0bca3;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.profile-chip small{color:#9aa79f;display:block}main{background:radial-gradient(120% 90% at 0% 0%,#e6ddc9 0%,var(--paper) 55%,#c5bca8 100%) fixed;min-height:100vh;margin-left:248px}.view-stage{animation:.36s cubic-bezier(.2,.72,.25,1) both view-enter}.page{max-width:1120px;margin:0 auto;padding:52px 50px 90px}.page-header{justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:36px;display:flex}.page-header h1{margin-bottom:10px;position:relative}.page-header h1:after{content:"";background:linear-gradient(90deg,var(--peach),var(--gold));border-radius:99px;width:38px;height:3px;margin-top:15px;display:block}.page-header p:not(.date){color:var(--muted);max-width:660px}.date,.eyebrow{color:#8a6b52;letter-spacing:.13em;text-transform:uppercase;margin-bottom:12px;font-size:.72rem;font-weight:800}.primary,.secondary{cursor:pointer;border:1px solid #0000;border-radius:12px;padding:11px 17px;font-weight:700;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s}.primary{color:#fff;background:linear-gradient(145deg,#527365,#3f5e52);box-shadow:0 8px 18px #304a3e24,inset 0 1px #ffffff2e}.primary:hover{background:linear-gradient(145deg,#49695c,#354f44);transform:translateY(-1px);box-shadow:0 11px 23px #304a3e2d,inset 0 1px #ffffff2e}.secondary{background:var(--card);border-color:#d8ddd7;box-shadow:0 3px 10px #344a3d0b}.secondary:hover{background:#fff;border-color:#bbc9bd;transform:translateY(-1px);box-shadow:0 8px 18px #344a3d13}.primary:active,.secondary:active{transform:translateY(0)}.text-button,.skip,.danger-text{cursor:pointer;color:var(--sage-dark);background:0 0;border:0;text-decoration:underline}.section-heading{justify-content:space-between;align-items:center;margin:28px 0 18px;display:flex}.section-heading h2{margin-bottom:2px;font:500 1.65rem Georgia,serif}.section-heading p{color:var(--muted);margin:0;font-size:.76rem}.category{text-transform:uppercase;letter-spacing:.08em;border-radius:99px;padding:3px 8px;font-size:.6rem;font-weight:800;display:inline-block}.category.meal{color:#83573e;background:#f4d4bd}.onboarding{background:radial-gradient(circle at 8% 18%,#dce8dc 0 11%,#0000 28%),radial-gradient(circle at 94% 85%,#f1d8c9 0 10%,#0000 29%),linear-gradient(130deg,#edf2e9 0%,#f7f6f0 48%,#f6ebe3 100%);min-height:100vh;padding:24px;overflow:hidden}.onboarding>header{justify-content:space-between;align-items:center;max-width:1020px;margin:0 auto;display:flex}.signin-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaed;border:1px solid #fff;border-radius:30px;max-width:480px;margin:10vh auto 30px;padding:38px 42px 30px;box-shadow:0 26px 80px #43524821}.signin-card form p,.signin-sent p{color:var(--muted);margin:0 0 6px;font-size:.86rem;line-height:1.6}.signin-card form .primary{width:100%;margin-top:6px}.signin-sent{gap:12px;margin-top:14px;display:grid}.signin-sent:focus{outline:none}.signin-sent:focus-visible{outline:2px solid var(--sage-dark);outline-offset:6px;border-radius:12px}.signin-sent .secondary{justify-self:start}.signin-devlink a{color:var(--sage-dark);font-weight:700}.signin-error{color:#7e5138;background:#f8ede5;border-left:3px solid #c98a6b;border-radius:0 10px 10px 0;margin:12px 0 0;padding:11px 13px;font-size:.74rem;line-height:1.5}.signin-note{border-top:1px solid var(--line);color:var(--sage-dark);align-items:center;gap:8px;margin:22px 0 0;padding-top:18px;font-size:.72rem;font-weight:700;display:flex}.signin-switch{background:#eff2ec;border-radius:99px;gap:6px;margin-bottom:18px;padding:4px;display:flex}.signin-switch button{color:var(--sage-dark);cursor:pointer;background:0 0;border:0;border-radius:99px;flex:1;padding:9px 12px;font-size:.78rem;font-weight:700}.signin-switch button.selected{color:#365849;background:#fff;box-shadow:0 2px 6px #43524814}.password-field{display:block;position:relative}.password-field input{padding-right:66px}.password-field button{min-width:56px;height:44px;color:var(--sage-dark);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0 10px;font-size:.7rem;font-weight:800;display:flex;position:absolute;bottom:0;right:2px}.password-field button:hover{background:#eef2ec}.signin-hint{margin:-6px 0 10px!important;font-size:.72rem!important}.signin-alternate{text-align:center;margin:14px 0 0!important}.signin-alternate .text-button{font-size:.8rem;line-height:1.5}.account-prompt{background:#eef4ec;border:1px solid #cfdfcd;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;padding:16px 20px;display:flex}.account-prompt strong{color:#2f4a3c;font-size:.92rem}.account-prompt p{color:var(--muted);max-width:56ch;margin:3px 0 0;font-size:.78rem;line-height:1.5}.account-prompt-actions{align-items:center;gap:14px;display:flex}.password-settings{border:1px solid var(--line);background:#fbfbf7;border-radius:16px;margin:20px 0 24px;padding:20px 22px}.password-settings h3{margin:0;font:500 1.1rem Georgia,serif}.password-settings>p{color:var(--muted);margin:6px 0 0;font-size:.78rem;line-height:1.55}.password-settings .password-note{color:var(--sage-dark);font-weight:700}.password-settings .primary{margin-top:4px}.password-settings .signin-error{font-size:.76rem}.onboard-shell{max-width:840px;margin:4vh auto 30px}.onboard-step-label{color:var(--sage-dark);justify-content:space-between;align-items:end;margin:0 8px 11px;display:flex}.onboard-step-label span{letter-spacing:.09em;text-transform:uppercase;font-size:.64rem;font-weight:850}.onboard-step-label small{color:#77847d;font-size:.66rem}.onboard-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaed;border:1px solid #fff;border-radius:30px;padding:38px 50px 26px;position:relative;overflow:hidden;box-shadow:0 26px 80px #43524821}.onboard-stage{animation:.42s cubic-bezier(.22,.75,.25,1) both onboard-in}.direction-back .onboard-stage{animation-name:onboard-in-back}.onboard-card section{min-height:390px}.onboard-card h1{margin-bottom:14px;font-size:3rem}.onboard-card .step-intro{max-width:650px;color:var(--muted);margin:0 0 22px;font-size:.86rem;line-height:1.6}.lead{color:var(--muted);max-width:570px;margin-bottom:32px;font-size:1.08rem}.progress{grid-template-columns:repeat(5,1fr);gap:7px;margin:0 8px 13px;display:grid}.progress span{background:#dce0da;border-radius:9px;height:4px;transition:background .35s}.progress span.filled{background:var(--sage)}.benefit-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0 25px;display:grid}.benefit-grid article{background:#fbfaf5;border:1px solid #e0e4dc;border-radius:16px;padding:17px}.benefit-grid article span{color:#af7156;margin-bottom:12px;font:600 .7rem Georgia,serif;display:block}.benefit-grid strong{font:600 1rem Georgia,serif;display:block}.benefit-grid p{color:var(--muted);margin:6px 0 0;font-size:.7rem;line-height:1.5}.time-note{color:var(--sage-dark);align-items:center;gap:10px;margin:0;font-size:.76rem;font-weight:750;display:flex}.time-note span{background:#dfeadf;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.why-note{color:#627168;background:#f0f5ed;border-left:3px solid #9db59f;border-radius:0 10px 10px 0;margin:22px 0 0;padding:12px 14px;font-size:.7rem;line-height:1.5}.why-note strong{color:var(--sage-dark)}.preference-caveat{color:#7d6a3f;background:#fdf9ef;border-left:3px solid #d9c89a;border-radius:0 8px 8px 0;margin:8px 0 0;padding:9px 11px;font-size:.67rem;line-height:1.5}.ready-note{background:linear-gradient(135deg,#edf5e9,#faf5e7);border:1px solid #cddcca;border-radius:15px;align-items:flex-start;gap:13px;margin-top:22px;padding:16px;display:flex}.ready-note>span{background:var(--sage-dark);color:#fff;border-radius:50%;flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:.75rem;display:grid}.ready-note strong{font:600 1rem Georgia,serif}.ready-note p{color:var(--muted);margin:4px 0 0;font-size:.7rem;line-height:1.5}label,fieldset{color:#58665f;border:0;margin:18px 0;padding:0;font-size:.76rem;font-weight:700;display:block}input,textarea,select{width:100%;color:var(--ink);background:#fff;border:1px solid #d9ded8;border-radius:11px;margin-top:7px;padding:12px 13px;display:block}textarea{resize:vertical;min-height:90px}.field-grid{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.choice-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.choice-row button{cursor:pointer;background:#fff;border:1px solid #d9ded8;border-radius:99px;padding:9px 14px;font-size:.78rem}.choice-row button.selected{color:#365849;background:#dfeadf;border-color:#a9c2af;font-weight:700}.onboard-card footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:22px;display:flex}.onboard-card footer .primary{align-items:center;gap:10px;display:flex}.onboard-card footer .primary span{font-size:1rem;line-height:1}.onboard-card .skip{margin:14px auto 0;font-size:.72rem;display:block}@keyframes onboard-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes onboard-in-back{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.onboard-stage{animation:none}.progress span{transition:none}}.meal-personalization{background:linear-gradient(135deg,#f7f5eb,#edf3e8);border:1px solid #dbe3d8;border-radius:20px;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);align-items:center;gap:24px;margin-bottom:24px;padding:22px 24px;display:grid}.meal-personalization h2{margin:5px 0 6px;font:500 1.45rem Georgia,serif}.meal-personalization p{color:var(--muted);margin:0;font-size:.79rem}.budget-meter{background:#fffdf7;border:1px solid #e3e1d6;border-radius:15px;padding:16px 18px}.budget-meter small{color:#7e8a83;letter-spacing:.08em;font-size:.6rem;font-weight:800}.budget-meter strong{color:var(--sage-dark);margin:5px 0 3px;font:500 1.55rem Georgia,serif;display:block}.budget-meter strong span{color:#8b958f;font:.7rem system-ui,sans-serif}.budget-meter.over-target strong{color:#9b6354}.plan-cost-card{min-width:270px}.plan-cost-card>strong{margin:7px 0 2px;font-size:2rem}.plan-cost-card>p{color:#66736c;margin:3px 0;font-size:.7rem}.plan-cost-card .cost-per-serving{color:#3f5d4e;font-weight:750}.plan-cost-card .budget-status{color:#3d6249;background:#e7f0e4;border:1px solid #c4d8c3;border-radius:10px;margin-top:11px;padding:7px 9px;font-size:.64rem;font-weight:750;line-height:1.35;display:block}.plan-cost-card.below .budget-status{color:#466874;background:#e8f1f3;border-color:#c8d9df}.plan-cost-card.above>strong{color:#9b6354}.plan-cost-card.above .budget-status{color:#8a5038;background:#f8e9df;border-color:#dfc4b5}.meal-feature-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.meal-card{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}.meal-card>div:last-child{padding:20px}.meal-card h2{margin:10px 0 7px;font:500 1.3rem Georgia,serif}.meal-card p{color:var(--muted);font-size:.8rem}.meal-card h3{text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:.7rem}.meal-card .meal-reason{color:#65716a;background:#f6f5ee;border-radius:10px;min-height:64px;margin:12px 0;padding:10px 11px}.meal-reason strong{color:var(--sage-dark)}.meal-visual{isolation:isolate;color:#fff;background:radial-gradient(circle at 65% 35%,#fff9 0 20%,#0000 21%),linear-gradient(135deg,#e4d6c0,#f2b99d);justify-content:space-between;align-items:flex-end;height:180px;padding:18px;display:flex;position:relative;overflow:hidden}.meal-1{background:radial-gradient(circle at 65% 35%,#fff9 0 20%,#0000 21%),linear-gradient(135deg,#cdddbf,#a8c7c6)}.meal-2{background:radial-gradient(circle at 65% 35%,#fff9 0 20%,#0000 21%),linear-gradient(135deg,#decaa9,#c7bdd7)}.meal-visual:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#0000,#17231dcc);position:absolute;inset:38% 0 0}.meal-visual img{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.meal-visual span{text-transform:uppercase;letter-spacing:.1em;text-shadow:0 1px 8px #17231d;font-size:.68rem;font-weight:800}.meal-visual b{color:#3f4c45;background:#fffdeee6;border-radius:99px;padding:5px 8px;font-size:.67rem;box-shadow:0 2px 8px #17231d33}.ingredients{min-height:56px}.tag-row{flex-wrap:wrap;gap:5px;display:flex}.tag-row span{background:#f1f1eb;border-radius:99px;padding:4px 7px;font-size:.62rem}.recipe-shelf{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.recipe-shelf div{background:var(--card);border:1px solid var(--line);border-radius:12px;justify-content:space-between;padding:14px 16px;font-size:.78rem;display:flex}.recipe-shelf span{color:var(--muted)}.recipe-details{border-top:1px solid #edeee8;margin:14px 0 12px;padding-top:11px}.recipe-details summary{color:var(--sage-dark);cursor:pointer;font-size:.74rem;font-weight:800}.recipe-details ol,.recipe-book ol{color:var(--muted);margin:10px 0 0;padding-left:19px;font-size:.75rem}.recipe-details li,.recipe-book li{margin-bottom:6px}.weekly-plan{gap:8px;display:grid}.weekly-plan article{border:1px solid var(--line);background:var(--card);border-radius:16px;grid-template-columns:105px repeat(3,minmax(0,1fr));align-items:center;gap:14px;padding:14px 17px;font-size:.78rem;display:grid}.weekly-plan article>strong{color:#4a5a51;align-self:start;padding-top:6px;font:500 1.05rem Georgia,serif}.weekly-plan article div{min-width:0}.weekly-plan article div span{color:#8a958e;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:.58rem;font-weight:800;display:block}.meal-tools{align-items:start;gap:18px;margin-top:34px;display:grid}.grocery-card,.recipe-book{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:23px}.tool-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:16px;display:flex}.tool-heading .date{margin-bottom:6px}.tool-heading h2{margin-bottom:2px;font:500 1.5rem Georgia,serif}.tool-heading p:not(.date){color:var(--muted);margin:0;font-size:.72rem}.grocery-list{grid-template-columns:1fr 1fr;gap:7px;display:grid}.grocery-list label{cursor:pointer;background:#f7f7f2;border-radius:10px;align-items:center;gap:9px;margin:0;padding:9px 10px;display:flex}.grocery-list input{width:16px;height:16px;accent-color:var(--sage-dark);margin:0}.grocery-list label>span{min-width:0}.grocery-list strong{text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;font-size:.73rem;display:block;overflow:hidden}.grocery-list small{color:#8b958f;font-size:.61rem;font-weight:500;display:block}.grocery-list label.checked{opacity:.55}.grocery-list label.checked strong{text-decoration:line-through}.cost-disclaimer{color:#8a958e;margin:14px 0 0;font-size:.63rem;line-height:1.45}.cart-summary{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px;display:grid}.cart-summary>div{border:1px solid var(--line);background:var(--card);border-radius:14px;gap:3px;padding:15px 16px;display:grid}.cart-summary small{color:#8a958e;letter-spacing:.09em;font-size:.57rem;font-weight:800}.cart-summary strong{text-transform:capitalize;font:500 1.15rem Georgia,serif}.cart-summary span{color:var(--muted);font-size:.66rem}.cart-layout{grid-template-columns:minmax(0,1.5fr) minmax(270px,.5fr);align-items:start;gap:18px;display:grid}.cart-list-card,.cart-handoff{border:1px solid var(--line);background:var(--card);border-radius:20px;padding:23px}.cart-lines{gap:7px;display:grid}.cart-lines article{background:#f7f7f2;border-radius:12px;grid-template-columns:minmax(0,1fr) auto 105px;align-items:center;gap:14px;padding:11px 12px;display:grid}.cart-lines article.excluded{opacity:.55}.cart-include{align-items:center;gap:10px;min-width:0;margin:0;display:flex}.cart-include input{width:17px;height:17px;accent-color:var(--sage-dark);flex:0 0 17px;margin:0}.cart-include span{min-width:0}.cart-include strong{text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;font-size:.78rem;display:block;overflow:hidden}.cart-include small{color:#8b958f;margin-top:2px;font-size:.62rem;font-weight:500;display:block}.quantity-control{background:#fff;border:1px solid #dce0da;border-radius:9px;align-items:center;display:flex;overflow:hidden}.quantity-control button{cursor:pointer;background:0 0;border:0;width:28px;height:29px}.quantity-control span{text-align:center;min-width:23px;font-size:.73rem;font-weight:700}.cart-lines a{color:var(--sage-dark);text-align:right;font-size:.68rem;font-weight:800;text-decoration:none}.cart-handoff{background:linear-gradient(145deg,#f7f3e7,#edf2e8);position:sticky;top:22px}.cart-handoff h2{margin:8px 0;font:500 1.65rem Georgia,serif}.cart-handoff>p{color:var(--muted);font-size:.78rem;line-height:1.55}.cart-handoff dl{gap:9px;margin:20px 0;display:grid}.cart-handoff dl div{border-bottom:1px solid #dfe3da;justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}.cart-handoff dt{color:#7c8881;font-size:.67rem}.cart-handoff dd{text-align:right;text-transform:capitalize;margin:0;font-size:.7rem;font-weight:800}.cart-handoff .primary{width:100%}.cart-handoff button:disabled{cursor:not-allowed;opacity:.5}.cart-handoff>small{color:#7d8781;margin-top:12px;font-size:.62rem;line-height:1.45;display:block}.check-label{align-items:center;gap:9px;min-height:47px;padding-top:17px;display:flex}.check-label input{width:17px;height:17px;accent-color:var(--sage-dark);margin:0}.recipe-book>details{border-top:1px solid #e9ebe5;padding:12px 0}.recipe-book>details:last-child{padding-bottom:0}.recipe-book>details summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;list-style:none;display:flex}.recipe-book>details summary::-webkit-details-marker{display:none}.recipe-book summary span{display:block}.recipe-book summary strong{font-size:.8rem;display:block}.recipe-book summary small{color:var(--muted);margin-top:2px;font-size:.64rem;font-weight:500;display:block}.recipe-book summary>b{color:var(--sage);font-size:1.2rem}.recipe-book details[open] summary>b{transform:rotate(45deg)}.recipe-book details>p{color:var(--muted);margin:11px 0;font-size:.74rem}.recipe-book details h3{letter-spacing:.08em;text-transform:uppercase;margin:12px 0 4px;font-size:.65rem}.recipe-processing{border-radius:10px;gap:3px;margin:12px 0;padding:10px 11px;font-size:.68rem;display:grid}.recipe-processing strong{font-size:.72rem}.recipe-processing span{color:var(--muted);line-height:1.4}.recipe-processing.clear{color:#365c4b;background:#edf4ec}.recipe-processing.watch{color:#765d2d;background:#faf2dc}.food-focus-banner{background:linear-gradient(135deg,#edf4e9,#faf4df);border:1px solid #d8dfd4;border-radius:18px;justify-content:space-between;align-items:center;gap:22px;margin:0 0 22px;padding:20px 22px;display:flex}.food-focus-banner h2{margin:5px 0;font:500 1.25rem Georgia,serif}.food-focus-banner p{color:var(--muted);margin:0;font-size:.77rem}.focus-count{text-align:center;min-width:100px;font:500 1rem Georgia,serif}.focus-count small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font:600 .62rem system-ui,sans-serif}.quality-goal{border:1px solid var(--line);background:var(--card);border-radius:13px;gap:4px;min-width:160px;padding:13px 15px;display:grid}.quality-goal small{color:#8a958e;letter-spacing:.09em;font-size:.58rem;font-weight:800}.quality-goal strong{text-transform:capitalize;font-size:.78rem}.food-check-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.food-check-card{border:1px solid var(--line);background:var(--card);border-radius:20px;padding:24px;position:relative}.food-check-card h2{margin:5px 0;font:500 1.45rem Georgia,serif}.food-check-card>p:not(.date){color:var(--muted);font-size:.76rem}.food-check-card textarea{resize:vertical;min-height:92px}.food-check-card button{margin-top:14px}.food-check-card button:disabled{cursor:not-allowed;opacity:.45}.step-number{width:30px;height:30px;color:var(--sage-dark);background:#edf1e9;border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid;position:absolute;top:20px;right:22px}.food-lookup-error{color:#7c3f3a;background:#fff0ed;border:1px solid #e7bbb5;border-radius:10px;margin:14px 0 0;padding:11px 13px;font-size:.75rem}.assessment-card{border:1px solid var(--line);background:var(--card);border-left-width:5px;border-radius:20px;margin-top:18px;padding:24px}.assessment-card.nova-4{border-left-color:#bb705d}.assessment-card.nova-3{border-left-color:#d1a64e}.assessment-card.nova-1,.assessment-card.nova-2{border-left-color:#5e8b70}.assessment-card.nova-unknown{border-left-color:#9aa39d}.assessment-title{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.assessment-title h2{margin:5px 0;font:500 1.55rem Georgia,serif}.assessment-title p{color:var(--muted);margin:0;font-size:.72rem}.assessment-title>strong{text-align:center;background:#f0f1eb;border-radius:99px;max-width:190px;padding:8px 11px;font-size:.7rem}.assessment-body{grid-template-columns:1fr 1fr;gap:18px;margin:20px 0;display:grid}.assessment-body>div{background:#f7f7f2;border-radius:12px;padding:14px}.assessment-body h3{text-transform:uppercase;letter-spacing:.06em;margin:0 0 7px;font-size:.71rem}.assessment-body p,.assessment-body li{color:var(--muted);font-size:.74rem;line-height:1.5}.assessment-body ul{margin:0;padding-left:17px}.assessment-actions{flex-wrap:wrap;gap:9px;display:flex}.source-note{color:#89928d;margin-top:12px;font-size:.6rem;display:block}.match-summary{color:#40634d;background:#edf5ed;border:1px solid #bcd2c1;border-radius:10px;margin:14px 0 0;padding:11px 13px;font-size:.75rem;font-weight:700}.food-library{margin-top:34px}.saved-foods{gap:9px;display:grid}.saved-foods article{border:1px solid var(--line);background:var(--card);border-radius:14px;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.saved-foods article.focused{background:#f3f7ee;border-color:#aabd9f}.saved-foods h3{margin:7px 0 2px;font:500 1.05rem Georgia,serif}.saved-foods p{color:var(--muted);margin:0;font-size:.67rem}.nova-pill{color:#66736c;text-transform:uppercase;letter-spacing:.04em;background:#eef0eb;border-radius:99px;padding:4px 7px;font-size:.57rem;font-weight:800;display:inline-block}.nova-pill.nova-4{color:#8a4c3f;background:#f8e5df}.nova-pill.nova-1,.nova-pill.nova-2{color:#40664f;background:#e6f1e8}.nova-pill.nova-3{color:#765d2d;background:#f8efd8}.saved-actions{align-items:center;gap:10px;display:flex}.empty-foods{text-align:center;color:var(--muted);border:1px dashed #ccd3cc;border-radius:16px;padding:34px}.empty-foods>span{color:var(--sage);font-size:1.8rem}.empty-foods h3{color:var(--ink);margin:8px 0 3px}.empty-foods p{margin:0;font-size:.75rem}.quality-disclaimer{color:#7b8680;text-align:center;max-width:700px;margin:18px auto 0;font-size:.65rem;line-height:1.5}.quality-hint{font-weight:700!important}.quality-hint.clear{color:#527863!important}.quality-hint.watch{color:#9a7333!important}.food-preferences{margin-bottom:0}.auto-pick-banner{background:linear-gradient(135deg,#eaf3e7,#f8f2df);border:1px solid #ccdcca;border-radius:20px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;padding:22px 24px;display:flex}.auto-pick-banner h2{margin:5px 0;font:500 1.35rem Georgia,serif}.auto-pick-banner p{max-width:700px;color:var(--muted);margin:0;font-size:.74rem;line-height:1.5}.auto-pick-banner .primary{white-space:nowrap}.auto-pick-banner .primary:disabled{cursor:wait;opacity:.65}.cart-lines article.product-selected{background:#f5f8f1;border:1px solid #d5e1d2}.product-pick{background:#eaf2e6;border-radius:10px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;margin:2px 0 0 27px;padding:10px 12px;display:flex}.product-pick>div{min-width:0}.product-pick strong{color:#304e41;margin:3px 0 2px;font-size:.75rem;display:block}.product-pick small{color:#69766f;font-size:.6rem;line-height:1.4;display:block}.product-pick.pending{color:#7d693f;background:#f7f1e1;font-size:.68rem}.best-pick{color:#4d725e;letter-spacing:.1em;font-size:.53rem;font-weight:900}.product-pick .text-button{flex:none;font-size:.62rem}.profile-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.settings-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:23px}.settings-card.wide{grid-column:1/-1}.settings-card h2{font:500 1.35rem Georgia,serif}.danger-text{color:#9b514d;margin-top:24px}.profile-save-actions{background:#f3f7ee;border:1px solid #cbd8ca;border-radius:16px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:24px;padding:18px 22px;display:flex}.profile-save-actions strong{font:600 1.05rem Georgia,serif}.profile-save-actions p{color:var(--muted);margin:4px 0 0;font-size:.7rem}.section-save-control{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.profile-save-actions .section-save-control{flex:none;align-items:flex-end}.section-save-status{min-height:1.2em;font-weight:750;color:#42624f!important;margin:0!important;font-size:.68rem!important}.grocery-save-control{margin-top:14px}.section-save-control button[aria-disabled=true]{cursor:wait;opacity:.65}.profile-extras{margin-top:-55px;padding-top:0}.retailer-preferences,.retailer-preferences+.profile-extras{margin-top:-50px}.field-error{font-size:.73rem;font-weight:700;color:#a24e47!important;margin:-8px 0 10px!important}.error-banner{z-index:40;color:#7c3f3a;background:#fff0ed;border:1px solid #e7bbb5;border-radius:12px;padding:11px 15px;position:fixed;top:16px;left:50%;transform:translate(-40%);box-shadow:0 8px 20px #0001}.error-banner button{cursor:pointer;background:0 0;border:0;margin-left:15px;text-decoration:underline}.save-toast{z-index:40;color:#fff;background:#304e41;border-radius:99px;padding:9px 16px;font-size:.75rem;position:fixed;top:18px;right:22px}.center-state{text-align:center;min-height:100vh;color:var(--muted);place-content:center;display:grid}.loader{border:3px solid #d8e1da;border-top-color:var(--sage);border-radius:50%;width:34px;height:34px;margin:0 auto 12px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.mobile-nav{display:none}@media (width<=900px){.sidebar{width:205px}.sidebar .brand small,.sidebar-note{display:none}main{margin-left:205px}.page{padding:40px 28px 85px}.meal-personalization,.meal-feature-grid{grid-template-columns:1fr}.meal-card{grid-template-columns:180px 1fr;display:grid}.meal-visual{height:100%}.weekly-plan article{grid-template-columns:90px 1fr}.weekly-plan article>div{grid-column:2}.meal-tools,.cart-layout{grid-template-columns:1fr}.cart-summary{grid-template-columns:1fr 1fr}.cart-handoff{position:static}.profile-grid{grid-template-columns:1fr}}@media (width<=650px){h1{font-size:2.35rem}.sidebar{display:none}main{margin-left:0}.page{padding:28px 16px 95px}.mobile-nav{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:8px 8px max(8px,env(safe-area-inset-bottom));background:#232b26f2;border-top:1px solid #ffffff1f;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#ffffffb0;cursor:pointer;background:0 0;border:0;gap:1px;font-size:.65rem;display:grid}.mobile-nav button span{font-size:1.2rem}.mobile-nav button.active{color:#26302a;font-weight:800}.page-header{display:block}.profile-page .page-header .primary,.meals-page .page-header .primary{margin-top:12px}.onboarding{padding:16px}.onboard-card{margin-top:4vh;padding:30px 22px 22px}.onboard-card section{min-height:430px}.onboard-card h1{font-size:2.35rem}.field-grid{grid-template-columns:1fr}.meal-card{display:block}.meal-visual{height:120px}.weekly-plan article{grid-template-columns:1fr;gap:8px}.weekly-plan article>div{grid-column:auto}.grocery-card,.recipe-book,.cart-list-card,.cart-handoff{padding:18px}.grocery-list,.cart-summary{grid-template-columns:1fr}.cart-lines article{grid-template-columns:minmax(0,1fr) auto}.cart-lines a{text-align:left;grid-column:1/-1;padding-left:27px}.recipe-shelf{grid-template-columns:1fr}.recipe-shelf div{gap:4px;display:grid}.profile-grid{display:block}.profile-save-actions{display:grid}.profile-save-actions .section-save-control{align-items:flex-start}.settings-card{margin-bottom:14px}.error-banner{left:16px;right:16px;transform:none}.save-toast{top:auto;bottom:82px}}@media (width<=900px){.food-check-grid{grid-template-columns:1fr}}@media (width<=650px){.quality-goal{margin-top:12px}.food-focus-banner,.assessment-title,.saved-foods article{flex-direction:column;align-items:flex-start}.assessment-body{grid-template-columns:1fr}.saved-actions{flex-wrap:wrap;width:100%}.food-check-card,.assessment-card{padding:19px}.auto-pick-banner{flex-direction:column;align-items:flex-start}.auto-pick-banner .primary{width:100%}.product-pick{flex-direction:column;align-items:flex-start;margin-left:0}.product-pick .text-button{padding:0}}.retailer-connect{text-align:center;text-decoration:none;display:block}.retailer-message{background:#fffefa;border-radius:9px;padding:9px 10px;font-weight:700;color:var(--sage-dark)!important;margin:12px 0 0!important}.basket-preview{background:#fffefa;border:1px solid #d8ddd4;border-radius:13px;margin:15px 0;padding:14px}.basket-preview.within{background:#f6faf2;border-color:#b7cbb6}.basket-preview.over{background:#fff5f1;border-color:#dfb6aa}.basket-preview>small{color:#7d8781;text-transform:uppercase;letter-spacing:.05em;font-size:.62rem;font-weight:700;display:block}.basket-preview>strong{margin-top:3px;font:600 1.55rem Georgia,serif;display:block}.basket-preview>span{color:var(--muted);margin-top:2px;font-size:.67rem;display:block}.basket-preview>p{color:var(--sage-dark);margin:9px 0 0;font-size:.7rem;font-weight:750;line-height:1.4}.basket-preview.over>p{color:#924733}.basket-preview>p.reconcile-note,.basket-preview.over>p.reconcile-note{color:#6f6144;background:#fdfaf1;border:1px solid #e3d3ab;border-radius:11px;margin-top:11px;padding:11px 12px;font-size:.68rem;font-weight:550;line-height:1.55}.basket-preview p.reconcile-note strong{color:#7d6a3f;margin-bottom:4px;font-weight:800;display:block}.cart-include .retailer-package{color:var(--sage-dark);font-weight:700}.cart-lines article.line-trouble{background:#fffdf7;border-color:#e3c9a8}.product-pick.unavailable{background:#fdf7ec;border:1px solid #e3c9a8;border-radius:11px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:9px;padding:10px 12px;display:flex}.product-pick.unavailable span{color:#7d6242;flex:190px;font-size:.7rem;font-weight:700}.budget-remedy{background:#fffaf7;border:1px solid #e4c3b6;border-radius:11px;margin-top:11px;padding:11px 12px}.budget-remedy>strong{color:#8c4630;font-size:.72rem;font-weight:800;display:block}.budget-remedy>p{color:#6f6257;margin:8px 0 0;font-size:.67rem;font-weight:500;line-height:1.5}.budget-remedy-actions{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.budget-remedy-actions button{color:#8c4630;cursor:pointer;background:#fff;border:1px solid #cf9e8b;border-radius:9px;min-height:38px;padding:0 13px;font-size:.68rem;font-weight:750}.budget-remedy-actions button:hover:not(:disabled){background:#fdf0ea}.budget-remedy-actions button:disabled{opacity:.55;cursor:default}.budget-remedy-context{border-top:1px solid #f0ded5;padding-top:8px;margin-top:10px!important}.budget-remedy-context .text-button{font-size:.67rem}.basket-preview details{border-top:1px solid #dfe3da;margin-top:10px;padding-top:8px}.basket-preview summary{color:var(--sage-dark);cursor:pointer;font-size:.68rem;font-weight:800}.priced-lines{margin:8px 0 0;padding:0;list-style:none}.priced-lines li{border-bottom:1px solid #e9ece5;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:1px 10px;padding:8px 0;display:grid}.priced-lines li:last-child{border-bottom:0;padding-bottom:0}.priced-name{color:#3f4a42;overflow-wrap:anywhere;min-width:0;font-size:.68rem;font-weight:600;line-height:1.4}.priced-name b{font-weight:800}.priced-cost{color:#31473b;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.7rem;font-weight:800}.priced-cost.missing{color:#a4614a;font-size:.62rem;font-weight:750}.priced-lines small{color:#8b948c;grid-column:1/-1;margin-top:1px;font-size:.6rem}.handoff-actions{gap:8px;display:grid}.handoff-actions .secondary{width:100%}.handoff-actions>small{color:#7d8781;text-align:center;font-size:.62rem;line-height:1.4}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.meal-count-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:20px 0;display:grid}.meal-count-grid label{border:1px solid var(--line);background:#fff;border-radius:14px;margin:0;padding:14px;position:relative}.meal-count-grid label>span,.meal-count-grid label>small{display:block}.meal-count-grid label>span{color:var(--ink);font:500 1rem Georgia,serif}.meal-count-grid label>small{color:var(--muted);margin-top:3px;font-size:.58rem;font-weight:500}.meal-count-grid input{text-align:center;width:58px;margin:12px 0 0;padding:8px}.explore-page{max-width:1240px}.recipe-book-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,220px));gap:8px;margin:0 0 22px;padding-bottom:14px;display:grid}.recipe-book-tabs button{color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;gap:2px;padding:12px 15px;display:grid}.recipe-book-tabs button strong{color:inherit;font-size:.78rem}.recipe-book-tabs button span{font-size:.62rem}.recipe-book-tabs button.active{color:var(--sage-dark);background:#e5eee3;border-color:#b8cab9}.explore-toolbar{margin-bottom:22px}.category-tabs,.subcategory-tabs{flex-wrap:wrap;gap:8px;display:flex}.category-tabs{border:1px solid var(--line);background:#ebece5;border-radius:16px;padding:6px}.category-tabs button,.subcategory-tabs button{cursor:pointer;background:0 0;border:0;border-radius:11px}.category-tabs button{color:#627068;flex:1;min-width:120px;padding:11px 16px;font-weight:750}.category-tabs button.active{background:var(--card);color:var(--sage-dark);box-shadow:0 3px 12px #33463d14}.subcategory-tabs{margin-top:12px}.subcategory-tabs button{color:var(--muted);text-transform:capitalize;background:#faf9f4;border:1px solid #dfe2db;padding:7px 11px;font-size:.7rem}.subcategory-tabs button.active{color:#365849;background:#dfeadf;border-color:#a9c2af;font-weight:750}.recipe-market-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.market-recipe-card{border:1px solid var(--line);background:var(--card);border-radius:21px;transition:transform .18s,border-color .18s,box-shadow .18s;overflow:hidden}.market-recipe-card.saved{border-color:#9eb79f;box-shadow:0 10px 28px #48605112}.market-recipe-visual{isolation:isolate;color:#fff;background:radial-gradient(circle at 70% 35%,#fff8 0 19%,#0000 20%),linear-gradient(135deg,#cdddbf,#e6c6ad);justify-content:space-between;align-items:flex-end;height:176px;padding:16px;display:flex;position:relative;overflow:hidden}.market-recipe-visual:after{content:"";z-index:-1;background:linear-gradient(#0000,#1d2b24c7);position:absolute;inset:35% 0 0}.market-recipe-visual img{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.market-recipe-visual span{letter-spacing:.1em;text-transform:uppercase;font-size:.63rem;font-weight:900}.market-recipe-visual b{color:#3e4c44;background:#fffde9e8;border-radius:99px;padding:5px 8px;font-size:.65rem}.market-recipe-body{padding:19px}.market-card-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.market-card-top>div{min-width:0}.market-card-top p{color:#987157;letter-spacing:.07em;text-transform:uppercase;margin:0 0 5px;font-size:.58rem;font-weight:850}.market-card-top h2{margin:0;font:500 1.25rem Georgia,serif}.market-recipe-body>p{color:var(--muted);margin:10px 0;font-size:.76rem}.recipe-save{color:var(--sage-dark);cursor:pointer;background:#fff;border:1px solid #cfd7cf;border-radius:99px;flex:none;padding:7px 10px;font-size:.66rem;font-weight:800}.recipe-save.saved{background:#dfeadf;border-color:#a9c2af}.recipe-meta{flex-wrap:wrap;gap:8px;display:flex}.recipe-meta span{text-transform:capitalize;border:1px solid #0000;border-radius:99px;padding:4px 8px;font-size:.6rem;font-weight:700}.recipe-meta .cost-badge{color:#657169;background:#f1f1eb;font-weight:500}.recipe-meta .effort-minimal{color:#3f694f;background:#e4efe3;border-color:#c4d8c3}.recipe-meta .effort-moderate{color:#426878;background:#e7f1f5;border-color:#c7dce5}.recipe-meta .effort-hands-on{color:#334f73;background:#dce5f1;border-color:#b9c9dc}.personal-recipe-book{background:linear-gradient(135deg,#edf3e9,#faf5e7);border:1px solid #d5dfd2;border-radius:22px;margin-top:34px;padding:25px}.recipe-book-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.recipe-book-heading .date{margin-bottom:6px}.recipe-book-heading h2{margin-bottom:4px;font:500 1.5rem Georgia,serif}.recipe-book-heading p:not(.date){color:var(--muted);margin:0;font-size:.75rem}.saved-recipe-strip{gap:8px;margin-top:18px;padding-bottom:3px;display:flex;overflow:auto}.saved-recipe-strip button{cursor:pointer;text-align:left;background:#fffefa;border:1px solid #dce1d8;border-radius:13px;flex:0 0 190px;min-height:76px;padding:12px}.saved-recipe-strip span,.saved-recipe-strip strong{display:block}.saved-recipe-strip span{color:#8a6b52;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.55rem;font-weight:850}.saved-recipe-strip strong{font:500 .9rem Georgia,serif}.photo-credits{text-align:right;margin:12px 2px 0}.photo-credits a{color:#7c8881;font-size:.62rem}.saved-book-view{gap:22px;display:grid}.saved-book-intro{background:linear-gradient(135deg,#edf3e9,#faf5e7);border:1px solid #d5dfd2;border-radius:20px;padding:22px 24px}.saved-book-intro h2{margin:5px 0;font:500 1.5rem Georgia,serif}.saved-book-intro p{color:var(--muted);margin:0;font-size:.75rem}.empty-recipe-book{text-align:center;background:#faf9f4;border:1px dashed #cbd5c9;border-radius:22px;justify-items:center;padding:55px 24px;display:grid}.empty-recipe-book>span{color:#799384;font-size:2.4rem}.empty-recipe-book h2{margin:9px 0 5px;font:500 1.6rem Georgia,serif}.empty-recipe-book p{max-width:520px;color:var(--muted);margin:0;font-size:.76rem;line-height:1.55}.empty-recipe-book>div{gap:9px;margin-top:20px;display:flex}.empty-week-hero{background:linear-gradient(135deg,#edf3e9,#fbf4e4);border:1px solid #d6dfd2;border-radius:23px;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);align-items:center;gap:28px;padding:30px;display:grid}.empty-week-hero h2{margin:5px 0 8px;font:500 1.8rem Georgia,serif}.empty-week-hero p{max-width:610px;color:var(--muted);font-size:.82rem}.empty-week-actions{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.meal-count-summary{background:#fffefa;border:1px solid #dce1d8;border-radius:16px;padding:18px}.meal-count-summary>small{color:#8b958f;letter-spacing:.09em;margin-bottom:8px;font-size:.58rem;font-weight:850;display:block}.meal-count-summary>div{border-bottom:1px solid #ecece5;justify-content:space-between;padding:6px 0;font-size:.72rem;display:flex}.meal-count-summary>div:last-child{border:0}.meal-count-summary strong{color:var(--sage-dark)}.empty-calendar{gap:8px;margin-top:18px;display:grid}.empty-calendar article{background:#faf9f4;border:1px dashed #cfd4cc;border-radius:13px;justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.empty-calendar strong{font:500 1rem Georgia,serif}.empty-calendar span{color:#9aa29d;font-size:.68rem}.weekly-plan.flexible article{grid-template-columns:105px repeat(5,minmax(0,1fr))}.weekly-plan .unplanned-day{color:#9aa29d;font-style:italic}.meal-card,.settings-card,.cart-list-card,.cart-handoff,.grocery-card,.recipe-book,.meal-personalization,.empty-week-hero,.auto-pick-banner,.freshness-command,.personal-recipe-book{transition:transform .22s,border-color .22s,box-shadow .22s;box-shadow:0 7px 24px #31473b0b}.meal-card:hover,.market-recipe-card:hover{border-color:#cbd8cc;transform:translateY(-3px);box-shadow:0 17px 38px #31473b18}.settings-card:hover,.cart-list-card:hover,.cart-handoff:hover,.meal-personalization:hover,.freshness-command:hover{border-color:#d3dcd2;box-shadow:0 12px 30px #31473b11}.market-recipe-visual img,.meal-visual img{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .3s}.market-recipe-card:hover .market-recipe-visual img,.meal-card:hover .meal-visual img{filter:saturate(1.04);transform:scale(1.035)}.recipe-save,.recipe-book-tabs button,.category-tabs button,.subcategory-tabs button,.choice-row button{transition:transform .18s,background .18s,border-color .18s,box-shadow .18s}.recipe-save:hover,.recipe-book-tabs button:hover,.subcategory-tabs button:hover,.choice-row button:hover{border-color:#b9c9bb;transform:translateY(-1px);box-shadow:0 6px 14px #344a3d0e}.plan-cost-card .budget-status{align-items:flex-start;gap:7px;display:flex}.plan-cost-card .budget-status svg{flex:none;margin-top:1px}.save-toast{align-items:center;gap:7px;animation:.28s cubic-bezier(.2,.72,.25,1) both toast-in;display:flex;box-shadow:0 10px 28px #233b3038}.save-toast:before{content:"✓";background:#ffffff24;border-radius:50%;place-items:center;width:18px;height:18px;font-size:.65rem;display:grid}.recipe-market-grid>article,.meal-feature-grid>article{animation:.42s cubic-bezier(.2,.72,.25,1) both card-rise}.recipe-market-grid>article:nth-child(2),.meal-feature-grid>article:nth-child(2){animation-delay:50ms}.recipe-market-grid>article:nth-child(3),.meal-feature-grid>article:nth-child(3){animation-delay:.1s}.recipe-market-grid>article:nth-child(4){animation-delay:.15s}.recipe-market-grid>article:nth-child(5){animation-delay:.2s}.recipe-market-grid>article:nth-child(6){animation-delay:.25s}@keyframes view-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes card-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translateY(-7px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=650px){.mobile-nav{padding:7px 10px max(7px,env(safe-area-inset-bottom));justify-content:space-between;gap:4px;box-shadow:0 -10px 30px #293f3414}.mobile-nav button{border-radius:12px;flex:1;place-items:center;min-width:0;padding:4px 3px;transition:color .18s,background .18s,transform .18s;position:relative}.mobile-nav .nav-icon{background:0 0;border-radius:9px;width:32px;height:27px}.mobile-nav .nav-label{font-size:.61rem;line-height:1.2}.mobile-nav button.active{color:#26302a;background:#f4f1e8}.mobile-nav button.active .nav-icon{color:#2d4a3d;background:#dbe6db;transform:translateY(-1px)}.mobile-nav button.active:after{content:"";background:var(--gold);border-radius:99px;width:22px;height:2px;position:absolute;top:0}}@media (prefers-reduced-motion:reduce){.view-stage,.recipe-market-grid>article,.meal-feature-grid>article,.save-toast{animation:none}.sidebar nav button,.nav-icon,.profile-chip,.primary,.secondary,.meal-card,.market-recipe-card,.settings-card,.cart-list-card,.cart-handoff,.meal-personalization,.freshness-command,.market-recipe-visual img,.meal-visual img,.recipe-save,.recipe-book-tabs button,.category-tabs button,.subcategory-tabs button,.choice-row button{transition:none}}.meal-planning-preferences{margin-bottom:0}.freshness-command{background:linear-gradient(135deg,#f1f6ed,#fff8e9);border:1px solid #cfddcd;border-radius:22px;margin:0 0 24px;padding:24px}.freshness-title{justify-content:space-between;align-items:center;gap:24px;display:flex}.freshness-title h2{margin:5px 0;font:500 1.45rem Georgia,serif}.freshness-title p{max-width:690px;color:var(--muted);margin:0;font-size:.73rem;line-height:1.5}.freshness-title button{flex:none}.freshness-title button:disabled{cursor:not-allowed;opacity:.45}.freshness-lanes{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.freshness-lane{background:#fffefa;border:1px solid #dce2d8;border-radius:14px;min-width:0;padding:14px}.freshness-lane strong{letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:.66rem;display:block}.freshness-lane p{color:var(--muted);margin:0;font-size:.7rem;line-height:1.5}.freshness-lane.urgent{background:#fff5eb;border-color:#e1bea8}.freshness-lane.urgent strong{color:#9a583b}.freshness-lane.week strong{color:#4f735d}.freshness-lane.lasting strong{color:#64758a}.cart-reality-note{border-top:1px dashed #d8ddd4;padding-top:7px;color:var(--sage-dark)!important;margin-top:7px!important;font-size:.66rem!important}.recipe-chips{flex-wrap:wrap;gap:6px;margin:8px 0 2px;display:flex}.recipe-chips .chip{border:1px solid var(--line);color:#4d5c54;background:#fffefa;border-radius:99px;align-items:center;gap:4px;padding:3px 9px;font-size:.62rem;font-weight:650;display:inline-flex}.recipe-chips .chip.diet{color:#3f6a4f;background:#eef5ee;border-color:#cfe0d4}.recipe-chips .chip.effort-minimal{border-color:#d8e6dc}.recipe-chips .chip.effort-hands-on{color:#715b36;background:#fbf3df;border-color:#ecd9b4}.ingredient-amounts{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 14px;margin:6px 0 4px;padding:0;list-style:none;display:grid}.ingredient-amounts li{border-bottom:1px dashed var(--line);justify-content:space-between;gap:10px;padding:4px 0;font-size:.72rem;display:flex}.ingredient-amounts li span{text-transform:capitalize}.ingredient-amounts li small{color:var(--muted);white-space:nowrap}.recipe-method ol{gap:6px;margin:6px 0 0;padding-left:20px;font-size:.74rem;line-height:1.55;display:grid}.prep-ahead{color:#365a5b;background:#eef3f3;border-radius:10px;margin:9px 0 0;padding:8px 11px;font-size:.68rem}.prep-ahead strong{text-transform:uppercase;letter-spacing:.05em;font-size:.6rem}.meal-card-subhead{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:12px 0 0;font-size:.62rem;font-weight:750}.meal-card-subhead small{color:#9aa69f;text-transform:none;letter-spacing:0;font-weight:650}.photo-placeholder{place-content:center;width:100%;height:100%;min-height:120px;display:grid}.photo-placeholder span{color:#fffefacc;font:600 2.4rem Georgia,serif}.ph-breakfast{background:linear-gradient(135deg,#e8c985,#f2b99d)}.ph-lunch{background:linear-gradient(135deg,#a8c7c6,#8fb3a9)}.ph-dinner{background:linear-gradient(135deg,#668274,#47665a)}.ph-snack{background:linear-gradient(135deg,#c7bdd7,#a8c7c6)}.ph-dessert{background:linear-gradient(135deg,#f2b99d,#c7bdd7)}.flow-strip{border:1px solid var(--line);background:var(--card);border-radius:14px;flex-wrap:wrap;gap:8px 22px;margin:0 0 18px;padding:13px 18px;list-style:none;display:flex}.flow-strip li{color:var(--muted);align-items:center;gap:8px;font-size:.72rem;font-weight:600;display:flex}.flow-strip li span{background:#eceee6;border-radius:50%;place-content:center;width:20px;height:20px;font-size:.62rem;display:grid}.flow-strip li.current{color:var(--sage-dark)}.flow-strip li.current span{background:var(--sage);color:#fff}.flow-strip li:not(:last-child):after{content:"→";color:#c9cec2;margin-left:14px}.next-step-bar{background:linear-gradient(135deg,#edf5e9,#f9f6ea);border:1px solid #cddcca;border-radius:18px;align-items:center;gap:20px;width:min(1020px,100% - 100px);margin:26px auto 0;padding:15px 20px;display:flex}.next-step-bar.settled{border-color:var(--line);background:var(--card)}.next-step-stage{color:var(--sage-dark);letter-spacing:.09em;text-transform:uppercase;flex:none;align-items:center;gap:9px;margin:0;font-size:.62rem;font-weight:850;display:flex}.next-step-stage span{background:var(--sage);color:#fff;letter-spacing:0;border-radius:50%;place-content:center;width:22px;height:22px;font-size:.66rem;display:grid}.next-step-bar.settled .next-step-stage span{color:#4a5a50;background:#c9d3c8}.next-step-copy{flex:auto;min-width:0}.next-step-copy strong{color:var(--ink);font:600 1.05rem Georgia,serif;display:block}.next-step-copy p{color:#657168;margin:3px 0 0;font-size:.72rem;line-height:1.5}.next-step-bar button{flex:none}@media (width<=900px){.next-step-bar{gap:10px;width:calc(100% - 32px);margin:16px auto 0;padding:14px 16px;display:grid}.next-step-bar button{width:100%}}.plan-fit-banner{background:linear-gradient(135deg,#eef5ea,#f7f5e9);border:1px solid #cddcca;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.plan-fit-banner h2{color:var(--sage-dark);margin:4px 0 6px;font:600 1.25rem Georgia,serif}.plan-fit-banner p{color:#5f6f66;max-width:56ch;margin:0;font-size:.78rem}.plan-fit-banner ul{color:#657168;margin:8px 0 0;padding-left:18px;font-size:.72rem;line-height:1.6}@media (width<=650px){.plan-fit-banner{flex-direction:column;align-items:stretch}}.kitchen-link{margin:10px 0 0}.kitchen-link .text-button{color:var(--sage-dark);padding:0;font-size:.7rem}.auto-pick-banner.done{padding:12px 18px}.auto-pick-banner.done h2{margin:2px 0 0;font-size:.95rem}.welcome-back-banner{background:linear-gradient(135deg,#fbf3df,#fdeee2);border:1px solid #ecd9b4;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.welcome-back-banner h2{color:#715b36;margin:4px 0 6px;font:600 1.25rem Georgia,serif}.welcome-back-banner p{color:#806f50;max-width:52ch;margin:0;font-size:.78rem}.welcome-back-actions{flex-shrink:0;gap:9px;display:flex}@media (width<=650px){.welcome-back-banner{flex-direction:column;align-items:stretch}.welcome-back-actions{flex-direction:column}.welcome-back-actions button{width:100%}}.freeze-plan{color:#365a5b;background:#e8f1f1;border-radius:13px;grid-template-columns:160px 1fr;gap:14px;margin-top:12px;padding:13px 14px;display:grid}.freeze-plan strong{text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.freeze-plan ul{gap:4px;margin:0;padding-left:18px;font-size:.68rem;line-height:1.45;display:grid}.weekly-plan.adaptive article{align-items:start}.week-meal{background:#fff;border:1px solid #eae7dd;border-radius:13px;gap:5px;padding:9px 9px 10px;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;box-shadow:0 2px 6px #2f3b3308}.week-meal:hover{border-color:#dcd6c6;transform:translateY(-1px);box-shadow:0 7px 18px #2f3b3314}.bubble-thumb{background:#e7ece4;border-radius:12px 12px 0 0;height:74px;margin:-9px -9px 3px;display:block;overflow:hidden}.bubble-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.week-meal:hover .bubble-thumb img{transform:scale(1.05)}.bubble-thumb .photo-placeholder{min-height:74px}.bubble-label:before{content:"";vertical-align:middle;background:#c9cfc8;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.type-breakfast .bubble-label:before{background:var(--gold)}.type-lunch .bubble-label:before{background:var(--blue)}.type-dinner .bubble-label:before{background:var(--peach)}.type-snack .bubble-label:before{background:var(--lav)}.type-dessert .bubble-label:before{background:#e2a9b8}.week-meal>b{color:var(--ink);text-overflow:ellipsis;font-size:.75rem;font-weight:700;line-height:1.3;overflow:hidden}.bubble-label em{font-style:normal;font-weight:850}.bubble-label .fresh-use-first{color:#b0552f}.bubble-label .fresh-good-this-week{color:#5c7a4e}.bubble-label .fresh-flexible{color:#6f7b8a}.bubble-label .fresh-leftover{color:#8a7a52}.week-meal.cooked>b{color:#75817b;text-decoration:line-through}.week-meal.skipped{background:#fff2e8;border-radius:9px;padding:7px}.meal-checkin{gap:4px;margin-top:3px;display:flex}.weekly-plan article .meal-checkin button{color:#6f7b74;cursor:pointer;background:#fff;border:1px solid #d9ded7;border-radius:99px;padding:4px 7px;font-size:.55rem;font-weight:750}.weekly-plan article .meal-checkin button.active{color:#3f694f;background:#e5f0e4;border-color:#9ebb9f}.weekly-plan article .meal-checkin button.active.skipped{color:#8a4f35;background:#f8ddcc;border-color:#dfb69e}.weekly-plan.board article{transition:background .16s,border-color .16s}.weekly-plan.board article.drop-target{background:#eef6ec;border-color:#9ebb9f}.weekly-plan.board.dragging{cursor:grabbing}.weekly-plan.board article>strong:focus-visible{outline:2px solid var(--sage-dark);outline-offset:3px;border-radius:4px}.meal-bubble{background:#fbfbf6;border:1px solid #e6e8e1;border-radius:12px;padding:8px 9px}.meal-bubble.dragging{opacity:.4}.bubble-actions{align-items:center;gap:5px;margin-top:5px;display:flex}.weekly-plan article .bubble-grip{color:#8a958e;cursor:grab;touch-action:none;background:#eef0ea;border:0;border-radius:6px;flex:none;place-content:center;width:19px;height:22px;padding:0;display:grid}.weekly-plan article .bubble-grip:active{cursor:grabbing;background:#dfe4dc}.weekly-plan article .bubble-grip:focus-visible{outline:2px solid var(--sage-dark);outline-offset:2px;color:var(--sage-dark);background:#dfe4dc}.weekly-plan article .bubble-swap-toggle{color:var(--sage-dark);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:#fff;border:1px solid #dce0da;border-radius:99px;flex:none;padding:3px 9px;font-size:.55rem;font-weight:800}.weekly-plan article .bubble-drop{color:#a2ada6;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-content:center;width:22px;height:22px;margin-left:auto;padding:0;font-size:.95rem;line-height:1;display:grid}.weekly-plan article .bubble-drop:hover,.weekly-plan article .bubble-drop:focus-visible{color:#96604c;background:#f7e6dd}.bubble-menu-title{color:#7e8a83;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.55rem;font-weight:850;display:block}.weekly-plan article .bubble-keep{color:var(--sage-dark);cursor:pointer;background:0 0;border:0;justify-self:start;margin-top:2px;padding:0;font-size:.6rem;font-weight:750;text-decoration:underline}.meal-bubble-ghost{z-index:60;background:var(--card);pointer-events:none;border:1px solid #9ebb9f;border-radius:12px;max-width:230px;padding:9px 12px;position:fixed;transform:translate(10px,10px);box-shadow:0 12px 28px #24312b26}.meal-bubble-ghost span{color:#8a958e;letter-spacing:.08em;text-transform:uppercase;font-size:.55rem;font-weight:800;display:block}.meal-bubble-ghost b{margin-top:2px;font-size:.75rem;display:block}.bubble-menu{border-top:1px dashed #dce0da;gap:6px;margin-top:9px;padding-top:9px;display:grid}.bubble-swaps{gap:4px;display:grid}.weekly-plan article .bubble-swaps button{cursor:pointer;text-align:left;background:#fff;border:1px solid #d9ded7;border-radius:9px;gap:1px;padding:7px 9px;display:grid}.weekly-plan article .bubble-swaps button:hover{background:#f2f8f0;border-color:#9ebb9f}.bubble-swaps button b{color:var(--ink);font-size:.68rem;font-weight:700}.bubble-swaps button small{color:#8a958e;font-size:.57rem}.bubble-empty{color:#8a958e;margin:0;font-size:.6rem;line-height:1.5}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=900px){.meal-count-grid{grid-template-columns:repeat(3,1fr)}.recipe-market-grid{grid-template-columns:1fr}.weekly-plan.flexible article{grid-template-columns:90px 1fr}.empty-week-hero{grid-template-columns:1fr}}@media (width<=650px){.header-actions,.recipe-book-heading,.freshness-title{flex-direction:column;align-items:stretch}.header-actions .primary,.header-actions .secondary,.recipe-book-heading .primary,.freshness-title button{width:100%}.recipe-book-tabs,.meal-count-grid{grid-template-columns:1fr 1fr}.category-tabs{flex-wrap:nowrap;overflow:auto}.category-tabs button{min-width:105px}.market-recipe-visual{height:140px}.empty-week-hero,.personal-recipe-book,.freshness-command{padding:20px}.empty-recipe-book>div{flex-direction:column;align-items:stretch;width:100%}.freshness-lanes,.freeze-plan{grid-template-columns:1fr}.onboarding>header .text-button{text-align:right;max-width:145px}.onboard-shell{margin-top:3vh}.onboard-card{margin:0;padding:28px 21px 22px}.onboard-card h1{font-size:2.2rem}.onboard-step-label small{display:none}.benefit-grid{grid-template-columns:1fr;gap:8px;margin:22px 0}.benefit-grid article{grid-template-columns:28px 1fr;padding:13px;display:grid}.benefit-grid article span{grid-row:1/3;margin:3px 0 0}.benefit-grid article p{margin-top:2px}}.big-choice-grid{grid-template-columns:repeat(5,1fr);gap:10px;margin:30px 0;display:grid}.big-choice-grid button,.restriction-grid button,.budget-rule-grid button,.substitution-grid button{cursor:pointer;text-align:left;background:#fff;border:1px solid #d9ded8;border-radius:16px;transition:transform .16s,border-color .16s,background .16s}.big-choice-grid button{text-align:center;padding:20px 12px}.big-choice-grid button strong,.big-choice-grid button span,.restriction-grid strong,.restriction-grid span,.budget-rule-grid strong,.budget-rule-grid span,.substitution-grid strong,.substitution-grid span{display:block}.big-choice-grid button strong{font:600 1.65rem Georgia,serif}.big-choice-grid button span{color:var(--muted);margin-top:3px;font-size:.65rem}.big-choice-grid button.selected,.restriction-grid button.selected,.budget-rule-grid button.selected,.substitution-grid button.selected{background:#e8f1e5;border-color:#8dab93;box-shadow:0 0 0 2px #cddfc9}.restriction-grid{grid-template-columns:1fr 1fr;gap:11px;margin:26px 0;display:grid}.restriction-grid button,.budget-rule-grid button,.substitution-grid button{padding:17px}.restriction-grid strong,.budget-rule-grid strong,.substitution-grid strong{font:600 1rem Georgia,serif}.restriction-grid span,.budget-rule-grid span,.substitution-grid span{color:var(--muted);margin-top:5px;font-size:.68rem;line-height:1.45}.meal-range-list{gap:9px;margin:22px 0;display:grid}.meal-range-list fieldset{background:#fbfaf5;border:1px solid #e0e3dc;border-radius:14px;grid-template-columns:100px 1fr;align-items:center;gap:14px;margin:0;padding:12px 14px;display:grid}.meal-range-list legend{color:var(--ink);font:600 1rem Georgia,serif}.meal-range-list fieldset>div{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.meal-range-list button{color:#657169;cursor:pointer;background:#fff;border:1px solid #d9ded8;border-radius:9px;padding:9px 8px;font-size:.67rem;font-weight:700}.meal-range-list button.selected{color:#365849;background:#dfeadf;border-color:#91ad97}.meal-range-list fieldset.unanswered{border-style:dashed;border-color:#c9cec2}.meal-rhythm-summary{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.meal-rhythm-summary li{background:#fbfaf5;border:1px solid #e0e3dc;border-radius:12px;padding:10px 12px}.meal-rhythm-summary li span{color:#7e8a83;letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:800;display:block}.meal-rhythm-summary li strong{color:var(--ink);margin-top:3px;font-size:.75rem;font-weight:750;display:block}.meal-rhythm-summary li.unanswered{border-style:dashed}.meal-rhythm-summary li.unanswered strong{color:#9aa39c}.meal-rhythm-summary li.set{background:#f1f7ef;border-color:#c3d6c6}.meal-rhythm-summary li.set strong{color:var(--sage-dark)}.savings-note{background:#f8efdc;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;padding:14px 16px;display:flex}.savings-note strong{color:#715b36;white-space:nowrap;font:600 1rem Georgia,serif}.savings-note span{color:#806f50;text-align:right;font-size:.68rem}.budget-range-card{background:linear-gradient(135deg,#edf4e9,#fbf6e9);border:1px solid #d7dfd4;border-radius:18px;margin:20px 0;padding:19px}.budget-range-values{text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;margin-bottom:14px;display:grid}.budget-range-values div{background:#fffefa;border-radius:12px;padding:12px}.budget-range-values small,.budget-range-values strong{display:block}.budget-range-values small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.58rem;font-weight:750}.budget-range-values strong{color:var(--sage-dark);margin-top:3px;font:600 1.5rem Georgia,serif}.budget-range-card label{margin:9px 0}.budget-range-card input[type=range]{accent-color:var(--sage-dark);padding:0}.budget-range-card .secondary{width:100%;margin-top:10px}.budget-rule-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:9px;display:grid}.estimate-note{color:#7d8781;margin:-4px 0 15px;font-size:.63rem}.favorite-picker{max-width:680px;margin:0 auto}.favorite-progress{color:var(--sage-dark);justify-content:space-between;margin-bottom:9px;font-size:.67rem;display:flex}.favorite-progress span{color:var(--muted)}.favorite-card{background:#fff;border:1px solid #d9dfd6;border-radius:20px;grid-template-columns:260px 1fr;display:grid;overflow:hidden;box-shadow:0 13px 32px #41524714}.favorite-photo{background:#dfe8dc;min-height:220px;position:relative;overflow:hidden}.favorite-photo img{object-fit:cover;width:100%;height:100%}.favorite-photo span,.favorite-photo b{color:#3e4c44;background:#fffef2e8;border-radius:99px;padding:5px 8px;font-size:.6rem;position:absolute;bottom:12px}.favorite-photo span{text-transform:uppercase;font-weight:850;left:12px}.favorite-photo b{right:12px}.favorite-card>div:last-child{padding:24px}.favorite-card h2{margin:0 0 8px;font:500 1.4rem Georgia,serif}.favorite-card p{color:var(--muted);font-size:.75rem}.favorite-actions{grid-template-columns:1fr 1.2fr;gap:9px;margin-top:11px;display:grid}.favorite-actions button{width:100%}.favorite-actions .primary:disabled{cursor:default;opacity:.65}.favorite-saved{gap:6px;margin-top:10px;padding-bottom:2px;display:flex;overflow:auto}.favorite-saved button{color:#456051;cursor:pointer;background:#edf4e9;border:1px solid #cdd9cb;border-radius:99px;flex:none;padding:6px 9px;font-size:.6rem}.favorite-saved span{margin-left:5px}.favorite-browser{max-width:none}.favorite-filter{gap:6px;margin:0 0 10px;display:flex}.favorite-filter button{color:#6b7770;cursor:pointer;background:#faf9f5;border:1px solid #dce1da;border-radius:10px;flex:1;padding:8px 10px;font-size:.65rem;font-weight:750}.favorite-filter button.active{color:#365849;background:#e6efe3;border-color:#a7bda8;box-shadow:0 4px 12px #31473b0b}.favorite-grid{scrollbar-color:#aab8ad transparent;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:405px;padding:2px 5px 7px 2px;display:grid;overflow:auto}.favorite-grid>button{cursor:pointer;text-align:left;background:#fff;border:2px solid #0000;border-radius:15px;padding:0;transition:transform .18s,border-color .18s,box-shadow .18s,opacity .18s;position:relative;overflow:hidden;box-shadow:0 5px 17px #31473b10}.favorite-grid>button:hover{border-color:#b7c8b8;transform:translateY(-2px);box-shadow:0 10px 24px #31473b18}.favorite-grid>button.selected{border-color:#527764;box-shadow:0 0 0 2px #dbe9dc,0 11px 25px #31473b18}.favorite-grid>button:disabled{cursor:not-allowed;opacity:.42;transform:none}.favorite-grid-photo{background:#dfe8dc;height:112px;display:block;position:relative;overflow:hidden}.favorite-grid-photo:after{content:"";background:linear-gradient(#0000,#1f3027b8);position:absolute;inset:48% 0 0}.favorite-grid-photo img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.favorite-grid>button:hover img{transform:scale(1.035)}.favorite-grid-photo>span{z-index:1;color:#45534b;letter-spacing:.05em;text-transform:uppercase;background:#fffdebe8;border-radius:99px;padding:3px 6px;font-size:.5rem;font-weight:850;position:absolute;bottom:8px;left:9px}.favorite-heart{z-index:2;color:#687970;background:#fffef0ec;border-radius:50%;place-items:center;width:29px;height:29px;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 3px 9px #17251d24}.favorite-grid>button.selected .favorite-heart{color:#fff;background:#45685a}.favorite-grid-copy{min-height:64px;padding:10px 11px 11px;display:block}.favorite-grid-copy strong,.favorite-grid-copy small{display:block}.favorite-grid-copy strong{font:500 .88rem/1.2 Georgia,serif}.favorite-grid-copy small{color:var(--muted);align-items:center;gap:6px;margin-top:6px;font-size:.55rem;display:flex}.effort-dot{letter-spacing:.02em;text-transform:uppercase;border:1px solid;border-radius:99px;padding:2px 7px;font-size:.53rem;font-weight:850}.effort-dot.effort-minimal{color:#3d6b4c;background:#e8f3e7;border-color:#bcd7bf}.effort-dot.effort-moderate{color:#7a6534;background:#f8f2e0;border-color:#e0d3ae}.effort-dot.effort-hands-on{color:#8c5533;background:#fbeade;border-color:#e3c0ab}.favorite-sort{align-items:center;gap:9px;margin:0 0 9px;display:flex}.favorite-sort>span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.6rem;font-weight:800}.favorite-sort div{gap:5px;display:flex}.favorite-sort button{color:#5d6a60;cursor:pointer;background:#fff;border:1px solid #d7ded4;border-radius:99px;min-height:32px;padding:0 11px;font-size:.63rem;font-weight:700}.favorite-sort button.active{color:#31473b;background:#eaf2e8;border-color:#527764}.favorite-limit{color:#486a59;justify-content:center;align-items:center;gap:6px;margin:10px 0 0;font-size:.65rem;font-weight:750;display:flex}.inline-skip{color:var(--sage-dark);cursor:pointer;background:0 0;border:0;margin:14px auto 0;font-size:.7rem;text-decoration:underline;display:block}.pantry-actions{align-items:center;gap:12px;margin-bottom:14px;display:flex}.pantry-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.pantry-grid button{color:#5e6b64;cursor:pointer;text-align:left;background:#fff;border:1px solid #dce1da;border-radius:11px;align-items:center;gap:8px;padding:10px;font-size:.68rem;display:flex}.pantry-grid button span{background:#f0f1eb;border-radius:50%;flex:0 0 20px;place-items:center;width:20px;height:20px;font-weight:800;display:grid}.pantry-grid button.selected{color:#345445;background:#eaf2e7;border-color:#9eb69f}.pantry-grid button.selected span{background:var(--sage-dark);color:#fff}.baseline-picker{gap:13px;display:grid}.baseline-bundles{background:#f3f6ef;border:1px solid #dce3d9;border-radius:14px;flex-wrap:wrap;align-items:center;gap:7px;padding:11px;display:flex}.baseline-bundles>span{color:#718077;letter-spacing:.08em;text-transform:uppercase;margin-right:3px;font-size:.58rem;font-weight:850}.baseline-bundles button{color:#476256;cursor:pointer;background:#fff;border:1px solid #ccd8cb;border-radius:99px;padding:7px 10px;font-size:.62rem;font-weight:750}.baseline-bundles button:hover{background:#f9fcf7;border-color:#93ad98}.baseline-bundles .empty-baseline{color:#7a7f7b;background:0 0;border-color:#0000;margin-left:auto;text-decoration:underline}.pantry-section-tabs{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.pantry-section-tabs button{color:#67736c;cursor:pointer;text-align:left;background:#faf9f5;border:1px solid #dfe3dc;border-radius:12px;gap:2px;padding:9px 10px;display:grid}.pantry-section-tabs button strong{font-size:.64rem}.pantry-section-tabs button span{color:#8a958f;font-size:.55rem}.pantry-section-tabs button.active{color:#355849;background:#e7f0e4;border-color:#a7bda8;box-shadow:0 4px 12px #31473b0b}.pantry-section-heading{justify-content:space-between;align-items:end;gap:16px;margin-top:2px;display:flex}.pantry-section-heading strong,.pantry-section-heading span{display:block}.pantry-section-heading strong{font:500 1rem Georgia,serif}.pantry-section-heading span{color:var(--muted);margin-top:2px;font-size:.62rem}.pantry-section-heading .text-button{flex:none;font-size:.62rem}.baseline-summary{background:#eef4eb;border-left:3px solid #91ad97;border-radius:0 11px 11px 0;justify-content:space-between;gap:20px;margin:2px 0 0;padding:11px 13px;display:flex}.baseline-summary strong{color:#3d5c4e;font-size:.7rem}.baseline-summary span{color:#6b776f;text-align:right;max-width:390px;font-size:.62rem}.substitution-grid{grid-template-columns:1fr 1fr;gap:12px;margin:28px 0;display:grid}.store-zip-field{background:#fffdf7;border:1px solid #dce0da;border-radius:13px;margin:18px 0 4px;padding:13px 14px}.store-zip-field.needed{background:#fdf6e8;border-color:#e0c9a4}.store-zip-field label{color:#7c8881;letter-spacing:.07em;text-transform:uppercase;font-size:.62rem;font-weight:800;display:block}.store-zip-controls{gap:8px;margin-top:7px;display:flex}.store-zip-controls input{width:100%;min-width:0;font:inherit;letter-spacing:.08em;background:#fff;border:1px solid #d9ded8;border-radius:9px;flex:auto;padding:9px 11px;font-size:.8rem}.store-zip-controls button{flex:none}.store-zip-field small{color:#7d8781;margin-top:8px;font-size:.63rem;line-height:1.45;display:block}.handoff-choice{margin:18px 0 4px}.handoff-choice>div{grid-template-columns:1fr 1fr;gap:7px;margin-top:7px;display:grid}.handoff-choice button{cursor:pointer;background:#fff;border:1px solid #d8ddd6;border-radius:10px;padding:10px;font-weight:750}.handoff-choice button.selected{color:#365849;background:#dfeadf;border-color:#91ad97}.kitchen-memory .settings-card{background:linear-gradient(135deg,#f1f6ed,#fff9eb)}.memory-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.memory-heading h2{margin:5px 0;font:500 1.55rem Georgia,serif}.memory-heading p:not(.date){max-width:690px;color:var(--muted);margin:0;font-size:.76rem;line-height:1.5}.memory-heading>span{min-width:76px;height:76px;color:var(--sage-dark);text-align:center;background:#e4eee1;border:1px solid #bfd0bd;border-radius:50%;place-content:center;font:500 1.45rem Georgia,serif;display:grid}.memory-heading>span small{letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font:700 .52rem Arial,sans-serif;display:block}.memory-list{gap:9px;margin-top:20px;display:grid}.memory-list article{background:#fffefa;border:1px solid #d9e1d6;border-radius:15px;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:18px;padding:14px 16px;display:grid}.memory-list article.out{opacity:.56}.memory-list article.use-soon{border-left:4px solid #d28a62}.memory-list article.on-hand{border-left:4px solid #779a80}.memory-list article>div:first-child>span,.memory-list article>div:first-child>strong,.memory-list article>div:first-child>small{display:block}.memory-list article>div:first-child>span{color:#6d8974;letter-spacing:.08em;margin-bottom:3px;font-size:.52rem;font-weight:900}.memory-list article.use-soon>div:first-child>span{color:#a05f3f}.memory-list article>div:first-child>strong{text-transform:capitalize;font:500 1rem Georgia,serif}.memory-list article>div:first-child>small{color:var(--muted);text-transform:capitalize;margin-top:3px;font-size:.6rem}.memory-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.memory-actions button{color:#6b766f;cursor:pointer;background:#fff;border:1px solid #d8ddd5;border-radius:99px;padding:7px 9px;font-size:.6rem;font-weight:750}.memory-actions button.active{color:#365c45;background:#e3ede1;border-color:#95ae99}.empty-memory{background:#fffefa;border:1px dashed #cdd7ca;border-radius:15px;align-items:center;gap:14px;margin-top:20px;padding:18px;display:flex}.empty-memory>span{color:#6f927a;font-size:1.4rem}.empty-memory strong{font:500 1rem Georgia,serif}.empty-memory p{color:var(--muted);margin:3px 0 0;font-size:.68rem}.empty-memory .secondary{margin-top:12px;padding:8px 11px}.memory-note{color:#7a847e;margin:14px 2px 0;font-size:.62rem}.kitchen-page{max-width:1180px}.kitchen-page .page-header .primary{white-space:nowrap;align-items:center;gap:8px;display:flex}.kitchen-command{background:radial-gradient(circle at 95% 5%,#fff9 0 10%,#0000 32%),linear-gradient(135deg,#eaf3e7,#f8f2df);border:1px solid #d3dfd1;border-radius:23px;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);align-items:center;gap:26px;margin-bottom:28px;padding:27px;display:grid;box-shadow:0 12px 32px #31473b10}.kitchen-command h2{margin:5px 0 8px;font:500 1.7rem Georgia,serif}.kitchen-command p{max-width:650px;color:var(--muted);margin:0;font-size:.79rem;line-height:1.55}.kitchen-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.kitchen-stats article{color:#64766d;text-align:center;background:#fffefa;border:1px solid #d8e1d5;border-radius:16px;place-content:center;justify-items:center;min-height:112px;display:grid;box-shadow:0 6px 18px #31473b0b}.kitchen-stats article:nth-child(2){color:#557584}.kitchen-stats article:nth-child(3){color:#9a654b}.kitchen-stats strong{color:var(--ink);margin-top:5px;font:500 1.55rem/1 Georgia,serif}.kitchen-stats span{letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font-size:.58rem;font-weight:800}.kitchen-group{border:1px solid var(--line);background:var(--card);border-radius:20px;margin-top:18px;padding:23px;box-shadow:0 7px 24px #31473b0b}.kitchen-group-heading{align-items:flex-start;gap:11px;display:flex}.kitchen-group-heading>span{width:34px;height:34px;color:var(--sage-dark);background:#e7efe4;border-radius:11px;flex:0 0 34px;place-items:center;display:grid}.kitchen-group-heading h2{margin:1px 0 2px;font:500 1.35rem Georgia,serif}.kitchen-group-heading p{color:var(--muted);margin:0;font-size:.7rem}.kitchen-page .memory-list{margin-top:17px}.kitchen-page .memory-list article{transition:transform .18s,border-color .18s,box-shadow .18s,background .18s}.kitchen-page .memory-list article:hover{transform:translateY(-1px);box-shadow:0 8px 20px #31473b10}.kitchen-page .memory-list article.low{background:#f4f9fa;border-left:4px solid #78a4b8}.kitchen-page .memory-list article.out{opacity:1;background:#fff7f1;border-left:4px solid #c67b58}.kitchen-page .memory-list article.low>div:first-child>span{color:#55798a}.kitchen-page .memory-list article.out>div:first-child>span{color:#9a583c}.kitchen-page .memory-list article>div:first-child>small{align-items:center;gap:4px;display:flex}.kitchen-page .memory-actions button{min-height:32px;transition:background .18s,border-color .18s,transform .18s}.kitchen-page .memory-actions button:hover{border-color:#afc0b1;transform:translateY(-1px)}.kitchen-page .memory-actions button:nth-child(2).active{color:#456a7a;background:#e8f2f5;border-color:#9ebdca}.kitchen-page .memory-actions button:nth-child(3).active{color:#8d5037;background:#f9e8df;border-color:#ddb49f}.kitchen-empty{margin:18px 0;padding:23px}.kitchen-empty>span{background:#e5eee2;border-radius:14px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.staple-builder{background:linear-gradient(145deg,#faf9f3,#f4f3eb);border:1px solid #dedfd7;border-radius:20px;margin-top:18px;padding:24px}.staple-builder .section-heading{margin:0 0 17px}.staple-suggestions{flex-wrap:wrap;gap:8px;display:flex}.staple-suggestions button{color:#52665b;cursor:pointer;text-transform:capitalize;background:#fff;border:1px solid #d8ded6;border-radius:99px;align-items:center;gap:6px;padding:8px 11px;font-size:.68rem;font-weight:750;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.staple-suggestions button:hover{border-color:#9fb7a2;transform:translateY(-1px);box-shadow:0 6px 14px #31473b0c}.custom-staple{color:#7b8881;background:#fff;border:1px solid #d8ddd6;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:18px;padding:7px 7px 7px 12px;display:grid}.custom-staple input{border:0;outline:0;margin:0;padding:7px 3px}.custom-staple input:focus-visible{outline:0}.custom-staple .secondary{padding:8px 13px}.custom-staple .secondary:disabled{cursor:not-allowed;opacity:.45;transform:none}.kitchen-note{text-align:center;margin-top:15px}@media (width<=650px){.big-choice-grid{grid-template-columns:repeat(3,1fr)}.restriction-grid,.budget-rule-grid,.substitution-grid{grid-template-columns:1fr}.meal-range-list fieldset{grid-template-columns:1fr;gap:8px}.meal-range-list fieldset>div{grid-template-columns:1fr 1fr}.savings-note{flex-direction:column;align-items:flex-start;gap:4px}.savings-note span{text-align:left}.favorite-card{grid-template-columns:1fr}.favorite-photo{min-height:165px}.favorite-card>div:last-child{padding:18px}.favorite-progress{flex-direction:column;align-items:flex-start;gap:2px}.favorite-filter{grid-template-columns:1fr 1fr;display:grid}.favorite-grid{grid-template-columns:1fr 1fr;max-height:440px}.favorite-grid-photo{height:100px}.favorite-grid-copy{min-height:70px}.pantry-grid{grid-template-columns:1fr 1fr}.pantry-actions{flex-direction:column;align-items:flex-start}.pantry-section-tabs{grid-template-columns:1fr 1fr}.baseline-bundles .empty-baseline{margin-left:0}.pantry-section-heading,.baseline-summary{flex-direction:column;align-items:flex-start;gap:5px}.baseline-summary span{text-align:left}.memory-heading{align-items:flex-start}.memory-heading>span{min-width:64px;height:64px}.memory-list article{grid-template-columns:1fr}.memory-actions{justify-content:flex-start}.kitchen-command{grid-template-columns:1fr;padding:20px}.kitchen-stats article{min-height:90px}.kitchen-group,.staple-builder{padding:18px}.kitchen-page .memory-actions{grid-template-columns:repeat(3,1fr);display:grid}.kitchen-page .memory-actions button{padding:7px 5px}.custom-staple{grid-template-columns:auto minmax(0,1fr)}.custom-staple .secondary{grid-column:1/-1}}.legal-screen>header .brand{color:var(--ink);text-decoration:none}.legal-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaed;border:1px solid #fff;border-radius:30px;max-width:720px;margin:6vh auto 40px;padding:38px 42px;box-shadow:0 26px 80px #43524821}.legal-card h1{margin:8px 0 3px;font-size:1.9rem}.legal-updated{color:var(--muted);margin:0 0 20px;font-size:.72rem}.legal-card h2{margin:24px 0 6px;font:500 1.12rem Georgia,serif}.legal-card p,.legal-card li{color:var(--muted);font-size:.86rem;line-height:1.65}.legal-card ul{gap:6px;margin:6px 0;padding-left:20px;display:grid}.legal-card ul.sources-list{gap:8px;padding-left:0;list-style:none}.legal-card ul.sources-list li{border-bottom:1px solid #00000012;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:6px;display:flex}.legal-card ul.sources-list li small{opacity:.65;white-space:nowrap}@media (prefers-color-scheme:dark){.legal-card ul.sources-list li{border-bottom-color:#ffffff1f}}.legal-card strong{color:var(--ink)}.legal-card a{color:var(--sage-dark);font-weight:600}.legal-footer{border-top:1px solid var(--line);margin-top:28px;padding-top:18px;font-size:.76rem}.signin-legal{text-align:center;color:var(--muted);margin:12px 0 0;font-size:.68rem}.signin-legal a{color:var(--muted)}@media (width<=640px){.legal-card{margin-top:3vh;padding:26px 22px}}.landing{background:radial-gradient(circle at 8% 18%,#dce8dc 0 11%,#0000 28%),radial-gradient(circle at 94% 85%,#f1d8c9 0 10%,#0000 29%),linear-gradient(130deg,#edf2e9 0%,#f7f6f0 48%,#f6ebe3 100%);min-height:100vh;padding:24px}.landing-header{justify-content:space-between;align-items:center;max-width:1060px;margin:0 auto;display:flex}.landing-header .secondary{padding:9px 16px;font-size:.8rem;text-decoration:none}.landing-hero{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:center;gap:48px;max-width:1060px;margin:8vh auto 0;display:grid}.landing-hero h1{margin-bottom:16px;font-size:clamp(2.5rem,4.5vw,3.8rem)}.landing-hero .lead{margin-bottom:26px}.hero-points{gap:11px;margin:0;padding:0;list-style:none;display:grid}.hero-points li{color:#4c5c53;align-items:flex-start;gap:10px;font-size:.82rem;font-weight:650;line-height:1.45;display:flex}.hero-points svg{color:var(--sage-dark);flex:none;margin-top:1px}.landing .signin-card{margin:0}html{scroll-behavior:smooth}.story-hero{text-align:center;flex-direction:column;align-items:center;margin-top:7vh;display:flex}.story-hero h1{max-width:860px;margin:14px 0 0;font-size:clamp(2.4rem,6vw,4.4rem);line-height:1.04}.story-hero .lead{max-width:640px}.hero-ctas{align-items:center;gap:20px;margin:26px 0 6px;display:flex}.text-cta{min-height:44px;color:var(--sage-dark);align-items:center;font-size:.8rem;font-weight:700;text-decoration:none;display:inline-flex}.text-cta:hover{text-decoration:underline}.hero-marquee{gap:14px;width:100%;margin:40px 0 12px;display:grid;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000)}.marquee-row{overflow:hidden}.marquee-track{gap:14px;width:max-content;animation:55s linear infinite marquee;display:flex}.marquee-row.reverse .marquee-track{animation-duration:72s;animation-direction:reverse}.marquee-track img{object-fit:cover;border-radius:16px;width:230px;height:150px}@keyframes marquee{to{transform:translate(-50%)}}.marquee-caption{color:var(--muted);margin:0 0 8px;font-size:.68rem}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(26px)}.reveal.in{opacity:1;transform:none}.reveal.in .how-grid article,.reveal.in .trust-grid article,.reveal.in .pricing-grid article{animation:.6s both rise}.reveal.in .how-grid article:nth-child(2),.reveal.in .trust-grid article:nth-child(2),.reveal.in .pricing-grid article:nth-child(2){animation-delay:.14s}.reveal.in .how-grid article:nth-child(3),.reveal.in .trust-grid article:nth-child(3){animation-delay:.28s}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.landing-section.wash-sage{background:linear-gradient(135deg,#edf4e9,#e8f1f1);border-radius:26px;padding:46px 44px}.landing-section.wash-warm{background:linear-gradient(135deg,#fbf3df,#fdeee2);border-radius:26px;padding:46px 44px}.signup-final{place-items:center;display:grid}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}.reveal{opacity:1;transition:none;transform:none}.reveal.in .how-grid article,.reveal.in .trust-grid article,.reveal.in .pricing-grid article{animation:none}}@media (width<=650px){.story-hero{margin-top:4vh}.hero-ctas{flex-direction:column;gap:12px}.marquee-track img{width:160px;height:106px}.landing-section.wash-sage,.landing-section.wash-warm{padding:30px 22px}}.mission-copy{gap:14px;max-width:730px;display:grid}.mission-copy p{color:#4d5c54;margin:0;font-size:.86rem;line-height:1.65}.mission-copy .mission-line{color:var(--sage-dark);margin-top:6px;font:600 1.15rem Georgia,serif}.signin-pulse{animation:1.1s ease-out signin-pulse}@keyframes signin-pulse{0%{box-shadow:0 26px 80px #43524821,0 0 #66827466}to{box-shadow:0 26px 80px #43524821,0 0 0 18px #6682740a}}.landing .signin-card h2{letter-spacing:-.02em;margin:8px 0 10px;font:500 1.55rem Georgia,serif}.landing-section{max-width:1060px;margin:74px auto 0}.landing-section>h2{letter-spacing:-.02em;max-width:640px;margin-bottom:22px;font:500 clamp(1.6rem,2.6vw,2.1rem) Georgia,serif}.how-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.how-grid article{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefac9;border:1px solid #fff;border-radius:20px;padding:22px;box-shadow:0 14px 40px #43524812}.how-grid article span{color:#af7156;margin-bottom:14px;font:600 .78rem Georgia,serif;display:block}.how-grid strong{font:600 1.1rem Georgia,serif;display:block}.how-grid p{color:var(--muted);margin:8px 0 0;font-size:.78rem;line-height:1.55}.trust-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.trust-grid article{background:linear-gradient(135deg,#f7f5eb,#edf3e8);border:1px solid #dbe3d8;border-radius:18px;padding:20px 22px}.trust-grid svg{color:var(--sage-dark)}.trust-grid strong{margin-top:10px;font:600 1rem Georgia,serif;display:block}.trust-grid p{color:var(--muted);margin:7px 0 0;font-size:.75rem;line-height:1.55}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:760px;display:grid}.pricing-grid article{border:1px solid var(--line);background:var(--card);border-radius:20px;padding:24px 26px}.pricing-grid article.featured{background:linear-gradient(150deg,#f2f7ec,#fdf8ea);border-color:#c3d4c3;box-shadow:0 18px 44px #3c554814}.pricing-grid article>strong{letter-spacing:.12em;text-transform:uppercase;color:var(--sage-dark);font-size:.72rem;font-weight:850}.pricing-grid em{margin:10px 0 14px;font:500 2.1rem Georgia,serif;display:block}.pricing-grid em span{color:#8b958f;font:600 .72rem Inter,system-ui,sans-serif}.pricing-grid ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.pricing-grid li{color:#4c5c53;padding-left:20px;font-size:.78rem;position:relative}.pricing-grid li:before{content:"✓";color:var(--sage-dark);font-weight:800;position:absolute;left:0}.pricing-grid article>p{color:var(--sage-dark);border-top:1px solid #e2e5da;margin:16px 0 0;padding-top:13px;font-size:.72rem;font-weight:750}.beta-banner{background:linear-gradient(135deg,#eaf3e7,#f8f2df);border:1px solid #ccdcca;border-radius:22px;justify-content:space-between;align-items:center;gap:26px;padding:26px 30px;display:flex}.beta-banner h2{margin:4px 0 8px;font:500 1.5rem Georgia,serif}.beta-banner p{max-width:640px;color:var(--muted);margin:0;font-size:.8rem;line-height:1.55}.beta-banner .primary{white-space:nowrap;text-decoration:none}.landing-footer{color:#7b8680;border-top:1px solid #dde2d8;flex-wrap:wrap;justify-content:space-between;gap:18px;max-width:1060px;margin:60px auto 0;padding:22px 0 26px;font-size:.7rem;display:flex}.landing-footer p{margin:0}.landing-footer a{color:var(--sage-dark);font-weight:700}@media (width<=900px){.landing-hero{grid-template-columns:1fr;gap:30px;margin-top:5vh}.landing .signin-card{justify-self:stretch;max-width:none}.how-grid,.trust-grid{grid-template-columns:1fr}.pricing-grid{max-width:none}}@media (width<=650px){.landing{padding:16px}.landing-hero{gap:26px;margin-top:26px}.landing-section{margin-top:52px}.landing .signin-card{padding:28px 24px 24px}.pricing-grid{grid-template-columns:1fr}.beta-banner{flex-direction:column;align-items:stretch;padding:22px}.beta-banner .primary{text-align:center}.landing-footer{display:block}.landing-footer p{margin:0 0 8px}.page-header h1{font-size:2.05rem}.page-header .primary,.page-header .secondary{width:100%;margin-top:12px}.primary,.secondary{min-height:46px}.choice-row button,.handoff-choice button{min-height:44px}.meal-range-list button{min-height:42px}.category-tabs button{min-height:44px}.subcategory-tabs button{min-height:40px;padding:9px 13px;font-size:.74rem}.favorite-filter button{min-height:42px}.recipe-book-tabs button,.pantry-section-tabs button{min-height:48px}.pantry-grid button{min-height:44px}.staple-suggestions button,.baseline-bundles button{min-height:40px;padding:9px 13px}.recipe-save{min-height:40px;padding:9px 14px;font-size:.7rem}.weekly-plan article .meal-checkin{grid-template-columns:1fr 1fr;gap:6px;margin-top:7px;display:grid}.weekly-plan article .meal-checkin button{border-radius:11px;min-height:42px;font-size:.68rem}.week-meal>b{font-size:.82rem}.weekly-plan.flexible article{grid-template-columns:1fr}.weekly-plan article .bubble-grip{width:34px;height:34px}.weekly-plan article .bubble-swap-toggle{min-height:34px;padding:6px 12px;font-size:.6rem}.weekly-plan article .bubble-drop{width:32px;height:32px;font-size:1.1rem}.weekly-plan article .bubble-swaps button{min-height:48px;padding:9px 11px}.bubble-swaps button b{font-size:.78rem}.bubble-swaps button small{font-size:.65rem}.weekly-plan article .bubble-keep{min-height:38px;font-size:.7rem}.quantity-control button{width:40px;height:40px;font-size:1.05rem}.quantity-control span{min-width:30px;font-size:.8rem}.cart-lines article{gap:10px 14px;padding:13px 12px}.cart-include input{flex-basis:19px;width:19px;height:19px}.cart-include strong{white-space:normal;font-size:.84rem}.cart-lines a{align-items:center;min-height:44px;padding:2px 0 0 27px;font-size:.72rem;display:flex}.product-pick .text-button{padding:9px 0}.grocery-list label{min-height:47px;padding:10px 12px}.grocery-list input{width:18px;height:18px}.grocery-list strong{font-size:.8rem}.memory-actions button,.kitchen-page .memory-actions button{min-height:44px;font-size:.66rem}.recipe-book>details summary,.recipe-details summary{padding:6px 0}.text-button{padding:8px 2px}.onboarding>header .text-button,.pantry-section-heading .text-button{padding:8px 0}.inline-skip,.skip{padding:10px}.mobile-nav .nav-label{font-size:.63rem}.mobile-nav button{min-height:48px}}.landing-header-actions{align-items:center;gap:6px;display:flex}.feedback-trigger{min-height:44px;color:var(--sage-dark);cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:7px;padding:9px 14px;font:700 .8rem inherit;display:inline-flex}.feedback-trigger:hover{background:#eef3ea}.sidebar-feedback{color:#c4cec6;cursor:pointer;background:0 0;border:1px solid #414c44;border-radius:12px;align-items:center;gap:8px;width:100%;min-height:44px;margin-top:10px;padding:10px 12px;font:650 .72rem inherit;display:flex}.sidebar-feedback:hover{color:#fff;background:#ffffff12;border-color:#5c6b60}.feedback-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#22302a5c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.feedback-dialog{border:1px solid var(--line);background:var(--card);border-radius:22px;width:min(520px,100%);max-height:90vh;padding:28px;animation:.22s both feedback-in;overflow-y:auto;box-shadow:0 26px 60px #22302a2e}.feedback-dialog h2{margin:0 0 8px;font:500 1.5rem Georgia,serif}.feedback-dialog>p{color:var(--muted);margin:0 0 18px;font-size:.78rem;line-height:1.55}.feedback-field{gap:7px;display:grid}.feedback-field span{color:#4c5c53;letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:800}.feedback-field textarea{width:100%;min-height:132px}.feedback-note{color:var(--muted);margin:12px 0 0;font-size:.7rem;line-height:1.5}.feedback-error{color:#a24e47;margin:12px 0 0;font-size:.73rem;font-weight:700}.feedback-actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;display:flex}.feedback-actions .primary:disabled{cursor:not-allowed;opacity:.55}@keyframes feedback-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.feedback-dialog{animation:none}}@media (width<=650px){.feedback-dialog{border-radius:18px;padding:22px}.feedback-actions{flex-direction:column-reverse;align-items:stretch}.feedback-actions .primary,.feedback-actions .text-button{width:100%}.feedback-trigger{padding:9px 10px}}.grocery-card,.recipe-book,.cart-list-card,.settings-card,.kitchen-group,.food-check-card,.assessment-card,.pricing-grid article,.meal-card,.market-recipe-card,.saved-foods article,.cart-summary>div,.quality-goal,.recipe-shelf div,.flow-strip,.weekly-plan article{border-color:var(--line);background:var(--card);box-shadow:0 2px 4px #2c261c0d,0 14px 34px #2c261c12}.cart-summary>div{position:relative;overflow:hidden}.cart-summary>div:before{content:"";background:var(--gold);height:3px;position:absolute;inset:0 0 auto}.cart-summary>div:nth-child(2):before{background:var(--blue)}.cart-summary>div:nth-child(3):before{background:var(--peach)}.cart-summary>div:nth-child(4):before{background:var(--lav)}.cart-summary small{color:#7c8981}.kitchen-stats article:first-child{background:linear-gradient(#f6fbf4,#eef6ec);border-color:#cfdfd0}.kitchen-stats article:nth-child(2){background:linear-gradient(#f5fafc,#ecf4f7);border-color:#cddbe2}.kitchen-stats article:nth-child(3){background:linear-gradient(#fdf7f2,#f8ede3);border-color:#e6d3c3}.page-header h1:after{background:linear-gradient(90deg,var(--peach),var(--gold) 45%,var(--blue));width:54px}.treat-ranges{border:1px solid var(--line);background:#fffdf8;border-radius:14px;margin-top:14px}.treat-ranges summary{color:var(--ink);cursor:pointer;align-items:baseline;gap:9px;padding:13px 16px;font-size:.82rem;font-weight:750;display:flex}.treat-ranges summary small{color:var(--muted);font-size:.66rem;font-weight:600}.treat-ranges>p{color:var(--muted);margin:0;padding:0 16px 10px;font-size:.72rem}.treat-ranges .meal-range-list{padding:0 16px 16px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
