/* SkinsRoll — "Armory" design system. Concrete paper, black steel frames, safety-orange accent. */
:root{
  --paper:#e8e4da;--paper-2:#dcd7ca;--paper-3:#cfc9b9;
  --ink:#121212;--ink-2:#2a2a2a;--mute:#5b5850;
  --orange:#ff5a1f;--orange-2:#e04a12;--lime:#c6f52a;--sky:#2f6bff;
  --r-consumer:#8c9aa8;--r-mil:#4b69ff;--r-restricted:#8847ff;--r-classified:#d32ce6;--r-covert:#eb4b4b;--r-gold:#f3c449;
  --bw:3px;--shadow:6px 6px 0 var(--ink);--shadow-sm:3px 3px 0 var(--ink);
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --display:"Archivo Black","Arial Black",Impact,sans-serif;
  --body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;
  background-image:radial-gradient(rgba(0,0,0,.09) 1px,transparent 1px);background-size:14px 14px}
a{color:inherit}
img{max-width:100%}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.02;letter-spacing:-.01em;margin:0 0 .5em;text-transform:uppercase}
h1{font-size:clamp(2.3rem,6vw,4.6rem)}
h2{font-size:clamp(1.6rem,3.6vw,2.6rem)}
h3{font-size:1.25rem}
p{margin:0 0 1em}
code,kbd{font-family:var(--mono)}
.mono{font-family:var(--mono)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:10px;top:10px;background:var(--orange);padding:8px;z-index:99}

/* ticker */
.ticker{background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;overflow:hidden;white-space:nowrap;border-bottom:var(--bw) solid var(--ink)}
.ticker__in{display:inline-block;padding:7px 0;animation:tick 40s linear infinite}
.ticker__in span{margin:0 28px}
.ticker__in b{color:var(--orange)}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* header */
.hdr{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:var(--bw) solid var(--ink)}
.hdr .wrap{display:flex;align-items:center;gap:18px;min-height:64px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-size:22px;letter-spacing:-.02em;text-transform:uppercase}
.logo__mark{width:34px;height:34px;border:var(--bw) solid var(--ink);background:var(--orange);display:grid;place-items:center;box-shadow:var(--shadow-sm);font-size:16px;font-family:var(--mono);font-weight:700}
.logo__mark svg{width:20px;height:20px}
.nav{display:flex;gap:2px;margin-left:8px}
.nav a{text-decoration:none;font-family:var(--mono);font-size:13px;text-transform:uppercase;letter-spacing:.06em;padding:8px 12px;border:var(--bw) solid transparent}
.nav a:hover,.nav a.on{border-color:var(--ink);background:var(--paper-2)}
.hdr__r{margin-left:auto;display:flex;align-items:center;gap:10px}
.bal{display:flex;align-items:center;gap:8px;border:var(--bw) solid var(--ink);background:#fff;padding:6px 10px;font-family:var(--mono);font-size:14px;font-weight:700;box-shadow:var(--shadow-sm)}
.bal .c{color:var(--orange)}
.bal button{border:0;background:var(--ink);color:#fff;font-family:var(--mono);font-size:11px;padding:3px 7px;cursor:pointer}
.bal button:hover{background:var(--orange)}
.burger{display:none;border:var(--bw) solid var(--ink);background:#fff;width:42px;height:42px;font-size:20px;cursor:pointer}

/* nav dropdowns */
.nav__item{position:relative}
.nav__item>a{display:block}
.dd{display:none;position:absolute;left:0;top:100%;min-width:250px;background:#fff;border:var(--bw) solid var(--ink);box-shadow:var(--shadow);z-index:60;padding:6px 0}
.dd a{display:block;padding:9px 14px;border:0;text-transform:none;letter-spacing:0;font-family:var(--body);font-size:14px;font-weight:600;line-height:1.25}
.dd a small{display:block;font-family:var(--mono);font-size:10px;color:var(--mute);text-transform:uppercase;letter-spacing:.08em;margin-top:2px}
.dd a:hover{background:var(--lime);border:0}
.nav__item:hover>.dd,.nav__item:focus-within>.dd,.nav__item.open>.dd{display:block}
.nav__item:hover>a,.nav__item.open>a{border-color:var(--ink);background:var(--paper-2)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:var(--bw) solid var(--ink);background:#fff;color:var(--ink);padding:12px 20px;font-family:var(--mono);font-weight:700;font-size:14px;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .08s,box-shadow .08s;white-space:nowrap}
.btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.btn--o{background:var(--orange);color:#111}
.btn--k{background:var(--ink);color:#fff}
.btn--l{background:var(--lime)}
.btn--sm{padding:8px 12px;font-size:12px}
.btn--big{padding:16px 28px;font-size:16px}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}

/* cards & frames */
.frame{border:var(--bw) solid var(--ink);background:#fff;box-shadow:var(--shadow)}
.frame--p{background:var(--paper-2)}
.frame--k{background:var(--ink);color:var(--paper)}
.frame--o{background:var(--orange)}
.frame__hd{border-bottom:var(--bw) solid var(--ink);padding:10px 16px;display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.1em;background:var(--paper-2)}
.frame--k .frame__hd{background:#222;border-color:#444}
.frame__hd .dot{width:10px;height:10px;background:var(--orange);border:2px solid var(--ink)}
.frame__bd{padding:18px}
.tag{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border:2px solid var(--ink);background:#fff;line-height:1.4}
.tag--o{background:var(--orange)}.tag--k{background:var(--ink);color:#fff}.tag--l{background:var(--lime)}
.stamp{display:inline-block;font-family:var(--display);text-transform:uppercase;border:4px double var(--orange-2);color:var(--orange-2);padding:6px 14px;transform:rotate(-4deg);font-size:14px;letter-spacing:.1em}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:10px;display:flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:28px;height:3px;background:var(--orange)}
.sec{padding:56px 0}
.sec--tight{padding:34px 0}
.sec__hd{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px;flex-wrap:wrap}
.sec__hd p{max-width:620px;color:var(--mute);margin:0}
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.rule{border:0;border-top:var(--bw) solid var(--ink);margin:0}
.dashed{border-top:3px dashed var(--ink);margin:30px 0;opacity:.5}

/* hero */
.hero{padding:60px 0 50px;position:relative;overflow:hidden}
.hero__grid{display:grid;grid-template-columns:1.25fr .9fr;gap:40px;align-items:center}
.hero h1 span{background:var(--orange);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero p.lead{font-size:1.15rem;max-width:560px}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hero__stats{display:grid;grid-template-columns:repeat(4,1fr);border:var(--bw) solid var(--ink);background:#fff;margin-top:36px;box-shadow:var(--shadow)}
.hero__stats div{padding:14px;border-right:var(--bw) solid var(--ink)}
.hero__stats div:last-child{border-right:0}
.hero__stats b{display:block;font-family:var(--display);font-size:1.7rem}
.hero__stats small{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.bigno{position:absolute;right:-30px;top:-40px;font-family:var(--display);font-size:22rem;color:transparent;-webkit-text-stroke:2px rgba(0,0,0,.12);pointer-events:none;line-height:1;user-select:none}

/* flagship card */
.flag{position:relative}
.flag .frame__bd{display:grid;gap:14px}
.flag__logo{font-family:var(--display);font-size:2rem;letter-spacing:-.02em}
.flag__bonus{font-family:var(--display);font-size:1.6rem;line-height:1.05}
.code{display:flex;align-items:stretch;border:var(--bw) solid var(--ink);background:#fff;font-family:var(--mono);box-shadow:var(--shadow-sm)}
.code span{padding:10px 14px;font-weight:700;font-size:18px;letter-spacing:.14em;flex:1;display:flex;align-items:center}
.code button{border:0;border-left:var(--bw) solid var(--ink);background:var(--lime);padding:0 16px;font-family:var(--mono);font-weight:700;cursor:pointer;text-transform:uppercase;font-size:12px}
.code button:hover{background:var(--orange)}
.code button.ok{background:var(--ink);color:#fff}
.fine{font-family:var(--mono);font-size:11px;color:var(--mute);line-height:1.5}

/* tiles */
.tile{border:var(--bw) solid var(--ink);background:#fff;text-decoration:none;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .1s,box-shadow .1s;position:relative;overflow:hidden}
.tile:hover{transform:translate(-3px,-3px);box-shadow:var(--shadow)}
.tile__art{height:130px;border-bottom:var(--bw) solid var(--ink);display:grid;place-items:center;position:relative;overflow:hidden;background:var(--paper-2)}
.tile__art svg{width:84px;height:84px}
.tile__bd{padding:14px}
.tile__bd h3{margin:0 0 4px;font-size:1.1rem}
.tile__bd p{margin:0;color:var(--mute);font-size:14px}
.tile .tag{position:absolute;top:10px;left:10px}
.tile__ft{margin-top:auto;border-top:2px solid var(--ink);padding:8px 14px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;display:flex;justify-content:space-between}

/* brand table */
.btable{width:100%;border-collapse:collapse;border:var(--bw) solid var(--ink);background:#fff;box-shadow:var(--shadow)}
.btable th{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-align:left;padding:10px 14px;background:var(--ink);color:#fff}
.btable td{padding:14px;border-top:var(--bw) solid var(--ink);vertical-align:middle}
.btable tr.hot td{background:#fff3ec}
.btable .rank{font-family:var(--display);font-size:1.6rem;width:56px}
.brand{display:flex;align-items:center;gap:12px}
.brand__logo{border:var(--bw) solid var(--ink);display:grid;place-items:center;flex:none;padding:6px;overflow:hidden}
.brand__logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.brand b{display:block;font-size:17px}
.brand small{font-family:var(--mono);font-size:11px;color:var(--mute)}
.bonus{font-weight:700}
.bonus small{display:block;font-weight:400;color:var(--mute);font-size:12px}
.codechip{display:inline-flex;align-items:center;border:2px solid var(--ink);font-family:var(--mono);font-weight:700;letter-spacing:.1em;background:var(--paper-2)}
.codechip span{padding:6px 10px}
.codechip button{border:0;border-left:2px solid var(--ink);background:var(--lime);padding:6px 9px;cursor:pointer;font-family:var(--mono);font-size:11px;font-weight:700}
.codechip button:hover{background:var(--orange)}
.codechip button.ok{background:var(--ink);color:#fff}

/* game shell */
.game{display:grid;grid-template-columns:320px 1fr;gap:22px;align-items:start}
.panel label{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:12px 0 5px}
.panel label:first-child{margin-top:0}
.inp{width:100%;border:var(--bw) solid var(--ink);background:#fff;padding:10px 12px;font-family:var(--mono);font-size:15px;font-weight:700;outline:0}
.inp:focus{background:#fffbe6}
.inrow{display:flex;gap:6px}
.inrow .inp{flex:1;min-width:0}
.qb{border:var(--bw) solid var(--ink);background:var(--paper-2);font-family:var(--mono);font-size:11px;font-weight:700;padding:0 9px;cursor:pointer}
.qb:hover{background:var(--lime)}
.seg{display:flex;border:var(--bw) solid var(--ink);background:#fff}
.seg button{flex:1;border:0;border-right:var(--bw) solid var(--ink);background:#fff;padding:10px;font-family:var(--mono);font-weight:700;font-size:12px;text-transform:uppercase;cursor:pointer}
.seg button:last-child{border-right:0}
.seg button.on{background:var(--ink);color:#fff}
.stage{border:var(--bw) solid var(--ink);background:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden;min-height:340px}
.stage__hd{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;border-bottom:var(--bw) solid var(--ink);font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.1em;background:var(--paper-2)}
.kv{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.kv div{border:2px solid var(--ink);padding:8px 10px;background:var(--paper-2)}
.kv small{display:block;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.kv b{font-family:var(--mono);font-size:15px}
.hist{display:flex;gap:6px;flex-wrap:wrap;padding:10px 14px;border-top:var(--bw) solid var(--ink);min-height:44px;background:var(--paper-2)}
.chip{font-family:var(--mono);font-size:12px;font-weight:700;padding:3px 8px;border:2px solid var(--ink);background:#fff}
.chip.win{background:var(--lime)}.chip.lose{background:#f7b9a6}.chip.green{background:#3fbf6b;color:#fff}.chip.red{background:#eb4b4b;color:#fff}.chip.black{background:var(--ink);color:#fff}
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:var(--ink);color:#fff;font-family:var(--mono);font-weight:700;padding:12px 18px;border:var(--bw) solid var(--orange);box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:.2s;z-index:99}
.toast.show{opacity:1;transform:translateX(-50%)}

/* rarity */
.rar-consumer{--rc:var(--r-consumer)}.rar-mil{--rc:var(--r-mil)}.rar-restricted{--rc:var(--r-restricted)}.rar-classified{--rc:var(--r-classified)}.rar-covert{--rc:var(--r-covert)}.rar-gold{--rc:var(--r-gold)}

/* calculators */
.calc{display:grid;grid-template-columns:360px 1fr;gap:22px;align-items:start}
.res{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.res div{border:var(--bw) solid var(--ink);background:#fff;padding:12px;box-shadow:var(--shadow-sm)}
.res small{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.res b{font-family:var(--display);font-size:1.4rem;display:block;margin-top:4px}
.res b.o{color:var(--orange-2)}
.range{width:100%;accent-color:var(--orange);margin:6px 0}
.tbl{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px;background:#fff;border:var(--bw) solid var(--ink)}
.tbl th,.tbl td{padding:8px 10px;border-bottom:2px solid var(--ink);text-align:left}
.tbl th{background:var(--ink);color:#fff;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.tbl tr:last-child td{border-bottom:0}
.tbl td input{width:80px;border:2px solid var(--ink);padding:4px;font-family:var(--mono)}
.tblwrap{overflow-x:auto}

/* prose */
.prose{max-width:760px}
.prose h2{margin-top:1.8em}
.prose h3{margin-top:1.4em}
.prose ul,.prose ol{padding-left:22px}
.prose li{margin:.35em 0}
.prose table{margin:1em 0}
.faq details{border:var(--bw) solid var(--ink);background:#fff;margin-bottom:-3px}
.faq summary{padding:14px 16px;cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between}
.faq summary::after{content:"+";font-family:var(--mono);font-size:20px}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 16px 14px;margin:0;color:var(--ink-2)}
.steps{counter-reset:s;display:grid;gap:12px}
.steps div{border:var(--bw) solid var(--ink);background:#fff;padding:14px 16px 14px 64px;position:relative}
.steps div::before{counter-increment:s;content:"0" counter(s);position:absolute;left:0;top:0;bottom:0;width:48px;display:grid;place-items:center;background:var(--ink);color:var(--orange);font-family:var(--display);font-size:20px}
.steps b{display:block;margin-bottom:3px}

/* promo hero */
.promo{display:grid;grid-template-columns:1fr 400px;gap:34px;align-items:start}
.promo__card{position:sticky;top:90px}
.warn{border:var(--bw) solid var(--ink);background:var(--lime);padding:12px 16px;font-family:var(--mono);font-size:12px;margin:18px 0}
.cta-band{background:var(--ink);color:var(--paper);border-top:var(--bw) solid var(--ink);border-bottom:var(--bw) solid var(--ink);padding:44px 0}
.cta-band h2{color:#fff}
.cta-band h2 em{font-style:normal;color:var(--orange)}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap}

/* footer */
.ftr{border-top:var(--bw) solid var(--ink);background:var(--paper-2);padding:44px 0 30px;margin-top:40px}
.ftr__g{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:26px}
.ftr h4{font-size:13px;font-family:var(--mono);letter-spacing:.12em;margin-bottom:10px}
.ftr ul{list-style:none;padding:0;margin:0}
.ftr li{margin:5px 0;font-size:14px}
.ftr li a{text-decoration:none}
.ftr li a:hover{text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:3px}
.ftr__legal{margin-top:30px;padding-top:18px;border-top:2px solid var(--ink);font-family:var(--mono);font-size:11px;color:var(--mute);display:flex;gap:16px;align-items:start}
.age{border:3px solid var(--ink);font-family:var(--display);padding:4px 8px;flex:none}

@media (max-width:980px){
  .hero__grid,.game,.calc,.promo{grid-template-columns:1fr}
  .promo__card{position:static}
  .g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(2,1fr)}
  .ftr__g{grid-template-columns:1fr 1fr}
  .bigno{display:none}
}
@media (max-width:720px){
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:var(--bw) solid var(--ink);flex-direction:column;padding:8px}
  .nav.open{display:flex}
  .dd{position:static;box-shadow:none;border-width:0 0 var(--bw);margin:0 0 6px}
  .nav__item:hover>.dd{display:none}
  .nav__item.open>.dd{display:block}
  .burger{display:block}
  .hdr .wrap{gap:10px;padding:0 12px}
  .hdr__r .btn{display:none}
  .bal{font-size:12px;padding:5px 7px;box-shadow:none}
  .logo{font-size:18px}
  .hero__stats div{border-right:0}
  .hero__stats{grid-template-columns:repeat(2,1fr)}
  .hero__stats div:nth-child(2){border-right:0}
  .hero__stats div:nth-child(-n+2){border-bottom:var(--bw) solid var(--ink)}
  .g4,.g3,.g2{grid-template-columns:1fr}
  .btable thead{display:none}
  .btable tr{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:12px;border-top:var(--bw) solid var(--ink)}
  .btable td{border:0;padding:4px}
  .btable td.full{grid-column:1/-1}
  .hero{padding:36px 0}
  .sec{padding:38px 0}
}

/* reviews */
.score{display:grid;place-items:center;width:92px;height:92px;border:var(--bw) solid var(--ink);background:var(--lime);font-family:var(--display);font-size:2rem;box-shadow:var(--shadow-sm);flex:none}
.score small{font-family:var(--mono);font-size:10px;letter-spacing:.1em}
.bars{display:grid;gap:8px}
.bars div{display:grid;grid-template-columns:110px 1fr 44px;align-items:center;gap:10px;font-family:var(--mono);font-size:12px}
.bars i{display:block;height:14px;border:2px solid var(--ink);background:#fff;position:relative}
.bars i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--w);background:var(--orange)}
.pc{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pc ul{list-style:none;padding:0;margin:0}
.pc li{padding:8px 10px 8px 30px;border:2px solid var(--ink);margin-bottom:-2px;position:relative;font-size:14px;background:#fff}
.pc li::before{position:absolute;left:9px;font-family:var(--mono);font-weight:700}
.pc .pro li::before{content:"+";color:#2a8a2a}.pc .con li::before{content:"–";color:#c62828}
.spec{width:100%;border-collapse:collapse;font-size:14px;border:var(--bw) solid var(--ink);background:#fff}
.spec td{padding:8px 12px;border-bottom:2px solid var(--ink)}
.spec td:first-child{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);width:38%;background:var(--paper-2)}
.rcard{border:var(--bw) solid var(--ink);background:#fff;box-shadow:var(--shadow-sm);padding:16px;display:grid;gap:12px;text-decoration:none}
.rcard:hover{transform:translate(-3px,-3px);box-shadow:var(--shadow)}
@media (max-width:720px){.pc{grid-template-columns:1fr}.bars div{grid-template-columns:90px 1fr 40px}}

.gloss{display:grid;gap:0}.gloss div{border:2px solid var(--ink);margin-bottom:-2px;padding:10px 14px;background:#fff}.gloss dt{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.gloss dd{margin:3px 0 0;font-size:14px;color:var(--ink-2)}
@media (max-width:980px){.grid[style*="repeat(5"]{grid-template-columns:repeat(2,1fr)!important}}
