/* ==========================================================================
   Compléments de la plateforme (back-office, portail usager) - après plateforme.css.
   ========================================================================== */
.page-entete{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}
.page-entete h1{margin-bottom:.2rem}
.carte-app{border:0;border-radius:var(--rayon-lg);box-shadow:var(--ombre-douce);transition:transform .15s,box-shadow .15s;height:100%}
.carte-app:hover{transform:translateY(-3px);box-shadow:var(--ombre-moyenne)}
.carte-app .icone-app{width:3.2rem;height:3.2rem;border-radius:.9rem;display:flex;align-items:center;justify-content:center;font-size:1.6rem}
.icone-app.primary{background:#e7f0fd;color:var(--rdc-bleu)}.icone-app.danger{background:#fde8ea;color:var(--rdc-rouge)}.icone-app.warning{background:#fff7d1;color:var(--rdc-or-fonce)}.icone-app.success{background:#e5f4ee;color:var(--rdc-vert)}
.cms-shell{display:flex;gap:1.5rem;align-items:flex-start}
.cms-sidebar{width:240px;flex:0 0 240px;background:#fff;border-radius:var(--rayon-lg);box-shadow:var(--ombre-douce);padding:.75rem 0;position:sticky;top:7.5rem}
.cms-sidebar a{display:flex;align-items:center;gap:.6rem;padding:.48rem 1.1rem;color:#3c4655;text-decoration:none;font-size:.9rem;font-weight:600;border-left:3px solid transparent}
.cms-sidebar a:hover{background:#f1f5fa}
.cms-sidebar a.active{background:#eaf3ff;color:var(--rdc-bleu-nuit);border-left-color:var(--rdc-bleu)}
.cms-groupe{text-transform:uppercase;font-size:.7rem;letter-spacing:.05em;font-weight:700;color:#9aa5b1;padding:.9rem 1.1rem .3rem}
.cms-contenu{flex:1;min-width:0}
@media(max-width:991.98px){.cms-shell{display:block}.cms-sidebar{width:100%;position:static;display:flex;flex-wrap:wrap;gap:.3rem;padding:.6rem;margin-bottom:1rem}.cms-groupe{display:none}.cms-sidebar a{border-left:0;border-radius:999px;background:#f1f3f6;padding:.35rem .8rem}}
.vignette{width:64px;height:42px;object-fit:cover;border-radius:.35rem;background:#eef1f6}
.timeline-item .evt-icone{display:inline-flex;width:1.6rem;height:1.6rem;align-items:center;justify-content:center;border-radius:50%;background:#e7f0fd;color:var(--rdc-bleu);margin-right:.35rem;font-size:.85rem}
.etapes-workflow{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.etapes-workflow .etape{padding:.3rem .7rem;border-radius:999px;background:#eef1f6;font-size:.8rem;font-weight:600;color:#5a6472}
.etapes-workflow .etape.faite{background:#e5f4ee;color:var(--rdc-vert-fonce)}
.etapes-workflow .etape.courante{background:var(--rdc-bleu);color:#fff}
.etapes-workflow .fleche{color:#b4bcc8}
.niveau-carte{border-left:4px solid var(--rdc-bleu)}
.signature-zone{border:2px dashed #c8d0dc;border-radius:.6rem;background:#fff;touch-action:none;width:100%;height:180px;cursor:crosshair}
.apercu-signature{max-height:90px;max-width:100%;background:#fff;border:1px solid var(--rdc-gris-bordure);border-radius:.4rem;padding:.4rem}
.variables-gabarit code{cursor:pointer}
.code-editeur{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}
.table-sm-actions .btn{padding:.15rem .45rem;font-size:.8rem}
.statut-pastille{display:inline-block;width:.6rem;height:.6rem;border-radius:50%;margin-right:.35rem}
.portail-hero{background:linear-gradient(135deg,var(--rdc-bleu-nuit),var(--rdc-bleu-fonce) 55%,var(--rdc-bleu));color:#fff;border-radius:var(--rayon-lg);padding:2rem;position:relative;overflow:hidden}
.portail-hero::after{content:"";position:absolute;inset:-30% -10% -30% 55%;background:linear-gradient(115deg,transparent 0 40%,rgba(206,16,33,.35) 40% 52%,rgba(247,214,24,.45) 52% 56%,transparent 56%);pointer-events:none}
.portail-hero h1{color:#fff}
.portail-hero p{color:rgba(255,255,255,.82)}
.suivi-dossier{display:flex;gap:0;margin:1rem 0}
.suivi-dossier .pas{flex:1;text-align:center;position:relative;font-size:.78rem;color:#5a6472}
.suivi-dossier .pas::before{content:"";position:absolute;top:.85rem;left:-50%;width:100%;height:3px;background:#dfe4ec;z-index:0}
.suivi-dossier .pas:first-child::before{display:none}
.suivi-dossier .pas .rond{position:relative;z-index:1;width:1.8rem;height:1.8rem;border-radius:50%;margin:0 auto .35rem;display:flex;align-items:center;justify-content:center;background:#dfe4ec;color:#5a6472;font-weight:700}
.suivi-dossier .pas.fait .rond,.suivi-dossier .pas.fait::before{background:var(--rdc-vert);color:#fff}
.suivi-dossier .pas.courant .rond{background:var(--rdc-bleu);color:#fff;box-shadow:0 0 0 4px rgba(10,93,194,.18)}
.suivi-dossier .pas.courant::before{background:var(--rdc-vert)}
.suivi-dossier .pas.rejete .rond{background:var(--rdc-rouge);color:#fff}
@media(max-width:575.98px){.suivi-dossier{flex-direction:column;gap:.5rem}.suivi-dossier .pas{text-align:left;display:flex;align-items:center;gap:.5rem}.suivi-dossier .pas .rond{margin:0}.suivi-dossier .pas::before{display:none}}
