/* =========================================================================
   CSS Variables
   ========================================================================= */

:root {
  --sst-accent-color-bright: #ff5000;
  --sst-accent-color-muted: #ff9a6c;
}

html[data-theme="light"] {
  --pst-color-surface: #f3f4f5;
  --pst-color-border: #d1d5da;
  --pst-color-warning-bg: #f5e4d4;

  /* Steel blue link/card colors */
  --pst-color-link: #2e6da4;
  --pst-color-link-hover: #1f5080;
  --pst-color-primary: #2e6da4;
  --pst-color-primary-highlight: #1f5080;
  --sd-color-primary-highlight: #1f5080;

  /* Orange secondary accent */
  --pst-color-secondary: #d07530;
  --pst-color-secondary-highlight: #b85f1f;
  --pst-color-secondary-text: #ffffff;
  --pst-color-secondary-highlight-text: #ffffff;

  --pst-color-inline-code: #912583;
  --pst-color-inline-code-links: var(--pst-color-link);
  --pst-color-link-higher-contrast: var(--pst-color-link);

  --pst-color-target: #f3cf95;

  --sst-footer-background-color: #f6f6f6;
}

html[data-theme="dark"] {
  /* Steel blue link/card colors */
  --pst-color-link: #5b9fd6;
  --pst-color-link-hover: #4a85bc;
  --pst-color-primary: #5b9fd6;
  --pst-color-primary-highlight: #4a85bc;
  --sd-color-primary-highlight: #4a85bc;

  /* Orange secondary accent */
  --pst-color-secondary: #e08a42;
  --pst-color-secondary-highlight: #d07530;
  --pst-color-secondary--text: #14181e;
  --pst-color-secondary-highlight-text: #14181e;

  --pst-color-inline-code: #f3c7ee;
  --pst-color-inline-code-links: #5b9fd6;
  --pst-color-link-higher-contrast: #5b9fd6;

  --pst-color-target: #5a3c19;

  --sst-footer-background-color: #282828;
}

/* =========================================================================
   Header / Navigation
   ========================================================================= */
/* Ensure header bar hover color doesn't use blue links*/
.bd-header a.navbar-brand {
  color: var(--sst-accent-color-muted);
}

.navbar-brand:hover,
.navbar-brand:visited:hover {
  color: var(--sst-accent-color-muted);
}

.bd-header ul.navbar-nav > li.nav-item.dropdown > .dropdown-toggle:hover {
  color: var(--sst-accent-color-muted);
}

.bd-header ul.navbar-nav > li.nav-item > .nav-link:hover {
  color: var(--sst-accent-color-muted);
}

.concertina-toggle.dropdown-item:hover,
.navbar-nav .concertina-toggle:hover,
.bd-header .dropdown-item:hover,
.bd-header .concertina-toggle:hover {
  color: var(--sst-accent-color-muted);
}

.dropdown-item.active,
.dropdown-item:active {
  color: var(--sst-accent-color-muted);
}

/* Selected theme in the light/dark mode dropdown */
html[data-theme="light"] .theme-switch-button + .dropdown-menu {
  --bs-dropdown-link-active-color: var(--pst-color-link);
}

/* Vertical sidebar/content separator */
html[data-theme="light"] .bd-sidebar-primary {
  border-right-width: thin;
  border-right-color: #c4c4c4;
}

html[data-theme="dark"] .bd-sidebar-primary {
  border-right-width: thin;
  border-right-color: #666666;
}

/* =========================================================================
   Footer
   ========================================================================= */

html[data-theme="light"] .bd-footer {
  border-top: 1px solid #c4c4c4;
}

html[data-theme="dark"] .bd-footer {
  border-top: 1px solid #666666;
}

/* =========================================================================
   Admonitions (dark mode)
   ========================================================================= */

/* Muted slate blue for general admonitions (note, important, etc.) */
html[data-theme="dark"] .admonition {
  border-color: var(--pst-color-link);
}
html[data-theme="dark"] .admonition > .admonition-title {
  background-color: #1c4378;
}
html[data-theme="dark"] .admonition > .admonition-title:after {
  color: #5b9fd6;
}

/* Orange theming for warning admonitions */
html[data-theme="dark"] .admonition.warning {
  border-color: #c07030;
}
html[data-theme="dark"] .admonition.warning > .admonition-title {
  background-color: #6d4225;
}
html[data-theme="dark"] .admonition.warning > .admonition-title:after {
  color: #e08a42;
}

/* =========================================================================
   Typography / Code
   ========================================================================= */

code.literal {
  background-color: var(--pst-color-surface);
  border: 1px solid var(--pst-color-border);
  border-radius: 0.25rem;
  padding: 0.1rem 0.25rem;
}

/* Prevent unnecessary vertical scrollbars for MathJax equations */
mjx-container {
  overflow: visible !important;
  padding-bottom: 0 !important;
}
