:root{--ink:#1a202c;--muted:#64748b;--line:#e2e8f0;--brand:#1d4ed8;--brand-dark:#1e40af;--bg:#f8fafc;--card:#ffffff;--error-bg:#fef2f2;--error-ink:#b91c1c;--ok-bg:#f0fdf4;--ok-ink:#15803d;--info-bg:#eff6ff;--info-ink:#1d4ed8}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}a{color:var(--brand)}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:var(--card);border-bottom:1px solid var(--line)}.nav .brand{font-weight:700;color:var(--ink);text-decoration:none}.nav .links{display:flex;align-items:center;gap:14px}.container{max-width:960px;margin:0 auto;padding:28px 20px 64px}.container.narrow{max-width:460px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px 22px;margin-bottom:20px}.card h2{margin-top:0}.stack{display:grid;grid-gap:12px;gap:12px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}label{display:block;font-size:14px;font-weight:600;margin-bottom:4px}input,select{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:7px;font-size:15px;background:#fff}input:focus,select:focus{outline:2px solid var(--brand);outline-offset:1px}.inline input,.inline select{width:auto}button{background:var(--brand);color:#fff;border:0;border-radius:7px;padding:9px 16px;font-size:15px;font-weight:600;cursor:pointer}button:hover{background:var(--brand-dark)}button.secondary{background:transparent;color:var(--brand);border:1px solid var(--line)}button.secondary:hover{background:var(--info-bg)}.banner{border-radius:8px;padding:10px 14px;margin-bottom:16px;font-size:14.5px}.banner.error{background:var(--error-bg);color:var(--error-ink)}.banner.ok{background:var(--ok-bg);color:var(--ok-ink)}.banner.info{background:var(--info-bg);color:var(--info-ink)}.muted{color:var(--muted);font-size:14px}table.table{width:100%;border-collapse:collapse;font-size:14.5px}table.table td,table.table th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}table.table th{font-size:13px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.code-badge{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:20px;letter-spacing:.18em;background:var(--info-bg);color:var(--info-ink);border-radius:8px;padding:6px 12px;display:inline-block}.page-title{margin:0 0 18px}