/* Random Product — transparent paid mystery-box UI. */
.rnd-public-odds{margin:12px 0 14px;border:1px solid rgba(82,154,255,.16);border-radius:14px;background:linear-gradient(155deg,rgba(17,23,34,.94),rgba(10,14,22,.97));overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.rnd-public-odds__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.055);font-size:.7rem;color:#dceaff}.rnd-public-odds__head>span{font-weight:900;display:flex;align-items:center;gap:7px}.rnd-public-odds__head i{color:#72b9ff}.rnd-public-odds__head small{font-size:.6rem;color:#6f8198}
.rnd-public-odds__list{display:grid;gap:6px;padding:8px}.rnd-public-odds__item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;padding:7px 8px;border-radius:10px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.045)}.rnd-public-odds__media{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;overflow:hidden;background:rgba(75,144,255,.07);color:#8ec7ff}.rnd-public-odds__media img{width:100%;height:100%;object-fit:cover}.rnd-public-odds__copy{min-width:0;display:flex;flex-direction:column;gap:1px}.rnd-public-odds__copy b{font-size:.7rem;color:#eaf3ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rnd-public-odds__copy small{font-size:.58rem;color:#748196;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rnd-public-odds__chance{min-width:48px;text-align:center;padding:5px 7px;border-radius:999px;border:1px solid rgba(255,207,91,.15);background:rgba(255,196,58,.055);color:#ffd46e;font-size:.68rem;font-weight:950}.rnd-public-odds__warn{margin:0 8px 8px;padding:7px 8px;border-radius:9px;background:rgba(255,82,82,.06);border:1px solid rgba(255,82,82,.15);color:#ff8b8b;font-size:.63rem}
.pd-stock-badge.random-ready{background:rgba(54,137,255,.12)!important;border-color:rgba(83,165,255,.28)!important;color:#9bd0ff!important}
body.rnd-lock{overflow:hidden!important}
.rnd-confirm,.rnd-game{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px}.rnd-confirm[hidden],.rnd-game[hidden],.rnd-reveal[hidden]{display:none!important}.rnd-confirm__backdrop,.rnd-game__backdrop{position:absolute;inset:0;background:rgba(1,4,9,.76);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.rnd-confirm__card{position:relative;z-index:2;width:min(94vw,440px);border-radius:22px;padding:20px;background:linear-gradient(160deg,#151b28,#090d15 72%);border:1px solid rgba(96,164,255,.18);box-shadow:0 28px 70px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.06);text-align:center;overflow:hidden}.rnd-confirm__card::before{content:"";position:absolute;inset:-30%;background:conic-gradient(from 0deg,transparent,rgba(65,151,255,.07),transparent 28%,rgba(255,205,90,.05),transparent 58%);animation:rndSpinAura 14s linear infinite;pointer-events:none}.rnd-confirm__close{position:absolute;z-index:3;top:10px;right:10px;width:32px;height:32px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#aeb9c9;cursor:pointer}.rnd-confirm__icon{position:relative;z-index:2;width:58px;height:58px;margin:0 auto 10px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(61,132,255,.16),rgba(89,209,255,.08));border:1px solid rgba(87,173,255,.22);font-size:1.4rem;color:#a8d8ff;box-shadow:0 0 28px rgba(75,151,255,.12)}.rnd-confirm h2{position:relative;z-index:2;margin:0;color:#f5f9ff;font-size:1.15rem}.rnd-confirm p{position:relative;z-index:2;margin:8px auto 12px;color:#8d99ab;font-size:.74rem;line-height:1.55;max-width:360px}.rnd-confirm__odds{position:relative;z-index:2;display:grid;gap:5px;max-height:190px;overflow:auto;padding:7px;border-radius:12px;background:rgba(255,255,255,.022);border:1px solid rgba(255,255,255,.05)}.rnd-confirm__odds>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 7px;border-bottom:1px solid rgba(255,255,255,.035);font-size:.67rem}.rnd-confirm__odds>div:last-child{border-bottom:0}.rnd-confirm__odds span{color:#c8d3e1;text-align:left}.rnd-confirm__odds b{color:#ffd569}.rnd-confirm__actions{position:relative;z-index:2;display:grid;grid-template-columns:.7fr 1.3fr;gap:8px;margin-top:13px}.rnd-confirm__actions button{min-height:40px;border-radius:11px;font-size:.72rem;font-weight:900;cursor:pointer}.rnd-confirm__cancel{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#aab5c3}.rnd-confirm__go{border:0;background:linear-gradient(135deg,#319dff,#4566ff);color:#fff;box-shadow:0 10px 22px rgba(50,111,255,.22)}.rnd-confirm__go:disabled{opacity:.6;cursor:wait}
.rnd-game__card{position:relative;z-index:2;width:min(96vw,780px);min-height:370px;border-radius:26px;padding:22px;background:radial-gradient(circle at 50% 15%,rgba(47,134,255,.12),transparent 38%),linear-gradient(160deg,#131a28,#080c14 74%);border:1px solid rgba(92,161,255,.17);box-shadow:0 35px 90px rgba(0,0,0,.56),inset 0 1px 0 rgba(255,255,255,.055);overflow:hidden;text-align:center}.rnd-game__title{font-size:.78rem;font-weight:950;letter-spacing:.12em;color:#a8d5ff}.rnd-game__sub{margin-top:5px;font-size:.68rem;color:#6f8097}.rnd-gifts{display:grid;grid-template-columns:repeat(7,minmax(64px,1fr));gap:9px;align-items:center;margin:42px auto 26px;max-width:680px}.rnd-gift{position:relative;height:92px;border-radius:16px;border:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.02);display:grid;place-items:center;color:#6082a5;transform:translateY(0) scale(1);transition:transform .12s ease,border-color .12s ease,background .12s ease,box-shadow .12s ease}.rnd-gift>i{position:absolute;z-index:5;top:11px;right:10px;font-size:.55rem;color:rgba(255,255,255,.42);transition:.18s}.rnd-gift::before{content:"";position:absolute;inset:9px;border-radius:12px;background:radial-gradient(circle at 50% 62%,rgba(75,176,255,.12),transparent 46%),linear-gradient(145deg,rgba(51,122,255,.06),rgba(98,213,255,.025));opacity:.7}.rnd-gift__box{display:block;position:absolute;z-index:2;left:50%;bottom:16px;width:48px;height:37px;transform:translateX(-50%);border-radius:5px 5px 8px 8px;background:linear-gradient(145deg,#238fff,#5059ff 58%,#6045e7);border:1px solid rgba(171,221,255,.34);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 8px 16px rgba(17,73,180,.2)}.rnd-gift__box::after{content:"";position:absolute;inset:3px;border-radius:4px;border:1px solid rgba(255,255,255,.08)}.rnd-gift__lid{display:block;position:absolute;z-index:4;left:50%;bottom:49px;width:56px;height:14px;transform:translateX(-50%);transform-origin:18% 80%;border-radius:6px;background:linear-gradient(180deg,#47b6ff,#356fff);border:1px solid rgba(184,230,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 4px 10px rgba(25,98,207,.2)}.rnd-gift__lid::before,.rnd-gift__lid::after{content:"";position:absolute;bottom:10px;width:20px;height:13px;border:5px solid #ffd968;border-bottom-width:3px;border-radius:70% 70% 35% 35%;background:transparent}.rnd-gift__lid::before{left:5px;transform:rotate(24deg)}.rnd-gift__lid::after{right:5px;transform:rotate(-24deg)}.rnd-gift__ribbon{display:block;position:absolute;z-index:3;left:50%;bottom:16px;width:9px;height:47px;transform:translateX(-50%);background:linear-gradient(90deg,#ffc94a,#ffe783 45%,#f0b82e);box-shadow:0 0 8px rgba(255,210,79,.2)}.rnd-gift.active{transform:translateY(-7px) scale(1.08);border-color:rgba(86,181,255,.55);background:rgba(59,137,255,.10);color:#b6e0ff;box-shadow:0 0 0 2px rgba(74,164,255,.06),0 14px 28px rgba(44,108,255,.2),0 0 28px rgba(83,185,255,.18)}.rnd-gift.active .rnd-gift__box,.rnd-gift.active .rnd-gift__lid{filter:brightness(1.13) saturate(1.08)}.rnd-gift.winner{transform:translateY(-9px) scale(1.13);border-color:rgba(255,213,93,.62);color:#ffe078;background:rgba(255,193,47,.08);box-shadow:0 18px 36px rgba(255,172,49,.17),0 0 36px rgba(255,211,85,.24)}.rnd-gift.winner .rnd-gift__box{background:linear-gradient(145deg,#ffb92d,#ff7d55 58%,#e95370)}.rnd-gift.winner .rnd-gift__lid{background:linear-gradient(180deg,#ffd85d,#ff9a3c)}.rnd-gift.opening .rnd-gift__lid{animation:rndGiftLidOpen .78s cubic-bezier(.16,.95,.3,1) forwards}.rnd-gift.opening .rnd-gift__box{animation:rndGiftBoxPop .78s cubic-bezier(.2,.9,.3,1)}.rnd-gift.opening>i{animation:rndGiftOpen .75s cubic-bezier(.2,.9,.3,1)}
.rnd-reveal{position:absolute;z-index:6;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 50% 42%,rgba(76,163,255,.19),transparent 28%),rgba(7,11,18,.91);animation:rndRevealIn .45s ease both}.rnd-reveal__burst{position:absolute;width:250px;height:250px;border-radius:50%;background:conic-gradient(from 0deg,transparent,rgba(102,188,255,.18),transparent 13%,rgba(255,216,96,.16),transparent 27%,rgba(115,109,255,.14),transparent 42%);animation:rndSpinAura 9s linear infinite;filter:blur(1px)}.rnd-reveal__media{position:relative;z-index:2;width:106px;height:106px;border-radius:24px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#111d2c,#0b111c);border:1px solid rgba(101,184,255,.28);box-shadow:0 20px 38px rgba(0,0,0,.28),0 0 36px rgba(69,158,255,.18);font-size:2.1rem;color:#8bd0ff}.rnd-reveal__media img{width:100%;height:100%;object-fit:cover}.rnd-reveal__eyebrow{position:relative;z-index:2;margin-top:14px;color:#ffd76d;font-size:.66rem;font-weight:950;letter-spacing:.16em}.rnd-reveal__name{position:relative;z-index:2;margin-top:5px;color:#fff;font-size:1.28rem;font-weight:950}.rnd-reveal__desc{position:relative;z-index:2;margin-top:6px;max-width:460px;color:#8e9db0;font-size:.7rem;line-height:1.5}.rnd-reveal__code{position:relative;z-index:2;margin-top:9px;padding:5px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);color:#738297;font-size:.62rem}.rnd-reveal__actions{position:relative;z-index:2;display:flex;gap:8px;margin-top:13px}.rnd-reveal__actions a,.rnd-reveal__actions button{min-height:38px;padding:0 13px;border-radius:10px;font-size:.68rem;font-weight:900;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.rnd-reveal__orders{border:0;background:linear-gradient(135deg,#269bff,#4a61ff);color:#fff}.rnd-reveal__actions button{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#aeb9c7}.rnd-confetti{position:absolute;inset:0;z-index:9;pointer-events:none;overflow:hidden}.rnd-confetti i{position:absolute;top:-16px;width:7px;height:12px;border-radius:2px;background:#78c8ff;animation:rndConfettiFall 2s linear forwards}.rnd-confetti i:nth-child(3n){background:#ffd466}.rnd-confetti i:nth-child(3n+1){background:#886fff}.rnd-confetti i:nth-child(4n){border-radius:50%;height:7px;background:#59e6b2}
@keyframes rndSpinAura{to{transform:rotate(360deg)}}@keyframes rndGiftOpen{0%{transform:scale(1) rotate(0)}34%{transform:scale(.83) rotate(-8deg)}68%{transform:scale(1.24) rotate(8deg)}100%{transform:scale(1) rotate(0)}}@keyframes rndGiftLidOpen{0%{transform:translateX(-50%) rotate(0) translateY(0)}48%{transform:translateX(-50%) rotate(-18deg) translate(-5px,-12px)}100%{transform:translateX(-50%) rotate(-36deg) translate(-11px,-26px);opacity:.15}}@keyframes rndGiftBoxPop{0%,100%{transform:translateX(-50%) scale(1)}45%{transform:translateX(-50%) scale(.88)}72%{transform:translateX(-50%) scale(1.12)}}@keyframes rndRevealIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes rndConfettiFall{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:1}100%{transform:translateY(430px) rotate(540deg);opacity:0}}
@media(max-width:700px){.rnd-confirm,.rnd-game{padding:10px}.rnd-confirm__card{padding:17px 13px}.rnd-gifts{grid-template-columns:repeat(4,1fr);max-width:360px;margin:26px auto 16px;gap:7px}.rnd-gift{height:70px}.rnd-game__card{min-height:390px;padding:17px 10px}.rnd-reveal__media{width:88px;height:88px}.rnd-reveal__name{font-size:1.08rem}.rnd-confirm__actions{grid-template-columns:1fr}.rnd-public-odds__head{align-items:flex-start;flex-direction:column}.rnd-public-odds__item{grid-template-columns:30px minmax(0,1fr) 44px}.rnd-public-odds__media{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.rnd-confirm__card::before,.rnd-reveal__burst,.rnd-confetti i{animation:none!important}.rnd-gift{transition:none!important}}


/* Homepage direct Random opening */
.sp-random-open-btn{font-family:inherit;border:0;cursor:pointer}
.sp-random-open-btn:disabled{cursor:not-allowed!important;pointer-events:none}
.sp-card--random-direct{position:relative}
.sp-card--random-direct::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(68,161,255,.045)}
.sp-card--random-direct:hover::after{box-shadow:inset 0 0 0 1px rgba(86,179,255,.14),0 0 22px rgba(61,139,255,.06)}
#homeRndConfirm .rnd-confirm__card{width:min(94vw,460px)}
#homeRndGame .rnd-game__card{width:min(96vw,800px)}
@media(max-width:700px){.sp-random-open-btn{width:100%}}

.rnd-confirm__note{margin:10px 0 12px;padding:9px 10px;border-radius:11px;background:rgba(47,132,255,.07);border:1px solid rgba(85,155,255,.14);color:#a9bfdc;font-size:.72rem;line-height:1.45;display:flex;align-items:center;gap:7px}.rnd-confirm__note i{color:#6fc3ff}


/* Random open modes v3: auto roll + user-picked box */
.rnd-gifts{grid-template-columns:repeat(var(--rnd-box-count,7),minmax(58px,1fr))}
.rnd-gift__number{position:absolute;z-index:7;left:8px;top:7px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:rgba(7,12,22,.62);border:1px solid rgba(132,189,255,.16);color:#90caff;font-size:.55rem;font-weight:950;opacity:.74;transition:.18s}
.rnd-gift.is-pickable{cursor:pointer;animation:rndGiftIdleFloat 3.1s ease-in-out infinite;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease,opacity .2s ease,filter .2s ease}
.rnd-gift.is-pickable:nth-child(2n){animation-delay:-.65s}.rnd-gift.is-pickable:nth-child(3n){animation-delay:-1.25s}.rnd-gift.is-pickable:nth-child(4n){animation-delay:-1.8s}
.rnd-gift.is-pickable:hover,.rnd-gift.is-pickable:focus-visible{outline:none;transform:translateY(-8px) scale(1.07);border-color:rgba(100,195,255,.55);background:rgba(54,140,255,.095);box-shadow:0 14px 30px rgba(37,107,255,.18),0 0 28px rgba(76,188,255,.16)}
.rnd-gift.is-pickable:hover .rnd-gift__number,.rnd-gift.is-pickable:focus-visible .rnd-gift__number{opacity:1;background:rgba(54,137,255,.16);color:#d6efff}
.rnd-gift.selected{transform:translateY(-10px) scale(1.11)!important;border-color:rgba(255,214,94,.68)!important;background:rgba(255,188,51,.08)!important;box-shadow:0 18px 36px rgba(255,174,45,.13),0 0 35px rgba(255,213,90,.18)!important;filter:none!important;opacity:1!important}
.rnd-gift.dimmed{opacity:.26;filter:saturate(.35) brightness(.7);pointer-events:none;animation:none}
.rnd-gift.choice-shake{animation:rndGiftChoiceShake .52s ease both!important}
.rnd-gifts[data-mode="pick"]{max-width:720px;grid-template-columns:repeat(auto-fit,minmax(76px,1fr))}
.rnd-gifts[data-mode="pick"]::before{content:"CHỌN 1 HỘP QUÀ";grid-column:1/-1;color:#8dc9ff;font-size:.62rem;font-weight:950;letter-spacing:.14em;margin-bottom:2px;opacity:.78}
@keyframes rndGiftIdleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes rndGiftChoiceShake{0%,100%{transform:translateY(-10px) scale(1.11) rotate(0)}20%{transform:translateY(-10px) scale(1.11) rotate(-4deg)}40%{transform:translateY(-10px) scale(1.11) rotate(4deg)}60%{transform:translateY(-10px) scale(1.11) rotate(-2deg)}80%{transform:translateY(-10px) scale(1.11) rotate(2deg)}}
@media(max-width:700px){.rnd-gifts[data-mode="pick"]{grid-template-columns:repeat(3,minmax(70px,1fr));max-width:330px}.rnd-gifts{grid-template-columns:repeat(3,minmax(70px,1fr))}.rnd-gift__number{left:6px;top:5px}}
