@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap";div.code-toolbar{position:relative}div.code-toolbar>.toolbar{position:absolute;z-index:10;top:.3em;right:.2em;transition:opacity .3s ease-in-out;opacity:0}div.code-toolbar:hover>.toolbar{opacity:1}div.code-toolbar:focus-within>.toolbar{opacity:1}div.code-toolbar>.toolbar>.toolbar-item{display:inline-block}div.code-toolbar>.toolbar>.toolbar-item>a{cursor:pointer}div.code-toolbar>.toolbar>.toolbar-item>button{background:none;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}div.code-toolbar>.toolbar>.toolbar-item>a,div.code-toolbar>.toolbar>.toolbar-item>button,div.code-toolbar>.toolbar>.toolbar-item>span{color:#bbb;font-size:.8em;padding:0 .5em;background:#f5f2f0;background:#e0e0e033;box-shadow:0 2px #0003;border-radius:.5em}div.code-toolbar>.toolbar>.toolbar-item>a:hover,div.code-toolbar>.toolbar>.toolbar-item>a:focus,div.code-toolbar>.toolbar>.toolbar-item>button:hover,div.code-toolbar>.toolbar>.toolbar-item>button:focus,div.code-toolbar>.toolbar>.toolbar-item>span:hover,div.code-toolbar>.toolbar>.toolbar-item>span:focus{color:inherit;text-decoration:none}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}:root{--bg: #0d1117;--bg-gradient: radial-gradient( 1200px 600px at 80% -10%, rgba(81, 112, 255, .1), transparent 60% ), radial-gradient( 900px 500px at 0% 0%, rgba(255, 102, 196, .07), transparent 55% );--surface-lowest: #0b0f15;--surface: #151a22;--surface-2: #1b212b;--surface-3: #222a36;--surface-bright: #2b3340;--border: #232b36;--border-strong: #333d4b;--fg: #e6edf3;--fg-muted: #9aa7b4;--fg-subtle: #6b7785;--accent: #a371f7;--accent-ink: #c9b3ff;--accent-pink: #ff66c4;--accent-blue: #5170ff;--brand-gradient: linear-gradient(135deg, var(--accent-pink), var(--accent-blue));--code-bg: #0b0f16;--code-inline-bg: #1b2230;--radius-sm: 8px;--radius: 16px;--radius-lg: 22px;--elevation-1: 0 1px 2px rgba(0, 0, 0, .3), 0 1px 3px 1px rgba(0, 0, 0, .15);--elevation-2: 0 1px 2px rgba(0, 0, 0, .3), 0 2px 6px 2px rgba(0, 0, 0, .15);--elevation-3: 0 4px 8px 3px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .3);--shadow: var(--elevation-2);--shadow-glow: 0 8px 30px -10px rgba(81, 112, 255, .35), var(--elevation-3);--ring: 0 0 0 3px rgba(163, 113, 247, .45);--ease: cubic-bezier(.2, .7, .2, 1);--page-pad: 24px;--max-page-width: min(1200px, 100% - (var(--page-pad) * 2));--content-width: min(760px, 100% - (var(--page-pad) * 2));--article-width: var(--content-width);--font-sans: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Roboto Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--color-primary: var(--bg);--color-primary-opaque: rgba(13, 17, 23, .82);--color-secondary: var(--fg);--color-accent: var(--accent);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:0;background-color:var(--bg);background-image:var(--bg-gradient);background-attachment:fixed;color:var(--fg);font-family:var(--font-sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh}h1,h2,h3,h4,h5{font-family:var(--font-mono);font-weight:700;line-height:1.15;color:var(--fg);margin:0 0 .5em;letter-spacing:-.02em}h1{font-size:clamp(2.2rem,5vw,3.4rem)}h2{font-size:clamp(1.7rem,3.5vw,2.3rem)}h3{font-size:clamp(1.3rem,2.5vw,1.55rem)}h4{font-size:1.1rem;color:var(--fg-muted)}p{margin:0 0 1.2em;color:var(--fg)}a{color:var(--accent-ink);text-decoration:none;transition:color .18s var(--ease)}a:hover{color:#fff}a.u-link{background-image:var(--brand-gradient);background-position:0 100%;background-repeat:no-repeat;background-size:100% 2px;padding-bottom:1px}a.u-link:hover{background-size:100% 6px}code,kbd,pre{font-family:var(--font-mono)}.linkbtn,a.linkbtn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-weight:600;font-size:.95rem;color:var(--fg);padding:11px 20px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface-2);box-shadow:var(--elevation-1);transition:transform .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease),color .18s var(--ease),background .18s var(--ease)}.linkbtn:hover,a.linkbtn:hover{color:#fff;border-color:transparent;background:var(--brand-gradient);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-ghost,a.btn-ghost{background:transparent;border-color:var(--border)}.container{width:var(--max-page-width);margin-inline:auto}.section{padding:64px 0}.eyebrow{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 12px}.grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.tag{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;text-transform:lowercase;color:var(--accent-ink);background:#a371f71f;border:1px solid rgba(163,113,247,.28);padding:4px 10px;border-radius:999px;white-space:nowrap}a.tag:hover{color:#fff;border-color:var(--accent);background:#a371f740}.analog-markdown{max-width:var(--content-width);margin:0 auto;font-size:1.05rem}.analog-markdown>*+*{margin-top:1.4em}.analog-markdown img{max-width:100%;border-radius:var(--radius);border:1px solid var(--border)}.analog-markdown h2,.analog-markdown h3{margin-top:2.2em;scroll-margin-top:90px}.analog-markdown h2{padding-bottom:.35em;border-bottom:1px solid var(--border)}.analog-markdown a{color:var(--accent-ink);background-image:var(--brand-gradient);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px}.analog-markdown a:hover{color:#fff;background-size:100% 4px}.analog-markdown :not(pre)>code{font-size:.88em;padding:.15em .45em;border-radius:6px;background:var(--code-inline-bg);border:1px solid var(--border);color:var(--accent-ink)}.analog-markdown pre{background:var(--code-bg)!important;border:1px solid var(--border);border-radius:var(--radius);padding:18px;overflow:auto;box-shadow:var(--shadow)}.analog-markdown blockquote{margin:0;padding:8px 20px;border-left:3px solid var(--accent);background:var(--surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--fg-muted)}.analog-markdown ul,.analog-markdown ol{padding-left:1.4em}.analog-markdown li{margin:.4em 0}.analog-markdown li::marker{color:var(--accent)}.analog-markdown hr{border:none;height:1px;background:var(--border)}::selection{background:#a371f759;color:#fff}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
