/* =========================================================
   MEP Professional V1 — couche de finition + recrutement
   Chargée en dernier pour harmoniser sans casser l'historique.
   ========================================================= */
:root{
  --mep-pro-ink:#152433;
  --mep-pro-muted:#667788;
  --mep-pro-line:#dfe7ec;
  --mep-pro-soft:#f5f8fa;
  --mep-pro-card:#fff;
  --mep-pro-primary:#1f6d59;
  --mep-pro-primary-strong:#155446;
  --mep-pro-blue:#315ed4;
  --mep-pro-danger:#aa3544;
  --mep-pro-warning:#a96713;
  --mep-pro-success:#16744d;
  --mep-pro-radius:22px;
  --mep-pro-shadow:0 18px 48px rgba(18,40,58,.075);
}
html{scroll-behavior:smooth}
body.mep-app{color:var(--mep-pro-ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.mep-app :focus-visible{outline:3px solid rgba(49,94,212,.28);outline-offset:3px}
body.mep-app input,body.mep-app select,body.mep-app textarea,body.mep-app button{font:inherit}
body.mep-app input,body.mep-app select,body.mep-app textarea{accent-color:var(--mep-pro-primary)}
body.mep-app ::selection{background:rgba(31,109,89,.16)}

.mep-pro-page{width:min(1180px,100%);margin:0 auto;padding:30px 0 64px}
.mep-pro-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:34px 36px;border:1px solid rgba(22,58,72,.09);border-radius:28px;background:linear-gradient(135deg,#f4faf7 0%,#f7f9fc 60%,#edf4ff 100%);box-shadow:0 20px 56px rgba(20,45,60,.06)}
.mep-pro-hero.is-public{background:linear-gradient(135deg,#f1f8f5 0%,#fff 52%,#eef3ff 100%)}
.mep-pro-hero>div:first-child{max-width:780px}
.mep-pro-eyebrow{margin:0 0 8px;color:var(--mep-pro-primary);font-size:.72rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.mep-pro-hero h1{max-width:780px;margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1.02;letter-spacing:-.045em}
.mep-pro-hero p:not(.mep-pro-eyebrow){max-width:760px;margin:16px 0 0;color:var(--mep-pro-muted);font-size:1rem;line-height:1.7}
.mep-pro-hero-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.mep-pro-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid #cdd9df;border-radius:13px;background:#fff;color:#244052;font-weight:850;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}
.mep-pro-btn:hover{transform:translateY(-1px);border-color:#9fb2bc;box-shadow:0 9px 20px rgba(19,48,64,.08)}
.mep-pro-btn.is-primary{border-color:var(--mep-pro-primary);background:var(--mep-pro-primary);color:#fff;box-shadow:0 10px 22px rgba(31,109,89,.18)}
.mep-pro-btn.is-primary:hover{background:var(--mep-pro-primary-strong);border-color:var(--mep-pro-primary-strong)}
.mep-pro-btn.is-danger{color:var(--mep-pro-danger);border-color:#e7c3ca;background:#fff}
.mep-pro-btn.is-small{min-height:36px;padding:7px 11px;border-radius:10px;font-size:.8rem}

.mep-pro-flash{margin:16px 0;padding:14px 17px;border:1px solid #cce5d8;border-radius:15px;background:#f2fbf6;color:#185c42;font-weight:750}
.mep-pro-flash.is-error{border-color:#efccd2;background:#fff5f6;color:#8c2f3d}
.mep-pro-trust-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.mep-pro-trust-strip>span{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:10px;padding:16px 17px;border:1px solid var(--mep-pro-line);border-radius:17px;background:#fff}
.mep-pro-trust-strip b{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#edf7f2;color:var(--mep-pro-primary)}
.mep-pro-trust-strip strong,.mep-pro-trust-strip small{display:block}.mep-pro-trust-strip strong{font-size:.82rem}.mep-pro-trust-strip small{margin-top:3px;color:var(--mep-pro-muted);font-size:.7rem;line-height:1.4}

.mep-pro-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0}
.mep-pro-kpis article{padding:18px;border:1px solid var(--mep-pro-line);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(20,44,59,.035)}
.mep-pro-kpis small,.mep-pro-kpis span{display:block;color:var(--mep-pro-muted)}
.mep-pro-kpis small{font-size:.72rem;font-weight:800}.mep-pro-kpis strong{display:block;margin:6px 0 3px;font-size:1.8rem;letter-spacing:-.04em}.mep-pro-kpis span{font-size:.68rem}
.mep-pro-grid{display:grid;gap:18px}.mep-pro-grid.is-2col{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr)}
.mep-pro-card{margin:18px 0;padding:24px;border:1px solid var(--mep-pro-line);border-radius:var(--mep-pro-radius);background:var(--mep-pro-card);box-shadow:var(--mep-pro-shadow)}
.mep-pro-card>h2,.mep-pro-card>h3{margin-top:0;letter-spacing:-.025em}.mep-pro-card h2{font-size:1.25rem}
.mep-pro-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.mep-pro-card-head h2{margin:0;font-size:1.28rem}.mep-pro-card-head a{color:#315c76;font-size:.8rem;font-weight:850;text-decoration:none}
.mep-pro-help{margin:-8px 0 19px;color:var(--mep-pro-muted);font-size:.86rem;line-height:1.55}

.mep-pro-form{display:grid;gap:18px}.mep-pro-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.mep-pro-form-grid.is-3col{grid-template-columns:repeat(3,minmax(0,1fr))}
.mep-pro-form label{display:grid;gap:7px}.mep-pro-form label>span{font-size:.75rem;font-weight:850;color:#344b5c}.mep-pro-form label>small{color:var(--mep-pro-muted);font-size:.67rem;line-height:1.45}
.mep-pro-form label.is-wide{grid-column:1/-1}.mep-pro-form label.is-wide-3{grid-column:1/-1}
.mep-pro-form input,.mep-pro-form select,.mep-pro-form textarea,.mep-job-search input,.mep-job-search select,.mep-ats-form input,.mep-ats-form select{width:100%;box-sizing:border-box;border:1px solid #cbd8df;border-radius:12px;background:#fff;color:var(--mep-pro-ink);padding:11px 12px;transition:border-color .16s ease,box-shadow .16s ease}
.mep-pro-form textarea{resize:vertical;min-height:110px;line-height:1.55}
.mep-pro-form input:focus,.mep-pro-form select:focus,.mep-pro-form textarea:focus,.mep-job-search input:focus,.mep-job-search select:focus,.mep-ats-form input:focus,.mep-ats-form select:focus{border-color:#6e99b2;box-shadow:0 0 0 4px rgba(49,94,212,.08);outline:0}
.mep-pro-form-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:2px}.mep-pro-form-actions>span{color:var(--mep-pro-muted);font-size:.7rem}

.mep-pro-status{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border:1px solid #d9e1e5;border-radius:999px;background:#f7f9fa;color:#526573;font-size:.66rem;font-weight:900;white-space:nowrap}
.mep-pro-status.is-published,.mep-pro-status.is-verified,.mep-pro-status.is-hired{background:#edf8f2;border-color:#cde7d9;color:#16603f}
.mep-pro-status.is-pending,.mep-pro-status.is-reviewing{background:#fff8ea;border-color:#f1deb4;color:#875810}
.mep-pro-status.is-rejected,.mep-pro-status.is-suspended,.mep-pro-status.is-closed{background:#fff3f4;border-color:#edcbd0;color:#943344}
.mep-pro-status.is-paused,.mep-pro-status.is-draft{background:#f2f5f7;color:#5c6b75}

.mep-pro-score{padding:18px;border-radius:17px;background:var(--mep-pro-soft)}.mep-pro-score strong{display:block;font-size:2rem}.mep-pro-score>span{display:block;height:7px;margin:10px 0;border-radius:999px;background:#dce6e9;overflow:hidden}.mep-pro-score>span>b{display:block;height:100%;border-radius:inherit;background:var(--mep-pro-primary)}.mep-pro-score small{color:var(--mep-pro-muted)}
.mep-pro-check-list{display:grid;gap:8px;margin:14px 0}.mep-pro-check-list span{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:12px;background:#f7f9fa;color:#697985;font-size:.76rem}.mep-pro-check-list span b{display:grid;place-items:center;width:22px;height:22px;border-radius:8px;background:#e7edef}.mep-pro-check-list span.is-done{color:#285c48}.mep-pro-check-list span.is-done b{background:#dff2e8;color:#176042}
.mep-pro-note,.mep-pro-consent{padding:15px 16px;border-radius:15px;background:#f7fafc;border:1px solid #e1e8ec}.mep-pro-note strong,.mep-pro-consent b{font-size:.8rem}.mep-pro-note p,.mep-pro-consent p{margin:5px 0 0;color:var(--mep-pro-muted);font-size:.72rem;line-height:1.5}

.mep-pro-table-wrap{overflow-x:auto}.mep-pro-table{width:100%;border-collapse:collapse}.mep-pro-table th{padding:10px 12px;border-bottom:1px solid var(--mep-pro-line);color:#71818d;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;text-align:left}.mep-pro-table td{padding:14px 12px;border-bottom:1px solid #edf1f3;vertical-align:middle;font-size:.82rem}.mep-pro-table td>strong,.mep-pro-table td>small{display:block}.mep-pro-table td>small{margin-top:3px;color:var(--mep-pro-muted);font-size:.68rem}.mep-pro-table td>small.is-accent{color:var(--mep-pro-primary);font-weight:800}.mep-pro-row-actions{display:flex;gap:8px;justify-content:flex-end;white-space:nowrap}.mep-pro-row-actions a{color:#315c76;font-size:.7rem;font-weight:800;text-decoration:none}
.mep-pro-empty{padding:28px;border:1px dashed #cfdbe1;border-radius:18px;background:#fafcfd;text-align:center}.mep-pro-empty strong{display:block}.mep-pro-empty p{margin:7px auto 14px;max-width:620px;color:var(--mep-pro-muted);line-height:1.5}.mep-pro-empty .mep-pro-btn{margin:4px}.mep-pro-empty.is-warning{background:#fffaf1;border-color:#e7d8bb}.mep-pro-empty.is-success{background:#f3fbf7;border-color:#cfe6d9}
.mep-pro-publication-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:16px;border:1px solid var(--mep-pro-line);border-radius:16px;background:#f8fafb}.mep-pro-publication-actions>div:first-child strong,.mep-pro-publication-actions>div:first-child small{display:block}.mep-pro-publication-actions>div:first-child small{margin-top:4px;color:var(--mep-pro-muted);font-size:.7rem}.mep-pro-publication-actions>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.mep-pro-publication-actions form{margin:0}

/* ATS */
.mep-ats-list{display:grid;gap:12px}.mep-ats-candidate{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(220px,1fr);gap:16px;padding:17px;border:1px solid var(--mep-pro-line);border-radius:17px;background:#fbfcfd}.mep-ats-candidate-main{display:flex;gap:11px;align-items:center}.mep-ats-avatar{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:14px;background:#e8f3ee;color:var(--mep-pro-primary);font-weight:900}.mep-ats-candidate-main strong,.mep-ats-candidate-main a,.mep-ats-candidate-main small{display:block}.mep-ats-candidate-main a{margin-top:2px;color:#41657a;font-size:.74rem;text-decoration:none}.mep-ats-candidate-main small{margin-top:4px;color:var(--mep-pro-muted);font-size:.65rem}.mep-ats-doc small,.mep-ats-doc strong,.mep-ats-doc span{display:block}.mep-ats-doc small{color:var(--mep-pro-muted);font-size:.64rem}.mep-ats-doc strong{margin:3px 0;font-size:.8rem}.mep-ats-doc span{color:#637582;font-size:.7rem;line-height:1.45}.mep-ats-candidate blockquote{grid-column:1/-1;margin:0;padding:13px 15px;border-left:3px solid #9fbeaf;border-radius:0 12px 12px 0;background:#fff;color:#526673;font-size:.76rem;line-height:1.55}.mep-ats-form{grid-column:1/-1;display:grid;grid-template-columns:180px minmax(220px,1fr) auto;gap:10px;align-items:end;padding-top:12px;border-top:1px solid #e6ecef}.mep-ats-form label{display:grid;gap:5px}.mep-ats-form label>span{font-size:.66rem;font-weight:800;color:#596d79}

/* Public jobs */
.mep-job-search{display:grid;grid-template-columns:1.6fr 1fr .8fr .9fr auto;gap:10px;align-items:end;margin:18px 0;padding:17px;border:1px solid var(--mep-pro-line);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(20,44,59,.04)}.mep-job-search label{display:grid;gap:6px}.mep-job-search label>span{color:#536b7a;font-size:.66rem;font-weight:850}.mep-job-results-head{display:flex;align-items:center;justify-content:space-between;padding:8px 2px 12px;color:#657783;font-size:.8rem}.mep-job-results-head strong{color:var(--mep-pro-ink);font-size:1rem}.mep-job-results-head a{color:#315c76;font-weight:800;text-decoration:none}.mep-job-list{display:grid;gap:12px}.mep-job-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:16px;align-items:start;padding:20px;border:1px solid var(--mep-pro-line);border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(20,44,59,.035);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.mep-job-card:hover{transform:translateY(-2px);border-color:#c3d1d8;box-shadow:0 16px 34px rgba(20,44,59,.07)}.mep-job-company-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:linear-gradient(145deg,#e9f4ef,#e8effd);color:#285b4b;font-size:1.05rem;font-weight:950}.mep-job-company-mark.is-large{width:70px;height:70px;border-radius:20px;font-size:1.35rem}.mep-job-company{margin:0;color:#3d5869;font-size:.75rem;font-weight:850}.mep-job-company span{margin-left:8px;color:#7a8a95;font-weight:600}.mep-job-card h2{margin:5px 0 8px;font-size:1.1rem;letter-spacing:-.02em}.mep-job-card h2 a{color:var(--mep-pro-ink);text-decoration:none}.mep-job-card-main>p:not(.mep-job-company){margin:11px 0;color:#5f7180;font-size:.77rem;line-height:1.55}.mep-job-meta{display:flex;flex-wrap:wrap;gap:6px}.mep-job-meta span{padding:5px 8px;border-radius:8px;background:#f2f6f8;color:#526875;font-size:.64rem;font-weight:750}.mep-job-footer{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.mep-job-footer strong{font-size:.75rem;color:#2b5f4e}.mep-job-footer small{color:#8a98a1;font-size:.64rem}

.mep-pro-breadcrumb{display:flex;gap:7px;align-items:center;margin:0 0 13px;color:#758791;font-size:.7rem}.mep-pro-breadcrumb a{color:#3a647c;text-decoration:none;font-weight:800}
.mep-job-detail-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:26px 28px;border:1px solid var(--mep-pro-line);border-radius:24px;background:linear-gradient(135deg,#fff,#f3f8f6);box-shadow:var(--mep-pro-shadow)}.mep-job-detail-title h1{margin:5px 0 10px;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.05;letter-spacing:-.04em}.mep-job-salary{display:block;margin-top:12px;color:#265b49;font-size:.86rem}.mep-job-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.mep-job-detail-content .mep-pro-card{box-shadow:none}.mep-job-detail-aside{position:sticky;top:92px}.mep-company-card p{color:#5f7180;line-height:1.6;font-size:.8rem}.mep-company-card dl,.mep-job-facts dl{display:grid;gap:8px}.mep-company-card dl div,.mep-job-facts dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #edf1f3}.mep-company-card dt,.mep-job-facts dt{color:#71838e;font-size:.66rem}.mep-company-card dd,.mep-job-facts dd{margin:0;text-align:right;font-size:.7rem;font-weight:800}.mep-company-card>a{display:inline-block;margin-top:10px;color:#315c76;font-size:.72rem;font-weight:800;text-decoration:none}.mep-pro-richtext{color:#455f6f;font-size:.86rem;line-height:1.75;white-space:normal}.mep-job-apply{scroll-margin-top:100px}.mep-job-apply .mep-pro-form{max-width:820px}

/* Petite couche d'harmonisation globale, volontairement prudente */
.mep-vnext-header{box-shadow:0 1px 0 rgba(16,40,54,.08),0 10px 28px rgba(16,40,54,.035)}
.mep-vnext-brand-copy small{letter-spacing:.01em}
.mep-footer-final{border-top:1px solid rgba(25,50,65,.08)}
.container main#contenu-principal{min-height:55vh}
.vnext-card,.dashboard-v3-next,.mep-public-workspaces-grid>article,.vnext-public-features>article{border-color:rgba(31,62,78,.1)!important}
.vnext-btn,.mep-vnext-register,.mep-vnext-login{transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}
.vnext-btn:hover,.mep-vnext-register:hover,.mep-vnext-login:hover{transform:translateY(-1px)}

@media(max-width:1050px){.mep-pro-kpis{grid-template-columns:repeat(3,1fr)}.mep-pro-grid.is-2col{grid-template-columns:1fr}.mep-job-search{grid-template-columns:1fr 1fr 1fr}.mep-job-search .is-query{grid-column:span 2}.mep-job-detail-layout{grid-template-columns:1fr}.mep-job-detail-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:12px}.mep-job-detail-aside .mep-pro-card{margin-top:0}.mep-pro-form-grid.is-3col{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.mep-pro-page{padding:18px 0 90px}.mep-pro-hero{display:grid;padding:23px;border-radius:21px}.mep-pro-hero h1{font-size:2rem}.mep-pro-hero-actions{justify-content:flex-start}.mep-pro-trust-strip{grid-template-columns:1fr}.mep-pro-kpis{grid-template-columns:repeat(2,1fr)}.mep-pro-card{padding:18px;border-radius:18px}.mep-pro-form-grid,.mep-pro-form-grid.is-3col{grid-template-columns:1fr}.mep-pro-form label.is-wide,.mep-pro-form label.is-wide-3{grid-column:auto}.mep-pro-table{min-width:760px}.mep-pro-publication-actions{display:grid}.mep-ats-candidate{grid-template-columns:1fr}.mep-ats-form{grid-template-columns:1fr}.mep-job-search{grid-template-columns:1fr}.mep-job-search .is-query{grid-column:auto}.mep-job-card{grid-template-columns:45px minmax(0,1fr)}.mep-job-card>.mep-pro-btn{grid-column:2;justify-self:start}.mep-job-company-mark{width:44px;height:44px;border-radius:13px}.mep-job-detail-hero{grid-template-columns:auto minmax(0,1fr);padding:20px}.mep-job-detail-hero>.mep-pro-btn{grid-column:1/-1}.mep-job-detail-aside{grid-template-columns:1fr}.mep-pro-card-head{display:grid}.mep-pro-card-head .mep-pro-status{justify-self:start}}
@media(max-width:430px){.mep-pro-kpis{grid-template-columns:1fr 1fr}.mep-pro-kpis article{padding:14px}.mep-pro-kpis strong{font-size:1.45rem}.mep-pro-btn{width:100%}.mep-pro-hero-actions{display:grid;width:100%}.mep-pro-row-actions{justify-content:flex-start}.mep-job-footer{display:grid;gap:3px}}

.mep-public-recruiter-callout{display:flex;justify-content:space-between;align-items:center;gap:28px;margin:26px 0;padding:28px 30px;border:1px solid rgba(31,109,89,.17);border-radius:24px;background:linear-gradient(135deg,#eff8f4,#fff 58%,#eef3ff);box-shadow:0 16px 40px rgba(24,55,68,.055)}
.mep-public-recruiter-callout>div:first-child{max-width:760px}.mep-public-recruiter-callout h2{margin:0;font-size:clamp(1.45rem,3vw,2.1rem);line-height:1.1;letter-spacing:-.035em}.mep-public-recruiter-callout p:not(.vnext-eyebrow){margin:11px 0;color:#607482;line-height:1.6}.mep-public-recruiter-points{display:flex;gap:8px;flex-wrap:wrap}.mep-public-recruiter-points span{padding:6px 9px;border-radius:9px;background:#fff;color:#315e4f;font-size:.68rem;font-weight:800}.mep-public-recruiter-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:760px){.mep-public-recruiter-callout{display:grid;padding:22px}.mep-public-recruiter-actions{justify-content:flex-start}.mep-public-recruiter-actions .vnext-btn{width:100%;justify-content:center}}
.mep-candidate-app-list{display:grid;gap:10px}.mep-candidate-app{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(150px,.5fr) auto;gap:16px;align-items:center;padding:16px;border:1px solid var(--mep-pro-line);border-radius:16px;background:#fbfcfd}.mep-candidate-app p{margin:0;color:#527081;font-size:.7rem;font-weight:850}.mep-candidate-app h3{margin:3px 0;font-size:.95rem}.mep-candidate-app small{display:block;color:var(--mep-pro-muted);font-size:.66rem}.mep-candidate-app>div:nth-child(2){display:grid;gap:5px;justify-items:start}.mep-candidate-app-actions{display:flex;gap:7px;align-items:center}.mep-candidate-app-actions form{margin:0}.mep-candidate-app-closed{color:#7b8992;font-size:.7rem;font-weight:800}@media(max-width:760px){.mep-candidate-app{grid-template-columns:1fr}.mep-candidate-app-actions{justify-content:flex-start;flex-wrap:wrap}}
