:root{--ink:#151813;--paper:#fdfdf9;--muted:#5e6258;--line:#ddded5;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-underline-offset:4px}button{color:inherit}button,input,select{border-radius:3px}button svg,a svg{flex-shrink:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #325d40;outline-offset:4px}input:focus-visible,select:focus-visible{outline:2px solid #325d40;outline-offset:2px}button{min-height:44px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}h1{font-size:clamp(36px,3.4vw,57px);line-height:1.04;letter-spacing:-2.8px;font-weight:600}h2{font-size:26px;line-height:1.15;letter-spacing:-.9px}h3{font-size:23px;line-height:1.2;letter-spacing:-.65px;font-weight:500}p+p{margin-top:12px}small{font-size:12px;line-height:1.5}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-weight:600;padding:0;margin:0 0 10px}label{display:block;font-size:13px;font-weight:600}input:not([type=checkbox]),select{display:block;background:#fff;width:100%;min-height:44px;padding:10px 12px;border:1px solid #bdbdb4;margin-top:7px;color:var(--ink);min-width:0}input[type=checkbox]{width:17px;height:17px;accent-color:var(--ink);margin:0;flex-shrink:0}label small{display:block;font-weight:400;color:var(--muted);margin-top:7px}summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;list-style:none;gap:10px}summary:after{content:"+";font-size:20px;font-weight:400}details[open]>summary:after{content:"−"}summary span{font-size:11px;font-weight:400;color:var(--muted);margin-left:auto}details>fieldset,details>label,details>p{margin-top:16px}details>label.check-label{margin-top:6px}details+details{border-top:1px solid var(--line)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:10px}.preview-bar{min-height:32px;background:#eeeee7;display:flex;gap:15px;justify-content:center;align-items:center;font-size:9px;letter-spacing:1.4px;font-weight:700;padding:6px 18px}.preview-bar span{letter-spacing:0;font-size:11px;font-weight:400}.site-header{max-width:1540px;margin:auto;min-height:98px;display:flex;align-items:center;gap:68px;padding:20px 40px;border-bottom:1px solid var(--line)}.site-header img{display:block;object-fit:contain;height:auto}.site-header nav{display:flex;gap:30px;align-items:center}.site-header nav>a{font-size:14px;text-decoration:none;min-height:44px;display:flex;align-items:center;gap:8px;border-bottom:1px solid transparent}.site-header nav>a[aria-current=page]{border-color:var(--ink)}.count{font-size:10px;border:1px solid #bbb;border-radius:50%;width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center}.header-note{font-size:10px;letter-spacing:1.4px;margin-left:auto}.status-zone:not(:empty){max-width:1440px;margin:12px auto;padding:12px 22px;border-left:3px solid #334f3b;background:#f0f2eb;font-size:13px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.25px;line-height:1.5;display:block}.muted,.field-note{color:var(--muted)}.field-note{font-size:11px;line-height:1.6;margin:7px 0 0}.workspace{max-width:1540px;margin:auto;display:grid;grid-template-columns:208px minmax(0,1fr) 264px;gap:34px;padding:38px 40px 70px;align-items:start}.filter-rail{position:sticky;top:20px;max-height:calc(100dvh - 40px);overflow:auto;scrollbar-width:thin;padding-right:15px}.rail-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}.filter-fields>label,.filter-fields>fieldset{margin-bottom:25px}.filter-fields>details{padding:6px 0;border-bottom:1px solid var(--line)}.check-label{font-size:12px;font-weight:400;display:flex;align-items:center;gap:10px;min-height:35px;cursor:pointer}.equipment-list{display:grid;grid-template-columns:1fr 1fr;gap:0 3px}.equipment-list .check-label{font-size:11px;gap:7px}.privacy-note{font-size:10px;line-height:1.65;color:var(--muted);margin-top:24px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:none;padding:8px 0;text-decoration:underline;font-size:12px;min-height:44px;text-underline-offset:4px}.icon-button{border:0;background:none;display:inline-flex;justify-content:center;align-items:center;width:44px;height:44px;padding:10px;flex-shrink:0}.outline,.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 15px;min-height:44px;font-size:12px;font-weight:500;text-decoration:none;line-height:1.3;border:1px solid var(--ink);background:transparent;border-radius:3px}.primary{background:var(--ink);color:#fff}.primary:hover{background:#333}.outline:hover{background:#edede7}.full{width:100%}.full+.full{margin-top:12px}.main-area{min-width:0}.discovery-hero{display:grid;grid-template-columns:1fr .85fr;gap:18px;align-items:center;padding-bottom:32px;border-bottom:1px solid var(--line)}.discovery-hero .eyebrow{margin-bottom:23px}.discovery-hero h1{font-size:clamp(37px,3.1vw,52px);letter-spacing:-2.1px}.discovery-hero p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:18px}.hero-link{display:inline-flex;align-items:center;gap:20px;text-decoration:none;border-bottom:1px solid var(--ink);font-size:12px;margin-top:22px;padding:0 0 8px}.discovery-hero figure{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.discovery-hero img{width:100%;height:235px;object-fit:cover;object-position:center;border-radius:100px 100px 3px 3px}.discovery-hero figcaption{font-size:9px;color:var(--muted);margin-top:7px;line-height:1.3}.library-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 0 16px;border-bottom:1px solid var(--line)}.category-tabs{display:flex;flex-wrap:wrap;gap:2px 15px}.category-tabs button{background:none;border:0;border-bottom:1px solid transparent;font-size:12px;padding:8px 0}.category-tabs button[aria-pressed=true]{border-bottom-color:var(--ink);font-weight:600}.saved-toggle{white-space:nowrap}.results-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:26px 0 22px}.results-heading h2{font-size:23px}.results-heading p{font-size:10px;color:var(--muted);margin-top:6px}.search-label{width:200px;max-width:45%}.search-label input{font-size:11px;min-height:38px;margin:0;padding:9px 10px}.recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.recipe-card{background:#f2f2e9;border:1px solid #e2e2d8;border-radius:4px;padding:14px 18px 12px;display:flex;flex-direction:column;min-height:260px}.recipe-card.tone-1{background:#f7f2ec}.recipe-card.tone-2{background:#edf1e9}.recipe-card.tone-3{background:#f2eee8}.card-top{display:flex;justify-content:space-between;align-items:center;gap:4px;margin-right:-9px}.card-top .eyebrow{font-size:9px}.card-top .eyebrow span{display:none}.recipe-card h3{font-size:25px;line-height:1.13;margin-top:10px}.recipe-card h3 a{text-decoration:none}.recipe-card h3 a:hover{text-decoration:underline}.ingredient-preview{font-size:11px;line-height:1.65;color:#54564e;margin-top:13px;flex:1}.card-info{display:flex;gap:12px;justify-content:space-between;font-size:10px;color:#4e5149;margin-top:16px}.card-info span{display:inline-flex;align-items:center;gap:5px}.nutrient-line{font-size:10px;margin-top:8px;color:#54564e}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #d5d7cd;margin-top:15px;padding-top:9px}.draft-label{font-size:9px;line-height:1.4;color:#56584f}.add-button{display:flex;align-items:center;gap:4px;min-height:44px;padding:5px 8px;border:0;background:none;font-size:11px}.plan-rail{background:#f6f6f0;border:1px solid #deded4;border-radius:4px;padding:25px 21px;position:sticky;top:20px}.plan-title .eyebrow{font-size:8px;letter-spacing:1.1px}.plan-title h2{font-size:30px;letter-spacing:-1px;margin:15px 0 27px}.plan-rail legend,.mobile-week-controls legend{font-size:12px}.day-checks{display:flex;gap:4px}.day-checks button{width:27px;min-height:44px;flex:1;border:1px solid #b5b7ab;background:none;font-size:10px;display:flex;align-items:center;justify-content:center;padding:0}.day-checks button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.plan-rail fieldset+fieldset,.mobile-week-controls fieldset+fieldset{margin-top:22px}.meal-checks{display:grid;grid-template-columns:1fr 1fr}.meal-checks .check-label{font-size:11px}.plan-rail .primary{margin-top:18px}.rail-divider{height:1px;background:var(--line);margin:25px 0}.week-count{display:flex;align-items:center;gap:12px}.week-count strong{font-size:40px;font-weight:500;line-height:1}.week-count span{font-size:10px;color:var(--muted)}.plan-rail .muted{font-size:12px;line-height:1.7;margin:17px 0 23px}.mini-meals{margin:22px 0}.mini-meals>div+div{margin-top:15px}.mini-meals span{display:block;font-size:10px;color:var(--muted)}.mini-meals strong{font-size:13px;font-weight:500;line-height:1.4;display:block;margin-top:4px}.site-footer{max-width:1460px;margin:0 auto;padding:30px 0 70px;display:flex;gap:30px;align-items:start;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.site-footer img{height:auto}.site-footer details{max-width:500px;margin-left:auto}.site-footer summary{font-size:10px;gap:20px;min-height:30px}.site-footer p{max-width:520px}.mobile-actions,.mobile-week-controls,.print-document{display:none}.empty-state{padding:50px 30px;border:1px solid var(--line);background:#f4f4ed}.empty-state h2{font-size:29px;max-width:440px;margin:15px 0}.empty-state p{font-size:13px;color:var(--muted);max-width:480px}.empty-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.conflict-banner{background:#fff1dc;border-bottom:1px solid #ddc49c;padding:15px 40px;font-size:13px}.conflict-banner button{border:0;background:none;text-decoration:underline;margin-left:12px}.planner-heading{padding:15px 0 28px}.planner-heading h1{margin:20px 0}.planner-heading p{color:var(--muted);font-size:13px}.weekday-strip{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:0 0 25px;margin-bottom:25px;flex-wrap:wrap}.weekday-strip button{flex:1;min-width:45px;min-height:70px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.weekday-strip button span{font-size:11px}.weekday-strip button strong{font-size:20px;font-weight:500}.weekday-strip button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.section-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.section-title>span{font-size:11px;color:var(--muted)}.planned-meal{border-bottom:1px solid var(--line);padding:22px 0 25px}.planned-meal h3{font-size:29px;margin:12px 0}.planned-meal h3 a{text-decoration:none}.planned-meal p{font-size:12px;color:var(--muted)}.plan-row-actions{display:flex;gap:22px;flex-wrap:wrap}.shopping-preview{background:#efefe5;padding:25px;margin-top:32px;display:flex;gap:22px;align-items:center;justify-content:space-between}.shopping-preview .eyebrow{font-size:9px;margin-bottom:10px}.shopping-preview h2{font-size:27px}.shopping-preview p{font-size:11px;color:var(--muted);margin-top:10px}.shopping-preview button{flex-shrink:0}.plan-tools{display:flex;gap:12px 20px;flex-wrap:wrap;margin-top:25px;align-items:center}.recipe-detail{max-width:1150px;margin:auto;padding:35px 35px 80px}.back-link{display:inline-flex;align-items:center;font-size:12px;gap:5px;text-decoration:none;min-height:44px}.detail-heading{display:flex;justify-content:space-between;gap:25px;align-items:center;margin:25px 0}.detail-heading h1{font-size:clamp(37px,4.5vw,64px);margin:16px 0;max-width:650px}.detail-heading p{font-size:12px;color:var(--muted)}.detail-heading>button{flex-shrink:0}.detail-meta{display:flex;gap:25px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;flex-wrap:wrap}.detail-columns{display:grid;grid-template-columns:1fr 1.25fr;gap:60px;margin-top:42px}.inline-label{display:flex;gap:10px;align-items:center;font-size:11px}.inline-label select{min-width:65px;margin:0}.ingredient-list{padding:0;list-style:none}.ingredient-list li{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.ingredient-list small{display:block;color:var(--muted);font-size:10px;max-width:270px}.ingredient-list strong{font-size:12px;font-weight:500;white-space:nowrap}.nutrition-box{padding:24px;background:#f1f1e7;margin:32px 0}.nutrition-box h3{font-size:20px;margin-bottom:12px}.nutrition-box p,.detail-columns section>p,.detail-notes p,.detail-notes li{font-size:12px;line-height:1.7}.nutrition-box dl{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.nutrition-box dl div{display:flex;justify-content:space-between;font-size:11px;gap:10px}.nutrition-box dd{margin:0}.method-list{list-style:none;padding:0;margin:0}.method-list li{display:flex;gap:24px;padding:0 0 28px}.method-list li>span{font-size:11px;color:var(--muted);padding-top:5px}.method-list p{font-size:15px;line-height:1.8}.method-list .safety-note{font-size:12px}.safety-note{background:#ecefe5;padding:10px;color:#344334;font-size:12px}.empty-note{padding:30px;background:#f3f3ec}.detail-notes{border-top:1px solid var(--line);padding-top:25px;margin-top:15px}.detail-notes h3{font-size:21px;margin:25px 0 12px}.detail-notes ul{padding-left:18px}.detail-notes a{display:inline-flex;align-items:center;gap:4px}.cooked-actions{display:flex;gap:20px;align-items:end;margin:35px 0 12px;flex-wrap:wrap}.cooked-actions label{font-size:11px}.not-found{padding:70px 40px;min-height:55vh}.not-found a{display:inline-block;margin-top:35px}dialog{border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);padding:25px;max-width:560px;width:calc(100% - 32px);max-height:calc(100dvh - 40px);overflow:auto}dialog::backdrop{background:#10120e88;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:25px}.dialog-head h2{font-size:28px}.dialog-head .icon-button{margin:-8px -10px 0 0}.dialog-head+label,dialog>label{margin-bottom:20px}dialog p{font-size:13px;line-height:1.7}dialog p+.primary{margin-top:22px}dialog .filter-fields{padding:0 4px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:18px}.grocery-list{list-style:none;padding:0}.grocery-list li{border-bottom:1px solid var(--line)}.grocery-list li>label{display:flex;gap:12px;align-items:center;min-height:66px;padding:10px 0;font-size:12px;font-weight:400}.grocery-list li>label>span:nth-child(2){flex:1}.grocery-list strong{font-size:13px;font-weight:500}.grocery-list small{font-size:10px;color:var(--muted)}.grocery-list li>label>span:last-child{white-space:nowrap}.cook-instruction{font-size:28px;line-height:1.5;margin:22px 0}.cook-controls{display:flex;gap:12px;justify-content:space-between;margin-top:30px}@media(min-width:1600px){.workspace{grid-template-columns:220px minmax(0,1fr) 280px;gap:42px}.discovery-hero img{height:280px}.recipe-card{min-height:290px}}@media(max-width:1190px){.workspace{grid-template-columns:190px minmax(0,1fr);padding:30px;gap:30px}.plan-rail{display:none}.site-header{padding:20px 30px}.site-footer{margin:0 30px}.discovery-hero h1{font-size:48px}.mobile-week-controls{display:block;border:1px solid var(--line);padding:22px;margin-bottom:25px}.mobile-week-controls .day-checks{max-width:400px}.mobile-week-controls .meal-checks{display:flex;gap:24px;flex-wrap:wrap}.mobile-week-controls .primary{width:auto;min-width:220px;margin-top:16px}}@media(max-width:760px){body{font-size:14px}.preview-bar{font-size:8px;display:block;text-align:center;padding:7px 14px;letter-spacing:1px}.preview-bar span{display:block;font-size:9px;margin-top:2px}.site-header{padding:20px;min-height:84px;gap:20px;justify-content:space-between}.site-header img{width:150px}.site-header nav{gap:16px}.site-header nav>a{font-size:12px}.header-note{display:none}.workspace{display:block;padding:22px 20px 40px}.filter-rail{display:none}.discovery-hero{gap:14px;grid-template-columns:1fr .62fr;padding:8px 0 25px;align-items:start}.discovery-hero .eyebrow{font-size:8px;letter-spacing:1.1px;margin-bottom:18px}.discovery-hero h1{font-size:37px;letter-spacing:-1.5px}.discovery-hero p{font-size:11px;margin-top:16px}.discovery-hero p br{display:none}.discovery-hero img{height:208px;border-radius:70px 70px 2px 2px}.discovery-hero figcaption{font-size:7px}.hero-link{font-size:11px;margin-top:18px;gap:15px}.library-toolbar{padding:10px 0}.category-tabs{gap:12px}.category-tabs button{font-size:10px}.saved-toggle{font-size:10px;gap:5px}.saved-toggle svg{width:13px}.results-heading{display:block;margin:24px 0 18px}.results-heading h2{font-size:26px}.search-label{max-width:100%;width:100%;margin-top:17px;display:block}.search-label input{font-size:13px;min-height:44px}.recipe-grid{grid-template-columns:1fr;gap:14px}.recipe-card{min-height:250px;padding:12px 20px 14px}.recipe-card h3{font-size:31px;max-width:270px}.card-top .eyebrow{font-size:9px}.card-top .eyebrow span{display:inline}.ingredient-preview{font-size:12px;max-width:320px}.card-info,.nutrient-line{font-size:11px}.draft-label{font-size:10px}.add-button{font-size:12px}.site-footer{display:block;margin:0 20px;padding:30px 0 110px}.site-footer>p{margin-top:20px}.site-footer details{margin-top:15px}.mobile-actions{position:fixed;display:grid;grid-template-columns:1fr 1fr;bottom:0;left:0;width:100%;z-index:10;background:var(--paper);border-top:1px solid #bbb;padding:10px 20px calc(10px + env(safe-area-inset-bottom));gap:12px}.mobile-actions>button,.mobile-actions>a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;font-size:12px;background:none;border:1px solid var(--ink);border-radius:3px;text-decoration:none}.mobile-actions>a{background:var(--ink);color:#fff}.mobile-actions span{font-size:10px}.status-zone:not(:empty){margin:12px 20px;font-size:12px}.planner-heading{padding:5px 0 25px}.planner-heading h1{font-size:44px;letter-spacing:-1.8px}.planner-heading .eyebrow{font-size:8px}.planned-meal h3{font-size:30px}.shopping-preview{display:block;padding:22px}.shopping-preview button{margin-top:22px}.shopping-preview h2{font-size:28px}.plan-tools{gap:8px 20px}.plan-tools>.outline{flex:1}.recipe-detail{padding:20px 20px 60px}.detail-heading{display:block}.detail-heading h1{font-size:43px;letter-spacing:-1.6px;margin:14px 0}.detail-heading button{margin-top:22px}.detail-meta{font-size:11px;gap:10px}.detail-columns{display:flex;flex-direction:column;gap:35px;margin-top:30px}.method-list li{gap:18px}.detail-notes h3{font-size:23px}.conflict-banner{padding:12px 20px;font-size:12px}.conflict-banner button{margin-left:0}.empty-state{padding:30px 22px}.empty-state h2{font-size:28px}.empty-actions{flex-direction:column}.empty-actions button{width:100%}dialog{padding:22px;max-height:calc(100dvh - 24px)}.cook-instruction{font-size:24px}.grocery-list li>label{font-size:11px}.ingredient-list li{font-size:13px}.mobile-week-controls .meal-checks{gap:5px 25px}}@media(max-width:350px){.site-header{padding:15px;gap:12px}.site-header img{width:125px}.site-header nav{gap:12px}.site-header nav>a{font-size:11px}.count{width:16px;height:16px;font-size:9px}.workspace{padding:20px 15px 35px}.discovery-hero{grid-template-columns:1fr}.discovery-hero h1{font-size:44px}.discovery-hero figure{display:none}.category-tabs{gap:12px}.category-tabs button{font-size:10px}.saved-toggle{font-size:0}.saved-toggle svg{width:18px}.recipe-card{padding:12px 17px}.recipe-card h3{font-size:29px}.mobile-actions{padding-left:15px;padding-right:15px}.two-fields{gap:12px}.site-footer{margin:0 15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media print{body>*{display:none!important}body #root{display:block!important}#root>*{display:none!important}#root>.print-document{display:block!important;padding:20px}.print-document pre{white-space:pre-wrap;font-family:Arial,sans-serif;font-size:12px;line-height:1.7}dialog{display:none!important}@page{margin:15mm}}button.hero-link{background:none;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding-top:8px;min-height:44px}.browse-link{display:block;font-size:11px;margin-top:9px;width:max-content;min-height:44px;padding-top:11px}.nutrient-footnote{margin:-8px 0 20px;max-width:560px}@media(max-width:760px){dialog.filter-sheet{margin:auto 0 0;width:100%;max-width:none;max-height:92dvh;border-radius:14px 14px 0 0;padding-bottom:calc(22px + env(safe-area-inset-bottom))}}
