/* news-events.css — Events + article enrichment + report (P3) */

/* ---- events grid ---- */
.ev-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.ev-card {
  display: flex; flex-direction: column; background: var(--bg-card, #17171a);
  border: 1px solid var(--glass-border); border-radius: 16px; overflow: hidden; cursor: pointer;
  transition: border-color .15s, transform .15s;
}
.ev-card:hover { border-color: rgba(255,255,255,.22); transform: translateY(-2px); }
.ev-card:focus-visible { outline: 2px solid var(--accent, #6ea8fe); outline-offset: 2px; }
.ev-card.ev-dim { opacity: .72; }
.ev-media-wrap { position: relative; width: 100%; aspect-ratio: 16/9; }
.ev-media { position: absolute; inset: 0; width: 100%; height: 100%; }
.ev-body { padding: 13px 15px 15px; }
.ev-type { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--ink-muted); margin-bottom: 5px; }
.ev-name { font-size: 15px; margin: 0 0 9px; line-height: 1.3; }
.ev-when, .ev-loc { display: flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--ink-soft); margin-top: 4px; }
.ev-when svg, .ev-loc svg { flex-shrink: 0; color: var(--ink-muted); }

.ev-status {
  position: absolute; top: 10px; left: 10px; z-index: 2;
  font-size: 11px; font-weight: 700; padding: 4px 9px; border-radius: 999px;
  display: inline-flex; align-items: center; gap: 5px; backdrop-filter: blur(4px);
}
.ev-upcoming { background: rgba(110,168,254,.9); color: #06121f; }
.ev-ongoing { background: rgba(46,158,90,.95); color: #fff; }
.ev-completed { background: rgba(120,120,130,.85); color: #fff; }
.ev-postponed { background: rgba(232,203,106,.95); color: #2a2205; }
.ev-canceled { background: rgba(240,104,126,.95); color: #fff; }
.ev-live-dot { width: 7px; height: 7px; border-radius: 50%; background: currentColor; animation: evpulse 1.4s infinite; }
@keyframes evpulse { 0%,100% { opacity: 1; } 50% { opacity: .35; } }

/* ---- event modal ---- */
.ev-modal-media-wrap { width: 100%; aspect-ratio: 16/9; border-radius: 13px; margin-bottom: 14px; overflow: hidden; }
.ev-modal-media { width: 100%; height: 100%; }
.ev-modal-title { font-size: 21px; margin: 0 0 14px; line-height: 1.25; }
.ev-modal-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 16px; }
.ev-kv { background: rgba(255,255,255,.03); border: 1px solid var(--glass-border); border-radius: 11px; padding: 10px 12px; }
.ev-kv-k { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--ink-muted); margin-bottom: 3px; }
.ev-kv-v { font-size: 13.5px; font-weight: 600; line-height: 1.35; }
.ev-modal-desc { color: var(--ink-soft); line-height: 1.6; font-size: 14px; margin: 0 0 18px; }
.ev-modal-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 8px; }
.ev-banner { border-radius: 11px; padding: 10px 14px; font-size: 13px; margin-bottom: 14px; display: flex; align-items: center; gap: 8px; }
.ev-b-red { background: rgba(240,104,126,.1); border: 1px solid rgba(240,104,126,.32); color: #f4a0ad; }
.ev-b-gold { background: rgba(232,203,106,.1); border: 1px solid rgba(232,203,106,.32); color: #e8cb6a; }
.ev-b-mute { background: rgba(255,255,255,.04); border: 1px solid var(--glass-border); color: var(--ink-muted); }
.ev-b-live { background: rgba(46,158,90,.12); border: 1px solid rgba(46,158,90,.35); color: #7fdca8; }
.ev-related { margin-top: 18px; border-top: 1px solid var(--glass-border); padding-top: 14px; }
.ev-related h4 { font-size: 13px; margin: 0 0 8px; }
.ev-related-row { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px solid rgba(255,255,255,.05); text-decoration: none; color: var(--ink); font-size: 13.5px; }
.ev-related-row:hover { color: var(--accent, #6ea8fe); }
.ev-related-src { color: var(--ink-muted); font-size: 12px; flex-shrink: 0; }

/* ---- article enrichment ---- */
.news-enh { margin-top: 16px; }
.news-body p { color: var(--ink-soft); line-height: 1.7; font-size: 14.5px; margin: 0 0 12px; }
.news-body .news-body-note { font-size: 12.5px; color: var(--ink-muted); font-style: italic; }
.news-banner { border-radius: 11px; padding: 10px 14px; font-size: 13px; line-height: 1.5; }
.news-banner.tone-gold { background: rgba(232,203,106,.1); border: 1px solid rgba(232,203,106,.32); color: #e8cb6a; }
.news-removed { background: rgba(240,104,126,.1); border: 1px solid rgba(240,104,126,.32); color: #f4a0ad; border-radius: 11px; padding: 14px 16px; font-size: 14px; }
.news-enh-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.news-related h4 { font-size: 13px; margin: 0 0 8px; }
.news-related-list { display: flex; flex-direction: column; }
.news-related-row { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,.05); text-decoration: none; color: var(--ink); }
.news-related-row:hover .news-related-title { color: var(--accent, #6ea8fe); }
.news-related-title { font-size: 13.5px; font-weight: 550; }
.news-related-badge { font-size: 11px; color: var(--ink-muted); margin-left: 7px; }
.news-related-src { color: var(--ink-muted); font-size: 12px; flex-shrink: 0; }

/* ---- report modal fields ---- */
.nr-lab { display: block; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--ink-muted); margin: 12px 0 6px; }
.nr-input { width: 100%; box-sizing: border-box; padding: 11px 12px; border-radius: 11px; border: 1px solid var(--glass-border); background: var(--near-black, #0d0d0f); color: var(--ink); font-family: inherit; resize: vertical; margin-bottom: 4px; }
#newsThemeFilter { margin-right: 8px; }

@media (max-width: 620px) {
  .ev-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .ev-name { font-size: 13.5px; }
  .ev-modal-grid { grid-template-columns: 1fr; }
}
@media (max-width: 400px) { .ev-grid { grid-template-columns: 1fr; } }
