.site-footer[data-astro-cid-gcn2mc3v]{position:relative;padding-block:clamp(3rem,6vw,var(--space-8)) var(--space-6);border-top:1px solid var(--color-border);background:var(--ink-900)}.site-footer[data-astro-cid-gcn2mc3v]:before{position:absolute;top:0;inset-inline-end:0;inset-inline-start:0;height:.5rem;background:repeating-linear-gradient(90deg,rgb(255 255 255 / .045) 0 .5rem,transparent .5rem 1rem);content:""}.footer-grid[data-astro-cid-gcn2mc3v]{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr)) minmax(0,1.25fr);gap:clamp(2rem,5vw,var(--space-7))}.footer-brand__id[data-astro-cid-gcn2mc3v]{display:inline-flex;align-items:center;gap:.65rem;color:var(--color-text);font-family:var(--font-display);font-size:1.05rem;font-weight:600;text-decoration:none}.footer-brand__id[data-astro-cid-gcn2mc3v] img{border:1px solid var(--color-border);border-radius:.55rem}.footer-brand[data-astro-cid-gcn2mc3v] p[data-astro-cid-gcn2mc3v]{max-width:24rem;margin-block:var(--space-4) var(--space-3);color:var(--color-muted);font-size:.95rem}.footer-brand__mail[data-astro-cid-gcn2mc3v]{display:inline-flex;min-height:2.75rem;align-items:center;font-size:.95rem;overflow-wrap:anywhere}.footer-nav[data-astro-cid-gcn2mc3v] h2[data-astro-cid-gcn2mc3v]{margin-bottom:var(--space-4);color:var(--color-faint);font-family:var(--font-mono);font-size:var(--step-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase}.footer-nav[data-astro-cid-gcn2mc3v] ul[data-astro-cid-gcn2mc3v]{display:grid;gap:.15rem;margin:0;padding:0;list-style:none}.footer-nav[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]{display:inline-flex;min-height:2.75rem;align-items:center;color:var(--color-muted);font-size:.95rem;text-decoration:none}.footer-nav[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]:hover{color:var(--color-text);text-decoration:underline}.footer-social[data-astro-cid-gcn2mc3v] ul[data-astro-cid-gcn2mc3v]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.footer-social[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted)}.footer-social[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]:hover{border-color:var(--tan-dark);color:var(--color-accent)}.footer-social[data-astro-cid-gcn2mc3v] svg[data-astro-cid-gcn2mc3v]{width:1.15rem;height:1.15rem}.footer-bottom[data-astro-cid-gcn2mc3v]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3) var(--space-5);margin-top:clamp(2.5rem,5vw,var(--space-7));padding-top:var(--space-5);border-top:1px solid var(--color-border)}.footer-bottom[data-astro-cid-gcn2mc3v] p[data-astro-cid-gcn2mc3v]{margin:0;color:var(--color-faint);font-size:var(--step-small)}.footer-bottom__note[data-astro-cid-gcn2mc3v]{font-family:var(--font-mono);font-size:.78rem}@media(max-width:60rem){.footer-grid[data-astro-cid-gcn2mc3v]{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand[data-astro-cid-gcn2mc3v]{grid-column:1 / -1}}@media(max-width:28rem){.footer-grid[data-astro-cid-gcn2mc3v]{grid-template-columns:1fr;gap:var(--space-6)}}@media(max-width:46rem){.site-footer[data-astro-cid-gcn2mc3v]{padding-bottom:5rem}}.site-header[data-astro-cid-ctg3m53h]{position:sticky;z-index:30;top:0;border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--ink-950) 88%,transparent);backdrop-filter:blur(.75rem)}.header-inner[data-astro-cid-ctg3m53h]{display:flex;min-height:4.25rem;align-items:center;gap:var(--space-5)}.brand[data-astro-cid-ctg3m53h]{display:flex;align-items:center;gap:.65rem;margin-inline-end:auto;padding-block:.3rem;color:var(--color-text);text-decoration:none}.brand[data-astro-cid-ctg3m53h] img{border:1px solid var(--color-border);border-radius:.55rem}.brand__name[data-astro-cid-ctg3m53h]{font-family:var(--font-display);font-size:1.06rem;font-weight:600;white-space:nowrap}.nav-desktop[data-astro-cid-ctg3m53h] ul[data-astro-cid-ctg3m53h]{display:flex;align-items:center;gap:var(--space-6);margin:0;padding:0;list-style:none}.nav-desktop[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]{position:relative;display:inline-flex;min-height:2.75rem;align-items:center;color:var(--color-muted);font-size:.92rem;font-weight:550;text-decoration:none;white-space:nowrap}.nav-desktop[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:hover,.nav-desktop[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h][aria-current=page]{color:var(--color-text)}.nav-desktop[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h][aria-current=page]:after{position:absolute;bottom:.55rem;inset-inline-start:0;width:.35rem;height:.35rem;background:var(--color-accent);content:""}.header-cta[data-astro-cid-ctg3m53h]{min-height:2.6rem;padding-inline:1.1rem;font-size:.9rem}.nav-mobile[data-astro-cid-ctg3m53h]{display:none}.nav-mobile[data-astro-cid-ctg3m53h] summary[data-astro-cid-ctg3m53h]{display:grid;width:2.9rem;height:2.9rem;place-items:center;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;list-style:none}.nav-mobile[data-astro-cid-ctg3m53h] summary[data-astro-cid-ctg3m53h]::-webkit-details-marker{display:none}.nav-mobile__icon[data-astro-cid-ctg3m53h] svg[data-astro-cid-ctg3m53h]{width:1.5rem;height:1.5rem}.nav-mobile__x[data-astro-cid-ctg3m53h],.nav-mobile[data-astro-cid-ctg3m53h][open] .nav-mobile__bars[data-astro-cid-ctg3m53h]{display:none}.nav-mobile[data-astro-cid-ctg3m53h][open] .nav-mobile__x[data-astro-cid-ctg3m53h]{display:block}.nav-mobile[data-astro-cid-ctg3m53h]:not([open]) .nav-mobile__panel[data-astro-cid-ctg3m53h]{display:none}.nav-mobile__panel[data-astro-cid-ctg3m53h]{position:absolute;z-index:5;top:100%;inset-inline-end:0;inset-inline-start:0;display:grid;gap:var(--space-4);padding:var(--space-4) var(--gutter) var(--space-6);border-bottom:1px solid var(--color-border);background:var(--ink-900);box-shadow:var(--shadow-plate)}.nav-mobile__panel[data-astro-cid-ctg3m53h] ul[data-astro-cid-ctg3m53h]{display:grid;margin:0;padding:0;list-style:none}.nav-mobile__panel[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:not(.btn){display:flex;min-height:3rem;align-items:center;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:1.02rem;font-weight:550;text-decoration:none}.nav-mobile__panel[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h][aria-current=page]{color:var(--color-accent)}.nav-mobile__panel[data-astro-cid-ctg3m53h] .btn[data-astro-cid-ctg3m53h]{min-height:3rem}@media(max-width:46rem){.nav-desktop[data-astro-cid-ctg3m53h],.header-cta[data-astro-cid-ctg3m53h]{display:none}.nav-mobile[data-astro-cid-ctg3m53h]{display:block}}@media(min-width:46.0625rem)and (max-width:60rem){.nav-desktop[data-astro-cid-ctg3m53h] ul[data-astro-cid-ctg3m53h]{gap:var(--space-5)}.header-inner[data-astro-cid-ctg3m53h]{gap:var(--space-4)}}:root{color-scheme:dark;--ink-950: #0d0c0a;--ink-900: #131210;--ink-850: #191714;--ink-800: #1f1c18;--ink-700: #272319;--parchment: #f7f2e8;--parchment-dim: #c6bdac;--parchment-faint: #a49b8b;--amber: #f2a93b;--amber-soft: #f8c680;--amber-deep: #b3761f;--tan-light: #d8bd94;--tan: #c0a077;--tan-dark: #7c6244;--color-bg: var(--ink-950);--color-surface: var(--ink-850);--color-surface-raised: var(--ink-800);--color-surface-inset: var(--ink-900);--color-text: var(--parchment);--color-muted: var(--parchment-dim);--color-faint: var(--parchment-faint);--color-accent: var(--amber);--color-accent-strong: var(--amber-soft);--color-border: #322d25;--color-border-strong: #4a4232;--color-focus: #7fd1ff;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: ui-serif, "New York", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--step-display: clamp(2.5rem, 1.55rem + 4.2vw, 4.75rem);--step-h2: clamp(1.8rem, 1.3rem + 2.1vw, 2.9rem);--step-h3: clamp(1.2rem, 1.06rem + .66vw, 1.5rem);--step-lead: clamp(1.09rem, 1rem + .5vw, 1.3rem);--step-body: clamp(1rem, .97rem + .14vw, 1.07rem);--step-small: .875rem;--step-label: .72rem;--tracking-label: .16em;--leading-tight: 1.06;--leading-snug: 1.3;--leading-body: 1.68;--content-width: 74rem;--wide-width: 84rem;--reading-width: 40rem;--gutter: clamp(1.25rem, 4vw, 2.5rem);--radius-xs: .25rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1.25rem;--shadow-plate: 0 1.5rem 3.5rem -1rem rgb(0 0 0 / .7);--shadow-raised: 0 .75rem 2rem -.75rem rgb(0 0 0 / .55);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4.5rem;--space-9: 7rem}.dg{display:grid;width:100%;height:100%;place-items:center}.dg svg{direction:ltr;display:block;width:100%;height:100%;overflow:visible}.dg-grid line{stroke:var(--color-border);stroke-width:1;stroke-dasharray:2 5}.dg-axis,.dg-axis line,.dg-tick line{stroke:var(--color-border-strong);stroke-width:1}.dg-label,.dg-note text,text.dg-label{fill:var(--color-faint);font-family:var(--font-mono);font-size:11px;letter-spacing:.02em}.dg-label--right text,text.dg-label--right,.dg-label--right{text-anchor:end}.dg-label--mid text,text.dg-label--mid{text-anchor:middle}.dg-label--key,text.dg-label--key{fill:var(--color-accent)}.dg-label--axis{fill:var(--color-faint);font-size:10px;text-anchor:middle}.dg-note--key{fill:var(--color-accent);font-family:var(--font-mono);font-size:11px}.dg-note--muted{fill:var(--color-faint);font-family:var(--font-mono);font-size:10px}.dg-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.dg-line--muted{stroke:var(--color-border-strong);stroke-width:1.6;stroke-dasharray:4 4}.dg-line--key{stroke:var(--amber);stroke-width:2}.dg-node--key{fill:var(--amber)}.dg-edge path{fill:none;stroke:var(--color-border-strong);stroke-width:1.4}.dg-edge--gap path,path.dg-edge--gap{stroke:var(--amber);stroke-dasharray:4 4}.dg-node--covered circle{fill:var(--color-surface-raised);stroke:var(--tan);stroke-width:1.5}.dg-gap-node circle{fill:none;stroke:var(--amber);stroke-width:1.8}.dg-gap-mark{fill:var(--amber);font-family:var(--font-mono);font-size:11px;text-anchor:middle}.dg-callout line{stroke:var(--amber-deep);stroke-width:1;stroke-dasharray:2 3}.dg-node--cut circle{fill:none;stroke:var(--color-border-strong);stroke-width:1.4}.dg-edge--cut path{stroke-dasharray:3 4}.dg-cut-mark line{stroke:var(--color-faint);stroke-width:1.3}.dg-bar rect{fill:var(--color-border-strong)}.dg-bar--key rect{fill:var(--amber)}.dg-depth-known{fill:var(--amber)}.dg-depth-rest{fill:none;stroke:var(--color-border-strong);stroke-width:1.2;stroke-dasharray:4 4}.dg-depth-mark{stroke:var(--amber-deep);stroke-width:1.2;stroke-dasharray:3 3}.dg-wdl--w{fill:var(--parchment)}.dg-pct{font-family:var(--font-mono);font-size:9.5px;text-anchor:middle}.dg-pct--w{fill:var(--ink-950)}.dg-pct--b{fill:var(--parchment-dim)}.dg-wdl--d{fill:var(--color-faint)}.dg-wdl--b{fill:var(--ink-700);stroke:var(--color-border-strong);stroke-width:1}.dg-chip rect{fill:var(--color-surface-raised);stroke:var(--color-border-strong);stroke-width:1}.dg-flow path{fill:none;stroke:var(--color-border-strong);stroke-width:1.3}.dg-arrow{fill:none;stroke:var(--tan);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.dg-panel rect{fill:var(--color-surface-inset);stroke:var(--amber-deep);stroke-width:1}.dg-mini-tree path{fill:none;stroke:var(--tan-dark);stroke-width:1.2}.dg-mini-tree circle{fill:var(--amber)}.dg-scan{stroke:var(--amber);stroke-width:1;opacity:0}.reveal-ready .dg-draw{stroke-dasharray:1;stroke-dashoffset:1}.reveal-ready :is(.dg-dots,.dg-gap-node,.dg-callout,.dg-fade,.dg-note){opacity:0}.reveal-ready :is(.dg-bar,.dg-row){opacity:0;transform:translate(-6px)}.reveal-ready .dg-grow{transform:scaleX(0);transform-origin:left center}.reveal-ready.in-view .dg-grow{transform:none;transition:transform 1s cubic-bezier(.4,0,.2,1) .15s}.reveal-ready.in-view .dg-draw{stroke-dashoffset:0;transition:stroke-dashoffset 1.1s cubic-bezier(.4,0,.2,1)}.reveal-ready.in-view .dg-draw--slow{transition-duration:1.7s}.reveal-ready.in-view :is(.dg-dots,.dg-gap-node,.dg-callout,.dg-fade,.dg-note){opacity:1;transition:opacity .6s ease .9s}.reveal-ready.in-view :is(.dg-bar,.dg-row){opacity:1;transform:none;transition:opacity .5s ease calc(.25s + var(--i) * .11s),transform .5s ease calc(.25s + var(--i) * .11s)}.reveal-ready.in-view .dg-pulse{animation:dg-pulse 4.2s ease-in-out calc(1.6s + var(--i) * .35s) infinite}.reveal-ready.in-view .dg-blink{animation:dg-blink 3.4s ease-in-out 1.8s infinite}.reveal-ready.in-view .dg-scan{animation:dg-scan 6s ease-in-out 2s infinite}@keyframes dg-pulse{0%,72%,to{r:4;opacity:1}84%{r:5.6;opacity:.75}}@keyframes dg-blink{0%,to{opacity:1}50%{opacity:.42}}@keyframes dg-scan{0%{opacity:0;transform:translateY(24px)}12%,58%{opacity:.28}70%,to{opacity:0;transform:translateY(200px)}}@media(prefers-reduced-motion:reduce){.reveal-ready :is(.dg-draw,.dg-dots,.dg-gap-node,.dg-callout,.dg-fade,.dg-note,.dg-bar,.dg-row){opacity:1;transform:none;stroke-dashoffset:0}.reveal-ready.in-view :is(.dg-pulse,.dg-blink,.dg-scan){animation:none}.dg-scan{opacity:0}}.dg-board line{stroke:var(--color-border);stroke-width:1}.dg-centre rect{fill:var(--tan-dark);opacity:.3}.dg-reach circle{fill:none;stroke:var(--amber);stroke-width:1.4}.dg-piece circle{fill:var(--amber)}.dg-count text,text.dg-count{fill:var(--color-text);font-family:var(--font-mono);font-size:13px;font-weight:600}.dg-ply__n{fill:var(--color-faint);font-family:var(--font-mono);font-size:11px}.dg-ply__move{fill:var(--color-text);font-family:var(--font-mono);font-size:12px}.dg-ply__move--key{fill:var(--amber)}.dg-ply__note,.dg-ply__total{fill:var(--color-faint);font-family:var(--font-mono);font-size:10px}.dg-wedge path{fill:var(--color-surface-raised);stroke:var(--color-border-strong);stroke-width:1}.dg-end text{fill:var(--color-accent);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em}.dg-chip__t{fill:var(--color-text);font-family:var(--font-mono);font-size:11px}.dg-code text{fill:var(--color-muted);font-family:var(--font-mono);font-size:11px}.dg-brace path{fill:none;stroke:var(--amber-deep);stroke-width:1.2}.dg-brace__t text{fill:var(--color-accent);font-family:var(--font-mono);font-size:11px}.dg-cell rect{fill:var(--color-surface-raised);stroke:var(--color-border-strong);stroke-width:1}.dg-cell rect.dg-cell--miss{fill:none;stroke:var(--amber);stroke-width:1.4}.dg-device rect{fill:var(--color-surface-inset);stroke:var(--color-border-strong);stroke-width:1.2}.dg-adslot{fill:var(--color-surface-raised);stroke:var(--color-border-strong);stroke-width:1;stroke-dasharray:3 3}.dg-group-mark line{stroke:var(--color-border);stroke-width:1;stroke-dasharray:3 4}.dg-cloud{fill:var(--color-surface-inset);stroke:var(--amber-deep);stroke-width:1}.dg-strike-word{fill:var(--color-muted);font-family:var(--font-display);font-size:30px;font-weight:700;letter-spacing:.12em}.dg-strike line{stroke:var(--amber);stroke-width:2.4;stroke-linecap:round}.dg-pgn-mark{fill:var(--color-accent);font-family:var(--font-mono);font-size:20px;font-weight:600;letter-spacing:.08em}.dg-bar-val{fill:var(--amber)}.dg-piece-glyph{fill:var(--color-text);font-size:19px}.dg-pawn circle{fill:var(--tan)}.dg-king circle{fill:none;stroke:var(--parchment);stroke-width:1.8}.dg-rook rect{fill:var(--parchment-dim)}.dg-danger path{fill:none;stroke:var(--amber);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.dg-path-live path{stroke:var(--amber);stroke-width:2}.dg-evalbar__b{fill:var(--ink-700);stroke:var(--color-border-strong);stroke-width:1}.dg-evalbar__w{fill:var(--parchment-dim)}.dg-evalbar line{stroke:var(--amber);stroke-width:1.4}.dg-bar-dim{fill:var(--color-border-strong)}.reveal-ready .dg-grow-y{transform:scaleY(0);transform-origin:center bottom}.reveal-ready.in-view .dg-grow-y{transform:none;transition:transform .9s cubic-bezier(.4,0,.2,1) .2s}@media(prefers-reduced-motion:reduce){.reveal-ready .dg-grow-y{transform:none}}.dg-trend{fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dg-trend--a{stroke:var(--amber)}.dg-trend--b{stroke:var(--tan-light)}.dg-trend--c{stroke:var(--tan)}.dg-trend--d{stroke:var(--parchment-faint)}.dg-trend-dot circle{stroke-width:1}.dg-trend-dot--a circle{fill:var(--amber)}.dg-trend-dot--b circle{fill:var(--tan-light)}.dg-trend-dot--c circle{fill:var(--tan)}.dg-trend-dot--d circle{fill:var(--parchment-faint)}.dg-trend-name{font-family:var(--font-mono);font-size:11px}.dg-trend-name--a{fill:var(--amber)}.dg-trend-name--b{fill:var(--tan-light)}.dg-trend-name--c{fill:var(--tan)}.dg-trend-name--d{fill:var(--parchment-faint)}.dg-pencil path{fill:var(--tan-light);stroke:none}.dg-pencil__nib{fill:var(--parchment)}.dg-pencil line{stroke:var(--ink-900);stroke-width:1.2}.dg-code-sm{fill:var(--color-muted);font-family:var(--font-mono);font-size:9px}.dg-white-piece circle{fill:var(--parchment);stroke:var(--color-border-strong);stroke-width:1}.dg-piece-letter{fill:var(--ink-950);font-family:var(--font-mono);font-size:10px;font-weight:600;text-anchor:middle}.dg-sq--l{fill:#e8d6b4}.dg-sq--d{fill:#b0885c}.dg-sq-hl rect{fill:var(--amber);opacity:.42}.dg-sq-mark circle{fill:none;stroke:var(--amber);stroke-width:2.2}.dg-pc{text-anchor:middle;paint-order:stroke fill}.dg-pc--w{fill:#fbf7ef;stroke:#2b2118;stroke-width:1.1}.dg-pc--b{fill:#1c1610;stroke:#efe6d5;stroke-width:.7}.dg-sq-arrow path{fill:none;stroke:var(--amber);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.dg-sq-coord text{fill:var(--color-faint);font-family:var(--font-mono);font-size:9px;text-anchor:middle}.dg-fen-hl{fill:var(--amber);font-weight:600}.dg-strip-move{fill:var(--color-text);font-family:var(--font-mono);font-size:10px;font-weight:600}.dg-strip-arrow{fill:none;stroke:var(--color-border-strong);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}@media(max-width:44rem){.prose figure.figure--strip .figure__panel{overflow-x:auto;-webkit-overflow-scrolling:touch}.prose figure.figure--strip svg{width:32rem;max-width:none}}*,*:before,*:after{box-sizing:border-box}html{background:var(--color-bg);scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;min-width:20rem;overflow-x:clip;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--step-body);line-height:var(--leading-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img,svg,picture,video{display:block;max-width:100%}[hidden]{display:none!important}a{color:var(--color-accent-strong);text-underline-offset:.22em;text-decoration-thickness:from-font}a:hover{text-decoration-thickness:.1em}:focus-visible{outline:.175rem solid var(--color-focus);outline-offset:.2rem;border-radius:var(--radius-xs)}::selection{background:var(--amber-deep);color:var(--parchment)}h1,h2,h3,h4{margin-block:0 .6em;font-family:var(--font-display);font-weight:600;line-height:var(--leading-tight);text-wrap:balance;hyphens:auto;overflow-wrap:break-word}h1{font-size:var(--step-display);letter-spacing:-.015em}h2{font-size:var(--step-h2);letter-spacing:-.01em}h3{font-size:var(--step-h3);line-height:var(--leading-snug)}h4{font-size:1.1rem;line-height:var(--leading-snug)}p,ul,ol{margin-block:0 1.15rem}hr{height:1px;border:0;background:var(--color-border)}.container{width:min(100% - (var(--gutter) * 2),var(--content-width));margin-inline:auto}.container--wide{width:min(100% - (var(--gutter) * 2),var(--wide-width));margin-inline:auto}.section{padding-block:clamp(3.25rem,8vw,var(--space-9))}.section--tight{padding-block:clamp(2.5rem,5vw,var(--space-8))}.label{display:flex;align-items:center;gap:.7rem;margin:0 0 var(--space-4);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--step-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase}.label:before{width:1.15rem;height:1px;flex:none;background:currentcolor;content:""}.lead{max-width:46rem;color:var(--color-muted);font-size:var(--step-lead);line-height:1.55;text-wrap:pretty}.rule{height:1px;border:0;background:linear-gradient(90deg,transparent,var(--color-border-strong) 15%,var(--color-border-strong) 85%,transparent)}.ticks{position:relative}.ticks:before,.ticks:after{position:absolute;width:.6rem;height:.6rem;content:"";pointer-events:none}.ticks:before{top:.6rem;inset-inline-start:.6rem;border-top:1px solid var(--color-border-strong);border-inline-start:1px solid var(--color-border-strong)}.ticks:after{inset-inline-end:.6rem;bottom:.6rem;border-inline-end:1px solid var(--color-border-strong);border-bottom:1px solid var(--color-border-strong)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.btn{display:inline-flex;min-height:2.9rem;align-items:center;justify-content:center;gap:var(--space-2);padding:.7rem 1.35rem;border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.95rem;font-weight:650;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.btn--primary{background:var(--amber);color:#1a1206}.btn--primary:hover{background:var(--amber-soft)}.btn--quiet{border-color:var(--color-border-strong);background:transparent;color:var(--color-text)}.btn--quiet:hover{border-color:var(--tan);background:#ffffff0a}.skip-link{position:fixed;z-index:100;top:var(--space-3);inset-inline-start:var(--space-3);padding:var(--space-3) var(--space-4);transform:translateY(-250%);border-radius:var(--radius-sm);background:var(--parchment);color:var(--ink-950);font-weight:650;text-decoration:none}.skip-link:focus{transform:none}.prose{width:100%;max-width:var(--reading-width);color:var(--color-muted);font-size:clamp(1.05rem,1.01rem + .18vw,1.125rem);line-height:1.72}.prose>:first-child{margin-top:0}.prose :is(h2,h3,h4,h5,h6){margin-top:2em;color:var(--color-text)}.prose h2{font-size:clamp(1.5rem,1.25rem + 1.1vw,2rem)}.prose h3{font-size:clamp(1.15rem,1.05rem + .5vw,1.35rem)}.prose h4{font-family:var(--font-sans);font-size:1.02rem;font-weight:700;letter-spacing:.01em}.prose strong{color:var(--color-text);font-weight:650}.prose :is(ul,ol){padding-inline-start:1.25rem}.prose li{margin-bottom:.5rem;padding-inline-start:.25rem}.prose ul{list-style:none;padding-inline-start:0}.prose ul>li{position:relative;padding-inline-start:1.5rem}.prose ul>li:before{position:absolute;top:.62em;inset-inline-start:.15rem;width:.4rem;height:.4rem;background:var(--tan);content:""}.prose ol{counter-reset:prose-counter;list-style:none;padding-inline-start:0}.prose ol>li{position:relative;counter-increment:prose-counter;padding-inline-start:2rem}.prose ol>li:before{position:absolute;inset-inline-start:0;color:var(--color-accent);content:counter(prose-counter) ".";font-family:var(--font-mono);font-size:.9em}.prose blockquote{margin:var(--space-6) 0;padding:var(--space-2) 0 var(--space-2) var(--space-5);border-inline-start:2px solid var(--tan-dark);color:var(--color-text);font-family:var(--font-display);font-size:1.15rem}.prose :is(code,kbd,samp){padding:.15em .4em;border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--tan-light);font-family:var(--font-mono);font-size:.875em}.prose pre{overflow-wrap:anywhere;white-space:pre-wrap;margin-block:var(--space-6);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-inset)}.prose pre code{padding:0;border:0;background:none;color:var(--color-text)}.prose img{height:auto;margin-block:var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-raised)}.prose hr{margin-block:var(--space-7);background:var(--color-border)}.prose :is(a,button){overflow-wrap:anywhere}.prose table{display:block;overflow-x:auto;width:100%;border-collapse:collapse;font-size:.95rem}.prose :is(th,td){padding:.6rem .9rem;border-bottom:1px solid var(--color-border);text-align:start}.prose th{color:var(--color-text);font-family:var(--font-mono);font-size:var(--step-label);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.prose .figure{width:100%;margin:var(--space-7) 0}.prose .figure__panel{padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.prose .figure svg{width:100%;height:auto}.prose .figure figcaption{margin-top:var(--space-4);color:var(--color-faint);font-size:.88rem;line-height:1.5;text-wrap:pretty}.prose .store-badge{margin-block:var(--space-6)}.prose .store-badge img{width:auto;height:3.4rem;margin:0;border:0;border-radius:0;background:none;box-shadow:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
