.eviulon-partnership-page { background: #091116; }
.eviulon-hero { position: relative; overflow: hidden; min-height: calc(100vh - var(--header-h)); padding: clamp(5rem, 9vw, 9rem) 0 2rem; color: var(--paper); background:
  radial-gradient(circle at 76% 33%, rgba(110,208,219,.16), transparent 25%),
  radial-gradient(circle at 82% 45%, rgba(107,152,222,.11), transparent 36%),
  linear-gradient(145deg, #071015 0%, #0d1920 52%, #081116 100%); }
.eviulon-hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.24; background-image: linear-gradient(rgba(110,208,219,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(110,208,219,.07) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(to bottom, black, transparent 92%); }
.eviulon-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(24rem,.85fr); gap:clamp(3rem,7vw,8rem); align-items:center; }
.eviulon-hero-copy h1 { max-width: 15ch; font-size:clamp(3rem,6.8vw,7.2rem); }
.eviulon-hero-copy p { color:#c6d1d6; }
.eviulon-hero-copy .hero-lede { color:#f1f4f4; }
.eviulon-announcement-tag { display:inline-flex; align-items:center; gap:.65rem; margin-bottom:1.3rem; font-family:var(--mono); font-size:.72rem; font-weight:800; letter-spacing:.12em; color:#a7e7ed; }
.eviulon-announcement-tag span { width:.55rem; height:.55rem; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 .35rem rgba(110,208,219,.13), 0 0 1.2rem rgba(110,208,219,.85); }
.eviulon-hero-principle { margin-top:2.4rem; font-family:var(--mono); font-size:.75rem; font-weight:800; letter-spacing:.1em; color:var(--cyan) !important; }
.eviulon-hero-symbol { position:relative; min-height:35rem; display:grid; place-items:center; isolation:isolate; }
.eviulon-orbit { position:absolute; border:1px solid rgba(110,208,219,.3); border-radius:50%; transform:rotate(-16deg); }
.eviulon-orbit-one { width:28rem; height:18rem; box-shadow:inset 0 0 4rem rgba(110,208,219,.04); }
.eviulon-orbit-two { width:19rem; height:31rem; transform:rotate(28deg); border-style:dashed; }
.eviulon-core-mark, .eviulon-link-mark { position:absolute; display:flex; flex-direction:column; justify-content:center; width:13.5rem; min-height:9rem; padding:1.15rem; border:1px solid rgba(255,255,255,.24); background:rgba(8,17,22,.88); box-shadow:0 1.5rem 5rem rgba(0,0,0,.42); backdrop-filter:blur(10px); }
.eviulon-core-mark { top:17%; right:6%; border-color:var(--cyan); }
.eviulon-link-mark { bottom:18%; left:2%; border-color:var(--amber); }
.eviulon-core-mark span, .eviulon-link-mark span { font-family:var(--mono); font-size:.7rem; letter-spacing:.15em; color:#9fb0b8; }
.eviulon-core-mark strong, .eviulon-link-mark strong { font-size:1.7rem; letter-spacing:.03em; }
.eviulon-core-mark small, .eviulon-link-mark small { margin-top:.5rem; font-family:var(--mono); font-size:.58rem; line-height:1.45; letter-spacing:.08em; color:#9fb0b8; }
.eviulon-source-status { position:relative; z-index:2; display:grid; grid-template-columns:auto 1fr; gap:1.25rem; align-items:start; margin-top:3rem; padding:1rem 1.2rem; border:1px solid rgba(214,163,75,.5); background:rgba(214,163,75,.07); }
.eviulon-source-status strong { font-family:var(--mono); font-size:.72rem; letter-spacing:.12em; color:#f1c77c; }
.eviulon-source-status p { max-width:none; margin:0; font-size:.86rem; color:#d4dadd; }

.eviulon-contract-section { background:#ecebe6; }
.eviulon-requirement-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:rgba(16,24,32,.2); border:1px solid rgba(16,24,32,.2); }
.eviulon-requirement-card { min-height:20rem; padding:1.5rem; background:#f5f4ef; }
.eviulon-requirement-card > span { color:var(--cyan-deep); font-weight:800; }
.eviulon-requirement-card h3 { margin-top:2rem; text-transform:uppercase; }
.eviulon-requirement-card p { color:var(--muted-dark); }
.eviulon-requirement-card dl { margin-top:2rem; padding-top:1rem; border-top:1px solid var(--line); }
.eviulon-requirement-card dt { font-family:var(--mono); font-size:.66rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--cyan-deep); }
.eviulon-requirement-card dd { margin:.45rem 0 0; font-size:.86rem; }

.eviulon-exchange { padding:clamp(4rem,7vw,7rem) 0; color:var(--paper); background:#071015; }
.eviulon-exchange-heading { display:grid; grid-template-columns:1.1fr .9fr; gap:4rem; align-items:end; margin-bottom:2.5rem; }
.eviulon-exchange-heading p:last-child { color:#b8c4ca; }
.eviulon-console { border:1px solid rgba(110,208,219,.25); background:#0b151b; box-shadow:0 2.4rem 7rem rgba(0,0,0,.35); }
.eviulon-console-header { display:flex; justify-content:space-between; gap:2rem; align-items:center; min-height:5rem; padding:1rem 1.25rem; border-bottom:1px solid rgba(110,208,219,.22); background:#0e1b22; }
.eviulon-console-identity { display:flex; align-items:center; gap:.85rem; }
.eviulon-console-identity > div { display:flex; flex-direction:column; }
.eviulon-console-identity strong { font-size:.8rem; letter-spacing:.11em; }
.eviulon-console-identity span { font-family:var(--mono); font-size:.62rem; letter-spacing:.07em; color:#8fa1aa; }
.eviulon-live-dot { width:.55rem; height:.55rem; border-radius:50%; background:var(--cyan); box-shadow:0 0 1rem var(--cyan); }
.eviulon-console-status { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.65rem 1.2rem; font-family:var(--mono); font-size:.62rem; letter-spacing:.07em; color:#8fa1aa; }
.eviulon-console-status span { display:flex; gap:.35rem; }
.eviulon-console-status strong { color:#e8edef; }
.eviulon-console-main { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(22rem,.75fr); min-height:44rem; }
.eviulon-viewport-panel { padding:1.15rem; border-right:1px solid rgba(110,208,219,.18); }
.eviulon-panel-title { display:flex; gap:.9rem; align-items:start; margin-bottom:1rem; }
.eviulon-panel-title > span { display:grid; place-items:center; width:2rem; height:2rem; border:1px solid rgba(110,208,219,.35); font-family:var(--mono); font-size:.66rem; color:var(--cyan); }
.eviulon-panel-title p { margin:0; font-family:var(--mono); font-size:.62rem; font-weight:800; letter-spacing:.1em; color:var(--cyan); }
.eviulon-panel-title h3 { margin:.15rem 0 0; font-size:1rem; letter-spacing:0; }
.eviulon-panel-title.compact { margin-bottom:.85rem; }
.eviulon-viewport { position:relative; min-height:35rem; overflow:hidden; border:1px solid rgba(255,255,255,.13); background:radial-gradient(circle at center, #122832 0%, #0a151b 55%, #060d11 100%); }
.eviulon-viewport::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.32; background-image:linear-gradient(rgba(110,208,219,.07) 1px, transparent 1px),linear-gradient(90deg,rgba(110,208,219,.07) 1px,transparent 1px); background-size:36px 36px; }
.eviulon-viewport canvas { position:absolute; inset:0; width:100%; height:100%; }
.eviulon-view-overlay { position:absolute; top:.75rem; left:.75rem; right:.75rem; display:flex; justify-content:space-between; gap:1rem; pointer-events:none; font-family:var(--mono); font-size:.55rem; letter-spacing:.08em; color:#9fb2ba; }
.eviulon-render-state { position:absolute; inset:auto .8rem .8rem auto; padding:.35rem .5rem; font-family:var(--mono); font-size:.58rem; color:#9fb2ba; background:rgba(5,11,15,.72); }
.eviulon-decision-overlay { position:absolute; left:1rem; bottom:1rem; max-width:min(28rem,70%); padding:1rem; border-left:3px solid var(--cyan); background:rgba(5,11,15,.86); backdrop-filter:blur(8px); }
.eviulon-decision-overlay small { display:block; font-family:var(--mono); font-size:.58rem; letter-spacing:.1em; color:#8ea2ab; }
.eviulon-decision-overlay strong { display:block; margin:.2rem 0; font-size:1.2rem; color:var(--cyan); }
.eviulon-decision-overlay span { display:block; font-family:var(--mono); font-size:.65rem; color:#b9c5ca; }
.eviulon-scene-controls { display:flex; flex-wrap:wrap; gap:.5rem; padding-top:.8rem; }
.eviulon-scene-controls button { min-height:2.4rem; padding:.45rem .7rem; color:#c8d3d8; border:1px solid rgba(255,255,255,.16); background:#0d1a21; font-family:var(--mono); font-size:.62rem; letter-spacing:.05em; text-transform:uppercase; }
.eviulon-scene-controls button:hover, .eviulon-scene-controls button[aria-pressed="true"] { color:#071015; background:var(--cyan); border-color:var(--cyan); }
.eviulon-control-rail { overflow:auto; max-height:48rem; background:#0a141a; }
.eviulon-control-section { padding:1.1rem; border-bottom:1px solid rgba(255,255,255,.11); }
.eviulon-scenario-list { display:grid; gap:.55rem; }
.eviulon-scenario-list button { display:grid; gap:.25rem; width:100%; padding:.8rem; text-align:left; color:#dce3e6; border:1px solid rgba(255,255,255,.14); background:#101e25; }
.eviulon-scenario-list button:hover, .eviulon-scenario-list button[aria-pressed="true"] { border-color:var(--cyan); background:rgba(110,208,219,.08); }
.eviulon-scenario-list button strong { font-size:.8rem; text-transform:uppercase; }
.eviulon-scenario-list button span { font-size:.72rem; line-height:1.45; color:#9fb0b8; }
.eviulon-scenario-list button small { font-family:var(--mono); font-size:.56rem; color:var(--cyan); }
.eviulon-gate-list { display:grid; gap:1px; margin:0; background:rgba(255,255,255,.12); }
.eviulon-gate-list > div { display:flex; justify-content:space-between; gap:1rem; padding:.55rem .65rem; background:#0e1b22; }
.eviulon-gate-list dt, .eviulon-gate-list dd { margin:0; font-family:var(--mono); font-size:.62rem; text-transform:uppercase; }
.eviulon-gate-list dd { font-weight:800; }
.eviulon-gate-list .is-pass dd { color:#96d7ae; }
.eviulon-gate-list .is-blocked dd { color:#ff9b96; }
.eviulon-console-lower { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); border-top:1px solid rgba(110,208,219,.18); }
.eviulon-ledger-panel, .eviulon-proof-panel { padding:1.15rem; min-width:0; }
.eviulon-ledger-panel { border-right:1px solid rgba(110,208,219,.18); }
.eviulon-ledger { max-height:27rem; overflow:auto; margin:0; padding:0; list-style:none; }
.eviulon-ledger li { display:grid; grid-template-columns:5rem 1fr; gap:.75rem; padding:.65rem 0; border-bottom:1px solid rgba(255,255,255,.08); }
.eviulon-ledger time { font-family:var(--mono); font-size:.58rem; color:var(--cyan); }
.eviulon-ledger div { display:grid; gap:.18rem; }
.eviulon-ledger strong { font-family:var(--mono); font-size:.65rem; letter-spacing:.04em; }
.eviulon-ledger span { font-size:.72rem; color:#a8b6bc; }
.eviulon-ledger code { color:#738893; }
.eviulon-proof-table { width:100%; border-collapse:collapse; font-size:.75rem; }
.eviulon-proof-table caption { text-align:left; padding-bottom:.75rem; color:#a8b6bc; }
.eviulon-proof-table th, .eviulon-proof-table td { padding:.65rem; text-align:left; vertical-align:top; border-bottom:1px solid rgba(255,255,255,.1); }
.eviulon-proof-table th { font-weight:650; }
.eviulon-proof-state { display:inline-flex; padding:.2rem .4rem; border:1px solid currentColor; font-family:var(--mono); font-size:.58rem; font-weight:800; }
.eviulon-proof-state.is-pass { color:#9adab1; }
.eviulon-proof-state.is-fail { color:#ff9f9b; }
.eviulon-narrative { padding:1rem 1.2rem; border-top:1px solid rgba(110,208,219,.18); color:#b9c5ca; font-size:.82rem; }

.eviulon-channel-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; border:1px solid var(--line); background:var(--line); }
.eviulon-channel-grid article { min-height:14rem; padding:1.3rem; background:var(--paper); }
.eviulon-channel-grid article > span { color:var(--cyan-deep); }
.eviulon-channel-grid h3 { margin-top:1.6rem; text-transform:uppercase; }
.eviulon-channel-grid p { color:var(--muted-dark); }
.eviulon-channel-grid small { font-family:var(--mono); font-size:.62rem; color:var(--cyan-deep); }
.eviulon-boundary-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(3rem,7vw,7rem); align-items:start; }
.eviulon-boundary-card { padding:1.5rem; border:1px solid rgba(214,163,75,.65); background:rgba(214,163,75,.06); }
.eviulon-boundary-card h3 { margin-top:1.4rem; }
.eviulon-boundary-card li { margin:.55rem 0; color:#c2ccd1; }
.eviulon-boundary-card .mono { margin-top:1.5rem; color:#f0c77f; }
.eviulon-final-statement { display:grid; gap:.45rem; padding:1.5rem; border:1px solid rgba(110,208,219,.35); background:rgba(110,208,219,.05); }
.eviulon-final-statement span { font-family:var(--mono); font-size:.62rem; letter-spacing:.1em; color:var(--cyan); }
.eviulon-final-statement strong { margin-bottom:1.5rem; font-size:1.4rem; line-height:1.2; }

@media (max-width: 1120px) {
  .eviulon-requirement-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .eviulon-console-main { grid-template-columns:1fr; }
  .eviulon-viewport-panel { border-right:0; border-bottom:1px solid rgba(110,208,219,.18); }
  .eviulon-control-rail { max-height:none; display:grid; grid-template-columns:1fr 1fr; }
  .eviulon-control-section { border-right:1px solid rgba(255,255,255,.1); }
}
@media (max-width: 860px) {
  .eviulon-hero-grid, .eviulon-exchange-heading, .eviulon-boundary-grid { grid-template-columns:1fr; }
  .eviulon-hero-symbol { min-height:26rem; }
  .eviulon-source-status { grid-template-columns:1fr; }
  .eviulon-console-header { align-items:flex-start; flex-direction:column; }
  .eviulon-console-status { justify-content:flex-start; }
  .eviulon-console-lower { grid-template-columns:1fr; }
  .eviulon-ledger-panel { border-right:0; border-bottom:1px solid rgba(110,208,219,.18); }
  .eviulon-channel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .eviulon-requirement-grid, .eviulon-control-rail, .eviulon-channel-grid { grid-template-columns:1fr; }
  .eviulon-hero-symbol { min-height:22rem; }
  .eviulon-orbit-one { width:20rem; height:13rem; }
  .eviulon-orbit-two { width:13rem; height:22rem; }
  .eviulon-core-mark, .eviulon-link-mark { width:10.5rem; min-height:7.2rem; }
  .eviulon-viewport { min-height:25rem; }
  .eviulon-view-overlay { display:grid; gap:.15rem; }
  .eviulon-decision-overlay { max-width:calc(100% - 2rem); }
  .eviulon-ledger li { grid-template-columns:4rem 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .eviulon-live-dot, .eviulon-announcement-tag span { box-shadow:none; }
}

/* Reciprocal first-party public-source record — v2.0.0-rc.4-WIP. */
.eviulon-partnership-page .button-tertiary { color:#f0c77f; background:rgba(214,163,75,.06); border-color:rgba(214,163,75,.72); }
.eviulon-partnership-page .button-tertiary:hover { color:#071015; background:#f0c77f; border-color:#f0c77f; }
.eviulon-source-status > div { min-width:0; }
.eviulon-source-actions { display:flex; flex-wrap:wrap; gap:.45rem 1rem; margin-top:.65rem !important; font-family:var(--mono); font-size:.65rem !important; }
.eviulon-source-actions a { color:var(--cyan); text-decoration-thickness:1px; text-underline-offset:.22em; }
.eviulon-source-actions a:hover { color:#fff; }
.eviulon-reciprocal-record { padding:clamp(4rem,7vw,7rem) 0; color:var(--paper); background:
  linear-gradient(115deg,rgba(110,208,219,.08),transparent 48%),
  #0a151b; border-top:1px solid rgba(110,208,219,.15); border-bottom:1px solid rgba(110,208,219,.15); }
.eviulon-reciprocal-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(22rem,.85fr); gap:clamp(2.5rem,6vw,7rem); align-items:start; }
.eviulon-reciprocal-grid h2 { max-width:16ch; font-size:clamp(2.2rem,4.5vw,5rem); }
.eviulon-reciprocal-grid p { color:#c2cdd2; }
.eviulon-record-summary { display:grid; gap:1px; margin:0; background:rgba(110,208,219,.18); border:1px solid rgba(110,208,219,.18); }
.eviulon-record-summary > div { display:grid; grid-template-columns:minmax(8rem,.65fr) 1fr; gap:1rem; padding:1rem; background:#0d1a21; }
.eviulon-record-summary dt { font-family:var(--mono); font-size:.64rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#8fcfd7; }
.eviulon-record-summary dd { margin:0; color:#e4e9eb; }
.eviulon-source-page { background:#071015; }
.eviulon-source-hero { padding:clamp(7rem,12vw,11rem) 0 clamp(4rem,7vw,7rem); color:var(--paper); background:
  radial-gradient(circle at 82% 25%,rgba(110,208,219,.14),transparent 35%),
  linear-gradient(135deg,#071015,#0b1920 58%,#071015); }
.eviulon-source-hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr); gap:clamp(3rem,7vw,8rem); align-items:start; }
.eviulon-source-hero h1 { max-width:13ch; overflow-wrap:anywhere; word-break:normal; font-size:clamp(3rem,6vw,6.7rem); }
.eviulon-source-hero .hero-lede { color:#d7dfe2; }
.eviulon-source-identity { display:grid; gap:1px; margin:0; border:1px solid rgba(110,208,219,.2); background:rgba(110,208,219,.2); }
.eviulon-source-identity > div { padding:1rem; background:rgba(7,16,21,.92); }
.eviulon-source-identity dt { font-family:var(--mono); font-size:.62rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--cyan); }
.eviulon-source-identity dd { margin:.35rem 0 0; overflow-wrap:anywhere; color:#edf1f2; }
.eviulon-source-identity code { font-size:.68rem; color:#a8bac2; }
.eviulon-source-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.eviulon-source-card { min-height:27rem; padding:1.5rem; background:#f5f4ef; }
.eviulon-source-card-head { display:flex; justify-content:space-between; gap:1rem; font-family:var(--mono); font-size:.63rem; letter-spacing:.07em; text-transform:uppercase; color:var(--cyan-deep); }
.eviulon-source-card-head strong { max-width:18rem; text-align:right; color:#73591f; }
.eviulon-source-card h3 { margin-top:2.1rem; font-size:1.55rem; text-transform:uppercase; }
.eviulon-source-card h4 { margin-top:1.5rem; font-family:var(--mono); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; color:var(--cyan-deep); }
.eviulon-source-card dl { display:grid; gap:.5rem; margin:1.2rem 0; padding:1rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.eviulon-source-card dl div { display:grid; grid-template-columns:8rem 1fr; gap:1rem; }
.eviulon-source-card dt { font-family:var(--mono); font-size:.62rem; text-transform:uppercase; color:var(--muted-dark); }
.eviulon-source-card dd { margin:0; }
.eviulon-source-card li { margin:.55rem 0; color:var(--muted-dark); }
.eviulon-source-card .text-link { display:inline-block; margin-top:1rem; font-family:var(--mono); font-weight:800; font-size:.69rem; letter-spacing:.04em; text-transform:uppercase; color:var(--cyan-deep); }
.eviulon-source-table-wrap { border:1px solid rgba(110,208,219,.22); }
.eviulon-source-table { width:100%; min-width:62rem; border-collapse:collapse; color:#dbe3e6; background:#0b171d; }
.eviulon-source-table caption { padding:1rem; text-align:left; font-family:var(--mono); font-size:.7rem; color:#9cb0b8; background:#081116; }
.eviulon-source-table th,.eviulon-source-table td { padding:1rem; text-align:left; vertical-align:top; border:1px solid rgba(255,255,255,.1); }
.eviulon-source-table thead th { font-family:var(--mono); font-size:.65rem; letter-spacing:.08em; text-transform:uppercase; color:var(--cyan); }
.eviulon-source-table tbody th { max-width:34rem; font-weight:500; }
.eviulon-source-table tbody th code { display:block; margin-bottom:.45rem; color:#82cbd3; }
.eviulon-source-table tbody th span { display:block; }
.eviulon-source-table tbody td strong { font-family:var(--mono); font-size:.65rem; color:#f0c77f; }

@media (max-width:860px) {
  .eviulon-reciprocal-grid,.eviulon-source-hero-grid { grid-template-columns:1fr; }
  .eviulon-source-card-grid { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  .eviulon-record-summary > div,.eviulon-source-card dl div { grid-template-columns:1fr; gap:.35rem; }
  .eviulon-source-card-head { align-items:flex-start; flex-direction:column; }
  .eviulon-source-card-head strong { text-align:left; }
}

/* Public-source lifecycle, capture history, and claim propagation — v2.0.0-rc.5-WIP. */
.source-method-note {
  max-width: 58rem;
  margin: 1.2rem 0 0;
  padding: .8rem 1rem;
  border-left: 3px solid #d6a34b;
  color: #f0d49c;
  background: rgba(214, 163, 75, .08);
  font-size: .86rem;
}
.eviulon-source-delta {
  padding: clamp(2.4rem, 5vw, 4.5rem) 0;
  color: #e9eef0;
  background: #101c22;
  border-top: 1px solid rgba(110, 208, 219, .18);
  border-bottom: 1px solid rgba(110, 208, 219, .18);
}
.eviulon-source-delta-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(20rem, .8fr);
  gap: clamp(2rem, 5vw, 6rem);
  align-items: start;
}
.eviulon-source-delta h2 {
  margin-top: .7rem;
  max-width: 31ch;
  font-size: clamp(1.55rem, 3vw, 3.1rem);
  line-height: 1.08;
}
.eviulon-source-delta p { color: #b9c6cb; }
.eviulon-source-delta dl {
  display: grid;
  gap: 1px;
  margin: 0;
  border: 1px solid rgba(110, 208, 219, .2);
  background: rgba(110, 208, 219, .2);
}
.eviulon-source-delta dl > div {
  display: grid;
  grid-template-columns: minmax(8rem, .6fr) minmax(0, 1fr);
  gap: 1rem;
  padding: .9rem 1rem;
  background: #0b171d;
}
.eviulon-source-delta dt,
.source-canonical span {
  font-family: var(--mono);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #82cbd3;
}
.eviulon-source-delta dd { margin: 0; overflow-wrap: anywhere; }
.eviulon-source-delta code { color: #b9dfe3; }
.source-canonical {
  display: grid;
  gap: .35rem;
  margin: 1rem 0 0;
  padding: .75rem;
  border: 1px solid rgba(15, 89, 100, .25);
  background: rgba(15, 89, 100, .04);
}
.source-canonical code,
.source-fingerprint code,
.eviulon-history-table code {
  overflow-wrap: anywhere;
  word-break: break-word;
  color: #0f5964;
}
.source-state {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .28rem .48rem;
  border: 1px solid currentColor;
  font-family: var(--mono);
  font-size: .6rem;
  font-weight: 900;
  letter-spacing: .06em;
  line-height: 1.2;
  text-transform: uppercase;
}
.source-state::before {
  content: "";
  width: .45rem;
  height: .45rem;
  border: 1px solid currentColor;
  background: transparent;
}
.source-state-current { color: #28734d; }
.source-state-current::before { background: currentColor; }
.source-state-changed,
.source-state-unavailable,
.source-state-superseded,
.source-state-not_checked { color: #8b651d; }
.source-state-changed::before { transform: rotate(45deg); }
.source-state-unavailable::before { border-radius: 50%; }
.source-state-contradicted { color: #9b2d2d; }
.source-state-contradicted::before { background: currentColor; transform: rotate(45deg); }
.source-fingerprint {
  margin-top: 1rem;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.source-fingerprint summary {
  padding: .8rem 0;
  cursor: pointer;
  font-family: var(--mono);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--cyan-deep);
}
.source-fingerprint[open] { padding-bottom: .8rem; }
.source-fingerprint p { margin-bottom: 0; color: var(--muted-dark); }
.eviulon-statement-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid rgba(110, 208, 219, .18);
  background: rgba(110, 208, 219, .18);
}
.eviulon-statement-grid article {
  min-height: 20rem;
  padding: 1.3rem;
  background: #0c171d;
}
.eviulon-statement-grid article > span {
  font-family: var(--mono);
  font-size: .64rem;
  color: var(--cyan);
}
.eviulon-statement-grid h3 {
  margin: 1.25rem 0 1rem;
  font-size: 1.05rem;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.eviulon-statement-grid li { margin: .75rem 0; color: #bcc8cc; }
.eviulon-source-table td small {
  display: block;
  margin-top: .45rem;
  color: #9eafb6;
}
.source-state-list {
  display: grid;
  gap: .45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.source-state-list li {
  display: grid;
  grid-template-columns: minmax(8rem, .7fr) 1fr;
  gap: .6rem;
  align-items: baseline;
}
.source-state-list code { color: #82cbd3; }
.source-state-list span { color: #c7d0d4; }
.eviulon-history-table td,
.eviulon-history-table th { white-space: normal; }
.source-lifecycle-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid rgba(110, 208, 219, .18);
  background: rgba(110, 208, 219, .18);
}
.source-lifecycle-grid article {
  min-height: 12rem;
  padding: 1.25rem;
  background: #0b171d;
}
.source-lifecycle-grid strong {
  display: inline-block;
  padding: .28rem .48rem;
  border: 1px solid currentColor;
  color: var(--cyan);
  font-family: var(--mono);
  font-size: .7rem;
  letter-spacing: .08em;
}
.source-lifecycle-grid p { color: #b5c1c6; }
.source-faq details {
  margin-top: 1px;
  border: 1px solid var(--line);
  background: #f7f6f1;
}
.source-faq summary {
  padding: 1rem 1.2rem;
  cursor: pointer;
  font-weight: 760;
}
.source-faq details p { padding: 0 1.2rem 1.2rem; color: var(--muted-dark); }
.eviulon-source-table-wrap:focus-visible,
.source-fingerprint summary:focus-visible,
.source-faq summary:focus-visible {
  outline: 3px solid #f0c77f;
  outline-offset: 3px;
}

@media (max-width: 1120px) {
  .eviulon-statement-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .source-lifecycle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .eviulon-source-delta-grid { grid-template-columns: 1fr; }
  .eviulon-source-delta dl { max-width: 48rem; }
}
@media (max-width: 620px) {
  .eviulon-source-page .container,
  .eviulon-source-page .container-wide { min-width: 0; }
  .eviulon-source-hero h1 { max-width: 100%; font-size: clamp(2.1rem, 13vw, 3rem); }
  .eviulon-source-identity,
  .eviulon-source-card,
  .eviulon-source-delta-grid,
  .eviulon-source-delta dl,
  .eviulon-source-table-wrap { min-width: 0; max-width: 100%; }
  .eviulon-source-page code { overflow-wrap: anywhere; word-break: break-word; }
  .eviulon-source-delta dl > div,
  .source-state-list li { grid-template-columns: 1fr; gap: .3rem; }
  .eviulon-statement-grid,
  .source-lifecycle-grid { grid-template-columns: 1fr; }
  .eviulon-statement-grid article { min-height: 0; }
  .eviulon-source-table { min-width: 52rem; }
}
@media (prefers-reduced-motion: reduce) {
  .source-state::before { transform: none; }
}
@media (forced-colors: active) {
  .source-state,
  .eviulon-source-delta,
  .eviulon-statement-grid,
  .source-lifecycle-grid,
  .eviulon-source-table-wrap,
  .source-faq details { border-color: CanvasText; }
  .source-state::before { background: CanvasText; }
  .source-state,
  .source-state-current,
  .source-state-changed,
  .source-state-unavailable,
  .source-state-superseded,
  .source-state-not_checked,
  .source-state-contradicted { color: CanvasText; }
}
