/* María Reina — design overrides loaded after AdminLTE */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&family=Inter:wght@300;400;500;600&display=swap');

:root {
  --mr-indigo:    #1c2350;
  --mr-indigo-dk: #141a3d;
  --mr-gold:      #c19a2e;
  --mr-gold-dim:  rgba(193,154,46,0.15);
  --mr-parchment: #f5f4f0;
  --mr-slate:     #e4e1db;
  --mr-text:      #2a2a2a;
}

/* ── Global typography ─────────────────────────── */
body {
  font-family: 'Inter', system-ui, sans-serif;
  color: var(--mr-text);
}

h1, h2, h3, h4,
.page-title,
.card-header,
.modal-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  color: var(--mr-indigo);
}

/* ── Sidebar ───────────────────────────────────── */
.app-sidebar {
  background-color: var(--mr-indigo) !important;
}

.sidebar-brand {
  background-color: var(--mr-indigo) !important;
  border-bottom: 1px solid rgba(193,154,46,0.35) !important;
}

.sidebar-brand .brand-text {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.35rem !important;
  font-weight: 600 !important;
  color: var(--mr-gold) !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

.app-sidebar .nav-link {
  color: rgba(255,255,255,0.68) !important;
  border-left: 3px solid transparent !important;
  transition: color .18s, background-color .18s, border-left-color .18s !important;
  font-size: .875rem !important;
}

.app-sidebar .nav-link:hover {
  color: #fff !important;
  background-color: var(--mr-gold-dim) !important;
}

.app-sidebar .nav-link.active {
  color: var(--mr-gold) !important;
  background-color: rgba(193,154,46,0.1) !important;
  border-left-color: var(--mr-gold) !important;
  font-weight: 500 !important;
}

.app-sidebar .nav-icon {
  color: inherit !important;
}

.app-sidebar .nav-treeview .nav-link {
  padding-left: 2.75rem !important;
  font-size: .825rem !important;
}

/* ── Top header ────────────────────────────────── */
.app-header {
  background-color: #fff !important;
  border-bottom: 1px solid var(--mr-slate) !important;
  box-shadow: 0 1px 4px rgba(28,35,80,.07) !important;
}

/* ── Content background ────────────────────────── */
.app-main,
.wrapper,
.content-wrapper {
  background-color: var(--mr-parchment) !important;
}

.app-content-header {
  background-color: var(--mr-parchment) !important;
  border-bottom: 1px solid var(--mr-slate) !important;
}

.app-content-header h3 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.65rem !important;
  font-weight: 600 !important;
  color: var(--mr-indigo) !important;
  margin: 0 !important;
}

/* ── Cards ─────────────────────────────────────── */
.card {
  border: 1px solid var(--mr-slate) !important;
  border-radius: 6px !important;
  box-shadow: 0 1px 3px rgba(28,35,80,.06) !important;
  background: #fff !important;
}

.card-header {
  background-color: #fff !important;
  border-bottom: 1px solid var(--mr-slate) !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.15rem !important;
  font-weight: 600 !important;
  color: var(--mr-indigo) !important;
}

/* ── Primary buttons ───────────────────────────── */
.btn-primary {
  background-color: var(--mr-indigo) !important;
  border-color: var(--mr-indigo) !important;
  font-weight: 500 !important;
  font-size: .875rem !important;
}

.btn-primary:hover,
.btn-primary:active {
  background-color: var(--mr-indigo-dk) !important;
  border-color: var(--mr-indigo-dk) !important;
}

/* ── Focus rings ───────────────────────────────── */
.form-control:focus,
.form-select:focus,
.btn:focus-visible {
  border-color: var(--mr-gold) !important;
  box-shadow: 0 0 0 3px rgba(193,154,46,.22) !important;
}

/* ── Breadcrumbs ───────────────────────────────── */
.breadcrumb-item a {
  color: var(--mr-gold) !important;
  text-decoration: none;
}

.breadcrumb-item a:hover { color: #9b7422 !important; }

/* ── Table headers ─────────────────────────────── */
.table > :not(caption) > * > th {
  background-color: #ece9e4 !important;
  color: var(--mr-indigo) !important;
  font-size: .7rem !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  border-bottom: 2px solid var(--mr-slate) !important;
}

/* ── Nav pills / tabs ──────────────────────────── */
.nav-pills .nav-link.active {
  background-color: var(--mr-indigo) !important;
}

.nav-tabs .nav-link.active {
  color: var(--mr-indigo) !important;
  border-bottom-color: var(--mr-gold) !important;
  border-bottom-width: 2px !important;
}

/* ── Badges ────────────────────────────────────── */
.badge.bg-primary { background-color: var(--mr-indigo) !important; }

/* ── Reduced motion ────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
