/* SWUAK live hub — v48 */
.news-live-insert{
  grid-column:1/-1;
  grid-row:5 / span 4;
  min-width:0;
  min-height:0;
  align-self:stretch;
  position:relative;
  z-index:2;
}
.news-live-module{
  position:relative;
  min-width:0;
  height:100%;
  box-sizing:border-box;
  padding:10px 18px 10px;
  border:1px solid #bdb4a4;
  border-top-width:2px;
  border-bottom-width:2px;
  border-radius:15px;
  background:#e5dfd3;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 7px 22px rgba(48,39,26,.07);
}
.news-live-module-title{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 0 9px;
  color:#111214;
  font:900 25px/.98 var(--site-font);
  letter-spacing:-.045em;
}
.news-live-module-title span{display:block}
.news-live-row{min-width:0}
.news-live-row+.news-live-row{margin-top:3px;padding-top:0;border-top:0}
.news-live-heading{display:flex;align-items:center;height:19px;padding:0 1px 3px}
.news-live-heading h2{margin:0;color:var(--ink);font:850 15px/1 var(--site-font);letter-spacing:-.025em}
.news-live-rail{position:relative;min-width:0;overflow:visible}
.news-live-track{
  display:flex;
  gap:10px;
  min-width:0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
  padding:0 0 1px;
}
.news-live-track::-webkit-scrollbar{display:none}
.news-live-track--coverage{scroll-snap-type:x proximity}
.news-live-track--local{scroll-behavior:auto;scroll-snap-type:none}
.news-live-track--coverage .swuak-live-card,
.news-live-track--local .swuak-live-card{
  flex:0 0 clamp(245px,calc((100% - 40px)/5),330px);
  scroll-snap-align:start;
}

.swuak-live-card{
  min-width:0;
  overflow:hidden;
  border:1px solid #c8c0b4;
  border-radius:10px;
  background:#fbfaf6;
  box-shadow:0 3px 11px rgba(48,39,26,.055);
}
.swuak-live-video,.swuak-live-iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#202124}
.swuak-live-video{position:relative;overflow:hidden;padding:0;cursor:pointer;text-align:left}
.swuak-live-video img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .25s ease}
.swuak-live-video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.22));transition:background .25s ease}
.swuak-live-video:hover img{transform:scale(1.025)}
.swuak-live-video:hover::after{background:linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.13))}
/* All live cards share the same quiet hover treatment. */
.swuak-live-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.swuak-live-card:hover{transform:translateY(-1px);border-color:#b7afa2;box-shadow:0 7px 18px rgba(48,39,26,.10)}
.swuak-live-card:hover .swuak-live-video img,
.swuak-live-card:hover .swuak-live-start-poster,
.swuak-live-card:hover .swuak-live-player-mount{transform:scale(1.022);filter:brightness(.89)}
.swuak-live-start-poster,.swuak-live-player-mount{transition:opacity .22s ease,transform .30s ease,filter .22s ease}
.swuak-live-card:hover .swuak-live-video::after{background:rgba(0,0,0,.11)}

.swuak-live-badge{position:absolute;z-index:2;top:9px;left:9px;padding:4px 6px;border-radius:5px;background:#d64037;color:#fff;font:850 8px/1 var(--site-font);letter-spacing:.08em;box-shadow:0 1px 4px rgba(0,0,0,.22)}
.swuak-live-play-icon{position:absolute;z-index:2;left:50%;top:50%;display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(18,18,18,.58);color:#fff;font-size:12px;line-height:1;transform:translate(-50%,-50%);padding-left:2px;backdrop-filter:blur(4px)}
.swuak-live-card-copy{position:relative;display:flex;align-items:baseline;min-width:0;height:34px;box-sizing:border-box;padding:9px 11px 10px;color:#111214;font-size:11px;line-height:1.2;white-space:nowrap;background:#fbfaf6}
.swuak-live-card-title{display:flex;align-items:baseline;gap:4px;min-width:0;overflow:hidden}
.swuak-live-card-title strong{flex:0 0 auto;font-weight:800}
.swuak-live-card-title>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#66635d}

/* Local navigation stays outside the cards and only appears while the row is
   being hovered/focused. It never steals horizontal room from the streams. */
.news-live-chevron{
  position:absolute;
  z-index:8;
  top:calc(50% - 17px);
  display:grid;
  place-items:center;
  width:31px;
  height:34px;
  padding:0 0 2px;
  border:1px solid #bdb7aa;
  border-radius:9px;
  background:rgba(248,245,238,.97);
  color:#22221f;
  box-shadow:0 3px 10px rgba(48,39,26,.11);
  font:500 25px/1 Arial,sans-serif;
  cursor:pointer;
  backdrop-filter:blur(8px);
  opacity:0;
  visibility:hidden;
  transform:scale(.96);
  transition:opacity .16s ease,transform .16s ease,visibility .16s;
}
.news-live-rail--local:hover .news-live-chevron,
.news-live-rail--local:focus-within .news-live-chevron,
.news-live-rail--local.is-hovered .news-live-chevron{opacity:1;visibility:visible;transform:scale(1)}
.news-live-chevron:hover{background:#fffdf9;border-color:#a9a297}
.news-live-chevron--left{left:-43px}
.news-live-chevron--right{right:-43px}
.news-live-chevron:focus-visible{outline:2px solid #111214;outline-offset:2px}

/* Compact YouTube playback is a cropped, inert video window. Keeping the
   iframe node permanently mounted is important: horizontal scrolling no longer
   reparents it, so a playing stream keeps running even while off screen. */
.swuak-live-player-shell{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#202124;cursor:pointer;isolation:isolate}
.swuak-live-player-mount{--yt-chrome-crop:clamp(42px,3.2vw,54px);position:absolute!important;inset:0;overflow:hidden;opacity:0;pointer-events:none!important;user-select:none;transition:opacity .22s ease}
.swuak-live-player-host{position:absolute!important;left:0;right:0;top:calc(0px - var(--yt-chrome-crop));height:calc(100% + var(--yt-chrome-crop) + var(--yt-chrome-crop));pointer-events:none!important;user-select:none}
.swuak-live-player-host iframe{position:absolute!important;inset:0!important;display:block;width:100%!important;height:100%!important;border:0!important;pointer-events:none!important;user-select:none!important}
.swuak-live-player-shell.is-playing-clean .swuak-live-player-mount{opacity:1}
.swuak-live-start-poster{position:absolute;z-index:2;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:1;pointer-events:none;transition:opacity .22s ease}
.swuak-live-start-poster::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.018)}
.swuak-live-player-shell.is-playing-clean .swuak-live-start-poster{opacity:0}
.swuak-live-player-shell:hover,.swuak-live-player-shell:focus,.swuak-live-player-shell:active{outline:0;filter:none;transform:none}
.swuak-live-player-shell:focus-visible{outline:2px solid #111214;outline-offset:-2px}
.swuak-live-player-shell.is-user-paused .swuak-live-start-poster{opacity:1}
.swuak-live-player-shell.is-user-paused .swuak-live-player-mount{opacity:0}
.swuak-live-player-shell.is-user-paused .swuak-live-play-icon{transform:translate(-50%,-50%) scale(1);opacity:1;visibility:visible}

/* Loading dots live in the lower-right of the white information strip. */
.swuak-live-loading-dots{position:absolute;z-index:3;right:11px;bottom:10px;display:flex;align-items:center;justify-content:flex-end;gap:4px;width:22px;height:8px;opacity:0;pointer-events:none;transition:opacity .16s ease}
.swuak-live-loading-dots i{display:block;width:4px;height:4px;border-radius:50%;background:#6d6a63;opacity:.28;transform:translateY(0) scale(.9)}
.swuak-live-card.is-loading .swuak-live-card-copy{padding-right:42px}
.swuak-live-card.is-loading .swuak-live-play-icon{opacity:0;visibility:hidden}
.swuak-live-card.is-loading .swuak-live-loading-dots{opacity:1}
.swuak-live-card.is-loading .swuak-live-loading-dots i:nth-child(1){animation:swuakLiveDot 2.1s ease-in-out infinite 0s}
.swuak-live-card.is-loading .swuak-live-loading-dots i:nth-child(2){animation:swuakLiveDot 2.1s ease-in-out infinite .28s}
.swuak-live-card.is-loading .swuak-live-loading-dots i:nth-child(3){animation:swuakLiveDot 2.1s ease-in-out infinite .56s}
.swuak-live-card.is-loading-long .swuak-live-loading-dots i:nth-child(1){animation-duration:2.7s;animation-delay:.15s}
.swuak-live-card.is-loading-long .swuak-live-loading-dots i:nth-child(2){animation-duration:2.7s;animation-delay:.63s}
.swuak-live-card.is-loading-long .swuak-live-loading-dots i:nth-child(3){animation-duration:2.7s;animation-delay:1.11s}
@keyframes swuakLiveDot{0%,18%,100%{opacity:.25;transform:translateY(0) scale(.88)}42%{opacity:.9;transform:translateY(-1px) scale(1.04)}66%{opacity:.46;transform:translateY(0) scale(.94)}}


@media(max-width:1250px){
  .news-live-track--coverage .swuak-live-card,
  .news-live-track--local .swuak-live-card{flex-basis:clamp(245px,calc((100% - 30px)/4),288px)}
  .news-live-chevron--left{left:-37px}.news-live-chevron--right{right:-37px}
}
@media(max-width:900px){
  .news-live-module{padding-inline:14px}
  .news-live-track--coverage .swuak-live-card,
  .news-live-track--local .swuak-live-card{flex-basis:260px}
  .news-live-chevron--left{left:-31px}.news-live-chevron--right{right:-31px}
}
@media(max-width:760px){
  .news-live-insert{grid-row:5 / span 4}
  .news-live-module{padding:12px 10px 14px}
  .news-live-module-title{font-size:22px}
  .news-live-track{gap:8px}
  .news-live-track--coverage .swuak-live-card,
  .news-live-track--local .swuak-live-card{flex-basis:clamp(250px,72vw,310px)}
  .news-live-chevron--left{left:3px}.news-live-chevron--right{right:3px}
}
@media(max-width:520px){
  .news-live-insert{grid-row:auto;min-height:0}
  .news-live-module{height:auto;border-radius:11px;padding-bottom:15px}
  .news-live-module-title{margin-bottom:10px;font-size:21px}
  .news-live-heading h2{font-size:14px}
  .news-live-track--coverage .swuak-live-card,
  .news-live-track--local .swuak-live-card{flex-basis:min(82vw,300px)}
  .news-live-chevron{top:calc(50% - 16px);width:29px;height:32px}
}
@media (prefers-reduced-motion:reduce){
  .swuak-live-loading-dots i{animation:none!important;opacity:.65!important}
}


/* v47 spacing: Local header is the only separator between rows. */
.news-live-row--local .news-live-rail{margin-top:-1px}


/* v48 alignment + news-card-style hover */
.news-live-heading{padding-left:10px}
.swuak-live-card{transform:none!important;transition:border-color .3s ease .06s,box-shadow .3s ease .06s}
.swuak-live-card:hover{transform:none!important;border-color:#b7afa2;box-shadow:0 4px 14px rgba(48,39,26,.075)}
.swuak-live-video img{transition:transform .42s cubic-bezier(.2,.7,.2,1)}
.swuak-live-video::after{background:#000!important;opacity:0;transition:opacity .32s ease .08s}
.swuak-live-card:hover .swuak-live-video img{transform:scale(1.04);filter:none}
.swuak-live-card:hover .swuak-live-video::after{background:#000!important;opacity:.075}
.swuak-live-player-shell::after{content:"";position:absolute;z-index:5;inset:0;background:#000;opacity:0;pointer-events:none;transition:opacity .32s ease .08s}
.swuak-live-card:hover .swuak-live-player-shell::after{opacity:.075}
.swuak-live-start-poster,.swuak-live-player-mount{transition:opacity .22s ease,transform .42s cubic-bezier(.2,.7,.2,1)}
.swuak-live-card:hover .swuak-live-start-poster,
.swuak-live-card:hover .swuak-live-player-mount{transform:scale(1.04);filter:none}

/* v49: transform-driven Local conveyor. Unlike scrollLeft animation this moves
   continuously at sub-pixel precision and leaves every playing iframe mounted. */
.news-live-track--local{
  position:relative;
  overflow:hidden;
  scroll-behavior:auto;
  scroll-snap-type:none;
  touch-action:pan-y;
}
.news-live-conveyor{
  display:flex;
  flex-wrap:nowrap;
  gap:10px;
  width:max-content;
  min-width:max-content;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.news-live-conveyor .swuak-live-card{
  flex:0 0 var(--live-card-width,300px);
  width:var(--live-card-width,300px);
}

/* v52: Local is an automatic-only conveyor. */
.news-live-row--local .news-live-chevron{display:none!important}
