/* MiniMax is a standalone transparent canvas; optional poses retain the attack fallback. */
.team-minimax{--fighter-texture:url('/assets/fighters/minimax.png');--fighter-idle-texture:url('/assets/fighters/minimax-idle.png');--fighter-hit-texture:url('/assets/fighters/minimax-hit.png');--fighter-size:100%;--fighter-position:center;--fighter-hit-width:100%;--fighter-hit-height:100%;--fighter-hit-left:0%;--fighter-hit-top:0%;--x:47%;--size:15%;--bottom:25%;--z:38px;--duration:10s;--delay:-3s;--order:4;--cutout:url('/assets/fighters/minimax.png')}
.team-character.team-minimax .team-sprite,.team-character.team-minimax .team-sprite-victory{inset:0;background:var(--fighter-texture) center/contain no-repeat}
/* Combat poses face Corruption; audience-facing victory art keeps its orientation. */
.team-character.team-minimax .team-sprite{scale:-1 1}
.team-character.team-minimax[data-fighter-idle-detail=ready] .team-sprite{background-image:var(--fighter-idle-texture)}
/* Semantic turn state also selects the attack in motion-free manual steps. */
.team-scene[data-battle-state=attack][data-battle-turn='10'] .team-character.team-minimax .team-sprite,
.team-scene[data-battle-state=super] .team-character.team-minimax .team-sprite{background-image:var(--fighter-texture)}
.team-character.team-minimax[data-fighter-victory-detail=ready] .team-sprite-victory{background-image:url('/assets/fighters/minimax-victory.png')}
.team-scene .team-character.team-minimax.is-hit[data-fighter-hit-detail=ready] .team-sprite{background-image:var(--fighter-hit-texture);background-size:contain}
.battle-profile[data-profile-member=minimax],.combo-card.team-minimax{--cutout:url('/assets/fighters/minimax.png')}
.minimax-profile-ready .battle-profile[data-profile-member=minimax]{--cutout:url('/assets/fighters/minimax-profile.png')}
/* MiniMax stands just behind the leader's screen-left leg on the same floor plane. */
.summon-hero.team-minimax{--summon-x:36%;--summon-bottom:22%;--summon-size:15%;--summon-order:3;--summon-float:0px!important}
.summon-hero.team-minimax .summon-pose{background:url('/assets/fighters/minimax.png') center/contain no-repeat}
.summon-hero.team-minimax .summon-company{top:-10%;bottom:auto}
.team-scene:has(.team-minimax[data-fighter-idle-detail=ready]) .summon-hero.team-minimax .summon-pose{background-image:url('/assets/fighters/minimax-idle.png')}
.team-scene.minimax-grounded-ready .opening-summon .summon-hero.team-minimax .summon-pose{background-image:url('/assets/fighters/minimax-grounded.png')}
.finale-character.team-minimax{--finale-x:15%;--finale-bottom:3%;--finale-size:18%;--finale-depth:60px;--finale-order:6;--pose-parallax:4px}
.finale-character.team-minimax .finale-sprite{inset:0;background:url('/assets/fighters/minimax.png') center/contain no-repeat}
.team-scene:has(.team-minimax[data-fighter-victory-detail=ready]) .finale-character.team-minimax .finale-sprite{background-image:url('/assets/fighters/minimax-victory.png')}
.blast-minimax-plane .blast-teammate[data-blast-member=minimax]{--reaction-left:20%;--reaction-bottom:9%;--reaction-width:15%;opacity:1}
.battle-projectile[data-kind=minimax]{width:42px;height:42px;border:3px solid #ff405b;border-radius:50%;background:radial-gradient(circle,#fff 0 8%,#e0b6ff 9% 20%,#9e66ff 21% 39%,transparent 40%);box-shadow:0 0 14px #9e66ff77}
.battle-projectile[data-kind=minimax] i{inset:-8px;border-width:3px;border-color:#9e66ff transparent #ff405b;border-radius:50%;transform:rotate(-28deg)}
.battle-projectile[data-kind=minimax] b{inset:-2px -11px;border-width:2px;border-color:#ffb2da transparent #cbaaff;border-radius:50%;transform:rotate(32deg)}
/* Ten names keep a balanced roster and cut-in grid. */
.team-roster{grid-template-columns:repeat(5,minmax(0,1fr))}
.hud-team-lineup{display:grid;grid-template-columns:repeat(var(--team-count,10),minmax(0,1fr));width:100%}
.hud-team-lineup .hud-teammate{width:auto;min-width:0}
@media(max-width:1050px){.team-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.team-roster button:last-child{grid-column:auto}}
@media(max-width:760px){
  .team-character.team-minimax{--x:43%;--size:18%;--bottom:31%;--z:0px}
  .combo-lineup{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:3px}
  .combo-card>strong{font-size:7px;gap:2px}.combo-card>strong .team-brand-icon{width:8px;height:8px}.combo-card>small{font-size:4px;letter-spacing:0}
  .summon-hero.team-minimax{--summon-x:36%;--summon-bottom:28%;--summon-size:16%}
  .summon-hero.team-minimax .summon-company{font-size:10px;gap:3px}
  .summon-hero.team-minimax .summon-company>span{display:none}
  .summon-hero.team-minimax .summon-company .team-brand-icon{width:12px;height:12px}
  .finale-character.team-minimax{--finale-x:17%;--finale-bottom:8%;--finale-size:22%}
  .blast-minimax-plane .blast-teammate[data-blast-member=minimax]{--reaction-left:18%;--reaction-bottom:9%;--reaction-width:22%}
}
@media(max-width:600px){
  /* This parent ends above the phone caption; percentages use that shorter floor area. */
  .summon-hero.team-minimax{--summon-x:36%;--summon-bottom:5%;--summon-size:15%}
  .finale-character.team-minimax{--finale-x:17%;--finale-bottom:8%;--finale-size:22%}
  .blast-depth-stage>.blast-minimax-plane{bottom:calc(var(--phone-caption-lane,148px) + var(--phone-caption-gap,12px));overflow:visible}
}
/* Maxxed Out: clock-driven dash echoes, six rapid strikes, then the energy blast. */
.minimax-afterimage{position:absolute;inset:0;pointer-events:none;z-index:-1;background:var(--fighter-texture) center/contain no-repeat;opacity:calc(var(--maxxed-afterimage,0)*(.27 - var(--afterimage-index)*.05));transform:translateX(calc(var(--afterimage-index)*var(--maxxed-trail-shift,0px))) scale(calc(1 - var(--afterimage-index)*.025)) scaleX(-1)}
.battle-projectile[data-kind=minimax][data-maxxed-phase=rapid]{border-radius:4px;border-color:#ffb0d8;background:linear-gradient(90deg,#9e66ff,#ff405b,#fff);box-shadow:0 0 8px #ff405b88;aspect-ratio:2;width:55px;height:15px}
.battle-projectile[data-kind=minimax][data-maxxed-phase=rapid] i,.battle-projectile[data-kind=minimax][data-maxxed-phase=rapid] b{display:none}
@media(prefers-reduced-motion:reduce){.minimax-afterimage{display:none}}
