.site-header[data-astro-cid-nen7h5rs]{z-index:50;background:color-mix(in srgb, var(--bg) 85%, transparent);backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.header-inner[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--sp-5);height:4rem;display:flex}.brand[data-astro-cid-nen7h5rs]{color:var(--text);letter-spacing:-.02em;align-items:center;gap:.5rem;margin-right:auto;font-weight:600;text-decoration:none;display:inline-flex}.brand-mark[data-astro-cid-nen7h5rs]{color:var(--accent);flex-shrink:0}.brand-text[data-astro-cid-nen7h5rs]{font-size:1.02rem}.brand-accent[data-astro-cid-nen7h5rs]{color:var(--text-muted);font-weight:500}.brand[data-astro-cid-nen7h5rs]:hover .brand-accent[data-astro-cid-nen7h5rs]{color:var(--accent)}.nav-list[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--sp-5);margin:0;padding:0;list-style:none;display:flex}.nav-list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--text-muted);padding-block:.4rem;font-size:.92rem;font-weight:500;text-decoration:none;position:relative}.nav-list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.nav-list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--text)}.nav-list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]:after{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;bottom:-.15rem;left:0;right:0}@media (width<=560px){.header-inner[data-astro-cid-nen7h5rs]{gap:var(--sp-4)}.nav-list[data-astro-cid-nen7h5rs]{gap:.7rem}.nav-list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{font-size:.82rem}.brand-text[data-astro-cid-nen7h5rs]{font-size:.95rem}}@media (width<=420px){.brand-text[data-astro-cid-nen7h5rs]{display:none}}.site-footer[data-astro-cid-jo6i4kqk]{margin-top:var(--sp-9);border-top:1px solid var(--border);background:var(--bg-subtle);padding-top:var(--sp-7)}.footer-inner[data-astro-cid-jo6i4kqk]{gap:var(--sp-7);padding-bottom:var(--sp-7);flex-wrap:wrap;justify-content:space-between;display:flex}.footer-name[data-astro-cid-jo6i4kqk]{letter-spacing:-.02em;font-weight:600}.footer-tagline[data-astro-cid-jo6i4kqk]{color:var(--text-muted);max-width:30ch;font-size:.92rem}.footer-cols[data-astro-cid-jo6i4kqk]{gap:var(--sp-7);flex-wrap:wrap;display:flex}.footer-cols[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{margin:var(--sp-3) 0 0;padding:0;list-style:none}.footer-cols[data-astro-cid-jo6i4kqk] li[data-astro-cid-jo6i4kqk]+li[data-astro-cid-jo6i4kqk]{margin-top:var(--sp-2)}.footer-cols[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--text-muted);font-size:.9rem;text-decoration:none}.footer-cols[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--accent)}.footer-base[data-astro-cid-jo6i4kqk]{justify-content:space-between;gap:var(--sp-4);padding-block:var(--sp-4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.footer-base[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--text-muted);text-decoration:none}.footer-base[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--accent)}.wrap{width:100%;max-width:var(--wide);padding-inline:var(--sp-5);margin-inline:auto}.prose-wrap{width:100%;max-width:calc(var(--measure) + var(--sp-5) * 2);padding-inline:var(--sp-5);margin-inline:auto}@media (width<=560px){.wrap,.prose-wrap{padding-inline:var(--sp-4)}}main{flex:1}.eyebrow{font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--text-faint);font-size:.72rem;font-weight:500}.mono-meta{font-family:var(--font-mono);letter-spacing:.03em;color:var(--text-muted);font-size:.75rem}.btn{align-items:center;gap:var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:.6rem 1.1rem;font-size:.92rem;font-weight:550;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,transform .1s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.btn-ghost{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-ghost:hover{background:var(--bg-subtle);color:var(--text);border-color:var(--text-faint)}.pill{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--border);background:var(--bg-subtle);color:var(--text-muted);white-space:nowrap;border-radius:4px;align-items:center;gap:.35em;padding:.28rem .55rem;font-size:.7rem;text-decoration:none;display:inline-flex}a.pill:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}.pill[data-difficulty=Beginner]{color:var(--signal);background:var(--signal-soft);border-color:color-mix(in srgb, var(--signal) 30%, transparent)}.pill[data-difficulty=Intermediate]{color:var(--warn);background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.pill[data-difficulty=Advanced]{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.skip-link{left:var(--sp-4);z-index:100;background:var(--accent);color:#fff;padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-sm);text-decoration:none;transition:top .15s;position:absolute;top:-100px}.skip-link:focus{top:var(--sp-4);color:#fff}.prose{color:var(--text);font-size:1.075rem;line-height:1.75}.prose>*+*{margin-top:var(--sp-5)}.prose h2{margin-top:var(--sp-8);margin-bottom:var(--sp-4);padding-top:var(--sp-5);border-top:1px solid var(--border);scroll-margin-top:6rem}.prose h3{margin-top:var(--sp-6);margin-bottom:var(--sp-3);scroll-margin-top:6rem}.prose h4{margin-top:var(--sp-5);margin-bottom:var(--sp-2);scroll-margin-top:6rem;font-size:1rem}.prose :is(h2,h3){position:relative}.heading-anchor{color:var(--text-faint);opacity:0;font-weight:400;text-decoration:none;transition:opacity .15s;position:absolute;top:50%;left:-1.35rem;transform:translateY(-50%)}.heading-anchor:before{content:"#"}.prose :is(h2,h3):hover .heading-anchor,.heading-anchor:focus-visible{opacity:1}@media (width<=900px){.heading-anchor{display:none}}.prose :is(ul,ol){padding-left:1.35rem}.prose li+li{margin-top:var(--sp-2)}.prose li::marker{color:var(--text-faint)}.prose strong{font-weight:620}.prose blockquote{border-left:2px solid var(--accent-border);padding-left:var(--sp-5);color:var(--text-muted);font-style:normal}.prose :not(pre)>code{font-family:var(--font-mono);background:var(--bg-inset);border:1px solid var(--border);color:var(--text);word-break:break-word;border-radius:4px;padding:.15em .36em;font-size:.86em}.prose pre{font-family:var(--font-mono);padding:var(--sp-4) var(--sp-5);border-radius:var(--radius);border:1px solid var(--border);tab-size:2;font-size:.855rem;line-height:1.65;overflow-x:auto}.prose pre>code{all:unset;font-family:inherit}html[data-theme=dark] .astro-code,html[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}.prose .table-scroll{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:.94rem}.prose :is(th,td){text-align:left;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);vertical-align:top}.prose th{font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-subtle);white-space:nowrap;font-size:.72rem}.prose tbody tr:last-child :is(th,td){border-bottom:0}.prose figure{margin-block:var(--sp-6)}.prose figcaption{margin-top:var(--sp-3);color:var(--text-muted);text-align:center;font-size:.85rem}.prose img{border-radius:var(--radius);border:1px solid var(--border)}
