/* LDCMT.tools brand layer.
   Loaded after design-system.css so the established component and view contracts remain intact. */

:root {
  --ldc-navy: #0b1f3a;
  --ldc-navy-hover: #102c50;
  --ldc-primary: #1e5b8a;
  --ldc-primary-hover: #17486e;
  --ldc-secondary: #58708f;
  --ldc-gold: #e6a31a;
  --ldc-gold-dark: #a86f00;
  --ldc-success: #2f6b46;
  --ldc-warning: #a86f00;
  --ldc-danger: #a43a3a;
  --ldc-info: #2d6f8f;
  --ldc-muted: #66778a;
  --ldc-bg: #eef3f7;
  --ldc-surface: #ffffff;
  --ldc-surface-subtle: #f6f8fa;
  --ldc-border: #d8e0e8;
  --ldc-border-strong: #b9c6d3;
  --ldc-hover: #edf3f7;
  --ldc-focus: #1e5b8a;
  --ldc-disabled: #98a6b5;
  --ldc-text: #17263a;
  --ldc-text-muted: #607185;
  --ldc-text-label: #718197;
  --ldc-accent: var(--ldc-primary);
  --ldc-accent-light: #dceaf4;
  --ldc-stat-blue: #3478a5;
  --ldc-stat-amber: #c18412;
  --ldc-stat-green: #3f7b56;
  --ldc-stat-red: #b44b4b;
  --ldc-shadow-focus: 0 0 0 0.2rem rgba(30, 91, 138, 0.25);
  --bs-primary: var(--ldc-primary);
  --bs-primary-rgb: 30, 91, 138;
  --bs-success: var(--ldc-success);
  --bs-success-rgb: 47, 107, 70;
  --bs-warning: var(--ldc-warning);
  --bs-warning-rgb: 168, 111, 0;
  --bs-danger: var(--ldc-danger);
  --bs-danger-rgb: 164, 58, 58;
  --bs-info: var(--ldc-info);
  --bs-info-rgb: 45, 111, 143;
}

.navbar.bg-primary {
  background-color: var(--ldc-navy) !important;
}

.navbar-brand {
  min-width: max-content;
  text-decoration: none;
}

.brand-mark {
  width: 2.5rem;
  height: 2rem;
  object-fit: contain;
  background: #fff;
  border-radius: 0.35rem;
  padding: 0.12rem;
}

.brand-wordmark {
  display: inline-flex;
  align-items: baseline;
  font-weight: 750;
  letter-spacing: -0.025em;
  line-height: 1;
}

.brand-wordmark-ldc { color: #fff; }
.brand-wordmark-mt { color: var(--ldc-gold); }
.brand-wordmark-tools { color: #b8c5d4; font-weight: 500; }

.brand-tagline {
  color: #c9d4df;
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
  white-space: nowrap;
}

.btn-primary {
  --bs-btn-bg: var(--ldc-primary);
  --bs-btn-border-color: var(--ldc-primary);
  --bs-btn-hover-bg: var(--ldc-primary-hover);
  --bs-btn-hover-border-color: var(--ldc-primary-hover);
  --bs-btn-active-bg: var(--ldc-primary-hover);
  --bs-btn-active-border-color: var(--ldc-primary-hover);
}

.btn-success {
  --bs-btn-bg: var(--ldc-success);
  --bs-btn-border-color: var(--ldc-success);
}

.btn-warning {
  --bs-btn-bg: var(--ldc-gold);
  --bs-btn-border-color: var(--ldc-gold);
  --bs-btn-color: #17202b;
  --bs-btn-hover-color: #17202b;
}

.btn-danger {
  --bs-btn-bg: var(--ldc-danger);
  --bs-btn-border-color: var(--ldc-danger);
}

.text-primary { color: var(--ldc-primary) !important; }
.text-success { color: var(--ldc-success) !important; }
.text-warning { color: var(--ldc-warning) !important; }
.text-danger { color: var(--ldc-danger) !important; }
.text-info { color: var(--ldc-info) !important; }
.bg-primary { background-color: var(--ldc-primary) !important; }

/* Workflow colors remain distinguishable by hue and luminance; templates continue
   to include text and icons, so color is never the only status signal. */
.status-category-draft,
.status-Proposed,
.status-Draft,
.status-unscheduled,
.status-not_scheduled,
.status-planned {
  background: #e7ebef;
  color: #4d5c6c;
  border-color: #cbd3dc;
}

.status-category-scheduled,
.status-Invited,
.status-Scheduled,
.status-confirmed,
.status-awaiting_khoc_dates {
  background: #dceaf4;
  color: #174f77;
  border-color: #adcadf;
}

.status-category-in_progress,
.status-Tentative,
.status-in_progress,
.status-in_survey,
.status-review_ready,
.status-dates_submitted {
  background: #fff0c9;
  color: #795000;
  border-color: #e7c46d;
}

.status-category-needs_attention,
.status-Declined,
.status-Cancelled,
.status-cancelled,
.status-needs_more,
.status-open,
.status-no_response {
  background: #f7dfdf;
  color: #842e2e;
  border-color: #dfaaaa;
}

.status-category-completed,
.status-Completed,
.status-completed,
.status-accepted,
.status-submitted,
.status-done {
  background: #deede3;
  color: #285b3c;
  border-color: #acd0b8;
}

.status-category-archived,
.status-Archived,
.status-archived,
.status-closed,
.status-inactive {
  background: #e9e5ef;
  color: #5b4e6d;
  border-color: #cfc5dc;
}

.alert-warning {
  --bs-alert-color: #654400;
  --bs-alert-bg: #fff3d6;
  --bs-alert-border-color: #e7c875;
}

.alert-info {
  --bs-alert-color: #174f68;
  --bs-alert-bg: #e0eef4;
  --bs-alert-border-color: #afd0df;
}

.alert-success {
  --bs-alert-color: #28583b;
  --bs-alert-bg: #e1efe6;
  --bs-alert-border-color: #afd0ba;
}

.alert-danger {
  --bs-alert-color: #7d2c2c;
  --bs-alert-bg: #f8e1e1;
  --bs-alert-border-color: #dfaaaa;
}

footer {
  background: var(--ldc-surface-subtle);
}

.footer-brand-mark {
  width: 1.5rem;
  height: 1.25rem;
  object-fit: contain;
}

@media (max-width: 991.98px) {
  .brand-tagline { display: none; }
}

@media (max-width: 575.98px) {
  .brand-mark { width: 2.15rem; height: 1.75rem; }
  .brand-wordmark { font-size: 0.95rem; }
}
