/* =====================================================================
   CreditoFacile — Skin NOCTURNE (thème sombre)  v1.0 — 2026-07-20
   Se superpose à : GeneratePress + CSS home custom (.cf-*) + articles.
   S'appuie sur les tokens Nocturne (--color-*) de nocturne/styles.css.
   Charge APRÈS styles.css + home.css pour surcharger. Réversible.
   ===================================================================== */

/* ---------- 0. Sol de page Nocturne (deux dégradés radiaux) ---------- */
body{
  background:
    radial-gradient(1200px 720px at 82% -180px, color-mix(in srgb,var(--color-accent-900) 78%, transparent), transparent 60%),
    radial-gradient(1100px 800px at -10% 120%, color-mix(in srgb,#000 32%, transparent), transparent 55%),
    var(--color-bg) !important;
  color:var(--color-text)!important;
  font-family:var(--font-body);
  font-size:16px;line-height:1.6;
}

/* ---------- 1. Remap tokens GeneratePress → sombre ---------- */
:root{
  --contrast:#e9e9ed; --contrast-2:#b2b6ca; --contrast-3:#595d6c;
  --base:#232532; --base-2:#1c1e2a; --base-3:#161826;
  --accent:#9184d9;
  --wp--preset--color--contrast:#e9e9ed;
  --wp--preset--color--contrast-2:#b2b6ca;
  --wp--preset--color--contrast-3:#595d6c;
  --wp--preset--color--base:#232532;
  --wp--preset--color--base-2:#1c1e2a;
  --wp--preset--color--base-3:#161826;
  --wp--preset--color--accent:#9184d9;
  --wp--preset--gradient--midnight:linear-gradient(135deg,#1c2044 0%,#262a60 60%,#353b80 100%);

  /* filets de sécurité (le bloc inline home a pu être retiré) */
  --edge:clamp(20px,5vw,72px); --leading:28px; --wrapw:1180px;
  /* Remap des tokens de la HOME (.cf-*) → Nocturne (flip automatique) */
  --cf-blue:#9184d9; --cf-blue2:#b5abfc;
  --cf-orange:#9184d9; --cf-orange2:#b5abfc;   /* Nocturne = mono blurple, pas d'orange */
  --cf-light:#232532; --cf-border:#3f424d;
  --cf-text:#e9e9ed; --cf-muted:#b2b6ca;
}

/* ---------- 2. Titres : Inter, poids 500 max ---------- */
h1,h2,h3,h4,h5,.site-title,.main-title,
.cf-section-title,.cf-cta-title,.cf-step-title,.cf-product-card-title,.cf-feat-title{
  font-family:var(--font-heading)!important;font-weight:500!important;
  letter-spacing:-.018em;color:var(--color-text);
}
a{color:var(--color-accent)}
a:hover{color:var(--color-accent-300)}
::selection{background:color-mix(in srgb,var(--color-accent) 30%, transparent)}
:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}

/* ---------- 3. HEADER + NAV (sombre, transparent) ---------- */
.site-header{background:transparent!important;border-bottom:1px solid var(--color-divider)!important;box-shadow:none!important}
.main-navigation,.main-navigation .inside-navigation{background:transparent!important}
.site-title a,.main-title a{color:var(--color-text)!important;font-weight:500}
.site-title a::before,.main-title a::before{background:var(--color-accent)!important;box-shadow:none!important}
.main-navigation .main-nav ul li a{color:var(--color-text)!important;font-weight:500;padding:22px 13px!important}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li.current-menu-item a{color:var(--color-accent)!important}
.main-navigation .main-nav ul li a::after{background:var(--color-accent)!important}
/* CTA nav = Contattaci en bouton contour (ciblé par URL, PAS :last-child qui touchait le switcher) */
.main-navigation .main-nav ul li a[href*="/contattaci"]{
  background:transparent!important;color:var(--color-accent)!important;
  border:1px solid var(--color-accent)!important;border-radius:var(--radius-md)!important;
  box-shadow:none!important;padding:9px 16px!important;margin-left:6px;
}
.main-navigation .main-nav ul li a[href*="/contattaci"]:hover{
  background:color-mix(in srgb,var(--color-accent) 12%, transparent)!important;color:var(--color-accent)!important;
}
.main-navigation .main-nav ul li a[href*="/contattaci"]::after{display:none!important}

/* ---------- 4. BOUTONS (globaux) → contour accent Nocturne ---------- */
.wp-block-button__link,.button,input[type=submit],.wp-block-search__button,
.cf-btn-primary,.cf-btn-secondary,.cf-btn-submit,.cf-btn-white{
  background:transparent!important;color:var(--color-accent)!important;
  border:1px solid var(--color-accent)!important;border-radius:var(--radius-md)!important;
  box-shadow:none!important;font-family:var(--font-heading)!important;font-weight:500!important;
  filter:none!important;text-shadow:none!important;
}
.wp-block-button__link:hover,.button:hover,input[type=submit]:hover,
.cf-btn-primary:hover,.cf-btn-submit:hover,.cf-btn-white:hover{
  background:color-mix(in srgb,var(--color-accent) 12%, transparent)!important;
  color:var(--color-accent)!important;transform:none!important;
}
/* bouton secondaire = contour neutre */
.cf-btn-secondary{color:var(--color-text)!important;border-color:var(--color-divider)!important}
.cf-btn-secondary:hover{background:color-mix(in srgb,var(--color-text) 7%, transparent)!important}

/* ---------- 5. CONTENU / surfaces sombres ---------- */
.separate-containers .inside-article,.one-container .site-content,
.entry-content,.page-header,.wp-block-group.has-background,
.wp-block-columns .wp-block-column.has-background,.cf-card{
  background:transparent!important;color:var(--color-text);
}
.entry-content{color:var(--color-text)}
/* cartes génériques → surface */
.wp-block-columns .wp-block-column.has-background,.cf-card{
  background:var(--color-surface)!important;border:1px solid var(--color-neutral-800)!important;
  box-shadow:none!important;border-radius:var(--radius-md)!important;
}
.has-base-background-color,.has-base-2-background-color{background:var(--color-surface)!important}
.has-contrast-background-color{background:var(--color-section)!important}
.sidebar .widget,.widget-area .widget{background:transparent;color:var(--color-text)}

/* ---------- 6. TYPOGRAPHIE ARTICLE (Nocturne) ---------- */
.single .entry-content,.page:not(.page-id-216) .entry-content{color:var(--color-text)}
.entry-content h2::before{background:var(--color-accent)!important;width:34px;height:1px}
.entry-content h3{color:var(--color-accent)!important}
.entry-content ul li::marker{color:var(--color-accent)!important}
.entry-content a{color:var(--color-accent-300)!important}
.entry-content blockquote{
  border-left:2px solid var(--color-accent)!important;background:var(--color-surface)!important;
  color:var(--color-text)!important;
}
.entry-content strong{color:var(--color-text)}
.entry-meta,.entry-meta a{color:color-mix(in srgb,var(--color-text) 55%, transparent)!important}
/* tableaux → look Nocturne (en-tête sobre, filets qui s'estompent) */
.entry-content table,.wp-block-table table{border:none!important;box-shadow:none!important;background:transparent!important}
.entry-content table thead th,.wp-block-table thead th{
  background:transparent!important;color:color-mix(in srgb,var(--color-text) 60%, transparent)!important;
  text-transform:uppercase;font-size:11px;letter-spacing:.08em;
  border-bottom:1px solid var(--color-divider)!important;
}
.entry-content table td,.wp-block-table td{
  border-bottom:1px solid color-mix(in srgb,var(--color-text) 8%, transparent)!important;color:var(--color-text);
}
.entry-content table tbody tr:nth-child(even){background:transparent!important}
.entry-content table tbody tr:hover{background:color-mix(in srgb,var(--color-text) 4%, transparent)!important}
/* FAQ details */
.entry-content details,.cf-faq-item{background:var(--color-surface)!important;border:1px solid var(--color-neutral-800)!important}
.entry-content details summary,.cf-faq-q{color:var(--color-text)!important}
/* inputs sombres */
.wp-block-search__input,.entry-content input[type=text],.entry-content input[type=email],
.entry-content input[type=number],.cf-form-col input,.cf-form-col select,input.cf-slider,select{
  background:var(--color-surface)!important;color:var(--color-text)!important;
  border:1px solid var(--color-divider)!important;border-radius:var(--radius-md)!important;
}

/* ---------- 7. FOOTER sombre ---------- */
.site-footer,.footer-widgets{background:#101120!important;color:var(--color-neutral-400)!important;border-top:1px solid var(--color-divider)}
.site-footer :is(h2,h3),.footer-widgets .widget-title{color:var(--color-text)!important}
.site-footer a{color:var(--color-neutral-300)!important}
.site-footer a:hover{color:var(--color-accent)!important}
.site-info{background:#0b0c16!important;color:var(--color-neutral-500)!important}

/* ---------- 8. HOME (.cf-*) : surcharges des fonds clairs codés en dur ---------- */
#cf-home{color:var(--color-text)}
/* hero : sol sombre + lueur accent (signature Nocturne) au lieu du gradient bleu */
.cf-hero{
  background:
    radial-gradient(900px 520px at 82% -120px, color-mix(in srgb,var(--color-accent-900) 82%, transparent), transparent 60%),
    var(--color-bg)!important;
  color:var(--color-text)!important;border-bottom:1px solid var(--color-divider);
}
.cf-hero-badge{background:var(--color-accent-800)!important;color:var(--color-accent-100)!important;border:none!important}
.cf-hero-sub{color:color-mix(in srgb,var(--color-text) 82%, transparent)!important}
/* sections claires → sombres */
.cf-section,.cf-section-alt,.cf-sim-section{background:transparent!important;color:var(--color-text)}
.cf-section-dark{background:var(--color-section)!important}
.cf-section-tag{background:var(--color-accent-800)!important;color:var(--color-accent-100)!important}
.cf-section-sub{color:color-mix(in srgb,var(--color-text) 70%, transparent)!important}
/* cartes produit → surface */
.cf-product-card{
  background:var(--color-surface)!important;border:1px solid var(--color-neutral-800)!important;
  color:var(--color-text)!important;box-shadow:none!important;
}
.cf-product-card:hover{box-shadow:0 0 0 1px var(--color-accent),0 16px 40px rgba(0,0,0,.5)!important}
.cf-product-icon{background:var(--color-accent-900)!important}
.cf-product-rate,.cf-product-link{color:var(--color-accent)!important}
/* bandeau stats → sol section indigo */
.cf-stats{background:var(--color-section)!important;color:var(--color-text)}
.cf-stat-item{color:var(--color-text)!important}
.cf-stat-item :is(strong,b,span){color:var(--color-accent)!important}
/* étapes */
.cf-step-num{background:var(--color-accent-900)!important;color:var(--color-accent-100)!important}
/* features */
.cf-feature{background:var(--color-surface)!important;border:1px solid var(--color-neutral-800)!important}
.cf-feature-icon{color:var(--color-accent)!important}
/* SIMULATEUR sombre */
.cf-sim-header{background:linear-gradient(135deg,#1c2044 0%,#262a60 70%)!important;color:var(--color-text)!important}
.cf-sim-tabs{background:var(--color-neutral-900)!important;border-bottom:1px solid var(--color-divider)!important}
.cf-sim-tab{color:color-mix(in srgb,var(--color-text) 65%, transparent)!important}
.cf-sim-tab.active{color:var(--color-accent)!important;box-shadow:inset 0 -2px 0 var(--color-accent)!important;background:transparent!important}
.cf-sim-body{background:var(--color-surface)!important;color:var(--color-text)}
.cf-result-box,.cf-result-main{background:var(--color-bg)!important;border:1px solid var(--color-neutral-800)!important;color:var(--color-text)}
.cf-mensualite{color:var(--color-accent)!important}
.cf-slider{background:var(--color-neutral-800)!important}
.cf-slider::-webkit-slider-thumb{background:var(--color-accent)!important}
.cf-slider::-moz-range-thumb{background:var(--color-accent)!important}
.cf-slider-labels{color:var(--color-neutral-500)!important}
/* CTA final */
.cf-cta-final,.cf-cta-section{background:var(--color-section)!important;color:var(--color-text)}
.cf-cta-title{color:var(--color-text)!important}
/* fiche produit / détails */
.cf-detail-item{background:var(--color-surface)!important;border:1px solid var(--color-neutral-800)!important}
.cf-mensualite,.cf-result-main{font-feature-settings:'tnum' 1}
.cf-legal{color:color-mix(in srgb,var(--color-text) 50%, transparent)!important}
.cf-success{background:var(--color-accent-800)!important;color:var(--color-accent-100)!important}

/* ---------- 9. Divers ---------- */
img{border-radius:var(--radius-md)}
hr,.wp-block-separator{
  border:0;height:1px;
  background:linear-gradient(to right,transparent,var(--color-divider) 48px,var(--color-divider) calc(100% - 48px),transparent)!important;
}

/* ---------- 10. Correctifs de contraste (valeurs/labels codés en sombre) ---------- */
.cf-detail-item .val{color:var(--color-text)!important}
.cf-detail-item .lbl,.cf-form-col label{color:color-mix(in srgb,var(--color-text) 70%, transparent)!important}
.cf-mensualite .montant{color:var(--color-accent)!important}
.cf-mensualite .label,.cf-mensualite .mois{color:color-mix(in srgb,var(--color-text) 65%, transparent)!important}
.cf-result-box{background:var(--color-bg)!important;border:1px solid var(--color-neutral-800)!important}
.cf-detail-item{background:var(--color-surface)!important;border:1px solid var(--color-neutral-800)!important}
.cf-cta-title{color:var(--color-text)!important}
.cf-sim-tab.active,.cf-sim-tab:hover:not(.active){color:var(--color-accent)!important}
.cf-form-col input,.cf-form-col select{color:var(--color-text)!important}
.cf-form-col input:focus,.cf-form-col select:focus{background:var(--color-surface)!important;border-color:var(--color-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,transparent)!important}
.cf-form-col input::placeholder{color:color-mix(in srgb,var(--color-text) 40%,transparent)!important}

/* ---------- 11. FOOTER sur-mesure Nocturne ---------- */
.site-info{display:none!important} /* barre copyright GP vide masquée */
.cf-footer{
  background:#101120;border-top:1px solid var(--color-divider);
  color:var(--color-neutral-400);font-family:var(--font-body);
  padding:56px var(--edge,clamp(20px,5vw,72px)) 0;
}
.cf-footer-inner{
  max-width:1180px;margin:0 auto;
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;
  padding-bottom:40px;
}
.cf-foot-logo{font-family:var(--font-heading);font-weight:500;font-size:20px;color:var(--color-text);margin-bottom:14px}
.cf-foot-logo span{color:var(--color-accent)}
.cf-foot-brand p{font-size:14px;line-height:1.65;max-width:38ch;margin:0 0 18px;color:var(--color-neutral-400)}
.cf-foot-cta{color:var(--color-accent);font-weight:500;font-size:14px;text-decoration:none}
.cf-foot-cta:hover{color:var(--color-accent-300)}
.cf-foot-col h4{font-family:var(--font-heading);font-weight:500;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);margin:0 0 16px}
.cf-foot-col ul{list-style:none;margin:0;padding:0}
.cf-foot-col li{margin:0 0 10px}
.cf-foot-col a{color:var(--color-neutral-400);text-decoration:none;font-size:14px}
.cf-foot-col a:hover{color:var(--color-accent)}
.cf-footer-legal{
  max-width:1180px;margin:0 auto;border-top:1px solid var(--color-divider);
  padding:22px 0 28px;
}
.cf-footer-legal p{font-size:11.5px;line-height:1.6;color:var(--color-neutral-500);margin:0 0 8px}
.cf-footer-copy{color:var(--color-neutral-400)!important;font-size:12px!important}
@media(max-width:860px){
  .cf-footer-inner{grid-template-columns:1fr 1fr;gap:28px}
  .cf-foot-brand{grid-column:1 / -1}
}
@media(max-width:520px){ .cf-footer-inner{grid-template-columns:1fr} }

/* ---------- 12. Sélecteur de langue (Polylang dans le menu) ---------- */
.main-navigation .main-nav ul li.lang-item{margin:0}
.main-navigation .main-nav ul li.lang-item a{
  padding:22px 8px!important;font-size:12px!important;letter-spacing:.08em;
  text-transform:uppercase;color:var(--color-neutral-400)!important;font-weight:600;
}
.main-navigation .main-nav ul li.lang-item a:hover{color:var(--color-accent)!important}
.main-navigation .main-nav ul li.current-lang a,
.main-navigation .main-nav ul li.lang-item.current-lang a{color:var(--color-text)!important}
.main-navigation .main-nav ul li.lang-item a::after{display:none!important}
.main-navigation .main-nav ul li.cf-lang-sep{
  width:1px;height:18px;background:var(--color-divider);align-self:center;margin:0 6px;padding:0;pointer-events:none;
}
.main-navigation .main-nav ul li.cf-lang-sep a{display:none}

/* ---------- 13. Pages FR/EN home+hubs : masquer le titre (copies sans le meta GP) ---------- */
.page-id-241, .page-id-242, .page-id-261, .page-id-262, .page-id-263, .page-id-264,
.page-id-265, .page-id-266, .page-id-267, .page-id-268, .page-id-269, .page-id-270,
.page-id-271, .page-id-272{ /* marqueur */ }
:is(.page-id-241,.page-id-242,.page-id-261,.page-id-262,.page-id-263,.page-id-264,.page-id-265,.page-id-266,.page-id-267,.page-id-268,.page-id-269,.page-id-270,.page-id-271,.page-id-272) :is(.entry-header,.page-hero,.entry-title){display:none!important}
:is(.page-id-241,.page-id-242,.page-id-261,.page-id-262,.page-id-263,.page-id-264,.page-id-265,.page-id-266,.page-id-267,.page-id-268,.page-id-269,.page-id-270,.page-id-271,.page-id-272) .entry-content{margin-top:0!important}

/* ---------- 14. HUBS (#cf-mutuo, #cf-prestito…) : forcer les tokens Nocturne ---------- */
/* Leur <style> inline garde un :root{--cf-blue:#0a3d8f} (palette claire) plus tardif dans
   le doc → il écrasait mon remap. On gagne via [id^="cf-"] (spécificité > :root) + !important. */
[id^="cf-"]{
  --cf-blue:#9184d9!important; --cf-blue2:#b5abfc!important;
  --cf-orange:#9184d9!important; --cf-orange2:#b5abfc!important;
  --cf-light:#232532!important; --cf-border:#3f424d!important;
  --cf-text:#e9e9ed!important; --cf-muted:#b2b6ca!important;
}
/* fonds clairs codés en dur sur les hubs → surfaces sombres */
[id^="cf-"] .cf-section-alt,[id^="cf-"] .cf-result-box,[id^="cf-"] .cf-detail-item,
[id^="cf-"] .cf-product-card,[id^="cf-"] .cf-feature,[id^="cf-"] .cf-faq-item{
  background:var(--color-surface)!important;border-color:var(--color-neutral-800)!important;color:var(--color-text);
}
[id^="cf-"] .cf-stat-item .num{color:var(--color-accent)!important}
[id^="cf-"] .cf-stat-item .num span{color:var(--color-accent-300)!important}
/* bouton secondaire hub plus visible */
[id^="cf-"] .cf-btn-secondary{border:1px solid var(--color-accent)!important;color:var(--color-accent)!important}
