.d-none { display: none !important; }
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.modal { position: fixed; inset: 0; z-index: 90; display: none; overflow-x: hidden; overflow-y: auto; outline: 0; }
.modal.fade .modal-dialog { opacity: 0; transform: translateY(8px) scale(0.96); transition: opacity 240ms var(--ease-out), transform 240ms var(--ease-out); }
.modal.show { display: block; }
.modal.show .modal-dialog { opacity: 1; transform: none; }
.modal-open { overflow: hidden; }
.modal-backdrop { position: fixed; inset: 0; z-index: 80; background: var(--veil); opacity: 0; transition: opacity 200ms var(--ease-out); }
.modal-backdrop.fade { opacity: 0; }
.modal-backdrop.show { opacity: 1; }
.collapse:not(.show) { display: none; }
.collapse.show { display: block; }
.fade { transition: opacity 160ms var(--ease-out); }
.fade:not(.show) { opacity: 0; }
@media (prefers-reduced-motion: reduce) { .fade, .modal.fade .modal-dialog { transition-duration: 0ms; } }
