/* MazeVault Professional Mermaid Diagram Theme
 * Overrides Material for MkDocs default mermaid styling
 * for a polished, enterprise-grade appearance.
 */

/* ── Light Mode ── */
:root {
  --md-mermaid-font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* Node defaults */
  --md-mermaid-node-bg-color: #f8f9fa;
  --md-mermaid-node-fg-color: #5c6bc0;

  /* Edge / arrow color */
  --md-mermaid-edge-color: #78909c;

  /* Labels */
  --md-mermaid-label-bg-color: #ffffff;
  --md-mermaid-label-fg-color: #37474f;

  /* Sequence diagram actors */
  --md-mermaid-sequence-actor-bg-color: #e8eaf6;
  --md-mermaid-sequence-actor-fg-color: #283593;
  --md-mermaid-sequence-actor-border-color: #5c6bc0;
  --md-mermaid-sequence-actor-line-color: #90a4ae;
  --md-mermaid-sequence-actorman-bg-color: #e8eaf6;
  --md-mermaid-sequence-actorman-line-color: #5c6bc0;

  /* Sequence diagram messages */
  --md-mermaid-sequence-message-fg-color: #37474f;
  --md-mermaid-sequence-message-line-color: #78909c;

  /* Sequence diagram notes */
  --md-mermaid-sequence-note-bg-color: #fff8e1;
  --md-mermaid-sequence-note-fg-color: #5d4037;
  --md-mermaid-sequence-note-border-color: #ffb300;

  /* Sequence diagram loops */
  --md-mermaid-sequence-loop-bg-color: #f3e5f510;
  --md-mermaid-sequence-loop-fg-color: #6a1b9a;
  --md-mermaid-sequence-loop-border-color: #ce93d8;

  /* Sequence diagram labels */
  --md-mermaid-sequence-label-bg-color: #e8eaf6;
  --md-mermaid-sequence-label-fg-color: #283593;

  /* Sequence diagram numbers */
  --md-mermaid-sequence-number-bg-color: #5c6bc0;
  --md-mermaid-sequence-number-fg-color: #ffffff;

  /* Sequence diagram box */
  --md-mermaid-sequence-box-bg-color: #e8eaf610;
  --md-mermaid-sequence-box-fg-color: #283593;
}

/* ── Dark Mode ── */
[data-md-color-scheme="slate"] {
  --md-mermaid-node-bg-color: #263238;
  --md-mermaid-node-fg-color: #7986cb;
  --md-mermaid-edge-color: #90a4ae;
  --md-mermaid-label-bg-color: #1e1e1e;
  --md-mermaid-label-fg-color: #cfd8dc;

  --md-mermaid-sequence-actor-bg-color: #1a237e;
  --md-mermaid-sequence-actor-fg-color: #c5cae9;
  --md-mermaid-sequence-actor-border-color: #7986cb;
  --md-mermaid-sequence-actor-line-color: #546e7a;
  --md-mermaid-sequence-actorman-bg-color: #1a237e;
  --md-mermaid-sequence-actorman-line-color: #7986cb;
  --md-mermaid-sequence-message-fg-color: #cfd8dc;
  --md-mermaid-sequence-message-line-color: #90a4ae;
  --md-mermaid-sequence-note-bg-color: #3e2723;
  --md-mermaid-sequence-note-fg-color: #ffcc80;
  --md-mermaid-sequence-note-border-color: #ff8f00;
  --md-mermaid-sequence-loop-bg-color: #1a1a2e10;
  --md-mermaid-sequence-loop-fg-color: #ce93d8;
  --md-mermaid-sequence-loop-border-color: #7b1fa2;
  --md-mermaid-sequence-label-bg-color: #1a237e;
  --md-mermaid-sequence-label-fg-color: #c5cae9;
  --md-mermaid-sequence-number-bg-color: #7986cb;
  --md-mermaid-sequence-number-fg-color: #1e1e1e;
  --md-mermaid-sequence-box-bg-color: #1a237e10;
  --md-mermaid-sequence-box-fg-color: #c5cae9;
}

/* ── Node shape refinements ── */
.mermaid .node rect,
.mermaid .node circle,
.mermaid .node ellipse,
.mermaid .node polygon {
  rx: 8px;
  ry: 8px;
}

/* ── Subgraph styling ── */
.mermaid .cluster rect {
  rx: 12px !important;
  ry: 12px !important;
  stroke-width: 2px !important;
}

.mermaid .cluster span {
  font-weight: 600;
}

/* ── Edge styling ── */
.mermaid .edgePath .path {
  stroke-width: 2px;
}

/* ── Sequence diagram refinements ── */
.mermaid .actor {
  rx: 8px;
  ry: 8px;
}

.mermaid .note {
  rx: 6px;
  ry: 6px;
}

/* ── Flowchart decision diamonds ── */
.mermaid .node polygon {
  rx: 0;
  ry: 0;
}

/* ── Better label readability ── */
.mermaid .nodeLabel {
  font-size: 0.85rem;
  font-weight: 500;
  line-height: 1.4;
}

.mermaid .edgeLabel {
  font-size: 0.78rem;
  font-weight: 500;
}
