
/* RL MATE V0.40.7 — Open Beta cleanup & floating controls */
#closedAlphaBadge{display:none!important}

/* Both controls share one baseline. Keep enough horizontal clearance for the full Bug button. */
.v31-command-trigger{right:190px!important;bottom:22px!important;left:auto!important}
body.pcv2-floating-fix .v31-command-trigger,
body.v0325-floating-fix .v31-command-trigger{
  right:190px!important;
  bottom:22px!important;
  left:auto!important;
  z-index:7790!important;
}
.bug-fab,
body.pcv2-floating-fix .bug-fab,
body.v0325-floating-fix .bug-fab{
  right:22px!important;
  bottom:22px!important;
}
@media(max-width:760px){
  .v31-command-trigger,
  body.pcv2-floating-fix .v31-command-trigger,
  body.v0325-floating-fix .v31-command-trigger{display:none!important}
}

/* User Guide is now a normal help control, not an alpha test control. */
#alphaGuideBtn.alpha-guide-btn span{letter-spacing:.05em}


/* V0.40.7: MMR UI retired until an official stats integration exists. */
#view-profile .skill-rating-section,
#view-profile #profileSkillRatings{display:none!important}

/* Opera stability: avoid costly decorative motion while retaining all functionality. */
@supports (-webkit-appearance:none){
  html.rlm-opera-safe .open-beta-welcome *,
  html.rlm-opera-safe #view-dashboard .rlm-dash-player-card,
  html.rlm-opera-safe #view-dashboard .pcv2-stage{
    animation:none!important;
    transition:none!important;
  }
}


/* ============================================================
   V0.40.7 — LIVE CREATOR → RL MATE PLAYER IDENTITY
   ============================================================ */
.v0404-live-identity{
  margin-top:16px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  animation:v0404IdentityIn .45s ease both;
}
.v0404-live-player-card{
  position:relative;
  overflow:hidden;
  min-height:154px;
  border:1px solid rgba(41,211,255,.42);
  border-radius:15px;
  padding:14px;
  background:
    linear-gradient(90deg,rgba(3,14,27,.96),rgba(6,20,37,.86)),
    var(--v0404-skin) center/cover no-repeat;
  box-shadow:0 0 28px rgba(0,185,255,.10), inset 0 0 24px rgba(68,209,255,.04);
  cursor:pointer;
  isolation:isolate;
}
.v0404-live-player-card::before{
  content:"";
  position:absolute;inset:0;
  background:var(--v0404-skin) center/cover no-repeat;
  opacity:.30;
  z-index:-2;
  filter:saturate(1.15);
}
.v0404-live-player-card::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(105deg,rgba(0,11,24,.96) 12%,rgba(0,18,35,.83) 53%,rgba(0,19,37,.35));
  z-index:-1;
}
.v0404-live-card-head{
  display:flex;align-items:center;gap:11px;margin-bottom:11px;
}
.v0404-live-avatar{
  width:48px;height:48px;border-radius:50%;
  border:2px solid rgba(73,225,255,.85);
  background:#071827 center/cover no-repeat;
  display:grid;place-items:center;
  font-weight:900;font-size:15px;
  box-shadow:0 0 17px rgba(30,208,255,.27);
  flex:0 0 auto;
}
.v0404-live-name{min-width:0;flex:1}
.v0404-live-name small{
  display:block;color:#5ee5ff;font-size:9px;font-weight:900;letter-spacing:.13em;
}
.v0404-live-name strong{
  display:block;color:#fff;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.v0404-live-badge{
  align-self:flex-start;
  padding:5px 8px;border:1px solid rgba(75,255,168,.45);border-radius:999px;
  color:#78ffb8;background:rgba(19,104,67,.18);
  font-size:9px;font-weight:900;letter-spacing:.08em;
}
.v0404-live-stats{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;
}
.v0404-live-stat{
  background:rgba(3,15,28,.69);border:1px solid rgba(87,172,210,.18);
  border-radius:8px;padding:7px 8px;min-width:0;
}
.v0404-live-stat span{
  display:block;color:#7191a4;font-size:8px;font-weight:800;letter-spacing:.08em;
}
.v0404-live-stat b{
  display:block;color:#eafaff;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.v0404-live-profile-btn{
  position:absolute;right:10px;bottom:9px;
  border:0;background:transparent;color:#66dfff;
  font-size:9px;font-weight:900;letter-spacing:.07em;cursor:pointer;
}
.v0404-live-link{
  display:flex;align-items:center;gap:7px;
  color:#72eaff;font-size:9px;font-weight:900;letter-spacing:.10em;
  white-space:nowrap;
}
.v0404-live-link i{
  position:relative;display:block;width:33px;height:1px;background:#62e8ff;
  box-shadow:0 0 8px #4fe2ff;
  animation:v0404ArrowPulse 1.25s ease-in-out infinite;
}
.v0404-live-link i::after{
  content:"";position:absolute;right:-1px;top:-4px;
  width:8px;height:8px;border-top:2px solid #62e8ff;border-right:2px solid #62e8ff;
  transform:rotate(45deg);
}
@keyframes v0404IdentityIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
@keyframes v0404ArrowPulse{
  0%,100%{transform:translateX(0);opacity:.65}
  50%{transform:translateX(6px);opacity:1}
}
@media(max-width:1180px){
  .v0404-live-identity{grid-template-columns:1fr}
  .v0404-live-link{justify-content:flex-end}
}
@media(max-width:760px){
  .v0404-live-identity{display:none}
}
html.rlm-opera-safe .v0404-live-identity,
html.rlm-opera-safe .v0404-live-link i{animation:none!important}


/* ============================================================
   V0.40.7 — DASHBOARD LIVE CREATOR BRIDGE
   Hero / Top Match  →  Live Player  →  Twitch
   ============================================================ */

/* Normal state remains the proven two-column dashboard. */
#v1921TrueTop{
  grid-template-columns:minmax(0,1.42fr) minmax(390px,.78fr)!important;
}

/* Only while an approved Rocket League creator is actually live:
   create a dedicated center bridge column. */
#v1921TrueTop.v0405-has-live-creator{
  grid-template-columns:minmax(500px,1.18fr) minmax(255px,.48fr) minmax(390px,.82fr)!important;
  gap:14px!important;
  align-items:stretch!important;
}
#v1921TrueTop.v0405-has-live-creator>.hero-panel{
  grid-column:1!important;
  grid-row:1!important;
}
#v1921TrueTop.v0405-has-live-creator>#v0405LiveCreatorBridge{
  grid-column:2!important;
  grid-row:1!important;
}
#v1921TrueTop.v0405-has-live-creator>#v191TwitchDashboard{
  grid-column:3!important;
  grid-row:1!important;
}

/* Old V0.40.4 in-player identity must never reserve space. */
#v191TwitchDashboard #v0404LiveIdentity{display:none!important}

.v0405-live-bridge{
  min-width:0;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
  position:relative;
  padding:12px 0;
  animation:v0405BridgeIn .42s ease both;
}
.v0405-bridge-kicker{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin:0 0 8px;
  color:#62e8ff;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
  text-align:center;
}
.v0405-bridge-kicker .dot{
  width:6px;height:6px;border-radius:50%;
  background:#4effa4;
  box-shadow:0 0 11px rgba(78,255,164,.85);
}
.v0405-creator-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(49,213,255,.52);
  border-radius:15px;
  min-height:260px;
  padding:16px 14px 14px;
  background:#061522;
  box-shadow:
    0 0 0 1px rgba(41,195,255,.05),
    0 16px 42px rgba(0,0,0,.28),
    0 0 32px rgba(20,184,255,.10);
  cursor:pointer;
  isolation:isolate;
}
.v0405-creator-card::before{
  content:"";
  position:absolute;inset:0;
  background:var(--v0405-skin) center/cover no-repeat;
  opacity:.48;
  filter:saturate(1.12) contrast(1.03);
  z-index:-2;
}
.v0405-creator-card::after{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(2,12,24,.55),rgba(2,12,24,.90) 72%),
    radial-gradient(circle at 50% 18%,rgba(36,212,255,.13),transparent 42%);
  z-index:-1;
}
.v0405-card-live{
  position:absolute;right:10px;top:10px;
  padding:5px 8px;border-radius:999px;
  border:1px solid rgba(73,255,167,.44);
  background:rgba(7,64,42,.58);color:#79ffb8;
  font-size:8px;font-weight:950;letter-spacing:.10em;
}
.v0405-card-avatar{
  width:68px;height:68px;margin:8px auto 8px;
  border-radius:50%;
  border:2px solid rgba(78,224,255,.88);
  background:#071827 center/cover no-repeat;
  display:grid;place-items:center;
  color:#fff;font-weight:950;font-size:19px;
  box-shadow:0 0 24px rgba(37,210,255,.30);
}
.v0405-card-name{text-align:center;margin-bottom:12px}
.v0405-card-name small{
  display:block;color:#5fe6ff;font-size:8px;font-weight:900;letter-spacing:.13em;
}
.v0405-card-name strong{
  display:block;margin-top:3px;color:#fff;font-size:17px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.v0405-card-stats{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
}
.v0405-card-stat{
  min-width:0;padding:7px 8px;border-radius:8px;
  border:1px solid rgba(87,183,221,.18);
  background:rgba(2,14,27,.72);
}
.v0405-card-stat span{
  display:block;color:#718fa3;font-size:7px;font-weight:900;letter-spacing:.09em;
}
.v0405-card-stat b{
  display:block;margin-top:2px;color:#edfaff;font-size:10px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.v0405-card-open{
  width:100%;margin-top:9px;padding:8px 10px;
  border:1px solid rgba(55,211,255,.32);border-radius:8px;
  background:rgba(13,91,122,.18);color:#70eaff;
  font-size:8px;font-weight:950;letter-spacing:.09em;
  cursor:pointer;
}
.v0405-to-stream{
  display:flex;align-items:center;justify-content:flex-end;
  gap:8px;margin-top:10px;
  color:#71eaff;font-size:8px;font-weight:950;letter-spacing:.12em;
  white-space:nowrap;
}
.v0405-to-stream .line{
  position:relative;width:48px;height:1px;
  background:#63e9ff;box-shadow:0 0 9px rgba(75,225,255,.75);
  animation:v0405Arrow 1.15s ease-in-out infinite;
}
.v0405-to-stream .line::after{
  content:"";position:absolute;right:-1px;top:-4px;width:8px;height:8px;
  border-top:2px solid #63e9ff;border-right:2px solid #63e9ff;
  transform:rotate(45deg);
}
@keyframes v0405BridgeIn{
  from{opacity:0;transform:translateX(-8px)}
  to{opacity:1;transform:none}
}
@keyframes v0405Arrow{
  0%,100%{transform:translateX(0);opacity:.65}
  50%{transform:translateX(6px);opacity:1}
}

/* Medium screens: bridge becomes a compact row below hero and above Twitch.
   We never squeeze the Twitch player into an unusable width. */
@media(max-width:1450px){
  #v1921TrueTop.v0405-has-live-creator{
    grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)!important;
  }
  #v1921TrueTop.v0405-has-live-creator>.hero-panel{grid-column:1!important;grid-row:1!important}
  #v1921TrueTop.v0405-has-live-creator>#v191TwitchDashboard{grid-column:2!important;grid-row:1 / span 2!important}
  #v1921TrueTop.v0405-has-live-creator>#v0405LiveCreatorBridge{grid-column:1!important;grid-row:2!important;padding:0!important}
  .v0405-live-bridge{display:grid;grid-template-columns:minmax(230px,330px) 1fr;gap:12px;align-items:center}
  .v0405-bridge-kicker{display:none}
  .v0405-creator-card{min-height:0}
  .v0405-card-avatar{width:48px;height:48px;margin:0 auto 6px}
  .v0405-to-stream{justify-content:flex-start;margin:0}
}
@media(max-width:900px){
  #v1921TrueTop.v0405-has-live-creator{grid-template-columns:1fr!important}
  #v1921TrueTop.v0405-has-live-creator>.hero-panel,
  #v1921TrueTop.v0405-has-live-creator>#v0405LiveCreatorBridge,
  #v1921TrueTop.v0405-has-live-creator>#v191TwitchDashboard{
    grid-column:1!important;grid-row:auto!important;
  }
  .v0405-live-bridge{display:block;padding:0!important}
  .v0405-to-stream{justify-content:flex-end;margin:8px 0}
}
@media(max-width:760px){
  #v0405LiveCreatorBridge{display:none!important}
  #v1921TrueTop.v0405-has-live-creator{grid-template-columns:1fr!important}
}
html.rlm-opera-safe .v0405-live-bridge,
html.rlm-opera-safe .v0405-to-stream .line{
  animation:none!important;
}

/* V0.40.7 — use the REAL PCV2 card geometry in the live creator bridge */
#v0405LiveCreatorBridge .v0405-creator-card,
#v0405LiveCreatorBridge .v0405-card-avatar,
#v0405LiveCreatorBridge .v0405-card-name,
#v0405LiveCreatorBridge .v0405-card-stats,
#v0405LiveCreatorBridge .v0405-card-live,
#v0405LiveCreatorBridge .v0405-card-open{display:none!important}

.v0406-card-shell{
  width:100%;
  max-width:300px;
  margin:0 auto;
}
.v0406-card-shell .rlm-dash-player-card{
  width:100%!important;
  margin:0!important;
  padding:8px!important;
}
.v0406-card-shell .pcv2-stage{
  width:100%!important;
  aspect-ratio:3/4!important;
}
.v0406-card-shell .rlm-dash-card-actions{
  margin-top:7px!important;
}
.v0406-live-badge{
  display:flex;align-items:center;justify-content:center;gap:7px;
  margin:0 0 8px;color:#69ecff;font-size:8px;font-weight:950;letter-spacing:.13em
}
.v0406-live-badge i{
  width:6px;height:6px;border-radius:50%;background:#52ffa6;
  box-shadow:0 0 12px rgba(82,255,166,.8)
}
#v1921TrueTop.v0405-has-live-creator{
  grid-template-columns:minmax(500px,1.15fr) minmax(290px,.48fr) minmax(390px,.84fr)!important;
}
@media(max-width:1450px){
  .v0406-card-shell{max-width:250px}
}
@media(max-width:900px){
  .v0406-card-shell{max-width:310px}
}

/* ============================================================
   V0.40.7 — LIVE CREATOR STAGE
   Large original Player Card between Hero and Twitch.
   ============================================================ */

/* Wide desktop: three deliberate columns, with a REAL readable card in the middle. */
@media (min-width:1700px){
  #v1921TrueTop.v0405-has-live-creator{
    grid-template-columns:
      minmax(520px,1.02fr)
      minmax(360px,.62fr)
      minmax(620px,1.18fr)!important;
    gap:24px!important;
    align-items:stretch!important;
  }

  #v1921TrueTop.v0405-has-live-creator>#v0405LiveCreatorBridge{
    padding:12px 0 10px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:stretch!important;
    min-width:0!important;
  }

  #v0405LiveCreatorBridge .v0406-card-shell{
    width:min(100%,420px)!important;
    max-width:420px!important;
    min-width:350px!important;
    margin:0 auto!important;
  }

  #v0405LiveCreatorBridge .rlm-dash-player-card{
    width:100%!important;
    max-width:none!important;
    padding:10px!important;
    border-radius:22px!important;
  }

  #v0405LiveCreatorBridge .pcv2-stage{
    width:100%!important;
    aspect-ratio:3/4!important;
    min-height:0!important;
    border-radius:20px!important;
    box-shadow:
      0 20px 54px rgba(0,0,0,.40),
      0 0 34px rgba(44,220,255,.18)!important;
  }

  #v0405LiveCreatorBridge .rlm-dash-card-actions{
    display:grid!important;
    grid-template-columns:1.25fr 1fr 44px!important;
    gap:8px!important;
    margin-top:9px!important;
  }

  #v0405LiveCreatorBridge .rlm-dash-card-actions button{
    min-height:40px!important;
    font-size:10px!important;
    font-weight:900!important;
  }

  #v0405LiveCreatorBridge .v0406-live-badge{
    margin-bottom:10px!important;
    font-size:10px!important;
    letter-spacing:.13em!important;
  }

  #v0405LiveCreatorBridge .v0405-to-stream{
    justify-content:flex-end!important;
    margin-top:14px!important;
    font-size:10px!important;
    letter-spacing:.12em!important;
  }

  #v0405LiveCreatorBridge .v0405-to-stream .line{
    width:72px!important;
  }
}

/* Large desktop but not ultra-wide: still keep the card genuinely readable. */
@media (min-width:1451px) and (max-width:1699px){
  #v1921TrueTop.v0405-has-live-creator{
    grid-template-columns:
      minmax(480px,1.05fr)
      minmax(320px,.56fr)
      minmax(500px,1.0fr)!important;
    gap:18px!important;
  }

  #v0405LiveCreatorBridge .v0406-card-shell{
    width:min(100%,360px)!important;
    max-width:360px!important;
    min-width:300px!important;
    margin:0 auto!important;
  }

  #v0405LiveCreatorBridge .v0405-to-stream{
    font-size:9px!important;
  }
}

/* Prevent the creator column from inheriting the old tiny-card max width. */
#v0405LiveCreatorBridge .v0406-card-shell{
  align-self:center!important;
}
