/* =============================================================================
   UC-1.17 — Attack Popup Modal
   ============================================================================= */

.attack-popup-panel {
  max-width: 560px;
  width: 90vw;
}

.attack-popup-body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.attack-weapon-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.25rem 0;
}

.attack-weapon-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.375rem 0.75rem;
  background: var(--bg-hover);
  border: 1px solid var(--border-primary);
  border-radius: 999px;
  color: var(--text-secondary);
  font-size: 0.875rem;
  cursor: pointer;
  transition: background 120ms ease, border-color 120ms ease, color 120ms ease;
}

.attack-weapon-pill:hover {
  background: var(--bg-primary);
  color: var(--text-primary);
}

.attack-weapon-pill--selected {
  background: var(--accent-red);
  border-color: var(--accent-red);
  color: var(--text-on-accent);
}

.attack-weapon-pill__damage {
  font-family: monospace;
  font-size: 0.8125rem;
  color: inherit;
  opacity: 0.85;
}

.attack-target-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  padding: 0.25rem 0;
}

.attack-target-row label {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  color: var(--text-secondary);
}

.attack-target-row input[type="text"] {
  min-width: 14rem;
}

.attack-target-row input[type="number"] {
  width: 5rem;
}

.attack-modifier-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  padding: 0.25rem 0;
}

.attack-modifier-row label.radio-inline {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  color: var(--text-secondary);
  cursor: pointer;
}

.attack-modifier-row label.radio-inline:has(input:checked) {
  color: var(--text-primary);
}

.attack-popup-actions {
  display: flex;
  justify-content: flex-end;
  padding-top: 0.5rem;
  border-top: 1px solid var(--border-primary);
}

.attack-result-banner {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 0.25rem;
}

.attack-result-banner strong {
  color: var(--text-primary);
  font-size: 1.125rem;
}
