
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#050505;color:#ececec;font-family:'Courier New', Courier, monospace;line-height:1.6;
  font-size:15px;-webkit-font-smoothing:none}
img{max-width:100%;display:block;image-rendering:pixelated}
a{color:#ff5a00;text-decoration:none}
::selection{background:#ff5a00;color:#ffffff}
:focus-visible{outline:3px solid #ff5a00;outline-offset:3px}
.blocky{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;text-transform:uppercase;
  letter-spacing:.02em;line-height:1;
  text-shadow:3px 3px 0 #0b0b0b,6px 6px 0 rgba(0,0,0,.35)}
.blocky.sm{font-size:clamp(1.3rem,4vw,2rem);margin-bottom:3.24rem;
  text-align:center}
.blink{animation:bl 1s steps(1) infinite}
@keyframes bl{50%{opacity:0}}

.hud{position:sticky;top:0;z-index:50;display:flex;flex-wrap:wrap;
  align-items:center;gap:1rem;padding:.6rem 1rem;background:#080808;
  border-bottom:4px solid #ff5a00;color:#ff5a00}
.stat{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;letter-spacing:.06em;font-size:.82rem}
.stat b{color:#ececec}
.hud-nav{margin-left:auto;display:flex;gap:.5rem}
.hud-nav a{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;font-size:.72rem;color:#ececec;
  background:#1d1d1d;padding:.4rem .8rem;
  box-shadow:0 0 0 3px rgba(236,236,236,0.85),inset 2px 2px 0 #666666,inset -2px -2px 0 #0b0b0b}
.hud-nav a:hover{background:#ff5a00;color:#ffffff}

.title{text-align:center;max-width:60rem;margin:0 auto;
  padding:4.86rem clamp(14px,4vw,40px)}
.world{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;color:#ff5a00;letter-spacing:.2em;
  margin-bottom:1.89rem}
.title h1{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;text-transform:uppercase;
  font-size:clamp(2.4rem,10vw,5.5rem);color:#ececec;
  text-shadow:4px 4px 0 #ff5a00,8px 8px 0 #0b0b0b}
.tag{color:rgba(236,236,236,0.66);max-width:34rem;margin:1.89rem auto 0}
.hero-char{width:64px;height:64px;margin:3.24rem auto 0;background:#ff5a00;
  box-shadow:
    -32px 0 0 #fa7e3b,32px 0 0 #fa7e3b,0 -32px 0 #ececec,
    0 0 0 4px rgba(236,236,236,0.85),64px 32px 0 #0b0b0b;image-rendering:pixelated}
.start{display:inline-block;font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;
  text-transform:uppercase;letter-spacing:.08em;color:#ffffff;background:#ff5a00;
  padding:.8rem 2rem;margin-top:3.24rem;
  box-shadow:0 0 0 4px rgba(236,236,236,0.85),inset 2px 2px 0 #666666,inset -3px -3px 0 #0b0b0b}
.start:hover{filter:brightness(1.1)}

.panelbox,.contpanel{max-width:52rem;margin:3.24rem auto;padding:0 1rem}
.pb-bar{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;letter-spacing:.1em;color:#ffffff;
  background:#ff5a00;padding:.5rem 1rem;box-shadow:0 0 0 4px rgba(236,236,236,0.85)}
.pb-in{background:#1d1d1d;padding:3.24rem;
  box-shadow:0 0 0 4px rgba(236,236,236,0.85),inset 3px 3px 0 #666666,inset -3px -3px 0 #0b0b0b}
.pb-in p{color:rgba(236,236,236,0.66)}
.hpbar{position:relative;height:26px;margin-top:1.89rem;background:#0b0b0b;
  box-shadow:0 0 0 3px rgba(236,236,236,0.85)}
.hp-fill{position:absolute;inset:3px;right:12%;background:#ff5a00}
.hp-txt{position:absolute;inset:0;display:grid;place-items:center;
  font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;font-size:.72rem;color:#ffffff}

.levels{max-width:64rem;margin:4.86rem auto;padding:0 clamp(14px,4vw,40px)}
.lv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.89rem}
.lvl{display:block;background:#1d1d1d;padding:1.89rem;color:#ececec;
  box-shadow:0 0 0 4px rgba(236,236,236,0.85),inset 2px 2px 0 #666666,inset -3px -3px 0 #0b0b0b;
  transition:transform .1s steps(2)}
.lvl:hover{transform:translate(-3px,-3px);
  box-shadow:0 0 0 4px #ff5a00,6px 6px 0 #0b0b0b,inset 2px 2px 0 #666666}
.lv-tag{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;color:#ff5a00;font-size:.78rem;
  letter-spacing:.1em}
.lv-ico{display:block;width:28px;height:28px;margin:.6rem 0;background:#ff5a00;
  box-shadow:14px 0 0 #fa7e3b,0 14px 0 #ececec}
.lvl h3{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;text-transform:uppercase;
  font-size:1rem;margin-bottom:.3rem}
.lvl p{color:rgba(236,236,236,0.66);font-size:.82rem}
.lv-go{display:block;margin-top:.6rem;color:#ff5a00;font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;
  font-weight:800;font-size:.72rem}

.sprites{max-width:64rem;margin:4.86rem auto;padding:0 clamp(14px,4vw,40px)}
.spr-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1.89rem}
.sprite{margin:0;background:#0f0f0f;padding:6px;
  box-shadow:0 0 0 4px rgba(236,236,236,0.85),inset 2px 2px 0 #666666,inset -2px -2px 0 #0b0b0b}
.sprite img{width:100%;aspect-ratio:1;object-fit:cover;
  image-rendering:pixelated;filter:contrast(1.1) saturate(1.1)}
.sprite figcaption{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;font-size:.6rem;
  color:#ff5a00;text-align:center;margin-top:4px;letter-spacing:.06em}

.dialogue{max-width:46rem;margin:4.86rem auto;padding:0 1rem}
.dbox{position:relative;background:#080808;padding:3.24rem 3.24rem 3.24rem;
  box-shadow:0 0 0 4px #ececec,0 0 0 8px #080808,0 0 0 12px #ff5a00}
.dface{position:absolute;top:3.24rem;left:3.24rem;width:40px;height:40px;
  background:#ff5a00;box-shadow:0 0 0 3px rgba(236,236,236,0.85),20px 0 0 -6px #fa7e3b}
.dbox p{padding-left:60px;font-size:1.05rem;line-height:1.7}
.dname{color:#ff5a00;font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;margin-top:.6rem}
.darrow{position:absolute;bottom:.6rem;right:1rem;color:#ff5a00;
  animation:bl 1s steps(1) infinite}

.menu{list-style:none;margin:1.89rem 0}
.menu li{padding:.5rem 0;font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:700;letter-spacing:.04em}
.menu b{color:#ff5a00;font-weight:800}

.foot{text-align:center;padding:4.86rem 1rem 3.24rem;border-top:4px solid #ff5a00;
  margin-top:4.86rem}
.coin{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-weight:800;color:#ff5a00;font-size:1.2rem;
  letter-spacing:.1em;margin-bottom:1.89rem}
.foot>p:last-child{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-size:.72rem;color:rgba(236,236,236,0.66);
  letter-spacing:.08em}

@media(max-width:820px){
  .lv-grid{grid-template-columns:repeat(2,1fr)}
  .spr-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:480px){.lv-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.blink,.darrow{animation:none}
  *{transition:none!important}}


.xq{box-sizing:border-box;font-family:Georgia, 'Times New Roman', serif;color:#ececec;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#ff5a00;margin-bottom:10px;font-weight:700}

.xq-faq-list{margin-top:18px;border-top:1px solid rgba(236,236,236,0.14)}
.xq-faq-item{border-bottom:1px solid rgba(236,236,236,0.14);padding:4px 0}
.xq-faq-item summary{cursor:pointer;padding:14px 4px;font-weight:700;font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;list-style-position:inside}
.xq-faq-item summary::marker{color:#ff5a00}
.xq-faq-item p{padding:0 4px 16px;color:#7a7a7a;max-width:64ch}


.xq-badges{padding:26px 24px;border-top:1px solid rgba(236,236,236,0.14);border-bottom:1px solid rgba(236,236,236,0.14);background:rgba(236,236,236,0.05)}
.xq-badge-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.xq-badgehead{font-family:Impact, Haettenschweiler, 'Arial Black', sans-serif;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;margin-right:8px}
.xq-badge{border:1.5px solid #ff5a00;color:#ff5a00;border-radius:999px;padding:7px 16px;font-size:.8rem;font-weight:700;letter-spacing:.04em}


.xq-strip{padding-left:0;padding-right:0}
.xq-strip .xq-wrap{padding:0 24px}
.xq-striprail{list-style:none;display:flex;gap:12px;overflow-x:auto;padding:14px 24px;scroll-snap-type:x mandatory}
.xq-striprail li{flex:0 0 min(64vw,300px);scroll-snap-align:start}
.xq-striprail img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0px;display:block}


/* =====================================================
   DESIGN DNA: brutal-ink
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
*{border-radius:0 !important}
h1,h2,h3{font-family:'Arial Black', 'Arial Bold', Arial, sans-serif !important;text-transform:uppercase !important;letter-spacing:-0.01em !important;font-weight:900 !important}
img{filter:grayscale(1) contrast(1.18);border:3px solid #f0f0f0 !important;box-shadow:8px 8px 0 #f0f0f0 !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;border:3px solid #f0f0f0 !important;box-shadow:5px 5px 0 #f0f0f0 !important;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border:3px solid #f0f0f0 !important;box-shadow:8px 8px 0 #f0f0f0 !important}
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:6px solid #f0f0f0;background:none;}
