/* Light surfaces, readable secondary text and explicit interaction states. */
:root {
  --ink: #202736;
  --muted: #505d70;
  --line: #cbd2de;
  --purple: #5b3da0;
  --bg: #f0f3f8;
}
body { background: #f5f6fa; }
header { background: #fff; border-bottom-color: var(--line); }
nav, .brand-sub, .presentation, .presentation span { color: #505d70; }
.brand-sub { font-size: 9px; }
.hero { background: radial-gradient(ellipse at 50% 35%, #e5def3 0, #eff0f7 46%, #f5f6fa 76%); }
h1 span { color: #654789; }
.hero p, .author-line, .author-line a, .author-monogram { color: #505366; }
.author-monogram { border-color: #c4b7d8; }
.primary { background: #283249; box-shadow: 0 5px 15px #27314724; }
.primary:hover { background: #3b2e62; }
.text-link, .eyebrow, .inspect-source { color: #5b3da0; }
.section-heading > p { color: #505d70; }
.workspace { background: #fff; border-color: #c3ccda; box-shadow: 0 8px 28px #2833490d; }
.map { background-color: #edf1f7; background-image: radial-gradient(#b6c1d1 .7px, transparent .7px); }
.agent-map { background-color: #eeeaf5; background-image: radial-gradient(#c7bfd8 .7px, transparent .7px); }
.inspector { background: #fff; border-left-color: #c3ccda; }
.detail-description, .inspector ul, .section-heading > p, .caption, .map-foot { color: #505d70; }
.detail-description, .inspector ul { font-size: 13px; }
.detail-service { color: #624781; font-size: 11px; }
.inspector-label, .detail-label, .map-caption, .map-key, .flow-label,
.evidence-label, .foundation > span { color: #526078; }
.inspector-label, .detail-label { font-size: 9px; }
.source-file { color: #465570; background: #edf1f7; border-color: #d1d9e5; }
.node, .mini-node, .concept-card, .tool-button { border-color: #b6c1d1; box-shadow: 0 3px 7px #26334a09; }
.node small, .mini-node small, .compact small { color: #526078; }
.node-tag { color: #465570; background: #e9eef6; }
.node.selected, .mini-node.selected, .concept-card.selected, .tool-button.selected {
  border-color: #69449f;
  background: #f3edfc;
  box-shadow: 0 0 0 2px #69449f33, inset 0 0 0 1px #69449f;
}
.node:hover, .mini-node:hover, .concept-card:hover, .tool-button:hover { border-color: #69449f; background: #f8f5fd; }
.node.selected:hover, .mini-node.selected:hover, .concept-card.selected:hover, .tool-button.selected:hover { background: #ede3fa; }
.connector, .connector span, .agent-exchange, .tool-bridge { color: #63517e; }
.connector span { font-size: 8px; }
.evidence { border-top-color: #b3bfd1; }
.foundation { border-color: #c3cddd; background: #dfe6f0; }
.foundation button, .runtime-links button { color: #354660; }
.foundation button:hover, .runtime-links button:hover { color: #5b3da0; text-decoration: underline; }
.concept-kicker { color: #61477f; font-size: 9px; }
.concept-card p, .concept-card small, .runtime-tag { color: #505d70; }
.runtime-tag { border-top-color: #d1c9df; }
.agent-exchange span { font-size: 8px; }
.tool-bridge { font-size: 10px; }
.toolbox-heading { border-top-color: #b6a8ce; }
.toolbox-heading > span, .tool-group h4, .runtime-details { color: #55496a; }
.tool-group h4 { font-size: 11px; }
.tool-button code { color: #343d53; font-size: 11px; }
.tool-button small { color: #526078; font-size: 10px; }
.optional-tool { background: #f5f1e9; border-color: #b8a68a; }
.optional-tool > span { color: #765320; background: #eee2cb; border-radius: 3px; padding: 2px 4px; }
.runtime-details { border-top-color: #c5bbd6; }
.dag-preview { background: #fff; border-color: #bdc7d7; box-shadow: 0 10px 28px #38304d12; }
.dag-preview-heading, .dag-preview-footer { color: #526078; border-color: #d4dbe5; background: #f0f3f8; }
.dag-preview-heading > span:first-child, .dag-preview-footer code { color: #43516b; }
.dag-preview-footer a { color: #5b3da0; }
.dag-task { border-color: #c0cad8; }
.dag-task code { color: #35415a; }
.dag-task small { color: #526078; }
.success { background: #f0f7f3; border-color: #a1beae; }
.success .task-dot { background: #35764e; }
.failure { border-color: #c77a73; background: #fff0ed; box-shadow: 0 0 0 3px #b7554920; }
.failure small { color: #a1372d; }
.failure .task-dot { background: #b13e33; }
.blocked { opacity: 1; background: #e9edf3; border-style: dashed; }
.blocked .task-dot { background: #69758b; }
.dag-arrow { color: #6d7790; }
.readme-card { background: #fff; border-color: #c3ccda; box-shadow: 0 5px 18px #28334908; }
.readme-top { background: #e4eaf3; color: #43516b; }
.readme-body p, .readme-folders dd { color: #505d70; }
.readme-body code { background: #ebe4f5; color: #5a3c78; }
.readme-folders dt, .readme-top a, .readme-resources a { color: #5b3da0; }
.readme-folders > div { border-color: #dce2ec; }
.readme-state strong { color: #35435a; }
.readme-resources { background: #edf1f7; }
.readme-resources > span { color: #526078; }
.repo-github-link { background: #fff; border-color: #b8c3d4; color: #35435a; }
footer, .footer-brand { color: #526078; }
.event-signature { color: #35415a; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid #68409e; outline-offset: 4px; }
@media (max-width: 600px) {
  .brand-sub { font-size: 7px; }
  .tool-button code { font-size: 10px; }
  .tool-button small { font-size: 9px; }
  .tool-group h4 { font-size: 11px; }
  .map-key { max-width: 115px; line-height: 1.5; text-align: right; }
}
/* Use-case overview: current incident response and the future recovery loop. */
.incident-preview{max-width:880px;margin:32px auto 0;background:#fff;border:1px solid #bdc7d7;border-radius:15px;box-shadow:0 10px 28px #38304d12;text-align:left;overflow:hidden}
.incident-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:16px 23px;border-bottom:1px solid #d4dbe5;background:#eef1f7;color:#526078;font-size:10px}
.incident-heading>span:first-child{font-size:8px;letter-spacing:1.2px;font-weight:600}.incident-heading>span:last-child{color:#5b3da0;font-weight:550}
.incident-flow{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:24px 22px;gap:25px}
.incident-flow li{display:flex;flex-direction:column;align-items:flex-start;gap:10px;position:relative;min-width:0}
.incident-flow li:not(:last-child):after{content:'→';position:absolute;right:-18px;top:8px;color:#6d7790;font-size:20px}
.incident-flow img{object-fit:contain}.incident-flow strong{font-size:12px;letter-spacing:-.2px;color:#303b50;font-weight:600}.incident-flow small{font-size:10px;line-height:1.7;color:#526078}
.incident-alert{width:32px;height:32px;display:grid;place-items:center;color:#a1372d;background:#fff0ed;border:1px solid #c77a73;border-radius:8px;font-size:21px;font-weight:600}
.incident-failure strong{color:#a1372d}
.recovery-path{display:flex;gap:24px;align-items:center;padding:18px 23px;background:#f1edf7;border-top:1px dashed #b5a7ce}
.recovery-label{font-size:8px;letter-spacing:1px;color:#654d82;font-weight:650;min-width:150px}.recovery-label small{display:block;font-size:9px;letter-spacing:0;font-weight:400;margin-top:6px}
.hero .recovery-path p{display:flex;align-items:center;justify-content:space-between;gap:13px;max-width:none;margin:0;width:100%;font-size:10px;line-height:1.6;color:#55496a}.recovery-path b{font-weight:400;color:#6a5489}
.incident-footnote{font-size:9px;color:#526078;line-height:1.7;padding:13px 23px;border-top:1px solid #ddd6e9}
@media(max-width:600px){.hero h1{font-size:37px}.incident-heading{padding:14px;font-size:9px}.incident-flow{grid-template-columns:1fr 1fr;gap:25px 30px;padding:21px 17px}.incident-flow li:nth-child(2):after{content:'↓';right:0;top:auto;bottom:-22px}.incident-flow li:nth-child(3){grid-column:2;grid-row:2}.incident-flow li:nth-child(4){grid-column:1;grid-row:2}.incident-flow li:nth-child(3):after{content:'←';right:auto;left:-24px}.incident-flow strong{font-size:11px}.incident-flow small{font-size:9px}.recovery-path{display:block;padding:17px}.hero .recovery-path p{margin-top:13px;font-size:9px;gap:8px}.incident-footnote{padding:13px 17px;font-size:9px}.recovery-label{display:flex;align-items:center;justify-content:space-between}.recovery-label small{margin:0}}
