
:root {
  --bg-primary:   #06080f;
  --bg-surface:   #0f1320;
  --text-primary: #f0f0ff;
  --text-muted:   #94a3b8;
  --btn-bg:       #6366f1;
  --btn-text:     #ffffff;
  --btn-hover:    #4f46e5;
  --link:         #818cf8;
  --link-hover:   #a5b4fc;
  --card-hover:   #1a1f33;
  --accent:       #e50914;
  --border:       #1f2937;
}

/* Base — every element inherits these */
html, body {
  background: var(--bg-primary);
  color: var(--text-primary);
}

/* Text utilities */
.text-muted { color: var(--text-muted); }

/* Buttons — primary CTA */
.btn-primary,
button[type="submit"],
.sk-btn {
  background: var(--btn-bg);
  color:      var(--btn-text);
  border:     1px solid var(--btn-bg);
  transition: background .15s ease, transform .1s ease, box-shadow .15s ease;
}
.btn-primary:hover,
button[type="submit"]:hover,
.sk-btn:hover {
  background: var(--btn-hover);
  border-color: var(--btn-hover);
  transform: translateY(-1px);
}
.btn-primary:active,
.sk-btn:active { transform: translateY(0); }

/* Links */
a { color: var(--link); transition: color .15s ease; }
a:hover { color: var(--link-hover); }

/* Cards / surfaces */
.card, .surface {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.card:hover {
  background: var(--card-hover);
  border-color: var(--accent);
  transform: translateY(-2px);
}

/* Accent bits */
.badge, .pill { background: var(--accent); color: var(--btn-text); }
.focus-ring:focus,
input:focus, select:focus, textarea:focus {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
