:root{
  --txt:#e6ecf2; --dim:#8a97a4; --faint:#5f6b76;
  --bcu:#4ea3ee; --ani:#f0a63c; --ok:#5fe0a0; --holo:#7fd8ff;
  --n-bcu:#f0a63c; --n-ani:#7fd8ff; /* nation colours: BCU=orange, ANI=cyan (site-wide) */
  --glass:rgba(13,18,24,.55); --hair:rgba(150,180,210,.16);
  --cham:18px; --cham-s:8px; --cham-t:5px;
  --wrap:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#04070b;color:var(--txt);font-family:"Segoe UI",Tahoma,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:rgba(127,216,255,.28);color:#fff}

.stage{position:relative;min-height:100vh;display:flex;flex-direction:column}
.stage::before{content:"";position:fixed;inset:0;z-index:0;background:#04070b var(--map) center top/cover no-repeat;opacity:.5}
.stage::after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 50% 0%,transparent 40%,rgba(4,7,11,.9))}
.stage>*{position:relative;z-index:2}

.cham{clip-path:polygon(var(--cham) 0,calc(100% - var(--cham)) 0,100% var(--cham),100% calc(100% - var(--cham)),calc(100% - var(--cham)) 100%,var(--cham) 100%,0 calc(100% - var(--cham)),0 var(--cham))}
.cham-s{clip-path:polygon(var(--cham-s) 0,calc(100% - var(--cham-s)) 0,100% var(--cham-s),100% calc(100% - var(--cham-s)),calc(100% - var(--cham-s)) 100%,var(--cham-s) 100%,0 calc(100% - var(--cham-s)),0 var(--cham-s))}
.cham-t{clip-path:polygon(var(--cham-t) 0,calc(100% - var(--cham-t)) 0,100% var(--cham-t),100% calc(100% - var(--cham-t)),calc(100% - var(--cham-t)) 100%,var(--cham-t) 100%,0 calc(100% - var(--cham-t)),0 var(--cham-t))}
.hl{background:linear-gradient(135deg,rgba(150,190,225,.55),rgba(90,105,120,.14) 42%,rgba(30,38,46,.5));padding:1px;flex:1;display:flex;flex-direction:column}
.mono{font-family:"Consolas",monospace}

/* ===== NAV — tactical command bus ===== */
.hud{position:sticky;top:0;z-index:30;display:flex;align-items:stretch;isolation:isolate;
  background:linear-gradient(180deg,rgba(8,12,17,.82),rgba(8,12,17,.42));
  backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-bottom:1px solid var(--hair)}
.hud .seg{display:flex;align-items:center;padding:0 20px}
.hud .brand{gap:11px;border-right:1px solid var(--hair)}
.hud .brand img{height:34px;filter:drop-shadow(0 1px 4px rgba(0,0,0,.7))}
.hud .brand .tagx{font:700 0.59375rem/1.5 "Consolas",monospace;letter-spacing:1.5px;color:var(--faint);text-transform:uppercase}
.hud .brand .tagx b{color:var(--bcu)}
.bus{position:relative;flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 18px}
.bus::before{content:"";position:absolute;left:24px;right:24px;top:31px;height:1px;background:linear-gradient(90deg,transparent,rgba(127,216,255,.28) 12%,rgba(127,216,255,.28) 88%,transparent)}
.bus::after{content:"";position:absolute;top:29px;left:24px;width:5px;height:5px;border-radius:50%;background:var(--holo);box-shadow:0 0 10px var(--holo);animation:busscan 6s linear infinite}
@keyframes busscan{0%{left:24px;opacity:0}6%{opacity:1}94%{opacity:1}100%{left:calc(100% - 24px);opacity:0}}
.node{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:5px 8px 4px;cursor:pointer;color:var(--dim);transition:color .16s;min-width:66px}
.tile{position:relative;width:40px;height:34px;display:grid;place-items:center;background:var(--glass);border:1px solid var(--hair);transition:.18s}
.tile svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.6}
.node .nl{font:700 0.625rem/1 "Segoe UI";letter-spacing:1.4px;text-transform:uppercase}
.bk{position:absolute;width:7px;height:7px;border-color:var(--holo);opacity:0;transition:.2s;z-index:3}
.bk.tl{left:-4px;top:-4px;border-left:2px solid;border-top:2px solid;transform:translate(-3px,-3px)}
.bk.tr{right:-4px;top:-4px;border-right:2px solid;border-top:2px solid;transform:translate(3px,-3px)}
.bk.bl{left:-4px;bottom:-4px;border-left:2px solid;border-bottom:2px solid;transform:translate(-3px,3px)}
.bk.br{right:-4px;bottom:-4px;border-right:2px solid;border-bottom:2px solid;transform:translate(3px,3px)}
.node:hover{color:var(--txt)}
.node:hover .tile{border-color:rgba(127,216,255,.5);color:var(--holo);box-shadow:0 0 14px rgba(127,216,255,.22);transform:translateY(-2px)}
.node:hover .bk{opacity:.9;transform:translate(0,0)}
.node.on{color:#eaf6ff}
.node.on .tile{background:linear-gradient(180deg,#2a6fb0,#123f6e);border-color:#7fd8ff;color:#eaf9ff;box-shadow:0 0 16px rgba(127,216,255,.4)}
.node.on .bk{opacity:.95;transform:translate(0,0)}
.node.on::after{content:"";position:absolute;top:-9px;left:50%;width:4px;height:4px;border-radius:50%;transform:translateX(-50%);background:var(--holo);box-shadow:0 0 8px var(--holo)}
.sys{gap:14px;border-left:1px solid var(--hair)}
.led{display:inline-flex;align-items:center;gap:7px;font:700 0.625rem/1 "Consolas",monospace;letter-spacing:1.5px;color:var(--ok);text-transform:uppercase}
.led .d{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 9px var(--ok);animation:pulse 1.7s infinite}
.lnk{font:600 0.75rem/1 "Segoe UI";color:var(--txt);cursor:pointer;opacity:.9}.lnk:hover{opacity:1}
.pill{display:inline-block;font:700 0.75rem/1 "Segoe UI";letter-spacing:.4px;padding:11px 17px;cursor:pointer;color:#20130a;background:linear-gradient(180deg,#ffcf7d,#e79a2e);border:1px solid rgba(255,215,150,.6);box-shadow:0 4px 16px rgba(231,154,46,.32);transition:transform .12s,box-shadow .12s}
.pill:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(231,154,46,.5)}
.pill.b{color:#08121b;background:linear-gradient(180deg,#8fd0ff,#3b8fd6);border-color:rgba(190,225,255,.6);box-shadow:0 4px 16px rgba(59,143,214,.32)}
/* burger — hidden on desktop, opens the HUD drawer on small screens */
.burger{display:none;width:38px;height:32px;padding:0;cursor:pointer;place-items:center;gap:5px;
  background:var(--glass);border:1px solid var(--hair);
  clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px)}
.burger span{display:block;width:17px;height:2px;background:var(--holo);box-shadow:0 0 6px rgba(127,216,255,.5);transition:.2s}
.hud.open .burger{border-color:rgba(127,216,255,.5)}
.hud.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hud.open .burger span:nth-child(2){opacity:0}
.hud.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ===== CONSOLE / SCREEN ===== */
.wrap{flex:1;width:100%;max-width:var(--wrap);margin:26px auto 0;padding:0 20px;display:flex;flex-direction:column}
.view{position:relative;overflow:hidden;background:#05080c;flex:1;display:flex;flex-direction:column}
.view video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.home-screen{position:relative;min-height:560px;background-position:center top;background-size:cover;background-repeat:no-repeat}
.fx{position:absolute;inset:0;pointer-events:none}
.fx.grade{z-index:1;background:linear-gradient(180deg,rgba(5,9,13,.35),rgba(5,9,13,0) 26%,rgba(5,9,13,.35) 60%,rgba(5,9,13,.92))}
.fx.vig{z-index:1;background:radial-gradient(130% 100% at 50% 38%,transparent 58%,rgba(2,5,9,.6))}
.edge{position:absolute;inset:10px;z-index:5;pointer-events:none;border:1px solid rgba(127,216,255,.2)}
.ck{position:absolute;width:15px;height:15px;z-index:6;pointer-events:none;border-color:var(--holo);opacity:.85}
.ck.tl{left:8px;top:8px;border-left:2px solid;border-top:2px solid}.ck.tr{right:8px;top:8px;border-right:2px solid;border-top:2px solid}
.ck.bl{left:8px;bottom:8px;border-left:2px solid;border-bottom:2px solid}.ck.br{right:8px;bottom:8px;border-right:2px solid;border-bottom:2px solid}
.tele{position:absolute;z-index:6;left:20px;top:16px;display:flex;align-items:center;gap:11px;font:600 0.65625rem/1 "Consolas",monospace;letter-spacing:2px;color:#b7d4e8;text-transform:uppercase}
.rec{display:inline-flex;align-items:center;gap:6px;color:#ff6f63}.rec .d{width:7px;height:7px;border-radius:50%;background:#ff6f63;box-shadow:0 0 8px #ff6f63;animation:pulse 1.1s infinite}
.sepv{width:1px;height:11px;background:rgba(150,190,220,.3)}
.mr{position:absolute;z-index:6;right:18px;top:14px}.mr canvas{display:block;filter:drop-shadow(0 0 6px rgba(127,216,255,.4))}
.sweep{position:absolute;inset:0;z-index:7;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent,rgba(127,216,255,.14) 45%,rgba(127,216,255,.35) 50%,rgba(127,216,255,.14) 55%,transparent);background-size:250% 100%}
.view.switching .sweep{opacity:1;animation:sw .5s ease}
@keyframes sw{0%{background-position:120% 0}100%{background-position:-120% 0}}
.screens{position:relative;z-index:4;flex:1;display:flex;flex-direction:column}
/* account pages fill the console; the dashboard button row sinks to the bottom */
.screen[data-scr="account"]{flex:1;display:flex;flex-direction:column}
.screen[data-scr="account"] .sc{flex:1}
.screen[data-scr="account"] .dashcta{margin-top:auto}
.screen{position:relative;opacity:1;transition:opacity .25s}
.view.switching .screen{opacity:0}

/* HOME */
.hero-c{position:absolute;left:34px;bottom:34px;right:34px;max-width:640px;z-index:3}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font:700 0.6875rem/1 "Segoe UI";letter-spacing:4px;text-transform:uppercase;color:#a9cfe9;margin-bottom:14px;text-shadow:0 1px 4px #000}
.eyebrow .t{width:22px;height:1px;background:var(--bcu)}.eyebrow b{color:var(--ani)}
.wordmark{font:900 clamp(2.125rem,6vw,4rem)/.92 "Arial Black",Impact,sans-serif;letter-spacing:.5px;text-transform:uppercase;background:linear-gradient(180deg,#fff 0%,#d3dce4 46%,#9aa4ad 54%,#cfd8e0 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 10px rgba(0,0,0,.85));margin:0}
.tag{font:400 0.875rem/1.6 "Segoe UI";color:#d7e1ea;max-width:52ch;margin:14px 0 0;text-shadow:0 1px 5px #000}
.cta{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}.cta .pill{padding:14px 22px;font-size:0.8125rem}

/* generic screen (non-home) */
.sc{position:relative;margin:30px 34px 34px;display:flex;flex-direction:column;z-index:3}
.sc .sh{display:flex;align-items:baseline;gap:12px;margin-top:15px;margin-bottom:16px}
.sc .sh h1,.sc .sh h2{font:900 1.625rem/1 "Arial Black",Impact,sans-serif;letter-spacing:1px;text-transform:uppercase;color:#eaf2fa}
.sc .sh .hx{font:700 0.625rem/1 "Consolas",monospace;letter-spacing:2px;color:var(--holo);text-transform:uppercase}
.sc .lead{font:400 0.84375rem/1.6 "Segoe UI";color:var(--dim);max-width:60ch;margin-bottom:18px}
.dl{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-start}
.dl .big{flex:1;min-width:260px}
.dl .ver{font:700 0.6875rem/1 "Consolas",monospace;letter-spacing:2px;color:var(--faint);text-transform:uppercase;margin-bottom:12px}
.dl .specs{width:280px;background:var(--glass);border:1px solid var(--hair);padding:14px 16px}
.dl .specs .r{display:flex;justify-content:space-between;font:600 0.75rem/2 "Segoe UI";color:var(--dim);border-bottom:1px dashed rgba(150,180,210,.14)}
.dl .specs .r:last-child{border-bottom:0}.dl .specs .r b{color:var(--txt)}
.dl .specs .spectitle{font:700 0.625rem "Consolas",monospace;letter-spacing:2px;text-transform:uppercase;color:var(--holo);margin-bottom:10px}
.mirror{font:600 0.75rem "Segoe UI";color:var(--bcu);margin-top:12px;display:inline-block}
.steps{list-style:none;margin:16px 0 4px;padding:0;display:flex;flex-direction:column;gap:12px}
.steps li{display:flex;gap:13px;align-items:flex-start}
.steps .sn{flex:none;display:grid;place-items:center;width:26px;height:26px;
  background:linear-gradient(180deg,#2a6fb0,#123f6e);border:1px solid rgba(127,216,255,.5);
  font:800 0.75rem "Segoe UI";color:#eaf9ff}
.steps li b{display:block;font:700 0.84375rem "Segoe UI";color:var(--txt)}
.steps li span{display:block;margin-top:2px;font:400 0.75rem/1.5 "Segoe UI";color:var(--faint)}
.steps li span a{color:var(--holo)}
.dlbtns{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.mirrors{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.mbtn-dl{display:flex;align-items:center;gap:11px;padding:11px 14px;background:var(--glass);border:1px solid var(--hair);transition:.15s}
.mbtn-dl:hover{border-color:rgba(127,216,255,.45);transform:translateY(-1px)}
.mbtn-dl .mtag{font:800 0.5625rem/1 "Consolas",monospace;letter-spacing:1px;color:var(--holo);border:1px solid rgba(127,216,255,.4);padding:4px 6px;min-width:52px;text-align:center}
.mbtn-dl .mtxt{font:700 0.78125rem "Segoe UI";color:var(--txt)}
.mbtn-dl.primary{background:linear-gradient(180deg,rgba(143,208,255,.16),rgba(59,143,214,.1));border-color:rgba(143,208,255,.5)}
.mbtn-dl.primary .mtxt{color:#eaf6ff}
.table-wrap{overflow-x:auto}
.rktabs{display:flex;gap:2px;margin-bottom:14px;border-bottom:1px solid var(--hair)}
.rktab{padding:9px 16px;font:700 0.75rem "Segoe UI";letter-spacing:.5px;color:var(--dim);border-bottom:2px solid transparent;margin-bottom:-1px}
.rktab:hover{color:var(--txt)}
.rktab.on{color:#eaf6ff;border-bottom-color:var(--holo)}
/* By Romu, ranking filter bar (nation + gear groups) + live monthly-fame column */
.rkbar-multi{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}
.gpill.nat-bcu.on{color:var(--n-bcu);border-color:rgba(240,166,60,.5)}
.gpill.nat-ani.on{color:var(--n-ani);border-color:rgba(127,216,255,.5)}
.rt td.mfame{color:var(--holo);font-weight:700}
.rkbar{margin-bottom:12px}
.rkgears{display:flex;gap:8px;flex-wrap:wrap}
.gpill{font:700 0.6875rem "Segoe UI";letter-spacing:.5px;color:var(--dim);background:var(--glass);border:1px solid var(--hair);padding:8px 13px;transition:.15s}
.gpill:hover{color:var(--txt);border-color:rgba(127,216,255,.4)}
.gpill.on{color:#eaf9ff;background:linear-gradient(180deg,#2a6fb0,#123f6e);border-color:#7fd8ff}
/* "My wings" glows when the pilot has wings to claim */
.gpill.claimglow{color:#ffcf7d;border-color:rgba(240,166,60,.6);background:linear-gradient(180deg,rgba(240,166,60,.16),rgba(240,166,60,.05));animation:claimpulse 1.9s ease-in-out infinite}
.gpill.claimglow:hover{color:#ffe0a0}
.gpbadge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;margin-left:5px;padding:0 4px;
  border-radius:9px;background:linear-gradient(180deg,#ffcf7d,#e79a2e);color:#20130a;font:800 0.625rem/1 "Consolas",monospace;vertical-align:1px}
@keyframes claimpulse{0%,100%{box-shadow:0 0 5px rgba(240,166,60,.35)}50%{box-shadow:0 0 16px 2px rgba(240,166,60,.6)}}
/* account CTA — a touch more visible than plain filter pills */
.dashcta .gpill:not(.claimglow){color:#cfe6f5;border:1px solid rgba(127,216,255,.35);padding:9px 15px;
  background:linear-gradient(180deg,rgba(127,216,255,.1),rgba(10,15,21,.5));box-shadow:0 0 12px rgba(127,216,255,.07)}
.dashcta .gpill:not(.claimglow):hover{border-color:rgba(127,216,255,.7);color:#eaf9ff;
  background:linear-gradient(180deg,rgba(127,216,255,.2),rgba(12,18,26,.6));box-shadow:0 0 16px rgba(127,216,255,.2);transform:translateY(-1px)}
/* Shop stands out (amber) — it's the "spend" action */
.dashcta .gpill[data-scr="shop"]{color:#ffd88a;border-color:rgba(240,166,60,.45);
  background:linear-gradient(180deg,rgba(240,166,60,.14),rgba(20,14,6,.5));box-shadow:0 0 12px rgba(240,166,60,.1)}
.dashcta .gpill[data-scr="shop"]:hover{color:#ffe6b0;border-color:rgba(240,166,60,.8);
  background:linear-gradient(180deg,rgba(240,166,60,.24),rgba(24,16,7,.6));box-shadow:0 0 16px rgba(240,166,60,.24)}
/* ranking load-more */
.loadmore-wrap{display:flex;justify-content:center;margin-top:18px}
.loadmore{padding:11px 24px;color:var(--txt);border-color:rgba(150,180,210,.32)}
.loadmore:hover{border-color:rgba(127,216,255,.6);background:rgba(127,216,255,.08);color:#eaf9ff}
.rt th.sortable{cursor:pointer}.rt th.sortable a{color:inherit;display:inline-block}
.rt th.sortable:hover{color:var(--holo)}.rt th.active{color:var(--holo)}
.rt td.nm{font-weight:700;color:var(--txt)}
.rt td.win{color:var(--ok)}.rt td.lose{color:#ff9b8f}.rt td.gd{color:var(--dim)}
.rt td.empty{text-align:center;color:var(--faint);padding:20px}
.rt{width:100%;border-collapse:collapse;font:500 0.8125rem "Segoe UI"}
.rt th{font:700 0.625rem "Consolas",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--faint);text-align:left;padding:8px 12px;border-bottom:1px solid var(--hair)}
.rt td{padding:9px 12px;border-bottom:1px solid rgba(150,180,210,.08)}
.rt .rk{font:800 0.875rem "Consolas",monospace;color:var(--dim)}
.rt tr:nth-child(1) .rk{color:#ffd76a}.rt tr:nth-child(2) .rk{color:#cfd6dd}.rt tr:nth-child(3) .rk{color:#e0965a}
/* donation history table */
.rt .ar{text-align:right}
.histt tfoot td{border-top:1px solid var(--hair);border-bottom:0;font:700 0.75rem "Segoe UI";color:var(--txt);padding-top:11px}
.histt tfoot td:first-child{font:700 0.625rem "Consolas",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--faint)}
.dimx{color:var(--faint)}
.srcb{display:inline-block;font:800 0.5625rem/1 "Consolas",monospace;letter-spacing:.6px;text-transform:uppercase;
  padding:3px 7px;border:1px solid;border-radius:2px}
.srcb.shop{color:var(--ani);border-color:rgba(240,166,60,.5);background:rgba(240,166,60,.08)}
.srcb.site{color:var(--holo);border-color:rgba(127,216,255,.5);background:rgba(127,216,255,.08)}
.srcb.new{color:var(--ok);border-color:rgba(95,224,160,.5);background:rgba(95,224,160,.08)}
.nb{font:700 0.625rem "Consolas";letter-spacing:1px;padding:2px 8px;border:1px solid;text-transform:uppercase}
.nb.bcu{color:var(--n-bcu);border-color:rgba(240,166,60,.5)}.nb.ani{color:var(--n-ani);border-color:rgba(127,216,255,.5)}
.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pk{position:relative;background:var(--glass);border:1px solid var(--hair);padding:16px;text-align:center}
.pk::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--holo),transparent);opacity:.5}
.pk .cr{font:900 1.625rem/1 "Arial Black",sans-serif;color:#eaf2fa;margin-top:6px}
.pk .bo{font:700 0.6875rem "Consolas";color:var(--ok);margin-top:6px}
.pk .pr{font:800 1rem "Segoe UI";color:var(--ani);margin-top:12px}
.pk .buy{margin-top:12px;font:700 0.6875rem "Segoe UI";letter-spacing:.5px;text-transform:uppercase;color:#08121b;background:linear-gradient(180deg,#8fd0ff,#3b8fd6);padding:9px 0;cursor:pointer}
.wingteaser{margin-top:16px;font:600 0.78125rem "Segoe UI";color:var(--dim)}.wingteaser b{color:var(--ani)}
.glist a{display:block;font:600 0.8125rem "Segoe UI";color:var(--txt);padding:8px 0;border-bottom:1px solid rgba(150,180,210,.1);transition:.15s}
.glist a:last-child{border-bottom:0}
.glist a:hover{color:var(--holo);padding-left:4px}
.glist a .gl{display:block}
.glist a .gl::before{content:"▸ ";color:var(--holo)}
.glist a .gd{display:block;margin-top:3px;padding-left:14px;font:400 0.71875rem/1.5 "Segoe UI";color:var(--faint)}
.faq{font:400 0.8125rem/1.7 "Segoe UI";color:var(--dim);max-width:70ch}
.faq .faqh{display:block;margin:14px 0 4px;font:800 0.75rem "Segoe UI";letter-spacing:.5px;text-transform:uppercase;color:var(--holo)}
.faq a{color:var(--holo)}
.wikigrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;align-items:start;margin-top:4px}
.wikicard{background:rgba(10,15,20,.55);border:1px solid var(--hair);padding:15px 17px 8px}
.wikicat{display:flex;align-items:center;justify-content:space-between;gap:10px;
  font:800 0.71875rem "Segoe UI";letter-spacing:1.2px;text-transform:uppercase;color:var(--holo);
  margin:0 0 6px;padding-bottom:10px;border-bottom:1px solid var(--hair)}
.wikin{font:700 0.625rem "Consolas",monospace;color:var(--faint);background:rgba(127,216,255,.08);padding:2px 7px;letter-spacing:0}
@media(max-width:620px){.wikigrid{grid-template-columns:1fr}}
.pediagrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:4px}
.pcat{display:block;padding:14px 16px;background:var(--glass);border:1px solid var(--hair);transition:.16s}
.pcat:hover{border-color:rgba(127,216,255,.45);transform:translateY(-2px);box-shadow:0 0 16px rgba(127,216,255,.16)}
.pcat .pl{display:block;font:800 0.8125rem "Segoe UI";letter-spacing:.5px;color:var(--txt)}
.pcat .pd{display:block;margin-top:5px;font:400 0.71875rem/1.5 "Segoe UI";color:var(--faint)}
.pcount{font:700 0.6875rem "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--holo);margin-bottom:12px}
/* back-link rendered as a compact bordered button with a chevron cell (like the RE shop back button) */
.pcback,.shopback{align-self:flex-start;width:auto;display:inline-flex;align-items:center;gap:10px;margin:14px 0 15px;padding:8px 16px;
  -webkit-appearance:none;appearance:none;cursor:pointer;
  border:1px solid rgba(127,216,255,.55);background:linear-gradient(180deg,rgba(14,22,32,.9),rgba(8,13,19,.9));
  box-shadow:0 0 16px rgba(127,216,255,.2);
  font:800 0.75rem/1 "Segoe UI";letter-spacing:.8px;text-transform:uppercase;color:#eef5fc;
  text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s}
.pcback::before,.shopback::before{content:"❮";flex:0 0 auto;display:grid;place-items:center;width:23px;height:23px;
  border-radius:50%;border:1px solid rgba(127,216,255,.75);color:var(--holo);font:400 0.625rem/1 "Segoe UI";
  box-shadow:0 0 9px rgba(127,216,255,.45);text-shadow:0 0 7px rgba(127,216,255,.8)}
.pcback:hover,.shopback:hover{border-color:rgba(127,216,255,.9);box-shadow:0 0 22px rgba(127,216,255,.32);color:#fff;transform:translateY(-1px)}
.pcback:hover::before,.shopback:hover::before{box-shadow:0 0 14px rgba(127,216,255,.7)}
/* Log out: red pill, pushed to the far right of the dashboard row */
.logoutbtn{margin-left:auto;display:inline-flex;align-items:center;padding:8px 15px;
  -webkit-appearance:none;appearance:none;cursor:pointer;
  border:1px solid rgba(255,92,92,.45);background:linear-gradient(180deg,rgba(255,92,92,.12),rgba(22,10,10,.55));
  box-shadow:0 0 12px rgba(255,92,92,.1);
  font:700 0.6875rem/1 "Segoe UI";letter-spacing:.6px;text-transform:uppercase;color:#ff9a9a;
  text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s,color .15s}
.logoutbtn:hover{border-color:rgba(255,92,92,.85);background:linear-gradient(180deg,rgba(255,92,92,.22),rgba(30,11,11,.6));color:#fff;box-shadow:0 0 18px rgba(255,92,92,.3);transform:translateY(-1px)}
.rt td.mono{font-family:"Consolas",monospace;font-size:0.75rem}
.dl-link{color:var(--holo)}.dl-link:hover{text-decoration:underline}
.detail .dhead{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:8px 0 14px}
.detail .dname{font:900 1.375rem "Arial Black",sans-serif;color:#eaf2fa}
.detail .dtype{font:700 0.6875rem "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--faint);border:1px solid var(--hair);padding:4px 9px}
.statgrid{display:grid;grid-template-columns:1fr;gap:1px;background:var(--hair);border:1px solid var(--hair);margin-bottom:14px}
.srow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 13px;background:rgba(10,15,20,.55)}
.srow span{font:400 0.78125rem "Segoe UI";color:var(--dim)}
.srow b{font:800 0.84375rem "Segoe UI";color:var(--txt)}
.srow b.red{color:#ff9b8f}.srow b.green{color:var(--ok)}.srow b.gold{color:var(--ani)}.srow b.holo{color:var(--holo)}
/* By Romu, discreet hover tooltip explaining how a stat is calculated */
.srow[data-tip]{position:relative;cursor:help}
.srow[data-tip] > span{border-bottom:1px dotted rgba(127,216,255,.4)}
.srow[data-tip]::after{content:attr(data-tip);position:absolute;left:13px;bottom:calc(100% - 2px);z-index:30;
  width:max-content;max-width:min(300px,80vw);padding:9px 12px;border-radius:8px;
  background:rgba(8,13,20,.98);border:1px solid rgba(127,216,255,.28);box-shadow:0 10px 30px rgba(0,0,0,.55);
  font:400 0.71875rem/1.55 "Segoe UI";color:var(--dim);letter-spacing:.2px;text-transform:none;text-align:left;
  opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .15s,transform .15s,visibility .15s;pointer-events:none}
.srow[data-tip]:hover{z-index:31}
.srow[data-tip]:hover::after{opacity:1;visibility:visible;transform:translateY(0)}
.descbox{font:400 0.8125rem/1.6 "Segoe UI";color:var(--dim);border-left:2px solid var(--holo);background:rgba(127,216,255,.05);padding:11px 14px;margin-bottom:14px}
.dsub{font:800 0.75rem "Segoe UI";letter-spacing:1.5px;text-transform:uppercase;color:var(--holo);margin:20px 0 10px}
/* By Romu, capsule roll filter (level + gear) */
.capfilter{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 12px;padding:10px 13px;border:1px solid var(--hair);border-radius:8px;background:rgba(127,216,255,.05)}
.capfilter label{font:700 0.75rem "Segoe UI";color:var(--dim);display:inline-flex;align-items:center;gap:7px}
.capfilter input,.capfilter select{font:700 0.8125rem "Segoe UI";color:var(--txt);background:rgba(10,15,20,.7);border:1px solid var(--hair);border-radius:6px;padding:5px 8px}
.capfilter input{width:74px}
.capnote{margin-left:auto;font:700 0.75rem "Segoe UI";color:var(--holo)}
.dsub.gold{color:var(--ani)}.dsub.magenta{color:#ff8fd0}
.recipe{border:1px solid var(--hair);background:var(--glass);padding:12px 14px;margin-bottom:10px}
.recipe .ring{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.recipe .ingr{font:600 0.75rem "Segoe UI";color:var(--txt);background:rgba(127,216,255,.06);border:1px solid var(--hair);padding:6px 10px}
.recipe .ingr b{color:var(--holo)}.recipe .ingr.spi b{color:var(--ani)}
.recipe .ingr:hover{border-color:rgba(127,216,255,.45)}
.recipe .plus{color:var(--faint);font-weight:700}
.recipe .rmeta{margin-top:9px;font:600 0.71875rem "Segoe UI";color:var(--faint)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip-lnk{font:600 0.75rem "Segoe UI";color:var(--txt);background:var(--glass);border:1px solid var(--hair);padding:7px 11px}
.chip-lnk:hover{border-color:rgba(127,216,255,.45);color:var(--holo)}
@media(max-width:560px){.statgrid{grid-template-columns:1fr}}

/* ===== stat calculator (clean, row-based) ===== */
.pcat.soon{opacity:.45;cursor:default}
.calc{background:var(--glass);border:1px solid var(--hair);padding:18px}
.calc-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;
  padding-bottom:16px;margin-bottom:4px;border-bottom:1px solid var(--hair)}
.ch-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ch-controls label{font:700 0.625rem "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--faint);display:inline-flex;align-items:center;gap:8px}
.ch-controls select{background:rgba(6,10,14,.75);border:1px solid var(--hair);color:var(--txt);padding:8px 10px;font:400 0.8125rem "Segoe UI"}
.qwrap{display:inline-flex;align-items:center;gap:9px;text-transform:none;letter-spacing:0;color:var(--dim);font:400 0.75rem "Segoe UI"}
.qwrap input[type=range]{width:120px;-webkit-appearance:none;appearance:none;height:6px;outline:none;cursor:pointer;
  background:linear-gradient(90deg,#2f7bc0 0,#7fd8ff var(--p,100%),rgba(150,180,210,.16) var(--p,100%));
  border:1px solid rgba(150,180,210,.18)}
.qwrap input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:18px;
  border-radius:0;background:linear-gradient(180deg,#dcf1ff,#5aa8e0);border:0;cursor:pointer;
  box-shadow:0 0 7px rgba(127,216,255,.55)}
.qwrap input[type=range]::-moz-range-thumb{width:9px;height:17px;border-radius:0;background:linear-gradient(180deg,#dcf1ff,#5aa8e0);border:0;cursor:pointer}
.qwrap b{color:var(--holo);font:800 0.875rem "Consolas",monospace;min-width:24px;text-align:right}
.qwrap em{font-style:normal;color:var(--faint);font:600 0.6875rem "Consolas",monospace;letter-spacing:.3px}
.calc.char-mode .ctl-man{display:none}
.mychar select{border-color:rgba(127,216,255,.45)}
.ch-clear{background:transparent;border:1px solid var(--hair);color:var(--dim);padding:8px 13px;font:700 0.6875rem "Segoe UI";letter-spacing:.5px;cursor:pointer}
.ch-clear:hover{color:var(--txt);border-color:var(--holo)}
/* By Romu, "Share build" buttons for the simulators (copy a link that reproduces the build) */
.ch-share{background:rgba(127,216,255,.1);border:1px solid rgba(127,216,255,.35);color:var(--holo);
  padding:8px 13px;font:700 0.6875rem "Segoe UI";letter-spacing:.5px;cursor:pointer;border-radius:3px;white-space:nowrap}
.ch-share:hover{background:rgba(127,216,255,.18);border-color:var(--holo)}
.ch-share.ok{background:rgba(95,224,160,.16);border-color:rgba(95,224,160,.5);color:#5fe0a0}
.ch-pool{text-align:right}
.ch-pool span{display:block;font:600 0.625rem "Segoe UI";letter-spacing:1px;text-transform:uppercase;color:var(--faint)}
.ch-pool b{font:900 1.625rem/1 "Arial Black",sans-serif;color:var(--holo)}
.ch-pool i{font:700 0.8125rem "Consolas",monospace;font-style:normal;color:var(--faint);margin-left:4px}
.cstats{display:grid;grid-template-columns:1fr 1fr;gap:2px 28px}
.crow{display:grid;grid-template-columns:66px 84px 1fr 84px;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid rgba(150,180,210,.07)}
.cr-name{font:800 0.71875rem "Segoe UI";letter-spacing:.3px;color:var(--txt)}
.cr-step{display:inline-flex;align-items:center;gap:0;border:1px solid var(--hair)}
.cr-step button{width:26px;height:24px;background:rgba(127,216,255,.08);border:0;color:var(--holo);font:800 0.875rem/1 "Segoe UI";cursor:pointer}
.cr-step button:hover{background:rgba(127,216,255,.2)}
.cr-step button.off{opacity:.25;pointer-events:none}
.cr-step b{flex:1;min-width:34px;text-align:center;font:800 0.8125rem "Consolas",monospace;color:#eaf2fa}
/* By Romu, type-in points input (replaces the read-only count) */
.cr-step .cs-pts{width:42px;height:24px;text-align:center;background:rgba(10,15,20,.6);border:0;border-left:1px solid var(--hair);border-right:1px solid var(--hair);color:#eaf2fa;font:800 0.8125rem "Consolas",monospace;-moz-appearance:textfield}
.cr-step .cs-pts:focus{outline:none;background:rgba(127,216,255,.12);color:#fff}
.cr-step .cs-pts::-webkit-outer-spin-button,.cr-step .cs-pts::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cr-bar{height:5px;background:rgba(150,180,210,.14);overflow:hidden}
.cr-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#2f7bc0,#7fd8ff);transition:width .12s}
.cr-val{text-align:right;font:800 0.875rem "Consolas",monospace;color:var(--holo);white-space:nowrap}
.cr-val em{font-style:normal;font-weight:400;font-size:0.625rem;color:var(--faint)}
.cr-val em[data-f="cpu"]{color:var(--holo);font-weight:700}
.idv{font:800 0.8125rem "Consolas",monospace;color:var(--holo);user-select:all;cursor:text}
.rt td.idc{font:600 0.71875rem "Consolas",monospace;color:var(--faint);user-select:all;white-space:nowrap}
.shoptabs{margin:0 0 20px}
/* tabs are <button>s here — strip all native button chrome so only the
   underline styling from .rktab shows, exactly like the ranking tabs */
.shoptab{-webkit-appearance:none;appearance:none;background:none;border:0;
  border-bottom:2px solid transparent;border-radius:0;cursor:pointer}
.prodhead{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:6px;flex-wrap:wrap}
.prodname{font:800 1.375rem "Segoe UI";color:var(--txt);letter-spacing:.2px}
.prodprice{white-space:nowrap}
.prodprice s{color:var(--faint);font:600 0.875rem "Segoe UI";margin-right:8px}
.prodprice b{color:var(--ani);font:900 1.25rem "Segoe UI"}
.proddesc{font:400 0.84375rem/1.6 "Segoe UI";color:var(--dim);margin-bottom:18px}
.cfield{display:flex;flex-direction:column;gap:7px;font:700 0.625rem "Consolas",monospace;letter-spacing:1.1px;
  text-transform:uppercase;color:var(--faint);margin-bottom:14px}
.cfield input[type=color]{width:100%;height:52px;padding:0;border:1px solid var(--hair);background:rgba(6,10,14,.7);cursor:pointer}
.cfield input[type=color]::-webkit-color-swatch-wrapper{padding:4px}
.cfield input[type=color]::-webkit-color-swatch{border:0}
.ncfields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cfield.sm input[type=text]{background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;
  padding:9px 11px;font:700 0.875rem "Consolas",monospace;letter-spacing:.5px;width:100%}
.cfield.sm input[type=text][readonly]{color:var(--dim);cursor:default}
.cfield.sm input.bad{border-color:#ff6f63;color:#ff9b8f}
.ncpreview{margin-bottom:16px}
.ncpv-label{display:block;font:600 0.625rem "Segoe UI";letter-spacing:1px;text-transform:uppercase;color:var(--faint);margin-bottom:8px}
.ncpv-stage{display:flex;align-items:center;justify-content:center;min-height:74px;
  background:linear-gradient(135deg,#0a1119,#0d1a26);border:1px solid var(--hair);
  background-image:linear-gradient(45deg,rgba(255,255,255,.03) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.03) 75%),linear-gradient(45deg,rgba(255,255,255,.03) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.03) 75%);
  background-size:16px 16px;background-position:0 0,8px 8px}
.ncpv-name{font:800 1.375rem "Segoe UI";text-shadow:0 1px 4px rgba(0,0,0,.9);letter-spacing:.4px}
.ncconfirm{display:flex;align-items:flex-start;gap:9px;margin:14px 0 16px;cursor:pointer;
  font:400 0.78125rem/1.45 "Segoe UI";color:var(--dim)}
.ncconfirm input{margin-top:1px;accent-color:#7fd8ff;width:16px;height:16px;flex:0 0 auto;cursor:pointer}
.gc{text-shadow:0 1px 2px rgba(0,0,0,.55),0 0 1px rgba(0,0,0,.7)}
.shopsub{margin:0 0 18px}
.cosproduct{margin:0}
/* title mode segmented control */
.tiseg{display:flex;gap:2px;margin:2px 0 16px;border:1px solid var(--hair);width:fit-content}
.tiseg-b{-webkit-appearance:none;appearance:none;background:rgba(6,10,14,.6);border:0;cursor:pointer;
  color:var(--faint);font:700 0.6875rem "Segoe UI";letter-spacing:.4px;padding:9px 15px;transition:.14s}
.tiseg-b:hover{color:var(--dim)}
.tiseg-b.on{background:rgba(127,216,255,.12);color:#eaf2fa}
.timode{margin-bottom:14px}
.tipresets{display:flex;flex-wrap:wrap;gap:8px}
.tichip{-webkit-appearance:none;appearance:none;cursor:pointer;background:rgba(6,10,14,.6);
  border:1px solid var(--hair);color:var(--dim);font:600 0.78125rem "Segoe UI";padding:8px 13px;transition:.14s}
.tichip:hover{border-color:rgba(127,216,255,.4);color:var(--txt)}
.tichip.on{border-color:rgba(127,216,255,.6);background:rgba(127,216,255,.12);color:#eaf2fa}
.tihint{display:block;margin-top:7px;font:400 0.6875rem "Segoe UI";color:var(--faint)}
.ticolortoggle{margin-top:4px}
.ncpv-stage--title{flex-direction:column;gap:6px}
.ncpv-title{font:800 0.9375rem "Segoe UI";letter-spacing:.5px;text-shadow:0 1px 4px rgba(0,0,0,.9)}
.storegrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}
.storecard{-webkit-appearance:none;appearance:none;cursor:pointer;text-align:left;
  position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:18px 18px 16px;min-height:172px;width:100%;
  background:linear-gradient(160deg,rgba(16,22,30,.7),rgba(8,12,17,.55));border:1px solid var(--hair);transition:.16s}
.storecard::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--holo),transparent);opacity:.55}
.storecard.sc-reward::before{background:linear-gradient(90deg,transparent,var(--ani),transparent)}
.storecard::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:.16s;
  background:radial-gradient(120% 90% at 100% 0%,rgba(127,216,255,.14),transparent 55%)}
.storecard:hover{border-color:rgba(127,216,255,.5);transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.storecard.sc-reward:hover{border-color:rgba(240,166,60,.5)}
.storecard:hover::after{opacity:1}
.storecard.sc-reward:hover::after{background:radial-gradient(120% 90% at 100% 0%,rgba(240,166,60,.16),transparent 55%);opacity:1}
.sc-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sc-ic{flex:0 0 auto;width:46px;height:46px;display:grid;place-items:center;font-size:1.4375rem;
  border:1px solid var(--hair);background:rgba(6,10,14,.65);color:var(--holo)}
.sc-wingimg{border-color:rgba(240,166,60,.35)}
.sc-wingimg img{width:auto;max-width:100%;height:auto;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6))}
.sc-color{color:#ff5bb0}.sc-title{color:var(--ani)}.sc-credits{color:var(--holo)}
.sc-tag{font:800 0.59375rem "Consolas",monospace;letter-spacing:1.4px;color:var(--faint);
  border:1px solid var(--hair);padding:4px 8px;white-space:nowrap}
.sc-tag.reward{color:var(--ani);border-color:rgba(240,166,60,.5);background:rgba(240,166,60,.08)}
.sc-name{font:800 1.125rem "Segoe UI";color:var(--txt);letter-spacing:.2px}
.sc-desc{flex:1;font:400 0.78125rem/1.5 "Segoe UI";color:var(--dim)}.sc-desc strong{color:var(--txt)}.sc-desc em{color:var(--holo);font-style:normal;font-weight:700}
.sc-reward .sc-desc em{color:var(--ani)}
.sc-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;
  padding-top:11px;border-top:1px solid rgba(150,180,210,.1)}
.sc-price{font:700 0.75rem "Segoe UI";color:var(--ani);white-space:nowrap}
.sc-price s{color:var(--faint);font-weight:600;margin-right:5px}
.sc-price b{font:900 1rem "Segoe UI";color:var(--ani)}
.sc-price.muted{color:var(--faint);font-weight:600}
.sc-cta{font:800 0.75rem "Segoe UI";color:var(--holo);white-space:nowrap;letter-spacing:.2px}
.sc-reward .sc-cta{color:var(--ani)}
/* .shopback now shares the .pcback button style (see back-link rule above) */
@media(max-width:620px){.storegrid{grid-template-columns:1fr}.storecard{min-height:0}}

/* pedia capability intro (replaces the old category shortcuts) */
.pediaintro{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px;padding:20px;background:var(--glass);border:1px solid var(--hair);margin-top:6px}
.pi-row{display:flex;gap:13px;align-items:flex-start}
.pi-ic{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;font-size:1.125rem;border:1px solid var(--hair);background:rgba(6,10,14,.6)}
.pi-item{color:var(--holo)}.pi-mon{color:#ff9b8f}.pi-fix{color:var(--ani)}.pi-id{color:var(--ok)}
.pi-row b{display:block;font:800 0.875rem "Segoe UI";color:var(--txt);margin-bottom:3px}
.pi-row span{font:400 0.78125rem/1.5 "Segoe UI";color:var(--dim)}.pi-row strong{color:var(--txt)}
@media(max-width:620px){.pediaintro{grid-template-columns:1fr}}
/* unified pedia results — type icon per row */
.rt td.ptc{width:30px;text-align:center;font-size:0.9375rem;padding-left:8px;padding-right:0}
.ptc.item{color:var(--holo)}.ptc.monster{color:#ff9b8f}.ptc.fix{color:var(--ani)}
/* pedia master-detail — HUD panels: results list (left) stays, detail (right) */
.pedia-split{display:grid;grid-template-columns:312px 1fr;gap:18px;margin-top:14px;align-items:start}
.pedia-list .pcount{font:800 0.625rem "Consolas",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--ani);margin-bottom:9px}
.pl-scroll{position:relative;max-height:calc(100vh - 200px);overflow-y:auto;border:1px solid var(--hair);
  background:linear-gradient(160deg,rgba(16,22,30,.6),rgba(8,12,17,.5));
  clip-path:polygon(0 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%)}
.pl-scroll::-webkit-scrollbar{width:8px}
.pl-scroll::-webkit-scrollbar-thumb{background:rgba(127,216,255,.25)}
.pl-scroll::-webkit-scrollbar-track{background:transparent}
.plrow{position:relative;display:flex;align-items:center;gap:10px;padding:9px 12px;
  border-bottom:1px solid rgba(150,180,210,.06);transition:.13s;color:var(--dim)}
.plrow:last-child{border-bottom:0}
.plrow:hover{background:rgba(127,216,255,.06);padding-left:15px}
.plrow.on{background:linear-gradient(90deg,rgba(127,216,255,.14),transparent);box-shadow:inset 3px 0 0 var(--holo)}
.plrow .ptc{flex:0 0 auto;width:26px;height:26px;display:grid;place-items:center;font-size:0.8125rem;
  border:1px solid var(--hair);background:rgba(6,10,14,.6)}
.plrow.on .ptc{border-color:rgba(127,216,255,.5)}
.plr-b{min-width:0;display:flex;flex-direction:column;gap:1px}
.plr-n{font:700 0.78125rem "Segoe UI";color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plrow.on .plr-n{color:#eaf9ff}
.plr-m{font:600 0.65625rem "Consolas",monospace;color:var(--faint);letter-spacing:.5px;text-transform:uppercase}
.pedia-detail{position:relative;min-width:0;overflow:hidden;padding:16px 20px 20px;border:1px solid var(--hair);
  background:linear-gradient(160deg,rgba(14,20,28,.5),rgba(8,12,17,.4));
  clip-path:polygon(13px 0,100% 0,100% 100%,0 100%,0 13px)}
.pedia-detail::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--holo),transparent);opacity:.5}
.pedia-detail .detail{margin:0}
.pedia-detail .dname{text-shadow:0 0 20px rgba(127,216,255,.22)}
.pd-empty{display:flex;align-items:center;justify-content:center;gap:14px;min-height:230px;padding:40px 26px;color:var(--faint)}
.pd-empty .lead{margin:0}.pd-arrow{font-size:1.75rem;color:var(--holo);opacity:.6}
.pl-empty{padding:20px 14px;color:var(--faint);font:400 0.78125rem/1.6 "Segoe UI";border:0;background:none}
.pedia-detail .pediaintro.pd-intro{background:none;border:0;padding:0;gap:16px 26px;margin-top:4px}
.pedia-home{margin-top:12px;padding:24px 28px 26px}
.pedia-home .dname{font-size:1.5rem}
.pedia-home .lead{max-width:74ch}
.pedia-legend{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 18px}
.pedia-legend .hx{color:var(--faint)}
.pl-key{display:inline-flex;align-items:center;gap:7px;font:700 0.6875rem "Consolas",monospace;letter-spacing:.5px;
  text-transform:uppercase;color:var(--dim);border:1px solid var(--hair);padding:5px 11px;background:var(--glass)}
.pl-key .ptc{font-size:0.8125rem}
/* manual patches table */
.patchtable td{vertical-align:middle}
.patchtable .pv-from{color:var(--faint);font:600 0.78125rem "Consolas",monospace}
.patchtable .pv-arw{color:var(--holo);margin:0 4px}
.patchtable .pv-to{color:var(--txt);font:800 0.78125rem "Consolas",monospace}
.patchtable td.ar{text-align:right}
.patchdl{white-space:nowrap;padding:7px 14px}
/* prominent "Manual patches" button on the Download page */
.patchlink{display:flex;align-items:center;gap:14px;margin-top:14px;padding:14px 16px;
  background:linear-gradient(160deg,rgba(127,216,255,.09),rgba(8,12,17,.5));border:1px solid rgba(127,216,255,.32);transition:.15s}
.patchlink:hover{border-color:rgba(127,216,255,.6);background:rgba(127,216,255,.12);transform:translateY(-1px)}
.patchlink .pk-ic{flex:0 0 auto;width:40px;height:40px;display:grid;place-items:center;font-size:1.25rem;color:var(--holo);border:1px solid var(--hair);background:rgba(6,10,14,.6)}
.patchlink .pk-txt{display:flex;flex-direction:column;gap:2px}
.patchlink .pk-txt b{font:800 0.875rem "Segoe UI";color:var(--txt)}
.patchlink .pk-txt span{font:400 0.75rem "Segoe UI";color:var(--dim)}
@media(max-width:760px){.pedia-split{grid-template-columns:1fr}.pl-scroll{max-height:340px}.pedia-detail{clip-path:none}}

/* cookie notice — informational (site uses only an essential session cookie) */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:580px;margin:0 auto;
  display:flex;align-items:center;gap:14px;padding:14px 16px;overflow:hidden;
  background:linear-gradient(160deg,rgba(16,22,30,.97),rgba(8,12,17,.97));border:1px solid rgba(127,216,255,.35);
  box-shadow:0 14px 44px rgba(0,0,0,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  transform:translateY(160%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.cookie.show{transform:translateY(0)}
.cookie::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--holo),transparent);opacity:.6}
.cookie .ck-ic{flex:0 0 auto;font-size:1.25rem}
.cookie p{flex:1;font:400 0.75rem/1.55 "Segoe UI";color:var(--dim);margin:0}.cookie p a{color:var(--holo)}
.cookie .ck-ok{flex:0 0 auto;cursor:pointer;font:800 0.6875rem "Segoe UI";letter-spacing:.5px;color:#20130a;
  background:linear-gradient(180deg,#8fd0ff,#3b8fd6);border:1px solid rgba(190,225,255,.6);padding:9px 17px;transition:.14s}
.cookie .ck-ok:hover{filter:brightness(1.08)}
@media(max-width:560px){.cookie{flex-wrap:wrap}.cookie p{flex:1 1 100%}}
.delivery{margin:14px 0 4px;padding-top:12px;border-top:1px solid rgba(150,180,210,.12)}
.delivseg{display:flex;gap:2px;border:1px solid var(--hair);width:fit-content;margin-bottom:10px}
.delivseg-b{-webkit-appearance:none;appearance:none;background:rgba(6,10,14,.6);border:0;cursor:pointer;
  color:var(--faint);font:700 0.65625rem "Segoe UI";letter-spacing:.4px;padding:7px 13px;transition:.14s}
.delivseg-b:hover{color:var(--dim)}
.delivseg-b.on{background:rgba(127,216,255,.12);color:#eaf2fa}
.giftrow{display:flex;gap:8px;margin-bottom:9px}
.giftrow[hidden]{display:none}
.giftname{flex:1;min-width:0;background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;
  padding:9px 11px;font:600 0.8125rem "Segoe UI"}
.giftname:focus{outline:none;border-color:rgba(127,216,255,.5)}
.giftcheck{-webkit-appearance:none;appearance:none;cursor:pointer;background:rgba(127,216,255,.1);
  border:1px solid var(--hair);color:var(--holo);font:700 0.6875rem "Segoe UI";letter-spacing:.4px;padding:0 15px;transition:.14s}
.giftcheck:hover{border-color:var(--holo)}
.giftstatus{font:600 0.71875rem/1.4 "Segoe UI";margin-bottom:9px}
.giftstatus.checking{color:var(--faint)}
.giftstatus.ok{color:var(--ok)}
.giftstatus.ok b{color:#eaf2fa}
.giftstatus.bad{color:#ff8b7f}
.giftstatus .nb{font-size:0.5625rem;padding:1px 5px;vertical-align:1px}
.delivto{font:400 0.75rem "Segoe UI";color:var(--dim)}
.delivto b{color:var(--holo)}
.bosshead{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:2px 0 14px}
#bossq{background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;padding:9px 12px;font:600 0.8125rem "Segoe UI";min-width:200px}
#bossq:focus{outline:none;border-color:rgba(127,216,255,.5)}
.bosstable td.bosscd{font:800 0.875rem "Consolas",monospace;color:var(--faint);white-space:nowrap}
.bosstable td.bosscd.run{color:var(--holo)}
.bosstable td.bosscd.due{color:var(--ok)}
.bossrow.is-due{background:rgba(95,224,160,.07)}
/* By Romu, boss spawn-zone badge (safe / event zones now shown too) */
.zbadge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;font:800 0.5625rem "Segoe UI";letter-spacing:.6px;vertical-align:middle}
.z-safe{color:#7CFF9B;background:rgba(95,224,160,.12);border:1px solid rgba(95,224,160,.4)}
.z-mission{color:#ffd08a;background:rgba(240,166,60,.12);border:1px solid rgba(240,166,60,.45)}
.z-event{color:#e6b0ff;background:rgba(200,140,255,.12);border:1px solid rgba(200,140,255,.45)}
.chbadge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;font:800 0.5625rem "Consolas",monospace;color:var(--holo);background:rgba(127,216,255,.1);border:1px solid rgba(127,216,255,.35);vertical-align:middle}
.newsfeed{display:flex;flex-direction:column;gap:14px;margin-top:6px}
.newsitem{background:rgba(10,15,20,.55);border:1px solid var(--hair);padding:16px 18px}
.newsmeta{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid rgba(150,180,210,.1)}
.newsauthor{font:800 0.75rem "Segoe UI";letter-spacing:.4px;color:var(--holo)}
.newsdate{font:600 0.65625rem "Consolas",monospace;color:var(--faint);letter-spacing:.3px}
.newsbody{font:400 0.84375rem/1.65 "Segoe UI";color:var(--dim)}
.newsbody p{margin:7px 0}
.newsbody p:first-child{margin-top:0}
.newsbody strong{color:#eaf2fa;font-weight:800}
.newsbody u{text-decoration-color:var(--holo)}
.newsbody ul,.newsbody ol{margin:8px 0 8px 20px;display:flex;flex-direction:column;gap:4px}
.newsbody li::marker{color:var(--holo)}
.newsbody blockquote{border-left:2px solid var(--holo);background:rgba(127,216,255,.05);padding:6px 13px;margin:9px 0;color:var(--dim)}
.newsbody code{background:rgba(127,216,255,.1);padding:1px 5px;font:600 0.75rem "Consolas",monospace;color:var(--holo)}
.newsbody .ncode{background:rgba(6,10,14,.8);border:1px solid var(--hair);padding:11px 13px;margin:9px 0;overflow-x:auto;font:400 0.75rem/1.55 "Consolas",monospace;color:#bfe6ff;white-space:pre}
.newsbody a{color:var(--holo);word-break:break-word}
/* patch-note media (images / videos attached to the Discord post) */
.newsmedia{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.newsmedia:empty{display:none}
.nm-img{flex:1 1 240px;max-width:100%;overflow:hidden;border:1px solid var(--hair);background:rgba(6,10,14,.5);line-height:0}
.nm-img img{width:100%;max-height:340px;object-fit:cover;display:block;transition:transform .25s}
.nm-img:hover img{transform:scale(1.04)}
.nm-vid{flex:1 1 100%;width:100%;max-height:380px;border:1px solid var(--hair);background:#000;display:block}
.newsbody h3,.newsbody h4,.newsbody h5{color:#eaf2fa;margin:13px 0 6px;font-family:"Segoe UI"}
.newsbody h3{font-size:1rem;font-weight:800}.newsbody h4{font-size:0.875rem;font-weight:800}.newsbody h5{font-size:0.8125rem;font-weight:700}
.doc h4,.doc h5{color:var(--txt);margin:18px 0 8px;font-family:"Segoe UI";letter-spacing:.3px}
.doc h4{font-size:0.9375rem;font-weight:800}.doc h5{font-size:0.84375rem;font-weight:700}
/* enchant tool */
.etabs{display:flex;gap:2px;margin:2px 0 18px;border-bottom:1px solid var(--hair)}
.etab{-webkit-appearance:none;appearance:none;background:none;border:0;border-bottom:2px solid transparent;
  margin-bottom:-1px;cursor:pointer;color:var(--dim);font:700 0.75rem "Segoe UI";letter-spacing:.5px;padding:9px 16px}
.etab:hover{color:var(--txt)}
.etab.on{color:#eaf6ff;border-bottom-color:var(--holo)}
.encalc{padding:16px 18px;margin-bottom:22px}
.enrow{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.enrow label{display:flex;flex-direction:column;gap:6px;font:700 0.625rem "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--faint)}
.enrow select{background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;padding:8px 11px;font:600 0.875rem "Segoe UI";min-width:80px}
.enrow .pill{margin-left:auto}
.enout{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.enstat{background:rgba(10,15,20,.6);padding:12px 14px;display:flex;flex-direction:column;gap:5px}
.enstat span{font:600 0.625rem "Segoe UI";letter-spacing:.8px;text-transform:uppercase;color:var(--faint)}
.enstat b{font:900 1.25rem "Arial Black",sans-serif;color:#eaf2fa}
.enstat.sim b{color:var(--ani)}
@media(max-width:560px){.enout{grid-template-columns:1fr}}
.aftable td .afef{white-space:nowrap}
.afsub{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.afbtn{-webkit-appearance:none;appearance:none;cursor:pointer;background:rgba(6,10,14,.6);border:1px solid var(--hair);
  color:var(--dim);font:700 0.6875rem "Segoe UI";letter-spacing:.5px;padding:8px 15px;transition:.14s}
.afbtn:hover{color:var(--txt);border-color:rgba(127,216,255,.4)}
.afbtn.on{border-color:rgba(127,216,255,.6);background:rgba(127,216,255,.12);color:#eaf2fa}
#afq{margin-left:auto;background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;padding:8px 11px;font:600 0.8125rem "Segoe UI";min-width:180px}
#afq:focus{outline:none;border-color:rgba(127,216,255,.5)}
/* By Romu (Nathan): filter affixes by bonus type */
.afstatsel{-webkit-appearance:none;appearance:none;cursor:pointer;background:rgba(6,10,14,.8);border:1px solid var(--hair);
  color:#eaf2fa;padding:8px 11px;font:600 0.8125rem "Segoe UI"}
.afstatsel:focus{outline:none;border-color:rgba(127,216,255,.5)}
/* mixing tool */
.mixhead{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:6px 0 18px;padding-bottom:14px;border-bottom:1px solid var(--hair)}
.mixhead .dname{margin:0}
.mixtot{display:flex;gap:22px}
.mixtot .mt{display:flex;flex-direction:column;gap:3px;text-align:right}
.mixtot em{font-style:normal;font:600 0.65625rem "Segoe UI";letter-spacing:.8px;text-transform:uppercase;color:var(--faint)}
.mixtot b{font:900 1.25rem "Arial Black",sans-serif}
.mixtree{margin:4px 0}
.mixstep{margin-left:calc(var(--d,0) * 20px)}
.mixline{display:flex;align-items:center;gap:12px;padding:6px 0;font:600 0.71875rem "Consolas",monospace}
.mixcost{font-weight:800}
.mixchance{color:var(--faint)}
.mixings{display:flex;flex-direction:column;gap:5px;padding-left:14px;border-left:1px solid rgba(150,180,210,.14);margin-bottom:6px}
.mixing{display:flex;flex-direction:column;gap:5px}
.ingr{display:inline-flex;align-items:center;gap:6px;background:rgba(6,10,14,.55);border:1px solid var(--hair);padding:6px 11px;width:fit-content;font:600 0.8125rem "Segoe UI";color:var(--dim);transition:.14s}
.ingr:hover{border-color:rgba(127,216,255,.45);color:var(--txt)}
.ingr b{color:var(--holo);font-weight:800}
.ingr.has-sub{border-color:rgba(240,166,60,.4)}
.sc-wings{color:#c9a6ff}
a.chip{cursor:pointer;transition:border-color .14s,background .14s}
a.chip:hover{border-color:rgba(127,216,255,.45)}
.chip.hot{border-color:rgba(240,166,60,.55);background:rgba(240,166,60,.07)}
.chip.hot .v{color:var(--ani)}
.chip .v .u{font:600 0.625rem "Segoe UI";color:var(--holo);letter-spacing:.3px;text-transform:none;margin-left:4px}
.mixqty{display:inline-flex;align-items:center;gap:8px;font:800 0.9375rem "Segoe UI";color:var(--txt)}
.mixqty input{width:80px;background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;padding:8px 10px;font:800 1rem "Consolas",monospace;text-align:center}
.mixqty span{color:var(--faint)}
.mixodds{display:flex;align-items:center;gap:9px;margin:2px 0 16px;cursor:pointer;font:400 0.78125rem "Segoe UI";color:var(--dim)}
.mixodds input{accent-color:#7fd8ff;width:16px;height:16px;cursor:pointer}
.mixgrid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;align-items:start}
.mixbill{padding:0;overflow:hidden}
.mixbill-h{font:800 0.6875rem "Segoe UI";letter-spacing:1px;text-transform:uppercase;color:var(--holo);padding:13px 16px;border-bottom:1px solid var(--hair)}
.mixbill .table-wrap{margin:0}
.mixbill .rt th{padding-top:10px}
.mixsum{padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.mixsum .rline{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;font:400 0.78125rem "Segoe UI";color:var(--dim);border-bottom:1px solid rgba(150,180,210,.08)}
.mixsum .rline:last-child{border-bottom:0}
.mixsum .rline b{font:800 0.9375rem "Consolas",monospace;color:#eaf2fa}
.mixsum .rline.total b{font-size:1.125rem}
.mixref{margin-top:18px;border-top:1px solid var(--hair);padding-top:12px}
.mixref summary{cursor:pointer;font:700 0.6875rem "Segoe UI";letter-spacing:.8px;text-transform:uppercase;color:var(--faint)}
.mixref summary:hover{color:var(--holo)}
.mixref .mixtree{margin-top:12px}
@media(max-width:640px){.mixgrid{grid-template-columns:1fr}}
/* ===== Mixing recipe tree — console screen ===== */
.mtree-wrap{position:relative;margin-top:20px;background:radial-gradient(130% 100% at 50% 0,rgba(18,34,54,.5),rgba(6,10,14,.88));border:1px solid rgba(127,216,255,.22)}
.mtree-wrap::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background-image:linear-gradient(rgba(127,216,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(127,216,255,.045) 1px,transparent 1px);
  background-size:24px 24px;-webkit-mask-image:radial-gradient(120% 90% at 50% 0,#000,transparent);mask-image:radial-gradient(120% 90% at 50% 0,#000,transparent)}
.mtree-hud{position:relative;z-index:2;display:flex;align-items:center;gap:9px;font:800 0.625rem "Consolas",monospace;letter-spacing:2px;
  color:var(--holo);text-transform:uppercase;padding:11px 16px;border-bottom:1px solid rgba(127,216,255,.16);background:rgba(8,13,19,.55)}
.mth-dot{width:7px;height:7px;border-radius:50%;background:var(--holo);box-shadow:0 0 9px var(--holo);animation:pulse 1.7s infinite}
.mth-x{margin-left:auto;color:var(--faint);letter-spacing:1.5px;font-weight:700}
/* By Romu, deep trees (OSR Drone Lv100 = a ~100-level chain) stay INSIDE a bounded scroll panel — never overflow the page */
.mtree-scroll{position:relative;z-index:2;padding:20px 18px 22px;overflow:auto;max-height:min(78vh,760px);overscroll-behavior:contain}
.mtroot{display:inline-flex;align-items:center;gap:11px;margin-bottom:2px;padding:9px 16px;
  font:800 1.0625rem "Segoe UI";color:#eaf6ff;letter-spacing:.2px;
  background:linear-gradient(180deg,#143d67,#0c2440);border:1px solid rgba(127,216,255,.45);box-shadow:0 0 20px rgba(127,216,255,.25);
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.mtroot{background:linear-gradient(180deg,#143d67,#0c2440)}
.mtr-glyph{color:var(--holo);font-size:0.9375rem;text-shadow:0 0 10px var(--holo)}
.mtnode{position:relative}
.mtfee{display:inline-flex;align-items:center;gap:9px;margin:5px 0 2px;padding:3px 11px;width:fit-content;
  font:700 0.65625rem "Consolas",monospace;letter-spacing:.6px;color:var(--holo);
  background:rgba(127,216,255,.06);border:1px solid rgba(127,216,255,.18)}
.mtfee em{font-style:normal;color:var(--faint)}
.mtf-sep{width:1px;height:9px;background:rgba(127,216,255,.3)}
.mtf-cost{color:var(--ani)}
.mtkids{list-style:none;margin:0 0 0 3px;padding:0;position:relative}
.mtkid{position:relative;padding:8px 0 0 17px}
.mtkid::before{content:"";position:absolute;left:0;top:0;height:100%;border-left:1px solid rgba(127,216,255,.3)}
.mtkid:last-child::before{height:25px}
.mtkid::after{content:"";position:absolute;left:0;top:25px;width:12px;height:1px;background:linear-gradient(90deg,rgba(127,216,255,.55),rgba(127,216,255,.2));box-shadow:0 0 5px rgba(127,216,255,.35)}
/* By Romu, past depth 5 stop indenting — deep chains (OSR Drone) go straight DOWN in a readable column instead of drifting off-screen */
.mtkids.mt-cap{margin-left:0}
.mtkids.mt-cap > .mtkid{padding-left:0}
.mtkids.mt-cap > .mtkid::before,.mtkids.mt-cap > .mtkid::after{display:none}
.mtitem{position:relative;display:inline-flex;align-items:center;gap:9px;padding:7px 13px 7px 15px;width:fit-content;
  font:600 0.8125rem "Segoe UI";color:var(--dim);background:linear-gradient(180deg,rgba(15,23,33,.92),rgba(8,13,19,.92));
  border:1px solid var(--hair);transition:.14s;
  clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}
.mtitem::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--holo);opacity:.55}
.mtitem.craft::before{background:var(--ani)}
.mtitem.craft{color:#e7edf3}
.mtitem:hover{border-color:rgba(127,216,255,.55);color:#eaf6ff;box-shadow:0 0 14px rgba(127,216,255,.22);transform:translateX(2px)}
.mtitem.craft:hover{border-color:rgba(240,166,60,.55);box-shadow:0 0 14px rgba(240,166,60,.22)}
.mti-x{color:var(--holo);font:800 0.8125rem "Consolas",monospace}
.mtitem.craft .mti-x{color:var(--ani)}
.mtitem.craft .mti-n::after{content:" ▸";color:var(--ani);font-size:0.625rem;opacity:.7}
/* By Romu, "buy instead of craft" toggle — treats a sub-recipe item as a bought base material */
.mti-row{display:inline-flex;align-items:center;gap:8px}
.mtbuy{font:800 0.65625rem "Segoe UI";text-transform:uppercase;letter-spacing:.6px;color:var(--dim);background:rgba(255,255,255,.05);border:1px solid var(--hair);border-radius:5px;padding:3px 8px;cursor:pointer;white-space:nowrap}
/* By Romu, recipe picker when an item has several recipes */
.mrec{max-width:190px;font:600 0.65625rem "Segoe UI";color:var(--holo);background:rgba(10,15,20,.75);border:1px solid rgba(127,216,255,.35);border-radius:5px;padding:2px 5px;cursor:pointer;text-overflow:ellipsis}
.mrec:hover{border-color:var(--holo)}
.mrec-root{max-width:300px;margin-left:6px}
.mtbuy:hover{color:var(--holo);border-color:rgba(127,216,255,.55)}
.mtbuy.on{color:#ffd08a;border-color:rgba(240,166,60,.6);background:rgba(240,166,60,.14)}
.mtkid.buying > .mtnode{display:none}
.mtkid.buying > .mti-row .mtitem.craft{opacity:.5}
.mtkid.buying > .mti-row .mtitem.craft::before{background:#ffb43c}
.mtkid.buying > .mti-row .mtitem.craft .mti-n::after{content:" · buying";color:#ffb43c;opacity:.9}
.mtree-tip{font:400 0.75rem/1.5 "Segoe UI";color:var(--dim);border-left:2px solid rgba(240,166,60,.5);background:rgba(240,166,60,.06);padding:8px 12px;margin:0 0 12px;border-radius:0 6px 6px 0}
.mtree-tip b{color:#ffd08a}
.esim-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:6px 0 16px}
.esim-head .dname{margin:0}
.esim-controls{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 20px;padding:16px 18px;margin-bottom:18px}
.esc{display:flex;flex-direction:column;gap:7px;font:700 0.625rem "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--faint)}
.esc select{background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;padding:9px 11px;font:600 0.8125rem "Segoe UI"}
.esc .qwrap{text-transform:none}
.esc .qwrap b{min-width:34px}
.esim-stats{width:100%}
.esim-stats td b{font-weight:800}
.esim-extra{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.esim-extra .ee-h{width:100%;font:700 0.625rem "Segoe UI";letter-spacing:1px;text-transform:uppercase;color:var(--faint);margin-bottom:2px}
.ee{display:inline-flex;align-items:center;gap:6px;background:rgba(6,10,14,.6);border:1px solid var(--hair);padding:5px 10px;font:600 0.75rem "Segoe UI";color:var(--dim)}
.ee em{font-style:normal;font:800 0.75rem "Consolas",monospace}
@media(max-width:560px){.esim-controls{grid-template-columns:1fr}}
.mixcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:14px;font:600 0.75rem "Segoe UI"}
.mixcrumb a{color:var(--dim);transition:color .14s}
.mixcrumb a:hover{color:var(--holo)}
.mc-sep{color:var(--faint)}
.mc-cur{color:#eaf6ff;font-weight:800}
/* ===== Item enchant simulator — console ===== */
.esim-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;align-items:start}
.es-console,.es-readout{position:relative;background:radial-gradient(130% 100% at 50% 0,rgba(18,34,54,.42),rgba(6,10,14,.9));border:1px solid rgba(127,216,255,.2);padding:0}
.es-hud{display:flex;align-items:center;gap:9px;font:800 0.625rem "Consolas",monospace;letter-spacing:2px;color:var(--holo);text-transform:uppercase;padding:11px 15px;border-bottom:1px solid rgba(127,216,255,.16);background:rgba(8,13,19,.55)}
.es-hud-x{margin-left:auto;color:var(--ani);font-weight:800;letter-spacing:1px}
.es-fill{display:flex;gap:8px;align-items:center;padding:13px 15px 4px}
.es-fill select{flex:1;min-width:0;background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;padding:8px 10px;font:600 0.75rem "Segoe UI"}
.es-btn{-webkit-appearance:none;appearance:none;cursor:pointer;background:rgba(127,216,255,.12);border:1px solid rgba(127,216,255,.3);color:var(--holo);font:700 0.6875rem "Segoe UI";padding:8px 12px;white-space:nowrap;transition:.14s}
.es-btn:hover{border-color:var(--holo);background:rgba(127,216,255,.2)}
.es-btn.ghost{background:transparent;border-color:var(--hair);color:var(--faint)}
.es-btn.ghost:hover{color:#ff8b7f;border-color:#ff8b7f}
.es-levels{display:grid;grid-template-columns:repeat(2,1fr);gap:5px 8px;padding:12px 15px}
.es-cell{display:flex;align-items:center;gap:8px}
.es-cn{flex:0 0 30px;font:800 0.6875rem "Consolas",monospace;color:var(--faint);text-align:right}
.es-cell select{flex:1;min-width:0;background:rgba(6,10,14,.75);border:1px solid var(--hair);color:var(--dim);padding:6px 7px;font:600 0.71875rem "Segoe UI";transition:.12s}
.es-cell select:not([value="-1"]){color:#eaf2fa}
.es-cell select:hover{border-color:rgba(127,216,255,.4)}
.es-fix{padding:12px 15px 15px;border-top:1px solid rgba(127,216,255,.12);display:flex;flex-direction:column;gap:12px}
.es-fix .esc{display:flex;flex-direction:column;gap:6px;font:700 0.625rem "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--faint)}
.es-fix .esc select{background:rgba(6,10,14,.8);border:1px solid var(--hair);color:#eaf2fa;padding:8px 10px;font:600 0.78125rem "Segoe UI"}
.es-fixfx{font:600 0.6875rem "Segoe UI";letter-spacing:0;text-transform:none;color:var(--dim)}
.es-fxname{font-weight:800;color:#eaf2fa}
.es-fixfx .gc{font-weight:800}
.es-fixfx .up{color:var(--ok)}.es-fixfx .dn{color:#ff8b7f}
.es-stats{padding:14px 15px}
.es-row{display:grid;grid-template-columns:1fr auto 16px auto;align-items:baseline;gap:9px;padding:8px 0;border-bottom:1px solid rgba(150,180,210,.08)}
.es-row:last-child{border-bottom:0}
.es-rn{font:700 0.75rem "Segoe UI";color:var(--txt)}
.es-rb{font:600 0.75rem "Consolas",monospace;color:var(--faint);text-align:right}
.es-ar{color:var(--faint);text-align:center}
.es-rf{font:800 0.8125rem "Consolas",monospace;color:#eaf2fa;text-align:right;white-space:nowrap}
.es-rf.up{color:var(--ok)}.es-rf.dn{color:#ff8b7f}
.es-bonus{padding:0 15px 15px}
.es-bh{font:700 0.65625rem "Segoe UI";letter-spacing:1px;text-transform:uppercase;color:var(--faint);margin:6px 0 8px}
.es-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(6,10,14,.6);border:1px solid var(--hair);padding:4px 9px;margin:0 6px 6px 0;font:600 0.6875rem "Segoe UI";color:var(--dim)}
.es-chip b{color:var(--txt);font-weight:700}
.es-chip em{font-style:normal;font:800 0.6875rem "Consolas",monospace}
.es-chip em.up{color:var(--ok)}.es-chip em.dn{color:#ff8b7f}
@media(max-width:760px){.esim-grid{grid-template-columns:1fr}.es-levels{grid-template-columns:1fr}}
.wart{max-width:820px}
.wart>p{font:400 0.875rem/1.72 "Segoe UI";color:var(--dim);margin:11px 0}
.wart .subh{margin-top:26px}
.wart .dsub{margin-top:20px}
.wart .table-wrap{margin:15px 0}
.wlist{margin:11px 0 11px 20px;display:flex;flex-direction:column;gap:6px}
.wlist li{font:400 0.875rem/1.6 "Segoe UI";color:var(--dim)}
.wlist li::marker{color:var(--holo)}
.wquote{border-left:2px solid var(--holo);background:rgba(127,216,255,.05);padding:10px 15px;margin:14px 0;
  font:400 0.84375rem/1.65 "Segoe UI";color:var(--dim)}
.wcode{background:rgba(6,10,14,.8);border:1px solid var(--hair);padding:12px 14px;margin:13px 0;overflow-x:auto;
  font:400 0.78125rem/1.6 "Consolas",monospace;color:#bfe6ff;white-space:pre}
.wart code{background:rgba(127,216,255,.1);padding:1px 5px;font:600 0.78125rem "Consolas",monospace;color:var(--holo)}
.wrule{border:0;border-top:1px solid var(--hair);margin:22px 0}
.wsrc{margin-top:26px;padding-top:12px;border-top:1px solid var(--hair);
  font:400 0.6875rem "Segoe UI";color:var(--faint);font-style:italic}
.cbuffs{margin-top:16px;border:1px solid var(--hair);background:rgba(10,15,20,.55);padding:13px 15px 15px}
.cb-head{font:800 0.625rem "Segoe UI";letter-spacing:1.5px;text-transform:uppercase;color:var(--holo);margin-bottom:12px}
.cb-head em{font:400 0.625rem "Segoe UI";font-style:normal;letter-spacing:.3px;text-transform:none;color:var(--faint);margin-left:8px}
.cb-sels{display:grid;grid-template-columns:repeat(3,1fr);gap:11px 14px}
.cb-sel{display:flex;flex-direction:column;gap:5px;min-width:0}
.cb-lbl{font:700 0.65625rem "Consolas",monospace;letter-spacing:1.1px;text-transform:uppercase;color:var(--faint);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cb-sel.on .cb-lbl{color:var(--holo)}
.cb-sel select{width:100%;background:rgba(6,10,14,.8);border:1px solid var(--hair);color:var(--dim);
  padding:7px 9px;font:600 0.75rem "Segoe UI";cursor:pointer;transition:border-color .12s,color .12s}
.cb-sel select:hover{border-color:rgba(127,216,255,.4)}
.cb-sel.on select{border-color:rgba(127,216,255,.5);color:#eaf2fa;background:rgba(127,216,255,.07)}
.cb-src{font-style:normal;font-size:0.59375rem;font-weight:800;letter-spacing:.5px;color:#05080c;
  background:var(--faint);padding:1px 4px;vertical-align:1px}
.cb-sel.on .cb-src{background:var(--holo)}
.cb-togs{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px;padding-top:12px;border-top:1px solid rgba(150,180,210,.1)}
.cbchip{display:inline-flex;align-items:baseline;gap:7px;border:1px solid var(--hair);background:rgba(6,10,14,.6);
  padding:6px 11px;cursor:pointer;user-select:none;transition:border-color .12s,background .12s}
.cbchip:hover{border-color:rgba(127,216,255,.4)}
.cbchip input{position:absolute;opacity:0;width:0;height:0}
.cbchip b{font:700 0.71875rem "Segoe UI";color:var(--dim)}
.cbchip i{font-style:normal;font:800 0.6875rem "Consolas",monospace;color:var(--faint)}
.cbchip.on{border-color:rgba(127,216,255,.55);background:rgba(127,216,255,.1)}
.cbchip.on b{color:#eaf2fa}
.cbchip.on i{color:var(--holo)}
.cline.sub{padding:1px 0 5px;font-size:0.6875rem;color:var(--faint)}
.cline.sub b{color:var(--holo);font-weight:700;font-size:0.71875rem}
@media(max-width:820px){.cb-sels{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.cb-sels{grid-template-columns:1fr}.cbchip{flex:1 1 auto;justify-content:space-between}}
.calc-cols{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:16px}
.ccol{background:rgba(10,15,20,.6);padding:13px 15px}
.ccol h4{font:800 0.625rem "Segoe UI";letter-spacing:1.5px;text-transform:uppercase;color:var(--holo);margin-bottom:9px}
.cline{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:5px 0;font:400 0.78125rem "Segoe UI";color:var(--dim)}
.cline b{font-weight:800;color:var(--txt)}
.cline b.red{color:#ff9b8f}.cline b.blue{color:#8fc4ee}.cline b.gold{color:var(--ani)}
@media(max-width:820px){.cstats{grid-template-columns:1fr}}
@media(max-width:520px){.crow{grid-template-columns:66px 84px 1fr;gap:8px}.cr-val{grid-column:2/-1;text-align:left}.calc-cols{grid-template-columns:1fr}}
@media(max-width:860px){.pediagrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.pediagrid{grid-template-columns:1fr}}
.srch{display:flex;gap:8px;margin-bottom:14px}
.srch input{flex:1;background:rgba(6,10,14,.7);border:1px solid var(--hair);color:var(--txt);padding:10px 12px;font:400 0.8125rem "Segoe UI"}

/* ===== shop: amount picker + live recap ===== */
.shopuser{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  padding:11px 15px;margin-bottom:14px;background:rgba(127,216,255,.07);border:1px solid rgba(127,216,255,.28)}
.shopuser .who{font:700 0.8125rem "Segoe UI";color:#eaf6ff}
.shopuser .bal{font:600 0.78125rem "Segoe UI";color:var(--dim)}
.shopuser .bal b{color:var(--holo)}
.rdeliver{margin-top:12px;font:600 0.75rem "Segoe UI";color:var(--dim)}
.rdeliver b{color:#eaf6ff}
.shopgrid{display:grid;grid-template-columns:1.25fr .9fr;gap:18px;align-items:start}
.amtrow{display:flex;gap:8px;flex-wrap:wrap}
.amt{font:700 0.8125rem/1 "Segoe UI";color:var(--dim);background:var(--glass);border:1px solid var(--hair);
  padding:11px 16px;cursor:pointer;transition:.16s}
.amt:hover{color:var(--txt);border-color:rgba(127,216,255,.4)}
.amt.on{color:#eaf9ff;background:linear-gradient(180deg,#2a6fb0,#123f6e);border-color:#7fd8ff;
  box-shadow:0 0 14px rgba(127,216,255,.32)}
.slider{margin-top:18px}
.slider input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:4px;background:rgba(150,180,210,.22);outline:none}
.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;
  background:linear-gradient(180deg,#bfe6ff,#3b8fd6);border:1px solid rgba(190,225,255,.8);cursor:pointer;
  box-shadow:0 0 12px rgba(127,216,255,.55)}
.slider input[type=range]::-moz-range-thumb{width:19px;height:19px;border-radius:50%;
  background:linear-gradient(180deg,#bfe6ff,#3b8fd6);border:1px solid rgba(190,225,255,.8);cursor:pointer}
.slabels{display:flex;justify-content:space-between;font:600 0.625rem "Consolas",monospace;letter-spacing:1px;color:var(--faint);margin-top:8px}
.bonusbar{position:relative;height:8px;margin-top:18px;background:rgba(150,180,210,.14);overflow:hidden}
.bfill{height:100%;width:12%;background:linear-gradient(90deg,#2f7bc0,#5fe0a0);box-shadow:0 0 14px rgba(95,224,160,.4);transition:width .18s}
.bscale{display:flex;justify-content:space-between;font:600 0.625rem "Consolas",monospace;letter-spacing:1px;color:var(--faint);margin-top:7px}
.recap{background:var(--glass);border:1px solid var(--hair);padding:18px}
.rline{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;
  border-bottom:1px solid rgba(150,180,210,.09);font:400 0.8125rem "Segoe UI";color:var(--dim)}
.rline b{font:800 0.9375rem "Segoe UI";color:var(--txt)}
.rline.bonus b{color:var(--ok)}
.rline.total{border-bottom:0;padding-top:14px}
.rline.total b{font-size:1.5rem;color:var(--holo);text-shadow:0 0 14px rgba(127,216,255,.35)}
.rwing{margin:12px 0 16px;padding:10px 12px;font:600 0.75rem/1.5 "Segoe UI";color:var(--dim);
  border-left:2px solid var(--ani);background:rgba(240,166,60,.07)}
.rwing.got{color:#f3d08a;border-left-color:var(--ani)}
.rwing b{color:var(--ani)}
.rfoot{margin-top:10px;font:400 0.71875rem/1.5 "Segoe UI";color:var(--faint);text-align:center}
/* "coming soon" / unavailable: read as a dormant console control, not a dimmed candy button */
button.pill[disabled],button.pill[disabled].b{cursor:not-allowed;box-shadow:none;
  color:var(--faint);background:rgba(127,216,255,.06);border:1px solid var(--hair)}
button.pill[disabled]:hover{transform:none;box-shadow:none}

/* ===== account: forms + dashboard ===== */
.formwrap{max-width:420px}
.form{margin-top:4px}
.field{margin-bottom:14px}
.field label{display:block;font:700 0.625rem/1 "Segoe UI";letter-spacing:2px;text-transform:uppercase;color:var(--faint);margin-bottom:7px}
.field input{width:100%;background:rgba(6,10,14,.72);border:1px solid var(--hair);color:var(--txt);
  padding:12px 13px;font:400 0.875rem "Segoe UI";transition:border-color .15s,box-shadow .15s}
.field input:focus{outline:none;border-color:rgba(127,216,255,.55);box-shadow:0 0 0 3px rgba(127,216,255,.14)}
.field .hint{display:block;margin-top:6px;font:400 0.6875rem/1.5 "Segoe UI";color:var(--faint)}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pill.block{display:block;width:100%;text-align:center;margin-top:6px}
.formfoot{margin-top:16px;font:400 0.78125rem "Segoe UI";color:var(--dim)}
.formfoot a{color:var(--holo)}
.consent{display:flex;align-items:flex-start;gap:9px;margin:2px 0 16px;font:400 0.75rem/1.55 "Segoe UI";color:var(--dim);cursor:pointer}
.consent input{margin-top:1px;width:15px;height:15px;flex:0 0 auto;accent-color:var(--holo);cursor:pointer}
.consent a{color:var(--holo)}
.alert{padding:11px 13px;margin-bottom:14px;font:400 0.8125rem/1.5 "Segoe UI";border:1px solid}
.alert.err{color:#ffb4ad;border-color:rgba(255,111,99,.45);background:rgba(255,111,99,.09)}
.alert.warn{color:#f3d08a;border-color:rgba(240,166,60,.45);background:rgba(240,166,60,.09)}
.dashgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:8px}
.dashgrid .v.sm{font-size:0.875rem;word-break:break-all}
.subh{font:800 0.8125rem/1 "Segoe UI";letter-spacing:2px;text-transform:uppercase;color:var(--faint);margin:20px 0 10px}
.dashcta{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap;align-items:center}
.lnk.danger{color:#ff6f63;margin-left:auto}.lnk.danger:hover{color:#ff9b8f;opacity:1}
.who{display:inline-flex;align-items:center;gap:8px}
.who .av{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;
  background:linear-gradient(180deg,#2a6fb0,#123f6e);border:1px solid rgba(127,216,255,.5);
  font:800 0.6875rem/1 "Segoe UI";color:#eaf9ff}

/* ===== wings ===== */
/* wings-to-claim banner */
.wingclaim{position:relative;overflow:hidden;margin:2px 0 22px;
  background:linear-gradient(135deg,rgba(231,154,46,.14),rgba(13,18,24,.6) 46%,rgba(127,216,255,.08));
  border:1px solid rgba(255,215,150,.4)}
.wingclaim .wc-glow{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(90% 140% at 0% 0%,rgba(231,154,46,.22),transparent 55%)}
.wc-body{position:relative;padding:16px 18px}
.wc-tag{font:800 0.65625rem "Consolas",monospace;letter-spacing:2px;color:var(--ani);margin-bottom:8px}
.wc-line{font:400 0.875rem/1.6 "Segoe UI";color:var(--txt);max-width:66ch;margin:0 0 14px}
.wc-line b{font-weight:800}
.wc-eur{color:var(--holo)}.wc-due{color:var(--ani)}
.wc-figs{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.wc-fig{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:78px;padding:8px 12px;
  background:var(--glass);border:1px solid var(--hair)}
.wc-fig .wc-n{font:800 1.25rem "Consolas",monospace;color:var(--txt);line-height:1}
.wc-fig .wc-l{font:700 0.65625rem "Consolas",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--faint)}
.wc-fig.hot{border-color:rgba(255,215,150,.6);background:linear-gradient(180deg,rgba(231,154,46,.22),rgba(231,154,46,.06))}
.wc-fig.hot .wc-n{color:#ffcf7d}.wc-fig.hot .wc-l{color:var(--ani)}
.wc-sep{align-self:center;font:700 1rem "Consolas",monospace;color:var(--faint)}
.wc-hint{font:400 0.75rem/1.5 "Segoe UI";color:var(--dim);margin:0}
.wc-hint strong{color:var(--dim)}
@media(max-width:560px){.wc-figs .wc-sep{display:none}.wc-fig{flex:1 1 40%}}
.erablock{margin-bottom:26px}
.erahead{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.erahead .subh{margin:0 0 4px}
.erahead .rng{font:600 0.625rem "Consolas",monospace;letter-spacing:1px;color:var(--faint);margin-left:8px;text-transform:none}
.eranote{font:400 0.75rem/1.5 "Segoe UI";color:var(--faint);margin:0}
.erastat{display:flex;gap:10px;align-items:center;font:700 0.6875rem "Consolas",monospace;letter-spacing:1px}
.erastat .owned{color:var(--dim)}
.erastat .due{color:var(--faint);border:1px solid var(--hair);padding:4px 9px}
.erastat .due.has{color:#20130a;background:linear-gradient(180deg,#ffcf7d,#e79a2e);border-color:rgba(255,215,150,.6)}
.winggears{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;border-bottom:0}
.wgtab{-webkit-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:9px;
  background:rgba(10,15,20,.6);border:1px solid var(--hair);border-bottom:1px solid var(--hair);margin-bottom:0;
  padding:8px 8px 8px 13px;font:700 0.78125rem "Segoe UI";color:var(--dim);transition:.14s;
  clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}
.wgtab:hover{border-color:rgba(127,216,255,.4);color:var(--txt)}
.wgtab.on{border-color:rgba(127,216,255,.6);background:rgba(127,216,255,.1);color:#eaf6ff}
.wgtab .wgear{font:800 0.59375rem/1 "Consolas",monospace;letter-spacing:.6px;padding:3px 7px;text-transform:uppercase;
  background:rgba(6,10,14,.6);border:1px solid var(--hair);color:var(--faint)}
.wgtab.on .wgear.bcu{color:var(--n-bcu);border-color:rgba(240,166,60,.5);background:rgba(240,166,60,.12)}
.wgtab.on .wgear.ani{color:var(--n-ani);border-color:rgba(127,216,255,.5);background:rgba(127,216,255,.12)}
.owned-t{font:600 0.59375rem/1 "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--faint)}
.winggrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}
.wing{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  height:96px;padding:16px 5px 18px;background:var(--glass);border:1px solid var(--hair);transition:.16s}
.wing .wimg{width:auto;max-width:100%;height:44px;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6))}
.wing.locked .wimg{filter:grayscale(1) brightness(.7)}
.wing .wn{position:absolute;top:5px;left:7px;font:800 0.6875rem/1 "Consolas",monospace;color:var(--faint)}
.wing .wl{position:absolute;left:0;right:0;bottom:6px;text-align:center;font:600 0.59375rem/1 "Consolas",monospace;letter-spacing:1px;text-transform:uppercase;color:var(--faint)}
.wing.owned{border-color:rgba(127,216,255,.45);background:rgba(127,216,255,.09)}
.wing.owned .wn{color:var(--holo)}
.wing.owned .wl{color:var(--holo)}
.wing.can{border-color:rgba(240,166,60,.55);background:rgba(240,166,60,.09);cursor:pointer}
.wing.can .wn{color:var(--ani)}.wing.can .wl{color:var(--ani)}
.wing.can:hover{transform:translateY(-2px);box-shadow:0 0 16px rgba(240,166,60,.28)}
.wing.locked{opacity:.45}
/* event & staff wings — reserved, never claimable */
.wing.sp{opacity:1}
.wing.sp.locked{opacity:.62}
.wing.sp .wbadge{position:absolute;top:4px;left:4px;right:4px;text-align:center;font:800 0.4375rem/1.15 "Consolas",monospace;
  letter-spacing:.2px;text-transform:uppercase;padding:3px 3px;color:#0a0f14;border-radius:3px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* By Romu, full-width name badge owns the top row → move the index to the bottom-left so long names (Christmas 2026+) never cover it */
.wing.sp .wn{top:auto;bottom:6px;left:6px}
.wing.sp.staff .wbadge{background:linear-gradient(180deg,#c9a6ff,#8f63e6)}
.wing.sp.event .wbadge{background:linear-gradient(180deg,#ffd17d,#e79a2e)}
.wing.sp.staff{border-color:rgba(160,120,255,.4)}
.wing.sp.staff.owned{border-color:rgba(160,120,255,.65);background:rgba(160,120,255,.1)}
.wing.sp.staff.owned .wn,.wing.sp.staff.owned .wl{color:#c9a6ff}
.wing.sp.event{border-color:rgba(240,166,60,.4)}
.wing.sp.event.owned{border-color:rgba(240,166,60,.65);background:rgba(240,166,60,.1)}
.wing.sp.event.owned .wn,.wing.sp.event.owned .wl{color:var(--ani)}
/* reserved-to-a-player wing (e.g. #80) */
.wing.sp.reserved .wbadge{background:linear-gradient(180deg,#8effc7,#22c98a);letter-spacing:.2px;padding:3px 4px}
.wing.sp.reserved{border-color:rgba(64,220,150,.42)}
.wing.sp.reserved.owned{border-color:rgba(64,220,150,.68);background:rgba(64,220,150,.1)}
.wing.sp.reserved.owned .wn,.wing.sp.reserved.owned .wl{color:#5fe6a8}
/* TEST build: every wing is clickable (add/remove on the copy DB) */
.wing.wtclick{cursor:pointer;opacity:1}
.wing.wtclick:hover{transform:translateY(-2px);box-shadow:0 0 16px rgba(127,216,255,.28)}
.wing.wtclick.owned:hover .wl{color:#ff8a6a}
.wing.wtbusy{opacity:.5;pointer-events:none}
.wingtestbanner{border-color:rgba(240,166,60,.5);background:rgba(240,166,60,.08)}

/* themed confirm modal (osrConfirm) */
.osrmodal-ov{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px;
  background:rgba(3,6,10,.72);backdrop-filter:blur(3px);animation:osrmFade .14s ease-out}
@keyframes osrmFade{from{opacity:0}to{opacity:1}}
.osrmodal{position:relative;width:390px;max-width:100%;padding:22px 22px 18px;overflow:hidden;
  border:1px solid rgba(127,216,255,.3);background:linear-gradient(160deg,rgba(16,22,30,.97),rgba(8,12,17,.97));
  box-shadow:0 24px 60px rgba(0,0,0,.6);animation:osrmPop .16s cubic-bezier(.2,.9,.3,1.2)}
@keyframes osrmPop{from{transform:translateY(8px) scale(.98);opacity:0}to{transform:none;opacity:1}}
.osrm-glow{position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,#7fd8ff,transparent);opacity:.7}
.osrm-t{margin:0 0 8px;font-size:1rem;letter-spacing:.3px;color:#eef4fa}
.osrm-b{font-size:0.84375rem;line-height:1.5;color:#c4cdd6}
.osrm-b b{color:var(--holo)}
.osrm-note{margin:10px 0 0;font-size:0.71875rem;color:var(--ani);letter-spacing:.3px}
.osrm-act{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}
.osrm-act button{padding:9px 16px;border-radius:2px;cursor:pointer;font-weight:800;font-size:0.78125rem;
  border:1px solid rgba(150,180,210,.28);background:rgba(8,12,17,.6);color:#cdd6df;transition:.12s}
.osrm-cancel:hover{border-color:rgba(150,180,210,.5);color:#fff}
.osrm-ok{border-color:rgba(127,216,255,.6);color:#08121b;background:linear-gradient(180deg,#8fd0ff,#3b8fd6)}
.osrm-ok:hover{filter:brightness(1.08)}
.osrm-ok.danger{border-color:rgba(255,138,106,.6);background:linear-gradient(180deg,#ff9f86,#e0552f);color:#1a0803}

/* legal / policy pages (terms, privacy, rules) */
.legal{max-width:820px}
.legal .eyebrow{font:800 0.625rem "Consolas",monospace;letter-spacing:2px;text-transform:uppercase;color:var(--ani);margin-bottom:6px}
.legal .upd{font:600 0.6875rem "Consolas",monospace;letter-spacing:.5px;color:var(--faint);margin:0 0 18px}
.legal h3{font:800 1rem "Segoe UI";letter-spacing:.3px;margin:26px 0 9px;color:var(--txt)}
.legal h3 .num{color:var(--ani);font-family:"Consolas",monospace;font-size:0.8125rem;margin-right:8px}
.legal p,.legal li{color:var(--dim);font:400 0.875rem/1.75 "Segoe UI"}
.legal p{margin:0 0 10px}
.legal ul{margin:0 0 10px;padding-left:20px}.legal li{margin:5px 0}
.legal strong{color:var(--txt)}
.legal a{color:var(--holo)}
.legal .note{border:1px solid var(--hair);border-left:3px solid var(--ani);padding:13px 15px;margin:14px 0;background:rgba(240,166,60,.06)}
.legal .note p{margin:0;color:var(--txt)}

/* rules page — numbered sections with bullet dots */
.doc{max-width:840px}
.doc .lead{color:var(--txt);font:400 0.9375rem/1.7 "Segoe UI";margin:0 0 6px}
.doc .sub2{color:var(--faint);font:400 0.8125rem "Segoe UI";margin:0 0 24px}
.doc h3{font:800 1rem "Segoe UI";letter-spacing:.3px;margin:28px 0 12px;color:var(--txt);display:flex;align-items:center;gap:10px}
.doc h3 .num{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;
  background:rgba(240,166,60,.1);border:1px solid rgba(240,166,60,.35);color:var(--ani);font:700 0.8125rem "Consolas",monospace}
.doc ul{margin:0 0 6px;padding-left:2px;list-style:none}
.doc li{color:var(--dim);font:400 0.875rem/1.7 "Segoe UI";margin:9px 0;padding-left:22px;position:relative}
.doc li::before{content:"";position:absolute;left:4px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--ani);opacity:.7}
.doc li strong{color:var(--txt)}
.doc a{color:var(--holo)}
.doc .ban{color:#ff8a6a;font-weight:700}
.doc .note{border:1px solid var(--hair);border-left:3px solid var(--ani);padding:16px 18px;margin:32px 0 0;background:rgba(240,166,60,.05)}
.doc .note p{margin:0 0 8px;color:var(--txt);font:400 0.875rem/1.7 "Segoe UI"}.doc .note p:last-child{margin:0}

/* rack under console */
.rack{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.chip{position:relative;padding:14px 16px;background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--hair)}
.chip::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--holo),transparent);opacity:.5}
.chip .l{font:600 0.625rem/1 "Segoe UI";letter-spacing:2px;text-transform:uppercase;color:var(--faint)}
.chip .v{font:800 1.375rem/1 "Segoe UI";margin-top:11px}.chip .v.ok{color:var(--ok)}.chip .v .u{font-size:0.75rem;color:var(--dim);font-weight:600}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 9px var(--ok);vertical-align:1px;margin-right:7px;animation:pulse 1.7s infinite}
.natbar{display:flex;height:16px;margin-top:9px;overflow:hidden;border-radius:2px}
.natbar .b{background:linear-gradient(90deg,#66b6f2,#2f7bc0)}.natbar .a{background:linear-gradient(90deg,#f6b84a,#c67f22)}
.natlbl{display:flex;justify-content:space-between;font:700 0.6875rem/1 "Segoe UI";margin-top:8px}
.natlbl .bcu{color:var(--n-bcu)}.natlbl .ani{color:var(--n-ani)}

.foot{max-width:var(--wrap);margin:40px auto 0;padding:26px 20px 20px;border-top:1px solid var(--hair)}
.fcols{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:22px 20px;margin-bottom:22px}
.fbrand .flogo{font:800 0.875rem "Segoe UI";letter-spacing:.4px;color:var(--txt);margin-bottom:8px}
.fbrand p{font:400 0.75rem/1.65 "Segoe UI";color:var(--faint);max-width:34ch}
.fcol h4{font:800 0.625rem "Consolas",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--dim);margin-bottom:10px}
.fcol a{display:block;font:400 0.78125rem/1 "Segoe UI";color:var(--faint);padding:5px 0;transition:color .15s}
.fcol a:hover{color:var(--holo)}
.foot .fin{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;
  padding-top:16px;border-top:1px solid rgba(150,180,210,.08);font:400 0.75rem "Segoe UI";color:var(--faint)}
@media(max-width:720px){.fcols{grid-template-columns:1fr 1fr;gap:20px}.fbrand{grid-column:1/-1}}

@keyframes pulse{50%{opacity:.35}}
@media(max-width:960px){
  .hud .brand .tagx{display:none}
  .burger{display:grid}
  /* the command bus becomes a drop-down HUD drawer */
  .bus{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;
    padding:10px;background:rgba(7,11,16,.97);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);
    border-bottom:1px solid var(--hair);box-shadow:0 18px 40px rgba(0,0,0,.6);
    /* By Romu, the drawer scrolls when it is taller than the screen (mobile) */
    max-height:calc(100vh - 56px);max-height:calc(100dvh - 56px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
    transform:translateY(-10px);opacity:0;visibility:hidden;transition:transform .22s,opacity .22s,visibility .22s}
  .hud.open .bus{transform:none;opacity:1;visibility:visible}
  .bus::before,.bus::after{display:none}
  .node{flex-direction:row;justify-content:flex-start;gap:13px;padding:11px 12px;min-width:0;width:100%;
    border:1px solid transparent}
  .node.on{border-color:rgba(127,216,255,.28);background:rgba(127,216,255,.07)}
  .node.on::after{display:none}
  .node .nl{font-size:0.78125rem;letter-spacing:1px}
  .rack,.dashgrid{grid-template-columns:1fr 1fr}
  .mr{display:none}
  .hero-c{left:22px;right:22px;bottom:22px}
  .sc{margin:20px}
  .packs{grid-template-columns:1fr}
  .f2{grid-template-columns:1fr}
}
@media(max-width:768px){
  /* phones: no hero video download at all — the poster backdrop is enough */
  .herovid{display:none}
}
@media(max-width:560px){
  .hud .seg{padding:0 12px}
  .led{display:none}
  .hud .brand img{height:28px}
  .view{min-height:460px}
  .wordmark{font-size:clamp(1.75rem,9vw,2.5rem)}
  .dashgrid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.dot,.rec .d,.led .d,.bus::after{animation:none}.wordmark{filter:none}}

/* ===================== NATION WAR HUD (home) ===================== */
.warhud{--cB:#f0a63c;--cBr:240,166,60;--cA:#7fd8ff;--cAr:127,216,255; /* BCU=orange, ANI=cyan */
  position:relative;overflow:hidden;padding:56px 0 60px;
  background:
    radial-gradient(60% 120% at 0% 50%,rgba(240,166,60,.14),transparent 60%),
    radial-gradient(60% 120% at 100% 50%,rgba(127,216,255,.13),transparent 60%),
    linear-gradient(180deg,#05080d,#070b11);
  border-top:1px solid rgba(127,216,255,.14);border-bottom:1px solid rgba(127,216,255,.10)}
.warhud .sc{position:relative;z-index:2;max-width:1080px;margin:0 auto;padding:0 20px}
.wh-grid{position:absolute;inset:0;z-index:1;opacity:.5;
  background-image:linear-gradient(rgba(127,216,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(127,216,255,.05) 1px,transparent 1px);
  background-size:44px 44px;
  -webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 40%,transparent 85%);
  mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 40%,transparent 85%)}
.wh-scan{position:absolute;left:0;right:0;height:120px;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(127,216,255,.06),transparent);animation:whScan 7s linear infinite}
@keyframes whScan{0%{top:-120px}100%{top:100%}}
.wh-head{text-align:center;margin-bottom:30px}
.wh-eye{font:800 0.65625rem/1 "Consolas",monospace;letter-spacing:3px;color:var(--holo)}
.wh-h{margin:12px 0 6px;font-size:1.875rem;letter-spacing:.4px;
  background:linear-gradient(90deg,#ffd9a6,#fff,#bfe6ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.wh-sub{margin:0;color:var(--dim);font-size:0.84375rem}
.wh-arena{display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;gap:18px}
.wh-side{text-align:center}
.wh-core{position:relative;width:88px;height:88px;margin:0 auto 12px;display:grid;place-items:center;
  clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.wh-side.bcu .wh-core{background:radial-gradient(circle,rgba(var(--cBr),.35),rgba(var(--cBr),.06))}
.wh-side.ani .wh-core{background:radial-gradient(circle,rgba(var(--cAr),.35),rgba(var(--cAr),.06))}
.wh-ring{position:absolute;inset:0;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);border:2px solid;animation:whPulse 3s ease-in-out infinite}
.wh-side.bcu .wh-ring{border-color:var(--cB);box-shadow:0 0 22px rgba(var(--cBr),.5)}
.wh-side.ani .wh-ring{border-color:var(--cA);box-shadow:0 0 22px rgba(var(--cAr),.5)}
@keyframes whPulse{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}
.wh-tag{font:800 1.25rem/1 "Consolas",monospace;letter-spacing:1px}
.wh-side.bcu .wh-tag{color:var(--cB)}.wh-side.ani .wh-tag{color:var(--cA)}
.wh-name{font:700 0.75rem/1 "Segoe UI";letter-spacing:.5px;color:var(--txt);text-transform:uppercase;opacity:.85}
.wh-big{font:800 2.5rem/1 "Consolas",monospace;margin:10px 0 2px;color:#fff;text-shadow:0 0 18px rgba(127,216,255,.35)}
.wh-side.bcu .wh-big{text-shadow:0 0 18px rgba(var(--cBr),.5)}
.wh-side.ani .wh-big{text-shadow:0 0 18px rgba(var(--cAr),.5)}
.wh-lbl{font:600 0.65625rem/1 "Consolas",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--faint)}
.wh-lbl-sub{opacity:.5;letter-spacing:1px}
.wh-center{padding:0 4px}
.wh-bar{position:relative;height:22px;border-radius:12px;overflow:hidden;display:flex;background:rgba(6,10,14,.9);border:1px solid rgba(150,180,210,.18)}
.wh-fill{height:100%;animation:whGrow 1.1s cubic-bezier(.2,.8,.25,1)}
.wh-fill.bcu{background:linear-gradient(90deg,#c9791f,#f7c064);box-shadow:inset 0 0 16px rgba(var(--cBr),.55)}
.wh-fill.ani{background:linear-gradient(90deg,#2b8fd0,#8fe0ff);box-shadow:inset 0 0 16px rgba(var(--cAr),.55)}
@keyframes whGrow{from{width:50%!important}}
.wh-seam{position:absolute;top:-3px;bottom:-3px;width:2px;transform:translateX(-1px);background:#eaf6ff;box-shadow:0 0 12px #eaf6ff,0 0 22px rgba(127,216,255,.8)}
.wh-pcts{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font:800 0.9375rem/1 "Consolas",monospace}
.wh-pcts .bcu{color:var(--cB)}.wh-pcts .ani{color:var(--cA)}
.wh-pcts .vs{font-size:0.5625rem;letter-spacing:2px;color:var(--faint)}
.wh-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:26px 0 4px}
.wh-stat{display:flex;flex-direction:column;gap:4px;align-items:center;min-width:150px;padding:12px 18px;border:1px solid rgba(127,216,255,.14);background:rgba(10,15,21,.55)}
.wh-stat .k{font:700 0.65625rem/1 "Consolas",monospace;letter-spacing:1.5px;text-transform:uppercase;color:var(--faint)}
.wh-stat .v{font:800 1.0625rem/1 "Consolas",monospace;color:#eaf2f8}
.wh-stat .v i{color:var(--faint);font-style:normal;margin:0 6px}
.wh-stat .v .bcu{color:var(--cB)}.wh-stat .v .ani{color:var(--cA)}
.wh-panel{margin-top:20px;border:1px solid rgba(127,216,255,.16);background:rgba(8,12,18,.6);padding:16px 18px}
.wh-panel-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;flex-wrap:wrap;gap:6px}
.wh-panel-t{font:800 0.75rem/1 "Segoe UI";letter-spacing:.5px;color:#eaf2f8;text-transform:uppercase}
.wh-panel-x{font:700 0.65625rem/1 "Consolas",monospace;letter-spacing:1.5px;color:var(--holo)}
.wh-msrow{display:grid;grid-template-columns:1fr 2fr 1fr;gap:14px;align-items:center}
.wh-cmd{display:flex;flex-direction:column;gap:3px}
.wh-cmd.ani{text-align:right}
.wh-cmd-k{font:700 0.5625rem/1 "Consolas",monospace;letter-spacing:1.2px;text-transform:uppercase;color:var(--faint)}
.wh-cmd-v{font:800 0.9375rem/1.1 "Segoe UI";color:#fff}
.wh-cmd.bcu .wh-cmd-v{color:#ffdca6}.wh-cmd.ani .wh-cmd-v{color:#bfe6ff}
.wh-msbar{position:relative;height:18px;border-radius:10px;overflow:hidden;display:flex;background:rgba(6,10,14,.9);border:1px solid rgba(150,180,210,.16)}
.wh-msfill{height:100%}
.wh-msfill.bcu{background:linear-gradient(90deg,#c9791f,#f7c064)}
.wh-msfill.ani{background:linear-gradient(90deg,#2b8fd0,#8fe0ff)}
.wh-mslbl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:800 0.59375rem/1 "Consolas",monospace;letter-spacing:1.2px;color:#fff;text-shadow:0 1px 3px #000}
.wh-mslbl .bcu{color:#ffe6bf}.wh-mslbl .ani{color:#cfe8ff}
.wh-opgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.wh-opcard{position:relative;padding:12px 14px 12px 18px;display:flex;flex-direction:column;gap:3px;overflow:hidden;border:1px solid rgba(150,180,210,.14);background:rgba(10,15,21,.55)}
.wh-opcard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.wh-opcard.bcu::before{background:var(--cB);box-shadow:0 0 12px var(--cB)}
.wh-opcard.ani::before{background:var(--cA);box-shadow:0 0 12px var(--cA)}
.wh-opnat{font:800 0.5625rem/1 "Consolas",monospace;letter-spacing:1.5px}
.wh-opcard.bcu .wh-opnat{color:var(--cB)}.wh-opcard.ani .wh-opnat{color:var(--cA)}
.wh-opguild{font:800 0.9375rem/1.1 "Segoe UI";color:#fff}
.wh-opmeta{font:600 0.625rem/1.3 "Consolas",monospace;color:var(--faint)}
.wh-cta{display:flex;gap:12px;justify-content:center;margin-top:24px;flex-wrap:wrap}
.wh-status{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:6px 14px;border:1px solid rgba(127,216,255,.18);background:rgba(8,12,18,.6);font:700 0.65625rem/1 "Consolas",monospace;letter-spacing:1.2px}
.wh-dot{width:8px;height:8px;border-radius:50%}
.wh-dot.on{background:var(--ok);box-shadow:0 0 10px var(--ok);animation:whBlink 2.4s ease-in-out infinite}
.wh-dot.off{background:#ff6a6a;box-shadow:0 0 10px #ff6a6a}
@keyframes whBlink{0%,100%{opacity:1}50%{opacity:.35}}
.wh-st-t{color:#eaf2f8}.wh-st-sep{color:var(--faint)}.wh-st-p{color:var(--holo);text-transform:none;letter-spacing:.3px;font-weight:600}
.wh-sched{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}
.wh-sc{display:flex;flex-direction:column;gap:5px;align-items:center;min-width:190px;padding:12px 20px;border:1px solid rgba(127,216,255,.16);background:rgba(10,15,21,.5)}
.wh-sc-k{font:700 0.65625rem/1 "Consolas",monospace;letter-spacing:1.4px;text-transform:uppercase;color:var(--faint)}
.wh-sc-k .bcu{color:var(--cB)}.wh-sc-k .ani{color:var(--cA)}
.wh-sc-v{font:800 1.125rem/1 "Consolas",monospace;color:#eaf6ff;letter-spacing:1px;text-shadow:0 0 14px rgba(127,216,255,.35)}
@media(max-width:720px){
  .wh-arena{grid-template-columns:1fr;gap:22px}
  .wh-center{order:3}.wh-h{font-size:1.4375rem}.wh-big{font-size:2.125rem}
  .wh-msrow{grid-template-columns:1fr;gap:10px}.wh-cmd.ani{text-align:left}
}
@media(prefers-reduced-motion:reduce){.wh-scan,.wh-ring,.wh-fill{animation:none}}

/* ===================== SERVER IN NUMBERS — holographic projection ===================== */
.statcloud{position:relative;overflow:hidden;padding:58px 0 70px;
  background:radial-gradient(78% 55% at 50% 116%,rgba(127,216,255,.18),transparent 70%),linear-gradient(180deg,#070c12,#04070c);
  border-top:1px solid rgba(127,216,255,.12)}
.statcloud .sc{position:relative;z-index:3;max-width:960px;margin:0 auto;padding:0 20px}
/* projected perspective floor, scrolling toward the viewer (the "emitter") */
.sc-grid{position:absolute;left:50%;bottom:-20px;width:200%;height:260px;z-index:1;pointer-events:none;
  transform:translateX(-50%) perspective(320px) rotateX(66deg);transform-origin:bottom center;opacity:.45;
  background:linear-gradient(rgba(127,216,255,.40) 1px,transparent 1px) 0 0/100% 28px,
            linear-gradient(90deg,rgba(127,216,255,.26) 1px,transparent 1px) 0 0/28px 100%;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 55%,transparent);mask-image:linear-gradient(180deg,transparent,#000 55%,transparent);
  animation:scFloor 6s linear infinite}
@keyframes scFloor{from{background-position:0 0,0 0}to{background-position:0 28px,0 0}}
.sc-head{text-align:center;margin-bottom:30px}
.sc-eye{font:800 0.65625rem/1 "Consolas",monospace;letter-spacing:3px;color:var(--holo);text-shadow:0 0 12px rgba(127,216,255,.6)}
.sc-h{margin:12px 0 4px;font-size:1.625rem;color:#e6f6ff;letter-spacing:.3px;text-shadow:0 0 18px rgba(127,216,255,.4)}
.sc-sub{margin:0;font:700 0.5625rem/1 "Consolas",monospace;letter-spacing:2.5px;color:#5f93ad;text-transform:uppercase}
.sc-cloud{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:stretch}
.sc-node{position:relative;flex:0 1 158px;padding:20px 20px 17px;display:flex;flex-direction:column;align-items:center;gap:7px;overflow:hidden;
  border:1px solid rgba(127,216,255,.3);background:linear-gradient(180deg,rgba(127,216,255,.10),rgba(10,18,26,.5));
  box-shadow:0 0 24px rgba(127,216,255,.10),inset 0 0 26px rgba(127,216,255,.06);
  clip-path:polygon(11px 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%,0 11px);
  animation:scFloat 6s ease-in-out infinite,scFlick 6s linear infinite;transition:transform .2s,border-color .2s,box-shadow .2s}
.sc-node::before{content:"";position:absolute;left:14%;right:14%;top:0;height:1px;background:var(--holo);box-shadow:0 0 10px var(--holo);opacity:.85}
.sc-node::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(127,216,255,.06) 2px 3px)}
.sc-node:hover{animation-play-state:paused;transform:translateY(-3px);border-color:rgba(127,216,255,.6);box-shadow:0 0 34px rgba(127,216,255,.22),inset 0 0 26px rgba(127,216,255,.1)}
.sc-ico{font-size:1.25rem;line-height:1;filter:drop-shadow(0 0 9px rgba(127,216,255,.55))}
.sc-n{font:800 1.8125rem/1 "Consolas",monospace;color:#eafaff;text-shadow:0 0 16px rgba(127,216,255,.7),0 0 3px rgba(127,216,255,.85);letter-spacing:.5px}
.sc-l{font:700 0.5625rem/1.3 "Consolas",monospace;letter-spacing:1.3px;text-transform:uppercase;color:#8fc6e0;text-align:center}
.sc-node.n0{animation-delay:0s,0s}.sc-node.n1{animation-delay:-1.5s,-2s}.sc-node.n2{animation-delay:-3s,-1s}.sc-node.n3{animation-delay:-4.5s,-3.4s}
@keyframes scFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes scFlick{0%,100%{opacity:1}92%{opacity:1}93%{opacity:.74}94%{opacity:1}96%{opacity:.9}97%{opacity:1}}
@media(max-width:560px){
  .statcloud{padding:44px 0 56px}
  .sc-h{font-size:1.25rem}.sc-sub{letter-spacing:1.6px;font-size:0.59375rem}
  .sc-cloud{gap:10px}
  /* clean 2-up grid; the lone 7th card centres instead of stretching full width */
  .sc-node{flex:0 1 calc(50% - 10px);min-width:0;padding:17px 12px 15px;gap:6px}
  .sc-n{font-size:1.5rem}.sc-ico{font-size:1.125rem}.sc-l{font-size:0.5rem;letter-spacing:1px}
  .sc-grid{height:200px;opacity:.4}
}
@media(prefers-reduced-motion:reduce){.sc-node,.sc-grid{animation:none}}

/* ===== I.R.I.S. assistant widget (private beta) — By Romu ===== */
.iris{position:fixed;right:18px;bottom:18px;z-index:60;font-size:0.875rem}
.iris-fab{display:inline-flex;align-items:center;gap:8px;padding:11px 15px;cursor:pointer;
  color:#04121a;font-weight:800;letter-spacing:.4px;border:none;border-radius:40px;
  background:linear-gradient(135deg,var(--holo),#4ea3ee);
  box-shadow:0 6px 22px rgba(6,12,18,.5),0 0 0 1px rgba(127,216,255,.4)}
.iris-fab svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.iris-tag{font-size:0.75rem}
.iris.open .iris-fab{opacity:0;pointer-events:none}
@media(max-width:560px){.iris-tag{display:none}}

.iris-panel{position:absolute;right:0;bottom:0;width:min(380px,calc(100vw - 24px));
  height:min(560px,calc(100dvh - 90px));display:flex;flex-direction:column;overflow:hidden;
  border:1px solid var(--hair);border-radius:14px;background:rgba(7,11,16,.94);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  box-shadow:0 18px 60px rgba(0,0,0,.6),0 0 0 1px rgba(127,216,255,.14)}

.iris-head{display:flex;align-items:center;gap:9px;padding:11px 12px;border-bottom:1px solid var(--hair);
  background:linear-gradient(180deg,rgba(127,216,255,.10),transparent)}
.iris-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok);flex:0 0 auto}
.iris-id{display:flex;flex-direction:column;line-height:1.15;flex:1;min-width:0}
.iris-id b{font-size:0.875rem;letter-spacing:1px}
.iris-id span{font-size:0.625rem;color:var(--dim);letter-spacing:.5px}
.iris-beta{font-size:0.5625rem;text-transform:uppercase;letter-spacing:1px;color:var(--holo);
  border:1px solid rgba(127,216,255,.4);border-radius:20px;padding:2px 7px}
.iris-x{background:none;border:none;color:var(--dim);font-size:0.9375rem;cursor:pointer;padding:4px}
.iris-x:hover{color:var(--txt)}

.iris-log{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:10px}
.iris-msg{display:flex;max-width:88%}
.iris-msg.me{align-self:flex-end}
.iris-msg.bot{align-self:flex-start}
.iris-b{padding:9px 12px;border-radius:12px;line-height:1.45;word-wrap:break-word;overflow-wrap:anywhere}
.iris-msg.me .iris-b{background:linear-gradient(135deg,rgba(78,163,238,.28),rgba(78,163,238,.14));
  border:1px solid rgba(127,216,255,.28);border-bottom-right-radius:3px}
.iris-msg.bot .iris-b{background:rgba(150,180,210,.08);border:1px solid var(--hair);border-bottom-left-radius:3px}
.iris-b a{color:var(--holo);text-decoration:underline;text-underline-offset:2px}
.iris-b code{font-family:"Consolas",monospace;font-size:0.75rem;background:rgba(127,216,255,.12);padding:1px 5px;border-radius:4px}
.iris-b strong{color:#fff}

.iris-typing .iris-b{display:flex;gap:4px;align-items:center}
.iris-typing i{width:6px;height:6px;border-radius:50%;background:var(--dim);animation:irisblink 1.2s infinite}
.iris-typing i:nth-child(2){animation-delay:.2s}
.iris-typing i:nth-child(3){animation-delay:.4s}
@keyframes irisblink{0%,60%,100%{opacity:.25}30%{opacity:1}}

.iris-compose{display:flex;gap:8px;align-items:flex-end;padding:10px;border-top:1px solid var(--hair)}
.iris-compose textarea{flex:1;resize:none;max-height:120px;color:var(--txt);font:inherit;
  background:rgba(150,180,210,.07);border:1px solid var(--hair);border-radius:10px;padding:9px 11px;outline:none}
.iris-compose textarea:focus{border-color:rgba(127,216,255,.5)}
.iris-send{flex:0 0 auto;width:38px;height:38px;border:none;border-radius:10px;cursor:pointer;
  color:#04121a;font-size:1rem;font-weight:900;background:linear-gradient(135deg,var(--holo),#4ea3ee)}
.iris-send:active{transform:translateY(1px)}
.iris-locked{padding:12px;text-align:center;font-size:0.75rem;color:var(--dim);border-top:1px solid var(--hair)}

@media(prefers-reduced-motion:reduce){.iris-typing i{animation:none}}

/* ===== Wiki live global search (guides + Pedia) — By Romu ===== */
.wikisearch{position:relative;max-width:560px;margin:0 0 20px}
.wksi{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;
  fill:none;stroke:var(--dim);stroke-width:2;stroke-linecap:round;pointer-events:none}
#wikiq{width:100%;color:var(--txt);font:inherit;padding:11px 14px 11px 38px;
  background:rgba(150,180,210,.06);border:1px solid var(--hair);border-radius:11px;outline:none}
#wikiq:focus{border-color:rgba(127,216,255,.5);background:rgba(150,180,210,.09)}
#wikiq::placeholder{color:var(--faint)}

.wikisug{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 6px);max-height:60vh;overflow-y:auto;
  background:rgba(7,11,16,.97);border:1px solid var(--hair);
  box-shadow:0 16px 44px rgba(0,0,0,.55),0 0 0 1px rgba(127,216,255,.12)}
.wksug-h{position:sticky;top:0;padding:7px 13px 5px;font-size:0.5625rem;letter-spacing:2px;text-transform:uppercase;
  color:var(--holo);background:rgba(7,11,16,.97);border-bottom:1px solid var(--hair)}
.wksug-row{display:flex;flex-direction:column;gap:1px;padding:8px 13px;border-bottom:1px solid rgba(150,180,210,.06);cursor:pointer}
.wksug-row:hover{background:rgba(127,216,255,.09)}
.wksug-n{font-size:0.875rem;color:var(--txt)}
.wksug-m{font-size:0.6875rem;color:var(--dim)}
.wksug-e{padding:14px 13px;font-size:0.8125rem;color:var(--dim)}

/* ===== Wiki → Pedia refs + hover-card — By Romu ===== */
.wart .pref{color:var(--holo);text-decoration:none;border-bottom:1px dotted rgba(127,216,255,.55);
  cursor:pointer;white-space:nowrap}
.wart .pref:hover{border-bottom-style:solid;background:rgba(127,216,255,.08)}
.wart .pref::after{content:"↗";font-size:.75em;opacity:.6;margin-left:1px;vertical-align:super}

.prefpop{position:fixed;z-index:80;width:230px;max-width:calc(100vw - 16px);pointer-events:none;
  background:rgba(7,11,16,.98);border:1px solid var(--hair);
  box-shadow:0 14px 40px rgba(0,0,0,.6),0 0 0 1px rgba(127,216,255,.14)}
.prefpop .pf-h{padding:9px 11px 7px;border-bottom:1px solid var(--hair)}
.prefpop .pf-h b{display:block;font-size:0.8125rem;color:#fff;line-height:1.2}
.prefpop .pf-h span{font-size:0.625rem;letter-spacing:.4px;color:var(--holo)}
.prefpop .pf-s{padding:6px 11px}
.prefpop .pf-r{display:flex;justify-content:space-between;gap:12px;font-size:0.75rem;padding:2px 0}
.prefpop .pf-r span{color:var(--dim)}
.prefpop .pf-r b{color:var(--txt);font-weight:600}
.prefpop .pf-f{padding:6px 11px;border-top:1px solid var(--hair);font-size:0.625rem;color:var(--faint);letter-spacing:.4px}

/* ===== News source badges (patch note vs announcement) — By Romu ===== */
.nkind{display:inline-flex;align-items:center;gap:5px;padding:2px 9px 2px 7px;border-radius:20px;
  font-size:0.625rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;line-height:1.6;white-space:nowrap}
.nkind svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nkind-update{color:var(--holo);background:rgba(127,216,255,.12);border:1px solid rgba(127,216,255,.32)}
.nkind-announce{color:#f0a63c;background:rgba(240,166,60,.13);border:1px solid rgba(240,166,60,.38)}
/* Announcement items get a subtle gold border so they stand out in the feed */
.newsitem:has(.nkind-announce){border-color:rgba(240,166,60,.3)}

/* ===== Hall of Fame — By Romu ===== */
.hofscr{display:flex;flex-direction:column;gap:16px}
/* hero */
.hof-hero{position:relative;padding:34px 20px 30px;text-align:center;overflow:hidden;
  background:radial-gradient(120% 140% at 50% 0%,rgba(30,52,74,.5),rgba(7,11,16,.2) 60%),rgba(6,10,14,.5)}
.hof-hero-in{position:relative;display:flex;align-items:center;justify-content:center;gap:26px}
.hof-title{font-family:"Segoe UI",Impact,sans-serif;font-weight:900;letter-spacing:8px;font-size:clamp(2.125rem,6vw,4.5rem);
  line-height:.95;margin:0;background:linear-gradient(180deg,#eef4fb,#9fb2c4 55%,#5f6f80);-webkit-background-clip:text;
  background-clip:text;color:transparent;text-shadow:0 2px 20px rgba(127,216,255,.15)}
.hof-sub{margin:6px 0 0;color:var(--holo);letter-spacing:5px;font-size:clamp(0.5625rem,1.6vw,0.8125rem);text-transform:uppercase;opacity:.85}
.hof-chev{width:clamp(22px,4vw,52px);height:36px;flex:0 0 auto;
  background:linear-gradient(135deg,var(--holo),#4ea3ee);opacity:.55;
  clip-path:polygon(0 20%,55% 20%,80% 50%,55% 80%,0 80%,25% 50%)}
.hof-chev.r{transform:scaleX(-1)}
@media(max-width:640px){.hof-chev{display:none}}
/* tabs */
.hof-tabs{display:flex;gap:2px;overflow-x:auto;border-bottom:1px solid var(--hair);scrollbar-width:thin}
.hoftab{flex:0 0 auto;background:none;border:none;border-bottom:2px solid transparent;color:var(--dim);
  font:inherit;font-size:0.75rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;padding:12px 18px;cursor:pointer;white-space:nowrap}
.hoftab:hover{color:var(--txt)}
.hoftab.on{color:#fff;border-bottom-color:var(--holo);background:linear-gradient(180deg,rgba(127,216,255,.10),transparent)}
/* shell + 3-col grid */
.hof-shell{position:relative;background:var(--glass);padding:20px}
.hof-grid{display:grid;grid-template-columns:1fr 274px;gap:20px}
.hof-cat{display:grid;grid-template-columns:250px 1fr;gap:20px}
.hof-cat[hidden]{display:none}   /* one category at a time (tabs) — beats the UA [hidden] that .hof-cat's display overrides */
@media(max-width:980px){.hof-grid{grid-template-columns:1fr}.hof-cat{grid-template-columns:1fr}}
/* left emblem panel */
.hof-emblem{padding:16px;background:rgba(7,11,16,.4);border:1px solid var(--hair);display:flex;flex-direction:column;align-items:center;text-align:center}
.hof-emh{display:flex;align-items:center;gap:9px;align-self:flex-start;margin-bottom:8px}
.hof-emh b{font-size:1.0625rem;letter-spacing:.5px;color:#fff}
.hof-emh-ic{width:20px;height:20px;fill:none;stroke:var(--holo);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hof-desc{font-size:0.75rem;color:var(--dim);line-height:1.5;margin:0 0 14px}
.hof-emblem-big{margin-top:auto;width:100%;display:flex;justify-content:center;align-items:center;min-height:180px;padding:6px}
.hof-emb-img{max-width:100%;max-height:220px;filter:drop-shadow(0 0 18px rgba(127,216,255,.25))}
.hof-emb-svg{width:150px;height:150px;fill:none;stroke:var(--holo);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;
  filter:drop-shadow(0 0 12px rgba(127,216,255,.45));opacity:.92}
/* champions list */
.hof-champs-h{text-align:center;color:var(--holo);letter-spacing:4px;text-transform:uppercase;font-size:0.75rem;font-weight:700;margin:2px 0 14px}
.hof-list{display:flex;flex-direction:column;gap:10px}
.hof-row{display:flex;align-items:center;gap:16px;padding:12px 16px;border:1px solid var(--hair);border-radius:10px;
  background:linear-gradient(90deg,rgba(127,216,255,.04),transparent 40%)}
.hof-row:hover{border-color:rgba(127,216,255,.28)}
.hof-date{flex:0 0 66px;text-align:left;line-height:1.1}
.hof-mon{display:block;color:var(--holo);font-weight:800;font-size:0.875rem;letter-spacing:1px}
.hof-yr{display:block;color:var(--faint);font-size:0.75rem}
.hof-sep{flex:0 0 auto;width:26px;height:1px;background:linear-gradient(90deg,rgba(127,216,255,.5),transparent)}
.hof-fac{flex:0 0 48px;display:flex;justify-content:center}
.hof-fac-img{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 0 6px rgba(127,216,255,.35))}
.hof-fac-svg{width:34px;height:34px;fill:none;stroke:var(--holo);stroke-width:1.6}
.hof-win{flex:1;min-width:0}
.hof-win b{display:block;font-size:1.1875rem;color:#fff;font-weight:800;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hof-win b.ong{color:var(--holo)}
.hof-win span{display:block;font-size:0.625rem;color:var(--faint);letter-spacing:1.5px;text-transform:uppercase}
.hof-cur{flex:0 0 auto;color:var(--holo);font-size:0.625rem;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}
.hof-row.ongoing{border-style:dashed;border-color:rgba(127,216,255,.55);background:rgba(127,216,255,.05)}
/* filters */
.hof-filters{padding:16px;background:rgba(7,11,16,.4);border:1px solid var(--hair);align-self:start}
.hof-fh{color:var(--holo);font-size:0.6875rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;margin-bottom:14px}
.hof-fl{display:block;font-size:0.625rem;letter-spacing:1px;color:var(--faint);text-transform:uppercase;margin:12px 0 5px}
.hof-fsel{width:100%;background:rgba(150,180,210,.06);border:1px solid var(--hair);border-radius:8px;color:var(--txt);
  font:inherit;font-size:0.8125rem;padding:9px 11px;outline:none}
.hof-fsel:focus{border-color:rgba(127,216,255,.5)}
.hof-about{margin-top:20px;padding-top:14px;border-top:1px solid var(--hair)}
.hof-about-h{color:var(--txt);font-size:0.6875rem;letter-spacing:1px;text-transform:uppercase;font-weight:700;margin-bottom:6px}
.hof-about p{font-size:0.71875rem;color:var(--dim);line-height:1.55;margin:0}

/* Home hero to the container edges — kill the wrap padding on the home page. By Romu */
.wrap:has(.home-screen){padding-left:0;padding-right:0}

/* Scale the console up on large / 4K screens so it doesn't sit as a tiny centered column.
   Fonts are rem, so bumping the root size scales ALL text proportionally (native "zoom"). By Romu */
@media (min-width:1600px){ :root{ --wrap:1300px } }
@media (min-width:2200px){ :root{ --wrap:1500px } html{ font-size:17px } }

/* Hero CTA buttons — premium look on the artwork (scoped to the hero only). By Romu */
.home-screen .cta .pill{border-radius:8px;box-shadow:0 6px 22px rgba(0,0,0,.5);backdrop-filter:blur(2px)}
.home-screen .cta .pill.b{background:rgba(9,17,28,.5);color:#d6edff;border:1px solid rgba(127,216,255,.55)}
.home-screen .cta .pill.b:hover{background:rgba(20,40,64,.72);border-color:#7fd8ff;color:#eaf9ff;box-shadow:0 9px 28px rgba(0,0,0,.6)}
