:root {
  --color-body: #E8E8E8;
  --table-row-base: #ffffff;
}

/* ── GHMC / production (navy) ───────────────────────────────────── */
.ghmc-true,
:root {
  --color-primary: #043555;
  --color-primary-hover: #043555;
  --color-primary-rgb: 4, 53, 85;
  --color-primary-light: rgba(4, 53, 85, 0.06);
  --color-primary-lighter: rgba(4, 53, 85, 0.04);
  --table-row-stripe: rgba(4, 53, 85, 0.04);
  --table-row-hover: rgba(4, 53, 85, 0.07);
  --sidebar-bg: #043555;
}

/* ── SWM / dev (red) — same UI patterns as GHMC ─────────────────── */
.ghmc-false {
  --color-primary: #EC1117;
  --color-primary-hover: #EC1117;
  --color-primary-rgb: 236, 17, 23;
  --color-primary-light: rgba(236, 17, 23, 0.06);
  --color-primary-lighter: rgba(236, 17, 23, 0.04);
  --table-row-stripe: rgba(236, 17, 23, 0.04);
  --table-row-hover: rgba(236, 17, 23, 0.07);
  --sidebar-bg: #EC1117;
}

body {
  background-color: var(--color-body) !important;
  color: #212529;
}

.content {
  background-color: var(--color-body) !important;
}

.bg-primary,
.btn.btn-primary,
a.btn[href="#next"],
a.btn[href="#previous"] {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
}

.btn.btn-primary:not(:disabled):not(.disabled):hover,
.btn.btn-primary:not(:disabled):not(.disabled):focus,
.btn.btn-primary:not(:disabled):not(.disabled):active,
.btn.btn-primary:not(:disabled):not(.disabled).active,
a.btn[href="#next"]:not(:disabled):not(.disabled):hover,
a.btn[href="#previous"]:not(:disabled):not(.disabled):hover,
.btn-blue:hover,
.btn-blue:focus,
.search-ghmc:hover,
.search-ghmcNew:hover,
.report-search-ghmc:hover,
.search-swm:hover,
.report-search-swm:hover,
a.text-primary:hover,
a.bg-primary:hover,
button.bg-primary:hover {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  filter: brightness(1.12);
}

.text-primary {
  color: var(--color-primary) !important;
}

.active-ghmc,
.report-search-ghmc,
.ghmc-table-col,
.search-ghmc,
.search-ghmcNew,
.active-swmnew,
.report-search-swm,
.swm-table-col,
.search-swm {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
}

/* Sidebar — no shadow */
.navigation,
body:not(.horizontal-navigation) .navigation,
.app-sidebar,
.app-sidebar.sidebar-shadow {
  box-shadow: none !important;
}

/* Sidebar — GHMC open / active overlays */
.navigation .bg-ghmc,
.navigation.ghmc-true .bg-ghmc {
  background-color: rgba(255, 255, 255, 0.1) !important;
  border-color: transparent !important;
  color: #ffffff !important;
}

.navigation .active-ghmc,
.navigation.ghmc-true .active-ghmc {
  background-color: rgba(255, 255, 255, 0.14) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  border-left: none !important;
}

/* Sidebar — SWM open / active overlays (same style as GHMC) */
.navigation.ghmc-false .bg-swm {
  background-color: rgba(255, 255, 255, 0.1) !important;
  border-color: transparent !important;
  color: #ffffff !important;
}

.navigation.ghmc-false .active-swmnew {
  background-color: rgba(255, 255, 255, 0.14) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  border-left: none !important;
}

.navigation .active-ghmc:hover,
.navigation .bg-ghmc:hover,
.navigation.ghmc-false .active-swmnew:hover,
.navigation.ghmc-false .bg-swm:hover {
  color: #ffffff !important;
}

.navigation .bg-ghmc:hover,
.navigation.ghmc-false .bg-swm:hover {
  background-color: rgba(255, 255, 255, 0.12) !important;
}

.navigation .active-ghmc:hover,
.navigation.ghmc-false .active-swmnew:hover {
  background-color: rgba(255, 255, 255, 0.16) !important;
}

.navigation.ghmc-false .active-swmnew span,
.navigation.ghmc-false .bg-swm span,
.navigation.ghmc-false .active-swmnew .MuiTypography-root,
.navigation.ghmc-false .bg-swm .MuiTypography-root,
.navigation.ghmc-false .active-swmnew i,
.navigation.ghmc-false .bg-swm i,
.navigation.ghmc-false .active-swmnew .MuiSvgIcon-root,
.navigation.ghmc-false .bg-swm .MuiSvgIcon-root {
  color: #ffffff !important;
}

.icon-blue,
.text-blue,
.btn-blue,
.ghmc-false .icon-red,
.ghmc-false .text-red {
  color: var(--color-primary) !important;
}

.btn-blue {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #fff !important;
}

.excel-ghmc,
.excel-swm {
  color: var(--color-primary) !important;
}

.edit-ghmc,
.edit-swm {
  background-color: var(--color-primary-lighter) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-primary) !important;
}

.circle.enabled.circle-ghmc,
.circle.enabled.circle-swm {
  border-color: var(--color-primary) !important;
  background-color: var(--color-primary) !important;
}

.ghmc-true .content::-webkit-scrollbar-thumb,
.ghmc-true .data-table::-webkit-scrollbar-thumb,
.ghmc-false .content::-webkit-scrollbar-thumb,
.ghmc-false .data-table::-webkit-scrollbar-thumb {
  background-color: rgba(var(--color-primary-rgb), 0.35) !important;
}

.btn.btn-gradient-primary,
.bg-primary-gradient {
  background: var(--color-primary) !important;
}

.badge.badge-primary,
.alert.alert-primary {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-radio .custom-control-input:checked ~ .custom-control-label::before,
.custom-switch .custom-control-input:checked ~ .custom-control-label::before {
  border-color: var(--color-primary) !important;
  background-color: var(--color-primary) !important;
}

.page-content .card {
  background-color: #ffffff;
  color: #1B2128;
}

/* Table headers — subtle semi-bold across all tables */
.table-container table thead th,
table.table thead th,
.table thead th,
.ghmc-table-col,
.swm-table-col {
  font-weight: 600 !important;
  letter-spacing: 0.015em;
}

.content .MuiTableHead-root .MuiTableCell-head,
.MuiTableHead-root .MuiTableCell-head {
  font-weight: 600 !important;
  letter-spacing: 0.015em;
}

.rdt_TableHeadRow .rdt_TableCol,
.rdt_TableCol_Sortable,
.rdt_TableCol {
  font-weight: 600 !important;
}

/* Professional table striping */
div > div table.table > tbody > tr:nth-child(odd),
.table-container table.table tbody tr:nth-child(odd),
.table.table-hover tbody tr:nth-child(odd) {
  background-color: var(--table-row-base) !important;
}

div > div table.table > tbody > tr:nth-child(even),
.table-container table.table tbody tr:nth-child(even),
.table.table-hover tbody tr:nth-child(even) {
  background-color: transparent !important;
}

.table-container table tbody tr:nth-child(odd) td,
div > div table.table > tbody > tr:nth-child(odd) td {
  background-color: var(--table-row-base) !important;
  border-color: #e9ecef !important;
  color: #212529 !important;
}

.table-container table tbody tr:nth-child(even) td,
div > div table.table > tbody > tr:nth-child(even) td {
  background-color: var(--table-row-stripe) !important;
  border-color: #e9ecef !important;
  color: #212529 !important;
}

.table.table-hover tbody tr:hover,
div > div table.table.table-hover > tbody > tr:hover {
  background-color: transparent !important;
}

.table-container table tbody tr:hover td,
div > div table.table.table-hover > tbody > tr:hover td {
  background-color: var(--table-row-hover) !important;
}

.content .MuiTableBody-root .MuiTableRow-root:nth-of-type(odd) {
  background-color: var(--table-row-base) !important;
}

.content .MuiTableBody-root .MuiTableRow-root:nth-of-type(even) {
  background-color: var(--table-row-stripe) !important;
}

.content .MuiTableBody-root .MuiTableRow-root:hover {
  background-color: var(--table-row-hover) !important;
}

.ghmc-false .btn-red {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
}

.ghmc-false .login-title,
.ghmc-false .login-title span,
.ghmc-false .login-title-line1,
.ghmc-false .login-title-line2,
.ghmc-false .heading {
  color: var(--color-primary) !important;
}
