:root {
  --tools: #9a5b45;
  --materials: #b67832;
  --identity-image: #8a4f72;
  --built-world: #536f65;
  --storage-exchange: #337783;
  --records: #6555a0;
  --reproduction: #a13f3f;
}

.timeline-stage {
  background:
    radial-gradient(circle at 76% 44%, rgba(154, 91, 69, .07) 0 2px, transparent 3px),
    repeating-radial-gradient(circle at 76% 45%, transparent 0 38px, rgba(22, 34, 31, .035) 39px 40px, transparent 41px 78px),
    var(--paper);
}

.timeline-event,
.timeline-connector { --domain: var(--tools); }
.timeline-event[data-domain="tools"], .timeline-connector[data-domain="tools"] { --domain: var(--tools); }
.timeline-event[data-domain="materials"], .timeline-connector[data-domain="materials"] { --domain: var(--materials); }
.timeline-event[data-domain="identity-image"], .timeline-connector[data-domain="identity-image"] { --domain: var(--identity-image); }
.timeline-event[data-domain="built-world"], .timeline-connector[data-domain="built-world"] { --domain: var(--built-world); }
.timeline-event[data-domain="storage-exchange"], .timeline-connector[data-domain="storage-exchange"] { --domain: var(--storage-exchange); }
.timeline-event[data-domain="records"], .timeline-connector[data-domain="records"] { --domain: var(--records); }
.timeline-event[data-domain="reproduction"], .timeline-connector[data-domain="reproduction"] { --domain: var(--reproduction); }

.domain-dot.tools { color: var(--tools); }
.domain-dot.materials { color: var(--materials); }
.domain-dot.identity-image { color: var(--identity-image); }
.domain-dot.built-world { color: var(--built-world); }
.domain-dot.storage-exchange { color: var(--storage-exchange); }
.domain-dot.records { color: var(--records); }
.domain-dot.reproduction { color: var(--reproduction); }

.identity-copy h1 em,
.when-we-knew-separator,
.significance-block > span { color: var(--tools); }
.when-we-knew { border-left-color: var(--tools); }
.context-event-link:focus-visible { outline-color: var(--tools); }
.memory-block { background: #f1ebe6; }
.memory-block > span { color: var(--identity-image); }
