body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial; background:#0b1220; color:#e6e9ef; margin:0}
.wrap{max-width:920px; margin:0 auto; padding:18px}
.card{background:#121b2e; border:1px solid #223152; border-radius:14px; padding:16px; box-shadow:0 8px 25px rgba(0,0,0,.25)}
.top{display:flex; justify-content:space-between; align-items:center; gap:10px}
h1{font-size:18px; margin:0}
label{display:block; font-size:13px; opacity:.9; margin:10px 0 6px}
input,button,select{font:inherit}
input[type="text"], input[type="tel"], input[type="password"], select{
  width:100%; padding:12px 12px; border-radius:12px; border:1px solid #2a3b63;
  background:#0f1729; color:#e6e9ef; outline:none;
}
.select{appearance:auto}
.btn{padding:12px 14px; border-radius:12px; border:1px solid #2a3b63; background:#1b2a4a; color:#fff; cursor:pointer}
.btn.primary{background:#2a5bd7; border-color:#2a5bd7}
.btn.danger{background:#a83a3a; border-color:#a83a3a}
.btn:disabled{opacity:.5; cursor:not-allowed}
.hint{font-size:12px; opacity:.75; margin-top:6px}
.err{color:#ff8a8a; font-size:12px; margin-top:6px}
.ok{color:#86efac; font-size:12px; margin-top:6px}
.step{display:none}
.step.active{display:block}
.badge{display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:999px; background:#0f1729; border:1px solid #2a3b63; font-size:12px; opacity:.9}
.sep{height:1px; background:#223152; margin:14px 0}
.row{display:flex; gap:12px; flex-wrap:wrap; align-items:center}
.row.between{justify-content:space-between}
.col{flex:1; min-width:240px}
.small{font-size:12px; opacity:.75}
.footerRow{display:flex; gap:10px; justify-content:space-between; flex-wrap:wrap; margin-top:14px}
.phoneWrap{display:flex; gap:8px; align-items:center}
.prefix{
  padding:12px 12px; border-radius:12px; border:1px solid #2a3b63;
  background:#0c1324; color:#e6e9ef; min-width:54px; text-align:center;
  user-select:none;
}
img{max-width:100%; border-radius:12px; border:1px solid #2a3b63}
.canvasWrap{background:#0f1729; border:1px solid #2a3b63; border-radius:12px; padding:10px}
canvas{width:100%; height:240px; display:block; touch-action:none}
.box{margin-top:12px}
.table{width:100%; border-collapse:collapse; font-size:13px}
.table th,.table td{border-bottom:1px solid #223152; padding:10px 6px; text-align:right; vertical-align:top}
.table th{opacity:.8; font-weight:600}
a{color:#8ab4ff; text-decoration:none}
a:hover{text-decoration:underline}
.nav{display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:12px}
.pill{padding:6px 10px; border-radius:999px; border:1px solid #2a3b63; background:#0f1729; font-size:12px}
