/* MEP Foundation — consolidation stable des anciennes couches actives. */

/* ===== mep-work-mode.css ===== */

/* =========================================================
   MEP V01 — Salariat / Indépendant / Mixte
   ========================================================= */

.mep-work-context{
  --mep-work-green:#1f6d59;
  --mep-work-green-soft:#eaf6f1;
  --mep-work-blue:#2856d8;
  --mep-work-blue-soft:#edf2ff;
  --mep-work-amber:#9a6310;
  --mep-work-amber-soft:#fff6df;
  width:min(1180px,calc(100% - 32px));
  margin:14px auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:10px 12px;
  border:1px solid #dfe7e4;
  border-radius:16px;
  background:rgba(255,255,255,.96);
  box-shadow:0 6px 24px rgba(25,48,42,.06)
}
.mep-work-context-copy{display:flex;align-items:center;gap:10px;min-width:0}
.mep-work-context-copy>span{
  display:grid;place-items:center;width:36px;height:36px;border-radius:11px;
  background:var(--mep-work-green-soft);font-size:18px;flex:0 0 auto
}
.mep-work-context-copy small{display:block;color:#74827e;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.mep-work-context-copy strong{display:block;color:#20302c;font-size:14px;white-space:nowrap}
.mep-work-context-actions{display:flex;align-items:center;gap:7px;flex-wrap:nowrap;justify-content:flex-end}
.mep-work-context-actions form{width:auto;margin:0;flex:0 0 auto}
.mep-work-context-actions .mep-work-context-open{flex:0 0 auto}
.mep-work-chip{
  appearance:none;border:1px solid #dbe4e1;background:#fff;color:#52615d;
  border-radius:999px;padding:8px 12px;font:800 12px/1.1 inherit;cursor:pointer;
  transition:.18s ease;text-decoration:none
}
.mep-work-chip:hover{border-color:#adc7bf;background:#f8fbfa}
.mep-work-chip.is-active{
  background:var(--mep-work-green-soft);border-color:#b9decf;color:var(--mep-work-green)
}
.mep-work-chip.is-independent.is-active{
  background:var(--mep-work-blue-soft);border-color:#cdd8ff;color:var(--mep-work-blue)
}
.mep-work-chip.is-mixed.is-active{
  background:var(--mep-work-amber-soft);border-color:#efd8a6;color:var(--mep-work-amber)
}
.mep-work-context-open{
  text-decoration:none;color:#24332f;font-size:12px;font-weight:850;
  padding:8px 10px;border-radius:10px
}
.mep-work-context-open:hover{background:#f3f7f6}
.mep-work-flash{
  width:min(1180px,calc(100% - 32px));margin:10px auto 0;padding:10px 14px;
  border-radius:12px;background:#eaf8f2;color:#155f49;border:1px solid #bfe5d5;
  font-size:13px;font-weight:750
}

.mep-work-mode-settings{
  margin:20px 0 26px;padding:22px;border:1px solid #dce7e3;border-radius:20px;
  background:linear-gradient(145deg,#fbfdfc,#f4f9f7)
}
.mep-work-mode-settings-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}
.mep-work-mode-settings-head h2{margin:4px 0 6px}
.mep-work-mode-settings-head p{margin:0;color:#697a75;max-width:700px}
.mep-work-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mep-work-mode-option{position:relative;cursor:pointer;display:block}
.mep-work-mode-option input{position:absolute;opacity:0;pointer-events:none}
.mep-work-mode-option>span{
  display:block;height:100%;padding:17px;border:1px solid #dce5e2;border-radius:16px;
  background:#fff;transition:.18s ease
}
.mep-work-mode-option b{display:block;font-size:16px;color:#21312d;margin-bottom:5px}
.mep-work-mode-option small{display:block;color:#70807c;line-height:1.45}
.mep-work-mode-option input:checked+span{
  border-color:#69ad98;box-shadow:0 0 0 3px rgba(31,109,89,.09);background:#f3fbf8
}
.mep-work-mode-settings-actions{display:flex;align-items:center;gap:12px;margin-top:15px;flex-wrap:wrap}
.mep-work-mode-settings-actions small{color:#75827f}
.mep-work-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;
  border:1px solid #d5e0dc;background:#fff;color:#24352f;border-radius:12px;
  padding:10px 15px;font:800 13px/1 inherit;text-decoration:none;cursor:pointer
}
.mep-work-btn.is-primary{background:#1f6d59;border-color:#1f6d59;color:#fff}
.mep-work-eyebrow{
  margin:0 0 8px;color:#2b765f;font-size:11px;font-weight:900;
  letter-spacing:.11em;text-transform:uppercase
}

.mep-independent-foundation{padding:26px 0 44px}
.mep-independent-hero{
  display:flex;justify-content:space-between;align-items:flex-start;gap:28px;
  padding:30px;border-radius:24px;border:1px solid #d9e4e0;
  background:
    radial-gradient(circle at 100% 0,rgba(73,108,240,.10),transparent 38%),
    linear-gradient(145deg,#fff,#f7faf9)
}
.mep-independent-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.04;margin:0 0 12px;color:#172723}
.mep-independent-hero p:not(.mep-work-eyebrow){max-width:760px;color:#667670;font-size:16px;line-height:1.65;margin:0}
.mep-independent-hero form{margin:0;flex:0 0 auto}
.mep-independent-status{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 22px
}
.mep-independent-status span{
  padding:13px 15px;border:1px solid #e0e8e5;border-radius:14px;background:#fff;
  color:#52635e;font-size:13px
}
.mep-independent-status b{display:block;color:#253630;font-size:11px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px}
.mep-independent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mep-independent-card{
  position:relative;min-height:230px;padding:20px;border:1px solid #dfe8e5;border-radius:18px;
  background:#fff;box-shadow:0 8px 25px rgba(31,55,48,.045)
}
.mep-independent-card.is-next{border-color:#a7d4c4;background:#f7fcfa}
.mep-independent-card-icon{font-size:25px;margin-bottom:18px}
.mep-independent-card>span{display:block;color:#788681;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.mep-independent-card h2{font-size:19px;margin:5px 0 9px;color:#1d2d28}
.mep-independent-card p{font-size:13px;line-height:1.55;color:#687872;margin:0 0 18px}
.mep-independent-card>b{position:absolute;bottom:18px;left:20px;color:#26745d;font-size:12px}
.mep-independent-shared{
  display:flex;justify-content:space-between;gap:22px;margin-top:18px;padding:22px;
  border:1px solid #e0e7e5;border-radius:18px;background:#f8faf9
}
.mep-independent-shared h2{margin:0 0 7px;color:#1e2e29}
.mep-independent-shared p:not(.mep-work-eyebrow){margin:0;color:#6d7b77}
.mep-independent-shared-links{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:0 0 auto}
.mep-independent-shared-links a{color:#246b56;font-weight:800;text-decoration:none;font-size:13px}

@media(max-width:900px){
  .mep-work-context{align-items:flex-start;flex-direction:column}
  .mep-work-context-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .mep-work-mode-grid,.mep-independent-grid{grid-template-columns:1fr 1fr}
  .mep-independent-hero,.mep-independent-shared{flex-direction:column}
  .mep-independent-shared-links{align-items:flex-start}
}
@media(max-width:620px){
  .mep-work-context{width:calc(100% - 20px);margin-top:8px;border-radius:14px}
  .mep-work-context-copy strong{white-space:normal}
  .mep-work-context-actions{display:grid;grid-template-columns:1fr 1fr}
  .mep-work-context-actions form,.mep-work-context-actions .mep-work-context-open{width:100%}
  .mep-work-chip,.mep-work-context-open{width:100%;text-align:center;justify-content:center}
  .mep-work-mode-grid,.mep-independent-grid,.mep-independent-status{grid-template-columns:1fr}
  .mep-independent-hero{padding:22px}
  .mep-work-mode-settings{padding:17px}
  .mep-work-mode-settings-head{display:block}
}


/* =========================================================
   MEP V02 — Profil d’activité indépendante
   ========================================================= */

.mep-independent-flash{
  margin:14px 0 0;
  padding:12px 15px;
  border-radius:13px;
  font-size:13px;
  font-weight:800
}
.mep-independent-flash.is-success{
  color:#155f49;
  background:#eaf8f2;
  border:1px solid #bfe5d5
}
.mep-independent-flash.is-error{
  color:#8b2c2c;
  background:#fff0ef;
  border:1px solid #f1c4bf
}

.mep-independent-profile-overview{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1.85fr);
  gap:14px;
  margin:0 0 18px
}
.mep-independent-progress-card{
  padding:20px;
  border:1px solid #dce7e3;
  border-radius:18px;
  background:linear-gradient(145deg,#f8fcfa,#fff)
}
.mep-independent-progress-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px
}
.mep-independent-progress-head h2{
  margin:0;
  font-size:24px;
  color:#1f302b
}
.mep-independent-progress-head>strong{
  display:grid;
  place-items:center;
  min-width:62px;
  height:42px;
  padding:0 12px;
  border-radius:12px;
  color:#21634f;
  background:#e8f6f0;
  font-size:14px
}
.mep-independent-progress-track{
  height:9px;
  margin:17px 0 13px;
  border-radius:999px;
  background:#e6eeeb;
  overflow:hidden
}
.mep-independent-progress-track span{
  display:block;
  height:100%;
  min-width:4px;
  border-radius:inherit;
  background:linear-gradient(90deg,#1f6d59,#4da98a)
}
.mep-independent-progress-card>p{
  margin:0;
  color:#6e7e79;
  font-size:12px;
  line-height:1.55
}

.mep-independent-kpis{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px
}
.mep-independent-kpis article{
  min-width:0;
  padding:16px;
  border:1px solid #e0e8e5;
  border-radius:16px;
  background:#fff
}
.mep-independent-kpis small{
  display:block;
  margin-bottom:6px;
  color:#7c8985;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em
}
.mep-independent-kpis b{
  display:block;
  color:#20312c;
  font-size:15px;
  line-height:1.35;
  overflow-wrap:anywhere
}

.mep-independent-profile-shell{
  margin:22px 0;
  border:1px solid #dbe6e2;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 35px rgba(31,55,48,.05);
  overflow:hidden
}
.mep-independent-profile-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  padding:24px 26px;
  border-bottom:1px solid #e5ece9;
  background:
    radial-gradient(circle at 100% 0,rgba(54,101,237,.07),transparent 34%),
    #fbfdfc
}
.mep-independent-profile-heading h2{
  margin:0 0 7px;
  color:#1d2e29;
  font-size:25px
}
.mep-independent-profile-heading p:not(.mep-work-eyebrow){
  max-width:760px;
  margin:0;
  color:#6d7c78;
  font-size:13px;
  line-height:1.6
}
.mep-independent-step-done{
  flex:0 0 auto;
  padding:8px 11px;
  border-radius:999px;
  background:#eaf7f2;
  color:#246c56;
  font-size:11px;
  font-weight:900
}

.mep-independent-profile-form{
  padding:24px 26px 28px
}
.mep-independent-profile-form fieldset{
  margin:0;
  padding:0 0 25px;
  border:0
}
.mep-independent-profile-form fieldset+fieldset{
  padding-top:24px;
  border-top:1px solid #e8eeec
}
.mep-independent-profile-form legend{
  display:flex;
  align-items:flex-start;
  gap:12px;
  width:100%;
  margin:0 0 17px;
  padding:0
}
.mep-independent-profile-form legend>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:#edf5f2;
  color:#286c57;
  font-size:11px;
  font-weight:950
}
.mep-independent-profile-form legend b{
  display:block;
  margin:1px 0 3px;
  color:#21312c;
  font-size:16px
}
.mep-independent-profile-form legend small{
  display:block;
  color:#7b8985;
  font-size:11px
}
.mep-independent-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:15px 16px
}
.mep-independent-fields.is-single{
  grid-template-columns:1fr
}
.mep-independent-fields>label{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0
}
.mep-independent-fields>label>span{
  color:#33443f;
  font-size:12px;
  font-weight:850
}
.mep-independent-fields>label>small{
  color:#87938f;
  font-size:10px;
  line-height:1.45
}
.mep-independent-fields input,
.mep-independent-fields select,
.mep-independent-fields textarea{
  width:100%;
  min-height:44px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:11px;
  background:#fff;
  color:#24342f;
  padding:10px 12px;
  font:500 14px/1.4 inherit;
  outline:none;
  transition:border-color .16s ease,box-shadow .16s ease
}
.mep-independent-fields textarea{
  min-height:110px;
  resize:vertical
}
.mep-independent-fields input:focus,
.mep-independent-fields select:focus,
.mep-independent-fields textarea:focus{
  border-color:#68ad96;
  box-shadow:0 0 0 3px rgba(31,109,89,.09)
}
.mep-independent-live-target{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:104px;
  padding:15px;
  border:1px dashed #cad9d4;
  border-radius:14px;
  background:#f9fbfa
}
.mep-independent-live-target small{
  color:#7b8884;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em
}
.mep-independent-live-target b{
  margin:5px 0 4px;
  color:#29423a;
  font-size:14px
}
.mep-independent-live-target span{
  color:#7b8985;
  font-size:10px;
  line-height:1.45
}
.mep-independent-live-target.is-ready{
  border-style:solid;
  border-color:#b6ddcf;
  background:#f0faf6
}
.mep-independent-live-target.is-ready b{
  color:#1f6d59
}

.mep-independent-profile-actions{
  display:flex;
  align-items:center;
  gap:13px;
  flex-wrap:wrap;
  padding-top:2px
}
.mep-independent-profile-actions small{
  color:#7c8885;
  font-size:11px
}

.mep-independent-roadmap{
  margin-top:18px
}
.mep-independent-card.is-complete{
  border-color:#b7decf;
  background:#f3fbf8
}
.mep-independent-card.is-complete>b{
  color:#1f6d59
}

@media(max-width:900px){
  .mep-independent-profile-overview{
    grid-template-columns:1fr
  }
  .mep-independent-profile-heading{
    flex-direction:column
  }
}

@media(max-width:680px){
  .mep-independent-kpis,
  .mep-independent-fields{
    grid-template-columns:1fr
  }
  .mep-independent-profile-form{
    padding:20px 17px 23px
  }
  .mep-independent-profile-heading{
    padding:20px 17px
  }
  .mep-independent-profile-form legend{
    gap:9px
  }
  .mep-independent-fields input,
  .mep-independent-fields select,
  .mep-independent-fields textarea{
    font-size:16px
  }
  .mep-independent-profile-actions .mep-work-btn{
    width:100%
  }
}


/* =========================================================
   MEP V03 — Dashboard indépendant
   ========================================================= */

.mep-independent-nav{
  display:flex;
  gap:7px;
  margin:18px 0;
  padding:7px;
  border:1px solid #dce6e2;
  border-radius:15px;
  background:#fff;
  overflow-x:auto;
  scrollbar-width:thin
}
.mep-independent-nav a,
.mep-independent-nav>span{
  display:flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  min-height:38px;
  padding:0 12px;
  border-radius:10px;
  color:#667773;
  font-size:11px;
  font-weight:850;
  text-decoration:none;
  white-space:nowrap
}
.mep-independent-nav a:hover{
  background:#f3f8f6;
  color:#285e4e
}
.mep-independent-nav a.is-active{
  background:#eaf6f1;
  color:#21634f
}
.mep-independent-nav>span{
  opacity:.62
}
.mep-independent-nav small{
  padding:2px 5px;
  border-radius:999px;
  background:#edf1f0;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.05em
}

.mep-independent-dashboard{
  margin:0 0 22px;
  padding:23px;
  border:1px solid #d9e5e1;
  border-radius:22px;
  background:
    radial-gradient(circle at 100% 0,rgba(64,112,238,.06),transparent 25%),
    radial-gradient(circle at 0 100%,rgba(31,109,89,.06),transparent 28%),
    #fbfdfc;
  box-shadow:0 12px 36px rgba(35,61,53,.05)
}
.mep-independent-dashboard-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px
}
.mep-independent-dashboard-head h2{
  margin:0 0 7px;
  color:#1e2f2a;
  font-size:26px
}
.mep-independent-dashboard-head>div:first-child>p:not(.mep-work-eyebrow){
  max-width:790px;
  margin:0;
  color:#72817d;
  font-size:12px;
  line-height:1.6
}
.mep-independent-readiness{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  flex:0 0 auto;
  padding:10px 13px;
  border:1px solid #d7e8e1;
  border-radius:13px;
  background:#fff
}
.mep-independent-readiness span{
  color:#7f8d89;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-independent-readiness strong{
  color:#21634f;
  font-size:24px;
  line-height:1.1
}

.mep-independent-dashboard-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:12px
}
.mep-independent-dashboard-kpis article{
  min-width:0;
  padding:16px;
  border:1px solid #e0e8e5;
  border-radius:15px;
  background:#fff
}
.mep-independent-dashboard-kpis article.is-primary{
  border-color:#bcded2;
  background:linear-gradient(145deg,#effaf6,#fff)
}
.mep-independent-dashboard-kpis article.is-warning{
  border-color:#f0d0b7;
  background:#fff8f1
}
.mep-independent-dashboard-kpis small{
  display:block;
  margin-bottom:7px;
  color:#7f8c88;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-independent-dashboard-kpis b{
  display:block;
  margin-bottom:5px;
  color:#233630;
  font-size:22px;
  line-height:1.1;
  overflow-wrap:anywhere
}
.mep-independent-dashboard-kpis span{
  display:block;
  color:#7e8d89;
  font-size:10px;
  line-height:1.4
}

.mep-independent-dashboard-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px
}
.mep-independent-dashboard-panel{
  min-width:0;
  padding:18px;
  border:1px solid #e0e8e5;
  border-radius:17px;
  background:#fff
}
.mep-independent-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px
}
.mep-independent-panel-head h3{
  margin:0;
  color:#253732;
  font-size:17px
}
.mep-independent-panel-head>span{
  display:grid;
  place-items:center;
  min-width:34px;
  height:29px;
  padding:0 8px;
  border-radius:9px;
  background:#eef5f2;
  color:#356b5b;
  font-size:10px;
  font-weight:900
}

.mep-independent-priorities{
  display:flex;
  flex-direction:column;
  gap:9px
}
.mep-independent-priority{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  padding:11px;
  border:1px solid #e5ebe9;
  border-radius:13px;
  background:#fbfcfc
}
.mep-independent-priority.is-high{
  border-color:#eed0c8;
  background:#fff8f6
}
.mep-independent-priority.is-medium{
  border-color:#eadfbd;
  background:#fffcf4
}
.mep-independent-priority.is-good{
  border-color:#c3e1d6;
  background:#f4fbf8
}
.mep-independent-priority-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#fff;
  font-size:17px;
  box-shadow:0 2px 8px rgba(30,50,44,.06)
}
.mep-independent-priority b{
  display:block;
  color:#31413c;
  font-size:12px
}
.mep-independent-priority p{
  margin:3px 0 5px;
  color:#798783;
  font-size:10px;
  line-height:1.45
}
.mep-independent-priority a{
  color:#266954;
  font-size:10px;
  font-weight:900;
  text-decoration:none
}

.mep-independent-capacity-scale{
  position:relative;
  height:11px;
  margin:6px 0 15px;
  border-radius:999px;
  background:
    linear-gradient(
      90deg,
      #f4ded3 0,
      #f4ead2 40%,
      #d8eee5 62.5%,
      #d8eee5 100%
    );
  overflow:hidden
}
.mep-independent-capacity-scale>span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:rgba(31,109,89,.68)
}
.mep-independent-capacity-scale>i{
  position:absolute;
  top:-3px;
  width:2px;
  height:17px;
  background:#1f5142
}
.mep-independent-capacity-values{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px
}
.mep-independent-capacity-values>div{
  padding:12px;
  border-radius:12px;
  background:#f8faf9
}
.mep-independent-capacity-values small{
  display:block;
  color:#83908c;
  font-size:9px;
  text-transform:uppercase;
  font-weight:900
}
.mep-independent-capacity-values b{
  color:#2a3b35;
  font-size:16px
}
.mep-independent-capacity>p{
  margin:12px 0 0;
  padding:10px 12px;
  border-radius:10px;
  font-size:10px;
  line-height:1.5
}
.mep-independent-capacity>p.is-good{
  color:#28604e;
  background:#edf8f3
}
.mep-independent-capacity>p.is-warning{
  color:#865426;
  background:#fff6eb
}

.mep-independent-empty-state{
  display:grid;
  place-items:center;
  min-height:210px;
  padding:18px;
  text-align:center;
  border:1px dashed #d7e1dd;
  border-radius:14px;
  background:#fafcfc
}
.mep-independent-empty-state>span{
  font-size:28px
}
.mep-independent-empty-state>b{
  color:#33443f;
  font-size:13px
}
.mep-independent-empty-state p{
  max-width:330px;
  margin:0;
  color:#7c8985;
  font-size:10px;
  line-height:1.5
}
.mep-independent-empty-state a{
  color:#246550;
  font-size:10px;
  font-weight:900;
  text-decoration:none
}

.mep-independent-mini-pipeline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px
}
.mep-independent-mini-pipeline>div{
  padding:14px 8px;
  border-radius:13px;
  background:#f7faf9;
  text-align:center
}
.mep-independent-mini-pipeline span{
  display:block;
  margin-bottom:3px;
  font-size:19px
}
.mep-independent-mini-pipeline b{
  display:block;
  color:#273a34;
  font-size:21px
}
.mep-independent-mini-pipeline small{
  display:block;
  color:#7d8a86;
  font-size:9px
}
.mep-independent-next-module{
  margin-top:10px;
  padding:12px;
  border-radius:12px;
  background:#eef5ff
}
.mep-independent-next-module b{
  display:block;
  color:#31528b;
  font-size:11px
}
.mep-independent-next-module p{
  margin:4px 0 0;
  color:#7487a8;
  font-size:10px;
  line-height:1.45
}

.mep-independent-launch-state{
  display:flex;
  align-items:center;
  gap:13px;
  padding:13px;
  border-radius:13px;
  background:#f8faf9
}
.mep-independent-launch-state>strong{
  display:grid;
  place-items:center;
  min-width:54px;
  height:54px;
  border-radius:13px;
  background:#fff;
  color:#21634f;
  font-size:21px;
  box-shadow:0 2px 10px rgba(30,50,44,.06)
}
.mep-independent-launch-state b{
  color:#30413b;
  font-size:12px
}
.mep-independent-launch-state p{
  margin:3px 0 0;
  color:#7d8b87;
  font-size:10px;
  line-height:1.45
}
.mep-independent-readiness-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin-top:10px
}
.mep-independent-readiness-list>div{
  display:grid;
  grid-template-columns:20px minmax(0,1fr) auto;
  align-items:center;
  gap:5px;
  padding:8px 9px;
  border:1px solid #e6ecea;
  border-radius:10px;
  background:#fcfdfd;
  color:#88938f
}
.mep-independent-readiness-list>div.is-done{
  color:#296b55;
  background:#f2faf7;
  border-color:#d2e9e0
}
.mep-independent-readiness-list span{
  font-weight:950
}
.mep-independent-readiness-list b{
  font-size:10px
}
.mep-independent-readiness-list small{
  font-size:8px;
  font-weight:800
}

.mep-independent-quick-actions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-top:12px
}
.mep-independent-quick-actions a{
  display:grid;
  grid-template-columns:33px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:9px;
  min-width:0;
  padding:12px;
  border:1px solid #dde7e3;
  border-radius:13px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease
}
.mep-independent-quick-actions a:hover{
  transform:translateY(-1px);
  border-color:#bcd9ce;
  box-shadow:0 6px 18px rgba(31,55,48,.06)
}
.mep-independent-quick-actions span{
  grid-row:1 / 3;
  display:grid;
  place-items:center;
  width:33px;
  height:33px;
  border-radius:9px;
  background:#f0f6f4;
  font-size:16px
}
.mep-independent-quick-actions b{
  align-self:end;
  color:#30413b;
  font-size:10px
}
.mep-independent-quick-actions small{
  align-self:start;
  color:#84908c;
  font-size:8px;
  line-height:1.35
}

@media(max-width:1050px){
  .mep-independent-dashboard-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .mep-independent-quick-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media(max-width:800px){
  .mep-independent-dashboard-grid{
    grid-template-columns:1fr
  }
  .mep-independent-dashboard-head{
    flex-direction:column
  }
  .mep-independent-readiness{
    align-items:flex-start
  }
}

@media(max-width:600px){
  .mep-independent-dashboard{
    padding:17px 13px;
    border-radius:17px
  }
  .mep-independent-dashboard-kpis,
  .mep-independent-quick-actions{
    grid-template-columns:1fr
  }
  .mep-independent-capacity-values{
    grid-template-columns:1fr
  }
  .mep-independent-readiness-list{
    grid-template-columns:1fr
  }
  .mep-independent-nav{
    margin-left:-4px;
    margin-right:-4px
  }
}


/* =========================================================
   MEP V04 — CRM Prospects & Clients
   ========================================================= */

.mep-crm-page{
  --crm-line:#dde7e3;
  --crm-soft:#f7faf9;
  --crm-text:#263b34;
  --crm-muted:#7c8b86;
  --crm-green:#246a54
}
.mep-crm-hero-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap
}
.mep-crm-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:18px 0
}
.mep-crm-kpis article{
  min-width:0;
  padding:15px;
  border:1px solid var(--crm-line);
  border-radius:15px;
  background:#fff
}
.mep-crm-kpis article.is-warning{
  border-color:#efc7ad;
  background:#fff8f1
}
.mep-crm-kpis article.is-success{
  border-color:#bde0d1;
  background:#f2faf7
}
.mep-crm-kpis small{
  display:block;
  margin-bottom:5px;
  color:var(--crm-muted);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-crm-kpis b{
  display:block;
  color:var(--crm-text);
  font-size:21px;
  line-height:1.15;
  overflow-wrap:anywhere
}
.mep-crm-kpis span{
  display:block;
  margin-top:4px;
  color:#8a9692;
  font-size:9px
}

.mep-crm-pipeline{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:7px;
  margin-bottom:17px
}
.mep-crm-stage{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  gap:8px;
  min-width:0;
  padding:11px;
  border:1px solid var(--crm-line);
  border-radius:13px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease
}
.mep-crm-stage:hover{
  transform:translateY(-1px);
  border-color:#b8d7cb;
  box-shadow:0 5px 17px rgba(31,55,48,.06)
}
.mep-crm-stage.is-filtered{
  border-color:#6eaa95;
  box-shadow:0 0 0 2px rgba(36,106,84,.08)
}
.mep-crm-stage>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:#f5f8f7;
  font-size:16px
}
.mep-crm-stage small{
  display:block;
  color:#7c8985;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase
}
.mep-crm-stage b{
  display:inline-block;
  margin-right:5px;
  color:#2d4039;
  font-size:16px
}
.mep-crm-stage em{
  color:#899692;
  font-size:8px;
  font-style:normal
}

.mep-crm-shell{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(330px,.8fr);
  gap:14px;
  align-items:start
}
.mep-crm-main,
.mep-crm-sidebar{
  min-width:0
}
.mep-crm-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:11px
}
.mep-crm-toolbar>form{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  min-width:0
}
.mep-crm-search{
  display:flex;
  align-items:center;
  gap:5px;
  min-width:220px;
  height:40px;
  padding:0 9px;
  border:1px solid #d9e3df;
  border-radius:10px;
  background:#fff
}
.mep-crm-search input{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  font:inherit;
  font-size:12px
}
.mep-crm-toolbar select{
  min-height:40px;
  border:1px solid #d9e3df;
  border-radius:10px;
  background:#fff;
  padding:0 9px;
  color:#495b55;
  font-size:10px
}
.mep-crm-reset,
.mep-crm-archive-link{
  color:#61756e;
  font-size:9px;
  font-weight:850;
  text-decoration:none
}
.mep-crm-archive-link{
  flex:0 0 auto
}

.mep-crm-list{
  display:flex;
  flex-direction:column;
  gap:9px
}
.mep-crm-card{
  padding:14px;
  border:1px solid var(--crm-line);
  border-left:4px solid #d6e0dc;
  border-radius:14px;
  background:#fff
}
.mep-crm-card.is-contacted{border-left-color:#81a7e8}
.mep-crm-card.is-discussion{border-left-color:#8b78d2}
.mep-crm-card.is-quote{border-left-color:#d8a349}
.mep-crm-card.is-won{border-left-color:#4ba77e}
.mep-crm-card.is-lost{border-left-color:#c68282}
.mep-crm-card.has-overdue{
  box-shadow:inset 0 0 0 1px #efc4ac
}
.mep-crm-card-top{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:9px
}
.mep-crm-avatar{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:11px;
  background:#eef6f3;
  color:#2d6d58;
  font-size:15px;
  font-weight:950
}
.mep-crm-card-name{
  min-width:0
}
.mep-crm-card-name>a{
  display:block;
  overflow:hidden;
  color:#263a33;
  font-size:13px;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-decoration:none
}
.mep-crm-card-name>span{
  display:block;
  margin-top:2px;
  overflow:hidden;
  color:#81908b;
  font-size:9px;
  text-overflow:ellipsis;
  white-space:nowrap
}
.mep-crm-stage-pill{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:5px 7px;
  border-radius:999px;
  background:#f1f5f3;
  color:#60736c;
  font-size:8px;
  font-weight:900;
  white-space:nowrap
}
.mep-crm-stage-pill.is-won{
  color:#23664f;
  background:#e8f6f0
}
.mep-crm-stage-pill.is-lost{
  color:#8a4e4e;
  background:#faeeee
}
.mep-crm-card-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin-top:11px
}
.mep-crm-card-metrics>div{
  min-width:0;
  padding:8px 9px;
  border-radius:9px;
  background:#f8faf9
}
.mep-crm-card-metrics small{
  display:block;
  color:#8a9692;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-crm-card-metrics b{
  display:block;
  margin-top:2px;
  color:#3b4d47;
  font-size:10px;
  overflow-wrap:anywhere
}
.mep-crm-card-metrics .is-overdue{
  background:#fff1e9
}
.mep-crm-card-metrics .is-overdue b{
  color:#9a542d
}
.mep-crm-card-metrics .is-today{
  background:#fff9e9
}
.mep-crm-card-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px
}
.mep-crm-card-meta span{
  color:#82908c;
  font-size:8px
}
.mep-crm-card-actions{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid #edf1ef
}
.mep-crm-card-actions form{
  margin:0
}
.mep-crm-card-actions select{
  min-height:30px;
  border:1px solid #dce4e1;
  border-radius:8px;
  background:#fff;
  padding:0 7px;
  color:#52645e;
  font-size:9px
}
.mep-crm-card-actions>a{
  color:#2f6b57;
  font-size:9px;
  font-weight:850;
  text-decoration:none
}

.mep-crm-form-panel{
  position:sticky;
  top:90px;
  padding:17px;
  border:1px solid var(--crm-line);
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 30px rgba(31,55,48,.05)
}
.mep-crm-panel-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px
}
.mep-crm-panel-title h2{
  margin:0;
  color:#283b34;
  font-size:18px
}
.mep-crm-panel-title>a{
  color:#6e817a;
  font-size:9px;
  font-weight:850;
  text-decoration:none
}
.mep-crm-form{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-crm-form>label,
.mep-crm-fields>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0
}
.mep-crm-form label>span{
  color:#52645d;
  font-size:9px;
  font-weight:900
}
.mep-crm-form input,
.mep-crm-form select,
.mep-crm-form textarea{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:8px 9px;
  color:#2c3d37;
  font:500 11px/1.4 inherit;
  outline:none
}
.mep-crm-form textarea{
  min-height:92px;
  resize:vertical
}
.mep-crm-form input:focus,
.mep-crm-form select:focus,
.mep-crm-form textarea:focus{
  border-color:#6bad96;
  box-shadow:0 0 0 3px rgba(36,106,84,.08)
}
.mep-crm-fields{
  display:grid;
  gap:8px
}
.mep-crm-fields.two{
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.mep-crm-fields.three{
  grid-template-columns:minmax(0,1.2fr) minmax(85px,.6fr) minmax(85px,.6fr)
}

.mep-crm-empty{
  display:grid;
  place-items:center;
  min-height:360px;
  padding:30px;
  border:1px dashed #d8e2de;
  border-radius:16px;
  background:#fafcfc;
  text-align:center
}
.mep-crm-empty>span{
  font-size:37px
}
.mep-crm-empty h2{
  margin:8px 0 4px;
  color:#32443e;
  font-size:19px
}
.mep-crm-empty p{
  max-width:460px;
  margin:0 0 14px;
  color:#7d8d87;
  font-size:11px;
  line-height:1.55
}

.mep-crm-detail{
  margin-top:18px;
  padding:20px;
  border:1px solid var(--crm-line);
  border-radius:18px;
  background:#fff
}
.mep-crm-detail-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:15px
}
.mep-crm-detail-head h2{
  margin:0;
  color:#263a33;
  font-size:23px
}
.mep-crm-detail-head>div:first-child>p:not(.mep-work-eyebrow){
  margin:4px 0 0;
  color:#768781;
  font-size:10px
}
.mep-crm-detail-head a{
  color:#2b6a55;
  text-decoration:none
}
.mep-crm-detail-actions{
  display:flex;
  gap:7px;
  flex-wrap:wrap
}
.mep-crm-detail-actions form{
  margin:0
}
.mep-crm-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:12px;
  margin-top:15px
}
.mep-crm-contact-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px
}
.mep-crm-contact-summary>div{
  padding:11px;
  border-radius:11px;
  background:#f7faf9
}
.mep-crm-contact-summary small{
  display:block;
  color:#86938f;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase
}
.mep-crm-contact-summary b{
  display:block;
  margin-top:3px;
  color:#344741;
  font-size:10px;
  overflow-wrap:anywhere
}
.mep-crm-activity-form{
  padding:12px;
  border-radius:12px;
  background:#f8faf9
}
.mep-crm-activity-form>div{
  display:grid;
  grid-template-columns:130px minmax(0,1fr) auto;
  gap:8px;
  align-items:end
}
.mep-crm-activity-form label{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0
}
.mep-crm-activity-form label>span{
  color:#697b74;
  font-size:8px;
  font-weight:900
}
.mep-crm-activity-form input,
.mep-crm-activity-form select{
  width:100%;
  min-height:38px;
  box-sizing:border-box;
  border:1px solid #d9e2df;
  border-radius:8px;
  padding:7px 8px;
  background:#fff;
  font:inherit;
  font-size:10px
}
.mep-crm-timeline{
  position:relative;
  margin-top:16px;
  padding-left:8px
}
.mep-crm-timeline:before{
  content:"";
  position:absolute;
  top:6px;
  bottom:6px;
  left:21px;
  width:1px;
  background:#dce6e2
}
.mep-crm-timeline article{
  position:relative;
  display:grid;
  grid-template-columns:29px minmax(0,1fr);
  gap:10px;
  padding:8px 0
}
.mep-crm-timeline article>span{
  z-index:1;
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  border:1px solid #dce5e2;
  border-radius:50%;
  background:#fff;
  font-size:12px
}
.mep-crm-timeline b{
  color:#34463f;
  font-size:10px
}
.mep-crm-timeline p{
  margin:2px 0;
  color:#697b75;
  font-size:10px;
  line-height:1.5
}
.mep-crm-timeline small{
  color:#909a97;
  font-size:8px
}
.mep-crm-timeline-empty{
  padding:14px;
  color:#83908c;
  font-size:10px;
  text-align:center
}

.mep-independent-mini-pipeline>div.is-alert{
  background:#fff1e9
}
.mep-independent-mini-pipeline>div.is-alert b{
  color:#9c542d
}
.mep-independent-next-module.is-live{
  background:#eef8f4
}
.mep-independent-next-module.is-live b{
  color:#286850
}
.mep-independent-next-module.is-live a{
  color:#286850;
  font-weight:900;
  text-decoration:none
}

@media(max-width:1150px){
  .mep-crm-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-crm-pipeline{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-crm-shell{
    grid-template-columns:1fr
  }
  .mep-crm-form-panel{
    position:static
  }
}

@media(max-width:760px){
  .mep-crm-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .mep-crm-toolbar{
    align-items:flex-start;
    flex-direction:column
  }
  .mep-crm-toolbar>form{
    width:100%
  }
  .mep-crm-search{
    width:100%;
    min-width:0
  }
  .mep-crm-toolbar select{
    flex:1 1 140px
  }
  .mep-crm-card-metrics,
  .mep-crm-detail-grid{
    grid-template-columns:1fr
  }
  .mep-crm-activity-form>div{
    grid-template-columns:1fr
  }
}

@media(max-width:560px){
  .mep-crm-kpis,
  .mep-crm-pipeline{
    grid-template-columns:1fr
  }
  .mep-crm-card-top{
    grid-template-columns:38px minmax(0,1fr)
  }
  .mep-crm-stage-pill{
    grid-column:1 / -1;
    justify-self:start
  }
  .mep-crm-fields.two,
  .mep-crm-fields.three,
  .mep-crm-contact-summary{
    grid-template-columns:1fr
  }
  .mep-crm-form input,
  .mep-crm-form select,
  .mep-crm-form textarea,
  .mep-crm-toolbar input,
  .mep-crm-toolbar select,
  .mep-crm-activity-form input,
  .mep-crm-activity-form select{
    font-size:16px
  }
  .mep-crm-detail{
    padding:15px
  }
  .mep-crm-detail-head{
    flex-direction:column
  }
}


/* =========================================================
   MEP V05 — Missions & prestations
   ========================================================= */

.mep-missions-page{
  --mission-line:#dde7e3;
  --mission-soft:#f7faf9;
  --mission-text:#263b34;
  --mission-muted:#7d8c87
}
.mep-mission-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:18px 0
}
.mep-mission-kpis article{
  min-width:0;
  padding:15px;
  border:1px solid var(--mission-line);
  border-radius:15px;
  background:#fff
}
.mep-mission-kpis article.is-warning{
  border-color:#efc6aa;
  background:#fff7ef
}
.mep-mission-kpis article.is-success{
  border-color:#bce0d0;
  background:#f1faf6
}
.mep-mission-kpis small{
  display:block;
  margin-bottom:5px;
  color:#82908b;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-mission-kpis b{
  display:block;
  color:#293d35;
  font-size:21px;
  line-height:1.15;
  overflow-wrap:anywhere
}
.mep-mission-kpis span{
  display:block;
  margin-top:4px;
  color:#8a9793;
  font-size:9px
}

.mep-mission-shell{
  display:grid;
  grid-template-columns:minmax(0,1.75fr) minmax(350px,.85fr);
  gap:14px;
  align-items:start
}
.mep-mission-main,
.mep-mission-sidebar{
  min-width:0
}
.mep-mission-list{
  display:flex;
  flex-direction:column;
  gap:9px
}
.mep-mission-card{
  padding:14px;
  border:1px solid var(--mission-line);
  border-left:4px solid #bfcac6;
  border-radius:14px;
  background:#fff
}
.mep-mission-card.is-active{border-left-color:#45a67c}
.mep-mission-card.is-planned{border-left-color:#74a0df}
.mep-mission-card.is-lead{border-left-color:#b28bd2}
.mep-mission-card.is-paused{border-left-color:#d6aa59}
.mep-mission-card.is-completed{border-left-color:#5aa47f}
.mep-mission-card.is-cancelled{border-left-color:#c58a8a}
.mep-mission-card.is-late{
  box-shadow:inset 0 0 0 1px #efc1a5
}
.mep-mission-card-head{
  display:grid;
  grid-template-columns:39px minmax(0,1fr) auto;
  align-items:center;
  gap:9px
}
.mep-mission-icon{
  display:grid;
  place-items:center;
  width:39px;
  height:39px;
  border-radius:11px;
  background:#f1f6f4;
  font-size:17px
}
.mep-mission-title{
  min-width:0
}
.mep-mission-title>b{
  display:block;
  color:#293d35;
  font-size:13px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.mep-mission-title>span{
  display:block;
  margin-top:2px;
  color:#83918c;
  font-size:9px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.mep-mission-status-pill{
  padding:5px 8px;
  border-radius:999px;
  background:#f1f5f3;
  color:#61746d;
  font-size:8px;
  font-weight:900;
  white-space:nowrap
}
.mep-mission-status-pill.is-active,
.mep-mission-status-pill.is-completed{
  color:#24674f;
  background:#e9f6f1
}
.mep-mission-status-pill.is-cancelled{
  color:#8a5050;
  background:#faeeee
}
.mep-mission-card-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  margin-top:11px
}
.mep-mission-card-grid>div{
  min-width:0;
  padding:9px;
  border-radius:10px;
  background:#f8faf9
}
.mep-mission-card-grid>div.is-warning{
  background:#fff2e9
}
.mep-mission-card-grid small{
  display:block;
  color:#889590;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-mission-card-grid b{
  display:block;
  margin-top:2px;
  color:#374a43;
  font-size:11px;
  overflow-wrap:anywhere
}
.mep-mission-card-grid span{
  display:block;
  margin-top:2px;
  color:#8b9793;
  font-size:8px
}
.mep-mission-card-actions{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid #edf1ef
}
.mep-mission-card-actions form{
  margin:0
}
.mep-mission-card-actions select{
  min-height:30px;
  border:1px solid #dbe4e1;
  border-radius:8px;
  background:#fff;
  padding:0 7px;
  color:#52655e;
  font-size:9px
}
.mep-mission-card-actions a,
.mep-mission-card-actions button{
  border:0;
  background:transparent;
  color:#2e6b56;
  padding:0;
  font:inherit;
  font-size:9px;
  font-weight:850;
  text-decoration:none;
  cursor:pointer
}

.mep-mission-form-panel{
  position:sticky;
  top:90px;
  padding:17px;
  border:1px solid var(--mission-line);
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 30px rgba(31,55,48,.05)
}
.mep-mission-form{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-mission-form>label,
.mep-mission-fields>label,
.mep-service-form>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0
}
.mep-mission-form label>span,
.mep-service-form label>span{
  color:#52645d;
  font-size:9px;
  font-weight:900
}
.mep-mission-form input,
.mep-mission-form select,
.mep-mission-form textarea,
.mep-service-form input,
.mep-service-form select,
.mep-service-form textarea{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:8px 9px;
  color:#2d3f38;
  font:500 11px/1.4 inherit;
  outline:none
}
.mep-mission-form textarea,
.mep-service-form textarea{
  min-height:88px;
  resize:vertical
}
.mep-mission-form input:focus,
.mep-mission-form select:focus,
.mep-mission-form textarea:focus,
.mep-service-form input:focus,
.mep-service-form select:focus,
.mep-service-form textarea:focus{
  border-color:#6cab95;
  box-shadow:0 0 0 3px rgba(36,106,84,.08)
}
.mep-mission-fields{
  display:grid;
  gap:8px
}
.mep-mission-fields.two{
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.mep-mission-fields.three{
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.mep-mission-fields.four{
  grid-template-columns:repeat(4,minmax(0,1fr))
}
.mep-mission-live-calc{
  padding:12px;
  border:1px dashed #cbdad4;
  border-radius:12px;
  background:#f8fbfa
}
.mep-mission-live-calc small{
  display:block;
  color:#83918c;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase
}
.mep-mission-live-calc b{
  display:block;
  margin:4px 0;
  color:#2c674f;
  font-size:13px
}
.mep-mission-live-calc span{
  color:#84928d;
  font-size:9px
}

.mep-service-catalog{
  margin-top:18px;
  padding:20px;
  border:1px solid var(--mission-line);
  border-radius:18px;
  background:#fff
}
.mep-service-catalog-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:15px;
  margin-bottom:15px
}
.mep-service-catalog-head h2{
  margin:0;
  color:#293d35;
  font-size:22px
}
.mep-service-catalog-head>div>p:not(.mep-work-eyebrow){
  max-width:760px;
  margin:5px 0 0;
  color:#7d8c87;
  font-size:10px;
  line-height:1.5
}
.mep-service-catalog-head>span{
  padding:6px 9px;
  border-radius:999px;
  background:#edf6f2;
  color:#2e6b56;
  font-size:9px;
  font-weight:900
}
.mep-service-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:13px;
  align-items:start
}
.mep-service-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px
}
.mep-service-list>article{
  padding:13px;
  border:1px solid #e1e8e5;
  border-radius:13px;
  background:#fbfcfc
}
.mep-service-list>article>div:first-child{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:8px;
  align-items:center
}
.mep-service-list>article>div:first-child>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#eef6f3
}
.mep-service-list b{
  display:block;
  color:#31453d;
  font-size:11px
}
.mep-service-list small{
  display:block;
  margin-top:2px;
  color:#83918c;
  font-size:8px
}
.mep-service-list p{
  min-height:29px;
  margin:9px 0;
  color:#778781;
  font-size:9px;
  line-height:1.5
}
.mep-service-actions{
  display:flex;
  gap:8px;
  align-items:center
}
.mep-service-actions form{
  margin:0
}
.mep-service-actions a,
.mep-service-actions button{
  border:0;
  background:transparent;
  color:#2e6b56;
  padding:0;
  font:inherit;
  font-size:8px;
  font-weight:850;
  text-decoration:none;
  cursor:pointer
}
.mep-service-form{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:15px;
  border:1px solid #e0e8e5;
  border-radius:14px;
  background:#f9fbfa
}
.mep-service-archives{
  margin-top:12px;
  border-top:1px solid #edf1ef;
  padding-top:10px
}
.mep-service-archives summary{
  color:#657872;
  font-size:9px;
  font-weight:900;
  cursor:pointer
}
.mep-service-archives>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:7px;
  padding:7px 9px;
  border-radius:9px;
  background:#f8faf9;
  color:#596b65;
  font-size:9px
}
.mep-service-archives form{
  margin:0
}
.mep-service-archives button{
  border:0;
  background:transparent;
  color:#2e6b56;
  font:inherit;
  font-size:8px;
  font-weight:900;
  cursor:pointer
}
.mep-crm-empty.is-small{
  min-height:220px
}

@media(max-width:1150px){
  .mep-mission-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-mission-shell,
  .mep-service-layout{
    grid-template-columns:1fr
  }
  .mep-mission-form-panel{
    position:static
  }
}

@media(max-width:800px){
  .mep-mission-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .mep-mission-fields.four{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .mep-service-list{
    grid-template-columns:1fr
  }
}

@media(max-width:600px){
  .mep-mission-kpis,
  .mep-mission-card-grid,
  .mep-mission-fields.two,
  .mep-mission-fields.three,
  .mep-mission-fields.four{
    grid-template-columns:1fr
  }
  .mep-mission-card-head{
    grid-template-columns:39px minmax(0,1fr)
  }
  .mep-mission-status-pill{
    grid-column:1 / -1;
    justify-self:start
  }
  .mep-mission-form input,
  .mep-mission-form select,
  .mep-mission-form textarea,
  .mep-service-form input,
  .mep-service-form select,
  .mep-service-form textarea{
    font-size:16px
  }
  .mep-service-catalog{
    padding:15px
  }
  .mep-service-catalog-head{
    flex-direction:column
  }
}

/* =========================================================
   MEP V06 — Devis & factures
   ========================================================= */
.mep-doc-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:18px 0}.mep-doc-kpis article{min-width:0;padding:15px;border:1px solid #dde7e3;border-radius:15px;background:#fff}.mep-doc-kpis article.is-warning{border-color:#efc3aa;background:#fff6ee}.mep-doc-kpis article.is-success{border-color:#bde0d1;background:#f1faf6}.mep-doc-kpis small{display:block;margin-bottom:5px;color:#82908b;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.mep-doc-kpis b{display:block;color:#293d35;font-size:20px;overflow-wrap:anywhere}.mep-doc-kpis span{display:block;margin-top:4px;color:#8a9793;font-size:9px}
.mep-doc-shell{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(380px,.9fr);gap:14px;align-items:start}.mep-doc-main,.mep-doc-sidebar{min-width:0}.mep-doc-list{display:flex;flex-direction:column;gap:9px}.mep-doc-card{padding:14px;border:1px solid #dde7e3;border-left:4px solid #97a9a2;border-radius:14px;background:#fff}.mep-doc-card.is-quote{border-left-color:#7c94d4}.mep-doc-card.is-invoice{border-left-color:#4b9b78}.mep-doc-card.is-credit{border-left-color:#c69258}.mep-doc-card.is-overdue{box-shadow:inset 0 0 0 1px #edb999}.mep-doc-card-head{display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:9px;align-items:center}.mep-doc-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#f1f6f4;font-size:17px}.mep-doc-card-title{min-width:0}.mep-doc-card-title>a{display:block;color:#293d35;font-size:13px;font-weight:900;text-decoration:none}.mep-doc-card-title>span{display:block;margin-top:2px;overflow:hidden;color:#82908b;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.mep-doc-status{padding:5px 8px;border-radius:999px;background:#f0f5f3;color:#61746d;font-size:8px;font-weight:900}.mep-doc-status.is-overdue{background:#fff0e7;color:#9a4f28}.mep-doc-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:11px}.mep-doc-card-grid>div{min-width:0;padding:9px;border-radius:10px;background:#f8faf9}.mep-doc-card-grid small{display:block;color:#899691;font-size:7px;font-weight:900;text-transform:uppercase}.mep-doc-card-grid b{display:block;margin-top:2px;color:#374a43;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mep-doc-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;padding-top:9px;border-top:1px solid #edf1ef}.mep-doc-card-actions a{color:#2e6b56;font-size:9px;font-weight:850;text-decoration:none}
.mep-doc-form-panel{position:sticky;top:90px;padding:17px;border:1px solid #dde7e3;border-radius:17px;background:#fff;box-shadow:0 10px 30px rgba(31,55,48,.05)}.mep-doc-form,.mep-doc-settings-form{display:flex;flex-direction:column;gap:10px}.mep-doc-form>label,.mep-doc-settings-form>label,.mep-doc-fields>label,.mep-doc-line>label{display:flex;flex-direction:column;gap:5px;min-width:0}.mep-doc-form label>span,.mep-doc-settings-form label>span,.mep-doc-line label>span{color:#52645d;font-size:9px;font-weight:900}.mep-doc-form label>small{color:#83908c;font-size:8px;line-height:1.45}.mep-doc-form input,.mep-doc-form select,.mep-doc-form textarea,.mep-doc-settings-form input,.mep-doc-settings-form select,.mep-doc-settings-form textarea{width:100%;min-height:40px;box-sizing:border-box;border:1px solid #d8e2de;border-radius:9px;background:#fff;padding:8px 9px;color:#2d3f38;font:500 11px/1.4 inherit;outline:none}.mep-doc-form textarea,.mep-doc-settings-form textarea{min-height:78px;resize:vertical}.mep-doc-fields{display:grid;gap:8px}.mep-doc-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.mep-doc-fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.mep-doc-lines-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}.mep-doc-lines-head b{display:block;color:#334740;font-size:11px}.mep-doc-lines-head small{display:block;color:#87938f;font-size:8px}.mep-doc-lines-head button{border:1px solid #cfe0da;border-radius:8px;background:#eef7f3;color:#2e6955;padding:6px 9px;font:inherit;font-size:9px;font-weight:900;cursor:pointer}.mep-doc-lines{display:flex;flex-direction:column;gap:7px}.mep-doc-line{display:grid;grid-template-columns:minmax(170px,2fr) 70px 85px 90px 75px 30px;gap:6px;align-items:end;padding:9px;border:1px solid #e0e8e5;border-radius:10px;background:#f9fbfa}.mep-doc-line input,.mep-doc-line select{min-height:36px}.mep-doc-remove-line{display:grid;place-items:center;width:30px;height:36px;border:0;border-radius:8px;background:#f7ecea;color:#8c4b45;font-size:17px;cursor:pointer}.mep-doc-live-total{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px;border-radius:11px;background:#eef7f3}.mep-doc-live-total>div{padding:7px;border-radius:8px;background:#fff}.mep-doc-live-total small{display:block;color:#82918c;font-size:7px;font-weight:900;text-transform:uppercase}.mep-doc-live-total b{display:block;margin-top:2px;color:#2d6752;font-size:11px}
.mep-doc-detail{margin-top:18px;padding:20px;border:1px solid #dde7e3;border-radius:18px;background:#fff}.mep-doc-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.mep-doc-detail-head h2{margin:0;color:#293d35;font-size:23px}.mep-doc-detail-head>div:first-child>p:not(.mep-work-eyebrow){margin:4px 0 0;color:#788983;font-size:10px}.mep-doc-detail-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.mep-doc-detail-actions form{margin:0}.mep-doc-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:15px}.mep-doc-detail-grid article{min-width:0;padding:12px;border-radius:11px;background:#f7faf9}.mep-doc-detail-grid small{display:block;color:#84918d;font-size:8px;font-weight:900;text-transform:uppercase}.mep-doc-detail-grid b{display:block;margin-top:3px;color:#344840;font-size:11px}.mep-doc-detail-grid p{margin:4px 0 0;color:#798983;font-size:9px;line-height:1.45}.mep-doc-detail-lines{margin-top:15px;border:1px solid #e0e7e4;border-radius:11px;overflow:hidden}.mep-doc-detail-line{display:grid;grid-template-columns:minmax(0,2.2fr) .7fr .8fr .6fr .9fr;gap:8px;padding:9px 10px;border-top:1px solid #e7ecea;font-size:9px}.mep-doc-detail-line:first-child{border-top:0}.mep-doc-detail-line.is-head{background:#f1f6f4;color:#61746d;font-size:8px;font-weight:900;text-transform:uppercase}.mep-doc-detail-totals{width:min(420px,100%);margin:13px 0 0 auto}.mep-doc-detail-totals>div{display:flex;justify-content:space-between;gap:20px;padding:7px 9px;border-bottom:1px solid #e5ebe8;font-size:10px}.mep-doc-detail-totals>div.is-total{background:#eef7f3;color:#28634f;font-size:12px;font-weight:900}
.mep-doc-settings{margin-top:18px;border:1px solid #dde7e3;border-radius:16px;background:#fff;overflow:hidden}.mep-doc-settings>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;cursor:pointer;list-style:none}.mep-doc-settings>summary::-webkit-details-marker{display:none}.mep-doc-settings>summary>div{display:flex;align-items:center;gap:10px}.mep-doc-settings>summary>div>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#eef6f3}.mep-doc-settings>summary b{display:block;color:#33473f;font-size:11px}.mep-doc-settings>summary small{display:block;margin-top:2px;color:#84918d;font-size:8px}.mep-doc-settings>summary em{padding:5px 8px;border-radius:999px;background:#edf6f2;color:#2e6b56;font-size:8px;font-style:normal;font-weight:900}.mep-doc-settings-form{padding:17px;border-top:1px solid #e7ecea}.mep-doc-legal-disclaimer{margin:2px 0;padding:10px;border-radius:9px;background:#fff8e9;color:#84642d;font-size:9px;line-height:1.5}.mep-independent-next-module.has-warning{background:#fff5ec}.mep-independent-next-module.has-warning b{color:#8b5428}
@media(max-width:1200px){.mep-doc-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.mep-doc-shell{grid-template-columns:1fr}.mep-doc-form-panel{position:static}}@media(max-width:800px){.mep-doc-card-grid,.mep-doc-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mep-doc-line{grid-template-columns:repeat(2,minmax(0,1fr))}.mep-doc-line .is-description{grid-column:1/-1}.mep-doc-remove-line{width:100%}.mep-doc-detail-line{grid-template-columns:1fr 1fr}.mep-doc-detail-line span:first-child{grid-column:1/-1}.mep-doc-detail-line.is-head{display:none}}@media(max-width:600px){.mep-doc-kpis,.mep-doc-card-grid,.mep-doc-fields.two,.mep-doc-fields.three,.mep-doc-live-total,.mep-doc-detail-grid{grid-template-columns:1fr}.mep-doc-card-head{grid-template-columns:39px minmax(0,1fr)}.mep-doc-status{grid-column:1/-1;justify-self:start}.mep-doc-line{grid-template-columns:1fr}.mep-doc-form input,.mep-doc-form select,.mep-doc-form textarea,.mep-doc-settings-form input,.mep-doc-settings-form select,.mep-doc-settings-form textarea{font-size:16px}.mep-doc-detail{padding:15px}.mep-doc-detail-head{flex-direction:column}.mep-doc-detail-actions{justify-content:flex-start}}


/* =========================================================
   MEP V07 — Finances
   ========================================================= */

.mep-finance-page{
  --fin-line:#dce6e2;
  --fin-soft:#f7faf9;
  --fin-text:#263b34;
  --fin-muted:#7d8d87
}
.mep-finance-period{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:18px 0 10px;
  padding:14px 16px;
  border:1px solid var(--fin-line);
  border-radius:15px;
  background:#fff
}
.mep-finance-period h2{
  margin:0;
  color:#2a3e36;
  font-size:19px
}
.mep-finance-period form{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap
}
.mep-finance-period select{
  min-height:38px;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:0 9px;
  color:#4f625b;
  font-size:10px
}

.mep-finance-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin-bottom:10px
}
.mep-finance-kpis article{
  min-width:0;
  padding:15px;
  border:1px solid var(--fin-line);
  border-radius:15px;
  background:#fff
}
.mep-finance-kpis article.is-success{
  border-color:#b9ddce;
  background:#f2faf7
}
.mep-finance-kpis article.is-warning{
  border-color:#efc7ac;
  background:#fff7ef
}
.mep-finance-kpis small{
  display:block;
  margin-bottom:5px;
  color:#81908a;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-finance-kpis b{
  display:block;
  color:#293d35;
  font-size:19px;
  line-height:1.15;
  overflow-wrap:anywhere
}
.mep-finance-kpis span{
  display:block;
  margin-top:4px;
  color:#899691;
  font-size:8px;
  line-height:1.4
}

.mep-finance-alerts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px
}
.mep-finance-alerts>a,
.mep-finance-alerts>div{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:10px;
  border:1px solid var(--fin-line);
  border-radius:12px;
  background:#fff;
  color:inherit;
  text-decoration:none
}
.mep-finance-alerts .is-danger{
  border-color:#efbda2;
  background:#fff3eb
}
.mep-finance-alerts .is-warning{
  border-color:#ead7a5;
  background:#fffbef
}
.mep-finance-alerts>*>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#f2f6f4
}
.mep-finance-alerts small{
  display:block;
  color:#84918d;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-finance-alerts b{
  display:block;
  margin-top:2px;
  color:#33473f;
  font-size:10px
}

.mep-finance-goal{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.65fr);
  gap:18px;
  align-items:center;
  margin-bottom:12px;
  padding:15px 17px;
  border:1px solid #cfe1da;
  border-radius:15px;
  background:linear-gradient(135deg,#f0faf6,#fff)
}
.mep-finance-goal h3{
  margin:0 0 4px;
  color:#2b5f4d;
  font-size:17px
}
.mep-finance-goal p:not(.mep-work-eyebrow){
  margin:0;
  color:#7a8b85;
  font-size:9px;
  line-height:1.45
}
.mep-finance-goal-meter{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  align-items:center
}
.mep-finance-goal-meter>div{
  height:9px;
  border-radius:999px;
  background:#dfe9e5;
  overflow:hidden
}
.mep-finance-goal-meter span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#3d9777
}
.mep-finance-goal-meter b{
  color:#2d6b55;
  font-size:11px
}

.mep-finance-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:12px;
  margin-bottom:12px
}
.mep-finance-panel{
  min-width:0;
  padding:17px;
  border:1px solid var(--fin-line);
  border-radius:16px;
  background:#fff
}
.mep-finance-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:13px
}
.mep-finance-panel-head h3{
  margin:0;
  color:#2a3e36;
  font-size:16px
}

.mep-finance-chart{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:5px;
  align-items:end;
  height:190px;
  padding:8px 4px 0;
  border-bottom:1px solid #dfe7e4
}
.mep-finance-month{
  display:grid;
  grid-template-rows:minmax(0,1fr) 16px;
  gap:3px;
  height:100%;
  min-width:0
}
.mep-finance-bars{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:2px;
  min-height:0
}
.mep-finance-bars i{
  display:block;
  width:6px;
  min-height:2px;
  border-radius:3px 3px 0 0
}
.mep-finance-bars .is-billed,
.mep-finance-chart-legend i.is-billed{
  background:#7a91d4
}
.mep-finance-bars .is-cash,
.mep-finance-chart-legend i.is-cash{
  background:#4b9a79
}
.mep-finance-bars .is-expense,
.mep-finance-chart-legend i.is-expense{
  background:#d39a62
}
.mep-finance-month small{
  color:#899691;
  font-size:7px;
  text-align:center
}
.mep-finance-chart-legend{
  display:flex;
  gap:13px;
  flex-wrap:wrap;
  margin-top:10px
}
.mep-finance-chart-legend span{
  display:flex;
  align-items:center;
  gap:5px;
  color:#74857f;
  font-size:8px
}
.mep-finance-chart-legend i{
  display:block;
  width:9px;
  height:9px;
  border-radius:3px
}

.mep-finance-movements{
  display:flex;
  flex-direction:column
}
.mep-finance-movements>div{
  display:grid;
  grid-template-columns:31px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  padding:8px 0;
  border-top:1px solid #edf1ef
}
.mep-finance-movements>div:first-child{
  border-top:0
}
.mep-finance-movements>div>span{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:9px;
  background:#eef6f2;
  color:#2f6c57;
  font-size:13px;
  font-weight:900
}
.mep-finance-movements>div>span.is-expense,
.mep-finance-movements>div>span.is-refund{
  background:#fff2e8;
  color:#96562e
}
.mep-finance-movements b{
  display:block;
  color:#354940;
  font-size:9px
}
.mep-finance-movements small{
  display:block;
  margin-top:2px;
  color:#87948f;
  font-size:7px
}
.mep-finance-movements strong{
  font-size:9px;
  white-space:nowrap
}
.mep-finance-movements strong.is-positive{
  color:#247054
}
.mep-finance-movements strong.is-negative{
  color:#a05c34
}
.mep-finance-empty{
  padding:22px;
  color:#83908c;
  font-size:9px;
  text-align:center
}

.mep-finance-workspace{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px
}
.mep-finance-payment-panel,
.mep-finance-expense-panel{
  padding:17px;
  border:1px solid var(--fin-line);
  border-radius:16px;
  background:#fff
}
.mep-finance-payment-form,
.mep-finance-expense-form{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-finance-payment-form>label,
.mep-finance-expense-form>label,
.mep-finance-fields>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0
}
.mep-finance-payment-form label>span,
.mep-finance-expense-form label>span{
  color:#52645d;
  font-size:9px;
  font-weight:900
}
.mep-finance-payment-form input,
.mep-finance-payment-form select,
.mep-finance-expense-form input,
.mep-finance-expense-form select,
.mep-finance-expense-form textarea{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:8px 9px;
  color:#2d3f38;
  font:500 11px/1.4 inherit;
  outline:none
}
.mep-finance-expense-form textarea{
  min-height:80px;
  resize:vertical
}
.mep-finance-fields{
  display:grid;
  gap:8px
}
.mep-finance-fields.two{
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.mep-finance-fields.three{
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.mep-finance-fields.four{
  grid-template-columns:repeat(4,minmax(0,1fr))
}
.mep-finance-payment-hint{
  padding:9px 10px;
  border-radius:9px;
  background:#eef6f3;
  color:#55736a;
  font-size:8px;
  line-height:1.45
}
.mep-finance-checks{
  display:flex;
  gap:14px;
  flex-wrap:wrap
}
.mep-finance-checks label{
  display:flex;
  align-items:center;
  gap:6px;
  color:#61746d;
  font-size:8px;
  font-weight:800
}
.mep-finance-checks input{
  width:auto;
  min-height:0
}
.mep-finance-disclaimer{
  margin:0;
  padding:9px;
  border-radius:9px;
  background:#fff8e9;
  color:#84662d;
  font-size:8px;
  line-height:1.45
}

.mep-finance-expenses{
  padding:17px;
  border:1px solid var(--fin-line);
  border-radius:16px;
  background:#fff
}
.mep-finance-expenses-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  margin-bottom:11px
}
.mep-finance-expenses-head h2{
  margin:0;
  color:#2d4038;
  font-size:17px
}
.mep-finance-expense-list{
  display:flex;
  flex-direction:column;
  gap:7px
}
.mep-finance-expense-list>article{
  display:grid;
  grid-template-columns:37px minmax(150px,1.4fr) .7fr .8fr .7fr auto;
  gap:9px;
  align-items:center;
  padding:10px;
  border:1px solid #e3eae7;
  border-radius:11px;
  background:#fbfcfc
}
.mep-finance-expense-list>article.is-late{
  border-color:#efc4a8;
  background:#fff8f1
}
.mep-finance-expense-icon{
  display:grid;
  place-items:center;
  width:37px;
  height:37px;
  border-radius:10px;
  background:#fff1e7
}
.mep-finance-expense-name{
  min-width:0
}
.mep-finance-expense-name b{
  display:block;
  color:#344840;
  font-size:10px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.mep-finance-expense-name span,
.mep-finance-expense-list small{
  display:block;
  margin-top:2px;
  color:#87948f;
  font-size:7px
}
.mep-finance-expense-list>article>div>b{
  display:block;
  color:#40524c;
  font-size:9px
}
.mep-finance-expense-actions{
  display:flex;
  gap:7px;
  align-items:center
}
.mep-finance-expense-actions form{
  margin:0
}
.mep-finance-expense-actions a,
.mep-finance-expense-actions button{
  border:0;
  background:transparent;
  color:#2e6b56;
  padding:0;
  font:inherit;
  font-size:8px;
  font-weight:850;
  text-decoration:none;
  cursor:pointer
}

.mep-finance-reading{
  margin-top:13px;
  padding:15px;
  border:1px solid #d7e4df;
  border-radius:14px;
  background:#f6faf8
}
.mep-finance-reading>div{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px
}
.mep-finance-reading>div>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#fff
}
.mep-finance-reading b{
  color:#33483f;
  font-size:10px
}
.mep-finance-reading p{
  margin:4px 0 0;
  color:#70817b;
  font-size:9px;
  line-height:1.55
}

@media(max-width:1150px){
  .mep-finance-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-finance-grid,
  .mep-finance-workspace{
    grid-template-columns:1fr
  }
}

@media(max-width:850px){
  .mep-finance-alerts{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .mep-finance-goal{
    grid-template-columns:1fr
  }
  .mep-finance-expense-list>article{
    grid-template-columns:37px minmax(0,1fr) 1fr
  }
  .mep-finance-expense-list>article>div:nth-child(n+4){
    grid-column:2 / -1
  }
}

@media(max-width:600px){
  .mep-finance-period{
    align-items:flex-start;
    flex-direction:column
  }
  .mep-finance-kpis,
  .mep-finance-alerts,
  .mep-finance-fields.two,
  .mep-finance-fields.three,
  .mep-finance-fields.four{
    grid-template-columns:1fr
  }
  .mep-finance-chart{
    gap:2px
  }
  .mep-finance-bars{
    gap:1px
  }
  .mep-finance-bars i{
    width:4px
  }
  .mep-finance-expense-list>article{
    grid-template-columns:37px minmax(0,1fr)
  }
  .mep-finance-expense-list>article>div:nth-child(n+3){
    grid-column:2 / -1
  }
  .mep-finance-payment-form input,
  .mep-finance-payment-form select,
  .mep-finance-expense-form input,
  .mep-finance-expense-form select,
  .mep-finance-expense-form textarea,
  .mep-finance-period select{
    font-size:16px
  }
}


/* =========================================================
   MEP V08 — Simulateurs indépendant
   ========================================================= */

.mep-sim-page{
  --sim-line:#dce6e2;
  --sim-soft:#f7faf9;
  --sim-text:#273b34;
  --sim-muted:#7c8b86
}
.mep-sim-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:18px 0
}
.mep-sim-kpis article{
  min-width:0;
  padding:15px;
  border:1px solid var(--sim-line);
  border-radius:15px;
  background:#fff
}
.mep-sim-kpis article.is-primary{
  border-color:#b8ddd0;
  background:linear-gradient(145deg,#eef9f5,#fff)
}
.mep-sim-kpis article.is-success{
  border-color:#b8ddcd;
  background:#f1faf6
}
.mep-sim-kpis article.is-warning{
  border-color:#efc6aa;
  background:#fff7ef
}
.mep-sim-kpis small{
  display:block;
  margin-bottom:5px;
  color:#81908a;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-sim-kpis b{
  display:block;
  color:#293d35;
  font-size:19px;
  line-height:1.15;
  overflow-wrap:anywhere
}
.mep-sim-kpis span{
  display:block;
  margin-top:4px;
  color:#899691;
  font-size:8px;
  line-height:1.4
}

.mep-sim-layout{
  display:grid;
  grid-template-columns:minmax(350px,.82fr) minmax(0,1.38fr);
  gap:14px;
  align-items:start
}
.mep-sim-form-panel{
  position:sticky;
  top:90px;
  padding:17px;
  border:1px solid var(--sim-line);
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 30px rgba(31,55,48,.05)
}
.mep-sim-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:13px
}
.mep-sim-panel-head h2,
.mep-sim-panel-head h3{
  margin:0;
  color:#293d35
}
.mep-sim-panel-head h2{font-size:18px}
.mep-sim-panel-head h3{font-size:15px}
.mep-sim-panel-head>span{
  padding:5px 8px;
  border-radius:999px;
  background:#eef6f3;
  color:#2e6b56;
  font-size:8px;
  font-weight:900
}
.mep-sim-form{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-sim-form>label,
.mep-sim-fields>label,
.mep-sim-rates>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0
}
.mep-sim-form label>span{
  color:#52645d;
  font-size:9px;
  font-weight:900
}
.mep-sim-form label>small{
  color:#84918d;
  font-size:8px;
  line-height:1.45
}
.mep-sim-form input,
.mep-sim-form select,
.mep-sim-form textarea{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:8px 9px;
  color:#2d3f38;
  font:500 11px/1.4 inherit;
  outline:none
}
.mep-sim-form textarea{
  min-height:75px;
  resize:vertical
}
.mep-sim-form input:focus,
.mep-sim-form select:focus,
.mep-sim-form textarea:focus{
  border-color:#6cab95;
  box-shadow:0 0 0 3px rgba(36,106,84,.08)
}
.mep-sim-fields{
  display:grid;
  gap:8px
}
.mep-sim-fields.two{
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.mep-sim-fields.three{
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.mep-sim-rates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px
}
.mep-sim-rates label>div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  border:1px solid #d8e2de;
  border-radius:9px;
  overflow:hidden;
  background:#fff
}
.mep-sim-rates input{
  border:0;
  border-radius:0;
  box-shadow:none!important
}
.mep-sim-rates em{
  padding:0 8px;
  color:#85928e;
  font-size:8px;
  font-style:normal;
  white-space:nowrap
}
.mep-sim-rate-total{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px;
  border-radius:10px;
  background:#eef7f3;
  color:#42665a
}
.mep-sim-rate-total.is-warning{
  background:#fff0e7;
  color:#94542f
}
.mep-sim-rate-total span{
  font-size:9px;
  font-weight:800
}
.mep-sim-rate-total b{
  font-size:11px
}
.mep-sim-default-check{
  flex-direction:row!important;
  align-items:center;
  gap:7px!important
}
.mep-sim-default-check input{
  width:auto;
  min-height:0
}

.mep-sim-results{
  display:flex;
  flex-direction:column;
  gap:11px;
  min-width:0
}
.mep-sim-result-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:19px;
  border:1px solid #c9e0d7;
  border-radius:17px;
  background:
    radial-gradient(circle at 100% 0,rgba(72,122,234,.07),transparent 30%),
    linear-gradient(145deg,#f0faf6,#fff)
}
.mep-sim-result-hero h2{
  margin:0 0 4px;
  color:#23634e;
  font-size:29px
}
.mep-sim-result-hero p:not(.mep-work-eyebrow){
  margin:0;
  color:#72837d;
  font-size:10px;
  line-height:1.5
}
.mep-sim-coverage{
  min-width:145px;
  padding:11px;
  border-radius:12px;
  background:#fff;
  text-align:right
}
.mep-sim-coverage.is-good{
  border:1px solid #bee0d2
}
.mep-sim-coverage.is-warning{
  border:1px solid #efcab1;
  background:#fffaf5
}
.mep-sim-coverage span{
  display:block;
  color:#84918d;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase
}
.mep-sim-coverage b{
  display:block;
  margin-top:3px;
  color:#33483f;
  font-size:17px
}
.mep-sim-coverage small{
  display:block;
  margin-top:2px;
  color:#798a84;
  font-size:8px
}

.mep-sim-breakdown{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px
}
.mep-sim-breakdown article{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:11px;
  border:1px solid var(--sim-line);
  border-radius:12px;
  background:#fff
}
.mep-sim-breakdown article>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#f1f6f4
}
.mep-sim-breakdown small{
  display:block;
  color:#85928e;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-sim-breakdown b{
  display:block;
  margin-top:2px;
  color:#354940;
  font-size:10px;
  overflow-wrap:anywhere
}

.mep-sim-reserve-detail{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  padding:10px;
  border:1px solid var(--sim-line);
  border-radius:12px;
  background:#fff
}
.mep-sim-reserve-detail>div{
  padding:8px;
  border-radius:9px;
  background:#f8faf9
}
.mep-sim-reserve-detail span{
  display:block;
  color:#84918d;
  font-size:7px
}
.mep-sim-reserve-detail b{
  display:block;
  margin-top:2px;
  color:#3b4e47;
  font-size:9px
}

.mep-sim-test,
.mep-sim-sensitivity,
.mep-sim-reality{
  padding:17px;
  border:1px solid var(--sim-line);
  border-radius:16px;
  background:#fff
}
.mep-sim-test-grid,
.mep-sim-reality-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px
}
.mep-sim-test-grid article,
.mep-sim-reality-grid article{
  min-width:0;
  padding:11px;
  border-radius:11px;
  background:#f7faf9
}
.mep-sim-reality-grid article.is-good{
  background:#eef8f4
}
.mep-sim-reality-grid article.is-warning{
  background:#fff4eb
}
.mep-sim-test-grid small,
.mep-sim-reality-grid small{
  display:block;
  color:#84918d;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-sim-test-grid b,
.mep-sim-reality-grid b{
  display:block;
  margin-top:3px;
  color:#354940;
  font-size:11px;
  overflow-wrap:anywhere
}
.mep-sim-reality-grid span{
  display:block;
  margin-top:3px;
  color:#7c8c86;
  font-size:8px
}
.mep-sim-test-message{
  margin:9px 0 0;
  padding:10px 11px;
  border-radius:10px;
  font-size:9px;
  line-height:1.5
}
.mep-sim-test-message.is-good{
  background:#eef8f4;
  color:#2b654f
}
.mep-sim-test-message.is-warning{
  background:#fff4eb;
  color:#87542e
}
.mep-sim-empty{
  display:grid;
  place-items:center;
  min-height:140px;
  text-align:center;
  color:#7c8b86
}
.mep-sim-empty>span{font-size:25px}
.mep-sim-empty b{
  margin-top:4px;
  color:#40534c;
  font-size:11px
}
.mep-sim-empty p{
  max-width:420px;
  margin:3px 0 0;
  font-size:9px
}

.mep-sim-sensitivity-table{
  border:1px solid #e1e8e5;
  border-radius:11px;
  overflow:hidden
}
.mep-sim-sensitivity-table>div{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:9px 10px;
  border-top:1px solid #e8edeb;
  font-size:9px
}
.mep-sim-sensitivity-table>div:first-child{
  border-top:0
}
.mep-sim-sensitivity-table>div.is-head{
  background:#f1f6f4;
  color:#697b74;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase
}
.mep-sim-sensitivity-table>div.is-current{
  background:#eef8f4;
  color:#2d674f
}
.mep-sim-sensitivity-table b{
  color:#2e654f
}

.mep-sim-disclaimer{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  padding:14px;
  border:1px solid #e5d8ae;
  border-radius:13px;
  background:#fffaf0
}
.mep-sim-disclaimer>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#fff
}
.mep-sim-disclaimer b{
  color:#73582d;
  font-size:10px
}
.mep-sim-disclaimer p{
  margin:4px 0 0;
  color:#806d4c;
  font-size:9px;
  line-height:1.5
}

.mep-sim-scenarios{
  margin-top:15px;
  padding:17px;
  border:1px solid var(--sim-line);
  border-radius:16px;
  background:#fff
}
.mep-sim-scenarios-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px
}
.mep-sim-scenarios-head h2{
  margin:0;
  color:#2c4038;
  font-size:18px
}
.mep-sim-scenario-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px
}
.mep-sim-scenario-grid>article{
  padding:13px;
  border:1px solid #e0e8e5;
  border-radius:13px;
  background:#fbfcfc
}
.mep-sim-scenario-grid>article.is-default{
  border-color:#b9dccf;
  background:#f2faf7
}
.mep-sim-scenario-head{
  display:flex;
  justify-content:space-between;
  gap:10px
}
.mep-sim-scenario-head b{
  display:block;
  color:#344840;
  font-size:11px
}
.mep-sim-scenario-head span{
  display:block;
  margin-top:2px;
  color:#83918c;
  font-size:7px
}
.mep-sim-scenario-head em{
  color:#2e6b55;
  font-size:9px;
  font-style:normal;
  font-weight:900;
  text-align:right
}
.mep-sim-scenario-values{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  margin-top:9px
}
.mep-sim-scenario-values>div{
  padding:7px;
  border-radius:8px;
  background:#fff
}
.mep-sim-scenario-values small{
  display:block;
  color:#84918d;
  font-size:7px
}
.mep-sim-scenario-values b{
  display:block;
  margin-top:2px;
  color:#40534b;
  font-size:9px
}
.mep-sim-scenario-actions{
  display:flex;
  gap:8px;
  margin-top:9px;
  padding-top:8px;
  border-top:1px solid #e8edeb
}
.mep-sim-scenario-actions form{
  margin:0
}
.mep-sim-scenario-actions a,
.mep-sim-scenario-actions button,
.mep-sim-archives button{
  border:0;
  background:transparent;
  color:#2e6b56;
  padding:0;
  font:inherit;
  font-size:8px;
  font-weight:850;
  text-decoration:none;
  cursor:pointer
}
.mep-sim-archives{
  margin-top:12px;
  border-top:1px solid #edf1ef;
  padding-top:10px
}
.mep-sim-archives summary{
  color:#687a73;
  font-size:9px;
  font-weight:900;
  cursor:pointer
}
.mep-sim-archives>div{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-top:6px;
  padding:8px;
  border-radius:9px;
  background:#f8faf9;
  color:#5d7069;
  font-size:9px
}
.mep-sim-archives form{
  margin:0
}

@media(max-width:1200px){
  .mep-sim-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-sim-layout{
    grid-template-columns:1fr
  }
  .mep-sim-form-panel{
    position:static
  }
  .mep-sim-scenario-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media(max-width:800px){
  .mep-sim-breakdown,
  .mep-sim-reserve-detail,
  .mep-sim-test-grid,
  .mep-sim-reality-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .mep-sim-result-hero{
    flex-direction:column
  }
  .mep-sim-coverage{
    min-width:0;
    width:100%;
    text-align:left
  }
}

@media(max-width:600px){
  .mep-sim-kpis,
  .mep-sim-fields.two,
  .mep-sim-fields.three,
  .mep-sim-rates,
  .mep-sim-breakdown,
  .mep-sim-reserve-detail,
  .mep-sim-test-grid,
  .mep-sim-reality-grid,
  .mep-sim-scenario-grid{
    grid-template-columns:1fr
  }
  .mep-sim-form input,
  .mep-sim-form select,
  .mep-sim-form textarea{
    font-size:16px
  }
  .mep-sim-sensitivity-table>div{
    grid-template-columns:1fr;
    gap:3px
  }
  .mep-sim-sensitivity-table>div.is-head{
    display:none
  }
}


/* =========================================================
   MEP V09 — Salariat ↔ indépendant
   ========================================================= */

.mep-compare-page{
  --cmp-line:#dce6e2;
  --cmp-soft:#f7faf9;
  --cmp-text:#273b34;
  --cmp-muted:#7c8b86;
  --cmp-salary:#496d9f;
  --cmp-independent:#2f8163
}
.mep-compare-missing{
  display:grid;
  grid-template-columns:55px minmax(0,1fr);
  gap:14px;
  align-items:start;
  margin:18px 0;
  padding:20px;
  border:1px solid #d7e3df;
  border-radius:17px;
  background:#fff
}
.mep-compare-missing>span{
  display:grid;
  place-items:center;
  width:55px;
  height:55px;
  border-radius:14px;
  background:#eef6f3;
  font-size:25px
}
.mep-compare-missing h2{
  margin:0 0 5px;
  color:#2e423a;
  font-size:20px
}
.mep-compare-missing p{
  margin:0 0 12px;
  color:#7a8984;
  font-size:10px
}

.mep-compare-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:18px 0 10px
}
.mep-compare-kpis article{
  min-width:0;
  padding:15px;
  border:1px solid var(--cmp-line);
  border-radius:15px;
  background:#fff
}
.mep-compare-kpis article.is-equivalence{
  border-color:#c7d9ee;
  background:linear-gradient(145deg,#f1f5fb,#fff)
}
.mep-compare-kpis article.is-success{
  border-color:#b9ddce;
  background:#f1faf6
}
.mep-compare-kpis article.is-warning{
  border-color:#efc5aa;
  background:#fff7ef
}
.mep-compare-kpis small{
  display:block;
  margin-bottom:5px;
  color:#81908a;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-compare-kpis b{
  display:block;
  color:#293d35;
  font-size:18px;
  line-height:1.15;
  overflow-wrap:anywhere
}
.mep-compare-kpis span{
  display:block;
  margin-top:4px;
  color:#899691;
  font-size:8px;
  line-height:1.4
}

.mep-compare-verdict{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) minmax(165px,.35fr);
  gap:13px;
  align-items:center;
  margin-bottom:12px;
  padding:17px;
  border:1px solid #d7e3df;
  border-radius:16px;
  background:#fff
}
.mep-compare-verdict.is-independent{
  border-color:#b7dcca;
  background:linear-gradient(145deg,#eef9f5,#fff)
}
.mep-compare-verdict.is-salaried{
  border-color:#cbd9eb;
  background:linear-gradient(145deg,#f2f6fb,#fff)
}
.mep-compare-verdict-icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:13px;
  background:#fff;
  font-size:22px
}
.mep-compare-verdict h2{
  margin:0;
  color:#2d4239;
  font-size:18px
}
.mep-compare-verdict p:not(.mep-work-eyebrow){
  margin:4px 0 0;
  color:#73847e;
  font-size:9px;
  line-height:1.5
}
.mep-compare-verdict-side{
  padding:11px;
  border-radius:11px;
  background:#fff
}
.mep-compare-verdict-side small{
  display:block;
  color:#84918d;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-compare-verdict-side b{
  display:block;
  margin-top:3px;
  color:#30473e;
  font-size:17px
}
.mep-compare-verdict-side span{
  display:block;
  margin-top:3px;
  color:#7d8d87;
  font-size:8px
}

.mep-compare-layout{
  display:grid;
  grid-template-columns:minmax(360px,.82fr) minmax(0,1.38fr);
  gap:14px;
  align-items:start
}
.mep-compare-form-panel{
  position:sticky;
  top:90px;
  padding:17px;
  border:1px solid var(--cmp-line);
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 30px rgba(31,55,48,.05)
}
.mep-compare-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:13px
}
.mep-compare-panel-head h2,
.mep-compare-panel-head h3{
  margin:0;
  color:#293d35
}
.mep-compare-panel-head h2{font-size:18px}
.mep-compare-panel-head h3{font-size:15px}
.mep-compare-panel-head>span{
  padding:5px 8px;
  border-radius:999px;
  background:#eef6f3;
  color:#2e6b56;
  font-size:8px;
  font-weight:900
}
.mep-compare-form{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-compare-form>label,
.mep-compare-fields>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0
}
.mep-compare-form label>span{
  color:#52645d;
  font-size:9px;
  font-weight:900
}
.mep-compare-form label>small{
  color:#84918d;
  font-size:8px;
  line-height:1.45
}
.mep-compare-form input,
.mep-compare-form select,
.mep-compare-form textarea{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:8px 9px;
  color:#2d3f38;
  font:500 11px/1.4 inherit;
  outline:none
}
.mep-compare-form textarea{
  min-height:76px;
  resize:vertical
}
.mep-compare-form input:focus,
.mep-compare-form select:focus,
.mep-compare-form textarea:focus{
  border-color:#6cab95;
  box-shadow:0 0 0 3px rgba(36,106,84,.08)
}
.mep-compare-fields{
  display:grid;
  gap:8px
}
.mep-compare-fields.two{
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.mep-compare-fields.three{
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.mep-compare-section-title{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:8px;
  align-items:center;
  margin-top:5px;
  padding:9px;
  border-radius:10px;
  background:#f3f7f5
}
.mep-compare-section-title>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#fff
}
.mep-compare-section-title b{
  display:block;
  color:#344840;
  font-size:10px
}
.mep-compare-section-title small{
  display:block;
  margin-top:2px;
  color:#83918c;
  font-size:8px
}
.mep-compare-hint{
  margin:0;
  padding:9px;
  border-radius:9px;
  background:#f1f5fb;
  color:#63748b;
  font-size:8px;
  line-height:1.45
}
.mep-compare-suffix{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  border:1px solid #d8e2de;
  border-radius:9px;
  overflow:hidden
}
.mep-compare-suffix input{
  border:0;
  border-radius:0;
  box-shadow:none!important
}
.mep-compare-suffix em{
  padding:0 10px;
  color:#87938f;
  font-size:9px;
  font-style:normal
}
.mep-compare-default{
  flex-direction:row!important;
  align-items:center;
  gap:7px!important
}
.mep-compare-default input{
  width:auto;
  min-height:0
}

.mep-compare-results{
  display:flex;
  flex-direction:column;
  gap:11px;
  min-width:0
}
.mep-compare-columns{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px
}
.mep-compare-columns>article{
  min-width:0;
  padding:17px;
  border:1px solid var(--cmp-line);
  border-radius:16px;
  background:#fff
}
.mep-compare-columns>article.is-salaried{
  border-top:4px solid var(--cmp-salary)
}
.mep-compare-columns>article.is-independent{
  border-top:4px solid var(--cmp-independent)
}
.mep-compare-column-head{
  display:grid;
  grid-template-columns:39px minmax(0,1fr);
  gap:9px;
  align-items:center;
  margin-bottom:12px
}
.mep-compare-column-head>span{
  display:grid;
  place-items:center;
  width:39px;
  height:39px;
  border-radius:11px;
  background:#f2f6f4;
  font-size:17px
}
.mep-compare-column-head h2{
  margin:0;
  color:#293d35;
  font-size:18px
}
.mep-compare-column-head small{
  display:block;
  margin-top:2px;
  color:#84918d;
  font-size:8px
}
.mep-compare-metric{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 0;
  border-top:1px solid #edf1ef
}
.mep-compare-metric span{
  color:#73847e;
  font-size:9px
}
.mep-compare-metric b{
  color:#384b44;
  font-size:10px;
  text-align:right
}
.mep-compare-metric.is-strong{
  margin-top:3px;
  padding:10px;
  border:0;
  border-radius:9px;
  background:#f4f8f6
}
.mep-compare-metric.is-strong b{
  color:#2e654f;
  font-size:12px
}

.mep-compare-equivalence,
.mep-compare-time{
  padding:17px;
  border:1px solid var(--cmp-line);
  border-radius:16px;
  background:#fff
}
.mep-compare-equivalence-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px
}
.mep-compare-equivalence-grid article{
  min-width:0;
  padding:11px;
  border-radius:11px;
  background:#f7faf9
}
.mep-compare-equivalence-grid small{
  display:block;
  color:#84918d;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-compare-equivalence-grid b{
  display:block;
  margin-top:3px;
  color:#334940;
  font-size:11px;
  overflow-wrap:anywhere
}
.mep-compare-equivalence-grid span{
  display:block;
  margin-top:3px;
  color:#83918d;
  font-size:8px
}

.mep-compare-time-bars{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-compare-time-bars>div{
  display:grid;
  grid-template-columns:85px minmax(0,1fr) 80px;
  gap:9px;
  align-items:center
}
.mep-compare-time-bars span{
  color:#61736c;
  font-size:9px;
  font-weight:900
}
.mep-compare-time-bars>div>div{
  height:12px;
  border-radius:999px;
  background:#e8eeeb;
  overflow:hidden
}
.mep-compare-time-bars i{
  display:block;
  height:100%;
  border-radius:inherit
}
.mep-compare-time-bars i.is-salaried{
  background:var(--cmp-salary)
}
.mep-compare-time-bars i.is-independent{
  background:var(--cmp-independent)
}
.mep-compare-time-bars b{
  color:#40524b;
  font-size:9px;
  text-align:right
}
.mep-compare-time-message{
  margin:11px 0 0;
  padding:10px;
  border-radius:9px;
  background:#f6f9f8;
  color:#6f807a;
  font-size:9px;
  line-height:1.5
}

.mep-compare-explain,
.mep-compare-disclaimer{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  padding:14px;
  border:1px solid #d7e3df;
  border-radius:13px;
  background:#f6faf8
}
.mep-compare-explain>span,
.mep-compare-disclaimer>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#fff
}
.mep-compare-explain b,
.mep-compare-disclaimer b{
  color:#34483f;
  font-size:10px
}
.mep-compare-explain p,
.mep-compare-disclaimer p{
  margin:4px 0 0;
  color:#71817b;
  font-size:9px;
  line-height:1.55
}
.mep-compare-disclaimer{
  margin-top:14px;
  border-color:#e5d8ae;
  background:#fffaf0
}
.mep-compare-disclaimer b{
  color:#73582d
}
.mep-compare-disclaimer p{
  color:#806d4c
}

.mep-compare-scenarios{
  margin-top:14px;
  padding:17px;
  border:1px solid var(--cmp-line);
  border-radius:16px;
  background:#fff
}
.mep-compare-scenarios-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px
}
.mep-compare-scenarios-head h2{
  margin:0;
  color:#2c4038;
  font-size:18px
}
.mep-compare-scenario-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px
}
.mep-compare-scenario-grid>article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  padding:13px;
  border:1px solid #e0e8e5;
  border-radius:13px;
  background:#fbfcfc
}
.mep-compare-scenario-grid>article.is-default{
  border-color:#b9dccf;
  background:#f2faf7
}
.mep-compare-scenario-grid b{
  display:block;
  color:#344840;
  font-size:10px
}
.mep-compare-scenario-grid span{
  display:block;
  margin-top:2px;
  color:#83918c;
  font-size:7px
}
.mep-compare-scenario-grid em{
  color:#2e6b55;
  font-size:9px;
  font-style:normal;
  font-weight:900
}
.mep-compare-scenario-actions{
  grid-column:1 / -1;
  display:flex;
  gap:8px;
  padding-top:8px;
  border-top:1px solid #e8edeb
}
.mep-compare-scenario-actions form,
.mep-compare-archives form{
  margin:0
}
.mep-compare-scenario-actions a,
.mep-compare-scenario-actions button,
.mep-compare-archives button{
  border:0;
  background:transparent;
  color:#2e6b56;
  padding:0;
  font:inherit;
  font-size:8px;
  font-weight:850;
  text-decoration:none;
  cursor:pointer
}
.mep-compare-archives{
  margin-top:12px;
  border-top:1px solid #edf1ef;
  padding-top:10px
}
.mep-compare-archives summary{
  color:#687a73;
  font-size:9px;
  font-weight:900;
  cursor:pointer
}
.mep-compare-archives>div{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-top:6px;
  padding:8px;
  border-radius:9px;
  background:#f8faf9;
  color:#5d7069;
  font-size:9px
}

@media(max-width:1200px){
  .mep-compare-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-compare-layout{
    grid-template-columns:1fr
  }
  .mep-compare-form-panel{
    position:static
  }
  .mep-compare-scenario-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media(max-width:800px){
  .mep-compare-verdict{
    grid-template-columns:48px minmax(0,1fr)
  }
  .mep-compare-verdict-side{
    grid-column:1 / -1
  }
  .mep-compare-columns,
  .mep-compare-equivalence-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media(max-width:600px){
  .mep-compare-kpis,
  .mep-compare-fields.two,
  .mep-compare-fields.three,
  .mep-compare-columns,
  .mep-compare-equivalence-grid,
  .mep-compare-scenario-grid{
    grid-template-columns:1fr
  }
  .mep-compare-form input,
  .mep-compare-form select,
  .mep-compare-form textarea{
    font-size:16px
  }
  .mep-compare-time-bars>div{
    grid-template-columns:1fr
  }
  .mep-compare-time-bars b{
    text-align:left
  }
}


/* =========================================================
   MEP V10 — Pilotage & temps de travail
   ========================================================= */

.mep-planner-page{
  --plan-line:#dce6e2;
  --plan-soft:#f7faf9;
  --plan-text:#273b34;
  --plan-muted:#7c8b86
}
.mep-planner-running{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:14px;
  align-items:center;
  margin:18px 0 10px;
  padding:14px 16px;
  border:1px solid #a9d5c5;
  border-radius:15px;
  background:linear-gradient(135deg,#eaf8f3,#fff)
}
.mep-planner-running>div{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:9px;
  align-items:center
}
.mep-planner-running>div>span{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:11px;
  background:#fff;
  font-size:18px
}
.mep-planner-running small{
  display:block;
  color:#719087;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-planner-running b{
  display:block;
  color:#2e5547;
  font-size:11px
}
.mep-planner-running p{
  margin:2px 0 0;
  color:#7b8e87;
  font-size:8px
}
.mep-planner-running>strong{
  color:#27664f;
  font-size:22px;
  font-variant-numeric:tabular-nums
}
.mep-planner-running form{margin:0}

.mep-planner-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:18px 0 10px
}
.mep-planner-kpis article{
  min-width:0;
  padding:15px;
  border:1px solid var(--plan-line);
  border-radius:15px;
  background:#fff
}
.mep-planner-kpis article.is-success{
  border-color:#b9ddce;
  background:#f1faf6
}
.mep-planner-kpis article.is-warning{
  border-color:#efc5aa;
  background:#fff7ef
}
.mep-planner-kpis small{
  display:block;
  margin-bottom:5px;
  color:#81908a;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-planner-kpis b{
  display:block;
  color:#293d35;
  font-size:19px;
  line-height:1.15;
  overflow-wrap:anywhere
}
.mep-planner-kpis span{
  display:block;
  margin-top:4px;
  color:#899691;
  font-size:8px;
  line-height:1.4
}

.mep-planner-week-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:14px 0 9px
}
.mep-planner-week-head h2{
  margin:0;
  color:#2c4038;
  font-size:18px
}
.mep-planner-week-head>div:last-child{
  display:flex;
  gap:6px
}

.mep-planner-calendar{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:7px;
  align-items:start;
  margin-bottom:14px
}
.mep-planner-calendar>article{
  min-width:0;
  min-height:260px;
  border:1px solid var(--plan-line);
  border-radius:13px;
  background:#fff;
  overflow:hidden
}
.mep-planner-calendar>article.is-today{
  border-color:#8cc8b1;
  box-shadow:0 0 0 2px rgba(51,134,102,.08)
}
.mep-planner-calendar header{
  display:flex;
  justify-content:space-between;
  gap:7px;
  align-items:flex-start;
  padding:10px;
  border-bottom:1px solid #e7ecea;
  background:#f8faf9
}
.mep-planner-calendar header small{
  display:block;
  color:#84918d;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-planner-calendar header b{
  display:block;
  margin-top:2px;
  color:#334840;
  font-size:11px
}
.mep-planner-calendar header>span{
  color:#70827b;
  font-size:7px;
  white-space:nowrap
}
.mep-planner-day-events{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:7px
}
.mep-planner-day-empty{
  padding:20px 8px;
  color:#9aa5a1;
  font-size:8px;
  text-align:center
}
.mep-planner-event{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:6px;
  padding:7px;
  border:1px solid #e4ebe8;
  border-left:3px solid #aebbb6;
  border-radius:9px;
  background:#fbfcfc;
  color:inherit;
  text-decoration:none
}
.mep-planner-event.is-planner{
  border-left-color:#507fce
}
.mep-planner-event.is-crm{
  border-left-color:#ba7fc9
}
.mep-planner-event.is-mission{
  border-left-color:#3f9b73
}
.mep-planner-event.is-document{
  border-left-color:#c68a56
}
.mep-planner-event.is-finance{
  border-left-color:#d0a64d
}
.mep-planner-event.is-high{
  background:#fff6ef
}
.mep-planner-event.is-billable{
  box-shadow:inset 0 0 0 1px rgba(48,139,101,.08)
}
.mep-planner-event.is-done{
  opacity:.58
}
.mep-planner-event>span{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:7px;
  background:#f0f5f3;
  font-size:11px
}
.mep-planner-event small{
  display:block;
  color:#8a9792;
  font-size:6px;
  text-transform:uppercase
}
.mep-planner-event b{
  display:block;
  margin-top:2px;
  color:#3b4e47;
  font-size:8px;
  line-height:1.3
}
.mep-planner-event em{
  display:block;
  margin-top:3px;
  color:#81908a;
  font-size:7px;
  font-style:normal
}

.mep-planner-workspace{
  display:grid;
  grid-template-columns:minmax(350px,.75fr) minmax(0,1.25fr);
  gap:13px;
  align-items:start
}
.mep-planner-form-panel,
.mep-planner-upcoming,
.mep-planner-timesheet{
  padding:17px;
  border:1px solid var(--plan-line);
  border-radius:16px;
  background:#fff
}
.mep-planner-form-panel{
  position:sticky;
  top:90px
}
.mep-planner-panel-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
  margin-bottom:12px
}
.mep-planner-panel-head h2{
  margin:0;
  color:#2d4139;
  font-size:17px
}
.mep-planner-panel-head>a,
.mep-planner-panel-head>span{
  color:#2f7059;
  font-size:8px;
  font-weight:850;
  text-decoration:none
}
.mep-planner-form,
.mep-planner-time-form{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-planner-form>label,
.mep-planner-time-form>label,
.mep-planner-fields>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0
}
.mep-planner-form label>span,
.mep-planner-time-form label>span,
.mep-planner-settings label>span{
  color:#52645d;
  font-size:9px;
  font-weight:900
}
.mep-planner-form input,
.mep-planner-form select,
.mep-planner-form textarea,
.mep-planner-time-form input,
.mep-planner-time-form select,
.mep-planner-settings input{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:8px 9px;
  color:#2d3f38;
  font:500 11px/1.4 inherit;
  outline:none
}
.mep-planner-form textarea{
  min-height:75px;
  resize:vertical
}
.mep-planner-fields{
  display:grid;
  gap:8px
}
.mep-planner-fields.two{
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.mep-planner-fields.three{
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.mep-planner-fields.four{
  grid-template-columns:repeat(4,minmax(0,1fr))
}
.mep-planner-checks{
  display:flex;
  gap:12px;
  flex-wrap:wrap
}
.mep-planner-checks label,
.mep-planner-time-bottom label{
  display:flex;
  align-items:center;
  gap:6px;
  color:#61746d;
  font-size:8px;
  font-weight:800
}
.mep-planner-checks input,
.mep-planner-time-bottom label input{
  width:auto;
  min-height:0
}
.mep-planner-entry-actions{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid #e8eeeb
}
.mep-planner-entry-actions form{margin:0}

.mep-planner-right{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0
}
.mep-planner-upcoming-list{
  display:flex;
  flex-direction:column
}
.mep-planner-upcoming-list article{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  padding:9px 0;
  border-top:1px solid #edf1ef
}
.mep-planner-upcoming-list article:first-child{
  border-top:0
}
.mep-planner-upcoming-list article.is-late{
  background:linear-gradient(90deg,#fff5ed,transparent)
}
.mep-planner-upcoming-list article>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#f1f6f4
}
.mep-planner-upcoming-list b{
  display:block;
  color:#344840;
  font-size:9px
}
.mep-planner-upcoming-list small{
  display:block;
  margin-top:2px;
  color:#87948f;
  font-size:7px
}
.mep-planner-upcoming-list a{
  color:#2e6b56;
  font-size:8px;
  font-weight:850;
  text-decoration:none
}

.mep-planner-time-form{
  margin-bottom:12px;
  padding:11px;
  border-radius:11px;
  background:#f7faf9
}
.mep-planner-time-bottom{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:8px;
  align-items:center
}
.mep-planner-time-list{
  display:flex;
  flex-direction:column
}
.mep-planner-time-list article{
  display:grid;
  grid-template-columns:31px minmax(0,1fr) 26px;
  gap:8px;
  align-items:center;
  padding:8px 0;
  border-top:1px solid #edf1ef
}
.mep-planner-time-list article:first-child{border-top:0}
.mep-planner-time-list article>span{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:9px;
  background:#f3f6f5;
  color:#71837c;
  font-size:10px;
  font-weight:900
}
.mep-planner-time-list article>span.is-billable{
  background:#ebf7f2;
  color:#2f785c
}
.mep-planner-time-list b{
  display:block;
  color:#354940;
  font-size:9px
}
.mep-planner-time-list small{
  display:block;
  margin-top:2px;
  color:#87948f;
  font-size:7px
}
.mep-planner-time-list form{margin:0}
.mep-planner-time-list button{
  border:0;
  background:#f6ece9;
  color:#8f5047;
  width:26px;
  height:26px;
  border-radius:7px;
  cursor:pointer
}

.mep-planner-settings{
  margin-top:14px;
  border:1px solid var(--plan-line);
  border-radius:15px;
  background:#fff;
  overflow:hidden
}
.mep-planner-settings summary{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:14px 16px;
  cursor:pointer;
  list-style:none
}
.mep-planner-settings summary::-webkit-details-marker{display:none}
.mep-planner-settings summary>div{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:8px;
  align-items:center
}
.mep-planner-settings summary>div>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#eef6f3
}
.mep-planner-settings summary b{
  display:block;
  color:#354940;
  font-size:10px
}
.mep-planner-settings summary small{
  display:block;
  margin-top:2px;
  color:#87948f;
  font-size:8px
}
.mep-planner-settings summary em{
  color:#2f6b57;
  font-size:8px;
  font-style:normal;
  font-weight:900
}
.mep-planner-settings>form{
  padding:15px 16px;
  border-top:1px solid #e8edeb
}

.mep-planner-explain{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  margin-top:14px;
  padding:14px;
  border:1px solid #d7e3df;
  border-radius:13px;
  background:#f6faf8
}
.mep-planner-explain>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#fff
}
.mep-planner-explain b{
  color:#34483f;
  font-size:10px
}
.mep-planner-explain p{
  margin:4px 0 0;
  color:#71817b;
  font-size:9px;
  line-height:1.55
}

@media(max-width:1250px){
  .mep-planner-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-planner-calendar{
    grid-template-columns:repeat(4,minmax(0,1fr))
  }
  .mep-planner-workspace{
    grid-template-columns:1fr
  }
  .mep-planner-form-panel{
    position:static
  }
}

@media(max-width:850px){
  .mep-planner-calendar{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .mep-planner-running{
    grid-template-columns:1fr auto
  }
  .mep-planner-running form{
    grid-column:1 / -1
  }
}

@media(max-width:600px){
  .mep-planner-kpis,
  .mep-planner-calendar,
  .mep-planner-fields.two,
  .mep-planner-fields.three,
  .mep-planner-fields.four{
    grid-template-columns:1fr
  }
  .mep-planner-week-head{
    align-items:flex-start;
    flex-direction:column
  }
  .mep-planner-time-bottom{
    grid-template-columns:1fr
  }
  .mep-planner-running{
    grid-template-columns:1fr
  }
  .mep-planner-running>strong{
    text-align:left
  }
  .mep-planner-form input,
  .mep-planner-form select,
  .mep-planner-form textarea,
  .mep-planner-time-form input,
  .mep-planner-time-form select,
  .mep-planner-settings input{
    font-size:16px
  }
}


/* =========================================================
   MEP V11 — Prévisionnel & objectifs
   ========================================================= */

.mep-forecast-page{
  --fc-line:#dce6e2;
  --fc-soft:#f7faf9;
  --fc-text:#273b34;
  --fc-muted:#7c8b86
}
.mep-forecast-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:18px 0 10px
}
.mep-forecast-kpis article{
  min-width:0;
  padding:15px;
  border:1px solid var(--fc-line);
  border-radius:15px;
  background:#fff
}
.mep-forecast-kpis article.is-primary{
  border-color:#c9d9ef;
  background:linear-gradient(145deg,#f2f6fc,#fff)
}
.mep-forecast-kpis article.is-success{
  border-color:#b9ddce;
  background:#f1faf6
}
.mep-forecast-kpis article.is-warning{
  border-color:#efc5aa;
  background:#fff7ef
}
.mep-forecast-kpis small{
  display:block;
  margin-bottom:5px;
  color:#81908a;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em
}
.mep-forecast-kpis b{
  display:block;
  color:#293d35;
  font-size:18px;
  line-height:1.15;
  overflow-wrap:anywhere
}
.mep-forecast-kpis span{
  display:block;
  margin-top:4px;
  color:#899691;
  font-size:8px;
  line-height:1.4
}

.mep-forecast-alerts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px
}
.mep-forecast-alerts>div{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:10px;
  border:1px solid var(--fc-line);
  border-radius:12px;
  background:#fff
}
.mep-forecast-alerts>div.is-warning{
  border-color:#e9c5a9;
  background:#fff7ef
}
.mep-forecast-alerts>div>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#f2f6f4
}
.mep-forecast-alerts small{
  display:block;
  color:#84918d;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-forecast-alerts b{
  display:block;
  margin-top:2px;
  color:#33473f;
  font-size:10px
}

.mep-forecast-chart-panel,
.mep-forecast-settings-panel,
.mep-forecast-adjustment-panel,
.mep-forecast-adjustments{
  padding:17px;
  border:1px solid var(--fc-line);
  border-radius:16px;
  background:#fff
}
.mep-forecast-chart-panel{
  margin-bottom:12px
}
.mep-forecast-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:13px
}
.mep-forecast-panel-head h2{
  margin:0;
  color:#2d4139;
  font-size:17px
}
.mep-forecast-panel-head>a{
  color:#2e6b56;
  font-size:8px;
  font-weight:850;
  text-decoration:none
}
.mep-forecast-chart-legend{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end
}
.mep-forecast-chart-legend span{
  display:flex;
  align-items:center;
  gap:5px;
  color:#75867f;
  font-size:7px
}
.mep-forecast-chart-legend i{
  display:block;
  width:9px;
  height:9px;
  border-radius:3px
}
.mep-forecast-chart{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(55px,1fr));
  gap:8px;
  align-items:end;
  height:220px;
  padding-top:8px;
  border-bottom:1px solid #dfe7e4
}
.mep-forecast-chart-month{
  display:grid;
  grid-template-rows:minmax(0,1fr) 13px 11px;
  gap:2px;
  height:100%;
  min-width:0
}
.mep-forecast-chart-bars{
  display:flex;
  justify-content:center;
  align-items:flex-end;
  gap:2px;
  min-height:0
}
.mep-forecast-chart-bars i{
  display:block;
  width:7px;
  min-height:2px;
  border-radius:3px 3px 0 0
}
.mep-forecast-chart-month>b{
  color:#5f716a;
  font-size:7px;
  text-align:center;
  text-transform:uppercase
}
.mep-forecast-chart-month>small{
  color:#9aa5a1;
  font-size:6px;
  text-align:center
}
.mep-forecast-chart-bars .is-secured,
.mep-forecast-chart-legend .is-secured{
  background:#4d8d70
}
.mep-forecast-chart-bars .is-pipeline,
.mep-forecast-chart-legend .is-pipeline{
  background:#7993d1
}
.mep-forecast-chart-bars .is-cash-in,
.mep-forecast-chart-legend .is-cash-in{
  background:#55a69b
}
.mep-forecast-chart-bars .is-cash-out,
.mep-forecast-chart-legend .is-cash-out{
  background:#d89a68
}

.mep-forecast-months{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px
}
.mep-forecast-months>article{
  min-width:0;
  padding:16px;
  border:1px solid var(--fc-line);
  border-radius:15px;
  background:#fff
}
.mep-forecast-months>article.has-warning{
  border-color:#e9c7ae;
  box-shadow:inset 0 0 0 1px rgba(197,115,57,.04)
}
.mep-forecast-months header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:11px
}
.mep-forecast-months h2{
  margin:0;
  color:#2e4239;
  font-size:18px
}
.mep-forecast-cash-end{
  min-width:135px;
  padding:8px 10px;
  border-radius:10px;
  background:#f0f8f5;
  text-align:right
}
.mep-forecast-cash-end.is-low{
  background:#fff2e8
}
.mep-forecast-cash-end small{
  display:block;
  color:#81908b;
  font-size:7px;
  text-transform:uppercase
}
.mep-forecast-cash-end b{
  display:block;
  margin-top:2px;
  color:#32644f;
  font-size:11px
}
.mep-forecast-cash-end.is-low b{
  color:#995a31
}
.mep-forecast-month-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px
}
.mep-forecast-month-grid>div{
  min-width:0;
  padding:9px;
  border-radius:9px;
  background:#f7faf9
}
.mep-forecast-month-grid small{
  display:block;
  color:#87948f;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-forecast-month-grid b{
  display:block;
  margin-top:3px;
  color:#354940;
  font-size:10px;
  overflow-wrap:anywhere
}
.mep-forecast-progress{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  margin-top:10px
}
.mep-forecast-progress>div{
  height:8px;
  border-radius:999px;
  background:#e5ebe8;
  overflow:hidden
}
.mep-forecast-progress>div>span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#4d8d70
}
.mep-forecast-progress>b{
  color:#5d716a;
  font-size:8px
}
.mep-forecast-capacity{
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid #edf1ef
}
.mep-forecast-capacity>div:first-child{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:#6b7d76;
  font-size:8px
}
.mep-forecast-capacity-bar{
  height:7px;
  margin-top:5px;
  border-radius:999px;
  background:#e8eeeb;
  overflow:hidden
}
.mep-forecast-capacity-bar>span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#7b93cf
}
.mep-forecast-capacity>small{
  display:block;
  margin-top:4px;
  color:#899691;
  font-size:7px
}

.mep-forecast-sources{
  margin-top:10px;
  border-top:1px solid #edf1ef;
  padding-top:9px
}
.mep-forecast-sources summary{
  color:#2f6d58;
  font-size:8px;
  font-weight:900;
  cursor:pointer
}
.mep-forecast-source-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:9px
}
.mep-forecast-source-grid section{
  min-width:0;
  padding:9px;
  border-radius:9px;
  background:#f8faf9
}
.mep-forecast-source-grid section>b{
  display:block;
  margin-bottom:5px;
  color:#40534b;
  font-size:8px
}
.mep-forecast-source-grid section>a,
.mep-forecast-source-grid section>span{
  display:flex;
  justify-content:space-between;
  gap:7px;
  padding:4px 0;
  color:#687a73;
  font-size:7px;
  text-decoration:none
}
.mep-forecast-source-grid em{
  color:#2e6b55;
  font-style:normal;
  font-weight:800;
  white-space:nowrap
}

.mep-forecast-workspace{
  display:grid;
  grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);
  gap:12px;
  margin-bottom:14px;
  align-items:start
}
.mep-forecast-settings-form,
.mep-forecast-adjustment-form{
  display:flex;
  flex-direction:column;
  gap:10px
}
.mep-forecast-settings-form>label,
.mep-forecast-adjustment-form>label,
.mep-forecast-fields>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0
}
.mep-forecast-settings-form label>span,
.mep-forecast-adjustment-form label>span{
  color:#52645d;
  font-size:9px;
  font-weight:900
}
.mep-forecast-settings-form label>small{
  color:#84918d;
  font-size:8px;
  line-height:1.45
}
.mep-forecast-settings-form input,
.mep-forecast-settings-form select,
.mep-forecast-adjustment-form input,
.mep-forecast-adjustment-form select,
.mep-forecast-adjustment-form textarea{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  border:1px solid #d8e2de;
  border-radius:9px;
  background:#fff;
  padding:8px 9px;
  color:#2d3f38;
  font:500 11px/1.4 inherit;
  outline:none
}
.mep-forecast-adjustment-form textarea{
  min-height:75px;
  resize:vertical
}
.mep-forecast-check{
  flex-direction:row!important;
  align-items:center;
  gap:7px!important
}
.mep-forecast-check input{
  width:auto;
  min-height:0
}
.mep-forecast-fields{
  display:grid;
  gap:8px
}
.mep-forecast-fields.two{
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.mep-forecast-fields.three{
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.mep-forecast-settings-note,
.mep-forecast-adjustment-note{
  margin:10px 0 0;
  padding:9px;
  border-radius:9px;
  background:#f4f8f6;
  color:#72837d;
  font-size:8px;
  line-height:1.5
}
.mep-forecast-adjustment-note{
  margin:0;
  background:#fff8eb;
  color:#80663b
}

.mep-forecast-adjustment-list{
  display:flex;
  flex-direction:column
}
.mep-forecast-adjustment-list>article{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto auto;
  gap:9px;
  align-items:center;
  padding:9px 0;
  border-top:1px solid #edf1ef
}
.mep-forecast-adjustment-list>article:first-child{
  border-top:0
}
.mep-forecast-adjustment-list>article>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:9px;
  background:#f1f6f4
}
.mep-forecast-adjustment-list b{
  display:block;
  color:#344840;
  font-size:9px
}
.mep-forecast-adjustment-list small{
  display:block;
  margin-top:2px;
  color:#87948f;
  font-size:7px
}
.mep-forecast-adjustment-list>article>strong{
  color:#2f6b56;
  font-size:9px;
  white-space:nowrap
}
.mep-forecast-adjustment-actions{
  display:flex;
  gap:7px;
  align-items:center
}
.mep-forecast-adjustment-actions form{
  margin:0
}
.mep-forecast-adjustment-actions a,
.mep-forecast-adjustment-actions button{
  border:0;
  background:transparent;
  color:#2e6b56;
  padding:0;
  font:inherit;
  font-size:8px;
  font-weight:850;
  text-decoration:none;
  cursor:pointer
}

.mep-forecast-explain{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  margin-top:14px;
  padding:14px;
  border:1px solid #d7e3df;
  border-radius:13px;
  background:#f6faf8
}
.mep-forecast-explain>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#fff
}
.mep-forecast-explain b{
  color:#34483f;
  font-size:10px
}
.mep-forecast-explain p{
  margin:4px 0 0;
  color:#71817b;
  font-size:9px;
  line-height:1.55
}

@media(max-width:1200px){
  .mep-forecast-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .mep-forecast-months{
    grid-template-columns:1fr
  }
}

@media(max-width:900px){
  .mep-forecast-workspace{
    grid-template-columns:1fr
  }
  .mep-forecast-month-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media(max-width:650px){
  .mep-forecast-kpis,
  .mep-forecast-alerts,
  .mep-forecast-month-grid,
  .mep-forecast-source-grid,
  .mep-forecast-fields.two,
  .mep-forecast-fields.three{
    grid-template-columns:1fr
  }
  .mep-forecast-panel-head{
    flex-direction:column
  }
  .mep-forecast-chart{
    overflow-x:auto;
    grid-template-columns:repeat(12,55px);
  }
  .mep-forecast-adjustment-list>article{
    grid-template-columns:34px minmax(0,1fr)
  }
  .mep-forecast-adjustment-list>article>strong,
  .mep-forecast-adjustment-actions{
    grid-column:2 / -1
  }
  .mep-forecast-settings-form input,
  .mep-forecast-settings-form select,
  .mep-forecast-adjustment-form input,
  .mep-forecast-adjustment-form select,
  .mep-forecast-adjustment-form textarea{
    font-size:16px
  }
}


/* V11 QA — currencies + potential cash */
.mep-forecast-currency-warning{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:9px;
  align-items:start;
  margin:18px 0 10px;
  padding:11px 13px;
  border:1px solid #e6d5a9;
  border-radius:12px;
  background:#fffaf0
}
.mep-forecast-currency-warning>span{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:9px;
  background:#fff
}
.mep-forecast-currency-warning p{
  margin:1px 0 0;
  color:#756548;
  font-size:8px;
  line-height:1.5
}
.mep-forecast-month-grid em{
  display:block;
  margin-top:3px;
  color:#8c704c;
  font-size:7px;
  font-style:normal
}
@media(max-width:650px){
  .mep-forecast-chart{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:55px;
    justify-content:start
  }
}


/* =========================================================
   MEP V12 — Check-up final + navigation mobile
   ========================================================= */

.mep-health-page{
  --health-line:#dce6e2;
  --health-soft:#f7faf9;
  --health-text:#273b34;
  --health-muted:#7c8b86
}
.mep-health-hero{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr);
  gap:12px;
  margin:18px 0
}
.mep-health-score,
.mep-health-summary{
  border:1px solid var(--health-line);
  border-radius:17px;
  background:#fff
}
.mep-health-score{
  display:grid;
  grid-template-columns:125px minmax(0,1fr);
  gap:18px;
  align-items:center;
  padding:20px
}
.mep-health-score-ring{
  --score-angle:calc(var(--mep-health-score) * 3.6deg);
  display:grid;
  place-items:center;
  align-content:center;
  width:112px;
  height:112px;
  border-radius:50%;
  background:
    radial-gradient(circle at center,#fff 61%,transparent 62%),
    conic-gradient(#2f8062 var(--score-angle),#e7eeeb 0)
}
.mep-health-score-ring strong{
  color:#2d5f4d;
  font-size:28px;
  line-height:1
}
.mep-health-score-ring span{
  margin-top:3px;
  color:#8b9893;
  font-size:8px
}
.mep-health-score h2{
  margin:0;
  color:#2e4239;
  font-size:20px
}
.mep-health-score p:not(.mep-work-eyebrow){
  margin:5px 0 0;
  color:#758680;
  font-size:9px;
  line-height:1.5
}
.mep-health-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  overflow:hidden;
  background:#e6ece9
}
.mep-health-summary article{
  min-width:0;
  padding:14px;
  background:#fff
}
.mep-health-summary article.is-good{
  background:#f1faf6
}
.mep-health-summary article.is-warning{
  background:#fff6ed
}
.mep-health-summary small{
  display:block;
  color:#83918c;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-health-summary b{
  display:block;
  margin-top:3px;
  color:#32473e;
  font-size:17px
}
.mep-health-summary span{
  display:block;
  margin-top:2px;
  color:#899691;
  font-size:7px
}

.mep-health-modules,
.mep-health-issues{
  margin-bottom:14px;
  padding:17px;
  border:1px solid var(--health-line);
  border-radius:16px;
  background:#fff
}
.mep-health-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px
}
.mep-health-panel-head h2{
  margin:0;
  color:#2c4038;
  font-size:17px
}
.mep-health-panel-head>span{
  color:#788a83;
  font-size:8px;
  font-weight:850
}
.mep-health-module-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px
}
.mep-health-module{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 22px;
  gap:9px;
  align-items:center;
  min-width:0;
  padding:11px;
  border:1px solid #e1e8e5;
  border-left:4px solid #aebbb6;
  border-radius:12px;
  background:#fbfcfc;
  color:inherit;
  text-decoration:none
}
.mep-health-module.is-ready{
  border-left-color:#4c9b79
}
.mep-health-module.is-attention{
  border-left-color:#d69459;
  background:#fffaf5
}
.mep-health-module.is-started{
  border-left-color:#7490cb
}
.mep-health-module.is-empty{
  border-left-color:#b8c1bd
}
.mep-health-module>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#f0f5f3
}
.mep-health-module small{
  display:block;
  color:#809089;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-health-module b{
  display:block;
  margin-top:2px;
  color:#344840;
  font-size:10px
}
.mep-health-module p{
  margin:3px 0 0;
  color:#87948f;
  font-size:8px;
  line-height:1.4
}
.mep-health-module>em{
  color:#6f817a;
  font-size:11px;
  font-style:normal
}

.mep-health-issue-list{
  display:flex;
  flex-direction:column
}
.mep-health-issue-list article{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:11px 0;
  border-top:1px solid #edf1ef
}
.mep-health-issue-list article:first-child{
  border-top:0
}
.mep-health-issue-list article>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#f2f6f4
}
.mep-health-issue-list article.is-critical>span,
.mep-health-issue-list article.is-high>span{
  background:#fff0e6
}
.mep-health-issue-list article.is-medium>span{
  background:#fff8e8
}
.mep-health-issue-list small{
  display:block;
  color:#85928e;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase
}
.mep-health-issue-list b{
  display:block;
  margin-top:2px;
  color:#354940;
  font-size:10px
}
.mep-health-issue-list p{
  margin:3px 0 0;
  color:#82908b;
  font-size:8px;
  line-height:1.45
}
.mep-health-issue-list a{
  color:#2f6e58;
  font-size:8px;
  font-weight:850;
  text-decoration:none;
  white-space:nowrap
}
.mep-health-all-good{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:14px;
  border-radius:12px;
  background:#eef9f5
}
.mep-health-all-good>span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:11px;
  background:#fff
}
.mep-health-all-good b{
  color:#2e634f;
  font-size:10px
}
.mep-health-all-good p{
  margin:3px 0 0;
  color:#71877e;
  font-size:8px
}

.mep-health-shortcuts{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  margin-bottom:14px
}
.mep-health-shortcuts a{
  display:grid;
  min-height:115px;
  padding:13px;
  border:1px solid var(--health-line);
  border-radius:13px;
  background:#fff;
  color:inherit;
  text-decoration:none
}
.mep-health-shortcuts span{
  font-size:19px
}
.mep-health-shortcuts b{
  margin-top:auto;
  color:#354940;
  font-size:9px
}
.mep-health-shortcuts small{
  margin-top:3px;
  color:#84918d;
  font-size:7px;
  line-height:1.4
}
.mep-health-explain{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  padding:14px;
  border:1px solid #d7e3df;
  border-radius:13px;
  background:#f6faf8
}
.mep-health-explain>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#fff
}
.mep-health-explain b{
  color:#34483f;
  font-size:10px
}
.mep-health-explain p{
  margin:4px 0 0;
  color:#71817b;
  font-size:9px;
  line-height:1.55
}

/* Navigation Independent now contains many real modules: make it usable on
   narrow screens without compressing labels or wrapping them chaotically. */
.mep-independent-nav{
  scrollbar-width:thin;
  scroll-behavior:smooth
}
.mep-independent-nav a{
  flex:0 0 auto
}

@media(max-width:1000px){
  .mep-health-hero{
    grid-template-columns:1fr
  }
  .mep-health-shortcuts{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
}
@media(max-width:700px){
  .mep-independent-nav{
    display:flex;
    flex-wrap:nowrap;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    padding-bottom:7px
  }
  .mep-independent-nav a{
    scroll-snap-align:start;
    min-width:max-content
  }
  .mep-health-score{
    grid-template-columns:1fr;
    text-align:center
  }
  .mep-health-score-ring{
    margin:0 auto
  }
  .mep-health-module-grid,
  .mep-health-shortcuts{
    grid-template-columns:1fr
  }
  .mep-health-issue-list article{
    grid-template-columns:38px minmax(0,1fr)
  }
  .mep-health-issue-list a{
    grid-column:2 / -1;
    white-space:normal
  }
}
@media(max-width:470px){
  .mep-health-summary{
    grid-template-columns:1fr
  }
}


/* MEP V12.3 — ouverture fiable du profil indépendant */
.mep-independent-profile-shell{
  scroll-margin-top:105px;
  outline:none
}
.mep-independent-profile-shell.is-profile-jump-highlight{
  animation:mepProfileJumpHighlight 1.8s ease
}
@keyframes mepProfileJumpHighlight{
  0%{
    box-shadow:
      0 0 0 4px rgba(31,122,91,.22),
      0 10px 35px rgba(31,55,48,.05)
  }
  55%{
    box-shadow:
      0 0 0 4px rgba(31,122,91,.12),
      0 10px 35px rgba(31,55,48,.05)
  }
  100%{
    box-shadow:
      0 10px 35px rgba(31,55,48,.05)
  }
}
@media(max-width:780px){
  .mep-independent-profile-shell{
    scroll-margin-top:78px
  }
}
@media(prefers-reduced-motion:reduce){
  .mep-independent-profile-shell.is-profile-jump-highlight{
    animation:none
  }
}


/* =========================================================
   Salariat V2 S01 — scission stricte des univers
   Functional polish only; global redesign intentionally deferred.
   ========================================================= */

.mep-work-flash.is-workspace-boundary{
  background:#f2f6fb;
  color:#415b79;
  border-color:#cad8e9
}
.mep-workspace-switch-inline{
  width:auto!important;
  margin:0
}
.mep-workspace-switch-inline button{
  appearance:none;
  border:0;
  background:transparent;
  color:#246b56;
  font:800 13px/1.3 inherit;
  padding:0;
  cursor:pointer
}
.mep-dashboard-workspace-switch{
  width:auto!important;
  margin:0
}
.mep-dashboard-workspace-switch .vnext-btn{
  width:auto
}


/* ===== mep-harmonized.css ===== */

/*
 * MEP — Harmonisation globale V1
 * Chargée après mep-core.css et mep-work-mode.css.
 *
 * Objectifs :
 * - même grammaire visuelle Salariat / Indépendant ;
 * - accent propre à l’espace actif ;
 * - header, mode switcher, héros, KPI, formulaires et navigation cohérents ;
 * - meilleure densité desktop et meilleure lisibilité mobile ;
 * - aucune dépendance fonctionnelle.
 */

:root{
  --mep-ui-bg:#f5f7f6;
  --mep-ui-surface:#ffffff;
  --mep-ui-surface-soft:#f8faf9;
  --mep-ui-text:#24332e;
  --mep-ui-muted:#718079;
  --mep-ui-line:#dfe7e3;
  --mep-ui-line-strong:#cdd9d4;
  --mep-ui-radius:14px;
  --mep-ui-radius-lg:20px;
  --mep-ui-shadow:0 10px 30px rgba(28,49,42,.055);
  --mep-ui-shadow-hover:0 14px 34px rgba(28,49,42,.085);
  --mep-accent:#1f6d59;
  --mep-accent-dark:#185744;
  --mep-accent-soft:#eaf6f1;
  --mep-accent-soft-2:#f4faf7;
  --mep-accent-rgb:31,109,89;
}

/* =========================================================
   Workspace themes
   ========================================================= */

body.mep-workspace-salaried{
  --mep-accent:#1f6d59;
  --mep-accent-dark:#185744;
  --mep-accent-soft:#eaf6f1;
  --mep-accent-soft-2:#f4faf7;
  --mep-accent-rgb:31,109,89;

  --primary:#1f6d59;
  --primary-dark:#185744;
  --primary-light:#eaf6f1;
  --focus:0 0 0 4px rgba(31,109,89,.13);
}

body.mep-workspace-independent{
  --mep-accent:#315ed4;
  --mep-accent-dark:#2449aa;
  --mep-accent-soft:#edf2ff;
  --mep-accent-soft-2:#f7f9ff;
  --mep-accent-rgb:49,94,212;

  --primary:#315ed4;
  --primary-dark:#2449aa;
  --primary-light:#edf2ff;
  --focus:0 0 0 4px rgba(49,94,212,.13);
}

/* =========================================================
   Global shell
   ========================================================= */

body.mep-app{
  background:
    radial-gradient(circle at 8% -10%,rgba(var(--mep-accent-rgb),.055),transparent 28rem),
    linear-gradient(180deg,#f9fbfa 0,#f4f7f5 430px,#f6f8f7 100%);
  color:var(--mep-ui-text);
}

body.mep-app .container{
  width:min(1280px,calc(100% - 32px))!important;
  max-width:none!important;
  margin-inline:auto!important;
}

body.mep-app #contenu-principal{
  min-height:55vh;
  padding-top:14px;
}

body.mep-app :target{
  scroll-margin-top:104px;
}

/* =========================================================
   Header
   ========================================================= */

body.mep-app .mep-vnext-header{
  border-bottom:1px solid rgba(210,221,216,.9)!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 4px 20px rgba(22,42,35,.035);
}

body.mep-app .mep-vnext-header-inner{
  max-width:1380px!important;
  min-height:66px!important;
  padding-inline:20px!important;
  gap:16px!important;
}

body.mep-app .mep-vnext-logo,
body.mep-app .mep-vnext-account summary span{
  background:var(--mep-accent)!important;
}

body.mep-app .mep-vnext-brand-copy small{
  color:#82908a!important;
}

.mep-vnext-workspace-tag{
  display:inline-flex;
  align-items:center;
  gap:5px;
  flex:0 0 auto;
  min-height:29px;
  padding:5px 9px;
  border:1px solid rgba(var(--mep-accent-rgb),.17);
  border-radius:999px;
  background:var(--mep-accent-soft);
  color:var(--mep-accent-dark);
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.025em;
}

body.mep-app .mep-vnext-navigation{
  min-width:0;
  gap:2px!important;
}

body.mep-app .mep-vnext-navigation a{
  padding:8px 9px!important;
  border-radius:9px!important;
  color:#56635e!important;
  font-size:12.5px!important;
  white-space:nowrap;
}

body.mep-app .mep-vnext-navigation a:hover{
  background:#f2f6f4!important;
  color:var(--mep-accent-dark)!important;
}

body.mep-app .mep-vnext-navigation a.is-active{
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
  box-shadow:inset 0 0 0 1px rgba(var(--mep-accent-rgb),.08);
}

body.mep-app .mep-vnext-account summary{
  border:1px solid transparent;
}

body.mep-app .mep-vnext-account[open] summary{
  border-color:var(--mep-ui-line);
  background:#f7f9f8;
}

body.mep-app .mep-vnext-account>div{
  border-color:var(--mep-ui-line)!important;
  border-radius:13px!important;
  box-shadow:0 18px 42px rgba(21,43,35,.14)!important;
}

body.mep-app .mep-vnext-account>div a:hover,
body.mep-app .mep-vnext-account>div button:hover{
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
}

/* =========================================================
   Workspace ribbon
   ========================================================= */

body.mep-app .mep-work-context{
  width:min(1280px,calc(100% - 32px))!important;
  min-height:52px;
  margin:8px auto 0!important;
  padding:7px 9px!important;
  border-color:var(--mep-ui-line)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 6px 20px rgba(30,51,44,.035)!important;
}

body.mep-app .mep-work-context-copy{
  gap:9px!important;
}

body.mep-app .mep-work-context-copy>span{
  width:34px!important;
  height:34px!important;
  border-radius:9px!important;
  background:var(--mep-accent-soft)!important;
  font-size:16px!important;
}

body.mep-app .mep-work-context-copy small{
  color:#8a9691!important;
  font-size:9px!important;
  letter-spacing:.095em!important;
}

body.mep-app .mep-work-context-copy strong{
  color:var(--mep-ui-text)!important;
  font-size:13px!important;
}

body.mep-app .mep-work-context-copy em{
  display:block;
  margin-top:1px;
  color:#819089;
  font-size:9.5px;
  line-height:1.25;
  font-style:normal;
  font-weight:700;
}

body.mep-app .mep-work-context-actions{
  gap:6px!important;
}

.mep-work-mode-pills{
  display:flex;
  align-items:center;
  gap:3px;
  padding:3px;
  border:1px solid #e3e9e6;
  border-radius:10px;
  background:#f7f9f8;
}

.mep-work-mode-pills form{
  margin:0!important;
}

body.mep-app .mep-work-chip{
  min-height:30px;
  padding:6px 8px!important;
  border-color:transparent!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#77847e!important;
  font-size:10px!important;
  box-shadow:none!important;
}

body.mep-app .mep-work-chip:hover{
  background:#fff!important;
  color:#46564f!important;
}

body.mep-app .mep-work-chip.is-active{
  border-color:rgba(var(--mep-accent-rgb),.12)!important;
  background:#fff!important;
  color:var(--mep-accent-dark)!important;
  box-shadow:0 2px 7px rgba(22,42,35,.055)!important;
}

body.mep-app .mep-work-chip.is-workspace-switch{
  border:1px solid rgba(var(--mep-accent-rgb),.18)!important;
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
  font-weight:900!important;
}

body.mep-app .mep-work-context-open{
  min-height:30px;
  display:inline-flex;
  align-items:center;
  padding:6px 8px!important;
  color:#74827c!important;
  font-size:10px!important;
  font-weight:800!important;
}

body.mep-app .mep-work-context-open:hover{
  background:#f3f6f5!important;
  color:var(--mep-accent-dark)!important;
}

body.mep-app .mep-work-flash{
  width:min(1280px,calc(100% - 32px))!important;
  margin-top:7px!important;
  padding:9px 12px!important;
  border-radius:10px!important;
  font-size:11px!important;
}

/* =========================================================
   Shared page rhythm
   ========================================================= */

body.mep-app :is(
  .applications-final,
  .salaried-planner-page,
  .mep-independent-foundation,
  .mep-path-page,
  .mep-live-profile,
  .documents-page-simple
){
  margin-inline:auto;
}

body.mep-app .mep-independent-foundation{
  padding:8px 0 34px!important;
}

body.mep-app :is(
  .applications-final,
  .salaried-planner-page,
  .mep-path-page,
  .mep-live-profile,
  .documents-page-simple
){
  padding-top:4px;
  padding-bottom:28px;
}

/* =========================================================
   Shared heroes
   ========================================================= */

body.mep-app :is(
  .applications-final-hero,
  .salaried-planner-hero,
  .mep-independent-hero,
  .mep-path-hero-final,
  .mep-live-profile-hero,
  .documents-page-header
){
  border:1px solid var(--mep-ui-line)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(var(--mep-accent-rgb),.105),transparent 38%),
    linear-gradient(145deg,#fff,var(--mep-accent-soft-2))!important;
  box-shadow:0 8px 24px rgba(28,49,42,.035)!important;
}

body.mep-app :is(
  .applications-final-hero,
  .salaried-planner-hero,
  .mep-independent-hero
){
  padding:22px 24px!important;
  margin-bottom:12px!important;
}

body.mep-app .mep-independent-hero{
  min-height:0!important;
  align-items:center!important;
}

body.mep-app :is(
  .applications-final-hero,
  .salaried-planner-hero,
  .mep-independent-hero
) h1{
  margin:2px 0 7px!important;
  color:#20312b!important;
  font-size:clamp(27px,3vw,38px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}

body.mep-app :is(
  .applications-final-hero,
  .salaried-planner-hero,
  .mep-independent-hero
) p:not(.home-eyebrow):not(.mep-work-eyebrow){
  max-width:800px;
  margin:0!important;
  color:#6c7a74!important;
  font-size:13px!important;
  line-height:1.55!important;
}

body.mep-app :is(.home-eyebrow,.mep-work-eyebrow,.vnext-eyebrow,.mep-path-kicker){
  color:var(--mep-accent)!important;
}

body.mep-app .mep-work-eyebrow{
  margin-bottom:5px!important;
  font-size:9.5px!important;
  letter-spacing:.105em!important;
}

/* =========================================================
   Buttons
   ========================================================= */

body.mep-app :is(
  .button,
  .mep-work-btn,
  .vnext-btn,
  .documents-main-actions a,
  .mep-path-hero-actions a
){
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px;
  box-sizing:border-box;
  border:1px solid var(--mep-ui-line-strong)!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#40524a!important;
  padding:8px 11px!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:850!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transition:.16s ease!important;
}

body.mep-app :is(
  .button,
  .mep-work-btn,
  .vnext-btn,
  .documents-main-actions a,
  .mep-path-hero-actions a
):hover{
  border-color:rgba(var(--mep-accent-rgb),.28)!important;
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
  transform:translateY(-1px);
}

body.mep-app :is(
  .button-primary,
  .mep-work-btn.is-primary,
  .vnext-btn.is-primary,
  .documents-main-actions .is-primary,
  .mep-path-hero-actions .is-primary
){
  border-color:var(--mep-accent)!important;
  background:var(--mep-accent)!important;
  color:#fff!important;
}

body.mep-app :is(
  .button-primary,
  .mep-work-btn.is-primary,
  .vnext-btn.is-primary,
  .documents-main-actions .is-primary,
  .mep-path-hero-actions .is-primary
):hover{
  border-color:var(--mep-accent-dark)!important;
  background:var(--mep-accent-dark)!important;
  color:#fff!important;
}

/* =========================================================
   Secondary navigation / tabs
   ========================================================= */

body.mep-app :is(
  .mep-independent-nav,
  .salaried-pipeline-nav,
  .salaried-position-tabs
){
  scrollbar-width:thin;
}

body.mep-app .mep-independent-nav{
  display:flex!important;
  gap:4px!important;
  overflow-x:auto;
  padding:5px!important;
  margin:0 0 12px!important;
  border:1px solid var(--mep-ui-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(31,50,44,.025);
}

body.mep-app .mep-independent-nav a{
  flex:0 0 auto;
  min-height:34px;
  display:inline-flex!important;
  align-items:center;
  padding:7px 9px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#6d7b75!important;
  font-size:10px!important;
  font-weight:850!important;
  text-decoration:none!important;
  white-space:nowrap;
}

body.mep-app .mep-independent-nav a:hover{
  background:#f4f7f6!important;
  color:var(--mep-accent-dark)!important;
}

body.mep-app .mep-independent-nav a.is-active{
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
  box-shadow:inset 0 0 0 1px rgba(var(--mep-accent-rgb),.09);
}

body.mep-app .salaried-pipeline-nav{
  padding:5px!important;
  border:1px solid var(--mep-ui-line)!important;
  border-radius:12px!important;
  background:#fff!important;
}

body.mep-app .salaried-pipeline-nav a{
  border-radius:8px!important;
}

/* =========================================================
   Status strips
   ========================================================= */

body.mep-app .mep-independent-status{
  gap:7px!important;
  margin:0 0 12px!important;
}

body.mep-app .mep-independent-status span{
  padding:9px 11px!important;
  border-color:var(--mep-ui-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#687872!important;
  font-size:10.5px!important;
  box-shadow:0 4px 12px rgba(30,48,42,.02);
}

body.mep-app .mep-independent-status b{
  color:#87948e!important;
  font-size:8.5px!important;
}

/* =========================================================
   KPI cards
   ========================================================= */

body.mep-app :is(
  .vnext-kpi,
  .salaried-network-kpis article,
  .salaried-offer-kpis article,
  .salaried-planner-kpis article,
  .salaried-position-summary article,
  .salaried-role-kpis a,
  .salaried-evolution-kpis article,
  .salaried-closure-kpis article,
  .mep-independent-dashboard-kpis article,
  .mep-crm-kpis article,
  .mep-mission-kpis article,
  .mep-doc-kpis article,
  .mep-finance-kpis article,
  .mep-planner-kpis article,
  .mep-forecast-kpis article,
  .mep-sim-kpis article,
  .documents-kpi-grid > *,
  .mep-independent-kpis article
){
  border:1px solid var(--mep-ui-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(28,48,41,.025)!important;
}

body.mep-app :is(
  .vnext-kpi,
  .salaried-role-kpis a
):hover{
  border-color:rgba(var(--mep-accent-rgb),.25)!important;
  box-shadow:var(--mep-ui-shadow)!important;
}

body.mep-app :is(
  .mep-independent-dashboard-kpis article.is-primary,
  .mep-forecast-kpis article.is-primary,
  .mep-sim-kpis article.is-primary
){
  border-color:rgba(var(--mep-accent-rgb),.22)!important;
  background:var(--mep-accent-soft-2)!important;
}

body.mep-app :is(
  .vnext-kpi,
  .salaried-network-kpis article,
  .salaried-offer-kpis article,
  .salaried-planner-kpis article,
  .salaried-position-summary article,
  .salaried-role-kpis a,
  .salaried-evolution-kpis article,
  .salaried-closure-kpis article,
  .mep-independent-dashboard-kpis article,
  .mep-crm-kpis article,
  .mep-mission-kpis article,
  .mep-doc-kpis article,
  .mep-finance-kpis article,
  .mep-planner-kpis article,
  .mep-forecast-kpis article,
  .mep-sim-kpis article
) small{
  color:#86938d!important;
  font-size:9px!important;
  letter-spacing:.055em;
}

body.mep-app :is(
  .vnext-kpi,
  .salaried-network-kpis article,
  .salaried-offer-kpis article,
  .salaried-planner-kpis article,
  .salaried-position-summary article,
  .salaried-role-kpis a,
  .salaried-evolution-kpis article,
  .salaried-closure-kpis article,
  .mep-independent-dashboard-kpis article,
  .mep-crm-kpis article,
  .mep-mission-kpis article,
  .mep-doc-kpis article,
  .mep-finance-kpis article,
  .mep-planner-kpis article,
  .mep-forecast-kpis article,
  .mep-sim-kpis article
) b,
body.mep-app .vnext-kpi strong{
  color:#2c443a!important;
}

/* =========================================================
   Panels / cards
   ========================================================= */

body.mep-app :is(
  .mep-independent-card,
  .mep-independent-dashboard-panel,
  .mep-independent-progress-card,
  .mep-crm-stage,
  .mep-mission-main,
  .mep-mission-form-panel,
  .mep-doc-main,
  .mep-doc-form-panel,
  .mep-finance-panel,
  .mep-planner-panel,
  .mep-forecast-panel,
  .mep-sim-form-panel,
  .mep-sim-result-panel,
  .mep-health-panel,
  .applications-final-card,
  .salaried-opportunity-card,
  .salaried-opportunity-form-panel,
  .salaried-network-card,
  .salaried-network-panel,
  .salaried-position-form,
  .salaried-position-compensation,
  .salaried-onboarding-checklist,
  .salaried-position-goals,
  .salaried-role-timeline>article,
  .salaried-role-form-shell,
  .salaried-evolution-section,
  .salaried-closure-form,
  .salaried-closure-preview,
  .salaried-closure-section,
  .mep-path-section-final,
  .mep-live-profile-panel,
  .document-card
){
  border-color:var(--mep-ui-line)!important;
  box-shadow:0 5px 18px rgba(28,48,41,.025)!important;
}

body.mep-app :is(
  .mep-independent-card,
  .applications-final-card,
  .salaried-opportunity-card,
  .salaried-network-card,
  .document-card
):hover{
  border-color:rgba(var(--mep-accent-rgb),.20)!important;
  box-shadow:var(--mep-ui-shadow-hover)!important;
}

/* =========================================================
   Independent dashboard alignment
   ========================================================= */

body.mep-app .mep-independent-dashboard{
  margin-top:0!important;
}

body.mep-app .mep-independent-dashboard-head{
  padding:15px 17px!important;
  border:1px solid var(--mep-ui-line)!important;
  border-radius:13px!important;
  background:#fff!important;
}

body.mep-app .mep-independent-dashboard-head h2{
  margin:2px 0 4px!important;
  color:#263930!important;
  font-size:20px!important;
}

body.mep-app .mep-independent-dashboard-head p:not(.mep-work-eyebrow){
  color:#74837c!important;
  font-size:11px!important;
}

body.mep-app .mep-independent-readiness{
  border-color:rgba(var(--mep-accent-rgb),.16)!important;
  background:var(--mep-accent-soft)!important;
}

body.mep-app .mep-independent-readiness strong{
  color:var(--mep-accent-dark)!important;
}

/* =========================================================
   Form harmonization
   ========================================================= */

body.mep-app :is(
  .applications-final,
  .salaried-planner-page,
  .mep-independent-foundation,
  .mep-live-profile,
  .mep-path-page,
  .documents-page-simple
) :is(
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="url"],
  input[type="number"],
  input[type="date"],
  input[type="datetime-local"],
  input[type="search"],
  input[type="password"],
  select
){
  min-height:39px!important;
  padding:7px 9px!important;
  border:1px solid #d9e3df!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#34463e!important;
  font-size:12px;
  box-shadow:none!important;
}

body.mep-app :is(
  .applications-final,
  .salaried-planner-page,
  .mep-independent-foundation,
  .mep-live-profile,
  .mep-path-page,
  .documents-page-simple
) textarea{
  padding:8px 9px!important;
  border:1px solid #d9e3df!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#34463e!important;
  font-size:12px;
  box-shadow:none!important;
}

body.mep-app :is(
  .applications-final,
  .salaried-planner-page,
  .mep-independent-foundation,
  .mep-live-profile,
  .mep-path-page,
  .documents-page-simple
) :is(input,select,textarea):focus{
  border-color:var(--mep-accent)!important;
  box-shadow:0 0 0 3px rgba(var(--mep-accent-rgb),.10)!important;
  outline:none!important;
}

body.mep-app :is(
  .applications-final,
  .salaried-planner-page,
  .mep-independent-foundation
) label>span{
  color:#586b62;
}

/* =========================================================
   Warnings / success
   ========================================================= */

body.mep-app :is(
  .is-warning,
  .is-alert
){
  --mep-state-border:#e7c2ad;
}

body.mep-app .mep-independent-flash.is-success,
body.mep-app .mep-work-flash:not(.is-error){
  border-color:#c6e4d7!important;
  background:#eef9f4!important;
  color:#22624d!important;
}

body.mep-app .mep-independent-flash.is-error,
body.mep-app .mep-work-flash.is-error{
  border-color:#efc6c2!important;
  background:#fff2f1!important;
  color:#8b3c35!important;
}

/* =========================================================
   Legacy/profile/parcours/documents alignment
   ========================================================= */

body.mep-app .mep-live-profile{
  --profile-accent:var(--mep-accent);
}

body.mep-app .mep-live-profile-hero,
body.mep-app .mep-path-hero-final,
body.mep-app .documents-page-header{
  padding:22px!important;
  margin-bottom:12px!important;
}

body.mep-app .mep-path-module-final{
  border-color:var(--mep-ui-line)!important;
  border-radius:12px!important;
  box-shadow:none!important;
}

body.mep-app .mep-path-module-final.is-ready{
  border-color:rgba(var(--mep-accent-rgb),.19)!important;
  background:var(--mep-accent-soft-2)!important;
}

body.mep-app .mep-path-progress-final span{
  background:var(--mep-accent)!important;
}

body.mep-app .documents-direct-grid,
body.mep-app .documents-list{
  gap:8px!important;
}

/* =========================================================
   Footer
   ========================================================= */

body.mep-app .mep-footer-final{
  margin-top:14px;
  border-top:1px solid var(--mep-ui-line);
  background:#fff;
}

body.mep-app .mep-footer-final__logo{
  background:var(--mep-accent)!important;
}

body.mep-app .mep-footer-final a:hover{
  color:var(--mep-accent-dark)!important;
}

/* =========================================================
   Mobile bottom nav
   ========================================================= */

body.mep-app .mep-vnext-mobile-nav{
  border-top:1px solid #dce5e1!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 -8px 24px rgba(26,47,39,.055);
}

body.mep-app .mep-vnext-mobile-nav a{
  min-width:0;
  color:#7c8a84!important;
}

body.mep-app .mep-vnext-mobile-nav a.is-active{
  color:var(--mep-accent)!important;
}

body.mep-app .mep-vnext-mobile-nav a small{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* =========================================================
   Responsive
   ========================================================= */

@media(max-width:1240px){
  .mep-vnext-workspace-tag{
    display:none;
  }

  body.mep-app .mep-vnext-header-inner{
    gap:11px!important;
  }

  body.mep-app .mep-vnext-navigation a{
    padding-inline:7px!important;
    font-size:12px!important;
  }
}

@media(max-width:1020px){
  body.mep-app .mep-vnext-header-inner{
    min-height:62px!important;
  }

  body.mep-app .mep-work-context{
    align-items:center!important;
  }

  body.mep-app .mep-work-mode-pills{
    overflow-x:auto;
  }
}

@media(max-width:780px){
  body.mep-app{
    background:#f5f7f6;
  }

  body.mep-app .container{
    width:calc(100% - 20px)!important;
  }

  body.mep-app #contenu-principal{
    padding-top:9px;
  }

  body.mep-app .mep-vnext-navigation{
    border-color:var(--mep-ui-line)!important;
    box-shadow:0 18px 42px rgba(23,44,36,.16)!important;
  }

  body.mep-app .mep-vnext-navigation a{
    min-height:38px;
    display:flex;
    align-items:center;
    padding:8px 10px!important;
    font-size:12px!important;
  }

  body.mep-app .mep-work-context{
    width:calc(100% - 20px)!important;
    align-items:flex-start!important;
    gap:7px!important;
    padding:8px!important;
  }

  body.mep-app .mep-work-context-actions{
    width:100%;
    display:flex!important;
    flex-wrap:wrap!important;
  }

  .mep-work-mode-pills{
    max-width:100%;
    flex:1 1 auto;
    overflow-x:auto;
  }

  body.mep-app .mep-work-context-actions .is-workspace-switch{
    width:auto!important;
  }

  body.mep-app :is(
    .applications-final-hero,
    .salaried-planner-hero,
    .mep-independent-hero
  ){
    padding:18px!important;
    border-radius:15px!important;
  }

  body.mep-app :is(
    .applications-final-hero,
    .salaried-planner-hero,
    .mep-independent-hero
  ) h1{
    font-size:27px!important;
  }

  body.mep-app .mep-independent-nav{
    margin-inline:-1px!important;
  }

  body.mep-app :is(
    .salaried-evolution-kpis,
    .salaried-closure-kpis,
    .salaried-role-kpis
  ){
    gap:6px!important;
  }
}

@media(max-width:560px){
  body.mep-app .container{
    width:calc(100% - 14px)!important;
  }

  body.mep-app .mep-vnext-header-inner{
    min-height:58px!important;
    padding-inline:8px!important;
  }

  body.mep-app .mep-work-context{
    width:calc(100% - 14px)!important;
    margin-top:6px!important;
  }

  body.mep-app .mep-work-context-copy>span{
    width:31px!important;
    height:31px!important;
  }

  body.mep-app .mep-work-context-copy strong{
    font-size:12px!important;
  }

  body.mep-app .mep-work-mode-pills{
    order:2;
    width:100%;
  }

  body.mep-app .mep-work-mode-pills form{
    flex:1 1 0;
  }

  body.mep-app .mep-work-mode-pills .mep-work-chip{
    width:100%!important;
  }

  body.mep-app .mep-work-context-open{
    margin-left:auto;
  }

  body.mep-app .mep-independent-status{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  body.mep-app .mep-independent-status span{
    padding:8px!important;
  }

  body.mep-app .mep-independent-status b{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  body.mep-app :is(
    .applications-final,
    .salaried-planner-page,
    .mep-independent-foundation,
    .mep-live-profile,
    .mep-path-page,
    .documents-page-simple
  ) :is(
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="url"],
    input[type="number"],
    input[type="date"],
    input[type="datetime-local"],
    input[type="search"],
    input[type="password"],
    select,
    textarea
  ){
    font-size:16px!important;
  }
}

@media(max-width:390px){
  body.mep-app .mep-independent-status{
    grid-template-columns:1fr!important;
  }

  body.mep-app .mep-work-context-actions .is-workspace-switch{
    flex:1 1 100%;
  }
}


/* ===== mep-harmonized-v2.css ===== */

/*
 * MEP — Harmonisation globale V2
 * Finition desktop/mobile au-dessus de mep-harmonized.css.
 */

/* =========================================================
   Header desktop : moins chargé, menu "Plus" cohérent
   ========================================================= */

@media (min-width:1021px){
  body.mep-app .mep-vnext-header-inner{
    max-width:1420px!important;
  }

  body.mep-app .mep-vnext-navigation{
    position:relative;
    gap:2px!important;
  }

  body.mep-app .mep-vnext-navigation>a.is-desktop-primary{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    padding:7px 8px!important;
    font-size:12px!important;
    font-weight:780!important;
  }

  .mep-vnext-more{
    position:relative;
    flex:0 0 auto;
  }

  .mep-vnext-more>summary{
    min-height:36px;
    display:flex;
    align-items:center;
    gap:5px;
    box-sizing:border-box;
    padding:7px 8px;
    border-radius:9px;
    color:#56635e;
    font-size:12px;
    line-height:1;
    font-weight:780;
    list-style:none;
    cursor:pointer;
    user-select:none;
    transition:.15s ease;
  }

  .mep-vnext-more>summary::-webkit-details-marker{
    display:none;
  }

  .mep-vnext-more>summary span{
    color:#89958f;
    font-size:10px;
    transition:transform .15s ease;
  }

  .mep-vnext-more:hover>summary,
  .mep-vnext-more[open]>summary{
    background:#f2f6f4;
    color:var(--mep-accent-dark);
  }

  .mep-vnext-more.is-active>summary{
    background:var(--mep-accent-soft);
    color:var(--mep-accent-dark);
    box-shadow:inset 0 0 0 1px rgba(var(--mep-accent-rgb),.08);
  }

  .mep-vnext-more[open]>summary span{
    transform:rotate(180deg);
  }

  .mep-vnext-more>div{
    position:absolute;
    top:calc(100% + 8px);
    left:0;
    z-index:5400;
    width:245px;
    padding:7px;
    border:1px solid var(--mep-ui-line);
    border-radius:12px;
    background:#fff;
    box-shadow:0 18px 42px rgba(21,43,35,.14);
  }

  .mep-vnext-more>div a{
    display:block!important;
    width:100%;
    box-sizing:border-box;
    margin:0!important;
    padding:9px 10px!important;
    border-radius:8px!important;
    color:#485850!important;
    font-size:11.5px!important;
    font-weight:750!important;
    text-decoration:none;
  }

  .mep-vnext-more>div a:hover,
  .mep-vnext-more>div a.is-active{
    background:var(--mep-accent-soft)!important;
    color:var(--mep-accent-dark)!important;
  }
}

@media (max-width:1020px){
  .mep-vnext-more.is-desktop-primary{
    display:none!important;
  }
}

/* =========================================================
   Cycle du poste : une seule navigation pour 4 modules
   ========================================================= */

.mep-role-cycle-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
  margin:0 0 12px;
  padding:5px;
  border:1px solid var(--mep-ui-line);
  border-radius:13px;
  background:#fff;
  box-shadow:0 5px 16px rgba(28,48,41,.025);
}

.mep-role-cycle-nav a{
  min-width:0;
  display:grid;
  grid-template-columns:31px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:8px;
  align-items:center;
  padding:8px 9px;
  border:1px solid transparent;
  border-radius:9px;
  color:#627169;
  text-decoration:none;
  transition:.15s ease;
}

.mep-role-cycle-nav a>span{
  grid-row:1/3;
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#f1f5f3;
  font-size:14px;
}

.mep-role-cycle-nav a>b{
  overflow:hidden;
  color:#40524a;
  font-size:10.5px;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.mep-role-cycle-nav a>small{
  overflow:hidden;
  color:#8a9690;
  font-size:8.5px;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.mep-role-cycle-nav a:hover{
  border-color:#e1e8e5;
  background:#f8faf9;
}

.mep-role-cycle-nav a.is-active{
  border-color:rgba(var(--mep-accent-rgb),.16);
  background:var(--mep-accent-soft);
}

.mep-role-cycle-nav a.is-active>span{
  background:#fff;
  box-shadow:0 2px 8px rgba(var(--mep-accent-rgb),.08);
}

.mep-role-cycle-nav a.is-active>b{
  color:var(--mep-accent-dark);
}

/* =========================================================
   Desktop density : gros modules
   ========================================================= */

@media (min-width:1050px){
  body.mep-app :is(
    .salaried-network-layout,
    .salaried-opportunity-layout,
    .salaried-role-layout,
    .salaried-closure-grid,
    .salaried-comp-layout,
    .mep-crm-shell,
    .mep-mission-shell,
    .mep-doc-shell,
    .mep-planner-workspace,
    .mep-sim-layout
  ){
    gap:10px!important;
  }

  body.mep-app :is(
    .salaried-network-panel,
    .salaried-role-form-shell,
    .salaried-closure-preview,
    .salaried-position-compensation,
    .mep-mission-form-panel,
    .mep-doc-form-panel,
    .mep-sim-form-panel
  ){
    top:82px!important;
  }
}

/* Same visual rhythm for primary sections. */
body.mep-app :is(
  .salaried-position-section-head,
  .mep-independent-panel-head,
  .mep-finance-panel-head,
  .mep-forecast-panel-head,
  .mep-sim-panel-head,
  .mep-health-panel-head,
  .mep-crm-panel-title
){
  margin-bottom:9px!important;
  padding-bottom:8px;
  border-bottom:1px solid #edf1ef;
}

body.mep-app :is(
  .salaried-position-section-head,
  .mep-independent-panel-head,
  .mep-finance-panel-head,
  .mep-forecast-panel-head,
  .mep-sim-panel-head,
  .mep-health-panel-head
) h2,
body.mep-app .mep-crm-panel-title h2{
  color:#2d4037!important;
  letter-spacing:-.015em;
}

body.mep-app :is(
  .salaried-position-section-head,
  .mep-independent-panel-head,
  .mep-finance-panel-head,
  .mep-forecast-panel-head,
  .mep-sim-panel-head,
  .mep-health-panel-head
) p:not(.home-eyebrow):not(.mep-work-eyebrow){
  color:#7b8983!important;
}

/* Hero action groups stay compact instead of taking over the page. */
body.mep-app :is(
  .salaried-opportunity-hero-actions,
  .mep-crm-hero-actions,
  .vnext-hero-actions
){
  display:flex!important;
  align-items:center;
  justify-content:flex-end;
  gap:6px!important;
  flex-wrap:wrap;
}

/* KPI height alignment. */
body.mep-app :is(
  .vnext-kpi,
  .salaried-network-kpis article,
  .salaried-offer-kpis article,
  .salaried-planner-kpis article,
  .salaried-position-summary article,
  .salaried-role-kpis a,
  .salaried-evolution-kpis article,
  .salaried-closure-kpis article,
  .mep-independent-dashboard-kpis article,
  .mep-crm-kpis article,
  .mep-mission-kpis article,
  .mep-doc-kpis article,
  .mep-finance-kpis article,
  .mep-planner-kpis article,
  .mep-forecast-kpis article,
  .mep-sim-kpis article
){
  min-height:76px;
  box-sizing:border-box;
}

/* =========================================================
   Toolbars and filters
   ========================================================= */

body.mep-app :is(
  .salaried-opportunity-toolbar,
  .salaried-network-toolbar,
  .salaried-role-toolbar,
  .salaried-planner-controls,
  .mep-crm-toolbar,
  .mep-finance-period
){
  border-color:var(--mep-ui-line)!important;
  border-radius:11px!important;
}

body.mep-app :is(
  .salaried-opportunity-toolbar,
  .salaried-network-toolbar,
  .salaried-role-toolbar
){
  padding:6px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(28,48,41,.02);
}

body.mep-app :is(
  .salaried-opportunity-toolbar,
  .salaried-network-toolbar,
  .salaried-role-toolbar,
  .mep-crm-toolbar
) :is(button,a){
  min-height:36px;
}

/* =========================================================
   Lists, cards and status labels
   ========================================================= */

body.mep-app :is(
  .salaried-opportunity-card,
  .salaried-network-card,
  .mep-crm-card,
  .mep-mission-card,
  .document-card
){
  overflow:hidden;
}

body.mep-app :is(
  .salaried-opportunity-stage-pill,
  .salaried-network-tags,
  .mep-crm-stage-pill,
  .mep-mission-status-pill,
  .document-status,
  .document-usage
){
  border-radius:999px!important;
  font-weight:850!important;
}

body.mep-app :is(
  .salaried-network-card-actions,
  .salaried-opportunity-actions,
  .mep-mission-card-actions,
  .document-card-actions
){
  border-top-color:#edf1ef!important;
  background:#fbfcfc!important;
}

/* =========================================================
   Form panels : unified compact "premium" look
   ========================================================= */

body.mep-app :is(
  .salaried-opportunity-form-panel,
  .salaried-network-panel,
  .salaried-position-form,
  .salaried-role-form-shell,
  .salaried-comp-form,
  .salaried-review-form,
  .salaried-request-form,
  .salaried-closure-form,
  .mep-mission-form-panel,
  .mep-doc-form-panel,
  .mep-planner-form-panel,
  .mep-sim-form-panel
){
  border-radius:14px!important;
}

body.mep-app :is(
  .salaried-opportunity-form,
  .salaried-network-form,
  .salaried-position-form,
  .salaried-role-form,
  .salaried-comp-form,
  .salaried-review-form,
  .salaried-request-form,
  .salaried-closure-form,
  .mep-mission-form,
  .mep-doc-form,
  .mep-planner-form,
  .mep-sim-form
){
  gap:7px!important;
}

body.mep-app :is(
  .salaried-opportunity-fields.two,
  .salaried-planner-fields.two,
  .mep-mission-fields.two,
  .mep-sim-fields.two
){
  gap:7px!important;
}

body.mep-app :is(
  .salaried-opportunity-fields.three,
  .mep-sim-fields.three
){
  gap:7px!important;
}

/* =========================================================
   Independent pages : stop feeling like separate mini-sites
   ========================================================= */

body.mep-app .mep-independent-foundation :is(
  .mep-crm-page,
  .mep-missions-page,
  .mep-finance-page,
  .mep-planner-page,
  .mep-forecast-page,
  .mep-sim-page,
  .mep-health-page
){
  display:grid;
  gap:10px;
}

body.mep-app .mep-independent-foundation :is(
  .mep-crm-kpis,
  .mep-mission-kpis,
  .mep-finance-kpis,
  .mep-planner-kpis,
  .mep-forecast-kpis,
  .mep-sim-kpis
){
  margin-bottom:0!important;
}

body.mep-app .mep-independent-foundation :is(
  .mep-crm-stage,
  .mep-finance-panel,
  .mep-forecast-chart-panel,
  .mep-health-module,
  .mep-sim-result-panel
){
  border-radius:12px!important;
}

body.mep-app .mep-independent-foundation :is(
  .mep-crm-empty,
  .mep-finance-empty,
  .mep-planner-day-empty,
  .mep-sim-empty,
  .mep-health-all-good
){
  border-radius:10px!important;
}

/* =========================================================
   Mon compte : alignement avec le nouveau produit
   ========================================================= */

body.mep-app .account-page{
  padding-top:4px;
  padding-bottom:30px;
}

body.mep-app .account-page-heading{
  margin-bottom:12px!important;
  padding:20px 22px!important;
  border:1px solid var(--mep-ui-line)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(var(--mep-accent-rgb),.10),transparent 38%),
    linear-gradient(145deg,#fff,var(--mep-accent-soft-2))!important;
  box-shadow:0 8px 24px rgba(28,49,42,.035)!important;
}

body.mep-app :is(
  .mep-work-mode-settings,
  .account-card,
  .account-plus-card,
  .account-onboarding,
  .account-security-card,
  .account-formations-card
){
  border:1px solid var(--mep-ui-line)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(28,48,41,.025)!important;
}

body.mep-app .mep-work-mode-option{
  border-color:#e1e8e5!important;
  border-radius:11px!important;
}

body.mep-app .mep-work-mode-option:hover{
  border-color:rgba(var(--mep-accent-rgb),.24)!important;
  background:var(--mep-accent-soft-2)!important;
}

body.mep-app .account-progress span{
  background:var(--mep-accent)!important;
}

/* =========================================================
   Scroll and long content polish
   ========================================================= */

body.mep-app :is(
  .salaried-opportunity-board,
  .mep-crm-pipeline,
  .salaried-position-tabs,
  .mep-independent-nav,
  .salaried-review-list,
  .salaried-request-list
){
  scrollbar-width:thin;
  scrollbar-color:#cbd7d2 transparent;
}

body.mep-app :is(
  .salaried-opportunity-board,
  .mep-crm-pipeline,
  .salaried-position-tabs,
  .mep-independent-nav
)::-webkit-scrollbar{
  height:7px;
}

body.mep-app :is(
  .salaried-opportunity-board,
  .mep-crm-pipeline,
  .salaried-position-tabs,
  .mep-independent-nav
)::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:#cbd7d2;
}

/* =========================================================
   Responsive
   ========================================================= */

@media(max-width:900px){
  .mep-role-cycle-nav{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x proximity;
  }

  .mep-role-cycle-nav a{
    flex:0 0 190px;
    scroll-snap-align:start;
  }
}

@media(max-width:700px){
  .mep-role-cycle-nav{
    margin-inline:-1px;
    padding:4px;
  }

  .mep-role-cycle-nav a{
    flex-basis:165px;
    grid-template-columns:28px minmax(0,1fr);
    padding:7px;
  }

  .mep-role-cycle-nav a>span{
    width:28px;
    height:28px;
  }

  body.mep-app :is(
    .salaried-opportunity-hero-actions,
    .mep-crm-hero-actions,
    .vnext-hero-actions
  ){
    width:100%;
    justify-content:flex-start;
  }
}

@media(max-width:560px){
  body.mep-app .account-page-heading{
    padding:16px!important;
    border-radius:15px!important;
  }

  .mep-role-cycle-nav a{
    flex-basis:150px;
  }

  .mep-role-cycle-nav a>small{
    display:none;
  }
}


/* =========================================================
   V3 static-audit polish
   ========================================================= */

/* Strong, consistent keyboard focus without changing mouse UI. */
body.mep-app :is(
  a,
  button,
  summary,
  input,
  select,
  textarea
):focus-visible{
  outline:3px solid rgba(var(--mep-accent-rgb),.20)!important;
  outline-offset:2px!important;
}

body.mep-app .mep-vnext-navigation a:focus-visible,
body.mep-app .mep-vnext-more>summary:focus-visible,
body.mep-app .mep-vnext-account summary:focus-visible{
  border-radius:9px;
}

/* Make popup layers consistent and prevent hidden menus below content. */
body.mep-app .mep-vnext-more>div,
body.mep-app .mep-vnext-account>div{
  isolation:isolate;
}

body.mep-app .mep-vnext-more[open]>div,
body.mep-app .mep-vnext-account[open]>div{
  animation:mep-pop-in .12s ease-out both;
}

@keyframes mep-pop-in{
  from{opacity:0;transform:translateY(-4px)}
  to{opacity:1;transform:translateY(0)}
}

/* Bottom mobile nav: five genuinely daily actions in both workspaces. */
@media(max-width:780px){
  body.mep-app{
    padding-bottom:76px;
  }

  body.mep-app .mep-vnext-mobile-nav{
    min-height:62px;
    padding:5px max(5px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(5px,env(safe-area-inset-left));
    gap:2px;
  }

  body.mep-app .mep-vnext-mobile-nav a{
    min-height:48px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    padding:4px 3px;
    border-radius:10px;
    font-size:15px;
  }

  body.mep-app .mep-vnext-mobile-nav a.is-active{
    background:var(--mep-accent-soft);
  }

  body.mep-app .mep-vnext-mobile-nav a span{
    line-height:1;
  }

  body.mep-app .mep-vnext-mobile-nav a small{
    font-size:8.5px;
    font-weight:850;
    line-height:1.05;
  }
}

/* Tables retain context while horizontally scrolling. */
body.mep-app .salaried-offer-comparison-table{
  border-color:var(--mep-ui-line)!important;
  scrollbar-width:thin;
  scrollbar-color:#cbd7d2 transparent;
}

body.mep-app .salaried-offer-comparison-table th:first-child{
  box-shadow:6px 0 12px rgba(27,47,40,.035);
}

body.mep-app .salaried-offer-comparison-table tr.is-total th,
body.mep-app .salaried-offer-comparison-table tr.is-total td{
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
}

/* Independent simulator: current scenario follows the active workspace color. */
body.mep-app .mep-sim-sensitivity-table>div.is-current{
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
}

/* Empty states from both universes now have one visual language. */
body.mep-app :is(
  .salaried-position-empty,
  .salaried-role-empty,
  .mep-crm-empty,
  .mep-finance-empty,
  .mep-planner-day-empty,
  .mep-sim-empty,
  .mep-health-all-good
){
  border:1px dashed var(--mep-ui-line-strong)!important;
  background:var(--mep-ui-surface-soft)!important;
  color:var(--mep-ui-muted)!important;
}

/* Avoid huge textarea walls on desktop while keeping them freely resizable. */
@media(min-width:900px){
  body.mep-app :is(
    .salaried-review-form,
    .salaried-request-form,
    .salaried-closure-form,
    .salaried-role-form,
    .mep-mission-form,
    .mep-doc-form
  ) textarea{
    min-height:74px!important;
    max-height:260px;
  }
}

/* Headings do not collide with controls in dense panels. */
body.mep-app .salaried-position-section-head>div,
body.mep-app .mep-independent-panel-head>div{
  min-width:0;
}

body.mep-app .salaried-position-section-head h2,
body.mep-app .mep-independent-panel-head h2{
  overflow-wrap:anywhere;
}

/* Native details and custom animations respect motion preferences. */
@media(prefers-reduced-motion:reduce){
  body.mep-app *,
  body.mep-app *::before,
  body.mep-app *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

/* Small-phone role-cycle navigation: active step remains obvious. */
@media(max-width:420px){
  .mep-role-cycle-nav a{
    flex-basis:132px;
  }

  .mep-role-cycle-nav a>b{
    font-size:10px;
  }

  body.mep-app .mep-vnext-mobile-nav a small{
    font-size:8px;
  }
}


/* ===== mep-product-entry.css ===== */

/*
 * MEP — Entrée produit V6
 * Accueil public + portail Salariat / Indépendant / Mixte.
 */

/* =========================================================
   Header while the account has not chosen a workspace
   ========================================================= */

.mep-vnext-workspace-tag.is-setup{
  border-color:#dfe5e3;
  background:#f5f7f6;
  color:#65736d;
}

.mep-vnext-onboarding-nav-label{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:7px 10px;
  color:#7a8882;
  font-size:11px;
  font-weight:800;
}

/* =========================================================
   First-account portal
   ========================================================= */

.mep-mode-onboarding{
  width:min(1180px,100%);
  margin:0 auto;
  padding:34px 0 60px;
}

.mep-mode-onboarding-hero{
  max-width:850px;
  margin:0 auto 22px;
  text-align:center;
}

.mep-mode-onboarding-eyebrow{
  margin:0 0 8px;
  color:#597068;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.mep-mode-onboarding-hero h1{
  margin:0;
  color:#1c2c26;
  font-size:clamp(34px,5vw,54px);
  line-height:1.02;
  letter-spacing:-.045em;
}

.mep-mode-onboarding-hero>p:last-child{
  max-width:720px;
  margin:14px auto 0;
  color:#6f7e77;
  font-size:14px;
  line-height:1.6;
}

.mep-mode-onboarding-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.mep-mode-onboarding-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:455px;
  padding:22px;
  overflow:hidden;
  border:1px solid #dfe7e3;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 28px rgba(26,46,39,.045);
}

.mep-mode-onboarding-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
}

.mep-mode-onboarding-card.is-salaried::before{
  background:#1f6d59;
}

.mep-mode-onboarding-card.is-independent::before{
  background:#315ed4;
}

.mep-mode-onboarding-card.is-mixed::before{
  background:linear-gradient(90deg,#1f6d59 0 46%,#315ed4 54% 100%);
}

.mep-mode-onboarding-card.is-salaried{
  background:
    radial-gradient(circle at 100% 0,rgba(31,109,89,.075),transparent 38%),
    #fff;
}

.mep-mode-onboarding-card.is-independent{
  background:
    radial-gradient(circle at 100% 0,rgba(49,94,212,.09),transparent 38%),
    #fff;
}

.mep-mode-onboarding-card.is-mixed{
  background:
    radial-gradient(circle at 5% 0,rgba(31,109,89,.055),transparent 35%),
    radial-gradient(circle at 100% 0,rgba(49,94,212,.065),transparent 38%),
    #fff;
}

.mep-mode-onboarding-icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  margin-bottom:18px;
  border-radius:14px;
  background:#f1f5f3;
  font-size:22px;
}

.mep-mode-onboarding-card.is-independent .mep-mode-onboarding-icon{
  background:#edf2ff;
}

.mep-mode-onboarding-card.is-mixed .mep-mode-onboarding-icon{
  background:linear-gradient(135deg,#eaf6f1,#eef2ff);
}

.mep-mode-onboarding-kicker{
  margin:0 0 5px;
  color:#73817b;
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.mep-mode-onboarding-card.is-salaried .mep-mode-onboarding-kicker{
  color:#1f6d59;
}

.mep-mode-onboarding-card.is-independent .mep-mode-onboarding-kicker{
  color:#315ed4;
}

.mep-mode-onboarding-card h2{
  margin:0;
  color:#273a32;
  font-size:21px;
  line-height:1.16;
  letter-spacing:-.025em;
}

.mep-mode-onboarding-card>div>p:last-child{
  margin:9px 0 0;
  color:#718078;
  font-size:12.5px;
  line-height:1.55;
}

.mep-mode-onboarding-card ul{
  display:grid;
  gap:7px;
  margin:20px 0 22px;
  padding:0;
  list-style:none;
}

.mep-mode-onboarding-card li{
  position:relative;
  padding-left:20px;
  color:#55675e;
  font-size:11.5px;
  font-weight:750;
}

.mep-mode-onboarding-card li::before{
  content:"✓";
  position:absolute;
  left:0;
  color:#1f6d59;
  font-weight:950;
}

.mep-mode-onboarding-card.is-independent li::before{
  color:#315ed4;
}

.mep-mode-onboarding-card>form{
  margin:auto 0 0;
}

.mep-mode-onboarding-card form{
  width:100%;
}

.mep-mode-onboarding-card button{
  width:100%;
  min-height:43px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 13px;
  border:0;
  border-radius:10px;
  color:#fff;
  background:#1f6d59;
  font:inherit;
  font-size:11.5px;
  font-weight:900;
  cursor:pointer;
  transition:.15s ease;
}

.mep-mode-onboarding-card.is-independent button{
  background:#315ed4;
}

.mep-mode-onboarding-card button:hover{
  filter:brightness(.95);
  transform:translateY(-1px);
}

.mep-mode-onboarding-mixed-actions{
  display:grid;
  gap:6px;
  margin-top:auto;
}

.mep-mode-onboarding-mixed-actions form:first-child button{
  background:#1f6d59;
}

.mep-mode-onboarding-mixed-actions form:last-child button{
  background:#315ed4;
}

.mep-mode-onboarding-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  width:min(760px,100%);
  margin:16px auto 0;
  padding:11px 13px;
  border:1px solid #e0e7e4;
  border-radius:12px;
  background:#f8faf9;
}

.mep-mode-onboarding-note p{
  margin:0;
  color:#6a7972;
  font-size:11px;
  line-height:1.45;
}

.mep-mode-onboarding-note strong{
  color:#3a5046;
}

/* =========================================================
   Public homepage
   ========================================================= */

.mep-public-product{
  padding-top:48px;
}

.mep-public-product-hero{
  grid-template-columns:minmax(0,1.03fr) minmax(390px,.97fr);
  min-height:490px;
}

.mep-public-product-hero h1{
  max-width:760px;
  font-size:clamp(45px,6vw,70px);
}

.mep-public-mode-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:20px;
}

.mep-public-mode-chips span{
  display:inline-flex;
  align-items:center;
  min-height:31px;
  padding:6px 9px;
  border:1px solid #dfe6e3;
  border-radius:999px;
  background:#fff;
  color:#5b6963;
  font-size:10px;
  font-weight:900;
}

.mep-public-mode-chips .is-salaried{
  border-color:#cbe0d7;
  background:#edf7f3;
  color:#1e624f;
}

.mep-public-mode-chips .is-independent{
  border-color:#ccd7fb;
  background:#f0f3ff;
  color:#2c53bd;
}

.mep-public-mode-chips .is-mixed{
  background:linear-gradient(100deg,#f0f8f4,#f2f4ff);
  color:#425b62;
}

.mep-public-product-actions{
  margin-top:20px!important;
}

.mep-public-dual-card{
  position:relative;
  overflow:hidden;
  padding:24px;
  border:1px solid #dce5e1;
  border-radius:26px;
  background:
    radial-gradient(circle at 5% 0,rgba(31,109,89,.09),transparent 39%),
    radial-gradient(circle at 100% 0,rgba(49,94,212,.10),transparent 40%),
    #fff;
  box-shadow:0 18px 42px rgba(30,49,43,.09);
}

.mep-public-dual-card>header{
  padding-bottom:16px;
  border-bottom:1px solid #e6ece9;
}

.mep-public-dual-eyebrow{
  color:#667a72;
  font-size:9px;
  font-weight:950;
  letter-spacing:.12em;
}

.mep-public-dual-card h3{
  margin:6px 0 7px;
  color:#24372f;
  font-size:23px;
  line-height:1.12;
}

.mep-public-dual-card>header p{
  margin:0!important;
  color:#728179!important;
  font-size:12px!important;
  line-height:1.5!important;
}

.mep-public-dual-lanes{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:16px;
}

.mep-public-dual-lanes section{
  padding:13px;
  border:1px solid #e1e8e5;
  border-radius:14px;
  background:rgba(255,255,255,.84);
}

.mep-public-dual-lanes section.is-salaried{
  border-color:#cae0d7;
}

.mep-public-dual-lanes section.is-independent{
  border-color:#d1daf7;
}

.mep-public-dual-lanes section>div{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:10px;
}

.mep-public-dual-lanes strong{
  color:#30453b;
  font-size:12px;
}

.mep-public-dual-lanes ul{
  display:grid;
  gap:6px;
  margin:0;
  padding:0;
  list-style:none;
}

.mep-public-dual-lanes li{
  color:#6f7e77;
  font-size:10px;
}

.mep-public-dual-footer{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:9px;
  padding:10px 12px;
  border-radius:12px;
  background:linear-gradient(100deg,#eef8f4,#f0f3ff);
}

.mep-public-dual-footer p,
.mep-public-dual-footer strong,
.mep-public-dual-footer small{
  display:block;
  margin:0!important;
}

.mep-public-dual-footer strong{
  color:#3e5149;
  font-size:11px;
}

.mep-public-dual-footer small{
  margin-top:2px!important;
  color:#74837c;
  font-size:9.5px;
}

.mep-public-workspaces{
  margin-top:22px;
}

.mep-public-section-head{
  max-width:780px;
  margin-bottom:13px;
}

.mep-public-section-head h2{
  margin:5px 0 5px;
  color:#21332b;
  font-size:clamp(27px,4vw,39px);
  line-height:1.08;
  letter-spacing:-.035em;
}

.mep-public-section-head>p:last-child{
  margin:0;
  color:#77857f;
  font-size:12.5px;
}

.mep-public-workspaces-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.mep-public-workspaces-grid article{
  min-width:0;
  padding:20px;
  border:1px solid #dfe7e3;
  border-radius:18px;
  background:#fff;
  box-shadow:0 6px 20px rgba(29,49,42,.025);
}

.mep-public-workspaces-grid article.is-salaried{
  border-top:4px solid #1f6d59;
}

.mep-public-workspaces-grid article.is-independent{
  border-top:4px solid #315ed4;
}

.mep-public-workspaces-grid article.is-mixed{
  border-top:4px solid transparent;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(90deg,#1f6d59,#315ed4) border-box;
}

.mep-public-workspace-icon{
  display:grid;
  place-items:center;
  width:41px;
  height:41px;
  margin-bottom:13px;
  border-radius:12px;
  background:#f1f5f3;
  font-size:19px;
}

.mep-public-workspaces-grid article.is-independent .mep-public-workspace-icon{
  background:#edf2ff;
}

.mep-public-workspaces-grid article.is-mixed .mep-public-workspace-icon{
  background:linear-gradient(135deg,#eaf6f1,#eef2ff);
}

.mep-public-workspaces-grid h3{
  margin:5px 0 7px;
  color:#263a31;
  font-size:18px;
  line-height:1.2;
}

.mep-public-workspaces-grid article>p:not(.vnext-eyebrow){
  margin:0;
  color:#74827b;
  font-size:11.5px;
  line-height:1.55;
}

.mep-public-workspaces-grid article>div{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:15px;
}

.mep-public-workspaces-grid article>div span{
  padding:4px 6px;
  border-radius:6px;
  background:#f3f6f5;
  color:#65746d;
  font-size:9px;
  font-weight:800;
}

.mep-public-shared-features{
  margin-top:12px;
}

/* =========================================================
   Responsive
   ========================================================= */

@media(max-width:980px){
  .mep-mode-onboarding-grid{
    grid-template-columns:1fr;
  }

  .mep-mode-onboarding-card{
    min-height:0;
  }

  .mep-public-product-hero{
    grid-template-columns:1fr;
  }

  .mep-public-dual-card{
    max-width:680px;
  }

  .mep-public-workspaces-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:780px){
  .mep-vnext-onboarding-nav-label{
    display:none;
  }

  .mep-mode-onboarding{
    padding:24px 0 90px;
  }

  .mep-mode-onboarding-hero{
    text-align:left;
  }

  .mep-public-product{
    padding-top:28px;
  }

  .mep-public-product-hero{
    gap:22px;
  }
}

@media(max-width:560px){
  .mep-mode-onboarding-hero h1{
    font-size:36px;
  }

  .mep-mode-onboarding-card{
    padding:18px;
    border-radius:16px;
  }

  .mep-public-product-hero h1{
    font-size:41px;
  }

  .mep-public-dual-card{
    padding:17px;
    border-radius:19px;
  }

  .mep-public-dual-lanes{
    grid-template-columns:1fr;
  }

  .mep-public-workspaces-grid article{
    padding:17px;
  }
}


/* ===== mep-public-multimode.css ===== */

/*
 * MEP — Public V9
 * Harmonisation des pages publiques Salariat / Indépendant / Mixte.
 */

.mep-public-tool-modes,
.mep-public-advice-modes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:12px 0;
}

.mep-public-tool-modes article{
  min-width:0;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:12px 13px;
  border:1px solid #dfe7e3;
  border-radius:13px;
  background:#fff;
  box-shadow:0 5px 16px rgba(28,48,41,.025);
}

.mep-public-tool-modes article.is-salaried{
  border-color:#cce0d7;
  background:linear-gradient(135deg,#fff,#f5faf8);
}

.mep-public-tool-modes article.is-independent{
  border-color:#d2daf4;
  background:linear-gradient(135deg,#fff,#f6f8ff);
}

.mep-public-tool-mode-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:11px;
  background:#eef5f2;
  font-size:18px;
}

.mep-public-tool-modes .is-independent .mep-public-tool-mode-icon{
  background:#edf2ff;
}

.mep-public-tool-modes small,
.mep-public-tool-modes strong,
.mep-public-tool-modes p{
  display:block;
}

.mep-public-tool-modes small{
  color:#839089;
  font-size:.57rem;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.mep-public-tool-modes strong{
  margin-top:2px;
  color:#30443b;
  font-size:.75rem;
}

.mep-public-tool-modes p{
  margin:3px 0 0;
  color:#74827b;
  font-size:.61rem;
  line-height:1.4;
}

.mep-public-tool-modes a{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 9px;
  border:1px solid #d8e2de;
  border-radius:8px;
  background:#fff;
  color:#2d684f;
  font-size:.61rem;
  font-weight:850;
  text-decoration:none;
  white-space:nowrap;
}

.mep-public-tool-modes .is-independent a{
  color:#3159c4;
}

.mep-public-tool-modes a:hover{
  transform:translateY(-1px);
}

.mep-public-advice-modes{
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin:0 0 12px;
}

.mep-public-advice-modes>div{
  min-width:0;
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:10px 11px;
  border:1px solid #dfe7e3;
  border-radius:11px;
  background:#fff;
}

.mep-public-advice-modes>div.is-salaried{
  border-color:#cce0d7;
  background:#f7fbf9;
}

.mep-public-advice-modes>div.is-independent{
  border-color:#d2daf4;
  background:#f7f9ff;
}

.mep-public-advice-modes>div.is-mixed{
  background:linear-gradient(105deg,#f7fbf9,#f8f9ff);
}

.mep-public-advice-modes>div>span{
  flex:0 0 auto;
  font-size:16px;
}

.mep-public-advice-modes p,
.mep-public-advice-modes strong,
.mep-public-advice-modes small{
  display:block;
  margin:0;
}

.mep-public-advice-modes strong{
  color:#3d5048;
  font-size:.68rem;
}

.mep-public-advice-modes small{
  margin-top:2px;
  color:#7d8984;
  font-size:.56rem;
  line-height:1.35;
}

/* Dossier objective cards can now contain six themes without becoming bulky. */
.mep-objectifs-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.mep-objectifs-grid .mep-objectif-card{
  min-height:82px;
}

/* FAQ first questions now introduce the product architecture. */
.faq-page .faq-list .faq-item:first-child{
  border-color:#c9ddd4;
  background:#f8fbfa;
}

/* Employment directory explicitly stays inside the salaried universe. */
.employment-directory-hero .home-eyebrow{
  color:#1f6d59;
}

/* Public footer can safely accept one extra resource link. */
.mep-footer-final__column a{
  line-height:1.35;
}

@media(max-width:900px){
  .mep-public-tool-modes{
    grid-template-columns:1fr;
  }

  .mep-public-advice-modes{
    grid-template-columns:1fr;
  }

  .mep-objectifs-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:620px){
  .mep-public-tool-modes article{
    grid-template-columns:38px minmax(0,1fr);
  }

  .mep-public-tool-modes article>a{
    grid-column:1/-1;
    width:100%;
    box-sizing:border-box;
  }

  .mep-public-tool-mode-icon{
    width:38px;
    height:38px;
  }

  .mep-objectifs-grid{
    grid-template-columns:1fr!important;
  }
}


/* ===== mep-harmonized-v4.css ===== */
/* MEP — Harmonisation V4 : agenda Salariat + corrections issues des captures */

/* Le Dashboard Salariat avait trop d'air entre le sélecteur d'espace et son contenu. */
body.mep-app .mep-vnext-dashboard{
  padding-top:16px!important;
}
body.mep-app .mep-vnext-dashboard>.vnext-hero{
  margin-bottom:18px!important;
}

/* Le sélecteur de mode doit lire comme un segmented control : un seul choix est fort. */
body.mep-app .mep-work-mode-pills .mep-work-chip{
  border:1px solid transparent!important;
  background:transparent!important;
  color:#6e7c76!important;
}
body.mep-app .mep-work-mode-pills .mep-work-chip:hover{
  background:#fff!important;
  color:var(--mep-accent-dark)!important;
}
body.mep-app .mep-work-mode-pills .mep-work-chip.is-active,
body.mep-app .mep-work-mode-pills .mep-work-chip.is-independent.is-active,
body.mep-app .mep-work-mode-pills .mep-work-chip.is-mixed.is-active{
  border-color:var(--mep-accent)!important;
  background:var(--mep-accent)!important;
  color:#fff!important;
  box-shadow:0 2px 7px rgba(var(--mep-accent-rgb),.16)!important;
}

/* Sur PC la seconde nav Indépendant faisait doublon avec le header global. */
@media(min-width:1021px){
  body.mep-workspace-independent .mep-independent-nav{
    display:none!important;
  }
}

/* Agenda : expliquer immédiatement pourquoi il existe. */
.salaried-planner-auto-strip{
  display:grid;
  grid-template-columns:1.45fr repeat(4,minmax(0,1fr));
  gap:6px;
  margin:0 0 10px;
  padding:6px;
  border:1px solid var(--mep-ui-line);
  border-radius:12px;
  background:#fff;
  box-shadow:0 4px 14px rgba(28,48,41,.02);
}
.salaried-planner-auto-strip>div,
.salaried-planner-auto-strip>a{
  min-width:0;
  display:grid;
  grid-template-columns:31px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:8px 9px;
  border-radius:9px;
  color:inherit;
  text-decoration:none;
}
.salaried-planner-auto-strip>div{
  background:var(--mep-accent-soft);
}
.salaried-planner-auto-strip>a:hover{
  background:#f5f8f7;
}
.salaried-planner-auto-strip span{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#f1f5f3;
  font-size:14px;
}
.salaried-planner-auto-strip>div span{
  background:#fff;
}
.salaried-planner-auto-strip p,
.salaried-planner-auto-strip b,
.salaried-planner-auto-strip small{
  min-width:0;
  display:block;
  margin:0;
}
.salaried-planner-auto-strip b{
  overflow:hidden;
  color:#40524a;
  font-size:10px;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.salaried-planner-auto-strip small{
  margin-top:2px;
  overflow:hidden;
  color:#87948e;
  font-size:8.5px;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Deux nouvelles sources de calendrier ajoutées après le CSS d'origine. */
.salaried-planner-event.is-position{border-left-color:#2f7b61}
.salaried-planner-event.is-evolution{border-left-color:#8068b6}
.salaried-planner-month-day a.is-position{border-left-color:#2f7b61;background:#f0f8f4}
.salaried-planner-month-day a.is-evolution{border-left-color:#8068b6;background:#f6f3fb}

/* Le panneau de tâche est secondaire par rapport au calendrier. */
@media(min-width:1181px){
  .salaried-planner-layout{
    grid-template-columns:minmax(0,1fr) 320px!important;
  }
}

.salaried-planner-no-events{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  padding:24px!important;
}
.salaried-planner-no-events b{
  color:#4b5f56;
  font-size:12px;
}
.salaried-planner-no-events span{
  color:#87948e;
  font-size:10px;
}
.salaried-planner-no-events a{
  margin-top:5px;
  color:var(--mep-accent-dark);
  font-size:10px;
  font-weight:850;
  text-decoration:none;
}

/* Source filters now use the current workspace accent consistently. */
body.mep-app .salaried-planner-view-tabs a.is-active,
body.mep-app .salaried-planner-filters a.is-active{
  border-color:rgba(var(--mep-accent-rgb),.24)!important;
  background:var(--mep-accent-soft)!important;
  color:var(--mep-accent-dark)!important;
}
body.mep-app .salaried-planner-day.is-today,
body.mep-app .salaried-planner-month-day.is-today{
  border-color:var(--mep-accent)!important;
}

@media(max-width:950px){
  .salaried-planner-auto-strip{
    display:flex;
    overflow-x:auto;
  }
  .salaried-planner-auto-strip>div,
  .salaried-planner-auto-strip>a{
    flex:0 0 185px;
  }
}

@media(max-width:560px){
  body.mep-app .mep-vnext-dashboard{
    padding-top:9px!important;
  }
  .salaried-planner-auto-strip>div,
  .salaried-planner-auto-strip>a{
    flex-basis:165px;
  }
}


/* =========================================================
   MEP PWA V8 — install + onboarding mobile
   ========================================================= */

body.mep-app .mep-app-install{
  border-color:rgba(255,255,255,.13);
  background:
    linear-gradient(135deg,#173d33 0%,#18362f 48%,#1d3154 100%);
}

body.mep-app .mep-app-install__icon{
  overflow:hidden;
  padding:0;
  background:transparent;
  box-shadow:0 7px 18px rgba(0,0,0,.16);
}

body.mep-app .mep-app-install__icon img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

body.mep-app .mep-app-install [data-install-confirm]{
  color:#183a31;
}

body.mep-app.mep-workspace-independent .mep-app-install{
  background:linear-gradient(135deg,#203b72,#1c315d);
}

body.mep-app.mep-workspace-salaried .mep-app-install{
  background:linear-gradient(135deg,#164a3b,#173b33);
}

/* The first-choice portal must fit naturally on a phone/PWA. */
@media(max-width:780px){
  body.mep-app .mep-mode-onboarding{
    width:100%;
    padding-top:18px;
  }

  body.mep-app .mep-mode-onboarding-grid{
    gap:9px;
  }

  body.mep-app .mep-mode-onboarding-card{
    padding:17px;
  }

  body.mep-app .mep-mode-onboarding-card ul{
    margin:14px 0 17px;
  }

  body.mep-app .mep-mode-onboarding-note{
    margin-top:10px;
  }
}

@media(max-width:480px){
  body.mep-app .mep-mode-onboarding-hero{
    margin-bottom:15px;
  }

  body.mep-app .mep-mode-onboarding-hero h1{
    font-size:33px;
  }

  body.mep-app .mep-mode-onboarding-hero>p:last-child{
    margin-top:10px;
    font-size:12.5px;
  }

  body.mep-app .mep-mode-onboarding-icon{
    width:42px;
    height:42px;
    margin-bottom:12px;
    border-radius:12px;
    font-size:19px;
  }

  body.mep-app .mep-mode-onboarding-card h2{
    font-size:18px;
  }

  body.mep-app .mep-mode-onboarding-card>div>p:last-child{
    font-size:11.5px;
  }

  body.mep-app .mep-mode-onboarding-card button{
    min-height:44px;
  }
}


/* =========================================================
   Correctif final — footer MEP
   Le footer final est volontairement sombre. Le socle ne doit plus le
   réécrire en blanc, sinon ses textes prévus pour fond sombre disparaissent.
   ========================================================= */
body.mep-app .mep-footer-final {
  margin-top: 32px;
  border-top: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(135deg,#162a3f 0%,#183447 58%,#17463d 100%);
  color: #fff;
}
body.mep-app .mep-footer-final__identity,
body.mep-app .mep-footer-final__identity strong,
body.mep-app .mep-footer-final__column strong {
  color: #fff !important;
}
body.mep-app .mep-footer-final__identity small,
body.mep-app .mep-footer-final__bottom {
  color: #9fb7c6 !important;
}
body.mep-app .mep-footer-final__brand p {
  color: #c8d5de !important;
}
body.mep-app .mep-footer-final__column a {
  color: #cbd7df !important;
}
body.mep-app .mep-footer-final__column a:hover,
body.mep-app .mep-footer-final__column a:focus-visible {
  color: #fff !important;
}
@media (max-width: 650px) {
  body.mep-app .mep-footer-final { margin-top: 24px; }
  body.mep-app .mep-footer-final__inner { gap: 20px 18px; padding-top: 27px; padding-bottom: 22px; }
}

/* =========================================================
   QA FINALE — ACCESSIBILITÉ, DÉBORDEMENTS ET FOCUS
   ========================================================= */
.mep-skip-link{
  position:fixed;
  z-index:100000;
  top:10px;
  left:10px;
  transform:translateY(-160%);
  padding:11px 15px;
  border:2px solid #fff;
  border-radius:10px;
  background:#183b56;
  color:#fff !important;
  font-weight:850;
  text-decoration:none;
  box-shadow:0 8px 24px rgba(10,30,45,.22);
  transition:transform .15s ease;
}
.mep-skip-link:focus{transform:translateY(0)}
#contenu-principal:focus{outline:none}

.mep-app .container,
.mep-app #contenu-principal,
.mep-app .mep-pro-page,
.mep-app .mep-portal-page,
.mep-app .mep-pro-card,
.mep-app .mep-portal-card{min-width:0}

.mep-app img,
.mep-app svg,
.mep-app video,
.mep-app canvas{max-width:100%;height:auto}

.mep-app :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid color-mix(in srgb, currentColor 35%, #93b7d1);
  outline-offset:3px;
}

.mep-app :where(table){max-width:100%}
.mep-app :where(.mep-pro-table-wrap,.table-responsive,.mep-table-scroll){overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}

@media (max-width:760px){
  .mep-app :where(input,select,textarea){font-size:16px}
  .mep-app :where(.mep-pro-card,.mep-portal-card){overflow-wrap:anywhere}
}
