/* ================= Jet Crash (twin-bet crash) ================= */
/* the shell's single bet box is replaced by the two bet panels on the stage */
.g-controls > .ctl{display:none}
.jet-tip{margin:0;font-size:12.5px;line-height:1.45;color:var(--muted);font-weight:600;background:var(--lilac);border-radius:12px;padding:9px 11px}

.jet{width:100%;height:100%;min-height:476px;display:flex;flex-direction:column;gap:12px}
.jet-sky{position:relative;flex:1 1 auto;min-height:290px;border-radius:20px;overflow:hidden;isolation:isolate;
  background:radial-gradient(90% 60% at 50% 115%,color-mix(in srgb,var(--ta) 30%,transparent),transparent 70%),
             radial-gradient(120% 90% at 85% 110%,color-mix(in srgb,var(--t1) 55%,transparent),transparent 60%),
             linear-gradient(180deg,color-mix(in srgb,var(--t2) 62%,#07051a) 0%,color-mix(in srgb,var(--t1) 48%,#120a2e) 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 14px 40px rgba(0,0,0,.22)}
.jet-sky canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0}

/* history of crash points */
.jet-hist{position:absolute;top:10px;left:10px;right:10px;z-index:3;display:flex;gap:5px;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,#000 80%,transparent);mask-image:linear-gradient(90deg,#000 80%,transparent)}
.jet-hist span{flex:none;font-family:var(--display);font-weight:800;font-size:12px;line-height:1;padding:5px 9px;border-radius:999px;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#dbe4f3;font-variant-numeric:tabular-nums}
.jet-hist span.t2{background:rgba(139,92,246,.3);border-color:rgba(196,181,253,.45);color:#ede9fe}
.jet-hist span.t3{background:rgba(245,158,11,.28);border-color:rgba(253,230,138,.5);color:#fef3c7}
.jet-hist span.t4{background:linear-gradient(135deg,#f59e0b,#ec4899);border-color:#fde68a;color:#fff}
.jet-hist span.new{animation:jetPop .45s cubic-bezier(.2,1.5,.4,1)}
@keyframes jetPop{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}

/* multiplier */
.jet-hud{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:2;text-align:center;pointer-events:none;width:92%}
.jet-mult{font-family:var(--display);font-weight:900;font-size:clamp(46px,7.2vw,88px);line-height:1;color:#fff;letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;text-shadow:0 6px 30px rgba(0,0,0,.35),0 0 2px rgba(0,0,0,.25);transition:color .2s}
.jet-mult.fly.t2{color:#e9d5ff}
.jet-mult.fly.t3{color:#fde68a;text-shadow:0 0 28px rgba(250,204,21,.45),0 6px 30px rgba(0,0,0,.35)}
.jet-mult.fly.t4{background:linear-gradient(135deg,#fde68a,#f9a8d4);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 6px 22px rgba(236,72,153,.45))}
.jet-mult.gone{color:#fb7185;animation:jetShake .45s ease}
.jet-mult.done{color:rgba(255,255,255,.72)}
@keyframes jetShake{0%,100%{transform:none}20%{transform:translateX(-7px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(2px)}}
.jet-sub{margin-top:6px;font-weight:800;font-size:14px;color:rgba(255,255,255,.88);text-shadow:0 2px 10px rgba(0,0,0,.35);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* cash-out feed */
.jet-feed{position:absolute;right:12px;top:42px;z-index:4;display:flex;flex-direction:column;align-items:flex-end;gap:6px;pointer-events:none}
.jf{display:flex;align-items:center;gap:7px;background:rgba(255,255,255,.96);border-radius:999px;padding:4px 12px 4px 4px;box-shadow:0 8px 24px rgba(0,0,0,.25);
  animation:jetIn .4s cubic-bezier(.2,1.4,.4,1);transition:opacity .45s,transform .45s}
.jf b{font-family:var(--display);font-weight:900;color:#15803d;font-size:14px}
.jf em{font-style:normal;font-weight:800;font-size:12.5px;color:#166534}
.jf .jp-tag{width:22px;height:22px;font-size:11px;background:linear-gradient(135deg,#16a34a,#4ade80)}
.jf.out{opacity:0;transform:translateX(20px)}
@keyframes jetIn{from{opacity:0;transform:translateX(30px) scale(.8)}to{opacity:1;transform:none}}

/* take-off countdown */
.jet-bar{position:absolute;left:0;right:0;bottom:0;height:4px;z-index:3;background:rgba(255,255,255,.08)}
.jet-bar i{display:block;height:100%;background:linear-gradient(90deg,#fff,var(--ta));transform-origin:left;transform:scaleX(0)}

/* ---------- bet panels ---------- */
.jet-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex:none}
.jp{min-width:0;display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:18px;background:rgba(255,255,255,.96);
  box-shadow:0 10px 30px rgba(0,0,0,.16);border:2px solid transparent;transition:background .2s,border-color .2s,opacity .2s}
.jp.off{background:rgba(255,255,255,.8)}
.jp:not(.off){border-color:color-mix(in srgb,var(--p2) 55%,transparent)}
.jp-head{display:flex;align-items:center;gap:8px;min-width:0}
.jp-head b{font-family:var(--display);font-weight:800;font-size:14.5px;color:var(--p-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jp-tag{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:900;font-size:13px;color:#fff;background:var(--grad);box-shadow:0 3px 10px rgba(124,58,237,.3)}
.jp.off .jp-tag{background:#c4b5fd;box-shadow:none}
.jp-st{margin-left:auto;flex:none;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:#f1f5f9;color:#64748b}
.jp-st.in{background:var(--lilac);color:var(--p-dark)}
.jp-st.live{background:#dcfce7;color:#15803d;animation:jetBlink 1s infinite}
.jp-st.won{background:#16a34a;color:#fff}
.jp-st.lost{background:#ffe4e6;color:#be123c}
@keyframes jetBlink{50%{opacity:.55}}

.jp-amt{display:flex;align-items:center;gap:4px;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:3px;min-width:0}
.jp-amt:focus-within{border-color:var(--p2);box-shadow:0 0 0 4px rgba(192,132,252,.16)}
.jp-amt button{flex:none;width:32px;height:32px;border:0;border-radius:9px;background:var(--lilac);color:var(--p-dark);font-weight:900;font-size:18px;line-height:1;cursor:pointer}
.jp-amt button:hover:not(:disabled){background:var(--lilac2)}
.jp-amt .pol-ico{flex:none;color:var(--p);font-size:14px;margin-left:4px}
.jp-amt input{flex:1;min-width:0;width:100%;border:0;outline:none;background:transparent;font-family:var(--display);font-weight:800;font-size:16px;color:var(--ink);text-align:center;padding:0}
.jp input[type=number]{-moz-appearance:textfield;appearance:textfield}
.jp input[type=number]::-webkit-inner-spin-button,.jp input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.jp-quick{display:flex;gap:5px}
.jp-quick button{flex:1;min-width:0;border:1.5px solid var(--line);background:#fff;border-radius:9px;padding:4px 2px;font-weight:800;font-size:12px;color:var(--p-dark);cursor:pointer}
.jp-quick button:hover:not(:disabled){border-color:var(--p2);background:var(--lilac)}
.jp button:disabled,.jp input:disabled{cursor:not-allowed}
.jp-amt button:disabled,.jp-quick button:disabled{opacity:.5}

.jp-auto{display:flex;align-items:center;gap:8px;min-width:0}
.jp-chk{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:12.5px;font-weight:700;color:var(--p-ink);margin:0;min-width:0;user-select:none}
.jp-chk span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jp-chk input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.jp-chk i{flex:none;position:relative;width:32px;height:19px;border-radius:999px;background:#ddd6fe;transition:background .2s}
.jp-chk i::after{content:'';position:absolute;left:2px;top:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .2s}
.jp-chk input:checked + i{background:#16a34a}
.jp-chk input:checked + i::after{transform:translateX(13px)}
.jp-chk input:focus-visible + i{box-shadow:0 0 0 3px rgba(192,132,252,.45)}
.jp-chk input:disabled + i{opacity:.6}
.jp-x{margin-left:auto;display:flex;align-items:center;gap:2px;width:92px;flex:none;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:0 8px;height:32px}
.jp-x input{flex:1;min-width:0;width:100%;border:0;outline:none;background:transparent;font-family:var(--display);font-weight:800;font-size:14px;color:var(--ink);text-align:right;padding:0}
.jp-x span{font-weight:900;color:var(--p-dark)}
.jp:not(.auto-on) .jp-x{opacity:.45}

.jp-btn{position:relative;overflow:hidden;width:100%;min-height:56px;border:0;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:6px 8px;cursor:pointer;transition:transform .12s,box-shadow .2s,background .2s;font:inherit}
.jp-btn b{font-family:var(--display);font-weight:900;font-size:17px;line-height:1.15;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jp-btn small{font-size:11.5px;font-weight:700;opacity:.9;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jp-btn:active:not(:disabled){transform:scale(.97)}
.jp-btn.on{background:var(--grad);color:#fff;box-shadow:0 8px 20px rgba(124,58,237,.28)}
.jp-btn.add{background:var(--lilac);color:var(--p-dark);box-shadow:inset 0 0 0 2px var(--lilac2)}
.jp-btn.add:hover:not(:disabled){background:var(--lilac2)}
.jp-btn.cash{background:linear-gradient(135deg,#16a34a,#4ade80);color:#fff;box-shadow:0 8px 22px rgba(22,163,74,.35);animation:jetGlow 1.1s ease-in-out infinite}
.jp-btn.cash::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-100%);animation:jetSheen 1.6s infinite}
.jp-btn.cash.busy{opacity:.7;animation:none}
.jp-btn.wait{background:#ede9fe;color:var(--p-dark)}
.jp-btn.dis{background:#f1f5f9;color:#94a3b8}
.jp-btn.won{background:#dcfce7;color:#166534;box-shadow:inset 0 0 0 2px #86efac}
.jp-btn.lost{background:#fff1f2;color:#be123c;box-shadow:inset 0 0 0 2px #fecdd3}
.jp-btn:disabled{cursor:default}
@keyframes jetGlow{50%{box-shadow:0 8px 30px rgba(34,197,94,.6)}}
@keyframes jetSheen{to{transform:translateX(100%)}}

@media (max-width:1024px){
  .jet{min-height:0}.jet-sky{flex:none;height:clamp(260px,46vw,360px)}
  /* keep the take-off / cash-out button right under the bet panels */
  .g-controls #playBtn{order:-2;margin-top:0}
  .g-controls .profit-line{order:-1}
}
@media (max-width:760px){
  .jet{gap:8px}
  .jet-sky{height:236px;min-height:0;border-radius:16px}
  .jet-hist{top:8px;left:8px;right:8px;gap:4px}
  .jet-hist span{font-size:11px;padding:4px 7px}
  .jet-hud{top:50%}
  .jet-mult{font-size:44px}
  .jet-sub{font-size:12.5px}
  .jet-feed{right:8px;top:36px}
  .jf{padding:3px 9px 3px 3px;gap:5px}.jf b{font-size:12.5px}.jf em{font-size:11px}
  .jet-panels{gap:8px}
  .jp{padding:9px;gap:6px;border-radius:15px}
  .jp-head{gap:6px}.jp-head b{font-size:13px}
  .jp-tag{width:22px;height:22px;font-size:11.5px}
  .jp-st{font-size:9.5px;padding:2px 6px}
  .jp-amt button{width:28px;height:30px;font-size:16px}
  .jp-amt .pol-ico{display:none}
  .jp-amt input{font-size:15px}
  .jp-quick{gap:4px}.jp-quick button{font-size:11px;padding:3px 1px}
  .jp-auto{flex-wrap:wrap;gap:6px}
  .jp-chk{font-size:11.5px;flex:1 1 100%}
  .jp-x{flex:1 1 100%;width:auto;height:30px;margin-left:0}
  .jp-btn{min-height:48px;border-radius:12px}
  .jet-tip{display:none}
  .jp-btn b{font-size:15px}.jp-btn small{font-size:10.5px}
}
@media (max-width:360px){.jp-quick button:nth-child(n+4){display:none}}
