/* ═══════════════════════════════════════════════
   Shared "event row" card
   Used by Results (results/results.css) and Home
   (home/home.css). This file owns the structure both
   pages have in common: the badge/sub chip, the 3-column
   grid (date / event+gender / third cell), cell padding,
   the divider lines, and date/name/gen typography.

   Page-specific bits stay in their own stylesheet:
   - Results: the orange/blue gradient background, the
     open/accordion state, the preview-cell content
     (top result), the startlist/results panel.
   - Home: the .evt-row--home modifier (plain background,
     athletes cell content, mobile behaviour that drops
     athletes to their own row instead of hiding them).
   ═══════════════════════════════════════════════ */

.evt-badge { font-size:12px; font-weight:600; color:#1e293b; padding:4px 12px; border-radius:8px; background:#f1f5f9; white-space:nowrap; }
.evt-sub { font-size:14px; color:#64748b; margin:0 0 16px; }

.evt-row {
  display:grid;
  grid-template-columns: 84px minmax(0,1fr) minmax(0,1.4fr);
  border:1px solid #e2e8f0;
  border-radius:10px;
  margin-bottom:8px;
  overflow:hidden;
  transition:border-color 0.15s, box-shadow 0.15s, background 0.15s;
}
.evt-row:hover { border-color:#cbd5e1; }

.evt-row__cell { padding:12px 14px; min-width:0; }
.evt-row__cell--event, .evt-row__cell--preview, .evt-row__cell--athletes { position:relative; }
.evt-row__cell--event::before, .evt-row__cell--preview::before, .evt-row__cell--athletes::before {
  content:'';
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:1px;
  background:rgba(212, 86, 42, 0.55);
}

/* Column 1: date */
.evt-row__cell--date { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:1px; }
.evt-row__day { font-size:16px; font-weight:800; color:#1e293b; font-variant-numeric:tabular-nums; line-height:1.1; }
.evt-row__mon { font-size:12px; font-weight:700; text-transform:uppercase; color:#d4562a; letter-spacing:0.03em; line-height:1.1; }
.evt-row__time { font-size:14px; font-weight:600; color:#475569; font-variant-numeric:tabular-nums; line-height:1.1; margin-top:2px; }

/* Column 2: event */
.evt-row__cell--event { display:flex; flex-direction:column; justify-content:center; gap:2px; }
.evt-row__name { font-size:16px; font-weight:600; color:#1e293b; word-break:normal; overflow-wrap:break-word; }
.evt-row__gen-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.evt-row__gen { font-size:12px; font-weight:600; color:#64748b; }

/* Column 3: shared flex base -- content differs per page */
.evt-row__cell--preview, .evt-row__cell--athletes { display:flex; flex-direction:column; justify-content:center; gap:3px; }

@media (max-width: 600px) {
  .evt-row { grid-template-columns: 76px minmax(0,1fr); }
  .evt-row__cell { padding:10px 12px; }
  .evt-row__cell--date { align-items:center; gap:1px; }
  .evt-row__day { font-size:14px; }
  .evt-row__mon { font-size:11px; }
  .evt-row__time { font-size:12px; }
  .evt-row__name { font-size:14px; }
  .evt-row__gen { font-size:12px; }
  .evt-badge { font-size:10px; padding:3px 8px; }
}
