:root{color:#182d24;font-synthesis:none;--sage:#3d6148;--muted:#68716c;--line:#e3e4d8;--rust:#ad451f;background:#f8f6ee;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a,button,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{opacity:.5;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #c08138}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:600}h1{letter-spacing:-.8px;font-size:clamp(30px,4vw,44px);line-height:1.1}h2{margin-bottom:12px;font-size:25px}h3{font-size:20px}p{line-height:1.5}.app-shell{max-width:1100px;margin:auto;padding:0 32px 110px}.brandbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:92px;margin-bottom:38px;display:flex}.brand{color:#284735;letter-spacing:-1px;align-items:baseline;gap:8px;font:700 35px Georgia,serif;text-decoration:none;display:flex}.brand span{letter-spacing:0;font:14px Arial,sans-serif}.private-label{color:var(--muted);background:#e9eee2;border-radius:20px;padding:7px 12px;font-size:12px}.eyebrow{text-transform:uppercase;letter-spacing:1.4px;color:var(--sage);margin-bottom:10px;font-size:11px;font-weight:700}.meta,.muted{color:var(--muted);font-size:14px}.panel{border:1px solid var(--line);background:#fffef9;border-radius:20px}.primary{background:var(--sage);color:#fff;border-radius:11px;min-height:46px;padding:14px 20px;font-weight:600}.full{width:100%;margin-top:12px}.outline{border:1px solid var(--rust);color:var(--rust);border-radius:11px;padding:13px}.quiet{background:#eef0e5;border-radius:10px;min-height:44px;padding:12px 14px;font-size:14px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.page-heading .muted{margin-top:10px}.plan-layout{grid-template-columns:1.35fr 1fr;gap:40px;display:grid}.days{gap:8px;margin-bottom:16px;display:flex}.days button{background:#ecefe4;border-radius:10px;flex:1;min-height:44px;padding:13px 4px}.days button.active{background:var(--sage);color:#fff}.table-note{color:var(--muted);margin-bottom:24px;font-size:13px}.day-title{margin-bottom:15px;font-size:20px}.meal-card{align-items:center;gap:17px;min-height:148px;padding:10px;display:flex}.food-tile{background:radial-gradient(circle at 35% 25%,#fff7da,#e7e8cf 75%);border-radius:14px;flex-shrink:0;place-items:center;width:128px;height:128px;display:grid;overflow:hidden}.food-tile span{filter:drop-shadow(0 8px 7px #8c95774d);font-size:66px;transform:rotate(-8deg)}.meal-info{flex:1;min-width:0}.meal-info .meta{font-size:12px}.recipe-link{text-align:left;padding:5px 0;font:600 22px/1.12 Georgia,serif;display:block}.swap{color:#244a30;background:#e8eee0;border-radius:8px;min-height:36px;margin-top:8px;padding:7px 12px;font-size:13px}.arrow{color:#66796c;padding:8px;font-size:28px}.budget-card{background:#faf1e7;padding:26px;position:relative}.budget-card h2{margin-top:25px;font-size:27px}.budget-card>p:not(.eyebrow){color:#697065;font-size:14px}.budget-card .muted{text-align:center;margin-top:12px;font-size:12px}.budget-icon{color:var(--rust);font-size:40px;position:absolute;top:16px;right:25px}.over{background:#ffe7d6;border-radius:10px;margin-top:14px;padding:10px 14px;display:inline-block;color:#a63d14!important;font-size:13px!important}.within{color:#3d6148;margin-top:12px;font-size:13px}.aside-note{color:var(--muted);padding:28px 6px;font-size:14px}.aside-note h3{color:#284735;margin-bottom:10px}.draft-note{color:#767969;margin-top:20px;font-size:12px;line-height:1.5}.bottom-nav{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffef9ef;border:1px solid #dce2d1;border-radius:18px;width:380px;padding:7px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 5px 30px #244a3017}.bottom-nav button{color:#69736a;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:7px;font-size:13px;display:flex}.bottom-nav button span{height:26px;font-size:22px}.bottom-nav button.active{color:#264b30;background:#eaf0e1}.settings-screen{grid-template-columns:.8fr 1.3fr;align-items:start;gap:60px;display:grid}.intro{padding-top:40px;position:sticky;top:40px}.intro>p:last-child{color:var(--muted);margin-top:20px}.settings-form{padding:28px}.settings-form .muted{margin:6px 0 14px;font-size:13px}.eater-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 22px;display:grid}.budget-input,.eater-grid label{font-size:14px;font-weight:600;display:block}.budget-input input,.eater-grid input{color:#254431;background:#fcfcf6;border:1px solid #d8dfcd;border-radius:10px;width:100%;margin-top:8px;padding:12px;display:block}.budget-input input{font-size:22px}.settings-form fieldset{border:0;margin:24px 0;padding:0}.settings-form legend{margin-bottom:8px;font:600 21px Georgia,serif}.chips{flex-wrap:wrap}.chip,.chips{gap:8px;display:flex}.chip{cursor:pointer;text-transform:capitalize;background:#f8faf2;border:1px solid #dbe2cf;border-radius:10px;align-items:center;padding:10px 12px;font-size:13px}input[type=checkbox]{accent-color:var(--sage);flex-shrink:0;width:16px;height:16px;margin:0}.chip:has(input:checked){background:#e3ecd7;border-color:#87a477}.exclusions{gap:12px;max-height:300px;padding:16px 4px;display:grid;overflow:auto}.exclusions label{align-items:center;gap:10px;min-height:30px;font-size:14px;display:flex}summary{cursor:pointer;background:#eef0e5;border-radius:10px;padding:13px;font-size:14px}summary span{float:right;font-weight:700}.back{margin-bottom:20px}.recipe-layout{grid-template-columns:.9fr 1.2fr;align-items:start;gap:26px;display:grid}.recipe-hero{background:radial-gradient(at 50% 25%,#fff4ce,#dfe6cb);border-radius:22px;flex-direction:column;justify-content:center;align-items:center;min-height:440px;display:flex;position:sticky;top:24px}.recipe-hero>span{filter:drop-shadow(0 16px 10px #8b957650);font-size:170px;transform:rotate(-8deg)}.hero-caption{color:#607154;text-align:center;margin-top:30px;font:22px/1.3 Georgia,serif}.recipe-body{padding:28px}.recipe-body h1{font-size:35px}.recipe-meta{color:#5d6e5a;flex-wrap:wrap;gap:10px;margin:16px 0 28px;font-size:13px}.recipe-meta span{background:#eaf0e1;border-radius:20px;padding:6px 10px}.ingredient-list{margin:12px 0 30px;padding:0;list-style:none}.ingredient-list li{border-bottom:1px solid #e8e9df;align-items:center;gap:12px;padding:13px 0;font-size:14px;display:flex}.ingredient-list li>div{flex:1}.ingredient-list strong{white-space:nowrap;font-size:14px}.ingredient-icon{font-size:26px}.ingredient-list small{color:#7a8074;margin-top:4px;font-size:11px;display:block}.steps{counter-reset:step;padding:0;list-style:none}.steps li{counter-increment:step;margin:15px 0;padding-left:36px;font-size:14px;line-height:1.6;position:relative}.steps li:before{content:counter(step);background:var(--sage);color:#fff;text-align:center;border-radius:50%;width:24px;height:24px;font-size:13px;line-height:24px;position:absolute;top:2px;left:0}.shopping-budget{background:#fbf0e5;border:1px solid #e8d9cb;border-radius:18px;justify-content:space-between;align-items:center;gap:15px;padding:22px 26px;display:flex}.shopping-budget strong{font:600 28px Georgia,serif}.shopping-budget p{color:var(--muted);margin-top:5px;font-size:14px}.shopping-budget .over{text-align:center;margin:0}.price-note{margin:16px 0 28px}.count{vertical-align:middle;background:#e8eddf;border-radius:20px;margin-left:8px;padding:4px 9px;font:13px Arial,sans-serif}.shopping-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.shopping-item{align-items:flex-start;gap:15px;padding:18px;display:flex;position:relative}.shopping-icon{background:#f0f1e6;border-radius:12px;flex-shrink:0;place-items:center;width:65px;height:70px;font-size:35px;display:grid}.shopping-info h3{margin-bottom:5px;font-size:18px}.shopping-info>p{color:#5f6a60}.shopping-info .meta{margin-top:3px;font-size:11px}.item-cost{white-space:nowrap;font-size:13px;position:absolute;top:18px;right:15px}.pantry-button{color:#3d6148;align-items:center;gap:8px;min-height:36px;padding:8px 0;display:flex}.pantry-button span{font-size:21px;line-height:16px}.confirmation-note{margin-top:5px;color:var(--rust)!important;font-size:12px!important}.home-heading{margin-top:30px}.at-home{background:#f1f5e9}.notice{border-radius:12px;margin-bottom:20px;padding:16px;font-size:14px;line-height:1.5}.error{color:#943e1a;background:#ffeddf;border:1px solid #efc9aa}.notice button{padding-top:10px;text-decoration:underline;display:block}.empty{text-align:center;color:#65705f;padding:40px 10px}.empty button{margin-top:20px}.modal-backdrop{z-index:30;background:#20392777;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog{max-width:440px;padding:28px}.confirm-dialog p{margin:10px 0}.saving{color:#fff;z-index:40;background:#2c5139;border-radius:30px;padding:10px 20px;font-size:13px;position:fixed;top:18px;left:50%;transform:translate(-50%)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;color:#17221b;--muted:#69716e;--line:#e6e5dc;background:#faf8f1}.app-icon{flex-shrink:0;width:22px;height:22px}button{color-scheme:inherit}.atlas-photo{background-repeat:no-repeat;background-size:600%;display:block}.dish-photo{background-image:url(../images/dishes-atlas.png)}.ingredient-photo{background-image:url(../images/ingredients-atlas.png)}.food-tile{background:0 0;width:150px;height:118px;padding:0}.food-tile .dish-photo{filter:none;width:100%;height:100%;transform:none}.meal-card{border-radius:16px;gap:14px;min-height:130px;padding:5px}.recipe-link{font-size:22px}.swap{background:#edf2e7;border:1px solid #dce3d5;align-items:center;gap:6px;min-height:29px;margin-top:4px;padding:5px 10px;display:inline-flex}.swap .app-icon{width:15px;height:15px}.arrow{padding:4px}.settings-row{width:100%;color:var(--muted);text-align:left;align-items:center;gap:8px;padding:8px 0 12px;font-size:13px;display:flex}.settings-row span{flex:1}.settings-row .app-icon{width:18px;height:18px}.day-title{display:none}.table-note{align-items:center;gap:8px;margin:12px 0;display:flex}.table-note .app-icon{width:19px;height:19px}.budget-card,.shopping-budget{text-align:left;background:#fcf0e5;border:1px solid #e9dbce;border-radius:13px;align-items:center;gap:12px;width:100%;min-height:84px;padding:14px;display:flex}.budget-icon{color:#ac471e;width:34px;height:34px;position:static}.budget-copy{flex:1;min-width:0}.budget-copy h2,.shopping-budget strong{letter-spacing:-.3px;margin:0;font:600 23px/1.15 Georgia,serif;display:block}.budget-copy p{color:var(--muted);margin-top:5px;font-size:14px}.over,.within{text-align:center;border-radius:8px;flex-shrink:0;margin:0;padding:7px 9px;line-height:1.4;font-size:12px!important}.over{background:#ffe2cb;color:#ad3e15!important}.within{color:var(--sage);padding:0}.plan-price-note{text-align:center;margin:8px 0 12px;font-size:12px}.plan-settings{justify-content:center;align-items:center;gap:8px;min-height:42px;margin:0;display:flex}.aside-note{padding:12px 0;font-size:12px}.aside-note summary,.purchase-details summary,.source-details summary{background:0 0;border-radius:0;padding:4px 0;font-size:12px}.aside-note .draft-note{margin-top:8px}.recipe-toolbar{justify-content:space-between;align-items:center;margin-bottom:15px;font-size:18px;display:flex}.recipe-toolbar .back,.toolbar-spacer{width:32px;height:32px;margin:0;padding:4px}.recipe-hero{height:330px;min-height:0;display:block}.recipe-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin:12px 0 5px;font-size:14px;display:flex}.recipe-meta span{background:0 0;padding:0}.recipe-meta .meal-pill{color:#476047;background:#e9eedf;padding:6px 10px;font-size:12px}.equipment-note{color:var(--muted);margin-bottom:20px;font-size:11px}.ingredient-list{border:1px solid var(--line);background:#fffef9;border-radius:15px;margin:10px 0 4px;padding:0 10px}.ingredient-list li{min-height:62px;padding:8px 0;font-size:15px}.ingredient-list li:last-child{border-bottom:0}.ingredient-icon{border-radius:8px;flex-shrink:0;width:48px;height:48px}.ingredient-list small{margin-top:3px;font-size:10px}.source-details{color:var(--muted);margin:8px 0 20px}.source-details p{font-size:12px}.shopping-grid{gap:10px}.shopping-item{border-radius:14px;gap:12px;min-height:116px;padding:10px}.shopping-icon{border-radius:9px;width:80px}.shopping-info h3{padding-right:70px;font-size:19px;line-height:1.15}.shopping-info>p{font-size:13px}.item-cost{font-size:14px;top:13px;right:12px}.purchase-details summary{color:var(--muted);font-size:10px;line-height:1.4}.purchase-details p{font-size:11px}.checkbox-mark{border:1px solid #9daa8f;border-radius:3px;width:16px;height:16px}.pantry-button{min-height:28px;padding:4px 0;font-size:12px}.price-note{margin:10px 0 18px;font-size:12px}@media (width<=760px){.app-shell{padding:24px 18px 95px}.brandbar{display:none}.view-settings .brandbar{height:48px;margin:0 0 24px;display:flex}.brand{font-size:28px}.brand span{font-size:11px}.private-label{padding:6px 9px;font-size:10px}h1{letter-spacing:-.8px;font-size:34px}h2{font-size:23px}.page-heading{margin-bottom:14px}.page-heading .muted{margin-top:7px;font-size:15px}.plan-layout,.recipe-layout,.settings-screen{display:block}.days{gap:6px;margin:0}.days button{border-radius:9px;min-height:39px;padding:9px 3px;font-size:14px}.settings-row{padding:9px 0 11px;font-size:12px}.meal-cards{gap:8px}.meal-card{border-radius:14px;gap:10px;min-height:112px;padding:4px}.food-tile{border-radius:10px;width:132px;height:102px}.recipe-link{padding:5px 0;font-size:20px;line-height:1.08}.meal-info .meta{font-size:11px}.arrow .app-icon{width:17px;height:17px}.arrow{padding:1px}.swap{min-height:27px;margin-top:3px;padding:4px 8px;font-size:12px}.table-note{margin:11px 0;font-size:12px}.plan-aside{margin-top:0}.budget-card,.shopping-budget{gap:9px;min-height:78px;padding:12px 10px}.budget-icon{width:30px;height:30px}.budget-copy h2,.shopping-budget strong{font-size:21px}.budget-copy p{font-size:13px}.over,.within{padding:7px;font-size:11px!important}.aside-note,.aside-note summary{font-size:11px}.bottom-nav{width:100%;padding:7px 12px max(8px,env(safe-area-inset-bottom));box-shadow:none;background:#fafaf3;border-bottom:0;border-radius:18px 18px 0 0;bottom:0}.bottom-nav button{gap:3px;padding:6px;font-size:13px}.view-recipe .bottom-nav{display:none}.intro{padding:0 0 24px;position:static}.intro h1{font-size:37px}.intro>p:last-child{margin-top:14px;font-size:14px}.settings-form{border-radius:18px;padding:21px}.eater-grid{gap:9px}.eater-grid label{font-size:12px}.eater-grid input{padding:12px 9px}.recipe-toolbar{margin:0 0 12px;font-size:16px}.recipe-hero{border-radius:0;height:230px;margin:0 -18px;position:static}.recipe-body{background:#faf8f1;border:0;border-radius:18px 18px 0 0;margin:-8px -18px 0;padding:22px 18px;position:relative}.recipe-body h1{font-size:33px;line-height:1.06}.recipe-meta{font-size:13px}.recipe-meta .meal-pill{padding:5px 8px;font-size:11px}.ingredient-list li{gap:9px}.ingredient-list strong{font-size:13px}.steps li{margin:13px 0;font-size:14px;line-height:1.5}.draft-note{font-size:11px}.shopping-grid{grid-template-columns:1fr}.shopping-item{gap:10px}.shopping-info h3{font-size:18px}.shopping-icon{width:76px;height:80px}.shopping-budget .within{font-size:10px!important}.confirm-dialog{padding:23px}}@media (width<=360px){.food-tile{width:110px}.budget-copy h2,.recipe-link,.shopping-budget strong{font-size:18px}.shopping-icon{width:62px;height:62px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.atlas-photo{background-size:0 0;position:relative;overflow:hidden}.atlas-photo:before{content:"";width:100%;aspect-ratio:var(--photo-ratio);background-image:inherit;background-position:inherit;background-size:var(--photo-size);background-repeat:no-repeat;display:block;position:absolute;top:50%;transform:translateY(-50%)}.shopping-icon{height:80px}@media (width<=760px){.shopping-icon{height:76px}}@media (width<=360px){.shopping-icon{height:62px}}.settings-form .appearance{margin:0 0 24px}.theme-options{gap:10px;display:flex}.theme-choice{cursor:pointer;background:#f8faf2;border:1px solid #dbe2cf;border-radius:10px;flex:1;align-items:center;gap:9px;padding:12px;font-size:14px;display:flex}.theme-choice.selected{background:#e3ecd7;border-color:#87a477}.theme-choice input{width:17px;height:17px;accent-color:var(--sage);margin:0}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#edf0e7;--sage:#b0cb9a;--muted:#b1bbb3;--line:#414d43;--rust:#ffc09c;background:#171d19}[data-theme=dark] .ingredient-list,[data-theme=dark] .panel{border-color:var(--line);background:#232c25}[data-theme=dark] .brand{color:#d6e6cb}[data-theme=dark] .brandbar{border-color:var(--line)}[data-theme=dark] .count,[data-theme=dark] .private-label,[data-theme=dark] .quiet,[data-theme=dark] summary{color:#d9e5d3;background:#303c30}[data-theme=dark] .eyebrow,[data-theme=dark] .pantry-button,[data-theme=dark] .within{color:#bad3a8}[data-theme=dark] .days button,[data-theme=dark] .swap{color:#d1e3c3;background:#303c30;border-color:#54654e}[data-theme=dark] .arrow{color:#b1c4ac}[data-theme=dark] .budget-card,[data-theme=dark] .shopping-budget{background:#35291f;border-color:#66513e}[data-theme=dark] .over{background:#65402a;color:#ffcfac!important}[data-theme=dark] .empty,[data-theme=dark] .shopping-info>p{color:var(--muted)}[data-theme=dark] .bottom-nav{background:#202820;border-color:#495b42}[data-theme=dark] .bottom-nav button{color:#bac6b5}[data-theme=dark] .bottom-nav button.active{color:#deefd2;background:#354831}[data-theme=dark] .budget-input input,[data-theme=dark] .eater-grid input{color:#edf0e7;background:#19211b;border-color:#596750}[data-theme=dark] .chip,[data-theme=dark] .theme-choice{color:#edf0e7;background:#293329;border-color:#53614b}[data-theme=dark] .theme-choice.selected{background:#3a4c33;border-color:#a1b58f}[data-theme=dark] .chip:has(input:checked){background:#3a4c33;border-color:#a1b58f}[data-theme=dark] .recipe-meta .meal-pill{color:#d4e6c6;background:#35432e}[data-theme=dark] .ingredient-list li{border-color:var(--line)}[data-theme=dark] .draft-note,[data-theme=dark] .ingredient-list small{color:#afb8a5}[data-theme=dark] .shopping-icon{background-color:#293329}[data-theme=dark] .checkbox-mark{border-color:#b3c7a5}[data-theme=dark] .at-home{background:#2c3a28}[data-theme=dark] .error{color:#ffd7bd;background:#472d22;border-color:#986443}[data-theme=dark] .modal-backdrop{background:#080e0bc9}[data-theme=dark] .saving{color:#172219;background:#b0cb9a}[data-theme=dark] .aside-note summary,[data-theme=dark] .purchase-details summary,[data-theme=dark] .source-details summary{background:0 0}[data-theme=dark] button:disabled{opacity:.7}[data-theme=dark] a:focus-visible,[data-theme=dark] button:focus-visible,[data-theme=dark] input:focus-visible,[data-theme=dark] summary:focus-visible{outline-color:#ffd096}@media (width<=760px){[data-theme=dark] .recipe-body{background:#171d19}}.recipe-hero{isolation:isolate;aspect-ratio:205/176;background:0 0;height:auto;overflow:hidden}.recipe-photo{border-radius:inherit;position:absolute;inset:0}.recipe-toolbar{color:#fff;text-shadow:0 1px 4px #102018;background:linear-gradient(#0f1b14cc,#0f1b14a6 70%,#0000);min-height:76px;margin:0;padding:16px 18px;position:absolute;inset:0 0 auto}.recipe-toolbar .back{color:#fff;background:#0f1b14b8;border:1px solid #ffffffb3;border-radius:50%;width:44px;height:44px;margin:0;padding:10px}.toolbar-spacer{width:44px}.price-source{color:var(--muted);margin-top:4px;font-size:11px;display:block}.purchase-details a{color:inherit;overflow-wrap:anywhere;text-decoration:underline}@media (width<=760px){.view-recipe{padding-top:0}.recipe-hero{aspect-ratio:auto;border-radius:0;height:min(82vw,380px);margin:0 -18px;position:relative;top:auto}.recipe-toolbar{padding-top:calc(16px + env(safe-area-inset-top,0px));padding-right:max(18px,env(safe-area-inset-right,0px));padding-left:max(18px,env(safe-area-inset-left,0px))}}.brand-actions{align-items:center;gap:12px;display:flex}.profile-entry{width:40px;height:40px;color:var(--sage);background:#e9eee2;border-radius:50%;place-items:center;display:grid}.profile-entry .app-icon{width:22px;height:22px}.view-profile{background:radial-gradient(at 50% 180px,#e3f1e570,#0000 310px);max-width:700px;padding-top:24px}.profile-screen{--profile-accent:#2fae66;--profile-surface:#fff;--profile-icon:#f0eff3;--profile-soft:#edf5ef}.profile-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.profile-toolbar h1{letter-spacing:-.8px;font:750 30px/1.2 Arial,Helvetica,sans-serif}.profile-back,.profile-toolbar-spacer{width:94px}.profile-back{background:#e7e8e1;border-radius:28px;justify-content:center;align-items:center;gap:3px;padding:9px 10px;font-size:14px;font-weight:600;display:flex}.profile-back .app-icon{width:20px;height:20px}.profile-identity{text-align:center;padding:30px 0 24px}.profile-avatar{color:#2e9160;background:linear-gradient(150deg,#e7f4e9,#c6e6d2);border:4px solid #4ebc7b;border-radius:50%;place-items:center;width:96px;height:96px;margin:0 auto 16px;display:grid;box-shadow:0 14px 34px #3aad6520}.profile-avatar .app-icon{width:48px;height:48px}.profile-identity h2{letter-spacing:-.7px;margin:0 0 7px;font:750 27px/1.2 Arial,Helvetica,sans-serif}.profile-handle{color:var(--muted);font-size:15px}.profile-stats{flex-wrap:wrap;gap:8px;max-width:460px;margin:18px auto 0}.profile-stats,.profile-stats span{justify-content:center;display:flex}.profile-stats span{background:var(--profile-icon);color:#4b5950;border-radius:30px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;line-height:1.15}.profile-stats .app-icon{width:17px;height:17px;color:var(--profile-accent)}.profile-stats .profile-plan-status{flex-basis:auto}.profile-card{background:var(--profile-surface);border:1px solid var(--line);border-radius:24px;margin-bottom:16px;overflow:hidden;box-shadow:0 3px 5px #18372505,0 12px 24px #18372507}.profile-links button{text-align:left;align-items:center;gap:12px;width:100%;min-height:72px;padding:14px 17px;display:flex}.profile-links button+button{border-top:1px solid var(--line)}.profile-links button:hover{background:var(--profile-soft)}.profile-row-icon{background:var(--profile-icon);border-radius:13px;flex:none;place-items:center;width:43px;height:43px;display:grid}.profile-row-icon .app-icon{width:25px;height:25px}.profile-row-copy{flex:1;min-width:0}.profile-row-copy strong{font-size:16px;font-weight:500;line-height:1.25;display:block}.profile-row-copy small{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.35;display:block}.profile-links button>.app-icon{width:20px;height:20px;color:var(--muted);flex:none}.profile-appearance{padding:20px}.profile-appearance fieldset{border:0;margin:0;padding:0}.profile-appearance legend{margin-bottom:12px;font:600 17px Arial,Helvetica,sans-serif}.profile-browser-note{align-items:center;gap:12px;padding:18px;display:flex}.profile-browser-note .profile-row-icon{color:var(--profile-accent);background:var(--profile-soft)}.profile-browser-note h3{margin-bottom:5px;font:600 16px Arial,Helvetica,sans-serif}.profile-browser-note p,.profile-footnote{color:var(--muted);font-size:12px;line-height:1.5}.profile-footnote{text-align:center;padding:0 12px}.profile-nav{border-radius:36px;width:420px;padding:8px 12px;box-shadow:0 12px 28px #18372520}.profile-nav button{border-radius:26px;min-height:55px}.profile-nav button.active{color:var(--profile-accent,#2fae66);background:#e8f4eb}.bottom-nav button:disabled{cursor:default;opacity:.45}[data-theme=dark] .profile-entry{background:#303c30}[data-theme=dark] .profile-screen{--profile-accent:#79d89c;--profile-surface:#232c25;--profile-icon:#303831;--profile-soft:#2c4131}[data-theme=dark] .profile-back{background:#303c30}[data-theme=dark] .profile-avatar{color:#8bdfa9;background:linear-gradient(150deg,#2e4f39,#274131)}[data-theme=dark] .profile-stats span{color:#d4ded5}[data-theme=dark] .profile-nav button.active{color:#92e2ad;background:#2c4131}@media (width<=760px){.view-profile{padding-top:18px}.profile-toolbar h1{font-size:28px}.profile-identity{padding-top:24px}.profile-avatar{width:88px;height:88px}.profile-card{border-radius:22px}.profile-links button{padding:14px 16px}.profile-nav{bottom:max(12px,env(safe-area-inset-bottom));border:1px solid var(--line);background:#fffef9ef;border-radius:36px;width:calc(100% - 32px);max-width:420px;padding:7px 9px}.view-profile{padding-bottom:120px}}@media (width<=360px){.profile-toolbar h1{font-size:25px}.profile-back,.profile-toolbar-spacer{width:76px}.profile-row-copy strong{font-size:15px}.profile-row-copy small{font-size:12px}.profile-links button{gap:10px;padding:14px 12px}}[data-theme=dark] .view-profile{background:radial-gradient(at 50% 180px,#31513a70,#0000 310px)}:root{--sage:#1d7d45;--line:#e4e6df;--ui-surface:#fff;--ui-soft:#eaf6ee;--ui-green:#1d7d45;--ui-shadow:0 4px 8px #193a2704,0 14px 28px #193a2707}h1,h2,h3{font-weight:750}.settings-form legend,h1,h2,h3{font-family:Arial,Helvetica,sans-serif}h1{letter-spacing:-1.1px}h2{letter-spacing:-.4px;font-size:23px}h3{letter-spacing:-.2px}.app-shell{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}.brandbar{height:74px;margin-bottom:28px}.panel{background:var(--ui-surface);border:1px solid var(--line);box-shadow:var(--ui-shadow);border-radius:24px}.primary{color:#fff;background:#21844b;border-radius:16px;min-height:48px;font-weight:700;box-shadow:0 8px 20px #2aaa6320}.primary:hover{background:#1b703f}.outline{color:var(--sage);border-color:#91c4a3}.outline,.quiet{border-radius:14px}.page-heading,.week-summary{margin-bottom:22px}.week-summary{padding:20px}.summary-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.summary-heading h2{margin:0;font-size:22px}.summary-settings{color:var(--sage);border:1px solid var(--line);background:var(--ui-surface);border-radius:24px;align-items:center;gap:6px;min-height:38px;padding:8px 12px;font-size:12px;display:flex}.summary-settings .app-icon{width:17px;height:17px}.week-numbers{border:1px solid var(--line);border-radius:18px;grid-template-columns:1fr 1fr 1.5fr;margin-bottom:16px;display:grid}.week-numbers>div{text-align:center;flex-direction:column;justify-content:center;min-width:0;padding:15px 8px;display:flex}.week-numbers>div+div{border-left:1px solid var(--line)}.week-numbers strong{letter-spacing:-.6px;font-size:25px;font-weight:750}.week-numbers span{color:var(--muted);margin-top:5px;font-size:12px}.budget-card,.shopping-budget{background:var(--ui-soft);border:0;border-radius:20px;gap:12px;padding:16px}.budget-icon{color:var(--ui-green);width:34px;height:34px}.budget-copy h2,.shopping-budget strong{letter-spacing:-.9px;font:750 29px/1.15 Arial,Helvetica,sans-serif}.budget-copy p{margin-top:0;margin-bottom:4px;font-size:13px}.budget-card>.app-icon:last-child:not(.budget-icon){width:18px;color:var(--ui-green)}.over{border-radius:10px}.over,.within{font-size:12px!important}.within{color:var(--sage)}.summary-price-note{color:var(--muted);margin:10px 2px 0;font-size:11px;line-height:1.5}.plan-layout{display:block}.plan-aside{margin-top:16px}.days{grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:0;display:grid}.days button{border:1px solid var(--line);background:var(--ui-surface);border-radius:13px;min-height:44px}.days button.active{color:#fff;background:#21844b;border-color:#21844b}.settings-row{padding:14px 0;font-size:13px}.meal-cards{gap:14px;display:grid}.meal-card{gap:16px;min-height:145px;padding:12px}.food-tile{border-radius:18px;flex:none;width:148px;height:138px;overflow:hidden}.recipe-link{letter-spacing:-.4px;padding:4px 0;font:700 22px/1.2 Arial,Helvetica,sans-serif}.meal-detail,.meal-info .meta{color:var(--muted);font-size:12px}.meal-detail{margin-top:2px}.swap{background:var(--ui-soft);border:0;border-radius:20px;min-height:32px;margin-top:9px;font-size:12px}.arrow,.swap{color:var(--sage)}.arrow{width:28px;height:44px;padding:4px}.aside-note summary,.price-explanation summary{color:var(--muted);background:0 0;padding:7px 0;font-size:12px}.price-explanation{color:var(--muted);margin:6px 0 20px;font-size:12px}.price-explanation p{margin:6px 0}.shopping-budget{margin-bottom:0}.shopping-section-title{justify-content:space-between;align-items:center;gap:12px;margin:22px 0 14px;display:flex}.shopping-section-title h2{margin:0;font-size:21px}.shopping-section-title>span{color:var(--muted);font-size:13px}.shopping-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.shopping-category{padding:16px;overflow:hidden}.category-heading{align-items:center;gap:10px;margin:0 0 6px;font-size:19px;display:flex}.category-photo{border-radius:12px;flex:none;width:42px;height:42px}.category-count{color:var(--muted);margin-left:auto;font-size:12px;font-weight:500}.shopping-category .shopping-item{border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;align-items:flex-start;gap:10px;padding:15px 0;display:flex}.shopping-category .shopping-item:first-of-type{border-top:0}.shopping-category .shopping-icon{border-radius:10px;flex:none;width:40px;height:42px;margin-top:2px}.shopping-info{flex:1;min-width:0}.shopping-category .shopping-info h3{font:600 15px/1.3 Arial,Helvetica,sans-serif}.shopping-info>p{color:var(--muted);margin:4px 0;font-size:12px}.price-source{margin:3px 0;font-size:10px}.item-cost{white-space:nowrap;flex:none;font-size:16px}.purchase-details{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.purchase-details summary{min-height:26px;padding:4px 0;font-size:11px}.purchase-details p{margin:4px 0;font-size:11px}.pantry-button{min-height:32px;color:var(--sage);align-items:center;gap:5px;padding:4px 0;font-size:12px;display:inline-flex}.pantry-button .app-icon{width:16px;height:16px}.confirmation-note{color:var(--rust)!important;font-size:11px!important}.recipe-body h1{letter-spacing:-.8px;font:750 32px/1.15 Arial,Helvetica,sans-serif}.recipe-meta .meal-pill{background:var(--ui-soft);color:var(--sage)}.steps li:before{background:#21844b}.bottom-nav{width:440px;max-width:calc(100% - 24px);bottom:max(10px,env(safe-area-inset-bottom,0px));border:1px solid var(--line);background:#fffffff5;border-radius:22px;padding:6px;box-shadow:0 5px 22px #193a271a}.bottom-nav button{border-radius:16px;gap:3px;min-height:53px;padding:6px;font-size:11px}.bottom-nav button.active{background:var(--ui-soft);color:var(--ui-green)}.bottom-nav .app-icon{width:21px;height:21px}.profile-card{box-shadow:var(--ui-shadow)}.profile-screen{--profile-accent:#2aaa63}.profile-footnote{margin-bottom:12px}[data-theme=dark]{--ui-surface:#232c25;--ui-soft:#2c4131;--ui-green:#87d8a4;--ui-shadow:0 8px 22px #00000020}[data-theme=dark] .budget-card,[data-theme=dark] .shopping-budget{background:var(--ui-soft);border:0}[data-theme=dark] .budget-icon,[data-theme=dark] .outline{color:var(--ui-green);border-color:#62826b}[data-theme=dark] .days button.active,[data-theme=dark] .primary,[data-theme=dark] .steps li:before{color:#13291b;background:#7fd5a0}[data-theme=dark] .primary:hover{background:#9de5b8}[data-theme=dark] .days button{background:var(--ui-surface)}[data-theme=dark] .recipe-meta .meal-pill,[data-theme=dark] .swap{background:var(--ui-soft);color:#a5e6ba}[data-theme=dark] .bottom-nav{border-color:var(--line);background:#202820f5}[data-theme=dark] .bottom-nav button.active{background:var(--ui-soft);color:#a5e6ba}[data-theme=dark] .shopping-category .shopping-item{background:0 0}@media (width>=900px){.meal-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.meal-card{flex-wrap:wrap;gap:12px;position:relative}.food-tile{width:100%;height:195px}.meal-info{width:calc(100% - 28px)}.arrow{align-self:center}.week-summary{max-width:none}}@media (width<=760px){.brandbar{height:54px;margin-bottom:24px}.brand-actions{gap:8px}h1{font-size:32px}.intro h1{font-size:35px}.page-heading .muted{font-size:13px}.week-summary{margin-bottom:20px;padding:16px}.summary-heading h2{font-size:19px}.summary-settings{padding:7px 9px;font-size:11px}.week-numbers strong{font-size:22px}.week-numbers span{font-size:10px}.week-numbers>div{padding:12px 5px}.budget-copy h2,.shopping-budget strong{font-size:25px}.budget-card,.shopping-budget{gap:9px;padding:14px 12px}.budget-icon{width:27px;height:27px}.budget-copy p{font-size:12px}.over,.within{font-size:10px!important}.meal-card{border-radius:22px;gap:12px;min-height:145px;padding:10px}.food-tile{border-radius:16px;width:110px;height:110px}.recipe-link{font-size:19px}.meal-detail,.meal-info .meta,.swap{font-size:11px}.swap{min-height:31px;padding:6px 9px}.shopping-grid{grid-template-columns:1fr;gap:16px}.shopping-category{border-radius:23px;padding:14px 16px}.category-heading{font-size:18px}.shopping-category .shopping-info h3{font-size:14px}.shopping-category .shopping-icon{width:35px;height:38px}.shopping-category .item-cost{font-size:14px}.recipe-body h1{font-size:28px}.bottom-nav{bottom:max(8px,env(safe-area-inset-bottom,0px));border-radius:22px;max-width:calc(100% - 24px);padding:6px}.view-profile{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}}@media (width<=360px){.summary-settings{max-width:125px}.week-numbers strong{font-size:19px}.budget-copy h2,.shopping-budget strong{font-size:22px}.budget-card>.app-icon:last-child:not(.budget-icon){display:none}.food-tile{width:87px;height:87px}.meal-card{gap:9px}.recipe-link{font-size:17px}.arrow{width:19px;padding:0}.shopping-category{padding:12px}.shopping-category .shopping-icon{width:28px;height:31px}.shopping-category .shopping-item{gap:8px}}.profile-handle,.profile-identity h2{overflow-wrap:anywhere}.recipe-hero.without-photo{aspect-ratio:auto;height:76px}.recipe-hero.generated-photo{aspect-ratio:1;height:auto}.catalog-tag-filter{border:1px solid var(--line);border-radius:14px;margin:12px 0;padding:12px 14px}.catalog-tag-filter summary{cursor:pointer;font-weight:600}.catalog-tag-filter p{margin:12px 0;font-size:13px}.catalog-tag-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-bottom:10px;display:grid}.catalog-tag-options label{align-items:center;gap:8px;min-height:44px;font-size:14px;display:flex}.catalog-tag-options input{flex:none;width:18px;height:18px}html[data-platform] .app-shell{padding-top:max(env(safe-area-inset-top,0px),var(--miniapp-inset-top,0px));padding-left:max(18px,env(safe-area-inset-left,0px),var(--miniapp-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px),var(--miniapp-inset-right,0px));padding-bottom:calc(110px + max(env(safe-area-inset-bottom,0px), var(--miniapp-inset-bottom,0px)))}html[data-platform] .bottom-nav{bottom:max(env(safe-area-inset-bottom,0px),var(--miniapp-inset-bottom,0px));max-width:calc(100% - var(--miniapp-inset-left,0px) - var(--miniapp-inset-right,0px))}.profile-avatar img{-o-object-fit:cover;object-fit:cover;border-radius:inherit;width:100%;height:100%}.profile-toolbar.native-back,.recipe-toolbar.native-back{justify-content:center}:root{--ui-radius-card:24px;--ui-radius-control:12px;--ui-space-1:4px;--ui-space-2:8px;--ui-space-3:12px;--ui-space-4:16px;--ui-space-5:24px;--ui-space-6:32px;--ui-canvas:#faf8f1;--ui-surface:#fff;--ui-raised:#f0f4ef;--ui-field:#f8faf6;--ui-text:#17291f;--ui-muted:#586c60;--ui-border:#dce4dd;--ui-control-border:#7b9080;--ui-accent:#207849;--ui-accent-hover:#19643c;--ui-on-accent:#fff;--ui-soft:#e7f2e9;--ui-soft-hover:#dcece0;--ui-warning:#82501b;--ui-warning-bg:#fff1dd;--ui-warning-border:#d9b887;--ui-error:#a3342a;--ui-error-bg:#fff0ed;--ui-error-border:#d69b93;--ui-focus:#16713f;--ui-disabled-bg:#e8eee9;--ui-overlay:#101b15b8;--ui-shadow:0 4px 8px #193a2704,0 14px 28px #193a2707}:root,:root[data-theme=dark]{--sage:var(--ui-accent);--muted:var(--ui-muted);--line:var(--ui-border);--rust:var(--ui-warning);--ui-green:var(--ui-accent);color:var(--ui-text);background:var(--ui-canvas)}:root[data-theme=dark]{--ui-canvas:#171d19;--ui-surface:#232c25;--ui-raised:#2c3730;--ui-field:#1c251f;--ui-text:#edf3ee;--ui-muted:#afc1b4;--ui-border:#405147;--ui-control-border:#738b79;--ui-accent:#83cfa2;--ui-accent-hover:#a1dfba;--ui-on-accent:#13281c;--ui-soft:#2b4032;--ui-soft-hover:#36503e;--ui-warning:#f4cb92;--ui-warning-bg:#453727;--ui-warning-border:#9f8059;--ui-error:#ffb4ab;--ui-error-bg:#422c2d;--ui-error-border:#b77c77;--ui-focus:#b1eac6;--ui-disabled-bg:#303d34;--ui-overlay:#070d0abf;--ui-shadow:0 8px 22px #00000020}:root .profile-screen{--profile-accent:var(--ui-accent);--profile-surface:var(--ui-surface);--profile-icon:var(--ui-raised);--profile-soft:var(--ui-soft)}:root .view-profile{background:0 0}:root .ingredient-list,:root .panel,:root .profile-card{background:var(--ui-surface);border-color:var(--ui-border);box-shadow:var(--ui-shadow);border-radius:var(--ui-radius-card)}:root .brand{color:var(--ui-text)}:root .count,:root .private-label,:root .profile-back,:root .profile-entry,:root .quiet{background:var(--ui-raised);color:var(--ui-muted)}:root .profile-avatar,:root .profile-entry{color:var(--ui-accent)}:root .profile-avatar{border-color:var(--ui-accent);background:var(--ui-soft);box-shadow:var(--ui-shadow)}:root .profile-stats span{color:var(--ui-muted)}:root .profile-row-copy strong{font-weight:600}:root .days button.active,:root .primary,:root .saving,:root .steps li:before{background:var(--ui-accent);color:var(--ui-on-accent)}:root .primary{box-shadow:none}:root .days button{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border)}:root .days button.active{border-color:var(--ui-accent)}:root .outline{color:var(--ui-accent);border-color:var(--ui-control-border)}:root .recipe-meta span{background:var(--ui-raised);color:var(--ui-muted)}:root .equipment-note,:root .recipe-meta{color:var(--ui-muted)}:root .ingredient-list li{border-color:var(--ui-border)}:root .recipe-meta .meal-pill,:root .swap{background:var(--ui-soft);color:var(--ui-accent)}:root .arrow,:root .eyebrow,:root .pantry-button,:root .within{color:var(--ui-accent)}:root .budget-card,:root .shopping-budget{background:var(--ui-soft);border:0}:root .budget-icon{color:var(--ui-accent)}:root .over{border:1px solid var(--ui-warning-border);background:var(--ui-warning-bg)}:root .confirmation-note,:root .over{color:var(--ui-warning)!important}:root .error{background:var(--ui-error-bg);color:var(--ui-error);border-color:var(--ui-error-border)}:root .notice{padding:var(--ui-space-4);border-radius:16px}:root .profile-appearance{padding:var(--ui-space-5)}:root .empty{color:var(--ui-muted)}:root .empty button{color:var(--ui-accent);border:1px solid var(--ui-control-border);border-radius:14px;min-height:44px;padding:10px 16px}:root .bottom-nav{background:var(--ui-surface);border-color:var(--ui-border)}:root .bottom-nav button{color:var(--ui-muted)}:root .bottom-nav button.active{background:var(--ui-soft);color:var(--ui-accent)}:root .budget-input input,:root .eater-grid input{min-height:48px}:root .budget-input input,:root .chip,:root .eater-grid input,:root .theme-choice{background:var(--ui-field);color:var(--ui-text);border-color:var(--ui-control-border);border-radius:var(--ui-radius-control)}:root .theme-choice.selected{background:var(--ui-soft);border-color:var(--ui-accent)}:root .chip:has(input:checked){background:var(--ui-soft);border-color:var(--ui-accent)}:root input[type=checkbox],:root input[type=radio]{accent-color:var(--ui-accent)}:root .settings-form h2,:root .settings-form legend{letter-spacing:-.3px;font:700 21px/1.25 Arial,Helvetica,sans-serif}:root .settings-form summary{background:var(--ui-raised);color:var(--ui-text);border-radius:var(--ui-radius-control)}:root .draft-note,:root .ingredient-list small,:root .shopping-info>p{color:var(--ui-muted)}:root .shopping-icon{background-color:var(--ui-raised)}:root .at-home{background:var(--ui-soft)}:root .shopping-category .shopping-item{background:0 0}:root .modal-backdrop{background:var(--ui-overlay)}:root .confirm-dialog{border-radius:24px}:root .profile-row-icon{color:var(--ui-accent)}:root .aside-note summary,:root .price-explanation summary,:root .price-source,:root .purchase-details,:root .purchase-details p,:root .purchase-details summary,:root .summary-price-note{font-size:12px}:root .profile-nav{background:var(--ui-surface);border-radius:22px;width:440px;padding:6px}:root .profile-nav button{border-radius:16px;min-height:53px}:root .recipe-body{background:var(--ui-canvas)}:root a:focus-visible,:root button:focus-visible,:root input:focus-visible,:root summary:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}:root .bottom-nav button:focus-visible,:root .profile-links button:focus-visible{outline-offset:-3px}:root button:disabled{opacity:1;box-shadow:none;cursor:default}:root button:disabled,:root button:disabled:hover,:root input:disabled{background:var(--ui-disabled-bg);color:var(--ui-muted)}:root input:disabled{opacity:1;cursor:default}:is(:root .chip:has(input:disabled),:root .theme-choice:has(input:disabled)){background:var(--ui-disabled-bg);color:var(--ui-muted);cursor:default}:root input[aria-invalid=true]{border-color:var(--ui-error)}:root .budget-input input:user-invalid{border-color:var(--ui-error)}:root .eater-grid input:user-invalid{border-color:var(--ui-error)}@media (hover:hover){:root .days button.active:hover:not(:disabled),:root .primary:hover:not(:disabled){background:var(--ui-accent-hover)}:root .bottom-nav button:hover:not(:disabled),:root .days button:not(.active):hover:not(:disabled),:root .profile-back:hover:not(:disabled),:root .profile-entry:hover:not(:disabled),:root .quiet:hover:not(:disabled),:root .summary-settings:hover:not(:disabled){background:var(--ui-soft-hover);color:var(--ui-accent)}:root .chip:hover,:root .outline:hover:not(:disabled),:root .profile-links button:hover,:root .swap:hover:not(:disabled),:root .theme-choice:hover{background:var(--ui-soft-hover)}:root .pantry-button:hover:not(:disabled),:root .purchase-details a:hover,:root .recipe-link:hover{text-underline-offset:3px;text-decoration:underline}}@media (width<=760px){:root .profile-nav{width:440px;max-width:calc(100% - 24px);bottom:max(8px,env(safe-area-inset-bottom,0px))}}:root .staple-note{color:var(--ui-muted);margin:12px 0;font-size:12px;line-height:1.5}:root .settings-save-note{margin-top:10px;font-size:12px}:root .saved-notice{background:var(--ui-soft);color:var(--ui-accent);border-radius:var(--ui-radius-control);margin-top:12px;padding:12px;font-size:13px}.swipe-meal{touch-action:pan-y}.catalog-entry{flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 18px;display:flex}.catalog-entry button{align-items:center;gap:7px;display:inline-flex}.catalog-entry span{color:var(--ui-muted);font-size:12px}.choose-meal{color:var(--ui-accent);border:1px solid var(--ui-control-border);border-radius:12px;min-height:32px;margin-left:8px;padding:7px 10px;font-size:12px}.ingredient-quote{color:var(--ui-muted);flex-wrap:wrap;gap:4px 8px;margin-top:10px;font-size:12px;display:flex}.ingredient-quote strong{color:var(--ui-text);font-size:15px}.ingredient-quote details,.ingredient-quote small{flex-basis:100%;font-size:11px}.ingredient-quote summary{background:0 0;padding:6px 0}.ingredient-quote p{margin:5px 0}.catalog-back{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.catalog-search{color:var(--ui-muted);font-size:13px;display:block}.catalog-search input{border:1px solid var(--ui-control-border);background:var(--ui-field);width:100%;min-height:46px;color:var(--ui-text);border-radius:12px;margin:8px 0 16px;padding:12px;display:block}.catalog-context{color:var(--ui-accent);margin-bottom:14px;font-size:13px}.catalog-categories{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.catalog-categories button{border:1px solid var(--ui-control-border);min-height:40px;color:var(--ui-text);background:var(--ui-field);border-radius:12px}.catalog-categories button[aria-pressed=true]{background:var(--ui-soft);color:var(--ui-accent);border-color:var(--ui-accent)}.catalog-recipes{display:grid}.catalog-recipe{justify-content:space-between;gap:16px;padding:16px;display:flex}.catalog-recipe>div{min-width:0}.catalog-recipe h2{margin:0 0 5px;font-size:18px}.catalog-recipe>.outline{flex:none}.eligibility-reasons,.recipe-origin{font-size:12px;line-height:1.4}.eligibility-reasons{color:var(--ui-warning);margin-top:8px}.profile-settings{text-align:left;margin:20px 0;padding:20px}.profile-settings [id]{scroll-margin-top:24px}@media (width<=760px){.catalog-recipe{align-items:flex-start}.catalog-recipe>.outline{padding:10px;font-size:12px}.profile-settings{padding:18px}.meal-card{min-height:185px}}@media (width>=900px){.meal-cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}:root{--food-price:var(--ui-accent)}.page-heading{margin-bottom:16px}.page-heading h1{letter-spacing:-.7px;font:750 28px/1.15 Arial,Helvetica,sans-serif}.week-summary{margin-bottom:18px;padding:16px}.summary-heading{margin-bottom:8px}.summary-heading .meta{color:var(--ui-muted);margin:0 0 4px;font-size:13px}.week-total{color:var(--ui-text);font:750 28px/1.15 Arial,Helvetica,sans-serif}.summary-settings{min-height:44px;font-size:12px}.summary-footer{color:var(--ui-muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.summary-shopping{align-items:center;gap:3px;min-height:44px;padding:7px 8px;font-size:12px;display:inline-flex}.summary-shopping .app-icon{width:16px}.week-summary .price-explanation{margin:0}.price-explanation summary{min-height:44px;padding:12px 0;font-size:12px;display:list-item}.swipe-hint{color:var(--ui-muted);margin:8px 0 0;font-size:12px}.day-title{margin:12px 0;font:700 19px/1.25 Arial,Helvetica,sans-serif}:root .meal-cards{gap:12px}:root .meal-card{min-height:0;padding:0;display:block;overflow:hidden}.meal-surface,:root .meal-card{border-radius:22px;position:relative}.meal-surface{background:var(--ui-surface);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:142px;padding:14px;display:grid}.meal-surface:not(:has(.food-tile)){min-height:120px}:root .food-tile{background:0 0;border-radius:16px;width:96px;height:108px}:root .meal-info{width:auto;min-width:0}:root .meal-info .meta{margin:0 0 4px;font-size:12px;line-height:1.4}:root .recipe-link{letter-spacing:-.3px;text-align:left;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:44px;padding:0;font:700 18px/1.22 Arial,Helvetica,sans-serif;display:-webkit-box;overflow:hidden}:root .meal-detail{margin:6px 0 0;font-size:13px}.meal-price{flex-direction:column;justify-content:space-between;align-self:stretch;min-width:75px;max-width:100px;display:flex}.ingredient-quote{margin-top:0;display:block}.ingredient-quote strong{color:var(--food-price);white-space:nowrap;font:750 18px/1.25 Arial,Helvetica,sans-serif}.meal-price .ingredient-quote strong{font-size:17px}.meal-actions{font-size:12px}.meal-actions summary{cursor:pointer;min-height:44px;color:var(--ui-muted);justify-content:flex-end;align-items:center;gap:4px;list-style:none;display:flex}.meal-actions summary::-webkit-details-marker{display:none}.meal-actions .app-icon{width:18px;height:18px}.meal-actions[open]{position:static}.meal-actions>div{z-index:2;border:1px solid var(--ui-control-border);background:var(--ui-surface);box-shadow:var(--ui-shadow);border-radius:14px;gap:8px;padding:8px;display:flex;position:absolute;bottom:10px;left:14px;right:14px}.meal-surface:has(.meal-actions[open]){padding-bottom:82px}:root .meal-actions button{flex:1;min-height:44px;margin:0;padding:8px 12px;font-size:13px}.swipe-feedback{background:var(--ui-soft);color:var(--ui-accent);align-items:center;padding:16px;font-size:13px;font-weight:700;display:flex;position:absolute;inset:0}.swipe-feedback.choosing{background:var(--ui-accent);color:var(--ui-surface);justify-content:flex-end}.catalog-categories{flex-wrap:nowrap;max-width:100%;margin-bottom:4px;padding-bottom:4px;overflow-x:auto}.catalog-categories button{flex:none;min-height:44px;padding:8px 12px;font-size:13px}.catalog-search input{margin-bottom:12px}.catalog-price-note{margin:0 0 12px}.catalog-recipes{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.catalog-recipe{align-items:center;gap:12px;min-height:116px;padding:14px}.catalog-photo{border-radius:16px;flex:none;width:80px;height:88px}.catalog-copy{flex:1;min-width:0}.catalog-recipe h2{letter-spacing:-.2px;margin:0 0 10px;font:700 17px/1.3 Arial,Helvetica,sans-serif}.catalog-recipe>.outline{min-height:44px;padding:8px 12px;font-size:12px}.catalog-recipe:has(>.outline){flex-wrap:wrap}.catalog-recipe:has(>.outline) .catalog-copy{flex-basis:calc(100% - 104px)}.catalog-recipe>.outline{margin-left:auto}.eligibility-reasons{margin:8px 0 0;font-size:12px}.text-recipe{max-width:760px;margin:0 auto;display:block}.text-recipe .recipe-body{border-radius:22px;margin:0;padding:22px}.text-recipe-back{align-items:center;gap:6px;min-height:44px;margin:0 0 12px;padding:0 8px;display:flex}.recipe-body h1{color:var(--ui-text);font:750 28px/1.16 Arial,Helvetica,sans-serif}.recipe-body h2{margin-top:24px;font:700 21px/1.3 Arial,Helvetica,sans-serif}.recipe-body>.ingredient-quote{margin:18px 0}.ingredient-quote details{color:var(--ui-muted);margin-top:4px}.ingredient-quote summary,.source-details summary{min-height:44px;padding:12px 0;font-size:13px}.recipe-body .source-details{font-size:13px;line-height:1.5}.recipe-body .source-details a{overflow-wrap:anywhere}:root .view-recipe .bottom-nav{display:flex}:root .pantry-button,:root .purchase-details summary{min-height:44px}@media (width>=900px){:root .meal-cards{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}}@media (width<=760px){.app-shell,.view-recipe:not([data-platform] .view-recipe){padding-top:18px}.meal-surface{grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px}.meal-surface:not(:has(.food-tile)){grid-template-columns:minmax(0,1fr) auto}.meal-surface:has(.food-tile) .meal-price{flex-direction:row;grid-column:2;align-items:center;gap:8px;max-width:none;margin-top:-4px}.meal-surface:has(.food-tile) .food-tile{grid-row:1/span 2}.meal-surface:has(.food-tile) .meal-info{align-self:end}:root .food-tile{width:96px;height:112px}.meal-actions summary{min-width:44px}.meal-price .ingredient-quote strong{font-size:17px}.catalog-recipes{grid-template-columns:minmax(0,1fr)}.catalog-recipe:has(>.outline) .catalog-copy{flex-basis:calc(100% - 104px)}.text-recipe .recipe-body{padding:18px}.view-recipe .recipe-body{padding-bottom:22px}.recipe-body h1{font-size:26px}.recipe-meta{flex-wrap:wrap;gap:8px;font-size:13px}.recipe-body .ingredient-list li{gap:10px;padding:12px 0}.recipe-body .ingredient-list{padding:12px}.bottom-nav{max-width:calc(100% - 24px)}}@media (prefers-reduced-motion:reduce){.meal-surface{transition:none}}:root .profile-back{min-height:44px}.settings-form select{border:1px solid var(--ui-control-border);background:var(--ui-field);width:100%;min-height:48px;color:var(--ui-text);border-radius:12px;margin-top:8px;padding:10px 12px;font:600 16px Arial,Helvetica,sans-serif;display:block}:root .chip,:root .theme-choice{min-height:44px}:root .aside-note summary{min-height:44px;padding:12px 0}.meal-caption{grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;display:flex}.meal-caption .meta{color:var(--ui-muted);margin:0;font-size:12px}.meal-caption .ingredient-quote strong{font-size:17px}:is(.meal-surface,.meal-surface:not(:has(.food-tile))){grid-template-columns:auto minmax(0,1fr)}.meal-info{grid-column:2}.meal-surface:not(:has(.food-tile)) .meal-info{grid-column:1/-1}.meal-price{grid-column:2;align-items:flex-end;max-width:none}.meal-surface:not(:has(.food-tile)) .meal-price{grid-column:1/-1}.meal-surface:has(.food-tile) .food-tile{grid-row:2/span 2}.meal-surface:has(.food-tile) .meal-info{align-self:end}.meal-surface:has(.food-tile) .meal-price{justify-content:flex-end;margin:0}.meal-surface:not(:has(.food-tile)){gap:6px}.meal-surface:not(:has(.food-tile)) .recipe-link{min-height:44px}.meal-surface:not(:has(.food-tile)) .meal-detail{margin:2px 0}.meal-actions summary{background:0 0;padding:4px 0}@media (width<=760px){.meal-surface:has(.food-tile) .meal-price{flex-direction:column}}.meal-caption .meta{font-size:13px}.meal-actions summary span{font-size:12px}.meal-surface:not(:has(.food-tile)){grid-template-columns:minmax(0,1fr) auto}.meal-surface:not(:has(.food-tile)) .meal-info{grid-area:2/1}.meal-surface:not(:has(.food-tile)) .meal-price{grid-area:2/2;align-self:end}:is(:root .settings-form label:has(>input[type=checkbox]),:root .settings-form label:has(>input[type=radio])){min-height:44px}:root .food-tile{height:96px}.catalog-photo{height:80px}:root{--food-shadow:0 8px 28px #283d2610}:root[data-theme=dark]{--food-shadow:0 8px 28px #00000024}:root .catalog-title h1,:root .plan-title h1{letter-spacing:-1px;font:650 30px/1.12 Arial,Helvetica,sans-serif}:root .page-heading .muted{font-size:13px;line-height:1.45}:root .week-summary{box-shadow:var(--food-shadow);border:0;border-radius:24px;margin-bottom:16px;padding:14px 16px}:root .week-total{letter-spacing:-.8px;font-size:27px;font-weight:650}:root .summary-heading{margin-bottom:2px}:root .summary-heading .meta{font-size:12px}:root .summary-shopping{background:0 0;padding-right:0}:root .summary-settings{background:var(--ui-soft);border:0;font-weight:500}:root .days{gap:5px}:root .days button{border:0;border-radius:14px;font-size:14px;font-weight:500;box-shadow:0 2px 8px #283d2607}:root .swipe-hint{margin:10px 2px 12px;font-size:11px}:root .meal-cards{grid-template-columns:minmax(0,1fr);gap:12px}:root .meal-card{box-shadow:var(--food-shadow);border:0;border-radius:24px}:root .meal-surface{border-radius:24px;grid-template-rows:auto 1fr auto;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:4px 14px;min-height:154px;padding:14px;display:grid}:root .meal-label{color:var(--ui-muted);letter-spacing:.1px;grid-area:1/2;margin:0;font-size:12px;line-height:1.3}:root .meal-surface .food-tile{border-radius:18px;grid-area:1/1/span 3;align-self:center;width:112px;height:112px;padding:0}:root .meal-surface .food-tile .dish-photo{border-radius:inherit;width:100%;height:100%}:root .meal-surface .meal-info{grid-area:2/2;align-self:center;width:auto}:root .recipe-link{letter-spacing:-.4px;min-height:44px;font:600 19px/1.2 Arial,Helvetica,sans-serif}:root .meal-detail{color:var(--ui-muted);margin:5px 0 0;font-size:12px;line-height:1.4}:root .meal-surface .meal-price{flex-direction:row;grid-area:3/2;justify-content:space-between;align-self:end;align-items:center;gap:8px;width:100%;min-width:0;max-width:none;margin:0;display:flex}:root .ingredient-quote strong{color:var(--ui-text);font-size:15px;font-weight:600}:root .meal-actions summary{min-width:44px;color:var(--ui-muted);justify-content:center;padding:10px 4px}:root .meal-actions summary span{display:none}:root .meal-actions .app-icon{width:20px;height:20px}:root .meal-surface:has(.meal-actions[open]){padding-bottom:82px}:root .meal-surface:not(:has(.food-tile)){grid-template-columns:minmax(0,1fr);gap:4px;min-height:126px}:is(:root .meal-surface:not(:has(.food-tile)) .meal-info,:root .meal-surface:not(:has(.food-tile)) .meal-label,:root .meal-surface:not(:has(.food-tile)) .meal-price){grid-column:1}:root .meal-surface:not(:has(.food-tile)) .meal-label{grid-row:1}:root .meal-surface:not(:has(.food-tile)) .meal-info{grid-row:2}:root .meal-surface:not(:has(.food-tile)) .meal-price{grid-row:3}:root .catalog-categories{gap:6px;margin:0 0 4px}:root .catalog-categories button{background:var(--ui-surface);color:var(--ui-muted);border:0;border-radius:24px;padding:8px 14px;font-size:12px}:root .catalog-categories button[aria-pressed=true]{background:var(--ui-accent);color:var(--ui-on-accent)}:root .catalog-search input{background:var(--ui-surface);box-shadow:inset 0 0 0 1px var(--ui-border);border:0;border-radius:16px;padding:14px 16px}:root .catalog-price-note{margin:0 0 10px}:root .catalog-recipes{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px}:root .catalog-recipe{min-height:0;box-shadow:var(--food-shadow);border:0;border-radius:22px;flex-flow:column;align-items:stretch;gap:0;padding:0;display:flex;overflow:hidden}:root .catalog-recipe .catalog-photo{aspect-ratio:4/3;border-radius:0;flex:none;width:100%;height:auto;display:block}:root .catalog-copy{flex-direction:column;flex:1;min-width:0;padding:12px;display:flex}:root .catalog-recipe h2{letter-spacing:-.3px;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:40px;margin:0 0 8px;font:600 16px/1.23 Arial,Helvetica,sans-serif;display:-webkit-box;overflow:hidden}:root .catalog-facts{color:var(--ui-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;margin-top:auto;font-size:11px;line-height:1.4;display:flex}:root .catalog-facts .ingredient-quote strong{white-space:normal;font-size:13px;font-weight:500}:root .catalog-select{background:var(--ui-soft);width:100%;min-height:44px;color:var(--ui-accent);border:0;border-radius:12px;margin-top:10px;padding:8px;font-size:13px;font-weight:500}:root .text-catalog-recipe{grid-column:auto;justify-content:flex-end}:root .text-catalog-recipe .catalog-copy{padding:16px 12px}:root .catalog-unavailable{color:var(--ui-muted);margin:20px 0 0;font-size:13px}:root .catalog-unavailable>summary{background:0 0;min-height:44px;padding:12px 0}:root .catalog-unavailable>p{font-size:12px;line-height:1.5}:root .unavailable-recipe{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}:root .unavailable-recipe>span{min-width:0;font-size:13px}:root .unavailable-recipe>button{min-height:44px;color:var(--ui-muted);opacity:.7;flex:none;font-size:11px}:root .catalog-context{color:var(--ui-muted);margin-top:-4px;font-size:12px}@media (width>=760px){:root .catalog-recipes{grid-template-columns:repeat(3,minmax(0,1fr))}:root .catalog-recipe h2{min-height:47px;font-size:19px}:root .catalog-copy{padding:16px}:root .catalog-facts,:root .catalog-facts .ingredient-quote strong{font-size:14px}:root .meal-cards{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}}@media (width<=370px){:root .meal-surface{grid-template-columns:104px minmax(0,1fr);gap:4px 12px;padding:12px}:root .meal-surface .food-tile{width:104px;height:112px}:root .recipe-link{font-size:18px}:root .catalog-copy{padding:10px}:root .catalog-recipe h2{font-size:15px}}@media (width<=339px){:root .catalog-recipes{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:no-preference){:root .meal-surface{transition:transform .14s ease-out}:root .catalog-select{transition:background-color .15s,transform .15s}:root .catalog-select:active{transform:scale(.97)}}:root .text-catalog-recipe{grid-column:1/-1}:root .text-catalog-recipe .catalog-copy{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:14px 16px;display:grid}:root .text-catalog-recipe h2{grid-column:1/-1;min-height:0;margin:0}:root .text-catalog-recipe .catalog-facts{justify-content:flex-start;align-self:center;gap:12px}:root .text-catalog-recipe .catalog-select{align-self:center;width:auto;min-width:92px;margin:0}:root .unavailable-recipe small{margin-top:4px;font-size:11px;line-height:1.4;display:block}
