/* ── Team 2374 Jesuit Robotics Theme ────────────────────────────────────── */

/* Override Bootstrap 5 CSS variables at the root level */
:root {
  --bs-primary:             #0d5c2a;
  --bs-primary-rgb:         13, 92, 42;
  --bs-link-color:          #0d5c2a;
  --bs-link-color-rgb:      13, 92, 42;
  --bs-link-hover-color:    #094a21;

  --team-green:             #0d5c2a;
  --team-green-dark:        #094a21;
  --team-green-light:       #117a38;
  --team-gold:              #c9a227;
  --team-gold-light:        #e0b93a;
}

body {
  font-family: system-ui, -apple-system, sans-serif;
}

/* ── bg-primary / text-primary / border-primary ─────────────────────────── */
.bg-primary {
  background-color: var(--team-green) !important;
}
.text-primary {
  color: var(--team-green) !important;
}
.border-primary {
  border-color: var(--team-green) !important;
}

/* ── btn-primary — override Bootstrap 5's internal btn CSS vars ──────────── */
.btn-primary {
  --bs-btn-color:              #fff;
  --bs-btn-bg:                 #0d5c2a;
  --bs-btn-border-color:       #094a21;
  --bs-btn-hover-color:        #fff;
  --bs-btn-hover-bg:           #094a21;
  --bs-btn-hover-border-color: #094a21;
  --bs-btn-active-color:       #fff;
  --bs-btn-active-bg:          #094a21;
  --bs-btn-active-border-color:#073d1b;
  --bs-btn-disabled-color:     #fff;
  --bs-btn-disabled-bg:        #0d5c2a;
  --bs-btn-disabled-border-color: #094a21;
}

/* ── btn-outline-primary ─────────────────────────────────────────────────── */
.btn-outline-primary {
  --bs-btn-color:              #0d5c2a;
  --bs-btn-border-color:       #0d5c2a;
  --bs-btn-hover-color:        #fff;
  --bs-btn-hover-bg:           #0d5c2a;
  --bs-btn-hover-border-color: #0d5c2a;
  --bs-btn-active-color:       #fff;
  --bs-btn-active-bg:          #0d5c2a;
  --bs-btn-active-border-color:#0d5c2a;
}

/* ── Navbar ──────────────────────────────────────────────────────────────── */
.navbar.bg-primary {
  background-color: var(--team-green-dark) !important;
}
.navbar-brand {
  color:       var(--team-gold) !important;
  font-weight: 700;
}
.navbar-brand:hover {
  color: var(--team-gold-light) !important;
}
.navbar-dark .nav-link {
  color: rgba(255,255,255,.82) !important;
}
.navbar-dark .nav-link:hover,
.navbar-dark .nav-link.active {
  color: var(--team-gold) !important;
}

/* ── Full-page green background (login / setup / check-in) ──────────────── */
.page-bg {
  background-color: var(--team-green);
}
.page-bg .card {
  border: none;
  box-shadow: 0 4px 24px rgba(0,0,0,.4);
}

/* Gold heading inside login/setup cards */
.page-bg .card .text-primary {
  color: var(--team-gold) !important;
}

/* ── Card header subtle green tint ──────────────────────────────────────── */
.card-header {
  background-color: #f2f7f4;
  border-bottom-color: #cfe0d6;
}

/* ── Table ───────────────────────────────────────────────────────────────── */
.table td, .table th {
  vertical-align: middle;
}

/* ── QR image ────────────────────────────────────────────────────────────── */
#qrImage {
  border:     8px solid white;
  border-radius: 4px;
  box-shadow: 0 2px 12px rgba(0,0,0,.2);
}

/* ── Mobile check-in button ──────────────────────────────────────────────── */
@media (max-width: 576px) {
  .btn-lg.py-3 {
    font-size: 1.4rem;
    padding-top:    1.2rem !important;
    padding-bottom: 1.2rem !important;
  }
}

/* ── List group ──────────────────────────────────────────────────────────── */
.list-group-item-action:hover {
  background-color: #eaf2ec;
}

/* ── Badge consistency ───────────────────────────────────────────────────── */
.badge {
  font-weight: 500;
  font-size: .78em;
}
