/* ==========================================================================
   listing-b — takım / sanatçı / mekân / stadyum liste ve detay sayfaları
   Tasarım: takim.html, sanatci.html, mekan.html (Biletstore Tasarım kiti)
   Sadece token renkleri kullanılır.
   ========================================================================== */

/* --- Varlık başlığı (hero) ------------------------------------------------ */
.bb-entity-hero .breadcrumb { margin-bottom: 1rem; flex-wrap: wrap; }
.bb-entity-hero .breadcrumb-item { display: inline-flex; align-items: center; }
.bb-entity-hero .breadcrumb-item + .breadcrumb-item::before { color: var(--text-muted); }
.bb-entity-hero .breadcrumb-item.active { color: var(--text-secondary); }
.bb-entity-hero .breadcrumb .bb-ico { width: .9375rem; height: .9375rem; }

.bb-entity-title { display: flex; align-items: center; gap: 1rem; margin-bottom: .5rem; }
.bb-entity-title h1 { margin: 0; min-width: 0; }

.bb-entity-desc { max-width: 72ch; }

@media (max-width: 991.98px) {
  .bb-entity-hero h1, .bb-listing-head h1 { font-size: 2.5rem; }
}
@media (max-width: 575.98px) {
  .bb-entity-hero h1, .bb-listing-head h1 { font-size: 1.875rem; }
  .bb-entity-title { gap: .75rem; }
  .bb-entity-actions .btn { flex: 1 1 auto; }
}

/* Büyük monogram / logo balonu */
.bb-mono.bb-mono-lg { width: 64px; height: 64px; font-size: 1.125rem; }
.bb-mono.bb-mono-img {
  background: var(--surface-overlay); border: 1px solid var(--border-subtle); overflow: hidden;
}
.bb-mono.bb-mono-img img { width: 100%; height: 100%; object-fit: contain; padding: 18%; display: block; }
.bb-mono.bb-mono-img.bb-mono-cover img { object-fit: cover; padding: 0; }
@media (max-width: 575.98px) {
  .bb-mono.bb-mono-lg { width: 48px; height: 48px; font-size: .9375rem; }
}

/* Hero görsel kutusu */
.bb-entity-media {
  position: relative; aspect-ratio: 16 / 10; max-width: 100%;
  border-radius: var(--radius-xl); overflow: hidden;
  background: var(--surface-raised); border: 1px solid var(--border-subtle);
}
.bb-entity-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bb-entity-media.is-contain img { object-fit: contain; padding: 1.25rem; }

/* Favori düğmesi durumu (JS .is-favorited sınıfını değiştirir) */
#team-favorite-btn.is-favorited,
#artist-favorite-btn.is-favorited {
  color: var(--text-accent); border-color: var(--border-accent); background: var(--accent-soft);
}
#team-favorite-btn.is-favorited .bb-ico,
#artist-favorite-btn.is-favorited .bb-ico { fill: currentColor; }

/* --- Sekmeler ------------------------------------------------------------- */
.bb-tabs[role="tablist"] { scroll-margin-top: 1rem; }
.bb-tabs .bb-tab-link { white-space: nowrap; }
.bb-tab-count { color: var(--text-muted); font-size: .8125rem; margin-left: .25rem; }

/* --- Etkinlik kartları (event-grid-items partial, .row içinde) ----------- */
#team_show_more_button:disabled,
#team_away_show_more_button:disabled { opacity: .6; cursor: not-allowed; }

/* --- Liste satırı ekleri ------------------------------------------------- */
.bb-row-thumb {
  flex: 0 0 auto; width: 72px; aspect-ratio: 4 / 3; border-radius: var(--radius-sm);
  overflow: hidden; background: var(--surface-overlay);
}
.bb-row-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 575.98px) {
  .bb-row-thumb { display: none; }
  .bb-row .text-price { font-size: 1rem; }
  .bb-row-go { display: none; }
}

/* --- Boş durum ----------------------------------------------------------- */
.bb-empty { text-align: center; padding: 3rem 1.5rem; }
.bb-empty .bb-mono { width: 56px; height: 56px; margin-bottom: 1rem; }

/* --- Bilgi kartı --------------------------------------------------------- */
.bb-info-row { display: flex; gap: 1rem; padding: .25rem 0; }
.bb-info-row > :last-child { margin-left: auto; text-align: right; min-width: 0; }
.bb-info-row a { color: var(--text-primary); }
.bb-info-row a:hover { color: var(--text-accent); }

/* --- Hakkında (description_2 zengin metin) -------------------------------- */
.bb-about { max-width: 76ch; }
.bb-prose { color: var(--text-secondary); }
.bb-prose p, .bb-prose li { color: var(--text-secondary); line-height: 1.7; }
.bb-prose h2, .bb-prose h3, .bb-prose h4, .bb-prose h5 {
  font-size: 1.125rem; font-weight: 500; color: var(--text-primary);
  margin: 1.75rem 0 .75rem; line-height: 1.4;
}
.bb-prose > :first-child { margin-top: 0; }
.bb-prose > :last-child { margin-bottom: 0; }
.bb-prose strong, .bb-prose b { font-weight: 500; color: var(--text-primary); }
.bb-prose a { color: var(--text-accent); }
.bb-prose img { max-width: 100%; height: auto; border-radius: var(--radius-md); }
.bb-prose table { max-width: 100%; display: block; overflow-x: auto; }
.bb-prose * { background-color: transparent !important; }
.bb-prose span, .bb-prose p, .bb-prose li, .bb-prose font { color: inherit !important; font-family: inherit !important; }

/* --- Liste (index) sayfaları -------------------------------------------- */
.bb-tile .bb-tile-name { display: block; overflow-wrap: anywhere; }
.bb-tile .bb-tile-sub {
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.bb-tile .bb-tile-text { min-width: 0; flex: 1; }
.bb-tile .bb-row-go { margin-left: auto; }
@media (max-width: 575.98px) {
  .bb-tile { padding: .75rem .875rem; gap: .625rem; }
  .bb-tile .bb-mono { width: 36px; height: 36px; font-size: .75rem; }
  .bb-tile .bb-row-go { display: none; }
}
