:root {
  --vos-navy: #102f4f;
  --vos-navy-deep: #0a2238;
  --vos-orange: #f28c28;
  --vos-orange-dark: #d96f0b;
  --vos-orange-pale: #fff4e8;
  --vos-blue-pale: #f4f8fb;
  --vos-border: #d8e1e8;
  --vos-text: #233746;
  --vos-muted: #6b7c89;
}

body {
  color: var(--vos-text);
  background: var(--vos-blue-pale);
}

.vos-navbar {
  background: var(--vos-navy);
  border-bottom: 4px solid var(--vos-orange);
  box-shadow: 0 4px 16px rgba(10, 34, 56, 0.18);
}

.vos-navbar .navbar-brand,
.vos-navbar .nav-link {
  color: #fff;
}

.vos-navbar .nav-link:hover,
.vos-navbar .nav-link:focus {
  color: #fff;
  background: rgba(242, 140, 40, 0.18);
  border-radius: 0.4rem;
}

.vos-navbar .navbar-toggler {
  background: #fff;
}

.nav-logo.vos-logo {
  width: 178px;
  height: 46px;
  padding: 0.15rem 0.4rem;
  object-fit: contain;
  background: #fff;
  border-radius: 0.35rem;
}

.vos-login-logo {
  width: min(290px, 88%);
  height: auto;
  margin-bottom: 1rem;
}

.nav-product-name {
  border-left-color: rgba(242, 140, 40, 0.9);
}

.page-heading h1,
.placeholder-panel h2,
.kpi-card strong,
.panel-heading h2,
.detail-title-row h1 {
  color: var(--vos-navy);
}

.eyebrow {
  color: var(--vos-orange-dark);
}

.btn-primary {
  color: #fff;
  background-color: var(--vos-orange);
  border-color: var(--vos-orange);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  color: #fff;
  background-color: var(--vos-orange-dark) !important;
  border-color: var(--vos-orange-dark) !important;
}

.btn-outline-primary {
  color: var(--vos-navy);
  border-color: var(--vos-navy);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
  color: #fff;
  background-color: var(--vos-navy);
  border-color: var(--vos-navy);
}

a {
  color: #145a8d;
}

a:hover {
  color: var(--vos-orange-dark);
}

.kpi-card {
  border-color: var(--vos-border);
  border-top-color: var(--vos-orange);
  box-shadow: 0 6px 20px rgba(10, 34, 56, 0.05);
}

.dashboard-panel,
.placeholder-panel,
.filter-panel,
.compact-list a,
.insight-card {
  border-color: var(--vos-border);
}

.invoice-table thead th {
  background: #edf3f7;
}

.bar-track i,
.stacked-track .bar-ap {
  background: var(--vos-orange);
}

.forecast-notice {
  border-left-color: var(--vos-orange);
  background: var(--vos-orange-pale);
}

.insight-card {
  border-left-color: var(--vos-orange);
  background: #fffaf5;
}

.insight-card span,
.insight-card small {
  color: var(--vos-orange-dark);
}

.login-card {
  border-top: 5px solid var(--vos-orange);
}

.app-footer {
  border-top: 1px solid var(--vos-border);
  background: #fff;
  color: var(--vos-muted);
}

.form-control:focus,
.form-select:focus {
  border-color: rgba(242, 140, 40, 0.7);
  box-shadow: 0 0 0 0.2rem rgba(242, 140, 40, 0.15);
}

@media (max-width: 768px) {
  .nav-logo.vos-logo {
    width: 150px;
  }

  .nav-product-name {
    display: none;
  }
}
