:root{
  --bg:#f5f7fb;
  --card:#ffffff;
  --text:#122033;
  --muted:#66758a;
  --primary:#0f6fff;
  --primary-dark:#0a53bf;
  --border:#dbe4f0;
  --shadow:0 14px 34px rgba(10,28,62,.08);
  --radius:18px;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter,Segoe UI,Arial,sans-serif;
  background:linear-gradient(180deg,#f8fbff 0,#eef3f9 100%);
  color:var(--text);
}
a{text-decoration:none;color:inherit}
.container{width:min(1120px,calc(100% - 32px));margin:0 auto}
.topbar{padding:20px 0}
.brand{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand h1{margin:0;font-size:28px}
.badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#eaf2ff;
  color:#2158b6;
  padding:10px 14px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:24px;
}
.hero{padding:14px 0 28px}
.label{display:block;font-size:14px;font-weight:700;margin-bottom:8px}
.input,.select{
  width:100%;
  height:48px;
  border:1px solid var(--border);
  border-radius:12px;
  padding:0 14px;
  outline:none;
  background:#fff;
  color:var(--text);
  font-size:15px;
}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.stack{display:grid;gap:14px}
.btn{
  height:48px;
  border:none;
  border-radius:12px;
  background:var(--primary);
  color:#fff;
  padding:0 18px;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
}
.btn:hover{background:var(--primary-dark)}
.btn.secondary{
  background:#fff;
  color:var(--primary);
  border:1px solid #9bc0ff;
}
.btn.ghost{
  background:#edf4ff;
  color:#0c4fb7;
}
.helper{color:var(--muted);font-size:13px}
.alert{border-radius:12px;padding:14px 16px;font-size:14px;display:none}
.alert.show{display:block}
.alert.success{background:#ebf8f0;color:#126a3a;border:1px solid #bde5ca}
.alert.error{background:#fff0ef;color:#9f2a21;border:1px solid #f3c1bd}
.alert.info{background:#eef5ff;color:#1d4faa;border:1px solid #cfe0ff}
.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:14px}
table{width:100%;border-collapse:collapse;min-width:820px}
th,td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:14px}
th{background:#f7faff;color:#41526a;position:sticky;top:0}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.plan{border:1px solid var(--border);border-radius:16px;padding:18px;background:#fff}
.plan strong{display:block;font-size:18px;margin-bottom:6px}
.price{font-size:32px;font-weight:800;color:#0f6fff;margin:4px 0 8px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.kpi{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px}
.kpi b{display:block;font-size:26px;margin-top:10px}
.footer-space{height:40px}
@media (max-width:920px){
  .grid,.row,.plan-grid,.kpis{grid-template-columns:1fr}
}