:root{--bg:#f7f8fa;--sf:#fff;--sf2:#f1f3f6;--fg:#14171c;--mut:#5a6270;--bd:#e2e5ea;--ac:#4338ca;--ac2:#eef0ff;--wn:#fff7e6;--wnb:#f0d9a8;--unk:#8a6d00;--unkbg:#fdf6dc;--r:12px;
--font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
@media (prefers-color-scheme:dark){:root{--bg:#0d1016;--sf:#151a22;--sf2:#1b212b;--fg:#e8ebf0;--mut:#9aa3b2;--bd:#2a313c;--ac:#a5b4fc;--ac2:#1e2140;--wn:#211c10;--wnb:#4a3d1c;--unk:#f2d27a;--unkbg:#2b2512}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 var(--font)}
body>*{max-width:76rem;margin-left:auto;margin-right:auto;padding-left:1.25rem;padding-right:1.25rem}
a{color:var(--ac);text-underline-offset:2px}a:focus-visible,.btn:focus-visible{outline:3px solid var(--ac);outline-offset:2px;border-radius:4px}
h1,h2{line-height:1.2;letter-spacing:-.02em}h2{font-size:1.35rem;margin:2.5rem 0 1rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--sf);padding:.5rem;z-index:9}
header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:1rem;padding-bottom:1rem}
.brand{display:flex;align-items:center;gap:.5rem;font-weight:750;font-size:1.15rem;text-decoration:none;color:var(--fg)}
.logo{font-family:var(--mono);font-size:.8rem;background:var(--fg);color:var(--bg);padding:.2rem .4rem;border-radius:6px}
header nav a{margin-left:1rem;color:var(--mut);text-decoration:none;font-weight:550}header nav a:hover{color:var(--fg)}
.disclosure{display:flex;gap:.6rem;align-items:flex-start;background:var(--wn);border:1px solid var(--wnb);border-radius:var(--r);padding:.6rem .9rem;font-size:.85rem;color:var(--fg);margin-top:0}
.disclosure .dot{flex:none;width:.5rem;height:.5rem;margin-top:.45rem;border-radius:50%;background:#d79b00}
.crumbs{font-size:.82rem;color:var(--mut);margin:.75rem auto}.crumbs a{color:var(--mut)}
.hero{padding:2.5rem 0 1rem}.hero h1{font-size:clamp(1.8rem,4.5vw,2.9rem);margin:0 0 .75rem;max-width:22ch}.hero.sm h1{max-width:none;font-size:clamp(1.6rem,4vw,2.4rem)}
.lead{color:var(--mut);font-size:1.08rem;max-width:62ch}.vs{color:var(--mut);font-weight:400}
.cta{display:flex;gap:.6rem;flex-wrap:wrap}
.btn{display:inline-block;background:var(--ac);color:var(--bg);padding:.55rem 1rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.92rem}
.btn.ghost{background:transparent;color:var(--ac);border:1px solid var(--bd)}
.cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.9rem}
.card a{display:grid;grid-template-columns:auto 1fr;gap:.15rem .75rem;height:100%;padding:1rem;background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);text-decoration:none;color:var(--fg);transition:border-color .15s,transform .15s}
.card a:hover{border-color:var(--ac);transform:translateY(-2px)}
.card .mk{grid-row:span 2}.cn{font-weight:650}.cv{font-size:.8rem;color:var(--mut)}.cb{grid-column:1/-1;font-size:.86rem;color:var(--mut);margin-top:.5rem}
.mk{display:inline-grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:10px;background:var(--ac2);color:var(--ac);font:700 .85rem var(--mono)}.mk.lg{width:3.5rem;height:3.5rem;font-size:1.1rem}
.tw{overflow:auto;max-height:80vh;border:1px solid var(--bd);border-radius:var(--r);background:var(--sf)}
table{border-collapse:separate;border-spacing:0;width:100%;font-size:.9rem}
caption{text-align:left;color:var(--mut);padding:.6rem .8rem;font-size:.82rem}
th,td{padding:.65rem .8rem;vertical-align:top;text-align:left;border-bottom:1px solid var(--bd)}
thead th{position:sticky;top:0;z-index:2;background:var(--sf2);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--mut)}
tbody tr:nth-child(even){background:var(--sf2)}tbody tr:last-child>*{border-bottom:0}
.cmp tbody th{position:sticky;left:0;background:inherit;min-width:9rem}.cmp tbody tr{background:var(--sf)}.cmp tbody tr:nth-child(even){background:var(--sf2)}
.cmp td{min-width:12rem}.detail th[scope=row]{width:11rem;color:var(--mut);font-weight:600}
td ul,.vc ul{margin:0;padding-left:1.1rem}
.unknown{color:var(--unk);background:var(--unkbg);border-radius:4px;padding:0 .3rem;font-style:italic}
.fn{margin:.5rem 0 0;font-size:.75rem;color:var(--mut);word-break:break-word}.fn a{color:var(--mut)}
.ahead{display:flex;gap:1rem;align-items:center;padding:2rem 0 1rem}.ahead h1{margin:0;font-size:clamp(1.6rem,4vw,2.4rem)}.ahead .lead{margin:.25rem 0 0}
.vheads,.vrow{display:grid;grid-template-columns:10rem 1fr 1fr;gap:.9rem}
.vheads{position:sticky;top:0;z-index:3;background:var(--bg);padding:.6rem 0;margin-bottom:.5rem}.vheads::before{content:""}
.vhead{display:flex;gap:.6rem;align-items:center;padding:.7rem;background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);text-decoration:none;color:var(--fg)}
.vrow{padding:.9rem 0;border-top:1px solid var(--bd)}.vf{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);margin:.2rem 0}
.vc{background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:.8rem .9rem;font-size:.92rem}
.vn{display:none;font-weight:650;font-size:.8rem;color:var(--ac);margin-bottom:.3rem}
.pills{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.pills a{display:inline-block;padding:.4rem .8rem;border:1px solid var(--bd);border-radius:999px;background:var(--sf);text-decoration:none;font-size:.88rem}
.pills a:hover{border-color:var(--ac)}
.sponsor{margin:3rem 0 1rem;padding:1.1rem 1.2rem;border:1.5px dashed var(--bd);border-radius:var(--r);background:var(--sf);display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:center}
.sponsor .tag{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--mut);border:1px solid var(--bd);padding:.15rem .5rem;border-radius:999px}
.sponsor p{margin:0;flex:1;color:var(--mut)}
.draft{background:var(--unkbg);border:1px solid var(--wnb);padding:.5rem;border-radius:8px}
main{min-height:50vh}
footer{margin-top:2rem;padding-top:1rem;padding-bottom:2rem;border-top:1px solid var(--bd);font-size:.82rem;color:var(--mut)}
@media (max-width:760px){.vheads{grid-template-columns:1fr 1fr}.vheads::before{display:none}.vrow{grid-template-columns:1fr}.vn{display:block}
header nav a{margin:0 1rem 0 0}.hero{padding-top:1.25rem}.tw{max-height:none}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
.signup{margin:2.5rem 0 1rem;padding:1.1rem 1.2rem;border:1px solid var(--bd);border-radius:var(--r);background:var(--sf)}.signup h2{margin-top:0}
.signup form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.signup input[type=email]{flex:1;min-width:14rem;padding:.55rem .7rem;border:1px solid var(--bd);border-radius:8px;background:var(--bg);color:var(--fg);font:inherit}
.signup button{cursor:pointer}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
