:root {
  --mc-bg: #f4f7fb;
  --mc-surface: #ffffff;
  --mc-surface-2: #edf3fb;
  --mc-text: #0f172a;
  --mc-text-muted: #475569;
  --mc-border: #c8d5e6;
  --mc-primary: #175cd3;
  --mc-primary-contrast: #ffffff;
  --mc-accent: #0ea5e9;
  --mc-shadow: 0 15px 40px rgba(15, 23, 42, 0.08);
  --bs-body-bg: var(--mc-bg);
  --bs-body-color: var(--mc-text);
  --bs-border-color: var(--mc-border);
  --bs-link-color: var(--mc-primary);
  --bs-link-hover-color: #0f4fbf;
}

html[data-theme='dark'] {
  --mc-bg: #07101f;
  --mc-surface: #0f1a2f;
  --mc-surface-2: #14213d;
  --mc-text: #f8fbff;
  --mc-text-muted: #c8d6e8;
  --mc-border: #335071;
  --mc-primary: #7fb5ff;
  --mc-primary-contrast: #07101f;
  --mc-accent: #5eead4;
  --mc-shadow: 0 18px 42px rgba(0, 0, 0, 0.45);
  color-scheme: dark;
}

body {
  background: linear-gradient(180deg, var(--mc-bg), color-mix(in srgb, var(--mc-bg) 85%, #000 15%));
  color: var(--mc-text);
}

a { text-decoration: none; }
code { color: var(--mc-primary); }

.mc-navbar,
.card.mc-card,
.dashboard-stat,
.hero-card,
.list-group-item,
.table,
.dropdown-menu,
.alert,
.guide-nav {
  background: var(--mc-surface);
  color: var(--mc-text);
  border-color: var(--mc-border) !important;
}

.hero-card {
  background: linear-gradient(135deg, var(--mc-surface), color-mix(in srgb, var(--mc-surface) 85%, var(--mc-accent) 15%));
  border: 1px solid var(--mc-border);
}

.mc-card, .dashboard-stat, .hero-card { box-shadow: var(--mc-shadow); }
.text-secondary, .form-text, .small, .text-muted { color: var(--mc-text-muted) !important; }
.navbar, .navbar-brand, .nav-link, .dropdown-item, .list-group-item { color: var(--mc-text) !important; }

.nav-link:hover, .dropdown-item:hover, .dropdown-item:focus, .list-group-item-action:hover {
  background: color-mix(in srgb, var(--mc-primary) 12%, var(--mc-surface) 88%);
  color: var(--mc-text) !important;
}

.form-control, .form-select {
  background: var(--mc-surface-2);
  color: var(--mc-text);
  border: 1px solid var(--mc-border);
}
.form-control:focus, .form-select:focus {
  color: var(--mc-text);
  background: var(--mc-surface);
  border-color: var(--mc-primary);
  box-shadow: 0 0 0 0.2rem rgba(23, 92, 211, 0.18);
}
.form-check-input { background-color: var(--mc-surface); border-color: var(--mc-border); }

.btn-primary {
  --bs-btn-bg: var(--mc-primary);
  --bs-btn-border-color: var(--mc-primary);
  --bs-btn-hover-bg: color-mix(in srgb, var(--mc-primary) 90%, black 10%);
  --bs-btn-hover-border-color: color-mix(in srgb, var(--mc-primary) 90%, black 10%);
  --bs-btn-color: var(--mc-primary-contrast);
}
.btn-outline-primary {
  --bs-btn-color: var(--mc-primary);
  --bs-btn-border-color: var(--mc-primary);
  --bs-btn-hover-bg: var(--mc-primary);
  --bs-btn-hover-border-color: var(--mc-primary);
  --bs-btn-hover-color: var(--mc-primary-contrast);
}
.btn-outline-secondary {
  --bs-btn-color: var(--mc-text);
  --bs-btn-border-color: var(--mc-border);
  --bs-btn-hover-bg: var(--mc-surface-2);
  --bs-btn-hover-border-color: var(--mc-border);
  --bs-btn-hover-color: var(--mc-text);
}

.table { --bs-table-bg: transparent; --bs-table-color: var(--mc-text); }
.badge.text-bg-light { background: var(--mc-surface-2) !important; color: var(--mc-text) !important; }
.alert-warning { background: color-mix(in srgb, #fff3cd 35%, var(--mc-surface) 65%); color: var(--mc-text); }
html[data-theme='dark'] .alert-warning { background: color-mix(in srgb, #5c4b00 22%, var(--mc-surface) 78%); }

.dashboard-stat {
  border: 1px solid var(--mc-border);
  border-radius: 1.25rem;
  padding: 1.25rem;
  height: 100%;
}
.stat-icon { font-size: 1.8rem; margin-bottom: .4rem; }
.stat-number { font-size: 2rem; font-weight: 800; }
.disclaimer-banner { border-left: 4px solid #eab308 !important; }
.guide-content section { margin-bottom: 2rem; scroll-margin-top: 6rem; }
.guide-nav { top: 6rem; }

@media (max-width: 991px) {
  .guide-nav { position: static !important; }
}
