:root{
  --bg0:#070a12;
  --bg1:#0b1020;
  --card:#0f1630;
  --card2:#0b1228;
  --text:#e7ecff;
  --muted:#a9b5da;
  --muted2:#7e8ab4;
  --line:rgba(255,255,255,.10);
  --line2:rgba(255,255,255,.06);
  --brand:#53b8ff;
  --brand2:#7a5cff;
  --shadow: 0 18px 50px rgba(0,0,0,.45);
  --r12:12px;
  --r16:16px;
  --r20:20px;
  --max:1160px;
  --pad:22px;
  --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans";
}
@media (prefers-color-scheme: light){
  :root{
    --bg0:#f6f8ff;
    --bg1:#ffffff;
    --card:#ffffff;
    --card2:#f5f7ff;
    --text:#0a1024;
    --muted:#3b476c;
    --muted2:#6471a3;
    --line:rgba(0,0,0,.10);
    --line2:rgba(0,0,0,.06);
    --shadow: 0 18px 60px rgba(18,24,40,.12);
  }
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--text);
  background:
    radial-gradient(1200px 600px at 10% -20%, rgba(83,184,255,.22), transparent 60%),
    radial-gradient(1000px 700px at 90% -10%, rgba(122,92,255,.18), transparent 60%),
    linear-gradient(180deg, var(--bg0), var(--bg1));
  line-height:1.55;
  overflow-x:hidden;
}
a{color:inherit}
.container{
  width:min(var(--max), calc(100% - (var(--pad) * 2)));
  margin:0 auto;
}
.nav{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter: blur(10px);
  background: color-mix(in oklab, var(--bg1) 75%, transparent);
  border-bottom:1px solid var(--line2);
}
.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
  gap:12px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
}
.logo{
  width:34px;height:34px;
  border-radius:10px;
  box-shadow: 0 8px 30px rgba(0,0,0,.25);
  background:
    radial-gradient(18px 18px at 30% 25%, rgba(255,255,255,.28), transparent 55%),
    linear-gradient(135deg, rgba(83,184,255,.95), rgba(122,92,255,.92));
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  flex: 0 0 auto;
}
.logo span{font-weight:800; letter-spacing:.4px; font-size:14px; color:white}
.brand-title{display:flex; flex-direction:column; gap:2px; line-height:1.1}
.brand-title b{font-size:14px}
.brand-title small{font-size:12px; color:var(--muted2)}
.nav-links{display:flex; gap:14px; flex-wrap:wrap; justify-content:flex-end}
.nav-links a{
  text-decoration:none;
  color:var(--muted);
  font-size:13px;
  padding:7px 10px;
  border-radius:10px;
  border:1px solid transparent;
}
.nav-links a:hover{color:var(--text); border-color:var(--line); background: color-mix(in oklab, var(--card) 60%, transparent)}
.btn{
  appearance:none;
  border:none;
  cursor:pointer;
  border-radius:12px;
  padding:10px 14px;
  font-weight:650;
  font-size:13px;
  color:var(--text);
  background: color-mix(in oklab, var(--card) 70%, transparent);
  border:1px solid var(--line);
  transition: .18s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
  user-select:none;
  white-space:nowrap;
}
.btn:hover{transform: translateY(-1px); box-shadow: var(--shadow)}
.btn.primary{
  background: linear-gradient(135deg, rgba(83,184,255,.95), rgba(122,92,255,.92));
  border-color: rgba(255,255,255,.18);
  color: white;
}
.btn.ghost{background:transparent;border-color:var(--line);color:var(--text)}
.nav-cta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.hero{padding:56px 0 26px}
.hero-grid{display:grid; grid-template-columns: 1.2fr .8fr; gap:18px; align-items:start}
@media (max-width: 980px){.hero-grid{grid-template-columns:1fr}}
h1{margin:10px 0 10px; font-size: clamp(28px, 3.4vw, 46px); letter-spacing:-.02em; line-height:1.08}
.lead{margin:0 0 14px; color:var(--muted); font-size:16px; max-width:68ch}
.card{
  border:1px solid var(--line);
  border-radius:var(--r20);
  background: color-mix(in oklab, var(--card) 78%, transparent);
  box-shadow: var(--shadow);
  padding:16px;
}
.grid3{display:grid; grid-template-columns:repeat(3,1fr); gap:14px}
@media (max-width: 980px){.grid3{grid-template-columns:1fr}}
.grid2{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
@media (max-width: 980px){.grid2{grid-template-columns:1fr}}
.muted{color:var(--muted2); font-size:13px}
.tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  border:1px solid var(--line2);
  padding:7px 10px;
  border-radius:999px;
  color:var(--muted2);
  background: color-mix(in oklab, var(--card2) 65%, transparent);
  margin-bottom:10px;
}
.tag .k{width:8px;height:8px;border-radius:99px;background: color-mix(in oklab, var(--brand) 85%, var(--brand2))}
.list{margin:10px 0 0; padding-left:18px; color:var(--muted); font-size:13.5px}
.list li{margin:6px 0}
.pricing{display:grid; grid-template-columns:repeat(3,1fr); gap:14px}
@media (max-width: 980px){.pricing{grid-template-columns:1fr}}
.plan{border:1px solid var(--line); border-radius:18px; background: color-mix(in oklab, var(--card) 82%, transparent); padding:16px; box-shadow: var(--shadow); display:flex; flex-direction:column; gap:12px; position:relative; overflow:hidden}
.plan::before{content:\"\"; position:absolute; inset:-1px; opacity:.7; background: radial-gradient(520px 260px at 15% 0%, rgba(83,184,255,.18), transparent 55%), radial-gradient(520px 260px at 90% 15%, rgba(122,92,255,.14), transparent 55%); pointer-events:none}
.plan>*{position:relative}
.plan .top{display:flex; justify-content:space-between; gap:12px; align-items:flex-start}
.plan .name{font-weight:900; font-size:16px}
.price{font-size:28px; font-weight:900; letter-spacing:-.02em}
.price small{font-size:13px; font-weight:650; color:var(--muted2); margin-left:8px}
.footer{padding:34px 0 40px; border-top:1px solid var(--line2); color:var(--muted2); font-size:12.5px}
.admin-wrap{max-width:1100px; margin:0 auto; padding:18px}
.admin-top{display:flex; gap:10px; flex-wrap:wrap; align-items:center; justify-content:space-between; margin-bottom:12px}
.table{width:100%; border-collapse:collapse; overflow:hidden; border-radius:14px; border:1px solid var(--line)}
.table th,.table td{padding:10px 10px; border-bottom:1px solid var(--line2); font-size:13px; text-align:left}
.table th{color:var(--muted2); font-weight:800; background: color-mix(in oklab, var(--card) 92%, transparent)}
.field{display:flex; flex-direction:column; gap:6px; margin:10px 0}
.field input,.field textarea,.field select{
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--line);
  background: color-mix(in oklab, var(--card2) 75%, transparent);
  color:var(--text);
  font-size:13px;
  outline:none;
}
.row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
@media (max-width: 980px){.row{grid-template-columns:1fr}}
.alert{border:1px solid var(--line); border-radius:14px; padding:10px 12px; background: color-mix(in oklab, var(--card2) 70%, transparent); color:var(--muted); font-size:13px}
.kicker{display:flex;align-items:center;gap:10px;color:var(--muted2);font-size:13px;margin-bottom:10px}
.kicker .dot{width:10px;height:10px;border-radius:99px;background: radial-gradient(circle at 30% 25%, rgba(255,255,255,.35), transparent 55%), linear-gradient(135deg, rgba(83,184,255,.95), rgba(122,92,255,.92));border:1px solid var(--line)}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.meta span{font-size:12px;color:var(--muted);border:1px solid var(--line2);background:color-mix(in oklab, var(--card2) 70%, transparent);padding:7px 10px;border-radius:999px}
.hero-card{border:1px solid var(--line);border-radius:var(--r20);background:color-mix(in oklab, var(--card) 78%, transparent);box-shadow:var(--shadow);padding:14px;position:relative;overflow:hidden}
.hero-card::before{content:\"\";position:absolute;inset:-1px;opacity:.75;background:radial-gradient(520px 260px at 15% 0%, rgba(83,184,255,.16), transparent 55%),radial-gradient(520px 260px at 90% 15%, rgba(122,92,255,.12), transparent 55%);pointer-events:none}
.hero-card-inner{position:relative}
.mock{border:1px solid var(--line2);border-radius:18px;overflow:hidden;background:color-mix(in oklab, var(--card2) 55%, transparent)}
.mock-top{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px 12px;color:var(--muted2);font-size:12px;border-bottom:1px solid var(--line2);background:color-mix(in oklab, var(--card) 92%, transparent)}
.mock-dots{display:flex;gap:6px}
.mock-dots i{width:8px;height:8px;border-radius:99px;background:color-mix(in oklab, var(--muted2) 55%, transparent);display:block}
.mock-screen{padding:12px}
.shot-btn{border:1px solid var(--line2);border-radius:16px;padding:0;background:transparent;cursor:pointer;display:block;width:100%;overflow:hidden}
.shot-img{width:100%;height:auto;display:block}
.label{margin-top:10px;color:var(--muted2);font-size:12px}
.mock-bars{display:flex;gap:10px;flex-wrap:wrap;padding:0 12px 12px}
.pill{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:16px;border:1px solid var(--line2);background:color-mix(in oklab, var(--card) 85%, transparent);color:var(--muted);font-size:13px}
.pill b{color:var(--text);font-weight:800}
.kbd{font-family:var(--mono);font-size:11px;padding:3px 6px;border-radius:8px;border:1px solid var(--line2);background:color-mix(in oklab, var(--card2) 70%, transparent);color:var(--text)}
.section-title{margin-bottom:14px}
.section-title h2{margin:0 0 6px;font-size:22px}
.section-title p{margin:0;color:var(--muted);max-width:80ch}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.chip{font-size:12px;color:var(--muted);border:1px solid var(--line2);background:color-mix(in oklab, var(--card2) 60%, transparent);padding:8px 10px;border-radius:999px}
.tag.brand{border-color:rgba(83,184,255,.35);color:color-mix(in oklab, var(--brand) 85%, var(--text));background:radial-gradient(420px 220px at 20% 0%, rgba(83,184,255,.12), transparent 55%),color-mix(in oklab, var(--card2) 55%, transparent)}
.tag.warn{border-color:rgba(122,92,255,.35);color:color-mix(in oklab, var(--brand2) 80%, var(--text));background:radial-gradient(420px 220px at 20% 0%, rgba(122,92,255,.12), transparent 55%),color-mix(in oklab, var(--card2) 55%, transparent)}
.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--line);background:color-mix(in oklab, var(--card) 82%, transparent)}
.compare{width:100%;border-collapse:collapse;min-width:820px}
.compare th,.compare td{padding:10px 10px;border-bottom:1px solid var(--line2);font-size:13px;text-align:left}
.compare th{color:var(--muted2);font-weight:800;background:color-mix(in oklab, var(--card) 92%, transparent)}
.faq details{border:1px solid var(--line);border-radius:16px;background:color-mix(in oklab, var(--card) 80%, transparent);padding:12px 12px}
.faq details+details{margin-top:10px}
.faq summary{cursor:pointer;color:var(--text);font-weight:800}
.faq p{color:var(--muted);margin:10px 0 0}
.lightbox{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.72);padding:18px}
.lightbox.show{display:flex}
.lightbox-inner{position:relative;max-width:min(1100px, 100%);max-height:min(80vh, 100%);border-radius:18px;border:1px solid var(--line);background:color-mix(in oklab, var(--card) 70%, transparent);box-shadow:var(--shadow);overflow:hidden}
.lightbox-close{position:absolute;right:10px;top:10px;border:1px solid var(--line);background:color-mix(in oklab, var(--card) 70%, transparent);color:var(--text);border-radius:999px;padding:8px 10px;cursor:pointer}
.lightbox-img{display:block;max-width:100%;max-height:80vh}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:22px;z-index:80;opacity:0;pointer-events:none;transition:.18s ease;padding:10px 12px;border-radius:999px;border:1px solid var(--line);background:color-mix(in oklab, var(--card) 80%, transparent);color:var(--text);box-shadow:var(--shadow);font-size:13px}
.toast.show{opacity:1}
.mini{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.mini a{color:var(--muted);text-decoration:none;border-bottom:1px dashed transparent}
.mini a:hover{color:var(--text);border-bottom-color:var(--line)}
.reveal{opacity:0;transform:translateY(10px);transition:.35s ease;will-change:transform,opacity}
.reveal.in{opacity:1;transform:none}
