:root{--bg:#121212;--p:#1b1b1b;--p2:#232323;--ln:#2e2e2e;--ln2:#3d3d3d;--tx:#f2efe9;--tx2:#b4afa6;--mut:#7d786f;--or:#ff6a1a;--or2:#ff8a47;--ok:#3ddc84;--warn:#ffc233;--bad:#ff4d4d;--sans:Archivo,system-ui,sans-serif;--mono:'Space Mono',ui-monospace,monospace}
*{box-sizing:border-box}html{font-size:clamp(15px,.5vw + 10px,22px)}body{margin:0;background:var(--bg);color:var(--tx);font:400 1rem/1.6 var(--sans);-webkit-font-smoothing:antialiased;background-image:linear-gradient(var(--ln) 1px,transparent 1px),linear-gradient(90deg,var(--ln) 1px,transparent 1px);background-size:64px 64px;background-attachment:fixed;background-position:-1px -1px}
body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 50% 0,transparent 0,var(--bg) 70%);pointer-events:none;z-index:-1}
a{color:var(--or)}a:hover{color:var(--or2)}h1,h2,h3{margin:0 0 .6rem;line-height:1.08;letter-spacing:-.025em;font-weight:800}h1{font-size:clamp(2.2rem,4.4vw,4.6rem);font-weight:900;text-transform:uppercase;letter-spacing:-.03em}h2{font-size:1.5rem}h3{font-size:1rem;font-weight:700}
code{font-family:var(--mono);font-size:.88em;background:#ffffff0d;padding:.05rem .3rem;border-radius:2px}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:var(--or);color:#000;padding:.5rem}
svg.ic{width:1.2rem;height:1.2rem}.in{width:min(100% - 2rem,120rem);margin:0 auto}.muted{color:var(--mut)}.small{font-size:.82rem}
.strip{background:var(--or);color:#140800;font:700 .78rem var(--mono);text-align:center;padding:.4rem 1rem;letter-spacing:.01em}.blink{display:inline-block;width:.5rem;height:.5rem;background:#140800;border-radius:50%;margin-right:.4rem;animation:bl 1.2s steps(2) infinite}@keyframes bl{50%{opacity:0}}
.top{position:sticky;top:0;z-index:30;background:#121212f0;backdrop-filter:blur(10px);border-bottom:1px solid var(--ln)}.top .in{display:flex;align-items:center;gap:1.4rem;height:4rem}
.brand{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--tx);font-weight:800;font-size:1.15rem;letter-spacing:-.02em}.brand b{color:var(--or)}.brand small{font:400 .66rem var(--mono);color:var(--mut);text-transform:uppercase;letter-spacing:.08em;border-left:1px solid var(--ln2);padding-left:.6rem;margin-left:.2rem}.brand .lg{width:1.9rem;height:1.9rem}
.nav{display:flex;gap:.2rem;margin-left:auto}.nav a{color:var(--tx2);text-decoration:none;font-weight:600;font-size:.9rem;padding:.45rem .75rem;border:1px solid transparent}.nav a:hover{color:var(--tx);border-color:var(--ln2)}.nav a[aria-current]{color:var(--or);border-color:var(--or)}
.burger{display:none;background:none;border:1px solid var(--ln2);color:var(--tx);padding:.45rem;cursor:pointer}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:700 .88rem var(--sans);padding:.7rem 1.15rem;border:1px solid var(--ln2);background:transparent;color:var(--tx);text-decoration:none;cursor:pointer;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;border-radius:2px}
.btn:hover{border-color:var(--or);color:var(--or)}.btn.pri{background:var(--or);border-color:var(--or);color:#140800}.btn.pri:hover{background:var(--or2);color:#140800}.btn.wide{width:100%}.btn.sm{font-size:.7rem;padding:.4rem .7rem}
.panel{background:var(--p);border:1px solid var(--ln);padding:1.3rem;margin-bottom:1.1rem;position:relative;min-width:0}.panel:before{content:"";position:absolute;left:-1px;top:-1px;width:.7rem;height:.7rem;border-left:2px solid var(--or);border-top:2px solid var(--or)}
.panel h3 span,.cl-g h3 span{display:inline-grid;place-items:center;min-width:1.5rem;height:1.5rem;margin-right:.55rem;background:var(--or);color:#140800;font:700 .75rem var(--mono)}
.ch{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem}.ch h3{margin:0}
.ph{padding:2.6rem 0 1.6rem}.eb{display:inline-block;font:700 .74rem var(--mono);color:var(--or);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.9rem}.eb:before{content:"// "}.lede{font-size:1.12rem;color:var(--tx2);max-width:48rem;margin:0}
.crumbs{font:.74rem var(--mono);color:var(--mut);margin-bottom:1.4rem}.crumbs a{color:var(--tx2);text-decoration:none}
input,select,textarea{font:400 .9rem var(--mono);color:var(--tx);background:#0e0e0e;border:1px solid var(--ln2);padding:.7rem .85rem;border-radius:2px;min-width:0}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--or);box-shadow:0 0 0 3px #ff6a1a26}textarea{width:100%;resize:vertical;margin-bottom:.7rem;font-size:.8rem}
label{display:block;font:700 .75rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--tx2);margin-bottom:.5rem}
.ld{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.ld input{flex:1 1 18rem}.hint{font-size:.82rem;color:var(--mut);margin:.7rem 0 0}.msg{color:var(--warn)}
.ex{font:400 .74rem var(--mono);background:#ffffff08;border:1px dashed var(--ln2);color:var(--tx2);padding:.2rem .5rem;cursor:pointer;margin:.15rem .2rem .15rem 0;border-radius:2px}.ex:hover{border-color:var(--or);color:var(--or)}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}.tbl{width:100%;border-collapse:collapse;font-size:.88rem}.tbl th{font:700 .68rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--mut);text-align:left;padding:.6rem;border-bottom:1px solid var(--ln2);white-space:nowrap}.tbl td{padding:.65rem .6rem;border-bottom:1px solid var(--ln);vertical-align:middle}.tbl .r{text-align:right;font-family:var(--mono);font-size:.82rem}
.av{position:relative;width:2rem;height:2rem;border-radius:2px;flex:none;display:inline-grid;place-items:center;font:700 .7rem var(--mono);color:#fff;background:linear-gradient(135deg,hsl(var(--h) 45% 34%),hsl(calc(var(--h) + 40) 45% 20%));object-fit:cover;vertical-align:middle}.av i{position:absolute;right:-.2rem;bottom:-.2rem;width:.6rem;height:.6rem;background:var(--c);border:2px solid var(--p)}
.tk{display:flex;gap:.6rem;align-items:center}.tk small{display:block;color:var(--mut);font-size:.72rem}
.trade{display:flex;gap:.35rem;flex-wrap:wrap}.trade a{font:700 .74rem var(--mono);padding:.4rem .7rem;border:1px solid var(--ln2);color:var(--tx2);text-decoration:none;border-radius:2px;text-transform:uppercase}.trade a:hover{border-color:var(--or);color:var(--or)}.trade a.p{background:var(--or);color:#140800;border-color:var(--or)}.tl{margin-top:1rem}.tl .trade a{font-size:.82rem;padding:.6rem 1rem}
.chart{height:clamp(300px,32vw,600px)}
.seg{display:inline-flex;border:1px solid var(--ln2);flex-wrap:wrap}.seg button{font:700 .74rem var(--mono);background:none;border:0;border-right:1px solid var(--ln2);color:var(--tx2);padding:.5rem .8rem;cursor:pointer;text-transform:uppercase}.seg button:last-child{border-right:0}.seg button.on{background:var(--or);color:#140800}
.fbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.tog{display:flex;align-items:center;gap:.5rem;margin:0;cursor:pointer}.tog input{accent-color:var(--or);width:1rem;height:1rem}
/* checks */
.checks{list-style:none;margin:0;padding:0}.checks li{display:grid;grid-template-columns:1.6rem 1fr auto;gap:.7rem;align-items:start;padding:.65rem 0;border-bottom:1px dashed var(--ln)}.checks li:last-child{border:0}.checks i{font:700 .8rem/1.6rem var(--mono);width:1.6rem;height:1.6rem;text-align:center;font-style:normal;border:1px solid}.checks b{display:block;font-weight:700;font-size:.92rem}.checks small{color:var(--tx2);font-size:.82rem}
.checks .ok i{color:var(--ok);border-color:#3ddc8455;background:#3ddc8412}.checks .warn i{color:var(--warn);border-color:#ffc23355;background:#ffc23312}.checks .bad i{color:var(--bad);border-color:#ff4d4d66;background:#ff4d4d14}.checks .na i{color:var(--mut);border-color:var(--ln2)}.checks .na b{color:var(--tx2)}
.src{font:400 .64rem var(--mono);color:var(--mut);border:1px solid var(--ln2);padding:.05rem .35rem;text-transform:uppercase;white-space:nowrap}
.sc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;margin-bottom:1.1rem}.sc-grid>.panel{margin:0}
.sc-top{display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:center}.sc-id{display:flex;gap:1rem;align-items:center;min-width:0}.sc-id .av{width:3.4rem;height:3.4rem;font-size:1rem}.sc-id h2{margin:0}.sc-id small{color:var(--mut);font-weight:500;font-size:.9rem}.sc-id code{font-size:.7rem;color:var(--mut);word-break:break-all;background:none;padding:0}.sc-m{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.4rem}.sc-m span{font:.72rem var(--mono);border:1px solid var(--ln2);padding:.1rem .45rem;color:var(--tx2)}
.gauge{position:relative;width:11rem;text-align:center}.gauge svg{width:100%;display:block}.gt,.gv{fill:none;stroke-width:10}.gt{stroke:#2a2a2a}.gv{stroke:currentColor;transition:stroke-dasharray .8s}.gauge b{position:absolute;left:0;right:0;top:38%;font:700 2.4rem var(--mono)}.gauge span{display:block;font:700 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-top:.2rem}
.gauge.ok,.ok>b,b.ok{color:var(--ok)}.gauge.warn,.warn>b,b.warn{color:var(--warn)}.gauge.bad,.bad>b,b.bad{color:var(--bad)}.bad-t{color:var(--bad)}
.sc-c{display:grid;grid-template-columns:repeat(2,4.6rem);gap:.4rem}.sc-c div{border:1px solid var(--ln2);padding:.4rem .5rem;font:.68rem var(--mono);text-transform:uppercase;color:var(--mut)}.sc-c b{display:block;font-size:1.3rem}.sc-c .na b{color:var(--tx2)}
.plinks{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem}.pl{display:flex;gap:.6rem;align-items:center;border:1px solid var(--ln2);padding:.45rem .7rem;text-decoration:none;color:var(--tx);font-size:.84rem}.pl span{font-family:var(--mono);color:var(--tx2);font-size:.76rem}.pl i{font-style:normal;color:var(--or);font-size:.74rem}.pl:hover{border-color:var(--or)}
.doc{margin-top:1.4rem}.doc p{color:var(--tx2);font-size:.92rem}.doc .cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
/* link + sig */
.verdict{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.2rem;border:1px solid;margin-bottom:1rem}.verdict b{font-size:1.5rem;font-weight:900;text-transform:uppercase;letter-spacing:-.01em}.verdict span{font:700 .8rem var(--mono)}
.verdict.ok{border-color:#3ddc8466;background:#3ddc840f;color:var(--ok)}.verdict.warn{border-color:#ffc23366;background:#ffc2330f;color:var(--warn)}.verdict.bad{border-color:#ff4d4d77;background:#ff4d4d12;color:var(--bad)}
.vurl{font:400 1rem var(--mono);word-break:break-all;margin:0 0 .3rem;color:var(--mut)}.vurl mark{background:var(--or);color:#140800;padding:0 .2rem}
.anat{display:grid;grid-template-columns:auto 1fr;gap:.45rem 1rem;margin:0;font-size:.86rem}.anat dt{font:700 .7rem/1.9 var(--mono);text-transform:uppercase;color:var(--mut)}.anat dd{margin:0;font-family:var(--mono);word-break:break-all}
.tabs{display:flex;gap:0;margin-bottom:.8rem;border-bottom:1px solid var(--ln2)}.tabs button{font:700 .78rem var(--mono);background:none;border:0;border-bottom:2px solid transparent;color:var(--tx2);padding:.6rem .9rem;cursor:pointer;text-transform:uppercase;margin-bottom:-1px}.tabs button.on{color:var(--or);border-color:var(--or)}
.sg-t th{width:11rem;text-transform:none;font-size:.78rem;letter-spacing:0;color:var(--tx2);vertical-align:top}.sg-t td{word-break:break-all;font-size:.85rem}.sel td{font-size:.84rem;color:var(--tx2)}
/* checklist */
.cl-bar{display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap;position:sticky;top:4.6rem;z-index:5}.cl-p{font:700 .85rem var(--mono);display:flex;align-items:center;gap:.6rem;flex:1 1 16rem}.cl-p b{font-size:1.8rem;color:var(--or)}.cl-p>i{flex:1;height:.5rem;background:#2a2a2a;display:block}.cl-p>i>i{display:block;height:100%;width:0;background:var(--or);transition:width .3s}#cl-m{margin:0;flex:2 1 18rem}
.cl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.cl-g{margin:0}.cl-i{display:flex;gap:.8rem;align-items:flex-start;padding:.75rem 0;border-bottom:1px dashed var(--ln);cursor:pointer;text-transform:none;letter-spacing:0;font:inherit;color:var(--tx);margin:0}.cl-i:last-child{border:0}.cl-i input{accent-color:var(--or);width:1.15rem;height:1.15rem;margin-top:.2rem;flex:none}.cl-i b{display:block;font-weight:600;font-size:.93rem}.cl-i small{color:var(--mut);font-size:.82rem}.cl-i.done b{color:var(--tx2);text-decoration:line-through;text-decoration-color:var(--or)}
.fl{display:inline-block;font:700 .64rem var(--mono);text-transform:uppercase;padding:.15rem .4rem;margin:.1rem .25rem .1rem 0;border:1px solid;white-space:nowrap}.fl.ok{color:var(--ok);border-color:#3ddc8455}.fl.warn{color:var(--warn);border-color:#ffc23355}.fl.bad{color:var(--bad);border-color:#ff4d4d66}
/* home */
.hero{padding:3.4rem 0 2.4rem}.hero .in{display:grid;grid-template-columns:1.15fr 1fr;gap:2.6rem;align-items:center}.hero h1{font-size:clamp(2.8rem,6.4vw,7rem);line-height:.92}.hero h1 em{font-style:normal;color:var(--or)}.hero .lede{margin:1.2rem 0 1.6rem}.quick{margin:0}.hero-r{margin:0}
.hq{display:flex;flex-direction:column}.hqi{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:.8rem;align-items:center;padding:.6rem 0;border-bottom:1px dashed var(--ln);text-decoration:none;color:var(--tx)}.hqi small{display:block;color:var(--mut);font-size:.72rem}.hqi .go{font:700 .72rem var(--mono);color:var(--or)}.hqi:hover b{color:var(--or)}.al{display:block;font:700 .8rem var(--mono);text-decoration:none;margin-top:.8rem;text-transform:uppercase}
.sk{height:2.6rem;margin:.35rem 0;background:linear-gradient(90deg,#1f1f1f,#2a2a2a,#1f1f1f);background-size:200%;animation:sk 1.4s infinite}@keyframes sk{to{background-position:-200% 0}}.dot{display:inline-block;width:.5rem;height:.5rem;background:var(--ok);border-radius:50%;margin-right:.4rem}
.tg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem;margin-bottom:1.1rem}.tc{text-decoration:none;color:var(--tx);margin:0;display:flex;flex-direction:column;transition:border-color .15s}.tc:hover{border-color:var(--or);color:var(--tx)}.tc p{color:var(--tx2);font-size:.9rem;flex:1}.num{font:700 2rem var(--mono);color:var(--ln2);line-height:1;margin-bottom:.8rem}.tc:hover .num,.gc:hover .num{color:var(--or)}.go{font:700 .76rem var(--mono);color:var(--or);text-transform:uppercase}
.flow ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:f}.flow li{counter-increment:f;padding:1rem 1.2rem 0 0;border-top:2px solid var(--ln2);position:relative}.flow li:before{content:"0" counter(f);font:700 .74rem var(--mono);color:var(--or);display:block;margin:.4rem 0}.flow b{display:block;font-size:1.15rem;text-transform:uppercase}.flow span{color:var(--tx2);font-size:.88rem}.flow li:first-child{border-top-color:var(--or)}
.sh{display:flex;justify-content:space-between;align-items:baseline;margin:2.2rem 0 1rem}.sh a{font:700 .8rem var(--mono);text-transform:uppercase;text-decoration:none}
.gg{display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:1.1rem}.gc{text-decoration:none;color:var(--tx);margin:0}.gc:hover{border-color:var(--or);color:var(--tx)}.gc p{color:var(--tx2);font-size:.9rem}
.two-c{display:grid;grid-template-columns:1.4fr 1fr;gap:1.1rem;margin-top:2.2rem}.two-c>.panel{margin:0}.cta-p{background:linear-gradient(160deg,#2a1406,#1b1b1b 70%);border-color:#5a2a0d}.cta-p p{color:var(--tx2)}
details{border-bottom:1px dashed var(--ln2);padding:.85rem 0}summary{font-weight:700;cursor:pointer}details p{color:var(--tx2);margin:.5rem 0 0}
.art{display:grid;grid-template-columns:minmax(0,48rem) minmax(15rem,20rem);gap:2rem;align-items:start}.prose{font-size:1.04rem;line-height:1.78}.prose h2{margin-top:2rem;text-transform:uppercase;font-size:1.2rem;letter-spacing:.01em}.prose p,.prose li{color:#d4d0c8}.prose table{border-collapse:collapse;width:100%;font-size:.88rem;margin:1rem 0}.prose td,.prose th{border:1px solid var(--ln2);padding:.5rem .7rem;text-align:left}.prose th{font:700 .72rem var(--mono);text-transform:uppercase;color:var(--mut)}
.sticky{position:sticky;top:5.5rem}.sticky .al{margin:.6rem 0}.nfa{font:.78rem var(--mono);color:var(--mut);border-left:2px solid var(--or);padding-left:.8rem;margin-top:2rem}.narrow{max-width:48rem}
/* footer */
.foot{border-top:1px solid var(--ln);background:#0d0d0d;padding:2.8rem 0 1.6rem;margin-top:3rem}.fgrid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:2rem;margin-bottom:1.8rem}.fgrid h4{font:700 .72rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--or);margin:0 0 .8rem}.fgrid a:not(.brand){display:block;color:var(--tx2);text-decoration:none;font-size:.88rem;padding:.18rem 0}.fgrid a:hover{color:var(--or)}.fgrid p{color:var(--mut);font-size:.86rem}.disc{font-size:.78rem;color:var(--mut);margin-top:1.4rem}.cpy{font:.72rem var(--mono);color:var(--mut)}
@media (max-width:1180px){.nav a{padding:.45rem .5rem;font-size:.84rem}.hcta{display:none}.tg{grid-template-columns:1fr 1fr}.art{grid-template-columns:1fr}.sticky{position:static}.sc-top{grid-template-columns:1fr auto}.sc-c{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}}
@media (max-width:900px){.burger{display:block;margin-left:auto}.nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#121212;border-bottom:1px solid var(--ln);padding:.6rem 1rem 1rem}.nav.open{display:flex}.nav a{padding:.75rem .5rem;font-size:1rem;border:0;border-bottom:1px solid var(--ln)}
.hero .in,.two-c,.sc-grid,.cl,.doc .cols{grid-template-columns:1fr}.flow ol{grid-template-columns:1fr 1fr;gap:1rem}.fgrid{grid-template-columns:1fr 1fr}.brand small{display:none}}
@media (max-width:620px){.in{width:calc(100% - 1.4rem)}.panel{padding:1rem}.tg{grid-template-columns:1fr}.flow ol{grid-template-columns:1fr}.fgrid{grid-template-columns:1fr}.ph{padding:1.6rem 0 1.2rem}.hero{padding:2rem 0 1.4rem}.ld .btn{width:100%}.sc-top{grid-template-columns:1fr;gap:1rem}.gauge{margin:0 auto}.cl-bar{top:4rem}
.board th:nth-child(n+3):nth-child(-n+6),.board td:nth-child(n+3):nth-child(-n+6){display:none}.hqi{grid-template-columns:auto minmax(0,1fr) auto}.hqi .hf{display:none}.sg-t th{width:7rem}.strip{font-size:.68rem}.tl .trade a{flex:1 1 40%;text-align:center}body{background-size:40px 40px}}

.empire-net{display:grid;grid-template-columns:auto 1fr 1fr;gap:2rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--fline,#ffffff22);align-items:start}
.esoc{display:flex;gap:.6rem;flex-wrap:wrap}.esoc a{width:2.6rem;height:2.6rem;border-radius:50%;display:grid;place-items:center;border:1px solid var(--fline,#ffffff22);color:inherit;transition:.2s}.esoc a:hover{background:var(--facc,#fff);color:var(--fbg,#000);border-color:var(--facc,#fff)}
.esvg{width:1.1rem;height:1.1rem}.esvg.sm{width:.85rem;height:.85rem;flex:none;color:#2aabee}
.etg h4{margin:0 0 .7rem}.elist{display:flex;flex-wrap:wrap;gap:.4rem}.elist a{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border-radius:999px;border:1px solid var(--fline,#ffffff22);text-decoration:none;font-size:.8rem;color:inherit}.elist a:hover{border-color:var(--facc,#fff)}

.esites{margin-top:2rem;padding-top:1.4rem;border-top:1px solid var(--fline,#ffffff22)}.esites h4{margin:0 0 .6rem}.esites nav ul{display:flex;flex-wrap:wrap;gap:.5rem .55rem}.esites a{color:inherit;opacity:.8;text-decoration:none;font-size:.86rem}.esites a:hover{opacity:1;text-decoration:underline}
@media (max-width:1000px){.empire-net{grid-template-columns:1fr}}
