@import "./global.css";
/* =====================================================================
   WeCatchAI - Light Homepage Theme
   Scoped to .light-homepage (applied to BOTH <html> and <body>)
   Overrides dark theme in styles.css without affecting any other page.

   ROOT CAUSES FIXED:
   1. html.light-homepage targets <html> directly (no :has() needed)
   2. @supports iOS block uses html.light-homepage
   3. .section no longer set to transparent (was leaking dark body)
   4. .hero gets explicit light background
   5. @media (max-width:768px) block counters ALL mobile dark overrides
   ===================================================================== */

/* ── 1. Base backgrounds - bulletproof across all browsers ───────────── */
html.light-homepage {
    background: #f8faff !important;
    background-color: #f8faff !important;
}

body.light-homepage {
    background: #f8faff !important;
    background-color: #f8faff !important;
    color: #1e293b !important;
}

/* ── NUCLEAR DEFAULT: Force every descendant text dark.
   Explicit selectors below (buttons, active tabs, colored badges) override
   this via higher specificity. This covers ALL dynamically-rendered JS
   content automatically - no need to enumerate individual class names.
   DO NOT remove this rule. ──────────────────────────────────────────── */
body.light-homepage * {
    color: #1e293b !important;
}

/* iOS Safari override */
@supports (-webkit-touch-callout: none) {

    html.light-homepage,
    body.light-homepage {
        background: #f8faff !important;
        background-color: #f8faff !important;
    }
}

/* Hide the Three.js 3D canvas - use both html and body for max coverage */
html.light-homepage #three-canvas,
body.light-homepage #three-canvas {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* ── 2. Section backgrounds - all explicit, none transparent ─────────── */

/* Default: every .section gets the page background */
body.light-homepage .section {
    background: #f8faff !important;
    background-image: none !important;
}

/* Hero - was missing, causing dark bleed-through */
body.light-homepage .hero {
    background: #f8faff !important;
    background-image: none !important;
}

/* Section-specific alternating backgrounds */
body.light-homepage #how-it-works {
    background: #ffffff !important;
}

body.light-homepage #our-mission,
body.light-homepage .mission-section {
    background: #eff6ff !important;
    background-image: none !important;
    border-top: 1px solid #dbeafe !important;
    border-bottom: 1px solid #dbeafe !important;
}

body.light-homepage #explore-submissions,
body.light-homepage .recent-section {
    background: #f1f5f9 !important;
}

body.light-homepage #leaderboard {
    background: #ffffff !important;
}

body.light-homepage #rewards {
    background: #f8faff !important;
}

/* Containers should be transparent (they sit inside the colored sections) */
body.light-homepage .container {
    background: transparent !important;
}

/* ── 3. Navigation ───────────────────────────────────────────────────── */
body.light-homepage .nav {
    background: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-bottom: 1px solid #e2e8f0 !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
}

body.light-homepage .nav-title {
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    -webkit-text-fill-color: #2563eb !important;
    color: #2563eb !important;
}

body.light-homepage .nav-tagline {
    color: #64748b !important;
}

body.light-homepage .nav-link {
    color: #475569 !important;
}

body.light-homepage .nav-link:hover {
    color: #2563eb !important;
}

body.light-homepage .nav-link:focus-visible,
body.light-homepage .mobile-nav-link:focus-visible {
    outline-color: rgba(37, 99, 235, 0.5) !important;
}

body.light-homepage .btn-primary {
    background: #2563eb !important;
    background-image: none !important;
    color: #ffffff !important;
    box-shadow: 0 1px 4px rgba(37, 99, 235, 0.25) !important;
}

body.light-homepage .btn-primary:hover {
    background: #1d4ed8 !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3) !important;
    transform: translateY(-1px) !important;
}

body.light-homepage .btn-secondary {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

body.light-homepage .btn-secondary:hover {
    background: #f1f5f9 !important;
}

/* Hamburger bars (legacy class - kept harmless) */
body.light-homepage .hamburger-line {
    background: #1e293b !important;
}

/* Mobile menu toggle button box */
body.light-homepage .mobile-menu-toggle {
    border: 2px solid #cbd5e1 !important;
    background: transparent !important;
}

body.light-homepage .mobile-menu-toggle:hover {
    background: #f1f5f9 !important;
    border-color: #2563eb !important;
}

body.light-homepage .mobile-menu-toggle.active {
    background: #eff6ff !important;
    border-color: #2563eb !important;
}

/* The three hamburger lines (bare <span> tags inside the toggle, no class) */
body.light-homepage .mobile-menu-toggle span {
    background: #1e293b !important;
    box-shadow: none !important;
}

/* Mobile slide-out menu */
body.light-homepage .mobile-menu {
    background: #ffffff !important;
    border-top: 1px solid #e2e8f0 !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
}

body.light-homepage .mobile-nav-link {
    color: #475569 !important;
}

body.light-homepage .mobile-nav-link:hover {
    color: #2563eb !important;
    background: #f1f5f9 !important;
}

body.light-homepage .mobile-signin-btn,
body.light-homepage .mobile-login-btn,
body.light-homepage #mobileSignInBtn,
body.light-homepage #mobileSignInButton,
body.light-homepage #mobileTopSignIn {
    background: #2563eb !important;
    color: #ffffff !important;
}

/* User dropdown */
body.light-homepage .user-menu-trigger {
    color: #1e293b !important;
}

body.light-homepage .user-name-display {
    color: #1e293b !important;
}

body.light-homepage .dropdown-arrow {
    color: #64748b !important;
}

body.light-homepage .user-dropdown-menu {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1) !important;
}

body.light-homepage .dropdown-item {
    color: #374151 !important;
}

body.light-homepage .dropdown-item:hover {
    background: #f1f5f9 !important;
    color: #2563eb !important;
}

body.light-homepage .dropdown-divider {
    border-color: #e2e8f0 !important;
}

body.light-homepage .dropdown-name {
    color: #0f172a !important;
}

body.light-homepage .dropdown-subtitle {
    color: #64748b !important;
}

/* Notification bell */
body.light-homepage .notification-bell-btn {
    color: #475569 !important;
}

body.light-homepage .notification-bell-btn:hover {
    color: #2563eb !important;
}

body.light-homepage .notification-panel {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1) !important;
}

body.light-homepage .notification-header {
    border-bottom: 1px solid #e2e8f0 !important;
    color: #0f172a !important;
}

body.light-homepage .notification-header h3 {
    color: #0f172a !important;
}

/* ── 4. Hero content ─────────────────────────────────────────────────── */
body.light-homepage .hero-title {
    color: #0f172a !important;
}

body.light-homepage .gradient-text {
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    -webkit-text-fill-color: #2563eb !important;
    color: #2563eb !important;
}

body.light-homepage .highlight-cyan {
    color: #2563eb !important;
    -webkit-text-fill-color: #2563eb !important;
}

body.light-homepage .hero-subtitle {
    color: #475569 !important;
}

body.light-homepage .hero-logo-section {
    color: #1e293b !important;
}

/* ── 5. Section titles (all sections) ────────────────────────────────── */
body.light-homepage .section-title {
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    -webkit-text-fill-color: #0f172a !important;
    color: #0f172a !important;
}

body.light-homepage .explore-title-row .section-title {
    -webkit-text-fill-color: #0f172a !important;
    color: #0f172a !important;
}

/* ── 6. Analysis / Detection form card ───────────────────────────────── */
body.light-homepage .analysis-form,
body.light-homepage .analysis-form.primary-card {
    background: #ffffff !important;
    background-image: none !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.07), 0 1px 4px rgba(0, 0, 0, 0.04) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.light-homepage .form-title {
    color: #0f172a !important;
}

body.light-homepage .form-reward-subtitle {
    color: #475569 !important;
}

body.light-homepage .form-reward-subtitle strong {
    color: #2563eb !important;
}

body.light-homepage .form-subtitle {
    color: #64748b !important;
}

/* Detection tabs */
body.light-homepage .detection-tabs {
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    padding: 4px !important;
}

body.light-homepage .detection-tab {
    color: #64748b !important;
    background: transparent !important;
    border-radius: 7px !important;
}

body.light-homepage .detection-tab:hover {
    color: #2563eb !important;
    background: rgba(37, 99, 235, 0.06) !important;
}

body.light-homepage .detection-tab.active {
    background: #2563eb !important;
    color: #ffffff !important;
    box-shadow: 0 1px 4px rgba(37, 99, 235, 0.25) !important;
}

/* Link input */
body.light-homepage .hero-link-input,
body.light-homepage .form-input {
    background: #f8faff !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .hero-link-input:focus,
body.light-homepage .form-input:focus {
    border-color: #2563eb !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
}

body.light-homepage .hero-link-input::placeholder,
body.light-homepage .form-input::placeholder {
    color: #94a3b8 !important;
}

/* Submit button */
body.light-homepage .hero-submit-btn,
body.light-homepage .submit-btn {
    background: #2563eb !important;
    background-image: none !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.25) !important;
}

body.light-homepage .hero-submit-btn:hover,
body.light-homepage .submit-btn:hover {
    background: #1d4ed8 !important;
    box-shadow: 0 4px 16px rgba(37, 99, 235, 0.35) !important;
    transform: translateY(-1px) !important;
}

body.light-homepage .hero-submit-btn:disabled,
body.light-homepage .submit-btn:disabled {
    background: #cbd5e1 !important;
    box-shadow: none !important;
}

/* Text textarea */
body.light-homepage .text-editor-wrapper textarea,
body.light-homepage #textDetectionInput {
    background: #f8faff !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .text-editor-wrapper textarea:focus,
body.light-homepage #textDetectionInput:focus {
    border-color: #2563eb !important;
    background: #ffffff !important;
}

body.light-homepage .text-editor-footer {
    background: #f1f5f9 !important;
    border-top: 1px solid #e2e8f0 !important;
    color: #64748b !important;
}

/* Voting / Justification modal form elements */
body.light-homepage .modal-form-panel textarea,
body.light-homepage .modal-content textarea {
    background: #f8faff !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .modal-form-panel textarea::placeholder,
body.light-homepage .modal-content textarea::placeholder {
    color: #94a3b8 !important;
}

body.light-homepage .modal-form-panel textarea:focus,
body.light-homepage .modal-content textarea:focus {
    border-color: #2563eb !important;
    background: #ffffff !important;
}

body.light-homepage .modal-form-panel input:not([type="range"]):not([type="checkbox"]),
body.light-homepage .modal-form-panel select {
    background: #f8faff !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .modal-form-panel input:not([type="range"]):not([type="checkbox"])::placeholder {
    color: #94a3b8 !important;
}

/* ── aiJustificationModal - full light theme ─────────────────────────── */

/* Outer shell: replace dark gradient with light slate gradient */
body.light-homepage .modal-split-view {
    background: linear-gradient(180deg, #f8fafc, #f1f5f9) !important;
}

/* Left panel: white card */
body.light-homepage .modal-content-preview {
    background: #ffffff !important;
    border-right-color: #e2e8f0 !important;
}

body.light-homepage .modal-content-preview,
body.light-homepage .modal-content-preview * {
    color: #1e293b !important;
}

body.light-homepage .modal-content-preview .preview-content-title {
    color: #0f172a !important;
}

body.light-homepage .modal-content-preview a,
body.light-homepage .modal-content-preview .preview-url {
    color: #2563eb !important;
}

body.light-homepage .modal-content-preview .preview-url:hover {
    color: #1d4ed8 !important;
}

body.light-homepage .preview-label {
    color: #2563eb !important;
}

body.light-homepage .preview-placeholder {
    background: #f1f5f9 !important;
    color: #94a3b8 !important;
}

body.light-homepage .placeholder-text {
    color: #94a3b8 !important;
}

body.light-homepage .preview-score-badge {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
}

body.light-homepage .preview-score-badge .score-label {
    color: #64748b !important;
}

body.light-homepage .preview-score-badge .score-value {
    color: #2563eb !important;
}

body.light-homepage .preview-score-badge .score-value.high-score {
    color: #ef4444 !important;
}

body.light-homepage .preview-score-badge .score-value.medium-score {
    color: #f59e0b !important;
}

/* Right panel: slate background, dark text */
body.light-homepage .modal-form-panel *:not(textarea):not(input):not(select):not(option) {
    color: #1e293b !important;
}

body.light-homepage .modal-form-panel h3,
body.light-homepage .modal-form-panel h4 {
    color: #0f172a !important;
}

/* #userRatingStatus - override inline dark box */
body.light-homepage #userRatingStatus {
    background: #eff6ff !important;
    border-color: #bfdbfe !important;
}

body.light-homepage #currentRatingDisplay {
    color: #16a34a !important;
}

body.light-homepage #awardEligibilityStatus {
    color: #64748b !important;
}

body.light-homepage #progressToSeven>div:first-child {
    color: #64748b !important;
}

/* Progress bar track - inline rgba(255,255,255,0.2) → light gray */
body.light-homepage #progressToSeven>div:last-child {
    background: #e2e8f0 !important;
}

/* community-guidelines-warning - inline dark red box → light red */
body.light-homepage .community-guidelines-warning {
    background: #fef2f2 !important;
    border-color: #fecaca !important;
}

body.light-homepage .community-guidelines-warning * {
    color: #991b1b !important;
}

/* Restore form inputs to dark-on-light */
body.light-homepage .modal-form-panel textarea,
body.light-homepage .modal-form-panel input:not([type="range"]):not([type="checkbox"]),
body.light-homepage .modal-form-panel select {
    color: #1e293b !important;
}

body.light-homepage .char-count {
    color: #64748b !important;
}

/* Word / coherence counters - inline rgba(255,255,255,0.6) → muted slate */
body.light-homepage #wordCounter,
body.light-homepage #coherenceCounter {
    color: #94a3b8 !important;
}

/* <option> elements - inline dark #1a1a24 bg + white text → light */
body.light-homepage .modal-form-panel option {
    background: #ffffff !important;
    color: #1e293b !important;
}

/* Confidence-wrapper and visual-separator dividing lines */
body.light-homepage .modal-form-panel .confidence-wrapper {
    border-top-color: #e2e8f0 !important;
}

body.light-homepage .modal-form-panel .visual-separator {
    border-top-color: #e2e8f0 !important;
}

/* coherenceInput inline-styled textarea */
body.light-homepage #coherenceInput {
    background: #f8faff !important;
    border-color: #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage #coherenceInput::placeholder {
    color: #94a3b8 !important;
}

/* Override vote amber box - keep amber tint, darken text */
body.light-homepage #overrideVoteContainer>div {
    background: rgba(245, 158, 11, 0.08) !important;
    border-color: rgba(245, 158, 11, 0.3) !important;
}

body.light-homepage #overrideVoteContainer * {
    color: #1e293b !important;
}

/* Confidence value display (big number) */
body.light-homepage #confidenceValue {
    color: #1e293b !important;
}

/* Earning callout above form */
body.light-homepage .earning-callout {
    background: #eff6ff !important;
    background-image: none !important;
    border: 1px solid #dbeafe !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.light-homepage .callout-title {
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    -webkit-text-fill-color: #1e40af !important;
    color: #1e40af !important;
}

body.light-homepage .earning-option {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
}

body.light-homepage .option-content h3 {
    color: #2563eb !important;
}

body.light-homepage .option-content p {
    color: #475569 !important;
}

/* Impact notification */
body.light-homepage .impact-notification {
    background: #f0fdf4 !important;
    border: 1px solid #bbf7d0 !important;
}

body.light-homepage .impact-title {
    color: #166534 !important;
}

body.light-homepage .impact-description {
    color: #15803d !important;
}

/* ── 7. How It Works - Step cards ────────────────────────────────────── */
body.light-homepage .step-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.light-homepage .step-card:hover {
    box-shadow: 0 8px 24px rgba(37, 99, 235, 0.1) !important;
    border-color: #bfdbfe !important;
    transform: translateY(-4px) !important;
}

body.light-homepage .step-card .step-number {
    background: #2563eb !important;
    background-image: none !important;
    color: #ffffff !important;
}

body.light-homepage .step-card h3 {
    color: #2563eb !important;
}

body.light-homepage .step-card p {
    color: #475569 !important;
}

/* ── 8. Mission section ──────────────────────────────────────────────── */
body.light-homepage .mission-subtitle {
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    -webkit-text-fill-color: #2563eb !important;
    color: #2563eb !important;
}

body.light-homepage .mission-intro {
    color: #475569 !important;
}

body.light-homepage .mission-why h3,
body.light-homepage .mission-how h3,
body.light-homepage .mission-vision h3,
body.light-homepage .mission-cta h3 {
    color: #0f172a !important;
}

body.light-homepage .mission-why p,
body.light-homepage .mission-cta p,
body.light-homepage .mission-section p {
    color: #475569 !important;
}

body.light-homepage .mission-steps .mission-step {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

body.light-homepage .mission-step h4 {
    color: #0f172a !important;
}

body.light-homepage .mission-step p {
    color: #475569 !important;
}

/* ── 9. Explore / Recent submissions ─────────────────────────────────── */
body.light-homepage .explore-header-wrapper {
    background: transparent !important;
}

/* Preview / submission cards */
body.light-homepage .preview-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05) !important;
    color: #1e293b !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.light-homepage .preview-card:hover {
    box-shadow: 0 6px 20px rgba(37, 99, 235, 0.08) !important;
    border-color: #bfdbfe !important;
}

body.light-homepage .preview-title,
body.light-homepage .preview-card h3,
body.light-homepage .preview-card h4 {
    color: #0f172a !important;
}

body.light-homepage .preview-description,
body.light-homepage .preview-card p {
    color: #475569 !important;
}

body.light-homepage .preview-card .preview-source,
body.light-homepage .preview-card .source-label {
    color: #64748b !important;
}

/* Vote buttons */
body.light-homepage .vote-btn {
    background: linear-gradient(135deg, #7C5CFF, #A78BFA) !important;
    border: none !important;
    color: white !important;
    font-weight: 600 !important;
}

body.light-homepage .vote-btn:hover {
    background: linear-gradient(135deg, #6D4CFF, #8B5CF6) !important;
}

body.light-homepage .vote-btn.voted,
body.light-homepage .vote-btn.ai-btn.voted {
    background: linear-gradient(135deg, #10b981, #059669) !important;
    border-color: #059669 !important;
    color: #ffffff !important;
}

/* AI / Real vote button colours preserved on light theme */
body.light-homepage .vote-btn.ai-btn:not(.voted):not(:disabled) {
    background: rgba(239, 68, 68, 0.08) !important;
    border: 2px solid #ef4444 !important;
    color: #b91c1c !important;
}

body.light-homepage .vote-btn.ai-btn:not(.voted):not(:disabled):hover {
    background: rgba(239, 68, 68, 0.15) !important;
    border-color: #dc2626 !important;
    color: #991b1b !important;
}

body.light-homepage .vote-btn.not-ai-btn:not(.voted):not(:disabled) {
    background: rgba(34, 197, 94, 0.08) !important;
    border: 2px solid #22c55e !important;
    color: #15803d !important;
}

body.light-homepage .vote-btn.not-ai-btn:not(.voted):not(:disabled):hover {
    background: rgba(34, 197, 94, 0.15) !important;
    border-color: #16a34a !important;
    color: #166534 !important;
}

/* Score badge */
body.light-homepage .score {
    color: #0f172a !important;
}

/* Tags */
body.light-homepage .tag {
    background: #f1f5f9 !important;
    color: #475569 !important;
    border: 1px solid #e2e8f0 !important;
}

/* Filter buttons */
body.light-homepage .filter-btn {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

body.light-homepage .filter-btn:hover,
body.light-homepage .filter-btn.active {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

/* Room toggle */
body.light-homepage .room-toggle-btn {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

body.light-homepage .room-toggle-btn.active {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

/* Month indicator */
body.light-homepage .explore-month-indicator {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #64748b !important;
}

/* Empty state */
body.light-homepage .empty-state,
body.light-homepage .no-submissions {
    color: #64748b !important;
}

/* Load more */
body.light-homepage .load-more-btn {
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #2563eb !important;
}

body.light-homepage .load-more-btn:hover {
    background: #eff6ff !important;
    border-color: #93c5fd !important;
}

/* ── 10. Leaderboard section ─────────────────────────────────────────── */
body.light-homepage .leaderboard-item {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04) !important;
}

body.light-homepage .leaderboard-item:hover {
    background: #f8faff !important;
    border-color: #bfdbfe !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.08) !important;
    transform: translateY(-2px) !important;
}

body.light-homepage .leaderboard-item .user-name {
    color: #0f172a !important;
}

body.light-homepage .leaderboard-item .user-name a {
    color: #0f172a !important;
}

body.light-homepage .leaderboard-item .user-name a:hover {
    color: #2563eb !important;
}

body.light-homepage .leaderboard-item .user-stats {
    color: #64748b !important;
}

body.light-homepage .leaderboard-item .rank {
    color: #0f172a !important;
}

body.light-homepage .leaderboard-wrapper,
body.light-homepage .leaderboard-container,
body.light-homepage #leaderboardList {
    background: transparent !important;
}

/* AI Champs section */
body.light-homepage .ai-champs-section {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.04), rgba(37, 99, 235, 0.02)) !important;
    border-top: 1px solid #dbeafe !important;
    border-bottom: 1px solid #dbeafe !important;
}

body.light-homepage .ai-champs-section::before {
    background: none !important;
}

body.light-homepage .ai-champs-header h3,
body.light-homepage .ai-champs-title {
    color: #0f172a !important;
}

/* Leaderboard pagination */
body.light-homepage .leaderboard-page-btn {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

body.light-homepage .leaderboard-page-btn.active,
body.light-homepage .leaderboard-page-btn:hover {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

/* ── 11. Rewards section ─────────────────────────────────────────────── */
body.light-homepage .rewards-info-section {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05) !important;
}

body.light-homepage .rewards-header h3 {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
}

body.light-homepage .rewards-subtitle {
    color: #475569 !important;
}

body.light-homepage .rewards-tiers {
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
}

body.light-homepage .rewards-tier {
    background: #f8faff !important;
    border-bottom: 1px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .rewards-tier:last-child {
    border-bottom: none !important;
}

body.light-homepage .tier-rank {
    color: #0f172a !important;
}

body.light-homepage .tier-amount {
    color: #2563eb !important;
}

body.light-homepage .rewards-disclaimer {
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
}

body.light-homepage .rewards-disclaimer p {
    color: #64748b !important;
}

/* Score unavailable notice */
body.light-homepage .score-unavailable-notice {
    background: #f8faff !important;
    border: 1px solid #e2e8f0 !important;
    color: #64748b !important;
}

/* ── 12. Footer ──────────────────────────────────────────────────────── */
body.light-homepage .footer {
    background: #ffffff !important;
    background-image: none !important;
    border-top: 1px solid #e2e8f0 !important;
    box-shadow: none !important;
}

body.light-homepage .footer-title {
    color: #0f172a !important;
}

body.light-homepage .footer-tagline {
    color: #64748b !important;
}

body.light-homepage .footer-link {
    color: #475569 !important;
}

body.light-homepage .footer-link:hover {
    color: #2563eb !important;
}

body.light-homepage .footer-bottom {
    color: #94a3b8 !important;
    border-top: 1px solid #e2e8f0 !important;
}

body.light-homepage .social-link {
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

body.light-homepage .social-link:hover {
    background: #dbeafe !important;
    border-color: #93c5fd !important;
    color: #2563eb !important;
}

/* ── 13. Misc / Modals / Overlays ────────────────────────────────────── */

body.light-homepage .toast {
    background: #1e293b !important;
    color: #f8faff !important;
}

body.light-homepage .toast-message,
body.light-homepage .toast-icon,
body.light-homepage .toast-close,
body.light-homepage .toast-content {
    color: #f8faff !important;
}

body.light-homepage .modal-overlay {
    background: rgba(15, 23, 42, 0.6) !important;
}

body.light-homepage .guest-timer-popup {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12) !important;
    color: #1e293b !important;
}

/* $500 waitlist popup - preserve white text on dark pill and CTA button */
body.light-homepage #textReviewerWaitlistPopup .tr-btn,
body.light-homepage #trSubmitBtn {
    color: #f5f5f7 !important;
    background: #1d1d1f !important;
}

body.light-homepage #textReviewerWaitlistPopup .tr-btn:hover,
body.light-homepage #trSubmitBtn:hover {
    color: #f5f5f7 !important;
    background: #3a3a3c !important;
}

/* Dark "New · $500 Reward Pool" badge pill - use attribute-based selector */
body.light-homepage #textReviewerWaitlistPopup .tr-inner>div:first-child {
    color: #f5f5f7 !important;
    -webkit-text-fill-color: #f5f5f7 !important;
}

body.light-homepage ::-webkit-scrollbar-track {
    background: #f1f5f9 !important;
}

body.light-homepage ::-webkit-scrollbar-thumb {
    background: #cbd5e1 !important;
}

body.light-homepage ::-webkit-scrollbar-thumb:hover {
    background: #94a3b8 !important;
}

/* ── 14. MOBILE OVERRIDE - counters ALL dark rules in styles.css ──────
   styles.css @media (max-width:768px) forces:
   - html, body { background-color: #0f0f23 !important; color: #ffffff !important }
   - .container, .section, .hero, .nav, .header, .footer, ... { color: #ffffff !important }
   - body { background: #0f0f23 !important }
   - .nav { background: rgba(15,15,35,0.95) !important }
   All overridden below with higher specificity (.light-homepage prefix = 0,1,x vs 0,0,x)
   ────────────────────────────────────────────────────────────────────── */
@media screen and (max-width: 768px) {
    html.light-homepage {
        background: #f8faff !important;
        background-color: #f8faff !important;
    }

    body.light-homepage {
        background: #f8faff !important;
        background-color: #f8faff !important;
        background-image: none !important;
        color: #1e293b !important;
    }

    /* Override: ".container, .section, .hero, .nav, ... { color: #ffffff !important }" */
    body.light-homepage .container,
    body.light-homepage .section,
    body.light-homepage .hero,
    body.light-homepage .header,
    body.light-homepage .footer,
    body.light-homepage .main-content,
    body.light-homepage .sidebar,
    body.light-homepage .wrapper {
        color: #1e293b !important;
    }

    /* Override: ".container, .section, .hero, .nav... { background-color: transparent !important }" */
    /* Give every section its correct light background on mobile */
    body.light-homepage .hero {
        background: #f8faff !important;
        background-image: none !important;
    }

    body.light-homepage .section {
        background: #f8faff !important;
        background-image: none !important;
    }

    body.light-homepage #how-it-works {
        background: #ffffff !important;
    }

    body.light-homepage #our-mission,
    body.light-homepage .mission-section {
        background: #eff6ff !important;
        background-image: none !important;
    }

    body.light-homepage #explore-submissions,
    body.light-homepage .recent-section {
        background: #f1f5f9 !important;
    }

    body.light-homepage #leaderboard {
        background: #ffffff !important;
    }

    body.light-homepage #rewards {
        background: #f8faff !important;
    }

    /* Override: ".nav { background: rgba(15,15,35,0.95) !important }" */
    body.light-homepage .nav {
        background: #ffffff !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        border-bottom: 1px solid #e2e8f0 !important;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
    }

    /* Override: ".footer { background: transparent !important }" */
    body.light-homepage .footer {
        background: #ffffff !important;
        background-image: none !important;
    }

    /* Mobile hero text */
    body.light-homepage .hero-title {
        color: #0f172a !important;
    }

    body.light-homepage .hero-subtitle {
        color: #475569 !important;
    }

    /* Mobile section titles */
    body.light-homepage .section-title {
        background: none !important;
        -webkit-background-clip: unset !important;
        background-clip: unset !important;
        -webkit-text-fill-color: #0f172a !important;
        color: #0f172a !important;
    }

    /* Mobile step cards */
    body.light-homepage .step-card {
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
    }

    body.light-homepage .step-card h3 {
        color: #2563eb !important;
    }

    body.light-homepage .step-card p {
        color: #475569 !important;
    }

    /* Mobile analysis form */
    body.light-homepage .analysis-form,
    body.light-homepage .analysis-form.primary-card {
        background: #ffffff !important;
        background-image: none !important;
        border: 1px solid #e2e8f0 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    /* Mobile leaderboard items */
    body.light-homepage .leaderboard-item {
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
    }

    body.light-homepage .leaderboard-item .user-name {
        color: #0f172a !important;
    }

    body.light-homepage .leaderboard-item .user-stats {
        color: #64748b !important;
    }

    /* Mobile preview cards */
    body.light-homepage .preview-card {
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        color: #1e293b !important;
    }

    body.light-homepage .preview-card h3,
    body.light-homepage .preview-card h4 {
        color: #0f172a !important;
    }

    body.light-homepage .preview-card p {
        color: #475569 !important;
    }

    /* Mobile nav links */
    body.light-homepage .nav-link {
        color: #475569 !important;
    }

    body.light-homepage .nav-title {
        -webkit-text-fill-color: #2563eb !important;
        color: #2563eb !important;
    }

    body.light-homepage .nav-tagline {
        color: #64748b !important;
    }

    /* Mobile menu */
    body.light-homepage .mobile-menu {
        background: #ffffff !important;
    }

    body.light-homepage .mobile-nav-link {
        color: #475569 !important;
    }

    /* Mobile footer */
    body.light-homepage .footer-title {
        color: #0f172a !important;
    }

    body.light-homepage .footer-link {
        color: #475569 !important;
    }
}

/* ── 15. Small phones (≤480px) ───────────────────────────────────────── */
@media screen and (max-width: 480px) {

    html.light-homepage,
    body.light-homepage {
        background: #f8faff !important;
        background-color: #f8faff !important;
    }

    body.light-homepage .nav {
        background: #ffffff !important;
    }

    body.light-homepage .hero {
        background: #f8faff !important;
    }

    body.light-homepage .section {
        background: #f8faff !important;
    }
}

/* ── 16. iOS Safari @supports ────────────────────────────────────────── */
/* Keep at end so it takes cascade priority over earlier @supports block */
@supports (-webkit-touch-callout: none) and (max-width: 768px) {

    html.light-homepage,
    body.light-homepage {
        background: #f8faff !important;
        background-color: #f8faff !important;
    }
}

/* ── PATCH: Missing text-color overrides identified in full audit ─────── */

/* AI Champs section */
body.light-homepage .ai-champs-subtitle {
    color: #64748b !important;
}

body.light-homepage .ai-champ-name {
    color: #0f172a !important;
}

body.light-homepage .ai-champ-item {
    background: #ffffff !important;
    border: 1px solid #dbeafe !important;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.06) !important;
    background-image: none !important;
}

/* Score label on cards */
body.light-homepage .score-label {
    color: #64748b !important;
}

/* Vote message (shown after casting vote) */
body.light-homepage .vote-message {
    color: #1e293b !important;
}

/* Notification panel title */
body.light-homepage .notification-title {
    color: #0f172a !important;
}

/* Value props below hero form */
body.light-homepage .value-prop {
    color: #475569 !important;
}

body.light-homepage .value-prop svg {
    color: #64748b !important;
}

body.light-homepage .value-prop strong {
    color: #1e293b !important;
}

/* Points badge (cyan on dark → blue on light) */
body.light-homepage .points-badge {
    background: #dbeafe !important;
    color: #1d4ed8 !important;
}

/* Small CTA below form */
body.light-homepage .small-cta-text {
    color: #475569 !important;
}

body.light-homepage .small-cta-button {
    background: #2563eb !important;
    background-image: none !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.2) !important;
}

body.light-homepage .small-cta-button:hover {
    background: #1d4ed8 !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3) !important;
}

/* Leaderboard status banner */
body.light-homepage .status-title {
    color: #92400e !important;
    text-shadow: none !important;
}

body.light-homepage .status-description {
    color: #475569 !important;
}

/* Rewards tier amounts - all colour variants */
body.light-homepage .tier-reward {
    color: #2563eb !important;
}

body.light-homepage .tier-gold .tier-reward {
    color: #b45309 !important;
}

body.light-homepage .tier-silver .tier-reward {
    color: #475569 !important;
}

body.light-homepage .tier-bronze .tier-reward {
    color: #b45309 !important;
}

body.light-homepage .tier-standard .tier-reward {
    color: #2563eb !important;
}

/* Spinner text */
body.light-homepage .spinner-text {
    color: #64748b !important;
}

/* Form selects: content type dropdown & filter dropdowns */
body.light-homepage .content-type-select,
body.light-homepage .filter-select-enhanced {
    background: #f8faff !important;
    background-image: none !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .content-type-select:hover,
body.light-homepage .filter-select-enhanced:hover {
    background: #ffffff !important;
    border-color: #93c5fd !important;
}

body.light-homepage .content-type-select:focus,
body.light-homepage .filter-select-enhanced:focus {
    background: #ffffff !important;
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
}

body.light-homepage .content-type-select option,
body.light-homepage .filter-select-enhanced option {
    background: #ffffff !important;
    color: #1e293b !important;
}

body.light-homepage .content-type-select option[value=""],
body.light-homepage .filter-select-enhanced option[value=""] {
    color: #94a3b8 !important;
}

/* Month selector (historical leaderboard) */
body.light-homepage .month-selector select {
    background: #f8faff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%231e293b' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 0.5rem center !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .month-selector select option {
    background: #ffffff !important;
    color: #1e293b !important;
}

/* Feed toggle (Text room / Link room switcher) */
body.light-homepage .feed-toggle {
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
}

body.light-homepage .feed-toggle-btn {
    color: #64748b !important;
    background: transparent !important;
}

body.light-homepage .feed-toggle-btn:hover:not(.active) {
    color: #2563eb !important;
    background: rgba(37, 99, 235, 0.05) !important;
}

body.light-homepage .feed-toggle-btn.active {
    background: #2563eb !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.3) !important;
}

/* Dual leaderboard sections (text/link rooms) */
body.light-homepage .dual-leaderboard-section {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

body.light-homepage .dual-lb-section-title {
    color: #0f172a !important;
}

body.light-homepage .dual-lb-title {
    color: #0f172a !important;
}

body.light-homepage .dual-lb-subtitle {
    color: #64748b !important;
}

body.light-homepage .dual-lb-empty {
    color: #94a3b8 !important;
}

body.light-homepage .text-lb .dual-lb-pool {
    background: #ede9fe !important;
    color: #5b21b6 !important;
}

body.light-homepage .link-lb .dual-lb-pool {
    background: #dbeafe !important;
    color: #1d4ed8 !important;
}

/* Reward pool banners (Text room / Link room) */
body.light-homepage .room-reward-banner {
    background: #eff6ff !important;
    background-image: none !important;
    border: 1px solid #dbeafe !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.light-homepage .room-reward-banner.text-room-banner {
    background: #f5f3ff !important;
    border-color: #ddd6fe !important;
}

body.light-homepage .room-reward-banner.link-room-banner {
    background: #eff6ff !important;
    border-color: #bfdbfe !important;
}

body.light-homepage .reward-banner-title {
    color: #0f172a !important;
}

body.light-homepage .reward-banner-content {
    color: #1e293b !important;
}

/* Historical leaderboard */
body.light-homepage .historical-user-name {
    color: #0f172a !important;
}

body.light-homepage .full-user-name {
    color: #0f172a !important;
}

/* AI score value badge */
body.light-homepage .ai-score-value {
    background: #dbeafe !important;
    color: #1d4ed8 !important;
}

body.light-homepage .ai-score-value.no-votes {
    background: #f1f5f9 !important;
    color: #64748b !important;
}

/* Explore month indicator UTC badge */
body.light-homepage .utc-badge {
    color: #64748b !important;
}

/* Data points (animated stats in hero) */
body.light-homepage .data-point {
    color: #475569 !important;
}

/* Filter group label */
body.light-homepage .filter-label {
    color: #64748b !important;
}

/* Countdown timer */
body.light-homepage .countdown-label {
    color: #64748b !important;
}

body.light-homepage .countdown-unit label {
    color: #64748b !important;
}

body.light-homepage .countdown-unit span {
    color: #0f172a !important;
}

/* Contact footer inside sections */
body.light-homepage .contact-footer p {
    color: #475569 !important;
}

/* Mobile override for the patch rules above */
@media screen and (max-width: 768px) {
    body.light-homepage .feed-toggle {
        background: #f1f5f9 !important;
        border-color: #e2e8f0 !important;
    }

    body.light-homepage .feed-toggle-btn {
        color: #64748b !important;
    }

    body.light-homepage .feed-toggle-btn.active {
        background: #2563eb !important;
        color: #ffffff !important;
    }

    body.light-homepage .dual-leaderboard-section {
        background: #ffffff !important;
    }

    body.light-homepage .dual-lb-section-title,
    body.light-homepage .dual-lb-title {
        color: #0f172a !important;
    }

    body.light-homepage .dual-lb-subtitle {
        color: #64748b !important;
    }

    body.light-homepage .room-reward-banner {
        background: #eff6ff !important;
        background-image: none !important;
    }

    body.light-homepage .room-reward-banner.text-room-banner {
        background: #f5f3ff !important;
    }

    body.light-homepage .reward-banner-title {
        color: #0f172a !important;
    }

    body.light-homepage .content-type-select,
    body.light-homepage .filter-select-enhanced {
        background: #f8faff !important;
        color: #1e293b !important;
        border-color: #e2e8f0 !important;
    }

    body.light-homepage .tier-reward {
        color: #2563eb !important;
    }

    body.light-homepage .tier-gold .tier-reward {
        color: #b45309 !important;
    }

    body.light-homepage .value-prop {
        color: #475569 !important;
    }

    body.light-homepage .value-prop strong {
        color: #1e293b !important;
    }

    body.light-homepage .status-title {
        color: #92400e !important;
        text-shadow: none !important;
    }

    body.light-homepage .status-description {
        color: #475569 !important;
    }
}

/* ── CARVE-OUTS: Elements that legitimately need white text ───────────
   These selectors have higher specificity than the wildcard (0,2,1+)
   so they correctly override body.light-homepage * (0,1,1).
   ──────────────────────────────────────────────────────────────────── */

/* Social share buttons - white text on brand-colored backgrounds */
body.light-homepage .share-btn.twitter,
body.light-homepage .share-btn.facebook,
body.light-homepage .share-btn.linkedin,
body.light-homepage .share-btn.whatsapp {
    color: #ffffff !important;
}

/* Mobile logout button - white text on red/danger background */
body.light-homepage .mobile-logout-btn {
    color: #ffffff !important;
}

/* Notification count badge - white number on red badge */
body.light-homepage .notification-badge {
    color: #ffffff !important;
}

/* Vote wheel ring - white text overlaid on dark circular animation */
body.light-homepage .ring-percentage,
body.light-homepage .ring-status-text {
    color: #ffffff !important;
}

/* Tutorial popup close × button - in dark overlay */
body.light-homepage .tutorial-popup-close {
    color: #ffffff !important;
}

/* Gradient hero text - uses -webkit-text-fill-color so wildcard color
   doesn't affect it, but keep text-fill-color explicit for safety */
body.light-homepage .gradient-text {
    color: #2563eb !important;
    -webkit-text-fill-color: #2563eb !important;
}

/* Tier position labels (1st, 2nd, 3rd, 4th-10th) - on now-light card */
body.light-homepage .tier-position {
    color: #64748b !important;
}

/* Date filter inputs - white text on near-transparent bg in styles.css */
body.light-homepage .filter-date-input {
    color: #1e293b !important;
    background: #f8faff !important;
    border: 2px solid #e2e8f0 !important;
}

body.light-homepage .filter-date-input:focus {
    border-color: #2563eb !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
}

/* Text detection textarea - class-based target (ID #textDetectionInput
   is already overridden above; this catches the class too) */
body.light-homepage .text-detection-input {
    color: #1e293b !important;
    background: #f8faff !important;
}

body.light-homepage .text-detection-input::placeholder {
    color: #94a3b8 !important;
}

/* Text editor wrapper - glassmorphism dark bg → white */
body.light-homepage .text-editor-wrapper {
    background: #ffffff !important;
    border: 2px solid #e2e8f0 !important;
}

body.light-homepage .text-editor-wrapper:focus-within {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
}

/* Text clear button inside editor */
body.light-homepage .text-clear-btn {
    color: #64748b !important;
    background: rgba(100, 116, 139, 0.1) !important;
    border-color: rgba(100, 116, 139, 0.2) !important;
}

/* Preview panel title and URL (h4 inside .preview-details, not in card) */
body.light-homepage .preview-content-title {
    color: #0f172a !important;
}

body.light-homepage .preview-url,
body.light-homepage .preview-url span {
    color: #64748b !important;
}

/* ── Fix: Feed card descriptions ─────────────────────────────────────────
   styles.css has a high-specificity (0,4,0) !important rule that forces
   description text to rgba(255,255,255,0.75) - invisible on white cards.
   These selectors match or beat that specificity under light-homepage. ── */
body.light-homepage .recent-links-grid>.preview-card .desc-wrapper,
body.light-homepage .recent-links-grid>.preview-card .desc-wrapper .preview-description {
    color: #475569 !important;
}

body.light-homepage .recent-links-grid>.preview-card .show-more-btn {
    color: #2563eb !important;
}

/* ── Fix: Reputation star colours ────────────────────────────────────────
   Stars are rendered with inline styles but the wildcard forces color dark.
   These class selectors (specificity 0,2,0) override the wildcard. ──── */
body.light-homepage .star-full {
    color: #ff8c00 !important;
}

body.light-homepage .star-half {
    color: rgba(0, 0, 0, 0.12) !important;
}

body.light-homepage .star-half>span {
    color: #ff8c00 !important;
}

body.light-homepage .star-empty {
    color: rgba(0, 0, 0, 0.12) !important;
}

body.light-homepage .rating-label {
    color: #64748b !important;
}

body.light-homepage .rating-info-icon {
    color: #94a3b8 !important;
}

/* ── Fix: Newsletter ("Stay Updated") section ───────────────────────────
   Dark theme defaults left the input transparent and text invisible on
   the light page. Provide a full light-mode override. ──────────────── */
body.light-homepage .newsletter-section {
    background: #f0f7ff !important;
    border-top: 1px solid #dbeafe !important;
}

body.light-homepage .newsletter-content h2 {
    color: #1e40af !important;
}

body.light-homepage .newsletter-content p {
    color: #475569 !important;
}

body.light-homepage .newsletter-form {
    flex-wrap: wrap;
    gap: 0.75rem;
}

body.light-homepage .newsletter-form input {
    background: #ffffff !important;
    border: 1.5px solid #cbd5e1 !important;
    color: #1e293b !important;
}

body.light-homepage .newsletter-form input:focus {
    border-color: #2563eb !important;
    outline: none !important;
}

body.light-homepage .newsletter-form input::placeholder {
    color: #94a3b8 !important;
}

body.light-homepage .newsletter-form button {
    background: linear-gradient(135deg, #2563eb, #7c3aed) !important;
    color: #ffffff !important;
}

body.light-homepage .newsletter-response {
    color: #475569 !important;
}

@media (max-width: 768px) {

    body.light-homepage .recent-links-grid>.preview-card .desc-wrapper,
    body.light-homepage .recent-links-grid>.preview-card .desc-wrapper .preview-description {
        color: #475569 !important;
    }

    body.light-homepage .newsletter-form {
        flex-direction: column !important;
    }

    body.light-homepage .newsletter-form input,
    body.light-homepage .newsletter-form button {
        width: 100% !important;
    }
}

/* ── Share overlay button - white text on dark button background ─────── */
body.light-homepage .share-overlay-btn {
    color: #ffffff !important;
    font-weight: 600 !important;
}

body.light-homepage .share-overlay-btn svg {
    color: #ffffff !important;
    stroke: #ffffff !important;
}

/* ── Profile link - visible underline on light backgrounds ────────────── */
body.light-homepage .profile-link {
    border-bottom-color: rgba(15, 23, 42, 0.4) !important;
}

body.light-homepage .profile-link:hover {
    border-bottom-color: #2563eb !important;
    color: #2563eb !important;
}

/* ── Steps Carousel - Mobile nav (dynamically injected by JS) ─────────── */
@media (max-width: 768px) {
    body.light-homepage .sc-nav {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 16px;
        margin-top: 18px;
        width: 100%;
    }

    body.light-homepage .sc-dots {
        display: flex;
        gap: 8px;
        align-items: center;
    }

    body.light-homepage .sc-dot {
        display: inline-block;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #cbd5e1;
        transition: background 0.2s ease, width 0.2s ease;
        cursor: pointer;
    }

    body.light-homepage .sc-dot.active {
        background: #2563eb;
        width: 20px;
        border-radius: 4px;
    }

    body.light-homepage .sc-prev-btn,
    body.light-homepage .sc-next-btn {
        background: rgba(37, 99, 235, 0.12) !important;
        border: 1px solid rgba(37, 99, 235, 0.3) !important;
        color: #2563eb !important;
        border-radius: 50%;
        width: 38px;
        height: 38px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        font-size: 1.1rem;
        line-height: 1;
        transition: background 0.2s ease;
        flex-shrink: 0;
        padding: 0;
    }

    body.light-homepage .sc-prev-btn:hover,
    body.light-homepage .sc-next-btn:hover {
        background: rgba(37, 99, 235, 0.25) !important;
    }
}

/* ── Deep Analysis section (card widget) - light theme ───────────────── */
body.light-homepage .deep-analysis-section {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.06), rgba(99, 102, 241, 0.06)) !important;
    border-color: rgba(37, 99, 235, 0.2) !important;
    box-shadow: 0 0 16px rgba(37, 99, 235, 0.08) !important;
    animation: none !important;
}

body.light-homepage .deep-analysis-description {
    color: #475569 !important;
}

/* Keep button gradient + animated text as-is; just ensure icon/text visible */
body.light-homepage .deep-analysis-btn {
    color: white !important;
}

body.light-homepage .deep-analysis-btn .btn-text {
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
}

/* ── Deep Analysis modal - full light theme ──────────────────────────── */
/* Backdrop */
body.light-homepage #deepAnalysisModal {
    background: rgba(30, 41, 59, 0.55) !important;
}

/* Card shell (direct child with data-modal-scrollable) */
body.light-homepage #deepAnalysisModal>div[data-modal-scrollable] {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12), 0 0 30px rgba(37, 99, 235, 0.08) !important;
}

/* All text dark by default */
body.light-homepage #deepAnalysisModal * {
    color: #ffffff !important;
}

/* Header title gradient → solid dark */
body.light-homepage #deepAnalysisModal h2 {
    -webkit-text-fill-color: #0f172a !important;
    color: #0f172a !important;
}

/* Header border */
body.light-homepage #deepAnalysisModal>div[data-modal-scrollable]>div:first-child {
    border-bottom-color: #e2e8f0 !important;
}

/* Close button */
body.light-homepage #deepAnalysisModal button[onclick="closeDeepAnalysisModal()"],
body.light-homepage #deepAnalysisModal button[type="button"][onclick="closeDeepAnalysisModal()"] {
    color: #64748b !important;
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
}

/* Sticky header strip - replace purple/cyan gradient */
body.light-homepage #deepAnalysisModal div[style*="position: sticky"] {
    background: #f8fafc !important;
    border-bottom-color: #e2e8f0 !important;
}

/* URL display row - replace black semi-transparent box */
body.light-homepage #deepAnalysisModal div[style*="rgba(0, 0, 0, 0.3)"] {
    /* background: #f1f5f9 !important; */
    border-color: #e2e8f0 !important;
}

/* URL anchor - keep blue, not dark */
body.light-homepage #deepAnalysisModal a {
    color: #2563eb !important;
}

/* "How to enable" instructions box - black 20% → light slate */
body.light-homepage #deepAnalysisModal div[style*="rgba(0, 0, 0, 0.2)"] {
    /* background: var(--text-color) !important; */
    border-color: #e2e8f0 !important;
}

/* Amber "Analysis Not Available" h3 - keep amber readable on light */
body.light-homepage #deepAnalysisModal div[style*="rgba(245, 158, 11"] h3 {
    color: #d97706 !important;
}

/* "Close" button inside content area */
body.light-homepage #deepAnalysisModal div[style*="rgba(255, 255, 255, 0.1)"] button,
body.light-homepage #deepAnalysisModal button[style*="rgba(255, 255, 255, 0.1)"] {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
    color: #475569 !important;
}

/* ── Credibility content - override injected credibilityAnalysisStyles ── */
body.light-homepage #deepAnalysisModal .credibility-analysis-content {
    color: #1e293b !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content h3 {
    color: #0369a1 !important;
    -webkit-text-fill-color: #0369a1 !important;
    border-bottom-color: rgba(3, 105, 161, 0.2) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content h3.section-anomalies {
    color: #d97706 !important;
    border-bottom-color: rgba(217, 119, 6, 0.2) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content h3.section-verdict-header {
    color: #7c3aed !important;
    border-bottom-color: rgba(124, 58, 237, 0.2) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content h3.section-verdict {
    color: #16a34a !important;
    border-bottom-color: rgba(22, 163, 74, 0.2) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content h3.section-factcheck {
    color: #2563eb !important;
    border-bottom-color: rgba(37, 99, 235, 0.2) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content h4 {
    color: #7c3aed !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content p {
    color: #475569 !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content strong {
    color: #1e293b !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content li {
    color: #475569 !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .anomaly-label {
    color: #d97706 !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .explanation-label {
    color: #0369a1 !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content hr {
    border-top-color: rgba(37, 99, 235, 0.12) !important;
}

/* Verdict badges - keep semantic text colours, lighten backgrounds */
body.light-homepage #deepAnalysisModal .credibility-analysis-content .verdict-real {
    color: #16a34a !important;
    background: rgba(22, 163, 74, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .verdict-likely-real {
    color: #15803d !important;
    background: rgba(21, 128, 61, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .verdict-misleading {
    color: #d97706 !important;
    background: rgba(217, 119, 6, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .verdict-likely-fake {
    color: #ea580c !important;
    background: rgba(234, 88, 12, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .verdict-ai-generated {
    color: #7c3aed !important;
    background: rgba(124, 58, 237, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .verdict-manipulated {
    color: #dc2626 !important;
    background: rgba(220, 38, 38, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .confidence-high {
    color: #16a34a !important;
    background: rgba(22, 163, 74, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .confidence-medium {
    color: #d97706 !important;
    background: rgba(217, 119, 6, 0.1) !important;
}

body.light-homepage #deepAnalysisModal .credibility-analysis-content .confidence-low {
    color: #dc2626 !important;
    background: rgba(220, 38, 38, 0.1) !important;
}

/* ── Contact modal - restore white text on dark background ───────────── */
body.light-homepage .professional-contact-modal,
body.light-homepage .professional-contact-modal * {
    color: rgba(255, 255, 255, 0.9) !important;
}

body.light-homepage .contact-intro {
    color: rgba(255, 255, 255, 0.75) !important;
}

body.light-homepage .contact-label {
    color: rgba(255, 255, 255, 0.5) !important;
}

body.light-homepage .contact-email {
    color: #00d4ff !important;
}

body.light-homepage .contact-email:hover {
    color: #38bdf8 !important;
}

body.light-homepage .contact-modal-header h3 {
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
}

body.light-homepage .contact-icon {
    color: #00d4ff !important;
}

body.light-homepage .modal-close-btn {
    color: rgba(255, 255, 255, 0.7) !important;
}

body.light-homepage .modal-close-btn:hover {
    color: #ff6b6b !important;
}

body.light-homepage .contact-footer p {
    color: rgba(255, 255, 255, 0.4) !important;
}

/* ── Vote wheel overlay - restore coloured text on dark overlay ──────── */
body.light-homepage .vote-wheel-overlay,
body.light-homepage .vote-wheel-overlay * {
    color: #ffffff !important;
}

body.light-homepage .vote-wheel-overlay .vote-points {
    color: #ffd700 !important;
    -webkit-text-fill-color: #ffd700 !important;
}

body.light-homepage .vote-wheel-overlay .vote-message {
    color: #ffffff !important;
}

/* ── Rank-up popup - restore white text on dark card background ─────── */
body.light-homepage .rank-display,
body.light-homepage .rank-display * {
    color: #ffffff !important;
}

body.light-homepage .rank-display .rank-text {
    color: rgba(255, 255, 255, 0.7) !important;
}

body.light-homepage .rank-display .level-up-text {
    color: rgba(255, 255, 255, 0.6) !important;
}

body.light-homepage .rank-display .rank-number {
    color: #8b5cf6 !important;
}

body.light-homepage .rank-display .new-rank {
    color: #22c55e !important;
}

body.light-homepage .rank-display .old-rank {
    color: rgba(255, 255, 255, 0.5) !important;
    text-decoration: line-through;
}

body.light-homepage .rank-display .rank-arrow {
    color: rgba(255, 255, 255, 0.4) !important;
}

/* ── Post-vote share CTA - restore white text on dark slate popup ───── */
body.light-homepage #postVoteShareCTA,
body.light-homepage #postVoteShareCTA * {
    color: #ffffff !important;
}

body.light-homepage #postVoteShareCTA p {
    color: #e2e8f0 !important;
}

body.light-homepage #postVoteShareCTA p:last-of-type {
    color: #94a3b8 !important;
}

/* ── "You earned X points" post-vote info toast (#postVotePointsInfo) ── */
body.light-homepage #postVotePointsInfo,
body.light-homepage #postVotePointsInfo * {
    color: #e2e8f0 !important;
}

body.light-homepage #postVotePointsInfo p {
    color: #e2e8f0 !important;
}

body.light-homepage #postVotePointsInfo strong {
    color: #a78bfa !important;
}

body.light-homepage #postVotePointsInfo p strong:last-of-type {
    color: #34d399 !important;
}

body.light-homepage #postVotePointsInfo a {
    color: #818cf8 !important;
}

body.light-homepage #postVotePointsInfo button {
    color: #94a3b8 !important;
}

/* ── Text detection feed cards - light UI readable colours ──────────── */
body.light-homepage .text-submission-card,
body.light-homepage .text-submission-card * {
    color: #1e293b !important;
}

body.light-homepage .text-submission-card .text-submission-badge {
    color: #7c3aed !important;
}

body.light-homepage .text-submission-card .text-submission-preview {
    color: #334155 !important;
}

/* Desktop link-room feed cards showing text content */
body.light-homepage .preview-card.text-content-card .text-preview-clamp {
    color: #334155 !important;
}

body.light-homepage .text-expand-toggle {
    color: #2563eb !important;
}

body.light-homepage .text-expand-toggle:hover {
    color: #1d4ed8 !important;
}

/* ── Text detection chunk-review split-modal - light UI colours ─────── */
body.light-homepage .tv-split-preview-panel,
body.light-homepage .tv-split-preview-panel * {
    color: #1e293b !important;
}

body.light-homepage .tv-split-preview-label {
    color: #2563eb !important;
}

body.light-homepage .tv-split-preview-content {
    color: #334155 !important;
}

body.light-homepage .tv-split-preview-empty {
    color: #94a3b8 !important;
}

body.light-homepage .tv-modal-timer-label {
    color: #64748b !important;
}

body.light-homepage .tv-modal-timer {
    color: #1e293b !important;
}

body.light-homepage .tv-split-form-panel,
body.light-homepage .tv-split-form-panel *:not(textarea):not(input):not(select) {
    color: #1e293b !important;
}

body.light-homepage .tv-split-form-panel textarea,
body.light-homepage .cr-reason-input {
    color: #1e293b !important;
    background: #f1f5f9 !important;
}

body.light-homepage .cr-chunk-text {
    color: #334155 !important;
}

body.light-homepage .cr-flags-label {
    color: #64748b !important;
}

body.light-homepage .cr-flag-chip.ai {
    color: #f87171 !important;
}

body.light-homepage .cr-flag-chip.human {
    color: #16a34a !important;
}

body.light-homepage .cr-reason-label {
    color: #475569 !important;
}

body.light-homepage .cr-reason-count {
    color: #94a3b8 !important;
}

body.light-homepage .tv-modal-timer.tv-timer-warning {
    color: #fbbf24 !important;
}

body.light-homepage .tv-modal-timer.tv-timer-expired {
    color: #f87171 !important;
}

/* ── T001: Base .modal / .modal-content + Leaderboard modal ─────────── */
body.light-homepage .modal {
    background: rgba(30, 41, 59, 0.5) !important;
}

body.light-homepage .modal-content {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .modal-content * {
    color: #1e293b !important;
}

body.light-homepage .modal-content h3 {
    color: #2563eb !important;
}

body.light-homepage .modal-content textarea {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .modal-content textarea:focus {
    border-color: #2563eb !important;
}

body.light-homepage .modal-content textarea::placeholder {
    color: #94a3b8 !important;
}

body.light-homepage .modal-close {
    color: #64748b !important;
    background: transparent !important;
}

body.light-homepage .modal-close:hover {
    background: #f1f5f9 !important;
    color: #1e293b !important;
}

body.light-homepage .modal-header {
    border-bottom-color: #e2e8f0 !important;
}

body.light-homepage .modal-header h2 {
    color: #1e293b !important;
}

body.light-homepage .full-leaderboard-item {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
}

body.light-homepage .full-leaderboard-item:hover {
    background: #e2e8f0 !important;
}

body.light-homepage .full-leaderboard-item.current-user {
    background: rgba(37, 99, 235, 0.08) !important;
    border-color: rgba(37, 99, 235, 0.25) !important;
}

body.light-homepage .full-user-name {
    color: #1e293b !important;
}

body.light-homepage .full-user-stats {
    color: #64748b !important;
}

body.light-homepage .full-points {
    color: #2563eb !important;
}

body.light-homepage .full-rank {
    color: #8b5cf6 !important;
}

body.light-homepage .leaderboard-info {
    background: rgba(37, 99, 235, 0.06) !important;
    border-color: rgba(37, 99, 235, 0.15) !important;
}

body.light-homepage .leaderboard-info p {
    color: #475569 !important;
}

/* ── T002: .modal-overlay + Referral modal internals ────────────────── */
body.light-homepage .modal-overlay .modal-content {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
}

body.light-homepage .modal-overlay .modal-content * {
    color: #1e293b !important;
}

body.light-homepage .modal-overlay .modal-header {
    border-bottom-color: #e2e8f0 !important;
}

body.light-homepage .modal-overlay .modal-header h2 {
    color: #1e293b !important;
}

body.light-homepage .close-btn {
    color: #64748b !important;
}

body.light-homepage .close-btn:hover {
    background: #f1f5f9 !important;
    color: #1e293b !important;
}

body.light-homepage .referral-description {
    color: #475569 !important;
}

body.light-homepage .reward-item {
    background: #f1f5f9 !important;
    border-left-color: #2563eb !important;
}

body.light-homepage .reward-item.highlight {
    background: rgba(37, 99, 235, 0.06) !important;
    border-left-color: #2563eb !important;
}

body.light-homepage .reward-text {
    color: #1e293b !important;
}

body.light-homepage .referral-link-section label {
    color: #475569 !important;
}

body.light-homepage .link-input-group input {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
    color: #1e293b !important;
}

body.light-homepage .link-input-group button {
    background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
    color: #ffffff !important;
}

body.light-homepage .share-section h3 {
    color: #1e293b !important;
}

/* ── T003: #inAppBrowserModal inline-style overrides ────────────────── */
body.light-homepage #inAppBrowserModal .modal-content {
    background: #ffffff !important;
    color: #1e293b !important;
}

body.light-homepage #inAppBrowserModal h2 {
    color: #1e293b !important;
}

body.light-homepage #inAppBrowserModal p {
    color: #64748b !important;
}

body.light-homepage #inAppBrowserModal #inAppBrowserInstructions {
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
}

body.light-homepage #inAppBrowserModal #inAppBrowserInstructions strong {
    color: #059669 !important;
}

body.light-homepage #inAppBrowserModal #inAppBrowserInstructions span {
    color: #1e293b !important;
}

body.light-homepage #inAppBrowserModal .btn-secondary {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
    color: #475569 !important;
}

/* ── T004: Tutorial modal (.tutorial-modal / .tutorial-content) ─────── */
body.light-homepage .tutorial-modal {
    background: rgba(30, 41, 59, 0.6) !important;
}

body.light-homepage .tutorial-content {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
}

body.light-homepage .tutorial-content * {
    color: #1e293b !important;
}

body.light-homepage .tutorial-header {
    border-bottom-color: #e2e8f0 !important;
}

body.light-homepage .tutorial-header h2 {
    color: #2563eb !important;
}

body.light-homepage .tutorial-close {
    color: #64748b !important;
}

body.light-homepage .tutorial-close:hover {
    color: #1e293b !important;
}

body.light-homepage .tutorial-step-content h3 {
    color: #2563eb !important;
}

body.light-homepage .tutorial-step-content p,
body.light-homepage .tutorial-step-content ul,
body.light-homepage .tutorial-step-content li {
    color: #475569 !important;
}

body.light-homepage .tutorial-btn.primary {
    background: #2563eb !important;
    color: #ffffff !important;
}

body.light-homepage .tutorial-btn.primary:hover:not(:disabled) {
    box-shadow: 0 8px 25px rgba(139, 92, 246, 0.35) !important;
}

body.light-homepage .tutorial-btn.secondary {
    background: #f1f5f9 !important;
    color: #1e293b !important;
    border: 1px solid #e2e8f0 !important;
}

body.light-homepage .tutorial-btn.secondary:hover:not(:disabled) {
    background: #e2e8f0 !important;
}

body.light-homepage .step-indicator {
    color: #94a3b8 !important;
}

body.light-homepage .tutorial-link-text a {
    color: #2563eb !important;
    font-size: 0.8rem !important;
}

body.light-homepage .tutorial-note {
    color: #8b5cf6 !important;
    background: rgba(139, 92, 246, 0.05) !important;
    border-left-color: #8b5cf6 !important;
}


/* ── Tutorial popup - white card with blue accent border ─────────────── */
body.light-homepage .tutorial-popup-content {
    background: #ffffff !important;
    border: 2px solid #2563eb !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important;
}

body.light-homepage .tutorial-popup-content * {
    color: #1e293b !important;
}

body.light-homepage .tutorial-popup-content h3 {
    color: #1e293b !important;
}

body.light-homepage .tutorial-popup-content p {
    color: #64748b !important;
}

body.light-homepage .tutorial-popup-close {
    color: #64748b !important;
}

body.light-homepage .tutorial-popup-close:hover {
    color: #1e293b !important;
}

body.light-homepage .tutorial-popup-btn.primary {
    background: #2563eb !important;
    color: #ffffff !important;
    border: none !important;
}

body.light-homepage .tutorial-popup-btn.primary:hover {
    background: #1d4ed8 !important;
}

body.light-homepage .tutorial-popup-btn.secondary {
    background: #f1f5f9 !important;
    color: #1e293b !important;
    border: 1px solid #e2e8f0 !important;
}

body.light-homepage .tutorial-popup-btn.secondary:hover {
    background: #e2e8f0 !important;
    color: #1e293b !important;
}

/* ── quality-tips-section - warm light yellow tip card ──────────────── */
body.light-homepage .quality-tips-section {
    background: #fefce8 !important;
    border-color: #fde68a !important;
}

body.light-homepage .quality-tips-section * {
    color: #1e293b !important;
}

body.light-homepage .quality-tips-section strong[style*="3b82f6"],
body.light-homepage .quality-tips-section [style*="3b82f6"] {
    color: #2563eb !important;
}

body.light-homepage .quality-tips-section span[style*="22c55e"],
body.light-homepage .quality-tips-section [style*="22c55e"] {
    color: #16a34a !important;
}

/* ── Mic buttons - red ───────────────────────────────────────────────── */
body.light-homepage .mic-btn {
    background: transparent !important;
    color: #94a3b8 !important;
    box-shadow: none !important;
}

body.light-homepage .mic-btn:hover {
    background: rgba(148, 163, 184, 0.1) !important;
    box-shadow: none !important;
}

body.light-homepage .mic-btn.mic-listening {
    background: rgba(239, 68, 68, 0.1) !important;
    color: #ef4444 !important;
    box-shadow: none !important;
}

body.light-homepage .mic-btn .mic-icon,
body.light-homepage .mic-btn.mic-listening .mic-icon {
    color: currentColor !important;
}

/* ── Submit Vote / Continue Submission button - white text ───────────── */
body.light-homepage #submitJustificationBtn {
    color: #ffffff !important;
}

/* ── Cancel buttons - white text on slate ───────────────────────────── */
body.light-homepage #cancelJustificationBtn {
    background: #374151  !important;
    border-color: 1px solid #d1d5db !important;
    color: #ffffff !important;
}

body.light-homepage #cancelJustificationBtn:hover {
    background: #111827 !important;
    border-color: 1px solid #111827 !important;
    color: #ffffff !important;
}

body.light-homepage .tv-cancel-btn {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

body.light-homepage .tv-cancel-btn:hover {
    background: #1d4ed8 !important;
    color: #ffffff !important;
}

body.light-homepage .cr-confirm-cancel {
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

body.light-homepage #cancelJustificationBtn:hover,
body.light-homepage .tv-cancel-btn:hover,
body.light-homepage .cr-confirm-cancel:hover {
    background: #e2e8f0 !important;
    border-color: #cbd5e1 !important;
    color: #1e293b !important;
}

/* ── Guest referral timer popup - light theme ────────────────────────── */
body.light-homepage .guest-referral-overlay {
    background: rgba(30, 41, 59, 0.5) !important;
}

body.light-homepage .guest-referral-modal {
    background: #ffffff !important;
    border-color: #bfdbfe !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.12) !important;
}

body.light-homepage .guest-referral-modal * {
    color: #1e293b !important;
}

body.light-homepage .guest-referral-modal h2 {
    color: #0f172a !important;
}

body.light-homepage .guest-referral-modal p {
    color: #475569 !important;
}

body.light-homepage .guest-referral-modal div[style*="rgba(59, 130, 246"] {
    background: #eff6ff !important;
    border-color: #2563eb !important;
}

body.light-homepage .guest-referral-modal div[style*="60a5fa"] {
    color: #2563eb !important;
}

body.light-homepage .guest-referral-modal div[style*="e5e7eb"] {
    color: #64748b !important;
}

body.light-homepage #signInNowBtn {
    background: linear-gradient(135deg, #059669, #10b981) !important;
    color: #ffffff !important;
}

body.light-homepage #dismissTimerBtn {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
    color: #475569 !important;
}

body.light-homepage .guest-referral-modal div[style*="9ca3af"] {
    color: #94a3b8 !important;
}

body.light-homepage .guest-referral-modal a[style*="667eea"] {
    color: #2563eb !important;
}

/* ── "Your Submission" disabled vote button - grey ─── */
body.light-homepage .vote-btn[style*="#6b7280"] {
    background: #e5e7eb !important;
    border: 1px solid #d1d5db !important;
    color: #9ca3af !important;
    opacity: 1 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
