/* BANAT entrance preview: one shared eight-second signal rhythm.
   The steel face remains present throughout; these are its two halo rings. */
body:not(.verticale-edition) #p1 .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-02-gate-button{
  background:transparent;
  box-shadow:none;
}
body:not(.verticale-edition) #p1.active.is-banat-gated.is-banat-signal-clock .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-02-gate-button{
  animation:banattiBanatMiddleScore 8s steps(1,end) infinite both;
}
body:not(.verticale-edition) #p1.active.is-banat-gated.is-banat-signal-clock .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-02-gate-button::before{
  animation:banattiBanatOuterScore 8s steps(1,end) infinite both;
}
body:not(.verticale-edition) #p1.active.is-banat-gated.is-banat-signal-clock .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-duration-ring{
  animation:none;
  opacity:1;
}
body:not(.verticale-edition) #p1.active.is-banat-gated.is-banat-signal-clock .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-duration-ring text{
  animation:banattiBanatUpperScore 8s steps(1,end) infinite both;
}
body:not(.verticale-edition) #p1 .banat-reel-02-identity-gate.is-launching .banat-reel-duration-ring{
  animation:none;
  opacity:0;
}
/* 0: both rings; .6s: reel and duration.
   4.4s: lettering off; 5.6s: outer off; 6.2s: middle off.
   6.2-8s: the button alone. All tracks start together with zero delay. */
@keyframes banattiBanatOuterScore{
  0%,69.99%{opacity:1;border-color:rgba(225,236,243,.96);box-shadow:0 0 3px rgba(224,234,240,.25);}
  70%,100%{opacity:0;border-color:transparent;box-shadow:none;}
}
@keyframes banattiBanatMiddleScore{
  0%,77.49%{border-color:#c6d1d8;}
  77.5%,100%{border-color:transparent;}
}
@keyframes banattiBanatUpperScore{
  0%,7.49%{opacity:0;}
  7.5%,54.99%{opacity:.9;}
  55%,100%{opacity:0;}
}
@media(prefers-reduced-motion:reduce){
  body:not(.verticale-edition) #p1.active.is-banat-gated.is-banat-signal-clock .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-02-gate-button{
    animation:none;
    border-color:#c6d1d8;
  }
  body:not(.verticale-edition) #p1.active.is-banat-gated.is-banat-signal-clock .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-02-gate-button::before{
    animation:none;
    opacity:1;
    border-color:rgba(225,236,243,.96);
  }
  body:not(.verticale-edition) #p1.active.is-banat-gated.is-banat-signal-clock .banat-reel-02-identity-gate:not(.is-launching) .banat-reel-duration-ring text{
    animation:none;
    opacity:.9;
  }
}

/* All existing circular film launchers use the approved face and rhythm.
   Their established sizes, seats, visibility and click handlers stay intact. */
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch{
  --banat-launch-rest-face:
    repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0px,rgba(255,255,255,.028) .5px,rgba(0,0,0,.022) .5px,rgba(0,0,0,.022) 1px,transparent 1px,transparent 2px),
    linear-gradient(180deg,#5d6972 0%,#4c5962 32%,#4c5962 88%,#5f6f7a 114%,#7b8b96 132%,#687983 146%,#53636e 160%);
  --banat-launch-rest-shadow:inset 0 0 0 .65px rgba(28,35,40,.90),inset 0 4px 5px rgba(7,13,18,.62),inset 0 -.8px 1px rgba(234,242,247,.20),0 0 0 1.4px rgba(7,12,16,.96),0 1px 3px rgba(0,0,0,.42);
  background:transparent!important;
  box-shadow:none!important;
  animation:none!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch :is(.banat-reel-ball,.hangar-banat-launch-core){
  inset:14.6px!important;
  background:var(--banat-launch-rest-face)!important;
  box-shadow:var(--banat-launch-rest-shadow)!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch:is(:active,.is-banat-launch-pressed) :is(.banat-reel-ball,.hangar-banat-launch-core){
  background:linear-gradient(180deg,rgb(88,169,10),rgb(61,129,4))!important;
  box-shadow:inset 0 5.5px 6.5px rgba(4,12,16,.70),inset 0 -1px 2px rgba(234,255,225,.28),0 0 0 1.4px rgba(7,12,16,.96)!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch::before{
  border-color:rgba(225,236,243,.96);
  box-shadow:none;
  opacity:0;
  animation:none!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch::after{
  z-index:2;
  opacity:1!important;
  inset:10.5px!important;
  padding:2.7px;
  border:0;
  background:radial-gradient(ellipse 28% 5% at 43% 1%,#fff 0%,rgba(245,251,255,.78) 28%,rgba(245,251,255,0) 100%),linear-gradient(180deg,#eef3f6 0%,#fbfdfe 2%,#a2b0ba 5%,#e2eaf0 8%,#929fa9 13%,#687780 25%,#404e58 50%,#a2aeb6 76%,#d1d9de 92%,#798791 100%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  mask-composite:exclude;
  box-shadow:none;
  animation:none!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch :is(.banat-launch-label,.hangar-banat-launch-label){
  left:50%;top:61%;
  font-size:calc(clamp(10.8px,.96vw,14.4px) - 2pt);
  transform:translate(-50%,-50%);
  text-shadow:none;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch .banat-reel-duration-ring{
  position:absolute;z-index:3;inset:-24px;
  width:calc(100% + 48px);height:calc(100% + 48px);
  overflow:visible;pointer-events:none;opacity:1;
  animation:none!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch .banat-reel-duration-ring text{
  fill:rgba(218,228,234,.92);
  font-family:'IBM Plex Mono',monospace;font-size:7.2px;font-weight:500;
  letter-spacing:.13em;text-transform:uppercase;
  opacity:0;animation:none!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready{animation:banattiBanatMiddleScore 8s steps(1,end) infinite both!important;}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready::before{animation:banattiBanatOuterScore 8s steps(1,end) infinite both!important;}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready .banat-reel-duration-ring text{animation:banattiBanatUpperScore 8s steps(1,end) infinite both!important;}
@media(prefers-reduced-motion:reduce){
  body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready{animation:none!important;border-color:#c6d1d8;}
  body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready::before{animation:none!important;opacity:1;border-color:rgba(225,236,243,.96);}
  body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready .banat-reel-duration-ring text{animation:none!important;opacity:.9;}
}

/* The finished BANAT reel offers a voluntary visit to Falcon Bay.
   Six seconds of readable invitation, then a quiet two-second button interval. */
body:not(.verticale-edition) #p1 button.banatti-reel-launch.is-falcon-invitation.is-reel-signal-ready{
  animation:banattiFalconInvitationMiddle 8s steps(1,end) infinite both!important;
}
body:not(.verticale-edition) #p1 button.banatti-reel-launch.is-falcon-invitation.is-reel-signal-ready::before{
  animation:banattiFalconInvitationOuter 8s steps(1,end) infinite both!important;
}
body:not(.verticale-edition) #p1 button.banatti-reel-launch.is-falcon-invitation.is-reel-signal-ready .banat-reel-duration-ring text{
  animation:banattiFalconInvitationWords 8s steps(1,end) infinite both!important;
}
@keyframes banattiFalconInvitationWords{
  0%,74.99%{opacity:.95;}
  75%,100%{opacity:0;}
}
@keyframes banattiFalconInvitationOuter{
  0%,79.99%{opacity:1;border-color:rgba(225,236,243,.96);box-shadow:0 0 3px rgba(224,234,240,.25);}
  80%,100%{opacity:0;border-color:transparent;box-shadow:none;}
}
@keyframes banattiFalconInvitationMiddle{
  0%,84.99%{border-color:#c6d1d8;}
  85%,100%{border-color:transparent;}
}
@media(prefers-reduced-motion:reduce){
  body:not(.verticale-edition) #p1 button.banatti-reel-launch.is-falcon-invitation.is-reel-signal-ready{
    animation:none!important;border-color:#c6d1d8;
  }
  body:not(.verticale-edition) #p1 button.banatti-reel-launch.is-falcon-invitation.is-reel-signal-ready::before{
    animation:none!important;opacity:1;border-color:rgba(225,236,243,.96);
  }
  body:not(.verticale-edition) #p1 button.banatti-reel-launch.is-falcon-invitation.is-reel-signal-ready .banat-reel-duration-ring text{
    animation:none!important;opacity:.95;
  }
}

/* The opening is posed under the opaque cover before it invites a click. */
#p1.is-banat-gated.is-banat-prepared .banat-reel-02 > :not(audio){
  visibility:visible!important;
}
/* Loading words occupy the established reel-information arc. */
#p1 .banat-preparation-status{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
body:not(.verticale-edition) #p1:is([data-banat-ready="waiting"],[data-banat-ready="preparing"],[data-banat-ready="error"]) button.banatti-reel-launch:not(.is-falcon-invitation) .banat-reel-duration-ring text{
  opacity:.85!important;
  animation:none!important;
}
body:not(.verticale-edition) #p1[data-banat-ready="preparing"] button.banatti-reel-launch:not(.is-falcon-invitation) .banat-reel-duration-ring{
  animation:banattiPreparingReelOrbit 6s linear infinite!important;
  transform-origin:50% 50%;
}
@keyframes banattiPreparingReelOrbit{
  from{transform:rotate(0deg);}
  to{transform:rotate(360deg);}
}
@media(prefers-reduced-motion:reduce){
  body:not(.verticale-edition) #p1[data-banat-ready="preparing"] button.banatti-reel-launch:not(.is-falcon-invitation) .banat-reel-duration-ring{
    animation:none!important;
  }
}
#p1 .banat-reel-02-gate-button[aria-disabled="true"]{
  cursor:progress;
}

/* Shared round-reel inscriptions: a readable rest pair and one moving pair.
   Native owners provide elapsed time; this layer changes only the lettering. */
:is(#p1,#p5) button.banatti-reel-launch :is(.banatti-reel-rest-headphones,.banatti-reel-flight){
  display:none;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation) .banatti-reel-rest-headphones{
  display:inline;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation) .banatti-reel-rest text{
  opacity:.9!important;
  animation:none!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-inscription-notice="error"]:not(.is-falcon-invitation) .banatti-reel-duration{
  opacity:.9!important;
  animation:none!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation){
  animation:none!important;
  border-color:#c6d1d8;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation)::before{
  animation:none!important;
  opacity:1;
  border-color:rgba(225,236,243,.96);
  box-shadow:none;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) :is(.banat-reel-ball,.hangar-banat-launch-core){
  background:var(--banat-launch-rest-face)!important;
  box-shadow:var(--banat-launch-rest-shadow)!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) :is(.banat-launch-play,.hangar-banat-launch-play){
  animation:none!important;
  background:#3d8104;
  filter:none;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) .banat-reel-duration-ring{
  animation:none!important;
  transform:none;
  opacity:1;
  transition:none;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) .banatti-reel-rest{
  display:none;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) .banatti-reel-flight{
  display:inline;
  transform-box:view-box;
  transform-origin:50% 50%;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) .banatti-reel-flight text{
  animation:none!important;
  opacity:.9!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) .banatti-reel-flight-preparing{
  display:none;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance-words="pair"]:not(.is-falcon-invitation) .banatti-reel-flight-preparing{
  display:inline;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance="turning"]:not(.is-falcon-invitation) .banatti-reel-flight{
  animation:banattiBanatAnticipationTurn 4550ms linear both!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance="waiting"]:not(.is-falcon-invitation) .banatti-reel-flight{
  animation:none!important;
  transform:rotate(540deg);
}
@keyframes banattiBanatAnticipationTurn{
  0%{transform:rotate(0deg);animation-timing-function:cubic-bezier(.42,0,.58,1);}
  43.956043956%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.55,0,1,.45);}
  96.703296703%,100%{transform:rotate(540deg);}
}
@media(prefers-reduced-motion:reduce){
  body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch[data-reel-entrance]:not(.is-falcon-invitation) .banatti-reel-flight{
    animation:none!important;
    transform:none;
  }
}

/* The ordinary resting circle begins complete, then clears in five seconds.
   0–2s: complete; 2s: REEL off; 2.5s: headphones off;
   3.1s: outer ring off; 3.6s: middle ring off; 5s: repeat.
   Child paint keeps the existing preparation and clicked lettering untouched. */
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation):not([data-reel-entrance]):not([data-reel-inscription-notice="error"]):not([aria-disabled="true"]):not([aria-label^="Could not start"]){
  animation:banattiReelIdleMiddle 5s steps(1,end) infinite both!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation):not([data-reel-entrance]):not([data-reel-inscription-notice="error"]):not([aria-disabled="true"]):not([aria-label^="Could not start"])::before{
  animation:banattiReelIdleOuter 5s steps(1,end) infinite both!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation):not([data-reel-entrance]):not([data-reel-inscription-notice="error"]):not([aria-disabled="true"]):not([aria-label^="Could not start"]) .banatti-reel-rest .banatti-reel-duration textPath{
  animation:banattiReelIdleUpper 5s steps(1,end) infinite both!important;
}
body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation):not([data-reel-entrance]):not([data-reel-inscription-notice="error"]):not([aria-disabled="true"]):not([aria-label^="Could not start"]) .banatti-reel-rest .banatti-reel-rest-headphones textPath{
  animation:banattiReelIdleHeadphones 5s steps(1,end) infinite both!important;
}
@keyframes banattiReelIdleUpper{
  0%,39.99%{fill-opacity:1;}
  40%,100%{fill-opacity:0;}
}
@keyframes banattiReelIdleHeadphones{
  0%,49.99%{fill-opacity:1;}
  50%,100%{fill-opacity:0;}
}
@keyframes banattiReelIdleOuter{
  0%,61.99%{opacity:1;border-color:rgba(225,236,243,.96);box-shadow:0 0 3px rgba(224,234,240,.25);}
  62%,100%{opacity:0;border-color:transparent;box-shadow:none;}
}
@keyframes banattiReelIdleMiddle{
  0%,71.99%{border-color:#c6d1d8;}
  72%,100%{border-color:transparent;}
}
@media(prefers-reduced-motion:reduce){
  body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation):not([data-reel-entrance]):not([data-reel-inscription-notice="error"]):not([aria-disabled="true"]):not([aria-label^="Could not start"]){
    animation:none!important;border-color:#c6d1d8;
  }
  body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation):not([data-reel-entrance]):not([data-reel-inscription-notice="error"]):not([aria-disabled="true"]):not([aria-label^="Could not start"])::before{
    animation:none!important;opacity:1;border-color:rgba(225,236,243,.96);
  }
  body:not(.verticale-edition) :is(#p1,#p5) button.banatti-reel-launch.is-reel-signal-ready:not(.is-falcon-invitation):not([data-reel-entrance]):not([data-reel-inscription-notice="error"]):not([aria-disabled="true"]):not([aria-label^="Could not start"]) .banatti-reel-rest :is(.banatti-reel-duration,.banatti-reel-rest-headphones) textPath{
    animation:none!important;fill-opacity:1;
  }
}
