/* Aumkar brand-color pass: retint Bootstrap's default blue with the palette
   sampled from the real logo (wwwroot/img/Logo_Horizontal_2023.png) — deep
   crimson as primary, everything else left as Bootstrap defaults.

   Most components (links, pagination, dropdown-item.active, navbar active
   state, alert-primary, text/bg/border-primary utilities) already read from
   the --bs-primary* root custom properties below, so overriding those alone
   reskins them. .btn-primary/.btn-outline-primary and form focus/checked
   states hardcode their colors per-component in the compiled Bootstrap CSS
   rather than referencing the root tokens, so those need explicit rules. */

:root {
  --bs-primary: #a3202c;
  --bs-primary-rgb: 163, 32, 44;
  --bs-primary-text-emphasis: #4a0f16;
  --bs-primary-bg-subtle: #f6dfe1;
  --bs-primary-border-subtle: #dba3a8;

  --bs-link-color: #a3202c;
  --bs-link-color-rgb: 163, 32, 44;
  --bs-link-hover-color: #7c1620;
  --bs-link-hover-color-rgb: 124, 22, 32;

  --bs-focus-ring-color: rgba(163, 32, 44, 0.25);

  --bs-pagination-active-bg: #a3202c;
  --bs-pagination-active-border-color: #a3202c;

  --bs-dropdown-link-active-bg: #a3202c;

  --bs-navbar-active-color: #a3202c;

  /* Readability follow-up (2026-07-27): Bootstrap's default --bs-secondary-color
     (rgba(33,37,41,.75), ~6.7:1 on white) already clears WCAG AA, but .text-secondary/
     .text-muted are used at "small" size all over this app (KPI captions, chart
     labels, table hints) — a flat, darker gray widens that margin comfortably past
     AAA (~8.2:1) for older/low-vision users without changing the visual hierarchy. */
  --bs-secondary-color: #495057;
  --bs-secondary-color-rgb: 73, 80, 87;
}

.btn-primary {
  --bs-btn-bg: #a3202c;
  --bs-btn-border-color: #a3202c;
  --bs-btn-hover-bg: #8c1b26;
  --bs-btn-hover-border-color: #7c1620;
  --bs-btn-active-bg: #7c1620;
  --bs-btn-active-border-color: #6e131c;
  --bs-btn-focus-shadow-rgb: 163, 32, 44;
  --bs-btn-disabled-bg: #a3202c;
  --bs-btn-disabled-border-color: #a3202c;
}

.btn-outline-primary {
  --bs-btn-color: #a3202c;
  --bs-btn-border-color: #a3202c;
  --bs-btn-hover-bg: #a3202c;
  --bs-btn-hover-border-color: #a3202c;
  --bs-btn-active-bg: #a3202c;
  --bs-btn-active-border-color: #a3202c;
  --bs-btn-focus-shadow-rgb: 163, 32, 44;
  --bs-btn-disabled-color: #a3202c;
  --bs-btn-disabled-border-color: #a3202c;
}

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
  border-color: #c97b83;
  box-shadow: 0 0 0 0.25rem rgba(163, 32, 44, 0.25);
}

.form-check-input:checked {
  background-color: #a3202c;
  border-color: #a3202c;
}

/* Top navbar: orange gradient (2026-07-31 restyle), left-to-right, with the
   right end deepened past a simple lighten/darken pair so the account
   dropdown text (which sits at that end) keeps solid contrast against it. */
.navbar-gradient {
  background: linear-gradient(to right, #ff9d45 0%, #b8460e 100%);
}

/* Bootstrap's [data-bs-theme=dark] default dims inactive/hover nav-link text
   to rgba(255,255,255,.55)/.75 (for contrast against varied dark navbars) —
   against our specific orange gradient that reads as washed-out, so pin both
   to fully opaque white. Needs the doubled `.navbar.navbar-gradient` selector
   to out-specificity Bootstrap's `.navbar[data-bs-theme=dark]` rule (an
   attribute selector already outweighs a single class), not just source order. */
.navbar.navbar-gradient {
  --bs-navbar-color: #fff;
  --bs-navbar-hover-color: #fff;
}

/* Prevent the top-level nav links from overflowing the viewport on narrower
   "desktop" widths (the >=lg breakpoint where the toggler is hidden and all
   items render inline) — wrap onto a second row instead of clipping/scrolling
   once they no longer fit on one line. */
@media (min-width: 992px) {
  .navbar-gradient .navbar-nav {
    flex-wrap: wrap;
    row-gap: 0.25rem;
  }
}

/* Sign-in page: green frame (same palm-green as the navbar) around the white
   login card, with the real logo badged on white so it reads against green. */
.signin-frame {
  background: #028b45;
}

.signin-logo-wrap {
  background: #ffffff;
}

.signin-logo {
  max-width: 220px;
  width: 100%;
  height: auto;
}

.signin-card {
  border: 1px solid rgba(255, 255, 255, 0.4);
}
