:root{--bg:#edf0f3;--surface:#fafbfc;--ink:#263b50;--muted:#596b7d;--line:#d5dfe4;--accent:#d4d48a;--blue:#334c63;--soft:#e7ede8;--tile:#f0f3f3;--focus:#334c63;--red:#a24f45;color-scheme:light;--ease:cubic-bezier(.2,.7,.2,1)}
:root[data-theme=dark]{--bg:#172430;--surface:#223545;--ink:#f2f7fb;--muted:#bdcdd9;--line:#486174;--accent:#d4d48a;--blue:#c0d7e9;--soft:#30463f;--tile:#2a3d4d;--focus:#c0d7e9;--red:#edada4;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Segoe UI","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button:active{transform:scale(.97)}button:disabled{cursor:default;opacity:.6}svg{display:block}h1,h2,h3,p{margin:0}h2{font-size:25px;line-height:1.35;letter-spacing:-.04em}h3{font-size:17px}button,select,a{touch-action:manipulation}select{cursor:pointer}input[type=search]::-webkit-search-cancel-button{cursor:pointer}::selection{background:#d4d48a;color:#263b50}.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{position:fixed;top:-80px;left:20px;z-index:100;padding:12px;background:var(--surface)}.skip:focus{top:10px}[hidden]{display:none!important}.site-header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{max-width:1280px;margin:auto;min-height:82px;padding:12px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;font-size:23px;font-weight:750;letter-spacing:-1px;white-space:nowrap;min-height:44px}.brand-divider{width:1px;height:20px;background:var(--line);margin:0 18px}.product-name{font-weight:500;font-size:15px;letter-spacing:0}.header-inner nav{display:flex;gap:28px}.nav-link{font-size:14px;min-height:44px;padding:0 4px;position:relative;color:var(--muted)}.nav-link.active{color:var(--ink);font-weight:650}.nav-link.active:after{content:"";height:3px;border-radius:2px;position:absolute;bottom:0;left:7px;right:7px;background:var(--blue)}#fav-count:not(:empty){font-size:11px;margin-left:5px}.header-actions{display:flex;align-items:center;gap:10px}.icon-button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;font-size:17px}.theme-control select{max-width:88px;min-height:44px;border:0;background:transparent;font-size:13px}.shell{max-width:1280px;margin:auto;padding:0 32px}.intro{display:flex;min-height:340px;align-items:center;justify-content:space-between;padding:35px 36px 32px 4px;gap:30px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.12em;display:block;color:var(--muted);line-height:1.7}.intro .eyebrow{display:flex;gap:9px;align-items:center;font-size:12px;letter-spacing:.1em}.status-dot{width:7px;height:7px;border-radius:50%;background:#7e9a78;box-shadow:0 0 0 5px #849b7d15}.intro h1{font-size:51px;line-height:1.27;font-weight:670;letter-spacing:-.055em;margin:16px 0}.intro h1 br{display:none}.title-underline{position:relative;white-space:nowrap}.title-underline svg{position:absolute;left:0;bottom:-9px;width:100%;height:15px;fill:none;stroke:var(--accent);stroke-width:7;stroke-linecap:round}.intro p{font-size:15px;line-height:1.9;color:var(--muted);margin:19px 0 18px}.intro-meta{display:flex;gap:20px;color:var(--muted);font-size:11px;flex-wrap:wrap}.intro-meta span+span{padding-left:20px;border-left:1px solid var(--line)}.hero-art{width:360px;height:280px;position:relative;flex-shrink:0}.hero-pot{position:absolute;width:310px;left:35px;top:20px}.hero-food{position:absolute;z-index:2;transform:rotate(var(--r,0deg))}.hero-food.tomato{left:3px;top:147px;--r:-12deg}.hero-food.egg{right:-4px;top:150px;--r:13deg}.hero-food.broccoli{right:34px;top:15px;--r:15deg}.hero-label{position:absolute;top:31px;left:15px;font-size:12px;color:var(--muted);transform:rotate(-8deg)}.hero-label:after{content:"⌁";font-size:40px;display:block;transform:rotate(30deg);line-height:1}.kitchen{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}.panel{border-radius:19px;background:var(--surface);border:1px solid var(--line)}.shelf{padding:27px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}.section-top .eyebrow{margin-bottom:8px}.small-count{font-size:13px;margin-left:12px;color:var(--muted);font-weight:400;letter-spacing:0}.quiet-button{font-size:12px;color:var(--muted);min-height:44px;padding:0 8px;white-space:nowrap}.quiet-button[aria-pressed=true]{color:var(--red);background:color-mix(in srgb,var(--red) 10%,transparent);border-radius:8px}.search{height:48px;border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;gap:10px;padding:0 14px;background:var(--tile)}.search svg{width:18px;height:18px;stroke:var(--muted);stroke-width:1.6;fill:none;flex-shrink:0}.search input{width:100%;background:transparent;border:0;outline:none;min-width:0;font-size:13px}.search:focus-within{outline:2px solid var(--focus);outline-offset:2px}.search kbd{border:1px solid var(--line);font:12px system-ui;padding:0 5px;color:var(--muted)}.categories{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 22px}.category{font-size:12px;color:var(--muted);min-height:38px;padding:6px 12px;border-radius:7px;border:1px solid transparent}.category[aria-pressed=true]{background:var(--ink);color:var(--surface)}.category:hover:not([aria-pressed=true]){background:var(--tile)}.ingredient-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.ingredient{position:relative;border:1px solid transparent;background:var(--tile);border-radius:13px;min-width:0;min-height:109px;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:7px 3px 10px;transition:background .16s,border-color .16s}.ingredient .food-art{width:min(100%,76px);height:76px;transition:transform .25s var(--ease)}.ingredient span{font-size:12px;line-height:1.4;text-wrap:balance;max-width:100%;overflow-wrap:anywhere}.ingredient:hover .food-art{transform:translateY(-4px) rotate(-6deg)}.ingredient[aria-pressed=true]{border-color:#829468;background:var(--soft)}.ingredient[aria-pressed=true]:after{content:"✓";position:absolute;right:5px;top:3px;font-size:11px;color:var(--ink)}.ingredient.excluded-item{border-color:var(--red);background:color-mix(in srgb,var(--red) 8%,var(--surface))}.ingredient.excluded-item:after{content:"−";color:var(--red)}.shelf-foot{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;margin-top:22px;padding-top:16px;font-size:10px;color:var(--muted)}.tiny-dot{display:inline-block;width:5px;height:5px;background:#87a380;border-radius:50%;margin-right:6px}.more-button{width:100%;min-height:44px;font-size:12px;color:var(--muted);margin-top:12px}.worktop{display:flex;flex-direction:column;gap:17px;min-width:0}.basket-panel{background:#334c63;color:#f2f7fb;border-radius:19px;padding:27px}.basket-heading{display:flex;justify-content:space-between;gap:14px;align-items:center}.basket-panel .eyebrow{color:#c7d4de;margin-bottom:8px}.basket-panel h2{font-size:21px;font-weight:550;letter-spacing:-.03em}.basket-number{font-size:38px;color:#d4d48a;font-weight:450;line-height:1;font-variant-numeric:tabular-nums}.basket{display:flex;flex-wrap:wrap;gap:9px;align-content:flex-start;min-height:112px;padding:22px 0 14px;max-height:235px;overflow:auto}.basket-empty{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;color:#c7d4de;font-size:12px;border:1px dashed #a5b9c05c;border-radius:12px;padding:15px}.basket-empty svg{width:46px;height:46px}.basket-chip{background:#ffffff15;border:1px solid #ffffff24;color:#f2f7fb;border-radius:10px;display:flex;align-items:center;gap:3px;padding:2px 9px 2px 3px;min-height:48px;font-size:12px}.basket-chip svg{width:42px;height:42px}.basket-chip .remove{font-size:17px;color:#c7d4de;margin-left:7px}.basket-footer{display:flex;align-items:center;justify-content:space-between;color:#bdcdd9;font-size:11px;gap:10px}.text-button{min-height:36px;color:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px}.basket-divider{border-top:1px solid #ffffff23;margin:12px 0 17px}.pantry-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.pantry-heading small{font-size:10px;color:#bdcdd9}.pantry{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.pantry button{font-size:11px;min-height:34px;padding:4px 11px;border:1px solid #94a7b9;border-radius:6px;color:#d5e1e8}.pantry button[aria-pressed=true]{background:#d4d48a;color:#263b50;border-color:#d4d48a}.pantry button[aria-pressed=true]:before{content:"✓ ";font-size:10px}.excluded{font-size:11px;color:#f0c9be;display:flex;flex-wrap:wrap;gap:4px}.excluded button{font-size:11px;padding:8px;color:inherit;min-height:36px}.matching{padding:22px 24px}.matching .section-top{margin-bottom:16px}.handwritten{font-size:11px;color:var(--muted);transform:rotate(-4deg)}.segmented{display:grid;grid-template-columns:repeat(3,1fr);padding:4px;gap:3px;background:var(--tile);border-radius:10px}.segmented button{border-radius:7px;font-size:12px;min-height:42px;padding:5px 2px;color:var(--muted);white-space:nowrap}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 2px 6px #1228360c}.help{color:var(--muted);font-size:12px;line-height:1.8;margin-top:12px}.missing-control{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;margin-top:14px}.missing-control select{font-size:12px;background:var(--surface);border:1px solid var(--line);border-radius:7px;min-height:38px;max-width:170px;padding:4px 8px}.tools-details{border-top:1px solid var(--line);margin-top:18px;padding-top:9px}.tools-details summary{font-size:12px;cursor:pointer;min-height:38px;align-content:center}.tools-details summary span{float:right;color:var(--muted);font-size:11px}.tool-grid{display:flex;gap:6px;flex-wrap:wrap;padding-top:12px}.tool-grid button{border:1px solid var(--line);border-radius:7px;min-height:40px;font-size:12px;padding:6px 9px}.tool-grid button[aria-pressed=true]{background:var(--soft);border-color:var(--focus)}.quick-picks{padding:0 4px}.quick-picks>span{font-size:11px;color:var(--muted)}.quick-picks>div{display:flex;gap:8px;margin-top:9px;flex-wrap:wrap}.quick-picks button{font-size:11px;border-bottom:1px solid var(--line);min-height:40px;padding:4px 6px}.quick-picks button span{margin-left:6px;color:var(--muted)}.inline-notice{padding:8px 10px;background:var(--soft);font-size:12px;margin-bottom:14px}.recipe-section{margin-top:61px}.results-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.results-top .eyebrow{margin-bottom:10px}.results-top h2{font-size:29px;font-weight:600}.result-count{font-size:14px;font-weight:400;letter-spacing:0;color:var(--muted);margin-left:11px}.primary-button{background:var(--ink);color:var(--surface);min-height:46px;padding:10px 19px;border-radius:9px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 14px}.filters input,.filters select{width:100%;height:43px;padding:8px 11px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:12px}.filters input{width:165px}.filters select{max-width:150px}.filter-toggle{padding:7px 11px;border:1px solid var(--line);border-radius:8px;font-size:12px;min-height:43px}.filter-toggle[aria-pressed=true]{background:var(--soft);border-color:var(--focus)}.results-note{color:var(--muted);font-size:11px;margin-bottom:20px;min-height:19px}.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.recipe-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;overflow:hidden;position:relative;transition:border-color .2s}.recipe-card:hover{border-color:#92a5a7}.recipe-open{display:block;text-align:left;width:100%;padding:0;height:100%}.recipe-visual{height:170px;background:var(--dish-bg,#e5eae2);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.plate-base{position:absolute;width:235px;height:146px;bottom:4px}.plate-foods{display:flex;position:relative;align-items:center;justify-content:center;z-index:1;transform:translateY(-4px)}.plate-foods>span{margin:0 -8px;transform:rotate(var(--tilt));transition:transform .35s var(--ease)}.recipe-card:hover .plate-foods>span{transform:translateY(-5px) rotate(calc(var(--tilt) * .5))}.recipe-visual .visual-label{position:absolute;left:15px;top:13px;font-size:10px;color:#4c6355;letter-spacing:.07em}.favorite{position:absolute;right:10px;top:10px;z-index:3;width:40px;height:40px;border-radius:50%;color:#526774;background:#fafbfcc4;font-size:21px;display:grid;place-items:center}.favorite[aria-pressed=true]{color:#a05f54}.recipe-copy{padding:19px 20px 18px}.recipe-meta{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:10px;margin-bottom:8px}.recipe-meta span+span:before{content:"·";margin-right:8px}.recipe-copy h3{font-weight:600;font-size:19px;line-height:1.45;letter-spacing:-.02em;min-height:28px;margin-bottom:9px}.ingredient-names{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:21px}.match-line{border-top:1px solid var(--line);margin-top:17px;padding-top:13px;display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;color:var(--muted)}.match-line .ready{color:#547346}.match-line .arrow{font-size:19px;line-height:1}.missing-note{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:85%}.load-more{display:block;margin:25px auto 0;min-height:48px;padding:9px 28px;border:1px solid var(--line);border-radius:9px;font-size:13px}.empty-state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px 20px;border:1px dashed var(--line);border-radius:18px;min-height:230px}.empty-state .food-art{opacity:.7;margin-bottom:15px}.empty-state h3{font-size:19px}.empty-state p{color:var(--muted);font-size:13px;max-width:450px;margin:10px 0 20px}.closing-note{padding:65px 0 60px;text-align:center;display:flex;flex-direction:column;align-items:center}.closing-doodle{font-size:40px;color:#8ba182;line-height:1}.closing-note p{font-size:17px;color:var(--muted);margin:10px 0 16px;line-height:1.8}.closing-note strong{font-weight:500;color:var(--ink)}.closing-note a{font-size:12px;padding:10px}.footer{max-width:1216px;border-top:1px solid var(--line);margin:0 auto;padding:27px 0 35px;display:flex;justify-content:space-between;align-items:center;gap:30px}.footer>a{font-weight:700;font-size:20px;letter-spacing:-.5px}.footer>a span{display:block;font-size:10px;font-weight:400;letter-spacing:0;color:var(--muted)}.footer>div{font-size:10px;text-align:right;color:var(--muted)}.footer>div>span{display:block;margin-top:5px}.footer>div a{text-decoration:underline;text-underline-offset:3px}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);z-index:80;background:var(--ink);color:var(--surface);padding:12px 21px;border-radius:10px;font-size:13px;pointer-events:none;opacity:0;max-width:90vw;text-align:center}.flying-food{position:fixed;z-index:90;pointer-events:none;width:65px;height:65px}.no-script{padding:30px;text-align:center}dialog{border:1px solid var(--line);border-radius:20px;color:var(--ink);background:var(--surface);width:min(850px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:0;overscroll-behavior:contain}dialog::backdrop{background:#11233191;backdrop-filter:blur(5px)}body:has(dialog[open]){overflow:hidden}.modal-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.close-button{border:1px solid var(--line);border-radius:50%;width:44px;height:44px;flex-shrink:0;font-size:25px;background:var(--surface);position:sticky;top:15px;z-index:3;line-height:1}.detail-header{padding:28px 32px 22px;background:var(--soft)}.detail-header h2{font-size:30px;margin:9px 0 10px}.detail-header .recipe-meta{font-size:12px;flex-wrap:wrap}.detail-art{height:140px;position:relative;display:grid;place-items:center;margin:6px 0 2px}.detail-art .plate-base{bottom:0}.detail-art .plate-foods{transform:translateY(-5px)}.detail-body{padding:28px 32px}.detail-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.detail-intro select{min-height:44px;font-size:12px;padding:7px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.detail-tools{font-size:12px;color:var(--muted);margin-bottom:16px}.detail-ingredients{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0 23px}.detail-ingredient{padding:11px 13px;background:var(--tile);border-radius:8px;font-size:12px;min-width:0}.detail-ingredient strong{font-weight:600}.detail-ingredient .availability{font-size:10px;color:var(--muted);margin-left:7px}.detail-ingredient p{color:var(--muted);font-size:11px;margin-top:5px;overflow-wrap:anywhere}.allergy-note{font-size:12px;background:var(--soft);padding:12px 15px;border-radius:8px;margin:18px 0}.original-quantities{font-size:12px;margin:18px 0;overflow-wrap:anywhere}.original-quantities summary{min-height:44px;cursor:pointer;align-content:center}.original-quantities pre{white-space:pre-wrap;font:inherit;padding:15px;background:var(--tile);border-radius:9px}.steps-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 0 16px;gap:15px}.steps-heading span{font-size:12px;color:var(--muted)}.steps{list-style:none;padding:0;margin:0;counter-reset:steps}.step{display:flex;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.9}.step button{width:32px;height:44px;min-width:32px;align-self:flex-start;display:grid;place-items:center;padding:0;color:var(--muted);font-size:12px}.step button span{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%}.step.done p{opacity:.5;text-decoration:line-through}.step.done button span{background:var(--soft);border-color:#93a282}.step-subhead{font-size:16px;font-weight:650;margin:24px 0 8px}.timer{display:flex;align-items:center;gap:9px;padding:15px;background:var(--tile);border-radius:10px;margin-top:24px;flex-wrap:wrap}.timer strong{font-size:22px;font-weight:500;font-variant-numeric:tabular-nums;min-width:66px}.timer input{width:68px;min-height:44px;border:1px solid var(--line);border-radius:5px;background:var(--surface);padding:5px}.timer label{font-size:11px;color:var(--muted)}.timer button{border:1px solid var(--line);border-radius:7px;padding:7px 13px;font-size:12px;min-height:44px}.source-note{margin-top:25px;border-top:1px solid var(--line);padding-top:16px;font-size:11px;color:var(--muted)}.source-note a{display:inline-block;padding:10px 0;text-decoration:underline;text-underline-offset:3px}.source-note p{margin-top:6px}.meal-inner{padding:30px}.meal-types{display:flex;gap:10px;margin-top:22px}.meal-types button{border:1px solid var(--line);border-radius:8px;padding:8px 13px;min-height:44px;font-size:13px}.meal-types button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.meal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.meal-card{background:var(--tile);border-radius:12px;padding:15px;text-align:center;min-width:0}.meal-card .mini-plate{position:relative;height:110px;display:grid;place-items:center}.mini-plate .plate-base{width:150px;height:95px;bottom:0}.mini-plate .food-art{width:53px;height:53px}.mini-plate .plate-foods{transform:translateY(-2px)}.meal-card h3{font-size:14px;line-height:1.6;margin:4px 0 7px}.meal-card p{font-size:11px;color:var(--muted)}.shopping-list{padding:0;list-style:none;margin:15px 0 25px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.shopping-list label{display:flex;align-items:flex-start;gap:10px;background:var(--tile);border-radius:8px;padding:12px;font-size:12px;min-height:44px}.shopping-list input{margin-top:5px;accent-color:#718b73}.shopping-list label:has(input:checked){opacity:.55;text-decoration:line-through}.shopping-list small{display:block;color:var(--muted);font-size:10px;margin-top:3px;overflow-wrap:anywhere}.shopping-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:25px}.notes-text{font-size:13px;line-height:1.9;white-space:pre-wrap;margin-top:10px;overflow-wrap:anywhere}
.intro{overflow:clip}.mobile-dock{display:none}.step-note{margin:7px 0 12px 46px;padding:10px 14px;border-left:2px solid var(--line);font-size:12px;color:var(--muted);line-height:1.8}
@media(min-width:1450px){.intro{min-height:365px}.intro h1{font-size:57px}.hero-art{margin-right:40px}}
@media(max-width:1050px){.header-inner{padding:12px 24px}.shell{padding:0 24px}.intro{padding-right:0;gap:10px}.intro h1{font-size:42px}.hero-art{width:300px;transform:scale(.9);transform-origin:right center}.intro-meta{gap:8px}.intro-meta span+span{padding-left:0;border:0}.kitchen{gap:18px;grid-template-columns:1.15fr 1fr}.shelf{padding:20px}.ingredient-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.basket-panel{padding:23px}.matching{padding:20px}.section-top h2{font-size:22px}.footer{margin:0 24px}.recipe-copy{padding:17px}.recipe-copy h3{font-size:17px}.header-inner nav{gap:18px}.brand-divider{margin:0 12px}}
@media(max-width:760px){html{scroll-padding-top:125px}.header-inner{flex-wrap:wrap;gap:4px 15px;padding:9px 20px}.brand{font-size:21px}.product-name{font-size:13px}.header-actions{margin-left:auto}.header-inner nav{order:3;flex-basis:100%;justify-content:center;gap:42px}.nav-link{font-size:12px;min-height:36px}.icon-button{width:36px;height:36px}.theme-control select{font-size:12px;min-height:36px;max-width:63px}.intro{min-height:275px;padding:26px 0;position:relative;gap:0}.intro-copy{position:relative;z-index:2}.intro h1{font-size:37px}.intro h1 br{display:block}.intro .eyebrow{font-size:10px}.intro p{font-size:12px;margin:18px 0 13px;max-width:230px}.intro-meta{font-size:10px;max-width:240px;gap:0}.intro-meta span+span{display:none}.hero-art{width:190px;height:200px;position:absolute;right:-7px;top:51px;transform:none}.hero-pot{width:178px;left:10px;top:35px}.hero-food .food-art{width:58px;height:58px}.hero-food.tomato{left:-6px;top:124px}.hero-food.egg{right:-8px;top:118px}.hero-food.broccoli{right:2px;top:11px}.hero-label{font-size:9px;left:10px;top:12px}.hero-label:after{font-size:28px}.shell{padding:0 20px}.kitchen{grid-template-columns:1fr;gap:18px}.shelf{padding:21px 18px}.ingredient-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.ingredient{min-height:95px;padding:4px 1px 8px}.ingredient .food-art{height:64px;width:64px;max-width:100%}.ingredient span{font-size:11px}.section-top{margin-bottom:16px}.categories{gap:3px;margin:14px 0 17px}.category{font-size:11px;padding:5px 10px;min-height:38px}.basket-panel{padding:23px}.basket{min-height:85px;padding-top:18px}.basket-panel h2{font-size:21px}.worktop{gap:14px}.matching{padding:22px}.quick-picks{padding:0 4px}.recipe-section{margin-top:38px}.results-top h2{font-size:24px}.results-top{align-items:flex-end;gap:10px}.results-top .primary-button{font-size:11px;padding:9px 12px;white-space:nowrap;min-height:44px}.result-count{font-size:11px;display:block;margin:6px 0 0}.results-top .eyebrow{font-size:10px}.filters{gap:7px;margin-top:18px}.filters input{width:100%}.filters>label:first-child{width:100%}.filters select{max-width:none}.filters>label:not(:first-child){flex:1 1 21%}.filters input,.filters select{font-size:11px;padding:7px}.filter-toggle{font-size:11px;padding:7px 10px}.recipe-grid{grid-template-columns:1fr 1fr;gap:12px}.recipe-visual{height:135px}.plate-base{width:185px;height:125px}.plate-foods .food-art{width:66px;height:66px}.recipe-visual .visual-label{font-size:9px;left:11px;top:10px}.favorite{width:36px;height:36px;font-size:19px;right:6px;top:6px}.recipe-copy{padding:13px}.recipe-copy h3{font-size:16px;min-height:46px}.recipe-meta{font-size:9px;gap:5px;flex-wrap:wrap;margin-bottom:7px}.recipe-meta span+span:before{margin-right:5px}.ingredient-names{font-size:10px}.match-line{font-size:10px;margin-top:12px;padding-top:10px}.footer{margin:0 20px;padding:25px 0;align-items:flex-start}.footer>div{max-width:190px;font-size:9px}.footer>a{font-size:18px}.footer>a span{font-size:9px}.closing-note{padding:45px 0}.closing-note p{font-size:15px}.detail-header{padding:22px}.detail-header h2{font-size:25px}.detail-body{padding:22px}.detail-ingredients{gap:7px}.detail-ingredient{padding:10px;font-size:11px}.detail-intro h3{font-size:15px}.step{font-size:13px;gap:9px}.meal-inner{padding:22px}.meal-cards{gap:8px}.meal-card{padding:8px}.meal-card h3{font-size:12px}.mini-plate .food-art{width:42px;height:42px}.mini-plate .plate-base{width:110px}.shopping-list{grid-template-columns:1fr}dialog{max-height:calc(100dvh - 24px);width:calc(100% - 20px);border-radius:15px}.meal-types{gap:7px}.meal-types button{font-size:12px;padding:8px 10px}}
@media(max-width:390px){.shell{padding:0 14px}.header-inner{padding:8px 14px}.brand{font-size:19px}.brand-divider{margin:0 9px}.header-inner nav{gap:35px}.intro h1{font-size:34px}.intro p{max-width:195px;font-size:11px}.hero-art{right:-10px;top:59px;width:154px}.hero-pot{width:153px;left:0}.hero-food.egg{right:-6px;top:104px}.hero-food.tomato{left:-10px;top:112px}.hero-food.broccoli{right:0;top:13px}.hero-label{left:0}.ingredient-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.shelf{padding:18px 15px}.results-top h2{font-size:21px}.basket-panel{padding:20px}.recipe-copy{padding:11px}.recipe-copy h3{font-size:15px}.recipe-visual{height:123px}.plate-base{width:155px}.plate-foods .food-art{width:60px;height:60px}.detail-ingredients{grid-template-columns:1fr}.meal-cards{grid-template-columns:1fr}.meal-card{display:flex;align-items:center;text-align:left;gap:12px}.meal-card .mini-plate{width:110px;flex-shrink:0;height:90px}.footer{margin:0 14px}.footer>div{max-width:165px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.ingredient:hover .food-art,.recipe-card:hover .plate-foods>span{transform:none!important}dialog::backdrop{backdrop-filter:none}}
html[data-motion=off]{scroll-behavior:auto}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{transition:none!important;animation:none!important}html[data-motion=off] .ingredient:hover .food-art{transform:none}
.category,.pantry button,.tool-grid button,.text-button,.excluded button{min-height:44px}.step button{width:44px;min-width:44px}.favorite{width:44px;height:44px}
@media(max-width:760px){body{padding-bottom:74px}.mobile-dock{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:19;gap:12px;justify-content:space-between;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line)}.mobile-dock button{min-height:44px;font-size:12px}.mobile-dock #jump-basket{padding:0 12px}.mobile-dock #dock-count{background:var(--tile);border-radius:6px;margin-left:9px;padding:3px 8px}.mobile-dock #jump-results{background:var(--ink);color:var(--surface);border-radius:8px;padding:8px 17px;display:flex;gap:25px;align-items:center}.icon-button{width:44px;height:44px}.theme-control select{min-height:44px}.nav-link{min-height:44px}.toast{bottom:85px}.favorite{width:44px;height:44px;background:#fafbfce0}}
