/* Shared visual language for the public site and member workspaces. */
body.zely-invest{--accent:#245c48;--accent-clair:#e9efdf;--fond:#f4f3e8;--carte:#fffef9;--texte:#213b31;--doux:#657363;--bord:#dedfce;--bord-fort:#b7c3ad;--encre:#173d31;--encre-2:#24513e;--or:#b58b43;--or-clair:#f1e8cb;--gris:#576758;--surface-2:#f0f2e7;--surface-3:#e9eddf;--rayon:16px;--ombre-1:0 2px 6px #18392a05;--ombre-2:0 10px 30px #18392a09;--ombre-3:0 22px 60px #18392a15;background:var(--fond);color:var(--texte);font-family:Inter,Arial,sans-serif;color-scheme:light}
.zely-invest main{max-width:1260px;padding:36px 40px 72px}
.zely-invest h1,.zely-invest h2{font-family:Fraunces,Georgia,serif;font-weight:450;letter-spacing:-.035em;line-height:1.18}
.zely-invest h1{font-size:clamp(30px,3.5vw,46px)}
.zely-invest h2{font-size:clamp(24px,2.4vw,32px)}
.zely-invest h3{font-family:Inter,Arial,sans-serif;letter-spacing:-.02em;line-height:1.4}
.zely-invest a:focus-visible,.zely-invest button:focus-visible,.zely-invest summary:focus-visible{outline:3px solid #91ae79;outline-offset:4px}
.zely-invest .surtitre-section,.zely-invest .surtitre{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.15em;font-weight:650}
.zely-invest>div[role=note]{background:#173d31!important;color:#e3e9d4!important;font-size:11px;padding:8px 16px!important}
.zely-invest .btn{border-radius:10px;padding:12px 20px;background:var(--accent);color:#fffef9;border:1px solid transparent;box-shadow:none;font-family:Inter,Arial,sans-serif;font-size:13px;line-height:1.5;min-height:44px;text-align:center}
.zely-invest .btn:hover{background:#173d31;color:#fffef9;text-decoration:none;transform:none}
.zely-invest .btn.secondaire{background:var(--carte);color:var(--texte);border-color:var(--bord-fort)}
.zely-invest .btn.secondaire:hover{background:var(--surface-3)}
.zely-invest .btn.danger{background:var(--rouge);color:white}
.zely-invest :is(.carte,.kpi,.carte-projet,.carte-club,.carte-demande,.carte-formulaire,.tableau,.raccourcis a,.resume-liste>div){border-color:var(--bord);border-radius:16px;box-shadow:var(--ombre-1)}
.zely-invest :is(.carte,.carte-formulaire){padding:26px}
.zely-invest :is(.carte-projet,.carte-club,.carte-demande):hover{box-shadow:var(--ombre-2)}
.zely-invest :is(.champ,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),select,textarea){background:var(--carte);color:var(--texte);border:1px solid var(--bord-fort);border-radius:9px;box-shadow:none;max-width:100%}
.zely-invest :is(input,select,textarea):focus-visible{outline:3px solid #c3d4ac;outline-offset:2px;border-color:var(--accent)}
.zely-invest input[type=checkbox],.zely-invest input[type=radio]{accent-color:var(--accent)}
.zely-invest :is(.barre-filtres,.gestion-nav,.barre-actions-club){background:var(--surface-2);border-color:var(--bord);border-radius:14px;box-shadow:none}
.zely-invest :is(.onglets,.onglets-fiche){flex-wrap:wrap;gap:8px;background:transparent}
.zely-invest .onglets a{border:1px solid var(--bord);border-radius:9px;background:var(--carte);padding:10px 16px;color:var(--texte)}
.zely-invest .onglets a.actif,.zely-invest .gestion-nav a.actif{background:var(--accent);color:#fffef9}
.zely-invest .entete-page{border-bottom:1px solid var(--bord);padding-bottom:28px;margin-bottom:28px}
.zely-invest :is(.bandeau-page,.heros,.depot-bandeau,.auth-marque){background:#193f32;color:#fffdec;border-radius:20px;box-shadow:none}
.zely-invest :is(.bandeau-page,.heros,.depot-bandeau,.auth-marque) :is(h1,h2){color:#fffdec}
.zely-invest :is(.bandeau-page,.heros,.depot-bandeau) .btn{background:#e1e8c8;color:#193f32}
.zely-invest :is(.bandeau-page,.heros,.depot-bandeau) .btn.secondaire{background:transparent;border-color:#a7b99b;color:#fffdec}
.zely-invest .auth{border-radius:26px;border-color:var(--bord);box-shadow:var(--ombre-2);margin:16px auto 40px}
.zely-invest .auth-marque{border-radius:0;padding:44px}
.zely-invest .auth-contenu{padding:44px;background:var(--carte)}
.zely-invest .auth-contenu h1{font-family:Fraunces,Georgia,serif;font-size:36px}
.zely-invest .auth-contenu .form-auth .btn{width:100%}
.zely-invest .zely-sso{background:var(--surface-3);color:var(--texte);border-color:var(--bord-fort)}
.zely-invest .auth-lien{border-top:1px solid var(--bord);padding-top:22px;margin-top:26px}
.zely-invest .auth-lien a{text-decoration:underline;text-underline-offset:3px}
.zely-invest .public-header{max-width:1260px;margin:auto;padding:25px 40px;display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--bord);min-height:104px}
.zely-invest .public-brand{font:800 44px/1 Inter,Arial,sans-serif;letter-spacing:-3px;position:relative;display:inline-block;padding-bottom:14px;text-decoration:none;color:#173d31}
.zely-invest .public-brand>span{color:#b58b43;font-size:34px;vertical-align:top}
.zely-invest .public-brand small{position:absolute;bottom:0;left:3px;letter-spacing:4px;font-size:8px}
.zely-invest .public-header nav{display:flex;gap:28px;margin:auto;font-size:12px}
.zely-invest .public-account{border:1px solid var(--bord-fort);padding:11px 17px;border-radius:10px;font-size:12px;white-space:nowrap;color:#173d31}
.zely-invest .public-footer{max-width:1260px;margin:auto;padding:38px 40px;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;border-top:1px solid var(--bord)}
.zely-invest .public-footer .public-brand{font-size:33px}.zely-invest .public-footer .public-brand>span{font-size:26px}
.zely-invest .public-footer p{font-size:12px;color:var(--doux)}.zely-invest .public-footer nav{display:flex;gap:20px;flex-wrap:wrap;font-size:12px}
.zely-workspace .entete{background:var(--carte);border-color:var(--bord);box-shadow:var(--ombre-1)}
.zely-workspace .entete .marque{color:var(--texte)}.zely-workspace .nav a.actif{background:var(--surface-3);color:var(--texte)}
.zely-workspace .compte{flex-wrap:wrap}.zely-workspace .compte>a{overflow-wrap:anywhere}
.zely-workspace .kpi .v{font-family:Fraunces,Georgia,serif;font-weight:500}
.zely-workspace th{background:var(--surface-2);color:var(--doux)}.zely-workspace .tableau{overflow-x:auto}
.zely-workspace .pied{border-color:var(--bord);background:var(--surface-2)}
/* Keep status colours meaningful and legible even if the OS requests dark mode. */
:root body.zely-public .badge.vert{background:#e1f0e2;color:#27613c}
:root body.zely-public .badge.rouge{background:#fae6e1;color:#a1322d}
:root body.zely-public .badge.orange{background:#f8edce;color:#80560f}
:root body.zely-public .badge.bleu{background:#e5edf6;color:#315b80}
:root body.zely-public .badge.violet{background:#eee7f6;color:#684286}
:root body.zely-public .alerte-form,:root body.zely-public .messages .erreur{background:#fff0eb;color:#942e27;border-color:#ebc3b7}
:root body.zely-public .info{background:#e9efdf;color:#294d39}
:root body.zely-public .avertissement,:root body.zely-public .alerte{background:#f8edce;color:#80560f}
:root body.zely-public .section-finances{background:var(--surface-2)}
:root body.zely-public .carte-club.podium{background:linear-gradient(var(--surface-2),var(--carte))}
/* An equivalent forest palette for the existing member dark-mode control. */
:root[data-theme=dark] body.zely-workspace{--accent:#a9cb98;--accent-clair:#294537;--fond:#10251d;--carte:#193329;--texte:#eef2e6;--doux:#bbc8b6;--bord:#355043;--bord-fort:#66816c;--encre:#10251d;--encre-2:#193329;--gris:#c2cdbb;--surface-2:#213c2f;--surface-3:#294537;--or:#d5bd7a;color-scheme:dark}
:root[data-theme=dark] .zely-workspace .btn{background:#aecb97;color:#132d21}
:root[data-theme=dark] .zely-workspace .btn.secondaire{background:var(--carte);color:var(--texte)}
:root[data-theme=dark] .zely-workspace .btn.danger{background:#92342d;color:white}
@media(max-width:800px){.zely-invest main{padding:26px 24px 52px}.zely-invest .public-header{padding:24px;flex-wrap:wrap;gap:20px}.zely-invest .public-header nav{order:3;width:100%;margin:0;justify-content:center;border-top:1px solid var(--bord);padding-top:18px}.zely-invest .public-account{margin-left:auto}.zely-invest .auth-marque,.zely-invest .auth-contenu{padding:30px}.zely-invest .public-footer{padding:30px 24px}.zely-workspace .entete{position:static}.zely-workspace .compte{gap:12px;padding-bottom:12px}}
@media(max-width:480px){.zely-invest main{padding:22px 20px 44px}.zely-invest .public-header{padding:20px;gap:16px}.zely-invest .public-brand{font-size:37px}.zely-invest .public-header nav{gap:18px;font-size:10px}.zely-invest .public-account{font-size:11px;padding:10px 12px}.zely-invest :is(.carte,.carte-formulaire){padding:20px}.zely-invest .auth-marque,.zely-invest .auth-contenu{padding:26px 22px}.zely-invest .auth-contenu h1{font-size:30px}.zely-invest :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}.zely-invest .public-footer nav{gap:16px}.zely-workspace .nav a{padding:9px;font-size:12px}.zely-workspace .compte{font-size:12px}.zely-invest .onglets a{font-size:12px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){.zely-invest *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.zely-invest .public-header,.zely-invest .public-footer{display:none}.zely-invest main{padding:0}.zely-invest{background:white;color:black}}
/* Usability audit: inherited accent tokens, navigation, form hierarchy, dark contrast. */
body.zely-invest{--accent-doux:#e9efdf;--accent-fonce:#1c4d38}
.zely-invest .public-header [aria-current=page]{color:#1c4d38;font-weight:700;text-decoration:underline;text-underline-offset:7px}
.zely-invest .member-brand{font-size:32px;padding:14px 0 16px;flex-shrink:0}.zely-invest .member-brand>span{font-size:25px}.zely-invest .member-brand small{bottom:4px;font-size:7px}
.zely-workspace .entete .nav{flex-wrap:wrap;overflow:visible;gap:4px;margin:0;scrollbar-width:thin}
.workspace-nav-hint{display:none}
.zely-invest section[id]{scroll-margin-top:180px}
.profile-form fieldset{border:0;border-bottom:1px solid var(--bord);padding:0 0 24px;margin:0 0 26px;min-width:0}
.profile-form legend{font-size:17px;font-weight:650;margin-bottom:20px;color:var(--texte)}
.profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.profile-fields .champ-bloc{min-width:0;margin:0}.profile-fields :is(input:not([type=checkbox]),select){width:100%;min-height:46px}
.profile-form .case{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.6}.profile-form input[type=checkbox]{flex-shrink:0;margin-top:5px}
.profil-layout{align-items:start}.profil-layout>div>h2:first-child{margin-top:0}.profil-layout>div>h2{font-size:24px}
.zely-invest .aide{font-size:12px;line-height:1.7;color:var(--doux)}.zely-invest .aide ul{padding-left:20px}
.zely-invest .champ-bloc label{line-height:1.5}.zely-invest :is(.grille-2,.grille-champs,.profile-fields)>*{min-width:0}
:root[data-theme=dark] body.zely-workspace{--accent-doux:#294537;--accent-fonce:#b8d6a5}
:root[data-theme=dark] .zely-workspace .member-brand{color:#eef2e6}
:root[data-theme=dark] .zely-workspace :is(.onglets a.actif,.gestion-nav a.actif){color:#132d21}
:root[data-theme=dark] .zely-workspace .bandeau-page .btn{background:#e1e8c8;color:#193f32}
@media(max-width:800px){.zely-workspace .entete .nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px;scrollbar-width:thin}.zely-workspace .nav>a{white-space:nowrap;flex-shrink:0}.workspace-nav-hint{display:block;order:2;flex-basis:100%;font-size:11px;color:var(--doux);margin:0 0 4px}.zely-invest section[id]{scroll-margin-top:20px}.profile-fields{grid-template-columns:1fr}.zely-workspace .compte{min-width:0;max-width:100%}}
@media(max-width:480px){.zely-invest .public-header nav a{min-height:32px;display:flex;align-items:center}.zely-invest .btn{overflow-wrap:anywhere}.profil-layout .btn{width:100%}.zely-invest .recherche{min-width:0;width:100%}.zely-invest .raccourcis{grid-template-columns:1fr}.zely-invest .bandeau-page{padding:28px 22px}}

.zely-invest .profile-heading{display:block}.profile-heading h1{margin:10px 0 16px}.profile-heading .doux{max-width:720px;line-height:1.8}
@media(max-width:480px){.zely-workspace .bouton-aide{position:static;width:fit-content;display:flex;margin:0 20px 24px auto}}
