:root{
  --bg:#07101f;
  --panel:#0d1a2c;
  --panel-2:#132640;
  --text:#f7f8fb;
  --muted:#9eb0c8;
  --blue:#19bfff;
  --gold:#ffc928;
  --border:rgba(255,255,255,.10);
  --shadow:0 12px 30px rgba(0,0,0,.35);
  --radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{background:
  radial-gradient(circle at 15% 5%, rgba(25,191,255,.12), transparent 35%),
  radial-gradient(circle at 85% 15%, rgba(255,201,40,.10), transparent 30%),
  var(--bg);
}
button,a,input,textarea,select{font:inherit}
button,a{touch-action:manipulation}
a{color:inherit;text-decoration:none}
#app-shell{min-height:100vh;max-width:760px;margin:0 auto;padding-bottom:92px}
#topbar{
  position:sticky;top:0;z-index:20;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:68px;padding:10px 14px;
  background:rgba(7,16,31,.92);backdrop-filter:blur(18px);
  border-bottom:1px solid var(--border)
}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand img{width:50px;height:50px;object-fit:contain;border-radius:12px}
.brand-text{min-width:0}
.brand-title{font-size:1rem;font-weight:900;letter-spacing:.04em;white-space:nowrap}
.brand-subtitle{color:var(--muted);font-size:.74rem;white-space:nowrap}
.install-btn,.primary-btn,.secondary-btn,.danger-btn,.ghost-btn{
  border:0;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer
}
.install-btn,.primary-btn{background:linear-gradient(135deg,var(--gold),#ff9f1c);color:#111}
.secondary-btn{background:linear-gradient(135deg,#0ea5e9,var(--blue));color:#03101b}
.ghost-btn{background:rgba(255,255,255,.06);color:var(--text);border:1px solid var(--border)}
.danger-btn{background:#7f1d1d;color:#fff}
#page-content{padding:18px 14px 36px;outline:none}
.hero{
  background:linear-gradient(145deg,rgba(19,38,64,.98),rgba(9,20,36,.98));
  border:1px solid rgba(25,191,255,.25);border-radius:24px;padding:18px;
  box-shadow:var(--shadow);overflow:hidden
}
.hero-logo{display:block;width:min(100%,420px);max-height:260px;object-fit:contain;margin:0 auto 12px}
.eyebrow{color:var(--gold);font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
h1,h2,h3{margin:.3em 0 .5em}
h1{font-size:clamp(1.8rem,8vw,2.7rem);line-height:1}
h2{font-size:1.35rem}
p{color:var(--muted);line-height:1.55}
.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.card{
  display:block;background:rgba(13,26,44,.94);border:1px solid var(--border);
  border-radius:var(--radius);padding:16px;box-shadow:0 8px 20px rgba(0,0,0,.18)
}
.card strong{display:block;font-size:1rem}
.card small{display:block;color:var(--muted);margin-top:5px;line-height:1.35}
.card-icon{font-size:1.6rem;margin-bottom:10px}
.section{margin-top:22px}
.notice{
  border-left:4px solid var(--gold);background:rgba(255,201,40,.08);
  border-radius:12px;padding:12px 14px;margin:14px 0
}
.coming-soon{text-align:center;padding:42px 18px}
.coming-soon .badge{
  display:inline-block;background:rgba(255,201,40,.12);border:1px solid rgba(255,201,40,.35);
  color:var(--gold);padding:7px 12px;border-radius:999px;font-weight:900;font-size:.8rem;letter-spacing:.08em
}
.info-list{display:grid;gap:10px}
.info-row{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid var(--border)}
.info-row span:first-child{color:var(--muted)}
#navbar{
  position:fixed;z-index:25;left:50%;bottom:0;transform:translateX(-50%);
  width:min(100%,760px);display:grid;grid-template-columns:repeat(5,1fr);
  padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));
  background:rgba(7,16,31,.96);backdrop-filter:blur(18px);border-top:1px solid var(--border)
}
.nav-item{
  min-height:56px;background:transparent;border:0;color:var(--muted);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  border-radius:12px;font-size:.7rem;font-weight:800;cursor:pointer
}
.nav-item .nav-icon{font-size:1.25rem}
.nav-item.active{color:var(--gold);background:transparent}
.menu-sheet{position:fixed;inset:0;z-index:50}
.menu-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(0,0,0,.62)}
.menu-panel{
  position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,760px);
  background:#0b1728;border:1px solid var(--border);border-radius:24px 24px 0 0;
  padding:16px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -20px 45px rgba(0,0,0,.4)
}
.menu-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.icon-button{background:rgba(255,255,255,.07);border:1px solid var(--border);color:#fff;border-radius:10px;width:40px;height:40px}
.menu-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.menu-link{background:#132640;border:1px solid var(--border);color:#fff;border-radius:14px;padding:14px;text-align:left;font-weight:800}
.empty-state{padding:24px;text-align:center;color:var(--muted)}
@media (min-width:700px){
  .card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}