/* Tactics is another window on the existing fixed 1152 × 800 screen.
   Every panel, button and icon reuses the generated painted-menu raster art. */
.battle-game .topbar { z-index: 80; }
.battle-game #tacticsButton { min-width: 142px; justify-content: center; }
.battle-game #aiPlayButton { min-width: 115px; justify-content: center; }
.battle-game :is(#aiPlayButton,#toolsAiPlayButton)::before {
  content: '';
  display: inline-block;
  width: 17px;
  height: 17px;
  margin-right: 5px;
  flex: 0 0 17px;
  background: url('../art/ui/painted-menus-v1/icon-clock-96.png') center / contain no-repeat;
}
.battle-game :is(#aiPlayButton,#toolsAiPlayButton)[aria-pressed="true"] {
  border-image-source: var(--ui-selected);
}
.battle-game :is(#tacticsButton,#toolsTacticsButton)::before {
  content: '';
  display: inline-block;
  width: 17px;
  height: 17px;
  margin-right: 5px;
  flex: 0 0 17px;
  background: url('../art/ui/painted-menus-v1/icon-party-96.png') center / contain no-repeat;
}
.battle-game #tacticsButton[data-mode]:not([data-mode="manual"]) {
  border-image-source: var(--ui-selected);
}
.battle-game .tactics-dialog {
  width: 680px;
  max-width: calc(100vw - 48px);
  max-height: min(720px, calc(100vh - 48px));
  padding: 0;
  margin: auto;
}
.battle-game .tactics-dialog .dialog-card {
  max-height: none;
  min-height: 0;
}
.battle-game .tactics-dialog .dialog-header { padding: 20px 24px 16px; }
.battle-game .tactics-dialog .dialog-header h2 { margin: 4px 0; }
.battle-game .tactics-dialog .dialog-header p { font-size: 12px; }
.battle-game .tactics-content { min-width: 0; padding: 16px 24px 18px; }
.battle-game .tactics-intro {
  margin: 0 0 14px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.battle-game .tactics-options { display: grid; grid-template-columns: minmax(0, 1fr); gap: 7px; }
.battle-game .tactics-options .menu-choice {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-content: center;
  align-items: center;
  gap: 3px 12px;
  width: 100%;
  min-height: 63px;
  padding: 11px 18px;
  text-align: left;
  font: inherit;
  cursor: pointer;
}
.battle-game .tactics-options .menu-choice::before {
  content: '';
  grid-column: 1;
  grid-row: 1 / -1;
  width: 26px;
  height: 26px;
  background: var(--tactic-icon, url('../art/ui/painted-menus-v1/icon-party-96.png')) center / contain no-repeat;
}
.battle-game .tactics-options [data-tactics="fight"] { --tactic-icon: url('../art/ui/painted-menus-v1/icon-sword-96.png'); }
.battle-game .tactics-options [data-tactics="charge"] { --tactic-icon: url('../art/ui/painted-menus-v1/icon-clock-96.png'); }
.battle-game .tactics-options [data-tactics="reserve"] { --tactic-icon: url('../art/ui/painted-menus-v1/icon-book-96.png'); }
.battle-game .tactics-options [data-tactics="guard"] { --tactic-icon: url('../art/ui/painted-menus-v1/icon-shield-96.png'); }
.battle-game .tactics-options .tactics-option-name,
.battle-game .tactics-options .menu-choice > strong {
  grid-column: 2;
  font: 700 16px Georgia, 'Times New Roman', serif;
  color: var(--cream);
}
.battle-game .tactics-options .tactics-option-description,
.battle-game .tactics-options .menu-choice > small {
  grid-column: 2;
  font-size: 11px;
  line-height: 1.4;
  color: var(--muted);
}
.battle-game .tactics-options .menu-choice[aria-pressed="true"] {
  border-image-source: var(--ui-selected);
}
.battle-game .tactics-options .menu-choice[aria-pressed="true"] .tactics-option-name::after {
  content: ' · Selected';
  color: var(--amber);
  font: 700 10px Arial, sans-serif;
}
.battle-game .tactics-help {
  margin: 15px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}
.battle-game .tactics-footer { align-items: center; gap: 16px; padding: 14px 24px 16px; }
.battle-game #tacticsStatus { margin: 0; color: var(--cream); font-size: 12px; line-height: 1.5; }
.battle-game .tactics-close-hint { flex: 0 0 auto; color: var(--muted); font-size: 10px; }
