:root{--encre:#111827;--doux:#6b7280;--fond:#f5f6fb;--carte:#fff;--nuit:#0b0f1e;--violet:#7c3aed;--violet-clair:#ede9fe;--bleu:#2563eb;--rouge:#be123c}*{box-sizing:border-box}body{background:#f5f6fb;background:var(--fond);color:#111827;color:var(--encre);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:15px;margin:0}.doux{color:#6b7280;color:var(--doux);font-size:14px}.app-shell{display:flex;min-height:100vh}.sidebar{background:#0b0f1e;background:var(--nuit);color:#fff;display:flex;flex:none;flex-direction:column;height:100vh;padding:22px 14px;position:sticky;top:0;width:240px}.brand{font-size:20px;font-weight:800;margin:0 0 22px;padding:0 8px}.user-panel{display:flex;flex-direction:column;gap:4px;padding:0 8px 20px}.user-email{color:#9ca3af;font-size:13px;overflow-wrap:anywhere}.menu{grid-gap:6px;display:grid;gap:6px}.menu button{background:#0000;border:0;border-radius:10px;color:#a1a1aa;cursor:pointer;font:inherit;padding:11px 12px;text-align:left;width:100%}.menu button:hover{background:#1c2234;color:#fff}.menu button.actif{background:#7c3aed;background:var(--violet);color:#fff}.deconnexion{background:#0000;border:1px solid #374151;border-radius:10px;color:#fff;cursor:pointer;font:inherit;margin-top:auto;padding:10px 12px}.deconnexion:hover{background:#1f2937}.main{flex:1 1;min-width:0;padding:28px clamp(16px,3vw,36px)}.page-heading{margin:0 0 20px}.page-heading h1{font-size:24px;margin:0 0 4px}.page-heading p{font-size:14px;margin:0}.chargement,.page-heading p{color:#6b7280;color:var(--doux)}.chargement{padding:28px}.carte{background:#fff;background:var(--carte);border:1px solid #eef2f7;border-radius:14px;margin-bottom:18px;padding:18px}.carte-tete{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px}.carte-tete,label{align-items:center}label{color:#6b7280;color:var(--doux);display:inline-flex;font-size:14px;gap:6px}input,select{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111827;color:var(--encre);font:inherit;padding:8px 9px}input:focus,select:focus{border-color:#8b5cf6;outline:2px solid #ddd6fe}button{cursor:pointer;font:inherit}.primaire{background:#2563eb;background:var(--bleu);border:0;border-radius:10px;color:#fff;font-weight:700;padding:10px 14px}.primaire:hover{background:#1d4ed8}.primaire:disabled{cursor:default;opacity:.55}.secondaire{background:#ede9fe;background:var(--violet-clair);border:0;border-radius:9px;color:#6d28d9;font-weight:700;padding:8px 12px}.secondaire:hover{background:#ddd6fe}.danger{background:#fff1f2;border:0;border-radius:9px;color:#be123c;color:var(--rouge);font-size:13px;font-weight:700;padding:8px 12px}.danger:hover{background:#ffe4e6}table{border-collapse:collapse;width:100%}th{color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:.04em;text-align:left;text-transform:uppercase}td,th{padding:10px 12px}td{border-top:1px solid #f3f4f6;font-size:14px;vertical-align:middle}td input,td select{min-width:90px;width:100%}.data td:last-child{white-space:nowrap}.vide{color:#6b7280;color:var(--doux);font-size:14px;margin:14px 0 0}.grille td,.grille th{border:1px solid #f1f2f6;padding:8px}.grille th{color:#6b7280;color:var(--doux);font-size:12px;letter-spacing:0;text-transform:none}.grille td{height:70px;vertical-align:top}.seance b{display:block;font-size:13px}.seance span{color:#6b7280;color:var(--doux);display:block;font-size:12px}.message{border-radius:10px;font-size:14px;margin:0 0 14px;padding:10px 12px}.message.info{background:#e0f2fe;color:#075985}.message.erreur{background:#fee2e2;color:#991b1b}.resultat{border:1px solid #eef2f7;border-radius:12px;margin-top:14px;padding:14px}.login-page{align-items:center;background:#eef2ff;display:flex;justify-content:center;min-height:100vh;padding:24px}.login-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 16px 44px #11182712;padding:30px;width:min(100%,400px)}.login-card h1{color:#1e3a8a;font-size:26px;margin:0 0 6px;text-align:center}.login-card .sous-titre{color:#6b7280;color:var(--doux);font-size:14px;margin:0 0 22px;text-align:center}.login-card form{display:flex;flex-direction:column;gap:6px}.login-card label{color:#374151;display:block;font-weight:600;margin-top:10px}.login-card input,.login-card select{border-radius:10px;padding:11px 13px;width:100%}.login-card .primaire{margin-top:18px;padding:12px}@media (max-width:780px){.app-shell{flex-direction:column}.sidebar{height:auto;position:static;width:100%}.menu{grid-template-columns:1fr 1fr}.deconnexion{margin-top:14px}}
/*# sourceMappingURL=main.5bd5c431.css.map*/