:root {
  --mvm-navy: #0f2a4a;
  --mvm-navy-dark: #0a1f38;
  --mvm-green: #1c6b3c;
  --mvm-gold: #d4a72c;
  --mvm-bg: #f4f6f9;
}

body {
  font-family: 'Poppins', system-ui, sans-serif;
  background: var(--mvm-bg);
  color: #1e293b;
}

/* ── Navbar ── */
.mvm-navbar {
  background: linear-gradient(90deg, var(--mvm-navy) 0%, var(--mvm-navy-dark) 100%);
  box-shadow: 0 2px 10px rgba(0,0,0,.15);
}
.mvm-navbar .brand-text { display: flex; flex-direction: column; line-height: 1.1; }
.mvm-navbar .brand-text strong { font-size: .95rem; color: #fff; }
.mvm-navbar .brand-text small { font-size: .7rem; color: #cbd5e1; }
.mvm-navbar .nav-link { color: #e2e8f0 !important; font-size: .92rem; }
.mvm-navbar .nav-link:hover { color: #fff !important; }

.btn-mvm-outline {
  border: 1px solid var(--mvm-gold);
  color: var(--mvm-gold) !important;
  border-radius: 6px;
  padding: 4px 14px;
}
.btn-mvm-outline:hover { background: var(--mvm-gold); color: #0a1f38 !important; }

.btn-mvm {
  background: var(--mvm-navy);
  border: none;
  color: #fff;
}
.btn-mvm:hover { background: var(--mvm-navy-dark); color: #fff; }

/* ── Footer ── */
.mvm-footer {
  background: var(--mvm-navy-dark);
  color: #cbd5e1;
}
.mvm-footer a { text-decoration: none; }

/* ── Hero ── */
.hero-banner {
  background: linear-gradient(120deg, var(--mvm-navy) 0%, var(--mvm-green) 120%);
  color: #fff;
  border-radius: 14px;
  padding: 40px 30px;
  margin-bottom: 30px;
}
.hero-banner h1 { font-weight: 700; font-size: 1.9rem; }
.hero-banner p { color: #e2e8f0; }

/* ── Job cards ── */
.job-card {
  border: none;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
  transition: transform .15s, box-shadow .15s;
  height: 100%;
}
.job-card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(0,0,0,.1); }
.job-card .card-header {
  background: var(--mvm-navy);
  color: #fff;
  border-radius: 12px 12px 0 0 !important;
  font-weight: 600;
}
.badge-posts { background: var(--mvm-gold); color: #1e293b; }

/* ── Status badges ── */
.status-pending  { background: #f1f5f9; color: #475569; }
.status-selected { background: #dcfce7; color: #166534; }
.status-rejected { background: #fee2e2; color: #991b1b; }

/* ── Auth cards ── */
.auth-card {
  max-width: 480px;
  margin: 20px auto;
  border-radius: 14px;
  box-shadow: 0 4px 20px rgba(0,0,0,.08);
  border: none;
}
.auth-card .card-header {
  background: var(--mvm-navy);
  color: #fff;
  border-radius: 14px 14px 0 0 !important;
  text-align: center;
  font-weight: 600;
  padding: 22px;
}

/* ── Form section titles ── */
.form-section-title {
  background: #eef2f7;
  border-left: 4px solid var(--mvm-navy);
  padding: 8px 14px;
  font-weight: 600;
  margin: 22px 0 14px;
  border-radius: 4px;
}

/* ── Repeatable rows (teaching experience) ── */
.te-row { position: relative; }
.te-remove-btn { position: absolute; top: 6px; right: 6px; }

/* Dashboard stat cards */
.stat-card { border: none; border-radius: 10px; box-shadow: 0 2px 8px rgba(0,0,0,.06); }
