@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--canvas:#fafafa;--surface:#fff;--subtle:#f4f4f5;--line:#e4e4e7;--strong:#a1a1aa;--fg:#111113;--muted:#6b6b76;--faint:#a1a1aa;--ok:#15803d;--warn:#b45309;--danger:#b91c1c;--info:#2563eb;--shadow:0 1px 2px rgba(0,0,0,.04),0 12px 40px -12px rgba(0,0,0,.18)}
@media (prefers-color-scheme:dark){:root{--canvas:#0b0b0d;--surface:#121214;--subtle:#1a1a1d;--line:#26262a;--strong:#52525b;--fg:#f2f2f3;--muted:#9a9aa3;--faint:#5f5f68;--ok:#4ade80;--warn:#fbbf24;--danger:#f87171;--info:#60a5fa;--shadow:0 1px 2px rgba(0,0,0,.4),0 24px 60px -16px rgba(0,0,0,.7)}}
*{box-sizing:border-box}html{color-scheme:light dark;scroll-behavior:smooth}
body{margin:0;background:var(--canvas);color:var(--fg);font:16px/1.6 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}
a{color:inherit}h1,h2,h3{line-height:1.15;letter-spacing:-.022em;margin:1.8em 0 .5em;font-weight:650}h1{font-size:2.4rem;margin-top:.2em}h2{font-size:1.6rem}h3{font-size:1.1rem}
p{margin:.7em 0}code{font:.88em ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--subtle);padding:.12em .4em;border-radius:5px}pre{background:var(--subtle);border:1px solid var(--line);border-radius:8px;padding:1rem 1.2rem;overflow:auto;font-size:.86rem;line-height:1.55}pre code{background:none;padding:0}
table{border-collapse:collapse;width:100%;font-size:.94rem;margin:1.2rem 0}th,td{text-align:left;padding:.6rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:500;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.wrap{max-width:1120px;margin:0 auto;padding:0 1.5rem}
.nav{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--canvas) 85%,transparent);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:1.5rem;height:60px}
.brand{display:flex;align-items:center;gap:.55rem;font-weight:700;text-decoration:none;letter-spacing:-.02em;font-size:1.05rem}
.nav nav{margin-left:auto;display:flex;gap:1.4rem;align-items:center;font-size:.92rem;font-weight:500}.nav nav a{text-decoration:none;color:var(--muted)}.nav nav a:hover{color:var(--fg)}
.btn{display:inline-flex;align-items:center;gap:.45rem;height:40px;padding:0 1.1rem;border-radius:8px;border:1px solid var(--fg);background:var(--fg);color:var(--canvas)!important;text-decoration:none;font-weight:600;font-size:.95rem;transition:transform .12s,opacity .12s}.btn:hover{opacity:.9;transform:translateY(-1px)}.btn.sm{height:34px;padding:0 .9rem;font-size:.88rem}
.btn-ghost{background:var(--surface);color:var(--fg)!important;border-color:var(--line)}.btn-ghost:hover{background:var(--subtle)}
.page,.article{padding:3rem 0 5rem}.article .wrap{max-width:760px}.article p,.article li{font-size:1.08rem;line-height:1.75}.article h2{margin-top:2.2em}.article img{max-width:100%;border-radius:8px}
.eyebrow{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:600}.eyebrow a{text-decoration:none}.lede{font-size:1.28rem;color:var(--muted);margin-top:.3em;line-height:1.55}
.muted{color:var(--muted)}.small{font-size:.86rem}
.hero{padding:5.5rem 0 2rem;text-align:center}.hero h1{font-size:clamp(2.6rem,6vw,4.4rem);margin:.4rem auto .8rem;max-width:18ch;font-weight:750;letter-spacing:-.035em}.hero p{font-size:1.25rem;color:var(--muted);max-width:44rem;margin:0 auto 2rem;line-height:1.6}.hero .row{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;align-items:center}.hero .note{margin-top:1rem;font-size:.9rem;color:var(--muted)}
.shot{margin:3rem auto 0;max-width:1120px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}.shot img{display:block;width:100%;height:auto}.shot .bar{height:36px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:.4rem;padding:0 .9rem;background:var(--subtle)}.shot .bar i{width:11px;height:11px;border-radius:50%;background:var(--line);display:inline-block}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:4rem 0}.stat{padding:1.4rem 1.5rem;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.stat strong{display:block;font-size:2.2rem;letter-spacing:-.04em;font-weight:750;line-height:1.1}.stat span{color:var(--muted);font-size:.9rem;display:block;margin-top:.35rem}
.section{padding:3rem 0}.section-head{max-width:640px;margin-bottom:2rem}.section-head h2{font-size:2rem;margin:.3em 0 .4em}.section-head p{color:var(--muted);font-size:1.1rem;margin:0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1.4rem 1.4rem 1.3rem}.card svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-bottom:.9rem;color:var(--fg)}.card h3{margin:0 0 .35rem;font-size:1.02rem}.card p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;counter-reset:s}.step{padding-top:1rem;border-top:2px solid var(--fg)}.step em{font-style:normal;font-weight:700;font-size:.8rem;letter-spacing:.08em;color:var(--muted)}.step h3{margin:.4rem 0 .4rem}.step p{margin:0;color:var(--muted)}
.bench{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:1.6rem;display:grid;grid-template-columns:1.1fr 1fr;gap:2rem;align-items:center}@media(max-width:760px){.bench{grid-template-columns:1fr}}
.bars div{display:grid;grid-template-columns:150px 1fr 70px;gap:.8rem;align-items:center;margin:.6rem 0;font-size:.92rem}.bars b{display:block;height:14px;border-radius:4px;background:var(--fg)}.bars .sf b{background:var(--strong)}.bars span:last-child{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}
.cta-band{margin:4rem 0 1rem;padding:3rem 2rem;border-radius:16px;background:var(--fg);color:var(--canvas);text-align:center}.cta-band h2{color:inherit;margin:0 0 .5rem;font-size:2rem}.cta-band p{color:inherit;opacity:.75;margin:0 0 1.4rem}.cta-band .btn{background:var(--canvas);color:var(--fg)!important;border-color:var(--canvas)}
.cta{margin:3rem 0 0;padding:1.4rem 1.5rem;background:var(--surface);border:1px solid var(--line);border-radius:12px;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.cta a:not(.btn){margin-left:.4rem}
.dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;margin-right:.45rem;vertical-align:middle}.dot.error{background:var(--danger)}.dot.warning{background:var(--warn)}.dot.opportunity{background:var(--info)}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.2rem;margin:2rem 0}.plan{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:1.8rem}.plan h2{margin:0;font-size:1.1rem}.plan .price{font-size:2.6rem;letter-spacing:-.04em;margin:.4rem 0 .2rem;font-weight:750}.plan ul{padding-left:1.1rem;margin:1rem 0 1.4rem;color:var(--muted)}.plan li{margin:.3rem 0}.plan.pro{border-color:var(--fg);border-width:2px}
.foot{border-top:1px solid var(--line);background:var(--surface);padding:3rem 0 2.5rem;font-size:.92rem}.foot .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}@media(max-width:760px){.foot .wrap{grid-template-columns:1fr 1fr}}.foot h4{margin:0 0 .6rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.foot a{display:block;color:var(--muted);text-decoration:none;margin:.3rem 0}.foot a:hover{color:var(--fg)}.foot .brand{margin-bottom:.6rem}
.guide-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.guide-list a{text-decoration:none;padding:1.3rem 1.4rem;border:1px solid var(--line);border-radius:12px;background:var(--surface);transition:border-color .12s}.guide-list a:hover{border-color:var(--strong)}.guide-list a strong{display:block;font-size:1.05rem;letter-spacing:-.01em;margin-bottom:.35rem}.guide-list a span{color:var(--muted);font-size:.92rem;line-height:1.5}
.rule-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:.4rem 1.5rem}.rule-list a{display:flex;justify-content:space-between;gap:.8rem;text-decoration:none;padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.95rem}.rule-list a code{color:var(--muted);font-size:.8rem;white-space:nowrap}
.toc{border-left:2px solid var(--line);padding:.2rem 0 .2rem 1rem;margin:1.5rem 0 2rem;font-size:.92rem}.toc a{display:block;color:var(--muted);text-decoration:none;margin:.25rem 0}.toc a:hover{color:var(--fg)}
.related{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line)}.related h3{margin-top:0}.related a{display:inline-block;margin:.25rem .5rem .25rem 0;padding:.35rem .7rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:.88rem;background:var(--surface)}.related a:hover{border-color:var(--strong)}
.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .7rem;border:1px solid var(--line);border-radius:999px;font-size:.8rem;font-weight:600;background:var(--surface)}
kbd{font:.85em ui-monospace,monospace;border:1px solid var(--line);border-radius:4px;padding:0 .3em;background:var(--surface)}
