:root{--bg: #FFFFFF;--bg-soft: #F7F8FA;--bg-muted: #F1F3F6;--ink: #0F172A;--ink-2: #1E293B;--ink-3: #475569;--muted: #64748B;--muted-2: #94A3B8;--line: #E2E8F0;--line-soft: #EEF1F5;--accent: #0EA5E9;--accent-ink: #0369A1;--accent-soft: #E0F2FE;--ok: #16A34A;--ok-soft: #DCFCE7;--warn: #D97706;--warn-soft: #FEF3C7;--danger: #DC2626;--danger-soft: #FEE2E2;--font-serif: "Newsreader", "Iowan Old Style", Georgia, serif;--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--r-s: 4px;--r-m: 8px;--r-l: 14px;--shadow-card: 0 1px 2px rgba(15,23,42,.04), 0 2px 8px rgba(15,23,42,.04);--shadow-float: 0 12px 40px rgba(15,23,42,.1)}[data-theme=dark]{--bg: #0A0F1A;--bg-soft: #0F1524;--bg-muted: #141B2D;--ink: #E6EDF5;--ink-2: #CBD5E1;--ink-3: #94A3B8;--muted: #64748B;--muted-2: #475569;--line: #1E293B;--line-soft: #111827;--accent: #38BDF8;--accent-ink: #7DD3FC;--accent-soft: #082F49;--ok-soft: #052E16;--warn-soft: #422006;--danger-soft: #450A0A}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-ink)}img{max-width:100%;display:block}button{font:inherit;cursor:pointer;background:none;border:none;color:inherit;padding:0}.wrap{max-width:1240px;margin:0 auto;padding:0 32px}.wrap-narrow{max-width:820px;margin:0 auto;padding:0 28px}.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--line)}.nav__inner{max-width:1240px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:32px}.logo{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--font-serif);font-weight:600;font-size:21px;letter-spacing:-.02em;color:var(--ink);text-decoration:none}.logo__mark{display:inline-block;width:10px;height:10px;background:var(--accent);border-radius:2px;transform:translateY(-1px);flex-shrink:0}.logo__dot{font-family:var(--font-mono);font-size:12px;color:var(--muted);font-weight:400;letter-spacing:.05em}.nav__links{display:flex;gap:2px;font-size:14px}.nav__links a{color:var(--ink-3);padding:6px 12px;border-radius:6px;transition:color .15s,background .15s}.nav__links a:hover{color:var(--ink);background:var(--bg-muted)}.nav__links a.is-active{color:var(--ink);font-weight:500}.nav__cta{display:flex;gap:10px;align-items:center}.theme-btn{width:36px;height:36px;border-radius:999px;display:grid;place-items:center;color:var(--ink-3);border:1px solid var(--line);background:transparent;transition:all .15s}.theme-btn:hover{color:var(--ink);border-color:var(--ink-3)}.page-content{max-width:1240px;margin:0 auto;padding:40px 32px 80px}.eyebrow{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}:root{--grid-line: color-mix(in srgb, var(--ink) 6%, transparent)}[data-theme=dark]{--grid-line: color-mix(in srgb, var(--ink) 9%, transparent)}.hero{border:1px solid var(--line);border-radius:14px;padding:clamp(32px,5vw,64px);background-color:var(--bg-soft);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:40px 40px;position:relative;overflow:hidden;margin-bottom:32px}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top left,var(--accent-soft),transparent 65%);pointer-events:none}.hero>*{position:relative}.hero-label{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:20px;display:flex;align-items:center;gap:6px}.hero-label:before{content:"●";font-size:8px}.hero h1{font-family:var(--font-serif);font-weight:500;font-size:clamp(2.4rem,6vw,4.8rem);line-height:1;margin:0 0 20px;letter-spacing:-.03em;color:var(--ink)}.hero h1 em{font-style:normal;color:var(--accent)}.lead{font-family:var(--font-serif);font-style:italic;font-size:18px;color:var(--ink-3);max-width:680px;line-height:1.55;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.section-header{margin:56px 0 20px;padding-bottom:14px;border-bottom:1px dashed var(--line);display:flex;justify-content:space-between;align-items:baseline}.section-label{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:8px}.section-header h2{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.02em;margin:0;color:var(--ink)}.section-header h2:before{content:"## ";font-family:var(--font-mono);font-size:14px;color:var(--accent);font-weight:400}.card-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.card-list{display:grid;gap:12px}.card{border:1px solid var(--line);border-radius:14px;padding:22px;background:var(--bg-soft);transition:border-color .15s,transform .15s,background .15s;box-shadow:var(--shadow-card)}.card:hover{border-color:var(--muted-2);transform:translateY(-2px);background:var(--bg-muted)}.card h2,.card h3{font-family:var(--font-serif);font-weight:500;letter-spacing:-.02em;margin:0 0 8px;color:var(--ink)}.card h2{font-size:1.15rem}.card h3{font-size:1.1rem}.card h2 a,.card h3 a{color:var(--ink)}.card h2 a:hover,.card h3 a:hover{color:var(--accent)}.card p{color:var(--ink-3);font-size:.9rem;line-height:1.6;margin:0}.card ul{color:var(--ink-3);font-size:.9rem;line-height:1.8;margin:0;padding-left:18px}.card ul strong{color:var(--ink-2)}.card-meta{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.tag{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:var(--r-s);border:1px solid var(--line);color:var(--ink-3);background:var(--bg-soft)}.date{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;line-height:1.4}.pill:before{content:"";width:5px;height:5px;border-radius:999px;background:currentColor;opacity:.9}.pill--ok{color:var(--ok);background:var(--ok-soft)}.pill--warn{color:var(--warn);background:var(--warn-soft)}.pill--danger{color:var(--danger);background:var(--danger-soft)}.pill--info{color:var(--accent);background:var(--accent-soft)}.button{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:999px;font-family:var(--font-sans);font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;border:1px solid transparent;cursor:pointer}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--ink);color:var(--bg)}.button-primary:hover{color:var(--bg);opacity:.85}.button-secondary{background:var(--bg);color:var(--ink);border-color:var(--line)}.button-secondary:hover{background:var(--bg-muted);color:var(--ink)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.chip{border:1px solid var(--line);border-radius:999px;color:var(--ink-3);padding:5px 12px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;background:var(--bg-soft)}article.prose{max-width:720px}article.prose h1{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.8rem,4vw,3rem);line-height:1.05;letter-spacing:-.03em;color:var(--ink);margin-bottom:16px}article.prose .prose-meta{display:flex;gap:12px;align-items:center;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--line);flex-wrap:wrap}article.prose .prose-body{line-height:1.75;color:var(--ink-2)}article.prose .prose-body h2{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.02em;margin-top:2em}article.prose .prose-body h3{color:var(--ink-2);margin-top:1.5em}article.prose .prose-body code{background:var(--bg-muted);border:1px solid var(--line);padding:2px 6px;border-radius:4px;font-family:var(--font-mono);font-size:.875em;color:var(--accent-ink)}[data-theme=dark] article.prose .prose-body code{color:var(--accent)}article.prose .prose-body pre{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:20px;overflow-x:auto}article.prose .prose-body pre code{background:none;border:none;padding:0;color:var(--ink-2)}article.prose .prose-body blockquote{border-left:3px solid var(--accent);margin:0;padding:12px 20px;background:var(--accent-soft);border-radius:0 8px 8px 0;color:var(--ink-3);font-family:var(--font-serif);font-style:italic}article.prose .prose-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.muted{color:var(--muted)}.rule{height:1px;background:var(--line);border:0;margin:0}.footer{border-top:1px solid var(--line);padding:48px 0 32px;margin-top:80px;color:var(--muted);font-size:13px}.footer__grid{max-width:1240px;margin:0 auto 40px;padding:0 32px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}.footer__col h4{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin:0 0 14px;font-weight:500}.footer__col a{display:block;padding:4px 0;color:var(--ink-3);transition:color .15s;text-decoration:none}.footer__col a:hover{color:var(--ink)}.footer__col p{color:var(--ink-3);font-size:13px;line-height:1.6;margin:0;max-width:280px}.footer__bar{max-width:1240px;margin:0 auto;padding:20px 32px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;color:var(--muted)}@media(max-width:900px){.nav__links{display:none}.nav__inner{gap:16px}.page-content{padding:28px 20px 60px}.footer__grid{grid-template-columns:1fr;gap:28px;padding:0 20px;margin-bottom:24px}.footer__bar{padding:16px 20px 0;flex-direction:column;gap:6px}.wrap,.wrap-narrow{padding:0 20px}.card-grid{grid-template-columns:1fr}}
