/* Per-essay overlay for "Are We Living Inside a Holographic Memory of Another Universe?" (ARG Cosmos 01).
   Migrated 2026-05-11 from standalone bilingual template to modern dict-based.
   Base layout, palette, callouts, and shared keyframes come from
   ../ailectricity/style.css. This file adds:
   - Hero SVG classes for cosmological horizon + projection lines + info bits
   - Custom keyframes: horizonDrift, bitTwinkle, universePulse
   - Content blocks: opening-note, lead, sources-block
*/

/* ---------- Opening note (editorial intro) ---------- */
.cosmos-content .opening-note {
  margin: 0 0 2.4rem;
  padding: 0.9rem 1.2rem;
  border-left: 2px solid rgba(99, 214, 198, 0.46);
  background: rgba(99, 214, 198, 0.04);
  color: rgba(236, 232, 220, 0.78);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.94rem;
  font-style: italic;
  line-height: 1.6;
}

/* ---------- Lead paragraph (emphasized intro) ---------- */
.cosmos-content > .lead {
  font-size: 1.18rem;
  line-height: 1.65;
  color: var(--text, #ece8dc);
  margin-bottom: 1.8rem;
}

/* ---------- Sources block (legacy attribution + speculative note) ---------- */
.cosmos-content .sources-block {
  margin: 1.8rem 0 0;
  padding: 1.4rem 1.5rem;
  border-top: 1px solid rgba(214, 199, 150, 0.18);
  color: var(--muted, #aaa492);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.9rem;
  line-height: 1.6;
}

.cosmos-content .sources-block > p:first-child {
  margin: 0 0 0.85rem;
  color: var(--gold, #d4b66f);
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.cosmos-content .sources-block ul {
  margin: 0 0 1rem;
  padding-left: 1.2rem;
}

.cosmos-content .sources-block li {
  margin-bottom: 0.5rem;
}

.cosmos-content .sources-block__note {
  margin: 0.5rem 0 1rem;
  color: rgba(170, 164, 146, 0.78);
  font-size: 0.85rem;
}

.cosmos-content .sources-block a {
  color: rgba(99, 214, 198, 0.92);
  text-decoration: none;
  border-bottom: 1px dotted rgba(99, 214, 198, 0.45);
}

.cosmos-content .sources-block a:hover,
.cosmos-content .sources-block a:focus-visible {
  color: #63d6c6;
  border-bottom-color: rgba(99, 214, 198, 0.85);
  outline: none;
}

.cosmos-content .sources-block__org {
  margin: 1.1rem 0 0;
  font-size: 0.82rem;
  color: var(--soft, #777264);
}

/* ====================================================
   COSMOS-GRAPHIC — hero SVG: cosmological horizon
   ==================================================== */

.cosmos-graphic .grid-line {
  stroke: rgba(214, 199, 150, 0.05);
}

/* ---------- Outer horizon ring ---------- */
.cosmos-graphic .horizon {
  fill: none;
  stroke-width: 1.6;
  stroke-dasharray: 8 6;
  opacity: 0.85;
  animation: horizonDrift 24s linear infinite;
}

@keyframes horizonDrift {
  to { stroke-dashoffset: -84; }
}

.cosmos-graphic .horizon-label {
  fill: rgba(170, 164, 146, 0.78);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 10.5px;
  letter-spacing: 0.18em;
  text-anchor: middle;
}

/* ---------- Information bits on horizon ---------- */
.cosmos-graphic .info-bit {
  fill: rgba(212, 182, 111, 0.78);
}

.cosmos-graphic .info-bit--1 { animation: bitTwinkle 2.4s steps(2, end) infinite; }
.cosmos-graphic .info-bit--2 { animation: bitTwinkle 2.8s steps(2, end) infinite; animation-delay: -0.4s; }
.cosmos-graphic .info-bit--3 { animation: bitTwinkle 2.2s steps(2, end) infinite; animation-delay: -0.8s; }
.cosmos-graphic .info-bit--4 { animation: bitTwinkle 3.0s steps(2, end) infinite; animation-delay: -1.2s; }
.cosmos-graphic .info-bit--5 { animation: bitTwinkle 2.6s steps(2, end) infinite; animation-delay: -1.6s; }

@keyframes bitTwinkle {
  50% { opacity: 0.25; }
}

/* ---------- Central rendered universe ---------- */
.cosmos-graphic .universe-glow {
  fill: url(#centerGlow);
  opacity: 0.75;
  animation: universePulse 5.6s ease-in-out infinite;
}

@keyframes universePulse {
  0%, 100% { opacity: 0.55; }
  50% { opacity: 0.95; }
}

.cosmos-graphic .universe-core {
  fill: rgba(13, 16, 22, 0.78);
  stroke: rgba(99, 214, 198, 0.65);
  stroke-width: 1.4;
}

.cosmos-graphic .universe-label {
  fill: rgba(236, 232, 220, 0.92);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-anchor: middle;
}

.cosmos-graphic .universe-sub {
  fill: rgba(99, 214, 198, 0.78);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 9.5px;
  font-style: italic;
  letter-spacing: 0.10em;
  text-anchor: middle;
}

/* ---------- Projection lines (horizon → interior) ---------- */
.cosmos-graphic .projection {
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-dasharray: 5 6;
  opacity: 0.62;
  animation: lineFlow 5s linear infinite;
}

.cosmos-graphic .projection--a { animation-duration: 4.8s; }
.cosmos-graphic .projection--b { animation-duration: 5.4s; animation-delay: -0.6s; }
.cosmos-graphic .projection--c { animation-duration: 5.0s; animation-delay: -1.2s; }
.cosmos-graphic .projection--d { animation-duration: 5.8s; animation-delay: -1.8s; }
.cosmos-graphic .projection--e { animation-duration: 4.6s; animation-delay: -2.4s; }
.cosmos-graphic .projection--f { animation-duration: 5.4s; animation-delay: -0.4s; }
.cosmos-graphic .projection--g { animation-duration: 5.0s; animation-delay: -1.0s; }
.cosmos-graphic .projection--h { animation-duration: 5.6s; animation-delay: -1.6s; }

/* ---------- Big Bounce annotation ---------- */
.cosmos-graphic .bounce-arrow {
  fill: none;
  stroke: rgba(212, 182, 111, 0.65);
  stroke-width: 1.4;
  stroke-linecap: round;
}

.cosmos-graphic .bounce-label {
  fill: rgba(212, 182, 111, 0.85);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 9.5px;
  letter-spacing: 0.14em;
  text-anchor: middle;
}
