/* Event reading shares the existing black/gold theme; no news card selectors. */
.ev-page { max-width: 52rem; margin: 0 auto; padding-bottom: 2rem; }
.ev-heading { margin: .8rem 0 1.2rem; }
.ev-eyebrow { margin: 0 0 .45rem; color: var(--tint); font-size: .78rem; letter-spacing: .06em; }
.ev-title { margin: 0; font: 600 2rem/1.25 var(--f-serif, serif); }
.ev-detail-title { margin: 0 0 .7rem; font-size: 1.32rem; line-height: 1.4; font-weight:700; text-wrap: pretty; overflow-wrap: anywhere; }
.ev-subtitle { margin: .7rem 0 0; color: var(--label-2); font-size: .88rem; line-height: 1.7; }
.ev-controls { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; margin: 1rem 0; }
.ev-select, .ev-button { min-height: 44px; padding: .6rem .85rem; border: 1px solid var(--separator); border-radius: .45rem; background: var(--card-bg); color: var(--label-1); font: inherit; font-size: .86rem; }
.ev-button { cursor: pointer; transition: background-color .16s; }
.ev-button:hover, .ev-link:hover { background: var(--tint-soft); }
.ev-button:active { transform: translateY(1px); }
.ev-button:disabled { opacity: .55; }
.ev-notice { margin: .65rem 0 1rem; color: var(--label-2); font-size: .83rem; line-height: 1.75; }
.ev-error { color: var(--danger); }
.ev-empty { padding: 2rem 0; color: var(--label-2); line-height: 1.75; }
.ev-card { padding: 1.3rem 0; border-top: 1px solid var(--separator); }
.ev-card-title { display: block; min-height: 44px; color: var(--label-1); font-size: 1.05rem; font-weight: 600; line-height: 1.65; text-decoration: none; overflow-wrap: anywhere; }
.ev-card-title:hover { color: var(--tint); }
.ev-progress { margin: .65rem 0; color: var(--label-1); font-size: .9rem; line-height: 1.7; overflow-wrap: anywhere; }
.ev-meta { margin: .4rem 0; color: var(--label-2); font-size: .78rem; line-height: 1.7; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.ev-tabs { display: flex; gap: .25rem; }
.ev-tabs [aria-pressed="true"] { color: var(--tint); background: var(--tint-soft); border-color: var(--tint); }
.ev-controls .ev-select { margin-left: auto; max-width: 100%; }
.ev-timeline { list-style: none; padding: 0 0 0 .8rem; margin: 1.5rem 0; }
.ev-timeline-row { position: relative; padding: 0 0 1.8rem 1.25rem; border-left: 1px solid var(--separator); }
.ev-timeline-row::before { content: ''; position: absolute; left: -.22rem; top: .55rem; width: .4rem; height: .4rem; border-radius: 50%; background: var(--tint); }
.ev-row-title { font-size: 1rem; line-height: 1.7; margin: .45rem 0; overflow-wrap: anywhere; }
.ev-link { display: inline-flex; align-items: center; min-height: 44px; margin: .25rem .65rem .1rem 0; color: var(--tint); font-size: .85rem; padding: .3rem .4rem; border-radius: .25rem; }
.ev-entry { padding: .7rem 0; margin: .5rem 0; border-bottom: 1px solid var(--separator); }
.ev-entry[hidden] { display: none; }
.ev-entry-link { display: block; min-height: 44px; padding: .55rem 0; color: var(--tint); font-size: .9rem; line-height: 1.7; overflow-wrap: anywhere; }
.ev-footer { padding: 1rem 0; }
.ev-navigation { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ev-root-link { display:inline-flex; align-items:center; min-height:44px; font-size:13px; color:var(--label-2); }
.ev-section-title { margin:0; font-size:16px; font-weight:600; }
.ev-reports { padding:0; margin:0 0 20px; list-style:none; }
.ev-report-row { padding:16px 0; border-top:1px solid var(--separator); }
.ev-report-links { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:8px; }
.ev-read-link { display:inline-flex; align-items:center; min-height:44px; padding:6px 16px; border:1px solid var(--separator); border-radius:22px; color:var(--tint); font-size:14px; font-weight:600; }
.ev-related-link { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:10px 0; border-block:1px solid var(--separator); margin:16px 0; color:var(--tint); font-size:14px; }
.ev-related-meta { color:var(--label-2); font-size:12px; }
.ev-page :focus-visible, .ev-entry :focus-visible { outline: 2px solid var(--tint); outline-offset: 3px; }
@media (max-width: 360px) { .ev-controls { gap: .4rem; } .ev-select, .ev-button { padding: .6rem; } .ev-detail-title { font-size: 1.35rem; } }
@media (prefers-reduced-motion: reduce) { .ev-button { transition: none; } .ev-button:active { transform: none; } }
