.nova-stage{--nova-accent:#22d3ee;isolation:isolate;background:radial-gradient(ellipse at 18% 16%, color-mix(in srgb, var(--nova-accent) 22%, transparent), transparent 34%), radial-gradient(ellipse at 82% 78%, #a78bfa29, transparent 38%), linear-gradient(150deg, #070a2080, #1f0c375c)}.nova-holo-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.nova-stage-texture,.nova-stage-haze,.nova-holo-orb{pointer-events:none;position:absolute}.nova-stage-texture{opacity:.38;will-change:transform, opacity;inset:-18%;transform:translate(0,0)}.nova-stage-haze{background:var(--nova-accent);filter:blur(58px);opacity:.09;will-change:transform, opacity;border-radius:44%;width:52%;height:42%;transform:translate(0,0)}.nova-stage-haze--a{top:8%;left:-18%}.nova-stage-haze--b{background:#a78bfa;bottom:-4%;right:-16%}.nova-holo-orb{background:radial-gradient(circle at 35% 30%, #ffffffd1, transparent 18%), radial-gradient(circle at 50% 50%, var(--nova-accent), transparent 68%);filter:blur(5px);box-shadow:0 0 18px color-mix(in srgb, var(--nova-accent) 48%, transparent);will-change:transform, opacity;border-radius:46%;transform:translate(0,0)scale(.82)}.nova-holo-backdrop--running .nova-holo-orb{animation:nova-holo-orb-drift var(--nova-orb-duration) ease-in-out var(--nova-orb-delay) infinite}.nova-holo-backdrop--running .nova-stage-haze--a{animation:13s ease-in-out infinite nova-holo-haze-a}.nova-holo-backdrop--running .nova-stage-haze--b{animation:16s ease-in-out -7s infinite nova-holo-haze-b}.nova-stage--lanes .nova-stage-texture{background:linear-gradient(90deg, transparent 16%, color-mix(in srgb, var(--nova-accent) 40%, transparent) 17%, transparent 18% 49%, #ffffff38 50%, transparent 51% 81%, color-mix(in srgb, var(--nova-accent) 40%, transparent) 82%, transparent 83%), repeating-linear-gradient(0deg, transparent 0 30px, color-mix(in srgb, var(--nova-accent) 18%, transparent) 31px 34px, transparent 35px 52px)}.nova-stage--lanes .nova-holo-backdrop--running .nova-stage-texture{animation:2.8s linear infinite nova-lane-scroll}.nova-stage--falling .nova-stage-texture{background:radial-gradient(ellipse at 14% 18%, var(--nova-accent) 0 2px, transparent 8px), radial-gradient(ellipse at 38% 48%, #ffffffb8 0 1px, transparent 7px), radial-gradient(ellipse at 66% 28%, #a78bfa 0 2px, transparent 9px), radial-gradient(ellipse at 86% 62%, var(--nova-accent) 0 2px, transparent 8px), repeating-linear-gradient(93deg, transparent 0 46px, color-mix(in srgb, var(--nova-accent) 14%, transparent) 47px, transparent 49px 82px);background-size:126px 164px,152px 186px,180px 205px,138px 174px,auto}.nova-stage--falling .nova-holo-backdrop--running .nova-stage-texture{animation:4.6s linear infinite nova-rain-fall}.nova-stage--star-map .nova-stage-texture{background:linear-gradient(23deg, transparent 28%, #ffffff17 28.4% 28.8%, transparent 29.2%), linear-gradient(151deg, transparent 61%, color-mix(in srgb, var(--nova-accent) 18%, transparent) 61.4% 61.8%, transparent 62.2%), radial-gradient(circle at 12% 22%, #ffffffe6 0 1px, transparent 2px), radial-gradient(circle at 31% 65%, var(--nova-accent) 0 2px, transparent 4px), radial-gradient(circle at 52% 34%, #ffffffb8 0 1px, transparent 3px), radial-gradient(circle at 74% 74%, #a78bfa 0 2px, transparent 4px), radial-gradient(circle at 91% 18%, #ffffffd1 0 1px, transparent 3px);opacity:.5;inset:0}.nova-stage--constellation .nova-stage-texture{transform:skewY(-4deg)scale(1.08)}.nova-stage--weave .nova-stage-texture{background:radial-gradient(circle, var(--nova-accent) 0 3px, transparent 5px) 10px 10px / 54px 54px, linear-gradient(132deg, transparent 37%, color-mix(in srgb, var(--nova-accent) 26%, transparent) 37.4% 38%, transparent 38.4%);opacity:.42;transform:rotate(-5deg)scale(1.2)}.nova-stage--swell .nova-stage-texture{background:radial-gradient(ellipse at center, #ffffff29, transparent 22%), radial-gradient(ellipse at center, color-mix(in srgb, var(--nova-accent) 38%, transparent), transparent 68%);filter:blur(18px);opacity:.46;border-radius:38%;inset:18%}.nova-stage--swell .nova-holo-backdrop--running .nova-stage-texture{animation:4.2s ease-in-out infinite nova-soft-swell}.nova-stage--hold .nova-stage-texture{transform:skew(-9deg)scale(.9)}.nova-stage--tile-board .nova-stage-texture{background:linear-gradient(color-mix(in srgb, var(--nova-accent) 16%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--nova-accent) 16%, transparent) 1px, transparent 1px), linear-gradient(145deg, #ffffff0e, #a78bfa06);opacity:.52;background-size:16.666% 25%,16.666% 25%,auto;border-radius:22px;inset:7% 3% 10%;box-shadow:0 18px 46px #0003}.nova-stage--paint .nova-stage-texture{background:linear-gradient(90deg, #22d3ee1f, transparent 48%, #a78bfa1f), linear-gradient(color-mix(in srgb, var(--nova-accent) 18%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--nova-accent) 18%, transparent) 1px, transparent 1px);background-size:auto,16.666% 25%,16.666% 25%}.nova-stage--pad-stage .nova-stage-texture{opacity:.48;background:linear-gradient(135deg,#22d3ee2e,#0000 42%) 0 0/48% 46% no-repeat,linear-gradient(225deg,#a78bfa2e,#0000 42%) 100% 0/48% 46% no-repeat,linear-gradient(45deg,#fbbf2429,#0000 42%) 0 100%/48% 46% no-repeat,linear-gradient(315deg,#34d39929,#0000 42%) 100% 100%/48% 46% no-repeat;border-radius:28px;inset:19% 10%;transform:perspective(420px)rotateX(8deg)}.nova-stage--quiz .nova-stage-texture{transform:perspective(420px)rotateX(8deg)scale(.92)}.nova-stage--scoop .nova-stage-texture{background:linear-gradient(118deg, transparent 47%, color-mix(in srgb, var(--nova-accent) 20%, transparent) 48% 49%, transparent 50%), linear-gradient(242deg, transparent 47%, color-mix(in srgb, var(--nova-accent) 20%, transparent) 48% 49%, transparent 50%), linear-gradient(to top, color-mix(in srgb, var(--nova-accent) 20%, transparent), transparent 34%);transform:scaleX(.76)}.nova-stage--slice .nova-stage-texture{background:repeating-linear-gradient(128deg, transparent 0 38px, #ffffff1a 39px, color-mix(in srgb, var(--nova-accent) 16%, transparent) 41px, transparent 44px 76px)}.nova-stage--slice .nova-holo-backdrop--running .nova-stage-texture{animation:5.4s linear infinite nova-slice-stream}.nova-stage--stackdrop .nova-stage-texture{background:repeating-linear-gradient(0deg, transparent 0 35px, color-mix(in srgb, var(--nova-accent) 15%, transparent) 36px 48px, transparent 49px 70px);transform:perspective(360px)rotateX(7deg)scaleX(.72)}.nova-stage--aim .nova-stage-texture{background:linear-gradient(118deg, transparent 49.5%, color-mix(in srgb, var(--nova-accent) 26%, transparent) 50%, transparent 50.5%), linear-gradient(242deg, transparent 49.5%, color-mix(in srgb, var(--nova-accent) 26%, transparent) 50%, transparent 50.5%), linear-gradient(90deg, transparent 49.7%, #ffffff26 50%, transparent 50.3%);transform-origin:50% 100%;transform:perspective(400px)rotateX(14deg)}.nova-stage--tug .nova-stage-texture{background:linear-gradient(90deg,#22d3ee21,#0000 44% 56%,#a78bfa21),repeating-linear-gradient(90deg,#0000 0 26px,#ffffff17 27px 29px);transform:scaleY(.42)}.nova-stage--relay .nova-stage-texture{background:linear-gradient(0deg, transparent 43%, color-mix(in srgb, var(--nova-accent) 18%, transparent) 44% 56%, transparent 57%), repeating-linear-gradient(90deg, transparent 0 34px, #ffffff2b 35px 47px, transparent 48px 68px);transform:perspective(360px)rotateX(18deg)}.nova-stage--relay .nova-holo-backdrop--running .nova-stage-texture{animation:3.2s linear infinite nova-relay-dashes}.nova-stage--sort .nova-stage-texture{opacity:.5;background:linear-gradient(90deg,#22d3ee1f 0 31%,#0000 31% 34%,#a78bfa1f 34% 65%,#0000 65% 68%,#fbbf241f 68%),linear-gradient(#0000 36%,#ffffff0d);border-radius:24px;inset:12% 4% 7%}.nova-stage--locksteal .nova-stage-texture{background:linear-gradient(32deg,#0000 42%,#22d3ee26 43% 45%,#0000 46%),linear-gradient(148deg,#0000 42%,#a78bfa26 43% 45%,#0000 46%);transform:scale(1.18)}.nova-stage--tap .nova-stage-texture{background:linear-gradient(45deg, transparent 49%, #ffffff1c 50%, transparent 51%) 0 0 / 88px 88px, linear-gradient(135deg, transparent 49%, color-mix(in srgb, var(--nova-accent) 16%, transparent) 50%, transparent 51%) 0 0 / 88px 88px;opacity:.34}.nova-piece-hazard,.nova-hazard-shard{color:#ffffffeb;background:linear-gradient(145deg, #ffffffdb, var(--nova-shard,#fbbf24) 32%, color-mix(in srgb, var(--nova-shard,#fbbf24) 46%, #3a1c71));box-shadow:0 0 8px color-mix(in srgb, var(--nova-shard,#fbbf24) 78%, transparent), 0 0 22px color-mix(in srgb, var(--nova-shard,#fbbf24) 42%, transparent);clip-path:polygon(50% 0,88% 30%,70% 100%,24% 76%,0 35%);text-shadow:0 0 6px #ffffffe6;border:0;border-radius:24% 68% 30% 62%;place-items:center;display:grid}.nova-piece-hazard{width:2rem;height:2.35rem}.nova-hazard-shard{will-change:transform;width:2.15rem;height:2.55rem;font-size:.9rem;font-weight:900}@keyframes nova-holo-orb-drift{0%,to{opacity:.16;transform:translate(0,0)scale(.82)rotate(0)}50%{transform:translate3d(var(--nova-orb-x), var(--nova-orb-y), 0) scale(1.12) rotate(18deg);opacity:.5}}@keyframes nova-holo-haze-a{0%,to{opacity:.07;transform:translate(0,0)scale(1)}50%{opacity:.13;transform:translate(28%,16%)scale(1.12)}}@keyframes nova-holo-haze-b{0%,to{opacity:.06;transform:translate(0,0)scale(1)}50%{opacity:.12;transform:translate(-24%,-14%)scale(1.16)}}@keyframes nova-lane-scroll{0%{transform:translateY(-52px)}to{transform:translate(0,0)}}@keyframes nova-rain-fall{0%{transform:translateY(-25%)}to{transform:translateY(25%)}}@keyframes nova-soft-swell{0%,to{opacity:.3;transform:scale(.82)}50%{opacity:.58;transform:scale(1.16)}}@keyframes nova-slice-stream{0%{transform:translate(-6%)}to{transform:translate(6%)}}@keyframes nova-relay-dashes{0%{transform:perspective(360px)rotateX(18deg)translate(-34px)}to{transform:perspective(360px)rotateX(18deg)translate(34px)}}@media (prefers-reduced-motion:reduce){.nova-holo-backdrop--running .nova-holo-orb,.nova-holo-backdrop--running .nova-stage-haze,.nova-holo-backdrop--running .nova-stage-texture{animation:none!important}}