/**
 * Text Visibility Fix
 * Ensures all text is visible on all pages
 */

/* Force white text on gradient backgrounds (non-UCP pages) */
body:not(.ucp-body) {
    color: var(--white) !important;
}

/* But allow dark text in cards and containers with white backgrounds */
body:not(.ucp-body) .auth-card,
body:not(.ucp-body) .ucp-card,
body:not(.ucp-body) .game-card,
body:not(.ucp-body) .stat-card,
body:not(.ucp-body) .dashboard-content,
body:not(.ucp-body) .game-container,
body:not(.ucp-body) .game-header-bar,
body:not(.ucp-body) .game-card-large,
body:not(.ucp-body) .navbar,
body:not(.ucp-body) .table,
body:not(.ucp-body) .alert,
body:not(.ucp-body) .badge,
body:not(.ucp-body) .form-group,
body:not(.ucp-body) .form-control,
body:not(.ucp-body) input,
body:not(.ucp-body) select,
body:not(.ucp-body) textarea {
    color: var(--dark) !important;
}

body:not(.ucp-body) .auth-card *,
body:not(.ucp-body) .ucp-card *,
body:not(.ucp-body) .game-card *,
body:not(.ucp-body) .stat-card *,
body:not(.ucp-body) .dashboard-content *,
body:not(.ucp-body) .game-container *,
body:not(.ucp-body) .game-header-bar *,
body:not(.ucp-body) .game-card-large *,
body:not(.ucp-body) .navbar *,
body:not(.ucp-body) .table *,
body:not(.ucp-body) .alert *,
body:not(.ucp-body) .form-group *,
body:not(.ucp-body) input,
body:not(.ucp-body) select,
body:not(.ucp-body) textarea {
    color: inherit !important;
}

/* Ensure links are visible */
body:not(.ucp-body) a:not(.btn):not(.nav-item) {
    color: var(--white) !important;
    text-decoration: underline;
}

body:not(.ucp-body) .auth-card a,
body:not(.ucp-body) .ucp-card a,
body:not(.ucp-body) .game-card a {
    color: var(--primary) !important;
}

/* Ensure buttons have proper text color */
.btn {
    color: var(--white) !important;
}

.btn-google {
    color: #4285f4 !important;
}

/* Ensure labels are visible */
body:not(.ucp-body) label:not(.checkbox-label) {
    color: var(--white) !important;
}

body:not(.ucp-body) .auth-card label,
body:not(.ucp-body) .form-group label {
    color: var(--dark) !important;
}

/* Ensure table text is visible */
body:not(.ucp-body) .table th,
body:not(.ucp-body) .table td {
    color: var(--dark) !important;
}

/* Ensure headings are visible on gradient backgrounds */
body:not(.ucp-body) h1:not(.auth-header h1),
body:not(.ucp-body) h2:not(.auth-header h2),
body:not(.ucp-body) h3:not(.auth-header h3),
body:not(.ucp-body) h4:not(.auth-header h4),
body:not(.ucp-body) h5:not(.auth-header h5),
body:not(.ucp-body) h6:not(.auth-header h6) {
    color: var(--white) !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

/* But headings in cards should be dark */
body:not(.ucp-body) .auth-card h1,
body:not(.ucp-body) .auth-card h2,
body:not(.ucp-body) .auth-card h3,
body:not(.ucp-body) .ucp-card h1,
body:not(.ucp-body) .ucp-card h2,
body:not(.ucp-body) .ucp-card h3,
body:not(.ucp-body) .game-card h1,
body:not(.ucp-body) .game-card h2,
body:not(.ucp-body) .game-card h3 {
    color: var(--dark) !important;
    text-shadow: none;
}

