:root{color-scheme:light dark;--bg:#fff;--bg-alt:#f5f7fa;--surface:#fff;--border:#dde3ea;--text:#1f2933;--text-muted:#52606d;--accent:#2563eb;--accent-hover:#1d4ed8;--header-bg:#ffffffd9;--hero-bg:linear-gradient(135deg, #1e2a3a 0%, #2c3e50 55%, #34495e 100%);--hero-text:#f5f7fa;--hero-muted:#c3ccd6;--radius:10px;--shadow:0 1px 2px #1018280f, 0 4px 12px #1018280f;--max-width:1120px;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}@media (prefers-color-scheme:dark){:root{--bg:#0f141a;--bg-alt:#151c24;--surface:#1a222c;--border:#2a3644;--text:#e4e9ef;--text-muted:#9aa8b6;--accent:#6ea8fe;--accent-hover:#9ec5fe;--header-bg:#0f141ad9;--hero-bg:linear-gradient(135deg, #0b1118 0%, #16212d 55%, #1d2b3a 100%);--shadow:0 1px 2px #0000004d, 0 4px 12px #00000040}}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:7rem}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-text-size-adjust:100%;flex-direction:column;min-height:100vh;margin:0;line-height:1.6;display:flex}main{flex:1;min-width:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3,h4{margin:0 0 .5em;line-height:1.25}h1{letter-spacing:-.025em;overflow-wrap:anywhere;font-size:clamp(2rem,5vw,3rem)}p{margin:0 0 1em}code{font-family:var(--font-mono);font-size:.9em}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.25rem}.skip-link{z-index:100;background:var(--surface);border:2px solid var(--accent);border-radius:var(--radius);padding:.5rem 1rem;position:absolute;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.site-header{z-index:10;background:var(--header-bg);border-bottom:1px solid var(--border);backdrop-filter:saturate(180%)blur(10px);position:sticky;top:0}.site-header .container{align-items:center;gap:1.5rem;min-height:3.75rem;display:flex}.brand{color:var(--text);white-space:nowrap;align-items:center;gap:.5rem;font-size:1.2rem;font-weight:700;display:inline-flex}.brand:hover{color:var(--text);text-decoration:none}.brand svg{color:var(--accent)}.brand-section{color:var(--text-muted);font-weight:400}.site-nav{flex-wrap:wrap;gap:.5rem 1.25rem;margin-left:auto;display:flex}.site-nav a{color:var(--text-muted);font-weight:500}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent)}.hero{background:var(--hero-bg);color:var(--hero-text);padding:4.5rem 0}.hero h1{max-width:800px;font-size:clamp(2.5rem,6vw,4rem)}.eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-weight:700}.hero .eyebrow{color:var(--hero-muted);margin-bottom:1.25rem}.tagline{color:var(--hero-muted);max-width:620px;margin:1.25rem 0 1.75rem;font-size:1.15rem}.btn{border-radius:var(--radius);color:var(--hero-text);border:1px solid #fff6;gap:.75rem;padding:.65rem 1.2rem;font-weight:600;display:inline-flex}.btn:hover{color:var(--hero-text);border-color:var(--hero-text);text-decoration:none}.section{padding-top:3.5rem;padding-bottom:4.5rem}.section-header{margin-bottom:2rem}.section-header p,.post-card>p{color:var(--text-muted)}.post-list{gap:1.5rem;max-width:840px;display:grid}.post-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:1.75rem}.post-card h3{overflow-wrap:anywhere;margin-top:.6rem;font-size:1.5rem}.post-card h3 a{color:var(--text)}.post-card h3 a:hover{color:var(--accent)}.post-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;font-size:.9rem;display:flex}.tags{flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.tags li,.draft-badge{background:var(--bg-alt);border:1px solid var(--border);color:var(--text-muted);border-radius:5px;padding:.15rem .65rem;font-size:.8rem}.article{max-width:820px;padding-top:3rem;padding-bottom:4rem}.article-header{border-bottom:1px solid var(--border);margin-bottom:2rem;padding-bottom:2rem}.back-link{margin-bottom:1.75rem;display:inline-block}.article-description{color:var(--text-muted);font-size:1.2rem}.draft-notice{border:1px solid var(--accent);border-radius:var(--radius);background:var(--bg-alt);padding:1rem}.table-of-contents{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:2rem;padding:1.25rem 1.5rem}.table-of-contents h2{font-size:1rem}.table-of-contents ul{margin:0;padding-left:1.25rem}.prose{overflow-wrap:anywhere;font-size:1.0625rem;line-height:1.8}.prose h2,.prose h3,.prose h4{margin-top:2em}.prose a{text-underline-offset:.15em;text-decoration:underline}.prose img,.prose video{border-radius:var(--radius);max-width:100%;height:auto;display:block}.prose :not(pre)>code{background:var(--bg-alt);border-radius:4px;padding:.15em .3em}.prose pre{border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);tab-size:4;padding:1.25rem;font-size:.9rem;line-height:1.65;overflow-x:auto}.prose pre code{font-size:inherit}.prose blockquote{border-left:3px solid var(--accent);color:var(--text-muted);margin:1.5rem 0;padding:.5rem 1.25rem}.prose blockquote>:last-child{margin-bottom:0}.prose table{border-collapse:collapse;max-width:100%;margin:1.5rem 0;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;padding:.6rem 1rem}.prose th{background:var(--bg-alt)}.prose hr{border:0;border-top:1px solid var(--border);margin:2rem 0}.article-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;display:flex}.site-footer{border-top:1px solid var(--border);color:var(--text-muted);padding:2rem 0;font-size:.9rem}.site-footer .container{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;display:flex}.site-footer p{margin:0}.site-footer nav{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}@media (width<=760px){.site-header .container{flex-wrap:wrap;gap:.25rem 1rem;padding-top:.6rem;padding-bottom:.6rem}.site-nav{gap:.25rem 1rem;width:100%;margin-left:0;font-size:.9rem}.hero{padding:3rem 0}.post-card{padding:1.25rem}.article{padding-top:2rem}}
