/* Global Visibility Fixes for Dark Theme */

/* Ensure all text in content cards is visible */
.content-card,
.content-card * {
    color: #FFFFFF !important;
}

.content-card .text-muted {
    color: #B8B8B8 !important;
}

.content-card .text-danger {
    color: #FF6B6B !important;
}

.content-card .text-success {
    color: #00B894 !important;
}

.content-card .text-warning {
    color: #FDCB6E !important;
}

/* Form elements in content cards */
.content-card .form-select,
.content-card .form-control,
.content-card select,
.content-card input,
.content-card input[type="text"],
.content-card input[type="email"],
.content-card input[type="date"],
.content-card input[type="number"],
.content-card input[type="password"],
.content-card input[type="file"],
.content-card textarea {
    background: rgba(22, 33, 62, 0.8) !important;
    border: 1px solid var(--border-color) !important;
    color: #FFFFFF !important;
}

.content-card .form-control:focus,
.content-card .form-select:focus {
    background: rgba(22, 33, 62, 0.95) !important;
    border-color: #6C5CE7 !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 0 3px rgba(108, 92, 231, 0.2) !important;
}

.content-card .form-select option,
.content-card .form-control option,
.content-card select option {
    background: rgba(22, 33, 62, 0.95) !important;
    color: #FFFFFF !important;
}

/* Date input styling */
.content-card input[type="date"] {
    color-scheme: dark !important;
}

.content-card input[type="date"]::-webkit-calendar-picker-indicator {
    filter: invert(1);
    cursor: pointer;
}

/* Tables - ensure all text is visible */
.table-dark-custom,
.table-dark-custom thead,
.table-dark-custom tbody,
.table-dark-custom th,
.table-dark-custom td {
    color: #FFFFFF !important;
}

.table-dark-custom thead th {
    background: rgba(22, 33, 62, 0.95) !important;
    color: #FFFFFF !important;
}

.table-dark-custom tbody td {
    background: rgba(22, 33, 62, 0.6) !important;
    color: #FFFFFF !important;
}

.table-dark-custom tbody tr {
    background: rgba(22, 33, 62, 0.6) !important;
}

.table-dark-custom tbody tr:hover td {
    background: rgba(22, 33, 62, 0.9) !important;
    color: #FFFFFF !important;
}

/* Status cards */
.status-card {
    color: #FFFFFF !important;
}

.status-label {
    color: #B8B8B8 !important;
}

.status-value {
    color: #FFFFFF !important;
}

/* Badges */
.badge {
    color: #FFFFFF !important;
    font-weight: 600;
}

/* Empty states */
.text-center {
    color: #FFFFFF !important;
}

/* Page headers */
.page-title {
    color: #FFFFFF !important;
}

.page-subtitle {
    color: #B8B8B8 !important;
}

/* Alert boxes - KYC and other pages */
.alert {
    background: rgba(22, 33, 62, 0.95) !important;
    border: 1px solid var(--border-color) !important;
    color: #FFFFFF !important;
    padding: 1.5rem !important;
    border-radius: 10px !important;
}

.alert h5 {
    color: #FFFFFF !important;
    margin-bottom: 0.5rem !important;
}

.alert p {
    color: #B8B8B8 !important;
    margin-bottom: 0 !important;
}

.alert-success {
    background: rgba(0, 184, 148, 0.2) !important;
    border-color: #00B894 !important;
}

.alert-success h5,
.alert-success i {
    color: #00B894 !important;
}

.alert-warning {
    background: rgba(253, 203, 110, 0.2) !important;
    border-color: #FDCB6E !important;
}

.alert-warning h5,
.alert-warning i {
    color: #FDCB6E !important;
}

.alert-danger {
    background: rgba(214, 48, 49, 0.2) !important;
    border-color: #D63031 !important;
}

.alert-danger h5,
.alert-danger i {
    color: #FF6B6B !important;
}

.alert-info {
    background: rgba(108, 92, 231, 0.2) !important;
    border-color: #6C5CE7 !important;
}

.alert-info h5,
.alert-info i {
    color: #A29BFE !important;
}

/* KYC form labels */
.content-card label,
.form-label,
.content-card .form-label {
    color: #FFFFFF !important;
    font-weight: 500 !important;
}

.content-card small,
.text-muted,
.content-card .text-muted {
    color: #B8B8B8 !important;
}

/* KYC page specific */
.content-card h4 {
    color: #FFFFFF !important;
}

/* File input styling */
.content-card input[type="file"] {
    background: rgba(22, 33, 62, 0.8) !important;
    border: 1px solid var(--border-color) !important;
    color: #FFFFFF !important;
    padding: 0.5rem !important;
}

.content-card input[type="file"]::file-selector-button {
    background: #6C5CE7 !important;
    color: #FFFFFF !important;
    border: none !important;
    padding: 0.5rem 1rem !important;
    border-radius: 5px !important;
    margin-right: 1rem !important;
    cursor: pointer !important;
}

/* Placeholder text visibility */
.form-control::placeholder,
.form-select::placeholder,
input::placeholder,
textarea::placeholder {
    color: #888888 !important;
    opacity: 1 !important;
}

.form-control::-webkit-input-placeholder,
.form-select::-webkit-input-placeholder {
    color: #888888 !important;
    opacity: 1 !important;
}

.form-control::-moz-placeholder,
.form-select::-moz-placeholder {
    color: #888888 !important;
    opacity: 1 !important;
}

.form-control:-ms-input-placeholder,
.form-select:-ms-input-placeholder {
    color: #888888 !important;
    opacity: 1 !important;
}

.content-card .form-control::placeholder,
.content-card .form-select::placeholder {
    color: #888888 !important;
    opacity: 1 !important;
}

/* Spinner visibility */
.spinner-border {
    border-color: #6C5CE7 !important;
    border-right-color: transparent !important;
}

.spinner-border.text-primary {
    color: #6C5CE7 !important;
}

/* Button styling */
.btn-copy {
    background: linear-gradient(135deg, #6C5CE7, #A29BFE) !important;
    color: #FFFFFF !important;
    border: none !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.btn-copy:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 15px rgba(108, 92, 231, 0.4) !important;
}

/* Modal dropdown visibility - fix for select dropdowns in modals */
.modal .form-select,
.modal select,
.modal .form-select option,
.modal select option {
    background: rgba(22, 33, 62, 0.95) !important;
    color: #FFFFFF !important;
    border: 1px solid var(--border-color) !important;
}

.modal .form-select:focus,
.modal select:focus {
    background: rgba(22, 33, 62, 0.95) !important;
    border-color: #6C5CE7 !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 0 3px rgba(108, 92, 231, 0.2) !important;
}

.modal .form-select option,
.modal select option {
    background: rgba(22, 33, 62, 0.95) !important;
    color: #FFFFFF !important;
    padding: 0.5rem !important;
}

/* Ensure modal content is visible */
.modal-content {
    background: rgba(22, 33, 62, 0.98) !important;
    color: #FFFFFF !important;
    border: 1px solid var(--border-color) !important;
}

.modal-header {
    background: rgba(22, 33, 62, 0.95) !important;
    border-bottom: 1px solid var(--border-color) !important;
    color: #FFFFFF !important;
}

.modal-header .modal-title {
    color: #FFFFFF !important;
}

.modal-header .btn-close {
    filter: invert(1);
}

.modal-body {
    background: rgba(22, 33, 62, 0.98) !important;
    color: #FFFFFF !important;
}

.modal-body .form-label {
    color: #FFFFFF !important;
}

.modal-body .form-control {
    background: rgba(22, 33, 62, 0.8) !important;
    border: 1px solid var(--border-color) !important;
    color: #FFFFFF !important;
}

.modal-body .form-control:focus {
    background: rgba(22, 33, 62, 0.95) !important;
    border-color: #6C5CE7 !important;
    color: #FFFFFF !important;
}

.modal-footer {
    background: rgba(22, 33, 62, 0.95) !important;
    border-top: 1px solid var(--border-color) !important;
}

