/*
 * FamePadi Public Contrast Repair v2.8.3
 * Purpose: restore readable text on LIGHT public surfaces while preserving
 * FamePadi's dark navy page background and intentionally dark sections.
 */

/* The dark-theme file currently forces .content-section to #f7f8ff.
   Stop that container-level inheritance from bleaching text inside light cards. */
body .content-section{
    color:inherit!important;
}

/* --- Voting / contest result light surfaces --- */
body .vx-vote-shell .vx-stat,
body .vx-vote-shell .vx-podium-card,
body .vx-vote-shell .vx-leaderboard-panel,
body .vx-vote-shell .vx-leader-row,
body .vx-vote-shell .vx-leaderboard-head{
    color:#111827!important;
}

body .vx-vote-shell .vx-stat h1,
body .vx-vote-shell .vx-stat h2,
body .vx-vote-shell .vx-stat h3,
body .vx-vote-shell .vx-stat h4,
body .vx-vote-shell .vx-stat h5,
body .vx-vote-shell .vx-stat h6,
body .vx-vote-shell .vx-stat strong,
body .vx-vote-shell .vx-podium-card h1,
body .vx-vote-shell .vx-podium-card h2,
body .vx-vote-shell .vx-podium-card h3,
body .vx-vote-shell .vx-podium-card h4,
body .vx-vote-shell .vx-podium-card strong,
body .vx-vote-shell .vx-leaderboard-panel h1,
body .vx-vote-shell .vx-leaderboard-panel h2,
body .vx-vote-shell .vx-leaderboard-panel h3,
body .vx-vote-shell .vx-leaderboard-panel h4,
body .vx-vote-shell .vx-leaderboard-panel strong,
body .vx-vote-shell .vx-leader-row strong{
    color:#111827!important;
}

body .vx-vote-shell .vx-stat small,
body .vx-vote-shell .vx-podium-card small,
body .vx-vote-shell .vx-leaderboard-panel small,
body .vx-vote-shell .vx-leader-row small,
body .vx-vote-shell .vx-leaderboard-panel p,
body .vx-vote-shell .vx-leader-row p{
    color:#667085!important;
}

/* Preserve the intentionally dark hero/countdown area. */
body .vx-vote-shell .vx-vote-hero,
body .vx-vote-shell .vx-vote-hero h1,
body .vx-vote-shell .vx-vote-hero h2,
body .vx-vote-shell .vx-vote-hero h3,
body .vx-vote-shell .vx-vote-hero h4,
body .vx-vote-shell .vx-vote-hero strong{
    color:#fff!important;
}
body .vx-vote-shell .vx-vote-hero p,
body .vx-vote-shell .vx-vote-hero small{
    color:rgba(255,255,255,.72)!important;
}

/* --- Public contest / contestant cards that remain white on dark pages --- */
body .content-section .card:not(.bg-dark):not(.text-bg-dark),
body .content-section .bg-white,
body .content-section .bg-light{
    color:#111827!important;
}
body .content-section .card:not(.bg-dark):not(.text-bg-dark) h1,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) h2,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) h3,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) h4,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) h5,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) h6,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) strong,
body .content-section .bg-white h1,
body .content-section .bg-white h2,
body .content-section .bg-white h3,
body .content-section .bg-white h4,
body .content-section .bg-white strong,
body .content-section .bg-light h1,
body .content-section .bg-light h2,
body .content-section .bg-light h3,
body .content-section .bg-light h4,
body .content-section .bg-light strong{
    color:#111827!important;
}
body .content-section .card:not(.bg-dark):not(.text-bg-dark) p,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) small,
body .content-section .card:not(.bg-dark):not(.text-bg-dark) .text-muted,
body .content-section .bg-white p,
body .content-section .bg-white small,
body .content-section .bg-light p,
body .content-section .bg-light small{
    color:#667085!important;
}

/* --- Events / tickets public cards --- */
body .vx-event-card,
body .vx-event-card h1,
body .vx-event-card h2,
body .vx-event-card h3,
body .vx-event-card h4,
body .vx-event-card strong,
body .vx-discover-search{
    color:#111827!important;
}
body .vx-event-card p,
body .vx-event-card small,
body .vx-event-card .vx-meta{
    color:#667085!important;
}

/* --- Public live / PPV / ticketing surfaces --- */
body .fpl-card,
body .fpl-panel,
body .fpl-feature,
body .fpl-stat,
body .fpl-gate-card,
body .fpl-checkout-card,
body .fpl-access-box,
body .fpl-success-card,
body .fpl-finale-section,
body .fpl-chat-head,
body .fpl-chat-messages{
    color:#111827!important;
}
body .fpl-card h1,
body .fpl-card h2,
body .fpl-card h3,
body .fpl-panel h1,
body .fpl-panel h2,
body .fpl-panel h3,
body .fpl-feature h1,
body .fpl-feature h2,
body .fpl-feature h3,
body .fpl-stat strong,
body .fpl-gate-card h1,
body .fpl-gate-card h2,
body .fpl-gate-card h3,
body .fpl-checkout-card h1,
body .fpl-checkout-card h2,
body .fpl-checkout-card h3,
body .fpl-access-box h1,
body .fpl-success-card h1,
body .fpl-finale-section h1,
body .fpl-finale-section h2,
body .fpl-finale-section h3{
    color:#111827!important;
}
body .fpl-card p,
body .fpl-card small,
body .fpl-panel p,
body .fpl-panel small,
body .fpl-feature p,
body .fpl-feature small,
body .fpl-stat small,
body .fpl-checkout-card p,
body .fpl-access-box p,
body .fpl-success-card p,
body .fpl-finale-section p{
    color:#667085!important;
}

/* Keep intentionally dark public surfaces white. */
body .fpl-hero,
body .fpl-player,
body .fpl-theatre,
body .fpl-gate-visual,
body .fpl-code-card,
body .vxg-price-dark{
    color:#fff!important;
}
body .fpl-hero h1,
body .fpl-hero h2,
body .fpl-hero h3,
body .fpl-player h1,
body .fpl-player h2,
body .fpl-player h3,
body .fpl-theatre h1,
body .fpl-theatre h2,
body .fpl-theatre h3,
body .fpl-gate-visual h1,
body .fpl-gate-visual h2,
body .fpl-gate-visual h3,
body .fpl-code-card h1,
body .fpl-code-card h2,
body .fpl-code-card h3{
    color:#fff!important;
}

/* --- Growth/pricing light cards --- */
body .vxg-filter-row,
body .vxg-price-card:not(.vxg-price-dark){
    color:#111827!important;
}
body .vxg-price-card:not(.vxg-price-dark) h1,
body .vxg-price-card:not(.vxg-price-dark) h2,
body .vxg-price-card:not(.vxg-price-dark) h3,
body .vxg-price-card:not(.vxg-price-dark) h4,
body .vxg-price-card:not(.vxg-price-dark) strong{
    color:#111827!important;
}
body .vxg-price-card:not(.vxg-price-dark) p,
body .vxg-price-card:not(.vxg-price-dark) small,
body .vxg-price-card:not(.vxg-price-dark) li{
    color:#667085!important;
}

/* Buttons/badges keep their intentional component colors. */
body .vx-vote-btn,
body .vx2-nav-cta,
body .btn-primary,
body .btn-success,
body .btn-danger,
body .fpl-btn-dark{
    color:#fff!important;
}
body .vx-vote-btn{
    color:#10150e!important;
}

/* Never affect FamePadi Community/Messages/Admin surfaces. */
body .tc-shell .card,
body .fp362-shell .card,
body .fp412-message-workspace .card,
body .fp460-shell .card{
    color:inherit!important;
}