/* FUES docs — Daft Punk x LCARS: amber/gold accents, deep-space blacks,
   warm typography, generous space, Material Design 2 elevation */

:root {
  /* Deep-space header, warm amber accent */
  --md-primary-fg-color: #121218;
  --md-primary-fg-color--light: #1e1e28;
  --md-primary-fg-color--dark: #0a0a10;
  --md-accent-fg-color: #c87f2a;

  /* Warm light backgrounds */
  --md-default-bg-color: #faf9f6;
  --md-default-fg-color: #1c1c1e;
  --md-typeset-a-color: #b07020;
  --md-code-bg-color: #f3f1ec;

  /* Material 2 elevation */
  --elevation-1: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.06);
  --elevation-2: 0 3px 6px rgba(0,0,0,0.10), 0 2px 4px rgba(0,0,0,0.06);
}

[data-md-color-scheme="slate"] {
  --md-primary-fg-color: #0a0a10;
  --md-primary-fg-color--light: #121218;
  --md-primary-fg-color--dark: #060608;
  --md-accent-fg-color: #e8a838;
  --md-default-bg-color: #0d0d14;
  --md-default-fg-color: #e4e2dc;
  --md-typeset-a-color: #e8a838;
  --md-code-bg-color: #161620;
  --elevation-1: 0 1px 3px rgba(0,0,0,0.4);
  --elevation-2: 0 3px 6px rgba(0,0,0,0.5);
}

/* ── Header: deep-space black ── */
.md-header {
  background: #0e0e16;
  box-shadow: var(--elevation-2);
  letter-spacing: 0.02em;
}

.md-header__title {
  font-weight: 700;
}

.md-tabs {
  background: #0e0e16;
  border-bottom: 1px solid rgba(232, 168, 56, 0.12);
}

/* ── Typography: tight heading hierarchy ── */
.md-typeset h1 {
  font-weight: 700;
  letter-spacing: -0.01em;
}

[data-md-color-scheme="slate"] .md-typeset h1 {
  color: #f0ede6;
}

.md-typeset h2 {
  font-weight: 600;
  margin-top: 1.6em;
  padding-bottom: 0.25em;
  border-bottom: 1px solid #ddd5ca;
  color: #2a2520;
}

[data-md-color-scheme="slate"] .md-typeset h2 {
  color: #e4ddd0;
  border-bottom-color: rgba(228, 221, 208, 0.15);
}

.md-typeset h3 {
  font-weight: 600;
  color: #444;
}

[data-md-color-scheme="slate"] .md-typeset h3 {
  color: #bab0a0;
}

.md-typeset h4 {
  font-weight: 600;
  color: #666;
  text-transform: uppercase;
  font-size: 0.8em;
  letter-spacing: 0.04em;
}

[data-md-color-scheme="slate"] .md-typeset h4 {
  color: #9a9488;
}

/* ── Code ── */
.md-typeset code {
  background-color: var(--md-code-bg-color);
  border-radius: 3px;
  padding: 0.1em 0.35em;
  font-size: 0.85em;
}

.md-typeset pre {
  border-radius: 4px;
}

/* ── Admonitions ── */
.md-typeset .admonition,
.md-typeset details {
  border-radius: 4px;
  border-left-width: 3px;
}

.md-typeset .admonition.note,
.md-typeset details.note {
  border-color: #c87f2a;
}

.md-typeset .note > .admonition-title,
.md-typeset .note > summary {
  background: rgba(200, 127, 42, 0.06);
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-color: #cc4444;
}

.md-typeset .admonition.tip,
.md-typeset details.tip {
  border-color: #2aaa8a;
}

.md-typeset .admonition.abstract,
.md-typeset details.abstract {
  border-color: #6a8caa;
}

.md-typeset .admonition.example,
.md-typeset details.example {
  border-color: #9a7acc;
}

/* ── Body font size (IBM Plex Sans runs slightly large) ── */
.md-typeset {
  font-size: 0.78rem;
}

/* ── Tables ── */
.md-typeset table:not([class]) {
  font-size: 0.72rem;
}

.md-typeset table:not([class]) th {
  font-weight: 600;
  letter-spacing: 0.02em;
}

/* ── Links ── */
.md-typeset a {
  text-decoration-color: rgba(176, 112, 32, 0.25);
  text-underline-offset: 2px;
}

.md-typeset a:hover {
  text-decoration-color: currentColor;
}

/* ── Navigation ── */
.md-nav__item--active > .md-nav__link {
  font-weight: 600;
  color: var(--md-accent-fg-color);
}

/* ── Footer: match header ── */
.md-footer {
  background: #0e0e16;
}

/* ── Blockquotes ── */
.md-typeset blockquote {
  border-left: 3px solid #c87f2a;
  padding: 0.4em 1em;
  background: rgba(200, 127, 42, 0.03);
}

[data-md-color-scheme="slate"] .md-typeset blockquote {
  background: rgba(232, 168, 56, 0.05);
}

/* ═══════════════════════════════════════════════════════════════════
   Jupyter notebook styling (mkdocs-jupyter)
   ═══════════════════════════════════════════════════════════════════ */

/* ── Input cells ── */
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-InputArea-editor,
[data-md-color-scheme="slate"] .jupyter-wrapper .highlight {
  background-color: #161620 !important;
}

/* ── Output cells ── */
.jupyter-wrapper .jp-OutputArea-output {
  background-color: transparent;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-OutputArea-output {
  color: #e4e2dc;
  background-color: transparent !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-OutputArea-output pre {
  color: #e4e2dc !important;
  background-color: #161620 !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-OutputArea-child {
  background-color: transparent !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-Cell-outputWrapper {
  background-color: transparent !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-OutputArea {
  background-color: transparent !important;
}

/* Output HTML tables (e.g. pandas) */
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon.jp-OutputArea-output {
  background-color: #161620 !important;
  color: #e4e2dc !important;
}

/* ── Notebook markdown cells + all text in dark mode ── */
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon p,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon li,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon h1,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon h2,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon h3,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon h4,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon td,
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon th {
  color: #e4e2dc !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon th {
  background-color: #1a1a24 !important;
  border-color: #2a2a36 !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon td {
  border-color: #22222e !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon table {
  background-color: #0d0d14 !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon a {
  color: #e8a838 !important;
}

[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedHTMLCommon code {
  color: #e4e2dc;
  background-color: #161620;
}

/* ── Notebook text output (stdout/stderr) ── */
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-RenderedText pre {
  color: #e4e2dc !important;
}

/* ── Plot images: invert in dark mode for white-background matplotlib ── */
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-OutputArea-output img,
[data-md-color-scheme="slate"] .md-content img:not(.emojione):not(.twemoji):not(.gemoji) {
  filter: invert(0.88) hue-rotate(180deg);
}

/* ── Plotly outputs & SVG icons: exempt from inversion ── */
[data-md-color-scheme="slate"] .jupyter-wrapper .jp-OutputArea-output .plotly,
[data-md-color-scheme="slate"] .md-content .md-typeset .twemoji,
[data-md-color-scheme="slate"] .md-header img,
[data-md-color-scheme="slate"] .md-footer img {
  filter: none;
}

/* ── Hide In/Out prompts ── */
.jupyter-wrapper .jp-InputPrompt,
.jupyter-wrapper .jp-OutputPrompt {
  display: none !important;
}

/* ── Notebook cell spacing ── */
.jupyter-wrapper .jp-OutputArea-output img {
  display: block;
  margin: 0.4rem auto;
  max-width: 100%;
}
