.concert-actor{position:absolute;left:23%;top:26%;width:54%;height:57%;pointer-events:none;z-index:2}.concert-actor>.art-fit,.concert-actor>video,.concert-actor>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.concert-field{position:absolute;inset:0;overflow:hidden;z-index:5;pointer-events:none}.concert-object{position:absolute;width:15%;aspect-ratio:1;border:0;padding:0;background:none;box-shadow:none;touch-action:manipulation;pointer-events:auto}.concert-object .art-fit{width:100%;height:100%;pointer-events:none}.concert-object:focus-visible{outline:2px solid white;outline-offset:2px}.concert-mini .mini-header{z-index:9}.concert-multiplier{position:absolute;top:17%;left:40%;width:20%;text-align:center;color:#fff;font-size:clamp(20px,5cqw,30px);font-weight:900;text-shadow:0 2px 3px #40224d;z-index:4}.concert-mini .mini-tutorial{z-index:10}.concert-legend{display:flex;justify-content:center;gap:12px}.concert-legend>span{display:flex;flex-direction:column;align-items:center;width:27%;font-size:11px}.concert-legend .concert-sprite{width:100%;height:58px}.concert-mini .mini-tutorial h3{margin:12px 0 4px}.concert-mini .mini-tutorial p{margin:8px 0}.concert-hit .concert-multiplier{color:#ffb8cc}.concert-menu{display:grid;grid-template-columns:1fr 1fr;gap:14px}.concert-card{border-radius:18px;padding:14px 6px;background:#f6e5f4;border:1px solid #d8abd6;display:flex;flex-direction:column;align-items:center;gap:8px;color:#713e7d}.concert-card .ui-icon{width:70px;height:70px}.concert-card small{font-size:11px}.concert-card:disabled{opacity:.65}.concert-timer{font-size:11px;position:absolute;bottom:0;left:0;right:0;background:#624077;border-radius:7px;color:white;text-align:center}

.concert-mini .mini-wallet{left:18%;width:32%}.concert-mini .mini-rate{left:52%;width:30%}#concert-start{margin-top:12px;min-width:55%;padding:10px 20px}

.concert-mini .mini-wallet{left:20%;width:30%}.concert-mini .mini-rate{width:28%}
/* Flight spans the visible scenery. Portrait actor and object sizes stay fixed.
   Normalized endpoints with unchanged duration scale horizontal speed with distance. */
.stage-mini.concert-mini{overflow:visible}
.concert-mini .concert-field{left:calc(-1 * var(--ui-outset,0px));right:auto;width:var(--ui-width,100%);pointer-events:auto;touch-action:none}
.concert-mini .concert-object{width:15cqw}
.concert-actor>.hero-motion{object-position:center bottom}
.concert-mini .concert-actor{top:11%}
#game[data-stage-open=true] .stage-mini.concert-mini .stage-backdrop{left:calc(-1 * var(--ui-outset,0px));right:auto;width:var(--ui-width,100%);background-image:linear-gradient(#160e3844,transparent 28%,transparent 80%,#190d3933),url('assets/responsive/concert-wide-v2.png')}
.concert-mini:after{background:none}
.concert-mini .stage-floor-shadow{left:38%;width:24%;top:66%;height:1.2%;background:#17102244;filter:blur(3px)}
.concert-lights{position:absolute;top:0;bottom:0;left:calc(-1 * var(--ui-outset,0px));width:var(--ui-width,100%);overflow:hidden;pointer-events:none;z-index:1;mix-blend-mode:screen}
.concert-lights i{position:absolute;top:6%;left:12%;width:36%;height:94%;transform-origin:50% 0;clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);background:linear-gradient(#69eeff88,#39cbff33 48%,transparent);opacity:.32;transform:rotate(-26deg)}
.concert-lights i:nth-child(2){left:53%;background:linear-gradient(#ff66dd88,#f13bbd33 50%,transparent);transform:rotate(24deg);animation-delay:-1.7s}
.concert-lights i:nth-child(3){left:34%;width:24%;background:linear-gradient(#ffe27588,#c697ff33 50%,transparent);transform:rotate(-12deg);animation-delay:-3.1s}
.concert-playing:not(.concert-reduced) .concert-lights i{animation:concert-beam-sweep 3.8s ease-in-out infinite alternate}
.concert-playing:not(.concert-reduced) .concert-lights i:nth-child(2){animation-delay:-1.7s;animation-duration:3.1s}
.concert-playing:not(.concert-reduced) .concert-lights i:nth-child(3){animation-delay:-3.1s;animation-duration:4.3s}
@keyframes concert-beam-sweep{from{transform:rotate(-28deg);opacity:.22}to{transform:rotate(28deg);opacity:.46}}
@media(prefers-reduced-motion:reduce){.concert-playing .concert-lights i{animation:none!important}}
