:root{--bleu:#073ea0;--bleu-fonce:#052e78;--bleu-nuit:#052a6e;--bleu-clair:#7593ca;--orange-clair:#ffb273;--orange:#ff7707;--orange-texte:#b84e00;--bleu-onglet:#7593ca;--orange-bouton:#ff7707;--encre:#16202e;--gris:#5b6475;--bord:#dde2ea;--filet:#eef1f5;--fond:#f3f5f8;--rouge:#9b1c1c;--vert:#14632f}*{box-sizing:border-box}html,body{margin:0}body{color:var(--encre);background:var(--fond);font-family:IBM Plex Sans,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.45}a{color:var(--bleu)}a:hover{color:var(--bleu-fonce)}h1{margin:0;font-size:26px}:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.app{flex-wrap:wrap;min-height:100vh;display:flex}.menu{background:var(--bleu-nuit);flex-direction:column;flex:220px;gap:2px;max-width:260px;padding:20px 14px;display:flex}.menu-logo{text-align:center;color:var(--bleu);letter-spacing:.02em;background:#fff;border-radius:10px;margin:0 4px 18px;padding:12px;font-weight:700}.menu-logo span{color:var(--orange-texte)}.menu-logo:has(img){margin-left:0;margin-right:0;padding:6px}.menu-logo img{object-fit:contain;width:100%;height:auto;max-height:120px;margin:0 auto;display:block}.menu a{color:#fff;border-radius:8px;min-height:44px;padding:11px 12px;font-size:14px;text-decoration:none;display:block}.menu a:hover,.menu a:focus-visible{color:#fff;background:#ffffff24;font-weight:700}.menu a[aria-current=page]{background:var(--bleu-onglet);color:#fff;font-weight:700}.menu-pied{color:#d5dce7;border-top:1px solid #ffffff26;margin-top:auto;padding:14px 8px 0;font-size:13px}.menu-pied button{width:100%;margin-top:8px}.contenu{flex-direction:column;flex:999 560px;gap:20px;min-width:0;padding:28px;display:flex}.montre-tablette{display:none}@media (max-width:900px){.app{flex-direction:column}.menu{z-index:10;flex-flow:wrap;flex:none;align-items:center;gap:4px;width:100%;max-width:none;padding:10px 14px;position:sticky;top:0}.menu-logo{margin:0 8px 0 0;padding:8px 12px}.menu-logo img{width:auto;max-height:48px}.menu-pied{border:0;align-items:center;gap:10px;margin:0 0 0 auto;padding:0;display:flex}.menu-pied button{width:auto;margin:0}.contenu{flex:auto;padding:18px}.masque-tablette{display:none}.montre-tablette{display:block}}.entete{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.carte{border:1px solid var(--bord);background:#fff;border-radius:12px;min-width:0;padding:20px}.carte h2{margin:0 0 14px;font-size:16px}.grille{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;display:grid}.kv{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;display:grid}.discret{color:var(--gris);font-size:13px}.badge{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.b-bleu{color:var(--bleu-fonce);background:#e6edfb}.b-orange{color:#8a3e05;background:#fdf0e1}.b-vert{color:var(--vert);background:#e3f4e8}.b-rouge{color:var(--rouge);background:#fbe7e7}.b-gris{color:#3e4757;background:#eceff3}.btn{border:1px solid var(--bleu);background:var(--bleu);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:0 16px;font:600 14px inherit;text-decoration:none;display:inline-flex}.btn:hover{background:var(--bleu-fonce);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-2{color:var(--bleu);background:#fff}.btn-2:hover{color:var(--bleu-fonce);background:#e6edfb}.btn-orange,a.btn-orange{background:var(--orange-bouton);border-color:var(--orange-bouton);color:#fff;text-shadow:0 1px 1px #00000040;font-weight:700;box-shadow:0 0 0 2px #fff}.btn-orange:hover,a.btn-orange:hover{color:#fff;background:#e86a00;border-color:#e86a00}.ligne{border-top:1px solid var(--filet);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.alerte{border-radius:10px;padding:12px 16px}.alerte-rouge{color:var(--rouge);background:#fbe7e7;border:1px solid #e8b4b4}.alerte-orange{color:#8a3e05;background:#fdf0e1;border:1px solid #f3c99b}.alerte-bleu{color:var(--bleu-fonce);background:#e6edfb;border:1px solid #c9d6f3}.tableau-defile{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--gris);border-bottom:1px solid var(--bord);white-space:nowrap;padding:8px 10px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--filet);vertical-align:top;padding:10px}td.num{text-align:right;white-space:nowrap}.form{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.form .large{grid-column:1/-1}label{color:#3e4757;margin-bottom:6px;font-size:13px;font-weight:600;display:block}input,select,textarea{width:100%;min-height:44px;color:var(--encre);background:#fff;border:1px solid #9aa4b5;border-radius:8px;padding:10px 12px;font:14px inherit}.obligatoire:after{content:" *";color:var(--rouge)}.erreur-champ{color:var(--rouge);margin-top:4px;font-size:13px}.filtres{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.filtres>div{flex:180px}details.repliable{border-top:1px solid var(--filet)}details.repliable>summary{cursor:pointer;justify-content:space-between;gap:10px;min-height:44px;padding:12px 0;font-weight:600;list-style:none;display:flex}details.repliable>summary::-webkit-details-marker{display:none}details.repliable>summary:after{content:"▸";color:var(--gris)}details.repliable[open]>summary:after{content:"▾"}@media (max-width:1100px){body{zoom:.95}}@media (min-width:1600px){body{zoom:1.1}}.agenda{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}@media (max-width:1200px){.agenda{grid-template-columns:1fr}}.cal{--vacances:#7593ca;border-top:1px solid var(--filet);border-left:1px solid var(--filet);grid-template-columns:34px repeat(7,minmax(0,1fr));display:grid}.cal-tete{color:var(--gris);text-transform:capitalize;border-right:1px solid var(--filet);border-bottom:1px solid var(--filet);padding:6px;font-size:12px;font-weight:600}.cal-jour{border-right:1px solid var(--filet);border-bottom:1px solid var(--filet);min-height:92px;color:inherit;padding:6px;font-size:12px;text-decoration:none;display:block}.cal-jour:hover,.cal-jour:focus-visible{background:#f4f7fc}.cal-jour.hors{color:#8a93a3;background:#fafbfc}.cal-jour.choisi{outline:2px solid var(--bleu);outline-offset:-2px}.cal-num{border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:600;display:inline-flex}.cal-jour.auj .cal-num{background:var(--bleu);color:#fff}.cal-ev{white-space:nowrap;text-overflow:ellipsis;color:#16202e;border-radius:4px;margin-top:3px;padding:2px 5px;display:block;overflow:hidden}@media (max-width:700px){.cal-jour{min-height:64px}.cal-ev{height:6px;padding:0;font-size:0}}.pastille{vertical-align:middle;border:1px solid #00000026;border-radius:3px;width:12px;height:12px;display:inline-block}.cal-sem{color:var(--gris);border-right:1px solid var(--filet);border-bottom:1px solid var(--filet);background:#f6f8fb;justify-content:center;align-items:flex-start;padding:8px 2px;font-size:11px;font-weight:600;display:flex}.cal-tete.cal-sem{align-items:center;padding:6px 2px}.cal-jour.vac{box-shadow:inset 5px 0 0 var(--vacances);padding-left:10px}.cal-semaine .cal-jour{min-height:260px}.cal-semaine .cal-ev{white-space:normal}:root{--vacances:#7593ca}.barre-recherche{align-items:center;gap:6px;width:min(100%,520px);display:flex}.barre-recherche input{flex:1;min-width:0}.barre-recherche .btn{padding:0 14px}.barre-recherche .micro{width:44px;padding:0}.barre-recherche .micro:disabled{opacity:.55;cursor:not-allowed}.visuellement-cache{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ref{white-space:nowrap;border-radius:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.bandeau{background:var(--bleu-onglet);color:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"titre recherche""titre actions";align-items:start;gap:12px 20px;padding:20px;display:grid}.bandeau>:first-child{grid-area:titre;min-width:0}.bandeau>.barre-recherche{grid-area:recherche;justify-self:end}.bandeau>:nth-child(2):not(.barre-recherche){flex-wrap:wrap;grid-area:actions;justify-content:flex-end;justify-self:end;gap:10px;display:flex}.bandeau h1,.bandeau h2{color:#fff;text-shadow:0 1px 1px #0000002e;font-weight:700}.bandeau .discret,.bandeau nav,.bandeau>:first-child{color:#fff;font-weight:600}.bandeau a:not(.btn){color:#fff;font-weight:700}.bandeau a.btn-2,.bandeau .btn-2{color:var(--bleu);background:#fff}.bandeau .btn:not(.btn-2):not(.btn-orange){box-shadow:0 0 0 2px #fff}@media (max-width:900px){.bandeau{grid-template-columns:1fr;grid-template-areas:"titre""recherche""actions"}.bandeau>.barre-recherche,.bandeau>:nth-child(2):not(.barre-recherche){justify-content:flex-start;justify-self:stretch}}.sous-onglets{border-bottom:2px solid var(--bord);flex-wrap:wrap;gap:6px;display:flex}.sous-onglets a{min-height:44px;color:var(--bleu);border-bottom:3px solid #0000;border-radius:8px 8px 0 0;align-items:center;margin-bottom:-2px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.sous-onglets a:hover{background:#e6edfb}.sous-onglets a[aria-current=page]{border-bottom-color:var(--orange-bouton);color:var(--encre);font-weight:700}.cal-tdb{grid-template-columns:repeat(7,minmax(0,1fr))}.cal-tdb .cal-jour{min-height:150px}@media (max-width:900px){.cal-tdb{grid-template-columns:1fr}.cal-tdb .cal-jour{min-height:0}.cal-tdb .cal-ev{height:auto;padding:2px 5px;font-size:12px}}.assistant{z-index:50;background:#fff;flex-direction:column;width:min(440px,100vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-6px 0 24px #052a6e2e}.assistant-tete{background:var(--bleu-onglet);color:#fff;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.assistant-tete h2{color:#fff}.assistant-fil{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.bulle{border-radius:12px;max-width:92%;padding:10px 12px;font-size:14px;line-height:1.45}.bulle-moi{background:#e6edfb;align-self:flex-end}.bulle-ia{background:var(--fond);border:1px solid var(--bord);align-self:flex-start}.assistant-saisie{border-top:1px solid var(--bord);gap:6px;padding:12px;display:flex}.assistant-saisie input{flex:1;min-width:0}.micro-actif{animation:1.2s ease-in-out infinite pulsation;border-color:var(--rouge)!important;color:var(--rouge)!important;background:#fbe7e7!important}@keyframes pulsation{50%{box-shadow:0 0 0 6px #9b1c1c26}}@media (prefers-reduced-motion:reduce){.micro-actif{animation:none}}
