.playful-game.cube-hop-app{--play-accent:#7b4dff;--play-shadow:#5a36c2;--play-soft:#efe8ff;--play-ink:#2a1c48;--cbh-pink:#ff4f9a;--cbh-gold:#ffd23f;position:fixed;inset:0;height:100dvh;background:#8fd3ff;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overflow:hidden;overflow:clip}.cube-hop-app[data-kind=blaster]{background:#0b0620}.cube-hop-app .cbh-scene{position:absolute;inset:0;width:100%;height:100dvh;display:block;touch-action:none}.cube-hop-app .cbh-zone{position:absolute;inset:0;z-index:2;touch-action:none;display:none}.cube-hop-app[data-phase=play] .cbh-zone{display:block}.cube-hop-app .cbh-pops,.cube-hop-app .cbh-tags{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.cube-hop-app .cbh-tag{position:absolute;left:0;top:0;padding:1px 7px;border-radius:9px;background:rgba(32,18,60,.75);border:2px solid var(--c,#fff);color:#fff;font:800 11px/1.3 Playful,Avenir Next,sans-serif;white-space:nowrap;max-width:96px;overflow:hidden;text-overflow:ellipsis}.cube-hop-app .cbh-tag.me{background:var(--c,#fff);color:#1d1030}.cube-hop-app .cbh-pop{position:absolute;left:0;top:0;font:900 19px/1 Playful,Avenir Next,sans-serif;color:#fff;white-space:nowrap;text-shadow:0 2px 0 rgba(40,20,80,.55),0 0 10px rgba(255,255,255,.5)}.cube-hop-app .cbh-pop-big{font-size:27px;color:var(--cbh-gold)}.cube-hop-app .cbh-pop-bad{color:#ffb3c8;font-size:17px}.cube-hop-app .cbh-pop-good{color:#b4ff9f;font-size:18px}.cube-hop-app .cbh-pad{position:absolute;z-index:4;display:none;grid-template-columns:repeat(2,66px);grid-template-rows:repeat(2,66px);gap:10px;padding:10px;left:50%;transform:translateX(-50%) rotate(0deg);bottom:calc(env(safe-area-inset-bottom, 0px) + 14px);border-radius:28px;background:rgba(40,22,80,.35);border:3px solid rgba(255,255,255,.45);touch-action:none}.cube-hop-app .cbh-pad-btn{display:grid;place-items:center;width:66px;height:66px;padding:0;border:3px solid rgba(255,255,255,.8);border-radius:18px;background:rgba(255,255,255,.28);touch-action:none;cursor:pointer}.cube-hop-app .cbh-pad-btn svg{color:#fff;pointer-events:none;filter:drop-shadow(0 2px 0 rgba(40,20,80,.35))}.cube-hop-app .cbh-pad-ul svg{transform:rotate(-45deg)}.cube-hop-app .cbh-pad-ur svg{transform:rotate(45deg)}.cube-hop-app .cbh-pad-dl svg{transform:rotate(-135deg)}.cube-hop-app .cbh-pad-dr svg{transform:rotate(135deg)}.cube-hop-app .cbh-pad-btn.on{background:var(--play-accent);box-shadow:0 0 14px var(--play-accent)}.cube-hop-app .cbh-drag-hint{position:absolute;z-index:4;display:none;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom, 0px) + 12px);margin:0;padding:4px 12px;border-radius:12px;background:rgba(20,10,40,.6);color:#d9ffef;font-size:13px;font-weight:800;pointer-events:none;white-space:nowrap}.cube-hop-app .cbh-keys-blaster,.cube-hop-app[data-kind=blaster] .cbh-keys-hop{display:none}.cube-hop-app[data-kind=blaster] .cbh-keys-blaster{display:block}@media (hover:none),(pointer:coarse){.cube-hop-app[data-phase=play][data-kind=hop] .cbh-pad{display:grid}.cube-hop-app[data-phase=play][data-kind=blaster] .cbh-drag-hint{display:block;animation:cbh-fade .5s 4s forwards}.cube-hop-app .cbh-keys,.cube-hop-app[data-kind=blaster] .cbh-keys-blaster{display:none}}.cube-hop-app[data-orient=landscape] .cbh-pad{left:auto;transform:none;right:calc(env(safe-area-inset-right, 0px) + 14px);bottom:calc(env(safe-area-inset-bottom, 0px) + 14px);grid-template-columns:repeat(2,58px);grid-template-rows:repeat(2,58px)}.cube-hop-app[data-orient=landscape] .cbh-pad-btn{width:58px;height:58px}.cube-hop-app .cbh-hud{position:absolute;z-index:5;left:50%;transform:translateX(-50%);top:calc(env(safe-area-inset-top, 0px) + 10px);display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 16px);pointer-events:none}.cube-hop-app:is([data-phase=menu],[data-phase=loading],[data-phase=party],[data-phase=results]) :is(.cbh-hud,.cbh-seats,.cbh-keys){visibility:hidden}.cube-hop-app.cbh-online[data-phase=party] .cbh-hud{visibility:visible}.cube-hop-app[data-phase=party] :is(.cbh-scorebox,.cbh-stage,.cbh-target){display:none}.cube-hop-app :is(.cbh-scorebox,.cbh-stage,.cbh-target){display:flex;flex-direction:column;align-items:center;min-width:88px;padding:3px 12px;border:3px solid #fff;border-radius:16px;background:rgba(252,249,255,.95);box-shadow:0 4px 0 var(--play-shadow)}.cube-hop-app .cbh-scorebox span,.cube-hop-app .cbh-stage>span,.cube-hop-app .cbh-target span{font-size:11px;font-weight:800;color:#6c5a92;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.cube-hop-app .cbh-scorebox b{font-size:22px;line-height:1.05;color:var(--play-accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cube-hop-app .cbh-stage-row{display:flex;align-items:center;gap:8px;min-height:24px}.cube-hop-app .cbh-lives{display:flex;gap:3px;align-items:center}.cube-hop-app .cbh-lives i{width:15px;height:15px;border-radius:50% 50% 45% 45%;background:radial-gradient(circle at 35% 35%,#ff9ccc,#ff4f9a 65%);box-shadow:0 0 0 2px #fff,0 1px 0 3px rgba(0,0,0,.12)}.cube-hop-app .cbh-clock{font-size:18px;color:var(--play-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cube-hop-app .cbh-clock.hurry{color:#e8335f;animation:cbh-blink .5s steps(2) infinite}.cube-hop-app .cbh-clock[hidden],.cube-hop-app .cbh-target[hidden]{display:none}.cube-hop-app .cbh-target{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:4px;max-width:140px}.cube-hop-app .cbh-target span{flex-basis:100%;text-align:center}.cube-hop-app .cbh-target i{width:20px;height:20px;border-radius:6px;border:2px solid #fff;box-shadow:0 0 0 2px rgba(60,30,110,.25)}.cube-hop-app .cbh-target i:last-of-type{width:24px;height:24px;box-shadow:0 0 0 2px var(--play-accent)}.cube-hop-app .cbh-target em{font-style:normal;font-weight:900;color:#8a78b5}.cube-hop-app .cbh-target[data-steps="2"] .cbh-t3{display:none}.cube-hop-app .cbh-target[data-steps="2"] #cbh-target-b{width:24px;height:24px;box-shadow:0 0 0 2px var(--play-accent)}.cube-hop-app .cbh-hud-btns{display:flex;gap:6px;pointer-events:auto}.cube-hop-app .cbh-icon-btn{display:grid;place-items:center;width:44px;height:44px;border:3px solid #fff;border-radius:14px;background:#fcf9ff;color:var(--play-ink);box-shadow:0 4px 0 var(--play-shadow);cursor:pointer}.cube-hop-app .cbh-icon-btn .off,.cube-hop-app .cbh-icon-btn[aria-pressed=true] .on{display:none}.cube-hop-app .cbh-icon-btn[aria-pressed=true] .off{display:inline}.cube-hop-app .cbh-only-online{display:none}.cube-hop-app.cbh-online .cbh-only-online{display:grid}.cube-hop-app.cbh-online p.cbh-only-online{display:block}.cube-hop-app .cbh-seats{position:absolute;z-index:5;left:calc(env(safe-area-inset-left, 0px) + 10px);top:calc(env(safe-area-inset-top, 0px) + 84px);display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;pointer-events:none}.cube-hop-app .cbh-seat{position:relative;display:flex;align-items:center;gap:5px;min-width:110px;padding:3px 8px 5px 4px;border:2px solid var(--c);border-radius:12px;background:rgba(252,249,255,.94);font-size:12px;font-weight:800;color:var(--play-ink);overflow:hidden}.cube-hop-app .cbh-seat i{width:14px;height:14px;border-radius:4px;background:var(--c)}.cube-hop-app .cbh-seat b{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cube-hop-app .cbh-seat u{position:absolute;left:0;bottom:0;height:3px;width:calc(var(--p, 0) * 100%);background:var(--c);transition:width .2s}.cube-hop-app .cbh-seat.me{background:#fff3c4}.cube-hop-app .cbh-seat.down{opacity:.6}.cube-hop-app .cbh-seat.left{opacity:.45;text-decoration:line-through}.cube-hop-app .cbh-seat-name{max-width:76px}.cube-hop-app .cbh-keys,.cube-hop-app .cbh-seat-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cube-hop-app .cbh-keys{position:absolute;z-index:4;bottom:calc(env(safe-area-inset-bottom, 0px) + 10px);left:50%;transform:translateX(-50%);margin:0;padding:3px 10px;border-radius:10px;background:rgba(252,249,255,.85);font-size:13px;font-weight:700;color:rgba(40,20,70,.85);max-width:calc(100vw - 24px)}.cube-hop-app .cbh-net{position:absolute;z-index:30;left:6px;bottom:50px;max-width:70vw;margin:0;white-space:pre-wrap;font:11px/1.3 ui-monospace,monospace;color:#fff;background:rgba(0,0,0,.6);padding:4px 6px;border-radius:6px;pointer-events:none}.cube-hop-app .cbh-net:empty{display:none}.cube-hop-app .cbh-banner{position:absolute;z-index:8;left:50%;top:38%;transform:translate(-50%,-50%) scale(.6);opacity:0;pointer-events:none;padding:10px 26px;border:4px solid #fff;border-radius:24px;background:var(--cbh-gold);color:#4a2a10;font:900 clamp(22px,min(6vw,8vh),52px)/1.1 Playful,Avenir Next,sans-serif;text-align:center;white-space:nowrap;box-shadow:0 6px 0 #b8862e;transition:opacity .2s,transform .2s}.cube-hop-app .cbh-banner small{display:block;font-size:clamp(12px,2.4vw,17px);font-weight:800;margin-top:2px}.cube-hop-app .cbh-banner.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.cube-hop-app .cbh-banner.pop{animation:cbh-pop .35s ease-out}.cube-hop-app .cbh-banner.win{background:#7be06b;color:#1f4a14;box-shadow:0 6px 0 #3e8f3a}.cube-hop-app .cbh-banner.lose{background:#ff6b8b;color:#fff;box-shadow:0 6px 0 #b2304f}.cube-hop-app .cbh-toast{position:absolute;z-index:8;left:50%;bottom:calc(env(safe-area-inset-bottom, 0px) + 190px);transform:translateX(-50%) translateY(10px);opacity:0;padding:6px 16px;border-radius:14px;background:rgba(36,18,66,.9);color:#fff;font-size:15px;font-weight:800;pointer-events:none;transition:opacity .2s,transform .2s;white-space:nowrap}.cube-hop-app[data-orient=landscape] .cbh-toast{bottom:calc(env(safe-area-inset-bottom, 0px) + 48px)}.cube-hop-app .cbh-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}@keyframes cbh-pop{0%{transform:translate(-50%,-50%) scale(.5)}70%{transform:translate(-50%,-50%) scale(1.12)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes cbh-blink{50%{opacity:.35}}@keyframes cbh-fade{to{opacity:0;visibility:hidden}}.cube-hop-app .overlay{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.cube-hop-app .cbh-menu{justify-content:center;align-items:flex-end;padding:20px max(24px,env(safe-area-inset-right,0px)) 20px 20px}.cube-hop-app .cbh-panel{width:min(440px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;padding:22px 24px;touch-action:pan-y}.cube-hop-app .cbh-kicker{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.12em;color:#8a5ad0}.cube-hop-app .cbh-logo{margin:2px 0 6px;font:900 clamp(40px,5vw,56px)/1 Playful,Avenir Next,sans-serif;color:var(--play-accent);letter-spacing:-1px;transform:rotate(-2deg);text-shadow:0 4px 0 #ffc2e0}.cube-hop-app .cbh-sub{margin:0 0 12px;font-size:15px;line-height:1.4}.cube-hop-app .cbh-label{margin:10px 0 6px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#6c5a92}.cube-hop-app .cbh-cards{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.cube-hop-app .cbh-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;grid-column-gap:8px;column-gap:8px;align-items:center;min-height:64px;padding:8px 10px;border:3px solid #e2d8f6;border-radius:16px;background:#fdfbff;color:var(--play-ink);cursor:pointer;text-align:left;transition:transform .12s,border-color .12s}.cube-hop-app .cbh-card b{font-size:15px}.cube-hop-app .cbh-card small{grid-column:2;font-size:11px;line-height:1.2;color:#6f6290}.cube-hop-app .cbh-card-icon{grid-row:span 2;font-size:24px}.cube-hop-app .cbh-card[aria-checked=true]{border-color:var(--play-accent);background:var(--play-soft);transform:translateY(-2px)}.cube-hop-app .cbh-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.cube-hop-app .cbh-row .cbh-label{margin:8px 0 0}.cube-hop-app .cbh-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.cube-hop-app .cbh-chip{min-width:44px;min-height:40px;padding:6px 10px;border:2px solid #e2d8f6;border-radius:12px;background:#fdfbff;color:var(--play-ink);font-weight:800;font-size:14px;cursor:pointer}.cube-hop-app .cbh-chip[aria-checked=true]{border-color:var(--play-accent);background:var(--play-soft);color:var(--play-accent)}.cube-hop-app[data-variant=classic] .cbh-row-level{display:none}.cube-hop-app:not([data-variant=battle]) :is(.cbh-row-rivals,.cbh-row-time){display:none}.cube-hop-app:not([data-variant=blaster]) .cbh-row-buddy{display:none}.cube-hop-app .cbh-howto{display:none;margin:8px 0 0;font-size:13px;line-height:1.45;color:#5a4d78}.cube-hop-app[data-variant=battle] .cbh-howto-battle,.cube-hop-app[data-variant=blaster] .cbh-howto-blaster,.cube-hop-app[data-variant=classic] .cbh-howto-classic,.cube-hop-app[data-variant=coop] .cbh-howto-coop{display:block}.cube-hop-app .cbh-start{margin-top:14px}.cube-hop-app .cbh-online-btn{width:100%}.cube-hop-app .cbh-online-btn:disabled{opacity:.55;cursor:not-allowed}.cube-hop-app .cbh-best-line{margin:10px 0 0;text-align:center;font-size:13px;color:#6f6290}.cube-hop-app .cbh-settings{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.cube-hop-app .cbh-setting{flex:1 1 auto;min-height:44px;padding:6px 10px;border:2px solid #e2d8f6;border-radius:12px;background:#fdfbff;font-weight:800;font-size:13px;color:var(--play-ink);cursor:pointer}.cube-hop-app .cbh-setting[aria-pressed=false]{opacity:.5;text-decoration:line-through}.cube-hop-app .cbh-pause,.cube-hop-app .cbh-results{background:rgba(30,14,60,.42);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:20px}.cube-hop-app .cbh-panel-small{width:min(340px,100%);text-align:center}.cube-hop-app .cbh-panel-small h2{margin:0 0 12px}.cube-hop-app .cbh-panel-results{width:min(480px,100%)}.cube-hop-app .cbh-r-title{margin:4px 0;font-size:30px;line-height:1.1;color:var(--play-accent)}.cube-hop-app .cbh-r-sub{margin:0 0 10px;font-size:15px}.cube-hop-app .cbh-r-scorebox{display:flex;align-items:baseline;gap:10px;padding:8px 14px;margin-bottom:10px;border-radius:14px;background:var(--play-soft)}.cube-hop-app .cbh-r-scorebox[hidden]{display:none}.cube-hop-app .cbh-r-scorebox b{font-size:30px;color:var(--play-accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cube-hop-app .cbh-r-scorebox small{margin-left:auto;font-weight:800;color:#6c5a92}.cube-hop-app .cbh-r-table{width:100%;border-collapse:collapse;margin-bottom:10px;font-size:14px}.cube-hop-app .cbh-r-table th{text-align:left;font-size:11px;text-transform:uppercase;color:#6c5a92;padding:4px 6px}.cube-hop-app .cbh-r-table td{padding:6px;border-top:1px solid #e8dff7;font-weight:700}.cube-hop-app .cbh-r-table tr.me td{background:#fff3c4}.cube-hop-app .cbh-r-stats{font-size:12px;color:#6f6290;white-space:nowrap}.cube-hop-app .cbh-dot{display:inline-block;width:12px;height:12px;margin-right:6px;border-radius:4px;background:var(--c);vertical-align:-1px}.cube-hop-app .cbh-pause .big,.cube-hop-app .cbh-results .big{width:100%;margin-top:8px}.cube-hop-app .cbh-pause .a-secondary,.cube-hop-app .cbh-results .a-secondary{width:100%}.cube-hop-app .cbh-loading{background:#8fd3ff}.cube-hop-app .backlink{position:absolute;z-index:11;top:calc(env(safe-area-inset-top, 0px) + 14px);left:calc(env(safe-area-inset-left, 0px) + 14px)}@media (max-aspect-ratio:4/5),(max-width:700px){.cube-hop-app .cbh-menu{align-items:stretch;justify-content:flex-end;padding:0}.cube-hop-app .cbh-menu .cbh-panel{width:100%;max-height:60dvh;border-radius:26px 26px 0 0;border-bottom:0;padding:16px 16px calc(env(safe-area-inset-bottom, 0px) + 16px)}.cube-hop-app .cbh-logo{font-size:36px}.cube-hop-app .cbh-howto,.cube-hop-app .cbh-sub{font-size:13px}.cube-hop-app .cbh-hud{gap:5px}.cube-hop-app :is(.cbh-scorebox,.cbh-stage,.cbh-target){min-width:0;padding:2px 8px}.cube-hop-app .cbh-target{max-width:96px}.cube-hop-app .cbh-target i{width:16px;height:16px}.cube-hop-app .cbh-target i:last-of-type,.cube-hop-app .cbh-target[data-steps="2"] #cbh-target-b{width:19px;height:19px}.cube-hop-app .cbh-hud-btns .cbh-icon-btn{width:40px;height:40px}.cube-hop-app .cbh-seats{flex-direction:row;flex-wrap:wrap;justify-content:center;left:50%;transform:translateX(-50%);top:calc(env(safe-area-inset-top, 0px) + 72px);width:calc(100vw - 16px)}.cube-hop-app .cbh-seat{min-width:0}.cube-hop-app .cbh-seat-name{max-width:56px}}@media (max-height:500px) and (orientation:landscape){.cube-hop-app .cbh-hud{left:calc(env(safe-area-inset-left, 0px) + 8px);transform:none;flex-direction:column;align-items:stretch;width:128px;top:calc(env(safe-area-inset-top, 0px) + 6px)}.cube-hop-app .cbh-hud-btns{order:-1;justify-content:space-between}.cube-hop-app .cbh-hud .cbh-icon-btn{width:40px;height:40px}.cube-hop-app .cbh-target{max-width:none}.cube-hop-app .cbh-seats{flex-direction:column;left:auto;right:calc(env(safe-area-inset-right, 0px) + 8px);top:calc(env(safe-area-inset-top, 0px) + 8px);width:auto;transform:none}.cube-hop-app .cbh-menu{align-items:flex-end;justify-content:center;padding:8px}.cube-hop-app .cbh-menu .cbh-panel{width:min(420px,58vw);max-height:calc(100dvh - 16px);border-radius:22px;padding:12px 14px}.cube-hop-app .cbh-logo{font-size:30px}.cube-hop-app .cbh-howto,.cube-hop-app .cbh-sub{display:none!important}.cube-hop-app .cbh-card{min-height:52px}.cube-hop-app .backlink,.cube-hop-app .cbh-card small{display:none}.cube-hop-app .cbh-banner{font-size:26px}.cube-hop-app .cbh-toast{left:auto;right:calc(env(safe-area-inset-right, 0px) + 150px);transform:none}.cube-hop-app .cbh-toast.show{transform:none}}@media (prefers-reduced-motion:reduce){.cube-hop-app .cbh-banner.pop,.cube-hop-app .cbh-clock.hurry{animation:none}}