/* ============================================================================
   Neurodor — Paletas curadas para personalização do aluno
   ----------------------------------------------------------------------------
   Aplicado pelo interface-ead via filter language_attributes:
       <html data-palette="padrao|noturno|azul|sepia">

   Aluno escolhe em /meu-perfil quando allow_user_palette=true (default).
   Persistido em user_meta.nd_palette. Override do brand_accent admin (whitelabel).

   IMPORTANTE: paletas SEMPRE são complementares ao [data-theme]. Ex: paleta
   "noturno" usa tokens dark de [data-theme="dark"] + brand atenuado próprio.
   Carregado DEPOIS de tokens.css na cascata.
============================================================================ */

/* PALETA PADRÃO — preserva o brand do WHITELABEL (identity.primary_color).
   NÃO força hex próprio. Cliente que configurou marca personalizada continua
   vendo a marca dele. Sem whitelabel, fallback é #1FBA7A (tokens.css :root).
   Apenas garante derivações consistentes via color-mix. */
[data-palette="padrao"] {
    /* --nd-brand vem do <style id="ead-whitelabel"> ou fallback tokens.css :root */
    --nd-brand-hover:    color-mix(in srgb, var(--nd-brand) 85%, #000);
    --nd-brand-strong:   color-mix(in srgb, var(--nd-brand) 70%, #000);
    --nd-brand-soft:     color-mix(in srgb, var(--nd-brand) 10%, transparent);
    --nd-brand-border:   color-mix(in srgb, var(--nd-brand) 28%, transparent);

    /* B.F5.10 — Bridge para classes Bootstrap/Metronic do tema.
       --bs-primary-rgb é fallback default (admin pode customizar via whitelabel).
       Para paleta padrão, RGB padrão #1FBA7A = 31, 186, 122. */
    --bs-primary:        var(--nd-brand);
    --bs-primary-rgb:    31, 186, 122;
    --bs-text-primary:   var(--nd-brand);
    --bs-link-color:     var(--nd-brand);
    --bs-link-hover-color: var(--nd-brand-hover);

    /* B.F5.11 — Bridge LEGADO --no-* → --nd-brand.
       160 usos no plugin (hub.css, panel.css, library.css legado).
       Override aqui vence o <style id="neurodor-onboarding-vars"> inline
       porque [data-palette] tem maior especificidade que :root. */
    --no-primary:        var(--nd-brand) !important;
    --no-primary-hover:  var(--nd-brand-hover) !important;
    --no-text-on-primary: var(--nd-on-brand) !important;
    --no-side-bg:        var(--nd-brand-strong) !important;
    --no-side-text:      var(--nd-on-brand) !important;
    --no-card-bg:        var(--nd-bg-surface);
    --no-card-border:    var(--nd-border);
    --no-card-text:      var(--nd-text);
    --no-card-muted:     var(--nd-text-muted);
    --no-page-bg:        var(--nd-bg-page);
    --no-input-bg:       var(--nd-bg-input);
    --no-input-text:     var(--nd-text);
}

/* PALETA FOCO NOTURNO — dark + brand atenuado para sessões longas */
[data-palette="noturno"] {
    --nd-brand:          #25D08A;
    --nd-on-brand:       #042116;
    --nd-brand-hover:    color-mix(in srgb, var(--nd-brand) 85%, #fff);
    --nd-brand-strong:   color-mix(in srgb, var(--nd-brand) 70%, #000);
    --nd-brand-soft:     color-mix(in srgb, var(--nd-brand) 10%, transparent);
    --nd-brand-border:   color-mix(in srgb, var(--nd-brand) 28%, transparent);

    /* B.F5.10 — Bridge Bootstrap */
    --bs-primary:        #25D08A;
    --bs-primary-rgb:    37, 208, 138;
    --bs-text-primary:   #25D08A;
    --bs-link-color:     #25D08A;
    --bs-link-hover-color: #4FD9A1;

    /* B.F5.11 — Bridge --no-* (!important vence :root inline depois) */
    --no-primary:        #25D08A !important;
    --no-primary-hover:  #4FD9A1 !important;
    --no-text-on-primary: #042116 !important;
    --no-side-bg:        #042116 !important;
    --no-side-text:      #E8F1F2 !important;
    --no-card-bg:        #131A1F;
    --no-card-border:    #233038;
    --no-card-text:      #E8F1F2;
    --no-card-muted:     #8DA0A8;
    --no-page-bg:        #0B0F12;
    --no-input-bg:       #0F161B;
    --no-input-text:     #E8F1F2;
}
/* Noturno força fundo escuro mesmo se data-theme="light" */
[data-palette="noturno"] {
    --nd-bg-page:        #0B0F12;
    --nd-bg-surface:     #131A1F;
    --nd-bg-surface-2:   #1A2329;
    --nd-bg-input:       #0F161B;
    --nd-border:         #233038;
    --nd-border-strong:  #2F4049;
    --nd-text:           #E8F1F2;
    --nd-text-muted:     #8DA0A8;
    --nd-text-dim:       #5A6E76;
    --nd-text-inverse:   #042116;
}

/* PALETA CALMO AZUL — brand azul institucional, mantém estrutura do data-theme */
[data-palette="azul"] {
    --nd-brand:          #4A9EFF;
    --nd-on-brand:       #FFFFFF;
    --nd-brand-hover:    color-mix(in srgb, var(--nd-brand) 85%, #fff);
    --nd-brand-strong:   color-mix(in srgb, var(--nd-brand) 70%, #000);
    --nd-brand-soft:     color-mix(in srgb, var(--nd-brand) 10%, transparent);
    --nd-brand-border:   color-mix(in srgb, var(--nd-brand) 28%, transparent);

    /* B.F5.10 — Bridge Bootstrap */
    --bs-primary:        #4A9EFF;
    --bs-primary-rgb:    74, 158, 255;
    --bs-text-primary:   #4A9EFF;
    --bs-link-color:     #4A9EFF;
    --bs-link-hover-color: #6FB1FF;

    /* B.F5.11 — Bridge --no-* (!important vence :root inline depois) */
    --no-primary:        #4A9EFF !important;
    --no-primary-hover:  #2872D1 !important;
    --no-text-on-primary: #FFFFFF !important;
}
[data-theme="light"][data-palette="azul"] {
    --nd-brand:          #2872D1; /* deriva mais escuro para contraste AA em light */
    --bs-primary:        #2872D1;
    --bs-primary-rgb:    40, 114, 209;
    --bs-text-primary:   #2872D1;
    --bs-link-color:     #2872D1;
}

/* PALETA SÉPIA ESTUDO — neutra quente, leitura prolongada (cor de e-reader).
   Intensificada 2026-05-13 (1.6.1) — antes tinha pouca variação visual vs
   paleta Padrão clara. Agora bg-page mais saturado, brand âmbar quente,
   bordas mais distintas. */
[data-palette="sepia"] {
    --nd-bg-page:        #E8D8B0; /* era #F4ECD8 — mais saturado, distinto do cinza-claro padrão */
    --nd-bg-surface:     #F4E8C8; /* era #FBF4E0 — creme âmbar */
    --nd-bg-surface-2:   #DCC990; /* era #ECDFC2 */
    --nd-bg-input:       #F4E8C8;
    --nd-border:         #C9B580; /* era #D6C8A6 — mais visível */
    --nd-border-strong:  #A89460; /* era #B8A87E */
    --nd-text:           #2E2410; /* era #3A2F1E — mais escuro pra contraste maior */
    --nd-text-muted:     #5C4925; /* era #5C4A33 */
    --nd-text-dim:       #8A7448; /* era #8A7654 */
    --nd-text-inverse:   #F4E8C8;
    --nd-brand:          #A0612C; /* era #5C8A6E — âmbar quente em vez de verde-cinza */
    --nd-on-brand:       #FBF4E0;
    --nd-brand-hover:    color-mix(in srgb, var(--nd-brand) 85%, #000);
    --nd-brand-strong:   color-mix(in srgb, var(--nd-brand) 70%, #000);
    --nd-brand-soft:     color-mix(in srgb, var(--nd-brand) 14%, transparent);
    --nd-brand-border:   color-mix(in srgb, var(--nd-brand) 30%, transparent);

    /* B.F5.10 — Bridge Bootstrap */
    --bs-primary:        #A0612C;
    --bs-primary-rgb:    160, 97, 44;
    --bs-text-primary:   #A0612C;
    --bs-link-color:     #A0612C;
    --bs-link-hover-color: #875124;

    /* B.F5.11 — Bridge --no-* (!important vence :root inline depois) */
    --no-primary:        #A0612C !important;
    --no-primary-hover:  #875124 !important;
    --no-text-on-primary: #FBF4E0 !important;
    --no-card-bg:        #F4E8C8;
    --no-card-border:    #C9B580;
    --no-card-text:      #2E2410;
    --no-card-muted:     #5C4925;
    --no-page-bg:        #E8D8B0;
    --no-input-bg:       #F4E8C8;
    --no-input-text:     #2E2410;
}
