.fold{margin-top:var(--space-12);position:relative}.fold__stage{position:relative;min-height:420px;display:grid;gap:var(--space-8);place-items:center}.fold__counter{display:inline-flex;align-items:baseline;gap:var(--space-3);padding:var(--space-3) var(--space-6);border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);font-family:var(--font-mono);font-size:.95rem;color:var(--fg-muted)}.fold__counter b{font-size:1.35rem;color:var(--accent);font-variant-numeric:tabular-nums}.fold__counter s{text-decoration:line-through;opacity:.6}.fold__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);width:100%;max-width:760px;perspective:1600px}.fold__source{grid-column:1 / -1;border:1px solid var(--accent);border-radius:var(--radius);background:var(--bg-elevated);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent);text-align:left;overflow:hidden}.fold__panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);text-align:left;transform-origin:top center;overflow:hidden}.fold__label{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);font-size:.8rem;font-weight:600}.fold__dot{width:18px;height:18px;border-radius:6px;display:grid;place-items:center;font-size:.62rem;font-weight:700;color:#fff;flex:none}.fold__code{margin:0;padding:var(--space-3);font-family:var(--font-mono);font-size:.72rem;line-height:1.5;color:var(--fg-muted);white-space:pre;overflow-x:auto}.fold__code .k{color:var(--accent)}@media (max-width: 640px){.fold__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.fold[data-animated=true] .fold__panel,.fold[data-animated=true] .fold__source{will-change:transform,opacity}@supports (animation-timeline: view()){@media (prefers-reduced-motion: no-preference){[data-reveal]{animation:fold-reveal linear both;animation-timeline:view();animation-range:entry 0% cover 30%}}}@keyframes fold-reveal{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}.prose{line-height:1.7}.prose h2{margin-top:2rem;padding-top:.6rem;border-top:1px solid var(--border)}.prose a{color:var(--accent)}.prose code{background:var(--code-bg);padding:.15em .4em;border-radius:4px;font-size:.9em}.prose pre{background:var(--code-bg);border:1px solid var(--border);padding:1rem;border-radius:var(--radius);overflow-x:auto}.prose pre code{background:none;padding:0}.prose blockquote{margin:1rem 0;padding:.4rem 1rem;border-left:3px solid var(--accent);color:var(--fg-muted)}.prose ul,.prose ol{padding-left:1.3rem}:root{--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--radius: 10px;--maxw: 1080px;--accent: #4c6ef5;--accent-fg: #ffffff;--bg: #ffffff;--bg-elevated: #f6f7f9;--fg: #14161a;--fg-muted: #5c6470;--border: #e4e7ec;--code-bg: #f2f4f7}@media (prefers-color-scheme: dark){:root{--bg: #0b0d12;--bg-elevated: #14171f;--fg: #e8ebf0;--fg-muted: #9aa3b2;--border: #262b36;--code-bg: #161a22;--accent: #748ffc}}:root[data-theme=light]{--bg: #ffffff;--bg-elevated: #f6f7f9;--fg: #14161a;--fg-muted: #5c6470;--border: #e4e7ec;--code-bg: #f2f4f7;--accent: #4c6ef5}:root[data-theme=dark]{--bg: #0b0d12;--bg-elevated: #14171f;--fg: #e8ebf0;--fg-muted: #9aa3b2;--border: #262b36;--code-bg: #161a22;--accent: #748ffc}*{box-sizing:border-box}html{color-scheme:light dark}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}main p a,main li a{text-decoration:underline}code{font-family:var(--font-mono);background:var(--code-bg);padding:.15em .4em;border-radius:4px;font-size:.9em}.skip-link{position:absolute;left:var(--space-4);top:-3rem;z-index:100;background:var(--accent);color:var(--accent-fg);padding:var(--space-2) var(--space-4);border-radius:var(--radius);transition:top .15s ease}.skip-link:focus{top:var(--space-2)}.nav-desktop{display:flex}.nav-toggle{display:none}@media (max-width: 820px){.nav-desktop{display:none}.nav-toggle{display:flex}}main:focus{outline:none}
