@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,700;1,400;1,700&family=Montserrat:wght@600;700&display=swap');

/* Sidebar/nav hover override (most specific, at end of file) */
.md-sidebar .md-nav__link:hover,
.md-sidebar .md-nav__item:hover > .md-nav__link,
.md-sidebar .md-nav__item:focus > .md-nav__link,
.md-sidebar .md-nav__item--active > .md-nav__link,
.md-sidebar .md-nav__link:focus,
.md-sidebar .md-nav__link[aria-current="page"],
.md-sidebar .md-nav__link[aria-current="true"],
.md-sidebar .md-nav__link[aria-selected="true"],
.sidebar ul li a:hover,
.sidebar ul li.active > a,
.sidebar ul li:focus > a {
    background: #202A3C !important;
    color: #D9A441 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    text-decoration: none !important;
}
/* Main content link hover: brighter gold */
.content a:hover, .section-content a:hover, article a:hover {
    color: #D9A441 !important;
    background: none !important;
    text-decoration: underline;
}
/* Sidebar/nav bar color override */
.sidebar, .md-sidebar, .md-nav, .md-nav__list, .md-nav__container {
    background-color: #202A3C !important;
}
/* Top bar color override */
.navbar.drac-bg-purple {
    background-color: #202A3C !important;
    color: ivory !important;
    border-color: ivory !important;
}
.navbar.drac-bg-purple .nav-link,
.navbar.drac-bg-purple .navbar-nav .nav-link,
.navbar.drac-bg-purple .navbar-brand,
.navbar.drac-bg-purple .btn,
.navbar.drac-bg-purple .navbar-toggler {
    color: ivory !important;
}
.navbar.drac-bg-purple .navbar-toggler-icon {
    background-image: none !important;
    border: 1.5px solid ivory !important;
}
.navbar.drac-bg-purple .navbar-toggler-icon:after {
    content: '';
    display: block;
    width: 22px;
    height: 2px;
    background: ivory;
    margin: 5px 0;
}
/* Headings and titles: Montserrat, ivory, semi-bold */
h1, h2, h3, h4, h5, h6, .md-typeset h1, .md-typeset h2, .md-typeset h3, .md-typeset h4, .md-typeset h5, .md-typeset h6 {
    font-family: 'Montserrat', sans-serif !important;
    color: ivory !important;
    font-weight: 600 !important;
}
/* Sidebar and nav: headings/links Montserrat, sidebar text Lora */
.md-nav__title, .md-nav__item, .md-nav__link, .sidebar .logo {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
}
/* Body text: Lora, ivory */
body, .md-typeset, .md-content, .md-main {
    font-family: 'Lora', serif !important;
    color: ivory !important;
}
/* Ensure nav links and sidebar text are ivory */
.md-nav__link, .md-nav__title, .md-nav__item {
    color: ivory !important;
}

/* Set backgrounds */
body,
.md-main,
.md-content,
.md-typeset {
    background-color: #202A3C !important;
    color: ivory !important;
}

/* Sidebar background */
.md-sidebar, .md-nav, .md-nav__list, .md-nav__container {
    background-color: #202A3C !important;
}

/* Divider between sidebar and top bar */
.md-header, .md-header__inner, .md-header__divider, .md-tabs {
    border-bottom: 2px solid ivory !important;
}

/* Headings and titles: Montserrat, ivory, semi-bold */
h1, h2, h3, h4, h5, h6, .md-typeset h1, .md-typeset h2, .md-typeset h3, .md-typeset h4, .md-typeset h5, .md-typeset h6 {
    font-family: 'Montserrat', sans-serif !important;
    color: ivory !important;
    font-weight: 600 !important;
}
/* Sidebar and nav Montserrat semi-bold */
.sidebar, .md-nav, .md-nav__title, .md-nav__item, .md-nav__link, .sidebar .logo {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
}

/* Body text: Lora, ivory */
body, .md-typeset, .md-content, .md-main {
    color: ivory !important;
}

/* Ensure nav links and sidebar text are ivory */
.md-nav__link, .md-nav__title, .md-nav__item {
    color: ivory !important;
}

/* Remove Dracula theme footer */
.d-flex.flex-sm-row.justify-content-between.py-2.border-top.drac-text-black.drac-bg-cyan-green {
    display: none !important;
}

/* Divider between sidebar and main content */
.divider, nav.divider {
    background: #FFFFF0 !important; /* Ivory */
    background-image: none !important;
    border: none !important;
    min-width: 22px;
    width: 22px;
    max-width: 22px;
    min-height: 100vh;
    height: auto;
    box-shadow: none !important;
    margin: 0 0.5rem 0 0;
}
nav.divider {
    box-shadow: 1px 0 4px 0 rgba(32,42,60,0.08);
}

/* Sidebar collapse button: ivory background, navy icon */
.custom-menu .btn,
#sidebarCollapse.btn,
#sidebarCollapse.btn.btn-primary {
    background: #FFFFF0 !important;
    border: none !important;
    color: #202A3C !important;
    box-shadow: none !important;
}

#sidebarCollapse .fa-bars,
.custom-menu .fa-bars {
    color: #202A3C !important;
}

/* Inline code: gold color */
code, .md-typeset code, .md-typeset .code, .md-typeset code:not(.hljs), .md-typeset pre code:not(.hljs) {
  color: #D9A441 !important;
  background: #202A3C !important;
  border-radius: 4px;
  padding: 0.1em 0.3em;
  font-family: 'Fira Mono', 'Menlo', 'Monaco', 'Consolas', monospace;
  font-size: 0.95em;
}

/* Copied feedback for inline code */
code.copied, .md-typeset code.copied {
  background: #D9A441 !important;
  color: #202A3C !important;
  transition: background 0.2s, color 0.2s;
}

/* Nav bar active/focus/selected: gold, no box, no purple */
.navbar .nav-link:focus,
.navbar .nav-link:active,
.navbar .nav-link[aria-current="page"],
.navbar .nav-link[aria-selected="true"],
.navbar .nav-link.active {
  color: #D9A441 !important;
  background: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Custom scrollbar: ivory thumb, navy track, thicker, force override */
::-webkit-scrollbar {
  width: 18px !important;
  background: #202A3C !important;
}
::-webkit-scrollbar-thumb {
  background: #FFFFF0 !important;
  border-radius: 9px !important;
  border: 4px solid #202A3C !important;
}
::-webkit-scrollbar-thumb:hover {
  background: #D9A441 !important;
}
::-webkit-scrollbar-corner {
  background: #202A3C !important;
}

/* Firefox scrollbar: thicker, force override */
html {
  scrollbar-color: #FFFFF0 #202A3C !important;
  scrollbar-width: auto !important;
}