@font-face{font-family:IBM Plex Sans;src:url(/_astro/plex-sans.BD64o3ke.woff2)format("woff2");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans Condensed;src:url(/_astro/plex-cond-400.B0rDGKNo.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans Condensed;src:url(/_astro/plex-cond-500.DJ0tU6HQ.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans Condensed;src:url(/_astro/plex-cond-600.DtYjl7Pn.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans Condensed;src:url(/_astro/plex-cond-700.CMJ8g-So.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/_astro/geist-mono.pyAoGB9p.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{color-scheme:dark;--bg:#07101b;--surface:#101d2db8;--line:#deecff24;--line-strong:#deecff40;--text:#f4f8fff7;--body:#eff6ffeb;--muted:#dae5f4c2;--soft:#cbd9ec94;--accent:#8edbff;--signal:#8fe46b;--font-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-heading:"IBM Plex Sans Condensed", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-sheet:cubic-bezier(.32, .72, 0, 1);--shell:72rem;--gutter:1.5rem;--header:3.9rem}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;max-width:100%;scroll-padding-top:calc(var(--header) + 1.5rem);font-size:1.125em;overflow-x:clip}body{background:var(--bg);max-width:100%;min-height:100dvh;color:var(--text);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;line-height:1.5;overflow-x:clip}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.02em;text-wrap:balance;margin:0}p,ul,ol,dl,dd{margin:0}a{color:inherit}button,input{font:inherit;color:inherit}button{touch-action:manipulation}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--bg);color:var(--text);transition:transform .16s var(--ease-out);border:2px solid;padding:.65rem .85rem;font-weight:600;text-decoration:none;position:fixed;top:.75rem;left:.75rem;transform:translateY(calc(-100% - 1rem))}.skip-link:focus-visible{transform:translateY(0)}.backdrop{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.backdrop-glow{aspect-ratio:1;filter:blur(14px);background:radial-gradient(circle,#4894d230 0%,#20537f14 38%,#0000 70%);border-radius:50%;width:min(58rem,82vw);position:absolute;inset:-20rem -12rem auto auto}.backdrop-grid{background-image:linear-gradient(#d8e9ff09 1px,#0000 1px),linear-gradient(90deg,#d8e9ff09 1px,#0000 1px);background-size:88px 88px;position:absolute;inset:0;mask-image:linear-gradient(#000 0,#000000b8 38rem,#0000 82rem)}.page{isolation:isolate;flex-direction:column;min-height:100dvh;display:flex;position:relative}.shell{width:100%;max-width:var(--shell);padding:0 max(var(--gutter), env(safe-area-inset-right)) 0 max(var(--gutter), env(safe-area-inset-left));margin:0 auto}main{flex:1}#main-content:focus{outline:none}.eyebrow,.label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:560;line-height:1.4}.eyebrow{color:var(--accent)}.eyebrow a{align-items:center;min-height:1.5rem;text-decoration:none;display:inline-flex}.label{color:var(--soft)}.inline-link,.prose a,.lead a,.step-text a,.ingredient-name a,.slide-text a,.note a{color:var(--text);text-underline-offset:.2em;text-decoration:underline #8edbff80;transition:text-decoration-color .15s}.link-button{min-height:2.5rem;color:var(--muted);text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;padding:0 .25rem;font-size:.78rem;text-decoration:underline #8edbff80}.button{border:1px solid var(--line-strong);min-height:2.75rem;color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s var(--ease-out), border-color .15s var(--ease-out), color .15s var(--ease-out), transform .16s var(--ease-out);background:#ffffff05;justify-content:space-between;align-items:center;gap:.9rem;padding:.62rem .85rem;font-size:.72rem;font-weight:560;text-decoration:none;display:inline-flex}.button span{color:var(--accent)}.button:active{transform:scale(.97)}.button.primary{color:var(--text);background:#8edbff1f;border-color:#8edbff8c}.button[aria-expanded=true]{border-color:var(--accent);color:var(--text);background:#8edbff33}.button:disabled{opacity:.4;cursor:default;transform:none}.note,.prose blockquote,.lead blockquote{border:1px solid var(--line-strong);background:linear-gradient(135deg, #8edbff1a, transparent 48%), var(--surface);color:var(--muted);margin:0;padding:.95rem 1.15rem;font-size:.92rem;line-height:1.6}.note>*+*,.prose>*+*,.prose blockquote>*+*{margin-top:.75rem}.prose{max-width:64ch;color:var(--muted);line-height:1.78}.prose ul,.prose ol{padding-left:1.35rem}.prose li+li{margin-top:.4rem}.prose li::marker{color:var(--accent);font-family:var(--font-mono);font-size:.8rem}@media (hover:hover) and (pointer:fine){.inline-link:hover,.prose a:hover,.lead a:hover,.step-text a:hover,.ingredient-name a:hover,.slide-text a:hover,.note a:hover,.link-button:hover{color:var(--text);text-decoration-color:var(--accent)}.button:hover{color:var(--text);border-color:#e3efff73}.button.primary:hover{border-color:var(--accent);background:#8edbff33}}.site-header{z-index:50;-webkit-backdrop-filter:blur(12px);background:#03050c99;border-bottom:1px solid #ffffff1f;position:sticky;top:0}.site-header-inner{padding-top:max(.875rem, env(safe-area-inset-top));justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.875rem;display:flex}.site-identity{color:#fff;text-decoration:none;display:block}.site-identity-meta{color:#ffffffbd;font-size:10px;font-weight:500;line-height:.75rem;display:block}.site-identity-name{font-family:var(--font-heading);letter-spacing:-.025em;font-weight:600;line-height:1.25rem;display:block}.site-nav{color:#ffffffc7;align-items:center;gap:1.25rem;font-size:.875rem;font-weight:500;display:flex}.site-nav a{align-items:center;min-height:2.25rem;text-decoration:none;display:inline-flex}.site-nav a[aria-current=page]{color:#fff}.site-footer{color:#ecf3ffd1;background:#050913;margin-top:5rem;padding:3rem 0;font-size:.875rem}.site-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;display:flex}.site-footer a{align-items:center;min-height:1.5rem;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.site-nav a:hover,.site-footer a:hover{color:#fff}}.finder{padding:clamp(2.25rem,5vw,4rem) 0 0}.finder-input{border:0;border-bottom:1px solid var(--line-strong);width:100%;color:var(--text);caret-color:var(--accent);font-family:var(--font-heading);letter-spacing:-.045em;text-overflow:ellipsis;-webkit-appearance:none;appearance:none;background:0 0;border-radius:0;margin-top:.5rem;padding:.12em 0 .2em;font-size:clamp(1.7rem,9.2vw,5.1rem);font-weight:600;line-height:1;transition:border-color .15s;display:block}.finder-input::placeholder{color:#cbd9ec57;opacity:1}.finder-input:focus-visible{border-bottom-color:var(--accent);box-shadow:0 1px 0 var(--accent);outline:none}.finder-input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.finder-hint{color:var(--soft);margin-top:.7rem;font-size:.78rem}.resume{background:#8edbff12;border:1px solid #8edbff8c;margin-top:2rem;padding:.9rem 1rem}.resume .label{color:var(--accent);font-family:var(--font-mono);letter-spacing:.12em}.resume-list{flex-wrap:wrap;gap:0 2rem;margin-top:.35rem;padding:0;list-style:none;display:flex}.resume-list a{align-items:baseline;gap:.75rem;min-height:2.5rem;padding-top:.5rem;font-weight:500;text-decoration:none;display:inline-flex}.resume-place{color:var(--accent);font-family:var(--font-mono);letter-spacing:.08em;font-size:.66rem}.jump{display:none}.jump ul{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter);overscroll-behavior-x:contain;scroll-padding-inline:var(--gutter);scroll-snap-type:x proximity;scrollbar-width:none;gap:.3rem;list-style:none;display:flex;overflow-x:auto}.jump ul::-webkit-scrollbar{display:none}.jump li{scroll-snap-align:start;flex:none}.jump a{border:1px solid var(--line);min-height:2.75rem;color:var(--muted);white-space:nowrap;background:#ffffff06;align-items:baseline;gap:.6rem;padding:.7rem .8rem;font-size:.8rem;line-height:1.3;text-decoration:none;display:flex}.jump a span,.directory-heading span{color:var(--soft);font-family:var(--font-mono);letter-spacing:.04em;font-size:.64rem;font-weight:400}.directory{columns:3 16rem;column-gap:clamp(2rem,4vw,3.75rem);padding:clamp(2.25rem,4.5vw,3.5rem) 0 1rem}.directory-section{break-inside:avoid;scroll-margin-top:calc(var(--header) + 1.5rem);padding-bottom:2.4rem}.directory-section.tall{break-inside:auto}.directory-section.tall .directory-heading{break-after:avoid}.directory-section.tall .directory-list li{break-inside:avoid}.directory-heading{border-bottom:1px solid var(--line-strong);letter-spacing:-.02em;justify-content:space-between;align-items:baseline;gap:.75rem;padding-bottom:.55rem;font-size:1.3rem;font-weight:600;line-height:1.15;display:flex}.directory-list{padding:0;list-style:none}.directory-list li{border-bottom:1px solid var(--line)}.directory-list a{min-height:2.6rem;color:var(--body);flex-direction:column;justify-content:center;padding:.5rem .5rem .5rem 0;text-decoration:none;transition:color .12s;display:flex}.recipe-name{text-wrap:pretty;font-size:.96rem;font-weight:500;line-height:1.35}.empty{color:var(--muted);padding:2.5rem 0 3rem}@media (hover:hover) and (pointer:fine){.directory-list a:hover{color:#fff}.directory-list li:has(a:hover){border-bottom-color:var(--accent)}.jump a:hover{border-color:var(--line-strong);color:var(--text)}}.recipe-header{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.25rem clamp(1.5rem,4vw,3rem);padding:clamp(2rem,4.5vw,3.5rem) 0 clamp(1.5rem,3vw,2.25rem);display:grid}.recipe-heading{min-width:0}.recipe-title{letter-spacing:-.05em;max-width:14ch;margin-top:.45rem;font-size:clamp(3rem,6.6vw,5.6rem);font-weight:600;line-height:.9}.recipe-title.long{letter-spacing:-.045em;max-width:18ch;font-size:clamp(2.5rem,5vw,4.2rem);line-height:.94}.recipe-title.longer{letter-spacing:-.035em;max-width:24ch;font-size:clamp(2.05rem,3.7vw,3.1rem);line-height:1}.recipe-photo{aspect-ratio:3/2;background:var(--surface);outline-offset:-1px;outline:1px solid #ffffff1a;margin:0;position:relative}.recipe-photo img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}@media (width>=58rem){.recipe-header.has-photo{grid-template-columns:minmax(0,1fr) minmax(16rem,24rem);grid-template-areas:"heading photo""action photo""facts photo""lead lead";align-items:start}.recipe-header.has-photo .recipe-heading{grid-area:heading}.recipe-header.has-photo .recipe-photo{aspect-ratio:auto;grid-area:photo;align-self:stretch;min-height:14rem}.recipe-header.has-photo .recipe-action{flex-direction:row;grid-area:action;align-items:center;gap:1rem}.recipe-header.has-photo .facts{grid-area:facts}.recipe-header.has-photo .lead{grid-area:lead;margin-top:.5rem}}.recipe-action{flex-direction:column;align-items:flex-end;gap:.15rem;display:flex}.cook-button{min-width:15rem;min-height:3.25rem;padding-inline:1.1rem;font-size:.78rem}.cook-button b{font-weight:600}.facts{flex-wrap:wrap;grid-column:1/-1;gap:.6rem clamp(1.5rem,4vw,3rem);padding:0;display:flex}.facts>div{color:var(--body);align-items:baseline;gap:.6rem;font-size:.92rem;line-height:1.4;display:flex}.facts dt{color:var(--accent);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.64rem}.lead{grid-column:1/-1;max-width:44rem}.lead p{color:var(--muted);text-wrap:pretty;font-size:1.05rem;line-height:1.62}.lead>*+*{margin-top:.9rem}.lead>*+blockquote,.lead>blockquote+*,.prose>*+blockquote,.prose>blockquote+*{margin-top:1.4rem}.lead blockquote p{font-size:.86rem;line-height:1.6}.recipe-grid{gap:3rem;padding:clamp(1.75rem,3.5vw,2.75rem) 0 2rem;display:grid}@media (width>=58rem){.recipe-grid:not(.single){grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);align-items:start;gap:clamp(3rem,6vw,5.5rem)}.recipe-grid:not(.single) .column-ingredients{top:calc(var(--header) + 1.5rem);max-height:calc(100dvh - var(--header) - 2.5rem);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;padding-right:.5rem;position:sticky;overflow-y:auto}}.recipe-grid.single{max-width:46rem}.block-heading{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:1rem;min-height:calc(3.1rem + 1px);padding-bottom:.6rem;display:flex}.block-heading h2,.extra h2{letter-spacing:-.025em;font-size:1.5rem;font-weight:600;line-height:1.12}.scale{border:0;grid-template-columns:repeat(4,2.75rem);gap:.25rem;min-width:0;margin:0;padding:0;display:grid}.scale label{border:1px solid var(--line-strong);min-height:2.5rem;color:var(--muted);font-family:var(--font-mono);cursor:pointer;transition:border-color .15s var(--ease-out), background-color .15s var(--ease-out), color .15s var(--ease-out);background:#ffffff05;place-items:center;font-size:.74rem;font-weight:560;display:grid;position:relative}.scale input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.scale label:has(input:checked){color:var(--text);background:#8edbff1f;border-color:#8edbff8c}.scale label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.scale-note{color:var(--soft);font-family:var(--font-mono);letter-spacing:.035em;margin-top:.7rem;font-size:.66rem;line-height:1.6}.group-label{color:var(--accent);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin:1.5rem 0 0;padding-bottom:.45rem;font-size:.66rem;font-weight:560;line-height:1.4}.ingredient-groups,.mention-list{grid-template-columns:auto auto minmax(0,1fr);display:grid}.mention-list{grid-template-columns:auto minmax(0,1fr)}.ingredient-list,.mention-list{padding:0;list-style:none}.ingredient-group,.ingredient-list,.ingredient-list li,.ingredient,.mention-list li{grid-template-columns:subgrid;grid-column:1/-1;display:grid}.group-label{grid-column:1/-1}.ingredient-list li,.mention-list li{border-bottom:1px solid var(--line)}.ingredient{min-height:2.75rem;color:var(--body);cursor:pointer;transition:color .15s var(--ease-out);align-items:baseline;padding:.62rem 0;font-size:.96rem;line-height:1.45}.check-input{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.check-box{width:1.05rem;height:1.05rem;transition:border-color .15s var(--ease-out), background-color .15s var(--ease-out);background:#ffffff05;border:1px solid #e7f2ff80;align-self:start;margin:.2rem .8rem 0 0;position:relative}.check-box:after{content:"";border-right:1.5px solid var(--bg);border-bottom:1.5px solid var(--bg);opacity:0;width:.3rem;height:.55rem;transition:opacity .15s var(--ease-out), transform .15s var(--ease-out);position:absolute;top:.1rem;left:.3rem;transform:rotate(45deg)scale(.95)}.ingredient-amount{text-align:right;white-space:nowrap;padding-right:.45rem}.ingredient-name{text-wrap:pretty}.ingredient-name.wide{grid-column:3}.mention-list .ingredient-name.wide{grid-column:2}.ingredient:has(.check-input:checked),.ingredient:has(.check-input:checked) .qty{color:var(--soft)}.ingredient:has(.check-input:checked) .check-box{border-color:var(--signal);background:var(--signal)}.ingredient:has(.check-input:checked) .check-box:after{opacity:1;transform:rotate(45deg)scale(1)}.ingredient:has(.check-input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.qty{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.qty.scaled{color:var(--signal)}.untick{margin-top:.4rem}.column-ingredients .note{margin-top:.9rem}.extra{margin-top:2.6rem}.extra h2{border-bottom:1px solid var(--line-strong);padding-bottom:.6rem}.extra .prose{margin-top:.9rem}.phase{letter-spacing:-.02em;margin-top:2.4rem;font-size:1.25rem;font-weight:600;line-height:1.15}.block-heading+.phase,.scale-note+.phase{margin-top:1.4rem}.task{color:var(--accent);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-top:1.5rem;font-size:.66rem;font-weight:560;line-height:1.4}.steps{padding:0;list-style:none}.task+.steps,.phase+.steps{margin-top:.35rem}.step{border-bottom:1px solid var(--line);grid-template-columns:2.1rem minmax(0,1fr);align-items:baseline;gap:.6rem;padding:.95rem 0;display:grid}.step-number{color:var(--accent);font-family:var(--font-mono);letter-spacing:.08em;font-size:.7rem}.step-text{max-width:62ch;color:var(--body);text-wrap:pretty;font-size:1.02rem;line-height:1.68}.step-note{border-bottom:1px solid var(--line);padding:.95rem 0 .95rem 2.7rem}.timer-chip{border:0;border-bottom:1px dashed var(--accent);color:var(--text);white-space:nowrap;cursor:pointer;transition:background-color .15s var(--ease-out);background:#8edbff1a;padding:0 .12em;font-weight:600;line-height:1.25;display:inline-block}.timer-chip:active{background:#8edbff4d}@media (hover:hover) and (pointer:fine){.timer-chip:hover{background:#8edbff38}}.method-end{margin-top:1.75rem}.alike{margin-top:.4rem;padding:0;list-style:none}.alike li{border-bottom:1px solid var(--line)}.alike a{min-height:2.75rem;color:var(--body);justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem 0;text-decoration:none;transition:color .12s;display:flex}.alike-title{text-wrap:pretty;font-size:.96rem;font-weight:500;line-height:1.35}.alike-category,.pager-category{color:var(--soft);font-family:var(--font-mono);letter-spacing:.04em;flex:none;font-size:.64rem}.recipe-pager{border-top:1px solid var(--line-strong);grid-template-columns:1fr 1fr;gap:1rem clamp(1.5rem,4vw,3rem);margin-top:clamp(2.75rem,6vw,4.5rem);padding:1.5rem 0 clamp(2.5rem,5vw,3.5rem);display:grid}.pager-link{min-height:2.75rem;color:var(--body);flex-direction:column;gap:.35rem;text-decoration:none;transition:color .12s;display:flex}.pager-next{text-align:right;grid-column:2;align-items:flex-end}.pager-title{letter-spacing:-.015em;text-wrap:balance;font-size:1.15rem;font-weight:600;line-height:1.25}@media (hover:hover) and (pointer:fine){.alike a:hover,.pager-link:hover{color:#fff}.alike li:has(a:hover){border-bottom-color:var(--accent)}}@media (width<=40rem){.alike a{flex-direction:column;gap:.2rem}.pager-title{font-size:1rem}}.timer-tray{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));z-index:60;gap:.32rem;width:min(22rem,100vw - 2rem);display:grid;position:fixed}.cook .timer-tray{bottom:calc(6.25rem + env(safe-area-inset-bottom))}.timer{border:1px solid var(--line-strong);transition:opacity .2s var(--ease-out), transform .2s var(--ease-out);background:#09101bf5;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.5rem .5rem .5rem .85rem;display:grid;box-shadow:0 18px 44px #0006;@starting-style{opacity:0;transform:translateY(.5rem)}}.timer-label{color:var(--soft);font-family:var(--font-mono);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.64rem;overflow:hidden}.timer-clock{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:560}.timer-stop{border:1px solid var(--line-strong);min-width:2.75rem;min-height:2.5rem;color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .16s var(--ease-out);background:#ffffff05;padding:0 .7rem;font-size:.66rem;font-weight:560}.timer-stop:active{transform:scale(.97)}.timer.done{border-color:var(--signal);background:#142c18fa;animation:1s steps(2,jump-none) infinite timer-ring}.timer.done .timer-clock{color:var(--signal)}@keyframes timer-ring{50%{outline:3px solid var(--signal);outline-offset:2px}}.cook{background:var(--bg);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--text);border:0;margin:0;padding:0}.cook[open]{transition:opacity .2s var(--ease-out), transform .2s var(--ease-out);grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;@starting-style{opacity:0;transform:scale(.98)}}.cook::backdrop{background:var(--bg)}.cook-bar{padding:max(.7rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) .7rem max(1rem, env(safe-area-inset-left));background:#03050c99;align-items:center;gap:.5rem;display:flex}.cook-heading{flex:1;min-width:0}.cook-title{font-family:var(--font-heading);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.25;overflow:hidden}.cook-count{color:var(--accent);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-variant-numeric:tabular-nums;gap:1rem;font-size:.66rem;display:flex}.cook-awake{color:var(--soft)}.cook-progress{background:var(--line);height:2px}.cook-progress span{background:var(--accent);transform-origin:0;height:100%;transition:transform .22s var(--ease-out);display:block}.cook[data-motion=none] .cook-progress span{transition:none}.cook-body{min-height:0;display:grid;position:relative}.cook-stage{overscroll-behavior:contain;touch-action:pan-y;background-image:linear-gradient(#d8e9ff08 1px,#0000 1px),linear-gradient(90deg,#d8e9ff08 1px,#0000 1px);background-size:88px 88px;align-content:safe center;min-height:0;padding:clamp(1.25rem,5vw,4rem);display:grid;overflow-y:auto}.cook-stage:focus{outline:none}.cook:has(.timer) .cook-stage{padding-bottom:7rem}.slide{max-width:54rem;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out)}[data-motion=next] .slide{@starting-style{opacity:0;transform:translate(1.25rem)}}[data-motion=back] .slide{@starting-style{opacity:0;transform:translate(-1.25rem)}}.slide-context{color:var(--soft);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;gap:.15rem 1rem;margin-bottom:.9rem;font-size:.68rem;font-weight:560;display:flex}.slide-number{color:var(--accent);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.9rem;font-size:.78rem;font-weight:560}.slide-text{text-wrap:pretty;font-size:clamp(1.35rem,1.5vw + .95rem,2.3rem);line-height:1.34}.slide.medium .slide-text{font-size:clamp(1.12rem,.9vw + .9rem,1.6rem);line-height:1.46}.slide.long .slide-text{max-width:44rem;font-size:clamp(1rem,.35vw + .92rem,1.2rem);line-height:1.62}.slide.is-note .slide-text{border:1px solid var(--line-strong);background:linear-gradient(135deg, #8edbff1a, transparent 48%), var(--surface);color:var(--muted);padding:1rem 1.25rem}.slide-text>p+p{margin-top:.75rem}.slide-mentions{max-width:30rem;margin-top:clamp(1.5rem,4vh,2.75rem)}.slide-mentions .label{border-bottom:1px solid var(--line-strong);padding-bottom:.5rem}.mention-list li{color:var(--body);align-items:baseline;padding:.5rem 0;font-size:1rem;line-height:1.4}.cook-nav{padding:.75rem max(1rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border-top:1px solid var(--line-strong);background:#03050c99;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:.5rem;display:grid}.cook-nav .button{justify-content:center;min-height:4rem;font-size:.9rem}.cook-ingredients{overscroll-behavior:contain;padding:1rem 1rem 2rem;overflow-y:auto}.rail-heading{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.5rem;display:flex}.rail-key{box-shadow:inset 2px 0 0 var(--accent);color:var(--accent);background:#8edbff1a;padding:.15rem .5rem}.cook-ingredients .ingredient{padding-inline:.6rem}.cook-ingredients li.in-step{box-shadow:inset 2px 0 0 var(--accent);background:#8edbff1a}.cook-ingredients li.in-step .ingredient:not(:has(.check-input:checked)){color:var(--text)}@media (width>=60rem){.cook-body.has-ingredients{grid-template-columns:minmax(0,1fr) minmax(18rem,23rem)}.cook-ingredients{border-left:1px solid var(--line-strong);background:#03050c59}[data-cook-ingredients-toggle],.cook-body.has-ingredients .slide-mentions{display:none}}@media (width<=59.99rem){.cook-ingredients{z-index:2;border-top:1px solid var(--accent);visibility:hidden;max-height:100%;transition:transform .22s var(--ease-sheet), visibility 0s linear .22s;background:#09111d;position:absolute;inset:auto 0 0;transform:translateY(100%);box-shadow:0 -18px 44px #00000080}.cook-ingredients.open{visibility:visible;transition:transform .28s var(--ease-sheet);transform:none}}@media (width<=54rem){.directory{columns:2 14rem}}@media (width<=40rem){.jump{margin-top:1.75rem;display:block}.directory{columns:auto;padding-top:2.25rem}.directory-list a{min-height:2.9rem}.recipe-name{font-size:1rem}.cook-button{flex:1}.step-note{padding-left:0}}@media (width<=57.99rem){.recipe-header{grid-template-columns:minmax(0,1fr)}.recipe-action{z-index:40;padding:.6rem max(1rem, env(safe-area-inset-right)) max(.6rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border-top:1px solid var(--line-strong);-webkit-backdrop-filter:blur(12px);background:#03050cdb;flex-direction:row-reverse;align-items:center;gap:.75rem;position:fixed;inset:auto 0 0}.recipe-action .cook-button{min-width:0;max-width:24rem}.method-end{display:none}body:has(.recipe-action) .site-footer{padding-bottom:7.5rem}body:has(.recipe-action) .timer-tray{bottom:calc(5rem + env(safe-area-inset-bottom))}.cook .timer-tray{bottom:calc(6.25rem + env(safe-area-inset-bottom))}}@media (width<=520px){:root{--gutter:1.25rem}.backdrop-grid,.cook-stage{background-size:64px 64px}.scale{grid-template-columns:repeat(4,2.6rem)}.step{grid-template-columns:1.7rem minmax(0,1fr);gap:.5rem}}@media (prefers-reduced-motion:reduce){.timer.done{outline:3px solid var(--signal);outline-offset:2px;animation:none}[data-motion=next] .slide,[data-motion=back] .slide{@starting-style{transform:none}}.cook[open]{@starting-style{transform:none}}.timer{@starting-style{transform:none}}.button,.timer-stop,.cook-progress span,.cook-ingredients,.cook-ingredients.open{transition:none}.button:active,.timer-stop:active{transform:none}}@media print{:root{color-scheme:light;--bg:#fff;--surface:transparent;--line:#ccc;--line-strong:#999;--text:#000;--body:#000;--muted:#222;--soft:#555;--accent:#000;--signal:#000}html{font-size:11pt}.site-header,.site-footer,.backdrop,.recipe-action,.method-end,.scale,.timer-tray,.cook,.scale-note,[data-clear-checks]{display:none!important}.note{background:0 0}.recipe-title,.recipe-title.long,.recipe-title.longer{max-width:none;font-size:26pt}.recipe-grid:not(.single) .column-ingredients{max-height:none;position:static;overflow:visible}.step,.ingredient-list li{break-inside:avoid}}
