/*
 * VIBE Rocket Visual Restore 1.0
 * Source: legacy Rocket V1 + V2
 */

/* VIBE_ROCKET_LIVE_UI_V1 */

.rocket-v1-card{
  grid-column:1/-1;
  overflow:hidden;
  position:relative;
}

.rocket-v1-shell{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);
  gap:16px;
  margin-top:14px;
}

.rocket-v1-main,
.rocket-v1-side{
  border:1px solid #ffffff0c;
  background:#090b10;
  border-radius:17px;
}

.rocket-v1-main{
  padding:17px;
}

.rocket-v1-side{
  padding:14px;
}

.rocket-v1-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.rocket-v1-live{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border-radius:999px;
  border:1px solid #ffffff11;
  background:#ffffff06;
  font-size:10px;
  font-weight:850;
}

.rocket-v1-live-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#4ade80;
  box-shadow:0 0 12px #4ade80aa;
}

.rocket-v1-stage{
  position:relative;
  height:300px;
  margin-top:14px;
  overflow:hidden;
  border-radius:16px;
  border:1px solid #ffffff0b;

  background:
    radial-gradient(
      circle at 70% 20%,
      rgba(126,105,255,.15),
      transparent 32%
    ),
    linear-gradient(
      180deg,
      #0d1018,
      #080a0f
    );
}

.rocket-v1-stage::before{
  content:"";
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      rgba(255,255,255,.035) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,.035) 1px,
      transparent 1px
    );

  background-size:48px 48px;
  pointer-events:none;
}

.rocket-v1-path{
  position:absolute;
  left:7%;
  bottom:17%;
  width:72%;
  height:52%;
  border-left:2px solid #8171ff55;
  border-bottom:2px solid #8171ff55;
  border-radius:0 0 0 22px;
  transform:skewY(-25deg);
  transform-origin:left bottom;
  opacity:.75;
}

.rocket-v1-ship{
  position:absolute;
  left:8%;
  top:74%;
  transform:
    translate(-50%,-50%)
    rotate(42deg);
  font-size:36px;
  filter:
    drop-shadow(
      0 0 16px rgba(139,92,246,.55)
    );
  transition:left .12s linear,top .12s linear;
  will-change:left,top;
}

.rocket-v1-multiplier{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  pointer-events:none;
}

.rocket-v1-multiplier strong{
  display:block;
  font-size:54px;
  line-height:1;
  letter-spacing:-2px;
}

.rocket-v1-multiplier span{
  display:block;
  margin-top:7px;
  text-align:center;
  color:var(--muted);
  font-size:11px;
}

.rocket-v1-multiplier.crashed strong{
  color:#fb7185;
}

.rocket-v1-controls{
  display:grid;
  grid-template-columns:
    minmax(110px,1fr)
    minmax(110px,1fr)
    auto;
  gap:8px;
  margin-top:12px;
}

.rocket-v1-controls .input{
  min-width:0;
}

.rocket-v1-info{
  display:flex;
  gap:7px;
  align-items:center;
  flex-wrap:wrap;
  margin-top:10px;
  font-size:10px;
  color:var(--muted);
}

.rocket-v1-history{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:10px;
}

.rocket-v1-history-x{
  padding:5px 8px;
  border-radius:8px;
  border:1px solid #ffffff0c;
  background:#ffffff05;
  font-size:11px;
  font-weight:850;
}

.rocket-v1-history-x.low{
  color:#fb7185;
}

.rocket-v1-history-x.mid{
  color:#fbbf24;
}

.rocket-v1-history-x.high{
  color:#6ee7b7;
}

.rocket-v1-side-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}

.rocket-v1-bets{
  display:grid;
  gap:6px;
  max-height:390px;
  overflow:auto;
}

.rocket-v1-bet{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  padding:8px 9px;
  border-radius:10px;
  border:1px solid #ffffff08;
  background:#ffffff04;
}

.rocket-v1-bet-name{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
  font-weight:800;
}

.rocket-v1-bet-status{
  margin-top:2px;
  font-size:9.5px;
  color:var(--muted);
}

.rocket-v1-bet-value{
  text-align:right;
  font-size:10px;
}

.rocket-v1-bet.cashed{
  border-color:#4ade8028;
}

.rocket-v1-bet.lost{
  border-color:#fb718528;
  opacity:.72;
}

.rocket-v1-empty{
  padding:20px 8px;
  text-align:center;
  color:var(--muted);
  font-size:11px;
}

.rocket-v1-fair{
  margin-top:10px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid #ffffff09;
  background:#ffffff04;
  font-size:9px;
  line-height:1.45;
  color:#6f7687;
  overflow-wrap:anywhere;
}

@media(max-width:900px){
  .rocket-v1-shell{
    grid-template-columns:1fr;
  }

  .rocket-v1-stage{
    height:260px;
  }
}

@media(max-width:600px){
  .rocket-v1-controls{
    grid-template-columns:1fr;
  }

  .rocket-v1-stage{
    height:230px;
  }

  .rocket-v1-multiplier strong{
    font-size:44px;
  }
}



/* ==========================================================
   VIBE_ROCKET_UI_V2_CHAT_V1
   ========================================================== */

.rocket-v1-stage{
  height:340px;
  isolation:isolate;
  background:
    radial-gradient(
      circle at 75% 20%,
      rgba(128,104,255,.20),
      transparent 29%
    ),
    radial-gradient(
      circle at 20% 80%,
      rgba(56,189,248,.08),
      transparent 35%
    ),
    linear-gradient(
      180deg,
      #0c1019,
      #06080d
    );
}

.rocket-v2-stars,
.rocket-v2-stars::before,
.rocket-v2-stars::after{
  position:absolute;
  inset:0;
  content:"";
  pointer-events:none;
}

.rocket-v2-stars{
  opacity:.55;
  background-image:
    radial-gradient(
      circle,
      rgba(255,255,255,.8) 0 1px,
      transparent 1.4px
    );
  background-size:73px 73px;
  animation:rocketV2Stars 11s linear infinite;
}

.rocket-v2-stars::before{
  background-image:
    radial-gradient(
      circle,
      rgba(154,142,255,.75) 0 1px,
      transparent 1.5px
    );
  background-size:117px 117px;
  background-position:31px 47px;
}

.rocket-v2-stars::after{
  background-image:
    radial-gradient(
      circle,
      rgba(255,255,255,.45) 0 1px,
      transparent 1.2px
    );
  background-size:51px 51px;
  background-position:19px 12px;
}

@keyframes rocketV2Stars{
  from{
    transform:translate(0,0);
  }
  to{
    transform:translate(-73px,73px);
  }
}

.rocket-v2-svg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
}

.rocket-v2-path-base{
  fill:none;
  stroke:rgba(119,102,255,.16);
  stroke-width:3;
  stroke-linecap:round;
}

.rocket-v2-path-live{
  fill:none;
  stroke:url(#rocketV2Gradient);
  stroke-width:4;
  stroke-linecap:round;
  filter:url(#rocketV2Glow);
}

.rocket-v2-ship{
  position:absolute;
  left:7%;
  top:84%;
  z-index:4;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  transform:
    translate(-50%,-50%);
  will-change:
    left,
    top,
    transform;
}

.rocket-v2-body{
  position:relative;
  z-index:3;
  font-size:39px;
  line-height:1;
  filter:
    drop-shadow(
      0 0 11px rgba(135,112,255,.8)
    )
    drop-shadow(
      0 0 22px rgba(135,112,255,.35)
    );
}

.rocket-v2-flame{
  position:absolute;
  z-index:2;
  width:10px;
  height:29px;
  left:5px;
  bottom:3px;

  border-radius:
    50% 50% 65% 65%;

  background:
    linear-gradient(
      180deg,
      #fff7b2,
      #fb923c 42%,
      rgba(244,63,94,.15)
    );

  filter:
    blur(.4px)
    drop-shadow(
      0 0 9px rgba(251,146,60,.8)
    );

  transform:
    rotate(43deg);

  transform-origin:center top;

  animation:
    rocketV2Flame .12s ease-in-out infinite alternate;
}

@keyframes rocketV2Flame{
  from{
    height:22px;
    opacity:.76;
  }
  to{
    height:34px;
    opacity:1;
  }
}

.rocket-v1-multiplier{
  z-index:3;
}

.rocket-v1-multiplier strong{
  text-shadow:
    0 0 30px rgba(139,92,246,.22);
}

.rocket-v2-boom{
  position:absolute;
  z-index:5;
  pointer-events:none;
  width:10px;
  height:10px;
  border-radius:50%;
  opacity:0;
  background:#fb7185;
  box-shadow:
    0 0 20px 7px rgba(251,113,133,.7),
    0 0 70px 25px rgba(251,113,133,.25);
}

.rocket-v1-multiplier.crashed
+.rocket-v2-boom{
  animation:
    rocketV2Boom .55s ease-out both;
}

@keyframes rocketV2Boom{
  0%{
    opacity:1;
    transform:scale(.2);
  }
  100%{
    opacity:0;
    transform:scale(8);
  }
}


/* LIVE column */

.rocket-v2-live-stack{
  display:grid;
  grid-template-rows:
    minmax(180px,.75fr)
    minmax(240px,1.25fr);
  gap:10px;
  min-height:520px;
}

.rocket-v2-section{
  min-height:0;
  display:flex;
  flex-direction:column;
}

.rocket-v2-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}

.rocket-v2-section-title b{
  font-size:12px;
}

.rocket-v2-chat{
  min-height:0;
  flex:1;
  display:flex;
  flex-direction:column;
}

.rocket-v2-chat-messages{
  flex:1;
  min-height:150px;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:5px;
  padding-right:3px;
}

.rocket-v2-chat-msg{
  padding:7px 8px;
  border-radius:9px;
  background:#ffffff04;
  border:1px solid #ffffff07;
  font-size:10.5px;
  line-height:1.4;
  overflow-wrap:anywhere;
}

.rocket-v2-chat-name{
  font-weight:850;
  margin-right:5px;
}

.rocket-v2-chat-text{
  color:#d8dbe5;
}

.rocket-v2-chat-time{
  margin-left:5px;
  color:#596071;
  font-size:8.5px;
}

.rocket-v2-chat-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:6px;
  margin-top:8px;
}

.rocket-v2-chat-form .input{
  min-width:0;
}

.rocket-v2-chat-hint{
  min-height:14px;
  margin-top:4px;
  color:var(--muted);
  font-size:9px;
}

@media(max-width:900px){
  .rocket-v2-live-stack{
    min-height:unset;
    grid-template-rows:auto auto;
  }

  .rocket-v2-chat-messages{
    max-height:260px;
  }
}



/* ==========================================================


/* ==========================================================
 * VIBE ROCKET WEB SHELL ADAPTER 1.0
 *
 * Legacy Rocket visuals adapted to current:
 * - Web Shell
 * - Games Hub
 * - Activity Ambient
 *
 * Decorative/layout only.
 * ========================================================== */

#vibeRocketMount{
  width:100%;
  min-width:0;

  margin:
    0
    0
    18px;
}


#vibeRocketMount *,
#vibeRocketMount *::before,
#vibeRocketMount *::after{
  box-sizing:border-box;
}


#vibeRocketMount
.rocket-v1-card{
  width:100%;
  min-width:0;

  margin:0;

  overflow:hidden;

  border:
    1px solid
    rgba(148,163,184,.12);

  border-radius:18px;

  background:
    linear-gradient(
      145deg,
      rgba(13,18,28,.98),
      rgba(7,11,18,.98)
    );

  box-shadow:
    0 18px 50px
    rgba(0,0,0,.20);
}


#vibeRocketMount
.rocket-v1-shell{
  width:100%;
  min-width:0;
}


#vibeRocketMount
.rocket-v1-main,
#vibeRocketMount
.rocket-v1-side{
  min-width:0;
}


#vibeRocketMount
.rocket-v1-stage{
  position:relative;

  width:100%;

  min-height:340px;

  height:
    clamp(
      340px,
      48vh,
      520px
    );

  max-height:520px;

  overflow:hidden;

  border-radius:16px;
}


#vibeRocketMount
.rocket-v2-svg{
  position:absolute;

  inset:0;

  display:block;

  width:100%;
  height:100%;

  max-width:none;
  max-height:none;

  overflow:visible;
}


#vibeRocketMount
.rocket-v2-stars{
  position:absolute;

  inset:0;

  overflow:hidden;

  pointer-events:none;
}


#vibeRocketMount
.rocket-v2-ship,
#vibeRocketMount
.rocket-v1-ship{
  pointer-events:none;
}


#vibeRocketMount
.rocket-v1-controls{
  display:flex;

  flex-wrap:wrap;

  align-items:end;

  gap:9px;
}


#vibeRocketMount
.rocket-v1-controls
input,
#vibeRocketMount
.rocket-v1-controls
select{
  min-height:38px;

  border:
    1px solid
    rgba(148,163,184,.20);

  border-radius:10px;

  color:#e5e7eb;

  background:
    rgba(15,23,42,.82);

  outline:none;
}


#vibeRocketMount
.rocket-v1-controls
button{
  min-height:38px;

  border-radius:10px;

  font:inherit;

  font-weight:850;

  cursor:pointer;
}


#vibeRocketMount
.rocket-v1-controls
button:disabled{
  cursor:not-allowed;

  opacity:.48;
}


#vibeRocketMount
.rocket-v1-history{
  overflow-x:auto;

  scrollbar-width:thin;
}


#vibeRocketMount
.rocket-v1-bets{
  max-height:430px;

  overflow:auto;

  scrollbar-width:thin;
}


#vibeRocketMount
.rocket-v1-multiplier{
  pointer-events:none;
}


#vibeRocketMount
.rocket-v1-fair{
  overflow-wrap:anywhere;
}


#vibeRocketMount
.rocket-v1-fair code{
  user-select:text;
}


@media(
  max-width:900px
){

  #vibeRocketMount
  .rocket-v1-stage{
    min-height:300px;

    height:390px;
  }

}


@media(
  max-width:600px
){

  #vibeRocketMount
  .rocket-v1-stage{
    min-height:260px;

    height:320px;
  }


  #vibeRocketMount
  .rocket-v1-controls{
    align-items:stretch;
  }


  #vibeRocketMount
  .rocket-v1-controls
  >*{
    flex:
      1
      1
      130px;
  }

}


@media(
  prefers-reduced-motion:
  reduce
){

  #vibeRocketMount
  *,
  #vibeRocketMount
  *::before,
  #vibeRocketMount
  *::after{
    animation-duration:.001ms
      !important;

    animation-iteration-count:1
      !important;

    transition-duration:.001ms
      !important;
  }

}

/* VIBE_ROCKET_VISUAL_11_BEGIN */

:root{
  --rocket-visual-version:"1.1.0";

  --rocket-cyan:#38bdf8;
  --rocket-blue:#60a5fa;
  --rocket-violet:#8b5cf6;
  --rocket-pink:#c084fc;
  --rocket-green:#4ade80;
  --rocket-red:#fb7185;
}


/* ==========================================================
 * ROOT
 * ========================================================== */

#vibeRocketMount{
  position:relative;

  isolation:isolate;

  --rx-border:
    rgba(
      148,
      163,
      184,
      .13
    );

  --rx-panel:
    rgba(
      12,
      17,
      27,
      .76
    );
}


#vibeRocketMount::before{
  content:"";

  position:absolute;

  z-index:-2;

  inset:-24px;

  pointer-events:none;

  border-radius:30px;

  opacity:.68;

  background:
    radial-gradient(
      circle at 15% 0%,
      rgba(56,189,248,.10),
      transparent 36%
    ),
    radial-gradient(
      circle at 88% 15%,
      rgba(139,92,246,.12),
      transparent 34%
    );

  filter:
    blur(18px);
}


/* ==========================================================
 * MAIN CARD
 * ========================================================== */

#vibeRocketMount
.rocket-v1-card{
  position:relative;

  overflow:hidden;

  border:
    1px solid
    rgba(148,163,184,.14);

  border-radius:22px;

  background:
    linear-gradient(
      145deg,
      rgba(12,17,27,.97),
      rgba(6,10,18,.99)
    );

  box-shadow:
    0 24px 70px
      rgba(0,0,0,.32),
    inset 0 1px 0
      rgba(255,255,255,.025);
}


#vibeRocketMount
.rocket-v1-card::before{
  content:"";

  position:absolute;

  inset:0;

  pointer-events:none;

  background:
    linear-gradient(
      120deg,
      rgba(255,255,255,.018),
      transparent 25%,
      transparent 70%,
      rgba(139,92,246,.018)
    );
}


/* ==========================================================
 * TWO-COLUMN SHELL
 * ========================================================== */

#vibeRocketMount
.rocket-v1-shell{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(250px,320px);

  gap:14px;

  padding:14px;
}


#vibeRocketMount
.rocket-v1-main,
#vibeRocketMount
.rocket-v1-side{
  min-width:0;
}


/* ==========================================================
 * HEADER
 * ========================================================== */

#vibeRocketMount
.rocket-v1-head{
  position:relative;

  min-height:58px;

  padding:
    10px
    12px
    12px;

  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:14px;

  border-bottom:
    1px solid
    rgba(148,163,184,.08);
}


#vibeRocketMount
.rocket-v1-head::before{
  content:"VIBE ROCKET • LIVE MULTIPLAYER";

  position:absolute;

  left:12px;
  top:0;

  color:
    rgba(125,211,252,.65);

  font-size:8px;
  font-weight:950;

  letter-spacing:.16em;
}


#vibeRocketMount
.rocket-v1-head h2,
#vibeRocketMount
.rocket-v1-head h3{
  margin-top:8px;

  letter-spacing:-.02em;
}


#vibeRocketMount
.rocket-v1-live{
  display:inline-flex;

  align-items:center;

  gap:7px;

  min-height:30px;

  padding:
    0
    10px;

  border:
    1px solid
    rgba(74,222,128,.18);

  border-radius:999px;

  color:#bbf7d0;

  background:
    rgba(20,83,45,.15);

  backdrop-filter:
    blur(10px);

  font-size:9px;
  font-weight:900;
}


#vibeRocketMount
.rocket-v1-live-dot{
  width:7px;
  height:7px;

  border-radius:50%;

  background:
    var(--rocket-green);

  box-shadow:
    0 0 0 4px
      rgba(74,222,128,.08),
    0 0 13px
      rgba(74,222,128,.62);

  animation:
    rx11-live-dot
    1.55s
    ease-in-out
    infinite;
}


/* ==========================================================
 * FLIGHT STAGE
 * ========================================================== */

#vibeRocketMount
.rocket-v1-stage{
  position:relative;

  min-height:360px;

  height:
    clamp(
      360px,
      48vh,
      520px
    );

  margin-top:11px;

  overflow:hidden;

  border:
    1px solid
    rgba(96,165,250,.10);

  border-radius:19px;

  background:
    radial-gradient(
      ellipse at 18% 92%,
      rgba(56,189,248,.10),
      transparent 36%
    ),
    radial-gradient(
      ellipse at 76% 18%,
      rgba(139,92,246,.13),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #050914 0%,
      #090d18 52%,
      #070b12 100%
    );

  box-shadow:
    inset 0 0 60px
      rgba(0,0,0,.38),
    0 10px 36px
      rgba(0,0,0,.18);
}


/* atmospheric glow */

#vibeRocketMount
.rocket-v1-stage::after{
  content:"";

  position:absolute;

  z-index:1;

  left:-15%;
  right:-15%;
  bottom:-44%;

  height:65%;

  pointer-events:none;

  border-radius:50%;

  opacity:.45;

  background:
    radial-gradient(
      ellipse,
      rgba(56,189,248,.17),
      rgba(99,102,241,.06) 42%,
      transparent 68%
    );

  filter:
    blur(18px);
}


/* subtle tactical grid */

#vibeRocketMount
.rocket-v1-stage::before{
  opacity:.32
    !important;

  background-image:
    linear-gradient(
      rgba(125,211,252,.025) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.025) 1px,
      transparent 1px
    )
    !important;

  background-size:
    42px
    42px
    !important;

  mask-image:
    linear-gradient(
      to top,
      black,
      transparent 72%
    );
}


/* ==========================================================
 * STARS
 * ========================================================== */

#vibeRocketMount
.rocket-v2-stars{
  opacity:.92;

  filter:
    drop-shadow(
      0 0 3px
      rgba(125,211,252,.15)
    );
}


#vibeRocketMount
.rocket-v2-stars::before{
  opacity:.50;
}


#vibeRocketMount
.rocket-v2-stars::after{
  opacity:.27;
}


/* ==========================================================
 * TRAJECTORY
 * ========================================================== */

#vibeRocketMount
.rocket-v2-svg{
  z-index:3;

  filter:
    drop-shadow(
      0 8px 20px
      rgba(56,189,248,.07)
    );
}


#vibeRocketMount
.rocket-v2-path-base{
  opacity:.18;

  stroke:
    rgba(148,163,184,.42);

  stroke-width:2;
}


#vibeRocketMount
.rocket-v2-path-live{
  stroke-width:4;

  filter:
    drop-shadow(
      0 0 5px
      rgba(56,189,248,.85)
    )
    drop-shadow(
      0 0 14px
      rgba(139,92,246,.35)
    );
}


/* ==========================================================
 * SHIP
 * ========================================================== */

#vibeRocketMount
.rocket-v2-ship{
  filter:
    drop-shadow(
      0 0 6px
      rgba(255,255,255,.42)
    )
    drop-shadow(
      0 0 15px
      rgba(56,189,248,.48)
    )
    drop-shadow(
      0 8px 14px
      rgba(0,0,0,.45)
    );
}


#vibeRocketMount
.rocket-v2-body{
  filter:
    brightness(1.08)
    saturate(1.07);
}


#vibeRocketMount
.rocket-v2-flame{
  filter:
    drop-shadow(
      0 0 6px
      rgba(251,146,60,.95)
    )
    drop-shadow(
      0 0 15px
      rgba(250,204,21,.48)
    );
}


/* ==========================================================
 * MULTIPLIER HUD
 * ========================================================== */

#vibeRocketMount
.rocket-v1-multiplier{
  z-index:8;

  min-width:160px;

  padding:
    12px
    17px;

  border:
    1px solid
    rgba(125,211,252,.14);

  border-radius:16px;

  background:
    linear-gradient(
      145deg,
      rgba(8,15,29,.72),
      rgba(15,23,42,.54)
    );

  backdrop-filter:
    blur(12px);

  box-shadow:
    0 12px 34px
      rgba(0,0,0,.22),
    inset 0 1px 0
      rgba(255,255,255,.04);

  text-shadow:
    0 0 18px
    rgba(56,189,248,.17);
}


#vibeRocketMount
.rocket-v1-multiplier strong{
  color:#f8fafc;

  font-size:
    clamp(
      38px,
      5vw,
      66px
    );

  line-height:.96;

  letter-spacing:-.065em;

  font-variant-numeric:
    tabular-nums;

  text-shadow:
    0 0 16px
      rgba(56,189,248,.25),
    0 0 40px
      rgba(139,92,246,.10);
}


#vibeRocketMount
.rocket-v1-multiplier span{
  display:block;

  margin-top:6px;

  color:
    rgba(203,213,225,.72);

  font-size:9px;
  font-weight:850;

  letter-spacing:.05em;
}


/* crash state */

#vibeRocketMount
.rocket-v1-multiplier.crashed{
  border-color:
    rgba(251,113,133,.27);

  background:
    rgba(76,5,25,.24);
}


#vibeRocketMount
.rocket-v1-multiplier.crashed strong{
  color:#fda4af;

  text-shadow:
    0 0 18px
      rgba(251,113,133,.55);
}


#vibeRocketMount:has(
  .rocket-v1-multiplier.crashed
)
.rocket-v1-stage{
  box-shadow:
    inset 0 0 90px
      rgba(127,29,29,.12),
    0 10px 36px
      rgba(0,0,0,.18);
}


/* ==========================================================
 * CONTROL DECK
 * ========================================================== */

#vibeRocketMount
.rocket-v1-controls{
  position:relative;

  margin-top:11px;

  padding:11px;

  display:grid;

  grid-template-columns:
    minmax(100px,.8fr)
    minmax(100px,.8fr)
    minmax(150px,1.2fr);

  gap:8px;

  align-items:stretch;

  border:
    1px solid
    rgba(148,163,184,.10);

  border-radius:15px;

  background:
    linear-gradient(
      145deg,
      rgba(15,23,42,.66),
      rgba(8,13,22,.73)
    );

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.025);
}


#vibeRocketMount
.rocket-v1-controls::before{
  content:"FLIGHT CONTROL";

  position:absolute;

  right:11px;
  top:-17px;

  color:
    rgba(148,163,184,.39);

  font-size:7px;
  font-weight:950;

  letter-spacing:.17em;
}


#vibeRocketMount
.rocket-v1-controls
.input,
#vibeRocketMount
.rocket-v1-controls
input,
#vibeRocketMount
.rocket-v1-controls
select{
  width:100%;

  min-height:42px;

  padding:
    0
    11px;

  border:
    1px solid
    rgba(148,163,184,.15);

  border-radius:11px;

  color:#e2e8f0;

  background:
    rgba(2,6,23,.58);

  outline:none;

  font:
    inherit;

  font-size:11px;

  transition:
    border-color .15s ease,
    box-shadow .15s ease,
    background .15s ease;
}


#vibeRocketMount
.rocket-v1-controls
input:focus,
#vibeRocketMount
.rocket-v1-controls
select:focus{
  border-color:
    rgba(56,189,248,.42);

  background:
    rgba(15,23,42,.84);

  box-shadow:
    0 0 0 3px
    rgba(56,189,248,.07);
}


#vibeRocketMount
#rocketV1Action{
  min-height:42px;

  border:
    1px solid
    rgba(56,189,248,.26);

  border-radius:11px;

  color:#f8fafc;

  background:
    linear-gradient(
      135deg,
      rgba(14,165,233,.70),
      rgba(99,102,241,.66)
    );

  box-shadow:
    0 9px 24px
    rgba(37,99,235,.16);

  font-weight:950;

  letter-spacing:.01em;

  transition:
    transform .13s ease,
    filter .13s ease,
    box-shadow .13s ease;
}


#vibeRocketMount
#rocketV1Action:not(:disabled):hover{
  transform:
    translateY(-1px);

  filter:
    brightness(1.11);

  box-shadow:
    0 12px 30px
    rgba(37,99,235,.24);
}


#vibeRocketMount
#rocketV1Action:not(:disabled):active{
  transform:
    translateY(0)
    scale(.985);
}


/* ==========================================================
 * INFO
 * ========================================================== */

#vibeRocketMount
.rocket-v1-info{
  margin-top:9px;

  padding:
    9px
    11px;

  display:flex;

  flex-wrap:wrap;

  gap:
    7px
    15px;

  border-radius:12px;

  color:
    rgba(203,213,225,.76);

  background:
    rgba(15,23,42,.35);

  font-size:9px;
}


#vibeRocketMount
.rocket-v1-info b{
  color:#e2e8f0;

  font-variant-numeric:
    tabular-nums;
}


/* ==========================================================
 * HISTORY
 * ========================================================== */

#vibeRocketMount
.rocket-v1-history{
  margin-top:9px;

  padding:
    8px;

  display:flex;

  gap:6px;

  border:
    1px solid
    rgba(148,163,184,.07);

  border-radius:12px;

  background:
    rgba(2,6,23,.29);
}


#vibeRocketMount
.rocket-v1-history-x{
  flex:
    0
    0
    auto;

  min-width:48px;

  padding:
    6px
    8px;

  border-radius:9px;

  text-align:center;

  font-size:9px;
  font-weight:950;

  font-variant-numeric:
    tabular-nums;

  border:
    1px solid
    rgba(148,163,184,.10);

  background:
    rgba(30,41,59,.40);
}


#vibeRocketMount
.rocket-v1-history-x.low{
  color:#93c5fd;
}


#vibeRocketMount
.rocket-v1-history-x.mid{
  color:#c4b5fd;

  border-color:
    rgba(139,92,246,.18);

  background:
    rgba(76,29,149,.12);
}


#vibeRocketMount
.rocket-v1-history-x.high{
  color:#fde68a;

  border-color:
    rgba(250,204,21,.18);

  background:
    rgba(113,63,18,.12);

  box-shadow:
    inset 0 0 14px
    rgba(250,204,21,.04);
}


/* ==========================================================
 * FAIRNESS
 * ========================================================== */

#vibeRocketMount
.rocket-v1-fair{
  margin-top:8px;

  padding:
    8px
    10px;

  border:
    1px solid
    rgba(148,163,184,.06);

  border-radius:11px;

  color:
    rgba(148,163,184,.48);

  background:
    rgba(2,6,23,.24);

  font-size:8px;
  line-height:1.45;
}


/* ==========================================================
 * SIDE COLUMN
 * ========================================================== */

#vibeRocketMount
.rocket-v1-side{
  border-left:
    1px solid
    rgba(148,163,184,.08);
}


#vibeRocketMount
.rocket-v2-live-stack{
  display:flex;

  flex-direction:column;

  gap:10px;
}


#vibeRocketMount
.rocket-v2-section{
  overflow:hidden;

  border:
    1px solid
    rgba(148,163,184,.10);

  border-radius:14px;

  background:
    linear-gradient(
      145deg,
      rgba(15,23,42,.56),
      rgba(8,13,22,.65)
    );

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.018);
}


#vibeRocketMount
.rocket-v2-section-title,
#vibeRocketMount
.rocket-v1-side-head{
  min-height:39px;

  padding:
    0
    11px;

  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:8px;

  border-bottom:
    1px solid
    rgba(148,163,184,.07);

  color:#cbd5e1;

  font-size:9px;
  font-weight:900;

  letter-spacing:.025em;
}


/* ==========================================================
 * LIVE BETS
 * ========================================================== */

#vibeRocketMount
.rocket-v1-bets{
  max-height:280px;

  padding:7px;

  overflow:auto;
}


#vibeRocketMount
.rocket-v1-bet{
  margin-bottom:5px;

  padding:
    8px
    9px;

  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    auto;

  gap:
    2px
    8px;

  border:
    1px solid
    rgba(148,163,184,.07);

  border-radius:10px;

  background:
    rgba(15,23,42,.38);

  transition:
    border-color .15s ease,
    background .15s ease,
    transform .15s ease;
}


#vibeRocketMount
.rocket-v1-bet:hover{
  transform:
    translateX(2px);

  border-color:
    rgba(96,165,250,.14);

  background:
    rgba(30,41,59,.45);
}


#vibeRocketMount
.rocket-v1-bet-name{
  overflow:hidden;

  color:#e2e8f0;

  font-size:9px;
  font-weight:850;

  text-overflow:ellipsis;
  white-space:nowrap;
}


#vibeRocketMount
.rocket-v1-bet-status{
  color:
    rgba(148,163,184,.60);

  font-size:8px;
}


#vibeRocketMount
.rocket-v1-bet-value{
  grid-column:2;
  grid-row:
    1
    /
    span 2;

  align-self:center;

  color:#f8fafc;

  font-size:9px;
  font-weight:950;

  font-variant-numeric:
    tabular-nums;
}


#vibeRocketMount
.rocket-v1-bet.cashed{
  border-color:
    rgba(74,222,128,.13);

  background:
    rgba(20,83,45,.09);
}


#vibeRocketMount
.rocket-v1-bet.cashed
.rocket-v1-bet-value{
  color:#86efac;
}


#vibeRocketMount
.rocket-v1-bet.lost{
  opacity:.62;
}


/* ==========================================================
 * CHAT
 * ========================================================== */

#vibeRocketMount
.rocket-v2-chat-messages{
  max-height:230px;

  padding:8px;

  overflow:auto;
}


#vibeRocketMount
.rocket-v2-chat-msg{
  margin-bottom:5px;

  padding:
    7px
    8px;

  border-radius:10px;

  background:
    rgba(30,41,59,.30);

  font-size:9px;
  line-height:1.4;
}


#vibeRocketMount
.rocket-v2-chat-name{
  margin-right:5px;

  color:#93c5fd;

  font-weight:900;
}


#vibeRocketMount
.rocket-v2-chat-text{
  color:#cbd5e1;
}


#vibeRocketMount
.rocket-v2-chat-time{
  float:right;

  margin-left:6px;

  color:
    rgba(148,163,184,.39);

  font-size:7px;
}


#vibeRocketMount
.rocket-v2-chat-form{
  padding:
    7px;

  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    auto;

  gap:6px;

  border-top:
    1px solid
    rgba(148,163,184,.06);
}


#vibeRocketMount
.rocket-v2-chat-form
.input,
#vibeRocketMount
#rocketV2ChatInput{
  min-width:0;

  min-height:36px;

  padding:
    0
    9px;

  border:
    1px solid
    rgba(148,163,184,.12);

  border-radius:9px;

  color:#e2e8f0;

  background:
    rgba(2,6,23,.52);

  outline:none;

  font:inherit;

  font-size:9px;
}


#vibeRocketMount
#rocketV2ChatInput:focus{
  border-color:
    rgba(56,189,248,.32);
}


#vibeRocketMount
#rocketV2ChatSend{
  min-width:40px;

  border:
    1px solid
    rgba(56,189,248,.17);

  border-radius:9px;

  color:#bae6fd;

  background:
    rgba(14,116,144,.17);

  cursor:pointer;
}


#vibeRocketMount
.rocket-v2-chat-hint{
  padding:
    0
    8px
    7px;

  color:
    rgba(148,163,184,.45);

  font-size:7px;
}


/* ==========================================================
 * EMPTY
 * ========================================================== */

#vibeRocketMount
.rocket-v1-empty{
  padding:20px;

  color:
    rgba(148,163,184,.53);

  text-align:center;

  font-size:9px;
}


/* ==========================================================
 * AMBIENT INTERACTION
 * ========================================================== */

#vibeRocketMount
.rocket-v1-card{
  animation:
    rx11-card-enter
    .38s
    cubic-bezier(.2,.8,.2,1);
}


#vibeRocketMount
.rocket-v1-stage{
  animation:
    rx11-stage-breathe
    7s
    ease-in-out
    infinite;
}


/* ==========================================================
 * KEYFRAMES
 * ========================================================== */

@keyframes rx11-live-dot{

  0%,
  100%{
    opacity:.52;

    transform:
      scale(.82);
  }

  50%{
    opacity:1;

    transform:
      scale(1.12);
  }

}


@keyframes rx11-card-enter{

  from{
    opacity:0;

    transform:
      translateY(8px)
      scale(.995);
  }

  to{
    opacity:1;

    transform:
      translateY(0)
      scale(1);
  }

}


@keyframes rx11-stage-breathe{

  0%,
  100%{
    border-color:
      rgba(96,165,250,.08);
  }

  50%{
    border-color:
      rgba(139,92,246,.17);
  }

}


/* ==========================================================
 * RESPONSIVE
 * ========================================================== */

@media(
  max-width:980px
){

  #vibeRocketMount
  .rocket-v1-shell{
    grid-template-columns:1fr;
  }


  #vibeRocketMount
  .rocket-v1-side{
    border-left:0;

    border-top:
      1px solid
      rgba(148,163,184,.08);

    padding-top:12px;
  }


  #vibeRocketMount
  .rocket-v2-live-stack{
    display:grid;

    grid-template-columns:
      repeat(
        2,
        minmax(0,1fr)
      );
  }

}


@media(
  max-width:650px
){

  #vibeRocketMount
  .rocket-v1-shell{
    padding:8px;
  }


  #vibeRocketMount
  .rocket-v1-stage{
    min-height:300px;

    height:330px;

    border-radius:15px;
  }


  #vibeRocketMount
  .rocket-v1-controls{
    grid-template-columns:1fr;
  }


  #vibeRocketMount
  .rocket-v1-controls::before{
    display:none;
  }


  #vibeRocketMount
  .rocket-v2-live-stack{
    grid-template-columns:1fr;
  }


  #vibeRocketMount
  .rocket-v1-multiplier{
    min-width:130px;

    padding:
      10px
      13px;
  }


  #vibeRocketMount
  .rocket-v1-multiplier strong{
    font-size:39px;
  }

}


/* ==========================================================
 * REDUCED MOTION
 * ========================================================== */

@media(
  prefers-reduced-motion:
  reduce
){

  #vibeRocketMount *,
  #vibeRocketMount *::before,
  #vibeRocketMount *::after{
    animation:none
      !important;

    transition:none
      !important;
  }

}

/* VIBE_ROCKET_VISUAL_11_END */

/* VIBE_ROCKET_VISUAL_111_BEGIN */


/* ==========================================================
 * VERSION
 * ========================================================== */

:root{
  --rocket-visual-version:1.1.1;
}


/* ==========================================================
 * SHARPER GLOBAL RENDERING
 * ========================================================== */

#vibeRocketMount{
  font-family:
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  -webkit-font-smoothing:
    antialiased;

  text-rendering:
    optimizeLegibility;
}


#vibeRocketMount,
#vibeRocketMount
.rocket-v1-card,
#vibeRocketMount
.rocket-v1-shell,
#vibeRocketMount
.rocket-v1-main,
#vibeRocketMount
.rocket-v1-stage{
  filter:none
    !important;
}


/* ==========================================================
 * LAYOUT
 *
 * Give chat / live bets slightly more room.
 * ========================================================== */

#vibeRocketMount
.rocket-v1-shell{
  grid-template-columns:
    minmax(0,1fr)
    minmax(300px,360px);
}


/* ==========================================================
 * REMOVE THE CONSTANT HAZE
 * ========================================================== */

#vibeRocketMount
.rocket-v1-stage{
  backdrop-filter:none
    !important;

  -webkit-backdrop-filter:none
    !important;

  box-shadow:
    inset 0 0 42px
      rgba(0,0,0,.28),
    0 10px 32px
      rgba(0,0,0,.16);
}


/*
 * In 1.1 this layer was deliberately blurred.
 * It looked atmospheric in CSS, but during
 * animation visually softened the whole scene.
 */

#vibeRocketMount
.rocket-v1-stage::after{
  opacity:.16;

  filter:none
    !important;

  background:
    radial-gradient(
      ellipse at center,
      rgba(56,189,248,.10),
      rgba(99,102,241,.025) 42%,
      transparent 69%
    );
}


/* ==========================================================
 * STARS — CRISP, NOT GLOW-BLOBS
 * ========================================================== */

#vibeRocketMount
.rocket-v2-stars{
  opacity:.82;

  filter:none
    !important;
}


#vibeRocketMount
.rocket-v2-stars::before{
  opacity:.44;
}


#vibeRocketMount
.rocket-v2-stars::after{
  opacity:.22;
}


/* ==========================================================
 * SVG
 *
 * Never apply a filter to the entire SVG scene.
 * Glow belongs to individual elements.
 * ========================================================== */

#vibeRocketMount
.rocket-v2-svg{
  filter:none
    !important;

  shape-rendering:
    geometricPrecision;
}


#vibeRocketMount
.rocket-v2-path-base,
#vibeRocketMount
.rocket-v2-path-live{
  vector-effect:
    non-scaling-stroke;

  shape-rendering:
    geometricPrecision;
}


#vibeRocketMount
.rocket-v2-path-base{
  opacity:.28;

  filter:none
    !important;

  stroke-width:2;
}


#vibeRocketMount
.rocket-v2-path-live{
  stroke-width:3.25;

  filter:
    drop-shadow(
      0
      0
      2px
      rgba(56,189,248,.72)
    )
    !important;
}


/* ==========================================================
 * SHIP
 *
 * Much tighter shadow than 1.1.
 * ========================================================== */

#vibeRocketMount
.rocket-v2-ship{
  filter:
    drop-shadow(
      0
      1px
      1px
      rgba(0,0,0,.55)
    )
    drop-shadow(
      0
      0
      3px
      rgba(56,189,248,.42)
    )
    !important;
}


#vibeRocketMount
.rocket-v2-body{
  filter:none
    !important;
}


/*
 * Flame is allowed to glow,
 * but only locally.
 */

#vibeRocketMount
.rocket-v2-flame{
  filter:
    drop-shadow(
      0
      0
      3px
      rgba(251,146,60,.72)
    )
    !important;
}


/* ==========================================================
 * MULTIPLIER
 *
 * Backdrop blur made the moving trajectory
 * underneath look permanently unfocused.
 * ========================================================== */

#vibeRocketMount
.rocket-v1-multiplier{
  backdrop-filter:none
    !important;

  -webkit-backdrop-filter:none
    !important;

  background:
    linear-gradient(
      145deg,
      rgba(8,15,29,.92),
      rgba(15,23,42,.86)
    );

  box-shadow:
    0 10px 28px
      rgba(0,0,0,.25),
    inset 0 1px 0
      rgba(255,255,255,.035);
}


#vibeRocketMount
.rocket-v1-multiplier strong{
  text-shadow:
    0 0 8px
      rgba(56,189,248,.18);
}


/* ==========================================================
 * CHAT — READABILITY
 * ========================================================== */

#vibeRocketMount
.rocket-v2-chat{
  font-family:
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}


#vibeRocketMount
.rocket-v2-chat-messages{
  max-height:300px;

  padding:10px;
}


#vibeRocketMount
.rocket-v2-chat-msg{
  margin-bottom:7px;

  padding:
    9px
    10px;

  border:
    1px solid
    rgba(148,163,184,.055);

  border-radius:10px;

  background:
    rgba(30,41,59,.32);

  font-size:12.5px;

  font-weight:450;

  line-height:1.52;

  letter-spacing:0;
}


#vibeRocketMount
.rocket-v2-chat-name{
  margin-right:6px;

  color:#93c5fd;

  font-size:11.5px;

  font-weight:800;
}


#vibeRocketMount
.rocket-v2-chat-text{
  color:#d7dee8;

  font-size:12.5px;

  font-weight:450;

  line-height:1.52;
}


#vibeRocketMount
.rocket-v2-chat-time{
  margin-left:8px;

  color:
    rgba(148,163,184,.52);

  font-size:9px;

  font-weight:500;
}


#vibeRocketMount
.rocket-v2-chat-form{
  padding:9px;
}


#vibeRocketMount
.rocket-v2-chat-form
.input,
#vibeRocketMount
#rocketV2ChatInput{
  min-height:40px;

  padding:
    0
    11px;

  font-family:
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  font-size:12px;

  line-height:1.4;
}


#vibeRocketMount
#rocketV2ChatSend{
  min-width:46px;
  min-height:40px;

  font-size:12px;

  font-weight:800;
}


#vibeRocketMount
.rocket-v2-chat-hint{
  padding:
    1px
    10px
    8px;

  font-size:9px;

  line-height:1.4;
}


/* Side section headings were also too tiny. */

#vibeRocketMount
.rocket-v2-section-title,
#vibeRocketMount
.rocket-v1-side-head{
  min-height:42px;

  padding:
    0
    12px;

  font-size:10.5px;

  font-weight:850;
}


/* ==========================================================
 * LIVE BETS — SLIGHTLY LARGER TOO
 * ========================================================== */

#vibeRocketMount
.rocket-v1-bet{
  padding:
    9px
    10px;
}


#vibeRocketMount
.rocket-v1-bet-name{
  font-size:10.5px;
}


#vibeRocketMount
.rocket-v1-bet-status{
  font-size:9.5px;
}


#vibeRocketMount
.rocket-v1-bet-value{
  font-size:10.5px;
}


/* ==========================================================
 * MOBILE
 * ========================================================== */

@media(
  max-width:980px
){

  #vibeRocketMount
  .rocket-v1-shell{
    grid-template-columns:1fr;
  }

}


@media(
  max-width:650px
){

  #vibeRocketMount
  .rocket-v2-chat-msg,
  #vibeRocketMount
  .rocket-v2-chat-text{
    font-size:13px;
  }


  #vibeRocketMount
  .rocket-v2-chat-name{
    font-size:12px;
  }


  #vibeRocketMount
  #rocketV2ChatInput{
    font-size:13px;
  }

}


/* ==========================================================
 * REDUCED MOTION
 * ========================================================== */

@media(
  prefers-reduced-motion:
  reduce
){

  #vibeRocketMount
  *,
  #vibeRocketMount
  *::before,
  #vibeRocketMount
  *::after{
    filter:none
      !important;
  }

}

/* VIBE_ROCKET_VISUAL_111_END */

/* VIBE_ROCKET_FLIGHT_130_BEGIN */

:root{
  --rocket-visual-version:1.3.0;
}


/* ==========================================================
 * CAMERA
 * ========================================================== */

#vibeRocketMount
.rocket-v1-stage{
  --rx13-camera-x:0px;
  --rx13-camera-y:0px;

  --rx13-star-x:0px;
  --rx13-star-y:0px;

  --rx13-hud-x:50%;
  --rx13-hud-y:150px;

  --rx13-engine-x:50%;
  --rx13-engine-y:55%;

  --rx13-flame-width:15px;
  --rx13-flame-height:25px;

  position:relative;

  contain:
    layout
    paint
    style;
}


#vibeRocketMount
.rocket-v2-svg{
  transform:
    translate3d(
      var(--rx13-camera-x),
      var(--rx13-camera-y),
      0
    );

  transform-origin:
    center center;

  will-change:
    transform;
}


/* ==========================================================
 * FIXED MULTIPLIER HUD
 *
 * Width and HEIGHT stay constant.
 * ×1.00 and ×1000.00 occupy the same box.
 * ========================================================== */

#vibeRocketMount
.rocket-v1-multiplier{
  position:absolute
    !important;

  left:
    var(--rx13-hud-x)
    !important;

  top:
    var(--rx13-hud-y)
    !important;

  width:194px
    !important;

  min-width:194px
    !important;

  max-width:194px
    !important;

  height:88px
    !important;

  min-height:88px
    !important;

  max-height:88px
    !important;

  padding:
    10px
    12px
    !important;

  display:flex;

  flex-direction:column;

  align-items:center;
  justify-content:center;

  gap:4px;

  overflow:hidden;

  transform:
    translate(
      -50%,
      calc(-100% - 14px)
    )
    !important;

  box-sizing:border-box;

  white-space:nowrap;

  z-index:20;
}


#vibeRocketMount
.rocket-v1-multiplier strong{
  display:block;

  width:100%;

  margin:0;

  overflow:hidden;

  white-space:nowrap;

  text-align:center;

  font-size:
    clamp(
      34px,
      3.3vw,
      51px
    )
    !important;

  line-height:1
    !important;

  letter-spacing:-.055em;

  font-variant-numeric:
    tabular-nums;

  text-overflow:clip;
}


#vibeRocketMount
.rocket-v1-multiplier span{
  display:block;

  width:100%;
  height:15px;

  overflow:hidden;

  white-space:nowrap;

  text-overflow:ellipsis;

  text-align:center;

  font-size:9px;

  line-height:15px;
}


/* ==========================================================
 * REMOVE LEGACY SVG FLAME
 *
 * It is inside the SVG and cannot be independently anchored
 * after camera transforms without fighting the legacy RAF.
 * ========================================================== */

#vibeRocketMount
.rocket-v2-flame{
  display:none
    !important;
}


/* ==========================================================
 * REAL ENGINE FLAME
 * ========================================================== */

#vibeRocketMount
.rx13-engine-flame{
  position:absolute;

  left:
    var(--rx13-engine-x);

  top:
    var(--rx13-engine-y);

  z-index:15;

  width:
    var(--rx13-flame-width);

  height:
    var(--rx13-flame-height);

  pointer-events:none;

  transform:
    translateX(-50%);

  transform-origin:
    50% 0;

  will-change:
    left,
    top,
    height;
}


#vibeRocketMount
.rx13-engine-flame>i{
  position:absolute;

  left:50%;
  top:0;

  display:block;

  transform:
    translateX(-50%);

  transform-origin:
    50% 0;

  pointer-events:none;
}


#vibeRocketMount
.rx13-flame-outer{
  width:100%;
  height:100%;

  opacity:.76;

  clip-path:
    polygon(
      13% 0,
      87% 0,
      70% 63%,
      50% 100%,
      30% 63%
    );

  background:
    linear-gradient(
      to bottom,
      #fde68a 0%,
      #fb923c 28%,
      #f97316 56%,
      rgba(239,68,68,.24) 82%,
      transparent 100%
    );

  filter:
    drop-shadow(
      0 0 4px
      rgba(251,146,60,.70)
    );

  animation:
    rx13-flame-outer
    .13s
    ease-in-out
    infinite alternate;
}


#vibeRocketMount
.rx13-flame-mid{
  width:58%;
  height:70%;

  opacity:.95;

  clip-path:
    polygon(
      8% 0,
      92% 0,
      70% 64%,
      50% 100%,
      30% 64%
    );

  background:
    linear-gradient(
      to bottom,
      #ffffff 0%,
      #fef3c7 28%,
      #fbbf24 66%,
      transparent 100%
    );

  animation:
    rx13-flame-mid
    .09s
    ease-in-out
    infinite alternate;
}


#vibeRocketMount
.rx13-flame-core{
  width:25%;
  height:46%;

  background:
    linear-gradient(
      to bottom,
      #ffffff,
      #dbeafe 45%,
      rgba(125,211,252,0)
    );

  clip-path:
    polygon(
      0 0,
      100% 0,
      50% 100%
    );

  animation:
    rx13-flame-core
    .075s
    ease-in-out
    infinite alternate;
}


@keyframes rx13-flame-outer{

  from{
    scale:
      .93
      .91;
  }

  to{
    scale:
      1.05
      1.08;
  }

}


@keyframes rx13-flame-mid{

  from{
    scale:
      .88
      .92;
  }

  to{
    scale:
      1.05
      1.10;
  }

}


@keyframes rx13-flame-core{

  from{
    scale:
      .82
      .90;
  }

  to{
    scale:
      1.12
      1.08;
  }

}


/* ==========================================================
 * DEEP STAR FIELD
 * ========================================================== */

#vibeRocketMount
.rx13-stars{
  position:absolute;

  z-index:1;

  inset:-8%;

  overflow:hidden;

  pointer-events:none;

  transform:
    translate3d(
      var(--rx13-star-x),
      var(--rx13-star-y),
      0
    );

  transition:
    transform
    .10s
    linear;

  will-change:
    transform;
}


#vibeRocketMount
.rx13-star{
  position:absolute;

  left:
    var(--sx);

  top:
    var(--sy);

  width:
    var(--ss);

  height:
    var(--ss);

  opacity:
    var(--so);

  border-radius:50%;

  background:#fff;

  animation:
    rx13-star
    var(--sd)
    ease-in-out
    infinite;
}


#vibeRocketMount
.rx13-star.blue{
  background:#bfdbfe;

  box-shadow:
    0 0 5px
    rgba(96,165,250,.26);
}


#vibeRocketMount
.rx13-star.warm{
  background:#fef3c7;

  box-shadow:
    0 0 5px
    rgba(251,191,36,.22);
}


#vibeRocketMount
.rx13-star.flare{
  background:#fff;

  box-shadow:
    0 0 5px
      rgba(255,255,255,.56),
    0 0 13px
      rgba(139,92,246,.22);

  border-radius:
    35%
    65%
    35%
    65%;
}


@keyframes rx13-star{

  0%,
  100%{
    opacity:
      calc(
        var(--so)
        *
        .52
      );

    scale:.88;
  }

  50%{
    opacity:
      var(--so);

    scale:1.10;
  }

}


/* ==========================================================
 * BACKGROUND DEPTH
 * ========================================================== */

#vibeRocketMount
.rocket-v1-stage{
  background:
    radial-gradient(
      ellipse at 18% 15%,
      rgba(56,189,248,.10),
      transparent 25%
    ),
    radial-gradient(
      ellipse at 79% 17%,
      rgba(139,92,246,.14),
      transparent 28%
    ),
    radial-gradient(
      ellipse at 61% 76%,
      rgba(236,72,153,.055),
      transparent 24%
    ),
    radial-gradient(
      ellipse at 23% 72%,
      rgba(16,185,129,.055),
      transparent 22%
    ),
    linear-gradient(
      180deg,
      #02050d 0%,
      #050916 38%,
      #070b17 70%,
      #030710 100%
    )
    !important;
}


/*
 * Disable the older pseudo star layer.
 * 1.3 owns stars completely.
 */

#vibeRocketMount
.rocket-v2-stars{
  opacity:.11
    !important;
}


/* ==========================================================
 * REDUCED MOTION
 * ========================================================== */

@media(
  prefers-reduced-motion:
  reduce
){

  #vibeRocketMount
  .rx13-engine-flame>i,
  #vibeRocketMount
  .rx13-star{
    animation:none
      !important;
  }


  #vibeRocketMount
  .rocket-v2-svg,
  #vibeRocketMount
  .rx13-stars{
    transition:none
      !important;
  }

}

/* VIBE_ROCKET_FLIGHT_130_END */
