:root{--bg:#fff;--surface:#f4f5f7;--surface-2:#e9ebef;--ink:#14181d;--ink-2:#4b5563;--muted:#7b8794;--line:#d9dde3;--accent:#d6336c;--accent-ink:#fff;--accent-soft:#fce7ef;--ok:#1f7a4d;--ok-soft:#e1f3e9;--warn:#9a6400;--warn-soft:#fbf0d6;--code-bg:#14181d;--code-ink:#e6edf3;--radius:8px;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--display:"Archivo Black", var(--sans);color-scheme:light dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1216;--surface:#171b21;--surface-2:#1f252d;--ink:#e7ebf0;--ink-2:#b3bcc7;--muted:#8793a0;--line:#2a313b;--accent:#f0619a;--accent-ink:#1a0810;--accent-soft:#3a1524;--ok:#5fcb8e;--ok-soft:#14301f;--warn:#e9b949;--warn-soft:#332a0e;--code-bg:#0b0e12;--code-ink:#e6edf3}}:root[data-theme=dark]{--bg:#0f1216;--surface:#171b21;--surface-2:#1f252d;--ink:#e7ebf0;--ink-2:#b3bcc7;--muted:#8793a0;--line:#2a313b;--accent:#f0619a;--accent-ink:#1a0810;--accent-soft:#3a1524;--ok:#5fcb8e;--ok-soft:#14301f;--warn:#e9b949;--warn-soft:#332a0e;--code-bg:#0b0e12;--code-ink:#e6edf3}@font-face{font-family:Archivo Black;src:url(/fonts/ArchivoBlack-Regular.ttf)format("truetype");font-weight:400;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.65}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3{text-wrap:balance;margin:0;line-height:1.2}h1{font-family:var(--display);letter-spacing:-.01em;font-size:clamp(30px,5vw,48px);font-weight:400}h2{margin-top:48px;font-size:clamp(22px,3vw,28px);font-weight:700}h3{margin-top:28px;font-size:18px;font-weight:700}p{margin:12px 0}.prose{max-width:70ch}.prose img{max-width:100%;height:auto}.prose pre{overflow-x:auto}.prose table{border-collapse:collapse;width:100%;margin:16px 0;font-size:14.5px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:8px 12px}.prose th{letter-spacing:.04em;color:var(--ink-2);background:var(--surface);white-space:nowrap;font-size:12.5px}.prose ol,.prose ul{padding-left:1.4em}.prose li{margin:6px 0}.prose h2{margin-top:40px}.prose h3{margin-top:24px}code{font-family:var(--mono);background:var(--surface);border-radius:4px;padding:1px 6px;font-size:.9em}pre{background:var(--code-bg);color:var(--code-ink);border-radius:var(--radius);font-family:var(--mono);margin:12px 0;padding:14px 16px;font-size:13px;line-height:1.6;overflow-x:auto}pre code{color:inherit;background:0 0;padding:0}.container{max-width:1120px;margin:0 auto;padding-inline:clamp(16px,4vw,32px)}.narrow{max-width:780px}.site-header{border-bottom:1px solid var(--line);background:var(--bg);z-index:10;position:sticky;top:0}.site-header .container{align-items:center;gap:24px;min-height:56px;display:flex}.brand{font-family:var(--display);color:var(--ink);letter-spacing:-.01em;align-items:center;gap:9px;font-size:20px;display:inline-flex}.brand-mark{border-radius:7px;width:28px;height:28px;display:block}.brand:hover{text-decoration:none}.brand span{color:var(--accent)}.site-nav{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.site-nav a{color:var(--ink-2);border-radius:6px;padding:6px 10px;font-size:14.5px}.site-nav a:hover,.site-nav a[aria-current=page]{background:var(--surface);color:var(--ink);text-decoration:none}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:80px;padding-block:32px;font-size:14px}.site-footer .cols{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;display:grid}.site-footer h4{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin:0 0 8px;font-size:13px}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:4px 0}.site-footer a{color:var(--muted)}.page-head{padding-block:40px 20px}.page-head p.lede{color:var(--ink-2);max-width:64ch;font-size:18px}.eyebrow{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:12px}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px 18px}.card h3{margin-top:0}.card p{color:var(--ink-2);margin:6px 0 0;font-size:14.5px}.card a.stretch:after{content:"";position:absolute;inset:0}.card{position:relative}.pill{font-family:var(--mono);background:var(--surface-2);color:var(--ink-2);border-radius:999px;padding:2px 8px;font-size:11px;display:inline-block}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.accent{background:var(--accent-soft);color:var(--accent)}.note{border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--radius) var(--radius) 0;margin:16px 0;padding:10px 16px}.btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:8px 14px;font-size:14.5px;display:inline-flex}.btn:hover{background:var(--surface-2);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.05)}.btn:disabled{opacity:.5;cursor:not-allowed}label.field{color:var(--ink-2);gap:4px;font-size:13px;display:grid}label.field>span{justify-content:space-between;display:flex}label.field output{font-family:var(--mono);color:var(--ink)}input[type=text],select,textarea{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;width:100%;padding:8px 10px}input[type=range]{width:100%;accent-color:var(--accent)}textarea{font-family:var(--mono);font-size:12.5px}.tool{grid-template-columns:300px minmax(0,1fr);gap:20px;margin-top:16px;display:grid}.tool .panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-content:start;gap:14px;padding:16px;display:grid}.tool .stage{align-content:start;gap:12px;display:grid}.tool .preview{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-position:50%;background-size:24px 24px;place-items:center;min-height:280px;padding:20px;display:grid;overflow:hidden}.tool .preview svg,.tool .preview canvas{max-width:100%;max-height:420px;display:block}.tool .preview.drop{outline:2px dashed var(--accent);outline-offset:-6px}.tool .exports{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tool .exports .hint{color:var(--muted);width:100%;font-size:12.5px}.tool .code{gap:8px;display:grid}.tool .code header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.tool .code textarea{min-height:140px}.tool .status{color:var(--muted);font-size:13px;font-family:var(--mono)}@media (width<=760px){.tool{grid-template-columns:1fr}}.faq details{border-top:1px solid var(--line);padding:12px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:600}.faq details p{color:var(--ink-2);margin:8px 0 0}.presets{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.presets a{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);gap:6px;padding:12px;display:grid}.presets a:hover{border-color:var(--accent);text-decoration:none}.presets a svg{width:100%;height:56px}.presets a b{font-size:14px}.presets a small{color:var(--muted);font-size:12px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
