/* Espace Sante - couche theme portail jour / soir / nuit (v2.38.0)
   jour = apparence d'origine (aucune surcharge).
   soir = chaud attenue. nuit = sombre navy. */

#mes-portail[data-mes-theme="soir"]{
    --pt-bg:#2a2620; --pt-surface:#332f28; --pt-surface2:#3b362d;
    --pt-text:#ece3d3; --pt-muted:#b3a892; --pt-border:#453f34;
}
#mes-portail[data-mes-theme="nuit"]{
    --pt-bg:#11151c; --pt-surface:#1a2029; --pt-surface2:#212a35;
    --pt-text:#d9e0ea; --pt-muted:#8a96a6; --pt-border:#242c38;
}

#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]){
    background:var(--pt-bg) !important;
    color:var(--pt-text);
    color-scheme:dark;
    transition:background .4s ease,color .4s ease;
}

/* ---- topbar mobile ---- */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-topbar{
    background:var(--pt-surface) !important; border-color:var(--pt-border) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-topbar-title{ color:var(--pt-text) !important; }

/* ---- sidebar ---- */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-sidebar{
    background:var(--pt-surface) !important; border-color:var(--pt-border) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-brand-name,
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-nav-label,
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-user-card-info strong{
    color:var(--pt-text) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-brand-role,
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-user-card-info span,
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-deconnect{
    color:var(--pt-muted) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-user-card{
    background:var(--pt-surface2) !important; border-color:var(--pt-border) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-nav-btn{ color:var(--pt-text) !important; }
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-nav-btn:hover{ background:var(--pt-surface2) !important; }
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-sidebar-footer{ border-color:var(--pt-border) !important; }

/* ---- contenu + iframe + loader ---- */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-content{ background:var(--pt-bg) !important; }
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-frame{ background:var(--pt-bg) !important; }
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-loader{ background:var(--pt-bg) !important; color:var(--pt-muted) !important; }

/* ---- ecran d'accueil + cartes (mpd) + reglages ---- */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mes-welcome,.mes-settings-panel){ background:var(--pt-bg) !important; color:var(--pt-text) !important; }
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-welcome-title{ color:var(--pt-text) !important; }
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-welcome-sub{ color:var(--pt-muted) !important; }

#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(
    .mpd-rdv-card,.mpd-rdv-col,.mpd-empty,.mpd-parcours-card,.mpd-cabinet-head,
    .mpd-cabinet-card,.mpd-notif,.mpd-section-header,.mpd-doc-row,
    .mes-settings-section,.mes-settings-panel section,.mes-settings-save-bar,
    .mes-pwa-install-card,.mes-pwa-installed-card
){
    background:var(--pt-surface) !important; border-color:var(--pt-border) !important; color:var(--pt-text) !important;
}

/* Footer credit ADCOM+ */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-adcom-credit{
    background:var(--pt-surface) !important; border-color:var(--pt-border) !important; color:var(--pt-muted) !important;
}

/* Normalise le texte a l'interieur des cartes connues (sans toucher chips/badges colores). */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mpd-rdv-card,.mpd-rdv-col,.mpd-cabinet-card,.mpd-cabinet-head,.mpd-notif,.mpd-parcours-card,.mes-settings-section) :is(h1,h2,h3,h4,p,strong,small,label,td,th,li,span,div):not([class*="badge"]):not([class*="chip"]):not([class*="pill"]){
    color:var(--pt-text);
}

@media(prefers-reduced-motion:reduce){
    #mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]){ transition:none; }
}

/* ====================================================================== */
/* Contrôle de thème (section Apparence des Paramètres)                   */
/* Bascule segmentée Auto / Jour / Soir / Nuit.                           */
/* ====================================================================== */
.mes-theme-switch{
    display:flex; gap:6px; flex-wrap:wrap; margin-top:4px;
}
.mes-theme-opt{
    flex:1 1 0; min-width:64px;
    padding:9px 10px;
    border:1px solid #d7dee8; border-radius:10px;
    background:#fff; color:#33425a;
    font:inherit; font-size:.85rem; font-weight:600;
    cursor:pointer;
    transition:background .15s ease, border-color .15s ease, color .15s ease;
}
.mes-theme-opt:hover{ border-color:#b9c4d4; }
.mes-theme-opt.is-active{
    background:#1b6ca8; border-color:#1b6ca8; color:#fff;
}

/* Adaptation aux thèmes soir / nuit du portail. */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-theme-opt{
    background:var(--pt-surface2) !important;
    border-color:var(--pt-border) !important;
    color:var(--pt-text) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-theme-opt:hover{
    border-color:var(--pt-muted) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-theme-opt.is-active{
    background:#2f7fb8 !important; border-color:#2f7fb8 !important; color:#fff !important;
}

/* ====================================================================== */
/* Bande blanche en bas : la page hote (derriere #mes-portail) reste claire */
/* quand le contenu est court. Le JS pose data-mes-theme sur <html> hote,  */
/* on assombrit donc le fond de la page et des conteneurs Salient/Nectar,  */
/* et on ajoute une marge basse sombre dans la zone de contenu.            */
/* ====================================================================== */
html[data-mes-theme="soir"]{ background:#2a2620 !important; }
html[data-mes-theme="nuit"]{ background:#11151c !important; }
html[data-mes-theme="soir"] :is(body,#page,#ajax-content-wrap,.container-wrap,.entry-content,.wpb_wrapper,.vc_column-inner,.main-content){
    background:#2a2620 !important;
}
html[data-mes-theme="nuit"] :is(body,#page,#ajax-content-wrap,.container-wrap,.entry-content,.wpb_wrapper,.vc_column-inner,.main-content){
    background:#11151c !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-content{
    padding-bottom:64px;
}

/* ====================================================================== */
/* Paramètres : cartes internes (groupes), statut notif, selects, hints.   */
/* La section est deja en surface ; les groupes prennent une teinte un peu */
/* plus claire pour conserver l'effet "carte".                            */
/* ====================================================================== */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mes-settings-group,.mes-settings-notif-status,.mes-sub-prefs,.mes-chat-restriction-hints){
    background:var(--pt-surface2) !important; border-color:var(--pt-border) !important; color:var(--pt-text) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mes-settings-group-title){
    color:var(--pt-text) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mes-settings-hint,.mes-settings-section p,.mes-settings-header p){
    color:var(--pt-muted) !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mes-settings-select,.mes-settings-panel input[type="text"],.mes-settings-panel input[type="number"],.mes-settings-panel textarea){
    background:var(--pt-bg) !important; color:var(--pt-text) !important; border-color:var(--pt-border) !important;
}
/* Texte general des groupes (hors badges/chips/pills colores). */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-settings-group :is(span,strong,small,label,p,li,div):not([class*="badge"]):not([class*="chip"]):not([class*="pill"]):not(.mes-toggle-slider){
    color:var(--pt-text);
}

/* Bandeau statut notifications dans les Parametres : la regle generique
   ci-dessus force le texte en clair, ce qui le rend invisible sur le fond
   vert clair. On redonne des couleurs lisibles en mode sombre (fond teinte
   + texte/icone contrastes). */
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mes-notif-ok,.mes-notif-warn,.mes-notif-err),
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) :is(.mes-notif-ok,.mes-notif-warn,.mes-notif-err) :is(span,div,strong,small,svg,button){
    color:inherit !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-notif-ok{
    background:rgba(34,197,94,.14) !important; border-color:#2f7d4f !important; color:#86e0a8 !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-notif-warn{
    background:rgba(245,158,11,.14) !important; border-color:#c98a3a !important; color:#f4c66b !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-notif-err{
    background:rgba(239,68,68,.14) !important; border-color:#b5564f !important; color:#f1a3a3 !important;
}
#mes-portail:is([data-mes-theme="soir"],[data-mes-theme="nuit"]) .mes-notif-help-btn{
    background:var(--pt-surface2) !important; color:var(--pt-text) !important; border-color:var(--pt-border) !important;
}
