*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#0d0d0d;--bg-2:#141414;--bg-3:#1a1a1a;
  --fg:#e6e6e6;--fg-dim:#888;--fg-mute:#555;
  --accent:#ff8c42;--accent-d:#b85f23;
  --line:#222;--line-2:#2a2a2a;
  --green:#7dd3a8;--amber:#e8c275;--red:#ff6e6e;--blue:#4d9de0;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}
html,body{background:var(--bg);color:var(--fg);font-family:var(--mono);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}
body{overflow-x:hidden}
body.booting{overflow:hidden;height:100vh}
::selection{background:var(--accent);color:var(--bg)}
a,button{color:inherit;text-decoration:none;background:none;border:none;font:inherit;cursor:pointer}
@media (min-width:2400px){html{zoom:1.5}}
@media (min-width:3400px){html{zoom:2}}

.boot{position:fixed;inset:0;z-index:1000;background:var(--bg);display:grid;place-items:center;padding:24px;transition:opacity .5s ease}
.boot.gone{opacity:0;pointer-events:none}
.boot-mini{display:flex;flex-direction:column;gap:14px;width:min(440px,100%)}
.boot-prompt{font-size:12px;color:var(--fg-dim);display:flex;align-items:baseline;padding-bottom:10px;border-bottom:1px dashed var(--line);white-space:nowrap;overflow:hidden}
.boot-prompt .u{color:var(--accent);font-weight:600}
.boot-prompt .m{color:var(--fg-mute)}
.boot-prompt .p{color:var(--blue)}
.boot-prompt .d{color:var(--accent);margin:0 8px}
.boot-prompt .cur{display:inline-block;width:7px;height:12px;background:var(--accent);margin-left:6px;animation:blink 1.05s steps(2) infinite;align-self:center}
.boot-lines{font-size:11px;line-height:1.85;min-height:118px;display:flex;flex-direction:column}
.bln{display:grid;grid-template-columns:54px 44px 1fr auto;gap:10px;white-space:nowrap;overflow:hidden;animation:lineIn .26s cubic-bezier(.22,1,.36,1) both}
.bln .t{color:var(--fg-mute);font-size:10px;opacity:.7;font-variant-numeric:tabular-nums}
.bln .lvl{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.lvl.i{color:var(--blue)}.lvl.ok{color:var(--green)}.lvl.w{color:var(--amber)}.lvl.go{color:var(--accent)}.lvl.x{color:var(--red)}
.bln .msg{color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis}
.bln .ms{color:var(--fg-mute);font-size:9.5px;opacity:.6}
.boot-track{height:1px;background:var(--line);position:relative;overflow:hidden}
.boot-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);box-shadow:0 0 6px rgba(255,140,66,.5);transition:width .25s ease}
.boot-fill.done{background:var(--green)}
@keyframes lineIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes blink{50%{opacity:0}}

nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:14px 24px;display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:12px;letter-spacing:.04em;background:linear-gradient(to bottom,rgba(13,13,13,.95),rgba(13,13,13,.6));backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
nav .left{font-weight:600;font-size:14px;display:flex;align-items:center;gap:6px}
nav .left .slash{color:var(--accent);font-weight:700}
nav .left .ver{font-size:10px;color:var(--fg-mute);font-weight:400;padding:2px 6px;border:1px solid var(--line);margin-left:4px}
.brand-mark{display:grid;grid-template-columns:repeat(3,4px);gap:1px;margin-right:6px}
.brand-mark i{width:4px;height:4px;background:var(--line-2)}
.brand-mark i:nth-child(1),.brand-mark i:nth-child(3),.brand-mark i:nth-child(4),.brand-mark i:nth-child(6),.brand-mark i:nth-child(8){background:var(--fg)}
.brand-mark i:nth-child(5){background:var(--accent)}
nav .center{display:flex;gap:20px;color:var(--fg-dim)}
nav .center a{position:relative;transition:color .25s;display:flex;align-items:center;gap:6px}
nav .center a::before{content:"./";color:var(--accent);opacity:.7}
nav .center a:hover,nav .center a.on{color:var(--fg)}
nav .center a.on::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--accent);box-shadow:0 0 6px var(--accent)}
.nv{display:none;font-size:8.5px;letter-spacing:.12em;padding:1px 5px;background:var(--red);color:var(--bg);font-weight:700}
body.attack .nv{display:inline-block;animation:blink 1s steps(2) infinite}
nav .right{display:flex;align-items:center;gap:8px;font-size:11px}
.live-stat{display:inline-flex;align-items:baseline;gap:5px;font-size:10.5px;padding:3px 8px;border:1px solid var(--line);background:var(--bg-2);white-space:nowrap}
.live-stat .k{color:var(--fg-mute);text-transform:uppercase;letter-spacing:.16em;font-size:9px}
.live-stat .v{color:var(--accent);font-weight:600;font-variant-numeric:tabular-nums;font-size:11.5px}
.live-stat .u{color:var(--fg-mute);font-size:9px}
.live{display:flex;align-items:center;gap:6px;color:var(--fg-dim);white-space:nowrap;padding:3px 8px;border:1px solid var(--line)}
.led{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(125,211,168,.18);animation:ledG 2.4s ease-in-out infinite}
@keyframes ledG{50%{box-shadow:0 0 0 6px rgba(125,211,168,.04)}}
@keyframes ledR{50%{box-shadow:0 0 0 7px rgba(255,110,110,.05)}}
body.attack .live{border-color:rgba(255,110,110,.4);color:var(--red)}
body.attack .live .led{background:var(--red);box-shadow:0 0 0 3px rgba(255,110,110,.2);animation:ledR 1s ease-in-out infinite}

.atk-strip{position:fixed;top:53px;left:0;right:0;z-index:190;display:none;align-items:center;gap:14px;padding:8px 24px;background:#1c0e0e;border-bottom:1px solid rgba(255,110,110,.35);color:#f2b8b8;font-size:12px}
body.attack .atk-strip{display:flex}
.atk-strip .glyph{color:var(--red);font-weight:700;font-size:15px;animation:blink 1s steps(2) infinite}
.atk-strip b{color:var(--red);text-transform:uppercase;letter-spacing:.14em;font-size:11px}
.atk-t{margin-left:auto;color:var(--red);font-variant-numeric:tabular-nums}
.atk-go{border:1px solid rgba(255,110,110,.5);padding:3px 10px;color:var(--red);font-size:11px}
.atk-go::before{content:"→ "}
.atk-go:hover{background:var(--red);color:var(--bg)}

main{padding-top:96px;min-height:100vh}
body.attack main{padding-top:132px}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px}
.page{display:none;padding-bottom:60px}
.page.on{display:block;animation:lineIn .4s ease both}
.hero-prompt{font-size:12px;color:var(--fg-mute);margin:14px 0 18px}
.hero-prompt::before{content:"$ ";color:var(--accent)}
.hero-prompt::after{content:"";display:inline-block;width:8px;height:13px;background:var(--accent);vertical-align:-2px;margin-left:6px;animation:blink 1s steps(2) infinite}
.hero-prompt .typed{color:var(--fg-dim)}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.stat{background:var(--bg);padding:18px 22px}
.stat .k{font-size:10.5px;color:var(--fg-mute);text-transform:uppercase;letter-spacing:.14em;margin-bottom:8px}
.stat .v{font-size:30px;color:var(--accent);font-weight:600;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.stat .v sup{font-size:.4em;vertical-align:.7em;color:var(--fg-mute);font-weight:400;margin-left:2px}
.stat .v.b{color:var(--blue)}.stat .v.g{color:var(--green)}.stat .v.r{color:var(--fg-mute)}
body.attack .stat .v.r{color:var(--red)}

.sec-head{margin:56px 0 28px;display:flex;align-items:baseline;gap:18px;border-bottom:1px solid var(--line);padding-bottom:16px}
.sec-head .num{font-size:14px;color:var(--accent);font-weight:600}
.sec-head .title{font-size:22px;font-weight:600;letter-spacing:-.01em}
.sec-head .meta{margin-left:auto;font-size:11px;color:var(--fg-mute)}
.sec-head .meta::before{content:"$ ";color:var(--accent)}

.group-row{display:flex;align-items:center;gap:14px;margin:36px 0 14px;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--fg-mute)}
.group-row .label{display:flex;align-items:center;gap:10px}
.group-row .dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}
.group-row .dot.r{background:var(--red)}.group-row .dot.a{background:var(--amber)}
.group-row .rule{flex:1;height:1px;background:var(--line)}
.group-row .count{color:var(--fg-dim)}
.group-row .count b{color:var(--accent);font-weight:600}

.topo-card{position:relative;border:1px dashed var(--line-2);background:rgba(255,255,255,.01);padding:16px 18px 12px}
.bk{position:absolute;color:var(--accent);opacity:.55;font-size:20px;line-height:1;pointer-events:none}
.bk.tl{top:-4px;left:-2px}.bk.tr{top:-4px;right:-2px}.bk.bl{bottom:-4px;left:-2px}.bk.br{bottom:-4px;right:-2px}
body.attack .bk{color:var(--red)}
.topo-head,.cc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;color:var(--fg-dim);margin-bottom:6px;flex-wrap:wrap}
.cmd{display:flex;align-items:center;gap:8px}
.cmd .dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}
.legend{display:flex;align-items:center;gap:8px;color:var(--fg-mute);font-size:10.5px}
.lg{display:inline-block;width:12px;height:2px;margin-left:6px}
.lg.g{background:var(--green)}.lg.r{background:var(--red)}.lg.a{background:var(--accent)}
#topo{width:100%;height:auto;display:block}
.topo-foot{font-size:11px;color:var(--fg-mute);border-top:1px dashed var(--line);padding-top:10px;margin-top:4px;min-height:32px}
.topo-foot b{color:var(--accent);font-weight:600}
.topo-foot .kv{margin-right:18px;white-space:nowrap}
.topo-foot .kv i{font-style:normal;color:var(--fg)}

.lk{fill:none;stroke:var(--line-2);stroke-linecap:round;transition:stroke-width .6s ease,stroke .4s}
.lk.on{stroke:rgba(125,211,168,.28)}
.lk.bad{stroke:rgba(255,110,110,.35);stroke-dasharray:6 6;animation:dash 1s linear infinite}
.lk.org{stroke:rgba(255,140,66,.3)}
@keyframes dash{to{stroke-dashoffset:-12}}
.nd{cursor:pointer}
.nd rect.box{fill:var(--bg);stroke:var(--line-2);stroke-width:1;transition:stroke .3s}
.nd:hover rect.box,.nd.sel rect.box{stroke:var(--accent)}
.nd.st-ok rect.box{stroke:rgba(125,211,168,.45)}
.nd.st-atk rect.box{stroke:var(--red);stroke-width:1.5}
.nd.st-org rect.box{stroke:rgba(255,140,66,.55)}
.nd.st-bad rect.box{stroke:rgba(255,110,110,.5);stroke-dasharray:4 4}
.nd.sel rect.box{stroke:var(--accent)!important}
.nd .nm{fill:var(--fg);font-size:15px;font-weight:600;font-family:var(--mono)}
.nd .pre{fill:var(--fg-mute);font-size:11px;font-family:var(--mono)}
.nd .sub{fill:var(--fg-dim);font-size:10.5px;font-family:var(--mono)}
.nd .sub2{fill:var(--fg-mute);font-size:9.5px;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase}
.nd .ldot{transition:fill .3s}
.halo{fill:none;stroke:var(--red);opacity:0}
.st-atk .halo{animation:halo 1.4s ease-out infinite}
@keyframes halo{0%{opacity:.6;transform:scale(1)}100%{opacity:0;transform:scale(1.18)}}

.node-list{border-top:1px solid var(--line)}
.nrow{display:grid;grid-template-columns:32px 1fr 150px 90px 90px 70px 24px;gap:18px;align-items:center;padding:16px 8px;border-bottom:1px solid var(--line);position:relative;cursor:pointer;transition:padding .45s cubic-bezier(.22,1,.36,1),background .25s}
.nrow::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;box-shadow:0 0 8px var(--accent);transition:transform .55s cubic-bezier(.22,1,.36,1)}
.nrow:hover,.nrow.sel{background:var(--bg-2);padding-left:16px;padding-right:16px}
.nrow:hover::before,.nrow.sel::before{transform:scaleX(1)}
.nrow .idx{font-size:11px;color:var(--fg-mute)}
.nrow .name{font-size:17px;font-weight:600;display:flex;align-items:center;gap:10px}
.nrow:hover .name{color:var(--accent)}
.nrow .name .pre{font-size:13px;font-weight:400;color:var(--fg-mute)}
.nrow .name .rl{font-size:10px;color:var(--fg-mute);font-weight:400;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--line);padding:1px 6px}
.nrow .nled{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 5px rgba(125,211,168,.5)}
.nrow .nled.atk{background:var(--red);box-shadow:0 0 6px rgba(255,110,110,.7);animation:blink .8s steps(2) infinite}
.nrow .nled.org{background:var(--accent)}
.chip{font-size:11px;color:var(--fg-dim);border:1px solid var(--line);padding:3px 8px;white-space:nowrap;text-align:center}
.chip .c{color:var(--blue)}
.nrow .num{font-size:12px;color:var(--fg-dim);text-align:right;font-variant-numeric:tabular-nums}
.nrow .num b{color:var(--fg);font-weight:600;font-size:14px}
.nrow .num.r b{color:var(--red)}
.nrow .arr{color:var(--fg-mute);transition:transform .3s,color .3s}
.nrow:hover .arr{color:var(--accent);transform:translateX(4px)}

.banner{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 20px;border:1px solid;margin-bottom:18px;flex-wrap:wrap}
.banner.calm{border-color:rgba(125,211,168,.25);background:rgba(125,211,168,.03)}
.banner.atk{border-color:rgba(255,110,110,.5);background:#1a0d0d}
.bn-l{display:flex;align-items:center;gap:16px}
.bn-glyph{width:38px;height:38px;display:grid;place-items:center;border:1px solid currentColor;font-size:18px;font-weight:700}
.calm .bn-glyph{color:var(--green)}
.atk .bn-glyph{color:var(--red);animation:blink 1s steps(2) infinite}
.bn-t{font-size:15px;font-weight:600;text-transform:lowercase}
.calm .bn-t{color:var(--green)}
.atk .bn-t{color:var(--red);text-transform:uppercase;letter-spacing:.12em;font-size:14px}
.bn-s{font-size:11.5px;color:var(--fg-dim)}
.bn-r{display:flex;align-items:center;gap:12px}
.bn-time{font-size:20px;font-weight:600;color:var(--red);font-variant-numeric:tabular-nums}
.sim{border:1px solid var(--line-2);padding:6px 12px;font-size:11px;color:var(--fg-dim);transition:border-color .2s,color .2s}
.sim::before{content:"▶ ";font-size:9px;color:var(--accent)}
.sim:hover{border-color:var(--accent);color:var(--fg)}

.dd-grid{display:grid;grid-template-columns:1fr 300px;gap:18px}
.chart-card,.act-card{border:1px solid var(--line);background:var(--bg-2);padding:14px 16px}
#chart{width:100%;height:220px;display:block}
#grid line{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}
.ch-acc{fill:none;stroke:var(--green);stroke-width:2;vector-effect:non-scaling-stroke}
.ch-acc-a{fill:rgba(125,211,168,.07);stroke:none}
.ch-drop{fill:none;stroke:var(--red);stroke-width:2;vector-effect:non-scaling-stroke}
.ch-drop-a{fill:rgba(255,110,110,.12);stroke:none}
.cc-axis{display:flex;justify-content:space-between;font-size:10px;color:var(--fg-mute);margin-top:6px}
.act{display:grid;grid-template-columns:26px 1fr;grid-template-rows:auto auto;column-gap:10px;width:100%;text-align:left;padding:11px 10px;border:1px solid var(--line);margin-top:8px;background:var(--bg);transition:border-color .2s,background .2s}
.act:hover{border-color:var(--accent)}
.act .ak{grid-row:1/3;font-size:11px;color:var(--fg-mute);align-self:center}
.act .an{font-size:12.5px;font-weight:600}
.act .ad{font-size:10.5px;color:var(--fg-mute)}
.act.on{border-color:var(--accent);background:rgba(255,140,66,.06)}
.act.on .an{color:var(--accent)}
.act.on .an::after{content:" · pornit";font-weight:400;font-size:10.5px}
.act.danger:hover{border-color:var(--red)}
.act.danger:hover .an{color:var(--red)}

.nd-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.ndc{background:var(--bg-2);border:1px solid var(--line);border-top:2px solid var(--green);padding:14px 16px}
.ndc.atk{border-top-color:var(--red);background:#170e0e}
.ndc.org{border-top-color:var(--accent)}
.ndc.standby{border-top-color:var(--fg-mute)}
.ndc-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.ndc-n{font-weight:600;font-size:15px}
.ndc-s{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--green)}
.ndc.atk .ndc-s{color:var(--red)}
.ndc.org .ndc-s{color:var(--accent)}
.ndc.standby .ndc-s{color:var(--fg-mute)}
.ndc-kv{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;font-size:11px;color:var(--fg-mute)}
.ndc-kv b{display:block;color:var(--fg);font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}
.ndc-kv b.r{color:var(--red)}
.spark{width:100%;height:34px;margin-top:10px;display:block}
.spark path{fill:none;stroke:var(--green);stroke-width:1.5;vector-effect:non-scaling-stroke}
.ndc.atk .spark path{stroke:var(--red)}
.ndc.org .spark path{stroke:var(--accent)}

.dd-two{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.incidents,.blocked{border-top:1px solid var(--line);min-height:60px}
.inc{display:grid;grid-template-columns:62px 1fr auto;gap:12px;padding:11px 4px;border-bottom:1px dashed var(--line);font-size:12px;align-items:baseline}
.inc .t{color:var(--fg-mute);font-size:11px;font-variant-numeric:tabular-nums}
.inc .m b{color:var(--fg);font-weight:600}
.inc .m span{color:var(--fg-dim)}
.inc .d{font-size:10.5px;color:var(--fg-mute);white-space:nowrap}
.inc.live .t{color:var(--red)}
.inc.live .d{color:var(--red)}
.blk{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:9px 4px;border-bottom:1px dashed var(--line);font-size:12px}
.blk .id{color:var(--fg)}
.blk .id span{color:var(--fg-mute);font-size:10.5px;margin-left:8px}
.blk .exp{color:var(--amber);font-size:11px;font-variant-numeric:tabular-nums}
.blk button{font-size:10.5px;color:var(--fg-mute);border:1px solid var(--line);padding:2px 8px}
.blk button:hover{color:var(--fg);border-color:var(--accent)}
.empty{font-size:11.5px;color:var(--fg-mute);padding:14px 4px}
.empty::before{content:"// ";color:var(--accent)}

.tail-card{border:1px solid var(--line);background:var(--bg-2)}
.tail-head{display:flex;align-items:center;gap:16px;padding:12px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.left-h{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--fg-dim)}
.left-h .dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}
.filters{display:flex;gap:4px;margin-left:auto}
.f{font-size:10.5px;color:var(--fg-mute);padding:3px 9px;border:1px solid transparent}
.f.on{color:var(--fg);border-color:var(--line-2);background:var(--bg)}
.fc{margin-left:6px;color:var(--accent);font-size:10px}
.badge{font-size:10px;padding:3px 8px;border:1px solid var(--line);color:var(--fg-dim);display:flex;align-items:center;gap:6px}
.tail-body{height:460px;overflow:auto;padding:10px 16px;font-size:11.5px;line-height:1.9}
.tln{display:grid;grid-template-columns:70px 44px 70px 1fr;gap:12px;white-space:nowrap;animation:lineIn .25s ease both}
.tln .t{color:var(--fg-mute);font-variant-numeric:tabular-nums}
.tln .n{color:var(--blue)}
.tln .msg{color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis}
.tln .msg .o{color:var(--accent)}.tln .msg .r{color:var(--red)}.tln .msg .g{color:var(--green)}

.grep{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--bg-2);padding:10px 14px}
.grep-prompt{color:var(--accent);font-size:12px;white-space:nowrap}
.grep-input{flex:1;background:none;border:none;outline:none;color:var(--fg);font:inherit;font-size:13px;min-width:0}
.grep-input::placeholder{color:var(--fg-mute)}
.grep-btn{border:1px solid var(--accent);color:var(--accent);padding:5px 13px;font-size:12px;font-weight:600;white-space:nowrap}
.grep-btn::before{content:"+ "}
.grep-btn:hover{background:var(--accent);color:var(--bg)}
.add-err{font-size:11px;color:var(--red);min-height:18px;margin:6px 2px 10px}
.srv-list{border-top:1px solid var(--line)}
.srow{display:grid;grid-template-columns:32px 1fr 120px 110px 90px;gap:18px;align-items:center;padding:14px 8px;border-bottom:1px solid var(--line)}
.srow .idx{font-size:11px;color:var(--fg-mute)}
.srow .name{font-weight:600;font-size:15px}
.srow .name .pre{font-weight:400;font-size:12px;color:var(--fg-mute)}
.srow .st{font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.srow .st.ok{color:var(--green)}.srow .st.wait{color:var(--amber)}.srow .st.org{color:var(--accent)}
.srow button{font-size:10.5px;color:var(--fg-mute);border:1px solid var(--line);padding:3px 8px;justify-self:end}
.srow button:hover{color:var(--red);border-color:var(--red)}
.note{font-size:11px;color:var(--fg-mute);margin-top:18px}

footer{padding:40px 0 50px}
.signature-card{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--fg-mute)}
.sc-rule{flex:1;height:1px;background:var(--line)}
.sc-label{letter-spacing:.18em;text-transform:uppercase}
.sc-signature{color:var(--fg);font-weight:700;font-size:14px}
.sc-slash{color:var(--accent)}
.sc-cursor{display:inline-block;width:6px;height:12px;background:var(--accent);margin-left:3px;vertical-align:-1px;animation:blink 1.05s steps(2) infinite}
.sc-sep{opacity:.4}

.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;background:var(--bg-3);border:1px solid var(--line-2);border-left:2px solid var(--accent);padding:10px 16px;font-size:12px;z-index:500;transition:opacity .25s,transform .25s;pointer-events:none;white-space:nowrap}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast::before{content:"$ ";color:var(--accent)}

@media (max-width:900px){
  nav .right .live-stat{display:none}
  .stats{grid-template-columns:repeat(2,1fr)}
  .dd-grid,.dd-two{grid-template-columns:1fr}
  .nrow{grid-template-columns:24px 1fr 80px 24px;gap:12px}
  .nrow .chip,.nrow .num.h{display:none}
  .srow{grid-template-columns:24px 1fr 90px 70px}
  .srow .chip{display:none}
}
@media (max-width:560px){
  nav{padding:12px 16px;flex-wrap:wrap;gap:10px}
  nav .center{order:3;width:100%;justify-content:space-between;gap:8px;font-size:11px}
  main{padding-top:112px}
  body.attack main{padding-top:150px}
  .atk-strip{top:82px;padding:8px 16px;flex-wrap:wrap;gap:8px}
  .atk-go{display:none}
  .wrap{padding:0 16px}
  .stat{padding:14px}
  .stat .v{font-size:24px}
  .sec-head .meta{display:none}
  .tln{grid-template-columns:60px 1fr;row-gap:0}
  .tln .lvl,.tln .n{display:none}
  .banner{padding:14px}
}
.tln .lvl{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
