:root,
[data-bs-theme="light"] {

  --al-green: #4CAF4F;
  --al-green-800: #2E7D32;
  --al-green-900: #1B5E20;
  --al-green-50: #E8F5E9;
  --al-green-100: #A5D6A7;
  --al-slate: #263238;

  --al-50:  #ECEFF1;
  --al-100: #CFD8DC;
  --al-300: #90A4AE;
  --al-500: #607D8B;
  --al-700: #455A64;
  --al-900: #263238;

  --al-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
             "Liberation Mono", monospace;

  --al-radius-sm: 0.25rem;
  --al-radius-lg: 0.5rem;

  --al-shadow-sm: 0 1px 2px rgba(38, 50, 56, .08);
  --al-shadow:    0 2px 8px rgba(38, 50, 56, .10);
  --al-shadow-lg: 0 8px 24px rgba(38, 50, 56, .14);

  --bs-link-color: var(--al-green-800);
  --bs-link-color-rgb: 46, 125, 50;
  --bs-link-hover-color: var(--al-green-900);
  --bs-link-hover-color-rgb: 27, 94, 32;

  --bs-primary: var(--al-green-800);
  --bs-primary-rgb: 46, 125, 50;
  --bs-primary-text-emphasis: var(--al-green-900);
  --bs-primary-bg-subtle: var(--al-green-50);
  --bs-primary-border-subtle: var(--al-green-100);

  --bs-success: var(--al-green-800);
  --bs-success-rgb: 46, 125, 50;
  --bs-success-text-emphasis: var(--al-green-900);
  --bs-success-bg-subtle: var(--al-green-50);
  --bs-success-border-subtle: var(--al-green-100);

  --bs-form-valid-color: var(--al-green-800);
  --bs-form-valid-border-color: var(--al-green-800);
}

.btn-primary,
.btn-success {
  --bs-btn-bg: var(--al-green-800);
  --bs-btn-border-color: var(--al-green-800);
  --bs-btn-hover-bg: var(--al-green-900);
  --bs-btn-hover-border-color: var(--al-green-900);
  --bs-btn-active-bg: var(--al-green-900);
  --bs-btn-active-border-color: var(--al-green-900);
  --bs-btn-disabled-bg: var(--al-green-800);
  --bs-btn-disabled-border-color: var(--al-green-800);
  --bs-btn-focus-shadow-rgb: 46, 125, 50;
}

.btn-outline-primary,
.btn-outline-success {
  --bs-btn-color: var(--al-green-800);
  --bs-btn-border-color: var(--al-green-800);
  --bs-btn-hover-bg: var(--al-green-800);
  --bs-btn-hover-border-color: var(--al-green-800);
  --bs-btn-active-bg: var(--al-green-800);
  --bs-btn-active-border-color: var(--al-green-800);
  --bs-btn-disabled-color: var(--al-green-800);
  --bs-btn-focus-shadow-rgb: 46, 125, 50;
}

.al-tech {
  font-family: var(--al-mono);
  font-size: .9375em;
  color: var(--al-900);
  overflow-wrap: anywhere;
}

.al-num,
.table td.al-num,
.table th.al-num {
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.tick ul li::before {
  background-color: var(--al-green-800) !important;
}

.sidebar-sticky .nav-link.active,
.sidebar-sticky .nav-link:hover,
.sidebar-sticky .nav-link:focus {
  color: var(--al-green-800);
}

.text-gray,
.al-muted {
  color: var(--al-500) !important;
}

#cookie_notification {
  background-color: rgba(38, 50, 56, .92);
  border-radius: var(--al-radius-lg);
  box-shadow: var(--al-shadow-lg);
}
#cookie_notification button {
  background-color: var(--al-green);
  color: #fff;
  border: 0;
  border-radius: var(--al-radius-sm);
}

.module-disabled {
  opacity: .6;
  filter: grayscale(1);
}

:focus-visible {
  outline: 2px solid var(--al-green);
  outline-offset: 2px;
}
