body.quarto-dark h1,
body.quarto-dark h2,
body.quarto-dark h3,
body.quarto-dark h4 {
  color: #f9fbff;
}

body.quarto-dark .quarto-title-block .quarto-title-meta-heading,
body.quarto-dark .quarto-title-block .quarto-title-meta-contents {
  color: #dfe6ff;
}

body.cs101-hide-crumbs .quarto-title-breadcrumbs,
body.cs101-hide-crumbs .quarto-title-block nav.quarto-title-breadcrumbs {
  display: none !important;
}

.navbar .navbar-brand-logo,
.navbar .navbar-brand-logo .navbar-logo {
  width: 3.5rem !important;
  height: 3.5rem !important;
  min-width: 3.5rem !important;
  min-height: 3.5rem !important;
}

body.quarto-dark .callout {
  background: rgba(18, 22, 36, 0.92);
  border: 1px solid rgba(142, 160, 255, 0.45);
  color: #e6e9ff;
  border-radius: 1.5rem;
  box-shadow: 0 25px 55px -30px rgba(0, 0, 0, 0.9);
}

body.quarto-dark .nav-page,
body.quarto-dark .quarto-page-breadcrumbs,
body.quarto-dark .quarto-secondary-nav {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
}

body.quarto-dark .nav-page a,
body.quarto-dark .nav-page .nav-page-label,
body.quarto-dark .nav-page .nav-page-title {
  color: #ffffff !important;
}

body.quarto-light .nav-page,
:root[data-theme='light'] .nav-page {
  color: #000000 !important;
}

body.quarto-light .nav-page a,
body.quarto-light .nav-page .nav-page-label,
body.quarto-light .nav-page .nav-page-title,
:root[data-theme='light'] .nav-page a,
:root[data-theme='light'] .nav-page .nav-page-label,
:root[data-theme='light'] .nav-page .nav-page-title {
  color: #000000 !important;
}

body.quarto-light .callout.callout-warning,
:root[data-theme='light'] .callout.callout-warning {
  border-color: rgba(30, 61, 124, 0.18);
  border-left: 4px solid #1e3d7c;
  background: #edf1ff;
  color: #2f2a3b;
}

body.quarto-light .callout.callout-warning .callout-header,
:root[data-theme='light'] .callout.callout-warning .callout-header {
  background: rgba(226, 233, 255, 0.85);
  border-bottom: 1px solid rgba(30, 61, 124, 0.12);
}

body.quarto-light .callout.callout-warning .callout-title,
body.quarto-light .callout.callout-warning .callout-title-container,
:root[data-theme='light'] .callout.callout-warning .callout-title,
:root[data-theme='light'] .callout.callout-warning .callout-title-container {
  color: #1e3d7c;
}

body.quarto-dark .callout-warning {
  border-color: rgba(32, 80, 255, 0.95);
  color: #e6e9ff;
}

body.quarto-dark .callout-warning .callout-title,
body.quarto-dark .callout-warning .callout-title-container {
  color: #2050ff !important;
}

body.quarto-dark .callout-note {
  border-color: rgba(32, 80, 255, 0.95);
}

body.quarto-dark .callout-note .callout-title,
body.quarto-dark .callout-note .callout-title-container {
  color: #2050ff !important;
}

body.quarto-dark .quarto-float-caption,
body.quarto-dark figure .figure-caption,
body.quarto-dark .figure-caption {
  color: #ffffff !important;
}

body.quarto-dark .footnotes,
body.quarto-dark .footnotes p,
body.quarto-dark .footnotes li {
  color: #ffffff !important;
}

/* Sidebar and margin styling to match docs dark blue */
body.quarto-dark #quarto-sidebar,
body.quarto-dark .quarto-sidebar,
body.quarto-dark nav.sidebar,
body.quarto-dark nav.sidebar-navigation,
body.quarto-dark #quarto-sidebar.sidebar-navigation,
body.quarto-dark .sidebar,
body.quarto-dark .sidebar-menu-container {
  background: #0a1126 !important;
  border-right: 1px solid #000000;
  box-shadow: inset 0 0 0 1px #000000;
}

body.quarto-dark #quarto-sidebar .sidebar-menu,
body.quarto-dark #quarto-sidebar .sidebar-section {
  background: transparent !important;
}

body.quarto-dark #quarto-sidebar .sidebar-menu-container {
  border-top: 1px solid #0a1126 !important;
  border-bottom: 1px solid #0a1126 !important;
  box-shadow: none !important;
}

body.quarto-dark #quarto-sidebar .sidebar-item a,
body.quarto-dark #quarto-sidebar .sidebar-item-text,
body.quarto-dark #quarto-sidebar .sidebar-link {
  color: #f3f5ff !important;
}

body.quarto-dark #quarto-sidebar .sidebar-item a:hover,
body.quarto-dark #quarto-sidebar .sidebar-item a.active {
  color: #ffffff !important;
  background: rgba(47, 76, 137, 0.45);
}

body.quarto-dark #quarto-margin-sidebar,
body.quarto-dark .margin-sidebar {
  background: #000000;
  border-left: 1px solid #000000;
  box-shadow: none;
}

body.quarto-dark #quarto-content,
body.quarto-dark main,
body.quarto-dark main.content,
body.quarto-dark .page-columns,
body.quarto-dark .page-columns .content {
  background: #000000 !important;
  background-color: #000000 !important;
}

/* Light mode sidebar tint */
body.quarto-light #quarto-sidebar,
body.quarto-light .quarto-sidebar,
body.quarto-light nav.sidebar,
body.quarto-light nav.sidebar-navigation,
body.quarto-light #quarto-sidebar.sidebar-navigation {
  background: #f7f1ff !important;
  background-image: none !important;
  border-right: 1px solid rgba(30, 61, 124, 0.2);
  box-shadow: inset -6px 0 14px rgba(40, 25, 86, 0.15);
}

body.quarto-light #quarto-sidebar > div.sidebar-menu-container,
:root[data-theme='light'] #quarto-sidebar > div.sidebar-menu-container {
  border-color: #f7f1ff !important;
  box-shadow: none !important;
}

body.quarto-light #quarto-sidebar > div.sidebar-menu-container > ul,
:root[data-theme='light'] #quarto-sidebar > div.sidebar-menu-container > ul {
  border-color: #f7f1ff !important;
  box-shadow: none !important;
}

body.quarto-light #quarto-sidebar-glass {
  background: rgba(243, 234, 255, 0.7) !important;
  background-image: none !important;
}

body.quarto-light #quarto-sidebar .sidebar-menu,
body.quarto-light #quarto-sidebar .sidebar-section,
body.quarto-light #quarto-sidebar .sidebar-item,
body.quarto-light #quarto-sidebar .sidebar-item a {
  background: transparent !important;
}

body.quarto-light #quarto-margin-sidebar,
body.quarto-light .margin-sidebar,
:root[data-theme='light'] #quarto-margin-sidebar,
:root[data-theme='light'] .margin-sidebar {
  background: #ffffff !important;
  border-left: 1px solid #ffffff !important;
  box-shadow: none !important;
}

body.quarto-light #quarto-sidebar .sidebar-item a:hover,
body.quarto-light #quarto-sidebar .sidebar-item a.active {
  background: #d9c6ff !important;
  border-left-color: #1e3d7c;
}
