/* TIPS Royale v30.10.0 - points: the daily wheel, Normal/Ranked on the front page,
   queue host tools (bots, invite), the invite banner, points on the scorecard and in the profile. */

/* ---- front page ---------------------------------------------------------- */
body.front-home-active .menu-grid .wheel-launch-card{
  grid-column:1/-1!important;
  min-height:0!important;height:auto!important;
  flex-direction:row!important;justify-content:flex-start!important;gap:14px!important;
  padding:8px 16px!important;text-align:left!important;
  border-color:#d1a83e!important;
  background:radial-gradient(120% 140% at 0% 50%,rgba(255,214,102,.28),transparent 55%),linear-gradient(180deg,#2c2414,#171209)!important;
  display:grid!important;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center!important;align-content:center!important;column-gap:14px;row-gap:2px;
}
.wheel-launch-card .wheel-card-img{grid-row:1/3;width:clamp(58px,9dvh,84px);height:clamp(58px,9dvh,84px);object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45))}
body.front-home-active .menu-grid .wheel-launch-card strong,
body.front-home-active .menu-grid .wheel-launch-card span{text-align:left!important;max-width:none!important;margin:0!important}
body.front-home-active .menu-grid .wheel-launch-card strong{color:#ffe591}
.wheel-launch-card.wheel-ready{animation:wheelCardGlow 2.2s ease-in-out infinite}
.wheel-launch-card.wheel-ready .wheel-card-img{animation:wheelCardWobble 2.2s ease-in-out infinite}
@keyframes wheelCardGlow{0%,100%{box-shadow:0 0 0 0 rgba(255,214,102,0)}50%{box-shadow:0 0 22px 2px rgba(255,214,102,.45)}}
@keyframes wheelCardWobble{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg) scale(1.04)}}

.ranked-launch-card{
  border-color:#b38a2e!important;
  background:linear-gradient(180deg,#3a2a53,#1b1430 72%,#2b2415)!important;
}
body.front-home-active .ranked-launch-card strong{color:#ffe591}

@media(max-width:620px){
  body.front-home-active .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.front-home-active .menu-grid .wheel-launch-card{height:auto!important;padding:6px 12px!important}
  body.front-home-active .menu-grid .menu-card:not(.wheel-launch-card){height:clamp(96px,15dvh,126px)!important}
  body.front-home-active .menu-grid .wheel-launch-card strong{font-size:15px!important}
  body.front-home-active .menu-grid .wheel-launch-card span{font-size:11px!important}
}
@media(prefers-reduced-motion:reduce){.wheel-launch-card.wheel-ready,.wheel-launch-card.wheel-ready .wheel-card-img{animation:none}}

/* ---- account chip --------------------------------------------------------- */
.account-corner-btn .account-points{
  flex:none;padding:2px 7px;border-radius:999px;background:rgba(0,0,0,.28);color:#ffe591;font-size:12px;font-weight:1000
}
.account-corner-btn{max-width:min(62vw,280px)}
.account-points-box{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;border:1px solid #c9a24a;border-radius:12px;background:linear-gradient(180deg,#2c2414,#171209)}
.account-points-box small{display:block;color:#e8d79f;font-size:11px}
.account-points-box strong{font-size:24px;color:#ffe591}
.account-tx{display:grid;gap:3px;margin-bottom:12px;font-size:12px}
.account-tx > small{font-size:9px;font-weight:900;letter-spacing:.3px;color:#d9bd68;text-transform:uppercase}
.account-tx div{display:flex;justify-content:space-between;gap:8px;padding:5px 8px;border-radius:8px;background:#091b2b}
.account-tx .plus strong{color:#8fe3a8}
.account-tx .minus strong{color:#ff9d93}

/* ---- queue panel ----------------------------------------------------------- */
#queueFields.ranked .queue-start-btn{background:linear-gradient(180deg,#e2b54a,#a87b1d)!important;color:#1b1206!important}
.queue-short-note{margin:8px 0 0;padding:8px 10px;border:1px solid #9c4b42;border-radius:10px;background:#2a1414;color:#ffb4aa;font-size:12px;font-weight:700}
.queue-short-note.hidden{display:none}

.queue-tools{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:10px 0 2px}
.queue-tools .btn{min-width:0;padding:9px 14px;font-size:13px}
.queue-tools.hidden,.queue-tools .hidden{display:none!important}
.queue-ranked-banner{margin:6px 0 8px;padding:8px 12px;border:1px solid #c9a24a;border-radius:12px;background:linear-gradient(90deg,#2c2414,#3a2a53);color:#f6e6b0;font-size:13px;text-align:center}
.queue-ranked-banner.hidden{display:none}

/* ---- invite banner ---------------------------------------------------------- */
.invite-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid #d1a83e;border-radius:14px;background:linear-gradient(180deg,#24563a,#163d29);color:#fff6ca;font-weight:800}
.invite-banner.hidden{display:none!important}
.invite-banner .btn{padding:8px 16px}
.invite-dismiss{border:0;background:none;color:#fff6ca;font-size:18px;cursor:pointer;padding:4px 8px}

/* ---- the wheel ---------------------------------------------------------------- */
.wheel-dialog{position:fixed;inset:0;z-index:13400;display:grid;place-items:center;padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom));background:rgba(0,0,0,.76);backdrop-filter:blur(5px)}
.wheel-dialog.hidden{display:none!important}
.wheel-card{width:min(480px,96vw);max-height:96dvh;overflow:auto;padding:14px 16px 16px;border:1px solid #aa8734;border-radius:18px;background:radial-gradient(120% 80% at 50% 0%,#20334a,#0b1b2b 60%);box-shadow:0 24px 80px rgba(0,0,0,.6);color:#e8f0f7;text-align:center}
.wheel-stage{--wheel:min(400px,84vw,62dvh);position:relative;width:var(--wheel);height:var(--wheel);margin:24px auto 10px}
.wheel-disc{
  position:absolute;inset:0;border-radius:50%;
  border:6px solid #d9b45a;
  box-shadow:0 0 0 3px #6b5220,0 14px 40px rgba(0,0,0,.6),inset 0 0 30px rgba(0,0,0,.45);
  background:
    radial-gradient(circle at 50% 50%,transparent 0 60%,rgba(255,255,255,.05) 60.5% 61%,transparent 61.5%),
    repeating-conic-gradient(from 0deg,#1c3b63 0deg 72deg,#5b1f2b 72deg 144deg,#1c3b63 144deg 216deg,#5b1f2b 216deg 288deg,#2a5a3a 288deg 360deg);
  transform:rotate(0deg);will-change:transform;
}
.wheel-disc::before{content:"";position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(217,180,90,.85) 0deg .9deg,transparent .9deg 72deg)}
.wheel-slot{position:absolute;left:50%;top:50%;width:30%;height:30%;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-112%);}
.wheel-slot img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 6px rgba(0,0,0,.55));transition:transform .4s,filter .4s}
.wheel-slot.won img{transform:scale(1.14);filter:drop-shadow(0 0 14px rgba(255,220,110,.95))}
.wheel-pointer{position:absolute;left:50%;top:-14px;z-index:3;width:0;height:0;transform:translateX(-50%);border-left:16px solid transparent;border-right:16px solid transparent;border-top:30px solid #ffd766;filter:drop-shadow(0 3px 4px rgba(0,0,0,.6))}
.wheel-spin{position:absolute;left:50%;top:50%;z-index:2;width:26%;height:26%;transform:translate(-50%,-50%);border:4px solid #fff1b8;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffe48a,#d39b22 60%,#8a5d0c);color:#2b1a04;font-weight:1000;font-size:clamp(14px,4.2vw,20px);letter-spacing:1px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.5)}
.wheel-spin:disabled{filter:grayscale(.6) brightness(.8);cursor:default;font-size:clamp(10px,3vw,14px)}
.wheel-result{min-height:52px;display:grid;place-items:center;gap:2px;font-weight:800;color:#cbdceb}
.wheel-result.won strong{font-size:32px;color:#ffe591;text-shadow:0 0 18px rgba(255,214,102,.6);animation:wheelPrizePop .5s cubic-bezier(.2,1.6,.4,1)}
.wheel-result.prize-500 strong{font-size:40px}
.wheel-result.error{color:#ff9d93}
.wheel-odds{margin:4px 0 0;color:#9db2c7;font-size:12px}
@keyframes wheelPrizePop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}

/* ---- scorecard ------------------------------------------------------------------ */
.game-points-result{display:grid;gap:3px;margin:8px 0 10px;padding:10px 12px;border:1px solid #c9a24a;border-radius:12px;background:linear-gradient(180deg,#2c2414,#171209);text-align:center}
.game-points-result.hidden{display:none}
.game-points-result .gp-kicker{font-size:10px;font-weight:1000;letter-spacing:1px;color:#d9bd68}
.game-points-result .gp-main{font-size:20px;color:#ffe591}
.game-points-result.mine .gp-main{text-shadow:0 0 14px rgba(255,214,102,.55)}
.game-points-result .gp-sub{font-size:12px;color:#e8d79f}
.game-points-result.kind-fewHumans{border-color:#2a4560;background:#091b2b}

/* v30.11.2: how many spins are ready (daily + extra spins won in normal games) */
.wheel-launch-card{position:relative}
.wheel-launch-card.wheel-ready[data-spins]:not([data-spins=""])::after{
  content:attr(data-spins);position:absolute;top:6px;left:6px;z-index:2;
  min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;
  background:linear-gradient(180deg,#e74c3c,#a92a1f);color:#fff;font-size:12px;font-weight:1000;box-shadow:0 3px 8px rgba(0,0,0,.45)
}
