:root{
  --bg:#0d1117; --surface:#161b22; --surface-2:#1b212b; --border:#30363d;
  --text:#c9d1d9; --muted:#8b949e; --accent:#b8e338; --accent-dim:#7a9624; --ink:#0d1117;
  --max:1080px;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:Consolas,ui-monospace,"SF Mono",Menlo,"Liberation Mono",monospace;
  line-height:1.6; -webkit-font-smoothing:antialiased;
}
a{color:var(--accent); text-decoration:none;}
a:hover{text-decoration:underline;}
.wrap{max-width:var(--max); margin:0 auto; padding:0 24px;}

.site-header{position:sticky; top:0; z-index:20; background:rgba(13,17,23,.85); backdrop-filter:blur(8px); border-bottom:1px solid var(--border);}
.site-header .wrap{display:flex; align-items:center; justify-content:space-between; height:64px;}
.brand{display:flex; align-items:center; font-family:var(--sans); font-weight:700; font-size:18px; letter-spacing:-.02em; color:var(--text);}
.brand:hover{text-decoration:none;}
.brand img{width:28px; height:28px; border-radius:6px; margin-right:10px;}
.brand .accent{color:var(--accent);}
.nav{display:flex; align-items:center; gap:24px; font-family:var(--sans);}
.nav a{color:var(--muted); font-size:14px;}
.nav a:hover{color:var(--text); text-decoration:none;}
.nav .btn, .nav .btn:hover{color:#000;}
.btn{display:inline-block; background:var(--accent); color:#000; font-weight:700; padding:9px 16px; border-radius:8px; font-size:14px;}
.btn:hover{text-decoration:none; filter:brightness(1.05);}
.btn.lg{padding:13px 26px; font-size:16px;}
.btn.ghost{background:transparent; color:var(--text); border:1px solid var(--border);}

.lang{display:inline-flex; gap:6px; align-items:center;}
.lang button{width:26px; height:18px; padding:0; border:1px solid var(--border); border-radius:3px; background:transparent; cursor:pointer; overflow:hidden; opacity:.5; display:inline-flex; align-items:center; justify-content:center; transition:opacity .15s, border-color .15s;}
.lang button:hover{opacity:1; border-color:var(--muted);}
.lang button[aria-pressed="true"]{opacity:1; border-color:var(--accent);}
.lang button svg{display:block; width:100%; height:100%;}

.hero{text-align:center; padding:80px 0 56px;}
.hero img.logo{width:104px; height:104px; filter:drop-shadow(0 0 24px rgba(184,227,56,.18));}
.hero h1{font-family:var(--sans); font-size:clamp(40px,7vw,68px); font-weight:700; letter-spacing:-.03em; line-height:1.05; margin:24px 0 0;}
.hero h1 .accent{color:var(--accent);}
.hero .tagline{font-family:var(--sans); font-size:clamp(18px,2.4vw,22px); color:var(--muted); max-width:600px; margin:22px auto 0;}
.hero .banner{font-family:var(--sans); margin:18px auto 0; max-width:520px; font-style:italic; color:var(--text); font-size:clamp(15px,2vw,17px);}
.hero .cta{margin-top:32px; display:flex; gap:12px; justify-content:center; flex-wrap:wrap;}
.hero .note{margin-top:16px; font-size:13px; color:var(--muted);}

.section{padding:56px 0; border-top:1px solid var(--border);}
.section h2{font-size:clamp(26px,4vw,34px); font-weight:800; letter-spacing:-.02em; text-align:center; margin:0 0 8px;}
.section .sub{text-align:center; color:var(--muted); max-width:560px; margin:0 auto 40px;}

.features{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:20px;}
.feature{background:var(--surface); border:1px solid var(--border); border-radius:12px; padding:24px;}
.feature h3{margin:0 0 8px; font-size:17px; color:var(--text);}
.feature p{margin:0; color:var(--muted); font-size:14.5px;}
.feature .ic{font-size:22px; margin-bottom:12px;}

.shots{display:grid; grid-template-columns:repeat(auto-fit,minmax(420px,1fr)); gap:16px;}
.shots figure{margin:0; background:var(--surface); border:1px solid var(--border); border-radius:12px; overflow:hidden;}
.shots img{display:block; width:100%; height:auto; background:var(--surface-2);}
.shots figcaption{padding:12px 16px; font-size:13px; color:var(--muted);}
.shot-feature{margin:0 0 16px; background:var(--surface); border:1px solid var(--border); border-radius:12px; overflow:hidden;}
.shot-feature img{display:block; width:100%; height:auto; background:var(--surface-2);}
.shot-feature figcaption{padding:12px 16px; font-size:13px; color:var(--muted);}

.timeline{padding:32px 0;}
.block{padding:44px 0; border-top:1px solid var(--border);}
.block:first-child{border-top:0; padding-top:8px;}
.block figure{margin:0 0 18px; border:1px solid var(--border); border-radius:12px; overflow:hidden; background:var(--surface);}
.block figure img{display:block; width:100%; height:auto;}
.block h3{font-size:clamp(20px,3vw,26px); margin:0 0 8px; letter-spacing:-.01em; color:var(--text);}
.block p{margin:14px auto 0; color:var(--muted); max-width:560px; font-size:13px; text-align:center;}
.reveal{opacity:0; transform:translateY(24px); transition:opacity .7s ease-out, transform .7s ease-out;}
.reveal.in{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1; transform:none; transition:none;}}

.integrations{padding:36px 0 56px; border-top:1px solid var(--border); text-align:center;}
.integrations-label{margin:0 0 18px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted);}
.exchange-scroller{display:flex; gap:24px; justify-content:center; align-items:center; flex-wrap:wrap; overflow-x:auto;}
.exchange-scroller img{height:48px; width:auto; display:block;}

.coming-soon-inline{text-align:center; margin:32px 0 0;}
.coming-soon-inline span{font-family:var(--sans); font-size:13px; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); font-weight:700;}

.price-card.disabled{filter:grayscale(.75); opacity:.85;}
.btn.disabled{background:var(--border); color:var(--muted); cursor:not-allowed; pointer-events:none;}
.coming-badge{display:block; margin-top:14px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); font-weight:700;}

.price-card{max-width:420px; margin:0 auto; background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:32px; text-align:center;}
.price-card .plan{font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--accent); font-weight:700;}
.price-card .amount{font-size:48px; font-weight:800; margin:10px 0 0; letter-spacing:-.02em;}
.price-card .amount span{font-size:16px; color:var(--muted); font-weight:500;}
.price-card ul{list-style:none; padding:0; margin:24px 0; text-align:left;}
.price-card li{padding:8px 0 8px 26px; position:relative; color:var(--text); font-size:14.5px;}
.price-card li::before{content:"\2713"; color:var(--accent); position:absolute; left:0; font-weight:700;}

.legal{max-width:760px; margin:0 auto; padding:56px 0;}
.legal h1{font-size:34px; letter-spacing:-.02em; margin:0 0 8px;}
.legal .updated{color:var(--muted); font-size:14px; margin:0 0 32px;}
.legal h2{font-size:20px; margin:36px 0 10px; color:var(--text);}
.legal p,.legal li{color:var(--text); font-size:15px;}
.legal ul{padding-left:20px;}
.legal a{text-decoration:underline;}
.callout{background:var(--surface); border:1px solid var(--border); border-left:3px solid var(--accent); border-radius:8px; padding:16px 18px; margin:20px 0; font-size:14.5px;}

.site-footer{border-top:1px solid var(--border); padding:40px 0; color:var(--muted); font-size:14px;}
.site-footer .wrap{display:flex; flex-wrap:wrap; gap:16px 28px; align-items:center; justify-content:space-between;}
.site-footer nav{display:flex; flex-wrap:wrap; gap:18px;}
.site-footer a{color:var(--muted);}
.site-footer a:hover{color:var(--text);}

@media (max-width:640px){
  .nav{gap:14px;} .nav a.hide-sm{display:none;}
  .hero{padding:56px 0 40px;}
}

.about{max-width:620px; margin:0 auto; padding:64px 0; text-align:center;}
.about-photo{width:148px; height:148px; border-radius:50%; object-fit:cover; border:2px solid var(--border);}
.about h1{font-family:var(--sans); font-size:32px; letter-spacing:-.02em; margin:24px 0 16px;}
.about-body p{color:var(--text); font-size:15.5px; margin:0 auto 14px; max-width:520px;}
.about-body a{text-decoration:underline;}

.price-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:20px; align-items:stretch; max-width:880px; margin:0 auto;}
.price-grid .price-card{max-width:none; margin:0; width:100%;}

.price-card.beta-card{display:flex; flex-direction:column;}
.beta-card h2{font-size:clamp(24px,3.4vw,30px); font-weight:800; letter-spacing:-.02em; margin:10px 0 0;}
.ea-form{margin-top:24px;}
.beta-mid{flex:1; display:flex; align-items:center; justify-content:center; padding:18px 0;}
.beta-logo{width:84px; height:84px; border-radius:50%; box-shadow:0 0 24px rgba(184,227,56,.15);}
.ea-input{display:block; width:100%; background:var(--bg); border:1px solid var(--border); border-radius:8px; color:var(--text); font-family:inherit; font-size:15px; padding:12px 14px; margin:0 0 10px;}
.ea-input:focus{outline:none; border-color:var(--accent);}
.ea-download{display:flex; width:100%; align-items:center; justify-content:center; gap:10px; background:transparent; color:var(--text); border:2px dashed var(--accent-dim); border-radius:8px; padding:11px 18px; font-family:var(--sans); font-weight:700; font-size:15px; cursor:pointer; transition:border-color .15s, background .15s;}
.ea-download:hover{border-color:var(--accent); background:rgba(184,227,56,.06);}
.ea-download img{display:block;}
.ea-soon{display:block; margin-top:14px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); font-weight:700;}
.ea-cta{margin-top:24px;}
.ea-download.disabled{border-color:var(--border); color:var(--muted); cursor:not-allowed; opacity:.75;}
.ea-download.disabled:hover{border-color:var(--border); background:transparent;}
.ea-download.disabled img{filter:grayscale(1); opacity:.55;}

.modal-overlay{position:fixed; inset:0; z-index:50; display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(13,17,23,.72); backdrop-filter:blur(4px);}
.modal-overlay[hidden]{display:none;}
.modal-box{max-width:420px; width:100%; background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:28px; text-align:center;}
.modal-box h3{font-family:var(--sans); font-size:20px; margin:0 0 10px;}
.modal-box p{color:var(--muted); font-size:14.5px; margin:0 0 20px; line-height:1.55;}

.notfound{max-width:560px; margin:0 auto; padding:90px 0; text-align:center;}
.notfound .nf-code{font-family:var(--sans); font-size:clamp(64px,12vw,120px); font-weight:800; line-height:1; color:var(--accent); margin:0; letter-spacing:-.04em;}
.notfound h1{font-family:var(--sans); font-size:28px; margin:8px 0 10px;}
.notfound .nf-sub{color:var(--muted); margin:0 0 28px;}
