:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#061014;color:#efffff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--panel: rgba(5, 18, 22, .68);--line: rgba(198, 255, 247, .24);--hot: #ffd166;--cyan: #6ee7ff;--danger: #ff695c}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;touch-action:none}body{background:#061014;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}button{font:inherit}#game-canvas{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none;-webkit-user-select:none;user-select:none}.opening-screen{position:fixed;z-index:70;inset:0;overflow:hidden;color:#f7ffff;background:radial-gradient(circle at 50% 50%,rgba(110,231,255,.16),transparent 32%),radial-gradient(circle at 50% 102%,rgba(255,209,102,.14),transparent 34%),#000;opacity:0;pointer-events:none;transition:opacity .68s ease}.opening-screen.is-visible{opacity:1;pointer-events:auto}.opening-screen.is-dismissing{opacity:0;pointer-events:none}.opening-title{position:absolute;left:50%;top:50%;width:min(92vw,900px);color:#fff;font-size:clamp(34px,10vw,112px);font-weight:950;letter-spacing:0;line-height:.92;text-align:center;text-shadow:0 0 28px rgba(110,231,255,.64),0 0 72px rgba(255,209,102,.36),0 12px 34px rgba(0,0,0,.82);transform:translate(-50%,-50%) scale(.96);opacity:0}.opening-screen.is-visible .opening-title{animation:opening-title-sequence 3.25s cubic-bezier(.18,.9,.18,1) forwards}.opening-story{position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 82%,transparent 100%)}.opening-story-text{position:absolute;left:50%;top:100%;width:min(720px,calc(100vw - 42px));color:#f4fffff0;font-size:clamp(15px,3.6vw,22px);font-weight:750;line-height:1.92;text-align:center;text-shadow:0 0 18px rgba(110,231,255,.3),0 6px 18px rgba(0,0,0,.86);opacity:0;transform:translate(-50%)}.opening-story-text p{margin:0 0 1.05em}.opening-screen.is-visible .opening-story-text{animation:opening-story-scroll 25s linear 3.05s forwards}.opening-skip{position:absolute;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));min-width:70px;min-height:34px;padding:0 12px;border:1px solid rgba(198,255,247,.34);border-radius:8px;color:#efffffcc;background:#0512167a;box-shadow:inset 0 0 0 1px #ffffff0a,0 10px 24px #0000006b;font-size:11px;font-weight:900;letter-spacing:0;cursor:pointer}.opening-skip:hover,.opening-skip:focus-visible{border-color:#ffd166ad;color:#fff;outline:none}@keyframes opening-title-sequence{0%{opacity:0;transform:translate(-50%,-50%) scale(.94);filter:blur(8px)}18%,64%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}to{opacity:0;transform:translate(-50%,-54%) scale(1.04);filter:blur(7px)}}@keyframes opening-story-scroll{0%{opacity:0;transform:translate(-50%)}5%,92%{opacity:1}to{opacity:0;transform:translate(-50%,calc(-100vh - 100%))}}.hud{position:fixed;z-index:5;align-items:center;gap:12px;pointer-events:none}.hud-top{top:max(14px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right));display:grid;grid-template-columns:minmax(132px,1fr) minmax(168px,auto) minmax(86px,1fr);grid-template-areas:"brand status lives" "hit hit hit";align-items:start;column-gap:12px;row-gap:8px}.brand{grid-area:brand;justify-self:start;display:inline-flex;align-items:center;gap:8px;min-width:0;padding:5px 0;border:0;background:transparent;font-size:18px;font-weight:800;letter-spacing:0;text-transform:uppercase;text-shadow:0 0 16px rgba(110,231,255,.44),0 2px 14px rgba(0,0,0,.7);white-space:nowrap}.brand-mark{width:13px;height:17px;clip-path:polygon(50% 0,100% 32%,78% 100%,22% 100%,0 32%);background:linear-gradient(150deg,#ffffff,var(--cyan) 48%,var(--hot));box-shadow:0 0 18px #6ee7ffb8}.status-row{grid-area:status;justify-self:center;display:flex;align-items:center;flex-wrap:nowrap;gap:6px;min-width:0;max-width:100%}.life-hearts{grid-area:lives;justify-self:end;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px;row-gap:5px;min-width:0;max-width:178px;min-height:32px;padding:7px 0 0;pointer-events:none}.life-heart{--life-size: 16px;position:relative;display:block;width:var(--life-size);height:var(--life-size);flex:0 0 auto;background:var(--danger);filter:drop-shadow(0 0 8px rgba(255,105,92,.72)) drop-shadow(0 1px 3px rgba(0,0,0,.66));transform:rotate(-45deg)}.life-heart:before,.life-heart:after{position:absolute;width:var(--life-size);height:var(--life-size);border-radius:50%;background:inherit;content:""}.life-heart:before{left:0;top:calc(var(--life-size) * -.5)}.life-heart:after{left:calc(var(--life-size) * .5);top:0}.life-heart.is-empty{background:#efffff2e;filter:none}.meter{min-width:48px;padding:5px 7px;border:1px solid var(--line);border-radius:8px;background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.points-meter{min-width:58px;border-color:#ffd166bd;background:linear-gradient(135deg,#ffd1662e,#ff97481a),var(--panel);box-shadow:inset 0 0 16px #ffd16629,0 0 14px #ffd1662e;transform-origin:center}.points-meter.is-absorbing{animation:points-absorb-frame-flash var(--points-absorb-duration, .46s) linear}.points-meter .meter-label{color:#ffe296b8}.points-meter strong{color:#ffd166;font-size:14px;line-height:1;text-shadow:0 0 10px rgba(255,209,102,.86),0 0 18px rgba(255,151,72,.46)}@keyframes points-absorb-frame-flash{0%{border-color:#ffd166bd;box-shadow:inset 0 0 16px #ffd16629,0 0 14px #ffd1662e;transform:scale(1)}15%,32%,57%,74%{border-color:#ff2f42fa;box-shadow:inset 0 0 22px #ff2f425c,0 0 22px #ff2f4294,0 0 40px #ff2f425c;transform:scale(1.04)}14%,33%,56%,75%,to{border-color:#ffd166bd;box-shadow:inset 0 0 16px #ffd16629,0 0 14px #ffd1662e;transform:scale(1)}}.core-meter{border-color:#29b8ff9e;background:linear-gradient(135deg,#ff2f4233,#1f7cff38),var(--panel);box-shadow:inset 0 0 18px #29b8ff2e,0 0 16px #ff2f4229}.core-meter strong{color:#fff;text-shadow:0 0 10px rgba(41,184,255,.72),0 0 16px rgba(255,47,66,.48)}.meter-label{display:block;color:#efffff9e;font-size:9px;font-weight:800;letter-spacing:0;line-height:1;white-space:nowrap}.meter strong{display:block;margin-top:3px;color:#fff;font-size:14px;line-height:1}.hit-panel{grid-area:hit;justify-self:stretch;width:100%;min-width:0;padding:7px 9px 8px;border:1px solid var(--line);border-radius:8px;background:#04101394;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none}.hit-panel-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;margin-bottom:7px}.target-name{min-width:0;margin:0;color:#fff;font-size:13px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.hit-stats{display:flex;align-items:baseline;gap:clamp(18px,5vw,36px);justify-content:end;padding-top:1px;white-space:nowrap}.hit-stat{display:inline-flex;align-items:baseline;gap:5px;min-width:0}.hit-stat-label{display:inline;color:#efffff9e;font-size:9px;font-weight:900;line-height:1}.hit-stat strong{display:inline;margin:0;color:#fff;font-size:12px;font-weight:850;line-height:1}.progress-track{width:100%;height:6px;overflow:hidden;border-radius:999px;background:#ff695c24;box-shadow:inset 0 0 0 1px #ff695c1a,inset 0 0 10px #0000003d}.countdown-track{position:relative;width:100%;height:3px;margin-bottom:7px;overflow:hidden;border-radius:999px;background:#6ee7ff1f;opacity:1;box-shadow:inset 0 0 0 1px #6ee7ff14;transition:opacity .16s ease-out}.countdown-track.is-hidden{opacity:.28}.countdown-fill{width:100%;height:100%;background:linear-gradient(90deg,#d9ffff,#6ee7ff 54%,#2f8cff);box-shadow:0 0 12px #6ee7ffa8;transition:none}.countdown-track.is-danger .countdown-fill{background:linear-gradient(90deg,#eaffff,#ffd166,#ff695c);box-shadow:0 0 16px #ff695c8a}.countdown-track.is-time-dilated{background:#7effeb2e}.countdown-track.is-time-dilated .countdown-fill{background:linear-gradient(90deg,#b7fff4,#6ee7ff,#e6fff7);box-shadow:0 0 12px #7effebbd,0 0 24px #6ee7ff6b;animation:time-dilation-pulse .52s ease-in-out infinite alternate}.countdown-track.is-danger.is-time-dilated .countdown-fill{background:linear-gradient(90deg,#b7fff4,#ffd166,#ff695c)}@keyframes time-dilation-pulse{0%{filter:saturate(1.08) brightness(1)}to{filter:saturate(1.35) brightness(1.22)}}.progress-fill{width:0%;height:100%;background:linear-gradient(90deg,#ffd166,#ff9f43 48%,#ff3f5f);box-shadow:0 0 14px #ff695c6b,0 0 20px #ffd16633;transition:width .14s ease-out}.inventory-strip{display:none;align-items:center;gap:7px;min-height:28px;margin-top:8px;padding-top:7px;border-top:1px solid rgba(198,255,247,.16);opacity:0;transform:translateY(-5px) scale(.98);transition:opacity .18s ease-out,transform .18s ease-out,border-color .18s ease-out}.inventory-strip.is-visible{opacity:1;transform:translateY(0) scale(1)}.inventory-strip.is-acquiring{border-top-color:#ffd16685}.inventory-label{flex:0 0 auto;color:#efffffa3;font-size:10px;font-weight:900;line-height:1}.master-list{display:flex;align-items:center;gap:5px;min-width:0;overflow:hidden}.master-chip{width:24px;height:24px;position:relative;flex:0 0 auto;display:grid;place-items:center;border:1px solid rgba(255,255,255,.54);border-radius:7px;background:#ffffff14;box-shadow:0 0 16px var(--master-glow, rgba(110, 231, 255, .55))}.master-chip:before{width:12px;height:16px;clip-path:polygon(50% 0,100% 32%,78% 100%,22% 100%,0 32%);background:var(--master-color, #6ee7ff);content:""}.master-chip-count{position:absolute;right:-5px;bottom:-5px;min-width:15px;height:15px;padding:0 3px;border-radius:999px;color:#061014;background:#fff;font-size:9px;font-weight:900;line-height:15px;text-align:center}.master-empty{color:#efffff94;font-size:12px;font-weight:800}.master-pickup-orb{position:fixed;z-index:7;left:0;top:0;width:32px;height:32px;border:1px solid rgba(255,255,255,.62);border-radius:9px;background:var(--master-color, #6ee7ff);box-shadow:0 0 20px var(--master-glow, rgba(110, 231, 255, .72)),0 0 48px var(--master-glow, rgba(110, 231, 255, .38));clip-path:polygon(50% 0,100% 32%,78% 100%,22% 100%,0 32%);pointer-events:none;transform:translate3d(var(--pickup-x, 50vw),var(--pickup-y, 50vh),0) scale(1.2) rotate(0);opacity:0;transition:transform .72s cubic-bezier(.18,.9,.18,1),opacity .14s ease-out}.master-pickup-orb.is-flying{opacity:1;transform:translate3d(var(--pickup-end-x, 50vw),var(--pickup-end-y, 50vh),0) scale(.34) rotate(280deg);transition:transform .76s cubic-bezier(.2,.86,.2,1),opacity .16s ease-out .62s}.foreground-break-overlay{position:fixed;z-index:40;inset:0;overflow:hidden;pointer-events:none;contain:strict}.foreground-break-shard,.foreground-break-particle{position:absolute;left:0;top:0;opacity:0;will-change:transform,opacity}.foreground-break-shard{border:1px solid rgba(255,255,255,.42);background:linear-gradient(150deg,rgba(255,255,255,.58),transparent 34%),linear-gradient(135deg,var(--fx-color, #6ee7ff),rgba(255,47,66,.82));box-shadow:0 0 12px color-mix(in srgb,var(--fx-color, #6ee7ff) 68%,transparent),0 0 24px #ff2f4238;clip-path:polygon(50% 0,100% 28%,78% 100%,18% 84%,0 32%);transform:translate3d(var(--fx-start-x, 50vw),var(--fx-start-y, 50vh),0) scale(.2) rotate(0)}.foreground-break-shard.is-hero{border-color:#ffffff94;box-shadow:0 0 16px color-mix(in srgb,var(--fx-color, #6ee7ff) 76%,transparent),0 0 36px #ff2f4252;filter:saturate(1.18) brightness(1.12)}.foreground-break-particle{border-radius:999px;background:var(--fx-color, #ffd166);box-shadow:0 0 7px var(--fx-color, #ffd166),0 0 14px #ffd16647;transform:translate3d(var(--fx-start-x, 50vw),var(--fx-start-y, 50vh),0) scale(.24)}.foreground-break-overlay.is-active .foreground-break-shard{animation:foreground-break-shard-flight var(--fx-life, .86s) cubic-bezier(.14,.78,.22,1) var(--fx-delay, 0ms) forwards}.foreground-break-overlay.is-active .foreground-break-particle{animation:foreground-break-particle-flight var(--fx-life, .76s) cubic-bezier(.12,.82,.22,1) var(--fx-delay, 0ms) forwards}@keyframes foreground-break-shard-flight{0%{opacity:0;transform:translate3d(var(--fx-start-x, 50vw),var(--fx-start-y, 50vh),0) scale(.16) rotate(0)}10%{opacity:.88}68%{opacity:.72}to{opacity:0;transform:translate3d(var(--fx-end-x, 50vw),var(--fx-end-y, 50vh),0) scale(var(--fx-scale, 1)) rotate(var(--fx-rotate, 320deg))}}@keyframes foreground-break-particle-flight{0%{opacity:0;transform:translate3d(var(--fx-start-x, 50vw),var(--fx-start-y, 50vh),0) scale(.24)}12%{opacity:.95}72%{opacity:.7}to{opacity:0;transform:translate3d(var(--fx-end-x, 50vw),var(--fx-end-y, 50vh),0) scale(var(--fx-scale, 1))}}.hud-bottom{display:flex;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translate(-50%);padding:5px 6px;border:0;border-radius:8px;background:#0410139e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto}.icon-button{width:40px;height:40px;position:relative;display:block;padding:0;border:0;border-radius:8px;color:#efffff;background:transparent;cursor:pointer;appearance:none;line-height:0}.icon-button:hover,.icon-button.is-active{background:#ffd1661a}.core-list{display:none;align-items:center;gap:4px;justify-content:center;min-width:40px;min-height:40px}.core-menu-trigger{--core-color: #29b8ff;width:40px;height:40px;position:relative;display:grid;place-items:center;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}.core-menu-trigger:hover,.core-list.has-cores .core-menu-trigger{background:#ffd1661a}.core-menu-trigger:before{width:18px;height:22px;clip-path:polygon(50% 0,100% 32%,78% 100%,22% 100%,0 32%);background:linear-gradient(150deg,#fff,#29b8ff 52%,#ff355f);box-shadow:0 0 14px #29b8ffd1,0 2px 8px #000000a3;content:""}.core-use-count{position:absolute;right:2px;bottom:2px;min-width:15px;height:15px;padding:0 3px;border-radius:999px;color:#061014;background:#fff;font-size:9px;font-weight:900;line-height:15px;text-align:center}.core-list:not(.has-cores) .core-use-count{color:#efffffc7;background:#ffffff24}.core-radial-menu{--menu-x: 50vw;--menu-y: 50vh;position:fixed;z-index:20;inset:0;opacity:0;pointer-events:none;transition:opacity .12s ease-out}.core-radial-menu.is-open{opacity:1;pointer-events:none}.core-radial-ring{width:var(--core-ring-size, min(82vw, 72vh, 380px));height:var(--core-ring-size, min(82vw, 72vh, 380px));position:absolute;left:var(--menu-x);top:var(--menu-y);border:2px solid rgba(255,255,255,.2);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18) 0 8px,transparent 9px),#04101338;box-shadow:0 0 22px #ffffff14,inset 0 0 22px #ffffff0f;pointer-events:none;transform:translate(-50%,-50%) scale(.94);transition:transform .14s ease-out}.core-radial-menu.is-open .core-radial-ring{transform:translate(-50%,-50%) scale(1)}.core-radial-center{width:22px;height:22px;position:absolute;left:50%;top:50%;padding:0;border:2px solid rgba(255,255,255,.22);border-radius:50%;background:#081014e6;box-shadow:0 0 14px #ffffff29;cursor:pointer;pointer-events:auto;transform:translate(-50%,-50%)}.core-radial-item{--core-color: #29b8ff;width:88px;height:88px;position:absolute;left:50%;top:50%;display:grid;grid-template-rows:66px 1fr;place-items:center;padding:5px 5px 7px;border:1px solid color-mix(in srgb,var(--core-color) 48%,rgba(255,255,255,.22));border-radius:50%;color:#fff;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--core-color) 18%,transparent),transparent 58%),#0512167a;box-shadow:0 0 22px color-mix(in srgb,var(--core-color) 48%,transparent),inset 0 0 16px #ffffff0f;cursor:pointer;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;z-index:2;transform:translate(-50%,-50%) translate(var(--slot-x),var(--slot-y))}.core-radial-item.is-empty{opacity:.52}.core-radial-item.is-selected{border-color:color-mix(in srgb,var(--core-color) 72%,rgba(255,255,255,.34));background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--core-color) 28%,transparent),transparent 62%),#051216a8;box-shadow:0 0 30px color-mix(in srgb,var(--core-color) 64%,transparent),inset 0 0 18px #ffffff1f}.core-radial-icon{display:block;width:64px;height:64px;border-radius:7px;filter:drop-shadow(0 0 12px var(--core-color)) drop-shadow(0 4px 8px rgba(0,0,0,.52));mix-blend-mode:screen;object-fit:contain;pointer-events:none}.core-radial-name{max-width:100%;overflow:hidden;font-size:10px;font-weight:900;line-height:1;text-overflow:ellipsis;white-space:nowrap}.core-radial-item .core-use-count{right:7px;bottom:7px}.core-detail-panel{width:min(202px,calc(var(--core-ring-size, 320px) * .56));max-height:min(214px,calc(var(--core-ring-size, 320px) * .62));position:absolute;z-index:3;left:calc(50% + var(--detail-x, 0px));top:calc(50% + var(--detail-y, 0px));display:grid;gap:7px;padding:10px;overflow:auto;border:1px solid rgba(255,255,255,.18);border-radius:8px;color:#efffff;background:#041013b8;box-shadow:0 0 22px color-mix(in srgb,var(--core-color) 26%,transparent),inset 0 0 18px #ffffff0d;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;transform:translate(-50%,-50%)}.core-detail-header{display:grid;grid-template-columns:40px 1fr;align-items:center;gap:8px}.core-detail-icon{width:40px;height:40px;border-radius:7px;filter:drop-shadow(0 0 10px var(--core-color));mix-blend-mode:screen;object-fit:contain}.core-detail-title{margin:0;overflow:hidden;font-size:12px;font-weight:900;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.core-detail-count,.core-detail-description{margin:0;color:#efffffb8;font-size:10px;font-weight:750;line-height:1.45}.core-detail-use{min-height:30px;border:1px solid color-mix(in srgb,var(--core-color) 58%,rgba(255,255,255,.24));border-radius:8px;color:#fff;background:color-mix(in srgb,var(--core-color) 28%,rgba(4,16,19,.82));font-size:11px;font-weight:900;cursor:pointer}.core-detail-use:disabled{opacity:.44;cursor:default}.master-core-detail-list{display:grid;gap:5px}.master-core-detail-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:24px}.master-core-detail-icon{width:18px;height:22px;clip-path:polygon(50% 0,100% 32%,78% 100%,22% 100%,0 32%);background:var(--master-color, #6ee7ff);box-shadow:0 0 12px color-mix(in srgb,var(--master-color, #6ee7ff) 56%,transparent)}.master-core-detail-name{overflow:hidden;color:#efffffdb;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.master-core-detail-count{min-width:17px;height:17px;border-radius:999px;color:#061014;background:#ffffffdb;font-size:10px;font-weight:900;line-height:17px;text-align:center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pause-icon,.rotate-icon,.pass-icon,.music-icon,.tool-icon{display:block;position:absolute;left:50%;top:50%;width:34px;height:34px;background-position:center;background-repeat:no-repeat;background-size:contain;transform:translate(-50%,-50%);filter:drop-shadow(0 0 8px rgba(255,174,54,.3)) drop-shadow(0 2px 4px rgba(0,0,0,.64))}.pause-icon{background-image:url(/apps/crystalking/assets/ico_pause-CPLMDOSe.png)}.rotate-icon{background-image:url(/apps/crystalking/assets/ico_rotate-DBJkzNyI.png)}.pass-icon{background-image:url(/apps/crystalking/assets/ico_pass-MJWpmQIt.png)}.music-icon{background-image:url(/apps/crystalking/assets/ico_sound-BJekbXo_.png)}.tool-button{isolation:isolate}.tool-button.is-active{background:#ffd16624;box-shadow:inset 0 0 0 1px #ffd16675,0 0 16px #ffd1663d}.tool-button.is-charging{animation:weapon-charge-pop .36s ease-out}.tool-button.is-boost-ready{box-shadow:inset 0 0 0 1px #ffd166b8,0 0 22px #ffd1666b,0 0 42px #ff3f5f38}.tool-button.is-technique-armed{box-shadow:inset 0 0 0 1px #ffffffd1,0 0 24px #ffffff6b,0 0 46px #74f2ff57}.tool-button.is-boost-firing{animation:weapon-boost-fire .52s ease-out}@keyframes weapon-charge-pop{0%,to{transform:scale(1)}42%{transform:scale(1.14)}}@keyframes weapon-boost-fire{0%{transform:scale(1);filter:brightness(1)}34%{transform:scale(1.18);filter:brightness(1.42)}to{transform:scale(1);filter:brightness(1)}}.hammer-tool-icon{background-image:url(/apps/crystalking/assets/item-hammer-rITXWdD2.png)}.laser-tool-icon{background-image:url(/apps/crystalking/assets/item-laser-gun-z8tU-teM.png)}.weapon-infuse-menu{--menu-x: 50vw;--menu-y: 50vh;position:fixed;z-index:24;left:var(--menu-x);top:var(--menu-y);width:min(230px,calc(100vw - 24px));display:grid;gap:6px;padding:9px;border:1px solid rgba(255,209,102,.34);border-radius:8px;background:#041013db;box-shadow:0 18px 54px #0000006b,inset 0 0 16px #ffffff0a;opacity:0;pointer-events:none;transform:translate(-50%,-100%) translateY(-10px) scale(.97);transition:opacity .12s ease-out,transform .12s ease-out}.weapon-infuse-menu.is-open{opacity:1;pointer-events:auto;transform:translate(-50%,-100%) translateY(-10px) scale(1)}.weapon-infuse-title{color:#fff4d0;font-size:11px;font-weight:950;line-height:1.2}.weapon-infuse-empty{margin:0;color:#efffff9e;font-size:10px;font-weight:800}.weapon-infuse-item{min-width:0;min-height:30px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:6px;padding:4px 6px;border:1px solid color-mix(in srgb,var(--master-color, #ffd166) 34%,rgba(255,255,255,.14));border-radius:8px;color:#efffff;background:#ffffff0f;cursor:pointer}.weapon-infuse-item:disabled{opacity:.45;cursor:default}.weapon-infuse-icon{width:13px;height:17px;clip-path:polygon(50% 0,100% 32%,78% 100%,22% 100%,0 32%);background:var(--master-color, #ffd166);box-shadow:0 0 12px color-mix(in srgb,var(--master-color, #ffd166) 62%,transparent)}.weapon-infuse-name{overflow:hidden;color:#efffffe0;font-size:10px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.weapon-infuse-count{min-width:17px;height:17px;border-radius:999px;color:#061014;background:#ffffffe0;font-size:10px;font-weight:950;line-height:17px;text-align:center}.weapon-spell-overlay{--spell-color: #7dffb2;--spell-hot: #d8ff88;position:fixed;z-index:34;inset:0;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 14px max(82px,env(safe-area-inset-bottom));opacity:0;pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none;transition:opacity .12s ease-out}.weapon-spell-overlay.is-open{opacity:1;pointer-events:auto}.weapon-spell-panel{width:min(72vw,72vh,430px);display:grid;gap:8px;padding:12px;border:1px solid color-mix(in srgb,var(--spell-color) 58%,rgba(255,255,255,.14));border-radius:8px;background:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--spell-color) 14%,transparent),transparent 58%),#030e1294;box-shadow:0 0 34px color-mix(in srgb,var(--spell-color) 32%,transparent),0 20px 70px #0000005c,inset 0 0 24px #ffffff12;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transform:scale(.96);transition:transform .12s ease-out}.weapon-spell-overlay.is-open .weapon-spell-panel{transform:scale(1)}.weapon-spell-title{color:#efffff;font-size:12px;font-weight:950;letter-spacing:0;text-align:center;text-shadow:0 0 10px var(--spell-color),0 0 22px color-mix(in srgb,var(--spell-color) 58%,transparent)}.weapon-spell-timer{height:5px;overflow:hidden;border-radius:999px;background:#ffffff1f;box-shadow:inset 0 0 8px #0000006b}.weapon-spell-timer-fill{width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5dffb2,#dcff8f);box-shadow:0 0 14px var(--spell-color);transform-origin:left center;animation:weapon-spell-timer-drain linear forwards}.weapon-spell-grid{aspect-ratio:1;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);gap:7px;padding:9px;border-radius:8px;background:linear-gradient(color-mix(in srgb,var(--spell-color) 30%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--spell-color) 30%,transparent) 1px,transparent 1px),#030e1229;background-size:20% 20%}.weapon-spell-cell{position:relative;border:1px solid color-mix(in srgb,var(--spell-color) 64%,rgba(255,255,255,.18));border-radius:7px;background:radial-gradient(circle at 50% 46%,rgba(125,255,178,.14),transparent 42%),#030e1275;box-shadow:inset 0 0 12px #7dffb20d,0 0 9px color-mix(in srgb,var(--spell-color) 20%,transparent)}.weapon-spell-cell.is-center{border-color:#a9ff8eeb;background:#63f06a;box-shadow:0 0 18px #7dffb280,inset 0 0 12px #ffffff2e}.weapon-spell-cell.is-center:before{content:none}.weapon-spell-cell.is-target{border-color:color-mix(in srgb,var(--spell-hot) 76%,#ffffff);background:radial-gradient(circle,#ffffff2e,#7dffb21a 48%,#030e126b 78%),#030e127a;box-shadow:0 0 18px color-mix(in srgb,var(--spell-hot) 58%,transparent),inset 0 0 18px color-mix(in srgb,var(--spell-color) 22%,transparent)}.weapon-spell-target-icon{width:72%;height:72%;position:absolute;left:50%;top:50%;object-fit:contain;filter:drop-shadow(0 0 10px rgba(216,255,143,.72)) drop-shadow(0 0 18px rgba(125,255,178,.44));transform:translate(-50%,-50%);animation:weapon-spell-target-pulse .62s ease-in-out infinite alternate;pointer-events:none}.weapon-spell-cell.is-laser-target .weapon-spell-target-icon{filter:drop-shadow(0 0 10px rgba(126,255,255,.76)) drop-shadow(0 0 20px rgba(125,255,178,.42))}.weapon-spell-cell.is-blocked{border-color:transparent;background:transparent;box-shadow:none}.weapon-spell-cell.is-path{border-color:#ffffffd1;background:radial-gradient(circle,rgba(255,255,255,.92),color-mix(in srgb,var(--spell-color) 70%,transparent) 38%,transparent 70%),#ffffff1f;box-shadow:0 0 16px var(--spell-color),0 0 28px color-mix(in srgb,var(--spell-hot) 44%,transparent),inset 0 0 18px #fff3}.weapon-spell-cell.is-current{transform:scale(1.08)}.weapon-spell-overlay.is-success .weapon-spell-panel{box-shadow:0 0 42px #ffffff85,0 0 92px color-mix(in srgb,var(--spell-hot) 58%,transparent),inset 0 0 34px #ffffff1f}.weapon-spell-overlay.is-failed .weapon-spell-panel{border-color:#ff3f5f9e;filter:saturate(.74) brightness(.86)}@keyframes weapon-spell-timer-drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes weapon-spell-target-pulse{0%{transform:translate(-50%,-50%) scale(.9)}to{transform:translate(-50%,-50%) scale(1.1)}}.ending-screen{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:16px;background:#0000;opacity:0;pointer-events:none;transition:opacity .52s ease,background .72s ease}.ending-screen.is-visible{background:#000000c7;opacity:1;pointer-events:auto}.ending-content{display:grid;justify-items:center;transform:translateY(-3vh)}.ending-title{color:#fff;max-width:100%;font-size:clamp(20px,5.4vw,88px);font-weight:950;letter-spacing:0;line-height:.9;text-align:center;white-space:nowrap;text-shadow:0 0 26px rgba(255,105,92,.62),0 0 74px rgba(255,209,102,.3),0 10px 34px rgba(0,0,0,.88);opacity:0;transform:translateY(8px) scale(.97);transition:opacity .68s ease,transform .68s cubic-bezier(.2,1,.2,1)}.ending-screen.is-title-ready .ending-title{opacity:1;transform:scale(1)}.ending-play{min-width:96px;min-height:36px;margin-top:18px;padding:0 18px;border:1px solid rgba(255,209,102,.72);border-radius:8px;color:#fff7dd;background:linear-gradient(180deg,#ffd16642,#ff695c21),#061014c7;box-shadow:inset 0 0 0 1px #ffffff14,0 0 22px #ffd1663d,0 12px 34px #0000009e;font-size:13px;font-weight:950;letter-spacing:0;opacity:0;cursor:pointer;pointer-events:none;transform:translateY(12px);transition:opacity .36s ease,transform .36s cubic-bezier(.2,1,.2,1),border-color .14s ease,box-shadow .14s ease}.ending-play:hover,.ending-play:focus-visible{border-color:#ffffffdb;box-shadow:inset 0 0 0 1px #ffffff1f,0 0 30px #ffd16657,0 14px 38px #000000b3}.ending-play:focus-visible{outline:2px solid rgba(110,231,255,.74);outline-offset:3px}.ending-play:disabled{cursor:default}.ending-screen.is-play-ready .ending-play{opacity:1;pointer-events:auto;transform:translateY(0)}.toast{position:fixed;z-index:6;left:50%;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 62px);max-width:min(420px,calc(100vw - 32px));transform:translate(-50%,8px);padding:10px 13px;border:1px solid rgba(255,209,102,.34);border-radius:8px;color:#fff;background:#061014b8;box-shadow:0 18px 55px #00000047;font-size:13px;font-weight:750;opacity:0;pointer-events:none;transition:opacity .16s ease-out,transform .16s ease-out}.toast.is-visible{opacity:1;transform:translate(-50%)}.app-version{position:fixed;z-index:4;left:max(10px,env(safe-area-inset-left));bottom:max(8px,env(safe-area-inset-bottom));color:#efffff75;font-size:10px;font-weight:800;line-height:1;letter-spacing:0;pointer-events:none;text-shadow:0 1px 6px rgba(0,0,0,.82)}html.is-balance-admin,body.is-balance-admin{height:auto;min-height:100%;overflow:auto;touch-action:auto}body.is-balance-admin{background:radial-gradient(circle at 18% 8%,rgba(110,231,255,.18),transparent 28%),radial-gradient(circle at 78% 12%,rgba(255,209,102,.14),transparent 30%),#061014}body.is-balance-admin #balance-app{min-height:100vh}.balance-root{min-height:100vh;padding:24px}.balance-admin{width:min(1240px,100%);margin:0 auto;color:#efffff}.balance-admin-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.balance-kicker{margin:0 0 5px;color:#efffff94;font-size:11px;font-weight:900;letter-spacing:.12em}.balance-admin h1,.balance-admin h2{margin:0;letter-spacing:0}.balance-admin h1{font-size:30px;line-height:1}.balance-admin h2{font-size:14px;text-transform:uppercase}.balance-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.balance-actions.is-inline{justify-content:flex-start;margin-top:10px}.balance-button,.balance-link{min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid rgba(198,255,247,.28);border-radius:8px;color:#efffff;background:#ffffff14;font-size:12px;font-weight:850;text-decoration:none;cursor:pointer}.balance-button:hover,.balance-link:hover{border-color:#ffd1669e;background:#ffd16629}.balance-button.is-danger{border-color:#ff695c5c;color:#ffd6d1}.balance-panel,.balance-split{margin-top:12px}.balance-panel{padding:14px;border:1px solid var(--line);border-radius:8px;background:#041013b8;box-shadow:0 24px 80px #00000038;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.balance-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.balance-split .balance-panel{margin-top:0}.balance-panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.balance-panel-title span{color:#ffd166e0;font-size:11px;font-weight:900}.balance-field-grid{display:grid;grid-template-columns:repeat(5,minmax(92px,1fr));gap:9px}.balance-field-grid.is-target{grid-template-columns:repeat(3,minmax(90px,1fr))}.balance-field,.balance-toggle,.balance-cell,.balance-json-wrap{min-width:0;position:relative}.balance-field:after,.balance-toggle:after,.balance-cell:after,.balance-json-wrap:after{position:absolute;z-index:20;left:0;top:calc(100% + 8px);width:max-content;max-width:min(280px,calc(100vw - 48px));padding:8px 10px;border:1px solid rgba(255,209,102,.42);border-radius:8px;color:#fff;background:#050f12f5;box-shadow:0 18px 48px #00000057;content:attr(data-help);font-size:11px;font-weight:750;line-height:1.45;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease-out,transform .12s ease-out}.balance-field:hover:after,.balance-field:focus-within:after,.balance-toggle:hover:after,.balance-toggle:focus-within:after,.balance-cell:hover:after,.balance-cell:focus-within:after,.balance-json-wrap:hover:after,.balance-json-wrap:focus-within:after{opacity:1;transform:translateY(0)}.balance-field span,.balance-toggle span{display:block;margin-bottom:5px;color:#efffff9e;font-size:9px;font-weight:900}.balance-input,.balance-json{width:100%;border:1px solid rgba(198,255,247,.2);border-radius:8px;color:#efffff;background:#ffffff12;font:inherit;font-size:13px;font-weight:750}.balance-input{height:34px;padding:0 9px}.balance-cell{display:block}.balance-input:focus,.balance-json:focus{outline:2px solid rgba(110,231,255,.38);border-color:#6ee7ff8f}.balance-toggle{min-height:34px;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid rgba(198,255,247,.2);border-radius:8px;background:#ffffff12}.balance-toggle span{margin:0}.balance-toggle input{width:16px;height:16px;accent-color:var(--hot)}.balance-band-table,.balance-preview{display:grid;gap:6px}.balance-band-table{grid-template-columns:.7fr .7fr 1.3fr 1fr 1fr}.balance-band-head{color:#efffff99;font-size:9px;font-weight:900}.balance-preview-row{display:grid;grid-template-columns:.6fr 1.1fr repeat(6,minmax(62px,1fr));gap:6px;align-items:center;min-height:34px;padding:0 9px;border:1px solid rgba(198,255,247,.16);border-radius:8px;background:#ffffff0d;font-size:12px;font-weight:780}.balance-preview-row.is-head{min-height:auto;border:0;background:transparent;color:#efffff94;font-size:9px;font-weight:900}.balance-json{min-height:260px;padding:12px;resize:vertical;font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;line-height:1.45}.balance-json-wrap{display:block}@media(max-width:720px){.hud-top{grid-template-columns:minmax(88px,1fr) minmax(188px,auto) minmax(44px,1fr);grid-template-areas:"brand status lives" "hit hit hit";column-gap:7px;row-gap:7px}.brand{grid-area:brand;justify-self:start;max-width:100%;font-size:14px;gap:6px}.brand-mark{width:11px;height:15px}.status-row{grid-area:status;width:100%;justify-content:center;gap:4px}.meter{flex:0 0 auto;min-width:38px;padding:5px}.points-meter{min-width:50px}.meter-label{font-size:8px}.meter strong{font-size:12px}.life-hearts{grid-area:lives;justify-self:end;gap:4px;max-width:92px;padding-top:8px}.life-heart{--life-size: 13px}.hit-panel{grid-area:hit;width:100%;padding:8px}}@media(max-width:390px){.hud-top{grid-template-columns:minmax(66px,1fr) minmax(178px,auto) minmax(38px,1fr);column-gap:5px}.brand{font-size:12px}.brand-mark{display:none}.meter{min-width:0;padding:4px 5px}.meter-label{font-size:8px}.meter strong{font-size:12px}.life-heart{--life-size: 12px}.life-hearts{max-width:72px}.hud-bottom{width:max-content}}@media(max-width:920px){.balance-root{padding:16px}.balance-admin-header,.balance-split{grid-template-columns:1fr}.balance-admin-header{display:grid}.balance-actions{justify-content:flex-start}.balance-field-grid,.balance-field-grid.is-target{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-preview{overflow-x:auto;padding-bottom:4px}.balance-preview-row{min-width:720px}}@media(max-width:560px){.balance-root{padding:12px}.balance-field-grid,.balance-field-grid.is-target,.balance-band-table{grid-template-columns:1fr}.balance-band-head{display:none}}
