/* =============================================================
   StageHub /new — kalendár podujatí (/new/podujatia)
   Načíta sa po tokens.css a base.css. Žiadny inline štýl.
   ============================================================= */

/* Prepínač nadchádzajúce / minulé */
.sh-ev-tabs { display: inline-flex; gap: var(--sh-space-1); padding: var(--sh-space-1); background: var(--sh-surface-raised); border: 1px solid var(--sh-ink-12); border-radius: var(--sh-radius-pill); margin-bottom: var(--sh-space-6); }
.sh-ev-tab { padding: var(--sh-space-2) var(--sh-space-5); border-radius: var(--sh-radius-pill); font-size: var(--sh-text-sm); font-weight: var(--sh-weight-medium); color: var(--sh-ink-70); }
.sh-ev-tab:hover { color: var(--sh-ink); }
.sh-ev-tab.is-active { background: var(--sh-ink); color: var(--sh-cream-2); }
.sh-ev-tab.is-active:hover { color: var(--sh-cream-2); }

/* Zoznam kariet */
.sh-ev-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sh-space-4); }
.sh-ev-card {
  background: var(--sh-surface-raised); border: 1px solid var(--sh-ink-12);
  border-radius: var(--sh-radius-lg); overflow: hidden; box-shadow: var(--sh-shadow-sm);
  transition: transform var(--sh-transition), box-shadow var(--sh-transition);
}
.sh-ev-card:hover { transform: translateY(-2px); box-shadow: var(--sh-shadow-lg); }
.sh-ev-card.is-cancelled { opacity: 0.72; }
.sh-ev-link { display: flex; align-items: stretch; gap: 0; color: inherit; }
.sh-ev-link:hover { color: inherit; }

/* Dátumový blok */
.sh-ev-date {
  flex: 0 0 auto; width: 92px; display: flex; flex-direction: column;
  align-items: center; justify-content: center; text-align: center;
  padding: var(--sh-space-4); background: var(--sh-cream-1); border-right: 1px solid var(--sh-ink-12);
}
.sh-ev-day { font-family: var(--sh-font-head); font-weight: var(--sh-weight-semibold); font-size: var(--sh-text-3xl); line-height: 1; color: var(--sh-ink); }
.sh-ev-mon { text-transform: uppercase; letter-spacing: 0.1em; font-size: var(--sh-text-xs); font-weight: var(--sh-weight-semibold); color: var(--sh-amber-text); margin-top: var(--sh-space-1); }
.sh-ev-yr { font-size: var(--sh-text-xs); color: var(--sh-ink-50); margin-top: 2px; }

/* Telo karty */
.sh-ev-body { flex: 1; min-width: 0; padding: var(--sh-space-4) var(--sh-space-5); display: flex; flex-direction: column; gap: var(--sh-space-1); }
.sh-ev-title { font-family: var(--sh-font-head); font-size: var(--sh-text-xl); margin: 0; color: var(--sh-ink); }
.sh-ev-artists { margin: 0; font-size: var(--sh-text-sm); color: var(--sh-amber-text); font-weight: var(--sh-weight-medium); }
.sh-ev-meta { margin: var(--sh-space-1) 0 0; font-size: var(--sh-text-sm); color: var(--sh-ink-70); display: flex; align-items: center; flex-wrap: wrap; }
.sh-ev-time { font-weight: var(--sh-weight-medium); color: var(--sh-ink); }
.sh-ev-price { margin: var(--sh-space-2) 0 0; font-size: var(--sh-text-sm); font-weight: var(--sh-weight-medium); color: var(--sh-ink); }
.sh-ev-card .sh-badge-cancel { align-self: flex-start; margin-bottom: var(--sh-space-1); }

@media (max-width: 480px) {
  .sh-ev-date { width: 72px; padding: var(--sh-space-3); }
  .sh-ev-day { font-size: var(--sh-text-2xl); }
  .sh-cat-title { font-size: var(--sh-text-3xl); }
  .sh-field-search { flex-basis: 100%; }
}
