/* -------------------------------------------------------
   OSHA Review – Brand overrides for Bootstrap 5.3
   Load after bootstrap.min.css
   ------------------------------------------------------- */

/* Brand tokens */
:root {
  --brand-red: #c21c2b;
  --brand-red-600: #a01622;
  --brand-dark: #1b1b1b;
  --brand-charcoal: #333333;
  --brand-accent: #f9e3e5;

  /* Wire into Bootstrap's own token system */
  --bs-primary: var(--brand-charcoal);
  --bs-secondary: #60656f;
  --bs-dark: var(--brand-dark);
  --bs-link-color: var(--brand-red);
  --bs-link-hover-color: var(--brand-red-600);
  --bs-body-color: #212529;
}

/* -------------------------------------------------------
   Buttons — charcoal primary to match brand
   ------------------------------------------------------- */
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--brand-charcoal);
  --bs-btn-border-color: var(--brand-charcoal);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #222222;
  --bs-btn-hover-border-color: #222222;
  --bs-btn-active-bg: #1a1a1a;
  --bs-btn-active-border-color: #1a1a1a;
}

.btn-outline-primary {
  --bs-btn-color: var(--brand-charcoal);
  --bs-btn-border-color: var(--brand-charcoal);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--brand-charcoal);
  --bs-btn-hover-border-color: var(--brand-charcoal);
  --bs-btn-active-bg: #222222;
  --bs-btn-active-border-color: #222222;
}

/* -------------------------------------------------------
   Navbar
   ------------------------------------------------------- */
.nav-contrast {
  background: linear-gradient(180deg, var(--brand-dark), #000);
}

.navbar-brand img { height: 36px; width: auto; }

.navbar-compact .navbar-brand { padding-top: .25rem; padding-bottom: .25rem; }
.navbar-compact .navbar-brand img { height: 30px; }

/* -------------------------------------------------------
   Cards
   ------------------------------------------------------- */
.card-accent { border-top: 4px solid var(--brand-red); }

.tile-card {
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
  border: 1px solid rgba(0,0,0,.06);
}
.tile-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.1);
  border-color: rgba(194,28,43,.35);
}
.tile-icon { line-height: 1; }

/* -------------------------------------------------------
   Sidebar active state
   ------------------------------------------------------- */
.list-group-item.active {
  background-color: rgba(194,28,43,.12);
  color: var(--brand-red);
  font-weight: 600;
  border-color: rgba(0,0,0,.125);
}

/* Prevent flex overflow in Firefox/Safari */
#view-app .row > main { min-width: 0; }

/* -------------------------------------------------------
   Login hero
   ------------------------------------------------------- */
.login-hero {
  display: grid;
  place-items: center;
  background:
    radial-gradient(40rem 40rem at 10% 10%, rgba(194,28,43,.06), transparent 60%),
    radial-gradient(40rem 40rem at 90% 20%, rgba(194,28,43,.06), transparent 60%),
    linear-gradient(180deg, #fff, #fafafa 40%, #f7f7f7);
}

/* -------------------------------------------------------
   Utilities
   ------------------------------------------------------- */
.cursor-pointer { cursor: pointer; }

table.results th, table.results td  {
text-align: center;
}
