/* ===== splash ===== */
#gks-splash{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;background:#0e0814;transition:opacity .32s ease}
#gks-splash.out{opacity:0;pointer-events:none}
#gks-splash .gs-box{text-align:center}
#gks-splash img{width:96px;height:96px;border-radius:24px;object-fit:cover;border:2px solid rgba(149,95,211,.8);box-shadow:0 0 28px rgba(149,95,211,.3);animation:gksLogoPop .7s ease both}
#gks-splash .gs-bar{width:140px;height:3px;margin:22px auto 12px;border-radius:3px;background:rgba(255,255,255,.1);overflow:hidden}
#gks-splash .gs-bar i{display:block;height:100%;width:40%;border-radius:3px;background:linear-gradient(90deg,#955fd3,#35e0b0,#6aa8ff);animation:gksBar 1s ease-in-out 1}
#gks-splash .gs-t{color:#c5bcaf;font:600 12px/1 Inter,system-ui,sans-serif;letter-spacing:.14em}
@keyframes gksBar{0%{transform:translateX(-110%)}100%{transform:translateX(280%)}}
@keyframes gksLogoPop{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}

/* ===== store: banner first, tap = video + sound icon ===== */
html body #pc-list .pc-media .gks-vposter{position:absolute;inset:0;z-index:5;cursor:pointer;background:#150c1e;-webkit-tap-highlight-color:transparent}
html body #pc-list .pc-media .gks-vposter img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover!important}
html body #pc-list .pc-media .gks-vposter .gks-ytplay{animation:gksPlayPulse 1.8s ease-in-out 1}
@keyframes gksPlayPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(255,255,255,.35)}50%{transform:scale(1.07);box-shadow:0 0 0 12px rgba(255,255,255,0)}}
html body #page-home #pc-list .pc-media .gks-vsnd{width:40px!important;height:40px!important;min-width:40px;padding:0!important;gap:0!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;right:10px!important;bottom:10px!important;background:rgba(15,9,22,.6)!important;border:1.5px solid rgba(165,109,229,.8)!important;}
html body #page-home #pc-list .pc-media .gks-vsnd.on{background:rgba(129,59,208,.92)!important}
html body #page-home #pc-list .pc-media .gks-vsnd i{font-size:18px!important;line-height:1}

/* ===== Telegram floating button: smaller ===== */
html body #gks-tg-float{width:40px!important;height:40px!important;right:12px!important;bottom:74px!important;opacity:.95}
html body #gks-tg-float svg{width:100%!important;height:100%!important}
html body #gks-tg-float::before,html body #gks-tg-float::after{border-width:1.5px!important}

/* ===== Dashboard balance box ===== */
html body #page-dashboard .balanceCard{min-height:150px!important;padding:18px 20px!important}
html body #page-dashboard .balanceCard::after{right:18px!important;top:18px!important;width:36px!important;height:27px!important;border-radius:6px!important;animation:none!important;
 background:
  linear-gradient(#00000030,#00000030) center/100% 1.5px no-repeat,
  linear-gradient(90deg,transparent 33%,#00000030 33% calc(33% + 1.5px),transparent calc(33% + 1.5px) 66%,#00000030 66% calc(66% + 1.5px),transparent calc(66% + 1.5px)),
  linear-gradient(135deg,#bd8df3,#7c3cc5 55%,#b37fee)!important;
 box-shadow:0 2px 8px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,.28)!important}
html body #page-dashboard .balanceCard .balanceBox{background:transparent!important;border:0!important;box-shadow:none!important;min-height:0!important;padding:6px 0 0!important;align-items:flex-start!important}
html body #page-dashboard .balanceCard .balanceAmount{font-size:40px!important}

/* ===== Animations ===== */
@keyframes gksUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes gksSheen{0%{transform:translateX(-120%) skewX(-20deg)}60%,100%{transform:translateX(320%) skewX(-20deg)}}
@keyframes gksFloatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
#pc-list .pc-card{animation:gksUp .5s cubic-bezier(.2,.8,.2,1) both}
#pc-list .pc-card:nth-child(2){animation-delay:.07s}#pc-list .pc-card:nth-child(3){animation-delay:.14s}#pc-list .pc-card:nth-child(n+4){animation-delay:.2s}
#page-dashboard .balanceCard,#page-dashboard .statCard,#page-dashboard .navBox,#page-dashboard .dashboard-channel-card,#page-dashboard .gksPosters{animation:gksUp .55s cubic-bezier(.2,.8,.2,1) both}
#page-dashboard .statCard:nth-child(1){animation-delay:.05s}#page-dashboard .statCard:nth-child(2){animation-delay:.1s}#page-dashboard .statCard:nth-child(3){animation-delay:.15s}#page-dashboard .statCard:nth-child(4){animation-delay:.2s}
#page-dashboard .navBox:nth-child(odd){animation-delay:.12s}#page-dashboard .navBox:nth-child(even){animation-delay:.2s}
.pc-buy{position:relative;overflow:hidden}
.pc-buy::after{content:"";position:absolute;top:0;bottom:0;left:0;width:30%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);animation:gksSheen 3.6s ease-in-out 1;pointer-events:none}
.pc-card,.statCard,.navBox{transition:transform .2s ease,box-shadow .25s ease}
.pc-card:active,.statCard:active,.navBox:active{transform:scale(.985)}
.statIcon{animation:gksFloatY 3.2s ease-in-out 1}
.gks-rip{position:absolute;border-radius:50%;background:rgba(255,255,255,.22);transform:scale(0);animation:gksRip .55s ease-out forwards;pointer-events:none;z-index:3}
@keyframes gksRip{to{transform:scale(1);opacity:0}}
@media(prefers-reduced-motion:reduce){#pc-list .pc-card,#page-dashboard *,.pc-buy::after,.statIcon,#gks-splash *{animation:none!important}}

/* SINGLE LOADER RULE: only /loding.html may show the full-screen welcome logo. */
html body #gks-splash{display:none!important;}

/* ===== Light click animation (press feedback) ===== */
button,.btn,.btn-outline,.btn-purchase,a.btn,[role="button"]{transition:scale .12s ease,filter .12s ease}
button:active,.btn:active,.btn-outline:active,.btn-purchase:active,a.btn:active,[role="button"]:active{scale:.95;filter:brightness(1.12)}
button:disabled:active,.maintenance-buy:active{scale:1;filter:none}
.maintenance-buy.out-of-stock-buy{opacity:.85}
.plan-select option:disabled{color:#8a8a8a}
@media (prefers-reduced-motion:reduce){button,.btn,.btn-outline,.btn-purchase{transition:none}button:active,.btn:active,.btn-outline:active,.btn-purchase:active{scale:1}}
