:root{--ink:#2b2925;--muted:#6f6961;--cream:#fdf9f5;--paper:#fffdf9;--coral:#ea7966;--coral-dark:#c95f50;--coral-soft:#fbe5df;--sage:#96a28e;--sage-dark:#66745f;--sage-soft:#edf1eb;--gold:#efb064;--gold-soft:#fbefd9;--line:#e9dfd6;--shadow:0 24px 70px rgba(74,53,37,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}.shell{width:min(1180px,calc(100% - 40px));margin:0 auto}.shell-narrow{width:min(920px,calc(100% - 40px));margin:0 auto}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;text-decoration:none;flex:0 0 auto}.brand-official{gap:9px}.brand-official-icon{width:34px;height:38px;object-fit:contain;display:block}.brand-official-wordmark{width:126px;height:auto;display:block}.desktop-nav{display:flex;gap:18px;margin-left:auto;font-size:12.5px;font-weight:750;color:var(--muted)}.brand-official img{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.brand-full-logo{display:block;width:min(230px,100%);height:auto}.footer-brand{display:flex;flex-direction:column;gap:7px;align-items:flex-start}.footer-brand small{color:var(--muted);font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.desktop-nav a:hover{color:var(--ink)}.button{min-height:52px;display:inline-flex;justify-content:center;align-items:center;gap:13px;padding:0 22px;border-radius:14px;background:var(--coral);color:white;border:0;font-weight:800;box-shadow:0 8px 22px rgba(205,88,75,.17);cursor:pointer;transition:transform .18s ease,background .18s ease}.button:hover{transform:translateY(-1px);background:var(--coral-dark)}.button-small{min-height:42px;border-radius:12px;padding:0 17px;font-size:13px;box-shadow:none}.hero{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:76px;gap:76px;align-items:center;padding-top:78px;padding-bottom:108px}.eyebrow{color:var(--coral-dark);text-transform:uppercase;letter-spacing:.14em;font-weight:850;font-size:12px}.hero h1{font-size:clamp(54px,6vw,82px);letter-spacing:-.065em;line-height:.98;margin:17px 0 26px;max-width:720px}.hero h1 em{font-style:normal;position:relative;z-index:1}.hero h1 em:after{content:"";position:absolute;height:13px;border-radius:99px;background:#f7d69a;left:-2%;right:-2%;bottom:5px;z-index:-1;transform:rotate(-1deg);opacity:.75}.hero-lead{font-size:19px;line-height:1.66;color:var(--muted);max-width:660px}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:33px}.text-link{font-size:14px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:3px}.hero-reassurance{display:flex;flex-wrap:wrap;gap:18px;margin-top:27px;font-size:12px;font-weight:750;color:var(--muted)}.match-board{background:var(--paper);border:1px solid rgba(226,215,202,.8);border-radius:27px;padding:28px;box-shadow:var(--shadow);transform:rotate(1deg)}.board-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.mini-label{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.board-topline h2{margin:0;font-size:25px;letter-spacing:-.04em}.match-score{display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:var(--sage-soft);color:#476a4a;flex:0 0 auto}.match-score strong{font-size:21px;line-height:1}.match-score span{font-size:9px;text-transform:uppercase;font-weight:800;margin-top:-15px}.component-strip{display:flex;flex-wrap:wrap;gap:7px;margin:25px 0 23px}.component-strip span,.future-chips span{padding:8px 11px;background:#f4eee6;border-radius:9px;font-size:11px;font-weight:750}.component-strip .optional{background:var(--coral-soft);color:#975044}.people-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.person-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;grid-gap:11px;gap:11px;padding:13px 0}.person-row+.person-row{border-top:1px solid var(--line)}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#f5d7cd;font-weight:850;font-size:12px}.avatar-2{background:#dae9d7}.avatar-3{background:#f5e4bd}.person-row strong{display:block;font-size:13px}.person-row small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.fit-pill{padding:6px 9px;border-radius:99px;color:#4a7551;background:var(--sage-soft);font-size:10px;font-weight:850}.adapt-note{display:grid;grid-template-columns:25px 1fr;grid-gap:9px;gap:9px;margin-top:19px;color:var(--muted)}.adapt-note>span{color:var(--coral);font-weight:900}.adapt-note strong{color:var(--ink);font-size:12px}.adapt-note p{margin:4px 0 0;line-height:1.5;font-size:11px}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.35)}.trust-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px;font-weight:750}.section{padding:116px 0}.section-heading{text-align:center;max-width:760px;margin:0 auto 52px}.section-heading.left{text-align:left;margin:0}.cta-section h2,.planner-copy h2,.section-heading h2{font-size:clamp(38px,4.4vw,58px);letter-spacing:-.055em;line-height:1.04;margin:16px 0 20px}.cta-section p,.planner-copy p,.section-heading p{color:var(--muted);line-height:1.7;font-size:17px}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.step-card{min-height:310px;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:27px}.step-number{color:var(--coral);font-size:12px;font-weight:900;letter-spacing:.1em}.step-card h3{font-size:22px;letter-spacing:-.035em;margin:26px 0 10px}.step-card p{margin:0;color:var(--muted);line-height:1.65;font-size:14px}.choice-demo{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px;margin-top:auto}.choice-demo span{text-align:center;border-radius:8px;background:#f2eee8;padding:9px 4px;font-size:9px;font-weight:800}.choice-demo span:first-child{background:var(--sage-soft);color:#547357}.choice-demo span:last-child{background:var(--coral-soft);color:#9b5147}.mini-faces{display:flex;align-items:center;margin-top:auto}.mini-faces b{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#edd1c7;border:2px solid var(--paper);margin-right:-7px;font-size:10px}.mini-faces b:nth-child(2){background:#d9e8d5}.mini-faces b:nth-child(3){background:#f1dfb9}.mini-faces span{margin-left:16px;font-size:10px;color:var(--muted);font-weight:800}.mini-match{margin-top:auto;display:flex;align-items:baseline;gap:8px}.mini-match strong{font-size:36px;color:#58785b;letter-spacing:-.06em}.mini-match span{font-size:10px;text-transform:uppercase;font-weight:800;color:var(--muted)}.section-tinted{background:#f3eee6}.split-section{display:grid;grid-template-columns:.85fr 1.15fr;grid-gap:90px;gap:90px;align-items:center}.clean-list{list-style:none;padding:0;margin:31px 0 0;display:grid;grid-gap:12px;gap:12px;color:var(--muted);font-weight:700;font-size:13px}.clean-list span{color:var(--sage);font-weight:900;margin-right:10px}.meal-stack{display:grid;grid-gap:12px;gap:12px}.meal-card{display:grid;grid-template-columns:64px 1fr auto;grid-gap:16px;gap:16px;align-items:center;background:var(--paper);padding:17px 19px;border-radius:18px;border:1px solid #e5ddd2;box-shadow:0 10px 30px rgba(71,53,42,.04)}.score-ring{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--sage-soft);color:#537257;position:relative}.score-ring strong{font-size:18px}.score-ring span{position:absolute;right:10px;top:15px;font-size:8px}.meal-card h3{margin:0 0 5px;font-size:15px}.meal-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.arrow{color:var(--coral);font-size:19px;font-weight:900}.planner-preview{display:grid;grid-template-columns:1fr 1fr;grid-gap:90px;gap:90px;align-items:center}.planner-copy p{max-width:560px}.future-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:26px}.week-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:16px;box-shadow:var(--shadow)}.day-row{display:grid;grid-template-columns:48px 1fr auto;grid-gap:14px;gap:14px;align-items:center;padding:18px 13px;border-bottom:1px solid var(--line)}.day-row>span{font-size:10px;font-weight:900;color:var(--muted);letter-spacing:.08em}.day-row strong{font-size:13px}.day-row b{font-size:11px;color:#5c805f}.swap-demo{width:100%;border:0;background:var(--coral-soft);color:#995348;font-weight:850;border-radius:12px;padding:13px;margin-top:14px;cursor:pointer}.cta-section{margin-bottom:90px;background:var(--coral);color:white;border-radius:30px;padding:58px 62px;display:flex;align-items:center;justify-content:space-between;gap:50px}.cta-section>div{max-width:720px}.cta-section .eyebrow{color:#ffe0d7}.cta-section h2{font-size:clamp(36px,4vw,52px)}.cta-section p{color:#ffe8e2;margin-bottom:0}.button-light{background:white;color:var(--coral-dark);box-shadow:none;white-space:nowrap}.button-light:hover{background:#fff7f3;color:var(--coral-dark)}.footer{min-height:120px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;grid-gap:30px;gap:30px;color:var(--muted);font-size:10px}.footer p{text-align:center}.footer>span{text-align:right}.onboarding-page{min-height:100vh;background:#f8f3ec}.onboarding-header{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.setup-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--muted)}.onboarding-wrap{padding:38px 0 80px}.progress-row{height:5px;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:7px;gap:7px;margin-bottom:48px}.progress-row span{border-radius:99px;background:#e5ddd3}.progress-row span.active{background:var(--coral)}.setup-panel{max-width:660px;margin:0 auto;text-align:center}.setup-panel.setup-wide{max-width:920px}.setup-panel h1{font-size:clamp(40px,6vw,58px);letter-spacing:-.06em;line-height:1.02;margin:14px 0}.setup-panel>p{color:var(--muted);line-height:1.6;margin:0 auto 32px;max-width:620px}.big-options{display:grid;grid-gap:10px;gap:10px;text-align:left}.big-options>button{display:grid;grid-template-columns:22px 1fr;grid-gap:13px;gap:13px;align-items:center;width:100%;border:1px solid var(--line);background:var(--paper);border-radius:16px;padding:18px;cursor:pointer}.big-options>button.selected{border-color:var(--coral);box-shadow:0 0 0 2px var(--coral-soft)}.radio-dot{width:18px;height:18px;border:2px solid #c9bdb1;border-radius:50%;position:relative}.selected .radio-dot{border-color:var(--coral)}.selected .radio-dot:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--coral)}.big-options small,.big-options strong{display:block}.big-options strong{font-size:14px}.big-options small{font-size:11px;color:var(--muted);margin-top:4px}.setup-next{margin-top:27px;min-width:160px}.food-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px;text-align:left}.food-choice{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:13px}.food-name{display:flex;align-items:center;gap:9px;margin-bottom:10px}.food-name>span{font-size:21px}.food-name strong{font-size:13px}.food-buttons{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px}.food-buttons button{border:0;background:#f2ede6;padding:8px 3px;border-radius:8px;font-size:9px;font-weight:800;cursor:pointer}.food-buttons .picked.love{background:var(--sage-soft);color:#4e7153}.food-buttons .picked.fine{background:#f8e9c8;color:#88692e}.food-buttons .picked.no{background:var(--coral-soft);color:#9b5147}.setup-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px}.setup-bottom .setup-next{margin-top:0}.setup-bottom>span{font-size:10px;color:var(--muted);font-weight:800}.back-link{background:none;border:0;cursor:pointer;font-size:12px;font-weight:850;color:var(--muted)}.toggle-list{display:grid;grid-gap:9px;gap:9px;text-align:left}.toggle-list>button{display:grid;grid-template-columns:46px 1fr;grid-gap:14px;gap:14px;align-items:center;border:1px solid var(--line);background:var(--paper);padding:17px;border-radius:15px;cursor:pointer}.toggle-list small,.toggle-list strong{display:block}.toggle-list strong{font-size:13px}.toggle-list small{font-size:10px;color:var(--muted);margin-top:4px}.toggle{width:42px;height:24px;border-radius:99px;background:#ddd4ca;padding:3px;transition:.2s}.toggle i{display:block;width:18px;height:18px;background:white;border-radius:50%;transition:.2s}.toggle-list>button.on .toggle{background:var(--sage)}.toggle-list>button.on .toggle i{transform:translateX(18px)}.result-panel{max-width:720px}.result-kicker{display:block;color:var(--muted);font-size:11px;font-weight:800;margin-bottom:17px}.result-score{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:var(--sage-soft);color:#517255;margin:0 auto 25px}.result-score strong{font-size:36px;letter-spacing:-.06em;line-height:1}.result-score span{font-size:9px;text-transform:uppercase;font-weight:850;margin-top:-28px}.result-reasons{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:22px 0 28px}.result-reasons span{padding:8px 10px;border-radius:9px;background:var(--paper);border:1px solid var(--line);font-size:10px;font-weight:800;color:var(--muted)}.preview-meals{display:grid;grid-gap:8px;gap:8px;text-align:left;margin-bottom:20px}.preview-meals>div{display:grid;grid-template-columns:60px 1fr auto;align-items:center;grid-gap:13px;gap:13px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:13px 15px}.preview-meals b{color:#5d805f;font-size:16px}.preview-meals strong{font-size:12px}.preview-meals small{color:var(--muted);font-size:9px}.preview-note{border-radius:12px;background:#f1e8dc;padding:13px;color:var(--muted);font-size:10px;line-height:1.6;margin-bottom:24px}@media (max-width:900px){.desktop-nav{display:none}.hero{grid-template-columns:1fr;gap:50px;padding-top:48px}.hero-copy{text-align:center}.hero-lead{margin-left:auto;margin-right:auto}.hero-actions,.hero-reassurance{justify-content:center}.match-board{max-width:620px;margin:0 auto;transform:none}.steps-grid{grid-template-columns:1fr}.step-card{min-height:250px}.planner-preview,.split-section{grid-template-columns:1fr;gap:50px}.section-heading.left{text-align:center;margin:0 auto}.clean-list{max-width:440px;margin-left:auto;margin-right:auto;text-align:left}.cta-section{flex-direction:column;text-align:center;padding:48px 35px}.footer{grid-template-columns:1fr;padding:34px 0}.footer,.footer p,.footer>span{text-align:center}.footer-brand{align-items:center}.food-grid{grid-template-columns:1fr}}@media (max-width:620px){.shell,.shell-narrow{width:min(100% - 28px,1180px)}.site-header{height:72px}.site-header .button-small{display:none}.brand-official-icon{width:30px;height:33px}.brand-official-wordmark{width:112px}.hero{padding-top:37px;padding-bottom:70px}.hero h1{font-size:48px}.hero-lead{font-size:16px}.hero-actions{flex-direction:column;gap:16px}.hero-reassurance{gap:9px 14px}.match-board{padding:19px;border-radius:20px}.board-topline h2{font-size:20px}.match-score{width:61px;height:61px}.match-score strong{font-size:17px}.trust-inner{justify-content:center;flex-wrap:wrap;padding:15px 0;gap:9px 18px}.section{padding:78px 0}.cta-section h2,.planner-copy h2,.section-heading h2{font-size:37px}.cta-section p,.planner-copy p,.section-heading p{font-size:15px}.step-card{padding:22px}.split-section{gap:38px}.meal-card{grid-template-columns:54px 1fr}.meal-card .arrow{display:none}.planner-preview{gap:35px}.day-row{grid-template-columns:41px 1fr auto;gap:8px;padding:15px 6px}.day-row strong{font-size:11px}.cta-section{margin:0 14px 50px;width:calc(100% - 28px);border-radius:22px;padding:40px 23px}.onboarding-header{height:70px}.setup-label{display:none}.onboarding-wrap{padding-top:25px}.progress-row{margin-bottom:35px}.setup-panel{text-align:left}.setup-panel h1{font-size:42px}.setup-panel>p{margin-left:0}.big-options{margin-top:24px}.setup-next{width:100%}.food-buttons button{font-size:8px}.setup-bottom{display:grid;grid-template-columns:auto 1fr}.setup-bottom .setup-next{grid-column:1/-1;order:3}.setup-bottom>span{text-align:right}.toggle-list>button{padding:14px}.result-panel{text-align:center}.preview-meals>div{grid-template-columns:52px 1fr}.preview-meals small{display:none}}.button:disabled{opacity:.42;cursor:not-allowed;transform:none}.button:disabled:hover{background:var(--coral)}.live-result-panel{max-width:760px}.match-loading{padding:70px 0;text-align:center}.match-loading h1{margin-top:24px}.match-spinner{width:48px;height:48px;display:inline-block;border:4px solid #eadfd5;border-top:4px solid var(--coral);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.adaptation-box{margin:0 auto 22px;max-width:620px;text-align:left;border-radius:14px;padding:16px 18px;background:#fff7ea;border:1px solid #efdfc2;display:grid;grid-gap:7px;gap:7px}.adaptation-box strong{font-size:12px}.adaptation-box span{color:var(--muted);font-size:11px}.preview-meals>a{display:grid;grid-template-columns:60px 1fr auto;align-items:center;grid-gap:13px;gap:13px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:13px 15px;transition:transform .16s ease,border-color .16s ease}.preview-meals>a:hover{transform:translateY(-1px);border-color:#d7c9bb}.preview-meals>a b{color:#5d805f;font-size:16px}.preview-meals>a strong{font-size:12px}.preview-meals>a small{color:var(--muted);font-size:9px}.profile-saved-note{color:var(--muted);font-size:10px;margin:3px 0 23px}.result-actions{display:flex;justify-content:center;align-items:center;gap:20px}.matches-page,.recipe-page{min-height:100vh;background:var(--cream)}.app-header{height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.app-header-actions{display:flex;align-items:center;gap:20px;color:var(--muted);font-size:12px;font-weight:800}.app-header-actions a:hover{color:var(--ink)}.matches-hero{padding:76px 0 38px;max-width:900px}.matches-hero h1{max-width:820px;font-size:clamp(44px,6vw,72px);line-height:1;letter-spacing:-.06em;margin:15px 0 22px}.matches-hero h1 em{font-style:normal;color:var(--coral-dark)}.matches-hero p{max-width:690px;color:var(--muted);font-size:17px;line-height:1.65}.matches-content{padding-bottom:90px}.filter-pills{position:-webkit-sticky;position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:8px;padding:13px 0 20px;background:linear-gradient(var(--cream) 76%,rgba(251,247,241,0))}.filter-pills button{border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:999px;padding:10px 14px;font-size:11px;font-weight:800;cursor:pointer}.filter-pills button.active{background:var(--ink);color:white;border-color:var(--ink)}.match-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:15px;gap:15px}.match-card{min-height:330px;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:21px;transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease}.match-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(75,49,32,.07);border-color:#d9cbbd}.match-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.match-percent{color:#55785a;background:var(--sage-soft);border-radius:999px;padding:8px 10px;font-weight:900;font-size:13px}.match-tier{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:850}.match-card h2{margin:21px 0 8px;letter-spacing:-.035em;font-size:22px}.match-card>p{margin:0;color:var(--muted);line-height:1.55;font-size:12px}.match-meta{display:flex;flex-wrap:wrap;gap:6px;margin:17px 0}.match-meta span{padding:7px 8px;border-radius:8px;background:#f3ede6;color:var(--muted);font-size:9px;font-weight:800;text-transform:capitalize}.match-why{display:grid;grid-gap:5px;gap:5px;color:#58765b;font-size:10px;font-weight:750}.match-adjust{margin-top:12px;padding:9px 10px;border-radius:9px;background:#fff6e8;color:#8a6a35;font-size:9px;line-height:1.45}.match-open{margin-top:auto;padding-top:20px;color:var(--coral-dark);font-size:11px}.match-open span{margin-left:4px}.matches-loading{padding:60px 0;color:var(--muted);font-weight:750}.empty-state{max-width:720px;margin-top:80px;padding:45px;background:var(--paper);border:1px solid var(--line);border-radius:24px;text-align:center}.empty-state h2{margin:0 0 10px;font-size:34px;letter-spacing:-.04em}.empty-state p{color:var(--muted);margin-bottom:25px}.recipe-shell{padding:70px 0 100px}.recipe-intro{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:75px;gap:75px;align-items:end}.recipe-intro h1{font-size:clamp(50px,7vw,82px);line-height:.98;letter-spacing:-.065em;margin:15px 0 20px}.recipe-intro>div:first-child>p{max-width:700px;color:var(--muted);font-size:18px;line-height:1.65}.recipe-facts{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.recipe-facts span{border:1px solid var(--line);background:var(--paper);border-radius:11px;padding:10px 12px;color:var(--muted);font-size:10px;text-transform:capitalize}.recipe-facts b{color:var(--ink);font-size:12px}.recipe-fit-card{background:var(--sage-soft);border:1px solid #d8e5d5;border-radius:20px;padding:24px}.recipe-fit-card>strong{font-size:17px}.recipe-fit-card p{color:#5f745f;font-size:12px;line-height:1.6}.recipe-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:17px}.recipe-tags span{background:rgba(255,255,255,.55);border-radius:999px;padding:7px 9px;font-size:9px;font-weight:800;color:#58705a}.recipe-columns{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:18px;gap:18px;margin-top:60px;align-items:start}.recipe-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:27px}.adaptations-card h2,.recipe-card h2{font-size:30px;letter-spacing:-.045em;margin:7px 0 22px}.ingredients-card ul{list-style:none;padding:0;margin:0}.ingredients-card li{min-height:47px;display:grid;grid-template-columns:70px 1fr auto;grid-gap:10px;gap:10px;align-items:center;border-top:1px solid var(--line)}.ingredients-card li:first-child{border-top:0}.ingredients-card li>span{color:var(--muted);font-size:10px}.ingredients-card li strong{font-size:11px}.ingredients-card li em{font-style:normal;color:#9a7550;background:#fff3df;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:800}.method-card ol{list-style:none;padding:0;margin:0;display:grid;grid-gap:4px;gap:4px}.method-card li{display:grid;grid-template-columns:34px 1fr;grid-gap:14px;gap:14px;padding:14px 0;border-top:1px solid var(--line)}.method-card li:first-child{border-top:0}.method-card li>span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--coral-soft);color:var(--coral-dark);font-size:10px;font-weight:900}.method-card li p{margin:4px 0 0;color:var(--muted);line-height:1.65;font-size:12px}.adaptations-card{margin-top:18px;background:#fff8eb;border:1px solid #eedfca;border-radius:22px;padding:30px;display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:60px;gap:60px}.adaptations-card>div:first-child>p{color:var(--muted);font-size:12px}.adaptation-list{display:grid;grid-gap:8px;gap:8px}.adaptation-list>div{background:rgba(255,255,255,.65);border-radius:12px;padding:13px 15px;display:grid;grid-template-columns:24px 1fr;grid-gap:7px;gap:7px}.adaptation-list span{color:var(--coral);font-weight:900}.adaptation-list p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}@media (max-width:900px){.match-grid{grid-template-columns:repeat(2,1fr)}.adaptations-card,.recipe-columns,.recipe-intro{grid-template-columns:1fr;gap:28px}.recipe-fit-card{max-width:620px}}@media (max-width:620px){.result-actions{flex-direction:column;gap:14px}.result-actions .button{width:100%}.preview-meals>a{grid-template-columns:52px 1fr}.preview-meals>a small{display:none}.app-header{height:70px}.app-header .button-small{display:none}.app-header-actions{gap:12px;font-size:10px}.matches-hero{padding-top:45px}.matches-hero h1{font-size:47px}.matches-hero p{font-size:15px}.filter-pills{flex-wrap:nowrap;overflow-x:auto;margin-right:-14px;padding-right:14px;scrollbar-width:none}.filter-pills::-webkit-scrollbar{display:none}.filter-pills button{white-space:nowrap}.match-grid{grid-template-columns:1fr}.match-card{min-height:300px}.recipe-shell{padding-top:45px}.recipe-intro h1{font-size:49px}.recipe-intro>div:first-child>p{font-size:15px}.adaptations-card,.recipe-card{padding:21px}.recipe-columns{margin-top:38px}.ingredients-card li{grid-template-columns:58px 1fr;padding:7px 0}.ingredients-card li em{display:none}}.button-soft{background:var(--paper);color:var(--coral-dark);border:1px solid #efc9c1}.button-soft:hover{background:#fff6f2;color:var(--coral-dark)}.result-actions-wrap{flex-wrap:wrap}.taste-page{min-height:100vh;background:var(--cream)}.taste-hero{padding:66px 0 38px;display:grid;grid-template-columns:1.3fr .7fr;grid-gap:52px;gap:52px;align-items:end}.taste-hero h1{max-width:820px;font-size:clamp(43px,5.6vw,70px);line-height:1.02;letter-spacing:-.058em;margin:14px 0 20px}.taste-hero h1 em{font-style:normal;color:var(--coral-dark)}.taste-hero>div:first-child>p{max-width:760px;color:var(--muted);line-height:1.65;font-size:16px;margin:0}.taste-summary-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 12px 34px rgba(75,49,32,.05)}.taste-summary-card>strong{display:block;margin:17px 0 14px;font-size:27px;letter-spacing:-.04em}.taste-summary-card>div{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.taste-summary-card>div span{padding:9px 10px;background:#f5efe8;border-radius:10px;color:var(--muted);font-size:9px;font-weight:800}.taste-summary-card>div b{color:var(--ink);font-size:12px}.save-state{color:#59795c;background:var(--sage-soft);border-radius:999px;padding:7px 9px;display:inline-flex;font-size:9px;font-weight:850;transition:transform .15s ease}.save-state.pulse{transform:scale(1.03)}.taste-layout{display:grid;grid-template-columns:245px 1fr;grid-gap:28px;gap:28px;align-items:start;padding-bottom:110px}.taste-nav{position:-webkit-sticky;position:sticky;top:18px;display:grid;grid-gap:8px;gap:8px}.taste-nav>button{border:1px solid var(--line);background:rgba(255,253,249,.65);border-radius:14px;padding:13px;display:grid;grid-template-columns:30px 1fr;grid-gap:9px;gap:9px;text-align:left;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.taste-nav>button:hover{transform:translateY(-1px);background:var(--paper)}.taste-nav>button.active{background:var(--ink);border-color:var(--ink);color:white}.taste-nav>button>span{font-size:9px;color:var(--coral);font-weight:900;margin-top:2px}.taste-nav>button.active>span{color:#f5a79c}.taste-nav>button strong{display:block;font-size:12px}.taste-nav>button small{display:block;color:var(--muted);font-size:9px;line-height:1.4;margin-top:4px}.taste-nav>button.active small{color:#cfc7c1}.taste-match-button{width:100%;margin-top:7px;min-height:46px;font-size:11px}.taste-workspace{min-width:0}.taste-section{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:30px}.taste-section-heading{max-width:720px;margin-bottom:30px}.taste-section-heading h2{font-size:36px;letter-spacing:-.045em;margin:9px 0 10px}.taste-section-heading p{color:var(--muted);margin:0;line-height:1.65;font-size:13px}.taste-category+.taste-category{margin-top:28px}.taste-category>h3{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:0 0 10px}.taste-food-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:9px;gap:9px}.taste-food-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fffdfa}.taste-food-name{display:flex;align-items:center;gap:8px;margin-bottom:10px}.taste-food-name>span{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#f5efe8;font-size:15px}.taste-food-name strong{font-size:12px}.taste-choice-buttons{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px}.taste-choice-buttons button{min-height:35px;border:1px solid var(--line);background:white;border-radius:8px;color:var(--muted);font-size:9px;font-weight:800;cursor:pointer}.taste-choice-buttons.compact button{min-height:31px}.taste-choice-buttons button.picked.love{background:var(--sage-soft);border-color:#cbdcc9;color:#4e7353}.taste-choice-buttons button.picked.fine{background:#f7ecd3;border-color:#ead5a7;color:#7c6531}.taste-choice-buttons button.picked.no{background:var(--coral-soft);border-color:#f0c8c0;color:#994f45}.form-explainer{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:#f6f0e8;border-radius:13px;padding:12px 14px;margin-bottom:16px;color:var(--muted);font-size:10px}.form-explainer b{color:var(--ink);margin-right:5px}.form-explainer span{background:white;border:1px solid var(--line);padding:7px 9px;border-radius:8px}.preparation-groups{display:grid;grid-gap:12px;gap:12px}.preparation-group{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fffdfa}.preparation-parent{padding:15px 16px;background:#f8f2eb;display:flex;gap:11px;align-items:center}.preparation-parent>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:white;font-size:18px}.preparation-parent h3{margin:0;font-size:15px}.preparation-parent p{margin:4px 0 0;color:var(--muted);font-size:9px}.preparation-list{padding:0 16px}.preparation-row{min-height:66px;display:grid;grid-template-columns:1fr 210px;grid-gap:18px;gap:18px;align-items:center;border-top:1px solid var(--line)}.preparation-row:first-child{border-top:0}.preparation-row strong{display:block;font-size:11px}.preparation-row small{display:block;margin-top:4px;color:var(--muted);line-height:1.4;font-size:9px}.style-preference-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:9px;gap:9px}.style-preference-grid>button{min-height:90px;border:1px solid var(--line);border-radius:15px;background:#fffdfa;padding:14px;display:grid;grid-template-columns:40px 1fr;grid-gap:10px;gap:10px;align-items:center;text-align:left;cursor:pointer}.style-preference-grid>button.on{border-color:#cddcc9;background:#f3f7f1}.style-preference-grid strong{display:block;font-size:11px}.style-preference-grid small{display:block;margin-top:4px;color:var(--muted);line-height:1.45;font-size:9px}.taste-tip{margin-top:18px;display:grid;grid-template-columns:24px 1fr;grid-gap:8px;gap:8px;background:#fff7e9;border:1px solid #efe0c5;border-radius:13px;padding:13px 15px;color:var(--muted)}.taste-tip>span{color:var(--coral);font-weight:900}.taste-tip p{margin:0;line-height:1.55;font-size:10px}.taste-tip strong{color:var(--ink)}.safety-block+.safety-block{margin-top:28px}.safety-block{border-top:1px solid var(--line);padding-top:25px}.safety-block-heading{display:grid;grid-template-columns:1fr .8fr;grid-gap:30px;gap:30px;align-items:end;margin-bottom:15px}.safety-block-heading h3{margin:5px 0 0;font-size:22px;letter-spacing:-.035em}.safety-block-heading>p{margin:0;color:var(--muted);line-height:1.55;font-size:10px}.hard-pass-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:7px;gap:7px}.hard-pass-grid button{border:1px solid var(--line);background:#fffdfa;border-radius:12px;padding:10px;min-height:78px;text-align:left;cursor:pointer;display:grid;grid-template-columns:26px 1fr;grid-gap:5px 7px;gap:5px 7px;align-items:center}.hard-pass-grid button>span{font-size:16px}.hard-pass-grid button strong{font-size:10px}.hard-pass-grid button i{grid-column:2;color:var(--muted);font-size:8px;font-style:normal;font-weight:800}.hard-pass-grid button.active{background:var(--coral-soft);border-color:#edc7bf}.hard-pass-grid button.active i{color:#984f45}.allergy-warning{background:#fff5e8;border:1px solid #edd9bb;border-radius:13px;padding:13px 15px;margin-bottom:13px;display:grid;grid-template-columns:70px 1fr;grid-gap:10px;gap:10px}.allergy-warning strong{color:#8b5f28;font-size:10px}.allergy-warning p{margin:0;color:#7a6956;font-size:9px;line-height:1.55}.allergen-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:7px;gap:7px}.allergen-grid button{min-height:46px;border:1px solid var(--line);background:#fffdfa;border-radius:11px;display:grid;grid-template-columns:24px 1fr;grid-gap:8px;gap:8px;align-items:center;text-align:left;padding:9px 11px;cursor:pointer}.allergen-grid button.active{background:#fcedea;border-color:#ecc8c0}.allergen-check{width:20px;height:20px;border-radius:6px;border:1px solid #ddcfc1;background:white;display:grid;place-items:center;color:var(--coral-dark);font-size:10px;font-weight:900}.allergen-grid button.active .allergen-check{border-color:#dfa49a}.allergen-grid strong{font-size:10px}.match-profile-strip{margin-top:23px;display:flex;flex-wrap:wrap;gap:7px;align-items:center}.match-profile-strip>span{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:8px 10px;color:var(--muted);font-size:9px;font-weight:800}.match-profile-strip>span b{color:var(--ink)}.match-profile-strip>a{color:var(--coral-dark);font-size:10px;font-weight:850;margin-left:4px}.filtering-note{display:grid;grid-template-columns:28px 1fr;grid-gap:10px;gap:10px;align-items:start;margin-bottom:5px;background:var(--sage-soft);border:1px solid #d4e1d1;border-radius:13px;padding:12px 14px;color:#607260}.filtering-note>span{width:24px;height:24px;border-radius:50%;background:white;display:grid;place-items:center;color:#55775a;font-size:10px;font-weight:900}.filtering-note p{margin:2px 0 0;line-height:1.5;font-size:9px}.filtering-note strong{color:#4b684f}.empty-state.compact{margin:28px 0 0;max-width:none;padding:34px}.recipe-allergy-alert{margin-bottom:22px;border:1px solid #edd8b7;background:#fff6e7;border-radius:15px;padding:14px 16px}.recipe-allergy-alert.danger{background:#fce9e5;border-color:#edc2b9}.recipe-allergy-alert strong{display:block;color:#8a5e25;font-size:11px}.recipe-allergy-alert.danger strong{color:#974b40}.recipe-allergy-alert p{margin:5px 0 0;color:var(--muted);line-height:1.5;font-size:10px}.recipe-allergen-card{margin-top:18px;border:1px solid var(--line);background:var(--paper);border-radius:20px;padding:24px;display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:35px;gap:35px}.recipe-allergen-card h2{margin:5px 0 8px;font-size:24px;letter-spacing:-.035em}.recipe-allergen-card p{color:var(--muted);line-height:1.55;font-size:10px;margin:0}.recipe-allergen-card>div:last-child{display:grid;grid-gap:8px;gap:8px;align-content:center}.recipe-allergen-card>div:last-child p{background:#f7f1ea;border-radius:10px;padding:10px 12px}.recipe-allergen-card strong{color:var(--ink)}@media (max-width:980px){.taste-hero{grid-template-columns:1fr;gap:24px}.taste-summary-card{max-width:520px}.taste-layout{grid-template-columns:1fr}.taste-nav{position:static;grid-template-columns:repeat(4,1fr)}.taste-nav>button{grid-template-columns:1fr}.taste-nav>button>span{display:none}.taste-match-button{grid-column:1/-1}.hard-pass-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.taste-hero{padding-top:42px}.taste-hero h1{font-size:46px}.taste-hero>div:first-child>p{font-size:14px}.taste-layout{width:min(100% - 24px,1180px)}.taste-nav{display:flex;overflow-x:auto;gap:7px;margin-right:-12px;padding-right:12px;scrollbar-width:none}.taste-nav::-webkit-scrollbar{display:none}.taste-nav>button{flex:0 0 auto;min-width:130px;padding:11px}.taste-nav>button small{display:none}.taste-match-button{flex:0 0 auto;width:auto;white-space:nowrap;margin:0}.taste-section{padding:20px;border-radius:19px}.allergen-grid,.preparation-row,.style-preference-grid,.taste-food-grid{grid-template-columns:1fr}.preparation-row{gap:8px;padding:12px 0}.preparation-row .taste-choice-buttons{width:100%}.hard-pass-grid{grid-template-columns:repeat(2,1fr)}.safety-block-heading{gap:8px}.allergy-warning,.recipe-allergen-card,.safety-block-heading{grid-template-columns:1fr}.recipe-allergen-card{gap:16px}.match-profile-strip{gap:5px}}@media (max-width:430px){.taste-hero h1{font-size:40px}.taste-summary-card>div{grid-template-columns:1fr 1fr}.taste-section-heading h2{font-size:31px}.hard-pass-grid{grid-template-columns:1fr 1fr}}.household-page{min-height:100vh;background:var(--cream)}.household-hero{padding:72px 0 42px;display:grid;grid-template-columns:minmax(0,1fr) 270px;grid-gap:70px;gap:70px;align-items:end}.household-hero h1{max-width:760px;font-size:clamp(46px,6vw,72px);line-height:.99;letter-spacing:-.06em;margin:14px 0 20px}.household-hero h1 em{font-style:normal;color:var(--coral-dark)}.household-hero>div:first-child>p{max-width:720px;color:var(--muted);font-size:16px;line-height:1.7}.household-status-card{border:1px solid var(--line);background:var(--paper);border-radius:22px;padding:23px;box-shadow:0 16px 45px rgba(74,55,43,.05)}.household-status-card>span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:850}.household-status-card>strong{display:block;font-size:45px;letter-spacing:-.07em;margin:7px 0 5px}.household-status-card>strong i{font-style:normal;color:#c9beb2;font-size:24px;padding:0 4px}.household-status-card>small{display:block;color:var(--muted);font-size:10px;line-height:1.5}.household-content{padding-bottom:100px;display:grid;grid-gap:70px;gap:70px}.household-match-panel,.household-members-panel{min-width:0}.household-results-heading,.household-section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:18px}.household-results-heading h2,.household-section-heading h2{font-size:30px;letter-spacing:-.04em;margin:5px 0 0}.household-results-heading>small,.household-section-heading>p{max-width:470px;color:var(--muted);font-size:11px;line-height:1.6;text-align:right}.household-member-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.household-member-card{background:var(--paper);border:1px solid var(--line);border-radius:19px;padding:18px;position:relative}.household-member-card.ready{box-shadow:inset 0 3px 0 var(--sage)}.household-avatar{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:15px;font-weight:900;margin-bottom:16px}.household-avatar-1,.tiny-avatar-1{background:var(--coral-soft);color:#984f45}.household-avatar-2,.tiny-avatar-2{background:var(--sage-soft);color:#527156}.household-avatar-3,.tiny-avatar-3{background:#f7e8c6;color:#81642e}.household-avatar-4,.tiny-avatar-4{background:#e7e0ef;color:#67577a}.household-member-title{display:flex;justify-content:space-between;gap:12px;align-items:start}.household-member-title h3{font-size:18px;margin:0 0 3px;letter-spacing:-.03em}.household-member-title span{color:var(--muted);font-size:9px}.profile-needs-work,.profile-ready{flex:0 0 auto;border-radius:999px;padding:6px 8px;font-size:8px;text-transform:uppercase;letter-spacing:.05em}.profile-ready{background:var(--sage-soft);color:#55755a}.profile-needs-work{background:#f1ebe4;color:#887c70}.household-member-stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px;padding:15px 0;margin-top:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.household-member-stats span{color:var(--muted);font-size:9px}.household-member-stats b{color:var(--ink)}.household-member-actions{min-height:54px;display:flex;flex-wrap:wrap;gap:9px 14px;align-items:end;padding-top:14px}.household-member-actions a,.household-member-actions button{border:0;background:none;padding:0;font-size:10px;font-weight:850;cursor:pointer;color:var(--coral-dark)}.household-member-actions button{color:#9b8f83;margin-left:auto}.household-member-actions a:nth-child(2){color:var(--muted)}.add-member-card{margin-top:12px;border:1px dashed #d4c7ba;background:rgba(255,253,250,.5);border-radius:19px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:24px}.add-member-card>div:first-child{display:flex;align-items:center;gap:13px}.add-person-plus{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eee6dc;color:var(--coral-dark);font-size:22px}.add-member-card small,.add-member-card strong{display:block}.add-member-card strong{font-size:12px}.add-member-card small{color:var(--muted);font-size:9px;margin-top:3px}.add-member-controls{display:flex;gap:8px;min-width:370px}.add-member-controls input{flex:1 1;min-width:0;border:1px solid var(--line);background:white;border-radius:11px;padding:0 13px;font-size:11px;outline:none}.add-member-controls input:focus{border-color:#dca298;box-shadow:0 0 0 3px var(--coral-soft)}.household-match-intro{background:var(--ink);color:white;border-radius:28px;padding:40px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"eyebrow button" "title button" "copy button";grid-gap:0 50px;gap:0 50px;align-items:center}.household-match-intro .eyebrow{grid-area:eyebrow;color:#f6c9bf}.household-match-intro h2{grid-area:title;font-size:38px;letter-spacing:-.05em;margin:9px 0 12px}.household-match-intro>p{grid-area:copy;max-width:680px;color:#d8d0c7;font-size:13px;line-height:1.65;margin:0}.household-callout,.household-match-button{grid-area:button}.household-match-button{white-space:nowrap;background:white;color:var(--ink);box-shadow:none}.household-match-button:hover{background:#f7efe7;color:var(--ink)}.household-callout{max-width:300px;padding:17px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:14px}.household-callout strong{font-size:11px}.household-callout p{color:#d8d0c7;font-size:9px;line-height:1.5;margin:5px 0 0}.household-error{margin-top:12px;border-radius:14px;padding:15px 17px;background:#fcedea;border:1px solid #ebcbc4}.household-error strong{font-size:11px}.household-error p{font-size:10px;color:var(--muted);margin:4px 0 0}.household-filter-note{margin-top:12px}.household-results{padding-top:38px}.household-match-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.household-match-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:20px}.household-match-card-head{display:flex;justify-content:space-between;align-items:start;gap:20px}.household-match-card-head>div{display:flex;align-items:center;gap:9px}.household-match-card-head>div>small,.household-match-card-head>span{color:var(--muted);font-size:9px}.household-match-card-head>span{font-weight:800}.household-score{font-size:24px;color:#58775c;letter-spacing:-.05em;font-weight:900}.household-match-card h3{font-size:20px;letter-spacing:-.035em;margin:14px 0 7px}.household-match-card>p{color:var(--muted);line-height:1.55;font-size:11px;margin:0}.household-reasons{display:flex;flex-wrap:wrap;gap:5px;margin:13px 0}.household-reasons span{background:#f0eee9;border-radius:8px;padding:6px 8px;color:#71675e;font-size:8px;font-weight:800}.household-person-fits{display:grid;grid-gap:6px;gap:6px;margin-top:14px}.household-person-fits>div{display:grid;grid-template-columns:28px 1fr auto;align-items:center;grid-gap:9px;gap:9px;border-top:1px solid var(--line);padding-top:8px}.tiny-avatar{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;font-size:9px;font-weight:900}.household-person-fits small,.household-person-fits strong{display:block}.household-person-fits strong{font-size:9px}.household-person-fits small{color:var(--muted);font-size:8px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}.household-person-fits b{font-size:11px;color:#5a765d}.household-open-recipe{display:flex;justify-content:space-between;align-items:center;margin-top:16px;border-radius:11px;background:#f3eee7;padding:11px 12px;color:var(--ink);font-size:10px;font-weight:850}.step-inline-link{display:inline-block;margin-top:15px;color:var(--coral-dark);font-size:10px;font-weight:850}@media (max-width:900px){.household-hero{grid-template-columns:1fr;gap:24px}.household-status-card{max-width:360px}.household-member-grid{grid-template-columns:repeat(2,1fr)}.household-match-intro{grid-template-columns:1fr;grid-template-areas:"eyebrow" "title" "copy" "button";gap:0}.household-callout,.household-match-button{margin-top:22px;width:100%;max-width:none}}@media (max-width:620px){.household-hero{padding-top:43px}.household-hero h1{font-size:46px}.household-hero>div:first-child>p{font-size:14px}.household-results-heading,.household-section-heading{display:block}.household-results-heading>small,.household-section-heading>p{display:block;text-align:left;margin-top:8px}.household-match-grid,.household-member-grid{grid-template-columns:1fr}.add-member-card{display:block}.add-member-controls{min-width:0;margin-top:14px}.add-member-controls .button{width:auto}.household-match-intro{padding:27px 21px;border-radius:22px}.household-match-intro h2{font-size:32px}.household-person-fits small{max-width:190px}}.allergy-selection-key{margin-bottom:10px;border-radius:12px;padding:11px 13px;background:#f9e8e4;border:1px solid #ebc5bd;display:flex;justify-content:space-between;gap:18px;align-items:center}.allergy-selection-key strong{color:#943f34;font-size:10px;letter-spacing:.04em}.allergy-selection-key span{color:#7c625d;font-size:9px;line-height:1.45;text-align:right}.allergen-grid button{grid-template-columns:82px 1fr;grid-template-rows:auto auto;column-gap:10px;row-gap:2px}.allergen-grid button.active{background:#f9dfda;border-color:#df9e92;box-shadow:inset 0 0 0 1px rgba(205,88,75,.08)}.allergen-grid button strong{grid-column:2;grid-row:1}.allergen-grid button small{grid-column:2;grid-row:2;color:var(--muted);font-size:8px;line-height:1.35}.allergen-state{grid-column:1;grid-row:1/span 2;min-height:26px;border-radius:8px;display:grid;place-items:center;align-self:stretch;background:#f0ebe5;color:#8c8176;font-size:7px;line-height:1.1;text-align:center;font-weight:900;letter-spacing:.04em}.allergen-grid button.active .allergen-state{background:#a94d42;color:white}.profile-saved-note a{color:var(--coral-dark);text-decoration:underline;text-underline-offset:2px;font-weight:800}.account-page{min-height:100vh;background:var(--cream)}.account-hero{padding:72px 0 44px;display:grid;grid-template-columns:minmax(0,1fr) 290px;grid-gap:70px;gap:70px;align-items:end}.account-hero h1{max-width:760px;font-size:clamp(48px,6vw,74px);line-height:.98;letter-spacing:-.062em;margin:14px 0 19px}.account-hero h1 em{font-style:normal;color:var(--coral-dark)}.account-hero>div:first-child>p{max-width:700px;color:var(--muted);line-height:1.7;font-size:16px}.account-local-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 16px 45px rgba(74,55,43,.05)}.account-local-card>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:850}.account-local-card>strong{display:block;font-size:43px;letter-spacing:-.065em;margin:7px 0 11px}.account-local-card>strong small{font-size:12px;color:var(--muted);letter-spacing:0}.account-local-card>div{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px}.account-local-card>div span{background:#f5efe8;border-radius:9px;padding:8px 9px;color:var(--muted);font-size:8px}.account-local-card b{color:var(--ink)}.account-content{padding-bottom:110px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);grid-gap:24px;gap:24px;align-items:start}.account-panel,.account-side-panel{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:30px}.account-side-panel{background:#f2ece4;position:-webkit-sticky;position:sticky;top:20px}.account-copy h2,.account-side-panel h2,.signed-in-panel h2{letter-spacing:-.045em}.account-side-panel h2{font-size:30px;line-height:1.08;margin:10px 0 22px}.account-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:5px;gap:5px;padding:4px;border-radius:12px;background:#f1ebe4;margin-bottom:26px}.account-tabs button{border:0;background:transparent;border-radius:9px;padding:10px;font-size:10px;font-weight:850;cursor:pointer;color:var(--muted)}.account-tabs button.active{background:white;color:var(--ink);box-shadow:0 3px 10px rgba(71,53,42,.05)}.account-copy h2,.signed-in-panel h2{margin:6px 0 8px;font-size:31px}.account-copy>p,.signed-in-panel>p{color:var(--muted);line-height:1.6;font-size:11px;margin:0 0 21px}.account-form{display:grid;grid-gap:13px;gap:13px}.account-form label{display:grid;grid-gap:6px;gap:6px}.account-form label>span{font-size:9px;font-weight:850;color:#60564e}.account-form input{min-height:47px;width:100%;border:1px solid var(--line);border-radius:11px;background:white;padding:0 13px;outline:none;font-size:11px}.account-form input:focus{border-color:#dca298;box-shadow:0 0 0 3px var(--coral-soft)}.account-submit{width:100%;margin-top:5px}.account-privacy-note{margin-top:18px;padding:14px;border-radius:13px;background:var(--sage-soft)}.account-privacy-note strong{display:block;color:#4f7154;font-size:10px}.account-privacy-note p{color:#657a68;margin:4px 0 0;line-height:1.5;font-size:9px}.account-message{margin:2px 0;border-radius:10px;padding:10px 12px;font-size:9px;line-height:1.45}.account-message.error{background:#f9e3df;color:#8d453c;border:1px solid #eac2ba}.account-message.success{background:var(--sage-soft);color:#527157;border:1px solid #cdddc9}.signed-in-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--sage-soft);color:#4f7655;font-weight:900;font-size:18px;margin-bottom:20px}.account-detail-row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:16px 0;font-size:10px}.account-detail-row span{color:var(--muted)}.account-sync-explainer{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin:15px 0}.account-sync-explainer>div{background:#f5efe8;border-radius:12px;padding:13px}.account-sync-explainer strong{font-size:10px}.account-sync-explainer p{color:var(--muted);margin:4px 0 0;font-size:8px;line-height:1.5}.account-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:20px}.button-soft{background:#f1ebe4;color:var(--ink);box-shadow:none}.button-soft:hover{background:#e8dfd5;color:var(--ink)}.account-logout{border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:850;cursor:pointer;padding:10px}.account-smallprint{margin-top:18px!important;font-size:8px!important}.account-benefits{display:grid;grid-gap:9px;gap:9px}.account-benefits>div{background:rgba(255,255,255,.52);border:1px solid rgba(225,215,203,.9);border-radius:13px;padding:13px;display:grid;grid-template-columns:30px 1fr;grid-gap:10px;gap:10px}.account-benefits>div>span{color:var(--coral-dark);font-size:9px;font-weight:900;letter-spacing:.07em}.account-benefits p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.account-benefits p strong{display:block;color:var(--ink);font-size:10px;margin-bottom:3px}@media (max-width:900px){.account-hero{grid-template-columns:1fr;gap:22px}.account-local-card{max-width:360px}.account-content{grid-template-columns:1fr}.account-side-panel{position:static}}@media (max-width:620px){.allergy-selection-key{display:block}.allergy-selection-key span{display:block;text-align:left;margin-top:4px}.allergen-grid button{grid-template-columns:76px 1fr}.account-hero{padding-top:43px}.account-hero h1{font-size:46px}.account-panel,.account-side-panel{padding:21px;border-radius:19px}.account-sync-explainer{grid-template-columns:1fr}.account-actions .button{width:100%}}.week-page{min-height:100vh;background:var(--cream)}.week-hero{padding:70px 0 38px;display:grid;grid-template-columns:minmax(0,1fr) 285px;grid-gap:70px;gap:70px;align-items:end}.week-hero h1{max-width:850px;font-size:clamp(48px,6vw,74px);line-height:.99;letter-spacing:-.062em;margin:14px 0 18px}.week-hero h1 em{font-style:normal;color:var(--coral-dark)}.week-hero>div:first-child>p{max-width:740px;color:var(--muted);line-height:1.7;font-size:16px}.week-summary-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 16px 45px rgba(74,55,43,.05)}.week-summary-card>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:850}.week-summary-card>strong{display:block;margin:7px 0 8px;font-size:34px;line-height:1;letter-spacing:-.055em}.week-summary-card>small{display:block;color:var(--muted);font-size:9px;line-height:1.5}.week-controls{display:grid;grid-template-columns:minmax(280px,1fr) 190px auto;grid-gap:16px;gap:16px;align-items:end;margin-bottom:18px;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:18px}.week-mode-pills{display:flex;gap:5px;background:#f2ece5;padding:4px;border-radius:11px;width:-moz-fit-content;width:fit-content}.week-mode-pills button{border:0;background:transparent;border-radius:8px;min-height:34px;padding:0 13px;color:var(--muted);font-size:9px;font-weight:850;cursor:pointer}.week-mode-pills button.active{background:white;color:var(--ink);box-shadow:0 3px 10px rgba(71,53,42,.06)}.week-mode-pills button:disabled{opacity:.4;cursor:not-allowed}.week-readiness-note{margin:8px 0 0;color:#8b675e;font-size:8px;line-height:1.4}.week-readiness-note a{color:var(--coral-dark);font-weight:850}.week-date-control{display:grid;grid-gap:6px;gap:6px}.week-date-control input{width:100%;min-height:42px;border:1px solid var(--line);background:white;border-radius:10px;padding:0 11px;color:var(--ink);font-size:10px;outline:none}.week-main-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}.week-main-actions .button{white-space:nowrap;min-height:43px;font-size:10px}.week-clear-button{border:0;background:transparent;color:var(--muted);font-size:9px;font-weight:850;cursor:pointer;padding:11px}.week-message{margin-bottom:15px;padding:12px 15px;border-radius:12px;background:var(--sage-soft);border:1px solid #cbdcc8;color:#557059;font-size:9px;line-height:1.5;font-weight:700}.week-message.error{background:#f9e3df;border-color:#e8c0b8;color:#8a453c}.week-board{display:grid;grid-gap:8px;gap:8px;padding-bottom:50px}.week-day-card{display:grid;grid-template-columns:82px minmax(0,1fr) auto;grid-gap:18px;gap:18px;align-items:center;min-height:118px;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:16px 18px;transition:border .18s ease,transform .18s ease}.week-day-card:hover{border-color:#decfc2;transform:translateY(-1px)}.week-day-card.locked{border-color:#c9dbc6;background:#fffefb;box-shadow:inset 4px 0 0 var(--sage)}.week-day-date{border-right:1px solid var(--line);align-self:stretch;display:flex;flex-direction:column;justify-content:center}.week-day-date strong{display:block;color:var(--coral-dark);font-size:10px;letter-spacing:.1em}.week-day-date span{display:block;margin-top:5px;color:var(--muted);font-size:9px}.week-day-meal{min-width:0}.week-day-title-row{display:flex;align-items:center;gap:9px}.week-day-title-row a{font-size:16px;font-weight:850;letter-spacing:-.03em}.week-day-title-row a:hover{color:var(--coral-dark)}.week-fit-pill{flex:0 0 auto;background:var(--sage-soft);color:#537158;border-radius:99px;padding:5px 7px;font-size:8px;font-weight:900}.week-day-meal p{margin:6px 0 9px;color:var(--muted);font-size:9px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-day-meta{display:flex;flex-wrap:wrap;gap:5px}.week-day-meta span{background:#f3eee8;color:#766b62;border-radius:7px;padding:5px 7px;font-size:7px;font-weight:800}.week-day-actions{display:grid;grid-template-columns:repeat(2,auto);grid-gap:5px;gap:5px;justify-items:stretch;min-width:160px}.week-day-actions a,.week-day-actions button{border:1px solid var(--line);background:white;border-radius:9px;min-height:31px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-size:8px;font-weight:850;cursor:pointer}.week-day-actions button.active{background:var(--sage-soft);border-color:#c7d9c4;color:#4f7154}.week-day-actions button:disabled{opacity:.45;cursor:not-allowed}.week-day-actions a{grid-column:1/-1;background:#f3eee7;color:var(--ink)}.week-empty-day{min-height:70px;display:flex;flex-direction:column;justify-content:center}.week-empty-day span{color:#8f8379;font-size:11px;font-weight:850}.week-empty-day p{max-width:480px;margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.week-next-step{margin-bottom:90px;display:grid;grid-template-columns:1fr .85fr;grid-gap:70px;gap:70px;align-items:center;border-radius:25px;padding:35px 38px;background:#f2ece4;border:1px solid #e5dbcf}.week-next-step h2{max-width:650px;margin:10px 0;font-size:31px;letter-spacing:-.045em;line-height:1.08}.week-next-step p{max-width:650px;margin:0;color:var(--muted);font-size:10px;line-height:1.6}.week-next-chips{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.week-next-chips span{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:#6f655d;font-size:9px;font-weight:800}@media (max-width:900px){.week-hero{grid-template-columns:1fr;gap:22px}.week-summary-card{max-width:360px}.week-controls{grid-template-columns:1fr 180px}.week-main-actions{grid-column:1/-1;justify-content:flex-start}.week-next-step{grid-template-columns:1fr;gap:22px}.week-next-chips{justify-content:flex-start}}@media (max-width:620px){.week-hero{padding-top:43px}.week-hero h1{font-size:45px}.week-hero>div:first-child>p{font-size:14px}.week-controls{grid-template-columns:1fr;padding:14px;border-radius:16px}.week-main-actions{grid-column:auto;display:grid;grid-template-columns:1fr auto}.week-main-actions .button{width:100%}.week-day-card{grid-template-columns:56px minmax(0,1fr);gap:12px;padding:14px}.week-day-date{grid-row:1/span 2}.week-day-title-row{align-items:flex-start}.week-day-title-row a{font-size:14px}.week-day-meal p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.week-day-actions{grid-column:2;grid-template-columns:1fr 1fr 1fr;min-width:0;width:100%}.week-day-actions a{grid-column:auto}.week-empty-day{grid-column:2}.week-next-step{padding:25px 21px;border-radius:20px}}.shop-page{min-height:100vh;background:var(--cream)}.shop-hero{padding:66px 0 34px;display:grid;grid-template-columns:1.25fr .75fr;grid-gap:58px;gap:58px;align-items:end}.shop-hero h1{max-width:760px;font-size:clamp(46px,6vw,74px);line-height:1;letter-spacing:-.062em;margin:14px 0 20px}.shop-hero h1 em{font-style:normal;color:var(--coral-dark)}.shop-hero>div:first-child>p{max-width:720px;color:var(--muted);line-height:1.65;font-size:16px;margin:0}.shop-summary-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 12px 34px rgba(75,49,32,.05)}.shop-summary-card>span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:850}.shop-summary-card>strong{display:block;font-size:32px;letter-spacing:-.05em;margin:13px 0 5px}.shop-summary-card>small{color:var(--muted);line-height:1.5;font-size:10px}.shop-progress{height:7px;border-radius:999px;background:#efe8df;overflow:hidden;margin-top:18px}.shop-progress i{display:block;height:100%;background:var(--sage);border-radius:inherit;transition:width .25s ease}.shop-empty{margin-top:34px;margin-bottom:100px;background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:40px;max-width:760px}.shop-empty>span{color:var(--coral);font-size:11px;font-weight:900;letter-spacing:.1em}.shop-empty h2{font-size:38px;letter-spacing:-.045em;margin:10px 0}.shop-empty p{max-width:600px;color:var(--muted);line-height:1.65;margin:0 0 24px}.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px 20px;margin-top:12px}.shop-toolbar>div:first-child strong{display:block;font-size:13px}.shop-toolbar-actions{display:flex;gap:9px;align-items:center}.shop-stale{margin-top:10px;border:1px solid #efd7a7;background:#fff5df;border-radius:13px;padding:12px 15px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;color:#7d6636;font-size:10px}.shop-stale strong{color:#6c5427}.shopping-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);grid-gap:22px;gap:22px;align-items:start;padding:28px 0 100px}.shopping-main{min-width:0}.shopping-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px}.shopping-section-heading h2{margin:7px 0 0;font-size:32px;letter-spacing:-.045em}.shopping-count-pill{padding:8px 10px;border-radius:999px;background:var(--sage-soft);color:#537258;font-size:10px;font-weight:850;white-space:nowrap}.shopping-category{background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-bottom:12px}.shopping-category>h3{display:flex;align-items:center;justify-content:space-between;margin:0;padding:13px 16px;background:#f6f0e8;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.shopping-category>h3 span,.shopping-collapsible summary span{min-width:23px;height:23px;display:inline-grid;place-items:center;border-radius:999px;background:white;border:1px solid var(--line);color:var(--ink);font-size:9px}.shopping-item{min-height:66px;display:grid;grid-template-columns:31px 1fr auto;grid-gap:12px;gap:12px;align-items:center;padding:11px 14px;border-top:1px solid var(--line)}.shopping-category .shopping-item:first-child{border-top:0}.shopping-check{width:28px;height:28px;border-radius:9px;border:1px solid #d8cec4;background:white;display:grid;place-items:center;cursor:pointer;color:white;font-weight:900}.shopping-item.checked .shopping-check{background:var(--sage);border-color:var(--sage)}.shopping-item.checked .shopping-item-main{opacity:.55}.shopping-item.checked .shopping-item-title strong{text-decoration:line-through}.shopping-item.have{background:#faf8f4}.shopping-item-title{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.shopping-item-title strong{font-size:12px}.shopping-item-title span{padding:4px 6px;border-radius:999px;background:#fff2dc;color:#8d6a31;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.shopping-item-title span+span{background:#eef1ea;color:#687165}.shopping-item-meta{display:flex;flex-wrap:wrap;gap:6px 11px;margin-top:5px;color:var(--muted);font-size:8px;line-height:1.4}.shopping-item-meta b{color:var(--ink);font-size:9px}.shopping-item-actions{display:flex;gap:5px;align-items:center}.shopping-item-actions button{border:1px solid var(--line);background:white;border-radius:8px;padding:7px 8px;color:var(--muted);font-size:8px;font-weight:800;cursor:pointer;white-space:nowrap}.shopping-item-actions button:hover{color:var(--ink);border-color:#d8c9bb}.shopping-item-actions .danger-text{color:#a85e53}.shopping-collapsible{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:12px}.shopping-collapsible summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-size:11px;font-weight:850}.shopping-collapsible summary::-webkit-details-marker{display:none}.shopping-collapsible>div{border-top:1px solid var(--line)}.shopping-collapsible .shopping-item:first-child{border-top:0}.shopping-done{min-height:210px;display:grid;place-items:center;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:30px}.shopping-done>span{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--sage-soft);color:var(--sage);font-size:22px;font-weight:900}.shopping-done strong{font-size:17px;margin-top:9px}.shopping-done p{max-width:430px;color:var(--muted);line-height:1.55;font-size:10px;margin:0}.shopping-side{display:grid;grid-gap:14px;gap:14px;position:-webkit-sticky;position:sticky;top:18px}.shop-side-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:20px}.shop-side-card h3{font-size:22px;letter-spacing:-.04em;margin:8px 0}.shop-side-card>p{color:var(--muted);line-height:1.55;font-size:10px;margin:0 0 17px}.manual-shopping-form{display:grid;grid-gap:9px;gap:9px}.manual-shopping-form label>span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;margin-bottom:5px}.manual-shopping-form input,.manual-shopping-form select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;background:#fffdfa;padding:0 11px;color:var(--ink);outline:none;font:inherit;font-size:10px}.manual-shopping-form input:focus,.manual-shopping-form select:focus{border-color:#d7b8af}.manual-shopping-form>div{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:8px;gap:8px}.manual-shopping-form .button{justify-self:start}.optional-shopping-list{display:grid;grid-gap:6px;gap:6px}.optional-shopping-list>div{display:grid;grid-template-columns:1fr auto;grid-gap:9px;gap:9px;align-items:center;padding:10px;border-radius:10px;background:#f7f2eb}.optional-shopping-list strong{display:block;font-size:10px}.optional-shopping-list span{display:block;margin-top:3px;color:var(--muted);font-size:7px;line-height:1.35}.optional-included button,.optional-shopping-list button{border:0;background:var(--coral-soft);color:var(--coral-dark);border-radius:8px;padding:7px 8px;font-size:8px;font-weight:850;cursor:pointer}.optional-included{border-top:1px solid var(--line);margin-top:13px;padding-top:10px}.optional-included summary{cursor:pointer;color:var(--muted);font-size:9px;font-weight:800}.optional-included>div{display:grid;grid-gap:5px;gap:5px;margin-top:8px}.optional-included>div>div{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9px}.week-serving-control{display:inline-flex;align-items:center;border:1px solid var(--line);background:white;border-radius:9px;overflow:hidden}.week-serving-control>span{padding:0 8px;color:var(--muted);font-size:8px;font-weight:800;white-space:nowrap}.week-serving-control button{border:0!important;border-left:1px solid var(--line)!important;border-radius:0!important;min-width:28px;padding:7px 5px!important;background:white!important}.week-shopping-button{background:var(--sage-soft)!important;color:#55755a!important;border-color:#cfdfcd!important}@media (max-width:900px){.shop-hero{grid-template-columns:1fr;gap:24px}.shop-summary-card{max-width:620px}.shopping-layout{grid-template-columns:1fr}.shopping-side{position:static;grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.app-header{overflow:hidden}.app-header-actions{max-width:calc(100% - 112px);overflow-x:auto;white-space:nowrap;scrollbar-width:none;padding:8px 0}.app-header-actions::-webkit-scrollbar{display:none}.shop-hero{padding-top:44px}.shop-hero h1{font-size:48px}.shop-hero>div:first-child>p{font-size:14px}.shop-toolbar{align-items:stretch;flex-direction:column}.shop-toolbar-actions{width:100%}.shop-toolbar-actions .button{flex:1 1}.shopping-layout{padding-top:20px}.shopping-side{grid-template-columns:1fr}.shopping-item{grid-template-columns:31px 1fr}.shopping-item-actions{grid-column:2;justify-content:flex-start;margin-top:-5px}.shopping-item-actions button{padding:6px 7px}.shopping-item-meta span{display:none}.manual-shopping-form>div{grid-template-columns:1fr}.week-serving-control{width:100%;justify-content:space-between}}.recipe-variations-card{margin-top:18px;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:30px}.variation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:20px}.variation-heading>div{max-width:760px}.variation-heading h2{font-size:30px;letter-spacing:-.045em;margin:7px 0 9px}.variation-heading p{margin:0;color:var(--muted);line-height:1.6;font-size:12px}.variation-count{flex:0 0 auto;border-radius:999px;background:var(--sage-soft);color:#547357;padding:8px 11px;font-size:9px;font-weight:850}.variation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.variation-item{border:1px solid var(--line);border-radius:16px;background:#fffdfa;overflow:hidden}.variation-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:38px 1fr 24px;grid-gap:12px;gap:12px;align-items:start;padding:16px}.variation-item summary::-webkit-details-marker{display:none}.variation-item[open]{border-color:#dfcfc2;box-shadow:0 10px 28px rgba(75,49,32,.05)}.variation-icon{width:36px;height:36px;border-radius:11px;background:var(--coral-soft);color:var(--coral-dark);display:grid;place-items:center;font-size:14px;font-weight:900}.variation-item summary small{display:block;color:var(--coral-dark);text-transform:uppercase;letter-spacing:.09em;font-weight:850;font-size:8px;margin:1px 0 4px}.variation-item summary strong{display:block;font-size:13px;letter-spacing:-.018em}.variation-item summary p{margin:5px 0 0;color:var(--muted);line-height:1.5;font-size:10px}.variation-open{color:var(--muted);font-size:18px;line-height:1.2;font-weight:600;text-align:center;transition:transform .18s ease}.variation-item[open] .variation-open{transform:rotate(45deg)}.variation-body{border-top:1px solid var(--line);padding:13px 16px 16px 66px}.variation-time{display:inline-flex;padding:7px 9px;margin-bottom:9px;border-radius:9px;background:var(--sage-soft);color:#557159;font-size:9px}.variation-body ol{list-style:none;padding:0;margin:0;display:grid;grid-gap:7px;gap:7px}.variation-body li{display:grid;grid-template-columns:23px 1fr;grid-gap:8px;gap:8px;align-items:start}.variation-body li>span{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#f5eee6;color:var(--coral-dark);font-size:8px;font-weight:900}.variation-body li p{margin:2px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.variation-note{margin:10px 0 0;padding:9px 11px;border-radius:10px;background:#fff6e7;color:#806641;font-size:9px;line-height:1.5}.variation-footnote{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:9px;line-height:1.55}.variation-footnote strong{color:var(--ink)}@media (max-width:760px){.variation-grid{grid-template-columns:1fr}.variation-heading{display:grid;grid-gap:12px;gap:12px}.variation-count{justify-self:start}}@media (max-width:620px){.recipe-variations-card{padding:21px}.variation-heading h2{font-size:26px}.variation-item summary{grid-template-columns:34px 1fr 20px;padding:13px;gap:10px}.variation-icon{width:32px;height:32px}.variation-body{padding:12px 13px 14px 57px}}.recipes-page{min-height:100vh;background:var(--cream,#fbf7f1)}.recipes-hero{padding-top:52px;padding-bottom:28px}.recipes-hero h1{max-width:780px;margin:10px 0 14px;font-size:clamp(2.5rem,6vw,5rem);line-height:.98;letter-spacing:-.055em}.recipes-hero h1 em{color:var(--coral,#e7654f);font-style:normal}.recipes-hero>p{max-width:760px;font-size:1.05rem;line-height:1.7;color:var(--muted,#6f6a64)}.library-stat-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.library-stat-row span{padding:9px 12px;border:1px solid rgba(31,29,27,.1);background:rgba(255,255,255,.62);border-radius:999px;font-size:.9rem}.library-stat-row b{margin-right:4px;color:var(--ink,#25211e)}.recipe-library{padding-top:12px;padding-bottom:80px}.library-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 240px;grid-gap:14px;gap:14px;align-items:end;padding:18px;background:white;border:1px solid rgba(31,29,27,.08);border-radius:22px;box-shadow:0 15px 50px rgba(70,48,34,.05)}.recipe-search,.recipe-select{display:grid;grid-gap:7px;gap:7px;color:var(--ink,#25211e);font-size:.82rem;font-weight:750}.recipe-search input,.recipe-select select{width:100%;min-height:48px;border:1px solid rgba(31,29,27,.14);border-radius:14px;padding:0 14px;background:#fffdfa;color:var(--ink,#25211e);font:inherit;outline:none}.recipe-search input:focus,.recipe-select select:focus{border-color:rgba(231,101,79,.6);box-shadow:0 0 0 3px rgba(231,101,79,.1)}.library-filters{margin:18px 0 8px}.library-result-line{color:var(--muted,#6f6a64);font-size:.9rem;margin:12px 0 18px}.recipe-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.library-recipe-card{display:flex;flex-direction:column;min-height:265px;padding:22px;border-radius:22px;border:1px solid rgba(31,29,27,.08);background:#fff;color:inherit;text-decoration:none;box-shadow:0 14px 45px rgba(70,48,34,.045);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.library-recipe-card:hover{transform:translateY(-2px);border-color:rgba(231,101,79,.28);box-shadow:0 18px 50px rgba(70,48,34,.08)}.library-card-kicker,.library-card-tags{display:flex;flex-wrap:wrap;gap:7px}.library-card-kicker span{color:var(--muted,#6f6a64);font-size:.76rem;font-weight:750;text-transform:capitalize}.library-card-kicker span+span:before{content:"·";margin-right:7px}.library-recipe-card h2{margin:18px 0 8px;font-size:1.42rem;line-height:1.08;letter-spacing:-.025em}.library-recipe-card p{margin:0;color:var(--muted,#6f6a64);line-height:1.55;font-size:.94rem}.library-card-tags{margin-top:auto;padding-top:18px}.library-card-tags span{background:#f7f2eb;border-radius:999px;padding:6px 9px;font-size:.74rem;font-weight:700}.library-recipe-card>strong{margin-top:16px;color:var(--coral,#e7654f);font-size:.9rem}@media (max-width:900px){.recipe-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.recipes-hero{padding-top:30px}.library-toolbar{padding:14px;border-radius:18px}.library-toolbar,.recipe-library-grid{grid-template-columns:1fr}.library-recipe-card{min-height:0;padding:18px}}