@charset "UTF-8";.accueil{height:100vh;width:100%;background:url(/assets/slider2-C5Okskxr.jpg) no-repeat center center/cover;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;animation:zoomBg 20s infinite alternate ease-in-out}.overlay{background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:3rem;border-radius:20px;text-align:center;color:#fff;animation:fadeIn 2s ease-in-out}.title{font-size:2.8rem;font-weight:700;margin-bottom:1rem;animation:slideDown 1.5s ease forwards}.subtitle{font-size:1.3rem;margin-bottom:2rem;animation:fadeIn 2.5s ease forwards}.btn-login{background:linear-gradient(135deg,#ff9800,#ff5722);color:#fff;padding:12px 30px;border-radius:30px;font-size:1.2rem;font-weight:700;text-decoration:none;transition:all .3s ease-in-out}.btn-login:hover{background:linear-gradient(135deg,#ff5722,#ff9800);transform:scale(1.1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.login-container{height:100vh;width:100%;background:url(/assets/slider2-C5Okskxr.jpg) no-repeat center center/cover;display:flex;justify-content:center;align-items:center;animation:zoomBg 20s infinite alternate ease-in-out}.login-card{background:#ffffffe6;padding:3rem;border-radius:20px;width:400px;box-shadow:0 8px 30px #0000004d;text-align:center;animation:fadeIn 1.5s ease-in-out}.login-logo{width:100px;margin-bottom:1rem;animation:bounce 2s infinite}.login-title{font-size:1.8rem;font-weight:700;margin-bottom:1.5rem;color:#002855}.form-group{text-align:left;margin-bottom:1rem}input{width:100%;padding:12px;border:1px solid #ddd;border-radius:10px;margin-top:5px;font-size:1rem;transition:border .3s}input:focus{border:1px solid #ff9800;outline:none}.btn-login{background:linear-gradient(135deg,#ff9800,#ff5722);color:#fff;padding:12px;width:100%;border:none;border-radius:30px;font-size:1.2rem;font-weight:700;margin-top:1rem;cursor:pointer;transition:transform .2s ease-in-out}.btn-login:hover{transform:scale(1.05)}.alert{background:#ffe6e6;color:#d32f2f;padding:10px;margin-bottom:1rem;border-radius:10px;animation:shake .5s}@keyframes zoomBg{0%{transform:scale(1)}to{transform:scale(1.1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.error-message{background:#ff4d4df2;color:#fff;padding:12px 16px;margin-bottom:15px;border-radius:8px;font-weight:500;box-shadow:0 4px 12px #00000026;text-align:center;animation:shake .3s ease,fadeIn .5s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-4px)}to{transform:translate(0)}}.dashboard{display:flex;height:100vh;background:#f8f9fc;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.sidebar{width:240px;background:#042147;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:1rem 0;box-shadow:2px 0 8px #00000026}.sidebar-header{text-align:center;margin-bottom:1rem}.sidebar-header .logo{width:80px;margin-bottom:.5rem}.sidebar-header .brand{font-size:1.2rem;font-weight:700;color:gold}.menu{display:flex;flex-direction:column;padding:0 1rem}.menu-link{padding:12px 16px;border-radius:6px;margin:4px 0;text-decoration:none;color:#fff;font-weight:500;transition:all .3s ease}.menu-link:hover{background:#ffd70026;color:gold;transform:translate(4px)}.menu-link.active{background:gold;color:#042147;font-weight:700;box-shadow:0 0 8px #ffd70066}.btn-logout{margin:1rem;padding:12px;background:#e63946;border:none;border-radius:6px;color:#fff;font-weight:700;cursor:pointer;transition:background .3s ease,transform .2s}.btn-logout:hover{background:#c92c3a;transform:scale(1.05)}.content{flex:1;padding:1.5rem;overflow-y:auto;background:#f8f9fc}.welcome-banner{background:#fff;border-left:6px solid #ffd700;border-radius:8px;padding:14px 20px;font-size:1.05rem;font-weight:500;margin-bottom:1.5rem;box-shadow:0 2px 6px #00000014;display:flex;align-items:center;gap:6px;animation:slideIn .7s ease-out}.welcome-banner .highlight{font-weight:700;color:#042147}@keyframes slideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.page-content{background:#fff;border-radius:10px;padding:1.5rem;min-height:70vh;box-shadow:0 2px 10px #0000000d;animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:.7;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.apm-overlay{position:fixed;inset:0;background:#0000008c;display:flex;justify-content:center;align-items:flex-start;padding:2rem;z-index:2000;overflow-y:auto;animation:fadeIn .3s ease-in-out}.apm-modal{background:#fff;border-radius:14px;box-shadow:0 6px 20px #00000026;max-width:750px;width:100%;padding:1.5rem 2rem;animation:slideIn .35s ease;position:relative}.apm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.apm-header h3{font-size:1.3rem;font-weight:700;color:#001f54}.apm-close{background:none;border:none;font-size:1.5rem;color:#555;cursor:pointer;transition:transform .2s,color .2s}.apm-close:hover{transform:rotate(90deg);color:#e53935}.apm-section-title{font-weight:700;color:#001f54;margin:1rem 0 .5rem;font-size:1rem;display:flex;align-items:center;gap:.4rem}.apm-section-title:before{content:"◆";font-size:.7rem;color:#fdd835}.apm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:.8rem}.apm-field{display:flex;flex-direction:column}.apm-field label{font-size:.85rem;font-weight:600;color:#333;margin-bottom:.3rem}.apm-field input,.apm-field select,.apm-field textarea{border:1px solid #ddd;border-radius:8px;padding:.55rem .7rem;font-size:.9rem;transition:.2s}.apm-field input:focus,.apm-field select:focus,.apm-field textarea:focus{border-color:#fdd835;outline:none;box-shadow:0 0 0 3px #fdd8354d}.apm-field.full{grid-column:span 2}.apm-field textarea{resize:vertical;min-height:70px}.apm-alert{background:#fdecea;color:#b71c1c;border:1px solid #f5c6cb;padding:.8rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem;animation:shake .3s}.apm-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.apm-btn{padding:.55rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.apm-btn-light{background:#f5f5f5;border:1px solid #ddd;color:#444}.apm-btn-light:hover{background:#eee}.apm-btn-primary{background:#fdd835;border:none;color:#001f54}.apm-btn-primary:hover:not(:disabled){background:#ffca28}.apm-btn-primary:disabled{background:#ccc;cursor:not-allowed}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}.vpm-overlay{position:fixed;inset:0;background:#0000008c;display:flex;justify-content:center;align-items:flex-start;padding:2rem;z-index:2000;overflow-y:auto;animation:fadeIn .3s ease-in-out}.vpm-modal{background:#fff;border-radius:14px;box-shadow:0 6px 20px #00000026;max-width:650px;width:100%;padding:1.5rem 2rem;animation:slideIn .35s ease;position:relative}.vpm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.vpm-header h3{font-size:1.3rem;font-weight:700;color:#001f54}.vpm-close{background:none;border:none;font-size:1.5rem;color:#555;cursor:pointer;transition:transform .2s,color .2s}.vpm-close:hover{transform:rotate(90deg);color:#e53935}.vpm-content{display:flex;flex-direction:column;gap:1rem}.vpm-section{background:#f9f9f9;padding:.8rem 1rem;border-radius:8px;border:1px solid #eee}.vpm-section h4{font-size:1rem;font-weight:700;margin-bottom:.4rem;color:#001f54}.vpm-section p{margin:.25rem 0;font-size:.9rem;color:#333}.vpm-actions{display:flex;justify-content:flex-end;margin-top:1.2rem}.vpm-btn{padding:.5rem 1.2rem;border-radius:8px;border:none;background:#fdd835;color:#001f54;font-weight:600;cursor:pointer;transition:.2s}.vpm-btn:hover{background:#ffca28}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease-in-out}.modal{background:#fff;border-radius:16px;padding:30px;width:700px;max-width:95%;box-shadow:0 8px 25px #00000040;animation:slideUp .35s ease-in-out}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.modal h2{margin-bottom:20px;font-size:1.6rem;font-weight:700;color:#222;text-align:center}.progress-container{display:flex;align-items:center;justify-content:center;margin-bottom:25px;gap:12px}.progress-step{background:#e5e5e5;color:#666;font-size:.9rem;font-weight:500;padding:10px 16px;border-radius:50px;transition:all .3s ease-in-out;white-space:nowrap}.progress-step.active{background:#2563eb;color:#fff;font-weight:600;transform:scale(1.05)}.progress-line{flex:1;height:4px;border-radius:2px;background:#e5e5e5;transition:background .3s ease}.progress-line.filled{background:#2563eb}.form-step{display:flex;flex-direction:column;gap:15px}.form-step label{display:flex;flex-direction:column;font-size:.9rem;font-weight:500;color:#333}.form-step input,.form-step select{margin-top:6px;padding:10px 14px;border:1.5px solid #ccc;border-radius:8px;font-size:.95rem;outline:none;transition:border .25s ease,box-shadow .25s ease}.form-step input:focus,.form-step select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb40}.note-row{display:flex;gap:12px}.note-row input{flex:1}.modal-actions{display:flex;justify-content:flex-end;margin-top:20px;gap:12px}button{padding:10px 18px;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease-in-out}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#f3f4f6;color:#333}.btn-secondary:hover{background:#e5e7eb}.error{color:#dc2626;font-weight:500;text-align:center;margin-bottom:15px}.prospects-page{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 3px 8px #00000014;animation:fadeIn .4s ease-in-out}.prospects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.2rem}.prospects-header h2{font-size:1.4rem;font-weight:700;color:#001f54;display:flex;align-items:center;gap:.5rem}.btn-primary{background:#142a58;border:none;padding:.6rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:.2s;display:flex;align-items:center;gap:.4rem}.btn-primary:hover{background:#19234e}.filters{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1rem}.search-box{display:flex;align-items:center;gap:.5rem;background:#f8f9fa;padding:.5rem .8rem;border-radius:8px;flex:1;border:1px solid #ddd}.search-box input{border:none;outline:none;background:transparent;flex:1;font-size:.9rem}.filters select{padding:.5rem;border-radius:8px;border:1px solid #ddd;background:#fff;font-size:.9rem;cursor:pointer}.prospects-table{width:100%;border-collapse:collapse;margin-top:1rem;border-radius:10px;overflow:hidden}.prospects-table thead{background:#001f54;color:#fff}.prospects-table th,.prospects-table td{padding:.8rem;text-align:left;font-size:.9rem}.prospects-table tbody tr{transition:background .2s}.prospects-table tbody tr:hover{background:#f8f9fa}.prospects-table td:nth-child(7){font-weight:600}.badge{padding:.3rem .6rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize}.badge-prospect{background:#e0e0e0;color:#333}.badge-preinscrit{background:#2196f3;color:#fff}.badge-admis{background:#4caf50;color:#fff}.actions{display:flex;gap:.6rem}.btn-icon{background:none;border:none;font-size:1.1rem;color:#001f54;cursor:pointer;transition:transform .2s,color .2s}.btn-icon:hover{transform:scale(1.2);color:#4b2b56}.btn-danger:hover{color:#1f0e0e}.pagination{display:flex;justify-content:center;align-items:center;margin-top:1rem;gap:1rem}.pagination button{padding:.5rem .9rem;border:none;border-radius:6px;background:#001f54;color:#fff;font-size:.85rem;cursor:pointer;transition:background .2s}.pagination button:hover:not(:disabled){background:#003080}.pagination span{font-size:.9rem;font-weight:500;color:#333}.preinscrits-page{padding:20px;animation:fadeIn .4s ease-in-out}.preinscrits-header h2{font-size:22px;color:#1a237e;margin-bottom:20px;display:flex;align-items:center;gap:10px;font-weight:700}.filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:15px;flex-wrap:wrap}.search-box{display:flex;align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:30px;padding:6px 12px;transition:border-color .3s ease}.search-box:focus-within{border-color:#d4af37}.search-box input{border:none;outline:none;margin-left:8px;font-size:14px;flex:1}.filters select{padding:8px 14px;border-radius:30px;border:2px solid #e0e0e0;background:#fff;transition:border-color .3s ease}.filters select:focus{border-color:#d4af37}.preinscrits-table{width:100%;border-collapse:collapse;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000014}.preinscrits-table thead{background:#1d2466;color:#fff}.preinscrits-table th{text-align:left;padding:14px;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.preinscrits-table td{padding:12px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#301212}.preinscrits-table tbody tr{transition:background .25s ease}.preinscrits-table tbody tr:hover{background:#fff8e1}.badge{padding:4px 10px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase}.badge-valid{background:#d4af37;color:#fff}.badge-withdrawn{background:#e2e3e5;color:#0e1d2a}.actions{display:flex;gap:8px}.btn-icon{background:#f5f5f5;border:none;padding:8px;border-radius:50%;cursor:pointer;transition:all .2s ease-in-out;font-size:16px;color:#1a237e}.btn-icon:hover{background:#d4af37;color:#fff;transform:scale(1.1)}.pagination{margin-top:15px;display:flex;justify-content:center;align-items:center;gap:14px}.pagination button{padding:6px 14px;border:none;border-radius:25px;background:#1a237e;color:#fff;font-size:14px;cursor:pointer;transition:background .25s ease}.pagination button:hover:not(:disabled){background:#d4af37}.pagination span{font-size:14px;font-weight:700;color:#0a0d32}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#1e1e1e99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal{background:#fff;border-radius:12px;padding:20px 25px;max-width:720px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 6px 18px #00000026;animation:slideDown .25s ease-out}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal h3{margin-top:0;font-size:1.4rem;font-weight:600;color:#1d3557;border-bottom:2px solid #eee;padding-bottom:10px;margin-bottom:20px}.section-title{font-size:1rem;font-weight:600;color:#444;margin:20px 0 10px;border-left:4px solid #457b9d;padding-left:8px}.preinscrit-form{display:flex;flex-direction:column;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.preinscrit-form label{font-size:.9rem;font-weight:500;color:#333;margin-bottom:4px;display:block}.preinscrit-form input,.preinscrit-form select,.preinscrit-form textarea{width:100%;padding:10px 12px;font-size:.95rem;border:1px solid #ddd;border-radius:8px;background:#fafafa;transition:border .2s,box-shadow .2s}.preinscrit-form input:focus,.preinscrit-form select:focus,.preinscrit-form textarea:focus{border-color:#457b9d;box-shadow:0 0 0 3px #457b9d33;outline:none;background:#fff}.error{color:#e63946;font-size:.9rem;margin-bottom:10px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.modal-actions button{padding:10px 18px;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:background .2s,transform .1s}.modal-actions button:disabled{opacity:.6;cursor:not-allowed}.modal-actions button:first-of-type{background:#f1f1f1;color:#333}.modal-actions button:first-of-type:hover:not(:disabled){background:#e5e5e5}.modal-actions button:last-of-type{background:#457b9d;color:#fff}.modal-actions button:last-of-type:hover:not(:disabled){background:#35607a;transform:scale(1.02)}.modal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;padding:24px;width:600px;max-width:90%;box-shadow:0 6px 20px #00000040;animation:fadeIn .3s ease-in-out}.modal h3{margin-bottom:16px;font-size:20px;color:#1a237e;border-bottom:2px solid #f0f0f0;padding-bottom:8px}.notes-table{width:100%;border-collapse:collapse;margin-bottom:16px}.notes-table th,.notes-table td{border:1px solid #e0e0e0;padding:10px;text-align:left}.notes-table th{background:#f9f9f9;font-weight:700}.notes-table input{width:100%;padding:6px;border:1px solid #ccc;border-radius:6px}.btn-delete{background:#e53935;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;transition:background .2s}.btn-delete:hover{background:#c62828}.btn-add{background:#1e88e5;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;transition:background .2s}.btn-add:hover{background:#1565c0}.modal-actions{display:flex;justify-content:flex-end;margin-top:12px}.modal-actions button{background:#607d8b;color:#fff;border:none;padding:8px 14px;border-radius:6px;cursor:pointer}.modal-actions button:hover{background:#455a64}.error{color:#d32f2f;font-weight:700;margin-bottom:12px}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;padding:20px;border-radius:12px;width:750px;max-width:95%;box-shadow:0 5px 25px #00000040;animation:fadeIn .3s ease}.modal h3{margin-bottom:15px;font-size:20px;font-weight:700;text-align:center;color:#2c3e50}.notes-table{width:100%;border-collapse:collapse;margin-bottom:15px}.notes-table th,.notes-table td{border:1px solid #ddd;padding:10px;text-align:center}.notes-table th{background:#f8f9fa;font-weight:600;color:#34495e}.notes-table input{width:95%;padding:6px;border:1px solid #ccc;border-radius:6px}.btn-add{background:#27ae60;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;transition:background .2s ease}.btn-add:hover{background:#219150}.btn-delete{background:#e74c3c;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;transition:background .2s ease}.btn-delete:hover{background:#c0392b}.modal-actions{text-align:right}.modal-actions button{padding:8px 16px;border-radius:6px;border:none;background:#3498db;color:#fff;cursor:pointer;transition:background .2s ease}.modal-actions button:hover{background:#2c80b4}.error{color:#e74c3c;text-align:center;font-weight:500}.suivirelance-page{padding:20px;animation:fadeIn .6s ease-in-out}.suivirelance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.suivirelance-header h2{font-size:1.8rem;font-weight:700;color:#3f1f7a;border-left:6px solid #ffffff;padding-left:12px;letter-spacing:1px}.suivirelance-table{width:100%;border-collapse:collapse;border-radius:10px;overflow:hidden;box-shadow:0 4px 12px #00000026;animation:slideUp .6s ease-in-out}.suivirelance-table thead{background:#0f3460;color:#fff}.suivirelance-table th{text-align:left;padding:14px 16px;font-size:.95rem;text-transform:uppercase;border-bottom:2px solid #1a2d4e}.suivirelance-table tbody tr{transition:background .3s ease}.suivirelance-table tbody tr:nth-child(2n){background:#f9f9f9}.suivirelance-table tbody tr:hover{background:#fff7e6}.suivirelance-table td{padding:12px 16px;font-size:.95rem;color:#333}.btn-icon:hover{transform:scale(1.15)}.btn-relance{color:#25d366}.btn-relance:hover{color:#128c7e}.btn-icon:hover svg{color:#b8860b}.preinscriptions-page{padding:20px;background:#f9f9f9;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.preinscriptions-header{margin-bottom:20px;text-align:center}.preinscriptions-header h2{font-size:1.8rem;font-weight:700;color:#b8860b}.filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;flex-wrap:wrap;gap:10px}.search-box{display:flex;align-items:center;background:#fff;border:1px solid #ddd;border-radius:8px;padding:5px 10px;flex:1;max-width:400px;transition:all .3s ease}.search-box:focus-within{border-color:#d4af37;box-shadow:0 0 6px #d4af3766}.search-box input{border:none;outline:none;flex:1;margin-left:8px;font-size:.95rem}.filters select{padding:6px 12px;border-radius:8px;border:1px solid #ccc;font-size:.9rem;background:#fff;transition:border .3s ease}.filters select:focus{border-color:#d4af37;outline:none}.preinscriptions-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 3px 10px #00000014}.preinscriptions-table thead{background:linear-gradient(90deg,#d4af37,#b8860b);color:#fff}.preinscriptions-table th{padding:12px;text-align:left;font-size:.95rem;font-weight:600}.preinscriptions-table td{padding:12px;border-bottom:1px solid #eee;font-size:.9rem}.preinscriptions-table tbody tr:hover{background:#fffbea;transition:background .2s ease-in-out}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600}.badge-pending{background:#fff3cd;color:#856404}.badge-valid{background:#d4edda;color:#155724}.badge-rejected{background:#f8d7da;color:#721c24}.badge-withdrawn{background:#e2e3e5;color:#383d41}.btn-icon{background:#f8f9fa;border:none;padding:6px;border-radius:6px;cursor:pointer;font-size:1.1rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-icon:hover{transform:scale(1.1)}.btn-validate{color:#28a745}.btn-validate:hover{background:#e6f4ea}.btn-reject{color:#dc3545}.btn-reject:hover{background:#fbeaea}.btn-withdraw{color:#6c757d}.btn-withdraw:hover{background:#f1f1f1}.pagination{margin-top:15px;display:flex;justify-content:center;align-items:center;gap:12px}.pagination button{padding:6px 12px;border:1px solid #d4af37;border-radius:6px;background:#fff;color:#b8860b;cursor:pointer;transition:all .3s ease}.pagination button:hover:not(:disabled){background:#d4af37;color:#fff}.pagination button:disabled{background:#f1f1f1;color:#aaa;cursor:not-allowed}.pagination span{font-weight:500;color:#444}.prospects-page{padding:20px;animation:fadeIn .6s ease-in-out}.prospects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.prospects-header h2{font-size:1.8rem;font-weight:700;color:#1e2d57;border-left:6px solid #ffffff;padding-left:12px;letter-spacing:1px}.filters{display:flex;align-items:center;margin-bottom:20px;gap:15px}.search-box{display:flex;align-items:center;background:#0f3460;padding:8px 14px;border-radius:8px;box-shadow:0 3px 8px #00000026;flex:1;max-width:400px}.search-box svg{color:#fff;margin-right:8px;font-size:1rem}.search-box input{border:none;outline:none;background:transparent;color:#fff;width:100%;font-size:.95rem}.prospects-table{width:100%;border-collapse:collapse;border-radius:10px;overflow:hidden;box-shadow:0 4px 12px #00000026;animation:slideUp .6s ease-in-out}.prospects-table thead{background:#0f3460;color:#fff}.prospects-table th{text-align:left;padding:14px 16px;font-size:.95rem;text-transform:uppercase;border-bottom:2px solid #b8860b}.prospects-table tbody tr{transition:background .3s ease}.prospects-table tbody tr:nth-child(2n){background:#f9f9f9}.prospects-table tbody tr:hover{background:#fff7e6}.prospects-table td{padding:12px 16px;font-size:.95rem;color:#333}.btn-icon{background:transparent;border:none;font-size:1.4rem;cursor:pointer;transition:transform .2s ease,color .3s ease}.btn-icon svg{color:#0f3460}.btn-icon:hover svg{color:#b8860b;transform:scale(1.15)}.pagination{display:flex;justify-content:center;align-items:center;margin-top:20px;gap:10px}.pagination button{padding:8px 16px;border:none;border-radius:6px;background:#0f3460;color:#fff;font-weight:700;cursor:pointer;transition:background .3s ease}.pagination button:disabled{background:#ccc;cursor:not-allowed}.pagination button:hover:not(:disabled){background:#b8860b}.pagination span{font-weight:700;color:#333}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(15px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000}.modal{background:#fff;padding:25px;border-radius:12px;width:500px;max-width:95%;box-shadow:0 4px 15px #00000040;animation:fadeIn .3s ease}.modal h2{font-size:20px;margin-bottom:15px;color:#222;text-align:center}.modal h3{font-size:16px;margin-bottom:10px;color:#333}.form-step label{display:block;margin-bottom:12px;font-weight:700;color:#444}.form-step input{width:100%;padding:8px 10px;margin-top:5px;border:1px solid #ccc;border-radius:6px}.note-row{display:flex;gap:10px;margin-bottom:10px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:15px}.btn-primary{background:#004080;color:#fff;border:none;padding:8px 14px;border-radius:6px;cursor:pointer;font-weight:700}.btn-primary:hover{background:#0059b3}.btn-secondary{background:#eee;color:#333;border:none;padding:8px 14px;border-radius:6px;cursor:pointer}.btn-secondary:hover{background:#ddd}.error{color:red;margin-bottom:10px;font-weight:700;text-align:center}.step-success{text-align:center;font-size:16px;font-weight:700;color:green}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.preinscrits-container{background:#fff;padding:25px;border-radius:16px;box-shadow:0 4px 15px #0000000f;margin:20px}.preinscrits-title{font-size:1.8rem;font-weight:700;color:#0a2240;display:flex;align-items:center;gap:10px}.preinscrits-title .icon{color:#ffc107}.preinscrits-subtitle{color:#555;margin-bottom:20px;font-size:.95rem}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:#f9fafc;padding:15px;border-radius:12px;margin-bottom:20px;border:1px solid #e0e6ed}.search-box{display:flex;align-items:center;background:#fff;border:1px solid #d0d7e2;border-radius:8px;padding:8px 12px;flex:1 1 250px;max-width:300px;box-shadow:0 2px 4px #0000000d}.search-box input{border:none;outline:none;flex:1;padding:5px;font-size:.9rem;color:#333}.search-box .search-icon{color:#999;margin-right:8px}.filters select{padding:8px 12px;border-radius:8px;border:1px solid #d0d7e2;background:#fff;font-size:.9rem;color:#333;min-width:180px;box-shadow:0 2px 4px #0000000d;transition:all .2s ease}.filters select:focus{border-color:#0a2240;box-shadow:0 0 0 2px #0a224033;outline:none}.preinscrits-table{width:100%;border-collapse:collapse;margin-top:15px;background:#fff;border-radius:12px;overflow:hidden}.preinscrits-table th{background:#0a2240;color:#fff;padding:12px;text-align:left;font-size:.9rem;font-weight:600}.preinscrits-table td{padding:10px 12px;border-bottom:1px solid #eaeaea;font-size:.9rem;color:#444}.preinscrits-table tr:hover{background:#f9fafc}.actions{display:flex;gap:10px}.action-icon{cursor:pointer;font-size:1.1rem;transition:transform .2s,color .2s}.action-icon.view{color:#0d6efd}.action-icon.edit{color:#28a745}.action-icon.admission{color:#ffc107}.action-icon:hover{transform:scale(1.15)}.pagination{margin-top:20px;display:flex;justify-content:center;gap:15px;align-items:center}.pagination button{background:#0a2240;color:#fff;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.pagination button:disabled{background:#d0d7e2;cursor:not-allowed}.pagination span{font-weight:600;color:#333}.modal-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{width:520px;max-width:94vw;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;padding:18px}.modal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.modal-top .x{border:none;background:#f2f2f2;width:34px;height:34px;border-radius:10px;cursor:pointer}.form label{display:block;font-size:14px;margin-bottom:10px}.form input{width:100%;padding:10px;border:1px solid #e6e6e6;border-radius:10px;margin-top:6px}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}.btn-primary{background:#0a66c2;color:#fff;border:none;padding:10px 14px;border-radius:10px;cursor:pointer}.btn-secondary{background:#f5f6fa;border:none;padding:10px 14px;border-radius:10px;cursor:pointer}.error{color:#d93025;font-weight:600}.ent-modal-overlay{position:fixed;inset:0;background:#09101d8c;display:flex;align-items:center;justify-content:center;z-index:60}.ent-modal{width:min(980px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000002e;padding:20px 22px 24px;position:relative}.ent-close{position:absolute;right:12px;top:10px;width:36px;height:36px;border:none;background:#f1f5f9;color:#0f172a;border-radius:10px;font-size:22px;cursor:pointer}.ent-close:hover{background:#e2e8f0}.ent-title{font-size:22px;font-weight:700;margin:6px 0 8px;color:#0f172a}.ent-subtitle{font-size:14px;font-weight:500;color:#475569;margin-left:6px}.ent-steps{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:8px 0 18px}.ent-step{padding:6px 12px;border-radius:999px;background:#f8fafc;color:#64748b;font-weight:600;font-size:13px;border:1px solid #e2e8f0}.ent-step.active{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.ent-rail{height:4px;border-radius:4px;background:#e2e8f0}.ent-rail.filled{background:linear-gradient(90deg,#93c5fd,#60a5fa 60%,#e2e8f0 60%)}.ent-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:10px 12px;border-radius:10px;margin-bottom:12px;font-weight:600}.ent-form label{display:block;font-size:13px;font-weight:600;color:#0f172a;margin:10px 0 6px}.ent-form input,.ent-form select,.ent-form textarea{width:100%;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:14px;outline:none;background:#fff}.ent-form textarea{resize:vertical}.ent-form input:focus,.ent-form select:focus,.ent-form textarea:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd59}.ent-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ent-grid.three{grid-template-columns:1fr 1fr 1fr}.ent-checkbox{display:inline-flex;align-items:center;gap:8px;font-weight:700;margin-top:14px}.ent-actions{margin-top:16px;display:flex;gap:10px;justify-content:flex-end}.btn-primary{background:#1d4ed8;border:none;color:#fff;padding:10px 16px;border-radius:10px;font-weight:700;cursor:pointer}.btn-primary:hover{background:#1e40af}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#e2e8f0;border:none;color:#0f172a;padding:10px 16px;border-radius:10px;font-weight:700;cursor:pointer}.btn-secondary:hover{background:#cbd5e1}.btn-secondary.sm{padding:6px 10px;font-size:13px}.ent-signatures{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ent-sign-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px}.ent-sign-title{font-weight:700;color:#0f172a;margin-bottom:8px}.ent-canvas{width:100%;height:150px;border-radius:10px;border:1px dashed #94a3b8;background:#fff}.ent-success{text-align:center;padding:30px 10px;font-size:16px;font-weight:600;color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px}.tnm-overlay{position:fixed;inset:0;background:#0f172a7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:60;padding:18px}.tnm-modal{width:min(780px,100%);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0206172e;padding:14px 14px 16px;max-height:86vh;overflow:auto}.tnm-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px 10px;border-bottom:1px solid #f1f5f9}.tnm-header h3{margin:0;font-size:18px;font-weight:700;color:#111827}.tnm-close{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#374151}.tnm-close:hover{background:#f9fafb}.tnm-alert{margin:10px 10px 0;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:10px;padding:10px 12px}.tnm-muted{margin:14px 10px 0;color:#6b7280}.tnm-list{padding:10px}.tnm-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid #eef2f7;border-radius:12px;padding:12px;margin-bottom:8px;background:#fff}.tnm-matiere{font-weight:600;color:#111827}.tnm-note{color:#475569;margin-top:3px}.tnm-row-actions{display:flex;gap:8px;align-items:center}.tnm-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid #e5e7eb;border-radius:10px;background:#fff;color:#2563eb}.tnm-icon.danger{color:#ef4444}.tnm-input{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;outline:none;background:#fff}.tnm-input:focus{border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61f}.tnm-add{display:grid;grid-template-columns:1fr 140px auto;gap:10px;padding:10px}@media (max-width: 560px){.tnm-add{grid-template-columns:1fr 1fr}}.tnm-btn{border:1px solid #e5e7eb;background:#fff;padding:10px 12px;border-radius:10px}.tnm-btn.primary{background:#2563eb;color:#fff;border-color:#2563eb}.tnm-btn.ghost{background:#fff;color:#111827}.tnm-sep{height:1px;background:#f1f5f9;margin:6px 0 10px}.admis-page{padding:18px 10px 28px}.admis-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px}.admis-header h2{margin:0;font-size:22px;font-weight:800;color:#0f172a}.admis-header p{margin:4px 0 0;color:#64748b}.admis-filters{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(180px,1fr));gap:10px;background:#fff;border:1px solid #eef2f7;border-radius:14px;padding:12px;margin-bottom:12px;box-shadow:0 4px 16px #0206170a}@media (min-width: 1200px){.admis-filters{grid-template-columns:minmax(320px,2fr) repeat(3,minmax(200px,1fr))}}@media (max-width: 992px){.admis-filters{grid-template-columns:1fr 1fr}}@media (max-width: 600px){.admis-filters{grid-template-columns:1fr}}.search-box{position:relative}.search-box input{width:100%;padding:10px 12px 10px 40px;border:1px solid #e5e7eb;border-radius:10px;outline:none}.search-box input:focus{border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61f}.search-icon{position:absolute;top:50%;left:12px;transform:translateY(-50%);color:#94a3b8}.admis-filters select{border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;background:#fff}.admis-table-wrapper{background:#fff;border:1px solid #eef2f7;border-radius:14px;overflow-x:auto;overflow-y:hidden;box-shadow:0 8px 24px #0206170d}.admis-table{width:100%;min-width:900px;border-collapse:collapse}.admis-table thead th{background:#f8fafc;text-align:left;padding:12px;font-weight:700;color:#334155;font-size:14px;border-bottom:1px solid #eef2f7}.admis-table tbody td{padding:12px;border-bottom:1px solid #f1f5f9;color:#0f172a}.admis-table td.actions{min-width:220px;white-space:normal;overflow:visible;vertical-align:middle;padding:12px}.actions .btn-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start}.btn-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid #e5e7eb;background:#fff;border-radius:10px;color:#374151;cursor:pointer}.btn-icon.edit{color:#2563eb}.btn-icon.entretien{color:#0ea5e9}.btn-icon.notes{color:#16a34a}.btn-icon:hover{background:#f8fafc;border-color:#dbe2ea}.btn-icon:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.btn-icon{width:34px;height:34px;border-radius:8px}}@media (max-width: 480px){.btn-icon{width:30px;height:30px;border-radius:8px}}.pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:12px}.page-btn{padding:8px 12px;border-radius:10px;border:1px solid #e5e7eb;background:#fff}.page-btn:disabled{opacity:.6}.page-info{color:#475569}.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:10px 12px;border-radius:10px;margin-bottom:10px}.muted{color:#64748b}.entretiens-page{max-width:1150px;margin:0 auto;padding:1.25rem 1rem 2.5rem}.ent-head h2{font-size:1.6rem;font-weight:700;margin:0;color:#0f172a}.ent-head p{margin:.25rem 0 1rem;color:#475569}.ent-filters{display:grid;grid-template-columns:1fr 220px;gap:.75rem;align-items:center;margin:.75rem 0 1rem}.ent-search{position:relative}.ent-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:#64748b}.ent-search input{width:100%;padding:.65rem .8rem .65rem 2rem;border:1px solid #e2e8f0;border-radius:.6rem;outline:none;font-size:.95rem}.ent-filters select{padding:.6rem .75rem;border:1px solid #e2e8f0;border-radius:.6rem;background:#fff}.ent-loading{color:#334155}.ent-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;padding:.75rem .9rem;border-radius:.6rem}.ent-table{width:100%;background:#fff;border-collapse:separate;border-spacing:0;border:1px solid #eef2f7;border-radius:.8rem;overflow:hidden}.ent-table thead th{text-align:left;font-weight:700;background:#f8fafc;color:#0f172a;padding:.8rem .9rem;border-bottom:1px solid #eef2f7;font-size:.9rem}.ent-table tbody td{padding:.8rem .9rem;border-bottom:1px solid #f1f5f9;color:#0f172a;vertical-align:middle}.ent-table tbody tr:last-child td{border-bottom:none}.ent-empty{text-align:center;color:#64748b;padding:1.4rem .9rem}.col-actions{width:220px;white-space:nowrap}.badge{display:inline-block;padding:.25rem .55rem;font-size:.8rem;border-radius:.5rem;font-weight:600}.bd-green{background:#dcfce7;color:#166534}.bd-red{background:#fee2e2;color:#991b1b}.bd-amber{background:#fef3c7;color:#92400e}.btn{display:inline-flex;align-items:center;gap:.4rem;border:none;cursor:pointer;font-size:.9rem;line-height:1;padding:.55rem .7rem;border-radius:.55rem;transition:transform .06s ease,box-shadow .12s ease}.btn:active{transform:translateY(1px)}.btn.primary{background:#2563eb;color:#fff}.btn.ghost{background:#f1f5f9;color:#0f172a}.btn.primary:hover{box-shadow:0 4px 14px #2563eb2e}.btn.ghost:hover{background:#e2e8f0}.ent-pagination{margin-top:1rem;display:flex;align-items:center;gap:.8rem;justify-content:space-between}@media (max-width: 820px){.ent-filters{grid-template-columns:1fr}.col-actions{width:auto}.btn{padding:.5rem .6rem}}:root{--bg: #f6f8fb;--card: #ffffff;--text: #101828;--muted: #667085;--line: #e6e9ef;--primary: #2563eb;--primary-700: #1d4ed8;--primary-50: #eff6ff;--success: #16a34a;--success-700: #15803d;--warn: #f59e0b;--warn-700: #d97706;--danger: #ef4444;--danger-700: #dc2626;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--radius: 14px;--shadow: 0 8px 24px rgba(16, 24, 40, .08);--shadow-soft: 0 4px 14px rgba(16, 24, 40, .06)}.utilisateurs-container{padding:28px;background:var(--bg);min-height:calc(100vh - 80px)}.utilisateurs-container>*:first-child+*{margin-top:14px}.utilisateurs-header{display:flex;justify-content:space-between;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow)}.utilisateurs-header h2{margin:0;font-size:1.35rem;color:var(--text);letter-spacing:.2px}.btn-add{display:inline-flex;align-items:center;gap:8px;background:var(--primary);color:#fff;padding:10px 14px;border:none;border-radius:12px;cursor:pointer;font-weight:600;box-shadow:var(--shadow-soft);transition:transform .08s ease,background .2s ease,box-shadow .2s ease}.btn-add:hover{background:var(--primary-700);box-shadow:var(--shadow)}.btn-add:active{transform:translateY(1px)}.utilisateurs-filtres{display:grid;grid-template-columns:1fr 220px;gap:14px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}.search-box{display:flex;align-items:center;gap:10px;border:1px solid var(--slate-200);border-radius:12px;padding:10px 12px;background:#fff}.search-box svg{color:var(--muted)}.search-box input{border:none;outline:none;flex:1;font-size:.95rem;color:var(--text)}.search-box input::placeholder{color:#9aa4b2}.utilisateurs-filtres select{border:1px solid var(--slate-200);border-radius:12px;padding:10px 12px;background:#fff;color:var(--text);font-weight:500}.utilisateurs-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:16px;box-shadow:var(--shadow)}.utilisateurs-table thead th{position:sticky;top:0;background:var(--primary-50);color:#0f172a;font-weight:700;font-size:.9rem;text-align:left;border-bottom:1px solid var(--line);padding:14px 16px;z-index:1}.utilisateurs-table td{padding:14px 16px;border-bottom:1px solid var(--slate-100);color:var(--text);vertical-align:middle}.utilisateurs-table tbody tr{transition:background .15s ease,box-shadow .15s ease}.utilisateurs-table tbody tr:hover{background:#fbfdff}.badge{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;padding:6px 10px;border-radius:999px;border:1px solid var(--slate-200);background:#fff;color:var(--text)}.badge--role{border-color:#dbeafe;background:#eff6ff;color:#1e40af}.badge--campus{border-color:#dcfce7;background:#f0fdf4;color:#166534}.btn-edit,.btn-reset,.btn-delete{border:none;cursor:pointer;padding:8px 10px;margin-right:8px;border-radius:10px;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;transition:transform .08s ease,filter .2s ease;box-shadow:var(--shadow-soft)}.btn-edit{background:var(--warn)}.btn-edit:hover{filter:brightness(.95)}.btn-edit:active{transform:translateY(1px)}.btn-reset{background:#0ea5e9}.btn-reset:hover{filter:brightness(.95)}.btn-reset:active{transform:translateY(1px)}.btn-delete{background:var(--danger)}.btn-delete:hover{background:var(--danger-700)}.btn-delete:active{transform:translateY(1px)}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:14px}.pagination button{background:#fff;color:var(--text);border:1px solid var(--slate-300);padding:8px 12px;border-radius:12px;cursor:pointer;font-weight:600;box-shadow:var(--shadow-soft);transition:background .15s ease,transform .08s ease}.pagination button:hover{background:var(--slate-100)}.pagination button:disabled{opacity:.6;cursor:not-allowed;background:#f9fafb}.error{color:var(--danger-700);text-align:center;margin:18px 0;font-weight:700}.empty{text-align:center;color:var(--muted);padding:26px 0}.modal-overlay{position:fixed;inset:0;background:#02081759;display:grid;place-items:center;z-index:50;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:min(480px,92vw);background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 30px 60px #1018282e;padding:22px;transform:translateY(6px);animation:slideUp .18s ease forwards}@keyframes slideUp{to{transform:translateY(0)}}.modal h3{margin:0 0 14px;color:var(--text);font-size:1.1rem}.modal-form input,.modal-form select{width:100%;margin-bottom:10px;padding:10px 12px;border:1px solid var(--slate-200);border-radius:12px;background:#fff;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.modal-form input:focus,.modal-form select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #2563eb1f;outline:none}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.btn-save{background:var(--success);color:#fff;padding:10px 14px;border:none;border-radius:12px;cursor:pointer;font-weight:700;box-shadow:var(--shadow-soft);transition:background .15s ease,transform .08s ease}.btn-save:hover{background:var(--success-700)}.btn-save:active{transform:translateY(1px)}.btn-cancel{background:#94a3b8;color:#fff;padding:10px 14px;border:none;border-radius:12px;cursor:pointer;font-weight:700;transition:filter .15s ease,transform .08s ease}.btn-cancel:hover{filter:brightness(.95)}.btn-cancel:active{transform:translateY(1px)}@media (max-width: 920px){.utilisateurs-filtres{grid-template-columns:1fr}.utilisateurs-header h2{font-size:1.2rem}.btn-add{padding:9px 12px}.utilisateurs-table td,.utilisateurs-table th{padding:12px}}@media (max-width: 640px){.utilisateurs-header,.utilisateurs-filtres{padding:12px}.btn-edit,.btn-reset,.btn-delete{padding:8px 9px;margin-right:6px}.pagination{justify-content:center}}.exports-container{padding:28px;background:#f6f8fb;min-height:calc(100vh - 80px)}.exports-title{font-size:1.6rem;font-weight:700;margin-bottom:6px;color:#101828}.exports-subtitle{color:#667085;margin-bottom:20px}.error{color:#dc2626;margin-bottom:14px;font-weight:600}.exports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.export-card{background:#fff;border:1px solid #e6e9ef;border-radius:14px;padding:20px;box-shadow:0 6px 14px #1018280f;transition:transform .1s ease,box-shadow .2s ease}.export-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px #10182814}.export-icon{font-size:2rem;color:#2563eb;margin-bottom:10px}.export-card h3{margin:0;font-size:1.2rem;color:#101828}.export-card p{margin:6px 0 14px;color:#667085;font-size:.9rem}.export-actions{display:flex;gap:10px}.btn-csv,.btn-pdf{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;padding:10px 12px;border:none;border-radius:10px;cursor:pointer;color:#fff;transition:background .2s ease,transform .08s ease}.btn-csv{background:#059669}.btn-csv:hover{background:#047857}.btn-pdf{background:#dc2626}.btn-pdf:hover{background:#b91c1c}.btn-csv:disabled,.btn-pdf:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 640px){.exports-container{padding:18px}.export-card{padding:16px}}.historiques-container{padding:20px}.historiques-table{width:100%;border-collapse:collapse;background:#fff;border-radius:6px;overflow:hidden;margin-bottom:15px}.historiques-table th,.historiques-table td{border:1px solid #ddd;padding:10px;text-align:left}.historiques-table th{background:#f5f5f5}.btn-details{border:none;cursor:pointer;padding:6px 8px;border-radius:4px;background:#2d89ef;color:#fff}.btn-details:hover{background:#1b5fa7}.pagination{display:flex;justify-content:center;margin-top:10px;gap:10px}.pagination button{padding:6px 12px;border-radius:6px;border:none;cursor:pointer;background:#6c757d;color:#fff}.pagination button:hover{background:#565e64}.pagination button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center}.modal{background:#fff;padding:20px;border-radius:8px;width:500px;max-height:80vh;overflow-y:auto}.modal pre{background:#f5f5f5;padding:10px;border-radius:6px;max-height:200px;overflow-y:auto}.btn-close{background:#dc3545;color:#fff;padding:8px 12px;border:none;border-radius:6px;cursor:pointer}.btn-close:hover{background:#a71d2a}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.statistiques-page{padding:16px;display:flex;flex-direction:column;gap:16px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tabs{display:flex;gap:8px}.tabs button{border:1px solid #e5e7eb;background:#fff;padding:8px 12px;border-radius:10px;cursor:pointer;transition:all .15s ease-in-out;font-weight:600}.tabs button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.tabs button.active{background:#111827;color:#fff;border-color:#111827}.filters-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.input-date{padding:8px 10px;border:1px solid #e5e7eb;border-radius:10px;outline:none}.btn{padding:8px 12px;border-radius:10px;border:1px solid #111827;color:#111827;background:#fff;cursor:pointer;font-weight:600}.btn:hover{background:#111827;color:#fff}.loading,.error{padding:10px 12px;border-radius:10px;font-weight:600}.loading{background:#f3f4f6;color:#111827}.error{background:#fee2e2;color:#991b1b}.totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media (max-width: 900px){.totals{grid-template-columns:repeat(2,minmax(0,1fr))}}.total-card.kpi{background:#111827;color:#fff;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px;box-shadow:0 6px 16px #11182733}.total-card.kpi .label{font-size:12px;opacity:.9;text-transform:uppercase;letter-spacing:.5px}.total-card.kpi .value{font-size:28px;font-weight:800}.preinsc-stats{display:flex;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:8px;border:2px solid;padding:6px 10px;border-radius:999px;background:#fff}.pill-dot{width:8px;height:8px;border-radius:999px}.pill-label{font-weight:700}.pill-value{font-weight:800;color:#111827}.ratios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width: 900px){.ratios{grid-template-columns:repeat(1,minmax(0,1fr))}}.ratio-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px;display:flex;align-items:center;justify-content:space-between}.charts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media (max-width: 1200px){.charts-grid{grid-template-columns:1fr}}.chart-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:12px}.chart-card__header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.chart-card h3{font-size:16px;margin:0}.metric-select{display:flex;align-items:center;gap:8px}.metric-select label{font-size:12px;color:#6b7280}.metric-select select{padding:6px 8px;border:1px solid #e5e7eb;border-radius:8px;outline:none;background:#fff}.recharts-wrapper .recharts-cartesian-axis-tick text{font-size:12px}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{margin:0;padding:0;height:100%;width:100%;min-height:100vh}body{display:block;background:none;color:#213547}a{font-weight:500;color:#646cff;text-decoration:none}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s,transform .2s ease}button:hover{border-color:#646cff;transform:translateY(-2px)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){body{color:#213547;background:none}a:hover{color:#747bff}button{background-color:#f9f9f9}}
