/* Security-harness palette, matching the badge colors already used on
   github.com/Nitin13-git: State=blue, Verification=pink, Scope=purple,
   Lifecycle=amber, plus the black/red security theme. */

:root {
  --harness-state: #118ab2;
  --harness-verification: #ef476f;
  --harness-scope: #7209b7;
  --harness-lifecycle: #ffb703;
}

/* Header: subtle black-to-red gradient instead of flat black */
.md-header {
  background: linear-gradient(90deg, #0d0d0d 0%, #1a0505 60%, #3a0a0a 100%);
}

[data-md-color-scheme="default"] .md-header {
  background: linear-gradient(90deg, #111111 0%, #2a0a0a 60%, #4a0f0f 100%);
}

/* Tabs bar (top-level nav) picks up the same gradient, slightly lighter */
.md-tabs {
  background: linear-gradient(90deg, #161616 0%, #2a0a0a 100%);
}

/* Links: red accent with a visible hover state instead of the default flat tone */
.md-typeset a {
  color: #ff6b6b;
  text-decoration-thickness: 1px;
}
.md-typeset a:hover {
  color: #ffa8a8;
}

/* Admonitions (used for the Karpathy quote, provenance notes, etc.)
   get a terminal-ish left border instead of Material's default blue */
.md-typeset .admonition,
.md-typeset details {
  border-left: 4px solid #ff6b6b;
}
.md-typeset .admonition-title,
.md-typeset summary {
  background-color: rgba(255, 107, 107, 0.08);
}
.md-typeset .admonition.note,
.md-typeset details.note {
  border-left-color: var(--harness-state);
}
.md-typeset .admonition.note > .admonition-title,
.md-typeset details.note > summary {
  background-color: rgba(17, 138, 178, 0.1);
}

/* Mermaid diagrams: dark panel so node boxes don't look washed out
   against the slate background */
.mermaid {
  background-color: rgba(255, 255, 255, 0.03);
  border-radius: 8px;
  padding: 0.5rem;
}

/* Inline code gets a faint red tint instead of plain grey, tying code
   spans visually to the red accent used throughout */
.md-typeset code {
  background-color: rgba(255, 107, 107, 0.08);
}

/* --- Headings and body text: the part that was still plain black/white --- */

/* H1 page titles: red, with a thin gradient underline instead of the
   default flat black/grey rule */
.md-typeset h1 {
  color: #ff6b6b;
  font-weight: 700;
  border-bottom: 2px solid transparent;
  border-image: linear-gradient(90deg, #ff6b6b, #7209b7, #118ab2) 1;
  padding-bottom: 0.3rem;
}

/* H2 section headings: left accent bar, like a terminal section marker,
   instead of plain text with a flat underline */
.md-typeset h2 {
  border-left: 4px solid #ff6b6b;
  padding-left: 0.6rem;
  color: var(--md-default-fg-color);
}

/* H3: smaller accent marker, amber instead of red, so the hierarchy reads
   by color as well as size */
.md-typeset h3 {
  border-left: 3px solid var(--harness-lifecycle);
  padding-left: 0.5rem;
}

/* The first paragraph of a page (the "lead") is slightly larger and in
   the muted foreground tone, so pages open with visual weight instead of
   starting identical to body copy */
.md-typeset > p:first-of-type {
  font-size: 1.1em;
  color: var(--md-default-fg-color--light);
}

/* Bold lead-ins ("**Deny by default.**") are this course's way of marking
   a named principle inline — give them an accent color so they read as
   signal, not just heavier-weight black/white text */
.md-typeset strong {
  color: #ffa8a8;
}
[data-md-color-scheme="default"] .md-typeset strong {
  color: #c92a2a;
}

/* Horizontal rules (used between a lecture's closing note and nothing
   else): a gradient instead of a flat 1px grey line */
.md-typeset hr {
  height: 2px;
  border: none;
  background: linear-gradient(90deg, #ff6b6b, transparent);
}

/* Tables: header row picks up the red accent instead of plain grey,
   useful for the scoreboard and coverage-comparison tables */
.md-typeset table:not([class]) th {
  background-color: rgba(255, 107, 107, 0.12);
}
