/* V1.72 · Multiplayer settlement focus with readable bystanders and multi-target preservation. */
html body:not(.maintenance-mode)
#appRoot:is(.team-battle-app, .identity-battle-app)
#battle.settlement-focus-active:not([hidden])
:is(.role-card, .seat-fighter).settlement-bystander {
  opacity: .84 !important;
  filter: saturate(.78) brightness(.92) contrast(.98) !important;
  transition: opacity 170ms ease, filter 170ms ease !important;
}

html body:not(.maintenance-mode)
#appRoot:is(.team-battle-app, .identity-battle-app)
#battle.settlement-focus-active:not([hidden])
:is(.role-card, .seat-fighter):is(.settlement-actor, .settlement-target) {
  opacity: 1 !important;
  isolation: isolate;
}

html body:not(.maintenance-mode)
#appRoot:is(.team-battle-app, .identity-battle-app)
#battle.settlement-focus-active[data-settlement-focus="exchange"]:not([hidden])
:is(.role-card, .seat-fighter):is(.settlement-actor, .settlement-target) {
  z-index: 9;
}

body[data-vfx-quality="low"]
#appRoot:is(.team-battle-app, .identity-battle-app)
#battle.settlement-focus-active:not([hidden])
:is(.role-card, .seat-fighter).settlement-bystander {
  opacity: .88 !important;
  filter: saturate(.84) brightness(.94) !important;
}

@media (max-width: 720px) {
  html body:not(.maintenance-mode)
  #appRoot:is(.team-battle-app, .identity-battle-app)
  #battle.settlement-focus-active:not([hidden])
  :is(.role-card, .seat-fighter).settlement-bystander {
    opacity: .9 !important;
    filter: saturate(.86) brightness(.95) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body:not(.maintenance-mode)
  #appRoot:is(.team-battle-app, .identity-battle-app)
  #battle.settlement-focus-active:not([hidden])
  :is(.role-card, .seat-fighter) {
    transition: none !important;
    animation-duration: 100ms !important;
  }
}
