/* fixture-cards-2026.css
 * Flex-based fixture card zones for homepage carousel
 * Replaces absolute-positioned crest layout in carousel .item cards
 * Depends on: header-main.css (CSS custom properties), crests.css (sprite classes)
 */

 .carousel {
  padding-bottom: 80px;
 }

/* Equal-height Slick slides */
.carousel-main .slick-track {
  display: flex !important;
}
.carousel-main .slick-slide {
  height: auto !important;
}

/* --- Card container --- */
.carousel-main .item .fixture-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  background: #fff;
}

/* --- Zone 1: Competition bar --- */
.fixture-card__comp-bar {
  height: 5px;
  flex-shrink: 0;
}
.fixture-card__comp-bar--cc  { background: var(--tb-primary-gold); }
.fixture-card__comp-bar--t20 { background: var(--tb-secondary-yellow); }
.fixture-card__comp-bar--odc { background: var(--tb-secondary-cyan); }
.fixture-card__comp-bar--100 { background: var(--tb-secondary-purple); }

/* --- Zone 2: Crests --- */
.fixture-card__crests {
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 0px 0px;
  background: linear-gradient(180deg, #e8e8e8 0%, #f4f4f4 30%, #fff 100%);
}
.fixture-card__crests::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: -10%;
  right: -10%;
  height: 40%;
  background: #fff;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  pointer-events: none;
}

.fixture-card__team {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 2;
}
/* Crest sizing */
.fixture-card__team .crests {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 180px;
  height: auto;
  padding-bottom: 0;
  aspect-ratio: 1 / 1;
  background-size: cover;
}
@media screen and (max-width: 1200px) {
  .fixture-card__team .crests { width: 180px; }
}
@media screen and (max-width: 992px) {
  .fixture-card__team .crests { width: 130px; }
}
@media screen and (max-width: 768px) {
  .fixture-card__team .crests { width: 100px; }
}
@media screen and (max-width: 480px) {
  .fixture-card__team .crests { width: 130px; }
}

/* Live badge */
.fixture-card__live-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 5;
  background: var(--tb-primary-green);
  color: #fff;
  padding: 3px 10px;
  font-family: var(--font-primary);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  display: none;
  align-items: center;
  gap: 5px;
}
.fixture-card__live-badge::before {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--tb-primary-red);
  border-radius: 50%;
  animation: fc-pulse 1.5s ease-in-out infinite;
}
@keyframes fc-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}
.fixture-card--live .fixture-card__live-badge {
  display: flex;
}

/* --- Zone 3: Status --- */
.fixture-card__status {
  flex-grow: 1;
  text-align: center;
  padding: 4px 12px 12px;
  min-height: 70px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.fixture-card__scores {
  display: none;
}
.fixture-card--live .fixture-card__scores {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 4px;
}
.fixture-card__score-item {
  text-align: center;
}
.fixture-card__score-abbr {
  font-family: var(--font-primary);
  font-size: 10px;
  color: var(--tb-secondary-grey);
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 600;
}
.fixture-card__score-val {
  font-family: var(--font-primary);
  font-size: 18px;
  font-weight: 700;
  color: #33312f;
  letter-spacing: 0.5px;
  line-height: 1.2;
}
.fixture-card__score-overs {
  font-size: 9px;
  color: #bbb;
}
.fixture-card__score-sep {
  color: var(--tb-secondary-grey);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  align-self: center;
}
.fixture-card__match-status {
  font-family: var(--font-primary);
  font-size: 10px;
  color: var(--tb-primary-green);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1.4;
  display: none;
}
.fixture-card--live .fixture-card__match-status {
  display: block;
}

.fixture-card__countdown {
  font-family: var(--font-primary);
  font-size: 13px;
  color: var(--tb-primary-green);
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.fixture-card--live .fixture-card__countdown {
  display: none;
}

/* --- Zone 4: Caption --- */
.fixture-card__caption {
  padding: 0 12px 8px;
  text-align: center;
  display: flex;
  flex-direction: column;
}
.fixture-card__title {
  font-family: var(--font-primary);
  font-size: 1.3em;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: #33312f;
  margin: 0 0 4px;
}
.fixture-card__meta {
  font-family: var(--font-primary);
  font-size: 12px;
  color: #888;
  line-height: 1.5;
  margin: 0;
}

/* --- Zone 5: Buttons --- */
.fixture-card__buttons {
  padding: 12px;
  display: flex;
  gap: 8px;
  justify-content: center;
  border-top: 1px solid #eee;
  margin-top: auto;
}
.fixture-card__btn {
  display: inline-block;
  padding: 9px 16px;
  font-family: var(--font-primary);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  border: 1px solid transparent;
  transition: background 0.2s, color 0.2s;
  flex: 1;
  max-width: 160px;
}
.fixture-card__btn--match-centre {
  background: var(--tb-primary-green);
  color: #fff;
  border-color: var(--tb-primary-green);
}
.fixture-card__btn--match-centre:hover {
  background: #306925;
  color: #fff;
  text-decoration: none;
}
.fixture-card__btn--tickets {
  background: var(--tb-primary-red);
  color: #fff;
  border-color: var(--tb-primary-red);
}
.fixture-card__btn--tickets:hover {
  background: hsl(354, 83%, 44%);
  color: #fff;
  text-decoration: none;
}
.fixture-card__btn--hospitality {
  background: transparent;
  color: #33312f;
  border-color: #33312f;
}
.fixture-card__btn--hospitality:hover {
  background: #33312f;
  color: #fff;
  text-decoration: none;
}
.fixture-card__btn--preview {
  background: transparent;
  color: var(--tb-primary-green);
  border-color: var(--tb-primary-green);
}
.fixture-card__btn--preview:hover {
  background: var(--tb-primary-green);
  color: #fff;
  text-decoration: none;
}
.fixture-card__btn--info {
  background: transparent;
  color: var(--tb-secondary-grey);
  border-color: var(--tb-secondary-grey);
}
.fixture-card__btn--info:hover {
  background: var(--tb-secondary-grey);
  color: #fff;
  text-decoration: none;
}

/* --- Responsive --- */
@media screen and (max-width: 768px) {
  .fixture-card__score-val {
    font-size: 15px;
  }
  .fixture-card__btn {
    padding: 8px 12px;
    font-size: 9px;
  }
}
@media screen and (max-width: 480px) {
  .fixture-card__buttons {
    flex-direction: column;
    align-items: center;
  }
  .fixture-card__btn {
    max-width: 200px;
    width: 100%;
  }
}
