:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070a08;--surface:#0c110e;--surface-2:#111814;--border:#1c2620;--border-hover:#2d3c33;--accent:#3dff7f;--accent-dim:#1f8f48;--accent-ink:#04140a;--amber:#f5b041;--red:#ff5f56;--blue:#6cb6ff;--text:#d8efe0;--text-2:#8fae9b;--muted:#5d7667;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--r-sm:2px;--r-md:4px;--ease:cubic-bezier(.23, 1, .32, 1);--max:1120px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--text);font:400 15px/1.65 var(--mono);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;margin:0}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-underline-offset:3px;-webkit-text-decoration-color:var(--border-hover);text-decoration-color:var(--border-hover)}a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}img,svg{max-width:100%;display:block}h1,h2,h3{letter-spacing:-.02em;margin:0;font-weight:700}h1{font-size:clamp(34px,6vw,56px);line-height:1.05}h2{font-size:clamp(24px,3.4vw,30px);font-weight:600;line-height:1.2}h3{font-size:17px;font-weight:600;line-height:1.35}p{margin:0}code,kbd{color:var(--accent);font-family:inherit}.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}@media (width>=720px){.wrap{padding:0 32px}}.muted{color:var(--muted)}.dim{color:var(--text-2)}.ok{color:var(--accent)}.warn{color:var(--amber)}.bad{color:var(--red)}.prose{max-width:68ch;color:var(--text-2)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{min-height:40px;font:600 14px/1.2 var(--mono);white-space:nowrap;color:var(--accent-ink);background:var(--accent);border:1px solid var(--accent);border-radius:var(--r-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:filter .14s var(--ease), transform 80ms var(--ease), background-color .14s var(--ease), border-color .14s var(--ease);justify-content:center;align-items:center;gap:8px;padding:8px 16px;text-decoration:none;display:inline-flex}.btn:hover{filter:brightness(1.1)}.btn:active{transform:scale(.97)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn[aria-busy=true]{cursor:progress}.btn[aria-busy=true]:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn.ghost{color:var(--text);border-color:var(--border-hover);background:0 0}.btn.ghost:hover{border-color:var(--accent-dim);color:var(--accent);filter:none}.btn.danger{color:var(--red);background:0 0;border-color:#4a2220}.btn.small{min-height:32px;padding:4px 12px;font-size:13px}.btn svg{flex:none;width:16px;height:16px}@media (pointer:coarse){.btn{min-height:44px}}.nav{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#070a08e0;position:sticky;top:0}.nav .wrap{justify-content:space-between;align-items:center;gap:16px;height:56px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:8px;font-weight:700;text-decoration:none;display:inline-flex}.brand .cursor{background:var(--accent);width:9px;height:18px;animation:1.1s step-end infinite blink}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.brand .cursor{animation:none}}.nav-links{align-items:center;gap:24px;font-size:13px;display:flex}.nav-links a:not(.btn){color:var(--text-2);text-decoration:none}.nav-links a:not(.btn):hover{color:var(--accent)}.nav-links .hide-sm{display:none}@media (width>=760px){.nav-links .hide-sm{display:inline}}section{border-top:1px solid var(--border);padding:64px 0}@media (width>=900px){section{padding:96px 0}}.section-head{gap:12px;max-width:68ch;margin-bottom:40px;display:grid}.section-head .path{color:var(--muted);font-size:13px}.section-head .path:before{content:"~/";color:var(--accent-dim)}.hero{border-top:0;padding:48px 0 64px}@media (width>=960px){.hero{padding:88px 0 104px}}.hero-grid{align-items:center;gap:40px;display:grid}@media (width>=960px){.hero-grid{grid-template-columns:1fr 1.05fr;gap:56px}}.hero h1{margin:16px 0 20px}.hero .lede{color:var(--text-2);max-width:52ch;font-size:16px}.hero .cta{flex-wrap:wrap;align-items:center;gap:16px;margin-top:32px;display:flex}.hero .fine{color:var(--muted);margin-top:16px;font-size:13px}.prompt{color:var(--muted);font-size:13px}.prompt b{color:var(--accent);font-weight:500}.term{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);margin:0;font-size:13px;line-height:1.6;overflow:hidden}.term-head{border-bottom:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:12px;display:flex}.term-head .dots{gap:6px;display:flex}.term-head .dots i{background:var(--border-hover);border-radius:50%;width:8px;height:8px}.term-body{padding:12px 16px}.term-foot{border-top:1px solid var(--border);color:var(--muted);padding:8px 16px;font-size:12px}.tag{min-width:9ch;margin-right:8px;font-size:12px;display:inline-block}.tag.sec{color:var(--red)}.tag.dep{color:var(--blue)}.tag.ok{color:var(--accent)}.tag.ren{color:var(--amber)}.diff{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.diff-head{border-bottom:1px solid var(--border);color:var(--muted);padding:8px 16px;font-size:12px}.diff-row{grid-template-columns:24px 1fr;gap:8px;padding:8px 16px;display:grid}@media (width>=900px){.diff-pair{grid-template-columns:1fr 1fr;display:grid}}.diff-row.del{color:#ffb3ad;background:#ff5f560f}.diff-row.add{color:#b8f5cc;background:#3dff7f0f}.diff-row .sign{color:var(--muted);-webkit-user-select:none;user-select:none}.diff-row.del .sign{color:var(--red)}.diff-row.add .sign{color:var(--accent)}.diff-pair+.diff-pair{border-top:1px solid var(--border)}.pipeline{border:1px solid var(--border);border-radius:var(--r-md);margin:0;padding:0;list-style:none}.pipeline li{gap:8px;padding:24px;display:grid}.pipeline li+li{border-top:1px solid var(--border)}@media (width>=900px){.pipeline li{grid-template-columns:64px 220px 1fr;align-items:baseline;gap:24px}}.pipeline .n{color:var(--accent);font-size:13px}.pipeline .what{color:var(--text-2);max-width:68ch}.table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--r-md);overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:13px}table.data th,table.data td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;white-space:nowrap;padding:10px 16px}table.data th{color:var(--muted);background:var(--surface);font-weight:500;position:sticky;top:0}table.data tr:last-child td{border-bottom:0}table.data tbody tr:hover{background:var(--surface)}table.data td.wrap-cell{white-space:normal;min-width:24ch}table.data .num{text-align:right}.rules{counter-reset:r;margin:0;padding:0;list-style:none;display:grid}@media (width>=800px){.rules{grid-template-columns:1fr 1fr;column-gap:48px}}.rules li{counter-increment:r;border-top:1px solid var(--border);grid-template-columns:40px 1fr;padding:16px 0;display:grid}.rules li:before{content:counter(r, decimal-leading-zero);color:var(--accent-dim);font-size:13px;line-height:1.9}.rules b{font-weight:600;display:block}.rules span{color:var(--text-2);font-size:14px}.price-grid{gap:24px;display:grid}@media (width>=960px){.price-grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:32px}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:24px}@media (width>=720px){.panel{padding:32px}}.price{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.price .big{letter-spacing:-.04em;font-size:clamp(48px,9vw,72px);font-weight:700;line-height:1}.checks{gap:8px;margin:24px 0 0;padding:0;font-size:14px;list-style:none;display:grid}.checks li{grid-template-columns:24px 1fr;display:grid}.checks li:before{content:"+";color:var(--accent)}.faq{border-top:1px solid var(--border)}.faq details{border-bottom:1px solid var(--border)}.faq summary{cursor:pointer;padding:16px 32px 16px 0;font-weight:600;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--accent);position:absolute;top:16px;right:4px}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--text-2);max-width:68ch;padding:0 0 20px}.field{gap:6px;display:grid}.field label{color:var(--text-2);font-size:13px}.field input,.field select,.field textarea{width:100%;font:15px/1.4 var(--mono);color:var(--text);background:var(--bg);border:1px solid var(--border-hover);border-radius:var(--r-md);transition:border-color .14s var(--ease);padding:10px 12px}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--muted)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}.field textarea{resize:vertical;min-height:110px}.field input[aria-invalid=true]{border-color:var(--red)}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-msg{font-size:14px}.form-msg.err{color:var(--red)}.dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot.warn{background:var(--amber)}.dot.bad{background:var(--red)}.dot.idle{background:var(--muted)}footer.site{border-top:1px solid var(--border);color:var(--muted);padding:32px 0 48px;font-size:13px}footer.site .wrap{flex-wrap:wrap;justify-content:space-between;gap:16px 32px;display:flex}footer.site nav{gap:24px;display:flex}footer.site a{text-decoration:none}footer.site a:hover{color:var(--accent)}.doc{gap:40px;padding:48px 0 96px;display:grid}@media (width>=1000px){.doc{grid-template-columns:200px 1fr;gap:64px}}.toc{font-size:13px}@media (width>=1000px){.toc{align-self:start;position:sticky;top:80px}}.toc ol{counter-reset:t;gap:2px;margin:8px 0 0;padding:0;list-style:none;display:grid}.toc li{counter-increment:t}.toc a{color:var(--text-2);padding:4px 0;text-decoration:none;display:block}.toc a:before{content:counter(t, decimal-leading-zero) " ";color:var(--muted)}.toc a:hover{color:var(--accent)}@media (width<=999px){.toc ol{grid-template-columns:1fr 1fr;column-gap:16px}}.article{min-width:0;max-width:72ch}.article h1{margin-bottom:16px}.article h2{margin:56px 0 16px;scroll-margin-top:72px;font-size:22px}.article h2 .n{color:var(--accent-dim);margin-right:12px;font-weight:400}.article h3{margin:24px 0 8px;font-size:15px}.article p,.article li{color:var(--text-2)}.article li{margin:8px 0}.article li b,.article p b{color:var(--text)}.article ol,.article ul{padding-left:24px}.article table{border-collapse:collapse;border:1px solid var(--border);width:100%;margin:16px 0;font-size:13px}.article th,.article td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 12px}.article th{color:var(--muted);background:var(--surface);font-weight:500}.article td:first-child{color:var(--muted)}.article .callout{border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--r-sm);background:var(--surface);margin:16px 0;padding:12px 16px}@media (width<=640px){.article table.stack thead{display:none}.article table.stack tr{border-bottom:1px solid var(--border);gap:4px;padding:12px;display:grid}.article table.stack td{border:0;padding:0}.article table.stack td[data-label]:before{content:attr(data-label) ": ";color:var(--muted)}}
