
*{box-sizing:border-box}
:root{
--bg:#050010;
--bg2:#12002a;
--cyan:#00cfff;
--cyan2:#0099cc;
--purple:#e600ff;
--purple2:#aa00ff;
--text:#e0f0ff;
--muted:#8899cc;
}
html,body{
margin:0;min-height:100%;
font-family:'Courier New',monospace;
background:linear-gradient(160deg,#150030 0%,#0a0018 50%,#050010 100%);
color:var(--text)
}
body:before{
content:"";position:fixed;inset:0;pointer-events:none;
background:
  radial-gradient(1px 1px at 8% 22%,rgba(255,255,255,.6),transparent),
  radial-gradient(1px 1px at 30% 55%,rgba(255,255,255,.4),transparent),
  radial-gradient(1px 1px at 55% 8%,rgba(255,255,255,.5),transparent),
  radial-gradient(1px 1px at 70% 45%,rgba(255,255,255,.3),transparent),
  radial-gradient(1px 1px at 85% 70%,rgba(255,255,255,.5),transparent),
  radial-gradient(2px 2px at 20% 80%,rgba(0,207,255,.5),transparent),
  radial-gradient(2px 2px at 65% 25%,rgba(230,0,255,.4),transparent),
  radial-gradient(circle at 10% 5%,rgba(0,207,255,.14),transparent 18%),
  radial-gradient(circle at 90% 90%,rgba(230,0,255,.10),transparent 20%);
}
body:after{
content:"";position:fixed;inset:0;pointer-events:none;
background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.07) 3px,rgba(0,0,0,.07) 4px);
z-index:9999
}
.topbar{
position:sticky;top:0;
display:grid;grid-template-columns:1fr auto auto;
gap:8px;align-items:center;padding:10px 16px;
background:rgba(5,0,16,.96);backdrop-filter:blur(14px);
border-bottom:1px solid rgba(0,207,255,.3);
box-shadow:0 2px 24px rgba(0,207,255,.12)
}
.logo{
font-weight:900;text-decoration:none;
color:var(--cyan);font-size:15px;
letter-spacing:3px;text-transform:uppercase;
text-shadow:0 0 10px rgba(0,207,255,.9),0 0 22px rgba(0,207,255,.4);
font-family:'Courier New',monospace
}
nav{display:flex;gap:6px}
nav a{text-decoration:none;font-size:12px;color:var(--muted);padding:7px 10px;border-radius:6px;letter-spacing:1px;text-transform:uppercase;transition:color .2s}
nav a:hover{color:var(--cyan)}
nav a.active{background:rgba(0,207,255,.15);color:var(--cyan);font-weight:900;border:1px solid rgba(0,207,255,.4);box-shadow:0 0 10px rgba(0,207,255,.2)}
select{background:#0a0018;color:#fff;border:1px solid rgba(0,207,255,.35);border-radius:6px;padding:7px;font-family:'Courier New',monospace;font-size:12px}
.app{max-width:520px;margin:0 auto;padding:14px 10px 30px}
.hidden{display:none!important}
.screen{min-height:calc(100vh - 70px)}
.intro{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px}
.hero-card{
width:130px;height:130px;border-radius:20px;
display:grid;place-items:center;font-size:68px;
background:linear-gradient(145deg,#1a0035,#080018);
border:2px solid var(--cyan);
box-shadow:0 0 22px rgba(0,207,255,.5),0 0 50px rgba(0,207,255,.15),inset 0 0 20px rgba(230,0,255,.05)
}
h1{
margin:0;font-size:clamp(36px,10vw,60px);line-height:.95;
letter-spacing:3px;text-transform:uppercase;
background:linear-gradient(135deg,var(--cyan),var(--cyan2),var(--purple));
-webkit-background-clip:text;-webkit-text-fill-color:transparent;
background-clip:text;filter:drop-shadow(0 0 10px rgba(0,207,255,.6))
}
p{margin:0;max-width:340px;line-height:1.6;color:var(--muted);font-size:14px}
.primary,.secondary,.spin-btn{border:0;border-radius:8px;font-weight:900;cursor:pointer;font-family:'Courier New',monospace;letter-spacing:2px;text-transform:uppercase}
.primary{padding:16px 38px;background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:#050010;font-size:16px;box-shadow:0 0 22px rgba(0,207,255,.6),0 5px 0 #004466;transition:transform .1s,box-shadow .1s}
.primary:hover{box-shadow:0 0 35px rgba(0,207,255,.85),0 5px 0 #004466}
.primary:active{transform:translateY(4px);box-shadow:0 0 15px rgba(0,207,255,.4),0 1px 0 #004466}
.secondary{width:100%;padding:14px;background:rgba(0,207,255,.06);color:var(--muted);border:1px solid rgba(0,207,255,.22);margin-top:12px;font-size:13px;transition:background .2s}
.secondary:hover{background:rgba(0,207,255,.12)}
.hud{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 14px}
.hud div{background:rgba(0,207,255,.06);border:1px solid rgba(0,207,255,.28);border-radius:10px;padding:10px;text-align:center}
.hud span{display:block;font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase}
.hud b{font-size:26px;color:var(--cyan);text-shadow:0 0 8px rgba(0,207,255,.7)}
.machine{position:relative;padding:14px;border-radius:16px;background:linear-gradient(145deg,#100025,#050010);border:2px solid rgba(0,207,255,.35);overflow:hidden;box-shadow:0 0 30px rgba(0,207,255,.1),inset 0 0 30px rgba(0,0,0,.5)}
.machine:before{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--cyan),var(--purple),var(--cyan),transparent);animation:topline 2.5s linear infinite}
@keyframes topline{0%{opacity:.3}50%{opacity:1}100%{opacity:.3}}
.glow{position:absolute;inset:0;background:radial-gradient(circle,rgba(0,207,255,.08),transparent 65%)}
.reels{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;z-index:1}
.reel{height:120px;border-radius:12px;background:linear-gradient(180deg,#1a0035,#080018);border:1px solid rgba(0,207,255,.4);display:grid;place-items:center;font-size:58px;color:#fff;box-shadow:inset 0 -8px 20px rgba(0,0,0,.4),0 0 12px rgba(0,207,255,.12)}
.message{text-align:center;padding:16px 4px;min-height:46px;color:var(--cyan);font-size:14px;letter-spacing:1px;text-shadow:0 0 8px rgba(0,207,255,.6)}
.spin-btn{width:100%;height:68px;font-size:26px;background:linear-gradient(135deg,var(--purple),var(--purple2));color:#fff;box-shadow:0 6px 0 #5500aa,0 0 24px rgba(230,0,255,.5);transition:transform .1s,box-shadow .1s}
.spin-btn:hover{box-shadow:0 6px 0 #5500aa,0 0 36px rgba(230,0,255,.75)}
.spin-btn:active{transform:translateY(5px);box-shadow:0 1px 0 #5500aa,0 0 15px rgba(230,0,255,.3)}
.page{max-width:760px;margin:0 auto;padding:30px 18px 70px}
.box{background:rgba(0,207,255,.04);border:1px solid rgba(0,207,255,.22);border-radius:14px;padding:22px;margin:16px 0}
.box h2{color:var(--cyan);text-shadow:0 0 8px rgba(0,207,255,.5);letter-spacing:2px;text-transform:uppercase}
.box p,.box li{color:#a0c8e8;line-height:1.8}
.footer{text-align:center;padding:24px;color:var(--muted);font-size:12px;letter-spacing:1px}
@media(max-width:380px){.topbar{grid-template-columns:1fr auto}.logo{grid-column:1/-1;text-align:center}.reel{height:96px;font-size:46px}}
