/* FISTY V138 WEB STABILITY + CONNECT */

#f138TopDiscover,
#f138TopProfile{
  appearance:none;
  border:0;
  background:transparent;
  color:#fff;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  font:inherit;
  font-weight:850;
}

#f138TopDiscover:hover{
  color:#ff63ba;
}

#f138TopProfile{
  border:1px solid #7448e8;
  border-radius:12px;
  padding:9px 13px;
  background:
    linear-gradient(
      135deg,
      rgba(255,45,135,.24),
      rgba(132,76,255,.24)
    );
}

/*
 * V138:
 * keep the canonical transport/control surface,
 * hide older duplicate horizontal utility rails.
 */
body.roomActive #room .roomUtilityRail,
body.roomActive #room .liveControlRail,
body.roomActive #room .roomTools,
body.roomActive #room .watchActionDock{
  display:none!important;
}

/* Do not allow the hidden legacy rails to consume layout. */
body.roomActive #room .roomUtilityRail,
body.roomActive #room .liveControlRail{
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

body.f138ConnectOpen{
  overflow:hidden!important;
}

#f138ConnectOverlay[hidden]{
  display:none!important;
}

#f138ConnectOverlay{
  position:fixed;
  inset:0;
  z-index:2147483200;
  display:grid;
  place-items:center;
  padding:18px;
}

.f138ConnectBackdrop{
  position:absolute;
  inset:0;
  background:
    rgba(2,3,10,.90);
  backdrop-filter:
    blur(18px);
  -webkit-backdrop-filter:
    blur(18px);
}

.f138ConnectPanel{
  position:relative;
  z-index:1;
  width:min(920px,96vw);
  max-height:94vh;
  overflow:auto;
  border:
    1px solid
    rgba(147,77,255,.58);
  border-radius:26px;
  color:#fff;
  background:
    radial-gradient(
      circle at 0 0,
      rgba(255,47,157,.18),
      transparent 34%
    ),
    radial-gradient(
      circle at 100% 0,
      rgba(70,104,255,.17),
      transparent 32%
    ),
    #080912;
  box-shadow:
    0 40px 120px #000,
    0 0 70px rgba(139,61,255,.16);
}

.f138ConnectHeader{
  position:sticky;
  top:0;
  z-index:5;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:15px 18px;
  border-bottom:
    1px solid
    rgba(255,255,255,.08);
  background:
    rgba(8,9,18,.95);
  backdrop-filter:
    blur(16px);
}

.f138ConnectBrand{
  font-size:27px;
  line-height:1;
  font-style:italic;
  font-weight:1000;
  letter-spacing:-1.5px;
  background:
    linear-gradient(
      90deg,
      #ff42b2,
      #a64cff,
      #43c9ff
    );
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.f138ConnectKicker{
  margin-top:4px;
  color:#8f96ae;
  font-size:8px;
  font-weight:950;
  letter-spacing:.16em;
}

#f138ConnectClose{
  width:40px;
  height:40px;
  border:1px solid #35394c;
  border-radius:13px;
  color:#fff;
  background:#11141f;
  cursor:pointer;
}

.f138ConnectIntro{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:23px 23px 10px;
}

.f138ConnectIntro span{
  color:#ff64bd;
  font-size:9px;
  font-weight:950;
  letter-spacing:.16em;
}

.f138ConnectIntro h2{
  margin:5px 0;
  font-size:
    clamp(25px,4vw,38px);
  line-height:1;
}

.f138ConnectIntro p{
  margin:0;
  color:#9fa6bd;
  font-size:11px;
}

.f138ConnectSecure{
  border:
    1px solid
    rgba(77,223,167,.32);
  border-radius:999px;
  padding:8px 11px;
  color:#82edb8;
  background:
    rgba(34,119,82,.14);
  font-size:9px;
  font-weight:950;
}

.f138ConnectStatus{
  margin:0 23px 10px;
  min-height:20px;
  color:#a8afd0;
  font-size:10px;
}

.f138ConnectStatus.error{
  color:#ff789c;
}

.f138ConnectMount{
  min-height:500px;
  margin:0 16px 14px;
  padding:6px;
  overflow:hidden;
  border:
    1px solid
    rgba(255,255,255,.07);
  border-radius:19px;
  background:#0c0e17;
}

.f138ConnectActions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  padding:0 18px 14px;
}

.f138ConnectActions button{
  border:1px solid #34394e;
  border-radius:12px;
  padding:9px 12px;
  color:#fff;
  background:#11141f;
  cursor:pointer;
  font-size:9px;
  font-weight:900;
}

.f138ConnectPanel footer{
  padding:0 20px 20px;
  color:#777f99;
  font-size:9px;
  text-align:center;
}

@media(max-width:720px){

  #f138ConnectOverlay{
    padding:0;
  }

  .f138ConnectPanel{
    width:100%;
    height:100%;
    max-height:none;
    border-radius:0;
    border-left:0;
    border-right:0;
  }

  .f138ConnectHeader{
    padding:
      calc(
        10px +
        env(safe-area-inset-top)
      )
      13px
      10px;
  }

  .f138ConnectIntro{
    padding:
      17px
      13px
      8px;
  }

  .f138ConnectSecure{
    display:none;
  }

  .f138ConnectStatus{
    margin:
      0
      13px
      8px;
  }

  .f138ConnectMount{
    margin:
      0
      7px
      12px;
    min-height:620px;
    border-radius:15px;
  }

  .f138ConnectPanel footer{
    padding-bottom:
      calc(
        18px +
        env(safe-area-inset-bottom)
      );
  }

}

