:root {
  --bg: #ffffff;
  --text: #0b0b0c;
  --muted: #616161;

  --black: #0b0b0c;
  --gold: #b88a00;
  --gold-2: #d4af37;

  --border: #e6e6e6;
  --card: #ffffff;
  --shadow: 0 10px 25px rgba(0,0,0,.08);

  /* Gold on white needs help: use as accent, not body text */
  --accent: var(--gold);
  --accent-ink: #1a1400;
  --accent-soft: rgba(184,138,0,.12);
  --accent-soft-2: rgba(184,138,0,.18);
}

html, body {
  background: var(--bg);
  color: var(--text);
}

a { color: #0f172a; }
a:hover { color: var(--black); }

/* Buttons */
.btn-primary {
  background: var(--black);
  color: #fff;
  border: 1px solid var(--black);
}
.btn-primary:hover { background: #000; }

.btn-accent {
  background: var(--gold);
  color: var(--accent-ink);
  border: 1px solid rgba(0,0,0,.08);
}
.btn-accent:hover { background: var(--gold-2); }

.btn-outline {
  background: #fff;
  color: var(--black);
  border: 1px solid var(--border);
}
.btn-outline:hover { background: rgba(0,0,0,.03); }

/* Badges */
.badge-accent {
  background: var(--accent-soft);
  color: var(--black);
  border: 1px solid rgba(184,138,0,.35);
}

/* Focus rings */
*:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(184,138,0,.35);
}

/* Header accents */
.header-accent {
  border-bottom: 3px solid var(--gold);
}

/* Cards */
.card {
  background: var(--card);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
  border-radius: 12px;
}

/* Utility */
.text-muted { color: var(--muted); }
.border-accent { border-color: rgba(184,138,0,.45) !important; }
.bg-accent-soft { background: var(--accent-soft) !important; }
