:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f7f7f5;--bg-elev:#fff;--bg-code:#f0f0ed;--border:#e2e2dd;--border-strong:#cfcfc8;--text:#17181c;--text-2:#4b4f58;--text-3:#7a7f8a;--accent:#2f4fd6;--accent-ink:#fff;--accent-soft:#e8ecfb;--warn-bg:#fff6e3;--warn-border:#f2d28a;--ok:#1f8a4c;--danger:#c0392b;--shadow:0 1px 2px #14161e0d, 0 8px 24px #14161e0d;--radius:12px;--sidebar-w:268px;--topbar-h:56px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0e1117;--bg-elev:#151a23;--bg-code:#1a2029;--border:#232a36;--border-strong:#303948;--text:#e9ecf1;--text-2:#aeb5c2;--text-3:#7d8594;--accent:#8fa6ff;--accent-ink:#0b1020;--accent-soft:#1b2340;--warn-bg:#2a2416;--warn-border:#5a4a1e;--ok:#5ccb8a;--danger:#ff8a7a;--shadow:0 1px 2px #0006, 0 8px 24px #00000059}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--topbar-h) + 16px)}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}body.nav-open{overflow:hidden}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,kbd,pre{font-family:var(--mono)}code{background:var(--bg-code);border:1px solid var(--border);border-radius:6px;padding:.1em .4em;font-size:.9em}pre{background:var(--bg-code);border:1px solid var(--border);border-radius:10px;margin:14px 0;padding:14px 16px;font-size:13.5px;line-height:1.55;overflow-x:auto}pre code{font-size:inherit;background:0 0;border:0;padding:0}kbd{border:1px solid var(--border-strong);background:var(--bg-elev);border-bottom-width:2px;border-radius:6px;padding:.05em .45em;font-size:.85em}.shell{min-height:100vh}.topbar{z-index:30;height:var(--topbar-h);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:0 20px;display:flex;position:sticky;top:0}.brand-link{color:var(--text);letter-spacing:-.01em;align-items:center;gap:10px;font-weight:650;display:flex}.brand-link:hover{text-decoration:none}.brand-logo{border-radius:7px;width:28px;height:28px}.topbar-right{align-items:center;gap:14px;display:flex}.topbar-link{color:var(--text-2);font-size:14px}.menu-btn{font:inherit;color:var(--text);background:var(--bg-elev);border:1px solid var(--border-strong);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:14px;display:none}.frame{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);display:grid}.sidebar{top:var(--topbar-h);height:calc(100vh - var(--topbar-h));border-right:1px solid var(--border);background:var(--bg);padding:18px 14px 40px;position:sticky;overflow-y:auto}.content{min-width:0;max-width:860px;padding:40px 48px 80px}.sidenav-search input{width:100%;font:inherit;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;outline:none;padding:8px 10px;font-size:14px}.sidenav-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.sidenav-group{margin-top:20px}.sidenav-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);padding:0 10px 6px;font-size:11.5px;font-weight:700}.sidenav ul{list-style:none}.sidenav li a{color:var(--text-2);border-radius:8px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:14.5px;display:flex}.sidenav li a:hover{background:var(--bg-elev);color:var(--text);text-decoration:none}.sidenav li a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidenav .ext{opacity:.6;font-size:12px}.sidenav-empty{color:var(--text-3);padding:16px 10px;font-size:14px}.scrim{display:none}@media (max-width:960px){.menu-btn{display:inline-block}.frame{display:block}.sidebar{left:0;right:0;top:var(--topbar-h);z-index:25;width:min(88vw,340px);height:auto;box-shadow:var(--shadow);border-right:0;transition:transform .18s;position:fixed;bottom:0;transform:translate(-102%)}.sidebar.open{transform:none}.scrim{inset:var(--topbar-h) 0 0 0;z-index:20;background:#00000059;border:0;display:block;position:fixed}.content{padding:28px 20px 64px}}.site-footer{border-top:1px solid var(--border);color:var(--text-3);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:72px;padding-top:20px;font-size:13px;display:flex}.site-footer a{color:var(--text-2)}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:12.5px;font-weight:700}h1{letter-spacing:-.02em;margin-top:6px;font-size:36px;font-weight:700;line-height:1.15}.lead{color:var(--text-2);max-width:62ch;margin-top:14px;font-size:18.5px;line-height:1.55}.prose{max-width:70ch}.prose h2{letter-spacing:-.015em;margin-top:44px;padding-top:4px;scroll-margin-top:80px;font-size:23px}.prose h3{margin-top:28px;font-size:17.5px}.prose p,.prose ul,.prose ol{color:var(--text);margin-top:12px}.prose ul,.prose ol{padding-left:22px}.prose li+li{margin-top:6px}.prose strong{font-weight:650}.prose table{border-collapse:collapse;width:100%;margin-top:14px;font-size:14.5px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:9px 10px}.prose th{color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-size:12.5px;font-weight:600}.prose td code{white-space:nowrap}.prose hr{border:0;border-top:1px solid var(--border);margin:36px 0}.muted{color:var(--text-3)}.small{font-size:14px}.copycmd{border:1px solid var(--border-strong);background:var(--bg-code);border-radius:10px;align-items:stretch;gap:0;margin:14px 0;display:flex;overflow:hidden}.copycmd pre{white-space:pre-wrap;word-break:break-all;background:0 0;border:0;border-radius:0;flex:1;margin:0;padding:12px 14px}.copycmd button{font:inherit;color:var(--text);background:var(--bg-elev);border:0;border-left:1px solid var(--border-strong);cursor:pointer;white-space:nowrap;padding:0 14px;font-size:13px;font-weight:600}.copycmd button:hover{background:var(--accent-soft);color:var(--accent)}.copycmd button.done{color:var(--ok)}.callout{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--bg-elev);border-radius:10px;margin:18px 0;padding:12px 16px;font-size:15px}.callout.warn{background:var(--warn-bg);border-left-color:#d9a441;border-color:var(--warn-border)}.callout .callout-title{margin-bottom:4px;font-weight:700}.callout p+p{margin-top:8px}.cards{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px;margin-top:22px;display:grid}.card{color:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elev);box-shadow:var(--shadow);padding:18px 18px 16px;transition:border-color .12s,transform .12s;display:block}a.card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-1px)}.card h3{letter-spacing:-.01em;font-size:16px;font-weight:650}.card p{color:var(--text-2);margin-top:6px;font-size:14.5px;line-height:1.5}.card .card-kicker{color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.steps{counter-reset:step;margin-top:18px;padding:0;list-style:none}.steps>li{counter-increment:step;margin-top:22px;padding-left:46px;position:relative}.steps>li:before{content:counter(step);width:30px;height:30px;color:var(--accent);background:var(--accent-soft);border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid;position:absolute;top:0;left:0}.steps>li>h3{margin-top:2px;font-size:17px}.steps>li>p{margin-top:6px}.hero{padding:10px 0 8px}.hero h1{font-size:44px}.hero .lead{font-size:19.5px}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.btn{font:inherit;cursor:pointer;border:1px solid var(--border-strong);background:var(--bg-elev);color:var(--text);border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:15px;font-weight:600;display:inline-flex}.btn:hover{border-color:var(--accent);text-decoration:none}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.primary:hover{filter:brightness(1.05)}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px 28px;margin-top:26px;display:grid}.feature h3{font-size:15.5px;font-weight:650}.feature p{color:var(--text-2);margin-top:4px;font-size:14.5px}.badge{background:var(--accent-soft);color:var(--accent);vertical-align:middle;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.pagenav{justify-content:space-between;gap:12px;margin-top:56px;font-size:15px;display:flex}.pagenav a{border:1px solid var(--border);border-radius:10px;flex:1;max-width:48%;padding:12px 14px;display:block}.pagenav a:hover{border-color:var(--accent);text-decoration:none}.pagenav .dir{color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700;display:block}.pagenav .next{text-align:right}.fields{gap:14px;margin-top:14px;display:grid}.field label{font-size:14.5px;font-weight:600;display:block}.field label span{color:var(--text-3);font-weight:400}.field .row{gap:8px;margin-top:6px;display:flex}.field input{font-family:var(--mono);color:var(--text);border:1px solid var(--border-strong);background:var(--bg-elev);border-radius:8px;outline:none;flex:1;min-width:0;padding:10px 12px;font-size:14px}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.seg{border:1px solid var(--border-strong);border-radius:10px;display:inline-flex;overflow:hidden}.seg button{font:inherit;background:var(--bg-elev);color:var(--text-2);cursor:pointer;border:0;padding:8px 14px;font-size:14px}.seg button+button{border-left:1px solid var(--border-strong)}.seg button.on{background:var(--accent-soft);color:var(--accent);font-weight:650}.qr-stage{text-align:center;margin-top:18px}.qr-stage canvas{width:min(88vw,380px);height:auto;image-rendering:pixelated;border:1px solid var(--border);background:#fff;border-radius:8px}.qr-controls{justify-content:center;gap:8px;margin-top:10px;display:flex}.err{color:var(--danger)}
