/* =============================================================================
   competitions.css — 대회정보 페이지 전용 (필터 · 일정 행)
   역할: competitions/index.html 레이아웃.
   의존: tokens/base/components 이후 로드. 일정 행(.event-row)은 home.css와
         구조가 같지만 페이지 독립성을 위해 여기 별도 정의한다 — 홈은 프리뷰용
         축약형이고 이쪽은 링크·상태까지 있는 완전형이라 스타일 분기가 다르다.
   주의: 행 구조 바꿀 때 competitions.js의 렌더 마크업과 함께 수정할 것.
   ========================================================================== */

/* ===== 연·월 필터 ===== */
.event-filter { display: flex; gap: var(--sp-3); margin-bottom: var(--sp-6); }
.event-filter label {
  display: flex;
  align-items: center;
  gap: var(--sp-1);
  font-size: var(--fs-1);
  font-weight: 700;
  color: var(--ink-soft);
}
.event-filter select {
  min-height: var(--touch-target);
  padding: 0 var(--sp-2);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: var(--paper);
  font-weight: 600;
}
.event-filter select:focus-visible { border-color: var(--wine); }

/* ===== 일정 행 ===== */
.event-list { border-top: 1px solid var(--line-strong); }
.event-row {
  display: grid;
  grid-template-columns: 112px 1fr auto auto;
  gap: var(--sp-4);
  align-items: center;
  padding-block: var(--sp-3);
  border-bottom: 1px solid var(--line);
  transition: background var(--dur-ui) ease;
}
.event-row:hover { background: rgba(15, 110, 104, 0.06); }
.event-date { text-align: center; }
.event-date .day { font-family: var(--font-accent); font-weight: 700; font-size: var(--fs-5); display: block; line-height: 1.1; }
.event-date .month { font-size: var(--fs-1); color: var(--wine); font-weight: 700; letter-spacing: var(--label-spacing); }
.event-info h3 { font-family: var(--font-sans); font-weight: 800; font-size: var(--fs-3); }
.event-info p { color: var(--ink-soft); font-size: var(--fs-1); margin-top: 4px; }

/* ===== 반응형 ===== */
@media (max-width: 768px) {
  .event-row { grid-template-columns: 80px 1fr; row-gap: var(--sp-1); }
  .event-row .badge, .event-row .text-link { grid-column: 2; justify-self: start; }
}
