:root{--bg:oklch(98% .005 250);--surface:oklch(100% 0 0);--fg:oklch(22% .02 240);--muted:oklch(50% .018 240);--border:oklch(90% .008 240);--accent:oklch(58% .16 145);--accent-soft:oklch(94% .04 145);--warn:oklch(72% .15 75);--warn-soft:oklch(96% .04 85);--danger:oklch(58% .19 25);--danger-soft:oklch(96% .03 25);--sans:-apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", system-ui, sans-serif;--mono:"JetBrains Mono", "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--max:980px;--radius:6px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-variant-numeric:tabular-nums;margin:0;font-size:15px;line-height:1.6}a{color:inherit;text-decoration-color:var(--border);text-underline-offset:3px}code,pre,.mono{font-family:var(--mono);font-size:.92em}pre{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:0;padding:12px 16px;overflow-x:auto}.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}header.site{border-bottom:1px solid var(--border);background:var(--surface);z-index:10;position:sticky;top:0}header.site .wrap{align-items:center;gap:20px;height:52px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:flex}.brand .dot{background:var(--accent);border-radius:50%;width:8px;height:8px;display:inline-block}header nav{gap:20px;margin-left:auto;font-size:14px;display:flex}header nav a{color:var(--muted);text-decoration:none}header nav a:hover{color:var(--fg)}h3{margin:24px 0 8px;font-size:15px;font-weight:600}.lede{color:var(--muted);max-width:62ch;margin-bottom:24px;font-size:17px}main{min-height:calc(100vh - 190px);padding-bottom:72px}.pill{font-size:12px;font-family:var(--mono);border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:4px 8px;display:inline-flex}.pill.ok{background:var(--accent-soft);border-color:color-mix(in oklch, var(--accent) 30%, var(--border));color:oklch(40% .12 145)}.pill.beta{background:var(--warn-soft);border-color:color-mix(in oklch, var(--warn) 35%, var(--border));color:oklch(45% .11 75)}.pill.no{background:var(--danger-soft);border-color:color-mix(in oklch, var(--danger) 25%, var(--border));color:oklch(45% .14 25)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;padding:16px 20px;text-decoration:none;transition:border-color .12s;display:flex}.card:hover{border-color:color-mix(in oklch, var(--accent) 45%, var(--border))}.card h3{margin:8px 0 4px}.card p{color:var(--muted);margin:0;font-size:14px}.card .head{justify-content:space-between;align-items:center;gap:8px;display:flex}table{border-collapse:collapse;width:100%;margin:12px 0 4px;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:8px 12px}th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px;font-weight:600}tbody tr:last-child td{border-bottom:none}td.num,th.num{text-align:right;font-family:var(--mono)}.field{gap:4px;margin-bottom:12px;display:grid}.field label{color:var(--muted);font-size:13px}input[type=number],input[type=text]{font:inherit;font-family:var(--mono);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--fg);width:100%;padding:8px 12px}input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--fg);cursor:pointer;padding:8px 16px}button.primary{background:var(--fg);color:var(--surface);border-color:var(--fg)}button:hover{border-color:var(--accent)}.toolbar{border:1px dashed var(--border);border-radius:var(--radius);text-align:center;background:var(--surface);margin:20px 0;padding:24px}.toolbar.drag{border-color:var(--accent);background:var(--accent-soft);border-style:solid}.toolbar p{color:var(--muted);margin:4px 0 0;font-size:13px}.kpis{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;margin:20px 0;display:grid;overflow:hidden}.kpi{background:var(--surface);padding:12px 16px}.kpi .k{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11px}.kpi .v{font-family:var(--mono);margin-top:4px;font-size:20px}.bar{background:var(--border);border-radius:999px;height:10px;margin:12px 0 4px;overflow:hidden}.bar>span{background:var(--accent);height:100%;display:block}.bar.warn>span{background:var(--warn)}.bar.danger>span{background:var(--danger)}.note{color:var(--muted);border-left:2px solid var(--border);margin:16px 0;padding-left:12px;font-size:13px}.err{color:oklch(45% .14 25);font-family:var(--mono);font-size:13px}details{border-bottom:1px solid var(--border);padding:12px 0}details:last-of-type{border-bottom:none}summary{cursor:pointer;font-weight:500}details p{color:var(--muted);margin:8px 0 0}footer.site{border-top:1px solid var(--border);color:var(--muted);padding:24px 0 40px;font-size:13px}footer.site p{margin:0 0 8px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.card .outcome{color:var(--fg);border-top:1px dashed var(--border);margin:8px 0 0;padding-top:8px;font-size:13px}.card .demo{font-size:13px;font-family:var(--mono);color:oklch(42% .13 145);border-bottom:1px solid color-mix(in oklch, var(--accent) 40%, transparent);align-self:flex-start;margin-top:auto;padding-top:12px;text-decoration:none;display:inline-block}.card .demo:hover{color:var(--accent)}.card pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.related{margin-top:56px}.split{grid-template-columns:1fr 1fr;gap:16px;margin:16px 0 4px;display:grid}.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px}.panel.ok{border-color:color-mix(in oklch, var(--accent) 32%, var(--border));background:var(--accent-soft)}.panel.no{border-color:color-mix(in oklch, var(--danger) 22%, var(--border));background:var(--danger-soft)}.panel h3{text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:13px}.panel ul{margin:0;padding-left:20px}.panel li{margin:4px 0}.panel .panel-note{color:var(--muted);margin:12px 0 0;font-size:12px}.panel.ok h3{color:oklch(40% .12 145)}.panel.no h3{color:oklch(45% .14 25)}@media (width<=640px){.split{grid-template-columns:1fr}h1{margin-top:28px;font-size:24px}.lede{font-size:15px}header.site .wrap{flex-wrap:wrap;row-gap:4px;height:auto;padding:12px 16px}header nav{flex-wrap:wrap;gap:16px;width:100%;margin-left:0;font-size:13px}.wrap{padding:0 16px}main{min-height:0}.kpis{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}table{display:block;overflow-x:auto}table thead,table tbody{width:100%;display:table}code,.mono{overflow-wrap:anywhere}pre{font-size:12px}}.tabs{border-bottom:1px solid var(--border);gap:8px;margin:20px 0 8px;display:flex}.tab{font-family:var(--font-body);color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;border-radius:4px 4px 0 0;margin-bottom:-1px;padding:8px 16px;font-size:13px}.tab.on{background:var(--surface);border-color:var(--border);color:var(--fg)}textarea{width:100%;font-family:var(--mono);border:1px solid var(--border);background:var(--surface);color:var(--fg);resize:vertical;border-radius:4px;padding:12px 16px;font-size:13px;line-height:1.6}.row-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0 0;display:flex}.row-actions button.primary{border-color:var(--accent)}.chk{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.verdict{font-family:var(--mono);border-left:2px solid var(--accent);margin:20px 0 4px;padding-left:12px;font-size:13px}.group{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:24px 0 8px;font-size:13px}.finding{border:1px solid var(--border);background:var(--surface);border-radius:4px;margin-bottom:12px;padding:12px 16px}.finding-head{align-items:center;gap:12px;font-size:12px;display:flex}.lineno{font-family:var(--mono);color:var(--muted);margin-left:auto}.finding-msg{margin:8px 0 0;font-size:14px}.finding-evidence{font-family:var(--mono);color:var(--muted);overflow-wrap:anywhere;margin:8px 0 0;font-size:12px}.finding-fix{color:var(--muted);margin:8px 0 0;font-size:13px}.pill.error{color:oklch(45% .18 25);border-color:color-mix(in oklch, oklch(45% .18 25) 40%, var(--border))}.pill.warn{color:oklch(48% .12 75);border-color:color-mix(in oklch, oklch(48% .12 75) 40%, var(--border))}.pill.info{color:var(--muted)}.kit-strip{border:1px solid var(--border);border-left:2px solid var(--accent);background:var(--surface);border-radius:4px;margin:20px 0 0;padding:16px}.kit-strip a:hover{color:var(--accent)}.explain{color:var(--fg);margin:16px 0 0;font-size:14px}footer.site .footer-line{color:var(--muted);margin:0;font-size:14px}footer.site .footer-nav{flex-wrap:wrap;gap:4px 20px;margin:12px 0 0;font-size:14px;display:flex}footer.site .footer-nav a{color:var(--muted);border-bottom:1px solid #0000;text-decoration:none}footer.site .footer-nav a:hover{color:var(--ink);border-bottom-color:currentColor}[data-panel=cli] pre{white-space:pre-wrap;overflow-wrap:anywhere}[data-panel=cli] pre code{font-size:12px}.btn-link{border:1px solid var(--border);background:var(--surface);color:var(--fg);border-radius:4px;padding:8px 16px;font-size:14px;text-decoration:none;display:inline-block}.btn-link:hover{border-color:var(--accent);color:var(--accent)}.one-click-form{flex-wrap:wrap;gap:12px;margin:16px 0 8px;display:flex}.one-click-form input[type=email]{border:1px solid var(--line);background:var(--card);min-width:200px;color:var(--ink);font:inherit;border-radius:8px;flex:240px;padding:12px}.one-click-form button{border:1px solid var(--ink);background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;border-radius:8px;padding:12px 16px}.one-click-form button:hover{opacity:.9}.one-click-fallback{color:var(--muted);margin:0;font-size:13px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.card-cell{flex-direction:column;display:flex}.card-cell .card{flex:1}.card-extra{color:var(--muted);text-underline-offset:2px;margin-top:8px;font-size:13px;text-decoration:underline}:root{--bg:#fbfbfd;--surface:#fff;--fg:#1d1d1f;--muted:#6e6e73;--border:#00000014;--hairline:#0000000f;--accent:#0071e3;--accent-soft:#0071e314;--radius:16px;--radius-lg:24px;--ease:cubic-bezier(.22, .61, .36, 1);--shadow-rest:0 1px 2px #0000000a, 0 8px 24px #0000000a;--shadow-lift:0 2px 4px #0000000d, 0 20px 48px #0000001a}body{letter-spacing:-.01em;background:var(--bg);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.47}h1{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(2.25rem,4.5vw,3.5rem);font-weight:600;line-height:1.05}h2{letter-spacing:-.02em;margin:56px 0 16px;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:600;line-height:1.1}h3{letter-spacing:-.01em;margin:0 0 8px;font-size:1.1875rem;font-weight:600}p{margin:0 0 16px}p.lede,.lede{color:var(--muted);letter-spacing:-.01em;font-size:clamp(1.0625rem,1.6vw,1.3125rem);line-height:1.45}a{text-decoration-color:#0071e34d}a:hover{text-decoration-color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}header.site{z-index:40;backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--hairline);transition:background .3s var(--ease), border-color .3s var(--ease);background:#fbfbfdb8;position:sticky;top:0}header.site.scrolled{background:#fbfbfddb;border-bottom-color:#0000001a}header.site .wrap{gap:24px;height:48px}header.site nav{gap:24px;margin-left:auto;display:flex}header.site nav a{letter-spacing:0;color:var(--fg);opacity:.86;transition:opacity .2s var(--ease);font-size:13px;text-decoration:none}header.site nav a:hover{opacity:1;text-decoration:none}.brand{letter-spacing:-.01em;font-size:15px}.card,.grid>a,.grid>article,.grid>div{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-rest);transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .5s var(--ease)}.card:hover,.grid>a:hover,.grid>article:hover{box-shadow:var(--shadow-lift);border-color:#0000001a;transform:translateY(-3px)}.grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}button,.btn-link,a.btn{border:1px solid var(--border);background:var(--surface);color:var(--fg);cursor:pointer;transition:transform .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:980px;padding:8px 20px;font-size:15px;box-shadow:0 1px 2px #0000000a}button:hover,.btn-link:hover,a.btn:hover{border-color:#00000029;box-shadow:0 4px 12px #00000014}button:active,.btn-link:active,a.btn:active{transform:scale(.97)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:#0077ed;box-shadow:0 8px 20px #0071e347}button.on{border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}pre{border-radius:var(--radius);border-color:var(--hairline);box-shadow:var(--shadow-rest)}table{border-collapse:collapse}th,td{border-bottom:1px solid var(--hairline);padding:16px}th{color:var(--muted);letter-spacing:0;font-size:13px;font-weight:500}input[type=text],textarea{border-radius:var(--radius);border-color:var(--border);font-size:15px;box-shadow:inset 0 1px 2px #0000000a}input[type=text]:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #0071e31f}.reveal{opacity:1;transform:none}html.js-reveal .reveal:not(.in){opacity:0;transform:translateY(16px)}html.js-reveal .reveal.in{opacity:1;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:none}@media (prefers-reduced-motion:reduce){.reveal,.reveal.in{opacity:1;transition:none;transform:none}.card:hover,.grid>a:hover{transform:none}*{scroll-behavior:auto!important}}.card a,.grid a:not(.card):not(.btn-link){color:var(--accent);font-size:15px;text-decoration:none}.card a:hover,.grid a:not(.card):not(.btn-link):hover{text-underline-offset:4px;text-decoration:underline}.kit-strip{border:1px solid var(--hairline);border-left:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow-rest);background:#ffffffb8;margin:24px 0 0;padding:20px 24px}.kit-strip a{color:var(--accent);font-size:15px;text-decoration:none}.kit-strip a:hover{text-underline-offset:4px;text-decoration:underline}main{padding-bottom:64px}section+section{margin-top:48px}.card .demo{font-family:var(--sans);letter-spacing:-.01em;color:var(--accent);border-bottom:0;padding-top:16px;font-size:15px;font-weight:500;text-decoration:none}.card .demo:hover{text-underline-offset:4px;color:var(--accent);text-decoration:underline}.card h3 a,.card h3,.grid>* h3 a{color:var(--fg)}.card h3 a:hover{color:var(--accent)}.cta{background:var(--accent);letter-spacing:-.01em;transition:background .2s var(--ease), box-shadow .2s var(--ease), transform .2s var(--ease);border-radius:980px;margin-top:8px;padding:12px 24px;font-size:17px;font-weight:500;text-decoration:none;display:inline-block;box-shadow:0 4px 16px #0071e33d;color:#fff!important}.cta:hover{background:#0077ed;text-decoration:none;box-shadow:0 10px 28px #00000024}.cta:active{transform:scale(.98)}body{background-color:#fbfbfd;background-image:radial-gradient(1200px 600px at 50% -10%,#00000009,#0000 70%),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.card,.grid>a,.grid>article,.grid>div{background:#ffffffa8;border:1px solid #ffffffb3;box-shadow:0 1px 2px #0000000a,0 12px 32px #0000000f}.card:hover,.grid>a:hover,.grid>article:hover{background:#fffc;border-color:#ffffffe6;box-shadow:0 2px 4px #0000000d,0 24px 56px #0000001f}pre,.finding{background:#ffffffb3;border-color:#ffffffb3}.card p,.card .demo{color:#3a3a3c}.card .demo{color:var(--accent)}:root{--line:var(--hairline);--card:var(--surface);--ink:var(--fg);--font-body:var(--sans)}html[data-theme=light]{color-scheme:light;--bg:#fbfbfd;--surface:#fff;--fg:#1d1d1f;--muted:#6e6e73;--border:#00000014;--hairline:#0000000f;--accent:#0071e3;--accent-soft:#0071e314;--line:var(--hairline);--card:var(--surface);--ink:var(--fg);--font-body:var(--sans)}html[data-theme=dark]{color-scheme:dark;--bg:#000;--surface:#1c1c1e;--fg:#f5f5f7;--muted:#a1a1a6;--border:#ffffff1f;--hairline:#ffffff1a;--accent:#4da3ff;--accent-soft:#4da3ff29;--line:var(--hairline);--card:var(--surface);--ink:var(--fg);--font-body:var(--sans)}html[data-theme=light] body{color:var(--fg);background-color:#f5f5f7;background-image:radial-gradient(1200px 620px at 50% -12%,#0000000d,#0000 72%),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box;background-clip:border-box,border-box}html[data-theme=light] header.site{background:#fbfbfdb8;border-bottom-color:#0000000f}html[data-theme=light] .card,html[data-theme=light] .grid>a,html[data-theme=light] .grid>article,html[data-theme=light] .grid>div{background:#ffffffa8;border-color:#0000000f;box-shadow:0 1px 2px #0000000d,0 12px 32px #00000012}html[data-theme=light] .kit-strip{background:#ffffffb8;border-color:#0000000f}html[data-theme=light] pre,html[data-theme=light] .finding{background:#ffffffb3;border-color:#0000000f}html[data-theme=light] .card p{color:#3a3a3c}html[data-theme=light] .card .demo{color:var(--accent)}html[data-theme=light] .pill.ok{color:#1a7f37;background:#34c7591f;border-color:#34c75959}html[data-theme=light] .pill.beta{color:#8a5300;background:#ff9f0a1f;border-color:#ff9f0a59}html[data-theme=light] th{color:#0000008c}html[data-theme=light] input[type=text],html[data-theme=light] textarea{color:var(--fg);background:#fff}html[data-theme=dark] body{color:var(--fg);background-color:#000;background-image:radial-gradient(1200px 620px at 50% -12%,#ffffff0f,#0000 72%),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box;background-clip:border-box,border-box}html[data-theme=dark] header.site{background:#000000b8;border-bottom-color:#ffffff1a}html[data-theme=dark] .card,html[data-theme=dark] .grid>a,html[data-theme=dark] .grid>article,html[data-theme=dark] .grid>div{background:#1c1c1ea8;border-color:#ffffff1a;box-shadow:0 1px 2px #0009,0 16px 40px #00000080}html[data-theme=dark] .kit-strip{background:#ffffff0f;border-color:#ffffff1f}html[data-theme=dark] pre,html[data-theme=dark] .finding{background:#1c1c1eb3;border-color:#ffffff1a}html[data-theme=dark] .card p{color:#c7c7cc}html[data-theme=dark] .card .demo{color:var(--accent)}html[data-theme=dark] .pill.ok{color:#7ee787;background:#34c75929;border-color:#34c75966}html[data-theme=dark] .pill.beta{color:#ffb74d;background:#ff9f0a29;border-color:#ff9f0a66}html[data-theme=dark] th{color:#f5f5f799}html[data-theme=dark] input[type=text],html[data-theme=dark] textarea{color:var(--fg);background:#1c1c1e}html[data-theme=dark] .cta{box-shadow:0 4px 20px #0006}.theme-toggle{font-family:var(--sans);border:1px solid var(--border);color:var(--muted);cursor:pointer;min-width:76px;box-shadow:none;transition:color .2s var(--ease), border-color .2s var(--ease);background:0 0;border-radius:980px;padding:4px 12px;font-size:13px}.theme-toggle:hover{color:var(--fg);box-shadow:none;border-color:#80808066}html[data-theme=light] .card:hover,html[data-theme=light] .grid>a:hover,html[data-theme=light] .grid>article:hover{background:#ffffffd1;border-color:#0000001a;box-shadow:0 2px 4px #0000000d,0 24px 56px #0000001f}html[data-theme=light] .panel.ok h3{color:#1a7f37}html[data-theme=dark] .card:hover,html[data-theme=dark] .grid>a:hover,html[data-theme=dark] .grid>article:hover{background:#1c1c1ed1;border-color:#ffffff29;box-shadow:0 2px 4px #000000b3,0 24px 56px #0009}html[data-theme=dark] .panel.ok h3{color:#4da3ff}header.site nav{align-items:center}header.site nav a{align-items:center;height:28px;display:inline-flex}.theme-toggle{vertical-align:middle;justify-content:center;align-items:center;height:28px;padding:0 12px;font-size:13px;line-height:1;display:inline-flex}a.card{color:var(--fg);flex-direction:column;gap:8px;padding:20px;text-decoration:none;display:flex}a.card:hover{text-decoration:none}.card-icon{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:10px;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex}a.card h3{letter-spacing:-.01em;color:var(--fg);margin:0;font-size:17px;line-height:1.25}.card-meta{color:var(--muted);margin:0;font-size:13px}.card-outcome{color:var(--fg);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:41px;margin:0;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.card-more{color:var(--accent);margin-top:auto;padding-top:8px;font-size:14px}a.card:hover .card-more{text-underline-offset:4px;text-decoration:underline}.status-badge{letter-spacing:.02em;vertical-align:2px;color:var(--muted);white-space:nowrap;background:#8080801f;border-radius:6px;padding:1px 8px;font-size:11px;font-weight:400}.card-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.skip-link{z-index:100;background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:8px;padding:12px 16px;position:absolute;top:0;left:-9999px}.skip-link:focus{top:12px;left:12px}.answer{border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 8px 8px 0;margin:20px 0 8px;padding:16px;font-size:17px;line-height:1.55}.table-scroll{margin:24px 0;overflow-x:auto}.table-scroll table{border-collapse:collapse;width:100%;font-size:15px}.table-scroll th,.table-scroll td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px}.table-scroll th{font-weight:600}.table-scroll td:first-child{color:var(--muted);white-space:nowrap}.link-list{flex-wrap:wrap;gap:12px 20px;margin:12px 0 0;padding:0;list-style:none;display:flex}.link-list a{border-bottom:1px solid var(--line);padding-bottom:4px;text-decoration:none}.link-list a:hover{border-color:var(--accent)}.article pre,main pre{overflow-x:auto}.pkg-version{color:var(--muted);font-variant-numeric:tabular-nums}p code,li code,td code{background:var(--accent-soft);border-radius:4px;padding:1px 8px;font-size:.94em}.footer-updated{font-variant-numeric:tabular-nums;margin-top:8px}.pick-hint{color:var(--muted);margin-top:4px;display:block}:root{--sans:system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--radius-card:14px;--radius-pill:999px;--max:1040px;--max-wide:1720px}html[data-theme=light]{--bg:#f6f7fb;--surface:#fff;--fg:#111827;--muted:#6b7280;--border:#0f172a1a;--hairline:#0f172a0f;--accent:#7c3aed;--accent-soft:#7c3aed1a;--line:var(--hairline);--card:var(--surface);--ink:var(--fg);--font-body:var(--sans)}html[data-theme=dark]{--bg:#08090d;--surface:#0f1117;--fg:#d4d9e1;--muted:#9ba3b4;--border:#ffffff29;--hairline:#ffffff14;--accent:#8b5cf6;--accent-soft:#8b5cf629;--line:var(--hairline);--card:var(--surface);--ink:var(--fg);--font-body:var(--sans)}html[data-theme=light] body{color:var(--fg);font-family:var(--sans);background-color:#f6f7fb;background-image:radial-gradient(1100px 560px at 50% -12%,#7c3aed12,#0000 62%),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box;background-clip:border-box,border-box}html[data-theme=dark] body{color:var(--fg);font-family:var(--sans);background-color:#0000;background-image:radial-gradient(900px 480px at 18% -10%,#8b5cf629,#0000 60%),radial-gradient(680px 400px at 82% -6%,#06b6d41a,#0000 58%),linear-gradient(#08090d 0%,#0a0c12 55%,#08090d 100%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}h1{letter-spacing:-.035em;max-width:22ch;margin:56px 0 16px;font-size:clamp(34px,4.4vw,54px);font-weight:700;line-height:1.06}h2{letter-spacing:-.02em;margin:52px 0 16px;font-size:22px;font-weight:650}.lede{max-width:62ch;margin-bottom:28px;font-size:18.5px;line-height:1.55}header.site{background:color-mix(in srgb, var(--surface) 72%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid var(--hairline)}html[data-theme=light] header.site{border-bottom-color:var(--hairline);background:#ffffffb8}html[data-theme=dark] header.site{border-bottom-color:var(--hairline);background:#08090da8}html[data-theme=light] header.site.scrolled{background:#ffffffe6}html[data-theme=dark] header.site.scrolled{background:#08090de0}header.site .wrap{padding-top:12px;padding-bottom:12px}header nav a{border-radius:var(--radius-pill);padding:8px 12px;transition:background .15s,color .15s}header nav a:hover{background:var(--accent-soft);color:var(--fg)}.theme-toggle{border-radius:var(--radius-pill);padding:8px 16px}.wrap{max-width:var(--max);padding-inline:clamp(20px,2.6vw,48px)}main.wrap:has(.grid){max-width:var(--max-wide)}.card,.grid>a,.grid>article,.grid>div{border-radius:var(--radius-card);border:1px solid var(--border);transition:transform .16s,border-color .16s,box-shadow .16s;box-shadow:0 1px 2px #0f172a0a}html[data-theme=dark] .card,html[data-theme=dark] .grid>a,html[data-theme=dark] .grid>article,html[data-theme=dark] .grid>div{box-shadow:0 1px 2px #0006}.card:hover,.grid>a:hover,.grid>article:hover,.grid>div:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));transform:translateY(-2px);box-shadow:0 8px 24px #0f172a14}html[data-theme=dark] .card:hover,html[data-theme=dark] .grid>a:hover,html[data-theme=dark] .grid>article:hover,html[data-theme=dark] .grid>div:hover{box-shadow:0 10px 28px #0000008c}.card{padding:20px 24px}.card h3{letter-spacing:-.01em;font-size:17px;font-weight:650}.card .card-icon,.card .icon{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 24%, transparent);border-radius:10px}.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.kit-strip{border-left:3px solid var(--accent);border-radius:10px;padding:20px;box-shadow:0 1px 2px #0f172a0a}html[data-theme=dark] .kit-strip{box-shadow:0 1px 2px #0006}.pill,.status-badge{border-radius:var(--radius-pill)}.status-badge{border:1px solid var(--border);padding:4px 12px;font-size:12px}.btn-link,button[type=submit]{border-radius:10px}pre{border:1px solid var(--border);border-radius:10px}p code,li code,td code{border-radius:6px;padding:1px 8px}a{text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--accent)}@media (width>=1100px){main.wrap:has(.grid)>p,main.wrap:has(.grid)>section>p{max-width:88ch}}.link-list{display:block}.link-list li{padding:8px 0}.link-list li+li{border-top:1px solid var(--hairline)}.link-list li:first-child{padding-top:4px}
