.concert-arena{--stage-glow:#fb7185;--stage-from:#3f0d2c;--stage-to:#0b1220;position:relative;overflow:hidden;isolation:isolate;color:#fff;background:radial-gradient(70% 50% at 50% 0,color-mix(in srgb,var(--stage-glow) 22%,transparent),transparent 56%),radial-gradient(90% 60% at 50% 115%,color-mix(in srgb,var(--stage-glow) 28%,transparent),transparent 62%),linear-gradient(180deg,#05060c 0,var(--stage-from) 38%,var(--stage-to) 72%,#03040a 100%);perspective:1380px;perspective-origin:50% 38%}.concert-arena.is-compact{perspective:1100px}.concert-cam{position:absolute;inset:0;transform-style:preserve-3d;animation:concert-cam 22s ease-in-out infinite}@keyframes concert-cam{0%,to{transform:rotateX(7deg) rotateY(-6.5deg) translate3d(0,4px,0)}35%{transform:rotateX(10deg) rotateY(3deg) translate3d(8px,-2px,28px)}70%{transform:rotateX(8deg) rotateY(6.5deg) translate3d(-6px,6px,12px)}}.concert-world{position:absolute;inset:0;transform-style:preserve-3d}.concert-back{position:absolute;inset:0 0 18% 0;background:radial-gradient(ellipse at 50% 80%,color-mix(in srgb,var(--stage-glow) 16%,transparent),transparent 55%),linear-gradient(180deg,#07080f,#0a0c14 70%,transparent);transform:translateZ(-280px) scale(1.18)}.concert-led{position:absolute;left:11%;right:11%;top:5%;height:27%;transform:translateZ(-210px) rotateX(-6deg);border-radius:10px;border:2px solid color-mix(in srgb,var(--stage-glow) 65%,#fff);background:#05070d;box-shadow:0 0 40px color-mix(in srgb,var(--stage-glow) 40%,transparent),0 0 0 3px rgba(0,0,0,.45),inset 0 0 30px rgba(0,0,0,.55);overflow:hidden}.concert-led-scan{position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 2px,rgba(0,0,0,.18) 2px 3px);pointer-events:none;mix-blend-mode:multiply;opacity:.55}.concert-led-inner{position:relative;z-index:1;display:flex;height:100%;align-items:center;gap:12px;padding:0 14px}.concert-led-kicker{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb,var(--stage-glow) 80%,#fff)}.concert-side{position:absolute;top:16%;width:15%;height:42%;border-radius:8px;border:1px solid color-mix(in srgb,var(--stage-glow) 45%,#fff);background:#06080e;overflow:hidden;box-shadow:0 0 24px color-mix(in srgb,var(--stage-glow) 25%,transparent)}.concert-side.is-left{left:1%;transform:translateZ(-140px) rotateY(28deg)}.concert-side.is-right{right:1%;transform:translateZ(-140px) rotateY(-28deg)}.concert-side-track{display:flex;flex-direction:column;gap:6px;padding:8px;animation:concert-side-scroll 18s linear infinite}@keyframes concert-side-scroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.concert-side-row{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:9px;font-weight:700;color:#fff;white-space:nowrap}.concert-side-row span{color:#9aa8b0;font-weight:600}.concert-truss{position:absolute;left:8%;right:8%;top:2%;height:10px;border-radius:4px;background:linear-gradient(180deg,#3a3f4c,#16181f);box-shadow:0 8px 18px rgba(0,0,0,.45);transform:translateZ(-40px);display:flex;justify-content:space-around;align-items:flex-end;padding:0 8%}.concert-par{width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,var(--par,var(--stage-glow)) 45%,#111);box-shadow:0 0 16px var(--par,var(--stage-glow));transform:translateY(10px)}.concert-beams{inset:0;z-index:1}.concert-beam,.concert-beams{position:absolute;pointer-events:none}.concert-beam{top:-4%;width:22%;height:72%;background:linear-gradient(180deg,color-mix(in srgb,var(--beam) 55%,transparent),color-mix(in srgb,var(--beam) 18%,transparent) 42%,transparent 78%);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);mix-blend-mode:screen;opacity:.55;filter:blur(.4px);animation:concert-beam 5.6s ease-in-out infinite alternate;transform-origin:top center}.concert-beams .concert-beam:first-child{left:4%;--beam:#fda4af;animation-delay:0s}.concert-beams .concert-beam:nth-child(2){left:22%;--beam:#fde68a;animation-delay:-1.4s}.concert-beams .concert-beam:nth-child(3){left:39%;--beam:#fff;animation-delay:-2.2s;opacity:.7}.concert-beams .concert-beam:nth-child(4){left:56%;--beam:#67e8f9;animation-delay:-3.1s}.concert-beams .concert-beam:nth-child(5){left:74%;--beam:#c4b5fd;animation-delay:-4s}@keyframes concert-beam{0%{transform:rotate(-7deg) translateX(-10px);opacity:.28}to{transform:rotate(7deg) translateX(12px);opacity:.72}}.concert-wash{position:absolute;inset:0;pointer-events:none;background:radial-gradient(40% 50% at 18% 30%,color-mix(in srgb,var(--stage-glow) 28%,transparent),transparent 70%),radial-gradient(40% 50% at 82% 24%,rgba(125,211,252,.22),transparent 70%);mix-blend-mode:screen;animation:concert-wash 7s ease-in-out infinite alternate}@keyframes concert-wash{0%{opacity:.45;filter:hue-rotate(0deg)}to{opacity:.9;filter:hue-rotate(18deg)}}.concert-strobe{position:absolute;inset:0;pointer-events:none;background:#fff;mix-blend-mode:overlay;animation:concert-strobe .55s steps(1) infinite;z-index:4}@keyframes concert-strobe{0%,84%,to{opacity:0}86%{opacity:.14}90%{opacity:0}92%{opacity:.08}}.concert-floor{position:absolute;left:6%;right:6%;bottom:16%;height:34%;transform:translateZ(-20px) rotateX(74deg);transform-origin:50% 100%;border-radius:6px;background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.02) 28%,transparent 55%),repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 28px,transparent 28px 56px),linear-gradient(180deg,color-mix(in srgb,var(--stage-glow) 32%,#1a1422),#08080e);box-shadow:0 0 0 2px color-mix(in srgb,var(--stage-glow) 35%,transparent),0 30px 60px rgba(0,0,0,.45),0 -20px 50px color-mix(in srgb,var(--stage-glow) 22%,transparent)}.concert-floor-lip{position:absolute;left:5%;right:5%;bottom:15%;height:8px;border-radius:4px;background:linear-gradient(90deg,transparent,var(--stage-glow),#fff,var(--stage-glow),transparent);box-shadow:0 0 18px var(--stage-glow);opacity:.7;animation:concert-lip 1.1s ease-in-out infinite alternate}@keyframes concert-lip{0%{opacity:.35;filter:brightness(.8)}to{opacity:.95;filter:brightness(1.4)}}.concert-idol{position:absolute;bottom:13%;display:flex;flex-direction:column;align-items:center;width:18%;max-width:150px;transform:translateX(-50%) translateZ(var(--z,0));z-index:2}.concert-idol.is-center{width:22%;max-width:180px;z-index:5}.concert-arena.is-compact .concert-idol{width:19%;max-width:120px}.concert-arena.is-compact .concert-idol.is-center{width:22%;max-width:140px}.concert-idol .idol{width:100%;height:auto;filter:drop-shadow(0 12px 14px rgba(0,0,0,.45))}.concert-reflect{position:absolute;left:8%;right:8%;top:78%;opacity:.28;transform:scaleY(-.55);transform-origin:top center;filter:blur(1.2px);pointer-events:none;mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 70%);-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 70%)}.concert-arena.is-compact .concert-reflect{display:none}.concert-crowd{position:absolute;left:0;right:0;bottom:0;height:22%;pointer-events:none;transform:translateZ(80px);z-index:6}.concert-phone{position:absolute;border-radius:2px;background:#fff;box-shadow:0 0 8px currentColor;animation:concert-phone 1.4s ease-in-out infinite}@keyframes concert-phone{0%,to{transform:translateY(0) scale(.85);opacity:.45}50%{transform:translateY(-5px) scale(1.15);opacity:1}}.concert-fog{inset:auto 0 0 0;height:36%;background:linear-gradient(180deg,transparent,rgba(8,10,18,.15) 30%,rgba(10,12,22,.55));z-index:5}.concert-fog,.concert-vignette{position:absolute;pointer-events:none}.concert-vignette{inset:0;box-shadow:inset 0 0 80px 16px rgba(0,0,0,.55);z-index:7}.concert-ticker{overflow:hidden;white-space:nowrap;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.concert-ticker-track{display:inline-flex;gap:14px;padding:4px 0;animation:concert-ticker 32s linear infinite;width:max-content}@keyframes concert-ticker{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.concert-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.45);padding:2px 8px;font-size:10px;font-weight:700;color:#fff;text-decoration:none}.concert-chip:hover{background:rgba(0,0,0,.7);color:#fff}.live-idol-overlay{pointer-events:none;position:absolute;inset:0;z-index:2;overflow:hidden}.live-idol-overlay .live-idol-ticker{pointer-events:auto;position:absolute;top:42px;left:8px;right:8px}.live-idol-row{position:absolute;right:6px;bottom:56px;display:flex;align-items:flex-end;justify-content:flex-end;gap:2px;width:min(58%,420px)}.live-idol-overlay.is-wide .live-idol-row{left:8px;right:8px;width:auto;justify-content:center}.live-idol-slot{display:flex;flex-direction:column;align-items:center;width:18%;max-width:92px;pointer-events:auto}.live-idol-slot.is-center{width:22%;max-width:110px}.live-idol-slot .idol{width:100%;filter:drop-shadow(0 8px 10px rgba(0,0,0,.55))}.live-idol-overlay .idol-plaque{pointer-events:auto}@media (prefers-reduced-motion:reduce){.concert-beam,.concert-cam,.concert-lip,.concert-phone,.concert-side-track,.concert-strobe,.concert-ticker-track,.concert-wash{animation:none!important}}.live2d-idol{width:100%;height:auto;display:block;overflow:visible;filter:drop-shadow(0 12px 14px rgba(0,0,0,.45));pointer-events:none}.arena-wall{position:absolute;top:0;bottom:14%;background:linear-gradient(90deg,#04050a,#0b0d18);border:1px solid rgba(255,255,255,.06);transform-style:preserve-3d;width:34%;pointer-events:none}.arena-wall.is-left{left:0;transform:rotateY(66deg);transform-origin:left center}.arena-wall.is-right{right:0;transform:rotateY(-66deg);transform-origin:right center}.arena-wall-led{position:absolute;inset:12% 8% 30% 8%;border-radius:6px;background:radial-gradient(circle,color-mix(in srgb,var(--stage-glow) 80%,#fff) 1px,transparent 1.6px) 0 0/7px 7px,linear-gradient(120deg,var(--stage-glow),#67e8f9,#c4b5fd,var(--stage-glow));background-size:7px 7px,300% 100%;animation:arena-led 6s linear infinite;opacity:.55;box-shadow:0 0 40px color-mix(in srgb,var(--stage-glow) 40%,transparent)}@keyframes arena-led{to{background-position:0 0,300% 0}}.arena-roof{position:absolute;inset:0;pointer-events:none;transform-style:preserve-3d}.arena-roof span{position:absolute;left:0;right:0;top:0;height:6px;background:repeating-linear-gradient(90deg,#4b5060 0 3px,transparent 3px 14px),linear-gradient(#2b2f3a,#12141a);transform:translateY(calc(var(--i) * 3px)) translateZ(calc(-300px + var(--i) * 70px)) rotateX(80deg);opacity:calc(.4 + var(--i) * .1)}.arena-tower{position:absolute;bottom:14%;width:3.2%;height:78%;background:repeating-linear-gradient(45deg,#3a3f4c 0 2px,transparent 2px 9px),repeating-linear-gradient(-45deg,#3a3f4c 0 2px,transparent 2px 9px);border-left:2px solid #4b5262;border-right:2px solid #4b5262;transform:translateZ(-60px)}.arena-tower.is-left{left:6%}.arena-tower.is-right{right:6%}.arena-pyro{position:absolute;bottom:16%;width:6%;height:34%;pointer-events:none;z-index:2;background:radial-gradient(50% 100% at 50% 100%,#fff7c2,#fb923c 40%,rgba(239,68,68,0) 72%);filter:blur(3px);mix-blend-mode:screen;transform-origin:bottom center;animation:arena-pyro 4.8s ease-out infinite;opacity:0}.arena-pyro.is-left{left:12%}.arena-pyro.is-right{right:12%;animation-delay:-2.4s}@keyframes arena-pyro{0%,70%{opacity:0;transform:scaleY(.1)}74%{opacity:1;transform:scaleY(1.1)}90%{opacity:.5;transform:scaleY(.8)}to{opacity:0;transform:scaleY(.3)}}.arena-grid{position:absolute;left:-20%;right:-20%;bottom:-4%;height:46%;pointer-events:none;background:linear-gradient(color-mix(in srgb,var(--stage-glow) 50%,transparent) 1px,transparent 1px) 0 0/100% 34px,linear-gradient(90deg,color-mix(in srgb,var(--stage-glow) 50%,transparent) 1px,transparent 1px) 0 0/48px 100%;transform:rotateX(78deg);transform-origin:bottom center;opacity:.35;animation:arena-grid 2.4s linear infinite;mask-image:linear-gradient(0deg,#000 30%,transparent)}@keyframes arena-grid{to{background-position:0 34px,0 0}}.arena-runway{left:44%;width:12%;bottom:-2%;height:22%;background:linear-gradient(to top,color-mix(in srgb,var(--stage-glow) 50%,#fff),transparent);opacity:.25;transform:rotateX(70deg);transform-origin:bottom center}.arena-heads,.arena-runway{position:absolute;pointer-events:none}.arena-heads{left:0;right:0;bottom:-6px;height:48px;z-index:8}.arena-heads span{position:absolute;bottom:0;width:5%;height:var(--h);background:radial-gradient(circle at 50% 30%,#0a0a12 45%,transparent 47%),linear-gradient(transparent 55%,#05050a 0);border-radius:50% 50% 0 0;animation:arena-bob .9s ease-in-out infinite alternate}.arena-heads span i{position:absolute;left:70%;bottom:60%;width:4px;height:26px;border-radius:3px;box-shadow:0 0 10px currentColor,0 0 18px currentColor;transform-origin:bottom;animation:arena-stick .45s ease-in-out infinite alternate}@keyframes arena-bob{to{transform:translateY(-6px)}}@keyframes arena-stick{0%{transform:rotate(-25deg)}to{transform:rotate(25deg)}}.concert-3d-boot,.concert-3d-root{position:absolute;inset:0}.concert-3d-root canvas{display:block;width:100%!important;height:100%!important}.concert-3d-boot{display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);font-size:13px;background:#05060c}.concert-webgl-fallback{position:absolute;top:10px;left:12px;right:12px;z-index:6;border-radius:12px;background:rgba(0,0,0,.55);padding:8px 12px;font-size:12px;color:#ffe4e6}.idol-html{flex-direction:column;gap:6px;pointer-events:auto}.idol-html,.stage-desk{display:flex;align-items:center}.stage-desk{flex-wrap:wrap;gap:8px;margin-top:10px;padding:8px 10px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.28)}.stage-desk.is-compact{margin-top:6px;padding:4px 8px;gap:6px;border-radius:12px}.stage-desk.is-compact .stage-desk-banner{font-size:11px}.stage-desk.is-compact .stage-desk-meta{font-size:10px}.stage-desk-btn{display:inline-flex;align-items:center;gap:6px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:#fff;padding:5px 10px;font-size:11px}.stage-desk-btn.is-on{border-color:rgba(244,114,182,.45);background:rgba(244,114,182,.15)}.stage-desk-vol input{width:84px;accent-color:#f9a8d4}.stage-desk-select{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:rgba(255,255,255,.65)}.stage-desk-select select{border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#0b0d14;color:#fff;padding:4px 8px;font-size:11px;max-width:148px}.stage-desk-meta{display:flex;align-items:center;gap:6px;min-width:0;flex:1;font-size:11px;color:rgba(255,255,255,.62)}.stage-desk-banner{width:100%;font-size:12px;font-weight:600;color:#fde68a}.live-idol-3d-frame{position:absolute;inset:0}.live-idol-overlay .live-idol-3d-frame{top:auto;left:0;right:0;bottom:0;height:52%!important;border:0;border-radius:0;background:linear-gradient(180deg,transparent,rgba(5,6,12,.55) 28%,#05060c)}.live-idol-overlay .concert-3d-root,.live-idol-overlay .concert-3d-root canvas{pointer-events:none}.concert-3d-root .idol-html--sky{display:none}.concert-3d-root .idol-html--feet{max-width:92px}.concert-3d-root .idol-plaque--3d{margin-top:0;padding:1px 6px;font-size:8px;letter-spacing:.02em;background:rgba(0,0,0,.78);border:1px solid rgba(255,255,255,.4);white-space:nowrap;max-width:92px}.concert-3d-root .idol-html--row-a{transform:translateY(2px)}.concert-3d-root .idol-html--row-b{transform:translateY(-2px)}@media (max-width:640px){.concert-3d-root .idol-bubble--3d{display:none}}.idol-stage{--stage-glow:#fb7185;--stage-from:#3f0d2c;--stage-to:#0b1220;position:relative;overflow:hidden;isolation:isolate;color:#fff;background:radial-gradient(80% 70% at 50% 120%,color-mix(in srgb,var(--stage-glow) 35%,transparent),transparent 60%),radial-gradient(40% 50% at 15% 10%,color-mix(in srgb,var(--stage-glow) 22%,transparent),transparent 55%),radial-gradient(40% 50% at 85% 8%,rgba(125,211,252,.18),transparent 50%),linear-gradient(180deg,var(--stage-from),var(--stage-to) 58%,#05080d)}.idol-stage[data-dark]{color:#fff}.idol-spot{position:absolute;top:-10%;width:28%;height:85%;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--spot,#fff) 42%,transparent),transparent 72%);clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);mix-blend-mode:screen;opacity:.55;animation:idol-spot-sweep 7s ease-in-out infinite alternate}.idol-spot:first-child{left:6%;--spot:#fda4af;animation-delay:0s}.idol-spot:nth-child(2){left:36%;--spot:#fde68a;animation-delay:-2.4s;opacity:.7}.idol-spot:nth-child(3){left:66%;--spot:#67e8f9;animation-delay:-4.2s}@keyframes idol-spot-sweep{0%{transform:translateX(-8%) rotate(-4deg);opacity:.35}to{transform:translateX(10%) rotate(5deg);opacity:.7}}.idol-spark{position:absolute;width:6px;height:6px;border-radius:999px;background:#fff;box-shadow:0 0 10px 3px color-mix(in srgb,var(--stage-glow) 80%,white);animation:idol-spark-fall 4.8s linear infinite;pointer-events:none}@keyframes idol-spark-fall{0%{transform:translate3d(0,-10%,0) scale(.4);opacity:0}12%{opacity:1}to{transform:translate3d(var(--sx,12px),120%,0) scale(.1);opacity:0}}.idol-floor{position:absolute;left:4%;right:4%;bottom:0;height:28%;border-radius:50% 50% 0 0/28% 28% 0 0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 14px,transparent 14px 28px),linear-gradient(180deg,color-mix(in srgb,var(--stage-glow) 28%,transparent),rgba(0,0,0,.55));box-shadow:0 -20px 50px color-mix(in srgb,var(--stage-glow) 25%,transparent);pointer-events:none}.idol-board{position:absolute;left:10%;right:10%;top:4%;height:22%;border-radius:14px;background:#071018;border:2px solid color-mix(in srgb,var(--stage-glow) 55%,#fff);box-shadow:0 0 30px color-mix(in srgb,var(--stage-glow) 35%,transparent),inset 0 0 24px rgba(0,0,0,.55);overflow:hidden}.idol-slot{position:absolute;bottom:6%;display:flex;flex-direction:column;align-items:center;width:22%;max-width:160px;transform:translateX(-50%);z-index:2}.idol-slot.is-center{width:26%;max-width:190px;z-index:5}.idol-bubble{max-width:100%;margin-bottom:4px;padding:4px 8px;border-radius:12px 12px 12px 4px;background:rgba(255,255,255,.94);color:#1e1230;font-size:10px;font-weight:650;line-height:1.25;text-align:center;animation:idol-bubble-pop 4.2s ease-in-out infinite;box-shadow:0 6px 18px rgba(0,0,0,.25)}@keyframes idol-bubble-pop{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.03)}}.idol-plaque{margin-top:-6px;padding:2px 8px;border-radius:999px;background:rgba(0,0,0,.62);border:1px solid color-mix(in srgb,var(--stage-glow) 50%,white);color:#fff;font-size:10px;font-weight:700;letter-spacing:.04em;z-index:3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.idol{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 10px 10px rgba(0,0,0,.35))}.idol-shadow{opacity:.35}.idol .idol-arm,.idol .idol-hair-back,.idol .idol-head,.idol .idol-leg,.idol .idol-skirt{transform-box:fill-box;transform-origin:center top}.idol .idol-head{transform-origin:50% 80%}.idol .idol-skirt{transform-origin:50% 0}.idol .idol-hair-back{transform-origin:50% 10%}.idol .idol-root{transform-origin:50% 92%;transform-box:fill-box}.dance-pump-bounce .idol-root{animation:d-bounce .55s ease-in-out infinite}.dance-pump-bounce .idol-arm-l{animation:d-arm-up .55s ease-in-out infinite}.dance-pump-bounce .idol-arm-r{animation:d-arm-up .55s ease-in-out infinite reverse}.dance-pump-bounce .idol-head{animation:d-nod .55s ease-in-out infinite}.dance-side-shuffle .idol-root{animation:d-shuffle .42s ease-in-out infinite}.dance-side-shuffle .idol-leg-l{animation:d-step .42s ease-in-out infinite}.dance-side-shuffle .idol-leg-r{animation:d-step .42s ease-in-out infinite reverse}.dance-side-shuffle .idol-arm-l{animation:d-arm-swing .42s ease-in-out infinite}.dance-side-shuffle .idol-arm-r{animation:d-arm-swing .42s ease-in-out infinite reverse}.dance-spin-dizzy .idol-root{animation:d-spin 1.6s ease-in-out infinite}.dance-spin-dizzy .idol-head{animation:d-dizzy .5s ease-in-out infinite}.dance-spin-dizzy .idol-arm-l,.dance-spin-dizzy .idol-arm-r{animation:d-arm-flail .35s linear infinite}.dance-squat-pop .idol-root{animation:d-squat .7s cubic-bezier(.2,1.6,.3,1) infinite}.dance-squat-pop .idol-arm-l{animation:d-arm-up .7s ease-in-out infinite reverse}.dance-squat-pop .idol-arm-r{animation:d-arm-up .7s ease-in-out infinite}.dance-squat-pop .idol-skirt{animation:d-swish .7s ease-in-out infinite}.dance-arm-flail .idol-root{animation:d-wobble .5s ease-in-out infinite}.dance-arm-flail .idol-arm-l{animation:d-arm-flail .28s linear infinite}.dance-arm-flail .idol-arm-r{animation:d-arm-flail .32s linear infinite reverse}.dance-arm-flail .idol-head{animation:d-dizzy .4s ease-in-out infinite}.dance-head-wobble .idol-head{animation:d-wobble-big .45s ease-in-out infinite}.dance-head-wobble .idol-root{animation:d-bounce .9s ease-in-out infinite}.dance-head-wobble .idol-arm-l{animation:d-arm-swing .45s ease-in-out infinite}.dance-head-wobble .idol-arm-r{animation:d-arm-swing .45s ease-in-out infinite reverse}.dance-kick-high .idol-leg-r{animation:d-kick .64s ease-in-out infinite}.dance-kick-high .idol-root{animation:d-lean .64s ease-in-out infinite}.dance-kick-high .idol-arm-l{animation:d-arm-up .64s ease-in-out infinite}.dance-kick-high .idol-arm-r{animation:d-arm-swing .64s ease-in-out infinite}.dance-robot-glitch .idol-root{animation:d-robot .9s steps(4) infinite}.dance-robot-glitch .idol-arm-l{animation:d-robot-arm .7s steps(3) infinite}.dance-robot-glitch .idol-arm-r{animation:d-robot-arm .85s steps(3) infinite reverse}.dance-robot-glitch .idol-head{animation:d-robot-head 1.1s steps(2) infinite}.dance-sleepy-sway .idol-root{animation:d-sway 2.4s ease-in-out infinite}.dance-sleepy-sway .idol-head{animation:d-doze 2.4s ease-in-out infinite}.dance-sleepy-sway .idol-arm-l,.dance-sleepy-sway .idol-arm-r{animation:d-dangle 2.4s ease-in-out infinite}.dance-heart-jump .idol-root{animation:d-jump .68s cubic-bezier(.2,1.4,.3,1) infinite}.dance-heart-jump .idol-arm-l,.dance-heart-jump .idol-arm-r{animation:d-arm-up .68s ease-in-out infinite}.dance-heart-jump .idol-skirt{animation:d-swish .68s ease-in-out infinite}.dance-heart-jump .idol-head{animation:d-nod .68s ease-in-out infinite}@keyframes d-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-14px) scale(.96,1.06)}}@keyframes d-shuffle{0%,to{transform:translateX(-7px) rotate(-3deg)}50%{transform:translateX(7px) rotate(3deg)}}@keyframes d-spin{0%{transform:rotate(0) translateY(0)}35%{transform:rotate(1turn) translateY(-8px)}50%{transform:rotate(1turn) translateY(0) rotate(-8deg)}65%{transform:rotate(352deg) translateX(4px)}to{transform:rotate(1turn) translateY(0)}}@keyframes d-squat{0%,to{transform:translateY(0) scale(1)}40%{transform:translateY(10px) scale(1.08,.86)}70%{transform:translateY(-16px) scale(.94,1.1)}}@keyframes d-wobble{0%,to{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(7deg) translateY(-6px)}}@keyframes d-wobble-big{0%,to{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}@keyframes d-kick{0%,to{transform:rotate(8deg)}45%{transform:rotate(-70deg)}}@keyframes d-lean{0%,to{transform:rotate(0)}45%{transform:rotate(-8deg) translateY(-4px)}}@keyframes d-robot{0%{transform:translate(0) rotate(0)}25%{transform:translate(6px,-4px) rotate(-8deg)}50%{transform:translate(-4px,2px) rotate(6deg)}75%{transform:translate(3px,-8px) rotate(-2deg)}}@keyframes d-robot-arm{0%{transform:rotate(-20deg)}50%{transform:rotate(80deg)}to{transform:rotate(-40deg)}}@keyframes d-robot-head{0%,to{transform:translateX(0)}50%{transform:translateX(4px) rotate(8deg)}}@keyframes d-sway{0%,to{transform:rotate(-5deg) translateY(4px)}50%{transform:rotate(6deg) translateY(0)}}@keyframes d-doze{0%,to{transform:rotate(8deg) translateY(3px)}50%{transform:rotate(-4deg) translateY(0)}}@keyframes d-dangle{0%,to{transform:rotate(12deg)}50%{transform:rotate(-8deg)}}@keyframes d-jump{0%,to{transform:translateY(0) scale(1)}30%{transform:translateY(8px) scale(1.06,.9)}58%{transform:translateY(-22px) scale(.94,1.12)}}@keyframes d-arm-up{0%,to{transform:rotate(8deg)}50%{transform:rotate(-70deg)}}@keyframes d-arm-swing{0%,to{transform:rotate(18deg)}50%{transform:rotate(-28deg)}}@keyframes d-arm-flail{0%{transform:rotate(-90deg)}50%{transform:rotate(90deg)}to{transform:rotate(-90deg)}}@keyframes d-step{0%,to{transform:rotate(6deg) translateY(0)}50%{transform:rotate(-16deg) translateY(-6px)}}@keyframes d-nod{0%,to{transform:rotate(-6deg)}50%{transform:rotate(8deg) translateY(-2px)}}@keyframes d-dizzy{0%,to{transform:rotate(-14deg) translateX(-2px)}50%{transform:rotate(14deg) translateX(2px)}}@keyframes d-swish{0%,to{transform:rotate(-8deg) scaleX(1)}50%{transform:rotate(8deg) scaleX(1.06)}}.idol-heart{animation:idol-heart-float 1.4s ease-in-out infinite;transform-origin:center}@keyframes idol-heart-float{0%,to{opacity:0;transform:translateY(0) scale(.6)}30%{opacity:1}to{opacity:0;transform:translateY(-16px) scale(1.1)}}@media (prefers-reduced-motion:reduce){.idol-bubble,.idol-heart,.idol-spark,.idol-spot{animation:none!important}.idol .idol-root{animation:d-sway 3s ease-in-out infinite!important}.idol .idol-arm-l,.idol .idol-arm-r,.idol .idol-head,.idol .idol-leg-l,.idol .idol-leg-r,.idol .idol-skirt{animation:none!important}}