*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0C2340;--navy-2:#1A3A5C;--navy-3:#0A1D36;
  --blue:#185FA5;--blue-2:#2B7DD4;--blue-mid:#B5D4F4;
  --blue-light:#E8F2FC;--blue-faint:#F0F6FD;--blue-baby:#DCEBF8;
  --gray-bg:#F7F9FC;--gray-line:#E2EAF3;--gray-text:#7A90A8;--gray-soft:#9DAEC2;
  --white:#FFFFFF;--ink:#0F1C2E;
  --gold:#B8890A;--gold-light:#FDF8EC;--gold-soft:#E8D090;--green:#25B450;
}
html{scroll-behavior:smooth}
body{font-family:'Jost',sans-serif;font-weight:300;background:var(--white);color:var(--ink);font-size:14px;line-height:1.6;min-width:680px}

/* TOP BAR */
.topbar{background:var(--navy-3);padding:0 40px;height:32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,0.05)}
.tb-meta{font-size:10px;color:rgba(255,255,255,0.45);letter-spacing:0.04em}
.tb-meta strong{color:rgba(255,255,255,0.7);font-weight:400}
.tb-right{display:flex;gap:16px;align-items:center}
.tb-link{font-size:10px;color:rgba(255,255,255,0.45);letter-spacing:0.06em;text-transform:uppercase;cursor:pointer}
.tb-link:hover{color:var(--blue-mid)}
.tb-sep{width:1px;height:10px;background:rgba(255,255,255,0.1)}

/* NAV TOP */
.nav-top{background:var(--white);padding:16px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--gray-line)}
.logo{display:flex;align-items:center;gap:12px;cursor:pointer;text-decoration:none}
.logo-mark{width:40px;height:40px;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.logo-text .name{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:var(--navy);display:block;line-height:1}
.logo-text .tagline{font-size:8.5px;letter-spacing:0.22em;text-transform:uppercase;color:var(--blue);display:block;margin-top:2px;font-weight:400}
.nav-actions{display:flex;gap:10px}
.btn-space{display:flex;align-items:center;gap:9px;background:transparent;border:1px solid var(--gray-line);padding:9px 18px;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;font-weight:500;color:var(--navy);transition:all .15s}
.btn-space:hover{border-color:var(--navy);background:var(--blue-faint)}
.btn-space svg{width:14px;height:14px;stroke:var(--blue);fill:none;stroke-width:1.5}
.btn-space.primary{background:var(--blue);color:var(--white);border-color:var(--blue)}
.btn-space.primary svg{stroke:var(--white)}
.btn-space.primary:hover{background:var(--navy);border-color:var(--navy)}

/* NAV MENU */
.nav-menu-bar{background:var(--blue-baby);border-bottom:1px solid var(--blue-mid)}
.nav-menu{display:flex;width:100%;padding:0}
.nav-item{flex:1;position:relative}
.nav-link{font-size:11.5px;color:var(--navy);padding:14px 12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:center;height:48px;transition:all .15s;text-align:center;border-left:1px solid rgba(24,95,165,0.15);position:relative;text-decoration:none}
.nav-item:last-child .nav-link{border-right:1px solid rgba(24,95,165,0.15)}
.nav-link:hover{background:rgba(255,255,255,0.5);color:var(--blue)}
.nav-link.active{color:var(--blue);font-weight:600}
.nav-link.active::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--blue)}

/* HERO */
.hero-login{background:var(--navy);position:relative;overflow:hidden;padding:48px 40px 52px;text-align:center}
.hero-login::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(24,95,165,0.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(184,137,10,0.06) 0%,transparent 50%)}
.hl-inner{position:relative;z-index:2;max-width:880px;margin:0 auto}
.hl-kicker{display:inline-flex;align-items:center;gap:14px;margin-bottom:18px;font-size:10px;letter-spacing:0.32em;text-transform:uppercase;color:var(--blue-mid);font-weight:400}
.hl-kicker::before,.hl-kicker::after{content:'';width:30px;height:1px;background:var(--blue-mid)}
.hl-h1{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:400;color:var(--white);line-height:1.1;letter-spacing:-0.015em;margin-bottom:16px}
.hl-h1 em{font-style:italic;color:var(--blue-mid)}
.hl-p{font-size:13px;color:rgba(255,255,255,0.62);font-weight:300;line-height:1.7;max-width:660px;margin:0 auto}
.hl-p strong{color:rgba(255,255,255,0.9);font-weight:500}

/* FORM ZONE */
.login-zone{background:var(--gray-bg);padding:60px 40px 70px;border-top:1px solid var(--gray-line);min-height:60vh}
.login-container{max-width:780px;margin:0 auto;background:var(--white);border:1px solid var(--gray-line);box-shadow:0 18px 60px rgba(12,35,64,0.08)}
.login-head{background:var(--navy);padding:0;display:grid;grid-template-columns:1fr auto;border-bottom:3px solid var(--blue)}
.login-head-main{padding:26px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative}
.login-head-main::after{content:'';position:absolute;right:0;top:18%;bottom:18%;width:1px;background:rgba(255,255,255,0.1)}
.login-head-left{flex:1}
.login-head-eyebrow{font-size:9px;letter-spacing:0.22em;text-transform:uppercase;color:var(--blue-mid);font-weight:500;display:block;margin-bottom:6px}
.login-head-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:500;color:var(--white);line-height:1.1}
.login-head-title em{font-style:italic;color:var(--blue-mid)}
.login-head-icon{width:54px;height:54px;border-radius:50%;background:rgba(181,212,244,0.12);border:1.5px solid rgba(181,212,244,0.3);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.login-head-icon svg{width:24px;height:24px;stroke:var(--blue-mid);fill:none;stroke-width:1.5}

/* Bloc Aide / Contact */
.head-help{padding:22px 28px;background:rgba(184,137,10,0.06);display:flex;flex-direction:column;justify-content:center;min-width:260px;position:relative;border-left:1px solid rgba(184,137,10,0.18)}
.head-help::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--gold)}
.head-help-top{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.head-help-icon{width:30px;height:30px;border-radius:50%;background:rgba(184,137,10,0.18);border:1px solid var(--gold-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.head-help-icon svg{width:14px;height:14px;stroke:var(--gold-light);fill:none;stroke-width:1.8}
.head-help-label{font-size:9px;letter-spacing:0.24em;text-transform:uppercase;color:var(--gold-light);font-weight:600}
.head-help-availability{font-family:'Cormorant Garamond',serif;font-size:13px;font-style:italic;color:rgba(255,255,255,0.78);line-height:1.4;margin-bottom:10px}
.head-help-availability strong{color:var(--gold-light);font-weight:500;font-style:normal;font-family:'Jost',sans-serif;letter-spacing:0.04em}
.head-help-contact{display:flex;flex-direction:column;gap:4px;font-size:10.5px;color:rgba(255,255,255,0.6);line-height:1.5}
.head-help-contact a{color:var(--blue-mid);font-weight:500;cursor:pointer;text-decoration:none;border-bottom:1px solid rgba(181,212,244,0.3);display:inline-block;padding-bottom:1px}
.head-help-contact a strong{font-weight:600}

/* Body */
.login-body{padding:36px 40px}
.login-step{display:none;animation:fadeIn .3s ease-out}
.login-step.active{display:block}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* Social login */
.social-login{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}
.social-btn{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--white);border:1.5px solid var(--gray-line);padding:12px 18px;font-family:'Jost',sans-serif;font-size:12.5px;font-weight:500;color:var(--ink);cursor:pointer;transition:all .15s}
.social-btn:hover{border-color:var(--navy);background:var(--blue-faint)}
.social-btn svg{width:18px;height:18px}
.social-btn.apple{background:var(--ink);color:var(--white);border-color:var(--ink)}
.social-btn.apple:hover{background:#000;border-color:#000}
.social-btn.apple svg{fill:var(--white)}
.form-divider{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.form-divider-line{flex:1;height:1px;background:var(--gray-line)}
.form-divider-text{font-size:9.5px;letter-spacing:0.24em;text-transform:uppercase;color:var(--gray-text);font-weight:500}

/* Champs */
.form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.form-label{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--navy);font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:8px}
.form-input{background:var(--white);border:1.5px solid var(--navy);padding:12px 16px;font-family:'Jost',sans-serif;font-size:14px;color:var(--navy);font-weight:500;outline:none;transition:all .15s}
.form-input::placeholder{color:var(--gray-soft);font-weight:300}
.form-input:focus{border-color:var(--blue);background:var(--blue-faint);box-shadow:0 0 0 3px rgba(24,95,165,0.1)}

/* Password row : champ + œil pour afficher */
.password-wrap{position:relative}
.password-eye{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;padding:4px;color:var(--gray-soft);display:flex;align-items:center;justify-content:center}
.password-eye:hover{color:var(--blue)}
.password-eye svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}

/* Lien "Mot de passe oublié" */
.forgot-link{font-size:10.5px;letter-spacing:0.08em;color:var(--blue);font-weight:600;cursor:pointer;text-transform:none;text-decoration:none;border-bottom:1px solid var(--blue-mid);padding-bottom:1px;transition:all .15s}
.forgot-link:hover{color:var(--navy);border-color:var(--navy)}

/* Remember me */
.remember-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:14px;flex-wrap:wrap}
.remember-check{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:12.5px;color:var(--gray-text)}
.remember-box{width:16px;height:16px;border:1.5px solid var(--gray-text);background:var(--white);position:relative;transition:all .15s;flex-shrink:0}
.remember-check.checked .remember-box{background:var(--blue);border-color:var(--blue)}
.remember-check.checked .remember-box::after{content:'';position:absolute;left:3px;top:0;width:6px;height:10px;border:solid var(--white);border-width:0 2px 2px 0;transform:rotate(45deg)}
.remember-check.checked{color:var(--navy);font-weight:500}

/* Actions */
.form-submit{background:var(--navy);color:var(--white);border:none;padding:14px 32px;font-family:'Jost',sans-serif;font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:background .2s;display:flex;align-items:center;gap:14px;width:100%;justify-content:center}
.form-submit:hover{background:var(--blue)}
.form-submit-arrow{width:20px;height:1px;background:var(--white);position:relative;transition:width .2s}
.form-submit:hover .form-submit-arrow{width:28px}
.form-submit-arrow::after{content:'';position:absolute;right:0;top:-3px;width:6px;height:6px;border-right:1.5px solid var(--white);border-top:1.5px solid var(--white);transform:rotate(45deg)}

/* Bouton retour */
.btn-back{background:transparent;border:none;color:var(--gray-text);font-family:'Jost',sans-serif;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;cursor:pointer;font-weight:500;display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;transition:color .15s;padding:0}
.btn-back:hover{color:var(--blue)}
.btn-back-arrow{width:18px;height:1px;background:currentColor;position:relative}
.btn-back-arrow::after{content:'';position:absolute;left:0;top:-3px;width:6px;height:6px;border-left:1px solid currentColor;border-top:1px solid currentColor;transform:rotate(-45deg)}

/* Footer du form : pas membre ? */
.login-foot{text-align:center;padding:22px 18px;background:var(--gray-bg);border-top:1px solid var(--gray-line);font-size:13px;color:var(--gray-text)}
.login-foot strong{color:var(--navy);font-weight:600}
.login-foot a{color:var(--blue);font-weight:600;cursor:pointer;text-decoration:none;border-bottom:1px solid var(--blue-mid);padding-bottom:1px;margin-left:6px}
.login-foot a:hover{color:var(--navy);border-color:var(--navy)}

/* ═══ FLUX MOT DE PASSE OUBLIÉ ═══ */
.fp-step-eyebrow{font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:10px}
.fp-step-eyebrow::before{content:'';width:20px;height:1px;background:var(--blue)}
.fp-step-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:500;color:var(--navy);line-height:1.15;margin-bottom:10px}
.fp-step-title em{font-style:italic;color:var(--blue)}
.fp-step-desc{font-size:13px;color:var(--gray-text);line-height:1.65;margin-bottom:24px;font-weight:300}
.fp-step-desc strong{color:var(--navy);font-weight:600}

/* Méthodes (email / sms) */
.fp-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}
.fp-method{border:1.5px solid var(--gray-line);padding:22px 20px;text-align:center;cursor:pointer;transition:all .2s;background:var(--white);position:relative;overflow:hidden}
.fp-method::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--blue);transform:scaleX(0);transition:transform .2s}
.fp-method:hover{border-color:var(--blue-mid);background:var(--blue-faint)}.fp-method:hover::after{transform:scaleX(1)}
.fp-method.active{border-color:var(--blue);background:var(--blue-faint)}.fp-method.active::after{transform:scaleX(1)}
.fp-method-icon{width:48px;height:48px;border-radius:50%;background:var(--blue-faint);border:1.5px solid var(--blue-mid);display:flex;align-items:center;justify-content:center;margin:0 auto 12px;transition:all .2s}
.fp-method.active .fp-method-icon{background:var(--blue);border-color:var(--blue)}
.fp-method-icon svg{width:22px;height:22px;stroke:var(--blue);fill:none;stroke-width:1.5;transition:stroke .2s}
.fp-method.active .fp-method-icon svg{stroke:var(--white)}
.fp-method-label{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:4px}
.fp-method-desc{font-size:11px;color:var(--gray-text);font-weight:300}
.fp-method-desc strong{color:var(--navy);font-weight:600;font-family:'Jost',sans-serif}

/* Code 6 chiffres */
.fp-code-row{display:flex;gap:10px;justify-content:center;margin:20px 0 14px}
.fp-code-digit{width:48px;height:56px;border:1.5px solid var(--navy);background:var(--white);font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:600;color:var(--navy);text-align:center;outline:none;transition:all .15s}
.fp-code-digit:focus{border-color:var(--blue);background:var(--blue-faint);box-shadow:0 0 0 3px rgba(24,95,165,0.1)}
.fp-resend{text-align:center;font-size:11.5px;color:var(--gray-text);margin-bottom:18px}
.fp-resend a{color:var(--blue);font-weight:600;cursor:pointer;text-decoration:none;border-bottom:1px solid var(--blue-mid)}

/* Force du mot de passe */
.fp-strength{margin-top:10px;margin-bottom:14px}
.fp-strength-bar{height:4px;background:var(--gray-line);position:relative;overflow:hidden}
.fp-strength-fill{height:100%;background:#c0392b;width:0;transition:all .25s;position:absolute;left:0;top:0}
.fp-strength-fill.weak{width:33%;background:#e67e22}
.fp-strength-fill.medium{width:66%;background:#f39c12}
.fp-strength-fill.strong{width:100%;background:var(--green)}
.fp-strength-label{font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--gray-text);margin-top:6px;font-weight:600}
.fp-rules{margin-top:14px;background:var(--gray-bg);border:1px solid var(--gray-line);padding:14px 18px;font-size:11.5px;color:var(--gray-text);margin-bottom:18px}
.fp-rules-title{font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--navy);font-weight:700;margin-bottom:8px}
.fp-rules ul{list-style:none;display:flex;flex-direction:column;gap:5px;padding:0;margin:0}
.fp-rules li{display:flex;align-items:center;gap:8px;line-height:1.5}
.fp-rules li::before{content:'';width:14px;height:14px;border:1.5px solid var(--gray-line);background:var(--white);display:inline-block;flex-shrink:0;border-radius:50%}
.fp-rules li.ok{color:var(--green);font-weight:500}
.fp-rules li.ok::before{background:var(--green);border-color:var(--green);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='6' viewBox='0 0 8 6'><path fill='none' stroke='white' stroke-width='1.6' d='M1 3l2 2 4-4'/></svg>");background-repeat:no-repeat;background-position:center}

/* Succès */
.fp-success{text-align:center;padding:30px 20px}
.fp-success-icon{width:72px;height:72px;border-radius:50%;background:rgba(37,180,80,0.1);border:2px solid var(--green);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.fp-success-icon svg{width:32px;height:32px;stroke:var(--green);fill:none;stroke-width:2}
.fp-success-title{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:500;color:var(--navy);margin-bottom:10px}
.fp-success-title em{font-style:italic;color:var(--green)}
.fp-success-desc{font-size:13px;color:var(--gray-text);line-height:1.65;max-width:440px;margin:0 auto 22px;font-weight:300}

/* FOOTER */
footer{background:var(--navy);padding:48px 40px 22px}
.ft-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:36px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,0.07)}
.ft-brand-name{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:500;color:var(--white)}
.ft-brand-tag{font-size:8.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--blue-mid);display:block;margin-top:2px;margin-bottom:14px}
.ft-desc{font-size:11.5px;color:rgba(255,255,255,0.32);line-height:1.85;max-width:240px}
.ft-col-title{font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.4);font-weight:500;margin-bottom:14px}
.ft-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.ft-col ul a{font-size:11.5px;color:rgba(255,255,255,0.32);text-decoration:none;cursor:pointer}
.ft-col ul a:hover{color:rgba(255,255,255,0.85)}
.ft-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:18px}
.ft-copy{font-size:10px;color:rgba(255,255,255,0.25)}
.ft-copy strong{color:rgba(255,255,255,0.5);font-weight:500}
.acct-type-label{font-size:13.5px;font-weight:600;color:var(--navy);margin-bottom:11px;letter-spacing:0.01em;display:flex;align-items:center;gap:8px}
.acct-type-label::before{content:'';width:3px;height:16px;background:var(--gold,#B8890A);border-radius:2px;display:inline-block;flex:none}
.acct-type{display:flex;gap:6px;margin-bottom:24px;background:var(--blue-faint,#F0F6FD);padding:6px;border:1.5px solid var(--blue-mid,#B5D4F4);border-radius:10px}
.acct-seg{flex:1;padding:12px 6px;font-family:inherit;font-size:12px;font-weight:600;color:var(--blue,#185FA5);background:#fff;border:1px solid var(--blue-mid,#B5D4F4);border-radius:7px;cursor:pointer;transition:all .15s;line-height:1.25}
.acct-seg:hover{border-color:var(--blue,#185FA5)}
.acct-seg.active{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 2px 8px rgba(12,35,64,0.25)}

/* ===== MOBILE-PHONE-ADAPT : adaptation téléphone ===== */
@media(max-width:600px){
html,body{overflow-x:hidden;max-width:100vw}
*{overflow-wrap:break-word}
img,svg,video,iframe,table{max-width:100%}
.topbar{padding:6px 13px!important;font-size:10px!important;flex-wrap:wrap;row-gap:3px}
.nav-top{padding:12px 14px!important;flex-wrap:wrap;row-gap:10px}
.logo-mark{width:32px!important;height:32px!important}
.logo-text,.logo-text .name{font-size:16px!important}
.nav-actions{width:100%;display:flex!important;gap:8px;margin-left:0!important}
.nav-actions .btn-space,.btn-space{flex:1;justify-content:center;padding:9px 6px!important;font-size:10px!important;white-space:nowrap}
.nav-menu{flex-wrap:wrap}
.nav-menu .nav-item,.nav-menu-bar .nav-item{flex:1 0 33.33%}
.nav-link{font-size:9px!important;padding:10px 3px!important;height:auto!important;min-height:42px;letter-spacing:0.02em!important;text-align:center;line-height:1.25}
.ft-grid{grid-template-columns:1fr 1fr!important;gap:22px!important}
.footer{padding:36px 16px 22px!important}
.ft-bottom{flex-direction:column;gap:10px;text-align:center;align-items:center}
.ft-desc{max-width:100%!important}
.legal-wrap{padding:36px 16px 48px!important}
.legal-title{font-size:27px!important}
input,textarea,select,.form-input{max-width:100%!important}
.fp-method-grid{grid-template-columns:1fr!important}
.login-head{grid-template-columns:1fr!important}
.social-login{grid-template-columns:1fr!important}
}

/* ===== MOBILE-FIX2 : anti-débordement renforcé ===== */
@media(max-width:600px){
[class*="fresque"],[class*="-pattern"],.nf-pattern,.clouds-zone,.hero-fresque,.hero-veil ~ [class*="pattern"]{display:none!important}
.hero,.hero-inner,.hero-content,section,main,.dash-wrap,.dash-main,.appli-row,.msg-layout,.pf-grid,.cmp,.wrap,.container{max-width:100vw!important}
.dash-sidebar,.sb,.side,.sidebar,.dash-side,aside.msg-list,.dash-nav{width:100%!important;max-width:100vw!important;float:none!important;position:static!important}
table{display:block;overflow-x:auto;width:100%}
.partners-grid,[class*="partner"][class*="grid"]{grid-template-columns:repeat(3,1fr)!important}
}

/* ===== MOBILE-FIX3 : racine du débordement ===== */
@media(max-width:600px){
.topbar .tb-left,.topbar .tb-meta{display:none!important}
.topbar{justify-content:flex-end!important}
.nav-item,.nav-menu>*,.ft-grid>*,.partners-grid>*,[class*="grid"]>*,.topbar>*,.nav-actions>*{min-width:0!important}
.nav-link{white-space:normal!important}
.dash-stats,.pf-grid,.appli-row,.msg-layout,.gw-block-grid,.cmp{grid-template-columns:1fr!important;display:block!important}
}

/* ===== MOBILE-FIX4 : reset des largeurs fixes ===== */
@media(max-width:600px){
.hero-content,.hero-p,.hero-stats-wrap,.hero-inner,.hero-text,.qsn-modal,
[class*="hero-"],[class*="-wrap"],[class*="-inner"],[class*="-content"],[class*="-stats-"],[class*="-modal"],[class*="modal-"],
.dash-main,.dash-content,.dash-wrap,.main-content,.main-wrap,.page,.card,.wrap,.container,.msg-thread,.msg-list{width:auto!important;max-width:100%!important}
}

/* ===== MOBILE-FIX5 : boutons en-tête + shrink universel ===== */
@media(max-width:600px){
*{min-width:0!important}
.nav-actions{flex-direction:column!important;align-items:stretch!important;width:100%!important}
.nav-actions .btn-space,.btn-space{width:100%!important;white-space:normal!important;flex:none!important}
.nav-menu{flex-wrap:wrap!important}
.nav-item{flex:1 0 33%!important}
}