/* Diálogo de decisión: ancho completo en móvil. El orden visual coincide con el del teclado (Cancelar, luego Confirmar). */
.decision-dialog { border: 0; border-radius: 14px; padding: 0; width: min(440px, calc(100vw - 32px)); box-shadow: 0 24px 60px rgba(15, 23, 42, .28); max-height: calc(100dvh - 32px); overflow-y: auto; overscroll-behavior: contain; }
.decision-dialog::backdrop { background: rgba(15, 23, 42, .5); }
.decision-form { display: grid; gap: 14px; padding: 22px; }
.decision-form h2 { margin: 0; font-size: 1.15rem; color: var(--ink, #0f172a); }
.decision-message { margin: 0; color: var(--muted, #64748b); font-size: .95rem; line-height: 1.45; white-space: pre-line; }
.decision-field { display: grid; gap: 6px; font-weight: 600; font-size: .9rem; }
.decision-field small { font-weight: 500; color: var(--muted, #64748b); }
.decision-field :is(select, textarea) { min-height: 44px; font: inherit; padding: 10px 12px; border: 1px solid var(--line, #e2e8f0); border-radius: 8px; }
.decision-field textarea[aria-invalid="true"] { border-color: var(--red, #c8102e); }
.decision-error { margin: 0; color: var(--red, #c8102e); font-size: .88rem; font-weight: 600; }
.decision-actions { display: flex; justify-content: flex-end; gap: 10px; }
.decision-dialog .decision-actions button { min-height: 44px; min-width: 120px; }
.decision-dialog .decision-actions .danger { background: var(--red, #c8102e); color: #fff; border: 1px solid var(--red, #c8102e); border-radius: 8px; font-weight: 700; }
@media (max-width: 520px) {
  .decision-actions { flex-direction: column; }
  .decision-dialog .decision-actions button { width: 100%; }
}
