.pcse-encyclopedies-cse{max-width:1320px;margin:0 auto;padding:18px 24px 60px;box-sizing:border-box;color:#1f2933}
.pcse-encyclopedies-cse *{box-sizing:border-box}
.pcse-encyclopedies-cse__hero{padding:34px 38px;border-radius:24px;background:linear-gradient(135deg,#24457f 0%,#0b78ad 100%);color:#fff;margin-bottom:24px}
.pcse-encyclopedies-cse__hero h1{margin:0 0 12px;color:#fff;font-size:clamp(2rem,4vw,3rem);line-height:1.08}
.pcse-encyclopedies-cse__hero p{margin:0;max-width:900px;font-size:1.05rem;line-height:1.65}
.pcse-encyclopedies-cse__badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.pcse-encyclopedies-cse__badge,.pcse-fiche__badge{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;background:#eef8ff;color:#073d70;font-weight:800;font-size:.8rem}
.pcse-encyclopedies-cse__quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:24px 0}
.pcse-encyclopedies-cse__quick a{display:block;padding:18px;border:1px solid #d6eafa;border-radius:16px;background:#fff;text-decoration:none;font-weight:800;color:#073d70;box-shadow:0 8px 22px rgba(15,39,66,.05)}
.pcse-encyclopedies-cse__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}
.pcse-encyclopedies-cse__card{position:relative;padding:22px;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:16px;box-shadow:0 10px 24px rgba(15,23,42,.07)}
.pcse-encyclopedies-cse__card:before{content:"";position:absolute;inset:0 0 auto;height:5px;border-radius:16px 16px 0 0;background:#0073aa}
.pcse-encyclopedies-cse__card h2{font-size:1.22rem;line-height:1.2;margin:8px 0 10px;color:#0073aa}
.pcse-encyclopedies-cse__card p{margin:0 0 12px;line-height:1.55}
.pcse-encyclopedies-cse__card a{font-weight:800;color:#0073aa;text-decoration:none}
.pcse-fiche{max-width:1040px;margin:0 auto;padding:18px 24px 60px}
.pcse-fiche__header{margin-bottom:24px}
.pcse-fiche__header h1{margin:10px 0 10px;color:#0073aa;line-height:1.12}
.pcse-fiche__chapo{font-size:1.08rem;line-height:1.7;color:#4d5a64}
.pcse-box{margin:22px 0;padding:20px 22px;border:1px solid #d6eafa;border-radius:16px;background:#f8fcff}
.pcse-box--essentiel{border-left:7px solid #0073aa}
.pcse-box--vigilance{border-left:7px solid #f2a65a;background:#fffaf3}
.pcse-box--cta{border-left:7px solid #00845f;background:#f4fbf8}
.pcse-fiche h2{margin-top:32px;color:#073d70}
.pcse-fiche ul{padding-left:1.2rem}
.pcse-fiche li{margin:.45rem 0}
.pcse-reclamation{margin:14px 0;padding:16px 18px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
.pcse-reclamation strong{color:#073d70}
.pcse-meta{font-size:.86rem;color:#6b7280;margin-top:24px}
@media(max-width:980px){.pcse-encyclopedies-cse__quick{grid-template-columns:repeat(2,1fr)}.pcse-encyclopedies-cse__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.pcse-encyclopedies-cse{padding:12px 14px 44px}.pcse-encyclopedies-cse__hero{padding:26px 22px}.pcse-encyclopedies-cse__quick,.pcse-encyclopedies-cse__grid{grid-template-columns:1fr}.pcse-fiche{padding:12px 14px 44px}}


/* ============================================================
   Prototype 0.1.1 — finitions visuelles
   ============================================================ */
.pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero,
.entry-content .pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero {
  color: #ffffff !important;
}

.pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero h1,
.entry-content .pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero h1 {
  color: #ffffff !important;
  text-align: left !important;
  text-shadow: none !important;
}

.pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero p,
.entry-content .pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero p {
  color: rgba(255,255,255,.96) !important;
  text-align: left !important;
}

.pcse-encyclopedies-cse__section-title {
  margin: 34px 0 8px !important;
  color: #073d70 !important;
  font-size: 1.55rem !important;
  line-height: 1.2 !important;
}

.pcse-encyclopedies-cse__section-intro {
  margin: 0 0 18px !important;
  color: #4d5a64 !important;
  line-height: 1.55 !important;
}

.pcse-encyclopedies-cse__card {
  min-height: 205px;
}

.pcse-encyclopedies-cse__card h2 {
  margin-top: 6px !important;
  font-size: 1.18rem !important;
  line-height: 1.22 !important;
}

@media (max-width:640px) {
  .pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero h1,
  .entry-content .pcse-encyclopedies-cse .pcse-encyclopedies-cse__hero h1 {
    font-size: 2rem !important;
  }
}


/* ============================================================
   Prototype 0.1.2 — gabarit de fiche
   ============================================================ */

.pcse-fiche-shell {
  max-width: 1280px;
  margin: 0 auto;
  padding: 18px 24px 60px;
}

.pcse-fiche-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 34px;
  align-items: start;
}

.pcse-fiche-toc {
  position: sticky;
  top: 118px;
  max-height: calc(100vh - 145px);
  overflow: auto;
  padding: 18px 18px 16px;
  border: 1px solid #d6eafa;
  border-radius: 16px;
  background: #f8fcff;
  box-shadow: 0 10px 24px rgba(15,39,66,.06);
}

.pcse-fiche-toc__title {
  margin: 0 0 10px;
  color: #073d70;
  font-size: .95rem;
  font-weight: 850;
}

.pcse-fiche-toc ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pcse-fiche-toc li {
  margin: 0;
}

.pcse-fiche-toc a {
  display: block;
  padding: 7px 0;
  color: #31506d;
  font-size: .86rem;
  line-height: 1.3;
  text-decoration: none;
  border-bottom: 1px solid rgba(214,234,250,.72);
}

.pcse-fiche-toc li:last-child a {
  border-bottom: 0;
}

.pcse-fiche-toc a:hover,
.pcse-fiche-toc a:focus {
  color: #0073aa;
  text-decoration: underline;
}

.pcse-fiche-main {
  min-width: 0;
}

.pcse-fiche {
  max-width: none;
  margin: 0;
  padding: 0;
}

.pcse-fiche__back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 20px;
  color: #0073aa;
  font-weight: 800;
  text-decoration: none;
}

.pcse-fiche__back:hover,
.pcse-fiche__back:focus {
  text-decoration: underline;
}

.pcse-fiche [id] {
  scroll-margin-top: 135px;
}

.pcse-box--vigilance {
  border: 1px solid #ffe0b8 !important;
  border-left: 7px solid #f29900 !important;
  background: #fff8ec !important;
}

.pcse-box--vigilance h2 {
  color: #7a4a00 !important;
}

.pcse-reclamation {
  position: relative;
  padding: 20px 20px 18px;
}

.pcse-reclamation__title {
  display: block;
  margin: 0 0 14px;
  color: #073d70;
  font-size: 1rem;
  font-weight: 850;
}

.pcse-reclamation__row {
  margin: 12px 0 0;
}

.pcse-reclamation__label {
  display: inline-flex;
  align-items: center;
  margin: 0 0 6px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #eef8ff;
  color: #073d70;
  font-size: .75rem;
  font-weight: 850;
  line-height: 1;
}

.pcse-reclamation__text {
  margin: 0;
  line-height: 1.65;
}

.pcse-copy-reclamation {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 14px;
  padding: 8px 12px;
  border: 1px solid rgba(0,115,170,.25);
  border-radius: 999px;
  background: #ffffff;
  color: #0073aa;
  font-size: .82rem;
  font-weight: 850;
  cursor: pointer;
}

.pcse-copy-reclamation:hover,
.pcse-copy-reclamation:focus {
  background: #eef8ff;
  border-color: rgba(0,115,170,.45);
}

.pcse-copy-reclamation.is-copied {
  color: #00845f;
  border-color: rgba(0,132,95,.35);
  background: #f0fbf7;
}

.pcse-box--passage {
  border-left: 7px solid #24457f;
  background: #f3f7fc;
}

.pcse-box--passage h2 {
  color: #24457f !important;
}

.pcse-box--cta {
  padding: 24px 24px 22px !important;
  border: 1px solid #cfeadd !important;
  border-left: 7px solid #00845f !important;
  background: linear-gradient(135deg, #f4fbf8, #ffffff) !important;
}

.pcse-box--cta strong {
  display: block;
  color: #075d44;
  font-size: 1.08rem;
  margin-bottom: 6px;
}

.pcse-box--cta p {
  margin: 0 0 14px;
}

.pcse-box--cta .pcse-cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border-radius: 999px;
  background: #00845f;
  color: #ffffff !important;
  font-weight: 850;
  text-decoration: none !important;
}

.pcse-box--cta .pcse-cta-button:hover,
.pcse-box--cta .pcse-cta-button:focus {
  background: #006d4e;
}

.pcse-sources {
  margin: 34px 0 0;
  padding: 20px 22px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #ffffff;
}

.pcse-sources h2 {
  margin-top: 0 !important;
}

.pcse-sources ul {
  margin-bottom: 0;
}

.pcse-verification {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #e5e7eb;
  color: #6b7280;
  font-size: .88rem;
}

@media (max-width: 960px) {
  .pcse-fiche-shell {
    padding: 14px 18px 50px;
  }

  .pcse-fiche-layout {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .pcse-fiche-toc {
    position: static;
    max-height: none;
  }

  .pcse-fiche-toc ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    column-gap: 20px;
  }
}

@media (max-width: 620px) {
  .pcse-fiche-shell {
    padding: 12px 14px 42px;
  }

  .pcse-fiche-toc ul {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   Prototype 0.2.0 — première fiche étalon juridique
   ============================================================ */
.pcse-definition-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  margin: 18px 0 28px;
}

.pcse-definition-grid.pcse-definition-grid--2x2 {
  grid-template-columns: repeat(2, minmax(0,1fr));
}

.pcse-definition-card {
  padding: 17px 18px;
  border: 1px solid #dbe4f0;
  border-radius: 14px;
  background: #ffffff;
}

.pcse-definition-card strong {
  display: block;
  color: #073d70;
  margin-bottom: 6px;
}

.pcse-definition-card p {
  margin: 0;
  line-height: 1.55;
}

.pcse-method-steps {
  display: grid;
  gap: 12px;
  margin: 18px 0 28px;
}

.pcse-method-step {
  display: grid;
  grid-template-columns: 120px minmax(0,1fr);
  gap: 16px;
  align-items: start;
  padding: 14px 16px;
  border: 1px solid #d6eafa;
  border-radius: 14px;
  background: #f8fcff;
}

.pcse-method-step strong {
  color: #0073aa;
}

.pcse-method-step p {
  margin: 0;
  line-height: 1.55;
}

.pcse-timeline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
  margin: 18px 0 30px;
}

.pcse-timeline__step {
  position: relative;
  padding: 17px 16px;
  border: 1px solid #d6eafa;
  border-top: 5px solid #0073aa;
  border-radius: 14px;
  background: #fff;
}

.pcse-timeline__step strong {
  display: block;
  color: #073d70;
  margin-bottom: 7px;
}

.pcse-timeline__step p {
  margin: 0;
  line-height: 1.5;
  font-size: .93rem;
}

.pcse-sources a {
  color: #0073aa;
  font-weight: 700;
  text-decoration: none;
}

.pcse-sources a:hover,
.pcse-sources a:focus {
  text-decoration: underline;
}

@media(max-width: 900px) {
  .pcse-definition-grid {
    grid-template-columns: 1fr;
  }
  .pcse-timeline {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media(max-width: 620px) {
  .pcse-method-step {
    grid-template-columns: 1fr;
    gap: 5px;
  }
  .pcse-timeline {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   Prototype 0.2.1 — fiche Réclamations : crédibilité juridique
   ============================================================ */

.pcse-legal-link {
  color: #0073aa !important;
  font-weight: 750;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.pcse-legal-link:hover,
.pcse-legal-link:focus {
  color: #073d70 !important;
}

.pcse-section-intro {
  margin: -4px 0 16px;
  color: #5b6770;
  line-height: 1.55;
}

.pcse-reclamations-accordion {
  display: grid;
  gap: 10px;
  margin-bottom: 34px;
}

.pcse-reclamation--accordion {
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #dce5ee;
  border-radius: 14px;
  background: #ffffff;
}

.pcse-reclamation__summary {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 15px 17px;
  cursor: pointer;
  list-style: none;
}

.pcse-reclamation__summary::-webkit-details-marker {
  display: none;
}

.pcse-reclamation__summary:hover {
  background: #f8fcff;
}

.pcse-reclamation__summary strong {
  color: #073d70;
  font-size: .98rem;
  line-height: 1.25;
}

.pcse-reclamation__theme {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eef8ff;
  color: #0073aa;
  font-size: .72rem;
  line-height: 1;
  font-weight: 850;
  white-space: nowrap;
}

.pcse-reclamation__chevron {
  color: #0073aa;
  font-size: 1.15rem;
  font-weight: 900;
  transition: transform .18s ease;
}

.pcse-reclamation--accordion[open] {
  border-color: #b8d8eb;
  background: #f4f9fc;
  box-shadow: 0 8px 22px rgba(7, 61, 112, .08);
}

.pcse-reclamation--accordion[open] .pcse-reclamation__summary {
  background: #eaf5fb;
}

.pcse-reclamation--accordion[open] .pcse-reclamation__chevron {
  transform: rotate(180deg);
}

.pcse-reclamation__body {
  padding: 12px 18px 20px;
  border-top: 1px solid #cfe3ef;
  background: #f7fbfd;
}

.pcse-reclamation__row--formulation {
  padding: 14px 15px;
  border-radius: 12px;
  background: #f8fcff;
}

.pcse-reclamation__legal ul,
.pcse-reclamation__mini-vigilance ul {
  margin: 8px 0 0;
  padding-left: 1.15rem;
}

.pcse-reclamation__legal li,
.pcse-reclamation__mini-vigilance li {
  margin: 7px 0;
  line-height: 1.5;
}

.pcse-reclamation__legal-note {
  display: block;
  margin-top: 3px;
  color: #6b7280;
  font-size: .84rem;
}

.pcse-reclamation__jurisprudence {
  padding: 13px 15px;
  border-left: 5px solid #6f42c1;
  border-radius: 10px;
  background: #faf8ff;
}

.pcse-jurisprudence-item p {
  margin: 7px 0 0;
  color: #4d5560;
  line-height: 1.55;
}

.pcse-reclamation__mini-vigilance {
  padding: 13px 15px;
  border-left: 5px solid #f29900;
  border-radius: 10px;
  background: #fff8ec;
}

.pcse-passage-link {
  display: inline-flex;
  align-items: center;
  margin-top: 6px;
  color: #24457f !important;
  font-weight: 850;
  text-decoration: none !important;
}

.pcse-passage-link:hover,
.pcse-passage-link:focus {
  text-decoration: underline !important;
}

@media (max-width: 620px) {
  .pcse-reclamation__summary {
    grid-template-columns: 1fr auto;
  }

  .pcse-reclamation__theme {
    grid-column: 1 / -1;
    justify-self: start;
  }
}


/* ============================================================
   Prototype 0.3.0 — vraie fiche « Réunion mensuelle »
   ============================================================ */

.pcse-template-box {
  margin: 16px 0 30px;
  padding: 18px;
  border: 1px solid #d6eafa;
  border-radius: 16px;
  background: #f8fcff;
}

.pcse-template-box__text {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #253746;
  font-family: inherit;
  font-size: .93rem;
  line-height: 1.62;
  white-space: pre-wrap;
  word-break: normal;
  overflow: visible;
}

.pcse-box--register {
  border-left: 7px solid #24457f;
  background: #f5f8fc;
}

.pcse-box--register h2 {
  color: #24457f !important;
}


/* ============================================================
   Prototype 0.3.1 — lisibilité des cartes de la fiche Réunion
   ============================================================ */

.pcse-definition-card,
.pcse-definition-card p,
.pcse-definition-card strong,
.pcse-method-step,
.pcse-method-step p,
.pcse-method-step strong {
  text-align: left !important;
  text-align-last: left !important;
  word-spacing: normal !important;
}

.pcse-definition-card p,
.pcse-method-step p {
  hyphens: none !important;
}


/* ============================================================
   Prototype 0.4.0 — vraie fiche « Budget et moyens »
   ============================================================ */

.pcse-means-table-wrap {
  width: 100%;
  margin: 16px 0 32px;
  overflow-x: auto;
  border: 1px solid #dce5ee;
  border-radius: 16px;
  background: #fff;
}

.pcse-means-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
}

.pcse-means-table th,
.pcse-means-table td {
  padding: 14px 15px;
  border-bottom: 1px solid #e7eef5;
  vertical-align: top;
  text-align: left !important;
  text-align-last: left !important;
  word-spacing: normal !important;
  line-height: 1.5;
}

.pcse-means-table th {
  background: #f5f9fd;
  color: #073d70;
  font-size: .86rem;
  font-weight: 900;
}

.pcse-means-table tr:last-child td {
  border-bottom: 0;
}

.pcse-means-table td:first-child {
  width: 21%;
  color: #073d70;
}

.pcse-means-table td:nth-child(2) {
  width: 24%;
}

.pcse-means-status {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: .75rem;
  line-height: 1.15;
  font-weight: 900;
}

.pcse-means-status--oui {
  background: #edf9f4;
  color: #087453;
}

.pcse-means-status--non {
  background: #fff3f1;
  color: #a83b2f;
}

.pcse-means-status--negocier {
  background: #fff8e8;
  color: #8a5a00;
}

@media (max-width: 700px) {
  .pcse-means-table-wrap {
    border-radius: 12px;
  }
}


/* ============================================================
   Prototype 0.4.1 — règle typographique globale
   Pas de texte justifié dans l’encyclopédie 11–49.
   ============================================================ */

/* Portail */
.pcse-encyclopedies-cse,
.pcse-encyclopedies-cse p,
.pcse-encyclopedies-cse li,
.pcse-encyclopedies-cse h1,
.pcse-encyclopedies-cse h2,
.pcse-encyclopedies-cse h3,
.pcse-encyclopedies-cse__card,
.pcse-encyclopedies-cse__card p,
.pcse-encyclopedies-cse__card h2 {
  text-align: left !important;
  text-align-last: left !important;
  word-spacing: normal !important;
}

/* Fiches */
.pcse-fiche,
.pcse-fiche p,
.pcse-fiche li,
.pcse-fiche h1,
.pcse-fiche h2,
.pcse-fiche h3,
.pcse-fiche summary,
.pcse-box,
.pcse-box p,
.pcse-reclamation,
.pcse-reclamation p,
.pcse-reclamation li,
.pcse-definition-card,
.pcse-definition-card p,
.pcse-method-step,
.pcse-method-step p,
.pcse-timeline__step,
.pcse-timeline__step p,
.pcse-template-box,
.pcse-template-box__text,
.pcse-sources,
.pcse-sources li {
  text-align: left !important;
  text-align-last: left !important;
  word-spacing: normal !important;
}

/* Tableaux */
.pcse-means-table th,
.pcse-means-table td {
  text-align: left !important;
  text-align-last: left !important;
  word-spacing: normal !important;
}

/* Sommaire */
.pcse-fiche-toc,
.pcse-fiche-toc a,
.pcse-fiche-toc li {
  text-align: left !important;
  text-align-last: left !important;
}

/* On conserve l’alignement centré uniquement lorsqu’il est explicitement utile */
.pcse-encyclopedies-cse__hero h1 {
  text-align: left !important;
}

.pcse-fiche__badge,
.pcse-encyclopedies-cse__badge,
.pcse-means-status {
  text-align: center !important;
  text-align-last: center !important;
}

/* Évite les césures artificielles dans les petits blocs */
.pcse-encyclopedies-cse__card p,
.pcse-fiche p,
.pcse-definition-card p,
.pcse-method-step p,
.pcse-timeline__step p,
.pcse-means-table td {
  hyphens: none !important;
}


/* ============================================================
   Prototype 0.5.0 — vraie fiche « Rôle et missions »
   ============================================================ */

.pcse-composition-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 16px 0 12px;
}

.pcse-composition-card {
  padding: 18px;
  border: 1px solid #d6eafa;
  border-radius: 16px;
  background: #f8fcff;
}

.pcse-composition-card__badge {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eef8ff;
  color: #0073aa;
  font-size: .75rem;
  font-weight: 900;
}

.pcse-composition-card h3,
.pcse-specific-card h3,
.pcse-mission-card h3 {
  margin: 0 0 8px;
  color: #073d70;
  font-size: 1rem;
  line-height: 1.25;
}

.pcse-composition-card p,
.pcse-specific-card p,
.pcse-mission-card p {
  margin: 0;
  line-height: 1.58;
}

.pcse-composition-note {
  margin: 12px 0 30px;
  padding: 13px 15px;
  border-left: 5px solid #0073aa;
  border-radius: 10px;
  background: #f5f9fd;
  line-height: 1.55;
}

.pcse-missions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
  margin: 16px 0 30px;
}

.pcse-mission-card {
  position: relative;
  min-height: 170px;
  padding: 18px 18px 18px 64px;
  border: 1px solid #dce5ee;
  border-radius: 16px;
  background: #ffffff;
}

.pcse-mission-card__num {
  position: absolute;
  top: 18px;
  left: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: #0073aa;
  color: #fff;
  font-size: .78rem;
  font-weight: 900;
}

.pcse-specific-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  margin: 16px 0 30px;
}

.pcse-specific-card {
  padding: 17px 18px;
  border: 1px solid #e0e7ee;
  border-top: 4px solid #24457f;
  border-radius: 14px;
  background: #fff;
}

@media (max-width: 900px) {
  .pcse-specific-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .pcse-composition-grid,
  .pcse-missions-grid {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   Prototype 0.5.2 — fusion de la passerelle 50+
   ============================================================ */

.pcse-difference-50-link {
  display: inline-flex;
  align-items: center;
  margin-top: 14px;
  color: #24457f !important;
  font-weight: 850;
  text-decoration: none !important;
}

.pcse-difference-50-link:hover,
.pcse-difference-50-link:focus {
  text-decoration: underline !important;
}


/* ============================================================
   Prototype 0.6.0 — vraie fiche DUERP
   ============================================================ */

.pcse-duerp-role-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  margin: 16px 0 30px;
}

.pcse-duerp-role-card {
  padding: 18px;
  border: 1px solid #dce5ee;
  border-radius: 16px;
  background: #fff;
}

.pcse-duerp-role-card--employeur {
  border-top: 5px solid #24457f;
}

.pcse-duerp-role-card--cse {
  border-top: 5px solid #0088b9;
}

.pcse-duerp-role-card--ensemble {
  border-top: 5px solid #07936a;
}

.pcse-duerp-role-card h3 {
  margin: 0 0 9px;
  color: #073d70;
  font-size: 1rem;
}

.pcse-duerp-role-card p {
  margin: 0;
  line-height: 1.58;
}

.pcse-duerp-cycle {
  display: grid;
  gap: 10px;
  margin: 16px 0 30px;
}

.pcse-duerp-cycle__step {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: 14px;
  align-items: start;
  padding: 14px 16px;
  border: 1px solid #d6eafa;
  border-radius: 14px;
  background: #f8fcff;
}

.pcse-duerp-cycle__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #0073aa;
  color: #fff;
  font-weight: 900;
}

.pcse-duerp-cycle__step h3 {
  margin: 0 0 4px;
  color: #073d70;
  font-size: .98rem;
}

.pcse-duerp-cycle__step p {
  margin: 0;
  line-height: 1.5;
}

.pcse-legal-note-box {
  margin: -18px 0 30px;
  padding: 12px 14px;
  border-left: 5px solid #0073aa;
  border-radius: 9px;
  background: #f5f9fd;
}

.pcse-box--checklist {
  border-left: 6px solid #f29900;
  background: #fff9ef;
}

.pcse-box--actions1149 {
  border-left: 6px solid #07936a;
  background: #f3fbf7;
}

.pcse-question-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
  margin: 16px 0 30px;
}

.pcse-question-card {
  padding: 13px 15px;
  border: 1px solid #dce5ee;
  border-radius: 12px;
  background: #fff;
  color: #253746;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .pcse-duerp-role-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .pcse-question-grid {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   0.7.0 — portail officiel Encyclopédie CSE 11–49
   ============================================================ */

.pcse-encyclopedies-cse__quick {
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 12px;
  margin-top: 14px;
}

.pcse-encyclopedies-cse__quick a {
  min-height: 82px;
  display: flex;
  align-items: center;
  padding: 15px 16px;
  line-height: 1.35;
}

.pcse-encyclopedies-cse__quick .pcse-quick--featured {
  border-color: #f6bf70;
  background: #fff9ef;
  color: #8a4b00;
}

.pcse-encyclopedies-cse__grid {
  align-items: stretch;
}

.pcse-encyclopedies-cse__card {
  min-height: 260px;
  display: flex;
  flex-direction: column;
}

.pcse-encyclopedies-cse__card > a {
  margin-top: auto;
}

.pcse-encyclopedies-cse__card--featured {
  border-color: #f4b75e;
  background: linear-gradient(180deg,#fffaf2 0%,#ffffff 55%);
}

.pcse-encyclopedies-cse__card--featured:before {
  background: #f29900;
}

.pcse-portal-card__badge {
  display: inline-flex;
  align-self: flex-start;
  margin: 2px 0 6px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eef8ff;
  color: #073d70;
  font-size: .75rem;
  line-height: 1;
  font-weight: 900;
}

.pcse-encyclopedies-cse__card--featured .pcse-portal-card__badge {
  background: #fff1d9;
  color: #8a4b00;
}

.pcse-portal-situations {
  margin: 6px 0 10px;
}

.pcse-encyclopedies-cse__card[id] {
  scroll-margin-top: 135px;
}

@media (max-width: 1120px) {
  .pcse-encyclopedies-cse__quick {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .pcse-encyclopedies-cse__quick {
    grid-template-columns: 1fr;
  }
  .pcse-encyclopedies-cse__quick a {
    min-height: 0;
  }
}


/* ============================================================
   0.7.1 — équilibre du portail : 3 cartes + 2 cartes centrées
   ============================================================ */

@media (min-width: 901px) {
  .pcse-encyclopedies-cse__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  .pcse-encyclopedies-cse__grid > .pcse-encyclopedies-cse__card {
    grid-column: span 2;
  }

  .pcse-encyclopedies-cse__grid > .pcse-encyclopedies-cse__card:nth-child(4) {
    grid-column: 2 / span 2;
  }

  .pcse-encyclopedies-cse__grid > .pcse-encyclopedies-cse__card:nth-child(5) {
    grid-column: 4 / span 2;
  }
}


/* 0.9.2 — méthode PilotCSE : séquence de lecture */
.pcse-method-workflow{
  display:inline-block;
  margin:0 0 14px;
  padding:7px 12px;
  border:1px solid #cfe3f3;
  border-radius:999px;
  background:#f3f9fd;
  color:#006fa8;
  font-weight:700;
  line-height:1.35;
}
@media (max-width:700px){
  .pcse-method-workflow{
    display:block;
    border-radius:10px;
  }
}

/* ============================================================
   0.11.1 — finitions fiche #6 Heures de délégation
   ============================================================ */
.pcse-composition-card--wide {
  grid-column: 1 / -1;
}

.pcse-timeline.pcse-timeline--2x2 {
  grid-template-columns: repeat(2, minmax(0,1fr));
}

@media (max-width: 620px) {
  .pcse-timeline.pcse-timeline--2x2 {
    grid-template-columns: 1fr;
  }
}



/* v0.12.2 — respiration après les exemples de réclamations */
#reclamations + #documents {
  margin-top: 8px;
}


/* ============================================================
   0.14.0 — bibliothèque publique automatique
   Validée + Publiée, classée par famille
   ============================================================ */

.pcse-portal-library{
  margin-top:48px;
  padding-top:8px;
  border-top:1px solid #e2edf5;
}

.pcse-portal-library__intro{
  max-width:900px;
  margin-bottom:20px;
}

.pcse-portal-library__intro p{
  margin:8px 0 0;
  color:#43566a;
  font-size:1.02rem;
  line-height:1.6;
}

.pcse-portal-family-nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:22px 0 34px;
}

.pcse-portal-family-nav a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:54px;
  padding:12px 14px;
  border:1px solid #d2e4f2;
  border-radius:10px;
  background:#f8fcff;
  color:#006fa8;
  font-weight:800;
  line-height:1.25;
  text-decoration:none;
}

.pcse-portal-family-nav a:hover{
  border-color:#91c9ea;
  background:#eef8ff;
}

.pcse-portal-family-nav span{
  flex:0 0 auto;
  min-width:28px;
  padding:4px 8px;
  border-radius:999px;
  background:#e8f5fc;
  color:#075985;
  text-align:center;
  font-size:.8rem;
  font-weight:900;
}

.pcse-portal-family{
  margin:34px 0 0;
  scroll-margin-top:135px;
}

.pcse-portal-family__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
  padding-bottom:10px;
  border-bottom:2px solid #e6f0f7;
}

.pcse-portal-family__head h2{
  margin:0;
  color:#073d70;
  font-size:1.55rem;
  line-height:1.2;
}

.pcse-portal-family__count{
  flex:0 0 auto;
  padding:5px 10px;
  border-radius:999px;
  background:#f0f7fb;
  color:#42627b;
  font-size:.82rem;
  font-weight:800;
}

.pcse-portal-family__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.pcse-portal-library-card{
  display:flex;
  flex-direction:column;
  min-height:190px;
  padding:18px 18px 16px;
  border:1px solid #d7e5f1;
  border-radius:12px;
  background:#fff;
  box-shadow:0 7px 22px rgba(24,72,108,.045);
}

.pcse-portal-library-card__meta{
  min-height:24px;
  margin-bottom:5px;
}

.pcse-portal-library-card__badge{
  display:inline-flex;
  padding:4px 8px;
  border-radius:999px;
  background:#eef8ff;
  color:#075985;
  font-size:.72rem;
  line-height:1;
  font-weight:900;
}

.pcse-portal-library-card h3{
  margin:0 0 8px;
  color:#102a43;
  font-size:1.08rem;
  line-height:1.32;
}

.pcse-portal-library-card p{
  margin:0 0 14px;
  color:#43566a;
  line-height:1.5;
}

.pcse-portal-library-card > a{
  margin-top:auto;
  color:#0077b5;
  font-weight:800;
  text-decoration:none;
}

.pcse-portal-library-card > a:hover{
  text-decoration:underline;
}

@media (max-width:900px){
  .pcse-portal-family-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:680px){
  .pcse-portal-family-nav,
  .pcse-portal-family__grid{
    grid-template-columns:1fr;
  }

  .pcse-portal-family__head{
    align-items:flex-start;
  }

  .pcse-portal-library-card{
    min-height:0;
  }
}
