:root{
  --bg:#0f1220;
  --card:#161a2e;
  --text:#e6eaf5;
  --muted:#9aa3b2;
  --brand:#4f7cff;
  --brand-2:#6ee7ff;
  --accent:#18b26f;
  --danger:#ff5f5f;
  --border:#222742;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Inter",-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  background:linear-gradient(180deg,#0b0e1a 0%, var(--bg) 100%);
  color:var(--text);
}
a{color:var(--brand); text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px; margin:0 auto; padding:0 20px}

/* Header */
.site-header{
  position:sticky; top:0; backdrop-filter:saturate(180%) blur(6px);
  background:rgba(15,18,32,0.7); border-bottom:1px solid var(--border); z-index:10;
}
.nav{display:flex; align-items:center; justify-content:space-between; height:64px}
.brand{font-weight:700; color:var(--text)}
.brand .logo{margin-right:.5rem}
.menu a{margin-left:18px; color:var(--text)}
.menu a[aria-current="page"]{color:var(--brand)}
.menu a:hover{color:var(--brand-2)}

/* Hero */
.hero{padding:64px 0 24px}
.hero-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:32px}
.hero-copy h1{font-size:2.2rem; margin:0 0 .5rem}
.lead{color:var(--muted); font-size:1.05rem}
.cta{margin-top:18px}
.btn{
  display:inline-block; padding:12px 18px; border-radius:10px; font-weight:600; border:1px solid var(--border);
  transition:.15s transform ease, .15s background-color ease;
}
.btn.primary{background:var(--brand); color:white; border-color:transparent}
.btn.ghost{background:transparent; color:var(--text)}
.btn:hover{transform:translateY(-1px)}
.badge{display:inline-block; background:var(--card); border:1px solid var(--border); padding:6px 10px; margin-right:8px; border-radius:20px; color:var(--muted)}

.hero-art .mockup{border:1px solid var(--border); background:var(--card); border-radius:16px; padding:18px}
.screen{display:grid; grid-template-columns:1fr 60px 1fr; gap:12px; align-items:center}
.receipt,.list{
  background:#0c1020; border:1px solid var(--border); border-radius:12px; padding:10px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.03);
}
.receipt .line, .list .item{display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px dashed #2a2f50}
.receipt .line:last-child, .list .item:last-child{border-bottom:none}
.receipt .total{color:var(--muted)}
.arrow{color:var(--brand); text-align:center; font-size:1.6rem}
.list .cat{display:block; color:var(--muted)}
.caption{display:block; color:var(--muted); margin-top:8px}

/* Sections */
.section{padding:56px 0}
.section.alt{background:linear-gradient(180deg,#0f1220 0%, #121632 100%)}
.grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.card{background:var(--card); border:1px solid var(--border); padding:18px; border-radius:14px}
.two-col{display:grid; grid-template-columns:1.1fr .9fr; gap:24px}
.code{background:#0b0e1e; border:1px solid var(--border); border-radius:14px; padding:12px; overflow:auto}
.steps{margin:0; padding-left:18px}
.note{color:var(--muted)}

/* FAQ */
details.faq{background:var(--card); border:1px solid var(--border); margin-bottom:12px; border-radius:10px; padding:10px}
details.faq summary{cursor:pointer; font-weight:600}
details.faq[open] .faq-body{margin-top:8px; color:var(--muted)}

/* Download */
.center{text-align:center}
.stores{display:flex; gap:12px; justify-content:center; margin:12px 0}
.store{display:inline-block; padding:10px 14px; border-radius:10px; background:var(--card); border:1px solid var(--border); color:var(--text)}
.store.disabled{opacity:.6; cursor:not-allowed}
.waitlist{display:flex; gap:10px; justify-content:center; margin-top:8px}
.waitlist input{min-width:260px; padding:10px 12px; border-radius:10px; border:1px solid var(--border); background:#0b0e1e; color:var(--text)}
.waitlist .form-msg{min-height:24px; color:var(--muted)}

/* Footer */
.site-footer{border-top:1px solid var(--border); padding:24px 0}
.footer-grid{display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:18px}
.small{font-size:.9rem; color:var(--muted)}
.links a{display:inline-block; margin-right:14px}

/* Responsive */
@media (max-width: 900px){
  .hero-grid, .two-col, .footer-grid{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .waitlist{flex-direction:column}
  .waitlist input{min-width:0; width:100%}
}