*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#061221;--nav:#0a1726;--card:#0a111c;--card-2:#0d1727;--card-pro:#0a1530;
  --border:#1e3048;--border-soft:#0f1c2c;--txt:#dde8f5;--txt-sec:#7a9bbf;
  --txt-muted:#4d7196;--txt-dim:#253a52;--accent:#2563eb;--cyan:#0891b2;
  --accent-bg:rgba(37,99,235,0.12);--accent-border:rgba(37,99,235,0.34);
  --green:#4ade80;--amber:#fbbf24;--red:#f87171;
}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--txt);min-height:100vh;-webkit-font-smoothing:antialiased;}
nav{background:rgba(10,23,38,.9);border-bottom:1px solid var(--border);padding:0 28px;display:flex;align-items:center;height:60px;position:sticky;top:0;z-index:50;backdrop-filter:blur(12px);}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;}
.logo-bar{width:6px;height:26px;background:linear-gradient(180deg,var(--accent),var(--cyan));border-radius:3px;flex-shrink:0;}
.logo-text{font-size:16px;font-weight:800;color:var(--txt);letter-spacing:-0.02em;font-family:'Syne',sans-serif;}
.nav-right{margin-left:auto;display:flex;gap:10px;align-items:center;}
.nav-btn{background:transparent;border:1px solid var(--border);border-radius:7px;color:var(--txt-sec);padding:7px 16px;font-size:13px;cursor:pointer;text-decoration:none;font-family:'DM Sans',sans-serif;transition:all .15s;}
.nav-btn:hover{border-color:var(--accent);color:#fff;}
.nav-btn.primary{background:linear-gradient(135deg,var(--accent),#3b82f6);border:none;color:#fff;}
main{max-width:1180px;margin:0 auto;padding:72px 24px 96px;}
.hero{text-align:center;margin-bottom:34px;}
.hero-badge{display:inline-flex;align-items:center;gap:7px;background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:20px;padding:5px 14px;font-size:11px;font-weight:700;color:#38bdf8;letter-spacing:0.07em;text-transform:uppercase;margin-bottom:20px;}
.hero-badge-dot{width:6px;height:6px;border-radius:50%;background:#38bdf8;animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.35;}}
.hero h1{font-size:clamp(34px,5vw,58px);font-weight:800;letter-spacing:-0.03em;margin-bottom:16px;line-height:1.05;font-family:'Syne',sans-serif;}
.hero h1 em{font-style:normal;background:linear-gradient(135deg,#2563eb,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero p{font-size:16px;color:var(--txt-sec);max-width:650px;margin:0 auto;line-height:1.7;}
.billing-toggle{display:inline-flex;gap:4px;margin:22px auto 0;padding:4px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.03);}
.billing-toggle button{border:none;border-radius:999px;background:transparent;color:var(--txt-sec);padding:8px 15px;font:700 12px 'DM Sans',sans-serif;cursor:pointer;}
.billing-toggle button.active{background:linear-gradient(135deg,var(--accent),#3b82f6);color:#fff;}
.billing-toggle span{font-size:10px;color:#bfdbfe;margin-left:4px;}
.billing-status{display:none;max-width:620px;margin:18px auto 0;padding:10px 14px;border-radius:10px;border:1px solid var(--accent-border);background:var(--accent-bg);color:#bfdbfe;font-size:13px;line-height:1.45;}
.billing-status.show{display:block;}
.billing-status.err{border-color:rgba(248,113,113,.45);background:rgba(248,113,113,.1);color:#fecaca;}
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:48px;}
.plan{background:var(--card);border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;min-width:0;}
.plan.featured{border-color:var(--accent);background:var(--card-pro);box-shadow:0 0 0 1px rgba(37,99,235,.12),0 24px 60px rgba(37,99,235,.08);position:relative;border-top-width:3px;}
.plan.coming-soon{background:linear-gradient(180deg,rgba(13,23,39,.95),rgba(8,17,30,.95));border-color:rgba(56,189,248,.22);}
.featured-pill{position:absolute;top:-1px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--accent),var(--cyan));color:#fff;padding:4px 16px;border-radius:0 0 8px 8px;font-size:10px;font-weight:700;letter-spacing:.1em;white-space:nowrap;font-family:'DM Mono',monospace;}
.plan-inner{padding:26px 22px;flex:1;display:flex;flex-direction:column;}
.plan.featured .plan-inner{padding-top:44px;}
.plan-name{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--txt-muted);margin-bottom:12px;font-family:'DM Mono',monospace;}
.plan-price{font-size:43px;font-weight:800;letter-spacing:-.03em;line-height:1;margin-bottom:4px;}
.plan-price sup{font-size:19px;vertical-align:top;margin-top:9px;font-weight:600;}
.plan-price.custom{font-size:34px;letter-spacing:-.02em;}
.plan-period{font-size:12px;color:var(--txt-sec);margin-bottom:8px;font-family:'DM Mono',monospace;}
.plan-tagline{font-size:13px;color:var(--txt-sec);margin-bottom:22px;line-height:1.55;min-height:62px;}
.plan-btn{width:100%;padding:12px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;margin-bottom:22px;text-decoration:none;text-align:center;border:none;display:block;}
.btn-free,.btn-dark{background:transparent;border:1px solid var(--border);color:var(--txt);}
.btn-free:hover,.btn-dark:hover{border-color:var(--accent);color:#fff;}
.btn-pro{background:linear-gradient(135deg,var(--accent),#3b82f6);color:#fff;box-shadow:0 4px 20px rgba(37,99,235,.28);}
.btn-pro:hover{opacity:.92;transform:translateY(-1px);}
.plan-btn.disabled,.plan-btn:disabled{opacity:.58;cursor:not-allowed;transform:none;box-shadow:none;}
.plan-btn.disabled:hover,.plan-btn:disabled:hover{border-color:var(--border);color:var(--txt);}
.coming-soon-pill,.table-pill{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(251,191,36,.35);border-radius:999px;background:rgba(251,191,36,.12);color:#fde68a;font-family:'DM Mono',monospace;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;}
.table-pill{margin-left:6px;vertical-align:middle;}
.fsect{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--txt-dim);margin:16px 0 8px;font-family:'DM Mono',monospace;}
.fsect:first-of-type{margin-top:0;}
.flist{list-style:none;display:flex;flex-direction:column;}
.flist li{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;line-height:1.45;padding:7px 0;border-bottom:1px solid var(--border-soft);color:var(--txt);}
.flist li:last-child{border-bottom:none;}
.fi{flex-shrink:0;width:15px;font-size:12px;text-align:center;margin-top:1px;}
.fi.y{color:var(--green);}
.fi.n{color:var(--txt-dim);}
.fi.p{color:var(--amber);}
.foff{color:var(--txt-dim)!important;}
.flim{color:var(--txt-sec)!important;}
.fnote{font-size:10px;color:var(--txt-muted);margin-left:auto;padding-left:8px;flex-shrink:0;font-family:'DM Mono',monospace;}
.ct-wrap{margin-bottom:56px;}
.ct-title{font-size:24px;font-weight:800;text-align:center;margin-bottom:8px;font-family:'Syne',sans-serif;}
.ct-sub{font-size:14px;color:var(--txt-sec);text-align:center;margin-bottom:28px;}
.table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:14px;}
table.ct{width:100%;min-width:760px;border-collapse:collapse;overflow:hidden;}
table.ct thead tr{background:var(--nav);}
table.ct th{padding:15px 18px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--txt-sec);font-family:'DM Mono',monospace;}
table.ct th:not(:first-child){text-align:center;width:150px;}
table.ct td{padding:12px 18px;font-size:13px;color:var(--txt-sec);border-top:1px solid var(--border-soft);vertical-align:middle;}
table.ct td:not(:first-child){text-align:center;color:var(--txt);}
table.ct tr:nth-child(even) td{background:rgba(255,255,255,.012);}
table.ct tr.sr td{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--txt-dim);padding:8px 18px;background:var(--border-soft);font-family:'DM Mono',monospace;border-top:none;}
.ty{color:var(--green);font-size:14px;}
.tn{color:var(--txt-dim);font-size:16px;}
.tlim{color:var(--amber);font-size:11px;font-family:'DM Mono',monospace;}
.th-pro{color:#38bdf8!important;}
@media(max-width:1050px){.plans{grid-template-columns:repeat(2,minmax(0,1fr));}.plan-tagline{min-height:auto;}}
@media(max-width:640px){
  nav{padding:0 16px;}
  .nav-btn{padding:7px 11px;}
  main{padding:48px 16px 72px;}
  .plans{grid-template-columns:1fr;}
  .plan-inner{padding:24px 20px;}
}
