.ggw-overlay{position:fixed;inset:0;z-index:10000;pointer-events:none;opacity:0;transition:opacity .32s ease}
.ggw-overlay.ggw-active{opacity:1}
.ggw-orb{position:absolute;left:var(--ggw-x,50%);top:var(--ggw-y,50%);width:min(430px,76vw);aspect-ratio:1;transform:translate(-50%,-50%) scale(.08);transform-origin:center;border-radius:50%;transition:left 1s cubic-bezier(.16,.82,.2,1),top 1s cubic-bezier(.16,.82,.2,1),transform 1s cubic-bezier(.16,.82,.2,1),opacity .5s ease;opacity:.25}
.ggw-overlay.ggw-arrive .ggw-orb{left:50%;top:46%;transform:translate(-50%,-50%) scale(1);opacity:1}
.ggw-overlay.ggw-return .ggw-orb{left:var(--ggw-x);top:var(--ggw-y);transform:translate(-50%,-50%) scale(.08);opacity:.15}
.ggw-halo{position:absolute;inset:-16%;border-radius:50%;background:radial-gradient(circle,#fff 0,#f7ffffe8 24%,#d7f1ff9c 43%,#c8b9ff4d 58%,transparent 72%);filter:blur(8px);animation:ggw-pulse 2.4s ease-in-out infinite;box-shadow:0 0 38px #a9dfff55}
.ggw-stars{position:absolute;inset:-5%;border-radius:50%;opacity:.72;background-image:radial-gradient(circle at 14% 31%,#fff 0 1px,transparent 2px),radial-gradient(circle at 83% 23%,#9edcff 0 1px,transparent 2px),radial-gradient(circle at 72% 78%,#fff 0 1.2px,transparent 2px),radial-gradient(circle at 22% 72%,#c4b2ff 0 1px,transparent 2px),radial-gradient(circle at 53% 8%,#fff 0 1px,transparent 2px)}
.ggw-canvas{position:relative;display:block;width:100%;height:100%;filter:drop-shadow(0 15px 18px #284d6266)}
.ggw-result{position:absolute;left:50%;bottom:-44px;max-width:min(520px,86vw);transform:translateX(-50%) translateY(8px);padding:9px 18px;border:1px solid #a7c6c6;border-radius:999px;background:#fffffff2;color:#214b3b;box-shadow:0 8px 24px #31515d35;font:700 15px/1.25 Arial,sans-serif;text-align:center;opacity:0;transition:.35s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ggw-overlay.ggw-landed .ggw-result{opacity:1;transform:translateX(-50%) translateY(0)}
.ggw-status{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);padding:7px 13px;border-radius:999px;background:#ffffffe8;color:#456456;font:12px Arial,sans-serif;box-shadow:0 4px 16px #24483924;opacity:0;transition:.3s}
.ggw-overlay.ggw-active .ggw-status{opacity:1}
.porges-nyertes{position:relative;z-index:2;animation:ggw-winner 2.1s ease-in-out 2;outline:5px solid #d7b743!important;box-shadow:0 0 0 9px #fff6bd,0 14px 34px #806c2447!important}
@keyframes ggw-pulse{50%{transform:scale(1.055);opacity:.78}}
@keyframes ggw-winner{50%{transform:translateY(-7px) scale(1.015)}}
@media(max-width:600px){.ggw-orb{width:min(350px,84vw)}.ggw-result{bottom:-38px;font-size:13px;padding:8px 13px}.ggw-status{bottom:10px;max-width:92vw;text-align:center}}
@media(prefers-reduced-motion:reduce){.ggw-orb,.ggw-overlay,.ggw-result{transition-duration:.01ms!important}.ggw-halo,.porges-nyertes{animation:none!important}}
