/* ===========================================================================
   SISTEMA VISUAL GLOBAL
   Este arquivo é carregado pelo cabecalho.php depois das folhas de cada tela.
   Ele não cria um segundo tema: apenas torna os tokens da loja consistentes.
   =========================================================================== */

html,
body {
    font-family: var(--font-global, "Poppins", "Segoe UI Variable", "Segoe UI", Roboto, Helvetica, Arial, sans-serif) !important;
}

body :is(button, input, select, textarea) {
    font-family: inherit !important;
}

html body:not(.dark-mode) {
    color: var(--theme-ink, #17213D) !important;
    background-color: var(--theme-surface, #FAFBFC) !important;
}

html body.dark-mode {
    color: #EEF3F8 !important;
    background-color: #101820 !important;
}

/* Componentes Bootstrap usam a mesma tipografia e a cor principal salva
   para a loja, em vez do azul padrão do framework. */
html[data-theme-preset] .text-primary {
    color: var(--brand-primary) !important;
}

html[data-theme-preset] :is(.btn-primary, .btn-custom, .btn-payment, .btn-acessar-curso, .btn-acessar, .btn-plan, .btn-gradient-premium) {
    background-color: var(--brand-primary) !important;
    border-color: var(--brand-primary) !important;
    color: var(--brand-on-primary, #FFFFFF) !important;
    box-shadow: none !important;
    background-image: none !important;
}

html[data-theme-preset] :is(.btn-primary, .btn-custom, .btn-payment, .btn-acessar-curso, .btn-acessar, .btn-plan, .btn-gradient-premium):hover {
    background-color: color-mix(in srgb, var(--brand-primary) 86%, #000000) !important;
    border-color: color-mix(in srgb, var(--brand-primary) 86%, #000000) !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

html[data-theme-preset] :is(.btn-outline-primary, .page-link) {
    color: var(--brand-primary) !important;
    border-color: color-mix(in srgb, var(--brand-primary) 42%, #D6DEE8) !important;
    box-shadow: none !important;
}

html[data-theme-preset] :is(.btn-outline-primary, .page-link):hover,
html[data-theme-preset] .page-item.active .page-link {
    background-color: var(--brand-primary) !important;
    border-color: var(--brand-primary) !important;
    color: #FFFFFF !important;
}

/* Superfícies compartilhadas entre catálogo, cadernos, administração e
   pagamentos. As páginas continuam livres para ter conteúdo próprio. */
html[data-theme-preset] :is(
    .card,
    .curso-card,
    .caderno-card,
    .cadernos-hero,
    .cadernos-column,
    .payment-card,
    .admin-container,
    .card-cadastro,
    .info-card,
    .materia-bloco,
    .arquivo-pdf-bloco,
    .questao-box,
    .filter-box,
    .plan-card-white
) {
    border-color: var(--ui-border-light, #E2E8F0) !important;
    box-shadow: none !important;
    background-image: none !important;
}

html[data-theme-preset] :is(.curso-card:hover, .caderno-card:hover, .payment-card:hover, .admin-container:hover, .card-cadastro:hover) {
    box-shadow: none !important;
    transform: none !important;
}

/* Páginas que nasceram com paletas próprias agora usam os mesmos tokens da
   loja. Isso também atende lojas que usam cores manuais, sem um preset. */
html[data-theme-preset] .pagamentos-main {
    background-color: var(--theme-surface, #FAFBFC) !important;
    background-image: none !important;
}

html[data-theme-preset] .pagamentos-hero {
    background-color: var(--theme-ink, #17213D) !important;
    background-image: none !important;
    border-color: var(--theme-ink, #17213D) !important;
    box-shadow: none !important;
}

html[data-theme-preset] .payment-card {
    background-color: var(--theme-card, #FFFFFF) !important;
    border-color: var(--ui-border-light, #E2E8F0) !important;
}

html[data-theme-preset] .banner-apostilas {
    background-color: var(--theme-ink, #17213D) !important;
    background-image: none !important;
    box-shadow: none !important;
}

html[data-theme-preset] .banner-apostilas :is(h1, h2, h3, p),
html[data-theme-preset] .pagamentos-hero :is(h1, h2, h3, p) {
    color: #FFFFFF !important;
}

/* ===========================================================================
   SOL DA APROVAÇÃO — a interface fica neutra; laranja e amarelo aparecem
   apenas como acentos e chamadas de ação.
   =========================================================================== */
html[data-theme-preset="sol_aprovacao"] {
    --theme-ink: #10213F;
    --theme-surface: #FBFAF8;
    --theme-muted: #64748B;
    --theme-card: #FFFFFF;
    --theme-border: #E5E7EB;
}

html[data-theme-preset="sol_aprovacao"] body:not(.dark-mode) {
    color: #10213F !important;
    background-color: #FBFAF8 !important;
}

html[data-theme-preset="sol_aprovacao"] body.index-page:not(.dark-mode) {
    background-color: #FBFCFE !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.bg-light, .pagamentos-main) {
    background-color: #FBFAF8 !important;
    background-image: none !important;
}

html[data-theme-preset="sol_aprovacao"] :is(
    .card,
    .curso-card,
    .caderno-card,
    .cadernos-hero,
    .cadernos-column,
    .payment-card,
    .admin-container,
    .card-cadastro,
    .info-card,
    .materia-bloco,
    .arquivo-pdf-bloco,
    .questao-box,
    .filter-box,
    .plan-card-white
) {
    background-color: #FFFFFF !important;
    border: 1px solid #E5E7EB !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.text-dark, .settings-section-title, .curso-titulo, .payment-card h2, .form-label, .mapping-label) {
    color: #10213F !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.text-muted, .apostila-muted, .webhook-url, .form-text) {
    color: #64748B !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.form-control, .form-select, .form-control-custom) {
    color: #10213F !important;
    background-color: #FFFFFF !important;
    border-color: #D9DEE7 !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.form-control, .form-select, .form-control-custom):focus {
    border-color: #FA6E1D !important;
    box-shadow: 0 0 0 2px rgba(250, 110, 29, .12) !important;
}

/* Blocos que ainda tinham azul ou gradiente próprio. */
html[data-theme-preset="sol_aprovacao"] :is(.pagamentos-hero, .banner-apostilas, .ranking-header, .modal-pdf-header) {
    background-color: #10213F !important;
    background-image: none !important;
    border: 1px solid #10213F !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.pagamentos-hero, .banner-apostilas) :is(h1, h2, h3, p) {
    color: #FFFFFF !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.capa-placeholder, .curso-capa:not([style])) {
    background-color: #FFF7E2 !important;
    background-image: none !important;
    color: #FA6E1D !important;
}

html[data-theme-preset="sol_aprovacao"] .admin-nav-tabs .nav-link.active,
html[data-theme-preset="sol_aprovacao"] .admin-nav-tabs .nav-link:hover {
    color: #FA6E1D !important;
    border-bottom-color: #FA6E1D !important;
}

html[data-theme-preset="sol_aprovacao"] .step-number {
    color: #FA6E1D !important;
    background-color: #FFF1E4 !important;
}

/* Barra lateral: regras explícitas, inclusive para páginas legadas que não
   carregavam style.css e por isso exibiam texto branco ou desbotado. */
html[data-theme-preset="sol_aprovacao"] :is(.sidebar-custom, #sidebarCustom) {
    background-color: #F7F5F2 !important;
    background-image: none !important;
    color: #10213F !important;
    box-shadow: none !important;
    opacity: 1 !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.mobile-topbar, .sidebar-brand-area) {
    background-color: #10213F !important;
    background-image: none !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-link {
    color: rgba(16, 33, 63, .78) !important;
    border-left-width: 1px !important;
    background-image: none !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-link i {
    color: #FA6E1D !important;
}

html[data-theme-preset="sol_aprovacao"] :is(.sidebar-link:hover, .sidebar-link.active) {
    color: #10213F !important;
    background-color: #FCEDE2 !important;
    border-left-color: #FA6E1D !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-link.mt-4,
html[data-theme-preset="sol_aprovacao"] .sidebar-link.mt-4:hover {
    color: #10213F !important;
    background-color: #FCEDE2 !important;
    border-color: transparent !important;
    opacity: 1 !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-link.mt-4 :is(i, span, .text-white),
html[data-theme-preset="sol_aprovacao"] .sidebar-footer :is(.theme-label, .sidebar-user-name, .sidebar-btn-outline) {
    color: #10213F !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-footer {
    border-top-color: rgba(16, 33, 63, .10) !important;
    color: #10213F !important;
    opacity: 1 !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-user-status {
    color: rgba(16, 33, 63, .68) !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-btn-outline {
    color: #10213F !important;
    border-color: rgba(16, 33, 63, .24) !important;
    background: transparent !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] .sidebar-btn-outline:hover {
    background-color: #FFF1E4 !important;
}

/* Contraste consistente no modo escuro, sem azul/neon herdado das telas
   antigas de Apostilas, Cadernos e Painel. */
html[data-theme-preset="sol_aprovacao"] body.dark-mode {
    color: #EEF3F8 !important;
    background-color: #101820 !important;
}

html[data-theme-preset="sol_aprovacao"] body.dark-mode :is(
    .card,
    .curso-card,
    .caderno-card,
    .cadernos-hero,
    .cadernos-column,
    .payment-card,
    .admin-container,
    .card-cadastro,
    .info-card,
    .materia-bloco,
    .arquivo-pdf-bloco,
    .questao-box,
    .filter-box,
    .plan-card-white
) {
    background-color: #182230 !important;
    border-color: #344454 !important;
    box-shadow: none !important;
}

html[data-theme-preset="sol_aprovacao"] body.dark-mode :is(.sidebar-custom, #sidebarCustom) {
    background-color: #1C2834 !important;
}

html[data-theme-preset="sol_aprovacao"] body.dark-mode :is(.sidebar-link, .sidebar-footer .theme-label, .sidebar-footer .sidebar-user-name, .sidebar-footer .sidebar-btn-outline) {
    color: rgba(255, 255, 255, .84) !important;
}

html[data-theme-preset="sol_aprovacao"] body.dark-mode :is(.sidebar-link:hover, .sidebar-link.active, .sidebar-link.mt-4, .sidebar-link.mt-4:hover) {
    color: #FFFFFF !important;
    background-color: rgba(250, 110, 29, .18) !important;
}

html[data-theme-preset="sol_aprovacao"] body.dark-mode .sidebar-link.mt-4 :is(i, span, .text-white) {
    color: #FFFFFF !important;
}

html[data-theme-preset="sol_aprovacao"] body.dark-mode .sidebar-user-status {
    color: rgba(255, 255, 255, .64) !important;
}

/* Marca compacta: a logo completa fica no menu aberto e o ícone do mentor
   aparece somente no estado recolhido do menu desktop. Esta camada final
   também evita que regras antigas de páginas escondam o link inteiro. */
.sidebar-logo-compact {
    display: none;
    width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
}

.sidebar-logo-icon,
.sidebar-logo-fallback {
    width: 32px;
    height: 32px;
    max-width: 32px;
    max-height: 32px;
    object-fit: contain;
}

@media (min-width: 992px) {
    .sidebar-custom.collapsed .sidebar-logo-link {
        display: inline-flex !important;
    }

    .sidebar-custom.collapsed .sidebar-logo-full {
        display: none !important;
    }

    .sidebar-custom.collapsed .sidebar-logo-compact {
        display: flex !important;
    }
}

/* Paletas dos temas centralizadas para também aparecerem em páginas sem menu. */
:root[data-theme-preset="paes_aprovacao"] {
    --brand-primary: #0B28D8; --brand-secondary: #F2493D;
    --theme-ink: #101A3B; --theme-surface: #FFFDF5;
    --theme-gold: #E9AC08; --theme-lime: #C8ED64;
    --ui-border-light: #DCE3F7; --ui-border-dark: #304472;
}
:root[data-theme-preset="sol_aprovacao"] {
    --brand-primary: #FA6E1D; --brand-secondary: #FFBC00;
    --theme-accent: #FA6E1D; --theme-ink: #10213F; --theme-surface: #FBFAF8;
}
:root[data-theme-preset="calcario_nogueira"] {
    --brand-primary: #26302D; --brand-secondary: #60736A; --theme-accent: #86583A;
    --theme-ink: #1C2421; --theme-surface: #F7F6F2;
}
:root[data-theme-preset="editorial_grafite"] {
    --brand-primary: #171717; --brand-secondary: #4B5053; --theme-accent: #745F43;
    --theme-ink: #171717; --theme-surface: #FAFAF9;
}
:root[data-theme-preset="bruma_saas"] {
    --brand-primary: #234F70; --brand-secondary: #4D768A; --theme-accent: #2F6F69;
    --theme-ink: #182A35; --theme-surface: #F2F7F9;
}
:root[data-theme-preset="grafite_financeiro"] {
    --brand-primary: #252B2E; --brand-secondary: #527989; --theme-accent: #C7E600;
    --theme-ink: #172125; --theme-surface: #F3F6F7;
}
:root[data-theme-preset="bosque_estrutural"] {
    --brand-primary: #34423C; --brand-secondary: #5D715F; --theme-accent: #7C6A4D;
    --theme-ink: #202722; --theme-surface: #F5F5F0;
}

/* ===========================================================================
   CAMADA EDITORIAL COMPARTILHADA
   Tokens de cor e medidas preservam o tema da loja em páginas antigas e novas.
   =========================================================================== */
:root {
    --ui-page-bg: var(--theme-surface, #F7F6F2);
    --ui-card-bg: #FFFFFF;
    --ui-ink: var(--theme-ink, #17213D);
    --ui-muted: var(--theme-muted, #687681);
    --ui-radius: max(12px, min(22px, var(--border-radius-global, 16px)));
    --ui-radius-sm: max(9px, calc(var(--ui-radius) * .72));
    --ui-border: color-mix(in srgb, var(--ui-ink) 12%, transparent);
    --ui-shadow: 0 10px 30px rgba(16, 33, 63, .045);
    --ui-shadow-hover: 0 14px 34px rgba(16, 33, 63, .075);
}

:root[data-theme-preset="paes_aprovacao"] { --brand-on-primary: #FFFFFF; }
:root[data-theme-preset="sol_aprovacao"] { --brand-on-primary: #10213F; }
:root[data-theme-preset="calcario_nogueira"],
:root[data-theme-preset="editorial_grafite"],
:root[data-theme-preset="bruma_saas"],
:root[data-theme-preset="grafite_financeiro"],
:root[data-theme-preset="bosque_estrutural"] { --brand-on-primary: #FFFFFF; }

html[data-theme-preset] body:not(.dark-mode) {
    color: var(--ui-ink) !important;
    background-color: var(--ui-page-bg) !important;
    background-image: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html[data-theme-preset] body.dark-mode {
    --ui-page-bg: #101820;
    --ui-card-bg: #182230;
    --ui-ink: #EEF3F8;
    --ui-muted: #B4C0CD;
    --ui-border: rgba(222, 232, 241, .14);
    --ui-shadow: 0 12px 32px rgba(0, 0, 0, .20);
    --ui-shadow-hover: 0 16px 38px rgba(0, 0, 0, .28);
    color: var(--ui-ink) !important;
    background-color: var(--ui-page-bg) !important;
    background-image: none;
}

html[data-theme-preset] :is(h1, h2, h3, h4, h5, h6, .section-title, .page-header-title, .page-title) {
    color: var(--ui-ink);
    letter-spacing: -.025em;
}

html[data-theme-preset] :is(.page-header-title, .page-title, .pricing-header h2) {
    font-weight: 750;
    line-height: 1.12;
}

html[data-theme-preset] :is(.text-muted, .form-text, .muted, .small-muted) {
    color: var(--ui-muted) !important;
}

html[data-theme-preset] :is(.card, .info-card, .payment-card, .admin-container, .card-cadastro,
    .caderno-card, .cadernos-hero, .cadernos-column, .plan-card-white, .materia-bloco,
    .arquivo-pdf-bloco, .questao-box, .filter-box, .feature-box, .card-inicio,
    .home-ranking-card, .course-detail-card) {
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    background-color: var(--ui-card-bg) !important;
    box-shadow: var(--ui-shadow) !important;
}

html[data-theme-preset] body.dark-mode :is(.card, .info-card, .payment-card, .admin-container,
    .card-cadastro, .caderno-card, .cadernos-hero, .cadernos-column, .plan-card-white,
    .materia-bloco, .arquivo-pdf-bloco, .questao-box, .filter-box, .feature-box,
    .card-inicio, .home-ranking-card, .course-detail-card) {
    background-color: var(--ui-card-bg) !important;
    border-color: var(--ui-border) !important;
}

html[data-theme-preset] :is(.btn, .button, .btn-plan, button:not(.btn-close):not(.theme-toggle-btn)) {
    border-radius: var(--ui-radius-sm);
    font-weight: 650;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

html[data-theme-preset] :is(.btn-primary, .btn-custom, .btn-payment, .btn-acessar-curso,
    .btn-acessar, .btn-plan, .btn-gradient-premium, .button:not(.secondary):not(.danger)) {
    color: var(--brand-on-primary, #FFFFFF) !important;
}

html[data-theme-preset] :is(.btn-outline-primary, .btn-link, .page-link) {
    color: var(--brand-primary) !important;
}

html[data-theme-preset] :is(.form-control, .form-select, .form-control-custom, input, select, textarea) {
    border-color: var(--ui-border);
    border-radius: var(--ui-radius-sm);
    color: var(--ui-ink);
}

html[data-theme-preset] :is(.form-control, .form-select, .form-control-custom, input, select, textarea):focus {
    border-color: var(--brand-primary) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand-primary) 17%, transparent) !important;
}

html[data-theme-preset] hr,
html[data-theme-preset] :is(.border-top, .border-bottom) {
    border-color: var(--ui-border) !important;
}

html[data-theme-preset] :is(table, .table) {
    --bs-table-color: var(--ui-ink);
    --bs-table-border-color: var(--ui-border);
}

html[data-theme-preset] .table > :not(caption) > * > * {
    color: var(--ui-ink);
    border-bottom-color: var(--ui-border);
}

html[data-theme-preset] :is(.curso-card:hover, .caderno-card:hover, .payment-card:hover,
    .feature-box:hover, .card-inicio:hover, .home-ranking-card:hover) {
    border-color: color-mix(in srgb, var(--brand-primary) 35%, var(--ui-border)) !important;
    box-shadow: var(--ui-shadow-hover) !important;
}

/* A tela antiga de planos passa a compartilhar o mesmo acabamento do catálogo. */
html[data-theme-preset] .pricing-section {
    background: transparent !important;
    box-shadow: none !important;
}

html[data-theme-preset] .features-bar {
    border-top: 1px solid var(--ui-border) !important;
    border-bottom: 1px solid var(--ui-border) !important;
    background: var(--ui-page-bg) !important;
    color: var(--ui-ink) !important;
}

html[data-theme-preset] .features-bar .feature-icon {
    color: var(--brand-primary) !important;
}

html[data-theme-preset] .countdown-bar {
    background: var(--brand-primary) !important;
    border-color: color-mix(in srgb, var(--brand-on-primary) 22%, transparent) !important;
    color: var(--brand-on-primary, #FFFFFF) !important;
}

html[data-theme-preset] .countdown-bar :is(.countdown-number, .countdown-label, .separator, span) {
    color: var(--brand-on-primary, #FFFFFF) !important;
}

html[data-theme-preset] .pricing-hero-card {
    border: 1px solid color-mix(in srgb, var(--brand-primary) 35%, var(--ui-border)) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

html[data-theme-preset] .pricing-hero-card :is(h1, h2, h3, h4) {
    color: var(--ui-ink) !important;
    text-shadow: none !important;
}

html[data-theme-preset] .pmma-pricing-wrapper .pmma-pricing-card,
html[data-theme-preset] .pmma-pricing-wrapper .plan-card {
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    background: var(--ui-card-bg) !important;
    box-shadow: var(--ui-shadow) !important;
    color: var(--ui-ink) !important;
    opacity: 1 !important;
    transform: none !important;
}

html[data-theme-preset] .pmma-pricing-wrapper :is(.nome-plano, .preco-destaque, .plan-price,
    .plan-features, .pmma-pricing-card p, .plan-card p, .plan-card h3) {
    color: var(--ui-ink) !important;
}

html[data-theme-preset] .pmma-pricing-wrapper .pmma-economia-badge {
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--brand-primary) 9%, var(--ui-card-bg)) !important;
    color: var(--brand-primary) !important;
}

html[data-theme-preset] .pmma-pricing-wrapper .btn-plano-custom {
    border: 1px solid var(--brand-primary) !important;
    border-radius: var(--ui-radius-sm) !important;
    background: var(--brand-primary) !important;
    color: var(--brand-on-primary, #FFFFFF) !important;
    box-shadow: none !important;
}

html[data-theme-preset] [style*="background-color: var(--brand-secondary)"],
html[data-theme-preset] [style*="background-color:var(--brand-secondary)"],
html[data-theme-preset] [style*="background: var(--brand-secondary)"],
html[data-theme-preset] [style*="background:var(--brand-secondary)"] {
    color: var(--brand-on-secondary, #FFFFFF) !important;
}

html[data-theme-preset] .pricing-section :is(.model_1, .model_2, .model_3, .model_4) {
    background: transparent !important;
    box-shadow: none !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

html[data-theme-preset] .pricing-section .plan-card {
    transform: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    background: var(--ui-card-bg) !important;
    box-shadow: var(--ui-shadow) !important;
    color: var(--ui-ink) !important;
}

html[data-theme-preset] .pricing-section .plan-card.destaque {
    border-color: color-mix(in srgb, var(--brand-primary) 55%, var(--ui-border)) !important;
    background: color-mix(in srgb, var(--brand-primary) 7%, var(--ui-card-bg)) !important;
}

html[data-theme-preset] .pricing-section .plan-card :is(h3, p, li, .plan-price, .plan-price span) {
    color: var(--ui-ink) !important;
    text-shadow: none !important;
}

html[data-theme-preset] .pricing-section .plan-title {
    background: var(--brand-primary) !important;
    color: var(--brand-on-primary, #FFFFFF) !important;
}

html[data-theme-preset] body.dark-mode .pricing-section .plan-card {
    background: var(--ui-card-bg) !important;
    border-color: var(--ui-border) !important;
    color: var(--ui-ink) !important;
}

html[data-theme-preset] :is(a, button, input, select, textarea):focus-visible {
    outline: 3px solid color-mix(in srgb, var(--brand-primary) 72%, #FFFFFF) !important;
    outline-offset: 3px;
}

/* Troca o azul legado inline pela cor da loja em formulários e ações antigas. */
html[data-theme-preset] [style*="color: #0046fe"],
html[data-theme-preset] [style*="color:#0046fe"],
html[data-theme-preset] [style*="color: #0046FE"],
html[data-theme-preset] [style*="color:#0046FE"] {
    color: var(--brand-primary) !important;
}

html[data-theme-preset] [style*="background-color: #0046fe"],
html[data-theme-preset] [style*="background-color:#0046fe"],
html[data-theme-preset] [style*="background: #0046fe"],
html[data-theme-preset] [style*="background:#0046fe"],
html[data-theme-preset] [style*="background-color: #0046FE"],
html[data-theme-preset] [style*="background-color:#0046FE"] {
    background-color: var(--brand-primary) !important;
    background-image: none !important;
    border-color: var(--brand-primary) !important;
    color: var(--brand-on-primary, #FFFFFF) !important;
}

html[data-theme-preset] .toggle-btn-custom.active {
    color: var(--brand-primary) !important;
    border-color: var(--ui-border) !important;
}

@media (prefers-reduced-motion: reduce) {
    html[data-theme-preset] *, html[data-theme-preset] *::before, html[data-theme-preset] *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
