:root{--ink:#21322b;--ink-deep:#1d2b24;--ink-soft:#5c6a62;--muted:#6e7d76;--muted-faint:#8b948f;--muted-faintest:#9aa39e;--green:#176c4d;--green-deep:#24573c;--green-soft:#64806f;--green-line:#cfe0d4;--green-tint:#e8f1eb;--green-tint-2:#e6ece7;--green-wash:#f6f9f7;--green-a35:#176c4d59;--surface:#fff;--on-accent:#fff;--paper:#f7f7f1;--paper-2:#f7f7f2;--skeleton:#eceee8;--line:#e1e3dc;--line-2:#c6cec9;--line-soft:#eee;--hairline:1px solid var(--line);--danger:#b3261e;--danger-2:#b42318;--danger-deep:#8f1e18;--warm:#9a4b28;--lime:#dff06f;--scrim:#17251dcc;--shadow-warm:#3c231429;--r-sm:10px;--r-md:12px;--r-lg:14px;--r-card:16px;--r-pill:999px;--fs-xs:11px;--fs-sm:12px;--fs-base:13px;--fs-md:14px;--fs-lg:15px;--max:1120px}.recipe-landing{background:var(--paper);min-height:100dvh;color:var(--ink);touch-action:manipulation;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.mapper-embed{box-sizing:border-box;color:var(--ink);justify-items:start;gap:10px;padding:14px 0 4px;display:grid}.mapper-embed>.ingredient-options{justify-self:stretch}.mapper-embed .ingredient-options-more{color:var(--muted);font-size:var(--fs-sm);font-weight:700}.mapper-embed.recipe-landing{background:0 0;min-height:0}.mapper-embed *,.mapper-embed :before,.mapper-embed :after{box-sizing:border-box}.price-deal-portal.recipe-landing{display:contents}.mapper-embed button{font:inherit;color:inherit;cursor:pointer}.mapper-embed a{color:inherit}.recipe-landing *{box-sizing:border-box}.recipe-landing button{font:inherit;color:inherit;cursor:pointer}.recipe-landing button:focus-visible,.recipe-landing a:focus-visible{outline:2px solid var(--green);outline-offset:2px}.recipe-landing a{color:inherit}.recipe-landing .app-shell{min-height:100dvh;padding-bottom:32px;position:relative}.recipe-landing .topbar{z-index:20;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0}.recipe-landing .topbar-inner{max-width:var(--max);justify-content:space-between;align-items:center;gap:16px;min-height:64px;margin:0 auto;padding:12px 20px;display:flex}.recipe-landing .topbar-brand{flex:none;align-items:center;height:46px;display:flex}.recipe-landing .topbar-brand img{object-fit:contain;width:auto;max-width:174px;height:46px;display:block}.recipe-landing .topbar-search{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);flex:1;align-items:center;gap:8px;min-width:0;max-width:380px;height:38px;padding:0 12px;display:flex}.recipe-landing .topbar-search:focus-within{border-color:var(--green)}.recipe-landing .topbar-search>span{color:var(--muted);flex:none;font-size:26px;line-height:1}.recipe-landing .topbar-search input{min-width:0;color:var(--ink);font:inherit;font-size:var(--fs-lg);background:0 0;border:0;outline:none;flex:1}.recipe-landing .topbar-search input::placeholder{color:#9aa5a0}.recipe-landing .topbar-search input::-webkit-search-cancel-button{display:none}.recipe-landing .topbar-search button{color:var(--muted);background:0 0;border:0;flex:none;padding:0 2px;font-size:18px;line-height:1}.recipe-landing .topbar-end{align-items:center;gap:12px;margin-left:auto;display:flex}.recipe-landing .header-basket{border-radius:var(--r-pill);background:var(--green);color:var(--on-accent);font-size:var(--fs-sm);white-space:nowrap;border:0;align-items:center;gap:8px;padding:7px 12px;font-weight:800;text-decoration:none;display:none}.recipe-landing .account{position:relative}.recipe-landing .avatar{border:2px solid var(--surface);width:36px;height:36px;color:var(--on-accent);font-size:var(--fs-xs);background:#cd6b50;border-radius:50%;font-weight:800;position:relative}.recipe-landing .avatar-tag{border-radius:var(--r-pill);background:var(--green);color:var(--on-accent);letter-spacing:.04em;text-transform:uppercase;padding:0 5px;font-size:9px;font-style:normal;font-weight:800;line-height:15px;position:absolute;top:-7px;right:-12px}.recipe-landing .account-menu{z-index:40;border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);gap:2px;min-width:220px;max-width:260px;padding:6px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 14px 34px #21322b29}.recipe-landing .account-menu>[role=menu]{gap:2px;display:grid}.recipe-landing .account-user{border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;padding:9px 10px 8px;font-weight:700;overflow:hidden}.recipe-landing .account-menu form{margin:0}.recipe-landing .account-item{width:100%;color:var(--ink);font-size:var(--fs-base);text-align:left;background:0 0;border:0;border-radius:9px;padding:9px 10px;font-weight:700;text-decoration:none;display:block}.recipe-landing .account-item:hover{background:var(--green-tint)}.recipe-landing .account-item-count{justify-content:space-between;align-items:center;gap:16px;display:flex}.recipe-landing .account-item-count small{color:var(--muted);font-size:var(--fs-sm)}.recipe-landing .pantry-search{width:100%;max-width:var(--max);align-items:center;margin:0 auto 12px;display:flex;position:relative}.recipe-landing .pantry-search input{border-radius:var(--r-md);background:var(--surface);width:100%;height:44px;color:var(--ink);font:inherit;font-size:var(--fs-lg);border:1px solid #d9ddd6;outline:none;padding:0 42px 0 14px}.recipe-landing .pantry-search input:focus{border-color:var(--green)}.recipe-landing .pantry-search input::-webkit-search-cancel-button{appearance:none}.recipe-landing .pantry-search button{width:34px;height:34px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;font-size:18px;display:grid;position:absolute;right:6px}.recipe-landing .pantry-categories{width:100%;max-width:var(--max);gap:14px;margin:0 auto;display:grid}.recipe-landing .pantry-category{--category-tint:#9a9a92;border:var(--hairline);border-color:color-mix(in oklab, var(--category-tint) 22%, var(--line));border-radius:var(--r-md);background:var(--surface);overflow:hidden}.recipe-landing .pantry-category>summary{font-size:var(--fs-lg);cursor:pointer;background:var(--paper);background:color-mix(in oklab, var(--category-tint) 10%, var(--surface));-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:14px 16px;list-style:none;display:flex}.recipe-landing .pantry-category>summary:hover{background:color-mix(in oklab, var(--category-tint) 16%, var(--surface))}.recipe-landing .pantry-category[open]>summary{border-bottom:1px solid color-mix(in oklab, var(--category-tint) 22%, var(--line))}.recipe-landing .pantry-category>summary::-webkit-details-marker{display:none}.recipe-landing .pantry-category>summary:after{content:"⌄";width:26px;height:26px;color:var(--ink);place-items:center;margin-top:-6px;margin-left:auto;font-size:26px;line-height:1;transition:transform .15s;display:grid}.recipe-landing .pantry-category[open]>summary:after{margin-top:0;margin-bottom:-6px;transform:rotate(180deg)}.recipe-landing .pantry-category>summary>span[aria-hidden]{font-size:17px;line-height:1}.recipe-landing .pantry-category>summary b{color:var(--ink);font-weight:700}.recipe-landing .pantry-category>summary small{color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.recipe-landing .pantry-category>.cook-finish-list{padding:10px}.recipe-landing .pantry-bulk{width:100%;max-width:var(--max);justify-content:flex-end;margin:0 auto 8px;display:flex}.recipe-landing .pantry-bulk button{color:var(--muted);font-size:var(--fs-base);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 10px;font-weight:700}.recipe-landing .pantry-bulk button:hover{color:var(--ink);background:var(--surface)}.recipe-landing .pantry-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:6px}.recipe-landing .pantry-list>button{border-radius:9px;grid-template-columns:20px 18px minmax(0,1fr);align-items:center;gap:8px;padding:7px 9px}.recipe-landing .pantry-list .check-box{width:18px;height:18px;font-size:var(--fs-xs)}.recipe-landing .pantry-list p{font-size:var(--fs-base);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}@media (prefers-reduced-motion:reduce){.recipe-landing .pantry-category>summary:after{transition:none}}.recipe-landing .pantry-empty{max-width:420px;color:var(--muted);font-size:var(--fs-md);margin:0 auto;padding:12px 8px 8px;line-height:1.45}.recipe-landing .pantry-import-modal{width:min(480px,100%)}.recipe-landing .pantry-import-modal>header{margin-bottom:18px}.recipe-landing .pantry-import-modal h2{color:var(--ink);margin:0 0 6px;font:700 22px Georgia,Iowan Old Style,serif}.recipe-landing .pantry-import-modal>header p{max-width:40ch;color:var(--muted);font-size:var(--fs-md);margin:0;line-height:1.5}.recipe-landing .pantry-import-option{border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:30px minmax(0,1fr);gap:12px;width:100%;padding:14px;display:grid}.recipe-landing .pantry-import-option+.pantry-import-option{margin-top:10px}.recipe-landing .pantry-import-option:hover{border-color:var(--green-line);background:var(--paper)}.recipe-landing .pantry-import-emoji{font-size:24px;line-height:1.1}.recipe-landing .pantry-import-option b{color:var(--ink);font-size:var(--fs-lg);margin-bottom:3px;font-weight:800;display:block}.recipe-landing .pantry-import-option small{color:var(--muted);font-size:var(--fs-base);line-height:1.5;display:block}.recipe-landing .pantry-import-option i{border-radius:var(--r-pill);background:var(--green-tint);color:var(--green);font-size:var(--fs-sm);grid-column:2;justify-self:start;margin-top:8px;padding:3px 8px;font-style:normal;font-weight:700}.recipe-landing .pantry-scan{width:100%;max-width:var(--max);text-align:left;gap:12px;margin:0 auto;display:grid}.recipe-landing .pantry-scan-pick{border:1px dashed var(--line);border-radius:var(--r-md);text-align:center;cursor:pointer;background:#f3f7f4;gap:3px;padding:18px 12px;display:grid}.recipe-landing .pantry-scan-pick input{opacity:0;width:1px;height:1px;position:absolute}.recipe-landing .pantry-scan-pick>span{color:var(--green);font-size:var(--fs-md);font-weight:700}.recipe-landing .pantry-scan-pick>small{color:var(--muted);font-size:var(--fs-xs)}.recipe-landing .pantry-scan-pick:has(input:disabled){opacity:.5;cursor:default}.recipe-landing .pantry-scan-shots{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.recipe-landing .pantry-scan-shots>div{position:relative}.recipe-landing .pantry-scan-shots img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%;display:block}.recipe-landing .pantry-scan-shots button{background:var(--scrim);width:22px;height:22px;color:var(--on-accent);font-size:var(--fs-md);border:0;border-radius:50%;padding:0;line-height:1;position:absolute;top:3px;right:3px}.recipe-landing .pantry-scan-error{color:#b03a2e;font-size:var(--fs-sm);margin:0}.recipe-landing .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.recipe-landing .content{max-width:var(--max);margin:0 auto;padding:20px 20px 40px}.recipe-landing .tour{z-index:90;pointer-events:none;position:fixed;inset:0}.recipe-landing .tour-block{pointer-events:auto;position:fixed}.recipe-landing .tour-ring{border-radius:var(--r-lg);outline:2px solid var(--lime);outline-offset:0;pointer-events:none;position:fixed;box-shadow:0 0 0 9999px #0c1813b8}.recipe-landing .tour-ring-none{outline:0;width:0;height:0;top:-20px;left:-20px}.recipe-landing .tour-card{border-radius:var(--r-card);background:var(--surface);pointer-events:auto;width:320px;max-width:calc(100vw - 28px);padding:18px 20px;position:fixed;box-shadow:0 18px 44px #0c181357}.recipe-landing .tour-over-modal{z-index:120}.recipe-landing .tour-card-top{text-align:center;top:18px;left:50%;transform:translate(-50%)}.recipe-landing .tour-keys{font-size:var(--fs-base);margin:12px 0 0}.recipe-landing .tour-card kbd{border:var(--hairline);background:var(--paper);border-bottom-width:2px;border-radius:4px;padding:3px 5px;font:12px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.recipe-landing .tour-keys span{opacity:.65;margin-left:10px}.recipe-landing .tour-arrow{font-size:30px;line-height:1;animation:.9s ease-in-out infinite tour-point;display:block}@media (prefers-reduced-motion:reduce){.recipe-landing .tour-arrow{animation:none}}.recipe-landing .tour-quiet{border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-md);background:0 0;border:0;padding:9px 14px;font-weight:700}.recipe-landing .tour-card-top .tour-actions{justify-content:center;gap:8px}.recipe-landing .tour-card-center{top:50%;left:50%;transform:translate(-50%,-50%)}.recipe-landing .tour-card h2{color:var(--ink);margin:0 0 8px;font:700 19px Georgia,Iowan Old Style,serif}.recipe-landing .tour-card p{color:var(--muted);font-size:var(--fs-md);margin:0;line-height:1.5}.recipe-landing .tour-demo{gap:8px;margin-top:12px;display:grid}.recipe-landing .tour-demo .price-line{display:inline}.recipe-landing .tour-demo .price-line strong{font-size:var(--fs-md);white-space:nowrap}.recipe-landing .tour-demo .add-button{font-size:var(--fs-sm);white-space:nowrap;border-radius:8px;min-width:0;padding:2px 8px;line-height:1.3;display:inline-block}.recipe-landing .tour-actions{justify-content:space-between;gap:8px;margin-top:16px;display:flex}.recipe-landing .tour-actions-split{justify-content:space-between;align-items:center}.recipe-landing .tour-actions-split .tour-quiet{margin-left:-14px}.recipe-landing .tour-card .tour-alt{border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-base);margin:14px 0 0;padding-top:12px}.recipe-landing .tour-link{color:var(--green);font-size:var(--fs-base);text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.recipe-landing .tour-next{border-radius:var(--r-sm);background:var(--green);color:var(--on-accent);font-size:var(--fs-md);border:0;padding:9px 18px;font-weight:800}.recipe-landing .eyebrow{color:var(--green);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;font-weight:800}.recipe-landing .section-title{justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 16px;display:flex}.recipe-landing .section-title h2,.recipe-landing .basket-heading h1{letter-spacing:-.03em;margin:0;font:700 28px/1.15 Georgia,Iowan Old Style,serif}.recipe-landing .section-title span{color:var(--muted);font-size:var(--fs-base)}.recipe-landing .section-title-end{align-items:center;gap:12px;display:flex}.recipe-landing .sort-cheapest{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;padding:6px 12px;font-weight:800}.recipe-landing .sort-cheapest:hover{border-color:var(--green-line);color:var(--green)}.recipe-landing .sort-cheapest.is-on{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .tiny-filters{max-width:var(--max);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:8px;margin:0 auto;padding:12px 20px 0;display:flex;overflow:auto hidden}.recipe-landing .recipe-discovery-bar{max-width:var(--max);align-items:center;gap:12px;margin:0 auto;padding:14px 20px 0;display:flex}.recipe-landing .recipe-discovery-bar .topbar-search{flex:0 0 clamp(200px,26vw,320px);transition:flex-basis .18s}.recipe-landing .recipe-discovery-bar .topbar-search:focus-within,.recipe-landing .recipe-discovery-bar .topbar-search--expanded{flex-basis:clamp(280px,38vw,420px)}.recipe-landing .recipe-discovery-bar .tiny-filters{flex:1;min-width:0;max-width:none;margin:0;padding:0}@media (max-width:639px){.recipe-landing .recipe-discovery-bar{flex-direction:column;align-items:stretch;gap:10px;padding-top:12px}.recipe-landing .recipe-discovery-bar .topbar-search{flex-basis:38px;width:100%;max-width:none;transition:none}.recipe-landing .recipe-discovery-bar .topbar-search:focus-within,.recipe-landing .recipe-discovery-bar .topbar-search--expanded{flex-basis:38px}}.recipe-landing .tiny-filters::-webkit-scrollbar{display:none}.recipe-landing .filter-group{color:#8a978f;font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;flex:none;padding-left:4px;font-weight:700}.recipe-landing .tiny-filters>.filter-group:first-child{padding-left:0}.recipe-landing .tiny-filters button{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:#5d6a64;font-size:var(--fs-base);flex:none;padding:8px 14px;font-weight:700}.recipe-landing .tiny-filters button.active{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .tiny-filters button.filter-clear{border-color:var(--green-a35);color:var(--green);background:0 0;align-items:center;gap:6px;display:flex}.recipe-landing .tiny-filters button.filter-clear:before{content:"×";font-size:var(--fs-lg);margin-bottom:2px;line-height:1}.recipe-landing .tiny-filters button.filter-clear:hover{border-color:var(--green);background:#176c4d14}.recipe-landing .strategy-select{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:#8a978f;font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;flex:none;align-items:center;gap:6px;padding:0 4px 0 12px;font-weight:700;display:flex}.recipe-landing .strategy-select select{color:#21503e;font-size:var(--fs-base);text-transform:none;letter-spacing:normal;background:0 0;border:none;padding:8px 4px;font-weight:700}.recipe-landing .recipe-grid{gap:16px;display:grid}.recipe-landing .recipe-card{border:var(--hairline);background:var(--surface);cursor:pointer;border-radius:20px;flex-direction:column;height:100%;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;box-shadow:0 6px 20px #1f32290c}.recipe-landing .recipe-card:has([data-tour-lit]):has(.price-line:hover>.price-tip){z-index:95;position:relative}.recipe-landing .recipe-card:has(.price-line:hover>.price-tip){z-index:4;position:relative}.recipe-landing .recipe-card:hover{border-color:#b7c9bb;transform:translateY(-2px);box-shadow:0 14px 32px #1f322918}.recipe-landing .recipe-card.selected{border-color:var(--green);box-shadow:0 0 0 3px var(--green-line)}.recipe-landing .recipe-card.selected .recipe-copy{background:#f2f8f4}.recipe-landing .food-art{background:linear-gradient(135deg,#e8ecdd,#aec4a2);border-radius:19px 19px 0 0;place-items:center;height:200px;display:grid;position:relative;overflow:hidden}.recipe-landing .food-art:before{content:"";background:#ffffff3b;border-radius:50%;width:200px;height:200px;position:absolute;top:-110px;left:-70px}.recipe-landing .food-art .food-emoji{z-index:1;filter:drop-shadow(0 8px 7px var(--shadow-warm));font-size:72px}.recipe-landing .time-pill,.recipe-landing .sale-pill{font-size:var(--fs-sm);border-radius:9px;padding:6px 10px;font-weight:800;position:absolute;top:12px}.recipe-landing .time-pill{z-index:1;white-space:nowrap;background:#ffffffe8;left:12px}.recipe-landing .time-pill .time-tip{filter:none;white-space:normal;width:150px;box-shadow:0 4px 14px var(--shadow-warm);font-size:var(--fs-xs);opacity:0;pointer-events:none;background:#fff;border-radius:8px;padding:8px 10px;font-weight:600;position:absolute;top:calc(100% + 6px);left:0}.recipe-landing .time-pill:hover .time-tip{opacity:1}.recipe-landing .time-pill.inline{vertical-align:middle;background:#eef1ea;border:1px solid #dde5da;margin:2px 0;display:inline-block;position:relative;top:auto;left:auto}.recipe-landing .recipe-rows .dock-row>.time-pill{flex:none}.recipe-landing .recipe-rows .dock-row>.time-pill .time-tip{left:auto;right:0}.recipe-landing .time-pill.sm{font-size:var(--fs-xs);border-radius:7px;padding:3px 7px}.recipe-landing .time-pill:hover{z-index:2}.recipe-landing .freezer-pill{color:#3d667e;font-size:var(--fs-xs);background:#edf5f9e8;border-radius:8px;padding:5px 8px;font-weight:800;position:absolute;bottom:10px;left:12px}.recipe-landing .warn-pill{z-index:1;color:#7a5416;font-size:var(--fs-sm);background:#fdf0d5e8;border-radius:8px;padding:5px 8px;font-weight:800;position:absolute;top:12px;right:12px}.recipe-landing .warn-pill .warn-tip{filter:none;width:230px;box-shadow:0 4px 14px var(--shadow-warm);font-size:var(--fs-xs);text-align:left;opacity:0;pointer-events:none;background:#fdf6e5;border-radius:8px;padding:8px 10px;font-weight:600;line-height:1.4;position:absolute;top:calc(100% + 6px);right:0}.recipe-landing .warn-pill:hover .warn-tip{opacity:1}.recipe-landing .tag-pills{z-index:1;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:62%;display:flex;position:absolute;bottom:10px;right:10px}.recipe-landing .tag-pills i{color:var(--on-accent);letter-spacing:.04em;text-transform:uppercase;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17251dc4;border-radius:6px;padding:3px 6px;font-size:9px;font-style:normal;font-weight:800;line-height:1.25}.recipe-landing .recipe-copy{border-radius:0 0 19px 19px;flex-direction:column;flex:1;padding:16px 18px 18px;display:flex}.recipe-landing .recipe-copy h2{margin:0;font:700 20px/1.2 Georgia,Iowan Old Style,serif}.recipe-landing .rating-line{gap:7px;margin-top:auto;padding-top:10px;display:flex}.recipe-landing .rating-line small{color:var(--muted-faint);font-size:var(--fs-sm)}.recipe-landing .rating-line small+small:before{content:"·";color:#c6cdc9;margin-right:7px}.recipe-landing .price-line{align-items:baseline;gap:8px;display:flex;position:relative}.recipe-landing .price-pending{background:linear-gradient(90deg, var(--skeleton) 25%, var(--paper-2) 50%, var(--skeleton) 75%);background-size:200% 100%;border-radius:6px;width:68px;height:20px;animation:1.2s ease-in-out infinite catalog-skeleton-shift;display:inline-block}.recipe-landing .price-line:has(.price-tip){cursor:help}.recipe-landing .price-info{color:var(--muted-faint);font-size:var(--fs-lg);align-self:center;margin-left:-2px;font-style:normal;line-height:1}.recipe-landing .price-line:hover .price-info{color:var(--green)}.recipe-landing .price-tip{z-index:2;border:var(--hairline);border-radius:var(--r-sm);background:var(--surface);color:#3d4642;width:250px;font-size:var(--fs-xs);text-align:left;white-space:normal;opacity:0;pointer-events:none;padding:10px 12px;font-weight:600;line-height:1.45;position:absolute;bottom:calc(100% + 8px);left:-6px;box-shadow:0 8px 24px #3c231433}.recipe-landing .price-line:hover:not(:has(.price-deal:hover)) .price-tip{opacity:1}.recipe-landing .price-tip-head{font-size:var(--fs-sm);color:var(--ink-deep);margin-bottom:6px;display:block}.recipe-landing .price-tip-rows{gap:3px;display:grid}.recipe-landing .price-tip-rows>span{grid-template-columns:11px 1fr auto;align-items:baseline;gap:6px;display:grid}.recipe-landing .price-tip.two-price{width:288px}.recipe-landing .price-tip.two-price .price-tip-rows>span,.recipe-landing .price-tip-cols{grid-template-columns:11px minmax(0,1fr) 46px 52px;align-items:baseline;gap:6px;display:grid}.recipe-landing .price-tip.two-price .price-tip-rows b,.recipe-landing .price-tip-cols b{text-align:right}.recipe-landing .price-tip-cols{margin-bottom:3px}.recipe-landing .price-tip-cols b{color:var(--muted-faintest);font-size:9px;font-weight:700}.recipe-landing .price-tip-rows b.cart{color:var(--ink-deep)}.recipe-landing .price-tip-rows .have b.cart{color:var(--muted-faintest);text-decoration:none}.recipe-landing .price-tip-rows>span>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.recipe-landing .price-tip-rows i{color:var(--green);font-style:normal;font-weight:800}.recipe-landing .price-tip-rows .have,.recipe-landing .price-tip-rows .have i{color:var(--muted-faintest)}.recipe-landing .price-tip-rows .have b{text-decoration:line-through}.recipe-landing .price-tip-total{border-top:1px solid var(--line);color:var(--ink-deep);justify-content:space-between;gap:8px;margin-top:7px;padding-top:7px;display:flex}.recipe-landing .price-tip-total b{color:var(--green)}.recipe-landing .price-tip.two-price .price-tip-total{grid-template-columns:11px minmax(0,1fr) 46px 52px;gap:6px;display:grid}.recipe-landing .price-tip.two-price .price-tip-total>span{grid-column:1/3}.recipe-landing .price-tip.two-price .price-tip-total b{color:var(--muted-faint);text-align:right}.recipe-landing .price-tip.two-price .price-tip-total b.cart{color:var(--green)}.recipe-landing .price-tip-left{color:#3f4d46;background:#eef3f0;border-radius:7px;justify-content:space-between;gap:8px;margin-top:6px;padding:5px 8px;display:flex}.recipe-landing .price-tip-left b{color:var(--ink-deep)}.recipe-landing .price-tip em{color:var(--muted-faintest);margin-top:6px;font-size:10px;font-style:normal;font-weight:600;display:block}.recipe-landing .price-line .have-all{font-size:var(--fs-lg)}.recipe-landing .price-line strong{color:var(--green);white-space:nowrap;font-size:20px}.recipe-landing .card-footer{justify-content:space-between;align-items:center;gap:10px;padding-top:2px;display:flex}.recipe-landing .add-button{white-space:nowrap;border-radius:var(--r-md);min-width:96px;font-size:var(--fs-base);background:var(--green);color:var(--on-accent);border:0;padding:10px 14px;font-weight:800}.recipe-landing .qty-control{border-radius:var(--r-md);background:var(--green-tint);align-items:center;gap:8px;padding:4px;display:flex}.recipe-landing .qty-control button{background:var(--surface);width:32px;height:32px;color:var(--green);border:0;border-radius:9px;place-items:center;font-size:18px;font-weight:900;display:grid}.recipe-landing .qty-control strong{text-align:center;min-width:28px;color:var(--green);font-size:var(--fs-base)}.recipe-landing .basket-heading{flex-wrap:wrap;align-items:center;gap:12px;padding:4px 0 20px;display:flex}.recipe-landing .shop-trip-progress{color:var(--muted);font-size:var(--fs-base);margin:-8px 0 16px;font-weight:700}.recipe-landing .shop-trip-list{gap:8px;display:grid}.recipe-landing .shop-trip-list>button{border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);text-align:left;grid-template-columns:22px 22px minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.recipe-landing .shop-trip-list>button.is-bought{background:#f4f6f3}.recipe-landing .shop-trip-list>button.is-bought .check-box{border-color:var(--green);background:var(--green)}.recipe-landing .shop-trip-list>button.is-bought p{color:var(--muted);text-decoration:line-through}.recipe-landing .shop-trip-list p{min-width:0;font-size:var(--fs-lg);margin:0;font-weight:800}.recipe-landing .shop-trip-list small{color:var(--muted);font-size:var(--fs-sm);margin-top:3px;font-weight:600;text-decoration:none;display:block}.recipe-landing .shop-trip-foot{bottom:var(--consent-h,0px);padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f7f1f2;margin:16px -20px 0;position:sticky}.recipe-landing .basket-confirm{border:var(--hairline);border-radius:var(--r-md);background:var(--paper);color:var(--muted);font-size:var(--fs-sm);text-align:left;gap:8px;margin-top:14px;padding:10px 12px;font-weight:600;line-height:1.45;display:grid}.recipe-landing .basket-confirm-actions{flex-wrap:wrap;gap:8px;display:flex}.recipe-landing .basket-confirm button{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:var(--fs-sm);white-space:nowrap;flex:auto;padding:8px 12px;font-weight:800}.recipe-landing .basket-confirm button.primary{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .basket-confirm button.danger{border-color:var(--danger);background:var(--danger);color:var(--on-accent)}.recipe-landing .basket-clear-all{border-radius:var(--r-md);width:100%;color:var(--danger);font-size:var(--fs-base);background:0 0;border:0;margin-top:14px;padding:12px;font-weight:700}.recipe-landing .basket-clear-all:hover{background:#fdf1f0}.recipe-landing .back-button{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);width:44px;height:44px;color:var(--ink);flex:none;place-items:center;font-size:20px;line-height:1;text-decoration:none;display:grid;box-shadow:0 1px 2px #21322b0f}.recipe-landing .back-button:hover{border-color:var(--green);color:var(--green)}.recipe-landing .back-button:active{background:#eef3ef}.recipe-landing .basket-layout{gap:16px;display:grid}.recipe-landing .basket-lists{gap:16px;min-width:0;display:grid}.recipe-landing .basket-recipes{gap:8px;min-width:0;display:grid}.recipe-landing .basket-recipes .cupboard-list{margin:0}.recipe-landing .basket-section-head{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.recipe-landing .basket-section-head h2{color:var(--ink);margin:0;font:700 17px Georgia,Iowan Old Style,serif}.recipe-landing .basket-add-recipe{color:var(--green);font-size:var(--fs-base);white-space:nowrap;flex:none;font-weight:800;text-decoration:none}.recipe-landing .basket-add-recipe:hover{text-decoration:underline}.recipe-landing .shopping-list{border:var(--hairline);border-radius:var(--r-card);background:var(--surface);overflow:hidden}.recipe-landing .shopping-row-wrap{border-bottom:1px solid var(--line-soft)}.recipe-landing .shopping-row-wrap:last-child{border-bottom:0}.recipe-landing .shopping-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:14px 16px;display:flex}.recipe-landing .shopping-row:last-child{border:0}.recipe-landing .shopping-row-wrap .shopping-row{border-bottom:0;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 12px;display:grid}.recipe-landing .row-picker{min-width:0}.recipe-landing .ingredient-mini{align-items:flex-start;gap:12px;display:flex}.recipe-landing .ingredient-mini>.product-thumb{margin-top:1px}.recipe-landing .ingredient-mini>div,.recipe-landing .ingredient-mini-title{min-width:0}.recipe-landing .ingredient-mini a,.recipe-landing .ingredient-mini-title>span{color:var(--ink);font-size:var(--fs-lg);text-overflow:ellipsis;white-space:nowrap;font-weight:700;text-decoration:none;display:block;overflow:hidden}.recipe-landing .ingredient-mini a:hover{text-decoration:underline}.recipe-landing .ingredient-mini small{color:var(--muted);font-size:var(--fs-sm);margin-top:3px;font-weight:500;display:block}.recipe-landing .ingredient-mini .package-plan{color:var(--green-deep);font-weight:800}.recipe-landing .ingredient-mini .ingredient-stock{color:var(--warm);font-weight:800}.recipe-landing .ingredient-mini-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.recipe-landing .ingredient-swap-toggle{color:var(--green);font-size:var(--fs-base);white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:700;display:inline-flex}.recipe-landing .ingredient-swap-toggle-arrow{transition:transform .15s;display:inline-block}.recipe-landing .ingredient-swap-toggle[aria-expanded=true] .ingredient-swap-toggle-arrow{transform:rotate(90deg)}.recipe-landing .ingredient-swap-toggle:hover .ingredient-swap-toggle-label{text-decoration:underline}.recipe-landing .ingredient-swap-panel{gap:6px;margin-top:6px;display:grid}.recipe-landing .shopping-row .ingredient-swap-panel{grid-column:1/-1;margin-top:2px}.recipe-landing .removed-note{background:var(--green-wash);flex-wrap:wrap}.recipe-landing .removed-note .item-name b{font-size:var(--fs-base);font-weight:800;display:block}.recipe-landing .removed-note .item-name small{color:var(--muted);font-size:var(--fs-sm)}.recipe-landing .removed-note-actions{gap:8px;margin-left:auto;display:flex}.recipe-landing .removed-note-actions button{border:1px solid var(--green-line);border-radius:var(--r-pill);background:var(--surface);color:var(--green);font-size:var(--fs-xs);white-space:nowrap;padding:6px 12px;font-weight:800}.recipe-landing .removed-note-actions button.primary{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .skipped-section{border:var(--hairline);border-radius:var(--r-card);background:var(--green-wash);scroll-margin-top:80px;overflow:hidden}.recipe-landing .skipped-toggle{width:100%;min-height:44px;color:var(--green);font-size:var(--fs-base);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:13px 16px;font-weight:800;display:flex}.recipe-landing .skipped-toggle>span{font-size:var(--fs-xs)}.recipe-landing .skipped-toggle b{font-weight:800}.recipe-landing .skipped-intro{color:var(--muted);font-size:var(--fs-sm);margin:0;padding:0 16px 12px;line-height:1.5}.recipe-landing .skipped-row{background:var(--surface);border-top:1px solid #e6ece8}.recipe-landing .skipped-section>.skipped-row:first-child{border-top:0}.recipe-landing .skipped-pick{text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;min-height:56px;padding:10px 14px;display:flex}.recipe-landing .skipped-pick>span:nth-child(2){font-size:20px}.recipe-landing .skipped-pick p{font-size:var(--fs-md);flex:1;margin:0;font-weight:800}.recipe-landing .skipped-pick p small{color:#78847d;font-size:var(--fs-sm);margin-top:3px;font-weight:500;display:block}.recipe-landing .skipped-pick strong{font-size:var(--fs-base)}.recipe-landing .skipped-row.is-buying .check-box{border-color:var(--green);background:var(--green)}.recipe-landing .skipped-row.is-buying .skipped-pick{min-height:0;padding-bottom:0}.recipe-landing .skipped-row.is-buying .skipped-pick p small{color:var(--green);font-weight:800}.recipe-landing .basket-likely-empty{text-align:center;gap:3px;padding:22px 16px;display:grid}.recipe-landing .basket-likely-empty strong{color:var(--green);font-size:var(--fs-md)}.recipe-landing .basket-likely-empty small{color:var(--muted);font-size:var(--fs-sm)}.recipe-landing .product-dot{border-radius:var(--r-sm);background:#eef1e9;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.recipe-landing .item-name{font-size:var(--fs-lg);flex:1;font-weight:700}.recipe-landing .item-name small{color:var(--muted);font-size:var(--fs-sm);margin-top:3px;font-weight:500;display:block}.recipe-landing .item-name .package-plan{color:var(--green-deep);font-weight:800}.recipe-landing .item-name .weighed-clamped,.recipe-landing .shopping-row-wrap>.weighed-clamped{color:var(--danger-2);font-weight:800}.recipe-landing .shopping-row-wrap>.weighed-clamped{font-size:var(--fs-sm);padding:0 14px 10px;display:block}.recipe-landing .row-overbuy{font-size:var(--fs-sm);color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;padding:0 14px 10px;display:flex}.recipe-landing .row-overbuy button{border:1px solid var(--green-line);background:var(--surface);color:var(--green);font-weight:800;font-size:var(--fs-sm);cursor:pointer;border-radius:9px;min-height:28px;padding:0 10px}.recipe-landing .row-overbuy button:hover{border-color:var(--green)}.recipe-landing .item-price{font-size:var(--fs-md);flex-direction:column;align-items:flex-end;display:flex}.recipe-landing .item-price small{color:var(--muted);font-size:var(--fs-xs);white-space:nowrap;margin-top:2px;font-weight:650}.recipe-landing .row-right{flex-direction:column;align-items:flex-end;display:flex}.recipe-landing .shopping-row-bar{grid-column:1/-1;align-items:center;gap:12px;min-width:0;display:flex}.recipe-landing .shopping-row-bar .pack-control{margin-left:auto}.recipe-landing .row-right-top{align-items:center;gap:12px;display:flex}.recipe-landing .pack-control{justify-content:flex-end;align-items:center;gap:2px;display:flex}.recipe-landing .pack-control button{border:var(--hairline);background:var(--surface);width:24px;height:24px;color:var(--green);font-size:var(--fs-md);border-radius:7px;padding:0;font-weight:900;line-height:1}.recipe-landing .pack-control button:disabled{color:#c2c9c4}.recipe-landing .pack-control span{min-width:52px;color:var(--green-deep);font-size:var(--fs-sm);text-align:center;white-space:nowrap;padding:0 2px;font-weight:800}.recipe-landing .remove-grocery{color:#7c8781;background:#f0f1ec;border:0;border-radius:50%;flex:none;width:32px;height:32px;padding:0;font-size:20px;line-height:1}.recipe-landing .remove-line{place-items:center;transition:background-color .15s,color .15s;display:grid}.recipe-landing .remove-line:hover,.recipe-landing .remove-line:focus-visible{color:var(--danger);background:#fbe9e7}.recipe-landing .remove-line .trash-lid{transform-box:view-box;transform-origin:3px 4.6px;transition:transform .18s cubic-bezier(.34,1.4,.64,1)}.recipe-landing .remove-line:hover .trash-lid,.recipe-landing .remove-line:focus-visible .trash-lid{transform:translateY(-1px)rotate(-16deg)}.recipe-landing .basket-checkout p{display:none}.recipe-landing .main-buy{border-radius:var(--r-lg);background:var(--green);width:100%;color:var(--on-accent);font-size:var(--fs-md);border:0;justify-content:space-between;align-items:center;gap:8px;padding:16px 12px;font-weight:800;display:flex;box-shadow:0 9px 25px #155d4238}.recipe-landing .main-buy>span{min-width:0;font-size:var(--fs-base);white-space:nowrap}.recipe-landing .main-buy b{white-space:nowrap;flex:none}.recipe-landing a.main-buy{box-sizing:border-box;text-decoration:none}.recipe-landing .main-buy:disabled{color:#6d7873;box-shadow:none;background:#cfd7d2}.recipe-landing .checkout-skipped{display:none}.recipe-landing .basket-mark-purchased{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--ink);font-size:var(--fs-base);margin-top:14px;padding:12px;font-weight:700}.recipe-landing .basket-bookmarklet-hint{color:var(--muted);font-size:var(--fs-sm);margin:16px 2px 0;line-height:1.7}.recipe-landing .basket-bookmarklet-hint a{color:var(--green);font-weight:700}.recipe-landing .empty-state{border:var(--hairline);background:var(--surface);text-align:center;border-radius:20px;margin-top:24px;padding:48px 24px}.recipe-landing .empty-state>span{font-size:48px}.recipe-landing .empty-state h2{font-family:Georgia,Iowan Old Style,serif}.recipe-landing .empty-state p{color:var(--muted);font-size:var(--fs-lg);margin:8px 0 0;line-height:1.5}.recipe-landing .shop-trip-thanks-actions{justify-items:center;gap:8px;margin-top:22px;display:grid}.recipe-landing .empty-state button,.recipe-landing .empty-state a{border-radius:var(--r-md);background:var(--green);color:var(--on-accent);border:0;padding:12px 18px;font-weight:800;text-decoration:none;display:inline-block}.recipe-landing .empty-state .quiet{color:var(--muted);background:0 0;font-weight:600}.recipe-landing .catalog-skeleton{gap:10px;display:grid}.recipe-landing .catalog-skeleton-search,.recipe-landing .catalog-skeleton-filters,.recipe-landing .catalog-skeleton-row{border-radius:var(--r-md);background:linear-gradient(90deg, var(--skeleton) 25%, var(--paper-2) 50%, var(--skeleton) 75%);background-size:200% 100%;animation:1.2s ease-in-out infinite catalog-skeleton-shift}.recipe-landing .catalog-skeleton-search{height:44px}.recipe-landing .catalog-skeleton-filters{width:min(100%,420px);height:40px}.recipe-landing .catalog-skeleton-row{border-radius:var(--r-lg);height:100px}.recipe-landing .grocery-catalog{gap:10px;display:grid}.recipe-landing .grocery-catalog article,.recipe-landing .grocery-catalog>a{border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);align-items:center;gap:12px;padding:14px;text-decoration:none;display:flex}.recipe-landing .grocery-catalog>a:hover,.recipe-landing .grocery-catalog article:hover{border-color:#b7c9bb}.recipe-landing .grocery-catalog .dim{opacity:.55}.recipe-landing .product-thumb{border-radius:var(--r-md);border:var(--hairline);background:var(--surface);object-fit:contain;flex:none;width:72px;height:72px}.recipe-landing .product-thumb-empty{background:#f0f2eb;display:block}.recipe-landing .stock-out{color:var(--danger-2);font-size:var(--fs-xs);background:#fde8e4;border-radius:6px;margin-top:6px;padding:2px 6px;font-weight:800;display:inline-block}.recipe-landing .stock-out.stale-price{margin-left:4px}.recipe-landing .product-search-form{gap:12px;margin:0 0 12px;display:grid}.recipe-landing .product-search{gap:8px;margin:0;display:flex}.recipe-landing .product-search input{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);min-width:0;height:44px;font:inherit;flex:1;padding:0 14px}.recipe-landing .product-search button{border-radius:var(--r-md);background:var(--green);height:44px;color:var(--on-accent);border:0;padding:0 16px;font-weight:800}.recipe-landing .product-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recipe-landing .filter-pills{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.recipe-landing .filter-dropdown{margin-left:auto;position:relative}.recipe-landing .filter-dropdown summary{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);height:36px;color:var(--ink);cursor:pointer;white-space:nowrap;align-items:center;padding:0 14px;font:700 13px/1 ui-sans-serif,system-ui,sans-serif;list-style:none;display:flex}.recipe-landing .filter-dropdown summary::-webkit-details-marker{display:none}.recipe-landing .filter-dropdown summary:after{content:"";border:4px solid #0000;border-top-color:currentColor;width:0;height:0;margin-left:8px;transform:translateY(2px)}.recipe-landing .filter-dropdown.is-filtered summary{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .filter-dropdown-panel{z-index:16;border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);gap:2px;min-width:280px;max-width:min(420px,80vw);max-height:320px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 12px 32px #1f322918}.recipe-landing .filter-dropdown-panel label{border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-base);cursor:pointer;align-items:flex-start;gap:10px;padding:8px 10px;font-weight:600;line-height:1.35;display:flex}.recipe-landing .filter-dropdown-panel label:hover{background:#f3f5ef}.recipe-landing .filter-dropdown-panel input{width:16px;height:16px;accent-color:var(--green);flex:none;margin:2px 0 0}.recipe-landing .filter-pill{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:#5d6a64;font-size:var(--fs-base);white-space:nowrap;cursor:pointer;align-items:center;padding:8px 14px;font-weight:700;display:inline-flex;position:relative}.recipe-landing .filter-pill input[type=checkbox]{appearance:none;opacity:0;cursor:pointer;background:0 0;border:0;margin:0;position:absolute;inset:0}.recipe-landing .filter-pill:has(:checked){border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .filter-pill:focus-within,.recipe-landing .filter-sort:focus-visible,.recipe-landing .filter-dropdown summary:focus-visible{outline:2px solid var(--green);outline-offset:2px}.recipe-landing .filter-sort{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);height:36px;color:var(--ink);padding:0 12px;font:700 13px/1 ui-sans-serif,system-ui,sans-serif}.recipe-landing .catalog-count{color:var(--muted);font-size:var(--fs-base);margin:0 0 14px}.recipe-landing .pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:24px;display:flex}.recipe-landing .pagination ol{gap:6px;margin:0;padding:0;list-style:none;display:flex}.recipe-landing .pagination a{border:var(--hairline);border-radius:var(--r-sm);background:var(--surface);min-width:36px;height:36px;font-size:var(--fs-base);place-items:center;padding:0 10px;font-weight:700;text-decoration:none;display:grid}.recipe-landing .pagination a.current{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .pagination a.disabled{pointer-events:none;opacity:.35}.recipe-landing .pagination .gap{min-width:20px;color:var(--muted);place-items:center;display:grid}.recipe-landing .grocery-emoji{border-radius:var(--r-md);background:#f0f2eb;flex:none;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.recipe-landing .grocery-catalog article>div:nth-child(2),.recipe-landing .grocery-catalog>a>div:nth-child(2){flex:1;min-width:0}.recipe-landing .grocery-catalog h2{font-size:var(--fs-lg);margin:0;line-height:1.3}.recipe-landing .grocery-catalog p{color:#7e8983;font-size:var(--fs-base);margin:4px 0 0}.recipe-landing .grocery-price{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.recipe-landing .grocery-price strong{font-size:var(--fs-lg)}.recipe-landing .grocery-price del{color:#9ca49f;font-size:var(--fs-sm)}.recipe-landing .modal-backdrop{z-index:100;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.recipe-landing .buy-modal{background:var(--surface);border-radius:20px;width:min(560px,100%);max-height:min(88vh,760px);padding:28px 28px 24px;position:relative;overflow-y:auto}.recipe-landing .buy-head{text-align:center;margin-bottom:24px}.recipe-landing .buy-head>span{background:var(--lime);width:52px;height:52px;color:var(--green);border-radius:50%;place-items:center;margin:auto;font-size:26px;font-weight:900;display:grid}.recipe-landing .buy-modal h2{margin:16px 0 8px;font:700 24px Georgia,Iowan Old Style,serif}.recipe-landing .buy-modal p{color:var(--muted);font-size:var(--fs-md);margin:0;line-height:1.55}.recipe-landing .buy-head h2:first-child{margin-top:0}.recipe-landing .buy-steps{gap:18px;margin:0 0 20px;padding:0;list-style:none;display:grid}.recipe-landing .buy-steps li{text-align:left;align-items:flex-start;gap:14px;display:flex}.recipe-landing .buy-steps>li>span{background:var(--paper);width:26px;height:26px;color:var(--muted);font-size:var(--fs-base);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.recipe-landing .buy-steps .is-done>span{background:var(--lime);color:var(--green)}.recipe-landing .buy-steps>li>div{flex:1;min-width:0}.recipe-landing .buy-steps>li>div>b{color:var(--ink);font-size:var(--fs-lg);display:block}.recipe-landing .buy-steps>li>div>small{color:var(--muted);font-size:var(--fs-base);margin-top:3px;line-height:1.5;display:block}.recipe-landing .bookmarklet-button{color:var(--on-accent)}.recipe-landing .buy-modal kbd{border:var(--hairline);background:var(--paper);border-bottom-width:2px;border-radius:4px;padding:2px 5px;font:12px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.recipe-landing .buy-primary{border-radius:var(--r-md);background:var(--green);color:var(--on-accent);text-align:center;margin-top:12px;padding:12px;font-weight:800;text-decoration:none;display:block}.recipe-landing .buy-modal a.buy-primary{color:var(--on-accent)}.recipe-landing .buy-confirm-step{margin-top:12px}.recipe-landing .buy-save-note{color:#888;font-size:var(--fs-base);margin-top:6px;display:block}.recipe-landing .buy-modal .buy-primary.is-secondary{border:var(--hairline);color:var(--green);background:0 0}.recipe-landing .buy-modal-actions .secondary.is-primary{border-color:var(--green);background:var(--green);color:var(--on-accent);font-weight:800}.recipe-landing .buy-relaunch{border:var(--hairline);color:var(--green);font-size:var(--fs-base);background:0 0;border-radius:9px;margin-top:10px;padding:8px 12px;font-weight:700}.recipe-landing .buy-unsee{color:var(--green);font:inherit;background:0 0;border:0;padding:0;font-weight:700}.recipe-landing .buy-modal a.buy-unsee{color:var(--green);font-size:var(--fs-base);margin-top:4px;text-decoration:none;display:inline-block}.recipe-landing .buy-how{border-radius:var(--r-md);background:var(--paper);font-size:var(--fs-base);padding:14px 16px}.recipe-landing .buy-how summary{cursor:pointer;color:var(--ink);font-weight:700}.recipe-landing .buy-how p{font-size:var(--fs-base);margin:10px 0 0}.recipe-landing .buy-modal .buy-hint{color:var(--ink);margin-bottom:20px}.recipe-landing .buy-modal-actions{flex-direction:column;gap:8px;margin-top:20px;display:flex}.recipe-landing .buy-modal-actions .buy-modal-note{color:var(--muted);font-size:var(--fs-sm);text-align:center}.recipe-landing .buy-modal-actions button,.recipe-landing .buy-modal-actions a.secondary{box-sizing:border-box;border:var(--hairline);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--ink);font-weight:700;font-size:inherit;line-height:inherit;text-align:center;padding:12px;text-decoration:none;display:block}.recipe-landing .buy-modal-actions .quiet{color:var(--muted);background:0 0;border-color:#0000;font-weight:600}@media (max-width:520px){.recipe-landing .buy-modal{padding:22px 18px 18px}}.recipe-landing .reset-modal{background:var(--surface);border-radius:20px;width:min(460px,100%);max-height:min(88vh,720px);padding:24px;overflow-y:auto}.recipe-landing .reset-modal h2{margin:0 0 8px;font:700 20px Georgia,Iowan Old Style,serif}.recipe-landing .reset-modal>p{color:var(--muted);font-size:var(--fs-base);margin:0 0 18px;line-height:1.5}.recipe-landing .reset-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.recipe-landing .reset-list label{border-radius:var(--r-md);cursor:pointer;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.recipe-landing .reset-list label:hover{background:var(--paper)}.recipe-landing .reset-list input{accent-color:var(--green);flex:none;width:16px;height:16px;margin-top:2px}.recipe-landing .reset-list b{color:var(--ink);font-size:var(--fs-md);display:block}.recipe-landing .reset-list small{color:var(--muted);font-size:var(--fs-sm);margin-top:2px;line-height:1.45;display:block}.recipe-landing .reset-actions{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:20px;padding-top:16px;display:flex}.recipe-landing .reset-actions button{border-radius:var(--r-md);border:0;width:100%;padding:12px;font-weight:800}.recipe-landing .reset-confirm{background:var(--danger);color:var(--on-accent)}.recipe-landing .reset-confirm:disabled{background:var(--line);color:var(--muted)}.recipe-landing .reset-actions .quiet{color:var(--muted);background:0 0;font-weight:600}.recipe-landing .account-item-danger{color:var(--danger)}.recipe-landing .cupboard-list{border:var(--hairline);border-radius:var(--r-card);background:var(--surface);margin:0 16px;overflow:auto}.recipe-landing .cupboard-list>button{border:0;border-bottom:1px solid var(--skeleton);background:var(--surface);text-align:left;align-items:center;gap:10px;width:100%;min-height:60px;padding:10px 12px;display:flex}.recipe-landing .cupboard-list>button:last-child{border-bottom:0}.recipe-landing .check-box{width:22px;height:22px;color:var(--on-accent);font-size:var(--fs-sm);border:1.5px solid #abb5af;border-radius:6px;flex:none;place-items:center;font-weight:900;display:grid}.recipe-landing .cupboard-list>button>span:nth-child(2){font-size:20px}.recipe-landing .cupboard-list p{font-size:var(--fs-md);flex:1;margin:0;font-weight:800}.recipe-landing .cupboard-list p small{color:#78847d;font-size:var(--fs-sm);margin-top:3px;font-weight:500;display:block}.recipe-landing .cupboard-list strong{font-size:var(--fs-base)}.recipe-landing .recipe-dock{z-index:90;left:50%;bottom:calc(12px + env(safe-area-inset-bottom) + var(--consent-h,0px));border-radius:var(--r-pill);background:var(--green);width:min(560px,100% - 24px);color:var(--on-accent);text-align:left;box-shadow:0 10px 30px var(--green-a35);border:0;align-items:center;gap:10px;padding:10px 14px;display:flex;position:fixed;transform:translate(-50%)}.recipe-landing .dock-emoji{flex:none;display:flex}.recipe-landing .dock-emoji i{background:#ffffff26;border-radius:50%;place-items:center;width:32px;height:32px;margin-right:-10px;font-size:16px;font-style:normal;display:grid}.recipe-landing .dock-emoji i:last-child{margin-right:0}.recipe-landing .dock-summary{min-width:0;font-size:var(--fs-base);flex:1;font-weight:800}.recipe-landing .dock-summary small{color:#ffffffc4;font-size:var(--fs-sm);font-weight:600;display:block}.recipe-landing .recipe-dock>b{font-size:var(--fs-lg)}.recipe-landing .dock-chevron{font-size:var(--fs-md);flex:none}.recipe-landing .dock-row{border-bottom:1px solid var(--skeleton);align-items:center;gap:10px;min-height:60px;padding:10px 12px;display:flex}.recipe-landing .dock-row:last-child{border-bottom:0}.recipe-landing .dock-row>span{font-size:20px}.recipe-landing .dock-row.is-zeroed>span,.recipe-landing .dock-row.is-zeroed>p{opacity:.55}.recipe-landing .dock-row .qty-control,.recipe-landing .dock-row .add-button{flex:none}.recipe-landing .recipe-rows .dock-row{text-align:left;flex-wrap:wrap}.recipe-landing .recipe-rows .cupboard-list{max-width:var(--max);margin-left:auto;margin-right:auto;overflow:visible}.recipe-landing .meal-section-head{max-width:var(--max);align-items:center;margin:18px auto 10px}.recipe-landing .meal-section-actions{flex-wrap:wrap;gap:8px;display:flex}.recipe-landing .plan-view-toggle{display:inline-flex}.recipe-landing .plan-view-toggle .ingredients-filter:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.recipe-landing .plan-view-toggle .ingredients-filter.is-on{position:relative}.recipe-landing .plan-view-toggle .ingredients-filter:last-child{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.recipe-landing .plan-cards{max-width:var(--max);text-align:left;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;margin:0 auto;padding:0;list-style:none;display:grid}.recipe-landing .plan-cards li{border:var(--hairline);border-radius:var(--r-sm);background:var(--surface);display:grid}.recipe-landing .plan-cards li:hover{border-color:var(--green-line)}.recipe-landing .plan-cards a{color:var(--ink);font-size:var(--fs-md);align-items:center;gap:10px;padding:6px 10px 6px 6px;font-weight:800;line-height:1.25;text-decoration:none;display:flex}.recipe-landing .plan-cards .plan-thumb{border-radius:8px;width:40px;height:40px}@media (hover:hover) and (pointer:fine){.recipe-landing .plan-cards li{transition:box-shadow .15s,transform .15s}.recipe-landing .plan-cards li:hover{box-shadow:0 4px 14px var(--shadow-warm);transform:translateY(-1px)}.recipe-landing .plan-cards a{cursor:grab}.recipe-landing .plan-cards a:active{cursor:grabbing}.recipe-landing .plan-cards a:after{content:"";width:10px;height:15px;color:var(--muted);opacity:0;background:radial-gradient(circle,currentColor 1.5px,#0000 2px) 0 0/5px 5px;flex:none;margin-left:auto;transition:opacity .15s}.recipe-landing .plan-cards li:hover a:after{opacity:1}}.recipe-landing .meal-section-title{color:var(--ink);text-align:left;margin:0;font:700 17px Georgia,Iowan Old Style,serif}.recipe-landing .meal-section-count{color:var(--muted);font-size:var(--fs-sm);text-align:left;margin:2px 0 0}.recipe-landing .meal-overview{max-width:var(--max);border:var(--hairline);border-radius:var(--r-card);background:var(--surface);text-align:left;margin:0 auto;overflow:hidden}.recipe-landing .meal-overview-head{display:none}.recipe-landing .meal-overview-day{border-bottom:1px solid var(--skeleton);padding:12px 16px}.recipe-landing .meal-overview-day:last-child{border-bottom:0}.recipe-landing .meal-overview-day.is-today{background:var(--green-wash)}.recipe-landing .meal-overview-day h3{color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:0 8px;margin:0 0 6px;font:700 16px Georgia,Iowan Old Style,serif;display:flex}.recipe-landing .meal-overview-day h3 small{color:var(--muted);font:500 var(--fs-sm) ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif}.recipe-landing .meal-overview-cell{grid-template-columns:84px minmax(0,1fr);align-items:center;gap:4px 10px;padding:2px 0;display:grid}.recipe-landing .meal-overview-meal{color:var(--muted);font-size:var(--fs-sm);grid-row:1;font-weight:800}.recipe-landing .meal-overview-recipe,.recipe-landing .meal-overview-entry,.recipe-landing .meal-overview-add{grid-column:2}.recipe-landing .meal-overview-recipe{min-width:0;color:var(--ink);font-size:var(--fs-md);align-items:center;gap:8px;font-weight:800;line-height:1.25;text-decoration:none;display:flex}.recipe-landing .meal-overview-recipe:hover span{color:var(--green)}.recipe-landing .meal-overview-recipe .plan-thumb{border-radius:8px;width:32px;height:32px;font-size:16px}.recipe-landing .meal-overview-entry{cursor:grab;align-items:center;gap:6px;min-width:0;display:flex}.recipe-landing .meal-overview-entry .meal-overview-recipe{flex:1}.recipe-landing .meal-overview-remove{border-radius:var(--r-pill);width:28px;height:28px;color:var(--muted-faint);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.recipe-landing .meal-overview-remove svg{width:15px;height:15px}.recipe-landing .meal-overview-remove:hover{background:var(--green-tint);color:var(--danger-2)}.recipe-landing .meal-overview-add{color:var(--green);font-size:var(--fs-base);background:0 0;border:0;justify-self:start;padding:4px 0;font-weight:800}.recipe-landing .meal-overview-add:hover{text-decoration:underline}.recipe-landing .meal-overview-cell.is-drop{border-radius:var(--r-sm);outline:2px dashed var(--green);outline-offset:2px;background:var(--green-tint)}.recipe-landing .meal-picker-toggle{color:var(--ink);font-size:var(--fs-base);cursor:pointer;align-items:center;gap:8px;margin:4px 0 10px;display:flex}.recipe-landing .meal-picker-toggle input{width:16px;height:16px;accent-color:var(--green);margin:0}.recipe-landing .meal-picker-list{gap:2px;margin:8px 0 0;padding:0;list-style:none;display:grid}.recipe-landing .meal-picker-list button{border-radius:var(--r-sm);width:100%;color:var(--ink);font-size:var(--fs-md);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:6px 8px;font-weight:800;line-height:1.25;display:flex}.recipe-landing .meal-picker-list button:hover{background:var(--green-tint)}.recipe-landing .meal-picker-list .plan-thumb{border-radius:8px;width:40px;height:40px}.recipe-landing .meal-picker-list small{color:var(--muted);font-size:var(--fs-sm);font-weight:500;display:block}@media (min-width:900px){.recipe-landing .meal-overview-head,.recipe-landing .meal-overview-day{grid-template-columns:140px repeat(3,minmax(0,1fr));gap:16px;padding:12px 20px;display:grid}.recipe-landing .meal-overview-head{border-bottom:1px solid var(--skeleton);color:var(--muted);font-size:var(--fs-sm);font-weight:800}.recipe-landing .meal-overview-day{align-items:start}.recipe-landing .meal-overview-day h3{flex-direction:column;gap:2px;margin:0}.recipe-landing .meal-overview-cell{flex-direction:column;align-items:stretch;gap:8px;min-height:40px;padding:0;display:flex}.recipe-landing .meal-overview-add{align-self:flex-start}.recipe-landing .meal-overview-meal{display:none}}.recipe-landing .meal-basket{max-width:var(--max);border:1px solid var(--green-line);border-radius:var(--r-card);background:var(--green-wash);text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin:12px auto 0;padding:12px 16px;display:flex}.recipe-landing .meal-basket p,.recipe-landing .meal-basket-done{color:var(--ink);font-size:var(--fs-md);margin:0}.recipe-landing .meal-basket-done{max-width:var(--max);text-align:left;margin:12px auto 0}.recipe-landing .meal-basket>p,.recipe-landing .meal-basket-list{flex-basis:100%}.recipe-landing .meal-basket-hide{color:var(--muted);font-size:var(--fs-md);background:0 0;border:0;margin-left:auto;padding:8px 10px;font-weight:800}.recipe-landing .meal-basket-hide:hover{color:var(--green)}.recipe-landing .meal-basket>.list-header-cta:disabled{border-color:var(--line-2);background:var(--surface);color:var(--muted)}.recipe-landing .meal-basket-list{font-size:var(--fs-md);gap:4px;margin:0;padding:0;list-style:none;display:grid}.recipe-landing .meal-basket-list li{flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.recipe-landing .meal-basket-list label{color:var(--ink);cursor:pointer;align-items:center;gap:10px;padding:4px 0;font-weight:800;line-height:1.25;display:flex}.recipe-landing .meal-basket-list .plan-thumb{border-radius:8px;width:36px;height:36px}.recipe-landing .meal-basket-list label:has(input:not(:checked)) .plan-thumb{opacity:.45}.recipe-landing .meal-basket-list input{width:18px;height:18px;accent-color:var(--green);margin:0}.recipe-landing .meal-basket-list label:has(input:not(:checked)) span{color:var(--muted);text-decoration:line-through}.recipe-landing .meal-basket-list li small{color:var(--muted);font-size:var(--fs-sm);font-weight:500;display:block}.recipe-landing .plan-row[draggable=true]{cursor:grab}.recipe-landing .cupboard-list p small.plan-unplaced{color:var(--green);font-weight:800}.recipe-landing .cupboard-list p small.plan-placed{color:var(--muted)}.recipe-landing .recipe-rows .list-header{max-width:var(--max);text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 20px;margin:0 auto 22px;display:flex}.recipe-landing .recipe-rows .list-header-lead{align-items:center;gap:16px;min-width:0;display:flex}.recipe-landing .recipe-rows .list-header-copy{min-width:0}.recipe-landing .recipe-rows .list-header-copy>h1{max-width:none;margin:16px 0 6px;font:700 32px/1.25 Georgia,Iowan Old Style,serif}.recipe-landing .recipe-rows .list-header-copy>.cook-finish-copy{max-width:52ch;font-size:var(--fs-lg);margin:0;line-height:1.5}.recipe-landing .recipe-rows .list-header-cta{border:1px solid var(--green);border-radius:var(--r-pill);background:var(--surface);color:var(--green);font-size:var(--fs-md);white-space:nowrap;flex:none;margin-bottom:2px;padding:11px 18px;font-weight:800;text-decoration:none;display:inline-block}.recipe-landing .recipe-rows .list-header-cta:hover{background:var(--green-tint)}@media (max-width:639px){.recipe-landing .recipe-rows .list-header{flex-direction:column;align-items:stretch;margin-bottom:18px}.recipe-landing .recipe-rows .list-header-action{display:flex}.recipe-landing .recipe-rows .list-header-copy>h1{font-size:26px}.recipe-landing .recipe-rows .list-header-lead{gap:12px}.recipe-landing .recipe-rows .generator-face{width:60px;height:60px}.recipe-landing .recipe-rows .generator-face img{width:46px;height:46px}}.recipe-landing .plan-thumb{border-radius:var(--r-sm);background:#eef1ea;flex:none;place-items:center;width:48px;height:48px;display:grid;position:relative;overflow:hidden}.recipe-landing .plan-thumb img{object-fit:cover}.recipe-landing .recipe-rows .dock-row p a,.recipe-landing .basket-recipes .dock-row p a{color:inherit;text-decoration:none}.recipe-landing .recipe-rows .dock-row p a:hover,.recipe-landing .basket-recipes .dock-row p a:hover{text-decoration:underline}.recipe-landing .recipe-rows .plan-confirm,.recipe-landing .my-generated .plan-confirm{color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;flex:none;align-items:center;font-weight:800}.recipe-landing .recipe-rows .plan-remove,.recipe-landing .my-generated .plan-remove{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);width:30px;height:30px;color:var(--muted);flex:none;font-size:16px;line-height:1}.recipe-landing .recipe-rows .plan-remove:hover,.recipe-landing .recipe-rows .plan-remove:focus-visible,.recipe-landing .my-generated .plan-remove:hover,.recipe-landing .my-generated .plan-remove:focus-visible{color:var(--danger);background:#fbe9e7;border-color:#f3c9c4}.recipe-landing .recipe-rows .cook-button{flex:none}.recipe-landing .my-generated .dock-row .add-button{border:1px solid var(--green-line);border-radius:var(--r-pill);background:var(--surface);min-width:0;color:var(--green)}.recipe-landing .my-generated .dock-row .add-button:hover{border-color:var(--green);background:var(--green-tint)}@media (max-width:639px){.recipe-landing .recipe-rows .pantry-page-body{padding:8px 12px 24px}.recipe-landing .recipe-rows .dock-row>p{flex-basis:calc(100% - 110px);order:2;min-width:0}.recipe-landing .recipe-rows .plan-thumb{order:1}.recipe-landing .recipe-rows .plan-remove{order:3}.recipe-landing .recipe-rows .cook-button,.recipe-landing .recipe-rows .plan-confirm{order:4;margin-left:auto}.recipe-landing .recipe-rows .dock-row p a,.recipe-landing .basket-recipes .dock-row p a{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.recipe-landing .recipe-rows .dock-row>.time-pill,.recipe-landing .recipe-rows .dock-row>.add-button,.recipe-landing .recipe-rows .dock-row>.qty-control{order:4}}.recipe-landing .app-shell:has(.recipe-dock){padding-bottom:calc(84px + env(safe-area-inset-bottom))}.recipe-landing:has(.recipe-dock) .detail-overlay{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.recipe-landing:has(.cook-mode) .recipe-dock{display:none}.recipe-landing:has(.recipe-dock) .pantry-page-body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.recipe-landing:has(.pantry-page>footer) .recipe-dock{display:none}.recipe-landing .detail-overlay,.recipe-landing .cook-mode{z-index:80;background:var(--paper);position:fixed;inset:0;overflow:auto}.recipe-landing .ingredient-edit-open{text-align:left;border:var(--hairline);background:var(--ink);width:fit-content;max-width:100%;min-height:30px;color:var(--on-accent);line-height:1.3;font-size:var(--fs-base);border-radius:8px;align-items:center;padding:5px 12px;text-decoration:none;display:inline-flex}.recipe-landing .ingredient-edit-open:hover{background:var(--green)}.recipe-landing .ingredient-edit-open:focus-within{outline:2px solid var(--green);outline-offset:2px}.recipe-landing .ingredient-edit-open:disabled{opacity:.6;cursor:progress}.recipe-landing .ingredient-edit-open:has(:disabled){opacity:.6;cursor:progress}.recipe-landing .dock-row .ingredient-edit-open{flex:none}.recipe-landing .ingredient-edit{border:var(--hairline);border-radius:var(--r-card);background:var(--surface);width:min(680px,100vw - 32px);max-height:min(760px,100svh - 32px);color:var(--ink);flex-direction:column;padding:0;display:flex;overflow:hidden}.recipe-landing .ingredient-edit>.pantry-menu-header{z-index:1;border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:8px;min-height:48px;padding:7px 10px 7px 16px;display:flex;position:sticky;top:0}.recipe-landing .ingredient-edit>.pantry-menu-header p{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;overflow:hidden}.recipe-landing .ingredient-edit>.pantry-menu-header button{width:32px;height:32px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;padding:0;font-size:18px;display:grid}.recipe-landing .ingredient-edit>.pantry-menu-header button:hover{color:var(--ink);background:#f0f2ed}.recipe-landing .ingredient-edit>.pantry-menu-header strong{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recipe-landing .ingredient-edit>.pantry-menu-header small{color:var(--muted);font-size:var(--fs-sm);margin-left:6px}.recipe-landing .ingredient-edit::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.recipe-landing .ingredient-edit-body{flex:auto;gap:20px;min-height:0;padding:14px 16px;display:grid;overflow-y:auto}.recipe-landing .ingredient-edit-body h3{font-size:var(--fs-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-weight:800}.recipe-landing .ingredient-edit-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.recipe-landing .ingredient-edit-heading>button,.recipe-landing .ingredient-edit-search>button{border:1px solid var(--green);border-radius:var(--r-pill);background:var(--green);color:var(--on-accent);font-size:var(--fs-xs);white-space:nowrap;padding:6px 12px;font-weight:800}.recipe-landing .ingredient-edit-heading>button:disabled,.recipe-landing .ingredient-edit-search>button:disabled{border-color:var(--line-2);background:var(--line-2)}.recipe-landing .ingredient-edit-search{gap:8px;margin-bottom:10px;display:flex}.recipe-landing .ingredient-edit-search input{border:var(--hairline);min-width:0;height:34px;font-size:var(--fs-base);border-radius:9px;flex:1;padding:0 10px}.recipe-landing .ingredient-edit-search input:focus{border-color:var(--green);outline:none}.recipe-landing .product-grid{gap:8px;display:grid}.recipe-landing .product-tile{border:var(--hairline);border-radius:var(--r-md);background:#fbfcfb;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.recipe-landing .product-tile-img{cursor:zoom-in;background:var(--surface);border:1px solid #0000;border-radius:8px;place-items:center;width:64px;height:64px;padding:0;font-size:24px;display:grid;position:relative;overflow:hidden}.recipe-landing .product-tile-img img{object-fit:contain;width:100%;height:100%}.recipe-landing .product-tile-img>i{border-radius:var(--r-pill);background:var(--green);color:var(--on-accent);padding:1px 5px;font-size:9px;font-style:normal;font-weight:800;position:absolute;bottom:2px;left:2px}.recipe-landing .product-tile-copy{min-width:0}.recipe-landing .product-tile-copy strong{font-size:var(--fs-base);font-weight:800;display:block}.recipe-landing .product-tile-copy small{color:var(--muted);font-size:var(--fs-xs);display:block}.recipe-landing .product-tile-copy b{font-size:var(--fs-base);color:var(--green)}.recipe-landing .product-tile-actions{align-items:center;gap:6px;display:flex}.recipe-landing .product-tile-actions button{border:1px solid var(--green-line);border-radius:var(--r-pill);background:var(--surface);color:var(--green);font-size:var(--fs-xs);white-space:nowrap;padding:5px 10px;font-weight:800}.recipe-landing .product-tile-actions .is-mapped{color:var(--green);font-size:var(--fs-xs);font-weight:800}.recipe-landing .ingredient-edit-error,.recipe-landing .reset-modal>p.reset-error{border-radius:var(--r-sm);color:var(--warm);font-size:var(--fs-base);background:#fdf1ec;border:1px solid #e6c3b4;margin:0;padding:10px 12px;font-weight:700}.recipe-landing .reset-modal>p.reset-error{margin:0 0 18px}.recipe-landing .ingredient-edit-empty{color:var(--muted);font-size:var(--fs-sm);margin:0}.recipe-landing .ingredient-edit-footer{border-top:1px solid var(--line);padding:10px 16px}.recipe-landing .ingredient-edit-footer a{color:var(--green);font-size:var(--fs-sm);font-weight:800;text-decoration:none}.recipe-landing .ingredients-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.recipe-landing .ingredients-filter{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;padding:6px 12px;font-weight:800}.recipe-landing .ingredients-filter:hover{border-color:var(--green-line);color:var(--green)}.recipe-landing .ingredients-filter.is-on{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .cook-mode.cook-finish{grid-template-rows:auto 1fr auto}.recipe-landing .cook-mode.cook-finish>main{justify-content:flex-start;align-items:stretch;overflow-y:auto}.recipe-landing .cook-finish-copy{color:var(--muted);font-size:var(--fs-md);margin:0 0 14px}.recipe-landing .cook-finish-list{width:100%;max-width:var(--max);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:8px;margin:0 auto;display:grid}.recipe-landing .cook-finish-list>button{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);text-align:left;grid-template-columns:24px 22px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.recipe-landing .cook-finish-list>button:hover{border-color:var(--green-line)}.recipe-landing .cook-finish-list>button.is-picked{border-color:var(--green);background:var(--green-tint)}.recipe-landing .cook-finish-list .check-box{border:1px solid var(--green-line);background:var(--surface);width:22px;height:22px;color:var(--green);font-size:var(--fs-base);border-radius:6px;place-items:center;font-weight:900;display:grid}.recipe-landing .cook-finish-list p{min-width:0;font-size:var(--fs-md);margin:0;font-weight:800}.recipe-landing .cook-finish-list small{color:var(--muted);font-size:var(--fs-sm);font-weight:600;display:block}.recipe-landing .detail-overlay>header,.recipe-landing .cook-mode>header{z-index:2;width:100%;height:64px;padding:12px max(20px, calc((100% - var(--max)) / 2 + 20px));border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f7f1f2;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.recipe-landing .cook-mode>header button{background:0 0;border:0;font-size:22px}.recipe-landing .detail-overlay>header>strong{text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;padding:0 12px;font-size:16px;font-weight:800;overflow:hidden}.recipe-landing .detail-body{max-width:var(--max);margin:0 auto;padding:8px 20px 48px}.recipe-landing .detail-meta{flex-wrap:wrap;gap:8px;display:flex}.recipe-landing .detail-meta span{color:#53665c;font-size:var(--fs-sm);background:#e9efe9;border-radius:9px;padding:6px 10px;font-weight:800}.recipe-landing .detail-hero h1,.recipe-landing .detail-body h1{letter-spacing:-.03em;margin:14px 0 8px;font:700 34px/1.1 Georgia,Iowan Old Style,serif}.recipe-landing .detail-hero>p,.recipe-landing .detail-body>p{color:var(--muted);margin:0;font-size:16px;line-height:1.45}.recipe-landing .recipe-intro{border-top:1px solid var(--line);padding-top:16px;color:#3f5048!important;margin:18px 0 0!important;font:17px/1.6 Georgia,Iowan Old Style,serif!important}.recipe-landing .detail-price{align-items:baseline;gap:10px;margin:18px 0;display:flex}.recipe-landing .detail-price strong{color:var(--green);font-size:26px}.recipe-landing .detail-price small{color:var(--muted);font-size:var(--fs-base);margin-left:auto}.recipe-landing .price-deal{max-width:max-content;position:relative}.recipe-landing .price-deal-chip{border-radius:var(--r-pill);color:var(--green);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;background:#e9f4ee;border:1px solid #bcd8c9;align-items:center;padding:5px 12px;font-weight:800;display:inline-flex}.recipe-landing .price-deal-compact .price-deal-chip{font-size:var(--fs-xs);padding:3px 9px}.recipe-landing .price-deal-callout{z-index:110;box-sizing:border-box;border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);cursor:default;width:min(320px,84vw);padding:14px 16px;position:fixed;box-shadow:0 14px 32px #1f322926}.recipe-landing .price-deal-callout p{margin:0}.recipe-landing .price-deal-summary{color:var(--ink);font-size:var(--fs-md)}.recipe-landing .price-deal-summary strong{color:var(--green);font-size:16px}.recipe-landing .price-deal-usual{color:var(--muted);font-size:var(--fs-sm);margin-top:2px!important}.recipe-landing .price-deal-drivers{border-top:1px solid var(--line);margin:10px 0 0;padding:10px 0 0;list-style:none}.recipe-landing .price-deal-drivers li{font-size:var(--fs-base);color:var(--ink);justify-content:space-between;gap:10px;display:flex}.recipe-landing .price-deal-drivers li+li{margin-top:4px}.recipe-landing .price-deal-drivers strong{color:var(--green)}.recipe-landing .cheaper-setup{max-width:max-content;margin:-8px 0 18px;position:relative}.recipe-landing .cheaper-setup-hint{color:var(--green);font-size:var(--fs-md);text-align:left;text-underline-offset:3px;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline;display:block}.recipe-landing .cheaper-setup-callout{z-index:40;box-sizing:border-box;border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);width:min(380px,88vw);padding:14px 16px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 14px 32px #1f322926}.recipe-landing .cheaper-setup-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.recipe-landing .cheaper-setup-head strong{color:var(--ink);font-size:var(--fs-md)}.recipe-landing .cheaper-setup-close{color:var(--muted);background:0 0;border:none;padding:0 4px;font-size:18px;line-height:1}.recipe-landing .cheaper-setup-rows{margin:10px 0 0;padding:0;list-style:none}.recipe-landing .cheaper-setup-rows li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.recipe-landing .cheaper-swap-copy{min-width:0}.recipe-landing .cheaper-swap-copy strong{color:var(--ink);font-size:var(--fs-base);display:block}.recipe-landing .cheaper-swap-copy small{color:var(--muted);font-size:var(--fs-sm);margin-top:2px;line-height:1.4;display:block}.recipe-landing .cheaper-swap-apply{border-radius:var(--r-pill);color:var(--green);font-size:var(--fs-sm);background:#e9f4ee;border:1px solid #bcd8c9;flex-shrink:0;padding:5px 10px;font-weight:700}.recipe-landing .cheaper-setup-rows li.is-applied .cheaper-swap-copy strong{color:var(--muted)}.recipe-landing .cheaper-swap-undo{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-size:var(--fs-sm);flex-shrink:0;padding:5px 10px;font-weight:700}.recipe-landing .cheaper-setup-done{color:var(--green);font-size:var(--fs-base);text-align:center;margin:10px 0 0;font-weight:700}.recipe-landing .cheaper-setup-apply-all{border-radius:var(--r-sm);background:var(--green);width:100%;color:var(--on-accent);font-size:var(--fs-base);border:none;margin-top:10px;padding:8px 12px;font-weight:700;display:block}.recipe-landing .price-gauge{box-sizing:border-box;margin:12px 0 0;padding-top:34px;position:relative}.recipe-landing .price-gauge-current{white-space:nowrap;align-items:baseline;gap:5px;display:flex;position:absolute;top:4px}.recipe-landing .price-gauge-current small{color:var(--green-soft);font-size:var(--fs-xs);text-transform:uppercase;font-weight:800}.recipe-landing .price-gauge-current strong{color:var(--ink);font-size:var(--fs-lg)}.recipe-landing .price-gauge-track{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--green) 0%, #d9a13c 50%, var(--warm) 100%);height:10px;position:relative}.recipe-landing .price-gauge-needle{background:var(--ink);width:3px;box-shadow:0 0 0 2px var(--surface);border-radius:2px;position:absolute;top:-4px;bottom:-4px;transform:translate(-50%)}.recipe-landing .price-gauge-ends{color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;justify-content:space-between;gap:10px;margin-top:6px;font-weight:800;display:flex}.recipe-landing .price-gauge-deal{color:var(--green)}.recipe-landing .detail-warning{border-radius:var(--r-sm);color:#7a5416;font-size:var(--fs-md);background:#fdf6e5;border:1px solid #f0d391;border-left-width:4px;align-items:flex-start;gap:10px;margin:0 0 18px;padding:11px 14px;line-height:1.45;display:flex}.recipe-landing .detail-warning p{margin:0}.recipe-landing .detail-warning b{font-weight:700}.recipe-landing .detail-warning-icon{font-size:var(--fs-lg);flex:none}.recipe-landing .detail-hero .ingredient-edit-open{margin-bottom:8px}.recipe-landing .detail-actions{grid-template-columns:1fr 1.2fr;gap:10px;max-width:420px;margin-bottom:8px;display:grid}.recipe-landing .detail-actions button{border:1px solid var(--green);border-radius:var(--r-md);background:var(--surface);color:var(--green);font-size:var(--fs-base);padding:12px 14px;font-weight:800}.recipe-landing .detail-actions .cook-button{background:var(--green);color:var(--on-accent)}.recipe-landing .detail-actions .add-button:not(:disabled):hover{color:var(--on-accent)}.recipe-landing .detail-actions .qty-control{justify-content:space-between;padding:6px}.recipe-landing .detail-actions .qty-control button{border-radius:var(--r-sm);background:var(--surface);border:0;width:38px;height:38px;padding:0;font-size:20px;font-weight:900}.recipe-landing .detail-actions .qty-control strong{color:var(--green);font-size:var(--fs-base)}.recipe-landing .login-page{background:var(--paper);place-items:center;min-height:100dvh;padding:20px;display:grid}.recipe-landing .login-modal{width:min(420px,100%);position:relative}.recipe-landing .login-modal-close,.recipe-landing .buy-modal-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:22px;line-height:1;position:absolute;top:12px;right:14px}.recipe-landing .login-modal-close:hover,.recipe-landing .buy-modal-close:hover{background:#f0f2ee}.recipe-landing .login-modal .buy-head{margin-bottom:18px}.recipe-landing .login-modal .buy-head h2{margin-top:0}.recipe-landing .login-form{gap:14px;display:grid}.recipe-landing .login-label{color:var(--muted);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-weight:700;display:block}.recipe-landing .login-input{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);width:100%;height:44px;color:var(--ink);font-size:var(--fs-lg);outline:none;padding:0 14px}.recipe-landing .login-input:focus{border-color:var(--green)}.recipe-landing .login-submit{border-radius:var(--r-pill);background:var(--green);width:100%;height:46px;color:var(--on-accent);font-size:var(--fs-lg);cursor:pointer;border:0;font-weight:800}.recipe-landing .login-submit:disabled{opacity:.6;cursor:default}.recipe-landing .login-oauth{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);width:100%;height:46px;color:var(--ink);font-size:var(--fs-lg);cursor:pointer;justify-content:center;align-items:center;gap:10px;font-weight:700;display:flex}.recipe-landing .login-oauth:hover:not(:disabled){background:#f0f2ee}.recipe-landing .login-oauth:disabled{opacity:.6;cursor:default}.recipe-landing .login-choices{gap:14px;display:grid}.recipe-landing .login-or{color:var(--muted);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:12px;font-weight:700;display:flex}.recipe-landing .login-or:before,.recipe-landing .login-or:after{content:"";background:var(--line);flex:1;height:1px}.recipe-landing .login-hint{color:var(--muted);font-size:var(--fs-sm);margin:6px 0 0}.recipe-landing .login-error{color:var(--danger-2);font-size:var(--fs-base);margin:0;font-weight:600}.recipe-landing .login-error-block{border-radius:var(--r-sm);background:#fde8e4;margin-bottom:14px;padding:10px 14px}.recipe-landing .login-foot{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:0;line-height:1.6}.recipe-landing .login-link{color:var(--green);font-size:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}.recipe-landing .login-sent{text-align:center;justify-items:center;gap:8px;padding:8px 0 4px;display:grid}.recipe-landing .login-sent-icon{font-size:30px;line-height:1}.recipe-landing .login-sent h3{margin:0;font:700 18px Georgia,Iowan Old Style,serif}.recipe-landing .login-sent-copy{color:var(--muted);font-size:var(--fs-base);margin:0;line-height:1.5}.recipe-landing .consent-card h2{margin-top:0}.recipe-landing .consent-card .consent-copy{margin-bottom:12px}.recipe-landing .consent-actions{text-align:center;gap:10px;margin-top:18px;display:grid}.recipe-landing .consent-switch{color:var(--muted);margin:16px auto 0;font-weight:600;display:block}.recipe-landing .topbar-pantry,.recipe-landing .topbar-new{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);min-width:36px;height:36px;color:var(--green);font-size:var(--fs-lg);justify-content:center;align-items:center;gap:3px;padding:0 9px;line-height:1;text-decoration:none;display:inline-flex}.recipe-landing .topbar-pantry-label,.recipe-landing .topbar-new-label{font-size:var(--fs-base);white-space:nowrap;font-weight:800;display:none}.recipe-landing .topbar-pantry b{font-size:var(--fs-xs);font-weight:800}.recipe-landing .topbar-signin{border-radius:var(--r-pill);background:var(--green);height:36px;color:var(--on-accent);font-size:var(--fs-base);white-space:nowrap;align-items:center;padding:0 16px;font-weight:800;text-decoration:none;display:inline-flex}.recipe-landing .detail-split{gap:28px;margin-top:28px;display:grid}.recipe-landing .detail-split h2,.recipe-landing .detail-body h2{margin:0 0 10px;font:700 22px Georgia,Iowan Old Style,serif}.recipe-landing .detail-ingredients{gap:10px;display:grid}.recipe-landing .ingredient-product-row{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);gap:10px;padding:14px;display:grid}.recipe-landing .ingredient-product-row.likely-owned{border-color:var(--green-line);background:#f4f9f6}.recipe-landing .ingredient-product-row.likely-owned .ingredient-main>strong{color:var(--green);font-size:var(--fs-sm);font-weight:700}.recipe-landing .ingredient-product-row.likely-owned .ingredient-emoji{opacity:.55}.recipe-landing .ingredient-product-row.likely-owned .ingredient-copy>p{color:var(--muted)}.recipe-landing .ingredient-main{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;display:grid}.recipe-landing .ingredient-have{border:1px solid var(--green-tint-2);border-radius:var(--r-pill);background:var(--green-wash);color:var(--muted);font-size:var(--fs-xs);white-space:nowrap;flex:none;padding:5px 10px;font-weight:800}.recipe-landing .ingredient-have:hover{border-color:var(--green-line);color:var(--green)}.recipe-landing .ingredient-have.is-set{border-color:var(--green-line);background:var(--green-tint);color:var(--green)}.recipe-landing .ingredient-have-actions{gap:8px;display:flex}.recipe-landing .ingredient-have-actions button,.recipe-landing .recipe-rows .cook-button{border:1px solid var(--green-line);border-radius:var(--r-pill);background:var(--surface);color:var(--green);font-size:var(--fs-xs);white-space:nowrap;padding:6px 12px;font-weight:800}.recipe-landing .ingredient-have-actions button.primary,.recipe-landing .recipe-rows .cook-button{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .cook-button:disabled{color:#f4f6f4;cursor:default;background:#cfd6d1;border-color:#cfd6d1}.recipe-landing .ingredient-emoji{font-size:22px}.recipe-landing .ingredient-copy{min-width:0}.recipe-landing .ingredient-copy p{font-size:var(--fs-md);margin:0;font-weight:800}.recipe-landing .ingredient-copy em{color:var(--muted);font-size:var(--fs-sm);margin-left:8px;font-style:normal;font-weight:700}.recipe-landing .ingredient-copy small{color:var(--muted);font-size:var(--fs-sm);margin-top:3px;font-weight:500;display:block}.recipe-landing .pantry-swaps{margin-bottom:18px}.recipe-landing .pantry-swaps h2{font-size:var(--fs-base);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-weight:800}.recipe-landing .pantry-swap{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.recipe-landing .pantry-swap+.pantry-swap{margin-top:6px}.recipe-landing .pantry-swap p{font-size:var(--fs-md);margin:0;font-weight:800}.recipe-landing .pantry-swap p small{color:var(--muted);font-size:var(--fs-sm);margin-top:2px;font-weight:500;display:block}.recipe-landing .pantry-swap>button{color:var(--muted);background:0 0;border:none;padding:0 6px;font-size:18px;line-height:1}.recipe-landing small.ingredient-swap{color:var(--ink-soft);font-size:var(--fs-sm);margin-top:2px;font-weight:500;display:block}.recipe-landing .swap-reason{border-radius:var(--r-pill);background:var(--green-tint);color:var(--green);text-transform:uppercase;letter-spacing:.03em;vertical-align:1px;margin-left:6px;padding:1px 6px;font-size:10px;font-style:normal;font-weight:800;display:inline-block}.recipe-landing .swap-reason.is-plan{color:#7a6a3c;background:#f1ede4}.recipe-landing .ingredient-copy small.ingredient-swap-note{color:var(--ink-soft);font-style:italic}.recipe-landing .ingredient-alt-toggle,.recipe-landing .ingredient-alt-always{color:var(--green);font-size:var(--fs-sm);text-align:left;text-underline-offset:3px;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.recipe-landing .ingredient-alt-toggle i{color:var(--muted);font-style:normal;font-weight:600}.recipe-landing .ingredient-alt-always{color:var(--ink-soft)}.recipe-landing .ingredient-alt-meta{margin-top:3px;display:block}.recipe-landing .alt-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:8px 0 2px;display:grid}.recipe-landing .alt-cards>button{border:1.5px solid var(--green-line);border-radius:var(--r-md);background:var(--surface);text-align:left;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;padding:10px 12px;display:grid}.recipe-landing .alt-cards>button.is-current{border-color:var(--green);background:var(--green-tint)}.recipe-landing .alt-card-check{border:1.5px solid var(--green-line);border-radius:var(--r-pill);width:18px;height:18px;color:var(--on-accent);font-size:var(--fs-sm);text-align:center;font-weight:900;line-height:16px}.recipe-landing .alt-cards>button.is-current .alt-card-check{border-color:var(--green);background:var(--green)}.recipe-landing .alt-card-emoji{font-size:20px}.recipe-landing .alt-card-copy{min-width:0}.recipe-landing .alt-card-copy b{font-size:var(--fs-base);font-weight:800;display:block}.recipe-landing .alt-card-copy small{color:var(--muted);font-size:var(--fs-sm);display:block}.recipe-landing .alt-card-have{font-size:var(--fs-sm);vertical-align:1px;margin-left:5px;font-style:normal;display:inline-block}.recipe-landing .alt-fold-toggle{color:var(--green);font-size:var(--fs-sm);text-align:left;background:0 0;border:0;align-items:center;gap:4px;margin:6px 0 2px;padding:0;font-weight:800;display:inline-flex}.recipe-landing .alt-fold-toggle.is-folded{margin-top:2px}.recipe-landing .alt-fold-owned{color:var(--ink-soft);font-weight:600}.recipe-landing .ingredient-main>strong,.recipe-landing .ingredient-option>button strong{font-size:var(--fs-base);white-space:nowrap}.recipe-landing .ingredient-selected-product{border-radius:var(--r-sm);background:#f6faf7;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;padding:10px 12px;display:flex}.recipe-landing .ingredient-selected-product div{min-width:0}.recipe-landing .product-peek{border:var(--hairline);border-radius:var(--r-card);background:var(--surface);width:min(420px,100vw - 32px);max-height:calc(100svh - 32px);color:var(--ink);padding:0;overflow:auto}.recipe-landing .product-peek::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.recipe-landing .product-peek-close{border:var(--hairline);background:var(--surface);width:32px;height:32px;color:var(--muted);z-index:1;border-radius:50%;place-items:center;padding:0;font-size:18px;display:grid;position:sticky;top:8px;left:calc(100% - 40px)}.recipe-landing .product-peek-figure{background:var(--green-wash);place-items:center;min-height:220px;margin-top:-32px;padding:12px 20px;display:grid}.recipe-landing .product-peek-figure img{object-fit:contain;max-width:100%;max-height:300px}.recipe-landing .product-peek-figure>span{opacity:.5;font-size:56px}.recipe-landing .product-peek-copy{padding:16px 20px 20px}.recipe-landing .product-peek-copy h2{margin:0;font-size:17px;line-height:1.3}.recipe-landing .product-peek-brand{color:var(--muted);font-size:var(--fs-base);margin:4px 0 0;font-weight:700}.recipe-landing .product-peek-copy dl{grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin:14px 0 0;display:grid}.recipe-landing .product-peek-copy dt{color:var(--muted);font-size:var(--fs-sm);font-weight:800}.recipe-landing .product-peek-copy dd{font-size:var(--fs-base);margin:0}.recipe-landing .product-peek-flags{color:#b03a2e;font-weight:700}.recipe-landing .product-peek-copy>a{color:var(--green);font-size:var(--fs-base);margin-top:16px;font-weight:800;text-decoration:none;display:inline-block}.recipe-landing .product-thumb{background:var(--surface);cursor:zoom-in;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;width:44px;height:44px;padding:0;display:grid;overflow:hidden}.recipe-landing .product-thumb:hover{border-color:var(--green-line)}.recipe-landing .product-thumb img{object-fit:contain;width:100%;height:100%}.recipe-landing .product-thumb>i{opacity:.5;font-size:18px;font-style:normal}.recipe-landing .ingredient-selected-product small{color:var(--green-soft);font-size:var(--fs-xs);text-transform:uppercase;margin-bottom:3px;font-weight:800;display:block}.recipe-landing .ingredient-selected-product a,.recipe-landing .ingredient-selected-product span{color:#173b25;font-size:var(--fs-base);font-weight:850;text-decoration:none}.recipe-landing .ingredient-selected-product a:hover{text-decoration:underline}.recipe-landing .ingredient-selected-product p{color:#6f7d74;font-size:var(--fs-sm);margin:3px 0 0}.recipe-landing .ingredient-selected-product.missing{color:var(--muted);font-size:var(--fs-base);background:#f7f4ee;font-weight:750}.recipe-landing .ingredient-selected-product>div:not(.product-thumb):not(.ingredient-selected-aside){flex:1}.recipe-landing .ingredient-selected-aside{flex:1 0 100%;align-items:center;gap:10px;padding-left:56px;display:flex}@media (min-width:640px){.recipe-landing .ingredient-selected-aside{flex:none;margin-left:auto;padding-left:0}}.recipe-landing .ingredient-stock{color:var(--warm);font-size:var(--fs-xs);flex:none;font-weight:800}.recipe-landing .ingredient-reset{border:1px solid var(--green-line);border-radius:var(--r-pill);background:var(--surface);color:var(--green);font-size:var(--fs-xs);white-space:nowrap;flex:none;padding:5px 9px;font-weight:800}.recipe-landing .ingredient-options{gap:6px;display:grid}.recipe-landing .ingredient-option{border:1px solid var(--green-tint-2);border-radius:var(--r-sm);background:var(--surface);align-items:center;gap:10px;padding-left:10px;display:flex;overflow:hidden}.recipe-landing .ingredient-option>button:disabled{opacity:1;cursor:default}.recipe-landing .ingredient-option.selected{border-color:var(--green);background:#edf7ef}.recipe-landing .ingredient-options .option-flags{color:var(--warm);font-size:var(--fs-xs);font-weight:800;display:block}.recipe-landing .ingredient-option>button:not(.product-thumb){min-width:0;color:inherit;text-align:left;background:0 0;border:0;flex:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.recipe-landing .ingredient-option>a{border-left:1px solid var(--green-tint-2);color:var(--green-soft);font-size:var(--fs-base);flex:none;align-items:center;padding:0 11px;font-weight:800;text-decoration:none;display:flex}.recipe-landing .ingredient-option>a:hover{color:var(--green);background:#f2f7f3}.recipe-landing .ingredient-option>button b{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:800;display:block;overflow:hidden}@media (max-width:639px){.recipe-landing .ingredient-option>button:not(.product-thumb){grid-template-columns:minmax(0,1fr);gap:4px}.recipe-landing .ingredient-option>button b{white-space:normal;overflow:visible}.recipe-landing .ingredient-option>button strong{justify-self:start}}.recipe-landing .ingredient-option>button small{color:var(--muted);font-size:var(--fs-xs);margin-top:2px;display:block}.recipe-landing .method-heading{justify-content:space-between;align-items:end;gap:12px;margin:0 0 12px;display:flex}.recipe-landing .method-heading small{color:var(--green);font-size:var(--fs-xs);letter-spacing:.08em;font-weight:800}.recipe-landing .method-heading h2{margin:4px 0 0}.recipe-landing .method-heading button{border:1px solid var(--green);border-radius:var(--r-sm);background:var(--surface);color:var(--green);font-size:var(--fs-sm);padding:8px 12px;font-weight:800}.recipe-landing .method-list{gap:10px;display:grid}.recipe-landing .method-list article{border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);gap:12px;padding:14px;display:flex}.recipe-landing .method-list article>span{background:var(--green);width:28px;height:28px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;font:700 13px Georgia,serif;display:grid}.recipe-landing .method-list p{font-size:var(--fs-lg);margin:1px 0 8px;line-height:1.5}.recipe-landing .method-list small{color:#718078;font-size:var(--fs-sm);line-height:1.5;display:block}.recipe-landing .method-list article>div{flex:1;min-width:0}.recipe-landing .step-edit-open{width:28px;height:28px;color:var(--muted);font-size:var(--fs-base);opacity:0;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;align-self:flex-start;place-items:center;padding:0;display:grid}.recipe-landing .method-list article:hover .step-edit-open,.recipe-landing .step-edit-open:focus-visible{opacity:1}.recipe-landing .step-edit-open:hover{border-color:var(--line);color:var(--green);background:#f0f2ed}@media (hover:none){.recipe-landing .step-edit-open{opacity:1}}.recipe-landing .inline-edit-add{margin-top:12px}.recipe-landing .inline-edit-field,.recipe-landing .inline-edit-text{border:var(--hairline);background:var(--surface);width:100%;color:var(--ink);font:inherit;font-size:var(--fs-md);border-radius:9px;padding:8px 10px}.recipe-landing .inline-edit-text{resize:vertical;line-height:1.5;display:block}.recipe-landing .inline-edit-field:focus,.recipe-landing .inline-edit-text:focus{border-color:var(--green);outline:none}.recipe-landing .inline-edit-row{gap:8px;margin-bottom:8px;display:flex}.recipe-landing .inline-edit-emoji{text-align:center;flex:none;width:68px}.recipe-landing .inline-edit-chips{flex-wrap:wrap;gap:6px;display:flex}.recipe-landing .vocabulary-search{flex:1;min-width:0}.recipe-landing .ingredient-edit-search:has(.vocabulary-search)>button{align-self:flex-start;min-height:34px}.recipe-landing .vocabulary-results{border:var(--hairline);background:var(--surface);border-radius:9px;margin:4px 0 0;padding:0;list-style:none;overflow:hidden}.recipe-landing .vocabulary-results li+li{border-top:var(--hairline)}.recipe-landing .vocabulary-results button{width:100%;color:var(--ink);font:inherit;font-size:var(--fs-md);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:9px 10px;display:flex}.recipe-landing .vocabulary-results button:hover,.recipe-landing .vocabulary-results button:focus-visible{background:var(--green-wash);outline:none}.recipe-landing .inline-edit-chips label{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-size:var(--fs-base);cursor:pointer;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.recipe-landing .inline-edit-chips label.is-on{border-color:var(--green);color:var(--green);background:#eef5f1;font-weight:700}.recipe-landing .inline-edit-chips input{accent-color:var(--green);margin:0}.recipe-landing .inline-edit-optional{font-size:var(--fs-md);align-items:center;gap:8px;display:flex}.recipe-landing .inline-edit-optional input{accent-color:var(--green);margin:0}.recipe-landing .inline-edit-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:10px 16px;display:flex}.recipe-landing .inline-edit-footer button{border-radius:var(--r-sm);font-size:var(--fs-base);padding:9px 16px;font-weight:800}.recipe-landing .inline-edit-cancel{border:var(--hairline);background:var(--surface);color:var(--muted)}.recipe-landing .inline-edit-save{border:1px solid var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .inline-edit-save:disabled{border-color:var(--line-2);background:var(--line-2)}.recipe-landing .cook-mode{background:#f4f4ed;grid-template-rows:64px auto 1fr 88px;height:100dvh;display:grid;overflow:hidden}.recipe-landing .cook-mode>header{width:100%;max-width:none}.recipe-landing .cook-mode>header strong{text-overflow:ellipsis;white-space:nowrap;max-width:50vw;font-size:var(--fs-md);overflow:hidden}.recipe-landing .cook-mode>header button{font-size:var(--fs-md);font-weight:800}.recipe-landing .cook-progress{width:100%;max-width:720px;margin:0 auto;padding:12px 24px}.recipe-landing .cook-progress>span{color:#6f7b75;font-size:var(--fs-base);margin-bottom:8px;font-weight:800;display:block}.recipe-landing .cook-progress>div{gap:6px;display:flex}.recipe-landing .cook-progress i{background:#d9ded9;border-radius:3px;flex:1;height:5px}.recipe-landing .cook-progress i.done{background:#84aa95}.recipe-landing .cook-progress i.current{background:var(--green)}.recipe-landing .cook-mode>main{text-align:center;flex-direction:column;justify-content:safe center;align-items:center;padding:24px;display:flex;overflow-y:auto}.recipe-landing .cook-mode>main h1{max-width:640px;margin:0 0 24px;font:700 32px/1.3 Georgia,Iowan Old Style,serif}.recipe-landing .cook-batches{color:var(--muted);font-size:var(--fs-base);align-items:center;gap:10px;margin:0 0 20px;display:flex}.recipe-landing .step-ingredients{flex-wrap:wrap;justify-content:center;gap:8px;max-width:640px;display:flex}.recipe-landing .step-ingredients span{border-radius:var(--r-sm);background:var(--surface);color:#607069;font-size:var(--fs-base);padding:8px 12px}.recipe-landing .step-ingredients span.optional{color:#8c9791}.recipe-landing .step-ingredients em{font-size:var(--fs-xs);opacity:.75;font-style:normal;font-weight:700}@media (max-width:639px){.recipe-landing .cook-mode{grid-template-rows:52px auto 1fr 76px}.recipe-landing .cook-progress{padding:8px 16px}.recipe-landing .cook-progress>span{font-size:var(--fs-sm);margin-bottom:6px}.recipe-landing .cook-mode>main{padding:12px 16px 20px}.recipe-landing .cook-mode>main h1{margin:0 0 14px;font-size:24px}}.recipe-landing .cook-mode>footer{grid-template-columns:.7fr 1.6fr;gap:10px;width:100%;max-width:640px;margin:0 auto;padding:12px 20px 20px;display:grid}.recipe-landing .cook-mode>footer button,.recipe-landing .cook-mode>footer .done-step{background:var(--surface);font-size:var(--fs-md);border:1px solid #d9ddd7;border-radius:13px;font-weight:800}.recipe-landing .cook-mode>footer button:disabled,.recipe-landing .cook-mode>footer .done-step:disabled{opacity:.4}.recipe-landing .cook-mode>footer .done-step{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .cook-mode.cook-finish>footer,.recipe-landing .pantry-page>footer{max-width:none;padding:16px 20px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#e8e8df;justify-content:center;align-items:stretch;gap:12px;display:flex}.recipe-landing .cook-mode.cook-finish>footer button,.recipe-landing .cook-mode.cook-finish>footer .done-step,.recipe-landing .pantry-page>footer button,.recipe-landing .pantry-page>footer .done-step{border-radius:var(--r-pill);min-height:58px}.recipe-landing .cook-mode.cook-finish>footer button:not(.done-step),.recipe-landing .pantry-page>footer button:not(.done-step){background:var(--surface);flex:none;padding:0 22px}.recipe-landing .cook-mode.cook-finish>footer .done-step,.recipe-landing .pantry-page>footer .done-step{max-width:560px;box-shadow:0 8px 28px var(--green-a35);flex:240px;font-size:18px}.recipe-landing .app-shell:has(.pantry-page){grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:0;padding-bottom:0;display:grid}.recipe-landing .pantry-page{grid-template-rows:1fr auto;min-height:0;display:grid}.recipe-landing .pantry-page-body{text-align:center;min-height:0;padding:8px 20px 28px;overflow-y:auto}.recipe-landing .pantry-page-body>h1{max-width:640px;margin:16px auto 8px;font:700 32px/1.3 Georgia,Iowan Old Style,serif}.recipe-landing .pantry-page .cook-finish-copy{max-width:520px;margin-left:auto;margin-right:auto}.recipe-landing .pantry-page-back{font-size:var(--fs-md);background:0 0;border:0;font-weight:800}.recipe-landing .pantry-page .ingredient-have-actions{justify-content:center}.recipe-landing .pantry-page>footer button,.recipe-landing .pantry-page>footer .done-step{background:var(--surface);font-size:var(--fs-md);border:1px solid #d9ddd7;font-weight:800}.recipe-landing .pantry-page>footer button:disabled,.recipe-landing .pantry-page>footer .done-step:disabled{opacity:.4}.recipe-landing .pantry-page>footer .done-step{border-color:var(--green);background:var(--green);color:var(--on-accent)}@media (min-width:640px){.recipe-landing .recipe-grid,.recipe-landing .grocery-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:768px){.recipe-landing .header-basket{font-size:var(--fs-base);gap:10px;padding:8px 14px;display:flex}.recipe-landing .topbar-pantry,.recipe-landing .topbar-new{gap:6px;padding:0 12px}.recipe-landing .topbar-pantry-label{display:inline}}@media (min-width:900px){.recipe-landing .topbar-new-label{display:inline}}@media (min-width:1100px){.recipe-landing .recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.recipe-landing .food-art{height:224px}.recipe-landing .detail-hero{max-width:720px}.recipe-landing .detail-split{grid-template-columns:.9fr 1.1fr;align-items:start;gap:36px}.recipe-landing .basket-layout{grid-template-columns:1fr 320px;align-items:start}.recipe-landing .basket-checkout{border:var(--hairline);border-radius:var(--r-card);background:var(--surface);padding:18px;position:sticky;top:88px}.recipe-landing .basket-checkout p{font-size:var(--fs-lg);margin:0 0 14px;font-weight:800;display:block}.recipe-landing .basket-checkout p small{color:var(--muted);font-size:var(--fs-sm);margin-top:4px;font-weight:500;display:block}.recipe-landing .checkout-skipped{border-radius:var(--r-md);width:100%;color:var(--green);font-size:var(--fs-sm);text-align:left;background:#f2f6f3;border:0;align-items:baseline;gap:8px;margin-top:10px;padding:11px 13px;font-weight:700;line-height:1.4;display:flex}.recipe-landing .checkout-skipped>span{font-size:10px}.recipe-landing .grocery-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.recipe-landing .recipe-card{transition:none}.recipe-landing .recipe-card:hover{transform:none}.recipe-landing .remove-line .trash-lid,.recipe-landing .ingredient-swap-toggle-arrow{transition:none}.recipe-landing .remove-line:hover .trash-lid,.recipe-landing .remove-line:focus-visible .trash-lid{transform:none}.recipe-landing .catalog-skeleton-search,.recipe-landing .catalog-skeleton-filters,.recipe-landing .catalog-skeleton-row,.recipe-landing .price-pending{animation:none}}.recipe-landing .food-art .food-photo{object-fit:cover}.recipe-landing .detail-photo{border-radius:var(--r-card);background-position:50%;background-size:cover;height:220px;margin-bottom:16px;position:relative;overflow:hidden}.recipe-landing .detail-photo img{object-fit:cover}.recipe-landing .diet-pill{color:var(--green);font-weight:600}.recipe-landing .detail-meta span.recipe-pill{color:#f3f6f4;background:#1f2a24}.recipe-landing .legal-page{box-sizing:border-box;width:min(680px,100%);margin:0 auto;padding:32px 20px 64px}.recipe-landing .legal-home{color:var(--green);font-size:var(--fs-md);font-weight:700;text-decoration:none}.recipe-landing .legal-home:hover{text-decoration:underline}.recipe-landing .legal-head h1{margin:20px 0 6px;font:700 30px/1.2 Georgia,Iowan Old Style,serif}.recipe-landing .legal-updated{color:var(--muted);font-size:var(--fs-base);margin:0 0 28px}.recipe-landing .legal-article{font-size:var(--fs-lg);line-height:1.65}.recipe-landing .legal-article h2{margin:32px 0 10px;font:700 20px/1.3 Georgia,Iowan Old Style,serif}.recipe-landing .legal-article h3{font-size:var(--fs-lg);margin:20px 0 6px;font-weight:700}.recipe-landing .legal-article p,.recipe-landing .legal-article ul{margin:0 0 12px}.recipe-landing .legal-article ul{padding-left:22px;list-style:outside}.recipe-landing .legal-article li{margin-bottom:6px}.recipe-landing .legal-article a{color:var(--green);font-weight:600}.recipe-landing .legal-article table{border-collapse:collapse;width:100%;font-size:var(--fs-md);margin:0 0 16px}.recipe-landing .legal-article th,.recipe-landing .legal-article td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px 8px 0}.recipe-landing .legal-article th{color:var(--muted);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.recipe-landing .legal-foot{border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-base);margin-top:40px;padding-top:16px}.recipe-landing .legal-links a,.recipe-landing .site-foot a{color:inherit;text-decoration:underline}.recipe-landing .site-foot{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:48px 0 0;padding:24px 20px}.recipe-landing .login-legal{margin-top:4px}.recipe-landing .login-legal a{color:inherit;text-decoration:underline}.recipe-landing .landing-hero{max-width:var(--max);margin:18px auto 6px;padding:0 20px}@keyframes hero-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes hero-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@keyframes hero-bob{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-5px)rotate(2deg)}}@keyframes hero-tick{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.recipe-landing .landing-hero-inner{background:radial-gradient(110% 130% at 0 100%,#fff1dc 0%,#fff1dc00 55%),linear-gradient(#fffdf8 0%,#fff8ec 100%);border:1px solid #efdcc4;border-radius:22px;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);align-items:center;gap:28px;padding:30px 32px;animation:.32s both hero-in;display:grid}.recipe-landing .landing-hero h1{letter-spacing:-.03em;color:var(--ink);margin:0;padding-top:8px;font:700 clamp(22px,2.6vw,30px)/1.15 Georgia,Iowan Old Style,serif}.recipe-landing .hero-mascot-side{align-items:flex-start;gap:18px;display:flex}.recipe-landing .hero-mascot-figure{flex:none;width:112px;height:112px;margin-top:6px;animation:3s ease-in-out infinite hero-bob}.recipe-landing .hero-mascot-figure img{object-fit:contain;width:100%;height:100%}.recipe-landing .hero-check-lines{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.recipe-landing .hero-check-lines li{color:var(--ink);font-size:var(--fs-lg);align-items:center;gap:10px;font-weight:700;animation:.36s both hero-in;display:flex}.recipe-landing .hero-check-lines li i{background:var(--green);width:22px;height:22px;color:var(--on-accent);font-size:var(--fs-sm);animation:.42s cubic-bezier(.2,.9,.3,1.3) both hero-tick;animation-delay:inherit;border-radius:50%;flex:none;place-items:center;font-style:normal;font-weight:900;display:grid}.recipe-landing .hero-check-lines li span{font-size:17px}.recipe-landing .hero-check-lines li.is-payoff{color:var(--green);border-top:1px dashed #e9d8bf;margin-top:4px;padding-top:12px;font-size:17px;font-weight:800}.recipe-landing .hero-check-lines li.is-payoff i{background:#f2b34a}.recipe-landing .landing-hero-primary{border-radius:var(--r-pill);background:var(--green);height:42px;color:var(--on-accent);font-size:var(--fs-md);white-space:nowrap;cursor:pointer;border:0;align-items:center;margin-top:18px;padding:0 18px;font-weight:800;transition:background .12s,transform .12s;display:inline-flex}.recipe-landing .landing-hero-primary:hover{background:#135a40;transform:translateY(-1px)}.recipe-landing .hero-demo{border-radius:var(--r-card);background:var(--surface);font-size:var(--fs-base);border:1px solid #e6e3da;align-self:center;overflow:hidden;box-shadow:0 10px 28px #28321e14}.recipe-landing .hero-demo-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;gap:10px;padding:10px 14px;font-weight:800;display:flex}.recipe-landing .hero-demo-head b{color:var(--green)}.recipe-landing .hero-demo ul{margin:0;padding:4px 0 6px;list-style:none}.recipe-landing .hero-demo li{align-items:center;gap:10px;padding:7px 14px;animation:.36s both hero-pop;display:flex}.recipe-landing .hero-demo li>span{text-align:center;flex:none;width:24px;font-size:16px}.recipe-landing .hero-demo li p{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-weight:700;overflow:hidden}.recipe-landing .hero-demo li p small{color:var(--muted);font-size:var(--fs-xs);font-weight:600;display:block}.recipe-landing .hero-demo li b{flex:none;font-weight:800}.recipe-landing .hero-demo li.is-have{opacity:.72}.recipe-landing .hero-demo li.is-have p{-webkit-text-decoration:line-through #b9c4bc;text-decoration:line-through #b9c4bc}.recipe-landing .hero-demo li.is-have b{color:var(--green);font-size:var(--fs-xs)}@media (max-width:820px){.recipe-landing .landing-hero-inner{grid-template-columns:1fr;gap:20px;padding:22px 20px}.recipe-landing .hero-mascot-side{flex-direction:column;gap:6px}.recipe-landing .hero-mascot-figure{width:64px;height:64px;margin:0 0 0 8px}}@media (max-width:639px){.recipe-landing .landing-hero{margin-top:12px;padding:0 12px}.recipe-landing .hero-check-lines li{font-size:var(--fs-md)}}.recipe-landing .generator-page .list-header,.recipe-landing .generator-page .create-modes,.recipe-landing .generator-page .generator-form{width:100%;max-width:640px}.recipe-landing .generator-page .list-header-copy>.cook-finish-copy{max-width:none}.recipe-landing .generator-form{text-align:left;gap:24px;margin:22px auto 0;display:grid}.recipe-landing .generator-face{background:#eef4f0;border-radius:50%;flex:none;place-items:center;width:96px;height:96px;display:inline-grid}.recipe-landing .generator-face img{width:72px;height:72px}.recipe-landing .generator-skel-face{background:linear-gradient(90deg, var(--skeleton) 25%, var(--paper-2) 50%, var(--skeleton) 75%);background-size:200% 100%;animation:1.2s ease-in-out infinite catalog-skeleton-shift}.recipe-landing .generator-skel-title{width:min(100%,280px);height:32px;margin:16px 0 6px}.recipe-landing .generator-skel-sub{width:min(100%,420px);height:16px}.recipe-landing .generator-skel-tabs{pointer-events:none}.recipe-landing .generator-skel-tab{border-radius:var(--r-pill);flex:1;width:auto;height:40px}.recipe-landing .generator-skel-pantry{border-radius:var(--r-card);height:96px}.recipe-landing .generator-skel-field{width:100%;max-width:none;height:48px}.recipe-landing .generator-skel-button{border-radius:var(--r-lg);height:52px}@keyframes generator-thinking{50%{transform:translateY(-4px)}}.recipe-landing .generator-face.is-thinking{animation:1.8s ease-in-out infinite generator-thinking}@media (prefers-reduced-motion:reduce){.recipe-landing .generator-face.is-thinking{opacity:.7;animation:none}}.recipe-landing .generator-block h2{font-size:var(--fs-lg);margin:0 0 10px;font-weight:800}.recipe-landing .generator-pantry-block{gap:12px;display:grid}.recipe-landing .generator-pantry{border:var(--hairline);border-radius:var(--r-card);background:var(--surface);gap:10px;padding:16px;text-decoration:none;display:grid}.recipe-landing .generator-pantry-emoji{flex-wrap:wrap;align-items:center;gap:6px;font-size:26px;line-height:1;display:flex}.recipe-landing .generator-pantry-emoji i{font-style:normal}.recipe-landing .generator-pantry-emoji b{color:var(--muted);font-size:var(--fs-base);font-weight:800}.recipe-landing .generator-pantry-meta{font-size:var(--fs-base);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.recipe-landing .generator-pantry-meta strong{font-size:var(--fs-md)}.recipe-landing .generator-pantry-meta>span{color:var(--green);flex:none;font-weight:800}.recipe-landing .generator-pantry.is-empty{background:#eef4f0;border-style:dashed;gap:4px}.recipe-landing .generator-pantry.is-empty span{color:var(--muted);font-size:var(--fs-base);line-height:1.5}.recipe-landing .generator-picks{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.recipe-landing .generator-pick{border-radius:var(--r-pill);background:var(--green);color:var(--on-accent);font-size:var(--fs-base);border:0;align-items:center;gap:8px;padding:8px 12px;font-weight:800;display:inline-flex}.recipe-landing .generator-search,.recipe-landing .generator-note{border:var(--hairline);border-radius:var(--r-md);background:var(--surface);width:100%;max-width:none;color:var(--ink);font:inherit;font-size:var(--fs-lg);padding:12px 14px}.recipe-landing .generator-note{resize:vertical;line-height:1.5}.recipe-landing .generator-paste{min-height:220px}.recipe-landing .generator-search:focus-visible,.recipe-landing .generator-note:focus-visible{border-color:var(--green);outline:2px solid var(--green);outline-offset:1px}.recipe-landing .generator-matches{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.recipe-landing .generator-matches button{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);font-size:var(--fs-base);align-items:center;gap:6px;padding:8px 12px;font-weight:700;display:inline-flex}.recipe-landing .generator-matches button:disabled{opacity:.4}.recipe-landing .generator-more{color:var(--green);font-size:var(--fs-base);cursor:pointer;background:0 0;border:0;margin-top:10px;padding:0;font-weight:800;text-decoration:underline}.recipe-landing .generator-hint .generator-more{font-size:inherit;margin:0}.recipe-landing .generator-hint{color:var(--muted);font-size:var(--fs-base);margin:10px 0 0;line-height:1.5}.recipe-landing .generator-form>.generator-hint,.recipe-landing .generator-error{text-align:center}.recipe-landing .generator-model select{border:var(--hairline);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-base);border-radius:8px;margin-left:4px;padding:3px 8px}.recipe-landing .generator-error{color:var(--danger);font-size:var(--fs-base);margin:0;font-weight:700}.recipe-landing .generator-error p{margin:0}.recipe-landing .generator-error ul{color:var(--muted);font-size:var(--fs-sm);margin:8px 0 0;padding:0;font-weight:500;line-height:1.5;list-style:none}.recipe-landing .generator-only-have{cursor:pointer;align-items:start;gap:12px;margin:0;display:flex}.recipe-landing .generator-only-have input{width:20px;height:20px;accent-color:var(--green);flex:none;margin:1px 0 0}.recipe-landing .generator-only-have strong{font-size:var(--fs-md);display:block}.recipe-landing .generator-only-have small{color:var(--muted);font-size:var(--fs-sm);margin-top:3px;line-height:1.45;display:block}.recipe-landing .generator-only-have:has(input:checked) strong{color:var(--green)}.recipe-landing .generator-only-have:has(input:disabled){cursor:default;opacity:.6}.recipe-landing .generator-summary{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:0;font-weight:700;line-height:1.5}.recipe-landing .create-modes{grid-template-columns:1fr 1fr;max-width:640px;margin:18px auto 0;padding:0;display:grid;overflow:visible}.recipe-landing .create-modes button{width:100%;min-width:0;font-size:var(--fs-md);flex:none;justify-content:center;align-items:center;gap:7px;padding:10px 12px;display:inline-flex}.recipe-landing .create-modes button:disabled{opacity:.45}@media (max-width:419px){.recipe-landing .create-modes button{font-size:var(--fs-sm);gap:4px;padding:10px 8px}}.recipe-landing .generator-diets{flex-wrap:wrap;max-width:none;margin:0;padding:0;overflow:visible}.recipe-landing .generator-diets button{align-items:center;gap:6px;display:inline-flex}.recipe-landing .generator-submit{border-radius:var(--r-lg);background:var(--green);width:100%;max-width:none;color:var(--on-accent);border:0;justify-self:stretch;padding:16px;font-size:16px;font-weight:800}.recipe-landing .generator-submit:disabled{background:#9db3a7}.recipe-landing .my-generated .dock-row{gap:12px}.recipe-landing .my-generated .dock-row p a{color:inherit;text-decoration:none}.recipe-landing .my-generated .dock-row p a:hover{text-decoration:underline}.recipe-landing .useup-modal{background:var(--paper);border-radius:18px;flex-direction:column;gap:14px;width:min(520px,100%);max-height:min(84vh,720px);padding:20px;display:flex}.recipe-landing .useup-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.recipe-landing .useup-head h2{margin:0;font:700 22px/1.3 Georgia,Iowan Old Style,serif}.recipe-landing .useup-head button{color:var(--muted);background:0 0;border:0;flex:none;font-size:18px}.recipe-landing .useup-count{color:var(--muted);font-size:var(--fs-base);margin:-6px 0 0;font-weight:700}.recipe-landing .useup-body{flex:auto;align-content:start;gap:18px;min-height:0;display:grid;overflow-y:auto}.recipe-landing .useup-body h3{font-size:var(--fs-base);align-items:center;gap:8px;margin:0 0 8px;font-weight:800;display:flex}.recipe-landing .useup-options{flex-wrap:wrap;gap:8px;display:flex}.recipe-landing .useup-options button{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);font-size:var(--fs-base);align-items:center;gap:6px;padding:8px 12px;font-weight:700;display:inline-flex}.recipe-landing .useup-options button.active{border-color:var(--green);background:var(--green);color:var(--on-accent)}.recipe-landing .useup-options button:disabled{opacity:.35}.recipe-landing .own-recipe-note{color:var(--muted);font-size:var(--fs-base);margin:8px 0 0;line-height:1.5}.recipe-landing .own-recipe-actions{grid-template-columns:1fr 1.2fr;gap:10px;max-width:420px;margin-top:10px;display:grid}.recipe-landing .recipe-share{display:contents}.recipe-landing .recipe-share>:not(.share-start){grid-column:1/-1;margin:0}.recipe-landing .share-start,.recipe-landing .own-recipe-edit{border:1px solid var(--green);border-radius:var(--r-md);background:var(--surface);color:var(--green);font-size:var(--fs-base);padding:12px 14px;font-weight:800}.recipe-landing .share-start:not(:disabled):hover,.recipe-landing .own-recipe-edit:hover{color:var(--on-accent)}.recipe-landing .own-recipe-edit{text-align:center;justify-content:center;align-items:center;text-decoration:none;display:flex}.recipe-landing .share-note{color:var(--muted);font-size:var(--fs-base);margin:8px 0 0;line-height:1.5}.recipe-landing .recipe-share.is-on .share-note{margin-top:0}.recipe-landing .share-error{color:var(--danger);font-size:var(--fs-base);margin:8px 0 0;line-height:1.5}.recipe-landing .share-link{gap:8px;margin-top:8px;display:flex}.recipe-landing .share-link input{border:var(--hairline);border-radius:var(--r-sm);background:var(--surface);min-width:0;color:var(--muted);font-size:var(--fs-sm);flex:1;padding:10px 12px}.recipe-landing .share-copy{border:1px solid var(--green);border-radius:var(--r-sm);background:var(--green);color:var(--on-accent);font-size:var(--fs-base);flex:none;padding:10px 14px;font-weight:800}.recipe-landing .share-stop{color:var(--muted);font-size:var(--fs-sm);background:0 0;border:0;justify-self:start;margin-top:8px;padding:0;text-decoration:underline}.recipe-landing .share-start:disabled,.recipe-landing .share-stop:disabled{opacity:.5}.recipe-landing .create-invite{border-top:1px solid var(--line);text-align:center;padding-top:32px}.recipe-landing .create-invite-head{margin-bottom:20px}.recipe-landing .create-invite-head h2{letter-spacing:-.03em;color:var(--ink);margin:0;font:700 clamp(22px,2.4vw,28px)/1.2 Georgia,Iowan Old Style,serif}.recipe-landing .create-invite-head p{max-width:62ch;color:var(--muted);font-size:var(--fs-lg);margin:8px auto 0;line-height:1.5}.recipe-landing .create-invite-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;display:flex}.recipe-landing .create-invite-cta{border-radius:var(--r-pill);background:var(--green);height:42px;color:var(--on-accent);font-size:var(--fs-md);white-space:nowrap;cursor:pointer;border:0;align-items:center;padding:0 20px;font-weight:800;text-decoration:none;transition:background .12s;display:inline-flex}.recipe-landing .create-invite-cta:hover{background:#135a40}.recipe-landing .create-invite-secondary{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);height:42px;color:var(--ink);font-size:var(--fs-md);white-space:nowrap;align-items:center;padding:0 20px;font-weight:800;text-decoration:none;transition:border-color .12s,color .12s;display:inline-flex}.recipe-landing .create-invite-secondary:hover{border-color:var(--green-line);color:var(--green)}.recipe-landing .create-invite-ways{text-align:left;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.recipe-landing .create-invite-ways li{border:var(--hairline);border-radius:var(--r-card);background:var(--surface);grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:9px;padding:16px;display:grid}.recipe-landing .create-invite-ways li>span{font-size:20px;line-height:1}.recipe-landing .create-invite-ways li b{font-size:var(--fs-md);color:var(--ink);font-weight:800}.recipe-landing .create-invite-ways li small{color:var(--muted);font-size:var(--fs-base);grid-column:1/-1;margin-top:8px;line-height:1.45}@media (max-width:639px){.recipe-landing .create-invite-head h2{font-size:24px}}.recipe-landing button:not(:disabled):active,.recipe-landing .back-button:active{transform:translateY(1px)}.recipe-landing .detail-actions .cook-button:not(:disabled):hover,.recipe-landing .recipe-rows .cook-button:not(:disabled):hover,.recipe-landing .ingredient-have-actions button.primary:not(:disabled):hover,.recipe-landing .basket-confirm button.primary:not(:disabled):hover,.recipe-landing .removed-note-actions button.primary:not(:disabled):hover,.recipe-landing .generator-submit:not(:disabled):hover,.recipe-landing .tour-next:not(:disabled):hover,.recipe-landing .cook-mode>footer .done-step:not(:disabled):hover,.recipe-landing .pantry-page>footer .done-step:not(:disabled):hover,.recipe-landing .buy-modal-actions .secondary.is-primary:hover,.recipe-landing .buy-primary:not(.is-secondary):not(:disabled):hover,.recipe-landing .add-button:not(:disabled):hover,.recipe-landing .main-buy:not(:disabled):hover,.recipe-landing .header-basket:hover,.recipe-landing .topbar-signin:hover,.recipe-landing .login-submit:not(:disabled):hover,.recipe-landing .share-copy:not(:disabled):hover,.recipe-landing .share-start:not(:disabled):hover,.recipe-landing .own-recipe-edit:hover,.recipe-landing .generator-pick:not(:disabled):hover,.recipe-landing .inline-edit-save:not(:disabled):hover,.recipe-landing .cheaper-setup-apply-all:not(:disabled):hover{border-color:var(--green-deep);background:var(--green-deep)}.recipe-landing .basket-confirm button.danger:not(:disabled):hover,.recipe-landing .reset-confirm:not(:disabled):hover{border-color:var(--danger-deep);background:var(--danger-deep)}.recipe-landing .empty-state .quiet:not(:disabled):hover,.recipe-landing .buy-modal-actions .quiet:not(:disabled):hover,.recipe-landing .reset-actions .quiet:not(:disabled):hover,.recipe-landing .tour-quiet:not(:disabled):hover{color:var(--ink)}.recipe-landing .generator-more:not(:disabled):hover{color:var(--green-deep)}.recipe-landing .buy-modal-actions .secondary:not(.is-primary):hover,.recipe-landing .topbar-new:hover,.recipe-landing .topbar-pantry:hover,.recipe-landing .ingredient-reset:not(:disabled):hover,.recipe-landing .product-peek-close:hover,.recipe-landing .basket-mark-purchased:not(:disabled):hover,.recipe-landing .cheaper-swap-undo:not(:disabled):hover,.recipe-landing .inline-edit-cancel:not(:disabled):hover{border-color:var(--green)}.recipe-landing .pantry-scan-pick:has(input:not(:disabled)):hover{border-color:var(--green)}.recipe-landing .filter-pill:not(:has(:checked)):hover{border-color:var(--green)}.recipe-landing .buy-modal .buy-primary.is-secondary:hover,.recipe-landing .buy-relaunch:hover,.recipe-landing .buy-unsee:hover,.recipe-landing .skipped-toggle:hover,.recipe-landing .cheaper-setup-hint:hover,.recipe-landing .alt-fold-toggle:hover,.recipe-landing .tour-link:hover,.recipe-landing .login-link:hover,.recipe-landing .price-deal-chip:hover,.recipe-landing .checkout-skipped:hover,.recipe-landing .cheaper-swap-apply:not(:disabled):hover{color:var(--green-deep)}.recipe-landing .share-stop:not(:disabled):hover,.recipe-landing .cheaper-setup-close:hover,.recipe-landing .ingredient-alt-always:hover,.recipe-landing .remove-grocery:hover{color:var(--ink)}.recipe-landing .ingredient-alt-toggle:hover{color:var(--green-deep)}.recipe-landing .pantry-page-back:hover{color:var(--green)}.recipe-landing .account-item-danger:hover{color:var(--danger-deep)}@media (hover:none){.recipe-landing input,.recipe-landing select,.recipe-landing textarea{font-size:16px!important}}@media (max-width:560px){.recipe-landing .product-tile{grid-template-columns:64px minmax(0,1fr)}.recipe-landing .product-tile-actions{grid-column:1/-1;justify-content:flex-end}.recipe-landing .ingredient-edit-heading,.recipe-landing .ingredient-edit-search{flex-wrap:wrap}}.recipe-landing .recipe-editor .pantry-page-body{text-align:left}.recipe-landing .recipe-editor .list-header{margin-bottom:14px}.recipe-landing .ed-status{max-width:var(--max);min-height:20px;color:var(--muted);font-size:var(--fs-sm);margin:0 auto 12px;font-weight:700}.recipe-landing .ed-status.is-saved{color:var(--green)}.recipe-landing .ed-status.is-error{color:var(--danger-2)}.recipe-landing .ed-skeleton{max-width:var(--max);gap:12px;margin:12px auto 0;display:grid}.recipe-landing .ed-skel-block{border-radius:var(--r-card);height:96px}.recipe-landing .ed-skel-block:first-child{height:140px}.recipe-landing .ed-rows{max-width:var(--max);gap:22px;margin:0 auto;display:grid}.recipe-landing .ed-card{border:var(--hairline);border-radius:var(--r-card);background:var(--surface)}.recipe-landing .ed-section{gap:10px;display:grid}.recipe-landing .ed-section>h2{margin:0;font:700 20px/1.25 Georgia,Iowan Old Style,serif}.recipe-landing .ed-empty{color:var(--muted);font-size:var(--fs-base);margin:0;padding:14px 16px;line-height:1.5}.recipe-landing .ed-add{border:1px solid var(--green);border-radius:var(--r-pill);background:var(--surface);width:fit-content;color:var(--green);font-size:var(--fs-md);padding:9px 16px;font-weight:800}.recipe-landing .ed-add:hover{background:var(--green-tint)}.recipe-landing .ed-meta-fields{gap:14px;padding:16px;display:grid}.recipe-landing .ed-field{gap:5px;display:grid}.recipe-landing .ed-label{color:var(--muted);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:800}.recipe-landing .ed-row{flex-wrap:wrap;gap:8px;display:flex}.recipe-landing .ed-row>.ed-grow,.recipe-landing .ed-grow{flex:160px;min-width:0}.recipe-landing .ed-emoji .inline-edit-emoji{width:68px}.recipe-landing .ed-servings .inline-edit-field{width:92px}.recipe-landing .ed-qty{flex:0 0 74px}.recipe-landing .ed-unit{flex:0 0 84px}.recipe-landing .ed-link{color:var(--muted);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;line-height:1.4;display:flex}.recipe-landing .ed-link.is-linked{color:var(--green);font-weight:700}.recipe-landing .ed-link>button{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-size:var(--fs-xs);padding:2px 8px;font-weight:700}.recipe-landing .ed-hints{flex-wrap:wrap;gap:6px;display:inline-flex}.recipe-landing .ed-hints button{border:1px solid var(--green-line);border-radius:var(--r-pill);background:var(--green-wash);color:var(--green);font-size:var(--fs-sm);align-items:center;gap:5px;padding:4px 10px;font-weight:700;display:inline-flex}.recipe-landing .ed-hints button:hover{border-color:var(--green);background:var(--green-tint)}.recipe-landing .ed-ing-stack,.recipe-landing .ed-step-fields{gap:10px;display:grid}.recipe-landing .ed-uses{gap:6px;display:grid}.recipe-landing .ed-actions{justify-content:flex-end;gap:8px;display:flex}.recipe-landing .ed-actions button{border-radius:var(--r-sm);font-size:var(--fs-base);padding:9px 16px;font-weight:800}.recipe-landing .ed-move{border:var(--hairline);border-radius:var(--r-pill);background:var(--surface);flex:none;display:inline-flex;overflow:hidden}.recipe-landing .ed-move button{width:30px;height:30px;color:var(--muted);font-size:var(--fs-md);background:0 0;border:0;padding:0}.recipe-landing .ed-move button+button{border-left:var(--hairline)}.recipe-landing .ed-move button:hover:not(:disabled){background:var(--green-tint);color:var(--green)}.recipe-landing .ed-move button:disabled{opacity:.35}.recipe-landing .ed-confirm{color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;flex:none;align-items:center;font-weight:800}.recipe-landing .ed-list{overflow:hidden}.recipe-landing .ed-ing-row{border-bottom:1px solid var(--skeleton);align-items:center;gap:8px;padding:4px 10px 4px 4px;display:flex}.recipe-landing .ed-ing-row:last-child{border-bottom:0}.recipe-landing .ed-ing-row-main{border-radius:var(--r-md);min-width:0;min-height:52px;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:8px 10px;display:flex}.recipe-landing .ed-ing-row-main:hover{background:var(--green-wash)}.recipe-landing .ed-ing-emoji{text-align:center;flex:none;width:28px;font-size:20px}.recipe-landing .ed-ing-name{min-width:0;font-size:var(--fs-lg);flex:1;font-weight:700}.recipe-landing .ed-ing-name small{color:var(--muted);font-size:var(--fs-sm);font-weight:400}.recipe-landing .ed-ing-name small.ed-unpriced{color:var(--warm)}.recipe-landing .ed-ing-amount{color:var(--muted);font-size:var(--fs-md);font-variant-numeric:tabular-nums;flex:none}.recipe-landing .ed-pencil{color:var(--muted-faint);font-size:var(--fs-md);opacity:0;flex:none}.recipe-landing .ed-ing-row-main:hover .ed-pencil,.recipe-landing .ed-step-main:hover .ed-pencil,.recipe-landing .ed-header-card:hover .ed-pencil,.recipe-landing .ed-ing-row-main:focus-visible .ed-pencil,.recipe-landing .ed-step-main:focus-visible .ed-pencil,.recipe-landing .ed-header-card:focus-visible .ed-pencil{color:var(--green);opacity:1}@media (hover:none){.recipe-landing .ed-pencil{opacity:.7}}.recipe-landing .ed-steps{gap:10px;display:grid}.recipe-landing .ed-step-row{border:var(--hairline);border-radius:var(--r-lg);background:var(--surface);align-items:flex-start;gap:12px;padding:10px 12px 10px 14px;display:flex}.recipe-landing .ed-step-number{background:var(--green);width:28px;height:28px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;margin-top:6px;font:700 13px Georgia,serif;display:grid}.recipe-landing .ed-step-main{border-radius:var(--r-md);min-width:0;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;flex:1;padding:6px 28px 6px 6px;display:block;position:relative}.recipe-landing button.ed-step-main:hover{background:var(--green-wash)}.recipe-landing .ed-step-main>p{font-size:var(--fs-lg);margin:0 0 6px;line-height:1.5}.recipe-landing .ed-step-main>small{color:var(--muted);font-size:var(--fs-sm);line-height:1.5;display:block}.recipe-landing .ed-step-main>.ed-pencil{position:absolute;top:8px;right:8px}.recipe-landing .ed-step-tools{flex:none;align-items:center;gap:8px;margin-top:4px;display:flex}.recipe-landing .ed-header-card{color:var(--ink);font:inherit;text-align:left;cursor:pointer;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.recipe-landing .ed-header-card:hover{border-color:var(--green-line);background:var(--green-wash)}.recipe-landing .ed-header-emoji{flex:none;font-size:40px;line-height:1}.recipe-landing .ed-header-copy{flex:1;gap:4px;min-width:0;display:grid}.recipe-landing .ed-header-copy>strong{font:700 24px/1.25 Georgia,Iowan Old Style,serif}.recipe-landing .ed-header-copy>span{color:var(--ink-soft);font-size:var(--fs-lg)}.recipe-landing .ed-header-copy>small{color:var(--muted);font-size:var(--fs-sm)}.recipe-landing .ed-header-copy>em{color:var(--muted);font-size:var(--fs-md);margin-top:6px;font-style:normal;line-height:1.5}@media (max-width:639px){.recipe-landing .ed-ing-row,.recipe-landing .ed-step-row{flex-wrap:wrap}.recipe-landing .ed-ing-row-main{flex-basis:100%}.recipe-landing .ed-ing-row>.ed-move,.recipe-landing .ed-step-tools{margin-left:auto}.recipe-landing .ed-header-emoji{font-size:32px}.recipe-landing .ed-header-copy>strong{font-size:20px}}.recipe-landing .connect-page{text-align:left;max-width:640px;margin:0 auto}.recipe-landing .connect-block{margin-top:24px}.recipe-landing .connect-block>h2{margin:0 0 8px;font:700 18px/1.3 Georgia,Iowan Old Style,serif}.recipe-landing .connect-block>p{color:var(--muted);font-size:var(--fs-md);margin:0 0 8px;line-height:1.55}.recipe-landing .connect-steps{color:var(--muted);font-size:var(--fs-md);margin:0;padding-left:20px;line-height:1.6}.recipe-landing .connect-steps>li+li{margin-top:4px}.recipe-landing .connect-hint{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:10px 0 0}.recipe-landing .connect-hint a{color:inherit;text-decoration:underline}
