:root{
  --bg:#fafafa; --fg:#16181d; --dim:#6b7280; --accent:#4056f0;
  --border:#e3e5ea; --radius:.65rem;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#101216; --fg:#e8e9ec; --dim:#98a0ac; --accent:#7486ff;
    --border:#272c34;
  }
}
*{box-sizing:border-box}
html{color-scheme:light dark}
body{
  margin:0; background:var(--bg); color:var(--fg);
  font:400 1rem/1.5 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
main{
  max-width:440px; margin:0 auto; padding:clamp(2.5rem,8vh,5rem) 1.25rem 2rem;
  min-height:100svh; display:flex; flex-direction:column; align-items:center;
}
.hero{margin-bottom:2.2rem; text-align:center}
.logo{font-size:clamp(3rem,10vw,4rem); font-weight:800; letter-spacing:-.045em; margin:0; line-height:1}
.dot{color:var(--accent)}
.tagline{color:var(--dim); font-size:1.05rem; margin:.5rem 0 0}

.coming-soon{
  display:flex; flex-direction:column; align-items:center; gap:1.5rem;
  text-align:center; flex:1;
}

.icon-row{display:flex; gap:1.2rem; font-size:2rem; opacity:.35}
.crypto-icon{display:inline-block}

.message{color:var(--dim); font-size:1.05rem; margin:0; line-height:1.6}

.status{
  display:flex; align-items:center; gap:.55rem;
  font-size:.85rem; color:var(--dim); text-transform:uppercase; letter-spacing:.08em;
}
.pulse{
  width:8px; height:8px; border-radius:50%; background:var(--accent);
  animation:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite;
}
@keyframes pulse{
  0%,100%{opacity:1; transform:scale(1)}
  50%{opacity:.35; transform:scale(.85)}
}

footer{margin-top:auto; padding-top:3rem; font-size:.8rem; color:var(--dim); text-align:center}