/* Modal styles that respect theme */
.modal-content {
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
    border: 1px solid var(--bs-border-color);
}

.modal-header {
    background-color: var(--bs-body-bg);
    border-bottom: 1px solid var(--bs-border-color);
}

.modal-footer {
    background-color: var(--bs-body-bg);
    border-top: 1px solid var(--bs-border-color);
}

.modal-backdrop.show {
    opacity: 0.7;
}

/* Form elements within modal */
.modal .form-select {
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
    border-color: var(--bs-border-color);
}

.modal .form-select:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
}

/* Modal close button */
.modal .btn-close {
    filter: var(--bs-btn-close-white);
}

[data-bs-theme='dark'] .modal .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

/* Alert within modal */
.modal .alert {
    background-color: var(--bs-danger-bg-subtle);
    color: var(--bs-danger-text);
    border-color: var(--bs-danger-border-subtle);
}
