/* CSP-compliant CSS classes to replace inline styles */

/* Visibility classes */
.csp-hidden {
  display: none !important;
}

.csp-visible {
  display: block !important;
}

.csp-inline {
  display: inline !important;
}

.csp-inline-block {
  display: inline-block !important;
}

.csp-flex {
  display: flex !important;
}

/* Modal backdrop fixes - consistent with global hierarchy */
.modal-backdrop {
  z-index: 1045 !important;
}

.modal {
  z-index: 1050 !important;
}

.modal-dialog {
  z-index: 1055 !important;
}

/* Bootstrap modal padding fix */
.modal-open {
  padding-right: 0 !important;
}

body.modal-open {
  padding-right: 0 !important;
  overflow: hidden;
}

/* Dropdown fixes - consistent with global hierarchy */
.dropdown-menu {
  z-index: 1030 !important;
}

/* Form validation states */
.is-valid {
  border-color: #28a745 !important;
}

.is-invalid {
  border-color: var(--color-danger, #dc3545) !important;
}

/* Loading states */
.loading {
  opacity: 0.6;
  pointer-events: none;
}

/* Smooth transitions */
.smooth-transition {
  transition: all 0.3s ease;
}

/* Text colors */
.text-primary {
  color: #007bff !important;
}
.text-success {
  color: #28a745 !important;
}
.text-danger {
  color: var(--color-danger, #dc3545) !important;
}
.text-warning {
  color: #ffc107 !important;
}
.text-info {
  color: #17a2b8 !important;
}
.text-muted {
  color: #6c757d !important;
}
.text-white {
  color: #ffffff !important;
}

/* Background colors */
.bg-primary {
  background-color: #007bff !important;
}
.bg-success {
  background-color: #28a745 !important;
}
.bg-danger {
  background-color: var(--color-danger, #dc3545) !important;
}
.bg-warning {
  background-color: #ffc107 !important;
}
.bg-info {
  background-color: #17a2b8 !important;
}
.bg-light {
  background-color: #f8f9fa !important;
}
.bg-dark {
  background-color: #343a40 !important;
}
