/* === SCM SIM Brand — Custom Properties === */
:root {
  --scm-dark:    #1c2332;
  --scm-mid:     #475569;
  --scm-muted:   #94a3b8;
  --scm-bg:      #f0f2f5;
  --scm-surface: #ffffff;
  --scm-border:  #e2e8f0;
  --scm-darker:  #151b29;

  /* Bootstrap token overrides */
  --bs-primary:          #1c2332;
  --bs-primary-rgb:      28, 35, 50;
  --bs-body-bg:          #f0f2f5;
  --bs-body-color:       #1c2332;
  --bs-link-color:       #1c2332;
  --bs-link-hover-color: #475569;
}

/* === Body === */
body {
  background-color: var(--scm-bg);
}

/* === Navbar === */
.navbar-scmsim {
  background-color: var(--scm-dark) !important;
}

.navbar-scmsim .navbar-brand {
  line-height: 1.1;
}

.navbar-scmsim .navbar-brand-sub {
  display: block;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--scm-muted);
  line-height: 1;
  margin-bottom: 2px;
}

.navbar-scmsim .navbar-brand-main {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #ffffff;
  line-height: 1;
}

.navbar-scmsim .nav-link {
  color: var(--scm-muted);
  border-radius: 4px;
  padding-left: 12px;
  padding-right: 12px;
  transition: color 0.15s ease, background-color 0.15s ease;
}

.navbar-scmsim .nav-link:hover {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.08);
}

.navbar-scmsim .nav-link.active {
  color: #ffffff !important;
  background-color: rgba(255, 255, 255, 0.12);
}

.navbar-scmsim .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.2);
}

.navbar-scmsim .navbar-toggler-icon {
  filter: invert(1);
}

.navbar-scmsim .dropdown-toggle {
  color: var(--scm-muted) !important;
}

.navbar-scmsim .dropdown-toggle:hover {
  color: #ffffff !important;
}

/* === Cards === */
.card {
  border: none;
  border-radius: 8px;
  box-shadow: 0 1px 8px rgba(28, 35, 50, 0.08);
}

.card-header {
  background-color: var(--scm-surface);
  border-bottom: 1px solid var(--scm-border);
  font-weight: 700;
}

/* Stat card overrides — Bootstrap contextual colors → institutional monochrome */
.card.text-bg-primary,
.card.text-bg-success,
.card.text-bg-info,
.card.text-bg-warning {
  background-color: var(--scm-surface) !important;
  color: var(--scm-dark) !important;
}

.card.text-bg-primary { border-top: 3px solid var(--scm-dark); }
.card.text-bg-success  { border-top: 3px solid var(--scm-mid); }
.card.text-bg-info     { border-top: 3px solid var(--scm-muted); }
.card.text-bg-warning  { border-top: 3px solid var(--scm-border); }

.card.text-bg-primary .card-title,
.card.text-bg-success .card-title,
.card.text-bg-info .card-title,
.card.text-bg-warning .card-title {
  font-size: 0.7rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--scm-muted);
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.card.text-bg-primary .card-text,
.card.text-bg-success .card-text,
.card.text-bg-info .card-text,
.card.text-bg-warning .card-text {
  font-size: 2rem;
  font-weight: 700;
  color: var(--scm-dark);
}

/* === Buttons === */
.btn-primary {
  background-color: var(--scm-dark);
  border-color: var(--scm-dark);
  color: #ffffff !important;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background-color: var(--scm-darker);
  border-color: var(--scm-darker);
  color: #ffffff !important;
}

.btn-primary:focus-visible {
  box-shadow: 0 0 0 3px rgba(28, 35, 50, 0.25);
}

.btn-check:checked + .btn-primary,
.btn-primary.active,
.btn-primary.show {
  background-color: var(--scm-darker);
  border-color: var(--scm-darker);
}

.btn-outline-secondary {
  border-color: var(--scm-mid);
  color: var(--scm-mid);
}

.btn-outline-secondary:hover {
  background-color: var(--scm-mid);
  border-color: var(--scm-mid);
  color: #ffffff;
}

/* === Form Controls === */
.form-control:focus,
.form-select:focus {
  border-color: var(--scm-dark);
  box-shadow: 0 0 0 3px rgba(28, 35, 50, 0.12);
}

/* === Tables === */
.table > thead > tr > th {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--scm-muted);
  font-weight: 700;
  border-bottom: 2px solid var(--scm-border);
}

.table-hover > tbody > tr:hover > * {
  background-color: rgba(28, 35, 50, 0.03);
  --bs-table-hover-bg: rgba(28, 35, 50, 0.03);
}

.table a {
  color: var(--scm-dark);
  text-decoration: none;
}

.table a:hover {
  color: var(--scm-mid);
}

/* === Badges === */
.badge.text-bg-info {
  background-color: var(--scm-mid) !important;
  color: #ffffff !important;
}

/* === Login card — flatten inside split-screen panel === */
.scm-login-form .card {
  box-shadow: none;
  border-radius: 0;
}

.scm-login-form .card-body {
  padding: 0;
}

/* === Global links === */
a:not(.btn) {
  color: var(--scm-dark);
}

a:not(.btn):hover {
  color: var(--scm-mid);
}
