.perfect-splash{will-change:transform;visibility:hidden;justify-content:center;display:flex;position:absolute;bottom:clamp(180px,20vh,300px);left:0;right:0}.perfect-splash__stage{--perfect-accent:#ffd24d;place-items:center;display:inline-grid;position:relative}.perfect-splash__text{z-index:1;color:#fff;letter-spacing:.04em;white-space:nowrap;text-shadow:0 0 10px #ffffffbf,0 0 26px #ffd24de6,0 0 52px #ffb3008c,0 2px #0003;will-change:transform, opacity;font-size:3rem;line-height:1;position:relative}.perfect-splash__ring{border:6px solid var(--perfect-accent);width:16rem;height:16rem;box-shadow:0 0 24px var(--perfect-accent);opacity:0;will-change:transform, opacity;border-radius:50%;position:absolute}.perfect-splash__spark{background:var(--perfect-accent);width:12px;height:12px;box-shadow:0 0 12px var(--perfect-accent);opacity:0;will-change:transform, opacity;border-radius:50%;position:absolute}.score-hud-layer{pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1000;opacity:0;font-family:kidsclub-bold,Arial,sans-serif;transition:opacity .35s;position:fixed;inset:0}.score-hud-layer.is-visible{opacity:1}.score-hud-row{will-change:transform, opacity;flex-direction:column;align-items:stretch;gap:10px;display:flex;position:absolute;top:72px;right:22px}.score-hud-counter,.score-hud-tokens{transform-origin:50%;will-change:transform;background:#102a428c;border-radius:999px;align-items:center;gap:10px;padding:8px 18px 8px 12px;display:flex;box-shadow:inset 0 1px #ffffff2e,0 4px 14px #00000040}.score-hud-star{clip-path:polygon(50% 0%,63% 34%,98% 37%,71% 60%,79% 95%,50% 76%,21% 95%,29% 60%,2% 37%,37% 34%);filter:drop-shadow(0 1px 2px #00000059);background:linear-gradient(#ffe9a3 0%,#ffd24d 55%,#e8a419 100%);width:24px;height:24px}.score-hud-coin{object-fit:contain;filter:drop-shadow(0 1px 2px #00000059);width:24px;height:24px}.score-hud-token-count,.score-hud-value{color:#fff;letter-spacing:.03em;text-shadow:0 2px #00000040;font-variant-numeric:tabular-nums;font-size:1.6rem;line-height:1}.score-hud-sprite{color:#fff;text-shadow:0 0 8px #ffffffbf,0 0 20px #ffd24de6,0 0 40px #ffb3008c,0 2px #0003;will-change:transform, opacity;visibility:hidden;font-size:1.8rem;line-height:1;position:absolute;top:0;left:0}.score-hud-sprite--big{font-size:2.35rem}.score-hud-redeem{position:absolute;inset:0}.score-hud-redeem-coin{object-fit:contain;filter:drop-shadow(0 2px 6px #00000059);will-change:transform, opacity;width:26px;height:26px;position:absolute;top:0;left:0}.hint-overlay{opacity:0;color:#fff;letter-spacing:.02em;text-align:center;text-shadow:0 3px #00000040,0 6px 18px #0000008c;-webkit-user-select:none;user-select:none;pointer-events:none;white-space:nowrap;z-index:1000;font-family:kidsclub-bold,Arial,sans-serif;font-size:2.25rem;font-weight:400;transition:opacity .35s,transform .35s cubic-bezier(.34,1.56,.64,1);position:fixed;bottom:16.67vh;left:50%;transform:translate(-50%)translateY(12px)scale(.9)}.hint-overlay.is-visible{opacity:1;transform:translate(-50%)translateY(0)scale(1)}.hint-overlay-text{transform-origin:50% 100%;will-change:transform;display:inline-block}.hint-overlay.has-graphic{white-space:normal;flex-direction:column;align-items:center;gap:.5em;max-width:min(90vw,32rem);line-height:1.15;display:flex}.key-graphic{--key-graphic-scale:1;--key-graphic-board-width:22rem;--key-graphic-cap-height:2.2rem;--key-graphic-narrow-width:2.4rem;--key-graphic-gap:.4rem;--key-graphic-outline:#12414f;--key-graphic-lit-shadow:0 .22rem 0 #12414f8c, inset 0 -.3rem .5rem #12414f29;--key-graphic-pressed-shadow:0 .05rem 0 #12414f8c, inset 0 -.5rem .6rem #12414f4d;--key-graphic-cap-resting:translateZ(0);--key-graphic-cap-pressed:translateZ(-.45rem);--key-graphic-board-cosine:.616;transform:scale(var(--key-graphic-scale));transform-origin:50% 0}@media (height<=780px){.key-graphic{--key-graphic-scale:.78}}.key-graphic-stage{perspective:40rem;perspective-origin:50% 0;justify-content:center;display:flex}.key-graphic-board{gap:var(--key-graphic-gap);width:var(--key-graphic-board-width);transform-style:preserve-3d;flex-direction:column;display:flex;transform:rotateX(52deg)rotate(-1deg)}.key-graphic-row{gap:var(--key-graphic-gap);transform-style:preserve-3d;justify-content:center;display:flex}.key-graphic-cap{box-sizing:border-box;height:var(--key-graphic-cap-height);background:#d6e6ea42;border:.18rem solid #12414f80;border-radius:.5rem;flex:1;box-shadow:0 .16rem #12414f47}.key-graphic-cap--narrow{flex:0 0 var(--key-graphic-narrow-width)}.key-graphic-cap--lit{border-color:var(--key-graphic-outline);box-shadow:var(--key-graphic-lit-shadow);background:linear-gradient(160deg,#fff 0%,#f2f7f8 55%,#d8e4e7 100%);border-radius:.6rem}.shift-key-graphic{--shift-key-cycle:2.4s}.shift-key-row--upper{margin-left:1.7rem}.shift-key-cap--shift{flex:1.6;justify-content:center;align-items:center;display:flex}.shift-key-arrow{--shift-key-arrow-size:.78rem;width:var(--shift-key-arrow-size);height:calc(var(--shift-key-arrow-size) / var(--key-graphic-board-cosine));fill:var(--key-graphic-outline)}@media (prefers-reduced-motion:no-preference){.hint-overlay.is-visible .shift-key-cap--shift{animation:shift-key-cap-hold var(--shift-key-cycle) ease-in-out infinite}.hint-overlay.is-visible .shift-key-cap--letter{animation:shift-key-cap-tap var(--shift-key-cycle) ease-in-out infinite}}@keyframes shift-key-cap-hold{0%,to{transform:var(--key-graphic-cap-resting);box-shadow:var(--key-graphic-lit-shadow);filter:brightness()}14%,86%{transform:var(--key-graphic-cap-pressed);box-shadow:var(--key-graphic-pressed-shadow);filter:brightness(.93)}}@keyframes shift-key-cap-tap{0%,38%,64%,to{transform:var(--key-graphic-cap-resting);box-shadow:var(--key-graphic-lit-shadow);filter:brightness()}46%,56%{transform:var(--key-graphic-cap-pressed);box-shadow:var(--key-graphic-pressed-shadow);filter:brightness(1.2)}}.space-key-cap--space{justify-content:center;align-items:center;display:flex}.space-key-glyph{--space-key-glyph-width:.95rem;--space-key-glyph-ratio:.558;width:var(--space-key-glyph-width);height:calc(var(--space-key-glyph-width) * var(--space-key-glyph-ratio) / var(--key-graphic-board-cosine));fill:var(--key-graphic-outline)}@media (prefers-reduced-motion:no-preference){.hint-overlay.is-visible .space-key-cap--space{animation:1.8s ease-in-out infinite space-key-cap-tap}}@keyframes space-key-cap-tap{0%,to{transform:var(--key-graphic-cap-resting);box-shadow:var(--key-graphic-lit-shadow);filter:brightness()}50%{transform:var(--key-graphic-cap-pressed);box-shadow:var(--key-graphic-pressed-shadow);filter:brightness(1.16)}}.loading-debug-panel{box-sizing:border-box;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#d8dde5;pointer-events:auto;z-index:1200;background:#0c0e12c7;border:1px solid #ffffff1f;border-radius:8px;flex-direction:column;gap:6px;max-width:320px;max-height:45vh;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;line-height:1.4;display:flex;position:fixed;bottom:12px;left:12px}.loading-debug-panel__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.loading-debug-panel__title{opacity:.85;color:#fff;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.loading-debug-panel__count{opacity:.8;font-variant-numeric:tabular-nums}.loading-debug-panel__list{margin:0;padding:0;list-style:none;overflow-y:auto}.loading-debug-panel__list::-webkit-scrollbar{width:6px}.loading-debug-panel__list::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:3px}.loading-debug-panel__item{align-items:center;gap:8px;padding:2px 0;display:flex}.loading-debug-panel__status{text-align:center;flex:0 0 12px;font-weight:700}.loading-debug-panel__item.is-loading .loading-debug-panel__status{color:#ffd466}.loading-debug-panel__item.is-loaded .loading-debug-panel__status{color:#7ad18a}.loading-debug-panel__item.is-error .loading-debug-panel__status{color:#ff6b6b}.loading-debug-panel__item.is-error .loading-debug-panel__name{color:#ffb2b2}.loading-debug-panel__name{white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.loading-debug-panel.is-complete{border-color:#7ad18a59}.loading-overlay{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);color:#fff;z-index:1100;background:#0000002e;justify-content:center;align-items:center;font-family:kidsclub-bold,Arial,sans-serif;transition:opacity .35s,visibility .35s;display:flex;position:fixed;inset:0}.loading-overlay.is-complete{visibility:hidden;opacity:0;pointer-events:none}.loading-overlay__panel{box-sizing:border-box;text-align:center;flex-direction:column;align-items:center;gap:24px;width:min(640px,100vw - 48px);padding:40px 48px;display:flex}.loading-overlay__title{letter-spacing:.03em;text-shadow:0 3px #00000040,0 6px 18px #0000008c;font-size:3rem;font-weight:400}.loading-overlay__bar{background:#ffffff24;border-radius:999px;width:100%;height:16px;position:relative;overflow:hidden}.loading-overlay__bar-fill{border-radius:inherit;background:#2cffed;width:0%;height:100%;transition:width .18s}.loading-overlay__percent{letter-spacing:.02em;font-variant-numeric:tabular-nums;text-shadow:0 2px #0003,0 5px 14px #00000080;font-size:2rem;font-weight:400}@font-face{font-family:kidsclub-bold;src:url(./kidsclub-bold-BZNwi8EC.ttf)format("truetype");font-weight:400;font-display:swap}*{margin:0;padding:0}html,body{background:radial-gradient(circle,#2cffed 0%,#0299b6 85%);height:100%;overflow:hidden}.webgl{outline:none;position:fixed;top:0;left:0}.difficulty-selector{z-index:1000;gap:10px;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%)}.difficulty-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;color:#fff;background:#00000080;border:2px solid #ffffff4d;border-radius:8px;padding:10px 20px;font-size:16px;font-weight:600;transition:all .3s}.difficulty-btn:hover{background:#000000b3;border-color:#fff9;transform:translateY(-2px)}.difficulty-btn.active{background:#588ca0cc;border-color:#fffc;box-shadow:0 4px 12px #588ca066}.difficulty-selector.visible{display:flex!important}.fatal-error{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1002;background:#00000073;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.fatal-error__box{text-align:center;color:#fff;-webkit-user-select:none;user-select:none;max-width:32rem;font-family:kidsclub-bold,Arial,sans-serif}.fatal-error__title{letter-spacing:.02em;text-shadow:0 3px #00000040,0 6px 18px #0000008c;margin-bottom:.75rem;font-size:2.25rem;font-weight:400}.fatal-error__detail{opacity:.92;font-size:1.15rem;line-height:1.5}.tp-dfwv{opacity:.85;z-index:1100}
