/* v24.1.9 visual/performance fix - SAVE untouched */
/* 出撃準備・編成・育成の白飛び抑制 */
#prepScreen .pad,#formationScreenV24 .pad,#trainingScreenV24 .pad{
  background:linear-gradient(180deg,#17231f,#101916)!important;
}
#prepScreen .section.v24ClearPanel,#v24SortieGuide,
#formationScreenV24 .section,#formationScreenV24 .v24FormationActions,
#trainingScreenV24 .section,#trainingScreenV24 .v24TrainingMain{
  background:linear-gradient(180deg,#fff7df 0%,#eee7ff 100%)!important;
  color:#241b53!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}
#prepScreen .section.v24ClearPanel *,#v24SortieGuide *,
#formationScreenV24 .section *,#trainingScreenV24 .section *{
  opacity:1!important;
  text-shadow:none!important;
}
#prepScreen h3,#v24SortieGuide h3,#formationScreenV24 h3,#trainingScreenV24 h3{
  color:#261b61!important;
}
/* 難易度カードは非選択を濃色、選択を黄金色にして可読性固定 */
#prepScreen .difficultyGrid{gap:12px!important;}
#prepScreen .difficultyBtn,
#formationScreenV24 .difficultyBtn{
  background:linear-gradient(180deg,#2d3a35,#1d2925)!important;
  border:2px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(0,0,0,.22)!important;
}
#prepScreen .difficultyBtn .diffName,
#formationScreenV24 .difficultyBtn .diffName{
  color:#ffe277!important;
  font-weight:1000!important;
}
#prepScreen .difficultyBtn .diffMeta,#prepScreen .difficultyBtn .diffDesc,
#formationScreenV24 .difficultyBtn .diffMeta,#formationScreenV24 .difficultyBtn .diffDesc{
  color:#ffffff!important;
  opacity:1!important;
  font-weight:900!important;
}
#prepScreen .difficultyBtn.active,
#formationScreenV24 .difficultyBtn.active{
  background:linear-gradient(180deg,#fff2a8,#ffd75f)!important;
  border-color:#e6b52c!important;
  color:#302000!important;
}
#prepScreen .difficultyBtn.active .diffName,#prepScreen .difficultyBtn.active .diffMeta,#prepScreen .difficultyBtn.active .diffDesc,
#formationScreenV24 .difficultyBtn.active .diffName,#formationScreenV24 .difficultyBtn.active .diffMeta,#formationScreenV24 .difficultyBtn.active .diffDesc{
  color:#33230a!important;
}
/* 103画像は文字入り素材なのでボタン背景に使わない。文字重なり防止 */
#v24ApplyRecommend,.v24RecommendBtn{
  background-image:linear-gradient(180deg,#ffe46e,#ffb36d)!important;
  background-size:auto!important;
  background-position:center!important;
  color:#332000!important;
  min-height:58px!important;
  letter-spacing:.02em;
}
#v24ApplyRecommend::before{content:'★ ';}
/* 画像が荒ぶって見えるカードを固定 */
.v24SortieLeaderCard,
.v24MiniChar,
.v24TrainCard,
.rosterCard,
.leader-card,
.card{
  transform:none!important;
  will-change:auto!important;
}
.v24SortieLeaderCard img,
.v24MiniChar img,
.v24TrainCard img,
.rosterCard img,
.leader-card img,
.card img{
  animation:none!important;
  transform:none!important;
  transition:none!important;
  will-change:auto!important;
  object-fit:contain!important;
  image-rendering:auto!important;
}
.v24SortieLeaderCard img{
  width:64px!important;
  height:64px!important;
  flex:0 0 64px!important;
  background:#fff7cf!important;
}
/* パズル中の軽量化：エフェクト・影・動きを抑える */
body.battle-active #gameScreen{contain:layout paint style!important;}
body.battle-active .board{gap:4px!important;box-shadow:none!important;}
body.battle-active .cell{transition:transform .08s linear!important;box-shadow:none!important;filter:none!important;}
body.battle-active .cell.spawn,
body.battle-active .cell.fell{
  animation:none!important;
  transition:none!important;
}
body.battle-active .cell.removing{
  animation:v2419Remove .14s linear forwards!important;
  transition:none!important;
}
@keyframes v2419Remove{to{opacity:0;transform:scale(.86)}}
body.battle-active .cell .pieceChar{filter:none!important;}
body.battle-active .cell .pieceAttr{filter:drop-shadow(0 1px 0 rgba(255,255,255,.9))!important;}
body.battle-active .cell .piecePattern{opacity:.08!important;}
body.battle-active .comboPopup.show{animation:comboPopLite .32s ease forwards!important;}
body.battle-active .skillOverlay.show .skillCard img{max-height:32vh!important;}
body.battle-active .damageFlash{display:none!important;}
@media(max-width:430px){
  #prepScreen .difficultyBtn{min-height:84px!important;padding:14px!important;}
  .v24SortieLeaderCard img{width:58px!important;height:58px!important;flex-basis:58px!important;}
  body.battle-active .board{gap:3px!important;padding:6px!important;}
  body.battle-active .cell{border-radius:11px!important;}
}
