.gp-lock{overflow:hidden}
.gp-o{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,#2a1a00 0,#0b0600 60%,#000 100%);overflow:hidden;animation:gp-in .25s ease-out both;cursor:pointer;contain:strict}
.gp-o.gp-out{animation:gp-fade .26s ease-in forwards}
.gp-rays{position:absolute;left:50%;top:50%;width:230vmax;height:230vmax;margin:-115vmax 0 0 -115vmax;background:repeating-conic-gradient(from 0deg,rgba(255,190,50,.38) 0 5deg,transparent 5deg 15deg);-webkit-mask-image:radial-gradient(circle,#000 0,transparent 45%);mask-image:radial-gradient(circle,#000 0,transparent 45%);animation:gp-spin 14s linear infinite,gp-rayin 1s ease-out both;will-change:transform}
.gp-r2{background:repeating-conic-gradient(from 7deg,rgba(255,245,200,.35) 0 2deg,transparent 2deg 20deg);animation:gp-spin 22s linear infinite reverse,gp-rayin 1.4s ease-out both}
.gp-glow{position:absolute;left:50%;top:50%;width:70vmin;height:70vmin;margin:-35vmin 0 0 -35vmin;border-radius:50%;background:radial-gradient(circle,rgba(255,210,80,.75),rgba(255,160,20,.25) 45%,transparent 70%);animation:gp-pulse 1.1s ease-in-out infinite alternate;will-change:transform,opacity}
.gp-sp i{position:absolute;left:50%;top:50%;width:.8vmin;height:.8vmin;min-width:5px;min-height:5px;border-radius:50%;background:#ffe27a;box-shadow:0 0 10px 2px #ffb21a;opacity:0;animation:gp-fly var(--t) ease-out var(--w) infinite;will-change:transform,opacity}
.gp-box{position:relative;text-align:center;padding:0 16px;animation:gp-shake .5s .45s 4 both,gp-pop .7s cubic-bezier(.2,1.6,.4,1) both;will-change:transform}
.gp-t{text-shadow:none;font-family:'Unbounded','Bricolage Grotesque',system-ui,sans-serif;font-weight:900;font-size:clamp(40px,13vw,150px);line-height:1;letter-spacing:.02em;background:linear-gradient(180deg,#fff7c2 0,#ffd23f 40%,#d98a00 60%,#ffe27a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 18px rgba(255,180,30,.85)) drop-shadow(0 4px 0 #6b3d00)}
.gp-s{margin-top:14px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:clamp(15px,3.6vw,28px);color:#fff3c4;text-shadow:0 2px 8px #000,0 0 14px rgba(255,170,0,.8);animation:gp-fadeup .5s .9s both}
.gp-flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;animation:gp-flash .6s .35s ease-out both}
.gp-skip{position:absolute;right:max(14px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));padding:10px 18px;border:1px solid rgba(255,226,122,.6);border-radius:999px;background:rgba(0,0,0,.45);color:#ffe27a;font:700 14px 'Bricolage Grotesque',system-ui,sans-serif;cursor:pointer}
.gp-skip:focus-visible{outline:3px solid #fff;outline-offset:2px}
.gp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.gp-rm .gp-rays,.gp-rm .gp-glow,.gp-rm .gp-box,.gp-rm .gp-s,.gp-rm .gp-flash{animation:none}
.gp-rm .gp-rays{opacity:.5}.gp-rm .gp-r2{display:none}.gp-rm .gp-flash{display:none}
@keyframes gp-in{from{opacity:0}to{opacity:1}}
@keyframes gp-fade{to{opacity:0}}
@keyframes gp-spin{to{transform:rotate(360deg)}}
@keyframes gp-rayin{from{opacity:0}to{opacity:1}}
@keyframes gp-pulse{from{transform:scale(.9);opacity:.8}to{transform:scale(1.1);opacity:1}}
@keyframes gp-pop{from{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes gp-shake{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(-7px,3px) rotate(-1deg)}40%{transform:translate(6px,-4px) rotate(1deg)}60%{transform:translate(-5px,-2px) rotate(-.6deg)}80%{transform:translate(5px,4px) rotate(.6deg)}}
@keyframes gp-fadeup{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes gp-flash{0%{opacity:0}25%{opacity:.95}100%{opacity:0}}
@keyframes gp-fly{0%{opacity:0;transform:rotate(var(--a)) translateX(0) scale(.5)}15%{opacity:1}100%{opacity:0;transform:rotate(var(--a)) translateX(var(--d)) scale(1.2)}}
.gp-odds{margin:8px 0;font-size:13px;color:#ffd23f}.gp-odds b{font-weight:800}
.gp-box:before{content:'';position:absolute;inset:-30% -10%;z-index:-1;background:radial-gradient(ellipse,rgba(10,5,0,.85),transparent 70%)}
.gp-table{width:100%;border-collapse:collapse;margin:10px 0;font-size:13px;color:inherit}.gp-table caption{text-align:left;font-weight:800;color:#ffd23f;padding-bottom:4px}.gp-table th,.gp-table td{text-align:left;padding:5px 6px;border-top:1px solid rgba(255,255,255,.12);font-weight:600;vertical-align:top}.gp-table th{font-weight:700;opacity:.8}

/* Keep opaque shield throughout animation, including exit. */
.gp-o{animation:none!important;opacity:1!important;isolation:isolate;background-color:#080500!important}
.gp-o.gp-out{animation:none!important;opacity:1!important}
.gp-o,.gp-o.gp-out{background:#090704!important;background-image:none!important;opacity:1!important;animation:none!important;z-index:2147483647!important}
.gp-o:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,#2a1a00 0,#0b0600 60%,#090704 100%);z-index:-2}
.gp-box:before{display:none}
