:root{--fond: #f4f6f8;--surface: #ffffff;--texte: #1f2933;--doux: #5f6b7a;--bord: #d9dee4;--primaire: #1c3f6b;--primaire-clair: #e6edf6;--ok: #1e7a46;--ok-fond: #e5f4ea;--alerte: #a15c00;--alerte-fond: #fdf1df;--erreur: #b42318;--erreur-fond: #fdeceb;--rayon: 8px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:15px;line-height:1.5;color:var(--texte)}*{box-sizing:border-box}body{margin:0;background:var(--fond)}a{color:var(--primaire)}h1{font-size:1.45rem;margin:0 0 .25rem}h2{font-size:1.1rem;margin:0 0 .75rem}h3{font-size:1rem;margin:1rem 0 .5rem}p{margin:.4rem 0}.appli{min-height:100vh}main{max-width:1200px;margin:0 auto;padding:1.25rem 16px 3rem}.appli>main{padding:1.75rem 28px 3rem}.marque{font-weight:700;color:#fff;text-decoration:none;line-height:1.25}.marque small{display:block;font-weight:400;opacity:.75;font-size:.8rem}.laterale{position:fixed;inset:0 auto 0 0;width:248px;z-index:20;display:flex;flex-direction:column;gap:.9rem;background:var(--primaire);color:#fff;padding:1rem .75rem;overflow-y:auto}.laterale .marque,.tiroir .marque{padding:.2rem .55rem .4rem}.laterale nav,.tiroir nav{flex:1}.nav-action{justify-content:center;background:#fff;color:var(--primaire);border-color:#fff;margin:0 .2rem}.nav-action:hover{background:var(--primaire-clair)}.nav-section{margin-bottom:1rem}.nav-titre{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;opacity:.6;padding:0 .65rem .3rem}.nav-lien{display:flex;align-items:center;gap:.65rem;width:100%;padding:.5rem .65rem;border-radius:6px;color:#fff;text-decoration:none;font-size:.93rem;font-weight:500;background:none;border:none;opacity:.88}.nav-lien svg{flex:none;opacity:.85}.nav-lien:hover{background:#ffffff1a;opacity:1}.nav-lien.active{background:#ffffff2e;opacity:1;font-weight:600;box-shadow:inset 3px 0 #fff}.nav-lien .compteur{margin-left:auto}.compteur{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.35rem;padding:0 .35rem;border-radius:999px;background:#e8590c;color:#fff;font-size:.74rem;font-weight:700;line-height:1}.nav-pied{border-top:1px solid rgba(255,255,255,.15);padding-top:.75rem;display:grid;gap:.2rem}.nav-moi{display:flex;align-items:center;gap:.6rem;padding:.45rem .55rem;border-radius:6px;color:#fff;text-decoration:none}.nav-moi:hover,.nav-moi.active{background:#ffffff1a}.nav-moi strong{display:block;font-size:.9rem}.nav-moi small{display:block;opacity:.7;font-size:.78rem}.avatar{flex:none;width:2rem;height:2rem;border-radius:50%;background:#fff3;display:grid;place-items:center;font-size:.8rem;font-weight:700}.nav-sortie{cursor:pointer;font:inherit;font-size:.9rem}.entete-mobile,.barre-bas{display:none}button.icone-seule{background:none;border:none;color:inherit;padding:.4rem}@media (min-width: 900px){.appli{padding-left:248px}}@media (max-width: 899px){.laterale{display:none}.entete-mobile{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;background:var(--primaire);color:#fff;padding:.55rem 8px .55rem 16px}.appli>main{padding:1.1rem 16px calc(5.5rem + env(safe-area-inset-bottom))}.barre-bas{display:flex;position:fixed;inset:auto 0 0 0;z-index:20;background:var(--surface);border-top:1px solid var(--bord);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 10px #0000000d}.barre-bas a,.barre-bas button{flex:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem .25rem .55rem;background:none;border:none;border-radius:0;color:var(--doux);font:inherit;font-size:.74rem;font-weight:600;text-decoration:none}.barre-bas a.active{color:var(--primaire)}.barre-bas a.active .barre-icone{background:var(--primaire-clair)}.barre-icone{position:relative;display:grid;place-items:center;width:3.4rem;height:1.9rem;border-radius:999px}.barre-icone .compteur{position:absolute;top:-.3rem;right:.2rem;min-width:1.15rem;height:1.15rem;font-size:.68rem}.tiroir-fond{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0f172a73}.tiroir{position:absolute;inset:0 auto 0 0;width:min(300px,86vw);background:var(--primaire);color:#fff;display:flex;flex-direction:column;gap:.9rem;padding:.75rem .75rem calc(1rem + env(safe-area-inset-bottom));overflow-y:auto}}.page-etroite{max-width:460px;margin:3rem auto;padding:0 16px}.carte{background:var(--surface);border:1px solid var(--bord);border-radius:var(--rayon);padding:1.1rem 1.2rem;margin-bottom:1rem}.grille{display:grid;gap:1rem;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start}@media (max-width: 860px){.grille{grid-template-columns:minmax(0,1fr)}}.ligne{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.ligne>.pousse{margin-left:auto}.colonnes-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.colonnes-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}@media (max-width: 640px){.colonnes-2,.colonnes-3{grid-template-columns:minmax(0,1fr)}}.doux{color:var(--doux);font-size:.9rem}.titre-page{display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap;margin-bottom:1rem}.titre-page>div:first-child{margin-right:auto}label{display:block;font-weight:600;font-size:.88rem;margin-bottom:.2rem}.champ{margin-bottom:.8rem}.champ .aide{font-weight:400;color:var(--doux);font-size:.82rem}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=date],input[type=time],input[type=number],input[type=url],select,textarea{width:100%;padding:.5rem .6rem;border:1px solid var(--bord);border-radius:6px;font:inherit;background:#fff;color:var(--texte)}textarea{min-height:6rem;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid #6b9bd6;outline-offset:1px}.case{display:flex;gap:.5rem;align-items:flex-start;font-weight:400}.case input{margin-top:.25rem}button,.bouton{display:inline-flex;align-items:center;gap:.35rem;font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;padding:.5rem .9rem;border-radius:6px;border:1px solid var(--primaire);background:var(--primaire);color:#fff;text-decoration:none}button.secondaire,.bouton.secondaire{background:#fff;color:var(--primaire)}button.danger{background:#fff;color:var(--erreur);border-color:var(--erreur)}button.lien{background:none;border:none;color:var(--primaire);padding:0;font-weight:500;text-decoration:underline}button:disabled{opacity:.55;cursor:not-allowed}.message{padding:.6rem .8rem;border-radius:6px;margin:.5rem 0;font-size:.92rem}.message.erreur{background:var(--erreur-fond);color:var(--erreur)}.message.ok{background:var(--ok-fond);color:var(--ok)}.message.alerte{background:var(--alerte-fond);color:var(--alerte)}.message.info{background:var(--primaire-clair);color:var(--primaire)}.message ul{margin:.3rem 0 0;padding-left:1.2rem}.tableau-conteneur{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--bord);vertical-align:top}th{font-size:.8rem;color:var(--doux);font-weight:600;text-transform:uppercase;letter-spacing:.02em}tbody tr:hover{background:#f8fafc}tr.cliquable{cursor:pointer}.pastille{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--primaire-clair);color:var(--primaire);white-space:nowrap}.pastille.ok{background:var(--ok-fond);color:var(--ok)}.pastille.alerte{background:var(--alerte-fond);color:var(--alerte)}.pastille.erreur{background:var(--erreur-fond);color:var(--erreur)}.pastille.neutre{background:#eceff3;color:var(--doux)}.frise{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.3rem}.frise li{font-size:.78rem;padding:.25rem .55rem;border-radius:999px;background:#eceff3;color:var(--doux)}.frise li.fait{background:var(--ok-fond);color:var(--ok)}.frise li.actuel{background:var(--primaire);color:#fff;font-weight:600}dl.infos{display:grid;grid-template-columns:minmax(120px,34%) 1fr;gap:.35rem .75rem;margin:0;font-size:.92rem}dl.infos dt{color:var(--doux)}dl.infos dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.historique{list-style:none;padding:0;margin:0;font-size:.86rem}.historique li{padding:.45rem 0;border-bottom:1px solid var(--bord)}.historique li:last-child{border-bottom:none}.onglets{display:flex;gap:.25rem;border-bottom:1px solid var(--bord);margin-bottom:1rem;flex-wrap:wrap}.onglets button{background:none;color:var(--doux);border:none;border-bottom:2px solid transparent;border-radius:0;padding:.5rem .8rem}.onglets button.actif{color:var(--primaire);border-bottom-color:var(--primaire)}.charte{white-space:pre-wrap;background:#f8fafc;border:1px solid var(--bord);border-radius:6px;padding:.8rem;font-size:.9rem;max-height:22rem;overflow:auto}.creneaux{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.5rem}.creneaux button{justify-content:center;flex-direction:column;gap:0;font-weight:500}.creneaux button.choisi{outline:3px solid #6b9bd6}.qcm-question{padding:.75rem 0;border-bottom:1px solid var(--bord)}.qcm-choix{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.qcm-choix label{font-weight:400;border:1px solid var(--bord);border-radius:999px;padding:.3rem .75rem;cursor:pointer;margin:0}.qcm-choix input{position:absolute;opacity:0;pointer-events:none}.qcm-choix label:has(input:checked){background:var(--primaire);color:#fff;border-color:var(--primaire)}.qcm-choix label:has(input:focus-visible){outline:2px solid #6b9bd6}.vide{color:var(--doux);font-style:italic;padding:.5rem 0}.chiffres{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin-bottom:1rem}.chiffres .carte{margin:0;padding:.8rem 1rem;color:inherit;text-decoration:none;display:block}a.carte:hover{border-color:var(--primaire)}.chiffres .carte.accent{background:var(--primaire);border-color:var(--primaire);color:#fff}.chiffres .carte.accent .doux{color:#fffc}.filtres{flex:1}.filtres input[type=search]{flex:1 1 220px;width:auto;padding:.5rem .6rem;border:1px solid var(--bord);border-radius:6px;font:inherit}.chiffres strong{display:block;font-size:1.5rem}.tiroir .ligne{flex-wrap:nowrap}@media (max-width: 640px){table.en-fiches thead{display:none}table.en-fiches,table.en-fiches tbody,table.en-fiches tr,table.en-fiches td{display:block;width:100%}table.en-fiches tr{padding:.65rem 0;border-bottom:1px solid var(--bord)}table.en-fiches td{border:none;padding:.12rem 0}table.en-fiches td[data-label]:not([data-label=Stage]):before{content:attr(data-label) " · ";color:var(--doux);font-size:.78rem}table.en-fiches td[data-label=Stage]{font-weight:600}.chiffres{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.chiffres .carte{padding:.5rem .55rem}.chiffres strong{font-size:1.2rem}.chiffres .doux{font-size:.72rem;line-height:1.25;display:block}.carte{padding:.9rem}}.profil-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.75rem;margin-bottom:.75rem}.profil-groupe{border:1px solid var(--bord);border-radius:var(--rayon);padding:.5rem .8rem .7rem;margin:0;min-width:0}.profil-groupe legend{font-weight:700;font-size:.85rem;padding:0 .3rem}.profil-groupe .case{margin:.35rem 0}.critere{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.3rem 0;border-bottom:1px dashed var(--bord);font-size:.9rem}.critere:last-child{border-bottom:none}.segments{display:inline-flex;flex:none;border:1px solid var(--bord);border-radius:6px;overflow:hidden}.segments button{background:#fff;color:var(--doux);border:none;border-radius:0;padding:.3rem .55rem;font-size:.78rem;font-weight:600}.segments button+button{border-left:1px solid var(--bord)}.segments button.choisi{background:#eceff3;color:var(--texte)}.segments button.choisi.souhaite{background:var(--primaire-clair);color:var(--primaire)}.segments button.choisi.exige{background:var(--primaire);color:#fff}.pastille.puce{margin:0 .3rem .3rem 0;white-space:normal}@media (min-width: 861px){.seulement-mobile{display:none}}@media (max-width: 860px){.seulement-pc{display:none}}.frise-mobile summary{cursor:pointer;color:var(--primaire);font-size:.85rem;font-weight:600;padding:.2rem 0}.frise-mobile[open] summary{margin-bottom:.5rem}.carte-alerte{border-color:#f0c78a;background:#fffaf2}.prerequis{list-style:none;margin:0;padding:0}.prerequis li{display:flex;gap:.6rem;padding:.4rem 0;border-bottom:1px solid var(--bord)}.prerequis li:last-child{border-bottom:none}.prerequis li>span{font-weight:700;width:1.2rem;flex:none}.prerequis li.ok>span{color:var(--ok)}.prerequis li.manque>span{color:var(--erreur)}.horaire-table{margin-bottom:.4rem}.horaire-table td{padding:.25rem .3rem}.horaire-table input{padding:.35rem .45rem}.signature{position:relative;margin:.4rem 0}.signature-entete{display:flex;justify-content:space-between;font-size:.85rem;font-weight:600;margin-bottom:.25rem}.signature canvas{display:block;width:100%;height:150px;border:1.5px dashed #9aa8b8;border-radius:8px;background:#fff;touch-action:none;cursor:crosshair}.signature-aide{position:absolute;top:1.6rem;right:0;bottom:0;left:0;display:grid;place-items:center;color:#9aa8b8;font-size:.9rem;pointer-events:none}.compteur-heures{border-radius:8px;padding:.6rem .8rem;margin:.5rem 0;font-size:.9rem}.compteur-heures.ok{background:var(--ok-fond);color:var(--ok)}.compteur-heures.ko{background:var(--erreur-fond);color:var(--erreur)}.compteur-heures ul{margin:.3rem 0 0;padding-left:1.2rem}.compteur-heures .barre{height:8px;background:#00000014;border-radius:99px;overflow:hidden;margin-bottom:.4rem}.compteur-heures .barre span{display:block;height:100%;background:currentColor}tr.ligne-erreur input{border-color:var(--erreur);background:var(--erreur-fond)}.analyse h3{margin-top:1.1rem}.analyse .critere span{flex:1}.exposition-detail{margin:.2rem 0 .6rem 1rem;padding-left:.7rem;border-left:3px solid var(--bord)}.exposition-detail input[type=text]{margin-top:.3rem}.epi{margin:.2rem 0}.epi input[type=text]{flex:1 1 140px;width:auto;padding:.3rem .5rem}
