.stat[data-c=a]{color:var(--amber)}
.stat .v.a{color:var(--amber)}
.nop::before{content:none}
.inline-go{color:var(--accent);letter-spacing:.1em}
.inline-go:hover{color:var(--fg)}

.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.spec{background:var(--bg);padding:16px 20px;position:relative;transition:background .2s}
.spec:hover{background:var(--bg-2)}
.spec::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent);transform:scaleY(0);transform-origin:top;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.spec:hover::before{transform:scaleY(1)}
.spec .sk{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-mute);margin-bottom:8px}
.spec .sk::before{content:"# ";color:var(--accent)}
.spec .sv{font-size:15px;font-weight:600;color:var(--fg);line-height:1.35}
.spec .ss{font-size:11px;color:var(--fg-dim);margin-top:6px;line-height:1.6}
.spec .ss b{color:var(--accent);font-weight:500}
.spec .ss .g{color:var(--green)}

.cores{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}
.core{border:1px solid var(--line);background:var(--bg-2);padding:10px 10px 8px}
.core-h{display:flex;justify-content:space-between;font-size:10px;color:var(--fg-mute);margin-bottom:8px}
.core-h b{color:var(--fg-dim);font-weight:600;font-variant-numeric:tabular-nums}
.core-t{height:46px;background:var(--bg);border:1px solid var(--line);display:flex;align-items:flex-end;overflow:hidden}
.core-t i{display:block;width:100%;background:var(--accent);opacity:.75;transition:height .6s cubic-bezier(.22,1,.36,1),background .3s}
.core-t i.hot{background:var(--red)}
.core-t i.mid{background:var(--amber)}
.core-t i.low{background:var(--green)}

.alloc{border:1px solid var(--line);background:var(--bg-2);padding:18px 20px}
.al-row{display:grid;grid-template-columns:90px 1fr 150px;gap:16px;align-items:center;padding:8px 0}
.al-k{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-mute)}
.al-bar{height:10px;background:var(--bg);border:1px solid var(--line);display:flex;overflow:hidden}
.al-bar i{display:block;height:100%;transition:width .6s cubic-bezier(.22,1,.36,1);border-right:1px solid var(--bg)}
.al-v{font-size:11.5px;color:var(--fg-dim);text-align:right;font-variant-numeric:tabular-nums}
.al-v b{color:var(--fg);font-weight:600}
.al-leg{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);font-size:10.5px;color:var(--fg-mute)}
.al-leg span{display:flex;align-items:center;gap:7px}
.al-leg i{width:8px;height:8px;display:inline-block}

.gb{display:inline-grid;place-items:center;width:38px;height:38px;flex-shrink:0;font-size:12px;font-weight:700;letter-spacing:-.02em;color:var(--bg);background:var(--gc,var(--accent))}
.gb.sm{width:28px;height:28px;font-size:10px}

.inst-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}
.inst{position:relative;background:var(--bg-2);border:1px solid var(--line);padding:16px 18px 14px;transition:border-color .2s,background .2s;animation:lineIn .3s ease both}
.inst::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--green)}
.inst.off::before{background:var(--fg-mute)}
.inst.boot::before{background:var(--amber);animation:blink 1s steps(2) infinite}
.inst:hover{border-color:var(--line-2);background:var(--bg-3)}
.inst.new{border-color:rgba(255,140,66,.45)}
.in-h{display:flex;gap:12px;align-items:center}
.in-n{font-weight:700;font-size:15px;line-height:1.2}
.in-g{font-size:10.5px;color:var(--fg-mute);margin-top:3px}
.in-s{margin-left:auto;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--green);align-self:flex-start}
.off .in-s{color:var(--fg-mute)}
.boot .in-s{color:var(--amber)}
.in-pl{display:flex;align-items:baseline;gap:6px;margin:14px 0 10px;font-size:11px;color:var(--fg-mute)}
.in-pl b{font-size:24px;font-weight:600;color:var(--fg);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.in-pl .port{margin-left:auto;color:var(--fg-dim)}
.in-pl .port::before{content:":";color:var(--accent)}
.in-bars{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.in-acts{display:flex;gap:6px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);flex-wrap:wrap}
.in-acts button,.in-acts a{font-size:10.5px;color:var(--fg-dim);border:1px solid var(--line);padding:4px 10px}
.in-acts button:hover,.in-acts a:hover{color:var(--fg);border-color:var(--accent)}
.in-acts .danger:hover{color:var(--red);border-color:var(--red)}
.in-acts .sp{flex:1}
.in-acts .arm{color:var(--red);border-color:var(--red)}

.steps-bar{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line-2);background:rgba(16,16,16,.97);position:sticky;top:58px;z-index:150}
.sbx{position:relative;display:flex;align-items:baseline;gap:12px;padding:14px 18px;border-right:1px solid var(--line);color:var(--fg-mute);font-size:13px;transition:color .25s,background .25s}
.sbx:last-child{border-right:0}
.sbx .si{font-size:11px;color:var(--fg-mute)}
.sbx::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.sbx.on{color:var(--accent);background:rgba(255,140,66,.06)}
.sbx.on::before{transform:scaleX(1)}
.sbx.on .si{color:var(--accent)}
.sbx.done{color:var(--fg-dim)}
.sbx.done .si::after{content:" ✓";color:var(--green)}

.dep-step{display:none}
.dep-step.on{display:block;animation:lineIn .35s ease both}

.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.game{position:relative;text-align:left;background:var(--bg-2);border:1px solid var(--line);padding:16px 18px;display:flex;flex-direction:column;gap:12px;transition:border-color .2s,background .2s,transform .25s cubic-bezier(.22,1,.36,1)}
.game::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gc,var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.game:hover{border-color:var(--line-2);background:var(--bg-3);transform:translateY(-1px)}
.game:hover::after{transform:scaleX(1)}
.game:hover .gm-n{color:var(--accent)}
.gm-h{display:flex;gap:12px;align-items:center}
.gm-n{font-weight:700;font-size:15px;color:var(--fg);transition:color .2s}
.gm-t{font-size:10px;color:var(--fg-mute);letter-spacing:.06em}
.gm-d{font-size:11.5px;color:var(--fg-dim);line-height:1.6}
.gm-f{display:flex;justify-content:space-between;font-size:10.5px;color:var(--fg-mute);border-top:1px dashed var(--line);padding-top:10px;margin-top:auto}
.gm-f b{color:var(--fg-dim);font-weight:500}
.gm-f .go{color:var(--accent)}
.gm-tag{position:absolute;top:14px;right:14px;font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;padding:2px 6px;border:1px solid rgba(255,140,66,.4);color:var(--accent)}

.cfg-wrap{display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start}
.cfg-form{display:flex;flex-direction:column;gap:18px}
.fld .fk{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-mute);margin-bottom:8px;display:flex;justify-content:space-between}
.fld .fk b{color:var(--accent);font-weight:600;letter-spacing:.04em;text-transform:none;font-size:12px}
.fld .fh{font-size:10.5px;color:var(--fg-mute);margin-top:6px}
.fld .fh::before{content:"// ";color:var(--accent)}
.seg{display:flex;flex-wrap:wrap;border:1px solid var(--line);background:var(--bg-2);width:max-content;max-width:100%}
.seg button{font-size:12px;color:var(--fg-dim);padding:7px 14px;border-right:1px solid var(--line);transition:color .2s,background .2s}
.seg button:last-child{border-right:0}
.seg button:hover{color:var(--fg)}
.seg button.on{color:var(--accent);background:rgba(255,140,66,.08)}
.rng{display:flex;align-items:center;gap:14px;border:1px solid var(--line);background:var(--bg-2);padding:12px 14px}
.rng input{flex:1;-webkit-appearance:none;appearance:none;height:2px;background:var(--line-2);outline:none}
.rng input::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:18px;background:var(--accent);border:0;cursor:pointer}
.rng input::-moz-range-thumb{width:12px;height:18px;background:var(--accent);border:0;border-radius:0;cursor:pointer}
.rng .rv{min-width:70px;text-align:right;font-weight:600;color:var(--fg);font-variant-numeric:tabular-nums}
.tgls{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tgl{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);background:var(--bg-2);padding:10px 12px;cursor:pointer;transition:border-color .2s}
.tgl:hover{border-color:var(--line-2)}
.tgl input{display:none}
.tgl .bx{width:30px;height:16px;border:1px solid var(--line-2);position:relative;flex-shrink:0;margin-top:2px;transition:border-color .2s}
.tgl .bx::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;background:var(--fg-mute);transition:transform .25s cubic-bezier(.22,1,.36,1),background .2s}
.tgl input:checked+.bx{border-color:var(--accent)}
.tgl input:checked+.bx::after{transform:translateX(14px);background:var(--accent)}
.tgl .tt{font-size:12px;color:var(--fg)}
.tgl .ts{font-size:10.5px;color:var(--fg-mute);margin-top:2px}
.cfg-side{position:sticky;top:130px;display:flex;flex-direction:column;gap:12px}
.fit{font-size:11px;padding:9px 12px;border:1px solid rgba(125,211,168,.25);color:var(--green);background:var(--bg-2)}
.fit.bad{border-color:rgba(255,110,110,.4);color:var(--red);background:#160f0f}
.go-big{border:1px solid var(--accent);background:var(--accent);color:var(--bg);font-weight:700;font-size:14px;padding:13px 16px;text-align:left;transition:background .2s,color .2s}
.go-big span{font-weight:400;opacity:.7}
.go-big:hover{background:transparent;color:var(--accent)}
.go-big[disabled]{opacity:.35;pointer-events:none}
.back-sim{align-self:flex-start}

.ins-prog{height:3px;background:var(--line);margin:4px 0 10px;overflow:hidden}
.ins-fill{height:100%;width:0;background:var(--accent);box-shadow:0 0 6px rgba(255,140,66,.5);transition:width .35s ease}
.ins-fill.done{background:var(--green);box-shadow:none}
.ins-head{display:flex;justify-content:space-between;font-size:11.5px;color:var(--fg-dim);margin-bottom:14px}
.ins-head #insPct{color:var(--accent);font-weight:600}
.ins-body{height:360px}
.iln{display:grid;grid-template-columns:62px 40px 1fr;gap:12px;white-space:nowrap;animation:lineIn .25s ease both}
.iln .t{color:var(--fg-mute);font-variant-numeric:tabular-nums}
.iln .m{color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis}
.iln .m b{color:var(--fg);font-weight:500}
.iln .m .o{color:var(--accent)}
.ins-done{display:none;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:14px 18px;border:1px solid rgba(125,211,168,.3);background:var(--bg-2);animation:lineIn .35s ease both}
.ins-done.on{display:flex}
.ins-done .bn-glyph{color:var(--green);border-color:rgba(125,211,168,.35)}
.id-l{display:flex;gap:14px;align-items:center}
.id-t{font-weight:700;color:var(--green)}
.id-s{font-size:11.5px;color:var(--fg-dim)}
.id-s b{color:var(--accent);font-weight:500}
.id-r{display:flex;gap:8px}

.con-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.ct{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--fg-dim);border:1px solid var(--line);background:var(--bg-2);padding:6px 12px 6px 6px;transition:border-color .2s,color .2s}
.ct:hover{color:var(--fg);border-color:var(--line-2)}
.ct.on{color:var(--accent);border-color:rgba(255,140,66,.45)}
.ct .cl{width:6px;height:6px;border-radius:50%;background:var(--green)}
.ct.off .cl{background:var(--fg-mute)}
.con-in{border:0;border-top:1px solid var(--line)}
.cln{white-space:pre-wrap;word-break:break-word;animation:lineIn .2s ease both;color:var(--fg-dim)}
.cln .t{color:var(--fg-mute)}
.cln .w{color:var(--amber)}
.cln .e{color:var(--red)}
.cln .g{color:var(--green)}
.cln .o{color:var(--accent)}
.cln.me{color:var(--fg)}
.cln.me::before{content:"> ";color:var(--accent)}

.conn-state{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid rgba(125,211,168,.28);background:var(--bg-2);padding:14px 18px;flex-wrap:wrap}
.cs-l{display:flex;gap:14px;align-items:center}
.cs-led{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(125,211,168,.15);animation:ledG 2.4s ease-in-out infinite}
.cs-t{font-weight:700;font-size:15px}
.cs-s{font-size:11px;color:var(--fg-mute)}
.cs-s b{color:var(--fg-dim);font-weight:500}
.cs-r{display:flex;gap:8px}
.howto{margin-top:22px;border-top:1px solid var(--line)}
.hw{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:18px 4px;border-bottom:1px solid var(--line)}
.hw-n{font-size:20px;font-weight:700;color:var(--accent)}
.hw-t{font-weight:600;font-size:14px;margin-bottom:4px}
.hw-s{font-size:11.5px;color:var(--fg-dim);margin-bottom:12px}
.hw .secret-box{margin:10px 0 0}
.code-box{border:1px solid var(--line);background:var(--bg);padding:10px 14px;font-size:12.5px;color:var(--fg)}
.cb-p{color:var(--accent);margin-right:8px}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.cap{background:var(--bg);padding:14px 16px;font-size:11.5px;color:var(--fg-dim);line-height:1.6}
.cap b{display:block;font-size:12.5px;color:var(--fg);margin-bottom:2px}
.cap.ok b::before{content:"✓ ";color:var(--green)}
.cap.no b::before{content:"✕ ";color:var(--red)}

@media (max-width:1000px){.spec-grid,.cap-grid{grid-template-columns:repeat(2,1fr)}.cores{grid-template-columns:repeat(4,1fr)}.cfg-wrap{grid-template-columns:1fr}.cfg-side{position:static}}
@media (max-width:640px){.spec-grid,.cap-grid,.tgls{grid-template-columns:1fr}.cores{grid-template-columns:repeat(4,1fr)}.al-row{grid-template-columns:70px 1fr}.al-v{grid-column:1/-1;text-align:left}.inst-grid{grid-template-columns:1fr}.steps-bar .sl{display:none}.ins-done{flex-direction:column;align-items:flex-start}.hw{grid-template-columns:34px 1fr}}
