:root { color-scheme: dark; }
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  background: #0b0f17;
  color: #e8eefc;
}
a { color: #9ecbff; text-decoration: none; }
a:hover { text-decoration: underline; }
.container { max-width: 980px; margin: 0 auto; padding: 24px; }
.card {
  background: #111827;
  border: 1px solid #22304a;
  border-radius: 14px;
  padding: 18px;
}
.row { display: flex; gap: 12px; align-items: center; }
.row-between { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.mt { margin-top: 14px; }
.grid { display: grid; gap: 12px; }
.grid2 { grid-template-columns: 1fr 1fr; }
input, select, textarea, button {
  font: inherit;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #2b3c5e;
  background: #0f172a;
  color: #e8eefc;
}
textarea { min-height: 90px; resize: vertical; }
button { cursor: pointer; background: #1f3b8a; border-color: #2b54c7; }
button.secondary { background: #1b2438; border-color: #2b3c5e; }
button.danger { background: #6b1220; border-color: #a61d35; }
.badge {
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid #2b3c5e;
  background: #0f172a;
  font-size: 12px;
}
.small { font-size: 12px; color: #b8c4dd; }
hr { border: none; border-top: 1px solid #22304a; margin: 14px 0; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 10px; border-bottom: 1px solid #22304a; text-align: left; }
th { color: #b8c4dd; font-weight: 600; }
.toast { padding: 10px 12px; border-radius: 10px; border: 1px solid #2b3c5e; background:#0f172a; }
.toast.ok { border-color:#2b54c7; }
.toast.err { border-color:#a61d35; }
