/* StreamEast USA 3.1 — responsive game-page and archive stability fixes.
   Intentionally loaded after site.css and modern.css. Keeps the V3 game metadata intact. */
.game-page {container-type:inline-size; padding-bottom:68px;}
.game-page .breadcrumbs{min-width:0;line-height:1.55;row-gap:6px;color:#9ca9bc}
.game-page .breadcrumbs span:last-child{min-width:0;overflow-wrap:break-word}
.game-page .game-hero {
  padding:clamp(18px,2.1vw,30px) clamp(15px,3vw,36px) 0;
  border:1px solid #324157;
  background:radial-gradient(ellipse 68% 85% at 50% 0%,#233047 0%,#111b2c 60%,#0d1523 100%);
  box-shadow:0 14px 42px #0000002b;
}
.game-page .game-hero-label{flex-wrap:wrap;gap:8px 14px;font-size:12px;letter-spacing:.045em;color:#e2e9f3}
.game-page .game-league{color:#9fb3ce}
.game-page .game-versus{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,165px) minmax(0,1fr);
  gap:clamp(8px,2.2vw,28px);align-items:center;padding:34px 0 36px;
}
.game-page .game-team-home,.game-page .game-team-away{display:flex;flex-direction:column;align-items:center;min-width:0;gap:14px}
.game-page .game-team-home .team-avatar,.game-page .game-team-away .team-avatar{
  width:clamp(62px,7vw,82px);height:clamp(62px,7vw,82px);
  min-width:0;max-width:100%;border-radius:50%;overflow:hidden;
}
.game-page .game-team-home .team-avatar img,.game-page .game-team-away .team-avatar img{width:100%;height:100%;object-fit:contain}
.game-page .game-team-home h2,.game-page .game-team-away h2{
  display:block;max-width:100%;min-width:0;margin:0;
  color:#f8fafc!important;text-align:center;
  font-size:clamp(17px,2.2vw,28px);line-height:1.2;letter-spacing:-.035em;
  overflow-wrap:normal!important;word-break:normal!important;hyphens:none;
}
.game-page .game-team-home h2 a,.game-page .game-team-away h2 a{
  display:inline;color:#f8fafc!important;overflow-wrap:normal!important;word-break:normal!important;
  text-decoration:none;hyphens:none;
}
.game-page .game-team-home h2 a:hover,.game-page .game-team-away h2 a:hover{color:#ff616e!important}
.game-page .versus-center{min-width:0;gap:10px}
.game-page .versus-vs{font-size:clamp(30px,4vw,46px);letter-spacing:-.07em;line-height:1}
.game-page .game-kickoff{color:#d4dfed;font-size:clamp(10px,1vw,12px);font-weight:800;line-height:1.65;max-width:100%}
.game-page .game-score{font-size:clamp(28px,4vw,48px);line-height:1.1}
.game-page .game-hero-footer{color:#a6b9cd;flex-wrap:wrap;gap:8px 15px;font-size:11px}
.game-page .game-hero-footer .local-time:empty{display:none}
.game-page .game-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:20px;align-items:start;margin-top:22px}
.game-page .game-primary,.game-page .game-sidebar{min-width:0}
.game-page .game-sidebar{display:flex;flex-direction:column;gap:16px}
.game-page .sidebar-promo{margin-top:0}
.game-page .player-card,.game-page .sidebar-panel,.game-page .match-article{border:1px solid #29384d;background:#111a28;border-radius:14px;box-shadow:0 10px 30px #00000018}
.game-page .player-card{overflow:hidden}
.game-page .player-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:18px 20px}
.game-page .player-top h2{font-size:clamp(16px,2vw,20px);letter-spacing:-.03em;line-height:1.35}
.game-page .official-badge{font-size:10px;line-height:1.25;letter-spacing:.035em;padding:7px 10px;max-width:100%}
.game-page .video-screen{width:100%;aspect-ratio:16 / 9;min-height:200px;background:#050709}
.game-page .video-screen iframe{width:100%;height:100%}
.game-page .video-placeholder{max-width:100%;padding:20px 16px;text-align:center}
.game-page .video-placeholder h3{overflow-wrap:normal;word-break:normal;font-size:clamp(18px,2vw,23px)}
.game-page .video-placeholder p{font-size:12px;line-height:1.6}
.game-page .stream-bottom{padding:18px 20px}
.game-page .stream-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.game-page .stream-heading h3{font-size:17px;line-height:1.4;margin-bottom:2px}
.game-page .stream-heading p{font-size:12px;line-height:1.5}
.game-page .stream-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.game-page .stream-tab{min-width:0}
.game-page .stream-tab span:nth-child(2){overflow-wrap:normal;word-break:normal;text-overflow:ellipsis;overflow:hidden}
.game-page .sidebar-panel{padding:21px}
.game-page .sidebar-panel h2{font-size:19px;line-height:1.3}
.game-page .detail-row{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}
.game-page .detail-row strong{min-width:0;max-width:65%;overflow-wrap:break-word;text-align:right}
.game-page .match-article{padding:24px;margin-top:19px}
.game-page .match-article h2{font-size:clamp(19px,2.4vw,26px);overflow-wrap:normal;word-break:normal}
.game-page .article-body img{max-width:100%;height:auto}
.game-page .related-games{clear:both}
.archive-page .archive-banner h1{overflow-wrap:normal;word-break:normal}
.archive-page .match-grid{min-width:0}
.archive-page .match-card{min-width:0}
.archive-page .match-card h3,.archive-page .match-card h3 a{overflow-wrap:normal;word-break:normal}
.archive-page .archive-sports{max-width:100%;overflow-x:auto}
/* Use the simplified menu earlier than V3 to prevent a squeezed navigation. */
@media(max-width:1199px){
  body .se-v2-header-nav{display:none}
  body .se-v2-header .menu-toggle{display:grid}
  body .se-v2-header-inner{justify-content:space-between}
  body .se-v2-header .header-actions{margin-left:auto}
}
/* When content area is medium-size, prioritize the video and keep the details below. */
@container (max-width:1030px){
  .game-content-grid{grid-template-columns:minmax(0,1fr)!important}
  .game-sidebar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch}
  .game-sidebar .sidebar-promo{margin-top:0}
}
@container (max-width:800px){
  .game-versus{grid-template-columns:minmax(0,1fr) minmax(100px,140px) minmax(0,1fr)!important;gap:12px!important;padding:28px 0 30px!important}
  .game-team-home h2,.game-team-away h2{font-size:clamp(17px,3.2vw,24px)!important}
  .game-team-home .team-avatar,.game-team-away .team-avatar{height:68px!important;width:68px!important}
  .game-kickoff{font-size:11px!important}
}
@container (max-width:620px){
  .game-versus{grid-template-columns:minmax(0,1fr) minmax(80px,100px) minmax(0,1fr)!important;gap:7px!important}
  .game-team-home h2,.game-team-away h2{font-size:clamp(14px,3.5vw,20px)!important}
  .game-sidebar{grid-template-columns:minmax(0,1fr)!important}
  .stream-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .versus-vs{font-size:33px!important}
  .game-team-home .team-avatar,.game-team-away .team-avatar{height:56px!important;width:56px!important}
  .game-kickoff{font-size:10px!important}
}
@container (max-width:415px){
  .game-hero-label{font-size:10px!important;gap:6px!important}
  .game-versus{grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr)!important;gap:4px!important;padding:25px 0!important}
  .game-team-home h2,.game-team-away h2{font-size:clamp(12px,3.45vw,14px)!important;letter-spacing:-.045em!important}
  .game-team-home .team-avatar,.game-team-away .team-avatar{height:49px!important;width:49px!important}
  .versus-vs{font-size:28px!important}
  .game-kickoff{font-size:9px!important;line-height:1.3!important}
  .game-hero-footer{font-size:10px!important}
  .stream-tabs{grid-template-columns:minmax(0,1fr)!important}
  .player-top{align-items:flex-start}
}
/* Fallback for older browsers without CSS container queries. */
@media(max-width:1060px){.game-page .game-content-grid{grid-template-columns:minmax(0,1fr)}.game-page .game-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:670px){.game-page .game-sidebar{grid-template-columns:minmax(0,1fr)}.game-page .stream-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.game-page .game-team-home h2,.game-page .game-team-away h2{font-size:13px}.game-page .game-versus{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:5px}.game-page .stream-tabs{grid-template-columns:1fr}}
