/* Samma palett som passdeckarna (Gemensamt/slidebygge/theme.js, DARK) */
:root {
  --bg: #0C1426;
  --bg2: #16223C;
  --bg3: #1E2C4C;
  --term: #0B1120;
  --border: #243050;
  --blue: #4C64FF;
  --blue-text: #8FA0FF;
  --amber: #F5A524;
  --text: #E8EEFA;
  --muted: #93A3C4;
  --green: #3DD68C;
  --red: #FF6B6B;
  --mono: ui-monospace, 'SF Mono', Menlo, 'Courier New', monospace;
  --sans: Calibri, 'Segoe UI', system-ui, -apple-system, sans-serif;
  --head: Arial, 'Helvetica Neue', sans-serif;
  color-scheme: dark;
}

* { box-sizing: border-box; }
html, body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--sans); }
button, input, textarea { font: inherit; color: inherit; }
.kicker { font-family: var(--mono); color: var(--blue-text); letter-spacing: .06em; }
.kicker::before { content: '$ '; color: var(--amber); }
.muted { color: var(--muted); }
.mono { font-family: var(--mono); }
.hidden { display: none !important; }

.btn {
  border: 0; border-radius: 10px; padding: 12px 18px; cursor: pointer;
  background: var(--blue); color: #fff; font-weight: 700; font-size: 16px;
  transition: transform .08s, filter .15s;
}
.btn:hover { filter: brightness(1.1); }
.btn:active { transform: scale(.97); }
.btn:disabled { opacity: .5; cursor: default; }
.btn.amber { background: var(--amber); color: var(--bg); }
.btn.ghost { background: transparent; border: 1px solid var(--border); color: var(--muted); }
.btn.danger { background: transparent; border: 1px solid var(--red); color: var(--red); }

input[type=text], input[type=password], textarea {
  width: 100%; background: var(--term); border: 1px solid var(--border); border-radius: 10px;
  padding: 12px 14px; font-size: 16px; outline: none;
}
textarea { font-family: var(--mono); font-size: 14px; resize: vertical; min-height: 84px; }
input:focus, textarea:focus { border-color: var(--blue); }

.card { background: var(--bg2); border-radius: 14px; padding: 18px; }
.error { color: var(--red); min-height: 1.2em; font-size: 14px; }
