:root {
  --brand-900: #102a4a;
  --brand-800: #14365d;
  --brand-700: #1a4675;
  --brand-200: #dbe7f5;
  --brand-100: #edf3fb;
  --ink-900: #1a2d44;
  --ink-700: #334a66;
}

body {
  color: var(--ink-900);
  background: #f7f9fc;
}

.container {
  width: min(1240px, calc(100% - 2rem));
}

.navbar.fixed-top,
.navbar.navbar-default {
  border: 0;
  border-bottom: 1px solid #284f7c;
  background: linear-gradient(90deg, var(--brand-900), var(--brand-700)) !important;
  box-shadow: 0 4px 18px rgba(16, 42, 74, 0.2);
}

.navbar .navbar-brand {
  color: #f3f7ff !important;
  font-weight: 700;
}

.navbar .navbar-nav .nav-link {
  color: #d8e6fb !important;
  border-radius: 999px;
  border: 1px solid transparent;
  margin-top: 6px;
  margin-bottom: 6px;
  padding-top: 7px;
  padding-bottom: 7px;
  font-weight: 600;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link:focus {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.2);
}

.navbar .navbar-nav .nav-link.active,
.navbar .navbar-nav .show > .nav-link {
  color: #ffffff !important;
  background: rgba(0, 0, 0, 0.2);
  border-color: rgba(255, 255, 255, 0.2);
}

.navbar .navbar-nav .nav-link:focus,
.navbar .navbar-nav .nav-link:focus-visible {
  outline: none;
  box-shadow: none;
}

/* If a dropdown child page is active, keep parent highlight subtle. */
.navbar .nav-item.dropdown > .nav-link.active,
.navbar .nav-item.dropdown.show > .nav-link {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.18);
}

.navbar .dropdown-menu {
  border: 1px solid var(--brand-200);
  box-shadow: 0 8px 22px rgba(16, 42, 74, 0.16);
}

.navbar .dropdown-item {
  color: var(--ink-900);
  border-radius: 8px;
}

.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus {
  color: var(--brand-900);
  background: var(--brand-100);
}

.navbar .dropdown-item.active,
.navbar .dropdown-item:active {
  color: var(--brand-900);
  font-weight: 700;
  background: #d4e6fb;
}

.navbar .form-control {
  border-color: #bfd0e6;
}

.col-md-9[role="main"] {
  background: #ffffff;
  border: 1px solid var(--brand-200);
  border-radius: 14px;
  margin-top: 1rem;
  padding: 2rem 2.15rem;
  box-shadow: 0 8px 22px rgba(16, 42, 74, 0.08);
}

.bs-sidebar .well,
.bs-sidebar .card,
.bs-sidebar .card.bg-body-tertiary,
.bs-sidebar .navbar-collapse {
  background: #ffffff !important;
  border: 1px solid var(--brand-200);
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(16, 42, 74, 0.06);
}

.bs-sidebar .nav-link {
  color: var(--ink-700);
  border-left: 2px solid transparent;
  border-radius: 8px;
}

.bs-sidebar .nav-link:hover,
.bs-sidebar .nav-link:focus {
  color: var(--brand-900);
  background: var(--brand-100);
}

.bs-sidebar .nav-link.active,
.bs-sidebar .nav-link[aria-current="page"] {
  color: var(--brand-900);
  font-weight: 700;
  border-left-color: var(--brand-700);
  background: var(--brand-100);
}

/* Keep page title row as a section label, not a second highlighted item. */
.bs-sidebar .nav-item[data-bs-level="1"] > .nav-link {
  color: var(--ink-900);
  font-weight: 700;
  border-left-color: transparent;
  background: transparent;
}

.bs-sidebar .nav-item[data-bs-level="1"] > .nav-link:hover,
.bs-sidebar .nav-item[data-bs-level="1"] > .nav-link:focus,
.bs-sidebar .nav-item[data-bs-level="1"] > .nav-link.active,
.bs-sidebar .nav-item[data-bs-level="1"] > .nav-link[aria-current="page"] {
  color: var(--ink-900);
  border-left-color: transparent;
  background: transparent;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--brand-900);
}

a {
  color: var(--brand-700);
}

a:hover,
a:focus {
  color: var(--brand-900);
}

code {
  color: #173b63;
  background: #eef4fb;
  border: 1px solid #d8e5f5;
  border-radius: 6px;
}

pre {
  border-radius: 10px;
}

@media (max-width: 991px) {
  .container {
    width: calc(100% - 1.2rem);
  }

  .col-md-9[role="main"] {
    padding: 1.3rem 1.15rem;
  }
}
