/* UBold compatibility overrides for legacy UI blocks */

.wrapper .stat-card,
.wrapper .module-card,
.wrapper .quick-action,
.wrapper .message-preview,
.wrapper .variables-panel,
.wrapper .stat-mini,
.wrapper .role-item,
.wrapper .permissions-matrix,
.wrapper .preset-btn,
.wrapper .sanction-card,
.wrapper .mod-action-btn,
.wrapper .content-section,
.wrapper .ticket-card,
.wrapper .category-card,
.wrapper .panel-card,
.wrapper .creator-section,
.app-container .stat-card,
.app-container .module-card,
.app-container .quick-action,
.app-container .message-preview,
.app-container .variables-panel,
.app-container .stat-mini,
.app-container .role-item,
.app-container .permissions-matrix,
.app-container .preset-btn,
.app-container .sanction-card,
.app-container .mod-action-btn,
.app-container .content-section,
.app-container .ticket-card,
.app-container .category-card,
.app-container .panel-card,
.app-container .creator-section {
  background: var(--bs-card-bg) !important;
  border-color: var(--bs-border-color) !important;
  color: var(--bs-body-color) !important;
  backdrop-filter: none !important;
}

.wrapper .stat-label,
.wrapper .page-description,
.wrapper .category-description,
.wrapper .panel-description,
.wrapper .empty-text,
.wrapper .empty-desc,
.wrapper .detail-label,
.app-container .stat-label,
.app-container .page-description,
.app-container .category-description,
.app-container .panel-description,
.app-container .empty-text,
.app-container .empty-desc,
.app-container .detail-label {
  color: var(--bs-secondary-color) !important;
}

.wrapper .ticket-info,
.wrapper .ticket-info-item,
.wrapper .meta-label,
.wrapper .panel-builder-block-hint,
.wrapper .panel-builder-empty,
.wrapper .panel-builder-palette-hint,
.wrapper .panel-builder-palette-item-desc,
.app-container .ticket-info,
.app-container .ticket-info-item,
.app-container .meta-label,
.app-container .panel-builder-block-hint,
.app-container .panel-builder-empty,
.app-container .panel-builder-palette-hint,
.app-container .panel-builder-palette-item-desc {
  color: var(--bs-secondary-color) !important;
}

.wrapper .ticket-number,
.wrapper .category-name,
.wrapper .panel-name,
.wrapper .meta-value,
.wrapper .detail-value,
.app-container .ticket-number,
.app-container .category-name,
.app-container .panel-name,
.app-container .meta-value,
.app-container .detail-value {
  color: var(--bs-body-color) !important;
}

.wrapper .empty-title,
.app-container .empty-title {
  color: var(--bs-body-color) !important;
}

.wrapper .filters-bar,
.app-container .filters-bar {
  background: var(--bs-card-bg) !important;
  border-color: var(--bs-border-color) !important;
  box-shadow: none !important;
}

.wrapper .filter-select,
.wrapper .filter-input,
.wrapper .discord-preview-select,
.wrapper .discord-preview-select-options,
.app-container .filter-select,
.app-container .filter-input,
.app-container .discord-preview-select,
.app-container .discord-preview-select-options {
  background: var(--bs-body-bg) !important;
  border-color: var(--bs-border-color) !important;
  color: var(--bs-body-color) !important;
}

.wrapper .filter-select::placeholder,
.wrapper .filter-input::placeholder,
.app-container .filter-select::placeholder,
.app-container .filter-input::placeholder {
  color: var(--bs-secondary-color) !important;
}

.wrapper .tabs,
.app-container .tabs {
  background: var(--bs-card-bg) !important;
  border-color: var(--bs-border-color) !important;
}

.wrapper .tabs .tab,
.app-container .tabs .tab {
  color: var(--bs-secondary-color) !important;
}

.wrapper .tabs .tab:hover,
.app-container .tabs .tab:hover {
  color: var(--bs-body-color) !important;
  background: rgba(var(--bs-primary-rgb), 0.08) !important;
}

.wrapper .tabs .tab.active,
.app-container .tabs .tab.active {
  color: var(--bs-body-color) !important;
  background: rgba(var(--bs-primary-rgb), 0.12) !important;
  box-shadow: none !important;
}

.wrapper .stat-value,
.wrapper .page-title,
.wrapper .section-title,
.wrapper .modal-header h2,
.wrapper .card-header h2,
.app-container .stat-value,
.app-container .page-title,
.app-container .section-title,
.app-container .modal-header h2,
.app-container .card-header h2 {
  background: none !important;
  background-clip: initial !important;
  -webkit-background-clip: initial !important;
  -webkit-text-fill-color: initial !important;
  color: var(--bs-body-color) !important;
}

.wrapper .sanction-info h3,
.wrapper .sanction-username,
.wrapper .mod-action-label,
.wrapper .stat-mini-value,
.wrapper .modal-title,
.app-container .sanction-info h3,
.app-container .sanction-username,
.app-container .mod-action-label,
.app-container .stat-mini-value,
.app-container .modal-title {
  color: var(--bs-body-color) !important;
}

.wrapper .sanction-count,
.wrapper .sanction-reason,
.wrapper .sanction-date,
.wrapper .mod-action-desc,
.wrapper .stat-mini-label,
.app-container .sanction-count,
.app-container .sanction-reason,
.app-container .sanction-date,
.app-container .mod-action-desc,
.app-container .stat-mini-label {
  color: var(--bs-secondary-color) !important;
}

.wrapper .sanction-user,
.app-container .sanction-user {
  background: rgba(var(--bs-primary-rgb), 0.06) !important;
}

.wrapper .filter-chip,
.app-container .filter-chip {
  background: rgba(var(--bs-primary-rgb), 0.08) !important;
  border-color: rgba(var(--bs-primary-rgb), 0.20) !important;
  color: var(--bs-secondary-color) !important;
}

.wrapper .filter-chip:hover,
.app-container .filter-chip:hover {
  background: rgba(var(--bs-primary-rgb), 0.14) !important;
  border-color: rgba(var(--bs-primary-rgb), 0.35) !important;
  color: var(--bs-body-color) !important;
}

.wrapper .filter-chip.active,
.app-container .filter-chip.active {
  background: rgba(var(--bs-primary-rgb), 0.16) !important;
  border-color: rgba(var(--bs-primary-rgb), 0.45) !important;
  color: var(--bs-body-color) !important;
}

.wrapper .tabs-container,
.app-container .tabs-container {
  border-bottom-color: var(--bs-border-color) !important;
}

.wrapper .tab,
.app-container .tab {
  color: var(--bs-secondary-color) !important;
}

.wrapper .tab:hover,
.app-container .tab:hover {
  color: var(--bs-body-color) !important;
  background: rgba(var(--bs-primary-rgb), 0.08) !important;
}

.wrapper .tab.active,
.app-container .tab.active {
  color: var(--bs-body-color) !important;
  border-bottom-color: rgba(var(--bs-primary-rgb), 0.55) !important;
  background: rgba(var(--bs-primary-rgb), 0.12) !important;
}

/* Custom modals (not Bootstrap .modal.fade) */
.modal:not(.fade) {
  background: rgba(0, 0, 0, 0.65) !important;
  backdrop-filter: blur(4px) !important;
}

.modal:not(.fade) .modal-content {
  background: var(--bs-card-bg) !important;
  border-color: var(--bs-border-color) !important;
  color: var(--bs-body-color) !important;
}

.modal:not(.fade) .modal-header,
.modal:not(.fade) .modal-footer {
  border-color: var(--bs-border-color) !important;
}

.modal:not(.fade) .modal-title {
  color: var(--bs-body-color) !important;
  -webkit-text-fill-color: unset !important;
}

.modal:not(.fade) .modal-close {
  color: var(--bs-secondary-color) !important;
}

.modal:not(.fade) .modal-close:hover {
  color: var(--bs-danger) !important;
}

/* Custom overlays used by some pages (e.g. moderation.html) */
.modal-overlay {
  background: rgba(0, 0, 0, 0.65) !important;
  backdrop-filter: blur(4px) !important;
}

.modal-overlay .modal-content {
  background: var(--bs-card-bg) !important;
  border-color: var(--bs-border-color) !important;
  color: var(--bs-body-color) !important;
}

.modal-overlay .modal-header,
.modal-overlay .modal-footer {
  border-color: var(--bs-border-color) !important;
}

.modal-overlay .modal-close {
  color: var(--bs-secondary-color) !important;
}

.modal-overlay .modal-close:hover {
  color: var(--bs-danger) !important;
}
