/* Nyx AI Studio - Text Color Fixes */

/* Force all text to be visible */
body,
body * {
    color: var(--nyx-text-primary) !important;
}

/* Specific fixes for form elements */
input, 
select, 
textarea,
.form-control,
.form-select {
    color: var(--nyx-text-primary) !important;
    background-color: rgba(255, 255, 255, 0.05) !important;
}

/* Option elements in dropdowns */
option {
    background-color: var(--nyx-bg-secondary) !important;
    color: var(--nyx-text-primary) !important;
}

/* Labels and form text */
label,
.form-label {
    color: var(--nyx-text-secondary) !important;
}

/* Table text */
table,
th,
td {
    color: var(--nyx-text-primary) !important;
}

/* Card text */
.card,
.card-body,
.card-header,
.card-title {
    color: var(--nyx-text-primary) !important;
}

/* Fix for light background cards */
.bg-light {
    background-color: rgba(255, 255, 255, 0.05) !important;
    color: var(--nyx-text-primary) !important;
}

.bg-light * {
    color: var(--nyx-text-primary) !important;
}

/* Fix form check labels */
.form-check-label {
    color: var(--nyx-text-primary) !important;
}

/* Fix small text */
small, .small {
    color: var(--nyx-text-muted) !important;
}

/* Fix card titles in light cards */
.card.bg-light .card-title {
    color: var(--nyx-gold) !important;
}

/* Text muted override */
.text-muted {
    color: var(--nyx-text-muted) !important;
}

/* Links */
a {
    color: var(--nyx-light-purple) !important;
}

a:hover {
    color: var(--nyx-gold) !important;
}

/* Bootstrap overrides */
.btn {
    color: white !important;
}

.btn-secondary {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
}

.btn-primary {
    background-color: var(--nyx-purple) !important;
    border-color: var(--nyx-purple) !important;
}

/* Alert text */
.alert {
    color: inherit !important;
}

/* Badge text */
.badge {
    color: white !important;
}

/* Fix for white on white text in tables */
.glass-card table td:first-child {
    color: var(--nyx-text-secondary) !important;
    font-weight: 500;
}

.glass-card table td:last-child {
    color: var(--nyx-text-primary) !important;
}

/* Specific fix for system info table */
.table td {
    background-color: transparent !important;
}

/* Fix badge colors */
.badge.bg-success {
    background-color: var(--nyx-success) !important;
    color: white !important;
}

.badge.bg-secondary {
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: var(--nyx-text-primary) !important;
}

/* Modal content */
.modal-content {
    background-color: var(--nyx-bg-secondary) !important;
    color: var(--nyx-text-primary) !important;
}

.modal-header,
.modal-body,
.modal-footer {
    border-color: var(--nyx-glass-border) !important;
    color: var(--nyx-text-primary) !important;
}

/* Close button */
.btn-close {
    filter: invert(1) !important;
}

/* Progress bar text */
.progress {
    background-color: rgba(255, 255, 255, 0.1) !important;
}

/* Nav items */
.nav-link {
    color: var(--nyx-text-secondary) !important;
}

.nav-link:hover,
.nav-link.active {
    color: var(--nyx-gold) !important;
}

/* Responsive fixes */
@media (max-width: 1024px) {
    .nyx-main {
        padding: 1rem;
        padding-top: 5rem;
    }
    
    .glass-card {
        margin-bottom: 1rem;
    }
}

/* Mobile menu button styles - Remove all default button styles */
.mobile-menu-btn {
    background: linear-gradient(135deg, var(--nyx-purple) 0%, var(--nyx-light-purple) 100%) !important;
    border: none !important;
    color: white !important;
    font-size: 1.5rem !important;
    display: none;
    width: 50px !important;
    height: 50px !important;
    border-radius: 50% !important;
    padding: 0 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.mobile-menu-btn:hover {
    transform: scale(1.1) !important;
    box-shadow: 0 0 20px rgba(124, 58, 237, 0.5) !important;
}

.mobile-menu-btn i {
    color: white !important;
    font-size: 1.5rem !important;
}

@media (max-width: 1024px) {
    .mobile-menu-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    /* Remove any Bootstrap button styles that might interfere */
    .mobile-menu-btn:focus {
        outline: none !important;
        box-shadow: 0 0 20px rgba(124, 58, 237, 0.5) !important;
    }
}

/* Fix for specific problematic elements */
.bi {
    color: inherit !important;
}

/* Dropdown menu fixes */
.dropdown-menu {
    background-color: var(--nyx-bg-secondary) !important;
    border-color: var(--nyx-glass-border) !important;
}

.dropdown-item {
    color: var(--nyx-text-primary) !important;
}

.dropdown-item:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: var(--nyx-gold) !important;
}