/* ═══════════════════════════════════════════════════════════════
   AEGIS Theme — deep-space palette, readable contrast
   Colors:
     bg deep        : #020816 → #0a1535
     title blue     : #38b8f0 (primary)
     teal-cyan      : #30c8e8 (accent / active states)
     violet         : #9060e8 (cognitive layer)
     amber          : #d88040 (modules)
     node cyan      : #58d8f8 (graph nodes / hover)
     body text      : #c8dff5 (high-contrast on dark navy)
     muted text     : #7aa8d0 (secondary, still legible)
═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@700;900&display=swap');

/* ─────────────────────────────────────────────────────────────
   DARK MODE  (slate scheme)
───────────────────────────────────────────────────────────── */
[data-md-color-scheme="slate"] {
  --md-hue: 220;

  /* Backgrounds — navy, not near-black */
  --md-default-bg-color:             #0a1528;
  --md-default-bg-color--light:      #0e1c35;
  --md-default-bg-color--lighter:    #122040;
  --md-default-bg-color--lightest:   #1a2d52;

  /* Body text — bright enough to read comfortably */
  --md-default-fg-color:             #c8dff5;
  --md-default-fg-color--light:      #8ab4d8;
  --md-default-fg-color--lighter:    #5a84b0;
  --md-default-fg-color--lightest:   rgba(138,180,216,.15);

  /* Primary — AEGIS sky-blue */
  --md-primary-fg-color:             #38b8f0;
  --md-primary-fg-color--light:      #58d0f8;
  --md-primary-fg-color--dark:       #1890c8;
  --md-primary-bg-color:             #030a1a;
  --md-primary-bg-color--light:      rgba(3,10,26,.55);

  /* Accent — teal-cyan */
  --md-accent-fg-color:              #30c8e8;
  --md-accent-fg-color--transparent: rgba(48,200,232,.12);
  --md-accent-bg-color:              #030a1a;
  --md-accent-bg-color--light:       rgba(48,200,232,.10);

  /* Code */
  --md-code-bg-color:                #060f20;
  --md-code-fg-color:                #88e8ff;
  --md-code-hl-color:                rgba(48,200,232,.14);
  --md-code-hl-number-color:         #d88040;
  --md-code-hl-special-color:        #9060e8;
  --md-code-hl-function-color:       #58d8f8;
  --md-code-hl-constant-color:       #30c8e8;
  --md-code-hl-keyword-color:        #9060e8;
  --md-code-hl-string-color:         #48d8a8;
  --md-code-hl-name-color:           #c8dff5;
  --md-code-hl-operator-color:       #7aa8d0;
  --md-code-hl-punctuation-color:    #7aa8d0;
  --md-code-hl-comment-color:        #3a6090;
  --md-code-hl-generic-color:        #c8dff5;
  --md-code-hl-variable-color:       #88e8ff;

  /* Footer */
  --md-footer-bg-color:              #060f20;
  --md-footer-bg-color--dark:        #030a14;
  --md-footer-fg-color:              #7aa8d0;
  --md-footer-fg-color--light:       #4a78a8;
  --md-footer-fg-color--lighter:     #2a5080;

  /* Admonitions */
  --md-admonition-bg-color:          #0e1c35;
}

/* ─────────────────────────────────────────────────────────────
   LIGHT MODE  (default scheme) — clean AEGIS-branded light
───────────────────────────────────────────────────────────── */
[data-md-color-scheme="default"] {
  --md-default-bg-color:             #f0f5ff;
  --md-default-bg-color--light:      #e4ecf8;
  --md-default-bg-color--lighter:    #d8e6f4;
  --md-default-bg-color--lightest:   #c8daee;

  --md-default-fg-color:             #0a1840;
  --md-default-fg-color--light:      #2a4070;
  --md-default-fg-color--lighter:    #4a6090;
  --md-default-fg-color--lightest:   rgba(10,24,64,.12);

  --md-primary-fg-color:             #0e6ea8;
  --md-primary-fg-color--light:      #1890c8;
  --md-primary-fg-color--dark:       #084878;
  --md-primary-bg-color:             #ffffff;
  --md-primary-bg-color--light:      rgba(255,255,255,.7);

  --md-accent-fg-color:              #0a9ab8;
  --md-accent-fg-color--transparent: rgba(10,154,184,.12);

  --md-code-bg-color:                #e0eaf8;
  --md-code-fg-color:                #0a4080;

  --md-footer-bg-color:              #0a1840;
  --md-footer-bg-color--dark:        #060f28;
  --md-footer-fg-color:              #8ab4d8;
  --md-footer-fg-color--light:       #5a84b0;
  --md-footer-fg-color--lighter:     #3a5880;

  --md-admonition-bg-color:          #e4ecf8;
}

/* ── Body glow ── */
body {
  background-color: #0a1528;
  background-image:
    radial-gradient(ellipse 60% 40% at 50% 0%, rgba(56,184,240,.04) 0%, transparent 70%),
    radial-gradient(ellipse 40% 60% at 80% 50%, rgba(144,96,232,.025) 0%, transparent 65%);
}

[data-md-color-scheme="default"] body,
[data-md-color-scheme="default"] .md-main {
  background-color: #f0f5ff;
  background-image: none;
}

/* ── Header ── */
.md-header {
  background: linear-gradient(135deg, #030a1a 0%, #0a1840 100%) !important;
  border-bottom: 1px solid #1e3868;
  box-shadow: 0 2px 20px rgba(56,184,240,.08);
}

[data-md-color-scheme="default"] .md-header {
  background: linear-gradient(135deg, #0a1840 0%, #0e2258 100%) !important;
}

/* ── Site title ── */
.md-header__title {
  font-family: 'Orbitron', 'JetBrains Mono', monospace !important;
  font-weight: 700;
  letter-spacing: 0.12em;
  font-size: 0.85rem;
  text-transform: uppercase;
}

/* ── Navigation tabs ── */
.md-tabs {
  background: linear-gradient(180deg, #0a1535 0%, #0e1c40 100%) !important;
  border-bottom: 1px solid #1e3868;
}

/* Tab links — white in dark mode */
[data-md-color-scheme="slate"] .md-tabs__link,
[data-md-color-scheme="slate"] .md-tabs__link * {
  color: rgba(255,255,255,.85) !important;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  transition: color 0.2s ease;
}

[data-md-color-scheme="slate"] .md-tabs__link--active,
[data-md-color-scheme="slate"] .md-tabs__link--active * {
  color: #30c8e8 !important;
  font-weight: 600;
  text-shadow: 0 0 12px rgba(48,200,232,.5);
}

[data-md-color-scheme="slate"] .md-tabs__link:hover,
[data-md-color-scheme="slate"] .md-tabs__link:hover * {
  color: #58d8f8 !important;
}

.md-tabs__link--active::after {
  content: "";
  display: block;
  height: 2px;
  background: linear-gradient(90deg, transparent, #30c8e8, transparent);
  margin-top: 2px;
  border-radius: 2px;
}

/* ── Sidebar ── */
.md-sidebar {
  background: linear-gradient(180deg, #0c1830 0%, #0a1528 100%);
}

.md-sidebar--primary {
  border-right: 1px solid #1e3868;
}

.md-nav__title {
  background: linear-gradient(135deg, #0e1c3a 0%, #122040 100%);
  color: #38b8f0;
  font-family: 'Orbitron', monospace;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-bottom: 1px solid #1e3868;
  padding: 0.7rem 0.8rem;
}

/* ── Nav links — WHITE in dark mode ── */
[data-md-color-scheme="slate"] .md-nav__link,
[data-md-color-scheme="slate"] .md-nav__link * {
  color: #ffffff !important;
  transition: color 0.15s ease, padding-left 0.15s ease;
  font-size: 0.83rem;
}

[data-md-color-scheme="slate"] .md-nav__link--active,
[data-md-color-scheme="slate"] .md-nav__link--active * {
  color: #30c8e8 !important;
  font-weight: 600;
  padding-left: 0.2rem;
  border-left: 2px solid #30c8e8;
  margin-left: -2px;
}

[data-md-color-scheme="slate"] .md-nav__link:hover,
[data-md-color-scheme="slate"] .md-nav__link:hover * {
  color: #58d8f8 !important;
  padding-left: 0.15rem;
}

/* Nested nav — slightly softer white */
[data-md-color-scheme="slate"] .md-nav--secondary .md-nav__link,
[data-md-color-scheme="slate"] .md-nav--secondary .md-nav__link * {
  font-size: 0.80rem;
  color: rgba(255,255,255,.80) !important;
}

[data-md-color-scheme="slate"] .md-nav--secondary .md-nav__link--active,
[data-md-color-scheme="slate"] .md-nav--secondary .md-nav__link--active * {
  color: #48d8f0 !important;
  border-left-color: #48d8f0;
}

[data-md-color-scheme="slate"] .md-nav--secondary .md-nav__link:hover,
[data-md-color-scheme="slate"] .md-nav--secondary .md-nav__link:hover * {
  color: #88d8f8 !important;
}

/* ── Content area ── */
.md-content {
  background: transparent;
}

.md-content article {
  padding: 1.6rem 2rem;
  border-radius: 6px;
  background: rgba(10,21,40,.6);
  border: 1px solid rgba(30,56,104,.5);
  box-shadow:
    0 0 40px rgba(56,184,240,.03),
    inset 0 1px 0 rgba(56,184,240,.05);
}

[data-md-color-scheme="default"] .md-content article {
  background: rgba(255,255,255,.9);
  border: 1px solid #c8daee;
  box-shadow: 0 2px 12px rgba(10,24,64,.08);
}

/* ── Headings ── */
.md-typeset h1 {
  font-family: 'Orbitron', monospace;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #38b8f0;
  margin-bottom: 0.3em;
}

.md-typeset h2 {
  color: #58d8f8;
  border-bottom: 1px solid #1e3868;
  padding-bottom: 0.2em;
}

.md-typeset h3 {
  color: #8ab8e8;
}

.md-typeset h4 {
  color: #6898c8;
}

[data-md-color-scheme="default"] .md-typeset h1 { color: #0e6ea8; }
[data-md-color-scheme="default"] .md-typeset h2 { color: #085888; border-color: #c8daee; }
[data-md-color-scheme="default"] .md-typeset h3 { color: #0a4878; }

/* ── Body text ── */
.md-typeset {
  color: #c8dff5;
}

[data-md-color-scheme="default"] .md-typeset {
  color: #0a1840;
}

/* ── Links ── */
.md-typeset a {
  color: #38b8f0;
}
.md-typeset a:hover {
  color: #58d8f8;
}

[data-md-color-scheme="default"] .md-typeset a       { color: #0e6ea8; }
[data-md-color-scheme="default"] .md-typeset a:hover { color: #0a9ab8; }

/* ── Inline code ── */
.md-typeset code:not(.highlight code) {
  background: #060f20;
  color: #88e8ff;
  border: 1px solid #1e3868;
  border-radius: 3px;
}

[data-md-color-scheme="default"] .md-typeset code:not(.highlight code) {
  background: #e0eaf8;
  color: #0a4080;
  border-color: #b8d0ec;
}

/* ── Tables ── */
.md-typeset table:not([class]) {
  border: 1px solid #1e3868;
  border-radius: 4px;
  overflow: hidden;
}

.md-typeset table:not([class]) th {
  background: #0e1c38;
  color: #30c8e8;
  border-bottom: 1px solid #2a4878;
  font-family: 'Orbitron', monospace;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.md-typeset table:not([class]) td {
  border-top: 1px solid #122040;
  color: #c8dff5;
}

.md-typeset table:not([class]) tr:hover {
  background: #0e1c38;
}

[data-md-color-scheme="default"] .md-typeset table:not([class]) {
  border-color: #c8daee;
}
[data-md-color-scheme="default"] .md-typeset table:not([class]) th {
  background: #dae8f8;
  color: #0a4878;
  border-color: #c8daee;
}
[data-md-color-scheme="default"] .md-typeset table:not([class]) td {
  border-color: #e4ecf8;
  color: #0a1840;
}
[data-md-color-scheme="default"] .md-typeset table:not([class]) tr:hover {
  background: #e4ecf8;
}

/* ── Admonitions ── */
.md-typeset .admonition,
.md-typeset details {
  border-left-color: #30c8e8;
  background: #0e1c38;
}

.md-typeset .admonition.note,
.md-typeset details.note {
  border-left-color: #38b8f0;
  background: #0a1835;
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-left-color: #d88040;
  background: #1a1008;
}

.md-typeset .admonition.danger,
.md-typeset details.danger {
  border-left-color: #e04040;
  background: #1a0808;
}

/* Admonition titles */
.md-typeset .admonition-title,
.md-typeset summary {
  color: #c8dff5;
}

[data-md-color-scheme="default"] .md-typeset .admonition,
[data-md-color-scheme="default"] .md-typeset details {
  background: #e8f0fc;
  border-left-color: #0e6ea8;
}

/* ── Search ── */
.md-search__input {
  background: #0e1c38;
  border: 1px solid #1e3868;
  color: #c8dff5;
}

.md-search__input::placeholder {
  color: #5a84b0;
}

.md-search__input:focus {
  border-color: #30c8e8;
  background: #122040;
}

/* ── Footer ── */
.md-footer {
  background: #060f20;
  border-top: 1px solid #1e3868;
}

.md-footer-meta {
  background: #030a14;
}

/* ── Horizontal rules ── */
.md-typeset hr {
  border-color: #1e3868;
}

/* ── Scroll bar (subtle) ── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #0a1528; }
::-webkit-scrollbar-thumb { background: #1e3868; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #30c8e8; }

/* ── AEGIS banner ── */
.aegis-banner {
  width: 100%;
  margin: -0.8rem 0 1.8rem 0;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid #1e3868;
  box-shadow: 0 0 32px rgba(56,184,240,.10);
}

.aegis-banner img {
  width: 100%;
  display: block;
}

/* ── Badge row ── */
.aegis-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  margin: 1rem 0 2rem 0;
}

/* ── Feature cards ── */
.aegis-features {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1rem;
  margin: 1.5rem 0;
}

.aegis-feature {
  background: #0e1c38;
  border: 1px solid #1e3868;
  border-radius: 6px;
  padding: 1.2rem;
  border-left: 3px solid #30c8e8;
}

.aegis-feature:nth-child(2) { border-left-color: #9060e8; }
.aegis-feature:nth-child(3) { border-left-color: #48d8f0; }
.aegis-feature:nth-child(4) { border-left-color: #d88040; }

.aegis-feature h3 {
  margin-top: 0 !important;
  color: #e0f0ff !important;
  font-size: 0.95rem;
  font-family: 'Orbitron', monospace;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.aegis-feature p {
  margin-bottom: 0;
  color: #8ab4d8;
  font-size: 0.88rem;
}

[data-md-color-scheme="default"] .aegis-feature {
  background: #e4eef8;
  border-color: #c0d4ec;
}
[data-md-color-scheme="default"] .aegis-feature h3 { color: #0a1840 !important; }
[data-md-color-scheme="default"] .aegis-feature p  { color: #2a4870; }

/* ── Section divider ── */
.aegis-divider {
  display: block;
  width: 100%;
  height: auto;
  margin: 0.4rem 0 0.8rem 0;
  opacity: 0.9;
}

/* ── Full-width SVG block ── */
.aegis-svg-block {
  width: 100%;
  margin: 1.2rem 0 1.8rem 0;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid #1e3868;
  box-shadow: 0 0 24px rgba(56,184,240,.08);
}

.aegis-svg-block img {
  width: 100%;
  display: block;
  height: auto;
}

/* ── Status tagline ── */
.aegis-tagline {
  text-align: center;
  color: #4a78a8;
  font-family: 'Courier New', monospace;
  letter-spacing: 0.15em;
  font-size: 0.82rem;
  text-transform: uppercase;
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid #1e3868;
}

/* ── Button styles (download page) ── */
.md-typeset .md-button {
  border-radius: 4px;
  font-weight: 600;
  letter-spacing: 0.04em;
  transition: all 0.2s ease;
}

.md-typeset .md-button--primary {
  background: linear-gradient(135deg, #1890c8, #30c8e8);
  border-color: #30c8e8;
  color: #020816 !important;
}

.md-typeset .md-button--primary:hover {
  background: linear-gradient(135deg, #30c8e8, #58d8f8);
  box-shadow: 0 0 16px rgba(48,200,232,.35);
}
