/* Self-hosted fonts (OFL-1.1) — loaded from canonical branding/fonts-face.css */
@import url('fonts-face.css');

/* ---- Sidebar / navigation ---- */
.wy-side-nav-search {
  background-color: #6B4FA0;
  border-bottom: 3px solid #E8B84B;
}
.wy-side-nav-search > a,
.wy-side-nav-search .wy-dropdown > a {
  color: #F4F0FA;
  font-family: 'EB Garamond', 'Palatino Linotype', serif;
  font-style: italic;
  font-weight: 600;
}
.wy-side-nav-search .version {
  color: #E8B84B;
  font-family: 'Jost', 'Segoe UI', sans-serif;
}
.wy-nav-side {
  background-color: #2A1850;
}
.wy-menu-vertical a {
  color: rgba(244,240,250,0.82);
  font-family: 'Jost', 'Segoe UI', sans-serif;
}
.wy-menu-vertical a:hover {
  background-color: rgba(107,79,160,0.35);
  color: #E8B84B;
}
.wy-menu-vertical li.current > a,
.wy-menu-vertical li.current > a:hover {
  background-color: #6B4FA0;
  color: #F4F0FA;
  border-right: 3px solid #E8B84B;
}
.wy-menu-vertical li.toctree-l1.current > a {
  background-color: #6B4FA0;
}
.wy-menu-vertical li.toctree-l2.current > a {
  background-color: rgba(107,79,160,0.6);
}

/* ---- Topbar ---- */
.wy-nav-top {
  background-color: #6B4FA0;
}
.wy-nav-top a {
  color: #F4F0FA;
  font-family: 'EB Garamond', serif;
  font-style: italic;
}

/* ---- Base font size: match Jekyll site (root 22px → 1.05rem body = 23.1px) ---- */
html {
  font-size: 22px;
}

/* ---- Content area ---- */
.wy-nav-content-wrap { background-color: #F4F0FA; }
.wy-nav-content      { background-color: #F4F0FA; max-width: 1100px; }

/* ---- Headings ---- */
h1, h2, h3, h4, h5, h6 {
  font-family: 'EB Garamond', 'Palatino Linotype', serif;
  font-style: italic;
  font-weight: 600;
  color: #2A1850;
}
h2 {
  border-bottom: 2px solid #E8B84B;
  padding-bottom: 0.2em;
}

/* ---- Body text ---- */
.wy-nav-content p,
.wy-nav-content li,
.wy-nav-content dd,
.wy-nav-content td {
  font-family: 'EB Garamond', 'Palatino Linotype', serif;
  font-size: 1.05rem;
  line-height: 1.75;
  color: #2A1850;
}

/* ---- Links ---- */
a           { color: #6B4FA0; }
a:hover     { color: #C4664A; }
a:visited   { color: #5A3E8C; }
.wy-breadcrumbs a { color: #6B4FA0; }

/* ---- Visited links on dark sidebar/navbar backgrounds ---- */
.wy-side-nav-search > a:visited,
.wy-side-nav-search .wy-dropdown > a:visited {
  color: #F4F0FA;
}
.wy-menu-vertical a:visited {
  color: rgba(244,240,250,0.82);
}
.wy-menu-vertical li.current > a:visited {
  color: #F4F0FA;
}
.wy-nav-top a:visited {
  color: #F4F0FA;
}

/* ---- Code / pre ---- */
code, tt {
  font-family: 'Fira Code', 'Consolas', monospace;
  background-color: #E8E0F8;
  color: #5A3E8C;
  padding: 0.1em 0.3em;
  border-radius: 3px;
}
pre, div.highlight {
  font-family: 'Fira Code', 'Consolas', monospace;
  background-color: #E8E0F8;
  border-left: 3px solid #E8B84B;
}
div.highlight pre {
  background-color: transparent;
  color: #2A1850;
}

/* ---- Tighten paragraph → list spacing ---- */
.wy-nav-content p:has(+ ul),
.wy-nav-content p:has(+ ol) {
  margin-bottom: 0;
}
.wy-nav-content p:has(+ dl) {
  margin-bottom: 12px;
}

/* ---- Spoiler / collapsible blocks ---- */
details {
  margin-bottom: 1.5em;
}

/* ---- Footer ---- */
footer {
  background-color: #EDE8F7;
  border-top: 1px solid #D6CCF0;
  font-family: 'Jost', 'Segoe UI', sans-serif;
  color: #8A7A9B;
}
