/* Camadas (06/11/2026): notificações ficam acima de qualquer modal, inclusive da confirmação
   de identidade (.critical-action-modal, 1120) e do SweetAlert; abaixo só do bloqueio de sessão (2000). */
.app-toast-container { z-index: 1200; }
.swal2-container { z-index: 1130 !important; }
.app-toast { min-width: min(22rem, calc(100vw - 2rem)); }
.app-session-overlay {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 1rem;
  background: rgba(10, 18, 30, .88);
  backdrop-filter: blur(.35rem);
  z-index: 2000;
}
.app-session-overlay[hidden] { display: none; }
.app-session-overlay__card { width: min(34rem, 100%); }
body.session-locked { overflow: hidden; }
body.session-locked :is(input, select, textarea, button):not(.app-session-overlay *) { pointer-events: none; }
.is-api-invalid { border-color: var(--bs-danger) !important; }
.is-api-invalid:focus { box-shadow: 0 0 0 .25rem rgba(220, 53, 69, .2); }
.ts-wrapper.is-api-invalid .ts-control { border-color: var(--bs-danger) !important; box-shadow: 0 0 0 .25rem rgba(220, 53, 69, .12); }
.app-api-feedback { display: block; }
