*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#1a1408;font-family:Rubik,system-ui,sans-serif;-webkit-user-select:none;user-select:none;touch-action:none;overscroll-behavior:none}#app{position:fixed;inset:0}#app canvas{display:block}.kiss-overlay{position:absolute;inset:0;z-index:30;pointer-events:auto;overflow:hidden;color:#fff;font-family:Rubik Dirt,Rubik,system-ui,sans-serif;text-shadow:0 3px 0 #2b0714,0 0 18px rgba(255,45,145,.72);background:radial-gradient(ellipse at 50% 54%,#ff47a21a,#12040c1f 58%,#00000029);touch-action:manipulation}.kiss-prompt{position:absolute;left:50%;top:max(18px,calc(env(safe-area-inset-top) + 16px));transform:translate(-50%);width:min(980px,94vw);font-size:clamp(30px,6vw,76px);font-weight:1000;line-height:.96;letter-spacing:0;text-align:center;color:#ffedf8;-webkit-text-stroke:1px rgba(91,14,46,.55)}.kiss-hint{position:absolute;left:50%;top:max(88px,calc(env(safe-area-inset-top) + 13vh));transform:translate(-50%);width:min(680px,88vw);padding:8px 14px;border:2px solid rgba(255,240,184,.85);border-radius:8px;background:#32051cc2;box-shadow:0 4px #37081ebf,0 0 22px #ff44a066;font-family:Rubik,system-ui,sans-serif;font-size:clamp(13px,2.4vw,20px);font-weight:950;line-height:1.18;text-align:center;color:#fff6bf}.kiss-label{position:absolute;left:50%;bottom:calc(max(26px,env(safe-area-inset-bottom)) + 76px);transform:translate(-50%);width:min(760px,88vw);font-family:Rubik,system-ui,sans-serif;font-size:clamp(14px,2.7vw,24px);font-weight:1000;line-height:1.08;text-align:center;color:#fff3a2}.kiss-meter{position:absolute;left:50%;bottom:max(26px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(760px,88vw);height:clamp(38px,6.4vw,54px);border:3px solid #fff1b3;border-radius:8px;overflow:visible;background:#240618cc;box-shadow:0 0 0 4px #0000005c,0 0 28px #ff48a494}.kiss-meter:before{content:"";position:absolute;inset:7px;border-radius:5px;background:#00000047}.kiss-meter-fill{position:absolute;left:0;top:0;height:100%;width:0%;border-radius:5px;background:linear-gradient(90deg,#58ffc4,#ffe36b 52%,#ff4fa0);box-shadow:inset 0 2px #ffffff52,0 0 24px #ff4fa0;transition:width .08s linear}.kiss-meter-face{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:clamp(48px,8vw,66px);height:clamp(48px,8vw,66px);border:3px solid #fff7c8;border-radius:50%;font-family:Rubik,system-ui,sans-serif;font-size:clamp(16px,2.8vw,24px);font-weight:1000;color:#35120f;text-shadow:none;box-shadow:0 4px #400a20a6,0 0 22px #ffffff59;transition:left .12s ease-out,right .12s ease-out}.kiss-meter-sukesh{left:4%;transform:translate(-50%,-50%);background:radial-gradient(circle at 52% 38%,#ffd49a 0 40%,#c47c48 41% 100%)}.kiss-meter-stacey{right:4%;transform:translate(50%,-50%);background:radial-gradient(circle at 52% 38%,#ffe7a8 0 36%,#ffcf4d 37% 60%,#ff7fb7 61% 100%)}.kiss-target{position:absolute;border:4px solid #fff;border-radius:50%;pointer-events:auto;cursor:pointer;touch-action:manipulation;background:radial-gradient(circle at 50% 42%,#fff 0 17%,#ffe66b 18% 34%,#ff3f9b 35% 62%,#ff3f9b2e 63%);box-shadow:0 0 28px #ff3f9bfa,0 0 0 6px #0000003d;font-family:Rubik,system-ui,sans-serif;font-size:13px;font-weight:1000;color:#52112b;text-shadow:none}.kiss-target:before,.kiss-target:after{content:"";position:absolute;width:44%;height:44%;border-radius:50%;background:#ff3f9b;top:17%}.kiss-target:before{left:18%}.kiss-target:after{right:18%}.kiss-target-hit{opacity:0;transform:scale(1.55)!important;transition:opacity .18s ease,transform .18s ease}.kiss-tap-pop{position:absolute;transform:translate(-50%,-50%);pointer-events:none;font-size:clamp(28px,5vw,52px);font-weight:1000;color:#fff1a8;animation:kissTapPop .52s ease-out forwards}.kiss-pop{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%) scale(.55) rotate(-5deg);opacity:0;pointer-events:none;font-size:clamp(56px,13vw,150px);font-weight:1000;line-height:.9;color:#fff0a4;-webkit-text-stroke:2px #9f174d}.kiss-pop-show{animation:kissPop 1.25s ease-out forwards}.kiss-heart{position:absolute;transform:translate(-50%,-50%);pointer-events:none;width:clamp(18px,4.4vw,36px);height:clamp(18px,4.4vw,36px);background:#ff3f9b;box-shadow:0 0 16px #fff5aecc;animation:kissHeart 1.15s ease-out forwards}.kiss-heart:before,.kiss-heart:after{content:"";position:absolute;width:100%;height:100%;border-radius:50%;background:inherit}.kiss-heart:before{left:-50%}.kiss-heart:after{top:-50%}.kiss-sparkle{width:clamp(12px,3.2vw,25px);height:clamp(12px,3.2vw,25px);background:#fff2a4;box-shadow:0 0 16px #fffffff2,0 0 30px #ffe25bcc}.kiss-sparkle:before,.kiss-sparkle:after{left:50%;top:50%;width:160%;height:28%;border-radius:999px;transform:translate(-50%,-50%)}.kiss-sparkle:after{width:28%;height:160%}.kiss-overlay-payoff .kiss-hint,.kiss-overlay-payoff .kiss-target{opacity:0;pointer-events:none}@keyframes kissTapPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-98%) scale(1.35)}}@keyframes kissPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(-9deg)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.12) rotate(4deg)}72%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-2deg)}to{opacity:0;transform:translate(-50%,-64%) scale(.96) rotate(0)}}@keyframes kissHeart{0%{opacity:0;transform:translate(-50%,-50%) scale(.45) rotate(-45deg)}18%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--kiss-heart-x)),calc(-50% + var(--kiss-heart-y))) scale(1.1) rotate(-25deg)}}.stick{position:fixed;width:calc(150px * var(--stick-scale, 1));height:calc(150px * var(--stick-scale, 1));margin:calc(-75px * var(--stick-scale, 1)) 0 0 calc(-75px * var(--stick-scale, 1));border-radius:50%;border:3px solid rgba(255,216,122,.42);background:radial-gradient(circle at 50% 42%,rgba(154,223,74,.08),transparent 56%),repeating-conic-gradient(from 18deg,rgba(255,216,122,.045) 0deg 8deg,transparent 8deg 18deg),#0e0c076b;box-shadow:0 0 0 1px #120c05d1,0 10px 26px #0000006b,inset 0 2px #ffe9a01a,inset 0 -18px 28px #00000057;pointer-events:none;z-index:30}.stick:before{content:"";position:absolute;inset:7px;border-radius:50%;border:1px solid rgba(255,240,170,.14);background:linear-gradient(180deg,#ffffff14,#fff0 34%,#0000001f)}.stick-knob{position:absolute;left:50%;top:50%;width:calc(68px * var(--stick-scale, 1));height:calc(68px * var(--stick-scale, 1));border-radius:50%;background:radial-gradient(circle at 36% 24%,#fff8bef0,#ffd278c7 34%,#78561cc2);border:3px solid rgba(255,240,190,.78);box-shadow:0 0 0 1px #261808e0,0 6px 14px #00000061,inset 0 2px #ffffff38,inset 0 -10px 16px #36240a52;transform:translate(-50%,-50%)}.stick-knob:before{content:"";position:absolute;inset:7px 9px auto;height:30%;border-radius:50%;background:linear-gradient(180deg,#ffffff3d,#fff0);pointer-events:none}.stick-right .stick-knob{background:radial-gradient(circle at 36% 24%,#ffe8b8eb,#ff7e48d1 34%,#6c2a0ec7);border-color:#ffbe96d1;box-shadow:0 0 0 1px #2c1408e6,0 6px 14px #00000061,inset 0 2px #fff3,inset 0 -10px 16px #42160857}.stick-right .stick-knob:after{content:"✛";position:absolute;inset:0;display:grid;place-items:center;color:#3c1405cc;font-size:26px;font-weight:900}#hud{position:fixed;inset:0;pointer-events:none;z-index:20;--hud-gold: #ffd87a;--hud-gold-soft: #ffe9a0;--hud-accent: var(--biome-accent, #9adf4a);--hud-panel-top: rgba(24,20,10,.84);--hud-panel-bottom: rgba(7,6,3,.76);--hud-edge: rgba(255,216,122,.36);--hud-edge-dark: rgba(18,11,4,.92);--hud-font: "Rubik", system-ui, sans-serif;--hud-display-font: "Rubik Dirt", "Rubik", sans-serif;--hud-label-size: clamp(9px, 1.25vw, 11px);--hud-label-weight: 850;--hud-label-tracking: .11em;--hud-value-size: clamp(13px, 1.7vw, 16px);--hud-value-weight: 900;--hud-number-size: clamp(24px, 4.4vw, 40px);--hud-caption-size: clamp(17px, 3vw, 27px);--hud-label-color: rgba(246,236,210,.7);--hud-muted: rgba(216,200,160,.78);--hud-toxic: #b8ff4a;--hud-toxic-soft: #d8ff6a;--hud-chip-radius: 8px;--hud-chip-border: 1px solid rgba(255,216,122,.34);--hud-chip-bg: linear-gradient(135deg, rgba(255,216,122,.05) 0 1px, transparent 1px 13px), radial-gradient(circle at 16% 0%, rgba(184,255,74,.07), transparent 34%), linear-gradient(180deg, rgba(20,17,9,.82), rgba(7,6,3,.72));--hud-chip-shadow: 0 0 0 1px var(--hud-edge-dark), 0 10px 24px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,233,160,.1), inset 0 -10px 18px rgba(0,0,0,.16)}.hud-top{position:absolute;top:max(10px,env(safe-area-inset-top));left:clamp(10px,2.2vw,24px);right:clamp(10px,2.2vw,24px);display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.health-wrap,.score-wrap{position:relative;overflow:hidden;background:var(--hud-chip-bg);border:var(--hud-chip-border);border-radius:var(--hud-chip-radius);box-shadow:var(--hud-chip-shadow)}.health-wrap{width:min(48vw,360px);min-width:190px;padding:clamp(8px,1.4vw,11px) clamp(10px,1.8vw,14px) clamp(9px,1.5vw,12px)}.health-label{display:flex;justify-content:flex-start;align-items:baseline;gap:10px;font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);letter-spacing:var(--hud-label-tracking);color:var(--hud-label-color);text-shadow:0 2px 4px rgba(0,0,0,.85);text-transform:uppercase}.health-label span{display:block}.health-bar{position:relative;width:100%;height:clamp(19px,3.2vw,26px);background:linear-gradient(180deg,#000000c7,#120c05ad),repeating-linear-gradient(90deg,rgba(255,216,122,.05) 0 1px,transparent 1px 11px);border:1px solid rgba(18,11,4,.96);border-radius:8px;overflow:hidden;margin-top:6px;box-shadow:0 0 0 1px #ffd87a57,inset 0 2px 8px #000000c7,inset 0 -1px #ffe9a014,0 0 14px #ffb06014}.health-bar:after{content:"";position:absolute;inset:1px;border-radius:6px;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 42%,rgba(0,0,0,.1));pointer-events:none}.health-fill{position:relative;overflow:hidden;height:100%;width:100%;background:#7ec850;border-radius:5px;transition:width .2s ease,background .3s;box-shadow:inset 0 1px #ffffff47,inset 0 -6px 9px #140c044d,inset 1px 0 #ffffff14,0 0 12px #ffd87a24}.health-fill:before,.boss-fill:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff2e,#ffffff0a 24%,#23140624 56%,#00000047),repeating-linear-gradient(115deg,rgba(255,255,255,.055) 0 1px,transparent 1px 10px),radial-gradient(circle at 18% 70%,rgba(44,24,7,.22),transparent 30%),radial-gradient(circle at 76% 34%,rgba(0,0,0,.16),transparent 28%);pointer-events:none}.health-fill:after,.boss-fill:after{content:"";position:absolute;left:0;right:0;top:1px;height:38%;border-radius:inherit;background:linear-gradient(180deg,#ffffff38,#fff0);pointer-events:none}.score-wrap{min-width:clamp(138px,22vw,220px);padding:clamp(8px,1.4vw,11px) clamp(11px,2vw,16px);text-align:right}.score-line,.dist-line{display:flex;justify-content:flex-end;align-items:baseline;gap:10px}.score-line span,.dist-line span{font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);letter-spacing:var(--hud-label-tracking);color:var(--hud-label-color);text-shadow:0 1px 3px #000;text-transform:uppercase}.score-line span{color:var(--hud-label-color)}.dist-line span{color:#d8c8a09e}.score{font-family:var(--hud-display-font);font-size:var(--hud-number-size);font-weight:var(--hud-value-weight);line-height:.94;color:var(--hud-gold);letter-spacing:0;text-shadow:0 2px 0 rgba(90,58,16,.92),0 7px 14px rgba(0,0,0,.9)}.dist{font-size:clamp(13px,2vw,17px);font-weight:var(--hud-value-weight);letter-spacing:0;color:#f2e8c8;text-shadow:0 1px 3px #000}.hud-left-stack{position:absolute;top:max(86px,calc(env(safe-area-inset-top) + 78px));left:clamp(10px,2.2vw,24px);display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:min(360px,calc(100vw - clamp(138px,22vw,220px) - 36px))}.weapon-wrap{position:relative;max-width:100%;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 9px;border:var(--hud-chip-border);border-radius:var(--hud-chip-radius);background:var(--hud-chip-bg);box-shadow:var(--hud-chip-shadow)}.weapon-name{min-width:0;font-family:var(--hud-font);font-size:var(--hud-value-size);font-weight:var(--hud-value-weight);letter-spacing:.04em;color:var(--hud-gold);text-shadow:0 1px 3px #000;text-transform:uppercase;overflow-wrap:anywhere}.weapon-pips{display:flex;flex:0 0 auto;gap:3px}.weapon-pips i{width:9px;height:9px;background:#00000080;border:1px solid rgba(255,216,122,.45);border-radius:2px;box-shadow:inset 0 1px #ffe9a014;transform:rotate(45deg)}.weapon-pips i.on{background:linear-gradient(180deg,var(--hud-toxic-soft),var(--hud-gold));box-shadow:inset 0 1px #ffffff40,0 0 6px #b8ff4a85}.weapon-alt{max-width:100%;margin-left:2px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);letter-spacing:var(--hud-label-tracking);color:var(--hud-muted);text-shadow:0 1px 3px #000;text-transform:uppercase;overflow-wrap:anywhere}.weapon-alt.locked{color:#c8b8906b}.btn-swap.swap-pulse{animation:swapPulse .95s ease-out}.combo{position:absolute;top:max(64px,calc(env(safe-area-inset-top) + 54px));right:16px;min-width:58px;min-height:58px;display:grid;place-items:center;font-family:var(--hud-display-font);font-size:clamp(25px,3.8vw,32px);font-weight:var(--hud-value-weight);border:var(--hud-chip-border);border-radius:50%;background:var(--hud-chip-bg);box-shadow:var(--hud-chip-shadow);color:var(--hud-gold-soft);text-shadow:0 2px 8px rgba(0,0,0,.9);opacity:0;--combo-frac: 1;--combo-deg: 360deg;transition:opacity .3s,transform .15s}.combo:before{content:"";position:absolute;inset:4px;border-radius:50%;background:conic-gradient(var(--hud-toxic-soft) var(--combo-deg),rgba(255,216,122,.15) 0);-webkit-mask:radial-gradient(circle,transparent 58%,#000 60%);mask:radial-gradient(circle,transparent 58%,#000 60%);filter:drop-shadow(0 0 8px rgba(184,255,74,.42))}.combo.combo-pulse{animation:comboPulse .42s ease-out}.combo-saved{position:absolute;top:max(116px,calc(env(safe-area-inset-top) + 104px));right:16px;font-family:var(--hud-display-font);font-size:clamp(13px,2vw,16px);font-weight:var(--hud-value-weight);color:var(--hud-toxic-soft);letter-spacing:.02em;text-shadow:0 0 12px rgba(184,255,74,.56),0 2px 5px #000;opacity:0;transform:translateY(8px) scale(.95);pointer-events:none}.combo-saved.show{animation:streakSaved .72s ease-out}.subtitle{position:absolute;bottom:clamp(88px,12vh,132px);left:50%;transform:translate(-50%);max-width:min(86vw,620px);background:var(--hud-chip-bg);border-left:3px solid var(--hud-gold);padding:8px 14px;border-radius:var(--hud-chip-radius);box-shadow:var(--hud-chip-shadow);font-size:clamp(13px,2.4vw,17px);color:#f6ecd2;opacity:0;transition:opacity .25s;text-align:center}.subtitle b{color:var(--hud-gold)}.toast{position:absolute;bottom:clamp(142px,22vh,230px);left:50%;transform:translate(-50%);font-family:var(--hud-display-font);max-width:min(86vw,760px);padding:clamp(9px,1.7vw,14px) clamp(17px,4vw,34px);background:var(--hud-chip-bg);border:var(--hud-chip-border);border-radius:var(--hud-chip-radius);box-shadow:var(--hud-chip-shadow);font-size:clamp(18px,3.6vw,32px);line-height:1.05;color:#ffe9a0;text-align:center;letter-spacing:0;text-shadow:0 0 14px rgba(255,216,122,.36),0 3px 6px rgba(0,0,0,.9);opacity:0;transition:opacity .3s,transform .2s;pointer-events:none;white-space:normal;overflow-wrap:anywhere}.toast.level-caption{color:var(--hud-toxic-soft);font-size:var(--hud-caption-size);letter-spacing:.05em;text-shadow:0 0 14px rgba(184,255,74,.42),0 3px 6px rgba(0,0,0,.86)}.vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(180,20,10,.55) 100%);opacity:0;transition:opacity .4s}.boss-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 48%,rgba(0,0,0,.34) 100%);opacity:0;transition:opacity .5s}#screens{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:40}.screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:100%;height:100%;background:radial-gradient(ellipse at 50% 30%,#281c0a8c,#080602e0);padding:24px;overflow-y:auto}.logo{text-align:center;margin-bottom:2px}.logo-filth{font-family:Rubik Dirt,sans-serif;font-size:clamp(44px,10vw,92px);line-height:.95;color:#b7d24a;text-shadow:0 0 30px rgba(150,200,40,.45),0 6px 0 #4a5a18,0 10px 24px rgba(0,0,0,.9);letter-spacing:4px}.logo-sub{font-weight:900;font-size:clamp(14px,3.2vw,24px);letter-spacing:clamp(4px,1.4vw,10px);color:#e8b46a;text-shadow:0 2px 6px #000;margin-top:6px}.tagline{color:#c8b890;font-size:clamp(13px,2.6vw,17px);text-shadow:0 1px 3px #000;text-align:center}.loading-screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(20px,5vh,46px);text-align:center;padding:24px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:radial-gradient(ellipse at 50% 40%,#2a381280,#060a05eb 58%,#040603),linear-gradient(180deg,#0a0d06,#060804);animation:loadingFadeIn .5s ease both}@keyframes loadingFadeIn{0%{opacity:0}to{opacity:1}}.loading-emblem{display:flex;flex-direction:column;align-items:center;gap:8px;animation:titleFloat 6s ease-in-out infinite}.loading-logo{font-family:Rubik Dirt,sans-serif;font-size:clamp(40px,9vw,86px);line-height:.95;letter-spacing:3px;color:#ecff7a;-webkit-text-stroke:clamp(.5px,.12vw,1.3px) rgba(12,22,4,.85);text-shadow:0 0 12px rgba(236,255,140,.9),0 0 30px rgba(206,255,90,.7),0 0 64px rgba(150,235,70,.5),0 4px 0 #1c280c,0 14px 28px rgba(0,0,0,.92)}.loading-sub{font-weight:900;font-size:clamp(13px,3vw,22px);letter-spacing:clamp(4px,1.4vw,9px);color:#ffe28a;text-shadow:0 2px 7px #000}.loading-tap{font-family:Rubik Dirt,Rubik,sans-serif;font-size:clamp(20px,4.4vw,34px);letter-spacing:.12em;color:#fff0a8;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 22px rgba(255,200,80,.45);animation:loadingTapPulse 1.5s ease-in-out infinite}@keyframes loadingTapPulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}.loading-hint{color:#9fb38a;font-size:clamp(11px,2.3vw,15px);letter-spacing:.06em;text-shadow:0 1px 4px #000}.title-screen.title-3d{justify-content:flex-end}.title-screen.title-3d .logo{display:none}.title-screen.title-3d .title-hero{margin-bottom:clamp(4px,1.4vh,12px)}.title-screen{justify-content:center;overflow:hidden;gap:clamp(14px,2.6vh,22px);padding:max(18px,env(safe-area-inset-top)) clamp(14px,3vw,30px) max(40px,calc(env(safe-area-inset-bottom) + 28px));min-height:0;background:linear-gradient(180deg,#04080538,#0405022e)}.title-scene-canvas{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;background:#162a1c}.title-screen:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#0408059e,#0408051f 23%,#04080505 56%,#040502b8),radial-gradient(ellipse at 50% 38%,transparent 42%,rgba(0,0,0,.42) 100%)}.title-screen:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(2px 2px at 20% 30%,rgba(224,244,143,.55),transparent 60%),radial-gradient(2px 2px at 70% 22%,rgba(224,244,143,.5),transparent 60%),radial-gradient(3px 3px at 40% 70%,rgba(255,234,150,.45),transparent 60%),radial-gradient(2px 2px at 85% 58%,rgba(224,244,143,.5),transparent 60%),radial-gradient(2px 2px at 12% 82%,rgba(255,234,150,.4),transparent 60%),radial-gradient(3px 3px at 58% 46%,rgba(224,244,143,.4),transparent 60%);animation:titleMotes 13s linear infinite}@keyframes titleMotes{0%{transform:translateY(14px);opacity:.5}50%{opacity:.95}to{transform:translateY(-24px);opacity:.5}}@keyframes titleFloat{0%,to{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-9px) rotate(.5deg)}}.title-screen>*{position:relative;z-index:1}.title-screen>.title-scene-canvas{position:absolute;z-index:0}.title-hero{display:flex;flex-direction:column;align-items:center;gap:clamp(8px,1.6vh,14px);width:min(920px,100%);text-align:center}.title-screen .logo{position:relative;margin-bottom:0;padding:clamp(16px,3.4vw,28px) clamp(18px,5vw,44px) clamp(14px,2.8vw,24px);border:none;animation:titleFloat 6s ease-in-out infinite;background:radial-gradient(ellipse at 50% 42%,rgba(20,30,10,.34),transparent 66%)}.title-screen .logo-filth{color:#ecff7a;-webkit-text-stroke:clamp(.5px,.12vw,1.4px) rgba(12,22,4,.85);text-shadow:0 0 10px rgba(236,255,140,.95),0 0 26px rgba(206,255,90,.85),0 0 60px rgba(150,235,70,.6),0 3px 0 #4a6818,0 6px 0 #1c280c,0 14px 26px rgba(0,0,0,.92);animation:titleGlow 2.6s ease-in-out infinite}@keyframes titleGlow{0%,to{filter:brightness(1) saturate(1.05)}50%{filter:brightness(1.18) saturate(1.2)}}.title-screen .logo:after{content:"";position:absolute;left:7%;right:7%;top:calc(100% - 6px);height:34px;pointer-events:none;z-index:1;background:radial-gradient(13px 24px at 10% 0,#8fd92a 0 58%,transparent 60%),radial-gradient(9px 32px at 26% 0,#b7ef3e 0 58%,transparent 60%),radial-gradient(15px 20px at 44% 0,#7fc926 0 58%,transparent 60%),radial-gradient(10px 30px at 60% 0,#a9e63a 0 58%,transparent 60%),radial-gradient(12px 26px at 76% 0,#8fd92a 0 58%,transparent 60%),radial-gradient(9px 22px at 92% 0,#9fe235 0 58%,transparent 60%);background-repeat:no-repeat;filter:drop-shadow(0 4px 5px rgba(0,0,0,.55)) drop-shadow(0 0 10px rgba(150,230,70,.4))}.title-screen .logo:before{content:"";position:absolute;left:50%;top:calc(100% + 6px);width:11px;height:15px;margin-left:-5.5px;border-radius:50%/38% 38% 62% 62%;background:#a9e63a;box-shadow:0 0 9px #96e646bf;opacity:0;pointer-events:none;z-index:1;animation:titleDrip 3.6s ease-in infinite}@keyframes titleDrip{0%,58%{transform:translateY(0) scaleY(1);opacity:0}63%{opacity:1}to{transform:translateY(44px) scaleY(1.7);opacity:0}}.title-screen .logo-sub{display:inline-block;margin-top:clamp(8px,1.5vw,12px);padding:6px clamp(10px,2.6vw,18px);border-top:1px solid rgba(255,216,122,.38);border-bottom:1px solid rgba(255,216,122,.28);background:linear-gradient(90deg,transparent,rgba(0,0,0,.46),transparent);color:#ffe28a;text-shadow:0 1px 0 rgba(72,42,7,.88),0 3px 7px rgba(0,0,0,.95),0 0 14px rgba(255,176,96,.3)}.primary-actions{display:flex;flex-direction:column;align-items:center;gap:9px;margin-top:clamp(6px,1.6vh,14px)}.title-screen .btn-start{position:relative;isolation:isolate;overflow:visible;min-width:min(86vw,430px);padding:clamp(18px,3.2vw,26px) clamp(48px,8vw,86px);border-radius:12px;font-family:Rubik Dirt,Rubik,sans-serif;font-size:clamp(34px,7vw,64px);line-height:.95;letter-spacing:.08em;color:#251805;background:linear-gradient(180deg,#fff0a8,#ffd35e 42%,#d88325);box-shadow:0 7px #70420f,0 16px 30px #000000ad,0 0 34px #ffc85047,inset 0 1px #ffffff73;text-shadow:0 1px 0 rgba(255,245,180,.55);animation:startSheenPulse 3.8s ease-in-out infinite}.title-screen .btn-start:after{content:"";position:absolute;left:8%;right:8%;top:calc(100% - 3px);height:22px;pointer-events:none;z-index:-1;background:radial-gradient(9px 18px at 12% 0,#8fd92a 0 58%,transparent 60%),radial-gradient(7px 26px at 29% 0,#b7ef3e 0 58%,transparent 60%),radial-gradient(11px 15px at 52% 0,#7fc926 0 58%,transparent 60%),radial-gradient(8px 24px at 72% 0,#a9e63a 0 58%,transparent 60%),radial-gradient(8px 18px at 90% 0,#9fe235 0 58%,transparent 60%);background-repeat:no-repeat;filter:drop-shadow(0 3px 4px rgba(0,0,0,.55)) drop-shadow(0 0 8px rgba(150,230,70,.34));opacity:.86;animation:startOoze 5.2s ease-in-out infinite}.title-screen .btn-start:before{content:"";position:absolute;left:63%;top:calc(100% + 8px);width:9px;height:13px;border-radius:50%/38% 38% 62% 62%;background:#a9e63a;box-shadow:0 0 8px #96e646b8;opacity:0;pointer-events:none;z-index:-1;animation:startDrip 4.8s ease-in infinite}@keyframes startSheenPulse{0%,to{filter:brightness(1)}48%{filter:brightness(1.08) saturate(1.08)}}@keyframes startOoze{0%,to{transform:translateY(0) scaleY(.82);opacity:.58}46%,72%{transform:translateY(4px) scaleY(1.08);opacity:.92}}@keyframes startDrip{0%,61%{transform:translateY(0) scaleY(1);opacity:0}67%{opacity:1}to{transform:translateY(36px) scaleY(1.55);opacity:0}}.title-screen .btn-start:active{transform:translateY(4px);box-shadow:0 3px #70420f,0 9px 18px #000000a3,0 0 24px #ffc85038}.title-screen .btn-intro{display:none!important;width:auto;min-width:0;opacity:.78;text-transform:uppercase;box-shadow:none!important}.title-more{width:min(900px,100%);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;min-height:0;flex:0 1 auto}.title-more-toggle{display:block;width:max-content;max-width:calc(100vw - 32px);margin:0 auto;padding:10px 18px;border:1px solid rgba(255,216,122,.58);border-radius:7px;background:linear-gradient(180deg,#2a200ce6,#060503c7);color:#ffe9a0;font-size:13px;font-weight:950;letter-spacing:.1em;line-height:1.12;text-transform:uppercase;text-align:center;text-shadow:0 2px 4px #000;white-space:normal;cursor:pointer;list-style:none;box-shadow:0 3px #4a3212db,0 10px 22px #00000080,inset 0 1px #ffe9a014}.title-more-toggle::-webkit-details-marker{display:none}.title-more-toggle:after{content:"▾";margin-left:8px;color:#9adf4a;text-shadow:0 0 8px rgba(154,223,74,.42),0 2px 4px #000}.title-more[open] .title-more-toggle{color:#251805;background:linear-gradient(180deg,#ffd87a,#d99a38);border-color:#fff0aa66;text-shadow:none}.title-more[open] .title-more-toggle:after{content:"▴";color:#375414;text-shadow:none}.title-secondary{width:min(900px,100%);display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:10px;padding:clamp(10px,1.8vh,16px);max-height:min(62dvh,calc(100dvh - 270px));min-height:0;overflow:auto;overscroll-behavior:contain;background:linear-gradient(180deg,#0f0c06eb,#060503db);border:1px solid rgba(255,216,122,.22);border-radius:10px;box-shadow:0 14px 34px #0000009e,inset 0 1px #ffe9a00f}.title-section{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px}.secondary-title{font-size:11px;font-weight:950;letter-spacing:.22em;color:#d8c8a0b8;text-shadow:0 1px 2px #000}.title-panels{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:10px;align-items:start;width:min(900px,100%)}.title-settings{display:grid;grid-template-columns:repeat(2,minmax(245px,1fr));gap:10px;width:min(760px,100%);align-items:stretch}.title-set-row{min-width:0;display:grid;grid-template-columns:minmax(88px,auto) minmax(0,1fr);align-items:center;gap:10px;padding:8px;background:#00000042;border:1px solid rgba(255,216,122,.13);border-radius:7px}.title-set-row .set-label{min-width:0;color:#d8c8a0db;font-size:12px;font-weight:950;letter-spacing:.08em;line-height:1.1;white-space:nowrap}.title-set-row .seg{min-width:0;justify-content:flex-end}.title-set-row .seg button{flex:1 1 0;min-width:0;padding:7px 8px;font-size:12px}.title-screen:has(.title-more[open]){gap:clamp(8px,1.4vh,14px)}.title-screen:has(.title-more[open]) .title-hero{flex:0 0 auto;gap:clamp(5px,1vh,10px)}.title-more[open]{flex:1 1 auto;justify-content:flex-start;overflow:hidden}.title-more[open] .title-secondary{flex:1 1 auto}@media(max-width:720px){.title-panels{grid-template-columns:1fr}.title-secondary{max-height:min(64dvh,calc(100dvh - 250px))}.title-settings{grid-template-columns:1fr}}@media(max-height:620px){.title-screen{gap:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}.title-screen .logo{padding:6px 14px 8px}.title-screen .logo-filth{font-size:clamp(32px,8vh,54px)}.title-screen .logo-sub{font-size:clamp(10px,2.2vh,14px);letter-spacing:clamp(2px,.8vw,6px);margin-top:4px;padding-block:3px}.primary-actions{margin-top:2px}.title-screen .btn-start{min-width:min(70vw,320px);padding:10px 34px;font-size:clamp(28px,7vh,42px)}.title-secondary{max-height:calc(100dvh - 160px);gap:8px;padding:10px}.title-settings{gap:7px}.title-panels{grid-template-columns:minmax(0,1fr) minmax(180px,.7fr)}.controls-hint{line-height:1.35}}@media(max-height:430px){.title-screen .logo-sub,.title-screen .logo:before,.title-screen .logo:after{display:none}.title-screen .logo-filth{font-size:clamp(28px,10vh,42px)}.title-screen .btn-start{font-size:clamp(24px,8vh,34px);padding:8px 28px}.title-more-toggle{padding:6px 12px}.title-secondary{max-height:calc(100dvh - 128px)}.title-set-row{grid-template-columns:minmax(78px,auto) minmax(0,1fr);gap:6px;padding:6px}.title-set-row .set-label,.title-set-row .seg button{font-size:11px}}.title-screen .controls-hint{max-width:min(780px,94vw);opacity:.78}.title-screen .btn-mute{position:static;width:auto;min-width:0;font-size:13px;padding:7px 14px;border-radius:7px;background:#00000073;border:1px solid rgba(255,216,122,.35);color:#ffd87a;box-shadow:none}button{pointer-events:auto;font-family:Rubik,sans-serif;font-weight:900;font-size:clamp(18px,3.6vw,26px);letter-spacing:2px;color:#2a1c08;background:linear-gradient(180deg,#ffd87a,#e8a440);border:none;border-radius:10px;padding:14px 44px;cursor:pointer;box-shadow:0 4px #8a5c1c,0 8px 20px #0009;transition:transform .08s,box-shadow .08s}button:active{transform:translateY(3px);box-shadow:0 1px #8a5c1c,0 4px 10px #0009}.controls-hint{font-size:clamp(11px,2.2vw,14px);color:#a89870;text-align:center;line-height:1.7;text-shadow:0 1px 2px #000}.controls-hint b{color:#d8c8a0}.hs-wrap{background:#00000073;border:1px solid rgba(255,216,122,.25);border-radius:10px;padding:12px 20px;min-width:min(78vw,360px)}.hs-title{font-family:Rubik Dirt,sans-serif;text-align:center;color:#ffd87a;font-size:18px;margin-bottom:6px;letter-spacing:2px}.hs-list{list-style:none;counter-reset:hs}.hs-list li{display:grid;grid-template-columns:1fr auto auto;gap:14px;padding:3px 0;font-size:14px;color:#d8c8a0;counter-increment:hs}.hs-list li:before{content:counter(hs) ".";color:#8a7a52;margin-right:4px}.hs-list li.hl{color:#ffe9a0;text-shadow:0 0 8px rgba(255,200,100,.6)}.hs-empty{color:#8a7a52;text-align:center;font-size:13px;padding:8px}.btn-mute{position:absolute;top:max(14px,env(safe-area-inset-top));right:16px;font-size:20px;padding:8px 14px;background:#0006;box-shadow:none;border:1px solid rgba(255,216,122,.3);color:#ffd87a}.go-title{font-family:Rubik Dirt,sans-serif;font-size:clamp(30px,7vw,56px);color:#e84830;text-shadow:0 0 24px rgba(232,72,48,.5),0 4px 0 #5a1408,0 8px 18px #000;text-align:center;letter-spacing:2px}.go-cause{margin-top:-6px;color:#ffd87a;font-size:clamp(12px,2.2vw,16px);font-weight:1000;letter-spacing:.12em;text-align:center;text-shadow:0 2px 6px #000}.go-score{font-family:Rubik Dirt,sans-serif;font-size:clamp(40px,10vw,72px);color:#ffd87a;text-shadow:0 3px 10px #000}.go-dist{color:#c8b890;font-size:15px}.hs-entry{display:flex;flex-direction:column;align-items:center;gap:8px}.hs-newbadge{font-weight:900;letter-spacing:2px;color:#b7d24a;font-size:14px;text-shadow:0 0 12px rgba(150,200,40,.6)}.hs-name{pointer-events:auto;font-family:Rubik,sans-serif;font-weight:900;font-size:20px;text-align:center;letter-spacing:2px;text-transform:uppercase;color:#ffe9a0;background:#00000080;border:2px solid rgba(255,216,122,.4);border-radius:8px;padding:8px 14px;width:220px;outline:none}.btn-save{font-size:16px;padding:10px 26px}.pause-title{font-family:Rubik Dirt,sans-serif;font-size:clamp(36px,9vw,64px);color:#ffd87a;text-shadow:0 4px 10px #000}.btn-resume{margin-top:8px}.shop-screen{justify-content:center;padding:max(12px,env(safe-area-inset-top)) clamp(10px,2vw,22px) max(12px,env(safe-area-inset-bottom));overflow:hidden;opacity:0;transform:translateY(18px) scale(.98);transition:opacity .42s ease,transform .52s cubic-bezier(.18,.82,.22,1)}.shop-screen.live{opacity:1;transform:translateY(0) scale(1)}.shop-panel{width:min(1120px,100%);max-height:min(100%,calc(100dvh - max(24px,env(safe-area-inset-top)) - max(24px,env(safe-area-inset-bottom))));min-height:0;margin:0 auto;display:flex;flex-direction:column;align-items:stretch;gap:clamp(8px,1.6vh,12px);padding:clamp(10px,2vw,16px);overflow:hidden;background:radial-gradient(ellipse at 50% 0%,rgba(154,223,74,.12),transparent 48%),linear-gradient(180deg,#191409f0,#080703eb);border:2px solid rgba(255,216,122,.42);border-radius:8px;box-shadow:0 6px #4a3212,0 22px 46px #0000009e,inset 0 1px #ffe9a01f}.stage-summary .shop-panel{gap:clamp(8px,1.4vh,12px)}.shop-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);align-items:center;gap:clamp(10px,2vw,18px)}.shop-head-copy{min-width:0}.summary-stamp{display:inline-block;transform:rotate(-3deg) scale(.86);opacity:0;padding:5px 13px;border:3px solid rgba(154,223,74,.78);border-radius:8px;color:#9adf4a;font-family:Rubik Dirt,sans-serif;font-size:clamp(20px,3.6vw,36px);line-height:.95;text-shadow:0 3px 0 #143016,0 0 16px rgba(154,223,74,.36);box-shadow:inset 0 0 0 2px #00000070,0 10px 22px #00000073}.stage-summary.live .summary-stamp{animation:summaryStamp .52s cubic-bezier(.2,1.35,.25,1) .12s forwards}.stage-clear-stamp{position:fixed;left:50%;top:48%;z-index:34;transform:translate(-50%,-50%) rotate(-4deg) scale(.68);opacity:0;pointer-events:none;padding:clamp(10px,2vw,18px) clamp(18px,4vw,34px);border:clamp(3px,.8vw,6px) solid rgba(154,223,74,.9);border-radius:8px;color:#9adf4a;background:#050c0452;font-family:Rubik Dirt,sans-serif;font-size:clamp(42px,10vw,112px);line-height:.92;text-align:center;text-shadow:0 4px 0 #143016,0 0 22px rgba(154,223,74,.48),0 10px 20px rgba(0,0,0,.8);box-shadow:inset 0 0 0 2px #00000085,0 16px 30px #0000007a;transition:opacity .22s ease,transform .48s cubic-bezier(.2,1.35,.25,1)}.stage-clear-stamp.show{opacity:1;transform:translate(-50%,-50%) rotate(-2deg) scale(1)}.shop-kicker{margin-top:8px;font-size:clamp(11px,1.6vw,15px);font-weight:900;letter-spacing:.16em;color:#9adf4a;text-align:left;text-shadow:0 0 12px rgba(154,223,74,.35),0 2px 4px #000;overflow-wrap:anywhere}.shop-title{font-family:Rubik Dirt,sans-serif;font-size:clamp(30px,5vw,58px);line-height:.98;color:#ffd87a;text-align:left;text-shadow:0 4px 0 #5a3a10,0 8px 20px #000}.shop-content{min-height:0;flex:1 1 auto;display:flex;flex-direction:column;gap:clamp(8px,1.6vh,12px);overflow:hidden;padding:2px 4px 6px}.summary-recap{flex:0 0 auto;width:100%;padding:clamp(9px,1.5vw,12px);background:linear-gradient(180deg,#121008e0,#090804d6);border:1px solid rgba(255,216,122,.42);border-radius:8px;box-shadow:0 4px #4a3212,0 12px 26px #00000080}.summary-lines{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px}.summary-line{min-height:24px;display:grid;grid-template-columns:22px minmax(0,auto) 1fr minmax(34px,auto);align-items:center;gap:6px;opacity:0;transform:translate(-18px) scale(.98);color:#f2e8c8;font-size:clamp(10px,1.25vw,12px);font-weight:950}.summary-line.live{animation:summaryLineIn .28s cubic-bezier(.2,.9,.18,1.25) forwards}.summary-icon{font-size:16px;text-align:center}.summary-label{min-width:0;overflow-wrap:anywhere}.summary-dots{height:1px;min-width:18px;background:repeating-linear-gradient(90deg,rgba(255,216,122,.35) 0 5px,transparent 5px 9px)}.summary-count{color:#9adf4a;font-size:clamp(12px,1.5vw,15px);text-align:right;text-shadow:0 0 12px rgba(154,223,74,.28)}.summary-score{margin-top:0;padding-top:0;display:flex;justify-content:space-between;align-items:baseline;gap:14px;border-top:none;color:#ffd87a;font-size:clamp(11px,1.5vw,14px);font-weight:950;letter-spacing:.08em}.summary-total{font-family:Rubik Dirt,sans-serif;font-size:clamp(24px,3.8vw,42px);line-height:.9;color:#ffe9a0;text-shadow:0 4px 0 #5a3a10,0 0 20px rgba(255,216,122,.28)}.drydock-title{flex:0 0 auto;margin-top:0;color:#d8c8a0;font-size:clamp(12px,1.5vw,15px);font-weight:950;letter-spacing:.14em;text-align:center}.shop-balance{justify-self:end;display:flex;flex-direction:column;gap:2px;justify-content:center;align-items:center;min-height:96px;padding:10px 14px;background:linear-gradient(180deg,#f4c852,#ce7e20);border:3px solid rgba(255,238,166,.9);border-radius:8px;box-shadow:0 5px #70410e,0 12px 22px #0000007a,inset 0 2px #ffffff40;font-size:12px;font-weight:900;letter-spacing:.12em;color:#382507;text-align:center}.shop-balance span{color:#1f1707;text-shadow:0 1px 0 rgba(255,255,255,.28)}.shop-balance b{font-family:Rubik Dirt,sans-serif;font-size:clamp(32px,4.5vw,56px);line-height:.92;color:#21510d;letter-spacing:0;text-shadow:0 2px 0 rgba(255,238,166,.42),0 4px 0 rgba(57,33,5,.34)}.shop-balance small{color:#5f3507;font-size:10px;font-weight:950;letter-spacing:.08em}.shop-scroll{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:2px 4px 8px;scrollbar-width:thin;scrollbar-color:rgba(255,216,122,.55) rgba(0,0,0,.18)}.shop-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.shop-mod{position:relative;min-width:0;min-height:108px;display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:7px 10px;align-items:center;padding:11px;overflow:hidden;background:linear-gradient(180deg,#161208eb,#090804e6);border:2px solid rgba(255,216,122,.36);border-radius:8px;box-shadow:0 4px #4a3212,0 8px 18px #0000007a,inset 0 1px #ffeea614;color:#f2e8c8;text-align:left;letter-spacing:0;transition:transform .14s ease,filter .14s ease,border-color .14s ease,box-shadow .14s ease,opacity .14s ease}.shop-mod.affordable{border-color:#9adf4aad;box-shadow:0 4px #4a3212,0 8px 18px #0000007a,0 0 0 2px #9adf4a1f,inset 0 1px #ffeea61f;cursor:pointer}.shop-mod.affordable:hover,.shop-mod.affordable:focus-visible{transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 6px #4a3212,0 12px 22px #00000080,0 0 0 3px #9adf4a2e,inset 0 1px #ffeea62e}.shop-mod-icon{grid-row:1;width:46px;height:46px;display:grid;place-items:center;font-size:27px;background:#ffd87a1f;border:1px solid rgba(255,216,122,.22);border-radius:8px}.shop-mod-body{display:flex;flex-direction:column;gap:4px;min-width:0}.shop-mod-name{font-size:clamp(13px,1.35vw,15px);font-weight:950;color:#ffd87a;overflow-wrap:anywhere}.shop-mod-desc{font-size:clamp(11px,1.2vw,13px);line-height:1.22;color:#d8c8a0;overflow-wrap:anywhere;word-break:normal}.shop-mod-delta{font-size:clamp(10px,1.05vw,12px);line-height:1.05;font-weight:950;color:#9ffff1;text-shadow:0 0 8px rgba(159,255,241,.28);overflow-wrap:anywhere}.shop-mod-rank{grid-column:1;display:flex;flex-direction:column;gap:4px;width:100%;min-width:0;font-size:9px;font-weight:950;color:#9adf4a;letter-spacing:0;white-space:nowrap}.shop-mod-rank-text{line-height:1}.shop-mod-rank-bar{display:grid;grid-template-columns:repeat(var(--rank-max, 10),minmax(2px,1fr));gap:2px;width:42px;max-width:100%}.shop-mod-rank-bar i{height:5px;border-radius:2px;background:#d8c8a038;box-shadow:inset 0 0 0 1px #00000047}.shop-mod-rank-bar i.filled{background:#9adf4a;box-shadow:0 0 5px #9adf4a73}.shop-mod-cost{grid-column:2;justify-self:end;min-height:22px;padding:4px 8px;background:#9adf4a1f;border:1px solid rgba(154,223,74,.38);border-radius:999px;font-size:11px;font-weight:950;color:#9adf4a;white-space:nowrap}.shop-mod-need{grid-column:2;justify-self:end;margin-top:-2px;color:#ff9a82;font-size:10px;font-weight:950;letter-spacing:.06em;white-space:nowrap}.shop-mod.locked{opacity:.64;border-color:#dc5a447a;box-shadow:0 2px #4a3212b8,0 5px 14px #00000052;filter:saturate(.72)}.shop-mod.locked .shop-mod-cost{background:#d23a2e21;border-color:#ff5c4a73;color:#ff7f68}.shop-mod.maxed{border-color:#9adf4a8c;background:linear-gradient(180deg,#1c200af0,#090e04e6);opacity:.88}.shop-mod.maxed .shop-mod-cost{color:#ffe9a0;border-color:#ffd87a7a;background:#ffd87a24}.shop-mod:disabled{cursor:default}.shop-mod-burst{position:absolute;inset:0;pointer-events:none;overflow:hidden;opacity:0}.shop-mod-burst i{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:#ffe66a;box-shadow:0 0 14px #ffe66abf}.shop-mod-burst i:nth-child(1){--x: -72px;--y: -34px}.shop-mod-burst i:nth-child(2){--x: -38px;--y: 42px;background:#9adf4a}.shop-mod-burst i:nth-child(3){--x: 6px;--y: -52px}.shop-mod-burst i:nth-child(4){--x: 46px;--y: 38px;background:#ff9a52}.shop-mod-burst i:nth-child(5){--x: 82px;--y: -18px;background:#9ffff1}.shop-mod-burst i:nth-child(6){--x: 72px;--y: 52px}.shop-mod.buying{animation:shopBuyPulse .3s cubic-bezier(.18,1.35,.22,1) forwards;border-color:#ffeea6f2;filter:brightness(1.25) saturate(1.2)}.shop-mod.buying .shop-mod-rank{animation:shopRankPop .26s ease both}.shop-mod.buying .shop-mod-burst{opacity:1}.shop-mod.buying .shop-mod-burst i{animation:shopSpark .36s ease-out forwards}.shop-balance:has(b) b{transition:color .12s ease,transform .12s ease}.shop-mod.buying~.shop-mod{pointer-events:none}.shop-screen .btn-continue{align-self:center;flex:0 0 auto;margin-top:0;min-height:48px;min-width:min(100%,300px);padding:12px 32px;font-size:clamp(18px,2.8vw,24px);box-shadow:0 5px #5a3a10,0 0 24px #ffd87a2e;z-index:3}@keyframes summaryStamp{0%{opacity:0;transform:rotate(-7deg) scale(1.25);filter:blur(3px)}62%{opacity:1;transform:rotate(-3deg) scale(.92);filter:blur(0)}to{opacity:1;transform:rotate(-3deg) scale(1);filter:blur(0)}}@keyframes summaryLineIn{0%{opacity:0;transform:translate(-18px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes shopBuyPulse{0%{transform:scale(1);box-shadow:0 4px #4a3212,0 8px 18px #0000007a,inset 0 1px #ffeea614}52%{transform:scale(1.045);box-shadow:0 7px #70410e,0 0 28px #ffd87a6b,inset 0 0 0 999px #ffd87a1f}to{transform:scale(1.015);box-shadow:0 5px #4a3212,0 0 24px #9adf4a42,inset 0 1px #ffeea633}}@keyframes shopRankPop{0%{letter-spacing:2px;transform:scale(1);color:#9adf4a}70%{letter-spacing:3px;transform:scale(1.2);color:#ffe66a}to{letter-spacing:2px;transform:scale(1);color:#ffe66a}}@keyframes shopSpark{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}25%{opacity:1}to{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(0);opacity:0}}@media(max-width:560px){.shop-screen{padding-left:12px;padding-right:12px}.shop-head{grid-template-columns:1fr}.shop-balance{justify-self:stretch;min-height:82px}.summary-recap{padding:12px 10px}.summary-lines{grid-template-columns:1fr}.summary-line{grid-template-columns:24px minmax(0,1fr) minmax(38px,auto)}.summary-dots{display:none}.summary-score{align-items:center}.shop-grid{grid-template-columns:1fr;gap:8px}}@media(max-width:880px)and (min-width:561px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-height:620px)and (orientation:landscape){.shop-panel{padding:9px;gap:7px}.shop-content{gap:7px}.shop-head{grid-template-columns:minmax(0,1fr) minmax(150px,210px)}.summary-stamp{font-size:clamp(18px,3.2vw,28px);padding:4px 10px}.shop-kicker{margin-top:5px}.shop-title{font-size:clamp(26px,4.2vw,42px)}.shop-balance{min-height:74px;padding:7px 10px}.shop-balance b{font-size:clamp(28px,4vw,42px)}.summary-recap{padding:8px 10px}.summary-lines{gap:3px 10px}.summary-line{min-height:20px}.shop-mod{min-height:96px;padding:9px}.shop-screen .btn-continue{min-height:42px;padding-top:9px;padding-bottom:9px}}.boss-wrap{position:absolute;top:max(96px,calc(env(safe-area-inset-top) + 88px));left:50%;transform:translate(-50%);width:min(70vw,480px);padding:8px 10px 9px;border:var(--hud-chip-border);border-radius:var(--hud-chip-radius);background:var(--hud-chip-bg);box-shadow:var(--hud-chip-shadow),0 0 18px #b8ff4a1f;display:none}.boss-name{font-family:var(--hud-font);text-align:center;font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);color:var(--hud-toxic-soft);letter-spacing:var(--hud-label-tracking);text-transform:uppercase;text-shadow:0 0 10px rgba(184,255,74,.38),0 2px 4px #000;margin-bottom:6px}.boss-bar{position:relative;height:12px;background:linear-gradient(180deg,#000000c2,#0e1205a8),repeating-linear-gradient(90deg,rgba(255,216,122,.05) 0 1px,transparent 1px 10px);border:1px solid rgba(10,16,4,.96);border-radius:calc(var(--hud-chip-radius) - 1px);overflow:hidden;box-shadow:0 0 0 1px #ffd87a47,inset 0 2px 8px #000000c7,0 0 16px #b8ff4a14}.boss-bar:after{content:"";position:absolute;inset:1px;border-radius:5px;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 44%,rgba(0,0,0,.1));pointer-events:none}.boss-fill{position:relative;overflow:hidden;height:100%;width:100%;background:linear-gradient(90deg,var(--hud-toxic),var(--hud-gold));border-radius:4px;transition:width .15s;box-shadow:inset 0 1px #ffffff42,inset 0 -5px 8px #0f1c0352,0 0 12px #b8ff4a2e}.popups{position:absolute;inset:0;overflow:hidden}.popup{position:absolute;font-family:Rubik Dirt,sans-serif;font-size:20px;text-shadow:0 2px 4px #000;transform:translate(-50%);opacity:1;transition:transform .85s ease-out,opacity .85s;will-change:transform,opacity}.popup.fly{transform:translate(-50%,-70px);opacity:0}@keyframes comboPulse{0%{filter:brightness(1)}38%{filter:brightness(1.8);text-shadow:0 0 18px rgba(255,216,122,.85),0 2px 8px rgba(0,0,0,.9)}to{filter:brightness(1)}}@keyframes streakSaved{0%{opacity:0;transform:translateY(8px) scale(.95)}22%{opacity:1;transform:translateY(0) scale(1.08)}70%{opacity:1;transform:translateY(-8px) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.98)}}@keyframes swapPulse{0%{filter:brightness(1);box-shadow:var(--hud-chip-shadow)}30%{filter:brightness(1.55);box-shadow:var(--hud-chip-shadow),0 0 22px #ffd87a94}to{filter:brightness(1);box-shadow:var(--hud-chip-shadow)}}.dmgflash{position:absolute;inset:0;background:radial-gradient(ellipse at center,#ff3c1e1f,#ff281461);opacity:0;transition:opacity .25s}.damage-dir{position:absolute;left:50%;top:50%;width:min(42vw,360px);height:min(42vw,360px);border-radius:50%;opacity:0;pointer-events:none;background:conic-gradient(from -18deg,#ff4e2a00,#ff4e2ac2 18deg,#ff4e2a00 36deg 360deg);-webkit-mask:radial-gradient(circle,transparent 56%,#000 58%,#000 76%,transparent 78%);mask:radial-gradient(circle,transparent 56%,#000 58%,#000 76%,transparent 78%);filter:drop-shadow(0 0 14px rgba(255,60,32,.72))}.damage-dir.show{animation:damageDirPulse .52s ease-out}@keyframes damageDirPulse{0%{opacity:0}18%{opacity:1}to{opacity:0}}.btn-pause-touch{position:absolute;top:max(10px,env(safe-area-inset-top));left:50%;transform:translate(-50%);display:none;pointer-events:auto;font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);letter-spacing:var(--hud-label-tracking);padding:8px 16px;background:var(--hud-chip-bg);border:var(--hud-chip-border);border-radius:var(--hud-chip-radius);color:var(--hud-gold);box-shadow:var(--hud-chip-shadow)}.pip{position:absolute;color:#b8ff4a;font-size:18px;text-shadow:0 0 10px rgba(150,220,60,.9),0 1px 3px #000;will-change:transform}.pip-charger{color:#ff6a4a;text-shadow:0 0 12px rgba(255,78,42,.95),0 1px 3px #000}.pip-lobber{color:#ffd24a;text-shadow:0 0 12px rgba(255,210,74,.9),0 1px 3px #000}.pip-spitter{color:#54ffd8;text-shadow:0 0 12px rgba(84,255,216,.85),0 1px 3px #000}.pip-boss{color:#ff4ad8;font-size:22px;text-shadow:0 0 14px rgba(255,74,216,.95),0 1px 3px #000}.pip-urgent{animation:pipUrgent .42s steps(2,end) infinite}@keyframes pipUrgent{50%{filter:brightness(1.9);transform-origin:center}}.set-row{display:flex;align-items:center;gap:10px;color:#d8c8a0;font-weight:700;font-size:14px;letter-spacing:1px}.set-row .seg{display:flex;gap:4px}.set-row .seg button{font-size:13px;padding:7px 14px;background:#00000073;color:#d8c8a0;border:1px solid rgba(255,216,122,.35);border-radius:7px;box-shadow:none;letter-spacing:1px}.set-row .seg button.on{background:linear-gradient(180deg,#ffd87a,#e8a440);color:#2a1c08}@media(orientation:portrait){.hud-top{left:10px;right:10px;gap:8px}.hud-left-stack{top:max(86px,calc(env(safe-area-inset-top) + 78px));left:10px;max-width:min(250px,calc(100vw - clamp(116px,37vw,158px) - 30px))}.health-wrap{width:min(52vw,250px);min-width:0}.health-label{font-size:var(--hud-label-size);letter-spacing:var(--hud-label-tracking)}.score-wrap{min-width:clamp(116px,37vw,158px);padding-inline:10px}.score{font-size:var(--hud-number-size)}.btn-pause-touch{left:auto;right:12px;top:max(82px,calc(env(safe-area-inset-top) + 74px));transform:none}.subtitle{bottom:max(104px,calc(env(safe-area-inset-bottom) + 92px));max-width:min(82vw,520px)}.toast{bottom:max(338px,calc(env(safe-area-inset-bottom) + 328px));max-width:min(74vw,430px);font-size:clamp(16px,5vw,25px)}.boss-wrap{top:max(120px,calc(env(safe-area-inset-top) + 110px))}}.btn-swap,.btn-bomb,.btn-overdrive{position:absolute;right:18px;width:74px;height:74px;border-radius:12px;padding:0;overflow:hidden;pointer-events:auto;display:grid;place-items:center;color:#fff4bc;isolation:isolate;background:var(--hud-chip-bg);border:1px solid rgba(255,216,122,.48);outline:1px solid rgba(22,14,5,.9);outline-offset:-5px;box-shadow:var(--hud-chip-shadow);text-align:center;touch-action:manipulation}.btn-swap:before,.btn-bomb:before,.btn-overdrive:before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;background:linear-gradient(180deg,#ffffff24,#ffffff05 31%,#0000002e),radial-gradient(circle at 72% 76%,rgba(0,0,0,.18),transparent 34%);pointer-events:none}.btn-swap:after,.btn-bomb:after,.btn-overdrive:after{content:"";position:absolute;inset:7px;z-index:1;border:1px solid rgba(255,248,185,.08);border-radius:calc(var(--hud-chip-radius) - 1px);pointer-events:none}.btn-swap{bottom:max(268px,calc(env(safe-area-inset-bottom) + 258px));display:none}.btn-overdrive{top:max(142px,calc(env(safe-area-inset-top) + 132px))}.btn-bomb{top:max(218px,calc(env(safe-area-inset-top) + 208px))}.btn-bomb .bomb-fill,.btn-overdrive .overdrive-fill{position:absolute;left:0;right:0;bottom:0;z-index:0;height:0%;transition:height .2s linear}.btn-bomb .bomb-fill{background:linear-gradient(180deg,rgba(255,248,185,.18),transparent 36%),repeating-linear-gradient(115deg,rgba(0,0,0,.12) 0 1px,transparent 1px 9px),linear-gradient(0deg,#ffd87a94,#b8ff4a33)}.btn-overdrive .overdrive-fill{background:linear-gradient(180deg,rgba(255,248,185,.2),transparent 36%),repeating-linear-gradient(115deg,rgba(0,0,0,.1) 0 1px,transparent 1px 9px),linear-gradient(0deg,#b8ff4a8f,#ffd87a38)}.btn-bomb .bomb-icon,.btn-overdrive .overdrive-icon{position:relative;z-index:2;width:52px;height:52px;display:grid;place-items:center;font-size:40px;filter:grayscale(.9) brightness(.7);line-height:1}.btn-overdrive .overdrive-icon{color:var(--hud-toxic-soft);text-shadow:0 3px 0 rgba(55,70,12,.8),0 0 14px rgba(184,255,74,.58)}.btn-bomb .bomb-copy,.btn-overdrive .overdrive-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.btn-bomb .bomb-label,.btn-bomb .bomb-effect,.btn-bomb .bomb-status,.btn-overdrive .overdrive-label,.btn-overdrive .overdrive-effect,.btn-overdrive .overdrive-status{display:block;white-space:nowrap;text-shadow:0 2px 5px rgba(0,0,0,.9)}.btn-bomb .bomb-label,.btn-overdrive .overdrive-label{font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);letter-spacing:var(--hud-label-tracking);color:var(--hud-label-color)}.btn-bomb .bomb-effect,.btn-overdrive .overdrive-effect{margin-top:2px;font-size:12px;font-weight:950;letter-spacing:.05em}.btn-bomb .bomb-effect{color:var(--hud-gold)}.btn-overdrive .overdrive-effect{color:var(--hud-toxic-soft)}.btn-bomb .bomb-status,.btn-overdrive .overdrive-status{margin-top:4px;font-size:9px;font-weight:950;letter-spacing:.08em}.btn-bomb .bomb-status,.btn-overdrive .overdrive-status{color:var(--hud-gold)}.btn-bomb.ready .bomb-icon,.btn-overdrive.ready .overdrive-icon,.btn-overdrive.active .overdrive-icon{filter:none}.btn-bomb.ready{border-color:var(--hud-gold);box-shadow:var(--hud-chip-shadow),0 0 18px #ffd87a7a;animation:bombReadyPulse 1s ease-in-out infinite}.btn-overdrive.ready,.btn-overdrive.active{border-color:var(--hud-toxic-soft);box-shadow:var(--hud-chip-shadow),0 0 18px #b8ff4a75;animation:bombReadyPulse 1s ease-in-out infinite}.btn-overdrive.active{border-color:var(--hud-toxic-soft);box-shadow:var(--hud-chip-shadow),0 0 24px #b8ff4a9e,0 0 14px #ffd87a57}.btn-bomb.ready .bomb-status,.btn-overdrive.ready .overdrive-status,.btn-overdrive.active .overdrive-status{color:var(--hud-toxic);text-shadow:0 0 10px rgba(184,255,74,.45),0 2px 5px rgba(0,0,0,.9)}.btn-overdrive.active .overdrive-status{color:var(--hud-toxic-soft)}.btn-bomb .bomb-key,.btn-overdrive .overdrive-key{display:none}@media(pointer:fine){.btn-bomb .bomb-key,.btn-overdrive .overdrive-key{position:absolute;right:5px;bottom:5px;z-index:3;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border:1px solid rgba(255,216,122,.5);border-radius:calc(var(--hud-chip-radius) - 3px);background:#070603b8;color:#241706;font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);line-height:1;letter-spacing:0;text-shadow:0 1px 2px rgba(0,0,0,.85);color:var(--hud-gold-soft);box-shadow:0 0 0 1px #120b04db,inset 0 1px #ffe9a01f,0 0 8px #ffd87a2e}}.btn-swap .swap-icon{position:relative;z-index:2;width:54px;height:54px;display:block;filter:drop-shadow(0 3px 0 rgba(39,55,16,.8))}.btn-swap.locked{opacity:.5;filter:grayscale(.75)}.btn-swap.has-secondary{border-color:var(--hud-toxic-soft);box-shadow:var(--hud-chip-shadow),0 0 18px #b8ff4a75;animation:swapReadyPulse 1.08s ease-in-out infinite}.btn-swap .swap-icon i{position:absolute;display:block}.btn-swap.weapon-homing .swap-icon:before{content:"";position:absolute;left:15px;top:12px;width:22px;height:30px;border-radius:12px 12px 7px 7px;background:linear-gradient(180deg,#ffe08a,#ff8c42);border:3px solid #5b3617;transform:rotate(38deg)}.btn-swap.weapon-homing .swap-icon:after{content:"";position:absolute;left:4px;top:7px;width:42px;height:42px;border:4px dashed #d8ff6a;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(-26deg)}.btn-swap.weapon-homing .swap-icon i:nth-child(1){right:4px;bottom:8px;width:12px;height:16px;background:radial-gradient(circle at 50% 20%,#fff4bc 0 20%,#ff5e3a 45%,transparent 48%)}.btn-swap.weapon-scatter .swap-icon i{left:24px;top:30px;width:9px;height:9px;border-radius:50%;background:#fff4bc;border:2px solid #5b3617;box-shadow:0 0 0 3px #d8ff6a2e}.btn-swap.weapon-scatter .swap-icon i:nth-child(1){transform:translate(-21px,-15px)}.btn-swap.weapon-scatter .swap-icon i:nth-child(2){transform:translateY(-24px)}.btn-swap.weapon-scatter .swap-icon i:nth-child(3){transform:translate(21px,-15px)}.btn-swap.weapon-scatter .swap-icon:before{content:"";position:absolute;left:8px;bottom:8px;width:38px;height:24px;border-top:6px solid #ff8c42;border-left:6px solid transparent;border-right:6px solid transparent;border-radius:50% 50% 0 0}.btn-swap.weapon-rail .swap-icon:before{content:"";position:absolute;left:4px;top:23px;width:46px;height:9px;border-radius:999px;background:#e9fbff;border:3px solid #0f5b70;box-shadow:0 0 14px #4ad8ffe6}.btn-swap.weapon-rail .swap-icon:after{content:"";position:absolute;right:0;top:17px;border-left:16px solid #4ad8ff;border-top:11px solid transparent;border-bottom:11px solid transparent}.btn-swap.weapon-rail .swap-icon i{left:8px;width:8px;height:8px;border-radius:50%;background:#d8ff6a}.btn-swap.weapon-rail .swap-icon i:nth-child(1){top:8px}.btn-swap.weapon-rail .swap-icon i:nth-child(2){top:23px}.btn-swap.weapon-rail .swap-icon i:nth-child(3){top:38px}.btn-swap.weapon-laser .swap-icon:before{content:"";position:absolute;left:6px;top:21px;width:44px;height:12px;border-radius:999px;background:linear-gradient(90deg,#fff,#ff4ae0);box-shadow:0 0 16px #ff4ae0f2,0 0 3px #fff inset}.btn-swap.weapon-laser .swap-icon:after{content:"";position:absolute;left:2px;top:15px;width:20px;height:24px;border-radius:9px;background:#ffb84a;border:3px solid #5b3617}.btn-swap.weapon-laser .swap-icon i{right:2px;top:19px;width:16px;height:16px;border-radius:50%;background:#fff4bc;box-shadow:0 0 18px #ff4ae0}.bomb-teach{position:absolute;right:18px;top:max(294px,calc(env(safe-area-inset-top) + 284px));max-width:min(300px,calc(100vw - 36px));padding:7px 10px;border:var(--hud-chip-border);border-radius:var(--hud-chip-radius);background:var(--hud-chip-bg);box-shadow:var(--hud-chip-shadow);color:#f6ecd2;font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);letter-spacing:var(--hud-label-tracking);line-height:1.18;text-align:right;text-shadow:0 2px 5px rgba(0,0,0,.9);opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s;pointer-events:none}.bomb-teach.show{opacity:1;transform:translateY(0)}.bomb-teach b{color:var(--hud-gold)}.teach-touch{display:none}@keyframes bombReadyPulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes swapReadyPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08) rotate(-2deg)}}@media(pointer:coarse){.btn-overdrive{top:max(170px,calc(env(safe-area-inset-top) + 160px))}.btn-bomb{top:max(264px,calc(env(safe-area-inset-top) + 254px))}.btn-bomb,.btn-overdrive{width:76px;height:76px;padding:0;border-radius:14px;text-align:center}.btn-swap{width:76px;height:76px;bottom:max(276px,calc(env(safe-area-inset-bottom) + 266px));border-radius:14px}.btn-bomb .bomb-icon,.btn-overdrive .overdrive-icon{width:54px;height:54px;font-size:41px}.btn-bomb .bomb-copy,.btn-overdrive .overdrive-copy{position:absolute}.btn-bomb .bomb-label,.btn-overdrive .overdrive-label{font-size:8px;letter-spacing:.04em}.btn-bomb .bomb-effect,.btn-overdrive .overdrive-effect{display:none}.btn-bomb .bomb-status,.btn-overdrive .overdrive-status{margin-top:2px;font-size:8px;letter-spacing:.04em}.btn-bomb .bomb-key,.btn-overdrive .overdrive-key{display:none}.bomb-teach{right:12px;top:max(358px,calc(env(safe-area-inset-top) + 348px));max-width:min(230px,calc(100vw - 24px));text-align:right}.teach-desktop{display:none}.teach-touch{display:inline}}.crit-marker{position:absolute;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:50%;display:none;-webkit-mask:radial-gradient(circle,transparent 58%,#000 60%,#000 72%,transparent 74%);mask:radial-gradient(circle,transparent 58%,#000 60%,#000 72%,transparent 74%);filter:drop-shadow(0 0 8px rgba(255,215,0,.8));pointer-events:none}.credits{position:absolute;inset:0;overflow:hidden;pointer-events:auto;background:linear-gradient(180deg,#00000040,#0000000d 30% 70%,#00000040)}.credits-scroll{position:absolute;left:50%;transform:translate(-50%);top:100%;text-align:center;color:#f2e8c8;text-shadow:0 2px 6px #000;animation:credits-roll 14s linear forwards}.credits-scroll h2{font-family:Rubik Dirt,sans-serif;font-size:clamp(22px,5vw,40px);color:#b7d24a;margin-bottom:28px}.credits-scroll p{font-size:clamp(13px,2.6vw,18px);margin-bottom:22px;letter-spacing:1px}.credits-scroll b{color:#ffd87a;font-size:1.2em}.credits-end{font-family:Rubik Dirt,sans-serif;color:#ff8c42!important;font-size:clamp(18px,4vw,30px)!important}@keyframes credits-roll{to{top:-120%}}.crit-accum{position:absolute;display:none;font-family:Rubik Dirt,sans-serif;color:gold;text-shadow:0 0 14px rgba(255,215,0,.8),0 2px 4px #000;pointer-events:none}.mods{position:relative;max-width:100%;padding:5px 9px;border:var(--hud-chip-border);border-radius:var(--hud-chip-radius);background:var(--hud-chip-bg);box-shadow:var(--hud-chip-shadow);font-family:var(--hud-font);font-size:var(--hud-label-size);font-weight:var(--hud-label-weight);color:var(--hud-muted);text-shadow:0 1px 3px #000;letter-spacing:var(--hud-label-tracking);text-transform:uppercase;opacity:.86;filter:saturate(.82);overflow-wrap:anywhere}.mods:empty{display:none}.btn-rush{font-size:clamp(12px,2.1vw,15px);padding:8px 16px;background:linear-gradient(180deg,#d8ff6ad1,#8ab82ac7);border:1px solid rgba(216,255,106,.24);border-radius:7px;box-shadow:0 2px #4a6a14,0 5px 12px #00000061}.perks-wrap{background:#00000073;border:1px solid rgba(183,210,74,.3);border-radius:10px;padding:10px 14px;min-width:0;width:100%}.perks-title{font-weight:900;font-size:13px;letter-spacing:1px;color:#b7d24a;text-align:center;margin-bottom:8px}.perks-title b{color:#ffe9a0}.perks-hint{color:#8a7a52;font-weight:400;font-size:11px}.perks-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.perk{display:flex;flex-direction:column;gap:2px;font-size:11px;padding:8px 10px;background:#141008b3;border:1px solid rgba(255,216,122,.4);border-radius:8px;color:#d8c8a0;box-shadow:none;letter-spacing:.5px;min-width:130px}.perk .perk-name{font-weight:900;color:#ffd87a;font-size:12px}.perk .perk-cost{color:#b7d24a;font-weight:900}.perk.locked{opacity:.45}.perk.owned{border-color:#b7d24a}.perk.owned .perk-cost{color:#7ec850}.letterbox{position:absolute;left:0;right:0;height:0;background:#000;transition:height .18s ease-out;pointer-events:none}.letterbox.top{top:0}.letterbox.bottom{bottom:0}.letterbox.on{height:9vh}.mode-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.btn-daily{font-size:clamp(12px,2.1vw,15px);padding:8px 16px;background:linear-gradient(180deg,#8ad8ffd1,#3a8ac8c7);border:1px solid rgba(138,216,255,.24);border-radius:7px;box-shadow:0 2px #1a4a74,0 5px 12px #00000061;color:#0a1c2a}.btn-replay-intro{font-size:clamp(12px,2.1vw,15px);padding:8px 16px;background:#0000006b;border:1px solid rgba(255,216,122,.3);border-radius:7px;box-shadow:none;color:#ffd87a}@media(max-width:760px),(max-height:680px){.title-screen{justify-content:flex-start;gap:12px}.title-panels,.title-settings{grid-template-columns:1fr}.title-screen .hs-wrap{width:100%}.perks-row{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.perk{flex:0 0 138px}}.mg-root{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(10px,2.4vh,20px);padding:max(20px,env(safe-area-inset-top)) clamp(14px,3vw,30px) max(28px,calc(env(safe-area-inset-bottom) + 18px));background:radial-gradient(ellipse at 50% 32%,rgba(60,80,24,.28),transparent 60%),radial-gradient(ellipse at 50% 50%,#0a0e06db,#040502f5);color:#ece6d4;text-align:center;touch-action:none;user-select:none;-webkit-user-select:none;overflow:hidden;--mg-accent: #9adf4a}.mg-sandbox{background:#07090c}.mg-overlay{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.mg-header{display:flex;flex-direction:column;gap:4px;margin-bottom:clamp(6px,1.6vh,14px)}.mg-title{font-family:Rubik Dirt,sans-serif;font-size:clamp(26px,6.4vw,52px);line-height:1;letter-spacing:1.5px;color:var(--mg-accent);text-shadow:0 0 16px color-mix(in srgb,var(--mg-accent) 60%,transparent),0 4px 0 rgba(0,0,0,.6),0 10px 22px rgba(0,0,0,.85)}.mg-blurb{font-size:clamp(12px,2.8vw,17px);color:#c4bca6;text-shadow:0 1px 3px #000;max-width:30ch;margin:0 auto}.mg-stage{position:relative;width:min(680px,94vw);flex:1 1 auto;max-height:64vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.mg-hint{font-size:clamp(12px,2.6vw,16px);color:#b9b298;letter-spacing:.5px;margin:8px 0;text-shadow:0 1px 2px #000}.mg-btn{font-family:Rubik Dirt,sans-serif;font-size:clamp(15px,3.4vw,22px);padding:12px clamp(18px,4vw,30px);margin:6px;color:#14180a;background:linear-gradient(180deg,#d8ee72,#9fce2e);border:none;border-radius:12px;cursor:pointer;box-shadow:0 6px #5c7a14,0 12px 22px #0009;transition:transform .08s,box-shadow .08s}.mg-btn:active{transform:translateY(4px);box-shadow:0 2px #5c7a14,0 6px 12px #0009}.mg-btn:disabled{opacity:.6}.mg-caption{position:absolute;left:50%;bottom:12%;transform:translate(-50%,18px);max-width:80%;padding:9px 16px;border-radius:14px;font-size:clamp(14px,3.2vw,20px);font-weight:800;background:#080a06e6;border:2px solid;opacity:0;transition:opacity .3s,transform .3s;pointer-events:none;z-index:8}.mg-caption-in{opacity:1;transform:translate(-50%)}.mg-caption-sukesh{border-color:#ffb24a;color:#ffd98c}.mg-caption-stacey{border-color:#ff77c2;color:#ffc6e6}.mg-caption-wretch{border-color:#8fd92a;color:#cdff8e}.mg-countdown,.mg-banner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Rubik Dirt,sans-serif;pointer-events:none;z-index:12}.mg-countdown{font-size:clamp(70px,22vw,180px);color:#fff;text-shadow:0 0 30px var(--mg-accent),0 8px 0 rgba(0,0,0,.5)}.mg-count-pop{animation:mgCountPop .7s ease-out}@keyframes mgCountPop{0%{transform:scale(2.2);opacity:0}30%{transform:scale(1);opacity:1}80%{opacity:1}to{transform:scale(.8);opacity:0}}.mg-banner{font-size:clamp(34px,9vw,78px);opacity:0;transform:scale(.6);transition:opacity .3s,transform .3s;text-shadow:0 6px 0 rgba(0,0,0,.5),0 14px 30px rgba(0,0,0,.8)}.mg-banner-in{opacity:1;transform:scale(1)}.mg-win{color:#b6ff5a;text-shadow:0 0 26px rgba(150,255,80,.7),0 6px 0 rgba(0,0,0,.5)}.mg-lose{color:#ff7a6a;text-shadow:0 0 26px rgba(255,90,70,.6),0 6px 0 rgba(0,0,0,.5)}.mg-face{position:absolute;bottom:26%;font-size:clamp(48px,13vw,96px);transition:left .18s ease,right .18s ease,transform .18s ease;filter:drop-shadow(0 6px 8px rgba(0,0,0,.6))}.mg-kiss-heart{position:absolute;left:50%;bottom:30%;transform:translate(-50%);font-size:clamp(60px,16vw,120px);transition:opacity .2s}.mg-kiss-pop{animation:mgPop .7s ease-out}@keyframes mgPop{0%{transform:translate(-50%) scale(.2)}60%{transform:translate(-50%) scale(1.3)}to{transform:translate(-50%) scale(1)}}.mg-spark{position:absolute;transform:translate(-50%,-50%);font-size:28px;animation:mgSpark .6s ease-out forwards;pointer-events:none}@keyframes mgSpark{0%{transform:translate(-50%,-50%) scale(.4);opacity:1}to{transform:translate(-50%,-140%) scale(1.4);opacity:0}}.mg-bar{position:relative;width:86%;height:26px;margin-top:10px;border-radius:14px;background:#0000008c;border:2px solid rgba(255,255,255,.18);overflow:hidden}.mg-bar-zone{position:absolute;top:0;bottom:0;background:linear-gradient(180deg,#ff78c2a6,#ff5ab073);box-shadow:0 0 14px #ff78c299 inset}.mg-bar-needle{position:absolute;top:-4px;bottom:-4px;width:6px;margin-left:-3px;background:#fff;border-radius:3px;box-shadow:0 0 10px #fff}.mg-needle-hit{animation:mgNeedleHit .18s ease-out}@keyframes mgNeedleHit{0%{transform:scaleY(1.6)}to{transform:scaleY(1)}}.mg-bar-shake{animation:mgShake .22s}@keyframes mgShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.mg-timebar{position:relative;width:86%;height:7px;margin-top:12px;border-radius:4px;background:#00000080;overflow:visible}.mg-timebar-fill{height:100%;width:100%;background:linear-gradient(90deg,#ffd24a,#ff5e3a);transition:width .1s linear}.mg-wheel-screen{display:block;padding:0}.mg-wheel-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block}.mg-wheel-screen:before{content:"";position:absolute;inset:0 0 auto;height:26%;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(4,6,2,.78),transparent)}.mg-wheel-screen:after{content:"";position:absolute;inset:auto 0 0;height:24%;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(4,6,2,.82),transparent)}.mg-wheel-screen .mg-header{position:absolute;top:max(20px,env(safe-area-inset-top));left:0;right:0;z-index:2;pointer-events:none}.mg-wheel-name{position:absolute;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 92px);z-index:2;text-align:center;font-family:Rubik Dirt,sans-serif;font-size:clamp(20px,5.2vw,34px);color:#ffe28a;letter-spacing:1px;text-shadow:0 2px 6px #000,0 0 18px rgba(255,200,80,.5);min-height:1.2em;pointer-events:none}.mg-wheel-name-pop{animation:mgCountPop .6s ease-out}.mg-wheel-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 62% 52% at 50% 44%,transparent 40%,rgba(3,5,2,.55) 82%,rgba(2,3,1,.9) 100%)}.mg-wheel-screen .mg-title{color:#ffd23e;-webkit-text-stroke:clamp(1px,.3vw,2px) #3a2400;text-shadow:0 0 18px rgba(255,200,70,.65),0 3px 0 #b5560a,0 6px 0 #5a2d05,0 12px 20px rgba(0,0,0,.85);transform:rotate(-1.5deg);letter-spacing:3px;padding:0 6px}.mg-wheel-screen .mg-blurb{display:inline-block;margin:14px auto 0;padding:5px 16px;border-radius:8px;background:#0608039e;border:1px solid rgba(255,200,70,.25);color:#ffe9a8;font-size:clamp(13px,3vw,18px);font-weight:800;letter-spacing:.5px;text-shadow:0 1px 3px #000}.mg-wheel-spin{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom) + 26px);z-index:2;font-size:clamp(20px,5vw,28px);padding:16px clamp(34px,9vw,56px);color:#2a1800;background:linear-gradient(180deg,#ffd84a,#d8941e 60%,#a86a12);border:2px solid #3a2400;border-radius:14px;box-shadow:0 7px #6a3d08,0 14px 26px #000000a6,inset 0 2px #fff6;text-shadow:0 1px 0 rgba(255,255,255,.4)}.mg-pulse{animation:mgSpinPulse 1.3s ease-in-out infinite}@keyframes mgSpinPulse{0%,to{transform:translate(-50%) scale(1);box-shadow:0 7px #6a3d08,0 14px 26px #000000a6,inset 0 2px #fff6}50%{transform:translate(-50%) scale(1.07);box-shadow:0 7px #6a3d08,0 14px 34px #ffc846b3,inset 0 2px #fff6}}.mg-wheel-spin{transform:translate(-50%)}.mg-wheel-spin:active{transform:translate(-50%) translateY(4px) scale(.97);animation:none}.mg-wheel-splat{position:absolute;left:50%;top:46%;z-index:3;pointer-events:none;transform:translate(-50%,-50%);animation:mgSplat 1s ease-out forwards}@keyframes mgSplat{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}to{transform:translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(1.3) rotate(40deg);opacity:0}}.mg-wheel-double{position:absolute;left:50%;top:40%;z-index:4;pointer-events:none;transform:translate(-50%,-50%) rotate(-8deg);font-family:Rubik Dirt,sans-serif;font-size:clamp(34px,10vw,64px);line-height:.95;color:#fff04a;-webkit-text-stroke:2px #3a2a00;text-shadow:0 0 24px rgba(255,220,60,.9),0 6px 0 #b5560a,0 12px 26px rgba(0,0,0,.7);padding:16px 28px 18px;background:radial-gradient(ellipse at 50% 45%,#080501f2,#060401db);border:5px solid #ffc63a;border-radius:14px;box-shadow:0 0 0 3px #2a1a02,0 0 0 7px #ffc84666,0 10px 30px #000c,inset 0 0 18px #ffbe3c33;animation:mgDoubleSlam .5s cubic-bezier(.2,1.4,.4,1) both}@keyframes mgDoubleSlam{0%{transform:translate(-50%,-50%) rotate(-8deg) scale(2.6);opacity:0}55%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) scale(1.14)}75%{transform:translate(-50%,-50%) rotate(-8deg) scale(.96)}to{transform:translate(-50%,-50%) rotate(-8deg) scale(1);opacity:1}}.mg-wheel-double-name{display:inline-block;margin-top:10px;padding:3px 14px;border-radius:999px;background:#2a1a02;font-family:Rubik Dirt,sans-serif;font-size:.4em;color:#ffe9a8;-webkit-text-stroke:0;text-shadow:0 1px 2px #000;letter-spacing:1px}.mg-wheel-shock{position:absolute;left:50%;top:40%;z-index:3;pointer-events:none;width:60px;height:60px;margin:-30px 0 0 -30px;border-radius:50%;border:12px solid rgba(255,235,150,1);box-shadow:0 0 30px #ffdc6ecc;animation:mgShock .62s ease-out forwards}.mg-wheel-shock:after{content:"";position:absolute;inset:10px;border-radius:50%;border:5px solid rgba(255,210,90,.6)}@keyframes mgShock{0%{transform:scale(.18);opacity:1;border-width:16px}to{transform:scale(13);opacity:0;border-width:1px}}.mg-wheel-flash{position:absolute;left:50%;top:42%;z-index:3;pointer-events:none;width:220px;height:220px;margin:-110px 0 0 -110px;border-radius:50%;background:radial-gradient(circle,#fffffff2,#fff0 70%);animation:mgFlash .26s ease-out forwards}@keyframes mgFlash{0%{transform:scale(.4);opacity:1}to{transform:scale(1.6);opacity:0}}.mg-result{display:flex;flex-direction:column;align-items:center;gap:18px}.mg-result-title{font-family:Rubik Dirt,sans-serif;font-size:clamp(24px,6vw,44px)}.mg-result-row{display:flex;flex-wrap:wrap;justify-content:center}.mg-menu-grid{display:flex;flex-direction:column;gap:8px;align-items:stretch;width:min(380px,86vw)}.mg-chug-screen{display:block;padding:0}.mg-chug-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block}.mg-chug-screen .mg-header{position:absolute;top:max(18px,env(safe-area-inset-top));left:0;right:0;z-index:2;pointer-events:none}.mg-chug-hud{position:absolute;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 22px);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 18px}.mg-chug-hud .mg-bar{width:min(440px,86vw)}.mg-chug-gorge{display:flex;align-items:center;gap:8px}.mg-chug-gorge-label{font-family:Rubik Dirt,sans-serif;font-size:clamp(18px,4.8vw,24px);color:#cfe89a;letter-spacing:1px;text-shadow:0 2px 3px #000}.mg-chug-gorge-bar{position:relative;width:min(320px,66vw);height:clamp(18px,4.6vw,24px);border-radius:12px;background:#0009;border:2px solid rgba(255,255,255,.18);overflow:hidden}.mg-chug-gorge-fill{height:100%;width:0%;background:linear-gradient(90deg,#9fce2e,#d8ee72);transition:width .12s ease,background .2s}.mg-chug-danger{animation:mgChugDanger .4s ease-in-out infinite}@keyframes mgChugDanger{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.mg-chug-gorge-pulse .mg-chug-gorge-bar{animation:mgGorgePulse .36s ease-out}@keyframes mgGorgePulse{0%{box-shadow:0 0 #ff5a2d00;transform:scale(1)}45%{box-shadow:0 0 22px #ff5a2de6;transform:scale(1.08)}to{box-shadow:0 0 #ff5a2d00;transform:scale(1)}}.mg-chug-edge{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;background:radial-gradient(ellipse 75% 62% at 50% 46%,transparent 50%,rgba(120,210,40,.5) 80%,rgba(70,150,15,.88) 100%);transition:opacity .15s}.mg-chug-screen .mg-caption{bottom:auto;top:18%;max-width:70%;font-size:clamp(16px,4.2vw,22px)}.mg-chug-screen .mg-chug-chip{bottom:auto;top:38%}.mg-chug-gorge-bar:after{content:"";position:absolute;right:0;top:0;bottom:0;width:22%;background:repeating-linear-gradient(45deg,#ff462899,#ff462899 5px,#780c0099 5px 10px);pointer-events:none}.mg-chug-num{position:absolute;left:26%;top:48%;z-index:3;pointer-events:none;transform:translate(-50%,-50%);font-family:Rubik Dirt,sans-serif;font-size:clamp(32px,8.5vw,54px);color:#aef06a;text-shadow:0 3px 6px #000,0 0 12px rgba(174,240,106,.45);animation:mgChip .8s ease-out forwards}.mg-chug-stakes{position:absolute;top:max(64px,calc(env(safe-area-inset-top) + 52px));right:14px;z-index:2;pointer-events:none;font-family:Rubik Dirt,sans-serif;font-size:clamp(16px,4.2vw,22px);color:#2a1800;background:linear-gradient(180deg,#ffd84a,#d8941e);padding:6px 12px;border-radius:8px;border:2px solid #3a2400;box-shadow:0 3px #6a3d08;transform:rotate(4deg)}.mg-chug-chip{position:absolute;left:50%;bottom:130px;z-index:3;pointer-events:none;transform:translate(-50%);font-family:Rubik Dirt,sans-serif;font-size:clamp(36px,10vw,70px);color:#d8ee72;text-shadow:0 3px 7px #000,0 0 16px rgba(216,238,114,.42);animation:mgChip .7s ease-out forwards;white-space:nowrap}.mg-chip-perfect{color:#ffe24a;font-size:clamp(42px,11vw,78px);text-shadow:0 0 18px rgba(255,210,70,.95),0 3px 7px #000}.mg-chip-miss{color:#ff7048;text-shadow:0 0 18px rgba(255,72,36,.88),0 3px 7px #000}@keyframes mgChip{0%{transform:translate(-50%) translateY(10px) scale(.6);opacity:0}25%{opacity:1;transform:translate(-50%) translateY(0) scale(1.1)}to{transform:translate(-50%) translateY(-50px) scale(1);opacity:0}}.mg-bar-label{position:absolute;left:8px;top:-22px;font-family:Rubik Dirt,sans-serif;font-size:13px;color:#ffd0e6;letter-spacing:1px;text-shadow:0 1px 2px #000}.mg-chug-hud .mg-bar-label{font-size:clamp(18px,4.8vw,24px);top:-31px}.mg-chug-hud .mg-hint{font-size:clamp(17px,4.5vw,22px);text-align:center;line-height:1.18;max-width:min(500px,94vw)}.mg-chug-stein-label{position:absolute;top:37%;z-index:2;pointer-events:none;transform:translate(-50%);font-family:Rubik Dirt,sans-serif;font-size:clamp(18px,4.6vw,28px);color:#ffe9a8;text-shadow:0 3px 5px #000,0 0 12px rgba(0,0,0,.7);letter-spacing:1px}.mg-chug-you-label{left:34%}.mg-chug-foe-label{left:66%}.mg-chug-instruction,.mg-dodge-instruction{position:absolute;left:50%;top:31%;z-index:6;pointer-events:none;width:min(92vw,860px);transform:translate(-50%,-50%) translateY(22px) scale(.9);opacity:0;transition:opacity .4s ease,transform .42s cubic-bezier(.2,1.25,.34,1);text-align:center;font-family:Rubik Dirt,sans-serif;color:#fff2a8;text-shadow:0 4px 0 rgba(0,0,0,.55),0 0 24px rgba(0,0,0,.9)}.mg-chug-instruction-in,.mg-dodge-instruction-in{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1)}.mg-chug-instruction-line,.mg-dodge-instruction-line{font-size:clamp(30px,8.4vw,72px);line-height:.98}.mg-chug-instruction-sub,.mg-dodge-instruction-sub{margin-top:clamp(10px,2vh,18px);font-size:clamp(19px,4.8vw,34px);line-height:1.12;color:#d8ff91}.mg-dodge-instruction-small{margin-top:clamp(8px,1.6vh,14px);font-size:clamp(15px,3.7vw,24px);line-height:1.1;color:#fff}.mg-chug-end,.mg-dodge-end{position:absolute;inset:0;z-index:12;pointer-events:none;display:flex;align-items:center;justify-content:center;opacity:0;background:#0c060200;transition:opacity .36s ease,background .52s ease}.mg-chug-end-in,.mg-dodge-end-in{opacity:1;background:#0c06027a}.mg-chug-end-stamp,.mg-dodge-end-stamp{font-family:Rubik Dirt,sans-serif;font-size:clamp(42px,12vw,96px);line-height:.92;text-align:center;padding:clamp(15px,3vw,28px) clamp(22px,5vw,44px);border:5px solid #ffc63a;border-radius:14px;background:radial-gradient(ellipse at 50% 45%,#080501f2,#060401db);color:#fff04a;-webkit-text-stroke:2px #3a2a00;text-shadow:0 0 24px rgba(255,220,60,.9),0 6px 0 #b5560a,0 12px 26px rgba(0,0,0,.7);box-shadow:0 0 0 3px #2a1a02,0 0 0 7px #ffc84666,0 10px 30px #000c,inset 0 0 18px #ffbe3c33;transform:rotate(-7deg);animation:mgDoubleSlam .5s cubic-bezier(.2,1.4,.4,1) both}.mg-chug-end-lose,.mg-dodge-end-lose .mg-dodge-end-stamp{color:#ffb39a;border-color:#ff6f3f;text-shadow:0 0 24px rgba(255,95,50,.8),0 6px 0 #64200e,0 12px 26px rgba(0,0,0,.75)}.mg-dodge-lives-label,.mg-dodge-time-label{font-family:Rubik Dirt,sans-serif;color:#ffe9a8;text-shadow:0 2px 4px #000,0 0 10px rgba(0,0,0,.6);letter-spacing:1px}.mg-dodge-lives-label{font-size:clamp(13px,3.5vw,17px);margin-right:2px}.mg-dodge-time-label{position:absolute;left:50%;bottom:10px;transform:translate(-50%);white-space:nowrap;font-size:clamp(13px,3.4vw,18px);z-index:1}.mg-bar-zone-danger{background:linear-gradient(180deg,#78d228b3,#5aaa1480)!important;box-shadow:0 0 16px #78d228b3 inset!important}.mg-bar-zone-hit{animation:mgZoneHit .2s ease-out}@keyframes mgZoneHit{0%{filter:brightness(2.2)}to{filter:brightness(1)}}.mg-bar-shake-loop{animation:mgShake .18s linear infinite}@media(max-aspect-ratio:1/1){.mg-chug-screen .mg-header{top:max(12px,env(safe-area-inset-top))}.mg-chug-screen .mg-blurb{display:none}.mg-chug-hud{padding:0 12px}.mg-chug-hud .mg-bar{width:min(430px,92vw)}.mg-chug-gorge-bar{width:min(290px,68vw)}.mg-chug-screen .mg-caption{top:15%;max-width:84%}.mg-chug-screen .mg-chug-chip{top:34%}.mg-chug-num{top:43%}.mg-chug-stein-label{top:39%}.mg-chug-you-label{left:31%}.mg-chug-foe-label{left:69%}.mg-chug-instruction,.mg-dodge-instruction{top:35%}}.mg-3d-screen{display:block;padding:0}.mg-scene-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block}.mg-3d-screen:before{content:"";position:absolute;inset:0 0 auto;height:22%;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(4,6,2,.7),transparent)}.mg-3d-screen:after{content:"";position:absolute;inset:auto 0 0;height:22%;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(4,6,2,.75),transparent)}.mg-3d-screen .mg-header{position:absolute;top:max(18px,env(safe-area-inset-top));left:0;right:0;z-index:2;pointer-events:none}.mg-3d-hud{position:absolute;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 20px);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 18px}.mg-3d-stat{position:absolute;top:max(64px,calc(env(safe-area-inset-top) + 50px));z-index:2;pointer-events:none;font-family:Rubik Dirt,sans-serif;font-size:15px;color:#ffe9a8;text-shadow:0 2px 4px #000,0 0 10px rgba(0,0,0,.6)}.mg-3d-stat.left{left:14px}.mg-3d-stat.right{right:14px;text-align:right}.cine-thought-bubble{position:absolute;top:0;left:-9999px;width:clamp(140px,27vw,250px);aspect-ratio:1;z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none;object-fit:contain;filter:drop-shadow(0 9px 18px rgba(0,0,0,.42));opacity:0;transform:scale(.3);transform-origin:center;will-change:transform,opacity}.cine-thought-bubble.is-visible{opacity:1;animation:cineThoughtPuffIn .3s cubic-bezier(.18,1.38,.28,1) both,cineThoughtBob 3.2s ease-in-out .3s infinite}.cine-thought-bubble.is-hiding{animation:cineThoughtPuffOut .2s ease-in both}@media(max-height:560px),(orientation:landscape)and (max-height:680px){.cine-thought-bubble{width:clamp(110px,20vw,200px)}}@media(max-width:540px)and (orientation:portrait){.cine-thought-bubble{width:clamp(120px,34vw,200px)}}@keyframes cineThoughtPuffIn{0%{opacity:0;transform:scale(.3) translateY(10px)}70%{opacity:1;transform:scale(1.08) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes cineThoughtPuffOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.82) translateY(-8px)}}@keyframes cineThoughtBob{0%,to{transform:scale(1) translateY(0) rotate(-.5deg)}50%{transform:scale(1) translateY(-8px) rotate(.7deg)}}@keyframes cineGrain{0%{transform:translate(0)}to{transform:translate(-6%,4%)}}
