/* Manrope (SIL OFL 1.1, static/vendor/manrope/LICENSE) hébergée localement : aucune requête vers Google. */
@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url("../vendor/manrope/manrope-latin-400-normal.1589a53d0b0e.woff2") format("woff2")}
@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url("../vendor/manrope/manrope-latin-600-normal.58d382c3e448.woff2") format("woff2")}
@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url("../vendor/manrope/manrope-latin-700-normal.ed9e261b92db.woff2") format("woff2")}
@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url("../vendor/manrope/manrope-latin-800-normal.63c74bc8894a.woff2") format("woff2")}
/* Charte SIRH&Plus (reprise de la maquette) */
:root{--orange:#EE7B2A;--orange-fonce:#D4571F;--orange-pale:#FDEADC;--anthracite:#3F3F3E;--anthracite-2:#575756;
--fond:#F5F3F0;--surface:#fff;--surface2:#F3EFEA;--texte:#2B2A29;--texte2:#6B6863;--ligne:#E6E1DA;
--ok:#2E8B62;--warn:#E0A020;--bad:#D4514E;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--fond:#1C1A18;--surface:#262422;--surface2:#2F2C29;--texte:#EEEAE5;--texte2:#A9A49D;--ligne:#3A3633;--anthracite:#242321;--orange-pale:#4A2E1C;color-scheme:dark}}
*{box-sizing:border-box}body{margin:0;font-family:Manrope,system-ui,sans-serif;background:var(--fond);color:var(--texte)}
a{color:var(--orange-fonce)}.app{display:grid;grid-template-columns:230px 1fr;min-height:100vh}
.side{background:var(--anthracite);color:#E9E6E2;padding:16px}.side a{display:block;color:#E9E6E2;text-decoration:none;padding:8px 10px;border-radius:8px}
.side a:hover{background:var(--anthracite-2)}.side a.on{background:var(--orange);color:#fff}.side .grp{font-size:11px;text-transform:uppercase;opacity:.6;margin:14px 0 4px}
main{padding:24px}h1{margin:0 0 4px}.muted{color:var(--texte2)}.card{background:var(--surface);border:1px solid var(--ligne);border-radius:14px;padding:16px;margin:12px 0}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:8px;border-bottom:1px solid var(--ligne)}th{font-size:12px;color:var(--texte2)}
.chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--surface2)}
.ok{background:#DDF1E7;color:var(--ok)}.warn{background:#FBF0D6;color:#9A6B00}.bad{background:#F8DEDD;color:var(--bad)}
.btn{background:var(--orange);color:#fff;border:0;border-radius:999px;padding:8px 16px;font-weight:700;cursor:pointer}
input[type=search],input[type=text],input[type=password],input[type=date],select{padding:8px 12px;border:1px solid var(--ligne);border-radius:999px;background:var(--surface2);color:var(--texte);min-width:260px}
@media(max-width:800px){.app{grid-template-columns:1fr}.side{display:flex;gap:6px;overflow-x:auto}.side .grp{display:none}}
.flash{padding:10px 14px;border-radius:10px;background:var(--surface2);margin:0 0 8px}.flash.success{background:#DDF1E7;color:var(--ok)}
.flash.warning{background:#FBF0D6;color:#9A6B00}.flash.error{background:#F8DEDD;color:var(--bad)}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 16px;align-items:end}.form label{display:block;font-size:12px;color:var(--texte2);margin-bottom:4px}
.form input[type=text],.form input[type=date],.form select{min-width:0;width:100%}.form .aide{font-size:12px;color:var(--texte2)}.erreur{color:var(--bad)}
.btn.sec{background:var(--surface2);color:var(--texte)}td form{display:inline}
.grille{overflow-x:auto}.grille table{min-width:720px}.grille td{vertical-align:top}
.creneau{display:block;margin:2px 0;padding:4px 8px;border-radius:8px;background:var(--orange-pale);color:var(--texte);text-decoration:none;font-size:13px;white-space:nowrap}
.creneau.formation{background:#DDE8F5}.creneau.repos_hebdo,.creneau.ferie_chome{background:var(--surface2)}.creneau.astreinte{background:#EFE3F5}
input[type=time]{padding:8px 12px;border:1px solid var(--ligne);border-radius:999px;background:var(--surface2);color:var(--texte);width:100%}
.pointage{max-width:520px}.boutons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.btn.grand{padding:18px 12px;font-size:16px;border-radius:14px}#liste{margin:0;padding-left:18px}
input[type=month]{padding:8px 12px;border:1px solid var(--ligne);border-radius:999px;background:var(--surface2);color:var(--texte);width:100%}
.alerte{border-bottom:1px solid var(--ligne);padding:4px 0}.alerte p{margin:6px 0}.suivi{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 8px}
.suivi input[type=text]{min-width:0;flex:1 1 180px}
