#bbr-live-banners{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:2147483000;
  font-family:Arial,sans-serif;
  pointer-events:none;
}
.bbr-live-banner{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  min-height:38px;
  overflow:hidden;
  border-bottom:1px solid rgba(88,255,48,.28);
  background:rgba(3,9,5,.97);
  color:#eaffee;
  box-shadow:0 4px 24px rgba(0,0,0,.38);
  pointer-events:auto;
}
.bbr-live-banner.warning{
  min-height:62px;
  border-color:rgba(255,92,92,.75);
  background:linear-gradient(90deg,rgba(55,5,8,.98),rgba(22,4,6,.98));
  box-shadow:0 5px 30px rgba(255,35,50,.18);
}
.bbr-live-label{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 16px;
  background:#0b2814;
  color:#58ff30;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  white-space:nowrap;
}
.bbr-live-banner.warning .bbr-live-label{background:#7b101b;color:#fff}
.bbr-live-label i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 11px currentColor;
  animation:bbrLivePulse 1.5s ease-in-out infinite;
}
.bbr-live-window{
  position:relative;
  min-width:0;
  height:100%;
  overflow:hidden;
  white-space:nowrap;
  mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
}
.bbr-live-track{
  position:absolute;
  top:50%;
  left:100%;
  display:flex;
  width:max-content;
  transform:translateY(-50%);
  animation:bbrLiveMarquee var(--bbr-speed,28s) linear infinite;
  will-change:transform;
}
.bbr-live-group{
  display:flex;
  align-items:center;
  gap:42px;
  padding-right:42px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
}
.bbr-live-banner.warning .bbr-live-group{font-size:17px;color:#fff}
.bbr-live-item strong{color:#58ff30}
.bbr-live-banner.warning .bbr-live-item strong{color:#ffd166}
.bbr-live-countdown{
  font-family:monospace;
  color:#ffd166;
  font-size:1.05em;
  text-shadow:0 0 10px rgba(255,209,102,.35);
}
@keyframes bbrLiveMarquee{
  from{transform:translate(0,-50%)}
  to{transform:translate(calc(-100% - 100vw),-50%)}
}
@keyframes bbrLivePulse{50%{opacity:.35;transform:scale(.72)}}
@media(max-width:700px){
  .bbr-live-banner{grid-template-columns:1fr;min-height:62px}
  .bbr-live-label{min-height:28px;justify-content:center}
  .bbr-live-banner.warning{min-height:82px}
  .bbr-live-window{min-height:34px}
  .bbr-live-group{font-size:11px;gap:25px;padding-right:25px}
  .bbr-live-banner.warning .bbr-live-group{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.bbr-live-track{animation-duration:70s}}


/* RC39: banners + main navigation behave as one fixed top stack */
:root{
  --bbr-live-banner-height:0px;
}
.site-header{
  top:var(--bbr-live-banner-height)!important;
}
.hero{
  padding-top:calc(var(--header-h) + var(--bbr-live-banner-height))!important;
}
.transparency-page{
  padding-top:calc(var(--header-h) + var(--bbr-live-banner-height))!important;
}
html{
  scroll-padding-top:calc(var(--header-h) + var(--bbr-live-banner-height) + 12px)!important;
}

/* Keep generic inner pages clear of the fixed stack. */
body.bbr-has-live-banners main:not(.transparency-page),
body.bbr-has-live-banners .page-shell,
body.bbr-has-live-banners .legal-page,
body.bbr-has-live-banners .risk-page{
  scroll-margin-top:calc(var(--header-h) + var(--bbr-live-banner-height));
}

@media(max-width:900px){
  .hero{
    padding-top:calc(72px + var(--bbr-live-banner-height))!important;
  }
  .transparency-page{
    padding-top:calc(72px + var(--bbr-live-banner-height))!important;
  }
  html{
    scroll-padding-top:calc(72px + var(--bbr-live-banner-height) + 10px)!important;
  }
}


/* RELEASE — Play page banner behavior
   Desktop: banners remain visible and push the complete play UI below them.
   Mobile/tablet: website warning/news banners are hidden on the play page. */
body.bbr-play-page .play-header{
  margin-top:var(--bbr-live-banner-height);
}
body.bbr-play-page .play-shell{
  height:calc(100dvh - 72px - var(--bbr-live-banner-height));
}

@media(max-width:900px){
  body.bbr-play-page #bbr-live-banners{
    display:none!important;
  }
  body.bbr-play-page .play-header{
    margin-top:0;
  }
  body.bbr-play-page .play-shell{
    height:calc(100dvh - 64px);
  }
}

@media(max-width:560px){
  body.bbr-play-page .play-shell{
    height:calc(100dvh - 56px);
  }
}
