.premiery-hero {
  position: relative;
}
.premiery-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 0 0, rgba(229, 9, 59, 0.22), transparent 55%), radial-gradient(circle at 100% 100%, rgba(64, 196, 255, 0.16), transparent 60%);
  opacity: 0.7;
  mix-blend-mode: screen;
  z-index: -1;
}
.hero-platforms {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.hero-platforms__group {
  max-width: 100%;
}
.premiery-filter-btn {
  min-width: 0;
}
.premiery-filter-btn.is-active {
  --btn-bg: var(--color-gradient-crimson);
  --btn-bg-hover: linear-gradient(135deg, #ff1744 0%, #e5093b 50%, #ff4b7d 100%);
  --btn-bg-active: linear-gradient(135deg, #c4002b 0%, #9b0024 100%);
  --btn-color: var(--color-text-inverse);
  --btn-border: transparent;
}
.premiery-hero-highlights {
  margin-top: var(--space-lg);
}
.premiery-hero-highlight-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: var(--grid-gap-md);
}
.premiery-hero-highlight {
  position: relative;
  padding: var(--space-md) var(--space-lg);
  border-radius: var(--radius-card);
  background: radial-gradient(circle at top left, rgba(229, 9, 59, 0.2), transparent 55%), rgba(9, 10, 18, 0.96);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: var(--shadow-subtle);
  min-width: 0;
  transition: transform var(--transition-bounce), box-shadow var(--transition-base), border-color var(--transition-base), background var(--transition-slow);
}
.premiery-hero-highlight::before {
  content: "";
  position: absolute;
  inset: -30%;
  background: radial-gradient(circle at 10% 0, rgba(229, 9, 59, 0.24), transparent 60%), radial-gradient(circle at 90% 100%, rgba(64, 196, 255, 0.2), transparent 60%);
  opacity: 0;
  mix-blend-mode: screen;
  transition: opacity var(--transition-slow);
  pointer-events: none;
}
.premiery-hero-highlight:hover {
  transform: translateY(-3px);
  border-color: rgba(229, 9, 59, 0.7);
  box-shadow: var(--shadow-elevated);
  background: radial-gradient(circle at top left, rgba(229, 9, 59, 0.26), transparent 55%), rgba(9, 10, 18, 0.98);
}
.premiery-hero-highlight:hover::before {
  opacity: 1;
}
.premiery-hero-highlight__meta {
  margin-bottom: var(--space-xs);
}
.premiery-hero-highlight__title {
  font-family: var(--font-display);
  font-size: var(--font-size-lg);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-text);
  margin-bottom: var(--space-xs);
}
.premiery-hero-highlight__info {
  font-size: var(--font-size-xs);
}
.premiery-featured-grid {
  align-items: stretch;
}
.premiery-featured-card {
  min-width: 0;
}
.premiery-featured-card .card__body {
  min-width: 0;
}
.premiery-featured-card .card__footer {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  align-items: center;
}
.premiery-featured-card .btn {
  max-width: 100%;
}
.premiery-calendar-card {
  min-width: 0;
}
.premiery-calendar-table {
  margin-bottom: var(--space-lg);
}
.premiery-calendar-table table {
  width: 100%;
  min-width: 0;
}
.premiery-calendar-table td,
.premiery-calendar-table th {
  vertical-align: top;
}
.premiery-calendar-footer {
  flex-wrap: wrap;
  gap: var(--space-sm);
}
.premiery-calendar-footer .btn {
  max-width: 100%;
}
.premiery-calendar-toggle {
  display: inline-flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
}
.premiery-calendar-view.is-active {
  --btn-bg: rgba(229, 9, 59, 0.22);
  --btn-bg-hover: rgba(229, 9, 59, 0.3);
  --btn-bg-active: rgba(229, 9, 59, 0.38);
  --btn-color: var(--color-text);
  --btn-border: rgba(229, 9, 59, 0.8);
}
.premiery-voting-grid {
  align-items: stretch;
  gap: var(--grid-gap-lg);
}
.premiery-voting-list,
.premiery-voting-side {
  min-width: 0;
}
.premiery-voting-item {
  padding: var(--space-md) var(--space-lg);
  border-radius: var(--radius-card);
  background: rgba(5, 5, 9, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: var(--shadow-subtle);
}
.premiery-voting-item + .premiery-voting-item {
  margin-top: var(--space-md);
}
.premiery-voting-item__header {
  gap: var(--space-md);
}
.premiery-voting-rank {
  width: 2rem;
  height: 2rem;
  border-radius: var(--radius-pill);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: var(--font-size-sm);
  background: var(--color-gradient-crimson);
  color: var(--color-text-inverse);
  box-shadow: var(--shadow-glow);
}
.premiery-voting-title {
  font-family: var(--font-display);
  font-size: var(--font-size-md);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-text);
}
.premiery-voting-score {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-2xs);
}
.premiery-voting-score__value {
  font-family: var(--font-mono);
  font-size: var(--font-size-lg);
  color: var(--color-accent-alt);
}
.premiery-voting-score__label {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
}
.premiery-voting-quote {
  font-size: var(--font-size-sm);
  color: var(--color-text-soft);
}
.premiery-voting-quote::before {
  content: "\201E";
}
.premiery-voting-quote::after {
  content: "\201D";
}
.premiery-voting-item .btn {
  align-self: flex-start;
  max-width: 100%;
}
.premiery-voting-stats {
  align-items: stretch;
}
.premiery-voting-stat {
  padding: var(--space-md);
  border-radius: var(--radius-lg);
  background: rgba(5, 5, 9, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.06);
  min-width: 0;
}
.premiery-voting-stat__value {
  font-family: var(--font-mono);
  font-size: var(--font-size-xl);
  color: var(--color-primary-strong);
  margin-bottom: var(--space-xs);
}
.premiery-voting-stat__label {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
}
.premiery-voting-cta .btn-group {
  width: 100%;
}
.premiery-voting-cta .btn {
  max-width: 100%;
}
.premiery-reviews-grid {
  align-items: stretch;
}
.premiery-review-card {
  min-width: 0;
}
.premiery-review-card .card__body {
  min-width: 0;
}
.premiery-review-card .l-cluster {
  flex-wrap: wrap;
  gap: var(--space-sm);
}
.premiery-review-card .btn {
  max-width: 100%;
}
@media (max-width: 1023.98px) {
  .premiery-hero-highlight-row {
    grid-template-columns: minmax(0, 1fr);
  }
  .premiery-voting-item {
    padding-inline: var(--space-md);
  }
}
@media (max-width: 767.98px) {
  .premiery-hero-highlights {
    margin-top: var(--space-md);
  }
  .premiery-hero-highlight {
    padding-inline: var(--space-md);
  }
  .premiery-voting-score {
    align-items: flex-start;
  }
  .premiery-calendar-table table {
    font-size: var(--font-size-xs);
  }
}
@media (max-width: 479.98px) {
  .premiery-voting-item {
    padding-inline: var(--space-sm);
  }
  .premiery-voting-rank {
    width: 1.8rem;
    height: 1.8rem;
  }
}
