*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;overflow:hidden}body{position:fixed;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}:root{--color-bg: #111527;--color-surface: #1b2342;--color-accent: #0066cc;--color-text: #f5f7ff;--color-muted: #9aa6c7;--glass: rgba(255, 255, 255, .07);--glass-strong: rgba(255, 255, 255, .11);--game-panel: rgba(255,255,255,.07);--game-panel-strong: #1b2342;--game-cell: #26364a;--game-cell-soft: rgba(255,255,255,.06);--game-border: rgba(255,255,255,.14);--shell-bar: rgba(0,0,0,.28);--shell-bar-image: url(/banner_top.webp);--app-bg: radial-gradient(1000px 600px at -15% -10%, #2a3a7c 0%, transparent 55%), radial-gradient(900px 500px at 110% 18%, #602a76 0%, transparent 53%), radial-gradient(700px 440px at 50% 120%, #103150 0%, transparent 60%), linear-gradient(168deg, #0d1222 0%, #171d34 100%);--button-primary: #0066cc;--button-primary-text: #fff;--button-secondary: #283357;--button-secondary-text: #f5f7ff;--button-secondary-border: rgba(255,255,255,.17);--hairline: rgba(255,255,255,.18);--elev-1: 0 8px 18px rgba(0,0,0,.18);--elev-2: 0 14px 30px rgba(0,0,0,.24);--accent-grad: linear-gradient(135deg, #4d8dff, #5f65ff 56%, #9f54ff);--accent-glow: 0 12px 24px rgba(86, 105, 255, .3);--panel-btn-max-width: 270px;--panel-btn-font-size: clamp(1.22rem, 4.8vw, 1.42rem);--panel-btn-label-offset: .14em}html[data-theme=light]{--color-bg: #f5f5f7;--color-surface: #ffffff;--color-accent: #0066cc;--color-text: #1d1d1f;--color-muted: #6e6e73;--glass: rgba(255, 255, 255, .72);--glass-strong: rgba(255, 255, 255, .92);--game-panel: rgba(255,255,255,.86);--game-panel-strong: #ffffff;--game-cell: #ffffff;--game-cell-soft: #f2f2f5;--game-border: rgba(0,0,0,.08);--shell-bar: rgba(245,245,247,.86);--app-bg: radial-gradient(950px 520px at -5% -12%, rgba(113, 163, 255, .2), transparent 55%), radial-gradient(880px 520px at 108% 8%, rgba(255, 156, 194, .18), transparent 56%), linear-gradient(180deg, #ffffff 0%, #f5f7fb 52%, #f9f5ff 100%);--button-primary: #0066cc;--button-primary-text: #fff;--button-secondary: #ffffff;--button-secondary-text: #1d1d1f;--button-secondary-border: rgba(0,0,0,.08);--hairline: rgba(0,0,0,.08);--elev-1: 0 8px 16px rgba(84,102,133,.12);--elev-2: 0 14px 30px rgba(84,102,133,.18);--accent-grad: linear-gradient(135deg, #4d8dff, #5f65ff 56%, #9f54ff);--accent-glow: 0 12px 24px rgba(86, 105, 255, .22)}body{background:radial-gradient(900px 480px at 10% -10%,rgba(107,144,255,.16),transparent 55%),radial-gradient(860px 460px at 95% 8%,rgba(255,114,174,.14),transparent 56%),var(--app-bg);color:var(--color-text);font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;justify-content:center;transition:background .22s ease,color .22s ease}#root{width:100%;max-width:480px;height:100%;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}html[data-wgp-game=airhockey] #root,html[data-wgp-game=breakout] #root{max-width:none}html[data-wgp-game=whackmole] #root:has(.wm-tabletop){max-width:none}input,textarea,[contenteditable=true]{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}button,input,select{font-family:inherit;font-size:1rem}button{cursor:pointer;transition:transform .12s ease,filter .15s ease,box-shadow .2s ease}button:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){button:hover{filter:brightness(1.06)}}button:not(:disabled){box-shadow:var(--elev-1)}button:disabled{filter:grayscale(.12) brightness(.82);box-shadow:none!important}.go-btn,.shell-btn,button.sb-btn,.wh-end-actions button{box-shadow:none!important}button{position:relative;overflow:hidden}button:not(:disabled):after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%) scale(0);background:radial-gradient(circle,#ffffff6b,#fff0 70%);pointer-events:none}button:not(:disabled):active:after{animation:ui-ripple .45s ease-out}@keyframes ui-ripple{0%{transform:translate(-50%,-50%) scale(0);opacity:.8}to{transform:translate(-50%,-50%) scale(18);opacity:0}}.fx-panel{background:linear-gradient(150deg,var(--glass-strong),var(--glass));border:1px solid #ffffff28;box-shadow:var(--elev-2),inset 0 1px #ffffff24}html[data-theme=light] .fx-panel{background:radial-gradient(circle at 18% 14%,rgba(255,255,255,.78),transparent 36%),linear-gradient(150deg,#fffffff0,#f7faffe6);border-color:#7e97bf33;box-shadow:var(--elev-2),inset 0 1px #fffffff5}html[data-theme=light] button:not(:disabled){box-shadow:0 8px 16px #6881a829}.fx-shimmer:after{content:"";position:absolute;inset:-140% auto -140% -35%;width:42%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.23),transparent);transform:rotate(18deg);opacity:0;pointer-events:none}@media(hover:hover)and (pointer:fine){.fx-shimmer:hover:after{animation:fx-sweep 3.6s ease-in-out infinite}}@keyframes fx-sweep{0%{left:-42%;opacity:0}10%{opacity:1}48%{left:128%;opacity:0}to{left:128%;opacity:0}}.m3-tile,.mem-card,.mg-cell,.pm-canvas,.sc-cell,.pmx-bucket,.sg-pad,.sp-cell{will-change:transform}.m3-tile.special,.mem-card.matched .mem-card-front,.mg-cell.item,.sg-pad.on,.sp-target.ok{filter:drop-shadow(0 0 10px rgba(255,255,255,.14))}html[data-theme=light] .m3-tile.special,html[data-theme=light] .mem-card.matched .mem-card-front,html[data-theme=light] .mg-cell.item,html[data-theme=light] .sg-pad.on,html[data-theme=light] .sp-target.ok{filter:none}.app-exit-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:grid;place-items:center;padding:24px;background:#0508148f;-webkit-backdrop-filter:blur(12px) saturate(.9);backdrop-filter:blur(12px) saturate(.9)}.app-exit-dialog{width:min(420px,calc(100vw - 48px));border:1px solid rgba(255,255,255,.2);border-radius:20px;background:linear-gradient(180deg,#1d274cf5,#182144f2);color:#f5f7ff;padding:30px 28px 28px;box-shadow:0 24px 58px #0000005c,inset 0 1px #ffffff29,inset 0 -1px #0003;text-align:center}.app-exit-dialog h2{margin:0 0 14px;font-size:clamp(22px,5.5vw,28px);line-height:1.12;font-weight:900;letter-spacing:0}.app-exit-dialog p{margin:0 auto 26px;max-width:330px;color:#d2daf0b8;font-size:clamp(15px,3.6vw,18px);font-weight:600;line-height:1.55}.app-exit-actions{display:grid;grid-template-columns:1fr 1fr;gap:18px}.app-exit-actions button{display:grid;place-items:center;aspect-ratio:var(--menu-btn2-cancel-aspect);min-height:0;border:0;padding:0 .8em 0 0;border-radius:0;background-color:transparent;background-image:var(--menu-btn2-image);background-repeat:no-repeat;color:var(--menu-btn-text);font-size:clamp(16px,4vw,19px);font-weight:900;line-height:1;-webkit-text-stroke:.35px rgba(58,36,15,.42);paint-order:stroke fill;text-shadow:0 1px 0 rgba(95,55,18,.62),0 2px 2px rgba(39,20,8,.78),0 0 4px rgba(0,0,0,.42),1px 0 1px rgba(45,25,8,.45),-1px 0 1px rgba(45,25,8,.45);box-shadow:none!important;filter:drop-shadow(0 8px 14px rgba(0,0,0,.26))}.app-exit-secondary{background-size:var(--menu-btn2-cancel-size);background-position:var(--menu-btn2-cancel-pos)}.app-exit-primary{aspect-ratio:var(--menu-btn2-exit-aspect);background-size:var(--menu-btn2-exit-size);background-position:var(--menu-btn2-exit-pos)}html[data-theme=light] .app-exit-backdrop{background:#12192c57}html[data-theme=light] .app-exit-dialog{background:linear-gradient(180deg,#212c52f0,#1a244aed);color:#f5f7ff;box-shadow:0 24px 58px #17264442,inset 0 1px #ffffff2e}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.fx-panel{background:linear-gradient(155deg,var(--glass-strong),var(--glass));border:1px solid #ffffff2a;box-shadow:0 12px 28px #00000038,inset 0 1px #ffffff29}.fx-shimmer{position:relative;overflow:hidden}.fx-shimmer:after{content:"";position:absolute;top:-130%;left:-38%;width:40%;height:320%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:rotate(17deg);opacity:0;pointer-events:none}@media(hover:hover)and (pointer:fine){.fx-shimmer:hover:after{animation:fx-sweep 4s ease-in-out infinite}}.fx-pop-in{animation:fx-pop-in .32s cubic-bezier(.22,1,.36,1)}.fx-shake{animation:fx-shake .28s ease}@keyframes fx-sweep{0%,to{left:-50%;opacity:0}14%{opacity:1}44%{left:130%;opacity:0}}@keyframes fx-pop-in{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fx-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-3px)}}.screen-enter,.screen-enter-right,.screen-enter-up{flex:1;display:flex;flex-direction:column;min-height:0;height:100%;max-height:100%;overflow:hidden}.screen-enter{animation:sc-fade-up .3s cubic-bezier(.22,1,.36,1) both}.screen-enter-right{animation:sc-slide-rt .26s cubic-bezier(.22,1,.36,1) both}.screen-enter-up{animation:sc-slide-up .32s cubic-bezier(.22,1,.36,1) both}@keyframes sc-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes sc-slide-rt{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes sc-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fx-time-urgent:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 50px 12px #ff323247;animation:fx-urgent-pulse 1.1s ease-in-out infinite alternate;z-index:998}@keyframes fx-urgent-pulse{0%{opacity:0}to{opacity:1}}#root{height:100%;width:100%;font-family:system-ui,sans-serif}.launch-screen{height:100%;overflow:auto;display:grid;place-items:center;padding:24px;background:linear-gradient(110deg,#06101de8,#091b2b88),url(/meteor/v2/deck/mothership-cinematic.webp) center/cover}.launch-card{width:min(420px,100%);padding:30px;border:1px solid #294559;background:#071320e8;border-radius:22px}.eyebrow{font-size:10px;color:#8acbd9;letter-spacing:.2em}.launch-card h1{font-size:46px;line-height:1.05;letter-spacing:-.05em;margin:20px 0}.launch-card p{line-height:1.8;color:#9db7c8;margin:18px 0}.launch-card button{width:100%;padding:14px;margin:5px 0;border-radius:10px;border:1px solid #38566a;background:#15283b;color:#fff;cursor:pointer}.launch-card button.primary{background:#a9e9ed;color:#05252f;font-weight:700}.launch-card button:disabled{opacity:.4;cursor:default}.launch-card small{display:block;color:#859bad;font-size:11px;margin:10px 0}.launch-card a{color:#a2dbed;font-size:13px}.standalone-play{width:100%;height:100%;max-width:480px;margin:auto;position:relative;padding-top:34px}.exit-game{position:absolute;z-index:90;top:3px;left:8px;border:0;background:#17273b;color:#fff;border-radius:6px;padding:5px 10px}.loading-game{padding:50px;color:#fff;text-align:center}@media(max-width:800px){.standalone-play .range-wrap .range-hud{display:none}}
