:root{
  --bg-void:#05070D;
  --sun-orange:#FF6B35;
  --tech-cyan:#3DDBFF;
  --void-purple:#7B2FFF;
  --plasma-pink:#FF3DE0;
  --ore-gold:#C9A84C;
  --ui-line: rgba(61,219,255,0.35);
  --danger:#FF3B3B;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:var(--bg-void);color:#EAF6FF;
  font-family:'Consolas','JetBrains Mono',ui-monospace,'Space Grotesk',system-ui,sans-serif;
  scroll-behavior:smooth;}
a{color:var(--tech-cyan);}
.starfield{position:fixed;inset:0;z-index:-1;
  background-image:
    radial-gradient(2px 2px at 10% 20%, rgba(234,246,255,0.9), transparent),
    radial-gradient(1.5px 1.5px at 80% 10%, rgba(234,246,255,0.7), transparent),
    radial-gradient(1.5px 1.5px at 60% 70%, rgba(234,246,255,0.6), transparent),
    radial-gradient(2px 2px at 30% 80%, rgba(234,246,255,0.8), transparent),
    radial-gradient(1px 1px at 90% 50%, rgba(234,246,255,0.5), transparent),
    radial-gradient(1.5px 1.5px at 45% 35%, rgba(234,246,255,0.7), transparent),
    radial-gradient(1px 1px at 15% 60%, rgba(234,246,255,0.5), transparent);
  background-repeat:repeat; background-size:600px 600px;}

/* ---- Nav ---- */
.nav{position:sticky; top:0; z-index:20; display:flex; align-items:center; justify-content:space-between;
  padding:14px 5%; background:rgba(5,7,13,0.75); backdrop-filter:blur(6px); border-bottom:1px solid var(--ui-line);}
.nav .brand{font-weight:700; letter-spacing:2px; color:var(--tech-cyan); text-decoration:none; font-size:14px;
  text-shadow:0 0 8px rgba(61,219,255,0.6);}
.nav .links{display:flex; gap:22px; font-size:12px; letter-spacing:1px;}
.nav .links a{text-decoration:none; opacity:.85;}
.nav .links a:hover{opacity:1; text-shadow:0 0 6px var(--tech-cyan);}

/* ---- Hero ---- */
.hero{position:relative; padding:40px 6% 50px; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:30px;}
.hero-banner{width:100%; max-width:1100px; height:auto; border-radius:14px;
  border:1px solid var(--ui-line); box-shadow:0 0 50px rgba(61,219,255,0.25), 0 0 90px rgba(123,47,255,0.15);
  display:block;}
.visually-hidden{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0,0,0,0); white-space:nowrap; border:0;}
.hero-copy{position:relative; z-index:2; max-width:640px; text-align:center;}
.hero p.lede{font-size:15px; line-height:1.8; opacity:.85; margin-bottom:28px;}
.cta-row{display:flex; gap:14px; flex-wrap:wrap; justify-content:center;}
.btn{display:inline-block; padding:13px 26px; border-radius:6px; text-decoration:none; font-size:13px;
  letter-spacing:2px; border:1.5px solid var(--tech-cyan); color:var(--tech-cyan); transition:all .2s;}
.btn:hover{background:rgba(61,219,255,0.15); box-shadow:0 0 16px rgba(61,219,255,0.4);}
.btn.ghost{border-color:var(--void-purple); color:#C9A8FF;}
.btn.ghost:hover{background:rgba(123,47,255,0.15); box-shadow:0 0 16px rgba(123,47,255,0.4);}

/* ---- Sections ---- */
section{padding:64px 6%; max-width:1100px; margin:0 auto;}
h2.section-title{font-size:22px; letter-spacing:2px; color:var(--tech-cyan); text-shadow:0 0 10px rgba(61,219,255,0.5);
  margin-bottom:28px; text-align:center;}
.features-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px;}
.feature-card{border:1px solid var(--ui-line); border-radius:10px; padding:20px; background:rgba(20,24,38,0.4);}
.feature-card .icon{font-size:22px; margin-bottom:10px;}
.feature-card h3{font-size:14px; letter-spacing:1px; margin:0 0 8px; color:#EAF6FF;}
.feature-card p{font-size:12.5px; line-height:1.7; opacity:.75; margin:0;}

.tech-tree{display:flex; flex-direction:column; gap:10px; max-width:720px; margin:0 auto;}
.tech-row{display:flex; gap:16px; align-items:baseline; border-left:2px solid var(--ore-gold); padding:8px 0 8px 16px;}
.tech-row .lv{color:var(--ore-gold); font-weight:700; font-size:13px; min-width:52px;}
.tech-row .desc{font-size:13px; opacity:.85;}

.wallet-box{border:1px solid var(--ui-line); border-radius:10px; padding:26px 28px; background:rgba(20,24,38,0.4);
  max-width:760px; margin:0 auto; font-size:13.5px; line-height:1.9; opacity:.9;}
.wallet-box strong{color:var(--tech-cyan);}

.controls-list{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:14px; max-width:900px; margin:0 auto;}
.controls-list div{border:1px solid var(--ui-line); border-radius:8px; padding:14px 16px; font-size:12.5px;}
.controls-list b{color:var(--plasma-pink);}

.disclaimer{max-width:760px; margin:40px auto 0; font-size:11.5px; opacity:.55; line-height:1.8; text-align:center;}

audio.theme-player{display:none;}
.audio-toggle{position:fixed; right:18px; bottom:18px; z-index:30; display:flex; align-items:center; gap:8px;
  padding:10px 16px; border-radius:30px; border:1.5px solid var(--void-purple); background:rgba(10,8,20,0.75);
  color:#C9A8FF; font-size:11px; letter-spacing:1px; cursor:pointer; backdrop-filter:blur(4px);}
.audio-toggle:hover{box-shadow:0 0 16px rgba(123,47,255,0.5);}

footer{border-top:1px solid var(--ui-line); padding:34px 6% 50px; text-align:center; font-size:11.5px; opacity:.7;}
footer .foot-links{display:flex; gap:22px; justify-content:center; margin-bottom:14px; flex-wrap:wrap;}
footer .foot-links a{text-decoration:none; letter-spacing:1px;}
footer .foot-links a:hover{text-shadow:0 0 6px var(--tech-cyan);}

/* ---- Legal pages ---- */
.legal-wrap{max-width:820px; margin:0 auto; padding:60px 6% 80px;}
.legal-wrap .back-link{display:inline-block; margin-bottom:26px; font-size:12px; letter-spacing:1px; text-decoration:none;}
.legal-wrap h1{font-size:26px; color:var(--tech-cyan); text-shadow:0 0 14px rgba(61,219,255,0.5); letter-spacing:1px;
  margin-bottom:4px;}
.legal-wrap .meta{font-size:12px; opacity:.6; margin-bottom:36px; line-height:1.8;}
.legal-wrap h2{font-size:16px; color:var(--ore-gold); margin-top:36px; margin-bottom:12px; letter-spacing:.5px;}
.legal-wrap p, .legal-wrap li{font-size:13.5px; line-height:1.9; opacity:.88;}
.legal-wrap ul{padding-left:22px;}
.legal-wrap strong{color:#EAF6FF;}
