*{box-sizing:border-box;margin:0;padding:0}html,body{overscroll-behavior:none;height:100%}body{color:#fff;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#1a1a2e;font-family:Avenir Next,-apple-system,Segoe UI,sans-serif;position:fixed;inset:0;overflow:hidden}#app{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:absolute;inset:0}.launcher{-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:flex-start;align-items:center;gap:4vmin;height:100%;padding:4vmin;display:flex;overflow-y:auto}.launcher-title{letter-spacing:.02em;font-size:clamp(28px,6vmin,56px)}.launcher-grid{flex-wrap:wrap;justify-content:center;gap:4vmin;width:100%;display:flex}.launcher-tile{aspect-ratio:4/3;color:#fff;background:#16213e;border:4px solid #0f3460;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:2vmin;width:min(40vw,360px);text-decoration:none;transition:transform .1s;display:flex}.launcher-tile:active{background:#0f3460;transform:scale(.95)}.launcher-tile-emoji{font-size:clamp(48px,12vmin,110px);line-height:1}.launcher-tile-title{font-size:clamp(20px,4vmin,36px);font-weight:700}.game-screen{height:100%;position:relative}.home-btn{z-index:10;background:#ffffff1f;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;font-size:34px;text-decoration:none;display:flex;position:absolute;top:10px;left:10px}.home-btn:active{background:#ffffff40}.game-root{touch-action:none;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.game-header{align-items:center;gap:24px;padding:8px 0 16px;font-size:clamp(18px,3.5vmin,28px);font-weight:700;display:flex}.big-button{color:#1a1a2e;cursor:pointer;background:#ffd93d;border:none;border-radius:20px;min-width:220px;min-height:80px;padding:18px 36px;font-family:inherit;font-size:clamp(22px,4vmin,34px);font-weight:800}.big-button:active{transform:scale(.95)}.win-overlay{z-index:20;text-align:center;background:#1a1a2eeb;flex-direction:column;justify-content:center;align-items:center;gap:3vmin;animation:.3s pop-in;display:flex;position:absolute;inset:0}.win-overlay-emoji{font-size:clamp(64px,16vmin,140px);line-height:1;animation:.8s infinite alternate bounce}.win-overlay-text{font-size:clamp(26px,6vmin,52px);font-weight:800}.win-overlay-sub{color:#ffd93d;font-size:clamp(18px,3.5vmin,30px);font-weight:700}@keyframes pop-in{0%{opacity:0;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-3vmin)}}.memory-grid{touch-action:none;grid-template-columns:repeat(4,1fr);gap:clamp(8px,1.5vmin,16px);width:min(92vw,118vh,760px);display:grid}.memory-card{aspect-ratio:1;perspective:600px;cursor:pointer;background:0 0;border:none;min-width:80px;min-height:80px;padding:0;position:relative}.memory-card-inner{transform-style:preserve-3d;transition:transform .3s;position:absolute;inset:0}.memory-card.flipped .memory-card-inner{transform:rotateY(180deg)}.memory-card.matched .memory-card-inner{transform:rotateY(180deg)scale(.92)}.memory-face{backface-visibility:hidden;border-radius:16px;justify-content:center;align-items:center;font-size:clamp(32px,8vmin,64px);display:flex;position:absolute;inset:0}.memory-face-front{background:#e94560}.memory-face-back{background:#16213e;border:3px solid #0f3460;transform:rotateY(180deg)}.memory-card.matched .memory-face-back{background:#0f3460;border-color:#53d769}@font-face{font-family:PressStart2P;src:url(/fonts/PressStart2P.woff2)format("woff2");font-display:swap}.pa-wrap{flex-direction:column;align-items:center;font-family:PressStart2P,monospace;display:flex;position:relative}.pa-hud{z-index:15;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:8px;left:12px;right:12px}@media (width<=500px){.pa-hud{left:64px}}.pa-hud-col{flex-direction:column;gap:3px;display:flex}.pa-hud-right{align-items:flex-end}.pa-hud-center{flex-direction:column;align-items:center;display:flex}.pa-label{color:#ffffff59;letter-spacing:2px;font-size:7px}.pa-score{color:#ffd94d;text-shadow:0 0 12px #ffd94d66;font-size:14px}.pa-chain{color:#c77dff;text-shadow:0 0 14px #c77dff80;min-height:12px;font-size:12px}.pa-stopped{color:#4da6ff;opacity:0;margin-top:2px;font-size:7px}.pa-stopped.show{opacity:.7}.pa-speed{color:#4da6ff;font-size:12px}.pa-frame{background:#00000059;border:2px solid #ffffff1f;border-radius:12px;padding:3px;position:relative}.pa-frame.pa-stop-glow{animation:1s ease-in-out infinite pa-glow}@keyframes pa-glow{0%,to{border-color:#4da6ff26}50%{border-color:#4da6ff59}}.pa-frame.pa-danger:after{content:"";pointer-events:none;z-index:10;background:#ff323240;border-radius:12px;animation:.5s ease-in-out infinite pa-danger-pulse;position:absolute;inset:-2px}@keyframes pa-danger-pulse{0%,to{opacity:0}50%{opacity:.7}}.pa-board{touch-action:none;border-radius:8px;position:relative;overflow:hidden}.pa-row{gap:2px;margin-bottom:2px;display:flex}.pa-row.pa-next{opacity:.3}.pa-cell{width:var(--pa-cell,40px);height:var(--pa-cell,40px);font-size:calc(var(--pa-cell,40px) * .4);color:#ffffffe6;background:linear-gradient(135deg, var(--pc1), var(--pc2));text-shadow:0 0 8px var(--pc);box-shadow:0 2px 6px var(--pc3);border:2px solid #ffffff26;border-color:#ffffff26 #00000026 #0003 #ffffff26;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .1s ease-out;display:flex}.pa-c0{--pc:#ff4d6a;--pc1:#ff4d6add;--pc2:#ff4d6a88;--pc3:#ff4d6a33}.pa-c1{--pc:#4da6ff;--pc1:#4da6ffdd;--pc2:#4da6ff88;--pc3:#4da6ff33}.pa-c2{--pc:#4dff88;--pc1:#4dff88dd;--pc2:#4dff8888;--pc3:#4dff8833}.pa-c3{--pc:#ffd94d;--pc1:#ffd94ddd;--pc2:#ffd94d88;--pc3:#ffd94d33}.pa-c4{--pc:#c77dff;--pc1:#c77dffdd;--pc2:#c77dff88;--pc3:#c77dff33}.pa-c5{--pc:#ff914d;--pc1:#ff914ddd;--pc2:#ff914d88;--pc3:#ff914d33}.pa-cell.pa-empty{box-shadow:none;text-shadow:none;background:0 0;border-color:#0000}.pa-cell.pa-falling{z-index:3;transition:none;position:relative}.pa-cell.pa-swap{transform:scale(1.06)}.pa-cell.pa-drag{z-index:5;box-shadow:0 0 20px var(--pc), 0 0 0 2px #ffffff80;position:relative;transform:scale(1.1)}.pa-cell.pa-clearing{box-shadow:none;text-shadow:none;background:#fff;border-color:#0000;animation:.4s forwards pa-clear}@keyframes pa-clear{0%{opacity:1;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}to{opacity:0;transform:scale(0)}}.pa-hint{text-align:center;color:#ffffff26;opacity:0;pointer-events:none;font-size:8px;line-height:2;transition:opacity .3s;position:absolute;top:12%;left:0;right:0}.pa-hint.show{opacity:1}.pa-combo{text-align:center;color:#ffd94d;text-shadow:0 2px 16px #ffd94dcc;z-index:20;opacity:0;pointer-events:none;font-size:13px;position:absolute;top:38%;left:0;right:0}.pa-combo.show{animation:1.2s forwards pa-combo-pop}@keyframes pa-combo-pop{0%{opacity:0;transform:scale(.5)}20%{opacity:1;transform:scale(1.2)}40%{opacity:1;transform:scale(1)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.pa-overlay{z-index:30;text-align:center;background:#000000eb;flex-direction:column;justify-content:center;align-items:center;gap:18px;animation:.4s pa-fade-in;display:flex;position:absolute;inset:0}@keyframes pa-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.pa-title{color:#ffd94d;text-shadow:0 0 20px #ffd94d80;font-size:18px;line-height:2}.pa-title-over{color:#ff4d6a;text-shadow:0 0 30px #ff4d6a80}.pa-instruction{align-items:center;gap:10px;display:flex}.pa-overlay .pa-cell{width:36px;height:36px;font-size:15px}.pa-inst-arrow{font-size:14px}.pa-inst-label{color:#aaa;font-size:7px;line-height:1.8}.pa-rules{color:#777;font-size:7px;line-height:2}.pa-rules-hl{color:#4da6ff}.pa-final-score{color:#ffd94d;font-size:13px}.pa-best{color:#4dff88;font-size:8px}.pa-final-level{color:#555;font-size:7px}.pa-button{color:#4dff88;background:#4dff881a;border:2px solid #4dff8859;border-radius:10px;margin-top:8px;padding:16px 32px;font-family:inherit;font-size:11px}.pa-button:active{background:#4dff8840}.pa-button.pa-button-small{color:#fff9;background:#ffffff0f;border-color:#fff3;padding:10px 20px;font-size:9px}.pa-button.pa-blink{animation:2s ease-in-out infinite pa-blink}@keyframes pa-blink{0%,to{opacity:.55}50%{opacity:1}}.pa-risebar{z-index:15;pointer-events:none;background:#ffffff14;border-radius:2px;height:4px;position:absolute;bottom:8px;left:12px;right:12px;overflow:hidden}.pa-risefill{background:linear-gradient(90deg,#4da6ff,#4dff88);border-radius:2px;width:0;height:100%}.pa-risefill.pa-rise-danger{background:linear-gradient(90deg,#ff4d6a,#ff914d)}.bb-wrap{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.bb-hud{z-index:5;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:12px;left:86px;right:16px}.bb-hud-col{flex-direction:column;gap:2px;display:flex}.bb-hud-right{align-items:flex-end}.bb-label{letter-spacing:2px;color:#fff6;font-size:12px;font-weight:700}.bb-score{color:#ffd94d;text-shadow:0 0 14px #ffd94d59;font-size:clamp(22px,4vmin,32px);font-weight:800}.bb-best{color:#4dff88;text-shadow:0 0 14px #4dff884d;font-size:clamp(22px,4vmin,32px);font-weight:800}.bb-main{align-items:center;gap:calc(var(--bb-cell,40px) * .35);flex-direction:column;display:flex}.bb-wrap.bb-horiz .bb-main{flex-direction:row}.bb-grid{grid-template-columns:repeat(8, var(--bb-cell,40px));grid-auto-rows:var(--bb-cell,40px);gap:var(--bb-gap,4px);padding:var(--bb-gap,4px);touch-action:none;background:#00000059;border:2px solid #ffffff1f;border-radius:14px;display:grid}.bb-cell{background:#ffffff0f;border-radius:20%}.bb-f1{--bc:#ff4d6a;--bc1:#ff8095;--bc2:#ff4d6a99}.bb-f2{--bc:#4da6ff;--bc1:#85c2ff;--bc2:#4da6ff99}.bb-f3{--bc:#4dff88;--bc1:#9affc0;--bc2:#4dff8899}.bb-f4{--bc:#ffd94d;--bc1:#ffe78a;--bc2:#ffd94d99}.bb-f5{--bc:#c77dff;--bc1:#dcaaff;--bc2:#c77dff99}.bb-f6{--bc:#ff914d;--bc1:#ffb285;--bc2:#ff914d99}.bb-fill,.bb-pc{background:linear-gradient(145deg, var(--bc1), var(--bc) 65%);border:2px solid #ffffff4d;border-color:#ffffff4d #0003 #00000040 #ffffff4d;box-shadow:0 2px 6px #00000059}.bb-pc{border-radius:22%}.bb-cell.bb-hint{background:var(--bc2);border:2px solid var(--bc);box-shadow:none}.bb-cell.bb-glow{filter:brightness(1.45)saturate(1.2);border-color:#ffffffd9}.bb-cell.bb-pop{z-index:2;animation:.35s forwards bb-pop;position:relative}@keyframes bb-pop{0%{filter:brightness(1.7);transform:scale(1)}55%{opacity:1;filter:brightness(2);transform:scale(1.15)}to{opacity:0;transform:scale(0)}}.bb-tray{gap:calc(var(--bb-cell,40px) * .3);touch-action:none;display:flex}.bb-wrap.bb-horiz .bb-tray{flex-direction:column}.bb-slot{width:calc(var(--bb-cell,40px) * 2.6);height:calc(var(--bb-cell,40px) * 2.6);touch-action:none;background:#ffffff0d;border:2px solid #ffffff14;border-radius:16px;justify-content:center;align-items:center;transition:opacity .2s;display:flex}.bb-slot.bb-dead{opacity:.35;filter:grayscale(.8)}.bb-slot.bb-lifted .bb-piece{opacity:0}.bb-piece{gap:calc(var(--bb-gap,4px) * .5);pointer-events:none;display:grid}.bb-piece.bb-ghost{z-index:60;gap:var(--bb-gap,4px);opacity:.92;filter:drop-shadow(0 8px 16px #00000073);position:fixed;top:0;left:0}.bb-popup{z-index:25;pointer-events:none;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.bb-popup.show{animation:1.1s forwards bb-popup-pop}.bb-popup-main{color:#ffd94d;text-shadow:0 3px #00000059,0 0 24px #ffd94dcc;font-size:clamp(34px,8vmin,64px);font-weight:900}.bb-popup-sub{color:#c77dff;text-shadow:0 2px #00000059,0 0 20px #c77dffcc;font-size:clamp(20px,4.5vmin,36px);font-weight:800}@keyframes bb-popup-pop{0%{opacity:0;transform:scale(.5)}18%{opacity:1;transform:scale(1.15)}35%{transform:scale(1)}75%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-24px)}}.dots-wrap{--dots-c1:#ff4d6a;--dots-c2:#4da6ff;--dots-c3:#4dff88;--dots-c4:#ffd94d;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.dots-hud{z-index:5;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:12px;left:86px;right:16px}.dots-hud-col{flex-direction:column;gap:2px;display:flex}.dots-hud-right{align-items:flex-end}.dots-label{letter-spacing:2px;color:#fff6;font-size:12px;font-weight:700}.dots-score{color:#ffd94d;text-shadow:0 0 14px #ffd94d59;font-size:clamp(22px,4vmin,32px);font-weight:800}.dots-best{color:#4dff88;text-shadow:0 0 14px #4dff884d;font-size:clamp(22px,4vmin,32px);font-weight:800}.dots-board{touch-action:none;background:#00000059;border:2px solid #ffffff1f;border-radius:18px;position:relative}.dots-line{z-index:1;pointer-events:none;opacity:.9;position:absolute;top:0;left:0}.dots-spot{z-index:2;width:var(--dots-dot,36px);height:var(--dots-dot,36px);pointer-events:none;transition:transform .3s cubic-bezier(.22,.8,.35,1.1);position:absolute;top:0;left:0}.dots-core{background:radial-gradient(circle at 35% 30%, var(--dc1), var(--dc) 70%);border-radius:50%;width:100%;height:100%;transition:transform .12s;box-shadow:0 2px 6px #00000059}.dots-f1{--dc:#ff4d6a;--dc1:#ff8095}.dots-f2{--dc:#4da6ff;--dc1:#85c2ff}.dots-f3{--dc:#4dff88;--dc1:#9affc0}.dots-f4{--dc:#ffd94d;--dc1:#ffe78a}.dots-spot.dots-active .dots-core{box-shadow:0 0 16px var(--dc);transform:scale(1.35)}.dots-spot.dots-glow .dots-core{animation:.4s infinite alternate dots-pulse}@keyframes dots-pulse{0%{transform:scale(1.1)}to{filter:brightness(1.4);transform:scale(1.4)}}.dots-spot.dots-pop{z-index:3}.dots-spot.dots-pop .dots-core{animation:.3s forwards dots-pop}@keyframes dots-pop{0%{filter:brightness(1.6);transform:scale(1.2)}to{opacity:0;transform:scale(2)}}.dots-popup{z-index:25;pointer-events:none;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.dots-popup.show{animation:1.1s forwards dots-popup-pop}.dots-popup-main{color:#ffd94d;text-shadow:0 3px #00000059,0 0 24px #ffd94dcc;font-size:clamp(34px,8vmin,64px);font-weight:900}.dots-popup-sub{color:#c77dff;text-shadow:0 2px #00000059,0 0 20px #c77dffcc;font-size:clamp(20px,4.5vmin,36px);font-weight:800}@keyframes dots-popup-pop{0%{opacity:0;transform:scale(.5)}18%{opacity:1;transform:scale(1.15)}35%{transform:scale(1)}75%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-24px)}}.t48-wrap{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.t48-hud{z-index:5;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:12px;left:86px;right:16px}.t48-hud-col{flex-direction:column;gap:2px;display:flex}.t48-hud-right{align-items:flex-end}.t48-label{letter-spacing:2px;color:#fff6;font-size:12px;font-weight:700}.t48-score{color:#ffd94d;text-shadow:0 0 14px #ffd94d59;font-size:clamp(22px,4vmin,32px);font-weight:800}.t48-best{color:#4dff88;text-shadow:0 0 14px #4dff884d;font-size:clamp(22px,4vmin,32px);font-weight:800}.t48-board{touch-action:none;background:#00000059;border:2px solid #ffffff1f;border-radius:14px;position:relative}.t48-bg{grid-template-columns:repeat(4, var(--t48-cell,80px));grid-auto-rows:var(--t48-cell,80px);gap:var(--t48-gap,10px);padding:var(--t48-gap,10px);display:grid;position:absolute;inset:0}.t48-cell{background:#ffffff0f;border-radius:10px}.t48-tile{width:var(--t48-cell,80px);height:var(--t48-cell,80px);color:#776e65;pointer-events:none;background:#eee4da;border-radius:10px;justify-content:center;align-items:center;font-weight:800;transition:transform .1s ease-out;display:flex;position:absolute;top:0;left:0;box-shadow:0 2px 6px #00000059}.t48-v2{background:#eee4da}.t48-v4{background:#ede0c8}.t48-v8{color:#fff;background:#f2b179}.t48-v16{color:#fff;background:#f59563}.t48-v32{color:#fff;background:#f67c5f}.t48-v64{color:#fff;background:#f65e3b}.t48-v128{color:#fff;background:#edcf72}.t48-v256{color:#fff;background:#edcc61}.t48-v512{color:#fff;background:#edc850}.t48-v1024{color:#fff;background:#edc53f}.t48-v2048{color:#fff;background:#edc22e;box-shadow:0 0 24px #edc22eb3}.t48-vbig{color:#fff;background:#3c3a32}.t48-tile.t48-new{animation:.18s 60ms backwards t48-in}@keyframes t48-in{0%{scale:0}to{scale:1}}.t48-tile.t48-merge{animation:.18s t48-pop}@keyframes t48-pop{0%{scale:1}50%{scale:1.2}to{scale:1}}.t48-popup{z-index:25;pointer-events:none;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.t48-popup.show{animation:1.4s forwards dots-popup-pop}.t48-popup-main{color:#ffd94d;text-shadow:0 3px #00000059,0 0 24px #ffd94dcc;font-size:clamp(40px,10vmin,80px);font-weight:900}.t48-popup-sub{color:#4dff88;text-shadow:0 2px #00000059,0 0 20px #4dff88cc;font-size:clamp(20px,4.5vmin,36px);font-weight:800}.fb-wrap{width:100%;height:100%;position:relative;overflow:hidden}.fb-canvas{touch-action:none;position:absolute;inset:0}.hm-wrap{flex-direction:column;justify-content:center;align-items:center;gap:clamp(8px,2vmin,20px);width:100%;height:100%;padding:8px;display:flex;position:relative}.hm-header{font-size:clamp(16px,3vmin,24px);font-weight:700}.hm-top{align-items:center;gap:clamp(16px,5vmin,56px);display:flex}.hm-figure{stroke-linecap:round;fill:none;width:clamp(110px,22vmin,200px)}.hm-gallows{stroke:#ffffff73;stroke-width:4px}.hm-part{stroke:#ffd94d;stroke-width:4px;opacity:0;transition:opacity .25s}.hm-part.hm-show{opacity:1}.hm-word-area{flex-direction:column;align-items:center;gap:clamp(8px,2vmin,18px);display:flex}.hm-hint{text-align:center;color:#ffffffd9;max-width:clamp(180px,52vmin,380px);font-size:clamp(15px,3.4vmin,26px);font-style:italic;line-height:1.3}.hm-word{gap:clamp(6px,1.4vmin,12px);display:flex}.hm-letter{color:#4dff88;border-bottom:4px solid #ffffff80;justify-content:center;align-items:center;width:clamp(34px,7vmin,60px);height:clamp(44px,9vmin,76px);font-size:clamp(26px,5.5vmin,48px);font-weight:800;display:flex}.hm-keys{flex-direction:column;align-items:center;gap:clamp(5px,1.2vmin,10px);display:flex}.hm-key-row{gap:clamp(5px,1.2vmin,10px);display:flex}.hm-key{color:#fff;touch-action:none;background:#16213e;border:3px solid #0f3460;border-radius:14px;width:clamp(42px,9vmin,72px);height:clamp(42px,9vmin,72px);font-family:inherit;font-size:clamp(20px,4vmin,34px);font-weight:800}.hm-key:active{background:#0f3460}.hm-key.hm-hit{color:#4dff88;background:#4dff8840;border-color:#4dff88}.hm-key.hm-missed{opacity:.3}.px-wrap{flex-direction:column;justify-content:center;align-items:center;gap:clamp(8px,1.6vmin,18px);width:100%;height:100%;padding:8px;display:flex;position:relative}.px-grid{aspect-ratio:1;touch-action:none;background:#00000059;border:2px solid #ffffff1f;border-radius:12px;grid-template-columns:repeat(12,1fr);width:min(86vw,56vh,520px);display:grid;overflow:hidden}.px-cell{transition:background-color .18s}.px-c1{background:#ff4d6a}.px-c2{background:#4da6ff}.px-c3{background:#4dff88}.px-c4{background:#ffd94d}.px-c5{background:#c77dff}.px-cell.px-new{animation:.3s px-pulse}@keyframes px-pulse{0%{filter:brightness(1.7)}to{filter:brightness()}}.px-palette{gap:clamp(10px,2.4vmin,22px);display:flex}.px-swatch{cursor:pointer;touch-action:none;border:4px solid #ffffff59;border-radius:18px;width:clamp(54px,11vmin,84px);height:clamp(54px,11vmin,84px);transition:transform .1s}.px-swatch:active{transform:scale(.9)}.px-swatch.px-current{opacity:.35;border-color:#ffffff26}.jz-wrap{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.jz-hud{z-index:5;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:12px;left:86px;right:16px}.jz-hud-col{flex-direction:column;gap:2px;display:flex}.jz-hud-right{align-items:flex-end}.jz-hud-mid{align-items:center}.jz-label{letter-spacing:2px;color:#fff6;font-size:12px;font-weight:700}.jz-level{color:#ffd94d;text-shadow:0 0 14px #ffd94d59;font-size:clamp(22px,4vmin,32px);font-weight:800}.jz-fill{color:#4dff88;text-shadow:0 0 14px #4dff884d;font-size:clamp(22px,4vmin,32px);font-weight:800}.jz-lives{letter-spacing:2px;font-size:clamp(18px,3.4vmin,28px)}.jz-canvas{touch-action:none;border-radius:10px}.jz-popup{z-index:25;color:#ffd94d;text-shadow:0 3px #00000059,0 0 24px #ffd94dcc;pointer-events:none;opacity:0;justify-content:center;align-items:center;font-size:clamp(34px,8vmin,64px);font-weight:900;display:flex;position:absolute;inset:0}.jz-popup.show{animation:1.4s forwards dots-popup-pop}.pf-wrap{width:100%;height:100%;position:relative;overflow:hidden}.pf-canvas{touch-action:none;position:absolute;inset:0}.pf-controls{z-index:15;padding:0 clamp(12px, 3vmin, 32px) calc(clamp(12px, 3vmin, 32px) + env(safe-area-inset-bottom)) clamp(12px, 3vmin, 32px);pointer-events:none;justify-content:space-between;align-items:flex-end;display:flex;position:absolute;inset:auto 0 0}.pf-pad-group{gap:clamp(10px,2.5vmin,22px);display:flex}.pf-btn{pointer-events:auto;color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);touch-action:none;background:#ffffff2e;border:3px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:clamp(64px,14vmin,104px);height:clamp(64px,14vmin,104px);font-family:inherit;font-size:clamp(28px,6vmin,44px);font-weight:800;display:flex}.pf-btn:active{background:#fff6;transform:scale(.93)}.pf-jump{background:#ffd93d73;border-color:#ffd93db3;width:clamp(78px,17vmin,124px);height:clamp(78px,17vmin,124px)}.pf-jump:active{background:#ffd93db3}
