/* V111 — typography, schedule metadata and final SORA player/community polish. */

/* Player: one compact brand line, without a duplicated title or fullscreen control. */
.sora-cinema-v110 .sora-cinema-header {
  grid-template-columns: 44px minmax(0, 1fr) 44px !important;
}
.sora-cinema-v110 .sora-cinema-brand {
  color: #fff;
  font-size: 16px;
}
.sora-cinema-v110 .sora-cinema-heading {
  align-self: center;
}
.sora-cinema-v110 .sora-cinema-heading strong {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: clamp(14px, 1.45vw, 17px) !important;
  white-space: nowrap;
}
.sora-cinema-v110 .sora-cinema-heading strong span {
  color: rgba(123, 174, 217, .55);
  font-weight: 500;
}
.sora-cinema-v110 .sora-cinema-heading strong b {
  color: #73caff;
  font-weight: 850;
}
.sora-cinema-v110 .sora-cinema-quality {
  width: 44px;
  height: 36px;
  min-height: 36px;
  justify-content: center;
  padding: 0 !important;
  border-radius: 11px;
}

/* Minimal participant icons. */
.release-participant-button-icon {
  border-radius: 12px !important;
  box-shadow: none !important;
}
.release-participant-button-team .release-participant-button-icon {
  background: rgba(37, 156, 244, .1) !important;
  color: #5cc5ff !important;
}
.release-participant-button-characters .release-participant-button-icon {
  background: rgba(132, 103, 245, .1) !important;
  color: #b29cff !important;
}

/* Community title: deliberate spacing and a soft luminous divider. */
.release-community-title-v87 {
  position: relative !important;
  align-items: center !important;
  margin: 0 0 20px !important;
  padding: 0 2px 18px !important;
  border-bottom: 0 !important;
}
.release-community-title-v87::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(48, 172, 255, .68), rgba(111, 103, 245, .28) 46%, transparent 92%);
  box-shadow: 0 1px 12px rgba(38, 157, 247, .16);
}
.release-community-title-v87 > div {
  align-self: center;
  gap: 4px !important;
}
.release-community-title-v87 .eyebrow,
.release-community-title-v87 h2,
.release-community-title-v87 p {
  margin: 0 !important;
}
.release-community-title-v87 p {
  line-height: 1.45 !important;
}

/* Force the same real profile gradient used in the header onto comment names. */
.comment-identity-row .comment-author,
.comment-identity-row .comment-author.nick-style {
  background: var(--comment-nick-gradient, linear-gradient(135deg, #6b7280, #9ca3af)) !important;
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .24), 0 6px 14px rgba(0, 6, 17, .22);
}
.comment-body > p {
  font-size: 13.5px !important;
  line-height: 1.62 !important;
}

/* Public schedule: larger labels without making day buttons oversized. */
.schedule-day-tabs button span {
  font-size: 11.5px !important;
  font-weight: 800 !important;
}
.schedule-day-tabs button em {
  min-width: 24px !important;
  height: 24px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}
.schedule-panel-head h2 {
  font-size: clamp(22px, 2.2vw, 27px) !important;
}
.schedule-poster-grid {
  grid-template-columns: repeat(auto-fill, minmax(148px, 164px)) !important;
}
.schedule-poster-card {
  max-width: 164px !important;
}
.schedule-poster-copy {
  gap: 8px !important;
  padding: 11px !important;
}
.schedule-poster-copy strong {
  font-size: 13.5px !important;
  line-height: 1.38 !important;
}
.schedule-poster-meta {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px !important;
  overflow: visible !important;
  color: #91a7bd !important;
  white-space: normal !important;
}
.schedule-poster-meta span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 24px;
  padding: 4px 7px;
  border: 1px solid rgba(83, 166, 239, .13);
  border-radius: 8px;
  background: rgba(255, 255, 255, .025);
  font-size: 10.5px;
  font-weight: 750;
  line-height: 1;
}
.schedule-poster-meta i {
  color: #57bcfa;
  font-size: 9px;
}

/* New episodes: one literal format requested by the project owner. */
.new-episode-poster em {
  font-size: 9px !important;
  font-weight: 850 !important;
}

@media (max-width: 680px) {
  .sora-cinema-v110 .sora-cinema-header {
    grid-template-columns: 35px minmax(0, 1fr) 38px !important;
  }
  .sora-cinema-v110 .sora-cinema-quality {
    display: inline-flex !important;
    width: 38px;
    height: 34px;
    min-height: 34px;
    font-size: 8px;
  }
  .sora-cinema-v110 .sora-cinema-heading strong {
    gap: 5px;
    font-size: 12px !important;
  }
  .release-community-title-v87 {
    align-items: flex-start !important;
    padding-bottom: 14px !important;
  }
  .comment-body > p {
    font-size: 12px !important;
  }
  .schedule-poster-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .schedule-poster-card {
    max-width: none !important;
  }
  .schedule-poster-meta span {
    min-height: 22px;
    padding: 3px 6px;
    font-size: 9.5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .release-community-title-v87::after { box-shadow: none; }
}
