@font-face{font-family:Newsreader;src:url(/fonts/newsreader.ttf)format("truetype");font-style:normal;font-weight:200 800;font-display:swap}@font-face{font-family:Plus Jakarta Sans;src:url(/fonts/plus-jakarta-sans.ttf)format("truetype");font-style:normal;font-weight:200 800;font-display:swap}:root{--canvas:#faf9f5;--paper:#fff;--surface:#f5f4f0;--line:#e5e4de;--outline:#727974;--forest:#1b382b;--ink:#1b1c1a;--muted:#5d6a62;--sage:#ebf1ec;--terracotta:#9c4833;--serif:Newsreader,Georgia,serif;--sans:"Plus Jakarta Sans",system-ui,sans-serif;--shadow:0 2px 8px -2px #1b382b0a,0 1px 3px -1px #1b382b08;font-family:var(--sans);color:var(--ink);background:var(--canvas);font-synthesis:none;font-size:1rem;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a{color:var(--forest);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}svg{max-width:100%;display:block}main:focus{outline:none}button{border:1px solid var(--forest);background:var(--forest);color:#fff;cursor:pointer;overflow-wrap:anywhere;border-radius:12px;justify-content:center;align-items:center;gap:8px;max-width:100%;min-height:44px;padding:11px 20px;font-size:.875rem;font-weight:600;line-height:1.5;transition:none;display:inline-flex}button:hover{background:#254b3a}button:disabled{color:#5d6a62;cursor:not-allowed;background:#efeeea;border-color:#c2c8c2}.quiet-button,button[type=button],.page-heading>button,.workspace>button{color:var(--forest);border-color:var(--line);background:0 0}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;max-width:1360px;margin:auto;padding:22px 40px;display:flex}.brand{font:600 1.6rem/1.15 var(--serif);color:var(--forest);align-items:center;gap:12px;display:flex}.brand small{font:500 .625rem/1.6 var(--sans);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-top:5px;display:block}.monogram{border:1px solid #c2c8c2;border-radius:50% 50% 10px 10px;flex-shrink:0;place-items:center;width:42px;height:46px;display:grid}.monogram svg{width:26px;height:26px}.main-nav{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.main-nav a{border-radius:999px;align-items:center;min-height:44px;padding:10px 13px;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.workspace{max-width:1360px;min-height:58vh;margin:48px auto 64px;padding:0 40px}.workspace h1{font:600 2.75rem/1.18 var(--serif);color:var(--forest);letter-spacing:-.025em;overflow-wrap:anywhere;margin:0 0 22px}h2{font:600 1.75rem/1.25 var(--serif);color:var(--forest);margin:30px 0 16px}h3{font:600 1.375rem/1.3 var(--serif);color:var(--forest);margin:22px 0 10px}p{margin:14px 0}.workspace p,.workspace li,.workspace label,legend{overflow-wrap:anywhere}small{color:var(--muted);font-size:.75rem}code{overflow-wrap:anywhere;font-size:.875rem}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-heading h1{margin:0}.eyebrow{font:700 .6875rem/1.5 var(--sans);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 18px}.catalog-intro{grid-template-columns:minmax(0,1fr) 270px;align-items:center;gap:48px;padding:8px 0 40px;display:grid}.catalog-intro .page-heading{justify-content:flex-start;gap:24px;margin-bottom:18px}.catalog-intro .page-heading h1{font-size:3.5rem}.catalog-intro .quiet-button{padding:8px 12px;font-size:.75rem}.intro{font:400 2rem/1.25 var(--serif);letter-spacing:-.015em;color:var(--forest);margin:0 0 18px}.intro em{color:#55735d;font-style:normal}.intro-note{color:var(--muted);max-width:470px;font-size:.875rem}.catalog-art{color:#57755f;text-align:center;border:1px solid var(--line);background:#f0f1e9;border-radius:50% 50% 44% 44%;padding:20px 18px 30px;transform:rotate(5deg)}.catalog-art .botanical{width:220px;transform:rotate(-5deg)}.catalog-art>span{font:400 .9375rem var(--serif);color:var(--muted);display:block;transform:rotate(-5deg)}.panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;min-width:0;padding:28px}.workspace>form.panel,.workspace>section.panel{margin:24px 0}.panel>h2:first-child{margin-top:0}.workspace input:not([type=checkbox]),.workspace select,.workspace textarea{border:1px solid var(--outline);background:var(--paper);width:100%;min-width:0;max-width:600px;min-height:48px;color:var(--ink);border-radius:12px;margin:8px 0 20px;padding:12px 14px;font-size:.9375rem;line-height:1.5;display:block}.workspace textarea{resize:vertical;min-height:110px}.workspace input::placeholder{color:var(--muted)}.workspace input:disabled,.workspace select:disabled{background:var(--surface);opacity:.75}.workspace input[type=file]{padding:10px;font-size:.8125rem}.workspace input::file-selector-button{background:var(--sage);color:var(--forest);font:inherit;cursor:pointer;border:0;border-radius:8px;margin-right:8px;padding:10px 12px}.workspace label{font-size:.875rem}.workspace label:has(input[type=checkbox]){cursor:pointer;align-items:center;gap:10px;min-height:44px;padding:8px 0;display:flex}.workspace input[type=checkbox]{accent-color:#2e5a36;cursor:pointer;flex:none;width:20px;height:20px;margin:0}fieldset{border:1px solid var(--line);border-radius:16px;min-width:0;margin:18px 0;padding:18px}legend{color:var(--forest);padding:0 6px;font-size:.8125rem;font-weight:700}fieldset:disabled label{cursor:default}.filters{background:var(--surface);box-shadow:none;padding:24px 28px}.filters>label{font-size:.8125rem;font-weight:600}.filters #search{background:var(--paper);border-color:#9ba69d;border-radius:999px;max-width:none;padding-left:20px}details{border-top:1px solid var(--line);margin:24px 0;padding-top:8px}summary{min-height:44px;color:var(--forest);cursor:pointer;padding:12px 0;font-size:.875rem;font-weight:600}details p{color:var(--muted)}.filters details{margin:12px 0}.filter-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.filter-groups fieldset{background:var(--paper);margin:12px 0}.filters .filter-groups label{border-radius:10px;padding:8px;line-height:1.4}.filters .filter-groups label:has(input:checked){background:var(--sage);color:var(--forest);font-weight:600}.filters>details>p{max-width:760px;font-size:.8125rem}.actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.actions a,.back-link,.pagination a{align-items:center;min-height:44px;font-size:.875rem;display:inline-flex}.active-filters{border-top:1px solid var(--line);color:var(--forest);padding-top:16px;font-size:.8125rem}.collection-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin:36px 0 20px;display:flex}.collection-heading h2{margin:0}.collection-heading p{color:var(--muted);margin:0;font-size:.8125rem}.recipe-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:20px 0 32px;padding:0;list-style:none;display:grid}.recipe-cards h2{margin:0 0 10px;font-size:1.375rem;line-height:1.3}.recipe-cards h2 a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.recipe-cards h2 a:hover{text-decoration:underline}.recipe-cards p{color:var(--muted);font-size:.8125rem}.recipe-card.panel{border-radius:20px;flex-direction:column;padding:0;display:flex;overflow:hidden}.recipe-cover{aspect-ratio:4/3;color:#617b57;background:#eaf0e5;place-items:center;display:grid;position:relative;overflow:hidden}.cover-1{color:#957959;background:#efe8df}.cover-2{color:#527069;background:#e8ede8}.recipe-cover .botanical-small{opacity:.85;width:90%;height:92%;transform:rotate(-12deg)}.cover-1 .botanical-small{transform:rotate(13deg)}.recipe-cover>span{width:fit-content;max-width:calc(100% - 24px);color:var(--forest);overflow-wrap:anywhere;background:#ffffffeb;border-radius:999px;padding:5px 12px;font-size:.6875rem;font-weight:600;position:absolute;bottom:12px;left:12px;right:12px}.recipe-card-content{flex-direction:column;flex:1;padding:18px;display:flex}.recipe-card-content .book-caption{margin:0 0 10px;font-size:.6875rem;line-height:1.6}.recipe-card-content .recipe-yield{color:var(--forest);margin:0 0 12px;font-size:.75rem}.recipe-tags{flex-wrap:wrap;gap:5px;margin-bottom:18px;display:flex}.recipe-tags span{background:var(--sage);color:#2e5a36;overflow-wrap:anywhere;border-radius:999px;max-width:100%;padding:4px 9px;font-size:.625rem;font-weight:600}.select-recipe{margin-top:12px}.recipe-card-content .select-recipe{background:var(--paper);width:100%;color:var(--forest);border-color:#9cafa0;margin-top:auto;padding:10px 8px;font-size:.75rem}.select-recipe[aria-pressed=true],.recipe-card-content .select-recipe[aria-pressed=true]{background:var(--forest);color:#fff;border-color:var(--forest)}.back-link{margin-bottom:24px}.recipe-detail{max-width:1040px;margin:0 auto 28px}.recipe-detail-heading{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:30px;padding:32px 0}.recipe-detail-heading h1{max-width:840px}.recipe-detail-heading .eyebrow{font-size:.6875rem}.recipe-detail-heading .actions .back-link{margin:12px 0 0}.recipe-facts{background:var(--line);border:1px solid var(--line);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:24px 0;display:grid;overflow:hidden}.recipe-facts p{background:var(--surface);margin:0;padding:16px 20px;font-size:.875rem}.recipe-facts strong{color:var(--muted);letter-spacing:.04em;margin-bottom:6px;font-size:.6875rem;display:block}.recipe-detail .recipe-body{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:48px;display:grid}.recipe-detail .recipe-body>section:first-child{background:var(--paper);border:1px solid var(--line);border-radius:20px;align-self:start;padding:4px 24px 20px}.ingredients{padding:0;list-style:none}.ingredients li{border-bottom:1px solid var(--line);padding:12px 0;font-size:.9375rem}.ingredients li:last-child{border:0}.ingredient-group{font-weight:600;display:block}.annotation{color:var(--muted);font-size:.8125rem}.preparation{counter-reset:steps;padding:0;list-style:none}.preparation li{counter-increment:steps;margin:16px 0;padding:0 0 26px 48px;font-size:.9375rem;position:relative}.preparation li:before{content:counter(steps,decimal-leading-zero);font:600 1.125rem var(--serif);color:var(--forest);background:var(--sage);border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:0;left:0}.review-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;display:grid}.source-text{white-space:pre-wrap;overflow-wrap:anywhere;font:400 .875rem/1.8 var(--sans);background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px}.warnings{border:1px solid #e8cfbe;border-left:3px solid var(--terracotta);background:#f8f0e9;border-radius:0 14px 14px 0;margin:24px 0;padding:14px 20px}.warnings h2{margin-top:8px}.decisions{margin:30px 0}.decisions>label[for]{display:block}.decisions>button{margin:12px 0 24px}.page-shopping>p:first-of-type{max-width:700px;color:var(--muted)}.selected-recipes,.shopping-items{padding:0;list-style:none}.selected-recipes{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.selected-recipes .panel{padding:22px}.selected-recipes a{min-height:44px;font:600 1.25rem/1.3 var(--serif);align-items:center;display:inline-flex}.selected-recipes p{color:var(--muted);font-size:.8125rem}.selected-recipes button{background:var(--surface);border-color:var(--line);color:var(--forest);font-size:.75rem}.shopping-group{max-width:880px;margin:24px 0}.shopping-group>h3{font-size:1.25rem}.shopping-row{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;margin:10px 0;padding:14px 22px}.shopping-row>label{font-size:1rem;font-weight:600}.shopping-row p{color:var(--muted);font-size:.875rem}.shopping-row details{margin:8px 0 0}.shopping-row summary{color:var(--muted);font-size:.75rem}.shopping-row.is-checked{background:var(--surface)}.shopping-row.is-checked>label{color:#5d6a62;text-decoration:line-through}.changed{font-weight:600;color:#8a301c!important}.clear-confirm{margin-top:20px}.connection{background:var(--sage);color:var(--forest);border:1px solid #cad9cd;border-radius:12px;padding:16px 20px;font-size:.875rem}.error{color:#93000a;background:#ffdad6;border-color:#e5b5af}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.stats>div{border:1px solid var(--line);background:var(--paper);border-radius:20px;flex-direction:column-reverse;gap:10px;padding:24px;display:flex}dt{color:var(--muted);font-size:.8125rem}dd{font:500 2.75rem var(--serif);color:var(--forest);margin:0}.recipe-list{gap:16px;padding:0;list-style:none;display:grid}.recipe-list a{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.recipe-list .panel{padding:20px 24px}.recipe-list p{color:var(--muted);margin-bottom:0;font-size:.75rem}.page-import>p{max-width:760px;color:var(--muted)}.page-import>form.panel>h2{font-size:1.5rem}.page-import fieldset>p{color:var(--muted);max-width:740px;font-size:.8125rem}.pagination{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:20px;margin:28px 0;padding-top:20px;font-size:.875rem;display:flex}footer{border-top:1px solid var(--line);max-width:1280px;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:auto;padding:28px 24px;font-size:.6875rem;display:flex}footer svg{width:20px;height:20px;color:var(--forest)}.footer-note{border-left:1px solid #c2c8c2;padding-left:12px}.skip{background:var(--paper);color:var(--forest);z-index:10;border-radius:8px;padding:12px 18px;position:absolute;top:-120px;left:16px}.skip:focus{top:8px}@media (width<=1024px){.header-inner{gap:18px;padding:20px 24px}.workspace{padding:0 24px}.recipe-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.filter-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav a{padding:9px 11px}.catalog-intro{gap:32px}.recipe-detail .recipe-body{gap:28px}}@media (width<=767px){.header-inner{padding:18px 16px 12px;display:block}.brand{font-size:1.5rem}.main-nav{gap:3px;margin-top:18px}.main-nav a{padding:8px 10px;font-size:.6875rem}.workspace{margin:28px auto 40px;padding:0 16px}.workspace h1{font-size:1.625rem;line-height:1.23}.page-heading{gap:12px;margin-bottom:20px}.page-heading>button{padding:9px 12px;font-size:.75rem}h2{font-size:1.375rem}h3{font-size:1.125rem}.catalog-intro{grid-template-columns:minmax(0,1fr) 110px;gap:10px;padding:0 0 26px}.catalog-intro .page-heading{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px}.catalog-intro .page-heading h1{font-size:2rem}.catalog-intro .quiet-button{padding:6px 10px}.catalog-intro .eyebrow{letter-spacing:.1em;margin-bottom:12px;font-size:.625rem}.intro{font-size:1.375rem}.intro-note{font-size:.75rem;line-height:1.7}.catalog-art{border-radius:90px;padding:10px 0 18px}.catalog-art .botanical{width:100%}.catalog-art>span{font-size:.625rem}.panel{border-radius:20px;padding:20px}.filters{padding:20px 16px}.filter-groups{grid-template-columns:minmax(0,1fr);gap:0}fieldset{padding:14px}.collection-heading{gap:8px;margin:28px 0 16px}.collection-heading p{font-size:.75rem}.recipe-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.recipe-cards:not(.recipe-gallery){grid-template-columns:minmax(0,1fr);gap:16px}.recipe-card-content{padding:12px}.recipe-cards h2{font-size:1.125rem;line-height:1.33}.recipe-cover>span{max-width:calc(100% - 16px);padding:3px 8px;font-size:.625rem;bottom:8px;left:8px}.recipe-tags{gap:4px}.recipe-tags span{padding:3px 6px}.recipe-card-content .select-recipe{font-size:.6875rem}.recipe-card-content .book-caption{font-size:.625rem}.recipe-detail-heading{padding:24px 0}.recipe-detail .recipe-body,.review-columns{grid-template-columns:minmax(0,1fr);gap:16px}.recipe-detail .recipe-body>section:first-child{padding:0 20px 12px}.recipe-facts{grid-template-columns:minmax(0,1fr)}.recipe-facts p{padding:14px 16px}.selected-recipes{grid-template-columns:minmax(0,1fr)}.shopping-row{padding:12px 16px}.source-text{padding:16px}.stats{grid-template-columns:minmax(0,1fr);gap:12px}.stats>div{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;padding:18px}dd{font-size:2rem}.actions{gap:12px}.footer-note{border:0;padding:0}footer{gap:8px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.detail-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.detail-topbar .back-link{margin:0}.detail-topbar>span{color:var(--forest);font:600 1.125rem var(--serif)}.recipe-detail-heading{margin-bottom:20px;padding:24px 0}.recipe-detail .recipe-facts{margin:20px 0 24px}.recipe-detail .recipe-facts p{padding:12px 16px}.recipe-detail .ingredient-panel{background:var(--paper)}.recipe-detail .ingredients{background:var(--surface);border-radius:14px;padding:10px}.recipe-detail .ingredients li{background:var(--paper);border:none;border-radius:10px;margin:8px 0;padding:12px;line-height:1.65}.recipe-detail .ingredients li:first-child{margin-top:0}.recipe-detail .ingredients li:last-child{margin-bottom:0}.preparation li{margin:14px 0;padding:0}.preparation li:before{content:none}.recipe-step-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:16px;padding:20px}.recipe-step-card .recipe-step-heading{font:600 1.375rem/1.3 var(--serif);align-items:center;gap:10px;margin:0 0 14px;display:flex}.step-number{color:#fff;width:26px;height:26px;font:600 .875rem var(--sans);background:#042217;border-radius:50%;flex:none;place-items:center;display:inline-grid}.recipe-step-card .recipe-step-text{margin:0;font-size:1rem;line-height:1.85}@media (width<=767px){.detail-topbar{margin-bottom:16px}.detail-topbar>span{font-size:1rem}.recipe-detail-heading{border-top:none;padding-top:12px}.recipe-detail .recipe-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-detail .recipe-facts p{font-size:.8125rem}.recipe-detail .recipe-body{gap:8px}.recipe-detail .recipe-body>.ingredient-panel{border-radius:16px;padding:0 16px 8px}.recipe-step-card{padding:16px}}.week-nav{flex-wrap:wrap;align-items:center;gap:12px 20px;margin:8px 0 24px;display:flex}.week-nav a{align-items:center;min-height:44px;display:inline-flex}.week-days{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.week-day.panel{margin:0}.week-day h2{text-transform:capitalize;margin:0 0 8px;font-size:1.25rem}.week-day.is-today{border-color:var(--forest);box-shadow:0 0 0 2px var(--sage)}.plan-entry>a{font:600 1.125rem/1.3 var(--serif)}.plan-entry-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:0 12px;display:grid}.plan-entry-fields input,.plan-entry-fields select{min-height:40px!important;margin:4px 0 8px!important}.plan-entry-fields button{grid-column:1/-1}.plan-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px;display:grid}.merge-form{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.merge-form label{flex:200px}.merge-form select{margin:4px 0 0!important}.recipe-cover img,.recipe-photo img{object-fit:cover;width:100%;height:100%;display:block}.recipe-photo{aspect-ratio:4/3;background:var(--surface);border-radius:20px;max-width:720px;margin:16px 0;overflow:hidden}.edit-ingredient{border-top:1px solid var(--line);grid-template-columns:2fr 1fr 1fr 1.2fr;align-items:end;gap:0 10px;padding-top:10px;display:grid}.edit-ingredient>p{color:var(--muted);grid-column:1/-1;margin:0;font-size:.8125rem}.edit-ingredient input,.edit-ingredient select{margin:4px 0 8px!important}.edit-times{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 12px;display:grid}.bulk-books{gap:12px;padding:0;list-style:none;display:grid}.bulk-books li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}@media (width<=767px){.plan-fields,.edit-times{grid-template-columns:1fr}.edit-ingredient{grid-template-columns:1fr 1fr}}.source-view{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px 20px}.source-legend{color:var(--muted);align-items:center;gap:8px;margin:0 0 6px;font-size:.8125rem;display:flex}.legend-swatch{background:#f3e3bf;border:1px solid #d9bf86;border-radius:4px;flex:none;width:14px;height:14px}.source-page-block h3{font:600 1rem/1.4 var(--sans);color:var(--forest);margin:18px 0 8px}.source-page-block p,.source-page-block h4{border-radius:8px;margin:0 0 8px;padding:4px 8px;font-size:.9rem;line-height:1.6}.source-page-block h4{font:600 .95rem/1.4 var(--sans);color:var(--ink);margin-top:14px}.source-page-block .is-marked{background:#f3e3bf;box-shadow:inset 3px 0 #c9a24f}.ingredient-group-title{font:600 1rem/1.4 var(--sans);color:var(--forest);text-transform:none;margin:18px 0 6px}.recipe-tip{background:var(--paper,#faf6ee);border-left:3px solid var(--forest,#4a6b3a);border-radius:8px;margin:8px 0 0;padding:10px 14px;font-size:.9375rem}.review-edit-action{border-top:1px solid var(--line,#e6e1d6);margin:24px 0 8px;padding-top:16px}.recipe-tip+.review-edit-action,.preparation+.review-edit-action{margin-top:24px}.recipe-notice{border-left-color:#c2410c;margin:0 0 12px}@media (width>=768px){.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.recipe-description{color:var(--muted);max-width:760px;margin:0 0 16px;font-size:1.0625rem;font-style:italic}.load-more{color:var(--muted);justify-content:center;padding:24px 0;font-size:.875rem;display:flex}.servings{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.25rem 0 .75rem;display:flex}.servings>button:not(.servings-reset){border-radius:50%;width:2.25rem;height:2.25rem;padding:0;font-size:1.2rem;line-height:1}.servings>span{text-align:center;min-width:6.5rem}.servings-reset{padding:.25rem .6rem;font-size:.85rem}.servings-note{opacity:.75;margin:.25rem 0 .75rem;font-size:.85rem}:root{--accent:#f2711c;--accent-dark:#c9560c;--accent-soft:#fff1e6;--canvas:#f6f5f3;--paper:#fff;--surface:#f4f3f1;--line:#ebe9e6;--outline:#c9c6c1;--forest:#1e1e20;--ink:#1e1e20;--muted:#74726e;--sage:#fff1e6;--terracotta:#f2711c;--serif:"Plus Jakarta Sans",system-ui,sans-serif;--radius:22px;--shadow:0 6px 20px -8px #0000001f,0 2px 6px -2px #0000000d;background:var(--canvas)}body{background:var(--canvas);-webkit-tap-highlight-color:transparent}a{color:var(--accent-dark)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.icon{flex:none;width:22px;height:22px}button{background:var(--accent);border-color:var(--accent);color:#fff;border-radius:14px}button:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.quiet-button,button[type=button],.page-heading>button,.workspace>button{background:var(--paper);color:var(--ink);border-color:var(--line)}.quiet-button:hover,button[type=button]:hover,.page-heading>button:hover,.workspace>button:hover{background:var(--accent-soft);border-color:#f6c9a8}button:disabled,button[type=button]:disabled{color:#9a9893;background:#efeeec;border-color:#e2e0dc}.icon-button{width:46px;height:46px;min-height:46px;box-shadow:var(--shadow);border-radius:50%;padding:0}.select-recipe[aria-pressed=true],.recipe-card-content .select-recipe[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.workspace h1{font:800 2rem/1.15 var(--sans);color:var(--ink);letter-spacing:-.02em}h2{font:750 1.375rem/1.25 var(--sans);color:var(--ink);letter-spacing:-.01em}h3{font:700 1.125rem/1.3 var(--sans);color:var(--ink)}.eyebrow{color:var(--accent-dark);letter-spacing:.08em;margin:0 0 6px;font-size:.6875rem}.site-header{background:0 0;border:0}.header-inner{padding:18px 40px}.brand{font:800 1.25rem/1.2 var(--sans);color:var(--ink)}.brand small{letter-spacing:.08em}.monogram{background:var(--accent);color:#fff;border:0;border-radius:14px;width:42px;height:42px}.main-nav{background:var(--paper);box-shadow:var(--shadow);border-radius:999px;padding:5px}.main-nav a{color:var(--ink);min-height:40px;padding:8px 14px}.main-nav a:hover{background:var(--accent-soft)}.main-nav a[aria-current]{background:var(--accent);color:#fff}.bottom-nav{display:none}.nav-badge{background:var(--accent);color:#fff;min-width:18px;height:18px;font:700 .625rem/18px var(--sans);text-align:center;border-radius:9px;padding:0 5px;position:absolute;top:2px;right:calc(50% - 22px)}.workspace{margin-top:24px}footer{border:0}footer svg{color:var(--accent)}.panel{border-radius:var(--radius);box-shadow:var(--shadow);border:0}.workspace input:not([type=checkbox]),.workspace select,.workspace textarea{border-color:var(--line);background:var(--paper);border-radius:14px}fieldset{border-color:var(--line);border-radius:18px}legend,summary{color:var(--ink)}.connection{background:var(--accent-soft);color:var(--ink);border-color:#f6d3b9}.connection.error{color:#93000a;background:#ffe3df;border-color:#f3b8b0}.stats>div{box-shadow:var(--shadow);border-radius:var(--radius);border:0}dd{font:800 2.5rem var(--sans);color:var(--ink)}.recipe-tags span{background:var(--accent-soft);color:var(--accent-dark)}.catalog-top{justify-content:space-between;align-items:flex-end;gap:16px;margin:0 0 18px;display:flex}.catalog-top h1{margin:0}.filters{box-shadow:none;background:0 0;padding:0;margin:0 0 8px!important}.search-field{max-width:640px;position:relative}.search-field .icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.workspace .search-field input{min-height:54px;box-shadow:var(--shadow);border:0;border-radius:999px;max-width:none;margin:0;padding-left:52px;font-size:1rem}.category-chips{scrollbar-width:none;gap:8px;margin:0 -2px;padding:16px 2px 6px;display:flex;overflow-x:auto}.category-chips::-webkit-scrollbar{display:none}.category-chips button{background:var(--paper);min-height:40px;box-shadow:var(--shadow);color:var(--ink);border:0;border-radius:999px;flex:none;padding:8px 16px;font-size:.8125rem;font-weight:600}.category-chips button[aria-pressed=true]{background:var(--accent);color:#fff}.filter-details{border:0;margin:6px 0 0;padding:0}.filter-details>summary{color:var(--muted);align-items:center;gap:8px;font-size:.8125rem;display:inline-flex}.filter-details>summary .icon{width:18px;height:18px}.filter-details[open]{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);padding:4px 20px 16px}.filters .filter-groups label:has(input:checked){background:var(--accent-soft);color:var(--accent-dark)}.filter-groups fieldset{background:0 0}.active-filters{color:var(--muted);border:0;padding-top:4px}.collection-heading{margin:22px 0 4px}.collection-heading h2{font-size:1.125rem}.recipe-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.recipe-card{border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);min-width:0;position:relative;overflow:hidden}.recipe-card-link{height:100%;color:inherit;text-decoration:none;display:block}.recipe-card-link:hover h2{text-decoration:underline;text-decoration-thickness:2px}.recipe-card .recipe-cover{aspect-ratio:1;color:#d8a47c;background:#f4ece4}.recipe-card .cover-1{color:#b9b07a;background:#f1efe6}.recipe-card .cover-2{color:#c39b84;background:#efe9e4}.recipe-cover img{object-fit:cover;width:100%;height:100%;display:block}.recipe-card .recipe-card-content{color:#fff;background:linear-gradient(#0000 0%,#00000080 45%,#000000c4 100%);padding:44px 14px 12px;position:absolute;inset:auto 0 0}.recipe-card .recipe-card-content h2{font:750 1rem/1.25 var(--sans);color:#fff;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:4px 0;display:-webkit-box;overflow:hidden}.recipe-card .card-chip{color:var(--ink);background:#ffffffe6;border-radius:999px;padding:2px 9px;font-size:.625rem;font-weight:700;display:inline-block}.recipe-meta{flex-wrap:wrap;gap:4px 12px;display:flex;color:#ffffffe0!important;margin:0!important;font-size:.75rem!important}.recipe-meta span{align-items:center;gap:4px;display:inline-flex}.recipe-meta .icon{width:14px;height:14px}.recipe-card .book-caption{white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;overflow:hidden;color:#ffffffb3!important;font-size:.625rem!important}.heart-button{width:40px;height:40px;min-height:40px;box-shadow:var(--shadow);z-index:2;border-radius:50%;padding:0;position:absolute;top:10px;right:10px;color:var(--ink)!important;background:#ffffffeb!important;border:0!important}.heart-button[aria-pressed=true]{color:var(--accent)!important}.heart-button[aria-pressed=true] path{fill:currentColor}.heart-button:disabled{opacity:.7}.load-more{text-align:center;color:var(--muted);padding:12px 0 24px;font-size:.8125rem}.recipe-detail{max-width:1100px}.recipe-hero{aspect-ratio:16/9;color:#d8a47c;width:100%;max-height:460px;box-shadow:var(--shadow);background:#f4ece4;border-radius:28px;place-items:center;display:grid;position:relative;overflow:hidden}.recipe-hero img{object-fit:cover;width:100%;height:100%;display:block}.recipe-hero.no-photo .botanical{width:min(320px,70%)}.hero-button{width:44px;height:44px;color:var(--ink);box-shadow:var(--shadow);background:#ffffffeb;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;left:14px}.recipe-hero .heart-button{width:44px;height:44px;top:14px;right:14px}.recipe-detail-heading{border:0!important;margin:0!important;padding:22px 0 0!important}.recipe-detail-heading h1{margin:0 0 6px}.recipe-description{color:var(--muted);max-width:760px;margin:6px 0 16px;font-size:1rem}.recipe-detail .recipe-facts{background:0 0;border:0;border-radius:0;flex-wrap:wrap;gap:8px;margin:12px 0 20px;display:flex}.recipe-detail .recipe-facts p{background:var(--paper);box-shadow:var(--shadow);border-radius:16px;flex:180px;padding:10px 14px;font-size:.8125rem}.recipe-facts strong{color:var(--accent-dark)}.recipe-tabs{display:none}.recipe-detail .recipe-body>section:first-child{box-shadow:var(--shadow);border-radius:var(--radius);border:0}.recipe-detail .ingredients{background:0 0;padding:0}.recipe-detail .ingredients li{background:var(--surface);border-radius:14px}.servings{background:var(--surface);border-radius:999px;width:fit-content;padding:4px}.servings>button:not(.servings-reset){background:var(--paper);color:var(--ink);box-shadow:var(--shadow);border:0}.servings-reset{border-radius:999px;color:var(--accent-dark)!important;background:0 0!important;border:0!important}.recipe-step-card{border-radius:var(--radius);box-shadow:var(--shadow);border:0;padding:0;overflow:hidden}.recipe-step-card>summary{font:700 1rem/1.3 var(--sans);cursor:pointer;align-items:center;gap:10px;margin:0;padding:16px 18px;list-style:none;display:flex}.recipe-step-card>summary::-webkit-details-marker{display:none}.recipe-step-card>summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:9px;height:9px;margin-left:auto;transform:rotate(45deg)translateY(-3px)}.recipe-step-card[open]>summary:after{transform:rotate(-135deg)}.recipe-step-card .recipe-step-text{padding:0 18px 18px}.step-number{background:var(--accent);width:28px;height:28px}.step-done{color:var(--accent-dark);background:var(--accent-soft);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600;display:none}.recipe-step-card:not([open]){opacity:.7}.recipe-step-card:not([open]) .step-done{display:inline}.recipe-tip{background:var(--accent-soft);border-radius:16px;padding:12px 16px}.recipe-extra{margin:28px 0}.recipe-extra h2{margin-top:0}.plan-form{margin:28px 0}.shopping-row{border:0;border-radius:18px}.selected-recipes .panel a{font:700 1.0625rem/1.3 var(--sans)}.selected-recipes button{background:var(--surface);color:var(--ink)}.admin-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 12px;padding:0;list-style:none;display:grid}.admin-links a{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);flex-direction:column;gap:4px;padding:18px 20px;text-decoration:none;display:flex}.admin-links span{color:var(--muted);font-size:.8125rem}.warnings{border-left-color:var(--accent);background:var(--accent-soft);border-color:#f6d3b9}.source-text{background:var(--surface);border:0}@media (width>=768px){.recipe-detail .recipe-body{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}}@media (width<=1024px){.recipe-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=767px){.header-inner{padding:14px 16px 0}.brand{font-size:1.0625rem}.brand small{display:none}.monogram{border-radius:11px;width:34px;height:34px}.monogram svg{width:20px;height:20px}.main-nav{display:none}.bottom-nav{z-index:20;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));background:var(--paper);border-radius:24px;justify-content:space-around;padding:6px;display:flex;position:fixed;box-shadow:0 10px 30px -6px #0000002e,0 2px 8px #00000014}.bottom-nav a{min-height:52px;color:var(--muted);border-radius:18px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.625rem;font-weight:600;text-decoration:none;display:flex;position:relative}.bottom-nav a[aria-current]{color:var(--accent)}.bottom-nav a[aria-current] .icon{background:var(--accent-soft);border-radius:12px;width:30px;height:28px;padding:3px}.workspace{margin:14px auto 0;padding:0 16px 110px}footer{display:none}.workspace h1{font-size:1.625rem}.catalog-top{margin-bottom:14px}.recipe-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recipe-card{border-radius:20px}.recipe-card .recipe-card-content{padding:40px 10px 10px}.recipe-card .recipe-card-content h2{font-size:.875rem}.heart-button{width:36px;height:36px;min-height:36px;top:8px;right:8px}.heart-button .icon{width:19px;height:19px}.recipe-hero{aspect-ratio:4/3.2;border-radius:0 0 30px 30px;width:calc(100% + 32px);max-height:none;margin:0 -16px}.page-recipes .recipe-detail{margin-top:-14px}.recipe-detail .recipe-facts p{flex:40%;padding:9px 12px;font-size:.75rem}.recipe-tabs{background:var(--paper);box-shadow:var(--shadow);z-index:5;border-radius:999px;gap:4px;margin:8px 0 14px;padding:4px;display:flex;position:sticky;top:8px}.recipe-tabs button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:999px;flex:1;font-weight:700}.recipe-tabs button[aria-selected=true]{background:var(--accent);color:#fff}.recipe-body.tabbed{display:block}.recipe-body.tabbed>section>h2,.recipe-body.show-ingredients>.method-panel,.recipe-body.show-method>.ingredient-panel{display:none}.recipe-detail .recipe-body>.ingredient-panel{padding:14px 14px 8px}.admin-links{grid-template-columns:minmax(0,1fr)}.shopping-notice,[role=status].floating{bottom:96px}}.filters .search-field #search{border:0;padding-left:52px}.recipe-card .card-chip{align-self:flex-start}@media (width<=767px){.catalog-top .eyebrow{display:none}}.selected-recipes{gap:10px}.selected-recipes .panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 12px;padding:10px 12px 10px 18px;display:grid}.selected-recipes .panel>a{color:var(--ink);font-size:1rem;text-decoration:none}.selected-recipes .panel>p{grid-column:1;margin:0}.selected-recipes .panel>button{grid-area:1/2/span 2;min-height:40px;padding:6px 12px}.workspace a:not([class]){color:var(--accent-dark)}.week-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.week-nav a{background:var(--paper);min-height:40px;box-shadow:var(--shadow);border-radius:999px;align-items:center;padding:6px 14px;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex;color:var(--ink)!important}.week-days{gap:10px;padding:0;list-style:none;display:grid}.week-day.panel{padding:14px 18px}.week-day h2{margin:0 0 4px;font-size:1rem}.week-day>p{color:var(--muted);margin:0;font-size:.8125rem}.week-day.is-today{outline:2px solid var(--accent)}.page-heading>button{border-radius:999px}.offline-status{color:#fff;background:#2b2b2e;border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px;padding:10px 16px;font-size:.8125rem;font-weight:600;display:flex}.offline-status.is-syncing{background:var(--accent-soft);color:var(--ink)}.offline-status button{min-height:34px;padding:4px 12px;font-size:.75rem}.toast-area{z-index:30;top:calc(12px + env(safe-area-inset-top));pointer-events:none;gap:8px;width:min(560px,100% - 24px);display:grid;position:fixed;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;color:#fff;background:#1e1e20;border-radius:18px;align-items:center;gap:12px;margin:0;padding:12px 8px 12px 18px;font-size:.875rem;font-weight:600;line-height:1.4;animation:.2s ease-out toast-in;display:flex;box-shadow:0 12px 30px -8px #00000059}.toast.is-busy{background:var(--paper);color:var(--ink);padding-right:18px}.toast-close{border-radius:50%;flex:none;width:34px;height:34px;min-height:34px;margin-left:auto;padding:0;font-size:1.25rem;line-height:1;color:#fff!important;background:0 0!important;border:0!important}.toast-close:hover{background:#ffffff26!important}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}:root{--canvas:#f0f1f2;--surface:#eef0f1;--bg-top:#f0f1f2;--bg-bottom:#dcdedf;background:var(--bg-bottom)}body{background:0 0;min-height:100vh}body:before{content:"";z-index:-1;background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg-bottom) 100%);pointer-events:none;position:fixed;inset:0}.recipe-step-card>summary.recipe-step-heading{font:400 1rem/1.7 var(--sans);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:4px 12px;margin:0;padding:14px 16px;display:grid}.recipe-step-card>summary:after{grid-area:1/3;margin:9px 2px 0 0}.recipe-step-card .step-number{width:auto;height:auto;color:var(--accent);font:800 1rem/1.7 var(--sans);letter-spacing:.02em;background:0 0;display:block}.recipe-step-card .recipe-step-text{color:var(--ink);margin:0;padding:0;font-size:.9375rem;line-height:1.7}.recipe-step-card .step-done{grid-column:2;justify-self:start}.recipe-step-card:not([open]) .recipe-step-text{-webkit-line-clamp:1;-webkit-box-orient:vertical;-webkit-text-decoration:line-through #0000004d;text-decoration:line-through #0000004d;display:-webkit-box;overflow:hidden}.preparation li{margin:10px 0}.recipe-hero{aspect-ratio:auto;color:#fff;border-radius:28px;height:min(62vh,520px);max-height:none;display:block}.recipe-hero>img,.recipe-hero>.botanical{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.recipe-hero.no-photo{background:linear-gradient(160deg,#f6c39b,#e9874a)}.recipe-hero.no-photo>.botanical{color:#ffffff59;object-fit:contain;padding:12% 18% 40%}.recipe-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000004d 0%,#0000 22% 42%,#000000b3 100%);position:absolute;inset:0}.hero-actions{z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;top:14px;left:14px;right:14px}.hero-actions-right{gap:10px;display:flex}.recipe-hero .hero-button,.recipe-hero .heart-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;place-items:center;width:46px;height:46px;min-height:46px;padding:0;display:grid;position:static;box-shadow:0 4px 14px #0000002e;color:var(--ink)!important;background:#ffffffc7!important;border:1px solid #fff9!important}.recipe-hero .heart-button[aria-pressed=true]{color:#d6332a!important}.hero-info{z-index:2;padding:0 22px 52px;position:absolute;bottom:0;left:0;right:0}.hero-info h1{text-shadow:0 2px 12px #00000059;line-height:1.15;color:#fff!important;margin:0 0 14px!important;font-size:1.75rem!important}.hero-book{text-transform:uppercase;letter-spacing:.08em;color:#fffc;-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:0 0 6px;font-size:.6875rem;font-weight:700;display:-webkit-box;overflow:hidden}.hero-facts{flex-wrap:wrap;gap:10px 22px;margin:0;display:flex}.hero-facts>div{flex-direction:column-reverse;gap:2px;min-width:0;display:flex}.hero-facts dd{font:700 .9375rem/1.3 var(--sans);color:#fff;align-items:center;gap:6px;margin:0;display:flex}.hero-facts .icon{width:18px;height:18px}.recipe-sheet{z-index:3;background:var(--bg-top);border-radius:30px 30px 0 0;margin-top:-30px;padding:22px 20px 8px;position:relative;box-shadow:0 -8px 24px -12px #0000002e}.recipe-chips{flex-wrap:wrap;gap:6px;margin:0 0 14px;display:flex}.recipe-chips span{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:4px 11px;font-size:.75rem;font-weight:600}.recipe-chips .chip-muted{background:var(--paper);color:var(--muted)}.recipe-sheet>.recipe-description{margin-top:0}.recipe-detail-heading{display:none}.servings{background:0 0;justify-content:space-between;align-items:center;gap:12px;width:auto;margin:0;padding:2px 0 12px;display:flex}.servings-label{color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;font-size:1rem;font-weight:700;display:flex}.servings-reset{text-underline-offset:3px;font-weight:600;text-decoration:underline;min-height:0!important;padding:0!important;font-size:.75rem!important}.stepper{background:var(--surface);border-radius:999px;flex:none;align-items:center;gap:2px;padding:4px;display:inline-flex}.stepper>button{border-radius:50%;width:38px;height:38px;min-height:38px;padding:0;font-size:1.375rem;font-weight:400;box-shadow:none!important;color:var(--muted)!important;background:0 0!important;border:0!important}.stepper>button:hover:not(:disabled){background:var(--paper)!important;color:var(--ink)!important}.stepper>span{text-align:center;min-width:26px;font-size:1rem;font-weight:700}.recipe-detail .ingredient-panel .servings+div .ingredients,.recipe-detail .ingredient-panel .servings-note{margin-top:0}.week-nav{gap:10px;margin:0 0 6px}.week-nav>a{justify-content:center;width:40px;height:40px;min-height:40px;padding:0;font-size:1.375rem;position:relative}.week-nav>a.week-today{width:auto;padding:0 14px;font-size:.8125rem}.week-nav strong{font-size:.9375rem}.week-count{background:var(--accent);color:#fff;min-width:17px;height:17px;font:700 .625rem/17px var(--sans);text-align:center;border-radius:9px;padding:0 4px;position:absolute;top:-4px;right:-4px}.week-strip{scroll-snap-type:x mandatory;scrollbar-width:thin;-webkit-overflow-scrolling:touch;gap:14px;margin:0 -40px;padding:10px 40px 18px;scroll-padding:0 16px;list-style:none;display:flex;overflow-x:auto}.week-strip>li{scroll-snap-align:start;background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;flex:0 0 min(320px,82vw);min-height:220px;padding:16px;display:flex}.week-strip>li.is-today{outline:2px solid var(--accent);outline-offset:-2px}.week-strip>li.is-past{opacity:.75}.week-strip>li.no-day{background:var(--accent-soft)}.week-strip h2{justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 10px;font-size:1.0625rem;display:flex}.week-strip h2 span:first-letter{text-transform:uppercase}.week-strip h2 small{color:var(--muted);font-size:.75rem;font-weight:600}.week-strip .is-today h2 small{color:var(--accent-dark)}.week-empty{color:var(--muted);text-align:center;margin:auto 0;font-size:.8125rem}.week-hint{color:var(--muted);font-size:.8125rem}.plan-entries{gap:8px;margin:0;padding:0;list-style:none;display:grid}.plan-entry{background:var(--surface);border-radius:16px;padding:8px}.plan-entry-link{align-items:center;gap:12px;min-height:56px;text-decoration:none;display:flex;color:var(--ink)!important}.plan-thumb{color:#d8a47c;background:#f4ece4;border-radius:12px;flex:0 0 56px;place-items:center;width:56px;height:56px;display:grid;overflow:hidden}.plan-thumb img{object-fit:cover;width:100%;height:100%}.plan-thumb svg{width:26px;height:26px}.plan-entry-text{flex-direction:column;min-width:0;display:flex}.plan-entry-text strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9375rem;line-height:1.3;display:-webkit-box;overflow:hidden}.plan-entry-text small{color:var(--muted);font-size:.75rem}.plan-entry-edit{border:0;margin:4px 0 0;padding:0}.plan-entry-edit>summary{min-height:32px;color:var(--muted);padding:4px;font-size:.75rem}.plan-entry-fields{gap:0;display:grid}.plan-entry-fields label{font-size:.75rem}.workspace .plan-entry-fields input,.workspace .plan-entry-fields select{min-height:42px;margin:4px 0 10px}@media (width<=767px){.site-header{display:none}.workspace{margin-top:10px}.page-recipes .recipe-detail{margin-top:-10px}.recipe-hero{border-radius:0;width:calc(100% + 32px);height:min(58vh,480px);margin:0 -16px}.hero-actions{top:calc(12px + env(safe-area-inset-top))}.recipe-sheet{margin:-30px -16px 0;padding:20px 16px 8px}.recipe-sheet .recipe-tabs{top:8px}.week-strip{margin:0 -16px;padding-left:16px;padding-right:16px}.week-strip>li{flex-basis:82vw}}@media (width>=768px){.recipe-sheet{margin:-30px 18px 0;padding:26px 28px 8px}.hero-info{padding:0 36px 58px}.hero-info h1{font-size:2.5rem!important}}.week-strip h2 small{text-transform:none}.day-picker{scrollbar-width:none;gap:6px;padding:4px 0;display:flex;overflow-x:auto}.day-picker::-webkit-scrollbar{display:none}.day-picker>button{background:var(--paper);min-height:58px;box-shadow:var(--shadow);color:var(--ink);border:0;border-radius:16px;flex-direction:column;flex:1 0 44px;align-items:center;gap:0;padding:6px 4px;display:flex;position:relative}.day-picker>button small{color:var(--muted);text-transform:lowercase;font-size:.6875rem}.day-picker>button b{font-size:1rem}.day-picker>button.is-today{background:var(--accent);color:#fff}.day-picker>button.is-today small{color:#fffc}.day-dot{background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;bottom:5px}.day-picker>button.is-today .day-dot{background:#fff}.week-strip h2 span{text-transform:none!important}.day-picker>button,.day-picker>button small{white-space:nowrap}.day-none{line-height:1.6;font-size:.8125rem!important}.week-strip,.day-picker{display:none}.week-nav{margin:0 0 10px}.day-tabs{border-radius:22px;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin:0 0 14px;padding:6px;display:grid}.day-tabs>button{border-radius:16px;flex-direction:column;align-items:center;gap:2px;min-height:62px;padding:8px 0 10px;display:flex;position:relative;box-shadow:none!important;color:var(--muted)!important;background:0 0!important;border:0!important}.day-tabs>button small{letter-spacing:.06em;text-transform:uppercase;color:inherit;font-size:.625rem;font-weight:700}.day-tabs>button b{font-size:1.0625rem;font-weight:500}.day-tabs>button.is-today b{width:30px;height:30px;box-shadow:inset 0 0 0 1.5px var(--outline);border-radius:50%;place-items:center;margin:-2px 0;display:grid}.day-tabs>button[aria-selected=true]{color:var(--ink)!important}.day-tabs>button[aria-selected=true] b{font-weight:800}.day-tabs>button[aria-selected=true]:after{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;bottom:2px;left:22%;right:22%}.day-tabs .day-dot{width:6px;height:6px;top:6px;bottom:auto;right:22%}.day-list{margin:0 0 18px}.day-list>h2{align-items:center;gap:8px;margin:20px 0 10px;font-size:1rem;display:flex}.day-list>h2 small{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:1px 9px;font-size:.75rem}.day-list .plan-entries{gap:10px}.day-list .plan-entry{background:var(--paper);box-shadow:var(--shadow);border-radius:20px;padding:8px 8px 4px}.day-list .plan-thumb{border-radius:14px;flex-basis:76px;width:76px;height:76px}.plan-entry-link{padding-right:30px;position:relative}.plan-progress{margin-top:2px;font-weight:600;color:var(--accent-dark)!important}.plan-done{color:#3f9b4f;font-weight:800;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.plan-entry-edit>summary{padding-left:88px}.week-empty{background:var(--paper);box-shadow:var(--shadow);border-radius:20px;margin:0;padding:28px 18px}.day-list .plan-entry{border-radius:18px;padding:0;overflow:hidden}.day-list .plan-entry-link{align-items:stretch;gap:0;min-height:96px;padding:0 34px 0 0}.day-list .plan-thumb{border-radius:0;flex:0 0 96px;align-self:stretch;width:96px;height:auto;min-height:96px}.day-list .plan-entry-text{justify-content:center;gap:2px;padding:10px 0 10px 16px}.plan-done{right:14px}.ingredient-panel:has(.servings)>h2{display:none}.servings{background:0 0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:4px 0 14px;display:flex}.servings-label{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:0;font-size:.9375rem;font-weight:400;display:flex}.servings-label strong{color:var(--ink);font-size:1.125rem;font-weight:700}.servings-label .servings-reset{flex-basis:100%;justify-content:flex-start;width:auto;box-shadow:none!important;min-height:0!important;color:var(--accent-dark)!important;background:0 0!important;border:0!important;padding:0!important;font-size:.75rem!important}.stepper{border:1.5px solid var(--ink);border-radius:7px;align-items:stretch;gap:0;padding:0;display:inline-flex;overflow:hidden;box-shadow:none!important;background:0 0!important}.stepper>button{border-radius:0;width:38px;height:30px;min-height:30px;padding:0;font-size:1.125rem;line-height:1;box-shadow:none!important;color:var(--ink)!important;background:0 0!important;border:0!important}.stepper>button+button{border-left:1.5px solid var(--ink)!important}.stepper>button:hover:not(:disabled){background:var(--surface)!important}.stepper>button:disabled{color:#b8b6b2!important}.stepper>span{display:none}.servings{flex-wrap:nowrap}.servings-label{flex:auto;min-width:0}.stepper{flex:none;width:auto}.stepper>button{flex:0 0 38px;max-width:38px;width:38px!important}html,body{overscroll-behavior-y:contain}.pull-indicator{z-index:40;pointer-events:none;width:44px;height:44px;color:var(--accent);-webkit-backdrop-filter:blur(16px)saturate(180%);backdrop-filter:blur(16px)saturate(180%);opacity:0;background:#ffffff8c;border:1px solid #ffffffd9;border-radius:50%;place-items:center;transition:opacity .15s;display:grid;position:fixed;top:0;left:50%;box-shadow:inset 0 1px 1px #ffffffb3,0 6px 18px -6px #00000040}.pull-indicator>span{place-items:center;display:grid}.pull-indicator.is-refreshing>span{animation:.7s linear infinite pull-spin}@keyframes pull-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.pull-indicator.is-refreshing>span{animation:none}}.servings>.stepper{min-width:0;text-align:initial}.hero-facts{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin:4px 0 0;display:grid}.hero-facts>div{text-align:center;background:0 0;border:0;flex-direction:column-reverse;align-items:center;gap:6px;padding:0;display:flex}.hero-facts dd{white-space:nowrap;justify-content:center;gap:6px;font-size:1.0625rem}.hero-facts dd .icon{width:20px;height:20px}.hero-facts dt{color:#ffffffbf;font-size:.8125rem}.hero-info{padding-bottom:58px}.recipe-detail .recipe-body>.ingredient-panel{padding:20px 20px 12px}.servings{gap:16px;padding:0 0 16px}.servings-label strong{font-size:1.1875rem}.stepper>button{height:32px;min-height:32px}@media (width<=767px){.workspace{padding-top:calc(22px + env(safe-area-inset-top));margin-top:0}.page-recipes .recipe-detail{margin-top:calc(-22px - env(safe-area-inset-top))}}body:has(.recipe-detail):before{background:var(--bg-top)}.ingredient-panel .servings-note{margin:0 0 12px}.page-shopping .shopping-items{gap:8px;max-width:880px;margin:8px 0 18px;display:grid}.page-shopping .shopping-row{background:var(--paper);box-shadow:var(--shadow);border-radius:14px;margin:0;padding:0;position:relative}.shopping-line{cursor:pointer;align-items:center;gap:12px;min-height:52px;margin:0;padding:8px 46px 8px 14px;display:flex;font-size:.9375rem!important;font-weight:500!important}.workspace .shopping-line input[type=checkbox]{border-radius:6px;width:22px;height:22px}.shopping-name{flex:auto;order:1;min-width:0}.shopping-amount{text-align:right;max-width:45%;color:var(--muted);flex:none;order:2;font-size:.875rem;font-weight:500}.shopping-amount small{color:var(--accent-dark);font-size:.6875rem;display:block}.shopping-row.is-checked .shopping-name{color:var(--muted);text-decoration:line-through}.shopping-row.is-checked{opacity:.8;background:var(--paper)!important}.shopping-row .changed{margin:-4px 14px 8px 48px;font-size:.75rem}.shopping-more{border:0;margin:0;padding:0;position:static}.shopping-more>summary{width:36px;height:40px;min-height:40px;color:var(--muted);border-radius:10px;place-items:center;padding:0;list-style:none;display:grid;position:absolute;top:6px;right:6px}.shopping-more>summary::-webkit-details-marker{display:none}.shopping-more>summary:after{content:"";border-bottom:2px solid;border-right:2px solid;width:8px;height:8px;transform:rotate(45deg)translateY(-2px)}.shopping-more[open]>summary:after{transform:rotate(-135deg)}.shopping-more[open]{padding:0 14px 12px 48px}.shopping-more p{color:var(--muted);margin:4px 0;font-size:.8125rem}.shopping-sources span{display:block}.shopping-more .merge{border:0;margin:4px 0 0;padding:0}.page-shopping h2{margin:22px 0 6px;font-size:1.0625rem}.search-row{align-items:center;gap:10px;max-width:700px;display:flex}.search-row .search-field{flex:auto;min-width:0}.filter-toggle{width:54px;height:54px;min-height:54px;box-shadow:var(--shadow);border-radius:50%;flex:0 0 54px;padding:0;position:relative;background:var(--paper)!important;color:var(--ink)!important;border:0!important}.filter-toggle[aria-expanded=true]{background:var(--ink)!important;color:#fff!important}.filter-toggle.is-active:after{content:"";background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--paper);border-radius:50%;position:absolute;top:12px;right:12px}.filter-details{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);border:0;margin:10px 0 0;padding:4px 20px 16px}.filter-details[hidden]{display:none}.week-card{background:var(--paper);box-shadow:var(--shadow);border-radius:26px;margin:0 0 18px;padding:12px}.week-card .week-nav{background:var(--surface);border-radius:16px;align-items:center;gap:6px;margin:0 0 12px;padding:6px 6px 6px 16px;display:flex}.week-label{flex:auto;font-size:.9375rem;font-weight:700}.week-label:first-letter{text-transform:uppercase}.week-card .week-nav>a{background:var(--paper);width:36px;height:36px;min-height:36px;box-shadow:none;border-radius:12px;font-size:1.25rem}.week-card .week-nav>a.week-today{width:auto;padding:0 10px;font-size:.75rem}.week-card .day-tabs{gap:6px;margin:0;padding:0;box-shadow:none!important;background:0 0!important;border:0!important}.week-card .day-tabs>button{gap:6px;min-height:0;padding:8px 0 6px;background:var(--surface)!important;color:var(--muted)!important;border-radius:999px!important}.week-card .day-tabs>button small{letter-spacing:.04em;font-size:.625rem}.week-card .day-tabs>button b{background:var(--paper);width:32px;height:32px;color:var(--ink);box-shadow:none;border-radius:50%;place-items:center;margin:0;font-size:.875rem;font-weight:700;display:grid}.week-card .day-tabs>button.is-today b{box-shadow:inset 0 0 0 1.5px var(--accent)}.week-card .day-tabs>button[aria-selected=true]{background:var(--accent)!important;color:#fff!important}.week-card .day-tabs>button[aria-selected=true] b{color:var(--ink);background:#ffd9bf}.week-card .day-tabs>button[aria-selected=true]:after{display:none}.week-card .day-dot{width:6px;height:6px;inset:auto auto -2px 50%;transform:translate(-50%)}.week-card .day-tabs>button[aria-selected=true] .day-dot{background:#fff}@media (width>=768px){.recipe-hero{border-radius:28px 28px 0 0}.recipe-sheet{padding:26px 32px 8px;margin:-30px 0 0!important}.hero-facts{grid-auto-columns:max-content;gap:12px 44px}.hero-facts>div{text-align:left;align-items:flex-start}.hero-facts dd{justify-content:flex-start}}.workspace .shopping-row label.shopping-line{gap:12px;min-height:52px;margin:0;padding:8px 48px 8px 14px;display:flex}.page-shopping .shopping-row .shopping-more{border:0;margin:0;padding:0}.page-shopping .shopping-row .shopping-more[open]{padding:0 14px 12px 48px}.page-shopping .shopping-row .shopping-more>summary{min-height:40px;margin:0;padding:0}.recipe-detail .recipe-body>section.ingredient-panel:first-child{padding:20px 20px 12px}.recipe-detail .recipe-tabs{margin-bottom:16px}.filter-details>label{margin-top:6px;display:block}.filter-details>button{margin:2px 0 18px;display:flex}.filters .actions{margin:16px 0 4px}.filters .active-filters{margin-top:12px}@media (width<=767px){.plan-form button:not([type=button]){width:100%}}.filter-details>p{color:var(--muted);margin:8px 0;font-size:.75rem;line-height:1.5}:root{--sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,sans-serif;--serif:var(--sans);--ink:#05172c;--forest:#05172c;--muted:#5f6b78;--outline:#b7bdc4;--line:#e4e6e9;--surface:#f4f5f5;--brand-grey:#8a949f;--brand-green:#86bf3e;--brand-red:#fc4b4e;--brand-yellow:#fec740;font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,button,input,select,textarea{font-family:var(--sans)}.workspace h1,.hero-info h1{letter-spacing:-.025em;font-weight:700!important}h2,h3,.servings-label strong,.week-label,.plan-entry-text strong,.recipe-card .recipe-card-content h2{letter-spacing:-.01em;font-weight:600}.brand{font-weight:700}.workspace input[type=checkbox]{accent-color:var(--brand-green)}.plan-done{color:var(--brand-green)}.heart-button[aria-pressed=true],.recipe-hero .heart-button[aria-pressed=true],.recipe-card .heart-button[aria-pressed=true]{color:var(--brand-red)!important}.shopping-row.is-checked .shopping-name{color:var(--brand-grey)}@media (width<=767px){.bottom-nav a{color:var(--outline)}.bottom-nav a[aria-current]{color:var(--ink)}.bottom-nav a[aria-current] .icon{border-radius:0;width:22px;height:22px;padding:0;background:0 0!important}.bottom-nav a[aria-current]:before{content:"";background:var(--accent);border-radius:0 0 3px 3px;height:3px;position:absolute;top:-6px;left:22%;right:22%}.bottom-nav a{color:#6b7682;font-weight:500}.bottom-nav a .icon{color:var(--outline)}.bottom-nav a[aria-current]{color:var(--ink);font-weight:600}.bottom-nav a[aria-current] .icon{color:var(--ink)}.bottom-nav a[aria-current]:before{display:none;top:-6px;left:26%;right:26%}.bottom-nav a[aria-current]{background:var(--accent-soft);color:var(--ink)}.bottom-nav a{border-radius:18px;margin:0 2px}}.callout{color:var(--ink);background:#f1f7e8;border-radius:16px;align-items:flex-start;gap:14px;margin:14px 0;padding:14px 18px;font-size:.9375rem;line-height:1.45;display:flex}.callout>.icon{width:26px;height:26px;color:var(--brand-green);flex:none;margin-top:4px}.callout strong{color:#467a15;font-weight:600;display:block}.callout-text{color:var(--ink)}.callout-text a{color:var(--ink);-webkit-text-decoration-color:var(--brand-green);text-decoration-color:var(--brand-green)}.callout-notice{background:#fff7dc}.callout-notice>.icon{color:#e0a800}.callout-notice strong{color:#8a6500}.day-list .callout{box-shadow:none;background:#f1f7e8;margin:0}.meal-slots{gap:14px;display:grid}.meal-slot>h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:.8125rem;font-weight:600}.meal-empty{border:1.5px dashed var(--outline);color:var(--muted);border-radius:16px;margin:0;padding:14px 16px;font-size:.875rem}.meal-empty a{color:var(--accent-dark)}.day-list .plan-thumb{height:auto;min-height:96px;position:relative;overflow:hidden}.day-list .plan-thumb img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.day-list .plan-entry-link{max-height:none}.plan-toggle[aria-pressed=true],.recipe-hero .plan-toggle[aria-pressed=true],.recipe-card .plan-toggle[aria-pressed=true]{color:var(--accent)!important}.plan-toggle path{fill:none!important}.plan-sheet{background:var(--paper);width:100%;max-width:520px;max-height:90vh;color:var(--ink);border:0;border-radius:28px 28px 0 0;margin:auto auto 0;padding:0;box-shadow:0 -10px 40px -10px #0000004d}.plan-sheet::backdrop{background:#05172c66}.plan-sheet form{padding:18px 20px calc(20px + env(safe-area-inset-bottom));gap:14px;display:grid}.plan-sheet-head{justify-content:space-between;align-items:center;display:flex}.plan-sheet-head h2{margin:0;font-size:1.25rem}.sheet-close{width:38px;height:38px;min-height:38px;box-shadow:none;border-radius:50%;padding:0;font-size:1.375rem;background:var(--surface)!important;color:var(--ink)!important;border:0!important}.plan-sheet-title{color:var(--muted);margin:-8px 0 0;font-weight:600}.plan-sheet fieldset{scrollbar-width:none;border:0;gap:6px;margin:0;padding:0;display:flex;overflow-x:auto}.plan-sheet fieldset::-webkit-scrollbar{display:none}.plan-sheet legend{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;padding:0;font-size:.75rem;font-weight:600}.sheet-days>button{min-height:0;box-shadow:none;border-radius:999px;flex-direction:column;flex:0 0 52px;align-items:center;gap:4px;padding:8px 0;display:flex;background:var(--surface)!important;color:var(--muted)!important;border:0!important}.sheet-days>button small{text-transform:uppercase;letter-spacing:.03em;font-size:.625rem}.sheet-days>button b{background:var(--paper);width:32px;height:32px;color:var(--ink);border-radius:50%;place-items:center;font-size:.875rem;display:grid}.sheet-days>button.sheet-noday{flex-basis:64px}.sheet-days>button.sheet-noday b{border-radius:16px;width:auto;padding:0 8px;font-size:.6875rem}.sheet-days>button[aria-pressed=true]{background:var(--accent)!important;color:#fff!important}.sheet-days>button[aria-pressed=true] b{background:#ffd9bf}.sheet-meals{flex-wrap:wrap}.sheet-meals>button{min-height:40px;box-shadow:none;border-radius:999px;padding:8px 16px;font-weight:600;background:var(--surface)!important;color:var(--ink)!important;border:0!important}.sheet-meals>button[aria-pressed=true]{background:var(--accent)!important;color:#fff!important}.sheet-servings{padding:0}.sheet-planned{color:var(--muted);margin:0;font-size:.8125rem}.sheet-submit{width:100%;min-height:52px;font-size:1rem}.sheet-remove{width:100%;box-shadow:none;color:#b3261e!important;background:0 0!important;border:0!important}@media (width>=768px){.plan-sheet{border-radius:28px;margin:auto}}.sheet-days>button.is-today b{box-shadow:inset 0 0 0 1.5px var(--accent)}.stats{gap:10px}.stats>div{box-shadow:var(--shadow);background:var(--paper);border-radius:18px;padding:16px 20px}.stats dt{color:var(--ink);font-size:.9375rem;font-weight:500}.stats dd{font:700 1.75rem/1.1 var(--sans);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}@media (width>=768px){.stats dd{font-size:2.25rem}}.plan-cta{margin:0 0 16px}.plan-cta-button{gap:10px;width:100%;min-height:52px;font-size:1rem}.plan-cta-button .icon{width:20px;height:20px}.plan-cta p{color:var(--muted);margin:8px 2px 0;font-size:.8125rem}@media (width<=767px){.recipe-extra-wrap.show-method{display:none}}.meal-slots{gap:12px}.meal-slot{background:var(--paper);box-shadow:var(--shadow);border-radius:20px;padding:12px}.meal-head{align-items:center;gap:12px;display:flex}.meal-icon{color:#467a15;background:#f1f7e8;border-radius:14px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.meal-head h3{letter-spacing:-.01em;text-transform:none;color:var(--ink);flex-direction:column;flex:auto;margin:0;font-size:1.0625rem;font-weight:600;display:flex}.meal-head h3 small{color:var(--muted);letter-spacing:0;font-size:.8125rem;font-weight:400}.meal-add{width:40px;height:40px;min-height:40px;box-shadow:none;border-radius:50%;flex:0 0 40px;padding:0;background:var(--brand-green)!important;color:#fff!important;border:0!important}.meal-add .icon{width:22px;height:22px}.meal-slot .plan-entries{margin-top:10px}.meal-slot .plan-entry{box-shadow:none;background:var(--surface);border-radius:14px;position:relative}.day-list .meal-slot .plan-thumb{flex-basis:64px;width:64px;min-height:64px}.day-list .meal-slot .plan-entry-link{min-height:64px;padding-right:50px}.plan-remove{width:36px;height:36px;min-height:36px;box-shadow:none;border-radius:50%;padding:0;position:absolute;top:50%;right:8px;transform:translateY(-50%);color:var(--brand-red)!important;background:0 0!important;border:0!important}.plan-remove:hover{background:#fdecec!important}.plan-remove .icon{width:20px;height:20px}.meal-slot .plan-done{right:48px}.day-list>.callout{margin:0 0 12px}.picker-sheet{height:min(85vh,720px)}.picker-body{height:100%;padding:18px 20px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:12px;display:flex}.picker-sheet .search-field input{min-height:48px;box-shadow:none;background:var(--surface);margin:0}.picker-sheet .category-chips{padding:0}.picker-sheet .category-chips button{box-shadow:none;background:var(--surface)}.picker-sheet .category-chips button[aria-pressed=true]{background:var(--accent);color:#fff}.picker-list{align-content:start;gap:8px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.picker-list button{width:100%;min-height:60px;box-shadow:none;text-align:left;border-radius:14px;align-items:center;gap:12px;padding:6px 12px 6px 6px;font-weight:500;display:flex;background:var(--surface)!important;color:var(--ink)!important;border:0!important}.picker-list .plan-thumb{border-radius:10px;flex:0 0 48px;width:48px;height:48px}.picker-list .picker-title{flex:auto;min-width:0}.picker-list .icon{color:var(--brand-green);flex:none}.plan-entry{position:relative}.day-list .plan-entry-link{padding-right:50px}.day-list .picker-list .plan-thumb{border-radius:10px;flex:0 0 48px;align-self:center;width:48px;height:48px;min-height:48px}.plan-cta-button{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}.plan-cta-button:hover{background:var(--accent-dark)!important}.picker-body>*{flex-shrink:0}.picker-body>.picker-list,.picker-body>p{flex:auto;min-height:0}.picker-sheet .category-chips{flex-wrap:nowrap;margin:0 -20px;padding:2px 20px;overflow-x:auto}.picker-sheet .category-chips button{flex:none;min-height:38px;padding:6px 14px}.picker-list .picker-more button{justify-content:center;min-height:46px;font-weight:600;color:var(--accent-dark)!important;background:0 0!important}.plan-entry{border-top:0;padding-top:0}.day-list .plan-entry{border-top:0}.planned-recipes .plan-entries{gap:8px;margin:8px 0 14px}.planned-recipes .plan-entry{background:var(--paper);box-shadow:var(--shadow);border-radius:16px}.day-list.planned-recipes .plan-thumb{flex-basis:64px;width:64px;min-height:64px}.day-list.planned-recipes .plan-entry-link{min-height:64px}.recipe-step-card>summary.recipe-step-heading{align-items:baseline}.recipe-step-card .step-number{font-size:.9375rem;line-height:1.7}.recipe-step-card>summary:after{align-self:start;margin-top:9px}.recipe-step-card .step-done,.recipe-step-card:not([open]) .step-done{display:none}.shopping-category>h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:18px 0 6px;font-size:.8125rem;font-weight:600}.shopping-category:first-of-type>h3{margin-top:6px}.page-shopping .shopping-category .shopping-items{margin:0}.shopping-basket{border:0;margin:18px 0 8px;padding:0}.shopping-basket>summary{color:#467a15;background:#f1f7e8;border-radius:14px;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:600;display:flex}.shopping-basket[open]>summary{margin-bottom:8px}.shopping-basket .shopping-items{margin:0}.category-form{color:var(--muted);flex-direction:column;gap:4px;margin:6px 0;font-size:.75rem;display:flex}.workspace .category-form select{max-width:280px;min-height:40px;margin:0;font-size:.875rem}.plan-entry .plan-done{right:50px}.shopping-for{color:var(--muted);font-size:.75rem;font-weight:400;display:block}@media (width<=767px){.desktop-only{display:none!important}}.recipe-extra .source-book{margin:0 0 4px;font-weight:600}.install-card p{color:var(--muted);margin:4px 0 12px}.install-steps{gap:8px;margin:8px 0 4px;padding-left:22px;line-height:1.5;display:grid}.install-key{background:var(--surface);white-space:nowrap;border-radius:8px;align-items:center;gap:4px;padding:1px 8px;font-weight:600;display:inline-flex}.install-key .icon{width:16px;height:16px}.install-done{color:var(--muted);align-items:center;gap:8px;display:flex}.install-done .icon{width:20px;height:20px;color:var(--brand-green)}.install-hint{background:var(--paper);box-shadow:var(--shadow);border-radius:18px;margin:0 0 14px;padding:12px 12px 12px 14px}.install-hint-row{align-items:center;gap:10px;display:flex}.install-hint-icon{background:var(--accent-soft,#fdeee3);width:36px;height:36px;color:var(--accent,#e9874a);border-radius:12px;flex:0 0 36px;place-items:center;display:grid}.install-hint-icon .icon{width:20px;height:20px}.install-hint p{flex:1;margin:0;font-size:.875rem;line-height:1.35}.install-hint p strong{display:block}.install-hint p span{color:var(--muted);font-size:.8125rem}.install-hint-action{white-space:nowrap;border-radius:999px;min-height:36px;padding:0 14px;font-size:.875rem}.install-hint-close{border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;min-height:32px;padding:0;display:grid;color:var(--muted)!important;box-shadow:none!important;background:0 0!important;border:0!important}.install-hint-close .icon{width:18px;height:18px}.install-hint .install-steps{margin:10px 4px 2px;font-size:.875rem}.install-steps li{padding-left:2px}.install-key{vertical-align:middle;line-height:1.6}.install-key .icon-more{width:18px;height:18px}.login-page{min-height:100dvh;padding:24px 16px calc(24px + env(safe-area-inset-bottom));place-items:center;display:grid}.login-card{width:100%;max-width:400px;padding:28px 24px}.login-card h1{margin:8px 0 4px;font-size:1.5rem}.login-intro{color:var(--muted);margin:0 0 18px}.login-mark{background:var(--accent-soft);width:52px;height:52px;color:var(--accent);border-radius:16px;place-items:center;display:grid}.login-mark svg{width:30px;height:30px}.login-card button[type=submit]{width:100%;margin-top:4px}.login-error{color:#b3261e;margin:-8px 0 14px;font-size:.875rem}.account-ok{color:#2e6b18;margin:-8px 0 14px;font-size:.875rem}.account-card{gap:10px;margin:0 0 20px;display:grid}.account-who{align-items:baseline;gap:10px;margin:0;display:flex}.account-who strong{font-size:1.125rem}.account-who span,.account-list small{color:var(--muted);font-size:.8125rem}.account-password summary,.account-add summary{cursor:pointer;align-items:center;min-height:40px;font-weight:600;display:flex}.account-card>.quiet-button{justify-self:start}.accounts{margin:0 0 20px}.account-list{gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.account-list li{background:var(--surface);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.account-list li>span:first-child{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.account-actions{flex-wrap:wrap;gap:6px;display:flex}.account-actions .quiet-button{min-height:36px;padding:0 12px;font-size:.8125rem}
