.login-container{height:100vh;width:100vw;background:linear-gradient(135deg,#0f172a,#1e293b);display:flex;align-items:center;justify-content:center}.login-card{background:#fff;padding:40px;border-radius:14px;width:100%;max-width:380px;box-shadow:0 15px 40px #00000040}.login-card h2{text-align:center;margin-bottom:30px;color:#0f172a}.input-group{margin-bottom:20px}.input-group label{display:block;margin-bottom:6px;font-weight:600;color:#334155}.input-group input{width:100%;padding:10px 12px;color:#000;border-radius:8px;border:1px solid #cbd5f5;font-size:14px}.input-group input:focus{outline:none;border-color:#2563eb}.login-btn{width:100%;padding:12px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:15px;cursor:pointer}.login-btn:hover{background:#1d4ed8}.error-msg{color:red;margin:10px 0;font-weight:700}li{color:#000}.Admin-ecole-grid{display:flex;gap:20px;flex-wrap:wrap;justify-content:space-around}.Admin-ecole-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;justify-content:space-between;max-width:220px;color:#000}.Admin-ecole-nom{margin:0;color:#1e293b}.Admin-ecole-adresse{margin:10px 0 20px;color:#64748b}.Admin-ecole-actions{display:flex;gap:10px;flex-wrap:wrap}.Admin-ecole-actions .btn{flex:1;padding:8px 10px;border-radius:8px;border:none;cursor:pointer;font-size:14px;color:#fff}.btn.suspend,.btn.suspend-delai{background:#f59e0b}.btn.cancel{background:#9c0fc0}.btn.rupture{background:#3b82f6}.btn.restore{background:#099615}.btn.delete{background:#ef4444}.Admin-ecole-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;color:#000}.modal-overlay-k{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:999}.modal-k{background:#fff;padding:20px;width:400px;border-radius:8px;color:#000}.modal input{width:100%;margin-bottom:10px;padding:8px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.layout{display:flex;height:100vh;width:100vw;overflow:hidden;font-family:Arial,sans-serif}.sidebar{width:220px;background:#1e293b;color:#fff;padding:20px 15px;transition:width .3s ease}.sidebar.collapsed{width:70px}.sidebar .logo{font-weight:700;margin-bottom:30px}.sidebar nav ul{display:block;margin-bottom:15px;cursor:pointer;white-space:nowrap;overflow:hidden;color:#fff}.sidebar nav ul li a{color:#fff}.main{flex:1;display:flex;flex-direction:column}.header{height:60px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;color:#000;align-items:center;gap:15px;padding:0 20px}.toggle-btn{border:none;background:none;font-size:22px;cursor:pointer}.header-left{display:flex;align-items:center;gap:10px}.header-right{display:flex;align-items:center}.logout-btn{padding:5px 12px;background-color:#e74c3c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700}.logout-btn:hover{background-color:#c0392b}.content{flex:1;padding:20px;overflow-y:auto;background:#f8fafc}@media (max-width: 768px){.layout{flex-direction:column}.sidebar{display:none}.main{flex:1}.header{position:fixed;bottom:0;left:0;right:0;border-top:1px solid #e5e7eb;border-bottom:none;justify-content:space-around}.content{padding-bottom:80px}}a{text-decoration:none}li{list-style:none}.Message3rror{text-align:center;position:fixed;background-color:#d9d9d9;color:#fff;font-weight:700;display:flex;top:50%;left:40%;z-index:7777777777777777;justify-content:center;align-items:center;border-radius:35px;padding:20px}.Message3rrorIsert{position:absolute;background-color:red;color:#fff;display:block;top:40%;left:10%;width:70%;text-align:center}.Message{position:absolute;background-color:#22a355;color:#fff;display:block;top:40%;left:10%;width:70%;text-align:center}.Message-appel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(90%,520px);padding:18px 24px;background:#22a355;color:#fff;border-radius:14px;box-shadow:0 12px 35px #0003;text-align:center;font-size:15px;font-weight:600;line-height:1.5;z-index:77777777777;animation:messageAppelIn .25s ease-out}.Message-appel.error{background:#dc3545}@keyframes messageAppelIn{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}@media (max-width: 600px){.Message-appel{width:calc(100% - 32px);padding:16px 18px;font-size:14px}}.main-content-classes,.main-content-info,.main-content-conduites,.main-content-dashboard,.main-content-ecoles,.main-content-eleves,.main-content-devoir,.main-content-matieres,.main-content-mot2passes,.main-content-notes,.main-content-presences,.main-content-profs,.main-content-insc,.main-content-sanctions,.main-content-scolarites,.main-content-utilisateurs,.main-content-parametre,.main-content-emploi_temps,.main-content-DossierEleve,.main-content-maitre,.main-content-dossier,.main-content-service,.main-content-sortie-entre,.main-content-convocation,.main-content-depense,.main-content-rapport-compt,.main-content-caisse,.pointage-page,.salaires-page{background-color:#e8ebeb;position:absolute;inset:70px 0 0 200px;min-height:90vh;overflow-y:auto;display:flex;align-items:center;color:#000;flex-direction:column}.envhdjss{position:fixed;bottom:30px;right:10px;height:80px;width:80px;background-color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center}.envhdjss button{font-size:45px}.all-barre-verticale{all:unset;position:fixed;width:200px;z-index:6;background-color:#0b1742;color:#fff;top:0;left:0;height:100vh}.section-barre-verticale{display:flex;flex-direction:column;align-items:start;justify-content:space-between;height:100%;width:100%;position:relative}.section-barre-verticale,.corps-barre-verticale{width:100%}.corps-barre-verticale .idf{display:flex;flex-direction:column}.logo-verti{background-color:#f8fafc;color:#8e909b;font-family:Times New Roman,Times;text-transform:capitalize;display:flex;align-items:center;width:100%;justify-content:center}.logo-img{height:65px;width:65px}.logo-idf{font-size:12px;display:flex;justify-content:center;flex-direction:column}.logo-idf .lojifgtd{text-transform:uppercase;color:#5b5fef;font-size:18px;font-weight:600}.touche{all:unset;margin-top:80px}.touche ul li{margin:0 5px}.touche .haut-touche{margin-top:20px}.touche .haut-touche li a{all:unset;margin-left:5px;display:block;width:90%;font-family:Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:15px;height:40%;color:#fff;box-sizing:border-box;transition:.5s;padding-top:5px}.touche .haut-touche li a:hover,.touche .dead li a:hover{all:unset;filter:drop-shadow(0 0 2em #5B5FEF);text-align:center;display:block;width:90%;height:40%;padding-top:5px;color:#fff;font-weight:700;border-radius:0 5px 5px 0;background-color:#9b9ee9;box-sizing:border-box;transition:.4s all;cursor:pointer}.touche .haut-touche li a.active{filter:drop-shadow(0 0 2em #5B5FEF);text-align:center;display:block;width:90%;padding:5px;height:70%;color:#fff;font-weight:700;border-radius:0 5px 5px 0;background-color:#5b5fef;box-sizing:border-box;cursor:default}.touche .haut-touche li a.active:hover{filter:drop-shadow(0 0 2em #5B5FEF);background-color:#5b5fef;color:#fff}.logo-pub img{height:180px}.dead{display:none;position:absolute;color:#431a22;top:100%;right:0;left:0}.dead li button{all:unset;display:block;width:100%;cursor:pointer;padding:10px;height:100%;color:#fff;background-color:#2c3e50;box-sizing:border-box;transition:.5s}.dead li button:hover{transition:.5s;color:#000;background-color:#fff}.touche-horizon{display:flex;justify-content:space-around}.touche-horizon ul li{margin:0 5px}.touche-horizon li a{display:block;font-family:Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:12px;background-color:#9b9ee9;filter:drop-shadow(0 0 1em #5b60ef4e);color:#fff;box-sizing:border-box;transition:.5s;background-color:#05b0ee;padding:10px 15px;border-radius:10px}.touche-horizon li a:hover{filter:drop-shadow(0 0 2em #5B5FEF);color:#fff;border-radius:5px;background-color:#9b9ee9;box-sizing:border-box;transition:.4s all;cursor:pointer}.touche-horizon li a.active{filter:drop-shadow(0 0 2em #5B5FEF);text-align:center;display:block;color:#fff;font-weight:700;border-radius:5px;background-color:#5b5fef;box-sizing:border-box;cursor:default}.touche li a.active:hover{filter:drop-shadow(0 0 2em #5B5FEF);background-color:#5b5fef;color:#fff}.menu-toggle{color:#fff}.all-barre-horizontal{position:fixed;right:0;top:0;width:calc(100% - 200px);height:70px;margin-left:0;display:flex;z-index:5;padding:5px;justify-content:space-around;align-items:center;background-color:#f8fafc}.all-barre-horizontal .corps-horizontal{width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;margin:0 25px}.all-barre-horizontal .corps-horizontal .touche-horizon{width:25%;height:90%;align-items:center;text-align:center}.all-barre-horizontal .corps-horizontal .logo{width:45%;display:flex}.all-barre-horizontal .corps-horizontal #conprofil{width:12%}.cache-barre .bi-filter-right{color:#431a22;font-weight:600;font-size:25px;cursor:pointer}.logo{color:#8e909b;margin:15px 0;display:flex;align-items:center;justify-content:center;font-family:Times New Roman,Times;text-transform:uppercase;flex-wrap:wrap;border-bottom:2px dotted #ffffff}.logo div{font-weight:600;margin:5px 0;display:flex;align-items:center;text-align:center;font-family:Times New Roman,Times;text-transform:uppercase;flex-wrap:wrap;font-size:18px;color:#8e909b;font-weight:500;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.logo img{border-radius:50%;height:60px;width:60px}.mem-sch{width:100%;height:100%;display:flex;justify-content:space-around;align-items:center;flex-wrap:nowrap;flex-direction:row}#conprofil{width:18%;border-radius:25%;background-color:#fff;border:#431A22 solid 1px;color:#000;height:100%;font-weight:600;padding:5px;font-size:10px;display:flex;text-align:center;justify-content:center;align-items:center;flex-wrap:nowrap;flex-direction:row;position:relative}#conprofil:hover .dead{display:block}.conprofil-team{display:flex;height:100%;align-items:center}.conprofil-team img{height:100%;display:none;visibility:hidden;border-radius:30%}#conprofil .identighjd{padding:0 10px;text-align:left}#conprofil2{height:100%;display:flex;text-align:center;justify-content:right;align-items:center;flex-wrap:nowrap;flex-direction:row;position:relative}#conprofil2:hover .dead{display:block}#conprofil2 .identighjd,#conprofil2 .dead{padding:0 15px}.ecole-item{height:100%}.re_anne{width:100%;height:100%;display:flex;justify-content:space-around;align-items:center;flex-wrap:nowrap;flex-direction:row}.mem-sch i,.re_anne i{margin-right:5px}.all-barre-horizontal .corps-horizontal ul{padding:0;margin:0}.all-barre-horizontal .corps-horizontal ul a{text-align:center;padding:7px 20px;display:flex;align-items:center;justify-content:center;border:#fff 1px solid;color:#000;border-radius:10px;font-weight:800;font-size:20px;transition:all .2s ease}.all-barre-horizontal .corps-horizontal ul a:hover{filter:drop-shadow(0 0 2em #ffffff);background-color:#5b5fef;color:#000}.all-barre-horizontal .corps-horizontal ul a.active{filter:drop-shadow(0 0 2em #ffffff);background-color:#fff;color:#272c5f;pointer-events:none}.all-barre-horizontal .corps-horizontal ul a.active:hover{background-color:#fff;color:#000}.titre-indication{text-align:center;background-color:#fdfdfd2a;color:#000;font-size:25px;margin-top:10px;border-radius:0 0 5px 5px;font-weight:400;width:30%;text-transform:uppercase}.titre-indication h2{text-align:center;margin:0}@media screen and (max-width: 768px){.all-barre-verticale{position:fixed;top:0;left:0;overflow:hidden;width:155px;height:100vh;background-color:#000;background-position:center;background-size:cover;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;transform:translate(-100%);transition:transform .3s ease;z-index:1000;box-shadow:2px 0 8px #0003;padding:1rem}.all-barre-verticale.active{transform:translate(0)}.section-barre-verticale{width:100%}.menu-toggle{position:fixed;left:5px;top:7px;z-index:1100;font-size:30px;color:#f99900;font-weight:800}.ecole-item{display:flex}.main-content-classes,.main-content-conduites,.main-content-dashboard,.main-content-ecoles,.main-content-devoir,.main-content-eleves,.main-content-matieres,.main-content-mot2passes,.main-content-notes,.main-content-presences,.main-content-profs,.main-content-insc,.main-content-sanctions,.main-content-scolarites,.main-content-utilisateurs,.main-content-parametre,.main-content-maitre,.main-content-info{top:60px;left:0;width:100%;min-height:calc(100vh - 60px);padding:10px}.all-barre-horizontal{width:100%;height:60px;justify-content:space-between;padding:0 10px;background-color:#000}.all-barre-horizontal .corps-horizontal{justify-content:space-between;margin:0}.all-barre-horizontal .corps-horizontal .title-dash-tel{text-align:center;font-size:12px;height:100%;display:flex;justify-content:center;align-items:center}.matiere-yy{font-size:12px;font-weight:700;color:#12d1e7}.all-barre-horizontal .corps-horizontal ul li{width:90%;background-color:#000}.all-barre-horizontal .corps-horizontal ul a{margin-top:5px;font-size:15px;cursor:pointer;color:#12d1e7;padding:5px 15px;border-radius:6px}#conprofil2 .identighjd{padding:0 5px}#conprofil2 .dead{padding:0}#conprofil2 .dead i{margin-right:10px}.touche ul li{font-size:8px}.touche ul li a{color:#fff!important;font-weight:400!important;padding:8px!important}.touche .haut-touche ul li i{color:#f99900;font-size:202px;margin-right:40px}.title-dash span{font-size:14px;display:none}#conprofil2{border:#f99900 1px solid!important;height:70%;border-radius:10px;padding:10px;cursor:pointer}.identighjd{font-size:13px;font-weight:700;background-color:#fff0;color:#12d1e7;cursor:pointer}.identighjd i{font-size:15px!important;color:#12d1e7}.iconprofil i{font-size:15px!important;color:#f99900}.popup-overlay{position:fixed;z-index:99999;inset:0;background:#00000094;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center}.popup{background:#000;padding:20px;border-radius:8px;text-align:center}.popup div{margin-top:25px;display:flex;justify-content:space-around}.popup div button:nth-child(1){color:#12d1e7!important;background-color:#000!important;border:#f6ff00 1px solid}.popup div button:nth-child(2){color:#12d1e7!important;background-color:#000!important;border:#ff0000 1px solid}}.main-content-dashboard .compteur{margin:10px 0;width:100%;display:flex;justify-content:space-around;flex-wrap:wrap}.main-content-dashboard .compteur div:nth-child(1){flex-wrap:wrap;background-color:#8a5cf623;width:19%;color:#000;font-weight:800;border-radius:10px;padding:5px;height:110px;font-size:15px;display:flex;text-align:center;align-items:center;flex-direction:column;justify-content:center;position:relative}.main-content-dashboard .compteur div:nth-child(1) span i{font-size:40px;color:#9a21eb;padding:15px;border-radius:10px;background-color:#fff}.main-content-dashboard .compteur div:nth-child(2){flex-wrap:wrap;background-color:#3b83f647;width:19%;color:#000;font-weight:800;border-radius:10px;padding:5px;height:110px;font-size:15px;display:flex;text-align:center;align-items:center;flex-direction:column;justify-content:center;position:relative}.main-content-dashboard .compteur div:nth-child(2) span i{font-size:40px;color:#3b82f6;padding:15px;border-radius:10px;background-color:#fff}.main-content-dashboard .compteur div:nth-child(3){flex-wrap:wrap;background-color:#22c55e2b;width:19%;color:#000;font-weight:800;border-radius:10px;padding:5px;height:110px;font-size:15px;display:flex;text-align:center;align-items:center;flex-direction:column;justify-content:center;position:relative}.main-content-dashboard .compteur div:nth-child(3) span i{font-size:40px;color:#22c55e;background-color:#fff;padding:15px;border-radius:10px}.main-content-dashboard .compteur div:nth-child(4){flex-wrap:wrap;background-color:#f59f0b2c;width:19%;color:#000;font-weight:800;border-radius:10px;height:110px;padding:5px;font-size:15px;display:flex;text-align:center;align-items:center;flex-direction:column;justify-content:center;position:relative}.main-content-dashboard .compteur div:nth-child(4) span i{font-size:40px;color:#f59e0b;background-color:#fff;padding:15px;border-radius:10px}.main-content-dashboard .compteur div .icdash{width:20%;height:100%;margin:0;padding:0;display:flex;justify-content:center;align-items:center}.main-content-dashboard #TR{color:#000;display:flex;justify-content:center;font-family:Lucida Sans,Lucida Sans Regular,Lucida Grande,Lucida Sans Unicode,Geneva,Verdana,sans-serif;align-items:center;text-align:center;font-size:35px}.rotatio-k{margin:5px 0;display:flex;justify-content:space-around;width:98%;padding:10px 0;max-height:460px;border-radius:25px}.rotatio-k h1{font-weight:900;color:#fff;background-color:#000;height:30px;display:flex;align-items:center;justify-content:center}.box-scroll{max-height:420px;overflow-y:auto;background:#fff;color:#000;padding:5px;border-radius:8px}.box-scroll h1{position:sticky;top:0;background-color:#fff;color:#000;z-index:3;padding:8px 0}.box-scroll thead th{box-shadow:0 6px 8px #00000057;color:#fff}.box-scroll thead th{border-radius:5px;position:sticky;top:0;z-index:3;font-size:13px}.box-scroll thead th:nth-child(1){background-color:#3b82f6}.box-scroll thead th:nth-child(2){background-color:#6d5ef8}.box-scroll thead th:nth-child(3){background-color:#3b82f6}.box-scroll thead th:nth-child(4){background-color:#10b981}.text-red{color:#dc2626;font-weight:700}.text-green{color:#16a34a;font-weight:700}.box-scroll::-webkit-scrollbar{width:6px}.box-scroll::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:10px}.taux-reussite-classe{width:30%;text-align:center;background:#fff;border-radius:10px;padding:5px;box-shadow:0 15px 45px #00000014}.entete-reussite{height:40px;border-radius:5px;display:flex;justify-content:center;align-items:center;padding:0 30px}.entete-reussite h1{background:none;color:#000;font-size:18px;font-weight:800;text-align:center}.reussitecla{width:100%;border-collapse:separate}.reussitecla thead th{height:30px;color:#fff;padding:0 15px;font-size:12px;font-weight:700;border:none}.reussitecla thead th:nth-child(1){background:#2564eb}.reussitecla thead th:nth-child(2){background:#6d5ef8}.reussitecla thead th:nth-child(3){background:#2564eb}.reussitecla thead th:nth-child(4){background:#10b981}thead th:nth-child(5){background:#b92110}.reussitecla tbody tr{background:#fff;box-shadow:0 6px 20px #00000014;border-radius:20px}.reussitecla tbody td{padding:5px 10px 0;font-size:10px;font-weight:600;border-top:1px solid #F3F4F6;border-bottom:1px solid #F3F4F6}.reussitecla tbody td:first-child{border-radius:20px 0 0 20px}.reussitecla tbody td:last-child{border-radius:0 20px 20px 0}.classe-cell{display:flex;align-items:center;gap:18px}.classe-icon{width:36px;height:36px;border-radius:50%;background:#eef4ff;display:flex;align-items:center;justify-content:center;color:#2563eb;font-size:24px}.rate-cell{align-items:center;gap:20px}.rate-badge{background:#e8faef;color:#059668be;padding:2px 10px;border-radius:15px;font-weight:800;font-size:10px;min-width:10px;text-align:center}.progress{flex:1;height:10px;background:#e5e7eb;border-radius:20px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:20px;transition:.5s}.teamgh-abs{width:26%;background:#fff;border-radius:10px;padding:10px;box-shadow:0 15px 40px #00000014}.presence-header{height:40px;border-radius:20px;display:flex;align-items:center;padding:0 25px;color:#000;gap:12px}.presence-header h1{color:#000;background:none;font-size:18px;font-weight:800}.taux-abs{width:100%;border-collapse:separate;border-spacing:0 3px}.taux-abs thead th{height:30px;color:#fff;font-size:13px}.taux-abs thead th:nth-child(1){background:#2563eb;border-radius:5px}.taux-abs thead th:nth-child(2){background:#10b981}.taux-abs thead th:nth-child(3){background:#ef4444}.taux-abs thead th:nth-child(4){background:#f59e0b;border-radius:5px}.taux-abs tbody tr{background:#fff;box-shadow:0 8px 20px #00000014}.taux-abs td{font-size:10px;font-weight:600}.presence-class{display:flex;align-items:center;gap:18px}.presence-class .badge{display:inline-block;font-size:10px;padding:10px 20px;border-radius:14px;font-weight:700}.green{background:#dcfce7;color:#15803d}.red{background:#fee2e2;color:#dc2626}.orange{background:#fef3c7;color:#d97706}.gfppop{width:42%;background:#fff;border-radius:10px;box-shadow:0 15px 40px #00000014}.difficult-header{height:90px;background:linear-gradient(90deg,#ef4444,#ec4899);display:flex;align-items:center;padding:0 25px;border-radius:20px;margin-bottom:20px;gap:15px;color:#fff}.difficult-header h1{background:none;color:#fff;font-size:30px;font-weight:800}.gfppop table{text-align:center;width:100%;border-collapse:separate}.gfppop thead th{height:30px;background:#2563eb;color:#fff}.gfppop thead th:first-child{border-radius:5px}.gfppop thead th:last-child{border-radius:5px}.gfppop tbody tr{background:#fff;box-shadow:0 8px 20px #00000014}.gfppop td{padding:2px;font-size:10px;font-weight:600}.moyenne-badge{padding:5px 9px;border-radius:12px;font-weight:700}.success{background:#dcfce7;color:#15803d}.danger{background:#fee2e2;color:#dc2626}.voir-btn{background:linear-gradient(90deg,#2563eb,#4f46e5);color:#fff;border:none;padding:11px 22px;border-radius:12px;font-weight:700;cursor:pointer;transition:.25s}.voir-btn:hover{transform:translateY(-3px);box-shadow:0 10px 20px #2563eb59}.bulletin-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:999999;animation:fadeIn .25s}.bulletin-modal{width:40%;max-width:1100px;max-height:90vh;color:#000;overflow-y:auto;background:#fff;border-radius:15px;padding:35px;position:relative;box-shadow:0 20px 70px #00000040;animation:zoom .25s}.close-modal{position:absolute;top:20px;right:20px;width:45px;height:45px;border:none;border-radius:50%;background:#f3f4f6;cursor:pointer;font-size:20px;transition:.25s}.close-modal:hover{background:#ef4444;color:#fff;transform:rotate(90deg)}.bulletin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #EEF2F7}.bulletin-header h2{font-size:34px;font-weight:800;color:#1e3a8a;margin:0}.bulletin-header span{color:#64748b;font-size:15px}.table-bulletin{width:100%;border-collapse:separate;border-spacing:0 14px;margin-top:15px}.table-bulletin thead th{padding:12px;background:#2564eb5f;color:#000;font-size:15px}.table-bulletin thead th:first-child{border-radius:15px 0 0 15px}.table-bulletin thead th:last-child{border-radius:0 15px 15px 0}.table-bulletin tbody tr{background:#e9e8e8;box-shadow:0 6px 18px #00000014}.table-bulletin td{padding:15px;font-weight:600}.btn-bulletin{margin-top:25px;background:linear-gradient(90deg,#2563eb,#4f46e5);color:#fff;border:none;padding:14px 28px;border-radius:15px;font-size:16px;font-weight:700;cursor:pointer;transition:.25s}.btn-bulletin:hover{transform:translateY(-2px);box-shadow:0 12px 25px #2563eb59}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoom{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.deuxieme-dash{margin-top:25px;width:98%;display:flex;flex-direction:column;justify-content:space-around;padding:5px}.cote-droit{display:flex;justify-content:space-between;width:100%;height:100%;margin-bottom:30px}.cote-droit .cinq-sanctions{display:flex;justify-content:center;flex-direction:column;align-items:center;text-align:center;width:32%;text-transform:capitalize;overflow:hidden;color:#000;font-weight:500;background-color:#fff;border-radius:15px;box-shadow:0 10px 30px #6c63ff66}.cote-droit .cinq-sanctions table{margin:10px;color:#272c5f;text-align:center;font-weight:500}.cote-droit .cinq-sanctions table th{border:none}.cote-droit .cinq-scolarites{display:flex;justify-content:center;flex-direction:column;align-items:center;text-align:center;overflow:hidden;width:32%;color:#000;background-color:#fff;border-radius:25px;box-shadow:0 10px 30px #6c63ff66}.cote-droit .cinq-scolarites table{width:90%;margin:10px;color:#000;text-align:center;font-weight:500}.cote-gauche{width:100%;background:#f8fafc;border-radius:30px;padding:10px;box-shadow:0 20px 50px #0f172a14}.main-content-dashboard .selection-classes{display:flex;justify-content:center;text-align:center;gap:20px;margin-bottom:20px;padding:15px;background:#ffffff3d;border-radius:25px;box-shadow:0 12px 30px #00000012}.main-content-dashboard .selection-classes label{font-weight:700;color:#475569!important;margin-bottom:8px;display:block;font-size:15px}.main-content-dashboard .selection-classes select{height:55px;border:none;border-radius:15px;background:#f1f5f9;padding:0 18px;font-size:15px;font-weight:600;color:#334155;transition:.25s;outline:none}.selection-classes select:hover{background:#e2e8f0}.selection-classes select:focus{background:#fff;box-shadow:0 0 0 4px #3b82f626}.cote-gauche h1{display:flex;justify-content:space-around;gap:25px;margin:0 0 20px;font-size:18px}.cote-gauche h1 span{background:linear-gradient(90deg,#2564eb44,#4e46e52d);color:#000;text-align:center;padding:8px;border-radius:18px;box-shadow:0 10px 25px #2563eb40}.liste-moyenne .dual{display:flex;justify-content:space-between;height:500px}.liste-moyenne .dual .liste-moy{width:36%;display:flex;justify-content:space-between}.table-responsive{width:100%}.liste-moyenne .dual .liste-mo{width:33%;display:flex;justify-content:space-between}.liste-moyenne .dual .yuhy-2{width:30%;display:flex;justify-content:space-between}.liste-moy,.liste-mo{background:#fff;border-radius:25px;color:#000;padding:10px;box-shadow:0 12px 30px #0f172a14}.table{border-collapse:separate;border-spacing:0 4px;width:100%;height:100%}.table tbody tr{background:#fff;box-shadow:0 6px 20px #00000014;transition:.25s}.table tbody tr:hover{transform:translateY(-3px);box-shadow:0 14px 30px #0000001f}.selection-classes .table td{padding:16px;border:none;font-size:10px;font-weight:600}.rang{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;display:flex;justify-content:center;align-items:center;font-weight:800;margin:auto}.note{padding:4px 8px;background:#dcfce7;color:#15803d;border-radius:12px;font-weight:700}.note-danger{background:#fee2e2;color:#dc2626}.table strong{font-size:12px;color:#0f172a}.scroll-top-btn{position:fixed;bottom:30px;right:30px;width:55px;height:55px;border:none;border-radius:50%;background:#0d6efd;color:#fff;font-size:22px;cursor:pointer;box-shadow:0 5px 15px #00000040;transition:.3s;z-index:9999}.scroll-top-btn:hover{transform:translateY(-4px);background:#0b5ed7}.dashboard-admin-new{background:#f5f7fb;width:100%;padding:25px 28px 45px;overflow-y:auto;box-sizing:border-box}.dashboard-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dashboard-eyebrow{display:block;color:#2563eb;font-size:10px;font-weight:800;letter-spacing:1px;margin-bottom:5px}.dashboard-welcome h1{margin:0;color:#172033;font-size:24px;font-weight:800;letter-spacing:-.6px}.dashboard-welcome p{margin:5px 0 0;color:#8a94a6;font-size:12px}.dashboard-actions{display:flex;align-items:center;gap:10px}.dashboard-year{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #e5e9f0;border-radius:10px;padding:9px 12px}.dashboard-year svg{color:#2563eb}.dashboard-year div{display:flex;flex-direction:column}.dashboard-year small{color:#929baa;font-size:8px}.dashboard-year strong{color:#263143;font-size:11px;margin-top:2px}.dashboard-refresh{border:1px solid #2563eb;background:#2563eb;color:#fff;min-height:40px;padding:0 14px;border-radius:9px;display:flex;align-items:center;gap:7px;cursor:pointer;font-size:11px;font-weight:700;transition:.2s ease}.dashboard-refresh:hover{background:#1d4ed8}.dashboard-refresh:disabled{opacity:.6;cursor:not-allowed}.dashboard-spin{animation:dashboardSpin 1s linear infinite}@keyframes dashboardSpin{to{transform:rotate(360deg)}}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(169px,1fr));gap:5px;margin-bottom:14px}.dashboard-kpi-grid>*{width:100%}.dashboard-kpi{background:#fff;border:1px solid #e8ecf2;border-radius:13px;padding:16px;min-height:105px;display:flex;align-items:center;gap:12px;box-sizing:border-box;box-shadow:0 5px 18px #1e2d4b09}.dashboard-kpi-icon{width:46px;height:46px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.dashboard-kpi-blue .dashboard-kpi-icon{background:#e8f2ff;color:#2563eb}.dashboard-kpi-purple .dashboard-kpi-icon{background:#f0eaff;color:#7c3aed}.dashboard-kpi-green .dashboard-kpi-icon{background:#e8f8f1;color:#16a36c}.dashboard-kpi-orange .dashboard-kpi-icon{background:#fff2df;color:#e98c17}.dashboard-kpi-red .dashboard-kpi-icon{background:#ffe9ed;color:#e74655}.dashboard-kpi-content{min-width:0}.dashboard-kpi-content span{display:block;color:#8993a4;font-size:8px;font-weight:700;text-transform:uppercase}.dashboard-kpi-content strong{display:block;color:#1b2537;font-size:24px;line-height:1.1;margin-top:5px;letter-spacing:-.7px}.dashboard-kpi-content small{display:block;color:#9aa3b1;font-size:9px;margin-top:4px}.dashboard-finance-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:14px}.dashboard-finance-card{background:#fff;border:1px solid #e8ecf2;border-radius:12px;padding:13px;display:flex;align-items:center;gap:10px}.dashboard-finance-icon{width:39px;height:39px;border-radius:9px;background:#edf4ff;color:#2563eb;display:flex;align-items:center;justify-content:center}.dashboard-finance-icon.positive{background:#e8f8f1;color:#16a36c}.dashboard-finance-icon.danger{background:#ffecef;color:#e74655}.dashboard-finance-card span{display:block;color:#8993a4;font-size:9px}.dashboard-finance-card strong{display:block;color:#263143;font-size:13px;margin-top:4px}.dashboard-finance-card strong.finance-positive{color:#16a36c}.dashboard-finance-card strong.finance-danger{color:#e74655}.dashboard-main-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:14px;margin-bottom:14px}.dashboard-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.dashboard-panel-new{background:#fff;border:1px solid #e8ecf2;border-radius:13px;padding:17px;min-width:0;box-shadow:0 5px 18px #1e2d4b09}.dashboard-panel-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:13px}.dashboard-panel-title h2{margin:0;font-size:14px;color:#202a3a;font-weight:800}.dashboard-panel-title span{display:block;color:#949dab;font-size:9px;margin-top:4px}.dashboard-chart-large{min-height:290px}.dashboard-rechart{height:230px}.dashboard-bar-chart{height:250px}.dashboard-presence-content,.dashboard-gender-content{min-height:230px;display:flex;align-items:center;gap:4px}.dashboard-donut{width:55%;height:190px;position:relative;flex-shrink:0}.donut-center{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;pointer-events:none}.donut-center strong{font-size:19px;color:#1c2636}.donut-center span{color:#9aa3b1;font-size:9px;margin-top:2px}.dashboard-legend{flex:1}.dashboard-legend-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-bottom:1px solid #f0f2f5}.dashboard-legend-row>div{display:flex;align-items:center;gap:7px}.dashboard-legend-row>div span:last-child{color:#667184;font-size:10px}.dashboard-legend-row>strong{font-size:11px;color:#253044}.dashboard-legend-dot{width:8px;height:8px;border-radius:50%}.dashboard-table-wrapper{width:100%;overflow-x:auto}.dashboard-table{width:100%;border-collapse:collapse;min-width:500px}.dashboard-table th{color:#8993a4;font-size:9px;text-align:left;font-weight:700;padding:9px 7px;border-bottom:1px solid #edf0f4}.dashboard-table td{color:#5f6a7c;font-size:10px;padding:10px 7px;border-bottom:1px solid #f0f2f5}.dashboard-table tbody tr:hover{background:#fafbfc}.dashboard-class-name{display:flex;align-items:center;gap:8px;font-weight:700;color:#293347}.dashboard-class-name span{width:7px;height:26px;border-radius:5px}.dashboard-rate{min-width:100px}.dashboard-rate strong{display:block;font-size:10px}.dashboard-rate strong.success{color:#16a36c}.dashboard-rate strong.danger{color:#e74655}.dashboard-progress{width:100%;height:5px;background:#edf0f4;border-radius:20px;overflow:hidden;margin-top:5px}.dashboard-progress span{display:block;height:100%;background:#2563eb;border-radius:inherit}.dashboard-filter-panel{background:#fff;border:1px solid #e8ecf2;border-radius:13px;padding:16px;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-filter-panel h2{margin:0;font-size:14px;color:#202a3a}.dashboard-filter-panel p{margin:4px 0 0;color:#929baa;font-size:9px}.dashboard-filters{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:8px;flex:1;max-width:720px}.dashboard-filter{display:flex;flex-direction:column;gap:4px}.dashboard-filter span{color:#7f899a;font-size:9px;font-weight:700}.dashboard-filter select{height:35px;border:1px solid #dfe5ed;border-radius:7px;background:#fff;padding:0 8px;font-size:10px;color:#354052;outline:none}.dashboard-filter select:focus{border-color:#2563eb}.dashboard-difficulty-panel{margin-bottom:14px}.dashboard-student{display:flex;align-items:center;gap:8px}.dashboard-avatar{width:29px;height:29px;border-radius:8px;background:#eaf2ff;color:#2563eb;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:800}.dashboard-student strong{color:#2b3548;font-size:10px}.dashboard-score{display:inline-flex;padding:4px 7px;border-radius:5px;font-weight:800;font-size:9px}.dashboard-score.success{color:#168d60;background:#e8f8f1}.dashboard-score.danger{color:#dc3f4d;background:#ffecef}.dashboard-view-btn{border:1px solid #d9e4f6;background:#f2f7ff;color:#2563eb;border-radius:6px;padding:6px 9px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:9px;font-weight:700}.dashboard-empty{min-height:130px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#9aa3b1;font-size:11px}.dashboard-empty-small{padding:20px 0;text-align:center;color:#9aa3b1;font-size:10px}.dashboard-activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:14px}.dashboard-ranking-panel{background:#fff;border:1px solid #e8ecf2;border-radius:13px;padding:15px}.dashboard-ranking-header{display:flex;align-items:center;gap:8px;padding-bottom:11px;border-bottom:1px solid #edf0f4;margin-bottom:5px}.dashboard-ranking-header h2{margin:0;font-size:12px;color:#283246}.dashboard-ranking-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center}.dashboard-ranking-icon.red{background:#ffecef;color:#e74655}.dashboard-ranking-icon.orange{background:#fff2df;color:#e98c17}.dashboard-ranking-icon.purple{background:#f0eaff;color:#7c3aed}.dashboard-ranking-icon.blue{background:#e8f2ff;color:#2563eb}.dashboard-ranking-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #f1f3f6}.dashboard-ranking-number{width:22px;height:22px;border-radius:6px;background:#f2f5f9;display:flex;align-items:center;justify-content:center;font-size:8px;color:#667184;font-weight:800}.dashboard-ranking-person{flex:1;min-width:0}.dashboard-ranking-person strong{display:block;color:#344054;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-ranking-person span{display:block;color:#a0a8b4;font-size:8px;margin-top:2px}.dashboard-ranking-item>strong{color:#e74655;font-size:10px}.dashboard-ranking-item>strong small{color:#9ba3af;font-size:7px;font-weight:500}.dashboard-badge-stats{display:grid;grid-template-columns:1fr;gap:8px;padding-top:8px}.dashboard-badge-stat{background:#f8fafc;border-radius:8px;padding:9px;display:flex;align-items:center;justify-content:space-between}.dashboard-badge-stat span{color:#7e899b;font-size:9px}.dashboard-badge-stat strong{color:#263143;font-size:14px}.dashboard-summary-grid{display:flex;flex-wrap:wrap;gap:13px}.dashboard-summary-card{background:#fff;border:1px solid #e8ecf2;border-radius:11px;padding:12px;display:flex;align-items:center;gap:9px}.dashboard-summary-icon{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center}.dashboard-summary-icon.blue{background:#e8f2ff;color:#2563eb}.dashboard-summary-icon.orange{background:#fff2df;color:#e98c17}.dashboard-summary-icon.purple{background:#f0eaff;color:#7c3aed}.dashboard-summary-icon.green{background:#e8f8f1;color:#16a36c}.dashboard-summary-card span{display:block;color:#929baa;font-size:9px}.dashboard-summary-card strong{display:block;color:#273246;font-size:13px;margin-top:3px}.dashboard-admin-error{min-height:calc(100vh - 70px);background:#f5f7fb;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7c8798;text-align:center;padding:20px}.dashboard-admin-error>svg{color:#e74655;margin-bottom:10px}.dashboard-admin-error h2{color:#263143;margin:0;font-size:19px}.dashboard-admin-error p{max-width:500px;font-size:12px}.dashboard-admin-error button{border:none;background:#2563eb;color:#fff;border-radius:8px;padding:10px 15px;display:flex;align-items:center;gap:7px;cursor:pointer}.dashboard-bulletin-overlay{position:fixed;inset:0;z-index:999999;background:#051226b8;display:flex;justify-content:center;align-items:start;padding:25px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow:auto}.dashboard-bulletin-wrapper{width:min(1100px,100%);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.dashboard-bulletin-close{position:fixed;top:18px;right:22px;z-index:1000000;width:42px;height:42px;border:none;border-radius:50%;background:#fff;color:#082d63;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 25px #00000040;transition:.2s}.dashboard-bulletin-close:hover{background:#082d63;color:#fff;transform:rotate(90deg)}.tetulamini{display:flex;width:100%;justify-content:center;align-items:center;margin-bottom:15px}.tetulamini div:nth-child(1){width:30%}.tetulamini div:nth-child(2){width:43%}.tetulamini div:nth-child(3){width:25%}.ministere{border-radius:25px;font-size:10px;display:flex;flex-direction:column;align-items:center;color:#fff;padding:10px;font-weight:400;text-align:center;background-color:#082d63}.bulletin-paper{width:850px;max-width:100%;background:#fff;color:#111827;padding:20px;font-family:Arial,Helvetica,sans-serif;box-shadow:0 25px 80px #00000059;border:1px solid #c8d4e3;animation:bulletinZoom .25s ease;box-sizing:border-box}.bulletin-school-header{text-align:center;max-height:150px;width:100%;border:2px solid #8ea5c1;display:flex;margin-bottom:10px;align-items:stretch;justify-content:space-between;position:relative;overflow:hidden}.bulletin-school-left{display:flex;width:80%;align-items:center;gap:10px;padding:10px 15px}.bulletin-logo{height:100%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#082d63}.bulletin-logo img{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.bulletin-school-info h1{margin:0 0 5px;color:#082d63;text-align:center;font-size:15px;font-weight:900;text-transform:uppercase}.bulletin-motto{color:#173d6f;text-align:center;font-size:14px;font-weight:600;margin-bottom:15px}.bulletin-school-info p{margin:3px 0;text-align:center;color:#111827;font-size:12px}.bulletin-school-year{background-color:#082d63;color:#fff;border-radius:10px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:10px}.bulletin-school-year-tof{width:18%;background-color:#082d63;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0}.bulletin-school-year-tof img{width:100%;border-radius:15px}.bulletin-school-year span{font-size:12px;font-weight:800;letter-spacing:.5px}.bulletin-school-year strong{font-size:20px;margin-top:8px}.bulletin-title-section{text-align:center;padding:17px 10px 13px}.bulletin-title-section h2{margin:0;color:#082d63;font-size:25px;font-weight:900;letter-spacing:.5px}.bulletin-title-section span{display:inline-block;margin-top:5px;color:#082d63;font-family:Lucida Sans,Lucida Sans Regular,Lucida Grande,Lucida Sans Unicode,Geneva,Verdana,sans-serif;font-size:18px;font-weight:800;text-transform:uppercase}.bulletin-student-info{border:1px solid #9fb2c9;display:flex;margin-bottom:18px}.bulletin-info-column{padding:15px 20px;width:100%}.bulletin-info-column+.bulletin-info-column{border-left:1px solid #d1d9e3}.bulletin-info-row{display:flex;align-items:center;min-height:31px;font-size:10px}.bulletin-info-row label{width:95px;color:#082d63;font-weight:900}.bulletin-info-row strong{color:#111827;font-weight:700;text-transform:uppercase}.bulletin-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:20px;border:1px solid #8ea5c1}.bulletin-stat-card{min-height:90px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;border-right:1px solid #8ea5c1}.bulletin-stat-card:last-child{border-right:none}.bulletin-stat-card span{color:#111827;font-size:12px;font-weight:900;margin-bottom:7px}.bulletin-stat-card strong{color:#075aa6;font-size:26px;font-weight:900}.bulletin-stat-card small{font-size:13px;font-weight:700;margin-left:4px}.bulletin-period{margin-bottom:20px}.bulletin-period-title{background:#082d63;color:#fff;min-height:38px;display:flex;justify-content:center;align-items:center;gap:15px;padding:7px 12px;text-transform:uppercase}.bulletin-period-title span{font-size:13px;font-weight:800}.bulletin-period-title strong{font-size:16px}.bulletin-table-container{overflow-x:auto}.bulletin-notes-table{border-collapse:collapse;table-layout:fixed}.bulletin-notes-table th{background:#082d63;color:#fff;border:1px solid #ffffff;padding:9px 6px;font-size:10px;font-weight:900;text-align:center;text-transform:uppercase}.bulletin-notes-table td{border:1px solid #d7dee8;padding:8px 6px;font-size:11px;text-align:center;height:27px}.bulletin-notes-table tbody tr:nth-child(2n){background:#fafcff}.bulletin-notes-table tbody tr:hover{background:#f1f6fc}.bulletin-notes-table th:nth-child(1),.bulletin-notes-table td:nth-child(1){width:4%}.bulletin-notes-table th:nth-child(2),.bulletin-notes-table td:nth-child(2){width:25%;text-align:left}.bulletin-notes-table th:nth-child(3),.bulletin-notes-table td:nth-child(3){width:11%}.bulletin-notes-table th:nth-child(4),.bulletin-notes-table td:nth-child(4){width:10%}.bulletin-notes-table th:nth-child(5),.bulletin-notes-table td:nth-child(5){width:10%}.bulletin-notes-table th:nth-child(6),.bulletin-notes-table td:nth-child(6){width:8%}.bulletin-notes-table th:nth-child(7),.bulletin-notes-table td:nth-child(7){width:32%}.bulletin-subject{font-weight:700}.bulletin-note{font-size:12px!important;font-weight:900;color:#111827}.bulletin-rank{font-weight:800}.bulletin-period-summary{display:flex;justify-content:flex-end;border:1px solid #9fb2c9;border-top:none;background:#f7f9fc}.bulletin-period-summary>div{min-width:180px;padding:10px 15px;display:flex;align-items:center;gap:8px}.bulletin-period-summary span{color:#082d63;font-size:10px;font-weight:900}.bulletin-period-summary strong{color:#075aa6;font-size:17px}.bulletin-period-summary small{font-size:10px}.bulletin-bottom-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:15px;margin-top:20px}.bulletin-coche-content{display:flex;justify-content:space-around}.bulletin-coche-content h2{font-size:13px;text-decoration:underline;padding:5px 0}.bulletin-coche-content .coche{font-size:10px;padding:2px}.bulletin-general-appreciation,.bulletin-mention{border:1px solid #8ea5c1;min-height:150px}.bulletin-section-title{height:35px;background:#082d63;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900}.bulletin-appreciation-content{min-height:115px;padding:20px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;line-height:1.7;font-weight:600}.bulletin-mention-content{min-height:115px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.bulletin-mention-content strong{color:#1f8f4d;font-size:25px;font-weight:900;text-transform:uppercase}.bulletin-mention-content span{margin-top:8px;font-size:14px;font-weight:900;text-transform:uppercase}.bulletin-laurel{color:#63823b;font-size:34px;line-height:25px}.bulletin-stars{margin-top:8px;color:#16883f;letter-spacing:5px}.bulletin-footer-info{margin-top:20px;display:grid;grid-template-columns:170px 150px 1fr;gap:18px;align-items:end}.bulletin-attendance{border:1px solid #8ea5c1}.bulletin-attendance-title{background:#f0f4f9;color:#082d63;text-align:center;font-size:12px;font-weight:900;padding:8px}.bulletin-attendance>div:not(.bulletin-attendance-title){display:flex;justify-content:space-between;padding:7px 10px;border-top:1px solid #d7dee8;font-size:11px}.bulletin-attendance strong{font-weight:900}.bulletin-retard-value{min-height:55px;display:flex!important;align-items:center;justify-content:center!important;font-size:18px!important;font-weight:900}.bulletin-date{text-align:center;font-size:12px;font-weight:600;padding-bottom:8px}.bulletin-signatures{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:25px;padding:0 50px}.bulletin-signatures>div{text-align:center;font-size:12px;font-weight:700}.bulletin-signature-line{height:65px;margin-top:8px;border-bottom:1px solid #9aa8ba}.bulletin-no-data{padding:30px;border:1px solid #d7dee8;text-align:center;color:#64748b;font-size:13px}@keyframes bulletinZoom{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (max-width: 900px){.dashboard-bulletin-overlay{align-items:flex-start;padding:10px}.bulletin-paper{padding:12px}.bulletin-school-header{flex-direction:column}.bulletin-school-year{width:100%;min-height:70px}.bulletin-school-left{padding:15px}.bulletin-school-info h1{font-size:20px}.bulletin-stats-grid{grid-template-columns:repeat(2,1fr)}.bulletin-stat-card:nth-child(2){border-right:none}.bulletin-stat-card:nth-child(-n+2){border-bottom:1px solid #8ea5c1}.bulletin-student-info{grid-template-columns:1fr}.bulletin-info-column+.bulletin-info-column{border-left:none;border-top:1px solid #d1d9e3}.bulletin-bottom-grid{grid-template-columns:1fr}.bulletin-footer-info{grid-template-columns:1fr 1fr}.bulletin-date{grid-column:1 / -1}.bulletin-signatures{gap:30px;padding:0 10px}}@media (max-width: 600px){.bulletin-school-left{flex-direction:column;text-align:center}.bulletin-info-row{flex-direction:column;align-items:flex-start;gap:3px;padding:6px 0}.bulletin-info-row label{width:auto}.bulletin-stats-grid{grid-template-columns:1fr}.bulletin-stat-card{border-right:none;border-bottom:1px solid #8ea5c1}.bulletin-stat-card:last-child{border-bottom:none}.bulletin-footer-info{grid-template-columns:1fr}.bulletin-date{grid-column:auto}.bulletin-signatures{grid-template-columns:1fr}.bulletin-notes-table{min-width:800px}}@media (max-width: 1400px){.dashboard-kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-main-grid{grid-template-columns:1.4fr 1fr}.dashboard-main-grid .dashboard-chart-large{grid-row:span 1}.dashboard-main-grid .dashboard-panel-new:last-child{grid-column:1 / -1}.dashboard-activity-grid,.dashboard-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1000px){.dashboard-admin-new{padding:18px}.dashboard-welcome{align-items:flex-start;flex-direction:column}.dashboard-finance-strip{grid-template-columns:repeat(2,1fr)}.dashboard-main-grid{grid-template-columns:1fr}.dashboard-main-grid .dashboard-panel-new:last-child{grid-column:auto}.dashboard-two-columns{grid-template-columns:1fr}.dashboard-filter-panel{align-items:stretch;flex-direction:column}.dashboard-filters{max-width:none}}@media (max-width: 700px){.dashboard-kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-finance-strip{grid-template-columns:1fr}.dashboard-filters{grid-template-columns:repeat(2,1fr)}.dashboard-activity-grid,.dashboard-summary-grid{grid-template-columns:1fr}}@media (max-width: 520px){.dashboard-admin-new{padding:14px 10px 30px}.dashboard-welcome h1{font-size:19px}.dashboard-actions{width:100%;flex-direction:column;align-items:stretch}.dashboard-year,.dashboard-refresh{width:100%;box-sizing:border-box;justify-content:center}.dashboard-kpi-grid,.dashboard-filters{grid-template-columns:1fr}.dashboard-panel-new{padding:13px}.dashboard-presence-content,.dashboard-gender-content{flex-direction:column}.dashboard-donut,.dashboard-legend{width:100%}.dashboard-bulletin-modal{padding:18px}}@media screen and (max-width : 468px){.main-content-dashboard .compteur{margin:30px 0}.main-content-dashboard .compteur div{width:24%;height:60px;font-size:14px;background-color:#f99900;color:#eaeaea;border-bottom:none}.main-content-dashboard .compteur>div:nth-child(1){width:30%;border-radius:15px;height:65px}.main-content-dashboard .compteur>div:nth-child(2){width:30%;border-radius:15px;height:65px}.main-content-dashboard .compteur>div:nth-child(3){width:30%;border-radius:15px;height:65px}.main-content-dashboard #EC{position:absolute;top:-35px;left:-15px;color:#12d1e7;background:linear-gradient(to bottom,#000 63%,#f99900 37%);border-radius:50%;height:55px;width:55px;display:flex;justify-content:center;align-items:center;text-align:center}.main-content-dashboard #CC{position:absolute;top:-41px;color:#12d1e7;background:linear-gradient(to bottom,#000 63%,#f99900 37%);border-radius:50%;min-height:55px;min-width:55px;display:flex;justify-content:center;align-items:center;text-align:center}.main-content-dashboard #MC{position:absolute;top:-35px;right:-15px;color:#12d1e7;background:linear-gradient(to bottom,#000 63%,#f99900 37%);border-radius:50%;min-height:55px;min-width:55px;display:flex;justify-content:center;align-items:center;text-align:center}.box-scroll{max-height:400px;overflow-y:auto;background:#fff;color:#000;padding:10px;border-radius:8px}.box-scroll h1{position:sticky;top:0;background-color:#f99900;z-index:3;padding:8px 0}.box-scroll h1,.box-scroll thead th{box-shadow:0 6px 8px #00000057}.box-scroll thead th{position:sticky;top:30px;background:#000;color:#fff;z-index:3}.text-red{color:#dc2626;font-weight:700}.text-green{color:#16a34a;font-weight:700}.box-scroll::-webkit-scrollbar{width:16px}.box-scroll::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:10px}.taux-reussite-classe{width:29%;text-align:center}.reussitecla{width:100%;height:auto;margin-bottom:20px}.reussitecla th,.reussitecla td{padding:5px}.teamgh-abs{width:29%;text-align:center}.taux-abs{width:100%}.taux-abs th,.taux-abs td,.gfppop th{border-collapse:collapse;padding:5px}.gfppop{text-align:center}.gfppop th,.gfppop td{border-collapse:collapse;padding:2px}.main-content-dashboard .rotatio-k{display:flex;flex-direction:column;width:98%;max-height:1800px;justify-content:space-between;border-bottom:none}.main-content-dashboard .rotatio-k div{width:100%;max-height:450px}.difficult-header h1{font-size:11px}.difficult-header{height:30px;margin-bottom:0;gap:0}}.selection-classes{width:100%;display:flex;justify-content:center}.main-content-eleves .all-eleves{display:flex;width:100%}.photo-profil-container{display:flex;align-items:center;gap:20px;padding:15px;margin-bottom:20px;border-radius:14px;background:#f7f9fc;border:1px solid #e2e8f0}.photo-profil-preview{width:95px;height:95px;min-width:95px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#e8eefb;border:3px solid #1554c7;color:#1554c7;font-size:35px}.photo-profil-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-profil-upload{display:flex;flex-direction:column;gap:7px}.photo-profil-upload label{width:-moz-fit-content;width:fit-content;padding:10px 16px;border-radius:8px;background:#1554c7;color:#fff;cursor:pointer;font-weight:600;transition:.2s}.photo-profil-upload label:hover{background:#0d3f9d}.photo-profil-upload label i{margin-right:8px}.photo-profil-upload input[type=file]{display:none}.photo-profil-upload small{color:#718096;font-size:12px}.eleve-photo-card{width:100%;height:100%;display:flex;justify-content:center;margin-bottom:15px;position:relative;z-index:2}.eleve-photo-card img{width:90px;height:90px;border-radius:50%;-o-object-fit:cover;object-fit:cover;display:block}.main-content-eleves .modal-content{display:flex;justify-content:center;align-items:center;flex-direction:column}.main-content-eleves .modal-content form{width:98%;max-width:1300px;max-height:80vh;overflow-y:auto;border-radius:10px;padding:10px}.all-eleves .selection-classes{display:flex;justify-content:space-around;align-items:end;margin-bottom:15px}.all-eleves .selection-classes select{color:#000;background-color:#fff;border-radius:15px;height:35px}.all-eleves .selection-classes .search{position:relative}.all-eleves .selection-classes .search i{position:absolute;color:#000;top:10px;left:7px;font-size:25px}.all-eleves .selection-classes input{color:#000;background-color:#fff;border-radius:15px;height:45px;width:250px;padding-left:35px}.all-eleves .selection-classes .R-totale{color:#000;background-color:#fff;border-radius:15px;padding:10px}.main-content-eleves .all-eleves .droite{margin-top:15px;width:100%}.main-content-eleves .form-container{display:flex;flex-direction:column;padding:15px;border-radius:15px;font-size:15px}.title_eleve{color:#fff;font-size:20px;font-weight:700}.main-content-eleves .form-container .team-eleves1{display:flex;justify-content:space-around;margin-bottom:25px;width:70%}.main-content-eleves .form-container .team-eleves1 .form-group-eleve{display:flex;flex-direction:column;width:50%;align-items:center}.main-content-eleves .form-container .team-eleves1 .form-group-eleve label{text-align:center;color:#fff;font-weight:700;margin-bottom:15px}.form-container .team-eleves1 .form-group-eleve input{width:50%;height:30px;margin:5px;border-radius:10px;background-color:transparent;text-align:center;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px;color:#fff;font-weight:900}.form-container .team-eleves1 .form-group-eleve select{width:60%;height:30px;text-align:center;background-color:#000;border-radius:10px;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px;color:#fff}.form-container .team-eleves2{display:flex;justify-content:space-around;margin-bottom:25px;width:100%}.form-container .team-eleves2 .form-group-eleve{display:flex;flex-direction:column;width:100%;align-items:center;color:#fff}.form-container .team-eleves2 .form-group-eleve label{text-align:center;font-weight:700;margin-bottom:15px}.form-container .team-eleves2 .form-group-eleve input{width:85%;height:30px;margin:5px;border-radius:10px;background-color:transparent;text-align:center;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px;font-weight:900}.team-eleves2 .form-group-eleve select{width:60%;padding:12px;border:1px solid #ffffff;border-radius:10px;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px;background-color:#2f2f2f;color:#fff}.form-container .team-eleves3{display:flex;justify-content:space-around;margin-bottom:25px;width:100%}.form-container .team-eleves3 .form-group-eleve{display:flex;flex-direction:column;width:100%;align-items:center}.form-container .team-eleves3 .form-group-eleve label{text-align:center;color:#fff;font-weight:700;margin-bottom:15px}.form-container .team-eleves3 .form-group-eleve input{width:180px;height:30px;margin:5px;border-radius:10px;background-color:transparent;text-align:center;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px;color:#fff;font-weight:900}.form-container .team-eleves3 .form-group-eleve select{width:230px;height:30px;text-align:center;background-color:#a19f9f;border-radius:10px;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px;color:#fff}.main-content-eleves .form-container .envoie{width:150px;width:100%;display:flex;justify-content:space-around}.main-content-eleves .form-container .btn-envoie{width:150px;padding:15px;border:none;border-radius:15px;color:#fff;background-color:#0ba240c3}.main-content-eleves .form-container .btn-envoie2{width:150px;padding:15px;border:none;border-radius:15px;color:#fff;background-color:#d0381abe}.rien{font-size:25px;color:#000;font-weight:600}.main-content-eleves .avertissement-aucun-eleves{position:absolute}.liste-eleve{display:flex;justify-content:center;flex-wrap:wrap;margin:25px 0;width:100%}.eleve-card{position:relative;margin:5px;display:flex;flex-direction:column;justify-content:space-between;width:19%;text-align:center;border:#6aabfad6 1px dotted;background:#6aabfa41;color:#000;padding:10px;border-radius:16px;box-shadow:0 4px 12px #00000014;transition:transform .2s ease,box-shadow .2s ease}.eleve-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.eleve-card h4{font-size:10px;margin:5px 10px;font-weight:700;text-transform:capitalize}.eleve-card p{margin:4px 0;font-weight:600}.eleve-actions{width:100%;display:flex;justify-content:space-around}.eleve-actions button{width:35%}.vision-eleve{background-color:#fff!important;padding:0!important;width:0!important;position:absolute;top:-25px;right:40px}.vision-eleve i{border-radius:15px;background-color:#6aabfad6;padding:10px;font-size:20px}.eleve-card .name-sex{font-size:12px;display:flex;justify-content:space-around}.popup-overlay{background-color:#0000006a;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1x)}.popup{background-color:#000000fb;padding:20px;border-radius:20px}.popu{display:flex;justify-content:space-around;margin-top:15px}.modal-content-student{background-color:#fff;color:#000;width:75%;height:89vh;border-radius:15px;padding:10px}.kelepe{display:flex;justify-content:space-between;padding:10px}.tete-student{display:flex}.icon-tete-student{display:flex;align-items:center;justify-content:center;background-color:#d9d6f7;border-radius:12px;height:45px;width:45px}.kelepe i{font-size:25px;color:#3d2edc}.first-inf-student{display:flex;flex-direction:column;margin-left:15px}.first-inf-student span:nth-child(1){font-size:18px}.first-inf-student span:nth-child(2){font-size:10px}.student-header{margin-top:5px;justify-content:space-between;padding:5px;display:flex;border-radius:10px;border:#b4e9fc 1px solid;width:99%;height:150px}.student-profile{width:60%;display:flex}.student-avatar{position:relative}.student-avatar img{font-size:65px;border-radius:15px;height:140px;width:140px;background-color:#46b9e2}.student-avatar span{background-color:#e8feeb;padding:3px 15px;border-radius:15px;color:#0e8421;position:absolute;bottom:15px;left:5px}.idf-student{margin-left:15px}.blaze-student{display:flex;flex-direction:column;margin-bottom:10px}.blaze-student span:nth-child(1){text-transform:uppercase;font-size:18px;font-family:inter}.blaze-student span:nth-child(2){text-transform:capitalize;font-size:12px}.student-student{margin-bottom:15px}.student-student span{border-radius:15px;padding:10px;background-color:#f1f2ff;color:#060ee3}.class-ann-student{display:flex;align-items:center;width:100%;justify-content:space-around}.class-ann-student div:nth-child(1){padding:0 15px;border-right:1px dotted blue}.class-ann-student div:nth-child(2){padding:0 15px}.student-id{width:22%;padding:10px;display:flex;flex-direction:column;border-radius:15px;text-align:center;background-color:#e0e7f9}.title-matricule{color:#1f1f20;text-transform:uppercase;font-size:22px}.student-matricule{text-transform:uppercase;font-family:Trebuchet MS,sans-serif;color:#3d2edc;font-weight:600}.codeBAARE{display:flex;justify-content:center;align-items:center}.codeBAARE svg{width:180px;height:auto}.info-grid-student{background-color:#fff}.info-card-student{margin-top:10px;padding:10px;border-radius:10px;border:#46b9e2 1px solid;width:100%;background-color:#fff}.titan-first{margin-top:10px;border-radius:10px;border:#46b9e2 1px solid;padding:10px}.first-ligne{width:100%;display:flex;justify-content:space-around}.first-ligne .ligne-student:nth-child(2){border-left:#00000035 dotted 1px}.first-ligne .ligne-student:nth-child(3){border-left:#00000035 solid 1px}.first-ligne .ligne-student:nth-child(4){border-left:#00000035 solid 1px}.ligne-student{margin:5px;padding:5px 10px;width:23%;display:flex;align-items:center;text-align:center}.ligne-studenti{padding:10px;background-color:#e2f2ff;border-radius:5px}.ligne-student i{font-size:20px;display:flex;text-align:center;color:#2c91e4}.ligne-student2{display:flex;flex-direction:column;text-align:left;margin-left:10px}.parents-grid-student{display:flex;justify-content:space-between;margin:10px}.parent-card-student{border:#46b9e2 1px solid;background-color:#46b9e2;border-radius:10px}.first-parent{display:flex;margin:5px;border-radius:10px;padding:10px;background-color:#fff}.parent-gauche{display:flex;flex-direction:column;gap:5px}.ligne-parent{display:flex;align-items:center}.ligne-parentiP{border-radius:10px;background-color:#a9c6fc92;padding:10px;font-size:16px;display:flex;align-items:center}.ligne-parentiM{border-radius:10px;background-color:#fe97d076;padding:10px;font-size:16px;display:flex;align-items:center}.ligne-parentiT{border-radius:10px;background-color:#a6e5bb64;padding:10px;font-size:16px;display:flex;align-items:center}.ligne-parentiP i{color:#3175f3}.ligne-parentiM i{color:#fe97cf}.ligne-parentiT i{color:#a6e5bb}.ligne-parent2{display:flex;flex-direction:column;margin-left:10px}.parent-droite img{height:100px;width:100px}.modal-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:25px;background:#0f172ab8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:modalOverlayIn .25s ease}.modal-content-voir-infos{position:relative;width:85%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;background:#f5f7fb;border:1px solid rgba(255,255,255,.8);border-radius:24px;box-shadow:0 30px 80px #0f172a47,0 10px 30px #0f172a1f;animation:modalContentIn .3s ease}.kelepe{flex-shrink:0;background:#fff;border-bottom:1px solid #e8edf5}.tete-voir-infos{display:flex;align-items:center;gap:15px;padding:20px 26px 17px}.icon-tete-voir-infos{width:52px;height:52px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:15px;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;font-size:22px;box-shadow:0 8px 20px #2563eb40}.icon-tete-voir-infos i{color:#fff}.first-inf-voir-infos{display:flex;flex-direction:column;gap:4px;min-width:0}.title_voir-infos{color:#172033;font-size:19px;font-weight:750;line-height:1.2}.first-inf-voir-infos>span:last-child{color:#7a8498;font-size:13px;font-weight:450}.voir-infos-footer{display:flex;align-items:center;justify-content:flex-end;padding:0 26px 17px}.btn-close-card{display:inline-flex;align-items:center;justify-content:center;min-width:105px;height:38px;padding:0 17px;border:1px solid #e1e6ef;border-radius:10px;background:#fff;color:#526074;font-size:13px;font-weight:650;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.btn-close-card:hover{background:#f1f5f9;color:#172033;border-color:#cbd5e1;transform:translateY(-1px)}.form-container-voir-infos{flex:1;min-height:0;margin:0;padding:25px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.form-container-voir-infos::-webkit-scrollbar{width:7px}.form-container-voir-infos::-webkit-scrollbar-track{background:transparent}.form-container-voir-infos::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:20px}.form-container-voir-infos::-webkit-scrollbar-thumb:hover{background:#94a3b8}.voir-infos-card{width:100%}.voir-infos-header{display:flex;align-items:stretch;justify-content:space-between;gap:25px;margin-bottom:22px;padding:25px;background:#fff;border:1px solid #e7ebf2;border-radius:20px;box-shadow:0 5px 18px #0f172a0b}.voir-infos-profile{display:flex;align-items:center;gap:20px;min-width:0}.voir-infos-avatar{position:relative;width:100px;height:100px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:22px;background:linear-gradient(145deg,#eff6ff,#eef2ff);border:1px solid #dbe5f5;overflow:visible}.voir-infos-avatar img{-o-object-fit:cover;object-fit:cover;border-radius:16px}.voir-badge-active{position:absolute;right:-8px;bottom:-25px;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:2px solid #ffffff;border-radius:20px;background:#dcfce7;color:#15803d;font-size:11px;font-weight:700;box-shadow:0 3px 10px #1665341f}.voir-badge-active:first-letter{color:#22c55e}.idf-voir-infos{display:flex;flex-direction:column;gap:8px;min-width:0}.blaze-voir-infos{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.blaze-voir-infos span{color:#172033;font-size:25px;font-weight:800;line-height:1.15}.blaze-voir-infos span+span:before{content:"";display:inline-block;width:5px;height:5px;margin-right:9px;vertical-align:middle;border-radius:50%;background:#94a3b8}.voir-infos-voir-infos{display:flex;align-items:center}.voir-infos-voir-infos span{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:8px;background:#eff6ff;color:#2563eb;font-size:12px;font-weight:700}.voir-infos-voir-infos i{font-size:11px}.class-ann-voir-infos{display:flex;align-items:center;flex-wrap:wrap;gap:15px;color:#657187;font-size:13px;font-weight:500}.class-ann-voir-infos div{display:flex;align-items:center;gap:6px}.class-ann-voir-infos i{color:#64748b;font-size:12px}.voir-infos-id{min-width:240px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding-left:25px;border-left:1px solid #e8edf4}.title-matricule{margin-bottom:4px;color:#8993a5;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.voir-infos-matricule{color:#172033;font-size:13px;font-weight:750;letter-spacing:.03em}.codeBAARE{display:flex;align-items:center;justify-content:center;min-height:50px;margin:8px 0;padding:5px 10px;background:#fff;border:1px solid #e5eaf2;border-radius:8px}.codeBAARE svg,.codeBAARE canvas,.codeBAARE img{max-width:190px;height:auto}.info-grid-voir-infos{display:flex;flex-direction:column;gap:20px}.info-card-voir-infos{background:#fff;border:1px solid #e7ebf2;border-radius:20px;overflow:hidden;box-shadow:0 5px 18px #0f172a0b}.info-card-voir-infos h3,.parent-card-voir-infos h3{display:flex;align-items:center;gap:9px;margin:0;padding:17px 20px;border-bottom:1px solid #edf0f5;color:#172033;font-size:14px;font-weight:750}.info-card-voir-infos h3 i{color:#2563eb}.titan-first{display:flex;flex-direction:column;padding:6px 20px 18px}.first-ligne{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-bottom:1px solid #f0f2f6}.first-ligne:last-child{border-bottom:none}.ligne-voir-infos{display:flex;align-items:center;gap:11px;min-width:0;padding:15px 12px;border-right:1px solid #f0f2f6}.ligne-voir-infos:first-child{padding-left:0}.ligne-voir-infos:last-child{border-right:none}.ligne-voir-infosi{width:35px;height:35px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#f1f5ff;color:#4f46e5;font-size:14px}.ligne-voir-infos2{display:flex;flex-direction:column;gap:3px;min-width:0}.ligne-voir-infos2 span{color:#8a94a6;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.ligne-voir-infos2 strong{display:block;max-width:100%;overflow:hidden;color:#263248;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.parents-grid-voir-infos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.parent-card-voir-infos{min-width:0;background:#fff;border:1px solid #e7ebf2;border-radius:20px;overflow:hidden;box-shadow:0 5px 18px #0f172a0b}.parent-card-voir-infos h3{padding:15px 17px}.parent-card-voir-infos h3 i{color:#64748b}.first-parent{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:130px;padding:15px 17px}.parent-gauche{flex:1;display:flex;flex-direction:column;gap:14px;min-width:0}.parent-droite{width:82px;height:82px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:18px;background:#f8fafc}.parent-droite img{width:68px;height:68px;-o-object-fit:contain;object-fit:contain}.ligne-parent{display:flex;align-items:center;gap:10px;min-width:0}.ligne-parentiP,.ligne-parentiM,.ligne-parentiT{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:9px;font-size:13px}.ligne-parentiP{background:#eff6ff;color:#2563eb}.ligne-parentiM{background:#fdf2f8;color:#db2777}.ligne-parentiT{background:#f5f3ff;color:#7c3aed}.ligne-parent2{display:flex;flex-direction:column;gap:2px;min-width:0}.ligne-parent2 span{color:#8a94a6;font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.03em}.ligne-parent2 strong{display:block;max-width:145px;overflow:hidden;color:#263248;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}@keyframes modalOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes modalContentIn{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 1150px){.modal-content-voir-infos{width:97vw}.first-ligne{grid-template-columns:repeat(2,minmax(0,1fr))}.ligne-voir-infos:nth-child(2){border-right:none}.ligne-voir-infos:nth-child(n+3){border-top:1px solid #f0f2f6}.parents-grid-voir-infos{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-card-voir-infos:last-child{grid-column:1 / -1}}@media (max-width: 850px){.modal-overlay{padding:12px}.modal-content-voir-infos{width:100%;max-height:96vh;border-radius:18px}.tete-voir-infos{padding:17px 18px 14px}.voir-infos-footer{padding:0 18px 14px}.form-container-voir-infos{padding:16px}.voir-infos-header{flex-direction:column;padding:20px}.voir-infos-id{width:100%;min-width:0;align-items:flex-start;padding-top:17px;padding-left:0;border-top:1px solid #e8edf4;border-left:none}.codeBAARE{width:100%;justify-content:flex-start}.parents-grid-voir-infos{grid-template-columns:1fr}.parent-card-voir-infos:last-child{grid-column:auto}}@media (max-width: 600px){.modal-overlay{align-items:flex-start;padding:8px}.modal-content-voir-infos{max-height:calc(100vh - 16px);border-radius:15px}.tete-voir-infos{gap:11px;padding:14px}.icon-tete-voir-infos{width:43px;height:43px;border-radius:11px;font-size:18px}.title_voir-infos{font-size:16px}.first-inf-voir-infos>span:last-child{font-size:11px}.voir-infos-footer{padding:0 14px 12px}.btn-close-card{height:35px;font-size:12px}.form-container-voir-infos{padding:11px}.voir-infos-header{gap:18px;margin-bottom:14px;padding:15px;border-radius:15px}.voir-infos-profile{align-items:flex-start;gap:13px}.voir-infos-avatar{width:72px;height:72px;border-radius:16px}.voir-infos-avatar img{width:53px;height:53px}.voir-badge-active{right:-5px;bottom:3px;padding:4px 7px;font-size:9px}.blaze-voir-infos{flex-direction:column;align-items:flex-start;gap:2px}.blaze-voir-infos span{font-size:20px}.blaze-voir-infos span+span:before{display:none}.class-ann-voir-infos{flex-direction:column;align-items:flex-start;gap:5px;font-size:11px}.first-ligne{grid-template-columns:1fr}.ligne-voir-infos,.ligne-voir-infos:nth-child(n){padding:12px 0;border-right:none;border-top:1px solid #f0f2f6}.ligne-voir-infos:first-child{border-top:none}.info-card-voir-infos,.parent-card-voir-infos{border-radius:15px}.info-card-voir-infos h3,.parent-card-voir-infos h3{padding:14px 15px;font-size:13px}.titan-first{padding:2px 15px 10px}.first-parent{min-height:auto;padding:13px 15px}.parent-droite{width:65px;height:65px;border-radius:14px}.parent-droite img{width:53px;height:53px}.ligne-parent2 strong{max-width:130px;font-size:11px}}@media (max-width: 400px){.voir-infos-profile{gap:10px}.voir-infos-avatar{width:62px;height:62px}.voir-infos-avatar img{width:46px;height:46px}.blaze-voir-infos span{font-size:18px}.parent-droite{width:55px;height:55px}.parent-droite img{width:45px;height:45px}}.main-content-devoir{padding:15px}.surveillance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.surveillance-kicker{display:inline-block;font-size:10px;font-weight:800;letter-spacing:1.5px;color:#2575fc;margin-bottom:6px}.titre-indication{margin:0;font-size:26px;font-weight:800;color:#111827;line-height:1.25}.surveillance-subtitle{margin:7px 0 0;color:#64748b;font-size:13px;line-height:1.5}.devoir-rapport{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin-bottom:25px}.rapport-card{min-width:0;background:#fff;border:1px solid #edf0f4;border-radius:16px;padding:17px;display:flex;align-items:center;gap:13px;box-shadow:0 5px 20px #0f172a0d;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;box-sizing:border-box}.rapport-card:hover{transform:translateY(-3px);border-color:#dfe7f2;box-shadow:0 10px 25px #0f172a14}.rapport-icon{flex-shrink:0;width:43px;height:43px;border-radius:12px;background:#f1f5ff;display:flex;align-items:center;justify-content:center;font-size:19px}.rapport-card>div{min-width:0}.rapport-card small{display:block;color:#777;font-size:11px;margin-bottom:3px;white-space:nowrap}.rapport-card strong{display:block;font-size:23px;color:#222;line-height:1.1}.devoir-filters{background:#fff;border:1px solid #edf0f4;border-radius:18px;padding:20px;margin-bottom:20px;box-shadow:0 5px 20px #0f172a0a;box-sizing:border-box}.filter-title{display:flex;align-items:center;gap:10px;margin-bottom:18px}.filter-title>span{flex-shrink:0;width:40px;height:40px;border-radius:11px;background:#f2f6ff;display:flex;align-items:center;justify-content:center;font-size:18px}.filter-title strong{display:block;font-size:14px;font-weight:800;color:#1f2937}.filter-title small{display:block;color:#888;font-size:10px;margin-top:3px}.filter-grid{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(180px,1fr) minmax(180px,1fr) auto;gap:14px;align-items:end}.filter-group{min-width:0;display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:11px;font-weight:700;color:#555}.filter-group select{width:100%;height:42px;min-width:0;border:1px solid #e1e5eb;border-radius:10px;padding:0 12px;outline:none;background:#09131d;color:#0c0c0c;font-size:12px;font-weight:600;cursor:pointer;box-sizing:border-box;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.filter-group select:hover{border-color:#cbd5e1;background:#fff}.filter-group select:focus{border-color:#2575fc;background:#fff;box-shadow:0 0 0 3px #2575fc1a}.filter-group select:disabled{cursor:not-allowed;background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0}.btn-reset-filters{height:42px;border:1px solid #e2e8f0;border-radius:10px;padding:0 16px;background:#f8fafc;color:#475569;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .2s ease,border-color .2s ease,transform .2s ease}.btn-reset-filters:hover{background:#eef2f7;border-color:#d8dee8;transform:translateY(-1px)}.btn-reset-filters:active{transform:translateY(0)}.prof-selection-info{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#f5f8ff,#fff);border:1px solid #dfe8ff;border-radius:15px;padding:13px 16px;margin-bottom:20px;box-sizing:border-box;animation:profSelectionIn .2s ease}.prof-avatar{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:#e8efff;display:flex;align-items:center;justify-content:center;font-size:19px}.prof-selection-info>div:last-child{min-width:0}.prof-selection-info small{display:block;font-size:10px;color:#777;margin-bottom:3px}.prof-selection-info strong{display:block;color:#222;font-size:14px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.devoirs-section{width:100%}.devoirs-section-header{display:flex;justify-content:space-between;align-items:center;margin:20px 0 12px}.devoirs-section-header h3{margin:0;font-size:18px;font-weight:800;color:#1f2937}.devoirs-section-header span{display:block;margin-top:4px;color:#888;font-size:11px}.devoirs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;width:100%;margin-top:18px}.devoir-card{position:relative;min-width:0;background:#fff;border-radius:18px;padding:20px;border:1px solid #e8edf3;box-shadow:0 5px 18px #0f172a0f;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;overflow:hidden;box-sizing:border-box}.devoir-card:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:#60be3e}.devoir-card:hover{transform:translateY(-4px);border-color:#dbe5ef;box-shadow:0 12px 30px #0f172a1a}.devoir-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.devoir-title-wrapper{min-width:0;flex:1}.devoir-small-label{display:block;color:#2575fc;font-size:10px;font-weight:800;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.devoir-header h3{margin:0;font-size:17px;font-weight:800;color:#111827;line-height:1.35;overflow-wrap:anywhere}.badge{flex-shrink:0;padding:5px 10px;border-radius:20px;font-size:10px;font-weight:800;text-transform:capitalize;letter-spacing:.2px;white-space:nowrap}.badge.exercice{background:#eff6ff;color:#2563eb}.badge.devoir{background:#fff7ed;color:#ea580c}.devoir-body{min-width:0}.description-box{background:#fafbfc;border:1px solid #f0f2f5;border-radius:11px;padding:11px 12px}.description-box>span{display:block;color:#94a3b8;font-size:9px;font-weight:800;letter-spacing:.7px;margin-bottom:6px}.description{color:#64748b;font-size:13px;line-height:1.6;min-height:42px;margin:0;overflow-wrap:anywhere}.infos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.info-item{min-width:0;background:#f8fafc;border-radius:9px;padding:9px 10px;display:flex;align-items:flex-start;gap:8px;box-sizing:border-box}.info-icon{flex-shrink:0;font-size:15px;line-height:1.2}.info-item>div{min-width:0}.info-item small{display:block;color:#94a3b8;font-size:9px;margin-bottom:3px}.info-item strong{display:block;color:#334155;font-size:11px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.info-item.deadline{background:#fff7ed}.info-item.deadline strong{color:#c2410c}.file-link{display:flex;align-items:center;gap:9px;width:100%;margin-top:15px;padding:11px 12px;box-sizing:border-box;border:1px solid #dbeafe;border-radius:11px;background:#f8fbff;color:#2563eb;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}.file-link:hover{background:#eff6ff;border-color:#bfdbfe;transform:translateY(-1px)}.file-link>span:first-child{flex-shrink:0;font-size:17px}.file-link>div{min-width:0;flex:1}.file-link strong{display:block;font-size:11px;color:#2563eb}.file-link small{display:block;margin-top:2px;font-size:9px;color:#64748b}.file-arrow{flex-shrink:0;font-size:17px;font-weight:800}.devoir-consultation-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px;padding-top:13px;border-top:1px solid #eef2f7;color:#94a3b8;font-size:10px}.devoir-consultation-footer span{min-width:0}.devoir-consultation-footer span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.devoir-consultation-footer span:last-child{flex-shrink:0}.empty-devoirs{background:#fff;border:1px dashed #dfe3e8;border-radius:18px;padding:55px 20px;text-align:center;box-sizing:border-box}.empty-icon{width:60px;height:60px;margin:0 auto 12px;border-radius:50%;background:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:28px}.empty-devoirs h3{margin:0 0 6px;color:#333;font-size:17px}.empty-devoirs p{max-width:450px;margin:0 auto;color:#888;font-size:13px;line-height:1.5}@keyframes profSelectionIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.main-content-devoir .form-groupAA{display:flex;flex-direction:column;gap:7px}.main-content-devoir .form-groupAA label{font-size:12px;font-weight:700;color:#374151}.main-content-devoir .form-groupAA select,.main-content-devoir .form-groupAA input,.main-content-devoir .form-groupAA textarea{background:#f8fafc;outline:none;color:#1f2937;font-weight:600;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;box-sizing:border-box;transition:all .2s ease}.main-content-devoir .form-groupAA select:focus,.main-content-devoir .form-groupAA input:focus,.main-content-devoir .form-groupAA textarea:focus{border-color:#60a5fa;background:#fff;box-shadow:0 0 0 3px #60a5fa1f}.team-groupKK{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;width:100%;margin-bottom:20px}.team-groupKK .form-groupAA{width:100%;margin-top:0}.team-groupKK .form-groupAA .uhuhuhu{width:100%;min-height:42px;font-size:13px;border:1px solid #e2e8f0;border-radius:11px;background:#fff;color:#1f2937;padding:9px 12px;box-sizing:border-box}.team-groupKK .form-groupAA textarea{width:100%;min-height:90px;resize:vertical;font-size:13px}.pernd{display:flex;flex-direction:column;gap:15px}.btn-devoir{width:auto;min-width:150px;border:none;border-radius:11px;padding:11px 20px;background:linear-gradient(135deg,#60be3e,#45a82a);color:#fff;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 5px 15px #45a82a38;transition:all .2s ease}.btn-devoir:hover{transform:translateY(-2px);box-shadow:0 8px 20px #45a82a47}.btn-devoir:active{transform:translateY(0)}.main-content-devoir .modal-overlay{position:fixed;inset:0;background:#0f172a99;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999;animation:modalOverlay .2s ease}.main-content-devoir .modal-content{position:relative;width:100%;max-width:680px;display:flex;flex-direction:column;background:#fff;border-radius:22px;padding:25px;max-height:90vh;overflow-y:auto;box-sizing:border-box;box-shadow:0 25px 60px #0003;animation:modalOpen .25s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eef2f7}.modal-header h2,.modal-header h3{margin:0;font-size:20px;font-weight:800;color:#111827}.close-btn{border:none;background:#f1f5f9;color:#475569;position:absolute;right:15px;top:15px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:19px;cursor:pointer;transition:all .2s ease}.close-btn:hover{background:#fee2e2;color:#dc2626;transform:rotate(90deg)}.modal-confirm{background:#fff;width:400px;max-width:100%;border-radius:20px;padding:28px;text-align:center;box-shadow:0 25px 60px #0003;box-sizing:border-box}.modal-confirm h3{margin:0 0 10px;font-size:19px;color:#111827}.modal-confirm p{color:#64748b;font-size:13px;line-height:1.5;margin-bottom:22px}.confirm-actions{display:flex;justify-content:center;gap:10px}.btn-cancel{border:1px solid #e2e8f0;background:#f8fafc;color:#475569;padding:10px 20px;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;transition:.2s ease}.btn-cancel:hover{background:#f1f5f9}.btn-confirm-delete{border:none;background:#dc2626;color:#fff;padding:10px 20px;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;transition:.2s ease;box-shadow:0 4px 12px #dc262633}.btn-confirm-delete:hover{background:#b91c1c;transform:translateY(-1px)}.main-content-devoir .modal-content::-webkit-scrollbar{width:6px}.main-content-devoir .modal-content::-webkit-scrollbar-track{background:transparent}.main-content-devoir .modal-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}@keyframes modalOpen{0%{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media screen and (max-width: 1100px){.devoir-rapport{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.btn-reset-filters{width:100%}}@media screen and (max-width: 700px){.main-content-devoir{padding:15px}.surveillance-header{margin-bottom:20px}.titre-indication{font-size:22px}.devoir-rapport{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rapport-card{padding:14px}.rapport-icon{width:39px;height:39px;font-size:17px}.rapport-card strong{font-size:20px}.filter-grid,.devoirs-grid{grid-template-columns:1fr}.main-content-devoir .modal-content{max-width:95%;padding:20px;border-radius:18px}.team-groupKK{grid-template-columns:1fr}}@media screen and (max-width: 468px){.main-content-devoir,.surveillance-devoirs{padding:10px}.surveillance-header{margin-bottom:17px}.surveillance-kicker{font-size:9px}.titre-indication{font-size:19px}.surveillance-subtitle{font-size:12px}.devoir-rapport{grid-template-columns:1fr;gap:9px}.rapport-card{padding:13px}.devoir-filters{padding:15px;border-radius:15px}.filter-title{margin-bottom:15px}.filter-title>span{width:36px;height:36px}.filter-group select,.btn-reset-filters{height:43px}.prof-selection-info{padding:12px}.prof-avatar{width:38px;height:38px}.devoirs-section-header{margin-top:16px}.devoirs-section-header h3{font-size:16px}.devoir-card{padding:16px;border-radius:15px}.devoir-header{gap:8px}.devoir-header h3{font-size:15px}.devoir-small-label{font-size:9px}.badge{padding:5px 8px;font-size:9px}.description{font-size:12px}.infos{grid-template-columns:1fr}.info-item{padding:9px}.devoir-consultation-footer{font-size:9px}.empty-devoirs{padding:40px 15px}.empty-icon{width:52px;height:52px;font-size:24px}.main-content-devoir .modal-overlay{padding:10px}.main-content-devoir .modal-content{width:100%;max-width:none;max-height:94vh;padding:17px;border-radius:17px}.modal-header{margin-bottom:15px}.modal-header h2,.modal-header h3{font-size:17px}.modal-confirm{width:100%;padding:22px;border-radius:17px}.confirm-actions{flex-direction:column}.btn-cancel,.btn-confirm-delete{width:100%}}@media screen and (max-width: 350px){.main-content-devoir{padding:8px}.devoir-filters{padding:12px}.devoir-card{padding:14px}.devoir-header{flex-direction:column}.badge{align-self:flex-start}.prof-selection-info{align-items:flex-start}}.niveau-grid{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px;margin-top:20px}.niveau-card{border:1px solid #ffffff00;border-radius:12px;padding:12px;background:#fff3;transition:.2s ease}.niveau-card label{display:flex;justify-content:center;align-items:center;font-weight:600;cursor:pointer;padding:0 10px}.classes-row{display:flex;gap:8px;margin-top:12px}.classes-row.disabled{opacity:.4;pointer-events:none;filter:grayscale(1)}.classe-box{padding:6px 10px;border-radius:8px;border:1px solid #ccc;cursor:pointer;font-size:13px;background:#a42d2d;transition:.2s ease}.classe-box:hover{border-color:#4f46e5}.classe-box.active{background:#319a56;color:#fff;border-color:#fff}input[type=file]{display:block;margin:8px 0 15px;padding:8px;border:1px dashed #bbb;border-radius:8px;background:#f9f9f9;width:100%}form{display:flex;flex-direction:column;gap:12px}input[type=text],textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;outline:none;font-size:14px}textarea{min-height:100px;resize:vertical}button{padding:10px 14px;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:.2s}button[type=submit]{background:#4f46e5;color:#fff}button[type=submit]:hover{background:#4338ca}button[type=button]{background:#e5e7eb;color:#111}button[type=button]:hover{background:#d1d5db}.all-classes{display:flex;gap:25px}.gauche,.droite{flex:1}@media (max-width: 900px){.all-classes{flex-direction:column}.niveau-grid{grid-template-columns:1fr}}.confirm-modal{max-width:400px;text-align:center}.confirm-modal h3{margin-bottom:10px}.confirm-modal p{margin-bottom:20px;color:#555}.image-upload-box{display:flex;flex-direction:column;gap:10px}.preview-image{width:100%;height:160px;-o-object-fit:cover;object-fit:cover;border-radius:12px;border:1px solid #ddd}.infos-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.btn-add-info{background:#4f46e5;color:#fff;border:none;padding:12px 18px;border-radius:10px;cursor:pointer;font-weight:600}*{font-family:Inter,sans-serif}.infos-grid{display:flex;gap:8px;justify-content:space-around;padding:10px;flex-wrap:wrap}.info-card{width:49%;background:#fff;border:1px solid #e7edf5;border-radius:26px;overflow:hidden;box-shadow:0 18px 45px #0f172a14;transition:.3s}.info-card:hover{transform:translateY(-8px)}.info-gallery{display:grid;gap:8px;align-items:end;padding:14px;background:#f8fafc}.count-1,.count-2,.count-3{grid-template-columns:1fr 1fr 1fr}.info-gallery img{width:100%;-o-object-fit:cover;object-fit:cover;border-radius:16px}.info-content{padding:10px}.niv-classe{display:flex;width:100%;text-align:center}.niv-classe .info-section:nth-child(1){display:flex;flex-direction:column;width:43%}.niv-classe .info-section:nth-child(2){display:flex;flex-direction:column;width:55%}.info-content h2{margin:0;color:#172554;font-size:20px}.info-content p{color:#475569;line-height:1.8;white-space:pre-wrap}.info-section{margin-top:22px}.info-section h4{margin:0 0 10px;color:#1e293b;font-size:12px}.info-section h4 i{color:#2563eb;margin-right:8px}.chips{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}.chips span{background:#eef4ff;color:#2563eb;padding:4px 8px;border-radius:999px;font-weight:600;font-size:13px}.chips.secondary span{background:#eefbf2;color:#15803d}.info-actions{display:flex;justify-content:flex-end;gap:14px;padding:22px;border-top:1px solid #eef2f7}.btn-edit,.btn-delete{border:none;border-radius:14px;padding:12px 18px;font-weight:600;cursor:pointer}.btn-edit{background:#fff;border:1px solid #cbd5e1;color:#2563eb}.btn-delete{background:#ef4444;color:#fff}.btn-edit:hover{background:#eff6ff}.btn-delete:hover{background:#dc2626}@media (max-width:768px){.infos-grid,.count-3{grid-template-columns:1fr}.info-gallery img{height:180px}.info-actions{flex-direction:column}.btn-edit,.btn-delete{width:100%}}.info-images{display:flex;gap:10px;overflow-x:auto}.info-images img{width:100px;height:100px;-o-object-fit:cover;object-fit:cover;border-radius:10px}.info-niveaux,.info-classes{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.info-niveaux span{background:#eef2ff;color:#4f46e5;padding:5px 10px;border-radius:20px;font-size:12px}.info-classes span{background:#f3f4f6;color:#000;padding:5px 10px;border-radius:20px;font-size:12px}.info-actions{display:flex;gap:10px;margin-top:15px}.btn-edit{background:#f59e0b;color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer}.btn-delete{background:#ef4444;color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer}.main-content-info .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:999}.main-content-info .modal-content{position:relative;display:flex;justify-content:center;flex-direction:column;background:#bababa;width:50%;height:95vh;overflow-x:auto;border-radius:20px;padding:15px}.modal-header{text-align:center;display:flex;justify-content:center;align-items:center;margin-bottom:20px}.close-modal{background:none;border:none;font-size:22px;cursor:pointer}.main-content-info .modal-content form{display:flex;flex-direction:column;gap:15px;justify-content:center;align-items:center}.form-groupI{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%}.main-content-info .modal-content .titrééé{width:50%;padding:12px;border:1px solid #ffffff;border-radius:10px;background-color:#5f5e5e;color:#fff}.modal-content textarea.yyoo{width:80%;padding:12px;border:1px solid #ffffff;border-radius:10px;background-color:#5f5e5e;color:#fff}.main-content-info .modal-content input,.main-content-info .modal-content select{width:100%;padding:12px;border:1px solid #ffffff;border-radius:10px;background-color:#5f5e5e;color:#fff}.main-content-info .modal-content textarea{min-height:120px}.images-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.modal-actions{display:flex;gap:10px;margin-top:20px}.btn-save{background:#4f46e5;color:#fff;border:none;padding:12px 18px;border-radius:10px}.btn-cancel{background:#e5e7eb;border:none;padding:12px 18px;border-radius:10px}@media (max-width:768px){.infos-top{flex-direction:column;align-items:stretch}.images-grid{grid-template-columns:1fr}.main-content-info .modal-content{width:95%;padding:15px}}.main-content-sanctions{padding:25px 30px 40px;overflow-y:auto;overflow-x:hidden;background:linear-gradient(135deg,#f4f7fb,#eef3f9,#e9eef5);box-sizing:border-box}.sanctions-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}.sanctions-header>div{min-width:0}.sanctions-kicker{display:inline-block;font-size:12px;font-weight:800;letter-spacing:1.5px;color:#667085;margin-bottom:6px}.sanctions-header .titre-indication{margin:0;color:#182230;font-size:32px;font-weight:800;text-align:left}.sanctions-header p{margin:8px 0 0;color:#667085;font-size:15px;line-height:1.5;max-width:700px}.btn-add-sanction{flex-shrink:0;border:none;border-radius:12px;padding:13px 20px;background:#1769e0;color:#fff;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 6px 18px #1769e038;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-add-sanction:hover{background:#125bc4;transform:translateY(-2px);box-shadow:0 9px 24px #1769e047}.btn-add-sanction:active{transform:translateY(0)}.sanctions-rapport{width:100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px;margin-bottom:25px}.rapport-card{min-width:0;display:flex;align-items:center;gap:12px;padding:17px;background:#fff;border:1px solid #e6eaf0;border-radius:15px;box-shadow:0 4px 14px #1018280d;transition:transform .2s ease,box-shadow .2s ease}.rapport-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #10182814}.rapport-card>span{width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#eef4ff;font-size:20px}.rapport-card div{min-width:0;display:flex;flex-direction:column;gap:3px}.rapport-card small{color:#667085;font-size:11px;font-weight:600;white-space:nowrap}.rapport-card strong{color:#182230;font-size:23px;font-weight:800;line-height:1}.sanctions-filters{width:100%;padding:20px;margin-bottom:25px;background:#fff;border:1px solid #e6eaf0;border-radius:17px;box-shadow:0 5px 18px #1018280d;box-sizing:border-box}.filters-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #edf0f4}.filters-header>div{display:flex;flex-direction:column;gap:4px}.filters-header strong{color:#182230;font-size:17px;font-weight:800}.filters-header small{color:#667085;font-size:13px}.btn-reset-sanctions{flex-shrink:0;border:1px solid #d8dee8;background:#fff;color:#475467;border-radius:10px;padding:9px 14px;font-size:13px;font-weight:700;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.btn-reset-sanctions:hover{background:#f5f7fa;border-color:#b9c1cd;transform:translateY(-1px)}.sanctions-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px}.sanctions-filter-grid .form-group{min-width:0;display:flex;flex-direction:column;gap:7px}.sanctions-filter-grid .form-group label{color:#344054;font-size:12px;font-weight:700}.sanctions-filter-grid .form-group select{width:100%;height:42px;padding:0 12px;border:1px solid #d9dee7;border-radius:10px;background:#fff;color:#344054;font-size:13px;outline:none;cursor:pointer;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.sanctions-filter-grid .form-group select:hover{border-color:#aeb8c7}.sanctions-filter-grid .form-group select:focus{border-color:#1769e0;box-shadow:0 0 0 3px #1769e01a}.mes-sanctions-checkbox{min-height:42px;grid-column:span 2;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid #d9dee7;border-radius:10px;background:#f8fafc;color:#344054;font-size:13px;font-weight:700;cursor:pointer;box-sizing:border-box}.mes-sanctions-checkbox input{width:17px;height:17px;margin:0;accent-color:#1769e0;cursor:pointer}.sanctions-list-section{width:100%;margin-bottom:30px}.sanctions-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.sanctions-list-header>div{display:flex;align-items:baseline;gap:10px}.sanctions-list-header h3{margin:0;color:#182230;font-size:21px;font-weight:800}.sanctions-list-header span{color:#667085;font-size:13px}.sanctions-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;box-sizing:border-box}.sanction-card{min-width:0;position:relative;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e5e9ef;border-radius:17px;box-shadow:0 5px 18px #1018280f;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.sanction-card:hover{transform:translateY(-4px);border-color:#d4dbe5;box-shadow:0 12px 28px #1018281a}.sanction-card.ma-sanction{border-color:#b9d3ff}.sanction-card.ma-sanction:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#1769e0}.sanction-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 14px;border-bottom:1px solid #edf0f4}.sanction-card-header>div{min-width:0}.sanction-eleve{display:block;color:#1769e0;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sanction-card-header h3{margin:5px 0 0;color:#182230;font-size:17px;font-weight:800;line-height:1.25}.sanction-type-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.sanction-type-badge.type-avertissement{background:#fff4d6;color:#9a6700}.sanction-type-badge.type-retenue{background:#e8f1ff;color:#1769e0}.sanction-type-badge.type-exclusion_temporaire{background:#fff0e8;color:#c2410c}.sanction-type-badge.type-exclusion_definitive{background:#ffe7e7;color:#c62828}.sanction-type-badge.type-autre{background:#eef0f3;color:#475467}.sanction-card-body{padding:16px 18px;display:flex;flex-direction:column;gap:11px;flex:1}.sanction-info{display:flex;align-items:center;justify-content:space-between;gap:12px}.sanction-info>span{flex-shrink:0;color:#667085;font-size:12px;font-weight:600}.sanction-info strong{min-width:0;color:#344054;font-size:12px;font-weight:700;text-align:right;overflow-wrap:anywhere}.moi-badge{display:inline-block;margin-left:7px;padding:3px 6px;border-radius:999px;background:#e8f1ff;color:#1769e0;font-size:9px;font-weight:800;vertical-align:middle}.sanction-description{margin-top:4px;padding-top:12px;border-top:1px dashed #dfe4eb}.sanction-description>span{display:block;margin-bottom:5px;color:#667085;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.sanction-description p{margin:0;color:#475467;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.sanction-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 18px 18px}.sanction-actions button{width:100%;border:none;padding:10px 8px;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.sanction-actions button:hover{transform:translateY(-1px);opacity:.92}.btn-edit-sanction{background:#e8f1ff;color:#1769e0}.btn-delete-sanction{background:#ffeaea;color:#d92d20}.empty-sanctions{width:100%;padding:60px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;border:1px dashed #d7dde6;border-radius:17px;box-sizing:border-box}.empty-sanctions>div{width:60px;height:60px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;border-radius:50%;background:#f2f4f7;font-size:27px}.empty-sanctions h3{margin:0 0 6px;color:#344054;font-size:17px}.empty-sanctions p{margin:0;color:#667085;font-size:13px}.sanction-modal-overlay{position:fixed;z-index:2000;inset:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a94;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);box-sizing:border-box;animation:sanctionOverlayIn .2s ease}@keyframes sanctionOverlayIn{0%{opacity:0}to{opacity:1}}.sanction-modal{width:100%;max-width:520px;max-height:calc(100vh - 40px);overflow-y:auto;background:#fff;border-radius:20px;box-shadow:0 25px 70px #00000038;animation:sanctionModalIn .25s ease;box-sizing:border-box}@keyframes sanctionModalIn{0%{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.sanction-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:20px;background:#f8fafc;border-bottom:1px solid #e7ebf0;border-radius:20px 20px 0 0}.sanction-modal-header span{color:#1769e0;font-size:10px;font-weight:800;letter-spacing:1px}.sanction-modal-header h3{margin:5px 0 0;color:#182230;font-size:21px;font-weight:800}.close-sanction-modal{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:9px;background:#eef1f5;color:#475467;font-size:22px;line-height:1;cursor:pointer;transition:background .2s ease,transform .2s ease}.close-sanction-modal:hover{background:#e1e5ea;transform:rotate(5deg)}.sanction-form{padding:20px;display:flex;flex-direction:column;gap:15px}.sanction-form .form-group{display:flex;flex-direction:column;gap:7px}.sanction-form .form-group label{color:#344054;font-size:12px;font-weight:800}.sanction-form .form-group select,.sanction-form .form-group textarea{width:100%;border:1px solid #d9dee7;border-radius:10px;background:#fff;color:#344054;font-size:14px;outline:none;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.sanction-form .form-group select{height:43px;padding:0 12px;cursor:pointer}.sanction-form .form-group textarea{min-height:110px;padding:11px 12px;resize:vertical;line-height:1.5}.sanction-form .form-group select:focus,.sanction-form .form-group textarea:focus{border-color:#1769e0;box-shadow:0 0 0 3px #1769e01a}.sanction-form-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:5px}.btn-cancel-sanction,.btn-save-sanction{min-height:43px;border:none;border-radius:10px;padding:10px 15px;font-size:13px;font-weight:800;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.btn-cancel-sanction{background:#eef1f5;color:#475467}.btn-save-sanction{background:#1769e0;color:#fff;box-shadow:0 5px 14px #1769e033}.btn-cancel-sanction:hover,.btn-save-sanction:hover{transform:translateY(-1px);opacity:.92}.sanction-message{margin:0;padding:10px 12px;border-radius:9px;background:#f0f7ff;color:#1769e0;font-size:12px;font-weight:700;text-align:center}.sanction-confirm{width:100%;max-width:390px;padding:25px;background:#fff;border-radius:20px;text-align:center;box-shadow:0 25px 70px #00000038;box-sizing:border-box;animation:sanctionModalIn .25s ease}.confirm-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;margin:0 auto 15px;border-radius:50%;background:#fff4d6;font-size:28px}.sanction-confirm h3{margin:0 0 8px;color:#182230;font-size:19px}.sanction-confirm p{margin:0;color:#667085;font-size:13px;line-height:1.5}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.btn-delete-confirm{min-height:43px;border:none;border-radius:10px;background:#d92d20;color:#fff;font-size:13px;font-weight:800;cursor:pointer;transition:background .2s ease,transform .2s ease}.btn-delete-confirm:hover{background:#b42318;transform:translateY(-1px)}.main-content-sanctions::-webkit-scrollbar,.sanction-modal::-webkit-scrollbar{width:7px}.main-content-sanctions::-webkit-scrollbar-track,.sanction-modal::-webkit-scrollbar-track{background:transparent}.main-content-sanctions::-webkit-scrollbar-thumb,.sanction-modal::-webkit-scrollbar-thumb{background:#cbd2dc;border-radius:20px}.main-content-sanctions::-webkit-scrollbar-thumb:hover,.sanction-modal::-webkit-scrollbar-thumb:hover{background:#aeb7c4}@media screen and (max-width: 1200px){.main-content-sanctions{left:160px;padding:22px}.sanctions-rapport,.sanctions-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mes-sanctions-checkbox{grid-column:span 3}.sanctions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media screen and (max-width: 768px){.main-content-sanctions{position:relative;inset:auto;width:100%;min-height:calc(100vh - 60px);padding:15px 12px 30px;overflow-y:auto}.sanctions-header{flex-direction:column;align-items:stretch;gap:15px;margin-bottom:18px}.sanctions-header .titre-indication{font-size:25px;text-align:left}.sanctions-header p{font-size:13px}.btn-add-sanction{width:100%;padding:12px}.sanctions-rapport{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:15px}.rapport-card{padding:12px;gap:9px;border-radius:12px}.rapport-card>span{width:35px;height:35px;font-size:17px}.rapport-card small{font-size:9px}.rapport-card strong{font-size:19px}.sanctions-filters{padding:14px;border-radius:13px;margin-bottom:18px}.filters-header{align-items:flex-start;margin-bottom:15px}.filters-header strong{font-size:15px}.filters-header small{font-size:11px}.btn-reset-sanctions{padding:8px 10px;font-size:11px}.sanctions-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sanctions-filter-grid .form-group select{height:40px;padding:0 8px;font-size:11px}.sanctions-filter-grid .form-group label{font-size:10px}.mes-sanctions-checkbox{grid-column:span 2;min-height:40px;padding:0 9px;font-size:11px}.sanctions-list-header{margin-bottom:12px}.sanctions-list-header h3{font-size:18px}.sanctions-list-header span{font-size:11px}.sanctions-grid{grid-template-columns:1fr;gap:12px}.sanction-card{border-radius:14px}.sanction-card-header{padding:15px 14px 12px}.sanction-eleve{font-size:10px}.sanction-card-header h3{font-size:15px}.sanction-type-badge{max-width:120px;padding:5px 7px;font-size:9px;white-space:normal;text-align:center}.sanction-card-body{padding:13px 14px;gap:10px}.sanction-info>span{font-size:10px}.sanction-info strong{font-size:11px}.sanction-description p{font-size:12px}.sanction-actions{padding:0 14px 14px;gap:7px}.sanction-actions button{padding:9px 5px;font-size:11px}.empty-sanctions{padding:45px 15px}.sanction-modal-overlay{padding:12px}.sanction-modal{max-height:calc(100vh - 24px);border-radius:16px}.sanction-modal-header{padding:16px;border-radius:16px 16px 0 0}.sanction-modal-header h3{font-size:18px}.sanction-form{padding:16px;gap:13px}.sanction-form .form-group select{height:42px;font-size:13px}.sanction-form .form-group textarea{min-height:100px;font-size:13px}.sanction-confirm{padding:20px;border-radius:16px}}@media screen and (max-width: 420px){.main-content-sanctions{padding:12px 9px 25px}.sanctions-header .titre-indication{font-size:22px}.sanctions-filter-grid{grid-template-columns:1fr}.mes-sanctions-checkbox{grid-column:span 1}.rapport-card{min-height:65px}.rapport-card>span{width:31px;height:31px;font-size:15px}.rapport-card strong{font-size:17px}.filters-header{flex-direction:column}.btn-reset-sanctions{width:100%}.sanction-form-actions,.confirm-actions{grid-template-columns:1fr}}.main-content-notes-admin{position:absolute;inset:70px 0 0 180px;width:auto;min-height:calc(100vh - 70px);padding:28px 32px 50px;background:linear-gradient(135deg,#f4f7fb,#eef3f9,#f8fafc);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;color:#172033;font-family:Poppins,Segoe UI,Arial,sans-serif}.admin-notes-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px;padding:28px 30px;background:#fff;border:1px solid #e5eaf1;border-radius:18px;box-shadow:0 8px 30px #1f2d3d12;box-sizing:border-box}.admin-notes-header>div:first-child{min-width:0}.admin-eyebrow{display:inline-block;margin-bottom:7px;color:#2563eb;font-size:12px;font-weight:800;letter-spacing:1.5px}.admin-notes-header h1{margin:0;color:#172033;font-size:30px;font-weight:800;line-height:1.2}.admin-notes-header p{margin:8px 0 0;color:#718096;font-size:14px;line-height:1.6}.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.btn-refresh,.btn-reset{height:42px;padding:0 18px;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap}.btn-refresh{color:#fff;border:none;background:#2563eb;box-shadow:0 5px 14px #2563eb38}.btn-refresh:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 7px 18px #2563eb47}.btn-reset{color:#475569;border:1px solid #dbe2ea;background:#fff}.btn-reset:hover{background:#f8fafc;border-color:#cbd5e1}.btn-refresh:disabled{opacity:.6;cursor:not-allowed;transform:none}.admin-message{width:100%;margin-bottom:20px;padding:13px 17px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:12px;font-size:14px;font-weight:600;box-sizing:border-box}.rapport-section,.filters-section,.notes-list-section{width:100%;margin-bottom:25px;padding:25px;background:#fff;border:1px solid #e5eaf1;border-radius:18px;box-shadow:0 7px 25px #1f2d3d0e;box-sizing:border-box}.section-title{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.section-title h2{margin:0;color:#172033;font-size:19px;font-weight:800}.section-title p{margin:5px 0 0;color:#8490a3;font-size:13px}.loading-small{color:#2563eb;font-size:13px;font-weight:700}.rapport-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.rapport-card{min-height:105px;display:flex;align-items:center;gap:14px;padding:17px;background:#f8fafc;border:1px solid #e8edf3;border-radius:14px;box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.rapport-card:hover{transform:translateY(-2px);border-color:#d8e2f0;box-shadow:0 8px 20px #1e293b12}.rapport-card-icon{width:46px;height:46px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#eff6ff;font-size:21px}.rapport-card span{display:block;margin-bottom:5px;color:#7b8798;font-size:12px;font-weight:600}.rapport-card strong{display:block;color:#172033;font-size:23px;font-weight:800}.rapport-main{background:linear-gradient(135deg,#eff6ff,#f8fbff);border-color:#dbeafe}.rapport-main .rapport-card-icon{background:#dbeafe}.filters-section{position:relative}.filters-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.filter-group{min-width:0;display:flex;flex-direction:column;gap:7px}.filter-group label{color:#334155;font-size:12px;font-weight:750}.filter-group select,.filter-group input{width:100%;height:43px;padding:0 12px;color:#1e293b;background:#fff;border:1px solid #d8e0ea;border-radius:9px;outline:none;font-family:inherit;font-size:13px;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.filter-group select{cursor:pointer}.filter-group input::-moz-placeholder{color:#a4adba}.filter-group input::placeholder{color:#a4adba}.filter-group select:focus,.filter-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-group select:disabled{cursor:not-allowed;background:#f1f5f9;color:#94a3b8}.filters-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:20px;border-top:1px solid #edf1f5}.btn-apply,.btn-clear{min-height:42px;padding:0 19px;border-radius:9px;font-family:inherit;font-size:13px;font-weight:750;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-apply{color:#fff;border:none;background:#2563eb;box-shadow:0 5px 15px #2563eb33}.btn-apply:hover{background:#1d4ed8;transform:translateY(-1px)}.btn-apply:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-clear{color:#475569;background:#fff;border:1px solid #d7dee8}.btn-clear:hover{background:#f8fafc;border-color:#cbd5e1}.list-header{margin-bottom:20px}.list-summary{display:flex;align-items:center;gap:7px;padding:9px 13px;background:#f8fafc;border:1px solid #e7ecf2;border-radius:9px;white-space:nowrap}.list-summary span{color:#7b8798;font-size:12px}.list-summary strong{color:#2563eb;font-size:14px}.notes-loading{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#64748b;font-size:13px}.spinner{width:38px;height:38px;border:4px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:adminNotesSpin .8s linear infinite}@keyframes adminNotesSpin{to{transform:rotate(360deg)}}.empty-notes{min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.empty-icon{width:68px;height:68px;display:flex;align-items:center;justify-content:center;margin-bottom:15px;background:#f1f5f9;border-radius:50%;font-size:29px}.empty-notes h3{margin:0 0 7px;color:#334155;font-size:18px}.empty-notes p{margin:0 0 17px;color:#94a3b8;font-size:13px}.notes-table-wrapper{width:100%;overflow-x:auto;border:1px solid #e5eaf1;border-radius:13px;scrollbar-width:thin}.notes-table{width:100%;min-width:1250px;border-collapse:separate;border-spacing:0;background:#fff}.notes-table thead th{position:sticky;top:0;z-index:2;padding:14px 13px;color:#64748b;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:11px;font-weight:800;text-align:left;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.notes-table tbody td{padding:13px;color:#475569;border-bottom:1px solid #edf1f5;font-size:13px;vertical-align:middle;background:#fff}.notes-table tbody tr:last-child td{border-bottom:none}.notes-table tbody tr:hover td{background:#f8fbff}.student-cell{display:flex;align-items:center;gap:10px;min-width:170px}.student-avatar,.prof-avatar{width:35px;height:35px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#2563eb;background:#eff6ff;font-size:13px;font-weight:800}.student-cell strong{display:block;max-width:180px;overflow:hidden;color:#1e293b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.student-cell small{display:block;margin-top:2px;color:#94a3b8;font-size:10px}.prof-cell{display:flex;align-items:center;gap:8px;min-width:150px}.prof-avatar{width:30px;height:30px;font-size:11px;background:#f0fdf4;color:#16a34a}.prof-cell span{color:#475569;font-size:12px;font-weight:600;white-space:nowrap}.class-badge,.coef-badge,.scindage-badge,.note-badge{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:0 9px;border-radius:7px;font-size:11px;font-weight:750;white-space:nowrap}.class-badge{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.coef-badge{color:#7c3aed;background:#f5f3ff;border:1px solid #ddd6fe}.scindage-badge{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd}.note-badge{min-width:58px}.note-success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.note-danger{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.date-cell{display:inline-block;min-width:125px;color:#64748b;font-size:11px;line-height:1.5}.comment-cell{display:block;max-width:210px;overflow:hidden;color:#64748b;font-size:11px;line-height:1.45;text-overflow:ellipsis}.main-content-notes-admin::-webkit-scrollbar,.notes-table-wrapper::-webkit-scrollbar{width:7px;height:7px}.main-content-notes-admin::-webkit-scrollbar-track,.notes-table-wrapper::-webkit-scrollbar-track{background:#eef2f7}.main-content-notes-admin::-webkit-scrollbar-thumb,.notes-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.main-content-notes-admin::-webkit-scrollbar-thumb:hover,.notes-table-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media screen and (max-width: 1200px){.main-content-notes-admin{padding:22px 22px 40px}.rapport-grid,.filters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-notes-header h1{font-size:26px}}@media screen and (max-width: 950px){.main-content-notes-admin{left:0;top:70px;padding:18px 16px 35px}.admin-notes-header{align-items:flex-start;flex-direction:column;padding:22px}.header-actions{width:100%}.btn-refresh,.btn-reset{flex:1}.rapport-grid,.filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media screen and (max-width: 650px){.main-content-notes-admin{position:relative;inset:0 auto auto 0;width:100%;min-height:100vh;padding:15px 10px 35px}.admin-notes-header{margin-bottom:15px;padding:19px 16px;border-radius:14px}.admin-notes-header h1{font-size:23px}.admin-notes-header p{font-size:12px}.header-actions{flex-direction:column;gap:8px}.btn-refresh,.btn-reset{width:100%}.rapport-section,.filters-section,.notes-list-section{padding:17px 13px;margin-bottom:15px;border-radius:14px}.section-title{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:15px}.section-title h2{font-size:17px}.section-title p{font-size:11px}.rapport-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.rapport-card{min-height:88px;padding:11px;gap:9px;border-radius:11px}.rapport-card-icon{width:35px;height:35px;border-radius:9px;font-size:16px}.rapport-card span{font-size:9px}.rapport-card strong{font-size:18px}.filters-grid{grid-template-columns:1fr;gap:13px}.filter-group label{font-size:11px}.filter-group select,.filter-group input{height:42px;font-size:12px}.filters-actions{flex-direction:column;margin-top:17px;padding-top:15px}.btn-apply,.btn-clear{width:100%}.list-header{flex-direction:row;align-items:center}.list-summary{padding:7px 9px}.list-summary span{display:none}.list-summary strong{font-size:12px}.notes-table-wrapper{margin:0 -2px;border-radius:9px}.notes-table{min-width:1150px}.notes-table thead th{padding:11px 10px;font-size:10px}.notes-table tbody td{padding:10px;font-size:11px}.student-cell{min-width:155px}.student-avatar{width:31px;height:31px;font-size:11px}.student-cell strong{max-width:140px;font-size:11px}.prof-cell{min-width:135px}.prof-avatar{width:27px;height:27px}.class-badge,.coef-badge,.scindage-badge,.note-badge{min-height:24px;padding:0 7px;font-size:10px}.comment-cell{max-width:170px}.empty-notes{min-height:220px;padding:20px 10px}.empty-icon{width:57px;height:57px;font-size:24px}.empty-notes h3{font-size:16px}.empty-notes p{font-size:11px}}@media screen and (max-width: 400px){.main-content-notes-admin{padding-left:7px;padding-right:7px}.rapport-grid{gap:7px}.rapport-card{min-height:82px;padding:9px}.rapport-card-icon{width:31px;height:31px;font-size:14px}.rapport-card strong{font-size:16px}.rapport-card span{font-size:8px}.admin-notes-header{padding:16px 13px}.admin-notes-header h1{font-size:21px}}.btn-back{margin-top:18px;padding:11px 22px;border:none;border-radius:9px;background:#2563eb;color:#fff;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:.2s ease}.btn-back:hover{background:#1d4ed8;transform:translateY(-1px)}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid rgba(37,99,235,.18);outline-offset:1px}.permission-denied-page{min-height:100vh;display:flex!important;align-items:center;justify-content:center;padding:30px;box-sizing:border-box;background:#f5f7fb!important;color:#111827;position:relative}.permission-denied-card{width:min(500px,100%);padding:45px 35px;background:#fff!important;border:1px solid #e5e7eb;border-radius:20px;text-align:center;box-shadow:0 20px 60px #0000001f;box-sizing:border-box}.permission-denied-icon{width:75px;height:75px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#eff6ff;font-size:32px}.permission-denied-card h1{margin:0 0 12px;color:#111827;font-size:28px;font-weight:800}.permission-denied-card p{margin:0;color:#64748b;font-size:15px;line-height:1.6}.permission-loading{min-height:100vh;width:100%;display:flex!important;flex-direction:column;align-items:center;justify-content:center;background:#f5f7fb!important;color:#111827;position:relative;z-index:9999}.permission-loading p{margin-top:15px;color:#64748b;font-size:14px}.permission-loading .loader{width:42px;height:42px;border:4px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:permissionSpin .8s linear infinite}@keyframes permissionSpin{to{transform:rotate(360deg)}}:root{--presence-primary: #2563eb;--presence-primary-dark: #1d4ed8;--presence-primary-light: #eff6ff;--presence-success: #16a34a;--presence-success-light: #f0fdf4;--presence-danger: #dc2626;--presence-danger-light: #fef2f2;--presence-warning: #d97706;--presence-warning-light: #fffbeb;--presence-text: #172033;--presence-text-soft: #64748b;--presence-border: #e5e7eb;--presence-bg: #f6f8fc;--presence-white: #ffffff;--presence-radius: 14px;--presence-radius-small: 10px;--presence-shadow: 0 4px 16px rgba(15, 23, 42, .06);--presence-shadow-hover: 0 10px 30px rgba(15, 23, 42, .1)}.main-content-presences{padding:28px!important;background:var(--presence-bg);color:var(--presence-text)}.titre-indication{margin:0 0 24px;font-size:27px;line-height:1.2;font-weight:750;letter-spacing:-.5px;color:var(--presence-text)}.titre-indication:after{content:"";display:block;width:42px;height:4px;margin-top:9px;border-radius:20px;background:var(--presence-primary)}.presence-tabs{display:flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;margin-bottom:24px;padding:5px;background:#eef2f7;border:1px solid var(--presence-border);border-radius:13px}.presence-tab{border:0;outline:none;padding:11px 20px;border-radius:9px;background:transparent;color:var(--presence-text-soft);font-size:14px;font-weight:650;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}.presence-tab:hover{color:var(--presence-text)}.presence-tab.active{background:var(--presence-white);color:var(--presence-primary);box-shadow:0 2px 8px #0f172a14}.presence-tab:active{transform:scale(.98)}.presence-tab-content{width:100%;max-width:1500px;background:var(--presence-white);border:1px solid var(--presence-border);border-radius:var(--presence-radius);padding:24px;box-shadow:var(--presence-shadow)}.presence-message{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding:14px 16px;border:1px solid #bfdbfe;border-left:4px solid var(--presence-primary);border-radius:10px;background:var(--presence-primary-light);color:#1e40af;font-size:14px;line-height:1.5}.presence-message strong{font-weight:750}.presence-message small{color:#475569;font-size:12px}.presences-selectionneur,.selection-classes{width:100%;margin-bottom:22px;padding:20px;background:#fafbfe;border:1px solid var(--presence-border);border-radius:12px}.filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;width:100%}.team-presences{display:flex;flex-wrap:wrap;gap:16px;flex:1}.form-group,.filters>.form-group{display:flex;flex-direction:column;gap:7px;min-width:190px;flex:1}.filters>label{display:block;width:100%}.form-group label,.filters label{margin:0;color:#334155;font-size:12px;font-weight:750;letter-spacing:.2px}.form-group select,.filters select{width:100%;min-height:44px;padding:0 40px 0 13px;border:1px solid #d8dee8;border-radius:9px;background-color:#fff;color:var(--presence-text);font-family:inherit;font-size:13px;font-weight:550;outline:none;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.form-group select:hover,.filters select:hover{border-color:#b8c2d1}.form-group select:focus,.filters select:focus{border-color:var(--presence-primary);box-shadow:0 0 0 3px #2563eb1a}.form-group select:disabled,.filters select:disabled{cursor:not-allowed;background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0}.presences-selectionneur .filters{display:block}.presences-selectionneur .filters .form-group{max-width:520px}.table-responsive{width:100%;overflow-x:auto;margin-top:22px;border:1px solid var(--presence-border);border-radius:12px;background:var(--presence-white)}.table-presences{width:100%;min-width:950px;border-collapse:separate;border-spacing:0}.table-presences thead th{padding:14px 16px;background:#f8fafc;border-bottom:1px solid var(--presence-border);color:#64748b;font-size:11px;font-weight:800;text-align:left;text-transform:uppercase;letter-spacing:.55px;white-space:nowrap}.table-presences thead th:first-child{border-top-left-radius:12px}.table-presences thead th:last-child{border-top-right-radius:12px}.table-presences tbody tr{transition:background-color .18s ease,box-shadow .18s ease}.table-presences tbody tr:hover{background:#f8fbff}.table-presences tbody td{padding:14px 16px;border-bottom:1px solid #edf0f4;color:#334155;font-size:13px;vertical-align:middle}.table-presences tbody tr:last-child td{border-bottom:0}.table-presences tbody tr.presence-row-absent{background:snow}.table-presences tbody tr.presence-row-absent:hover{background:#fff5f5}.table-presences tbody tr.presence-row-absent td:first-child{position:relative}.table-presences tbody tr.presence-row-absent td:first-child:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 4px 4px 0;background:var(--presence-danger)}.table-presences input[type=text]{width:100%;min-width:170px;min-height:38px;padding:8px 11px;border:1px solid #dce2ea;border-radius:8px;background:#fff;color:var(--presence-text);font-size:12px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.table-presences input[type=text]:focus{border-color:var(--presence-primary);box-shadow:0 0 0 3px #2563eb14}.table-presences input::-moz-placeholder{color:#a0aaba}.table-presences input::placeholder{color:#a0aaba}.etat-button{min-width:82px;min-height:34px;padding:7px 13px;border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.etat-button:hover{transform:translateY(-1px)}.etat-button:active{transform:translateY(0)}.etat-button.present{background:var(--presence-success-light);color:#15803d;border-color:#bbf7d0}.etat-button.present:hover{background:#dcfce7;box-shadow:0 4px 10px #16a34a1f}.etat-button.absent{background:var(--presence-danger-light);color:#b91c1c;border-color:#fecaca}.etat-button.absent:hover{background:#fee2e2;box-shadow:0 4px 10px #dc26261f}.presence-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;margin-top:22px;padding:0 22px;border:0;border-radius:10px;background:var(--presence-primary);color:#fff;font-family:inherit;font-size:13px;font-weight:750;cursor:pointer;box-shadow:0 5px 14px #2563eb2e;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.presence-submit:hover{background:var(--presence-primary-dark);transform:translateY(-1px);box-shadow:0 8px 18px #2563eb3d}.presence-submit:active{transform:translateY(0)}.liste{width:100%;margin-top:24px}.liste-presences{display:flex;justify-content:space-around;flex-wrap:wrap;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.presence-card{position:relative;padding:19px;background:#fff;border:1px solid var(--presence-border);border-radius:13px;box-shadow:0 3px 12px #0f172a0b;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.presence-card:hover{transform:translateY(-2px);border-color:#d5dce6;box-shadow:var(--presence-shadow-hover)}.presence-name,.presence-card h3{margin:0 0 15px;color:var(--presence-text);font-size:16px;line-height:1.3;font-weight:750}.presence-card p{display:flex;align-items:flex-start;gap:5px;margin:8px 0;color:#64748b;font-size:12px;line-height:1.5}.presence-card p strong{flex-shrink:0;color:#334155;font-weight:700}.presencesD-present{border-left:4px solid var(--presence-success)}.presencesD-present:after{content:"PRÉSENT";position:absolute;top:16px;right:16px;padding:4px 8px;border-radius:999px;background:var(--presence-success-light);color:#15803d;font-size:9px;font-weight:800;letter-spacing:.4px}.presencesD-absent{border-left:4px solid var(--presence-danger);background:#fffdfd}.presencesD-absent:after{content:"ABSENT";position:absolute;top:16px;right:16px;padding:4px 8px;border-radius:999px;background:var(--presence-danger-light);color:#b91c1c;font-size:9px;font-weight:800;letter-spacing:.4px}.mobile-presences{display:none}.mobile-presences .presence-card{width:100%}.mobile-presences .presence-card h3{padding-right:80px}.mobile-presences .presence-card p{margin-bottom:13px}.mobile-presences .presence-card input{width:100%;min-height:40px;margin-top:13px;padding:8px 11px;border:1px solid #dce2ea;border-radius:8px;outline:none;font-family:inherit;font-size:12px;transition:border-color .2s ease,box-shadow .2s ease}.mobile-presences .presence-card input:focus{border-color:var(--presence-primary);box-shadow:0 0 0 3px #2563eb14}.empty-presences{display:flex;align-items:center;justify-content:center;min-height:170px;padding:30px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc;color:#64748b;font-size:13px;font-weight:550;text-align:center}.table-responsive::-webkit-scrollbar{height:7px}.table-responsive::-webkit-scrollbar-track{background:#f1f5f9}.table-responsive::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.table-responsive::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 900px){.main-content-presences{padding:20px!important}.presence-tab-content{padding:18px}.filters{flex-direction:column;align-items:stretch}.team-presences{width:100%;flex-direction:column}.form-group,.filters>.form-group{width:100%;min-width:100%}.presences-selectionneur .filters .form-group{max-width:none}.liste-presences{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (max-width: 700px){.main-content-presences{padding:14px!important}.titre-indication{margin-bottom:18px;font-size:23px}.presence-tabs{width:100%;margin-bottom:16px}.presence-tab{flex:1;padding:10px 8px;font-size:12px}.presence-tab-content{padding:13px;border-radius:12px}.presences-selectionneur,.selection-classes{padding:14px;margin-bottom:15px}.form-group select,.filters select{min-height:43px}.table-responsive{display:none}.mobile-presences{display:grid;grid-template-columns:1fr;gap:12px;margin-top:15px}.mobile-presences .presence-card{padding:16px}.liste{margin-top:16px}.liste>.liste-presences{grid-template-columns:1fr;gap:12px}.presence-card{padding:16px}.presence-submit{width:100%;min-height:45px;margin-top:17px}.presence-message{padding:12px;font-size:12px}}@media (max-width: 420px){.main-content-presences{padding:10px!important}.presence-tab-content{padding:10px}.titre-indication{font-size:21px}.presence-tabs{padding:4px}.presence-tab{font-size:11px}.presences-selectionneur,.selection-classes{padding:11px}.presence-card{border-radius:11px}.presence-card p{font-size:11px}}.presence-tab:focus-visible,.etat-button:focus-visible,.presence-submit:focus-visible,.form-group select:focus-visible,.filters select:focus-visible,.table-presences input:focus-visible{outline:3px solid rgba(37,99,235,.18);outline-offset:2px}@keyframes presenceFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.presence-tab-content{animation:presenceFadeIn .22s ease}.selection-utilisateurs{width:100%;display:flex;justify-content:center}.main-content-utilisateurs .all-utilisateurs,.main-content-utilisateurs .all-utilisateurs .droite{display:flex;width:100%}.main-content-utilisateurs .form-container{display:flex;flex-direction:column;background-color:#ffffff2c;padding:15px;border-radius:15px}.main-content-utilisateurs .filters .team-utilisateurs{display:flex;justify-content:space-around}.main-content-utilisateurs .filters .form-group{display:flex;margin:5px;justify-content:space-around}.main-content-utilisateurs .form-container .team-utilisateurs{display:flex;justify-content:space-between;margin-bottom:25px}.main-content-utilisateurs .form-group{display:flex;flex-direction:column;margin:0 10px}.main-content-utilisateurs .form-group label{text-align:center;color:#fff;font-weight:700;font-size:20px;margin-bottom:15px}.main-content-utilisateurs .form-group input{width:200px;height:30px;font-size:20px;border-radius:10px;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px}.main-content-utilisateurs .filters .form-group select{width:230px;height:30px;font-size:16px;text-align:center;background-color:#fff;border-radius:10px;outline:none;border:none;border:#fff solid 2px;color:#000;margin-top:25px}.main-content-utilisateurs .form-group select{width:200px;height:30px;font-size:16px;text-align:center;background-color:#fff;border-radius:10px;outline:none;border:none;border:#fff solid 2px;color:#000}.main-content-utilisateurs .form-container .envoie{width:150px;width:100%;display:flex;justify-content:space-around}.main-content-utilisateurs .form-container .btn-envoie{width:150px;padding:15px;font-size:18px;border:none;border-radius:15px;color:#fff;background-color:#0ba240c3}.form-container .btn-envoie2{width:150px;padding:15px;font-size:18px;border:none;border-radius:15px;color:#fff;background-color:#d0381abe}.avertissement-aucun-utilisateurs{position:absolute}.liste-utilisateurs{display:flex;flex-wrap:wrap;padding:20px;width:100%}.utilisateur-card{margin:5px;text-align:center;background:#6aabfad6;padding:10px;border-radius:16px;box-shadow:0 4px 12px #00000014;transition:transform .2s ease,box-shadow .2s ease}.utilisateur-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.utilisateur-card h4{margin:0 0 10px;color:#fff}.utilisateur-card p{margin:4px 0;font-size:16px;font-weight:600;color:#fff}.utilisateur-actions{width:100%;margin-top:12px;display:flex;justify-content:space-around}.utilisateur-actions button{width:40%;margin-top:12px}.all-eleves{width:100%;max-width:1400px;margin:0 auto}.Message3rror{position:fixed;top:90px;right:30px;z-index:3000;min-width:280px;max-width:420px;padding:15px 20px;background:#fff;color:#1f2937;border-left:4px solid #2563eb;border-radius:12px;box-shadow:0 10px 30px #0f172a24;font-size:14px;font-weight:600;animation:messageSlide .3s ease}@keyframes messageSlide{0%{opacity:0;transform:translate(25px)}to{opacity:1;transform:translate(0)}}.droite{width:100%}.liste-ecoles{width:100%;display:flex;justify-content:center;padding:10px 0}.ecole-card{position:relative;width:100%;max-width:900px;padding:0;background:#fff;border:1px solid #e7eaf0;border-radius:20px;overflow:hidden;box-shadow:0 4px 12px #0f172a0a,0 14px 35px #0f172a0f;transition:transform .25s ease,box-shadow .25s ease}.ecole-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0f172a12,0 20px 45px #0f172a17}.ecole-photo{width:100%;height:280px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef4ff,#f8fafc);border-bottom:1px solid #edf0f5;overflow:hidden}.ecole-card .ecole-photo img{width:180px;height:180px;-o-object-fit:cover;object-fit:cover;border-radius:24px;background:#fff;border:5px solid #ffffff;box-shadow:0 8px 25px #0f172a1f}.ecole-card .ecole-photo:has(.ecole-photo-empty){background:#f8fafc}.ecole-photo>:not(img){font-size:45px}.ecole-card h4{margin:25px 30px 8px;color:#111827;font-size:24px;font-weight:750;text-align:left;text-transform:uppercase;letter-spacing:-.3px}.ecole-card p{margin:0;padding:9px 30px;color:#64748b;font-size:15px;font-weight:500;text-align:left}.ecole-card p strong{display:inline-block;min-width:115px;color:#334155;font-weight:650}.ecole-actions{width:auto;margin:20px 30px 30px;padding-top:20px;display:flex;justify-content:flex-end;border-top:1px solid #edf0f5}.ecole-actions button{width:auto;min-width:145px;margin:0;padding:11px 20px;border:none;border-radius:10px;font-size:14px;font-weight:650;cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.btn-warning{background:#2563eb;color:#fff;box-shadow:0 4px 12px #2563eb2e}.btn-warning:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 16px #2563eb40}.liste-ecoles>p{width:100%;max-width:700px;padding:50px 30px;background:#fff;border:1px dashed #cbd5e1;border-radius:16px;color:#64748b;font-size:15px;font-weight:500}.modal-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:25px;background:#0f172a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:modalOverlay .2s ease}@keyframes modalOverlay{0%{opacity:0}to{opacity:1}}.modal-container.modal-ecole{width:100%;max-width:700px;max-height:calc(100vh - 50px);overflow-y:auto;padding:32px;background:#fff;border-radius:22px;box-shadow:0 20px 50px #0f172a2e,0 5px 15px #0f172a14;animation:modalOpen .25s ease}@keyframes modalOpen{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-container h2{margin:0 0 28px;color:#111827;font-size:24px;font-weight:750;letter-spacing:-.4px}.form-container{width:100%;display:flex;flex-direction:column;padding:0;background:transparent}.form-container .team-ecoles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.form-container .team-ecoles:first-child{grid-template-columns:1fr}.team-ecoles .form-group{display:flex;flex-direction:column;gap:8px}.team-ecoles .form-group label{margin:0;color:#374151;font-size:13px;font-weight:650;text-align:left}.team-ecoles .form-group input{width:100%;height:46px;box-sizing:border-box;padding:0 14px;color:#111827;font-size:14px;background:#fff;border:1px solid #dbe1ea;border-radius:10px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.team-ecoles .form-group input:hover{border-color:#c5ccd8}.team-ecoles .form-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.team-ecoles .form-group input[type=file]{height:auto;padding:11px 13px;cursor:pointer;background:#f8fafc}.form-container .envoie{width:100%;display:flex;justify-content:flex-end;gap:12px;margin-top:12px;padding-top:24px;border-top:1px solid #edf0f5}.form-container .btn-envoie{width:auto;min-width:140px;padding:12px 20px;border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:650;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.form-container .btn-primary{background:#2563eb;box-shadow:0 4px 12px #2563eb2e}.form-container .btn-primary:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 16px #2563eb40}.form-container .btn-secondary{background:#f1f5f9;color:#475569}.form-container .btn-secondary:hover{background:#e2e8f0}.modal-container.modal-ecole::-webkit-scrollbar{width:7px}.modal-container.modal-ecole::-webkit-scrollbar-track{background:transparent}.modal-container.modal-ecole::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:20px}.ecole-card-info{width:100%}.ecole-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.ecole-title h4{margin:0;font-size:22px;font-weight:800;color:#172033;text-transform:uppercase;text-align:left}.statut-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;white-space:nowrap}.statut-prive{background:#dcfce7;color:#15803d}.statut-public{background:#f1f5f9;color:#475569}.statut-semi-prive{background:#fee2e2;color:#dc2626}.ecole-details{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-item{display:flex;flex-direction:column;align-items:flex-start;padding:12px 14px;background:#f8fafc;border-radius:10px;border:1px solid #e5e7eb}.detail-label{font-size:12px;font-weight:600;color:#64748b;margin-bottom:4px}.detail-value{font-size:15px;font-weight:700;color:#1e293b;word-break:break-word}@media (max-width: 900px){.main-content-eleves{padding:25px 20px}.ecole-card{max-width:700px}.ecole-photo{height:230px}}@media (max-width: 650px){.main-content-eleves{padding:20px 14px}.ecole-card{border-radius:16px}.ecole-photo{height:200px}.ecole-card .ecole-photo img{width:130px;height:130px;border-radius:18px}.ecole-card h4{margin:20px 20px 8px;font-size:20px}.ecole-card p{padding:8px 20px;font-size:14px}.ecole-card p strong{display:block;margin-bottom:2px}.ecole-actions{margin:18px 20px 20px}.ecole-actions button{width:100%}.modal-overlay{padding:12px}.modal-container.modal-ecole{padding:22px 18px;border-radius:17px;max-height:calc(100vh - 24px)}.modal-container h2{font-size:21px}.form-container .team-ecoles{grid-template-columns:1fr;gap:16px;margin-bottom:16px}.form-container .envoie{flex-direction:column-reverse}.form-container .btn-envoie{width:100%}}@media (max-width: 400px){.ecole-photo{height:170px}.ecole-card h4{font-size:18px}.Message3rror{left:15px;right:15px;min-width:auto}}:root{--condu-primary: #2563eb;--condu-primary-dark: #1d4ed8;--condu-primary-light: #eff6ff;--condu-success: #16a34a;--condu-success-light: #f0fdf4;--condu-warning: #d97706;--condu-warning-light: #fffbeb;--condu-danger: #dc2626;--condu-danger-dark: #b91c1c;--condu-danger-light: #fef2f2;--condu-text: #172033;--condu-text-secondary: #64748b;--condu-text-light: #94a3b8;--condu-border: #e2e8f0;--condu-border-light: #eef2f7;--condu-bg: #f5f7fb;--condu-card: #ffffff;--condu-radius: 16px;--condu-radius-small: 10px;--condu-shadow: 0 10px 30px rgba(15, 23, 42, .07);--condu-shadow-hover: 0 18px 45px rgba(15, 23, 42, .12)}.conduites-page-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px;padding:28px 30px;border:1px solid var(--condu-border-light);border-radius:18px;background:#fff;box-shadow:var(--condu-shadow)}.conduites-page-header>div:first-child{min-width:0}.conduites-eyebrow{display:inline-block;margin-bottom:8px;color:var(--condu-primary);font-size:11px;font-weight:800;letter-spacing:1.2px}.conduites-page-header h1{margin:0;color:var(--condu-text);font-size:28px;font-weight:850;line-height:1.2;letter-spacing:-.7px}.conduites-page-header p{margin:8px 0 0;color:var(--condu-text-secondary);font-size:14px;line-height:1.55}.btn-new-conduite{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex-shrink:0;min-height:46px;padding:11px 19px;border:none;border-radius:11px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-family:inherit;font-size:13px;font-weight:750;cursor:pointer;box-shadow:0 8px 20px #2563eb38;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.btn-new-conduite:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 27px #2563eb47}.btn-new-conduite:active:not(:disabled){transform:translateY(0)}.btn-new-icon{display:flex;align-items:center;justify-content:center;width:21px;height:21px;border-radius:7px;background:#ffffff2b;font-size:18px;line-height:1}.conduites-filters-card{margin-bottom:22px;padding:22px 24px;border:1px solid var(--condu-border-light);border-radius:var(--condu-radius);background:#fffffffa;box-shadow:var(--condu-shadow)}.filters-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}.filters-heading-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;border-radius:10px;background:var(--condu-primary-light);color:var(--condu-primary);font-size:17px}.filters-heading strong{display:block;color:var(--condu-text);font-size:15px;font-weight:800}.filters-heading span{display:block;margin-top:3px;color:var(--condu-text-secondary);font-size:12px}.conduites-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) 120px 130px;align-items:end;gap:16px}.modern-form-group{width:100%;min-width:0}.modern-form-group label{display:block;margin-bottom:8px;color:#334155;font-size:12px;font-weight:750}.modern-form-group label span{margin-left:3px;color:var(--condu-danger)}.modern-form-group input,.modern-form-group select,.modern-form-group textarea{width:100%;box-sizing:border-box;border:1px solid var(--condu-border);border-radius:10px;background:#fff;color:var(--condu-text);padding:12px 13px;outline:none;font-family:inherit;font-size:13px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.modern-form-group input,.modern-form-group select{min-height:45px}.modern-form-group textarea{min-height:115px;resize:vertical;line-height:1.55}.modern-form-group input:focus,.modern-form-group select:focus,.modern-form-group textarea:focus{border-color:var(--condu-primary);box-shadow:0 0 0 4px #2563eb14}.modern-form-group input:disabled,.modern-form-group select:disabled,.modern-form-group textarea:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed;opacity:.75}.modern-form-group select{cursor:pointer}.filter-stat{min-height:45px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:7px 12px;border:1px solid var(--condu-border-light);border-radius:10px;background:#f8fafc}.filter-stat span{color:var(--condu-text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.filter-stat strong{margin-top:2px;color:var(--condu-text);font-size:17px;font-weight:850}.conduites-message{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding:13px 15px;border-radius:11px;font-size:13px;font-weight:650;animation:conduFadeIn .2s ease}.conduites-message>span{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:50%;font-size:12px;font-weight:900}.conduites-message.success{border:1px solid #bbf7d0;background:var(--condu-success-light);color:#166534}.conduites-message.success>span{background:#dcfce7;color:var(--condu-success)}.conduites-message.error{border:1px solid #fecaca;background:var(--condu-danger-light);color:#991b1b}.conduites-message.error>span{background:#fee2e2;color:var(--condu-danger)}.conduites-message.info{border:1px solid #bfdbfe;background:var(--condu-primary-light);color:#1e40af}.conduites-message.info>span{background:#dbeafe;color:var(--condu-primary)}.active-context{display:flex;align-items:center;gap:25px;margin-bottom:22px;padding:17px 20px;border:1px solid #dbeafe;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#f8fbff)}.active-context>div:not(.context-divider){display:flex;flex-direction:column;min-width:150px}.active-context span{margin-bottom:4px;color:#64748b;font-size:10px;font-weight:800;letter-spacing:.7px}.active-context strong{color:#1e3a8a;font-size:14px;font-weight:800}.context-divider{width:1px;height:35px;background:#bfdbfe}.conduites-list-section{padding:23px;border:1px solid var(--condu-border-light);border-radius:var(--condu-radius);background:#fff;box-shadow:var(--condu-shadow)}.list-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.list-header h2{margin:0;color:var(--condu-text);font-size:18px;font-weight:850;letter-spacing:-.3px}.list-header p{margin:5px 0 0;color:var(--condu-text-secondary);font-size:12px}.small-add-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border:1px solid #bfdbfe;border-radius:9px;background:var(--condu-primary-light);color:var(--condu-primary);font-size:12px;font-weight:750;cursor:pointer;transition:background .18s ease,transform .18s ease}.small-add-button:hover:not(:disabled){background:#dbeafe;transform:translateY(-1px)}.conduites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.modern-conduite-card{position:relative;min-width:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--condu-border-light);border-radius:15px;background:#fff;box-shadow:0 5px 18px #0f172a0b;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.modern-conduite-card:before{content:"";display:block;width:100%;height:3px;background:linear-gradient(90deg,#2563eb,#60a5fa)}.modern-conduite-card:hover{transform:translateY(-4px);border-color:#dbeafe;box-shadow:var(--condu-shadow-hover)}.conduite-card-top{display:flex;align-items:center;gap:11px;padding:10px 10px 14px}.student-avatar-conduite{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:12px;background:linear-gradient(135deg,#dbeafe,#eff6ff);color:var(--condu-primary);font-size:16px;font-weight:850}.student-info h3{margin:0;overflow:hidden;color:var(--condu-text);font-size:9px;font-weight:800;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.editing-student-info{text-align:center;margin:0;overflow:hidden;color:var(--condu-text);font-size:16px;font-weight:800;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.student-info span{display:block;margin-top:4px;overflow:hidden;color:var(--condu-text-secondary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.note-badge{display:flex;align-items:baseline;flex-shrink:0;padding:7px 9px;border-radius:9px;background:var(--condu-primary-light);color:var(--condu-primary)}.note-badge strong{font-size:17px;font-weight:850}.note-badge span{margin-left:2px;color:#60a5fa;font-size:10px;font-weight:700}.conduite-card-details{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 17px;padding:12px 0;border-top:1px solid var(--condu-border-light);border-bottom:1px solid var(--condu-border-light)}.detail-item{min-width:0}.detail-item span{display:block;margin-bottom:3px;color:var(--condu-text-light);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.detail-item strong{display:block;overflow:hidden;color:#334155;font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.conduite-observation{flex:1;padding:13px 17px}.conduite-observation>span{display:block;margin-bottom:5px;color:var(--condu-text-light);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.conduite-observation p{min-height:35px;margin:0;color:var(--condu-text-secondary);font-size:11px;line-height:1.5;word-break:break-word}.conduite-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 17px;border-top:1px solid var(--condu-border-light);background:#fafbfc}.conduite-date{color:var(--condu-text-light);font-size:10px;white-space:nowrap}.card-actions{display:flex;align-items:center;gap:6px}.action-edit,.action-delete{padding:6px 9px;border:none;border-radius:7px;background:transparent;font-family:inherit;font-size:10px;font-weight:750;cursor:pointer;transition:background .18s ease,color .18s ease}.action-edit{color:var(--condu-primary)}.action-edit:hover:not(:disabled){background:var(--condu-primary-light)}.action-delete{color:var(--condu-danger)}.action-delete:hover:not(:disabled){background:var(--condu-danger-light)}.conduites-empty{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 20px;text-align:center}.empty-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:13px;border-radius:16px;background:var(--condu-primary-light);color:var(--condu-primary);font-size:21px;font-weight:800}.conduites-empty h3{margin:0;color:var(--condu-text);font-size:16px;font-weight:800}.conduites-empty p{max-width:480px;margin:7px 0 18px;color:var(--condu-text-secondary);font-size:12px;line-height:1.6}.empty-button{width:auto}.loading-state{gap:12px}.loading-state strong{color:var(--condu-text-secondary);font-size:13px}.loading-spinner,.button-spinner{border:3px solid #dbeafe;border-top-color:var(--condu-primary);border-radius:50%;animation:conduSpin .8s linear infinite}.loading-spinner{width:30px;height:30px}.button-spinner{width:14px;height:14px;border-width:2px;border-top-color:#fff}.conduite-modal-overlay{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a94;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);animation:conduFadeIn .2s ease}.conduite-modal{position:relative;width:min(620px,100%);max-height:calc(100vh - 40px);overflow-y:auto;border:1px solid rgba(255,255,255,.8);border-radius:20px;background:#fff;box-shadow:0 30px 90px #0f172a47;animation:conduModalIn .25s ease}.conduite-modal-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 23px;border-bottom:1px solid var(--condu-border-light);background:#fffffff7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-title-wrapper{display:flex;align-items:center;gap:11px;min-width:0}.modal-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:11px;background:var(--condu-primary-light);color:var(--condu-primary);font-size:20px;font-weight:800}.modal-title-wrapper>div:last-child{min-width:0}.modal-title-wrapper span{display:block;margin-bottom:2px;color:var(--condu-primary);font-size:9px;font-weight:850;letter-spacing:.9px}.modal-title-wrapper h2{margin:0;color:var(--condu-text);font-size:18px;font-weight:850}.modal-close{display:flex;align-items:center;justify-content:center;width:37px;height:37px;flex-shrink:0;padding:0;border:1px solid var(--condu-border);border-radius:10px;background:#f8fafc;color:#64748b;font-size:21px;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}.modal-close:hover:not(:disabled){background:var(--condu-danger-light);color:var(--condu-danger);transform:rotate(4deg)}.modal-context{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:17px 23px;border-bottom:1px solid var(--condu-border-light);background:#f8fafc}.modal-context>div{min-width:0;padding:11px 12px;border:1px solid var(--condu-border-light);border-radius:9px;background:#fff}.modal-context span{display:block;margin-bottom:4px;color:var(--condu-text-light);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.modal-context strong{display:block;overflow:hidden;color:var(--condu-text);font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.modern-conduite-form{padding:22px 23px 23px}.modern-conduite-form>.modern-form-group{margin-bottom:18px}.modern-form-group small{display:block;margin-top:7px;color:var(--condu-text-light);font-size:11px;line-height:1.5}.note-input-wrapper{position:relative;display:flex;align-items:center}.note-input-wrapper input{padding-right:48px}.note-input-wrapper>span{position:absolute;right:14px;color:var(--condu-text-light);font-size:12px;font-weight:750;pointer-events:none}.modal-warning{display:flex;align-items:flex-start;gap:11px;margin:5px 0 20px;padding:13px 14px;border:1px solid #fde68a;border-radius:11px;background:var(--condu-warning-light)}.warning-icon{display:flex;align-items:center;justify-content:center;width:25px;height:25px;flex-shrink:0;border-radius:8px;background:#fef3c7;color:#b45309;font-size:12px;font-weight:900}.modal-warning strong{display:block;margin-bottom:3px;color:#92400e;font-size:12px}.modal-warning p{margin:0;color:#a16207;font-size:11px;line-height:1.55}.editing-indicator{display:flex;align-items:center;gap:10px;margin-bottom:19px;padding:11px 13px;border:1px solid #dbeafe;border-radius:10px;background:var(--condu-primary-light)}.editing-indicator>span{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#dbeafe;color:var(--condu-primary);font-size:14px}.editing-indicator strong{display:block;color:#1e40af;font-size:12px}.editing-indicator small{display:block;margin-top:2px;color:#64748b;font-size:10px}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:20px}.modal-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 17px;border-radius:9px;font-family:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.modal-btn:hover:not(:disabled){transform:translateY(-1px)}.modal-btn.secondary{border:1px solid var(--condu-border);background:#f8fafc;color:#475569}.modal-btn.secondary:hover:not(:disabled){background:#f1f5f9}.modal-btn.primary{border:none;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 6px 16px #2563eb33}.modal-btn.primary:hover:not(:disabled){box-shadow:0 9px 22px #2563eb47}.modal-btn.danger{border:none;background:var(--condu-danger);color:#fff;box-shadow:0 6px 16px #dc26262b}.delete-overlay{z-index:10000}.delete-modal{width:min(420px,100%);padding:27px;border-radius:18px;background:#fff;text-align:center;box-shadow:0 30px 80px #0f172a40;animation:conduPopupIn .22s ease}.delete-icon{display:flex;align-items:center;justify-content:center;width:53px;height:53px;margin:0 auto 14px;border-radius:16px;background:var(--condu-danger-light);color:var(--condu-danger);font-size:21px;font-weight:900}.delete-modal h2{margin:0 0 8px;color:var(--condu-text);font-size:17px;font-weight:850}.delete-modal p{margin:0;color:var(--condu-text-secondary);font-size:12px;line-height:1.6}.delete-modal .modal-actions{margin-top:22px}button:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.conduite-modal::-webkit-scrollbar{width:7px}.conduite-modal::-webkit-scrollbar-track{background:transparent}.conduite-modal::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.conduite-modal::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes conduFadeIn{0%{opacity:0}to{opacity:1}}@keyframes conduModalIn{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes conduPopupIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes conduSpin{to{transform:rotate(360deg)}}@media (min-width: 1500px){.main-content-conduites{padding-left:40px;padding-right:40px}.conduites-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 1200px){.main-content-conduites{margin-left:180px;padding:24px}.conduites-filters,.conduites-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 850px){.main-content-conduites{margin-left:0;padding:20px 16px 30px}.conduites-page-header{align-items:flex-start;flex-direction:column}.btn-new-conduite{width:100%}.conduites-filters{grid-template-columns:1fr}.filter-stat{min-height:52px}.conduites-grid,.modal-context{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-context>div:last-child{grid-column:1 / -1}}@media (max-width: 600px){.main-content-conduites{padding:15px 12px 25px}.conduites-page-header{margin-bottom:17px;padding:20px;border-radius:15px}.conduites-page-header h1{font-size:23px}.conduites-page-header p{font-size:12px}.conduites-filters-card{padding:17px;border-radius:14px}.conduites-list-section{padding:16px;border-radius:14px}.list-header{align-items:flex-start;flex-direction:column}.small-add-button{width:100%}.conduites-grid{grid-template-columns:1fr}.active-context{align-items:stretch;flex-direction:column;gap:12px}.active-context>div:not(.context-divider){min-width:0}.context-divider{width:100%;height:1px}.conduite-modal-overlay{align-items:flex-end;padding:0}.conduite-modal{width:100%;max-height:94vh;border-radius:22px 22px 0 0;animation:conduModalMobileIn .25s ease}.conduite-modal-header{padding:16px 17px}.modal-context{grid-template-columns:1fr;padding:14px 17px}.modal-context>div:last-child{grid-column:auto}.modern-conduite-form{padding:19px 17px 22px}.modal-actions{flex-direction:column-reverse}.modal-actions .modal-btn{width:100%}.delete-modal{width:calc(100% - 24px);padding:23px 18px}}@media (max-width: 400px){.main-content-conduites{padding:12px 10px 20px}.conduites-page-header{padding:17px}.conduites-page-header h1{font-size:21px}.conduites-filters-card{padding:14px}.conduites-list-section{padding:13px}.conduite-card-top{padding:14px 13px 12px}.conduite-card-details{margin:0 13px}.conduite-observation{padding:12px 13px}.conduite-card-footer{align-items:flex-start;flex-direction:column;padding:11px 13px}.card-actions{width:100%}.action-edit,.action-delete{flex:1}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes conduModalMobileIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.selection-classes{width:100%;display:flex;justify-content:center;margin-bottom:24px}.selection-classes>*{width:100%}.main-content-classes .all-classes{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.main-content-classes .all-classes .gauche,.main-content-classes .all-classes .droite{width:100%}.main-content-classes .all-classes .droite{margin-top:0}.main-content-classes .form-container{width:100%;box-sizing:border-box;background:#fff;padding:28px;border:1px solid #e8edf5;border-radius:20px;box-shadow:0 10px 30px #0f172a0f,0 2px 8px #0f172a08;position:relative;overflow:hidden}.main-content-classes .form-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#173b8f,#2563eb,#06b6d4)}.main-content-classes .form-container .team-classes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:28px}.team-classes .form-group{display:flex;flex-direction:column;gap:9px}.team-classes .form-group label{text-align:left;color:#344054;font-weight:700;font-size:14px;margin-bottom:0}.team-classes .form-group input,.main-content-classes .form-group select{width:100%;height:48px;box-sizing:border-box;padding:0 14px;font-size:14px;font-weight:500;border-radius:12px;outline:none;border:1px solid #dce3ed;background:#f8fafc;color:#172033;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.team-classes .form-group input:focus,.main-content-classes .form-group select:focus{border-color:#2563eb;background:#fff;box-shadow:0 0 0 4px #2563eb1a}.main-content-classes .form-group select{cursor:pointer}.main-content-classes .form-container .envoie{width:100%;display:flex;justify-content:flex-end;align-items:center;gap:12px}.main-content-classes .form-container .btn-envoie,.main-content-classes .form-container .btn-envoie2{width:auto;min-width:150px;padding:13px 22px;font-size:14px;font-weight:700;border:none;border-radius:12px;color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.main-content-classes .form-container .btn-envoie{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 6px 16px #16a34a33}.main-content-classes .form-container .btn-envoie2{background:#f1f5f9;color:#475467;border:1px solid #dce3ed}.main-content-classes .form-container .btn-envoie:hover,.main-content-classes .form-container .btn-envoie2:hover{transform:translateY(-2px)}.main-content-classes .form-container .btn-envoie:hover{box-shadow:0 10px 22px #16a34a40}.main-content-classes .form-container .btn-envoie2:hover{background:#e2e8f0}.avertissement-aucun-classes{position:static;width:100%;box-sizing:border-box;padding:35px 20px;text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:18px;color:#64748b}.btn-warning,.btn-danger,.btn-secondary{border:none;padding:9px 13px;border-radius:10px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.btn-warning{background:#fff7e6;color:#b45309;border:1px solid #fde68a}.btn-danger{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.btn-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.btn-warning:hover,.btn-danger:hover,.btn-secondary:hover{transform:translateY(-2px)}.liste{width:100%;display:flex;flex-wrap:wrap;padding:0;gap:18px;box-sizing:border-box}.liste-classes{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;box-sizing:border-box}.classe-card{width:100%;min-height:170px;margin:0;box-sizing:border-box;position:relative;text-align:left;background:#fff;padding:20px;border-radius:18px;border:1px solid #e8edf5;box-shadow:0 8px 25px #0f172a0f;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;overflow:hidden}.classe-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#173b8f,#2563eb,#06b6d4)}.classe-card:hover{transform:translateY(-5px);border-color:#d5def0;box-shadow:0 16px 35px #0f172a1a}.classe-card h4{margin:3px 0 14px;color:#172554;font-size:19px;font-weight:800;letter-spacing:-.3px}.classe-card p{margin:7px 0;font-size:13px;font-weight:600;color:#64748b}.classe-card p strong{color:#334155}.classe-actions{width:100%;margin-top:18px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.classe-actions button{width:auto;min-width:42px;height:38px;margin-top:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;cursor:pointer}.name-sex{display:flex;justify-content:space-between;align-items:center;gap:10px}.popup-overlay,.modal-overlay{position:fixed;inset:0;width:100%;height:100vh;background:#0f172a9e;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);display:flex;justify-content:center;align-items:center;padding:20px;box-sizing:border-box;z-index:9999;animation:overlayIn .2s ease}.modal-content{width:min(560px,100%);max-height:90vh;overflow-y:auto;background:#fff;padding:30px;border-radius:22px;border:1px solid #e5e7eb;box-shadow:0 30px 80px #0f172a40;text-align:left;animation:modalIn .25s ease}.modal-content h3{margin:0 0 24px;font-size:23px;font-weight:800;color:#172033}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.btn-add-class{position:fixed;right:28px;bottom:28px;width:58px;height:58px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:17px;background:linear-gradient(135deg,#173b8f,#2563eb);color:#fff;font-size:30px;font-weight:300;cursor:pointer;box-shadow:0 12px 25px #2563eb4d;z-index:1000;transition:transform .25s ease,box-shadow .25s ease}.btn-add-class:hover{transform:translateY(-4px) scale(1.03);box-shadow:0 18px 35px #2563eb59}@media (max-width: 900px){.main-content-classes{padding:16px}.main-content-classes .form-container .team-classes{grid-template-columns:repeat(2,1fr)}.liste-classes{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (max-width: 600px){.main-content-classes{padding:12px}.main-content-classes .form-container{padding:20px 16px;border-radius:16px}.main-content-classes .form-container .team-classes{grid-template-columns:1fr;gap:15px}.team-classes .form-group input,.main-content-classes .form-group select{height:46px}.main-content-classes .form-container .envoie{flex-direction:column}.main-content-classes .form-container .btn-envoie,.main-content-classes .form-container .btn-envoie2{width:100%}.liste-classes{grid-template-columns:1fr;gap:14px}.classe-card{min-height:155px}.classe-card h4{font-size:18px}.modal-content{padding:22px 18px;border-radius:18px}.modal-content h3{font-size:20px}.btn-add-class{width:52px;height:52px;right:18px;bottom:18px;border-radius:15px;font-size:27px}}@media (max-width: 380px){.main-content-classes{padding:9px}.classe-card{padding:16px}.classe-actions{justify-content:stretch}.classe-actions button{flex:1}}.avertissement-aucun-classes{position:absolute}.liste{display:flex;flex-wrap:wrap;padding:10px}.liste-classes{display:flex;flex-wrap:wrap;width:100%}.classe-card{margin:5px;width:12%;height:140px;text-align:center;background:#fff;padding:10px;border-radius:16px;box-shadow:0 4px 12px #00000014;transition:transform .2s ease,box-shadow .2s ease}.classe-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.classe-card h4{margin:0 0 10px;color:#162557}.classe-card p{margin:4px 0;font-size:12px;font-weight:600;color:#121680}.classe-actions{width:100%;margin-top:12px;display:flex;justify-content:space-around}.classe-actions button{width:40%;margin-top:12px}.popup-overlay,.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:999}.modal-content{background:#000;padding:5px;border-radius:10px;animation:fadeIn .3s ease;border:4px solid #12d1e7;text-align:center}.modal-content h3{font-size:25px}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.btn-add-class{background:#fff;color:#000;height:50px;width:50px;display:flex;text-align:center;align-items:center;justify-content:center;position:fixed;bottom:15px;right:35px;font-size:45px;border-radius:50%;cursor:pointer}.btn-add-class:hover{background:#0052cc}.scolarites-page{padding:30px;max-width:1500px;margin:0 auto;color:#172033;background:#f6f8fc;min-height:100%;box-sizing:border-box}.scolarite-message{position:absolute;z-index:31245845145}.scolarites-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px;flex-wrap:wrap}.scolarites-header>div:first-child{position:relative;padding-left:16px}.scolarites-header>div:first-child:before{content:"";position:absolute;left:0;top:4px;width:4px;height:48px;border-radius:10px;background:linear-gradient(180deg,#2563eb,#4f46e5)}.scolarites-header h2{margin:0;color:#172033;font-size:28px;font-weight:800;letter-spacing:-.5px}.scolarites-header h2 i{margin-right:10px;color:#2563eb}.scolarites-header p{margin:7px 0 0;color:#7b8496;font-size:14px;line-height:1.5}.scolarite-secondary-btn{margin-top:15px;width:600px}.scolarite-primary-btn{border:none;border-radius:11px;min-height:44px;padding:11px 18px;font-size:14px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.scolarite-primary-btn{color:#fff;background:linear-gradient(135deg,#2563eb,#4f46e5);box-shadow:0 7px 18px #2563eb38}.scolarite-primary-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px #2563eb4d}.scolarite-primary-btn:active{transform:translateY(0)}.scolarite-secondary-btn{color:#475569;background:#eef1f6}.scolarite-secondary-btn:hover{background:#e3e7ee}.scolarite-primary-btn:disabled,.scolarite-secondary-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.scolarite-message{position:relative;z-index:9999;padding:14px 17px;border-radius:12px;margin-bottom:22px;display:flex;align-items:center;gap:11px;font-size:14px;font-weight:600;box-shadow:0 8px 25px #0f172a14;animation:scolariteMessageAppear .25s ease}.scolarite-message i{font-size:17px}.scolarite-message.success{background:#ecfdf3;border:1px solid #bbf7d0;color:#15803d}.scolarite-message.error{background:#fff1f2;border:1px solid #fecdd3;color:#dc2626;z-index:77777777}@keyframes scolariteMessageAppear{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.scolarite-table-container{position:relative;background:#fff;border:1px solid #e8ebf1;border-radius:18px;overflow-x:auto;box-shadow:0 10px 35px #0f172a0f}.scolarite-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0}.scolarite-table th{padding:16px 18px;text-align:left;background:#f8fafc;color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e7ebf1;white-space:nowrap}.scolarite-table th:first-child{border-top-left-radius:18px}.scolarite-table th:last-child{border-top-right-radius:18px}.scolarite-table td{padding:17px 18px;color:#334155;font-size:14px;border-bottom:1px solid #edf0f4;vertical-align:middle}.scolarite-table tbody tr{transition:background .18s ease,transform .18s ease}.scolarite-table tbody tr:hover{background:#f8faff}.scolarite-table tbody tr:last-child td{border-bottom:none}.scolarite-table tbody td:first-child{color:#172033;font-weight:700}.scolarite-table td .montant,.scolarite-table td strong{color:#172033;font-weight:800}.badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:26px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.badge-green{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.badge-red{color:#dc2626;background:#fee2e2;border:1px solid #fecaca}.badge-gray{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.scolarite-actions{display:flex;align-items:center;gap:8px}.scolarite-actions button{width:36px;height:36px;border:1px solid #e6eaf0;border-radius:10px;background:#f8fafc;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.scolarite-actions button:hover{transform:translateY(-1px);background:#eef4ff;border-color:#c7d7fe;color:#2563eb}.scolarite-actions button.danger{color:#dc2626}.scolarite-actions button.danger:hover{background:#fff1f2;border-color:#fecdd3;color:#dc2626}.scolarite-empty{min-height:360px;padding:50px 30px;background:#fff;border:1px solid #e8ebf1;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 10px 35px #0f172a0d}.scolarite-empty>i{width:72px;height:72px;margin-bottom:18px;border-radius:20px;background:#eef4ff;color:#2563eb;display:flex;align-items:center;justify-content:center;font-size:30px}.scolarite-empty h3{margin:0;color:#172033;font-size:19px;font-weight:800}.scolarite-empty p{max-width:430px;margin:8px 0 22px;color:#7b8496;font-size:14px;line-height:1.6}.scolarite-modal-overlay{position:fixed;inset:0;z-index:10000;padding:20px;background:#0f172a9e;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center}.scolarite-modal{width:50%;max-height:95vh;background:#fff;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.5);box-shadow:0 30px 80px #00000040;animation:scolariteModalAppear .25s ease}@keyframes scolariteModalAppear{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.scolarite-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 23px;background:linear-gradient(135deg,#f8faff,#fff);border-bottom:1px solid #edf0f4}.scolarite-modal-title{display:flex;align-items:center;gap:13px}.scolarite-modal-icon{width:46px;height:46px;flex-shrink:0;border-radius:13px;background:linear-gradient(135deg,#eaf1ff,#eef2ff);color:#2563eb;display:flex;align-items:center;justify-content:center;font-size:19px;box-shadow:inset 0 0 0 1px #2563eb14}.scolarite-modal-title h2{margin:0;color:#172033;font-size:19px;font-weight:800}.scolarite-modal-title p{margin:4px 0 0;color:#8490a3;font-size:12px}.scolarite-modal-close{width:38px;height:38px;flex-shrink:0;border:none;border-radius:10px;background:#f1f4f8;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:17px;transition:background .2s ease,color .2s ease,transform .2s ease}.scolarite-modal-close:hover{background:#fee2e2;color:#dc2626;transform:rotate(4deg)}.scolarite-echeances-list{text-align:center;display:flex;justify-content:space-around;flex-wrap:wrap;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.scolarite-echeance-row{width:40%;gap:20px;box-sizing:border-box}.scolarite-form{padding:25px;max-height:calc(92vh - 90px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.scolarite-form::-webkit-scrollbar{width:7px}.scolarite-form::-webkit-scrollbar-track{background:transparent}.scolarite-form::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:20px}.scolarite-form-group{margin-bottom:19px}.scolarite-form-group label{display:block;margin-bottom:8px;color:#334155;font-size:13px;font-weight:700}.scolarite-form-group label:first-letter{color:#2563eb}.scolarite-form-group input,.scolarite-form-group select,.scolarite-form-group textarea{width:100%;box-sizing:border-box;min-height:44px;padding:11px 13px;border:1px solid #dce2ea;border-radius:11px;outline:none;background:#fff;color:#172033;font-family:inherit;font-size:14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.scolarite-form-group input::-moz-placeholder,.scolarite-form-group textarea::-moz-placeholder{color:#a0a8b6}.scolarite-form-group input::placeholder,.scolarite-form-group textarea::placeholder{color:#a0a8b6}.scolarite-form-group input:hover,.scolarite-form-group select:hover,.scolarite-form-group textarea:hover{border-color:#c4ccd8}.scolarite-form-group input:focus,.scolarite-form-group select:focus,.scolarite-form-group textarea:focus{border-color:#2563eb;background:#fff;box-shadow:0 0 0 4px #2563eb1a}.scolarite-form-group textarea{min-height:100px;resize:vertical}.scolarite-form-group select{cursor:pointer}.scolarite-options{display:flex;align-items:center;gap:28px;margin:6px 0 22px;padding:14px;background:#f8fafc;border:1px solid #edf0f4;border-radius:12px}.scolarite-options label{display:flex;align-items:center;gap:8px;margin:0;color:#475569;font-size:13px;font-weight:600;cursor:pointer}.scolarite-options input{width:17px;height:17px;margin:0;accent-color:#2563eb;cursor:pointer}.scolarite-team{display:flex;align-items:center;justify-content:space-between;gap:15px}.scolarite-money-input{display:flex;align-items:center;width:100%;overflow:hidden;background:#fff;border:1px solid #dce2ea;border-radius:11px;transition:border-color .2s ease,box-shadow .2s ease}.scolarite-money-input:focus-within{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.scolarite-money-input input{flex:1;min-width:0;border:none!important;box-shadow:none!important;border-radius:0;background:transparent}.scolarite-money-input span{padding:0 14px;color:#64748b;font-size:12px;font-weight:800;border-left:1px solid #e7ebf1;background:#f8fafc;align-self:stretch;display:flex;align-items:center}.scolarite-affectation-info{display:flex;align-items:flex-start;gap:8px;margin-top:8px;padding:10px 12px;border-radius:9px;background:#fff7ed;border:1px solid #fed7aa;color:#c2410c;font-size:12px;line-height:1.5}.scolarite-affectation-info:before{content:"!";width:17px;height:17px;flex-shrink:0;border-radius:50%;background:#f97316;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800}.scolarite-options{color:#334155}.scolarite-form-actions{display:flex;align-items:center;justify-content:space-around;gap:10px;margin-top:25px;padding-top:18px;border-top:1px solid #edf0f4;position:sticky;bottom:-25px;background:#fff}.scolarite-form-actions button{min-width:120px}.scolarite-primary-btn:focus-visible,.scolarite-secondary-btn:focus-visible,.scolarite-actions button:focus-visible,.scolarite-modal-close:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}@media (max-width: 900px){.scolarites-page{padding:22px}.scolarites-header h2{font-size:24px}.scolarite-table-container{border-radius:15px}.scolarite-modal{width:min(560px,100%)}}@media (max-width: 700px){.scolarites-page{padding:15px}.scolarites-header{align-items:stretch;margin-bottom:20px}.scolarites-header>div:first-child{padding-left:13px}.scolarites-header>div:first-child:before{height:42px}.scolarites-header h2{font-size:22px}.scolarites-header p{font-size:13px}.scolarites-header .scolarite-primary-btn{width:100%}.scolarite-table-container{border-radius:14px}.scolarite-modal-overlay{padding:10px;align-items:flex-end}.scolarite-modal{width:100%;max-height:94vh;border-radius:20px 20px 14px 14px}.scolarite-modal-header{padding:17px 18px}.scolarite-form{padding:20px 18px}.scolarite-options{flex-direction:column;align-items:flex-start;gap:12px}.scolarite-team{flex-direction:column;align-items:stretch}.scolarite-form-actions{flex-direction:column-reverse;bottom:-20px;padding-bottom:20px}.scolarite-form-actions button{width:100%}.scolarite-empty{min-height:300px;padding:35px 20px}}@media (max-width: 420px){.scolarites-page{padding:12px}.scolarites-header h2{font-size:20px}.scolarite-modal-title h2{font-size:17px}.scolarite-modal-icon{width:42px;height:42px}.scolarite-table th,.scolarite-table td{padding-left:13px;padding-right:13px}}.selection-profs{width:100%;display:flex;justify-content:center}.main-content-profs .all-profs{display:flex;width:100%}.main-content-profs .all-profs .droite{width:100%}.main-content-profs .form-container{display:flex;flex-direction:column;background-color:#ffffff2c;padding:15px;border-radius:15px;margin-bottom:0}.main-content-profs .filters .team-profs{display:flex;justify-content:space-around}.main-content-profs .filters .form-group{display:flex;margin:5px;justify-content:space-around}.main-content-profs .form-layout{display:flex;flex-direction:column;max-height:50vh;color:#e5e7eb}.main-content-profs .classe-panel{display:flex;flex-direction:column;background:#b6bac0;border-radius:8px;border:1px solid #124c85;overflow:hidden}.main-content-profs .form-container .team-profs{display:flex;justify-content:space-between;margin-bottom:25px}.main-content-profs .form-group{display:flex;flex-direction:column}.main-content-profs .form-group label{text-align:center;color:#000;font-weight:700;font-size:20px;margin-bottom:15px}.main-content-profs .form-group input{width:200px;height:30px;font-size:20px;border-radius:10px;outline:none;border:1px solid #12d1e7}.main-content-profs .form-group select{width:230px;height:30px;font-size:16px;text-align:center;background-color:transparent;border-radius:10px;outline:none;border:none;background-color:#edeaea;border:#12d1e7 solid 2px;color:#000;font-weight:800}.form-container .envoie{width:100%;display:flex;justify-content:space-around;margin-top:10px}.form-container .btn-envoie{width:150px;padding:15px;font-size:15px;border:none;border-radius:15px;color:#fff;background-color:#0ba240c3}.form-container .btn-envoie2{width:150px;padding:15px;font-size:15px;border:none;border-radius:15px;color:#fff;background-color:#d0381abe}.avertissement-aucun-profs{position:absolute}.liste,.liste-profs{display:flex;flex-wrap:wrap;padding:20px}.main-content-profs .modal-content{background:#fffefe;color:#000;padding:5px;border-radius:10px;animation:fadeIn .3s ease;border:4px solid #12d1e7;text-align:center}.maitre-container{width:98%}.thsffdtd{display:flex;justify-content:space-evenly;gap:30}.chapiolondndd{display:flex}.maitre-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.maitre-hero-content{display:flex;align-items:center;gap:18px}.maitre-hero-icon{width:62px;height:62px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-size:27px;box-shadow:0 12px 28px #4f46e540}.maitre-eyebrow{display:block;color:#6366f1;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.maitre-hero h1{margin:0;color:#172033;font-size:30px;font-weight:800}.maitre-hero p{margin:6px 0 0;color:#7b8497;font-size:14px}.maitre-add-btn{border:0;border-radius:13px;padding:13px 20px;background:#4f46e5;color:#fff;display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 9px 20px #4f46e533;transition:.2s ease}.maitre-add-btn:hover{transform:translateY(-2px);background:#4338ca}.maitre-alert{display:flex;align-items:center;gap:13px;padding:14px 17px;border-radius:13px;margin-bottom:20px;border:1px solid transparent}.maitre-alert.success{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.maitre-alert.error{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.maitre-alert-icon{font-size:21px}.maitre-alert>div:nth-child(2){display:flex;flex-direction:column;gap:2px;flex:1}.maitre-alert strong,.maitre-alert span{font-size:13px}.maitre-alert button{border:0;background:transparent;font-size:19px;cursor:pointer;color:inherit}.maitre-class-selector{background:#fff;border:1px solid #e7eaf1;border-radius:18px;padding:22px;display:flex;align-items:center;gap:18px;box-shadow:0 5px 22px #0f172a0a}.step-number{min-width:43px;width:43px;height:43px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800}.step-number.active{background:#eef2ff;color:#4f46e5}.class-selector-content{flex:1}.step-label{margin-bottom:10px}.step-label span{display:block;color:#8a93a6;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px}.step-label strong{display:block;color:#20283a;font-size:15px;margin-top:2px}.class-select-wrapper{position:relative;max-width:600px}.class-select-wrapper>i:first-child{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#6366f1;font-size:17px;z-index:2}.class-select-wrapper select{width:100%;height:48px;border:1px solid #dfe3ec;border-radius:11px;padding:0 42px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fafbfe;color:#252d3d;font-size:14px;font-weight:600;outline:none;cursor:pointer;transition:.2s}.class-select-wrapper select:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 4px #6366f114}.select-arrow{position:absolute;right:15px;top:50%;transform:translateY(-50%);pointer-events:none;color:#858da0}.maitre-empty-state{margin-top:22px;background:#fff;border:1px dashed #d8ddea;border-radius:18px;padding:65px 25px;text-align:center}.empty-icon{width:62px;height:62px;margin:0 auto 18px;border-radius:18px;background:#f1f3f9;color:#8a93a6;display:flex;align-items:center;justify-content:center;font-size:28px}.maitre-empty-state h2{margin:0;color:#293144;font-size:18px}.maitre-empty-state p{max-width:530px;margin:9px auto 0;color:#8a93a6;font-size:13px;line-height:1.7}.maitre-workspace{margin-top:22px}.selected-class-banner{display:flex;align-items:center;justify-content:space-between;padding:20px 23px;margin-bottom:20px;border-radius:18px;background:linear-gradient(135deg,#312e81,#4f46e5);color:#fff;box-shadow:0 12px 30px #4f46e533}.selected-class-main{display:flex;align-items:center;gap:14px}.selected-class-icon{width:49px;height:49px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#ffffff24;font-size:21px}.selected-class-main span{display:block;color:#ffffffad;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.7px}.selected-class-main h2{margin:3px 0 0;font-size:21px}.selected-class-stats{display:flex;align-items:center;gap:28px}.class-stat{display:flex;flex-direction:column;align-items:center}.class-stat strong{font-size:22px}.class-stat span{color:#ffffffa6;font-size:11px}.maitre-card{background:#fff;border:1px solid #e8ebf2;border-radius:18px;margin-bottom:20px;overflow:hidden;box-shadow:0 5px 22px #0f172a0a}.card-step-header{padding:22px 24px;border-bottom:1px solid #edf0f5;display:flex;align-items:center;gap:15px}.card-step-number{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:#eef2ff;color:#4f46e5;font-weight:800;font-size:15px}.card-step-title{flex:1}.card-step-title span{display:block;color:#8a93a6;font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.8px}.card-step-title h3{margin:3px 0;color:#252d3d;font-size:17px}.card-step-title p{margin:0;color:#8a93a6;font-size:12px}.status-badge{display:flex;align-items:center;gap:6px;padding:7px 11px;border-radius:20px;font-size:11px;font-weight:700}.status-badge.success{background:#ecfdf5;color:#15803d}.maitre-card-body{padding:24px}.titulaire-current{display:flex;align-items:center;gap:13px;padding:15px;border-radius:14px;background:#f8f9fc;border:1px solid #edf0f5;margin-bottom:20px}.current-avatar{width:45px;height:45px;border-radius:13px;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;font-size:20px}.current-info{flex:1}.current-info span{display:block;font-size:10px;color:#8a93a6;text-transform:uppercase;font-weight:700}.current-info strong{display:block;margin-top:3px;color:#252d3d;font-size:14px}.remove-link{border:0;background:#fff1f2;color:#e11d48;border-radius:9px;padding:8px 11px;cursor:pointer;font-size:11px;font-weight:700;display:flex;align-items:center;gap:6px}.remove-link:hover{background:#ffe4e6}.maitre-select-zone{max-width:700px}.maitre-select-zone label{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:#394154;font-size:12px;font-weight:700}.maitre-select-zone label i{color:#6366f1}.modern-select{position:relative}.modern-select select{width:100%;height:48px;padding:0 42px 0 15px;border:1px solid #dfe3ec;border-radius:11px;background:#fafbfe;color:#252d3d;font-size:13px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.modern-select select:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 4px #6366f114}.modern-select>i{position:absolute;right:15px;top:50%;transform:translateY(-50%);pointer-events:none;color:#8a93a6}.save-step-btn{margin-top:12px;border:0;background:#eef2ff;color:#4f46e5;border-radius:10px;padding:10px 14px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:7px}.save-step-btn:hover:not(:disabled){background:#e0e7ff}.save-step-btn:disabled{opacity:.5;cursor:not-allowed}.matiere-counter{display:flex;align-items:baseline;gap:3px;padding:9px 13px;background:#f5f3ff;border-radius:11px;color:#6d28d9}.matiere-counter strong{font-size:18px}.matiere-counter span{font-size:12px;color:#a78bfa}.matiere-counter small{margin-left:5px;font-size:10px;font-weight:700}.matieres-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.matieres-toolbar h4{margin:0;color:#252d3d;font-size:14px}.matieres-toolbar p{margin:4px 0 0;color:#8a93a6;font-size:11px}.select-all-btn{border:1px solid #dfe3ec;background:#fff;color:#4f46e5;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:8px;cursor:pointer}.select-all-btn:hover{background:#f5f3ff;border-color:#c7d2fe}.select-all-btn.selected{background:#4f46e5;border-color:#4f46e5;color:#fff}.select-all-check{font-size:14px}.matieres-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.matiere-item{min-height:70px;display:flex;align-items:center;gap:12px;padding:12px 13px;border:1px solid #e5e8ef;border-radius:13px;background:#fff;cursor:pointer;transition:.18s ease}.matiere-item:hover{border-color:#c7d2fe;background:#fafaff;transform:translateY(-1px)}.matiere-item.selected{border-color:#a5b4fc;background:#f7f7ff}.matiere-check{min-width:23px;width:23px;height:23px;border:2px solid #d7dce7;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px}.matiere-item.selected .matiere-check{border-color:#4f46e5;background:#4f46e5}.matiere-info{flex:1;min-width:0}.matiere-info strong{display:block;color:#252d3d;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matiere-info span{display:block;margin-top:3px;color:#969eae;font-size:10px}.coefficient-box{display:flex;align-items:center;gap:5px}.coefficient-box label{color:#8a93a6;font-size:10px;font-weight:700}.coefficient-box input{width:55px;height:34px;border:1px solid #dfe3ec;border-radius:8px;text-align:center;font-size:12px;font-weight:700;color:#30384a;outline:none}.coefficient-box input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f114}.coefficient-box input:disabled{background:#f2f4f8;color:#b4bac7}.matieres-summary{margin-top:18px;display:flex;align-items:center;gap:11px;padding:13px 15px;border-radius:12px;background:#f8f9fc;border:1px solid #edf0f5}.summary-icon{color:#6366f1;font-size:18px}.matieres-summary strong{display:block;color:#384054;font-size:11px}.matieres-summary span{display:block;color:#929aab;font-size:10px;margin-top:2px}.final-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid #edf0f5}.cancel-btn,.final-save-btn{border-radius:10px;padding:11px 16px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:7px}.cancel-btn{border:1px solid #dfe3ec;background:#fff;color:#697286}.final-save-btn{border:0;background:#4f46e5;color:#fff;box-shadow:0 7px 17px #4f46e533}.final-save-btn:hover:not(:disabled){background:#4338ca}.final-save-btn:disabled,.cancel-btn:disabled{opacity:.55;cursor:not-allowed}.existing-card{background:#fff;border:1px solid #e8ebf2;border-radius:18px;overflow:hidden;box-shadow:0 5px 22px #0f172a0a}.existing-header{display:flex;align-items:center;justify-content:space-between;padding:19px 22px;border-bottom:1px solid #edf0f5}.existing-header span:first-child{color:#8a93a6;font-size:10px;text-transform:uppercase;font-weight:700}.existing-header h3{margin:4px 0 0;color:#252d3d;font-size:15px}.existing-count{background:#eef2ff;color:#4f46e5;border-radius:20px;padding:6px 10px;font-size:10px;font-weight:700}.existing-list{padding:8px 20px 15px}.existing-item{display:flex;align-items:center;gap:12px;padding:11px 3px;border-bottom:1px solid #f0f2f6}.existing-item:last-child{border-bottom:0}.existing-icon{width:37px;height:37px;border-radius:10px;background:#f5f3ff;color:#7c3aed;display:flex;align-items:center;justify-content:center}.existing-name{flex:1}.existing-name strong{display:block;color:#30384a;font-size:12px}.existing-name span{display:block;color:#9aa1af;font-size:10px;margin-top:2px}.existing-coef{text-align:center;min-width:80px}.existing-coef span{display:block;color:#9aa1af;font-size:9px}.existing-coef strong{display:block;margin-top:2px;color:#4f46e5;font-size:15px}.delete-matiere-btn{width:34px;height:34px;border:0;border-radius:9px;background:#fff1f2;color:#e11d48;cursor:pointer}.delete-matiere-btn:hover{background:#ffe4e6}.no-data{padding:45px 20px;text-align:center;color:#8a93a6}.no-data i{display:block;font-size:30px;margin-bottom:10px}.no-data strong,.no-data span{display:block}.no-data strong{color:#4a5263;font-size:13px}.no-data span{margin-top:4px;font-size:11px}.maitre-modal-overlay,.confirm-overlay{position:fixed;inset:0;z-index:9999;background:#0f172a8c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:20px}.maitre-modal{width:100%;max-width:760px;max-height:92vh;overflow-y:auto;background:#fff;border-radius:21px;box-shadow:0 25px 70px #0f172a38}.maitre-modal-header{display:flex;align-items:center;gap:13px;padding:20px 22px;border-bottom:1px solid #edf0f5}.modal-title-icon{width:43px;height:43px;border-radius:12px;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;font-size:18px}.maitre-modal-header>div:nth-child(2){flex:1}.maitre-modal-header span{display:block;color:#8a93a6;font-size:10px;text-transform:uppercase;font-weight:700}.maitre-modal-header h2{margin:3px 0 0;color:#252d3d;font-size:18px}.modal-close{width:35px;height:35px;border:0;border-radius:9px;background:#f4f5f8;color:#697286;cursor:pointer}.modal-form{padding:22px}.modal-section{margin-bottom:23px}.modal-section-title{display:flex;align-items:center;gap:11px;margin-bottom:11px}.modal-section-title>span{width:29px;height:29px;border-radius:9px;background:#f1f3f9;color:#6366f1;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800}.modal-section-title>div{flex:1}.modal-section-title strong{display:block;color:#30384a;font-size:13px}.modal-section-title small{display:block;color:#9aa1af;font-size:10px;margin-top:2px}.modal-select-all{border:0;background:#eef2ff;color:#4f46e5;padding:7px 10px;border-radius:8px;font-size:10px;font-weight:700;cursor:pointer}.modal-matieres{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.modal-matiere{display:flex;align-items:center;gap:9px;min-height:48px;padding:8px 9px;border:1px solid #e3e7ef;border-radius:10px;cursor:pointer}.modal-matiere:hover{background:#fafaff}.modal-matiere.selected{background:#f6f5ff;border-color:#a5b4fc}.modal-check{min-width:19px;width:19px;height:19px;border:2px solid #d5dae4;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff}.modal-matiere.selected .modal-check{background:#4f46e5;border-color:#4f46e5}.modal-matiere>span{flex:1;color:#3c4455;font-size:11px;font-weight:600}.modal-matiere>input{width:45px;height:30px;border:1px solid #dfe3ec;border-radius:7px;text-align:center;font-size:11px;font-weight:700;outline:none}.modal-matiere>input:disabled{background:#f3f4f7;color:#b8bdc8}.modal-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:18px;border-top:1px solid #edf0f5}.modal-cancel,.modal-save{border-radius:10px;padding:11px 16px;font-size:12px;font-weight:700;cursor:pointer}.modal-cancel{border:1px solid #dfe3ec;background:#fff;color:#697286}.modal-save{border:0;background:#4f46e5;color:#fff}.modal-save:disabled{opacity:.5;cursor:not-allowed}.confirm-modal{width:100%;max-width:420px;background:#fff;border-radius:20px;padding:28px;text-align:center;box-shadow:0 25px 70px #0f172a40}.confirm-icon{width:55px;height:55px;margin:0 auto 15px;border-radius:17px;background:#fff7ed;color:#f97316;display:flex;align-items:center;justify-content:center;font-size:24px}.confirm-modal h3{margin:0;color:#252d3d;font-size:18px}.confirm-modal p{margin:9px 0 22px;color:#8991a2;font-size:12px;line-height:1.6}.confirm-actions{display:flex;justify-content:center;gap:9px}.confirm-cancel,.confirm-delete{border-radius:9px;padding:10px 17px;font-size:11px;font-weight:700;cursor:pointer}.confirm-cancel{border:1px solid #dfe3ec;background:#fff;color:#697286}.confirm-delete{border:0;background:#e11d48;color:#fff}.spin{animation:maitreSpin .8s linear infinite}@keyframes maitreSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 900px){.matieres-grid,.modal-matieres{grid-template-columns:1fr}.selected-class-banner{align-items:flex-start;flex-direction:column;gap:17px}.selected-class-stats{width:100%;justify-content:flex-start}}@media (max-width: 700px){.main-content-maitre{padding:20px 12px 40px}.maitre-hero{align-items:flex-start;flex-direction:column}.maitre-add-btn{width:100%;justify-content:center}.maitre-class-selector,.card-step-header{align-items:flex-start}.status-badge,.matiere-counter{display:none}.matieres-toolbar{align-items:flex-start;flex-direction:column}.select-all-btn{width:100%;justify-content:center}.final-actions{flex-direction:column-reverse}.cancel-btn,.final-save-btn{justify-content:center;width:100%}}@media (max-width: 500px){.maitre-hero h1{font-size:24px}.maitre-hero-icon{width:52px;height:52px}.maitre-class-selector{padding:16px}.maitre-card-body{padding:17px}.matiere-item{padding:10px}.coefficient-box label{display:none}.maitre-modal-overlay{padding:10px}.modal-form{padding:16px}.modal-actions{flex-direction:column-reverse}.modal-cancel,.modal-save{width:100%}}.selection-matieres{width:100%;display:flex;justify-content:center}.main-content-matieres .all-matieres,.main-content-matieres .all-matieres .droite{display:flex;width:100%}.main-content-matieres .form-container{display:flex;flex-direction:column;background-color:#ffffff2c;padding:15px;border-radius:15px}.main-content-matieres .form-container .team-matieres{display:flex;justify-content:space-around;margin-bottom:25px}.team-matieres .form-group{display:flex;flex-direction:column}.team-matieres .form-group label{text-align:center;color:#fff;font-weight:700;font-size:20px;margin-bottom:15px}.team-matieres .form-group input{width:200px;height:30px;font-size:20px;border-radius:10px;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px}.main-content-matieres .form-group select{width:230px;height:30px;font-size:16px;text-align:center;background-color:transparent;border-radius:10px;outline:none;border:none;border:#fff solid 2px;color:#000}.main-content-matieres .form-container .envoie{width:150px;width:100%;display:flex;justify-content:space-around}.main-content-matieres .form-container .btn-envoie{width:150px;padding:15px;font-size:18px;border:none;border-radius:15px;color:#fff;background-color:#0ba240c3}.main-content-matieres .form-container .btn-envoie2{width:150px;padding:15px;font-size:18px;border:none;border-radius:15px;color:#fff;background-color:#d0381abe}.avertissement-aucun-matieres{position:absolute}.liste-matieres{display:flex;flex-wrap:wrap;width:100%}.matiere-card{margin:5px;width:200px;text-align:center;background:#6aabfad6;padding:10px;border-radius:16px;box-shadow:0 4px 12px #00000014;transition:transform .2s ease,box-shadow .2s ease}.matiere-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.matiere-card h4{margin:0 0 10px;color:#fff}.matiere-card p{margin:4px 0;font-size:16px;font-weight:600;color:#fff}.matiere-actions{width:100%;margin-top:12px;display:flex;justify-content:space-around}.matiere-actions button{width:40%;margin-top:12px}.bulletin-actions{display:flex;justify-content:center;align-items:center;gap:12px;margin:0 auto 18px;width:-moz-fit-content;width:fit-content;padding:10px;background:#fffffff5;border-radius:14px;box-shadow:0 8px 25px #0000001f;position:relative;z-index:20}.bulletin-action-btn{display:flex;align-items:center;justify-content:center;gap:9px;min-width:145px;height:44px;padding:0 18px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.bulletin-action-btn:hover{transform:translateY(-2px)}.bulletin-action-btn:active{transform:translateY(0)}.bulletin-action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.bulletin-action-icon{font-size:17px}.bulletin-download-btn{background:#2563eb;color:#fff;box-shadow:0 5px 14px #2563eb40}.bulletin-download-btn:hover{background:#1d4ed8}.bulletin-print-btn{background:#111827;color:#fff;box-shadow:0 5px 14px #11182738}.bulletin-print-btn:hover{background:#030712}@page{size:A4 portrait;margin:0}@media print{html,body{width:210mm!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body *{visibility:hidden!important}#bulletin-print,#bulletin-print *,#bulletins-classe-print,#bulletins-classe-print *{visibility:visible!important}#bulletin-print{position:absolute!important;top:0!important;left:0!important;width:210mm!important;min-width:210mm!important;max-width:210mm!important;min-height:297mm!important;margin:0!important;padding:7mm!important;box-sizing:border-box!important;background:#fff!important;border:none!important;box-shadow:none!important;overflow:visible!important}#bulletins-classe-print{position:absolute!important;top:0!important;left:0!important;width:210mm!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}.bulletin-classe-page{width:210mm!important;min-height:297mm!important;margin:0!important;padding:7mm!important;box-sizing:border-box!important;background:#fff!important;overflow:visible!important;-moz-column-break-after:page!important;break-after:page!important;page-break-after:always!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-classe-page:last-child{-moz-column-break-after:auto!important;break-after:auto!important;page-break-after:auto!important}.dashboard-bulletin-overlay,.dashboard-bulletin-wrapper,.main-content-notes-admin{position:static!important;display:block!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;background:transparent!important;overflow:visible!important;transform:none!important;box-shadow:none!important}.bulletin-actions,.dashboard-bulletin-close,.mes-barre,.admin-notes-header,.rapport-section,.filters-section,.notes-list-section,.tirage-bulletins-section{display:none!important}.bulletin-paper{display:block!important;width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box!important;background:#fff!important;border:none!important;box-shadow:none!important;transform:none!important;animation:none!important;overflow:visible!important}.tetulamini{width:100%!important;display:grid!important;grid-template-columns:30% 43% 27%!important;align-items:center!important;justify-content:stretch!important;gap:0!important;margin:0 0 3mm!important;box-sizing:border-box!important}.tetulamini>div:nth-child(1){width:auto!important;min-width:0!important;display:flex!important;justify-content:center!important}.tetulamini>div:nth-child(2){width:auto!important;min-width:0!important;display:flex!important;justify-content:center!important;align-items:center!important}.tetulamini>div:nth-child(3){width:auto!important;min-width:0!important;display:flex!important;justify-content:flex-end!important}.ministere{width:100%!important;box-sizing:border-box!important;padding:2.5mm!important;border-radius:4mm!important;background-color:#082d63!important;color:#fff!important;font-size:12px!important;line-height:1.25!important;font-weight:400!important;text-align:center!important}.ministere span{font-size:7px!important}.tetulamini .bulletin-title-section{width:100%!important;display:flex!important;flex-direction:column!important;padding:1mm!important;box-sizing:border-box!important;text-align:center!important}.tetulamini .bulletin-title-section h2{margin:0!important;font-size:22px!important;line-height:1.15!important;color:#082d63!important}.tetulamini .bulletin-title-section span{display:block!important;margin-top:1.5mm!important;font-size:18px!important;line-height:1.2!important}.tetulamini>.bulletin-school-year{width:100%!important;min-width:0!important;padding:2.5mm!important;box-sizing:border-box!important;background:#082d63!important;color:#fff!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important;border-radius:2mm!important}.tetulamini>.bulletin-school-year span{font-size:12px!important;font-weight:800!important}.tetulamini>.bulletin-school-year strong{margin-top:1mm!important;font-size:20px!important}.bulletin-school-header{width:100%!important;min-height:25mm!important;display:flex!important;flex-direction:row!important;align-items:stretch!important;justify-content:space-between!important;box-sizing:border-box!important;overflow:hidden!important;border:1px solid #8ea5c1!important;margin-bottom:3mm!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-school-left{display:flex!important;flex-direction:row!important;align-items:center!important;gap:15px!important;padding:5px 10px!important;flex:1 1 auto!important;min-width:0!important}.bulletin-logo{width:40mm!important;height:30mm!important;flex:0 0 20mm!important;display:flex!important;align-items:center!important;justify-content:center!important}.bulletin-logo img{max-width:40mm!important;max-height:30mm!important;-o-object-fit:contain!important;object-fit:contain!important}.bulletin-logo-empty{font-size:18px!important}.bulletin-school-info{min-width:0!important;flex:1 1 auto!important}.bulletin-school-info h1{margin:0 0 1mm!important;font-size:15px!important;line-height:1.2!important;text-align:center!important;color:#082d63!important;font-weight:900!important}.bulletin-motto{margin-bottom:2mm!important;font-size:14px!important;line-height:1.2!important}.bulletin-school-info p{margin:1mm 0!important;font-size:14px!important;line-height:1.2!important}.bulletin-school-header>.bulletin-school-year{width:45mm!important;min-width:38mm!important;padding:3mm!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:2mm!important;color:#fff!important}.bulletin-school-year img{width:100%;border-radius:15px}.bulletin-school-header>.bulletin-school-year>div{width:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}.bulletin-school-header>.bulletin-school-year span{font-size:6.5px!important;font-weight:800!important}.bulletin-school-header>.bulletin-school-year strong{margin-top:1mm!important;font-size:19px!important;word-break:break-word!important}.bulletin-student-info{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr 1fr!important;margin-bottom:3mm!important;box-sizing:border-box!important;border:1px solid #9fb2c9!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-info-column{width:auto!important;min-width:0!important;padding:10px!important;box-sizing:border-box!important}.bulletin-info-column+.bulletin-info-column{border-left:1px solid #d1d9e3!important;border-top:none!important}.bulletin-info-row{width:100%!important;min-height:5.5mm!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:0!important;padding:0!important;font-size:8px!important}.bulletin-info-row label{width:23mm!important;min-width:23mm!important;font-size:8px!important;color:#082d63!important}.bulletin-info-row strong{min-width:0!important;font-size:8px!important;word-break:break-word!important}.bulletin-stats-grid{width:100%!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;margin-bottom:3mm!important;border:1px solid #8ea5c1!important;box-sizing:border-box!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-stat-card{min-height:16mm!important;border-right:1px solid #8ea5c1!important;border-bottom:none!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important}.bulletin-stat-card:last-child{border-right:none!important}.bulletin-stat-card span{font-size:10px!important;margin-bottom:1mm!important}.bulletin-stat-card strong{font-size:18px!important}.bulletin-stat-card small{font-size:6.5px!important;margin-left:1mm!important}.bulletin-period{width:100%!important;margin-bottom:3mm!important;-moz-column-break-inside:auto!important;break-inside:auto!important}.bulletin-period-title{width:100%!important;min-height:6mm!important;display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:3mm!important;padding:1.5mm 2mm!important;box-sizing:border-box!important}.bulletin-period-title span{font-size:6.5px!important}.bulletin-period-title strong{font-size:8px!important}.bulletin-table-container{width:100%!important;overflow:visible!important;display:block!important}.bulletin-notes-table{width:100%!important;min-width:0!important;max-width:none!important;table-layout:fixed!important;border-collapse:collapse!important}.bulletin-notes-table th{padding:1.5mm .8mm!important;font-size:8px!important;line-height:1.1!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:center!important}.bulletin-notes-table td{padding:1.2mm .8mm!important;height:auto!important;min-height:5mm!important;font-size:10px!important;line-height:1.15!important;white-space:normal!important;word-wrap:break-word!important;overflow-wrap:break-word!important;vertical-align:middle!important}.bulletin-notes-table th:nth-child(1),.bulletin-notes-table td:nth-child(1){width:4%!important}.bulletin-notes-table th:nth-child(2),.bulletin-notes-table td:nth-child(2){width:20%!important;text-align:left!important}.bulletin-notes-table th:nth-child(3),.bulletin-notes-table td:nth-child(3){width:9%!important}.bulletin-notes-table th:nth-child(4),.bulletin-notes-table td:nth-child(4){width:10%!important}.bulletin-notes-table th:nth-child(5),.bulletin-notes-table td:nth-child(5){width:10%!important}.bulletin-notes-table th:nth-child(6),.bulletin-notes-table td:nth-child(6){width:7%!important}.bulletin-notes-table th:nth-child(7),.bulletin-notes-table td:nth-child(7){width:18%!important}.bulletin-notes-table th:nth-child(8),.bulletin-notes-table td:nth-child(8){width:12%!important;font-size:5.8px!important;text-align:center!important}.bulletin-professeur{font-weight:600!important;word-break:break-word!important;overflow-wrap:anywhere!important}.bulletin-notes-table th:nth-child(9),.bulletin-notes-table td:nth-child(9){width:10%!important}.bulletin-note{font-size:6.5px!important;font-weight:900!important}.bulletin-rank{font-weight:800!important}.bulletin-subject{font-weight:700!important}.bulletin-notes-table thead{display:table-header-group!important}.bulletin-notes-table tr{-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-period-summary{width:100%!important;display:flex!important;flex-direction:row!important;justify-content:flex-end!important;box-sizing:border-box!important;border:1px solid #9fb2c9!important;border-top:none!important}.bulletin-period-summary>div{min-width:30mm!important;padding:1.5mm 2.5mm!important;display:flex!important;align-items:center!important;gap:1.5mm!important}.bulletin-period-summary span{font-size:6px!important}.bulletin-period-summary strong{font-size:9px!important}.bulletin-period-summary small{font-size:6px!important}.bulletin-bottom-grid{width:100%!important;display:grid!important;grid-template-columns:1.1fr 1fr!important;gap:3mm!important;margin-top:3mm!important;box-sizing:border-box!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-general-appreciation,.bulletin-mention{width:auto!important;min-width:0!important;min-height:25mm!important;box-sizing:border-box!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-section-title{height:6mm!important;font-size:7px!important}.bulletin-appreciation-content{min-height:19mm!important;padding:2.5mm!important;box-sizing:border-box!important;font-size:7px!important;line-height:1.35!important}.bulletin-mention-content{min-height:19mm!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}.bulletin-mention-content strong{font-size:13px!important}.bulletin-mention-content span{margin-top:1mm!important;font-size:6px!important}.bulletin-laurel{font-size:17px!important;line-height:15px!important}.bulletin-stars{font-size:7px!important;margin-top:1mm!important;letter-spacing:2px!important}.bulletin-footer-info{width:100%!important;display:grid!important;grid-template-columns:36mm 28mm 1fr!important;gap:3mm!important;margin-top:3mm!important;align-items:end!important;box-sizing:border-box!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-attendance{width:auto!important;min-width:0!important;border:1px solid #8ea5c1!important}.bulletin-attendance-title{font-size:6.5px!important;padding:1.5mm!important}.bulletin-attendance>div:not(.bulletin-attendance-title){padding:1.2mm 2mm!important;font-size:6px!important}.bulletin-retard-value{min-height:10mm!important;font-size:10px!important}.bulletin-date{font-size:6.5px!important;padding-bottom:1.5mm!important;grid-column:auto!important}.bulletin-signatures{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:25mm!important;margin-top:4mm!important;padding:0 8mm!important;box-sizing:border-box!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.bulletin-signatures>div{min-width:0!important;font-size:7px!important;text-align:center!important}.bulletin-signature-line{height:12mm!important;margin-top:1mm!important}.bulletin-no-data{padding:4mm!important;font-size:7px!important}.tetulamini{display:grid!important;grid-template-columns:30% 43% 27%!important}.tetulamini>div:nth-child(1){width:auto!important}.tetulamini>div:nth-child(2){width:auto!important}.tetulamini>div:nth-child(3){width:auto!important}.bulletin-school-header,.bulletin-school-left{flex-direction:row!important}.bulletin-school-header>.bulletin-school-year{width:38mm!important;min-width:38mm!important}.bulletin-student-info{grid-template-columns:2fr 1fr 1fr!important}.bulletin-stats-grid{grid-template-columns:repeat(4,1fr)!important}.bulletin-bottom-grid{grid-template-columns:1.1fr 1fr!important}.bulletin-footer-info{grid-template-columns:36mm 28mm 1fr!important}.bulletin-signatures{grid-template-columns:1fr 1fr!important}.bulletin-notes-table{width:100%!important;min-width:0!important}}.periodiquement h2{text-align:center;color:#2c3e50;margin-bottom:1rem}.periodiquement{display:flex;flex-wrap:wrap}.periodiquement .anneee{display:flex;flex-direction:column;width:40%;flex-wrap:wrap}.periodiquement .periodee{flex-direction:column;display:flex;width:55%;flex-wrap:wrap}.crud-form{display:flex;flex-wrap:wrap;gap:10px;background:#f8f9fa;padding:15px;border-radius:8px;justify-content:center;box-shadow:0 2px 6px #0000001a;margin-bottom:20px}.crud-form input,.crud-form select{padding:8px 10px;font-size:15px;border:1px solid #ccc;color:#000;border-radius:5px;outline:none;transition:.2s}.crud-form input:focus,.crud-form select:focus{border-color:#3498db;box-shadow:0 0 4px #3498db66}.crud-form button{padding:8px 16px;background:#3498db;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background .2s ease}.crud-form button:hover{background:#2980b9}.crud-table{width:100%;border-collapse:collapse;margin-bottom:30px;background:#b9bdca;box-shadow:0 2px 6px #0000001a;border-radius:8px;overflow:hidden}.crud-table thead{background:#3498db;color:#fff}.crud-table th,.crud-table td{text-align:center;padding:12px;color:#431a22;border-bottom:1px solid #ddd}.crud-table tr:nth-child(2n){background:#f8f8f8}.crud-table tr:hover{background:#e8f4ff}.crud-table button{margin:0 5px;padding:6px 10px;font-size:14px;border-radius:4px;border:none;cursor:pointer;transition:.2s}.crud-table button:first-child{background:#f39c12;color:#fff}.crud-table button:first-child:hover{background:#e67e22}.crud-table button:last-child{background:#e74c3c;color:#fff}.crud-table button:last-child:hover{background:#c0392b}.crud-table td[colspan]{color:#999;font-style:italic;padding:20px}.section-container{display:flex;gap:30px;justify-content:space-between;padding:20px}@media (max-width: 800px){.section-container{flex-direction:column;align-items:center}.crud-form{flex-direction:column;align-items:stretch}.crud-form input,.crud-form select{width:100%}}.furtif{display:none}.selection-mot2passes{width:100%;display:flex;justify-content:center}.main-content-mot2passes .all-mot2passes{display:grid;grid-template-columns:500px 1fr;gap:10px}.main-content-mot2passes .all-mot2passes .gauche{position:fixed;top:70px;left:180px;width:500px;height:calc(100vh - 70px);overflow-y:auto;padding:10px}.main-content-mot2passes .all-mot2passes .droite{grid-column:2;overflow-y:auto;margin-top:15px}.filters .team-mot2passes{display:flex;justify-content:space-around;margin-top:10px}.filters .team-mot2passes .form-group{margin-left:15px}.main-content-mot2passe .form-container{display:flex;flex-direction:column;background-color:#ffffff2c;padding:15px;border-radius:15px}.main-content-mot2passe .form-container .team-mot2passes{display:flex;justify-content:space-around;margin-bottom:25px}.team-mot2passes .form-group{display:flex;flex-direction:column}.team-mot2passes .form-group label{text-align:center;color:#fff;font-weight:700;font-size:20px;margin-bottom:15px}.team-mot2passes .form-group input{width:200px;height:30px;font-size:20px;border-radius:10px;outline:none;border:none;border-left:#fff solid 2px;border-bottom:#fff solid 2px}.team-mot2passes .form-group select{width:230px;height:30px;font-size:16px;text-align:center;background-color:transparent;border-radius:10px;outline:none;border:none;border:#fff solid 2px;color:#000}.main-content-mot2passe .form-container .envoie{width:150px;width:100%;display:flex;justify-content:space-around}.main-content-mot2passe .form-container .btn-envoie{width:150px;padding:15px;font-size:18px;border:none;border-radius:15px;color:#fff;background-color:#0ba240c3}.main-content-mot2passe .form-container .btn-envoie2{width:150px;padding:15px;font-size:18px;border:none;border-radius:15px;color:#fff;background-color:#d0381abe}.avertissement-aucun-mot2passes{position:absolute}.liste,.liste-mot2passes{display:flex;flex-wrap:wrap;padding:20px}.mot2passe-card{position:relative;display:flex;flex-wrap:wrap;flex-direction:column;justify-content:start;margin:5px;width:170px;text-align:center;background:#6aabfad6;height:180px;padding:10px;border-radius:16px;box-shadow:0 4px 12px #00000014;transition:transform .2s ease,box-shadow .2s ease}.mot2passe-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.mot2passe-card h4{margin:0 0 10px;color:#fff}.mot2passe-card p{margin:4px 0;font-size:16px;font-weight:600;color:#fff}.mot2passe-actions{width:100%;margin-top:12px;display:flex;justify-content:space-around}.mot2passe-actions button{width:80%;bottom:4px;position:absolute}.all-parametre{width:100%;display:flex;justify-content:center;align-items:flex-start}.div-para{width:100%;max-width:940px;background:#fff;border:1px solid #e6ebf2;border-radius:18px;overflow:hidden;box-shadow:0 10px 35px #0f172a0f,0 2px 8px #0f172a08;animation:parametreAppear .35s ease}@keyframes parametreAppear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.form-container{width:100%;display:flex;flex-direction:column;box-sizing:border-box}.parametre-header{width:100%;padding:30px 34px;display:flex;align-items:center;gap:18px;box-sizing:border-box;border-bottom:1px solid #edf0f5;background:#fff}.parametre-header-icon{width:52px;height:52px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#eff6ff;border:1px solid #dbeafe;font-size:23px;box-shadow:0 3px 10px #2563eb14}.parametre-header h1{margin:0;color:#172033;font-size:24px;font-weight:800;line-height:1.2;letter-spacing:-.4px}.parametre-header p{margin:7px 0 0;color:#7b8798;font-size:13px;font-weight:500;line-height:1.5}.parametre-section{width:100%;padding:28px 34px 32px;box-sizing:border-box;border-bottom:1px solid #edf0f5}.parametre-section-title{display:flex;align-items:center;gap:13px;margin-bottom:3px}.parametre-section-icon{width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#f1f5f9;border:1px solid #e4e9f0;font-size:17px}.parametre-section-title>div{display:flex;flex-direction:column;gap:3px}.parametre-section-title strong{color:#1e293b;font-size:14px;font-weight:800}.parametre-section-title span{color:#8994a5;font-size:12px;font-weight:500;line-height:1.4}.form-container .team-para{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:0;margin:0;box-sizing:border-box}.form-container .team-para .form-group{width:100%;margin-top:22px;padding:0;display:flex;flex-direction:column;box-sizing:border-box}.form-container .team-para .form-group label{margin-bottom:8px;color:#475569;font-size:12px;font-weight:700;line-height:1.3}.input-wrapper{width:100%;height:48px;display:flex;align-items:center;box-sizing:border-box;border:1px solid #dce3ec;border-radius:10px;background:#f9fafc;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.input-wrapper>span{width:45px;height:100%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#8a96a8;font-size:15px;border-right:1px solid #e7ebf1}.input-wrapper input{width:100%;height:100%;padding:0 14px;border:none;outline:none;background:transparent;color:#1e293b;font-family:inherit;font-size:14px;font-weight:600;box-sizing:border-box}.input-wrapper input::-moz-placeholder{color:#a4afbd;font-weight:500}.input-wrapper input::placeholder{color:#a4afbd;font-weight:500}.input-wrapper:hover{border-color:#c5cfdd;background:#fff}.input-wrapper:focus-within{border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb17}.input-wrapper:focus-within>span{color:#2563eb;border-color:#dbeafe}.input-wrapper input[type=password]{letter-spacing:1.5px}.password-section{background:linear-gradient(180deg,#fff,#fcfdff)}.parametre-footer{width:100%;min-height:82px;padding:18px 34px;display:flex;align-items:center;justify-content:space-between;gap:25px;box-sizing:border-box;background:#fbfcfe}.parametre-security-info{display:flex;align-items:center;gap:9px}.parametre-security-info>span{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#ecfdf5;border:1px solid #d1fae5;font-size:14px}.parametre-security-info p{margin:0;color:#7a8798;font-size:12px;font-weight:600}.parametre-footer .btn-envoie{min-width:215px;height:46px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:10px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-family:inherit;font-size:13px;font-weight:750;cursor:pointer;box-shadow:0 6px 16px #2563eb2e;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.parametre-footer .btn-envoie:hover{transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 9px 22px #2563eb3d}.parametre-footer .btn-envoie:active{transform:translateY(0);box-shadow:0 4px 10px #2563eb26}.parametre-footer .btn-envoie:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}.button-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:buttonSpinner .7s linear infinite}@keyframes buttonSpinner{to{transform:rotate(360deg)}}.Message3rror{margin:0;padding:13px 20px;font-size:13px;font-weight:700;text-align:center;border-top:1px solid transparent;animation:messageAppear .25s ease}.Message3rror.message-success{color:#047857;background:#ecfdf5;border-top-color:#d1fae5}.Message3rror.message-error{color:#b91c1c;background:#fef2f2;border-top-color:#fee2e2}@keyframes messageAppear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media screen and (max-width: 768px){.main-content-parametre{padding:25px 15px 45px}.div-para{max-width:100%;border-radius:16px}.parametre-header{padding:24px 23px;gap:14px}.parametre-header-icon{width:45px;height:45px;border-radius:11px;font-size:19px}.parametre-header h1{font-size:21px}.parametre-header p{font-size:12px}.parametre-section{padding:23px 23px 27px}.form-container .team-para{grid-template-columns:1fr;gap:0}.form-container .team-para .form-group{margin-top:19px}.parametre-footer{padding:18px 23px;align-items:stretch;flex-direction:column;gap:16px}.parametre-security-info{justify-content:flex-start}.parametre-footer .btn-envoie{width:100%;min-width:0}}@media screen and (max-width: 480px){.main-content-parametre{padding:12px 8px 30px}.div-para{border-radius:14px}.parametre-header{padding:20px 17px}.parametre-header-icon{width:41px;height:41px;font-size:17px;border-radius:10px}.parametre-header h1{font-size:18px;letter-spacing:-.2px}.parametre-header p{margin-top:5px;font-size:11px}.parametre-section{padding:20px 17px 23px}.parametre-section-title{gap:10px}.parametre-section-icon{width:34px;height:34px;font-size:15px}.parametre-section-title strong{font-size:13px}.parametre-section-title span{font-size:11px}.form-container .team-para .form-group{margin-top:16px}.form-container .team-para .form-group label{margin-bottom:7px;font-size:11px}.input-wrapper{height:45px;border-radius:9px}.input-wrapper>span{width:40px;font-size:13px}.input-wrapper input{padding:0 11px;font-size:13px}.parametre-footer{padding:17px;gap:14px}.parametre-security-info p{font-size:11px}.parametre-footer .btn-envoie{height:45px;border-radius:9px;font-size:12px}.Message3rror{padding:11px 15px;font-size:11px}}@media screen and (max-width: 360px){.main-content-parametre{padding:8px 5px 25px}.parametre-header{padding:17px 14px}.parametre-section{padding:18px 14px 21px}.parametre-footer{padding:14px}.parametre-header h1{font-size:17px}}@media (prefers-reduced-motion: reduce){.div-para,.Message3rror,.input-wrapper,.parametre-footer .btn-envoie,.button-spinner{animation:none!important;transition:none!important}}:root{--emploi-primary: #2563eb;--emploi-primary-dark: #1d4ed8;--emploi-primary-light: #eff6ff;--emploi-success: #059669;--emploi-success-light: #ecfdf5;--emploi-danger: #dc2626;--emploi-danger-light: #fef2f2;--emploi-warning: #d97706;--emploi-warning-light: #fffbeb;--emploi-text: #172033;--emploi-muted: #64748b;--emploi-border: #dbe2ea;--emploi-border-light: #e9eef5;--emploi-bg: #f5f7fb;--emploi-white: #ffffff;--emploi-radius: 14px;--emploi-shadow: 0 8px 30px rgba(15, 23, 42, .07)}.main-content-emploi_temps{padding:24px 28px 40px;background:var(--emploi-bg);box-sizing:border-box;color:var(--emploi-text)}.emploi-page-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.emploi-page-header>div:first-child{min-width:0}.emploi-eyebrow{display:inline-flex;align-items:center;gap:6px;margin-bottom:6px;font-size:11px;font-weight:800;letter-spacing:1.3px;color:var(--emploi-primary)}.emploi-page-header h1{margin:0;font-size:30px;line-height:1.2;font-weight:800;color:#0f172a}.emploi-page-header p{margin:7px 0 0;font-size:14px;color:var(--emploi-muted)}.emploi-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.emploi-stat{min-width:90px;padding:9px 15px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--emploi-border);border-radius:12px;background:var(--emploi-white);box-shadow:0 4px 15px #0f172a0a}.emploi-stat strong{font-size:19px;line-height:1;color:var(--emploi-primary)}.emploi-stat span{margin-top:4px;font-size:10px;font-weight:700;color:var(--emploi-muted);text-transform:uppercase}.emploi-btn-primary{border:none;padding:12px 18px;border-radius:11px;background:linear-gradient(135deg,var(--emploi-primary),var(--emploi-primary-dark));color:#fff;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 8px 18px #2563eb38;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.emploi-btn-primary:hover{transform:translateY(-1px);box-shadow:0 11px 24px #2563eb47}.emploi-btn-primary:active{transform:translateY(0)}.emploi-alert{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;padding:12px 15px;margin-bottom:15px;border-radius:11px;font-size:13px;font-weight:600}.emploi-alert.success{color:#047857;background:var(--emploi-success-light);border:1px solid #a7f3d0}.emploi-alert.error{color:#b91c1c;background:var(--emploi-danger-light);border:1px solid #fecaca}.emploi-alert button{border:none;background:transparent;color:inherit;font-size:20px;cursor:pointer}.emploi-toolbar{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 15px;margin-bottom:18px;box-sizing:border-box;background:var(--emploi-white);border:1px solid var(--emploi-border-light);border-radius:var(--emploi-radius);box-shadow:0 5px 18px #0f172a0b}.emploi-filter{display:flex;align-items:center;gap:10px}.emploi-filter label{font-size:12px;font-weight:800;color:#475569;white-space:nowrap}.emploi-filter select{min-width:220px;padding:10px 35px 10px 12px;border-radius:9px;border:1px solid var(--emploi-border);background-color:#fff;color:#1e293b;font-size:13px;font-weight:600;outline:none;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.emploi-filter select:hover{border-color:#b8c5d6}.emploi-filter select:focus{border-color:var(--emploi-primary);box-shadow:0 0 0 3px #2563eb17}.fusion-toolbar{display:flex;align-items:center;gap:9px;padding:6px 8px;background:#f8fafc;border:1px solid #dbeafe;border-radius:10px}.fusion-toolbar span{padding:0 6px;font-size:12px;font-weight:700;color:var(--emploi-primary)}.fusion-btn{border:none;padding:8px 13px;border-radius:8px;background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;font-size:12px;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.fusion-btn:hover{transform:translateY(-1px);box-shadow:0 6px 15px #2563eb38}.fusion-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.fusion-cancel-btn{border:1px solid #e2e8f0;padding:8px 11px;border-radius:8px;background:#fff;color:#64748b;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.fusion-cancel-btn:hover{background:#f8fafc;color:#334155}.emploi-container{width:100%;display:flex;flex-direction:column;gap:22px;box-sizing:border-box}.all_emploi{width:100%;color:var(--emploi-text);text-align:left;background:#fff;border:1px solid var(--emploi-border-light);border-radius:16px;overflow:hidden;box-shadow:var(--emploi-shadow)}.emploi-classe-header{min-height:68px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(135deg,#fff,#f8fbff);border-bottom:1px solid var(--emploi-border-light)}.emploi-classe-header span{display:block;margin-bottom:3px;font-size:9px;font-weight:800;letter-spacing:1.1px;color:var(--emploi-primary)}.emploi-classe-header h2{margin:0;font-size:20px;font-weight:800;color:#0f172a}.classe-badge{display:inline-flex;align-items:center;padding:7px 11px;border-radius:20px;background:var(--emploi-primary-light);color:var(--emploi-primary);font-size:11px;font-weight:800;white-space:nowrap}.emploi-classe-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.all-table{width:100%;padding:0;box-sizing:border-box}.emploi-table-wrapper{width:100%;overflow-x:auto;overflow-y:visible;scrollbar-width:thin}.emploi-table{width:100%;min-width:950px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13px;color:#1e293b;background:#fff}.emploi-table .heure-column{width:120px}.emploi-table .heure-cell{width:135px;text-align:center;padding:4px 5px;background:#f7f8fa;border-right:1px solid var(--emploi-border);border-bottom:1px solid var(--emploi-border);vertical-align:middle}.heure-main{display:inline-flex;align-items:center;justify-content:center;min-width:95px;padding:7px 8px;border-radius:7px;background:#fff;border:1px solid #e2e8f0;color:#334155;font-size:11px;font-weight:800;white-space:nowrap}.emploi-table thead th{position:sticky;top:0;z-index:10;height:46px;padding:5px;text-align:center;background:linear-gradient(180deg,#2563eb,#1d4ed8);color:#fff;border-right:1px solid rgba(255,255,255,.15);font-size:12px;font-weight:800;letter-spacing:.2px}.emploi-table thead th:first-child{border-top-left-radius:0}.emploi-table thead th:last-child{border-right:none}.emploi-table tbody td{padding:5px;min-height:75px;height:75px;text-align:center;vertical-align:middle;border-right:1px solid var(--emploi-border);border-bottom:1px solid var(--emploi-border);background:#fff;box-sizing:border-box}.emploi-table tbody tr:nth-child(2n) .emploi-cell-normal{background:#fbfdff}.emploi-cell-empty{background:repeating-linear-gradient(135deg,#fff,#fff 7px,#fafbfc 7px 14px)!important}.emploi-cell-empty span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;color:#cbd5e1;font-size:13px}.emploi-cell-normal{transition:background .18s ease,box-shadow .18s ease}.emploi-cell-normal:hover{background:#f8fbff!important;box-shadow:inset 0 0 0 2px #2563eb14}.emploi-cell-inner{width:100%;min-height:65px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;box-sizing:border-box}.emploi-matieres{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.emploi-subject{width:100%;display:flex;align-items:center;justify-content:center;gap:5px;padding:4px 5px;box-sizing:border-box}.emploi-subject strong{max-width:100%;color:#1e3a8a;font-size:12px;font-weight:800;line-height:1.25;word-break:break-word}.subject-icon{flex-shrink:0;color:var(--emploi-primary);font-size:10px}.emploi-subject-special{width:100%;display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 7px;background:linear-gradient(135deg,#eff6ff,#eef2ff);border:1px solid #dbeafe;border-radius:7px;box-sizing:border-box}.emploi-subject-special strong{color:#1e40af;font-size:11px;font-weight:800;line-height:1.2;word-break:break-word}.emploi-subject-special .subject-icon{color:#4f46e5}.emploi-no-course,.emploi-empty{color:#94a3b8;font-size:11px;font-weight:600}.emploi-professeur{max-width:95%;padding:3px 7px;border-radius:5px;background:#f8fafc;color:#64748b;font-size:9px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emploi-cell-merged{position:relative;padding:7px!important;vertical-align:middle;overflow:hidden;background:linear-gradient(145deg,#f0f7ff,#eef4ff,#f5f3ff)!important;border:2px solid #93c5fd!important;box-shadow:inset 0 0 0 1px #fffc,0 2px 8px #2563eb0f}.emploi-cell-merged:before{content:"";position:absolute;top:7px;bottom:7px;left:4px;width:3px;border-radius:10px;background:linear-gradient(180deg,#2563eb,#7c3aed)}.emploi-cell-merged .emploi-cell-inner{position:relative;width:100%;height:100%;min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.emploi-cell-merged .emploi-matieres{position:absolute;left:50%;top:50%;width:-moz-max-content;width:max-content;max-width:85%;transform:translate(-50%,-50%) rotate(-45deg);transform-origin:center center;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:2}.emploi-cell-merged .emploi-subject,.emploi-cell-merged .emploi-subject-special{display:flex;align-items:center;justify-content:center;white-space:wrap;text-align:center}.emploi-cell-merged .emploi-subject strong,.emploi-cell-merged .emploi-subject-special strong{display:block;text-align:center;font-size:15px;line-height:1.2;white-space:nowrap}.emploi-cell-merged .emploi-professeur{position:absolute;left:50%;top:50%;width:-moz-max-content;width:max-content;transform:translate(-50%,calc(-50% + 32px)) rotate(-45deg);transform-origin:center center;white-space:nowrap;z-index:3;text-align:center}.emploi-merged-top{position:absolute;top:8px;left:50%;width:auto;transform:translate(-50%);z-index:10;display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:0}.merged-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 7px;border-radius:20px;background:#fff;border:1px solid #bfdbfe;color:#2563eb;font-size:9px;font-weight:900;box-shadow:0 2px 5px #2563eb14;white-space:nowrap}.defusion-btn{width:25px;height:25px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid #bfdbfe;border-radius:7px;background:#fff;color:#2563eb;font-size:13px;font-weight:800;cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}.defusion-btn:hover{background:#2563eb;color:#fff;transform:scale(1.04);box-shadow:0 4px 10px #2563eb2e}.emploi-cell-actions{display:flex;align-items:center;justify-content:center;gap:4px;opacity:0;max-height:0;overflow:hidden;transition:opacity .18s ease,max-height .18s ease}.emploi-cell:hover .emploi-cell-actions,.emploi-cell-selected .emploi-cell-actions,.emploi-cell-merged:hover .emploi-cell-actions{opacity:1;max-height:30px}.emploi-cell-merged .emploi-cell-actions{position:absolute;bottom:7px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}.emploi-select-btn{padding:4px 7px;border:1px solid #dbeafe;border-radius:6px;background:#fff;color:#2563eb;font-size:9px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}.emploi-select-btn:hover{background:#eff6ff;border-color:#bfdbfe}.emploi-edit-btn{padding:4px 7px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;font-size:9px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}.emploi-edit-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.emploi-cell-merged .emploi-no-course{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-45deg);white-space:nowrap;text-align:center;z-index:2}.emploi-cell-merged .emploi-subject-special{margin:2px 0}.emploi-cell-merged .subject-icon{margin-right:5px}.emploi-cell-selected{background:linear-gradient(135deg,#dbeafe,#e0e7ff)!important;border:2px solid #2563eb!important;box-shadow:inset 0 0 0 2px #ffffffb3,0 0 0 2px #2563eb14;position:relative}.emploi-cell-selected:after{content:"✓";position:absolute;top:5px;right:5px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#2563eb;color:#fff;font-size:11px;font-weight:900;z-index:5}.emploi-empty-state{width:100%;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:15px;box-sizing:border-box}.empty-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;border-radius:16px;background:#eff6ff;font-size:26px}.emploi-empty-state h2{margin:0;color:#1e293b;font-size:17px;font-weight:800}.emploi-empty-state p{margin:7px 0 0;color:#94a3b8;font-size:13px}.emploi-modal-overlay{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;background:#0f172a8f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:emploiOverlayIn .18s ease}@keyframes emploiOverlayIn{0%{opacity:0}to{opacity:1}}.emploi-modal{width:100%;max-width:500px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:17px;border:1px solid #e2e8f0;box-shadow:0 25px 70px #0f172a38;animation:emploiModalIn .2s ease}@keyframes emploiModalIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.emploi-modal-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 20px;border-bottom:1px solid #eef2f7;background:linear-gradient(135deg,#fff,#f8fbff)}.emploi-modal-header span{display:block;margin-bottom:3px;color:#2563eb;font-size:9px;font-weight:900;letter-spacing:1px}.emploi-modal-header h2{margin:0;color:#0f172a;font-size:18px;font-weight:800}.emploi-modal-header>button{width:31px;height:31px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#64748b;font-size:20px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.emploi-modal-header>button:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.emploi-modal form{padding:20px}.emploi-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.emploi-form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.emploi-form-group label{color:#334155;font-size:12px;font-weight:800}.emploi-form-group select,.emploi-form-group input{width:100%;min-height:42px;box-sizing:border-box;padding:9px 11px;border:1px solid #dbe2ea;border-radius:9px;background:#fff;color:#1e293b;font-size:13px;font-weight:600;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.emploi-form-group select:hover,.emploi-form-group input:hover{border-color:#b8c5d6}.emploi-form-group select:focus,.emploi-form-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.emploi-readonly-field{width:100%;min-height:42px;box-sizing:border-box;display:flex;align-items:center;padding:10px 12px;border:1px solid #d9dee7;border-radius:8px;background:#f3f5f8;color:#5f6877;font-size:14px;font-weight:600;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;user-select:none}.emploi-readonly-field:after{content:"🔒";margin-left:auto;font-size:12px;opacity:.65}.emploi-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:20px;padding-top:15px;border-top:1px solid #eef2f7}.emploi-btn-cancel{padding:10px 15px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;color:#64748b;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.emploi-btn-cancel:hover{background:#f8fafc;color:#334155}.emploi-btn-save{padding:10px 17px;border:none;border-radius:9px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 6px 15px #2563eb2e;transition:box-shadow .15s ease,transform .15s ease}.emploi-btn-save:hover{box-shadow:0 9px 20px #2563eb40;transform:translateY(-1px)}.emploi-btn-save:disabled,.emploi-btn-cancel:disabled{opacity:.6;cursor:not-allowed;transform:none}.emploi-table-wrapper::-webkit-scrollbar{height:7px}.emploi-table-wrapper::-webkit-scrollbar-track{background:#f1f5f9}.emploi-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:20px}.emploi-table-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}.Loader,.loader,.loading{display:inline-flex;align-items:center;gap:9px;color:#475569;font-size:13px}.Loader .spinner,.loader .spinner,.loading .spinner{width:19px;height:19px;border-radius:50%;border:3px solid #e2e8f0;border-top-color:#2563eb;animation:emploiSpin .8s linear infinite}@keyframes emploiSpin{to{transform:rotate(360deg)}}.text-muted{color:#64748b;font-size:13px}.small{font-size:12px}.bold{font-weight:700}.center{text-align:center}.hidden{display:none!important}.emploi-export-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.emploi-export-actions button{min-height:38px;padding:9px 12px;border-radius:9px;font-size:11px;font-weight:800;cursor:pointer;transition:all .18s ease}.emploi-export-actions button:hover{transform:translateY(-1px)}.emploi-export-actions button:disabled{opacity:.55;cursor:not-allowed;transform:none}.emploi-btn-download-all{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8}.emploi-btn-download-all:hover{background:#dbeafe}.emploi-btn-print-all{border:1px solid #d1d5db;background:#fff;color:#374151}.emploi-btn-print-all:hover{background:#f8fafc}.emploi-btn-custom{border:1px solid #ddd6fe;background:#f5f3ff;color:#6d28d9}.emploi-btn-custom:hover{background:#ede9fe}.emploi-print-btn,.emploi-download-btn{min-height:32px;padding:7px 10px;border-radius:8px;font-size:10px;font-weight:800;cursor:pointer;transition:all .18s ease}.emploi-print-btn{border:1px solid #dbe2ea;background:#fff;color:#475569}.emploi-print-btn:hover{background:#f8fafc;color:#111827;transform:translateY(-1px)}.emploi-download-btn{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8}.emploi-download-btn:hover{background:#dbeafe;transform:translateY(-1px)}.emploi-download-btn:disabled{opacity:.55;cursor:not-allowed}.emploi-export-modal{max-width:620px}.emploi-export-content{padding:20px}.emploi-export-section{padding:15px;margin-bottom:13px;border:1px solid #e5e7eb;border-radius:11px;background:#fafbfc}.emploi-export-section>strong{display:block;margin-bottom:12px;color:#1e293b;font-size:13px;font-weight:800}.emploi-export-section-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.emploi-export-section-header>div:first-child{display:flex;flex-direction:column;gap:3px}.emploi-export-section-header strong{color:#1e293b;font-size:13px}.emploi-export-section-header span{color:#94a3b8;font-size:10px;font-weight:600}.emploi-export-select-actions{display:flex;gap:5px}.emploi-export-select-actions button{padding:5px 8px;border:1px solid #dbe2ea;border-radius:6px;background:#fff;color:#475569;font-size:10px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.emploi-export-select-actions button:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.emploi-export-classes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.emploi-export-class{min-height:40px;display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease}.emploi-export-class:hover{border-color:#bfdbfe;background:#f8fbff}.emploi-export-class.selected{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.emploi-export-class input{width:16px;height:16px;margin:0;accent-color:#2563eb}.emploi-export-option{display:flex;align-items:center;gap:9px;min-height:36px;padding:5px 0;color:#475569;font-size:12px;font-weight:600;cursor:pointer}.emploi-export-option input{width:16px;height:16px;accent-color:#2563eb}.emploi-export-format{display:flex;gap:15px;flex-wrap:wrap}.emploi-export-format label{display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font-size:11px;font-weight:700;cursor:pointer}.emploi-export-format input{accent-color:#2563eb}.emploi-export-actions-bottom{display:flex;justify-content:flex-end;gap:8px;margin-top:17px;padding-top:15px;border-top:1px solid #eef2f7}.emploi-ecole-info{width:100%;box-sizing:border-box;background:var(--emploi-white);border:1px solid var(--emploi-border-light);border-radius:12px;padding:14px 18px 11px;margin-bottom:12px}.emploi-ecole-top{width:100%;display:flex;align-items:center;gap:14px}.emploi-ecole-logo-wrapper{flex:0 0 auto;display:flex;align-items:center;justify-content:center}.emploi-ecole-logo{width:52px;height:52px;-o-object-fit:cover;object-fit:cover;border-radius:10px;border:1px solid #e5e7eb;display:block}.emploi-ecole-identite{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:3px}.emploi-ecole-nom{font-size:16px;line-height:1.2;font-weight:800;color:var(--emploi-text)}.emploi-ecole-code{font-size:12px;line-height:1.2;font-weight:600;color:var(--emploi-muted)}.emploi-document-titre{flex:0 0 auto;min-width:190px;padding-left:22px;border-left:1px solid var(--emploi-border-light);display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:3px;text-align:right}.emploi-document-titre-label{font-size:18px;line-height:1.2;font-weight:800;color:var(--emploi-primary)}.emploi-document-classe{font-size:14px;line-height:1.2;font-weight:800;color:var(--emploi-text)}.emploi-ecole-details{width:100%;margin-top:10px;padding-top:9px;border-top:1px solid var(--emploi-border-light);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:var(--emploi-muted)}.emploi-ecole-details span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emploi-classe-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.emploi-classe-meta span{font-size:12px;color:#667085}.emploi-professeur{margin-top:8px;text-align:center;font-size:12px}.emploi-professeur-name{font-weight:700}.emploi-professeur-contact{margin-top:2px;font-size:10px;color:#667085;display:none;visibility:hidden}.emploi-professeur-empty{color:#98a2b3;font-style:italic}.emploi-professeurs-bloc{width:100%;margin-top:8px;display:flex;flex-direction:column;gap:5px;display:none}.emploi-professeur-bloc-item{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 6px;border-radius:6px;background:#ffffff8c}.emploi-professeur-matiere{font-size:10px;font-weight:700}.emploi-professeur-nom{font-size:10px;color:#59636f}.emploi-subject-content{display:flex;flex-direction:column;align-items:center;gap:2px}.emploi-subject-prof{font-size:10px;font-weight:500;color:#667085}@media (max-width: 900px){.emploi-ecole-info{flex-direction:column;align-items:flex-start}.emploi-ecole-details{flex-direction:column;gap:4px}}@media (max-width: 1000px){.main-content-emploi_temps{padding:20px 18px 35px}.emploi-page-header h1{font-size:25px}.emploi-toolbar{align-items:flex-start;flex-direction:column}.fusion-toolbar{width:100%;box-sizing:border-box}.emploi-filter{width:100%}.emploi-filter select{flex:1;min-width:0}}@media (max-width: 900px){.emploi-header-actions{flex-wrap:wrap}.emploi-export-actions{width:100%}.emploi-export-actions button{flex:1}.emploi-classe-header-actions{width:100%;justify-content:flex-start}}@media (max-width: 700px){.main-content-emploi_temps{padding:15px 10px 30px}.emploi-page-header{align-items:flex-start;flex-direction:column;gap:15px}.emploi-header-actions{width:100%;justify-content:space-between}.emploi-page-header h1{font-size:23px}.emploi-page-header p{font-size:12px}.emploi-stat,.emploi-btn-primary{flex:1}.emploi-toolbar{padding:11px}.emploi-filter{align-items:flex-start;flex-direction:column;width:100%}.emploi-filter select{width:100%}.fusion-toolbar{align-items:stretch;flex-direction:column}.fusion-toolbar span{padding:3px 4px}.fusion-btn,.fusion-cancel-btn{width:100%}.emploi-classe-header{padding:13px 12px}.emploi-classe-header h2{font-size:17px}.classe-badge{font-size:9px}.emploi-table{min-width:850px}.emploi-modal-overlay{padding:10px}.emploi-modal{max-height:94vh;border-radius:14px}.emploi-modal form{padding:15px}.emploi-form-grid{grid-template-columns:1fr;gap:0}.emploi-modal-actions{flex-direction:column-reverse}.emploi-btn-cancel,.emploi-btn-save{width:100%}}@media (max-width: 600px){.emploi-export-classes{grid-template-columns:1fr}.emploi-export-section-header{align-items:flex-start;flex-direction:column}.emploi-export-actions-bottom{flex-direction:column-reverse}.emploi-export-actions-bottom button{width:100%}.emploi-classe-header-actions{align-items:stretch;flex-direction:column}.emploi-print-btn,.emploi-download-btn{width:100%}}@media (max-width: 420px){.main-content-emploi_temps{padding:12px 7px 25px}.emploi-page-header h1{font-size:21px}.emploi-header-actions{gap:7px}.emploi-stat{min-width:0;padding:8px 9px}.emploi-stat strong{font-size:17px}.emploi-btn-primary{padding:10px 12px;font-size:11px}}button,select,input{font-family:inherit}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}@media print{@page{size:A4 portrait!important;margin:2mm}html,body{width:100%!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}header,nav,aside,.emploi-page-header,.emploi-toolbar,.fusion-toolbar,.emploi-header-actions,.emploi-classe-header,.emploi-classe-header-actions,.emploi-cell-actions,.emploi-merged-top,.defusion-btn,.emploi-select-btn,.emploi-edit-btn,.emploi-modal-overlay,.emploi-alert,button{display:none!important}.main-content-emploi_temps{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important}.emploi-container{width:100%!important;display:block!important;margin:0!important;padding:0!important}.all_emploi{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;border:1px solid #dbe2ea!important;border-radius:8px!important;box-shadow:none!important;overflow:hidden!important;page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important}.all_emploi+.all_emploi{page-break-before:always!important;-moz-column-break-before:page!important;break-before:page!important}.print-emploi .emploi-ecole-info{width:100%!important;display:block!important;box-sizing:border-box!important;margin:0!important;padding:5px 9px 4px!important;background:#fff!important;border:none!important;border-bottom:1px solid #dbe2ea!important;border-radius:0!important;overflow:hidden!important;page-break-before:avoid!important;page-break-after:avoid!important;page-break-inside:avoid!important;-moz-column-break-before:avoid!important;break-before:avoid!important;-moz-column-break-after:avoid!important;break-after:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important}.print-emploi .emploi-ecole-top{width:100%!important;display:flex!important;align-items:center!important;gap:9px!important;margin:0!important;padding:0!important;box-sizing:border-box!important;page-break-after:avoid!important;-moz-column-break-after:avoid!important;break-after:avoid!important}.print-emploi .emploi-ecole-logo-wrapper{flex:0 0 auto!important;width:82px!important;height:82px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.print-emploi .emploi-ecole-logo{width:82px!important;height:82px!important;display:block!important;margin:0!important;padding:0!important;-o-object-fit:cover!important;object-fit:cover!important;border-radius:6px!important;border:1px solid #e5e7eb!important;background:#fff!important}.print-emploi .emploi-ecole-identite{flex:1 1 auto!important;min-width:0!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:1px!important;text-align:left!important}.print-emploi .emploi-ecole-nom{margin:0!important;padding:0!important;font-size:20px!important;line-height:1.1!important;font-weight:800!important;color:#172033!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.print-emploi .emploi-ecole-code{margin:0!important;padding:0!important;font-size:9px!important;line-height:1.1!important;font-weight:600!important;color:#64748b!important}.print-emploi .emploi-document-titre{flex:0 0 auto!important;min-width:150px!important;margin:0 0 0 auto!important;padding:0 0 0 12px!important;border-left:1px solid #e5e7eb!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;gap:1px!important;text-align:right!important}.print-emploi .emploi-document-titre-label{margin:0!important;padding:0!important;font-size:15px!important;line-height:1.1!important;font-weight:800!important;color:#2563eb!important;white-space:nowrap!important}.print-emploi .emploi-document-classe{margin:0!important;padding:0!important;font-size:12px!important;line-height:1.1!important;font-weight:800!important;color:#172033!important;white-space:nowrap!important}.print-emploi .all-table{width:100%!important;display:block!important;margin:0!important;padding:0!important;box-sizing:border-box!important;page-break-before:avoid!important;-moz-column-break-before:avoid!important;break-before:avoid!important;page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important}.print-emploi .emploi-table-wrapper{width:100%!important;display:block!important;margin:0!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important;page-break-before:avoid!important;-moz-column-break-before:avoid!important;break-before:avoid!important;page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important}.print-emploi .emploi-table{width:100%!important;min-width:0!important;margin:0!important;padding:0!important;table-layout:fixed!important;border-collapse:collapse!important;border-spacing:0!important;font-size:10px!important;color:#1e293b!important;background:#fff!important;page-break-before:avoid!important;-moz-column-break-before:avoid!important;break-before:avoid!important;page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important}.print-emploi .emploi-table .heure-column{width:95px!important}.print-emploi .emploi-table .heure-cell{width:95px!important;padding:2px 3px!important;background:#f7f8fa!important;border-right:1px solid #dbe2ea!important;border-bottom:1px solid #dbe2ea!important;vertical-align:middle!important}.print-emploi .heure-main{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:70px!important;padding:4px 5px!important;border-radius:5px!important;background:#fff!important;border:1px solid #e2e8f0!important;color:#334155!important;font-size:8px!important;font-weight:800!important;white-space:nowrap!important}.print-emploi .emploi-table thead{display:table-header-group!important}.print-emploi .emploi-table thead th{position:static!important;height:30px!important;padding:3px!important;text-align:center!important;vertical-align:middle!important;background:linear-gradient(180deg,#2563eb,#1d4ed8)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;font-size:9px!important;font-weight:800!important;line-height:1!important}.print-emploi .emploi-table tbody td{padding:2px!important;min-height:54px!important;height:54px!important;text-align:center!important;vertical-align:middle!important;border-right:1px solid #dbe2ea!important;border-bottom:1px solid #dbe2ea!important;background:#fff!important;box-sizing:border-box!important;line-height:1.05!important}.print-emploi .emploi-cell-empty{background:repeating-linear-gradient(135deg,#fff,#fff 7px,#fafbfc 7px 14px)!important}.print-emploi .emploi-cell-empty span{width:16px!important;height:16px!important;font-size:9px!important}.print-emploi .emploi-cell-inner{width:100%!important;min-height:45px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;position:relative!important;box-sizing:border-box!important}.print-emploi .emploi-matieres{width:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important}.print-emploi .emploi-subject{width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:2px 3px!important;box-sizing:border-box!important}.print-emploi .emploi-subject strong{max-width:100%!important;color:#1e3a8a!important;font-size:9px!important;font-weight:800!important;line-height:1.05!important;word-break:break-word!important}.print-emploi .subject-icon{flex-shrink:0!important;color:#2563eb!important;font-size:8px!important}.print-emploi .emploi-subject-special{width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:3px 4px!important;background:linear-gradient(135deg,#eff6ff,#eef2ff)!important;border:1px solid #dbeafe!important;border-radius:4px!important;box-sizing:border-box!important}.print-emploi .emploi-subject-special strong{color:#1e40af!important;font-size:8px!important;font-weight:800!important;line-height:1.05!important;word-break:break-word!important}.print-emploi .emploi-professeur{max-width:95%!important;margin-top:2px!important;padding:2px 4px!important;border-radius:3px!important;background:#f8fafc!important;color:#64748b!important;font-size:7px!important;font-weight:600!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.print-emploi .emploi-professeur-name{font-size:7px!important;font-weight:700!important}.print-emploi .emploi-professeur-contact{display:none!important;visibility:hidden!important}.print-emploi .emploi-subject-content{display:flex!important;flex-direction:column!important;align-items:center!important;gap:1px!important}.print-emploi .emploi-subject-prof{font-size:7px!important;font-weight:500!important;color:#667085!important}.print-emploi .emploi-cell-merged{position:relative!important;padding:3px!important;vertical-align:middle!important;overflow:hidden!important;background:linear-gradient(145deg,#f0f7ff,#eef4ff,#f5f3ff)!important;border:1px solid #93c5fd!important;box-shadow:none!important}.print-emploi .emploi-cell-merged:before{content:""!important;position:absolute!important;top:4px!important;bottom:4px!important;left:2px!important;width:2px!important;border-radius:5px!important;background:linear-gradient(180deg,#2563eb,#7c3aed)!important}.print-emploi .emploi-cell-merged .emploi-cell-inner{min-height:45px!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}.print-emploi .emploi-cell-merged .emploi-matieres{position:absolute!important;left:50%!important;top:50%!important;width:-moz-max-content!important;width:max-content!important;max-width:85%!important;transform:translate(-50%,-50%) rotate(-45deg)!important;transform-origin:center center!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;z-index:2!important}.print-emploi .emploi-cell-merged .emploi-subject,.print-emploi .emploi-cell-merged .emploi-subject-special{display:flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;text-align:center!important}.print-emploi .emploi-cell-merged .emploi-subject strong,.print-emploi .emploi-cell-merged .emploi-subject-special strong{display:block!important;text-align:center!important;font-size:10px!important;line-height:1.05!important;white-space:nowrap!important}.print-emploi .emploi-cell-merged .emploi-professeur{position:absolute!important;left:50%!important;top:50%!important;width:-moz-max-content!important;width:max-content!important;transform:translate(-50%,calc(-50% + 22px)) rotate(-45deg)!important;transform-origin:center center!important;white-space:nowrap!important;z-index:3!important;text-align:center!important}.print-emploi .emploi-no-course,.print-emploi .emploi-empty{color:#94a3b8!important;font-size:8px!important;font-weight:600!important}.print-emploi .emploi-professeurs-bloc{display:none!important}.print-emploi .emploi-cell-selected{background:inherit!important;border-color:#dbe2ea!important;box-shadow:none!important}.print-emploi .emploi-cell-selected:after{display:none!important}.print-emploi *,.print-emploi *:before,.print-emploi *:after{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}*,*:before,*:after{animation:none!important;transition:none!important}}.selection-insc{width:100%;display:flex;justify-content:center}.main-content-insc .all-insc{display:flex;width:100%}.main-content-insc .all-insc .droite{width:100%}.main-content-insc .form-container{display:flex;flex-direction:column;background-color:#ffffff2c;padding:15px;border-radius:15px;margin-bottom:0}.main-content-insc .filters .team-insc{display:flex;justify-content:space-around}.main-content-insc .filters .form-group{display:flex;margin:5px;justify-content:space-around}.form-layout{display:flex;flex-direction:column;max-height:50vh}.classe-panel{display:flex;flex-direction:column;background:#0f172a;border-radius:8px;border:1px solid #1f2933;overflow:hidden}.classe-header{padding:10px;font-weight:600;background:#020617;border-bottom:1px solid #1f2933}.classe-scroll{flex:1;overflow-y:auto;min-height:0;padding:6px}.classe-line{display:flex;width:80%;margin:4px 0;justify-content:space-around}.classe-coef44{text-align:center;background-color:#3e3e3e47;width:100px}.classe-panel{position:sticky;top:0;height:100%}.main-content-insc .form-container .team-insc{display:flex;justify-content:space-around;margin-bottom:25px;width:500px}.main-content-insc .form-group{display:flex;flex-direction:column;width:100%}.main-content-insc .form-group label{text-align:center;color:#000;font-weight:700;font-size:20px;margin-bottom:15px}.main-content-insc .form-group input{width:200px;height:30px;font-size:20px;border-radius:10px;background-color:transparent;outline:none;border:1px solid #12d1e7;color:#000}.main-content-insc .form-group select{width:200px;height:30px;font-size:16px;text-align:center;background-color:transparent;border-radius:10px;outline:none;border:none;background-color:#fff;border:#12d1e7 solid 2px;color:#000;font-weight:800}.main-content-insc .form-container .envoie{width:100%;display:flex;justify-content:space-around;margin-top:10px}.main-content-insc .form-container .btn-envoie{width:150px;padding:15px;font-size:15px;border:none;border-radius:15px;color:#fff;background-color:#0ba240c3}.main-content-insc .form-container .btn-envoie2{width:150px;padding:15px;font-size:15px;border:none;border-radius:15px;color:#fff;background-color:#d0381abe}.eleves-scroll{max-height:65vh;overflow-y:auto;padding-right:8px}.eleves-scroll{overscroll-behavior:contain}.eleves-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:10px}.btn-small{padding:5px 10px;font-size:13px;cursor:pointer;background-color:#ffffff68}.selected-count{margin-left:auto;font-weight:600}.eleves-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.eleves-table-header{display:grid;grid-template-columns:40px 2fr 1fr 1fr 1fr;background:#fff;color:#000;padding:10px;font-weight:600;position:sticky;top:0;z-index:2}.eleves-table-body{max-height:320px;overflow-y:auto}.eleves-table-row{display:grid;grid-template-columns:40px 2fr 1fr 1fr 1fr;padding:10px;border-top:1px solid #e5e7eb;align-items:center}.eleves-table-row select{width:100%;text-align:center;font-weight:800;color:#fff;background-color:#000}.avertissement-aucun-insc{position:absolute}.btn-warning{background:#ffb020;color:#fff;border:none;padding:10px;border-radius:12px}.btn-danger{background:#e63946;color:#fff;border:none;padding:10px;border-radius:12px}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:10px;border-radius:12px}.liste{display:flex;flex-wrap:wrap;padding:20px}.liste-insc{display:flex;justify-content:space-between;flex-wrap:wrap;padding:20px}.prof-card{margin:5px;text-align:center;background:#6aabfad6;padding:10px;border-radius:16px;box-shadow:0 4px 12px #00000014;transition:transform .2s ease,box-shadow .2s ease}.prof-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.prof-card h4{margin:0 0 10px;color:#fff}.prof-card p{margin:4px 0;font-size:16px;font-weight:600;color:#fff}.prof-actions{width:100%;margin-top:12px;display:flex;justify-content:space-around}.prof-actions button{width:40%;margin-top:12px}.name-sex{display:flex;justify-content:space-around}.main-content-insc .modal-content{background:#fffefe;color:#000;padding:5px;border-radius:10px;animation:fadeIn .3s ease;border:4px solid #12d1e7;text-align:center}.services-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px}.services-hero-copy{max-width:720px}.services-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:#6366f1;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero-dot{width:7px;height:7px;border-radius:50%;background:#6366f1;box-shadow:0 0 0 5px #6366f11a}.services-hero h1{margin:0;color:#111827;font-size:clamp(30px,4vw,42px);line-height:1.08;font-weight:850;letter-spacing:-1.2px}.services-hero p{max-width:650px;margin:10px 0 0;color:#64748b;font-size:14px;line-height:1.65}.hero-create-button{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:0;border-radius:14px;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;font-family:inherit;font-size:13px;font-weight:750;cursor:pointer;box-shadow:0 12px 25px #4f46e538;transition:transform .2s ease,box-shadow .2s ease}.hero-create-button:hover{transform:translateY(-2px);box-shadow:0 16px 30px #4f46e547}.button-plus{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;background:#ffffff29;font-size:18px}.services-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.kpi-card{min-height:82px;display:flex;align-items:center;gap:13px;padding:16px;border:1px solid #e8ebf3;border-radius:17px;background:#ffffffe0;box-shadow:0 8px 25px #0f172a0b}.kpi-card>div:last-child{min-width:0}.kpi-card span{display:block;color:#8a94a6;font-size:11px;font-weight:650}.kpi-card strong{display:block;margin-top:3px;color:#182033;font-size:21px;font-weight:800}.kpi-icon,.kpi-action-icon{width:42px;height:42px;flex:0 0 42px;display:flex;align-items:center;justify-content:center;border-radius:13px;font-size:17px;font-weight:800}.kpi-icon-purple{background:#eeefff;color:#5b52e8}.kpi-icon-green{background:#eafaf1;color:#15945b}.kpi-icon-blue{background:#eaf4ff;color:#2574d9}.kpi-card-action{padding:0;overflow:hidden}.kpi-card-action button{width:100%;height:100%;display:flex;align-items:center;gap:13px;padding:16px;border:0;background:transparent;text-align:left;font-family:inherit;cursor:pointer}.kpi-card-action button:hover{background:#fafaff}.kpi-card-action .kpi-action-icon{background:#f0efff;color:#5b52e8}.kpi-card-action strong{font-size:13px}.services-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(480px,.92fr);gap:18px;align-items:start}.service-card{position:relative;background:#fffffff5;border:1px solid #e7eaf1;border-radius:20px;padding:22px;box-shadow:0 12px 35px #0f172a0e;box-sizing:border-box}.modern-panel{min-width:0}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.panel-heading{display:flex;align-items:center;gap:11px;min-width:0}.panel-icon{width:40px;height:40px;flex:0 0 40px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#efefff;color:#5b52e8;font-weight:800}.panel-icon-blue{background:#eaf4ff;color:#2876d9}.panel-heading h2{margin:0;color:#182033;font-size:16px;font-weight:800}.panel-heading p{margin:4px 0 0;color:#98a1b1;font-size:12px}.services-count,.students-result-count{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:28px;padding:0 9px;border:1px solid #e2e3ff;border-radius:999px;background:#f3f3ff;color:#5b52e8;font-size:11px;font-weight:800;box-sizing:border-box}.services-list{display:flex;flex-direction:column;gap:9px}.service-item{position:relative;display:flex;align-items:center;gap:13px;padding:13px;border:1px solid #edf0f5;border-radius:15px;background:#fff;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.service-item:hover{transform:translateY(-1px);border-color:#e1e5ed;box-shadow:0 8px 22px #0f172a0f}.service-icon{width:46px;height:46px;flex:0 0 46px;display:flex;align-items:center;justify-content:center;border:1px solid #e8eaf1;border-radius:13px;background:linear-gradient(145deg,#fafbfe,#f1f3f8);font-size:20px}.service-info{flex:1;min-width:0}.service-name-row{display:flex;align-items:center;gap:8px}.service-info h3{margin:0;color:#20283a;font-size:14px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-info p{margin:4px 0 5px;color:#929bad;font-size:11px;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-info>span,.service-price{color:#344054;font-size:13px;font-weight:800}.status-active,.status-inactive{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:750;white-space:nowrap}.status-active{border:1px solid #b9ebcc;background:#effcf4;color:#14844f}.status-inactive{border:1px solid #fecaca;background:#fff1f1;color:#c72c2c}.status-active:before,.status-inactive:before{content:"";width:5px;height:5px;border-radius:50%}.status-active:before{background:#22c55e}.status-inactive:before{background:#ef4444}.service-more-button{width:32px;height:32px;flex:0 0 32px;border:1px solid #e8ebf1;border-radius:10px;background:#fafbfe;color:#667085;cursor:pointer;transition:all .18s ease}.service-more-button:hover{border-color:#cfd3ff;background:#f1f1ff;color:#5b52e8}.student-search-box{height:44px;display:flex;align-items:center;gap:9px;margin-bottom:12px;padding:0 12px;border:1px solid #e4e7ee;border-radius:12px;background:#fafbfc;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.student-search-box:focus-within{border-color:#a5a0ff;background:#fff;box-shadow:0 0 0 3px #6366f114}.student-search-box>span{color:#98a2b3;font-size:20px}.student-search-box input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#344054;font-family:inherit;font-size:12px}.student-search-box button{width:24px;height:24px;border:0;border-radius:7px;background:#eef0f4;color:#667085;cursor:pointer}.students-list{display:flex;flex-direction:column;gap:7px;max-height:520px;overflow-y:auto;padding-right:3px}.student-item{width:100%;display:flex;align-items:center;gap:11px;padding:10px;border:1px solid transparent;border-radius:13px;background:transparent;text-align:left;font-family:inherit;cursor:pointer;transition:all .18s ease}.student-item:hover{border-color:#e7e9ff;background:#fafaff}.student-selected{border-color:#d9d7ff!important;background:#f4f3ff!important}.student-avatar{width:39px;height:39px;flex:0 0 39px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(135deg,#e8e9ff,#f1f0ff);color:#5b52e8;font-size:13px;font-weight:850}.student-info{min-width:0;flex:1}.student-info strong{display:block;overflow:hidden;color:#273043;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.student-info span,.student-info small{display:block;margin-top:3px;overflow:hidden;color:#98a1b1;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.student-arrow{color:#a4abba;font-size:20px}.modal-overlay{position:fixed;z-index:3000;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a7a;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:modal-fade .18s ease;box-sizing:border-box}.modern-modal{width:min(100%,560px);max-height:min(90vh,760px);overflow:auto;border:1px solid rgba(255,255,255,.65);border-radius:23px;background:#fff;box-shadow:0 30px 80px #0f172a40;animation:modal-up .22s ease}.create-modal{padding:25px}.modal-top,.student-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.modal-kicker{display:block;margin-bottom:5px;color:#6366f1;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.modal-top h2,.student-modal-header h2,.confirm-modal h2{margin:0;color:#182033;font-size:22px;font-weight:850;letter-spacing:-.5px}.modal-top p,.student-modal-header p,.confirm-modal p{margin:6px 0 0;color:#8b95a7;font-size:12px;line-height:1.5}.modal-close{width:34px;height:34px;flex:0 0 34px;border:1px solid #e7e9ef;border-radius:10px;background:#f8f9fb;color:#667085;font-size:20px;line-height:1;cursor:pointer;transition:all .18s ease}.modal-close:hover{background:#f0f1f5;color:#1f2937}.modal-form{margin-top:24px}.form-group{margin-bottom:17px}.form-group label{display:flex;align-items:center;gap:5px;margin-bottom:7px;color:#344054;font-size:11px;font-weight:750}.form-group label span{color:#a0a8b6;font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;box-sizing:border-box;min-height:45px;padding:11px 13px;border:1px solid #e1e5ec;border-radius:11px;outline:none;background:#fbfcfd;color:#273043;font-family:inherit;font-size:13px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#8e89f6;background:#fff;box-shadow:0 0 0 3px #6366f117}.form-group textarea{min-height:105px;resize:vertical}.amount-input{position:relative}.amount-input input{padding-right:65px}.amount-input span{position:absolute;top:50%;right:13px;transform:translateY(-50%);color:#7b8494;font-size:10px;font-weight:850;pointer-events:none}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.btn-primary,.btn-secondary,.btn-danger{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 15px;border-radius:11px;font-family:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:all .18s ease}.btn-primary{border:0;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;box-shadow:0 8px 18px #4f46e52e}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 11px 22px #4f46e53b}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{border:1px solid #e1e5eb;background:#fff;color:#475467}.btn-secondary:hover{background:#f8f9fb}.btn-danger{border:1px solid #fecaca;background:#fff5f5;color:#dc2626}.btn-danger:hover{background:#feecec}.modal-submit{min-width:155px}.small-button{width:auto;margin-top:13px}.student-modal{width:min(100%,760px);padding:25px}.student-profile{display:flex;align-items:center;gap:12px}.large-avatar{width:52px;height:52px;flex-basis:52px;border-radius:15px;font-size:17px}.student-modal-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 14px}.student-modal-summary>div{padding:13px 14px;border:1px solid #eceef3;border-radius:13px;background:#fafbfc}.student-modal-summary span{display:block;color:#98a1b1;font-size:10px}.student-modal-summary strong{display:block;margin-top:4px;color:#263044;font-size:18px}.modal-services-list{max-height:390px;overflow-y:auto;padding-right:4px}.student-service-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px;border:1px solid #edf0f5;border-radius:14px;background:#fff}.student-service-item+.student-service-item{margin-top:8px}.student-service-main{display:flex;align-items:center;gap:11px;min-width:0}.student-service-action{flex-shrink:0}.service-action-button{width:auto;min-width:94px}.service-subscribed{display:flex;align-items:center;gap:10px}.subscription-state small{display:block;margin-top:4px;color:#98a1b1;font-size:9px;text-align:right}.confirm-overlay{z-index:3100}.confirm-modal{width:min(100%,420px);padding:28px;text-align:center}.confirm-icon{width:48px;height:48px;margin:0 auto 15px;display:flex;align-items:center;justify-content:center;border-radius:15px;background:#fff1f1;color:#dc2626;font-size:22px;font-weight:850}.confirm-modal p{max-width:340px;margin:10px auto 0}.confirm-modal .modal-actions{justify-content:center}.confirm-danger{min-width:145px}.service-toast{position:fixed;z-index:4000;right:25px;bottom:25px;max-width:min(420px,calc(100vw - 30px));display:flex;align-items:center;gap:10px;padding:12px 12px 12px 13px;border:1px solid #e4e7ec;border-radius:14px;background:#fff;color:#344054;box-shadow:0 15px 40px #0f172a29;font-size:12px;font-weight:650;animation:toast-in .22s ease}.toast-symbol{width:25px;height:25px;flex:0 0 25px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#eafaf1;color:#15803d;font-weight:850}.toast-error .toast-symbol{background:#fff0f0;color:#dc2626}.toast-warning .toast-symbol{background:#fff8e8;color:#b7791f}.service-toast button{width:25px;height:25px;margin-left:auto;border:0;border-radius:7px;background:#f3f4f6;color:#667085;cursor:pointer}.services-loading,.services-error,.services-empty{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;box-sizing:border-box;text-align:center}.services-loading{color:#697386;font-size:12px}.services-loading:before{content:"";width:27px;height:27px;margin-bottom:11px;border:3px solid #e8eaf0;border-top-color:#6366f1;border-radius:50%;animation:services-spin .8s linear infinite}.services-error{color:#dc2626;font-size:12px}.empty-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;border:1px solid #e0e3ff;border-radius:15px;background:#f0f0ff;color:#6366f1;font-size:22px;font-weight:700}.services-empty h3{margin:12px 0 5px;color:#344054;font-size:14px}.services-empty p{margin:0;color:#98a1b1;font-size:11px}.compact-empty{min-height:270px}.modal-loading{min-height:180px}.services-page ::-webkit-scrollbar{width:6px;height:6px}.services-page ::-webkit-scrollbar-track{background:transparent}.services-page ::-webkit-scrollbar-thumb{border-radius:10px;background:#d8dce5}@keyframes services-spin{to{transform:rotate(360deg)}}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-up{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1150px){.services-kpis{grid-template-columns:repeat(2,1fr)}.services-dashboard-grid{grid-template-columns:1fr}}@media (max-width: 760px){.services-page{padding:22px 16px 45px}.services-hero{align-items:flex-start;flex-direction:column}.hero-create-button{width:100%;justify-content:center}.services-kpis{grid-template-columns:1fr 1fr}.service-card{padding:17px;border-radius:17px}.student-modal,.create-modal{padding:19px}}@media (max-width: 520px){.services-kpis{grid-template-columns:1fr}.kpi-card-action{display:none}.services-hero h1{font-size:29px}.services-hero p{font-size:13px}.panel-heading p{display:none}.student-service-item{align-items:flex-start;flex-direction:column}.student-service-action,.service-action-button{width:100%}.service-subscribed{width:100%;justify-content:space-between}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.student-modal-summary{grid-template-columns:1fr 1fr}.service-toast{right:15px;bottom:15px}}@media (prefers-reduced-motion: reduce){.service-item,.hero-create-button,.btn-primary,.modal-overlay,.modern-modal,.service-toast{animation:none;transition:none}.services-loading:before{animation:none}}.documents-modal-overlay{position:fixed;inset:0;z-index:9999;padding:16px;box-sizing:border-box;background:#0f172a94;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.documents-modal{width:min(920px,100%);max-height:88vh;display:flex;flex-direction:column;overflow:hidden;background:#fff;color:#1e293b;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 18px 45px #0f172a2e;animation:documentsModalAppear .18s ease-out;position:relative}@keyframes documentsModalAppear{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.documents-modal-header{min-height:62px;padding:13px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f4;background:#fff;flex-shrink:0}.documents-modal-title{display:flex;align-items:center;gap:10px}.documents-modal-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:8px;background:#eef4ff;color:#2563eb;font-size:15px}.documents-modal-title h2{margin:0;color:#172033;font-size:17px;font-weight:700;line-height:1.2}.documents-modal-title p{margin:3px 0 0;color:#8993a4;font-size:11px}.documents-modal-close{width:31px;height:31px;padding:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:7px;background:transparent;color:#64748b;font-size:15px;cursor:pointer;transition:.18s ease}.documents-modal-close:hover{background:#f1f5f9;color:#dc2626}.documents-modal-close:disabled{opacity:.45;cursor:not-allowed}.documents-eleve-info{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:11px 18px;background:#f8fafc;border-bottom:1px solid #edf0f4}.documents-eleve-info>div{min-width:0;display:flex;align-items:center;gap:8px}.documents-eleve-info i{width:27px;height:27px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:7px;background:#fff;color:#64748b;font-size:12px;border:1px solid #e8edf3}.documents-eleve-info span{min-width:0;display:flex;flex-direction:column;gap:1px;color:#8a94a5;font-size:10px}.documents-eleve-info strong{overflow:hidden;color:#334155;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.documents-message{margin:10px 18px;padding:9px 11px;display:flex;align-items:center;gap:7px;border-radius:7px;font-size:11px;font-weight:600}.documents-message.success{background:#effaf3;color:#15803d;border:1px solid #d5f0df}.documents-message.error{background:#fff1f2;color:#dc2626;border:1px solid #ffd7dc}.info-card-student{padding:11px;border:1px solid #edf0f4;border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:4px;box-shadow:none}.info-card-student h3{margin:0;color:#8a94a5;font-size:10px;font-weight:600}.info-card-student strong{color:#1e293b;font-size:15px;font-weight:750}.documents-list-section{padding:12px 18px 15px;overflow-y:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.documents-list-section::-webkit-scrollbar{width:5px}.documents-list-section::-webkit-scrollbar-track{background:transparent}.documents-list-section::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.documents-section-title{min-height:28px;margin-bottom:9px;display:flex;align-items:center;gap:7px;color:#334155;font-size:12px;font-weight:700}.documents-section-title>i{color:#2563eb;font-size:13px}.documents-section-title span{display:flex;align-items:center;gap:6px}.documents-section-title b{min-width:19px;height:19px;padding:0 5px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#eef2f7;color:#64748b;font-size:9px;font-weight:700}.documents-list{display:flex;flex-direction:column;gap:6px}.document-item{min-height:54px;padding:9px 11px;box-sizing:border-box;display:flex;align-items:center;gap:10px;border:1px solid #edf0f4;border-radius:9px;background:#fff;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.document-item:hover{background:#fbfdff;border-color:#dbe4f0;box-shadow:0 3px 10px #0f172a0b}.document-file-icon{width:32px;height:32px;min-width:32px;display:flex;align-items:center;justify-content:center;border-radius:7px;background:#f1f5ff;color:#2563eb;font-size:13px}.document-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.document-info>strong{overflow:hidden;color:#334155;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.document-name{overflow:hidden;color:#94a3b8;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.document-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px;color:#8a94a5;font-size:10px}.document-meta strong{color:#475569;font-weight:700}.document-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-shrink:0}.document-actions .btn-primary{min-height:30px;padding:6px 10px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:none;border-radius:6px;background:#2563eb;color:#fff;font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .18s ease,transform .15s ease,box-shadow .18s ease}.document-actions .btn-primary:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 3px 8px #2563eb38}.document-actions .btn-primary:active{transform:translateY(0)}.documents-loading{min-height:180px;padding:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#94a3b8;font-size:11px}.documents-loading i{font-size:19px;color:#2563eb}.documents-empty{min-height:180px;padding:25px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;color:#94a3b8}.documents-empty-icon{width:42px;height:42px;margin-bottom:5px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#f1f5f9;color:#94a3b8;font-size:17px}.documents-empty strong{color:#475569;font-size:12px}.documents-empty span{color:#94a3b8;font-size:10px}.documents-modal-footer{min-height:54px;padding:10px 18px;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-end;gap:7px;border-top:1px solid #edf0f4;background:#fff;flex-shrink:0}.documents-close-btn{min-height:31px;padding:6px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#475569;font-size:10px;font-weight:700;cursor:pointer;transition:.18s ease}.documents-close-btn:hover{background:#f1f5f9;border-color:#d7dee8}.documents-close-btn:disabled{opacity:.45;cursor:not-allowed}.documents-form-group{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.documents-form-group label{color:#475569;font-size:11px;font-weight:700}.documents-form-group input,.documents-form-group select{width:100%;min-height:36px;box-sizing:border-box;padding:8px 10px;border:1px solid #dce2ea;border-radius:7px;background:#fff;color:#334155;font-family:inherit;font-size:12px;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.documents-form-group input:hover,.documents-form-group select:hover{border-color:#c5ceda}.documents-form-group input:focus,.documents-form-group select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.documents-upload-btn{min-height:32px;padding:7px 12px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:none;border-radius:6px;background:#16a34a;color:#fff;font-size:10px;font-weight:700;cursor:pointer;transition:background .18s ease,transform .15s ease}.documents-upload-btn:hover{background:#15803d;transform:translateY(-1px)}.documents-upload-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.payment-modal-overlay{position:fixed;inset:0;z-index:100000;padding:16px;box-sizing:border-box;background:#0f172a9e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;animation:paymentOverlayAppear .18s ease-out}.payment-modal{width:min(430px,100%);max-height:88vh;background:#fff;border-radius:12px;overflow:hidden;color:#1e293b;border:1px solid #e5e7eb;box-shadow:0 20px 55px #0f172a38;animation:paymentModalAppear .18s ease-out}.payment-form{padding:16px;overflow-y:auto;max-height:calc(88vh - 70px);box-sizing:border-box}.payment-summary-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:11px;color:#64748b;font-size:11px}.payment-summary-row span:last-child{color:#334155;font-weight:700}.payment-rest{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px;padding:9px 11px;border-radius:7px;background:#f8fafc;border:1px solid #edf0f4;color:#475569;font-size:11px}.payment-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:16px}@keyframes paymentOverlayAppear{0%{opacity:0}to{opacity:1}}@keyframes paymentModalAppear{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 750px){.documents-modal-overlay{padding:10px}.documents-modal{width:100%;max-height:92vh}.documents-eleve-info{grid-template-columns:1fr}.documents-eleve-info>div{padding:2px 0}.document-item{align-items:flex-start}.document-info{width:calc(100% - 42px)}.document-actions{width:100%;padding-left:42px;box-sizing:border-box}.document-actions .btn-primary{width:auto}}@media (max-width: 500px){.documents-modal-header{padding:12px 14px}.documents-modal-title h2{font-size:15px}.documents-modal-title p{font-size:10px}.documents-modal-icon{width:31px;height:31px;font-size:13px}.documents-eleve-info{padding:9px 14px}.documents-list-section{padding:10px 14px 13px}.documents-modal-footer{padding:9px 14px}.document-item{padding:8px;gap:8px}.document-file-icon{width:29px;height:29px;min-width:29px;font-size:12px}.document-info>strong{font-size:11px}.document-name,.document-meta{font-size:9px}.document-actions{padding-left:37px}.document-actions .btn-primary{min-height:28px;padding:5px 9px;font-size:9px}.documents-message{margin:8px 14px;font-size:10px}}.documents-modal button:focus-visible,.payment-modal button:focus-visible,.documents-modal input:focus-visible,.documents-modal select:focus-visible{outline:2px solid rgba(37,99,235,.25);outline-offset:2px}:root{--finance-navy: #0b1f3a;--finance-navy-2: #102b4e;--finance-blue: #155eef;--finance-blue-light: #eff6ff;--finance-green: #087443;--finance-green-light: #ecfdf3;--finance-gold: #b7791f;--finance-gold-light: #fffbeb;--finance-text: #172033;--finance-muted: #667085;--finance-border: #e4e7ec;--finance-background: #f5f7fa;--finance-white: #ffffff;--finance-danger: #b42318;--finance-shadow: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--finance-shadow-hover: 0 8px 24px rgba(16, 24, 40, .1)}.caisse-page{margin-left:200px;min-height:calc(100vh - 70px);padding:30px 34px 50px;background:linear-gradient(180deg,#f8fafc,#f4f6f9);color:var(--finance-text)}.caisse-header{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:25px;padding:25px 28px;background:linear-gradient(135deg,var(--finance-navy),var(--finance-navy-2));border-radius:14px;box-shadow:0 10px 30px #0b1f3a29;position:relative;overflow:hidden}.caisse-header:after{content:"";position:absolute;width:280px;height:280px;right:-100px;top:-150px;border-radius:50%;border:1px solid rgba(255,255,255,.08)}.caisse-header-left{display:flex;align-items:center;gap:18px;position:relative;z-index:2}.caisse-header-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.14);color:#fff;font-size:23px}.caisse-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:5px;font-size:10px;font-weight:700;letter-spacing:1.3px;color:#9db4d0}.caisse-breadcrumb span{opacity:.5}.caisse-header h1{margin:0;color:#fff;font-size:25px;font-weight:700;letter-spacing:-.4px}.caisse-header p{margin:5px 0 0;color:#b7c6d8;font-size:13px}.caisse-header-right{position:relative;z-index:2}.caisse-security{display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:9px;background:#ffffff12;border:1px solid rgba(255,255,255,.11)}.caisse-security>i{color:#8ed1b0;font-size:18px}.caisse-security div{display:flex;flex-direction:column;gap:2px}.caisse-security strong{color:#fff;font-size:10px;letter-spacing:.8px}.caisse-security span{color:#aebfd3;font-size:10px}.caisse-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.finance-stat-card{display:flex;align-items:center;gap:15px;padding:19px;background:var(--finance-white);border:1px solid var(--finance-border);border-radius:12px;box-shadow:var(--finance-shadow);transition:transform .2s ease,box-shadow .2s ease}.finance-stat-card:hover{transform:translateY(-2px);box-shadow:var(--finance-shadow-hover)}.finance-stat-icon{width:45px;height:45px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:17px}.finance-stat-icon.blue{color:var(--finance-blue);background:var(--finance-blue-light)}.finance-stat-icon.green{color:var(--finance-green);background:var(--finance-green-light)}.finance-stat-icon.gold{color:var(--finance-gold);background:var(--finance-gold-light)}.finance-stat-content{display:flex;flex-direction:column;min-width:0}.finance-stat-content span{font-size:10px;font-weight:700;color:#98a2b3;letter-spacing:.8px}.finance-stat-content strong{margin-top:2px;font-size:20px;line-height:1.2;color:var(--finance-navy);font-weight:700}.finance-stat-content small{margin-top:2px;color:#98a2b3;font-size:10px}.caisse-search-panel{margin-bottom:20px;padding:22px 24px;background:#fff;border:1px solid var(--finance-border);border-radius:12px;box-shadow:var(--finance-shadow)}.search-panel-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.search-panel-header h2{display:flex;align-items:center;gap:9px;margin:0;color:var(--finance-navy);font-size:16px;font-weight:700}.search-panel-header h2 i{color:var(--finance-blue);font-size:14px}.search-panel-header p{margin:5px 0 0;color:var(--finance-muted);font-size:12px}.search-result-count{display:flex;align-items:baseline;gap:5px;white-space:nowrap;padding:8px 12px;border-radius:7px;background:#f8fafc;border:1px solid var(--finance-border)}.search-result-count strong{color:var(--finance-navy);font-size:16px}.search-result-count span{color:var(--finance-muted);font-size:10px}.caisse-filters{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.6fr);gap:15px}.finance-filter{min-width:0}.finance-filter label{display:flex;align-items:center;gap:6px;margin-bottom:7px;color:#344054;font-size:11px;font-weight:700}.finance-filter label i{color:var(--finance-blue)}.finance-select,.finance-search{height:44px;display:flex;align-items:center;border:1px solid #d0d5dd;border-radius:8px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.finance-select:focus-within,.finance-search:focus-within{border-color:var(--finance-blue);box-shadow:0 0 0 3px #155eef1a}.finance-select{position:relative}.finance-select select{width:100%;height:100%;padding:0 38px 0 13px;border:none;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:#344054;font-size:13px;cursor:pointer}.finance-select>i{position:absolute;right:13px;color:#667085;font-size:11px;pointer-events:none}.finance-search{padding:0 12px;gap:9px}.finance-search>i{color:#98a2b3;font-size:13px}.finance-search input{flex:1;width:100%;height:100%;border:none;outline:none;background:transparent;color:#101828;font-size:13px}.finance-search input::-moz-placeholder{color:#98a2b3}.finance-search input::placeholder{color:#98a2b3}.clear-search{width:28px;height:28px;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center;background:#f2f4f7;color:#667085;cursor:pointer}.clear-search:hover{background:#e4e7ec}.caisse-table-card{overflow:hidden;background:#fff;border:1px solid var(--finance-border);border-radius:12px;box-shadow:var(--finance-shadow)}.table-card-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;border-bottom:1px solid var(--finance-border)}.table-card-header h2{margin:0;color:var(--finance-navy);font-size:16px;font-weight:700}.table-card-header p{margin:5px 0 0;color:var(--finance-muted);font-size:11px}.table-secure-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:6px;background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;font-size:10px;font-weight:700;white-space:nowrap}.table-secure-badge i{font-size:9px}.finance-table-wrapper{width:100%;overflow-x:auto}.finance-table{width:100%;border-collapse:collapse;min-width:900px}.finance-table thead{background:#f8fafc}.finance-table th{padding:12px 18px;border-bottom:1px solid var(--finance-border);color:#667085;font-size:9px;font-weight:700;letter-spacing:.7px;text-align:left;white-space:nowrap}.finance-table td{padding:14px 18px;border-bottom:1px solid #eef1f5;color:#344054;font-size:12px;vertical-align:middle}.finance-table tbody tr{transition:background .15s ease}.finance-table tbody tr:hover{background:#f8fbff}.finance-table tbody tr:last-child td{border-bottom:none}.student-cell{display:flex;align-items:center;gap:11px;min-width:220px}.student-avatar{width:37px;height:37px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:9px;background:linear-gradient(135deg,#e8f0ff,#dbe7ff);color:var(--finance-navy);font-size:13px;font-weight:800;border:1px solid #cfdbf3}.student-name{display:flex;flex-direction:column;gap:3px;min-width:0}.student-name strong{color:#172033;font-size:12px;font-weight:700;white-space:nowrap}.student-name span{color:#98a2b3;font-size:9px}.class-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;background:#f8fafc;border:1px solid #e4e7ec;border-radius:6px;color:#475467;font-size:10px;font-weight:600;white-space:nowrap}.class-badge i{color:var(--finance-blue);font-size:9px}.reference-code{display:inline-block;padding:5px 7px;border-radius:5px;background:#f8fafc;border:1px solid #eaecf0;color:#475467;font-family:SFMono-Regular,Consolas,monospace;font-size:10px;white-space:nowrap}.reference-code.code{color:var(--finance-navy);background:#f4f7fb;border-color:#dce4ee}.financial-status{display:inline-flex;align-items:center;gap:6px;color:#067647;font-size:10px;font-weight:700}.financial-status>span{width:6px;height:6px;border-radius:50%;background:#12b76a;box-shadow:0 0 0 3px #12b76a1a}.btn-open-finance{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 11px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:var(--finance-navy);font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .18s ease}.btn-open-finance>i:first-child{color:var(--finance-blue)}.btn-open-finance>i:last-child{color:#98a2b3;font-size:9px}.btn-open-finance:hover{background:var(--finance-navy);border-color:var(--finance-navy);color:#fff;transform:translateY(-1px);box-shadow:0 4px 10px #0b1f3a29}.btn-open-finance:hover>i:first-child,.btn-open-finance:hover>i:last-child{color:#fff}.caisse-loading{min-height:250px;display:flex;align-items:center;justify-content:center}.finance-empty{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.finance-empty-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;border-radius:12px;background:#f2f4f7;color:#98a2b3;font-size:22px}.finance-empty h3{margin:0;color:var(--finance-navy);font-size:15px}.finance-empty p{max-width:400px;margin:7px 0 16px;color:var(--finance-muted);font-size:11px;line-height:1.6}.reset-finance-search{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:7px;background:#fff;color:#344054;font-size:10px;font-weight:700;cursor:pointer}.reset-finance-search:hover{background:#f8fafc}@media (max-width: 1000px){.caisse-page{padding:22px 20px 40px}.caisse-stats{grid-template-columns:repeat(3,1fr)}.caisse-filters{grid-template-columns:1fr 1fr}}@media (max-width: 700px){.caisse-page{padding:15px 12px 30px}.caisse-header{padding:20px;align-items:flex-start}.caisse-header-right{display:none}.caisse-header-icon{width:46px;height:46px;font-size:18px}.caisse-header h1{font-size:20px}.caisse-header p{font-size:11px}.caisse-stats{grid-template-columns:1fr;gap:10px}.caisse-search-panel{padding:18px}.search-panel-header{align-items:flex-start}.search-result-count{display:none}.caisse-filters{grid-template-columns:1fr}.table-card-header{padding:17px}.table-secure-badge{display:none}.finance-table th,.finance-table td{padding:12px}}@media (max-width: 450px){.caisse-header-left{gap:11px}.caisse-header-icon{display:none}.caisse-header h1{font-size:18px}.caisse-header{margin-bottom:15px}.finance-stat-card{padding:14px}}.badges-page{min-height:100vh;padding:30px;background:#f5f7fb}.badges-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.badges-header-left{display:flex;align-items:center;gap:18px}.badges-title-icon{width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:28px;background:#e8f0ff;box-shadow:0 8px 25px #1e40af1f}.badges-title-line{display:flex;align-items:center;gap:12px}.badges-title-line h1{margin:0;color:#172033;font-size:28px;font-weight:800}.badges-header-left p{margin:7px 0 0;color:#718096;font-size:14px}.badges-live{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:30px;background:#ecfdf3;color:#15803d;font-size:11px;font-weight:700;text-transform:uppercase}.badges-live span{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e1f}.scanner-button{border:none;border-radius:14px;padding:13px 20px;display:flex;align-items:center;gap:9px;background:#2563eb;color:#fff;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #2563eb40;transition:.2s ease}.scanner-button:hover{transform:translateY(-2px);box-shadow:0 12px 25px #2563eb52}.scanner-button span{font-size:18px}.badges-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e8edf5;border-radius:18px;padding:18px;display:flex;align-items:center;gap:15px;box-shadow:0 5px 18px #0f172a0a}.stat-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px}.stat-icon.blue{background:#eff6ff}.stat-icon.green{background:#ecfdf5}.stat-icon.orange{background:#fff7ed}.stat-card span{display:block;color:#8490a5;font-size:12px;margin-bottom:4px}.stat-card strong{color:#172033;font-size:24px}.eleves-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;width:100%}.student-card{width:48%;min-width:0;background:transparent;border:none;border-radius:0;box-shadow:none;overflow:visible;transition:none}.student-card:hover{transform:none;box-shadow:none}.school-card{position:relative;width:100%;min-height:350px;overflow:hidden;border-radius:25px;background:radial-gradient(circle at 0% 100%,rgba(37,99,235,.08),transparent 30%),linear-gradient(135deg,#fff 0% 58%,#f5f8ff);border:1px solid #dbe4f2;box-shadow:0 12px 35px #0f172a1a;font-family:Arial,sans-serif;isolation:isolate}.school-card:before{content:"";position:absolute;top:0;right:0;width:40%;height:115px;background:linear-gradient(135deg,#063b9f,#064cc4 55%,#002d83);clip-path:polygon(18% 0,100% 0,100% 100%,0 100%);z-index:-1}.print-school-card:after{content:"";position:absolute;width:100px;height:100px;top:-2px;right:-83px;border-radius:50%;background-color:#fff;color:#fff;border:2px solid #ffffff;pointer-events:none;z-index:-5}.school-card-header{height:92px;padding:16px 22px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.school-brand{display:flex;align-items:center;gap:10px}.school-logo{position:relative;width:70px;height:70px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 7px 18px #00000029;overflow:hidden;-o-object-fit:cover;object-fit:cover}.school-logo img{width:100%;height:100%}.school-logo-s{color:#0645ae;font-size:36px;font-weight:900;line-height:1}.school-logo-cap{position:absolute;top:2px;right:1px;font-size:13px}.school-brand-text{display:flex;flex-direction:column}.school-brand-text strong{color:#000;font-size:15px;font-weight:900;letter-spacing:-.5px}.school-brand-text span{color:#ffffffeb;font-size:9px;margin-top:1px}.school-card-type{display:flex;align-items:flex-end;flex-direction:column;gap:7px;color:#fff}.school-card-type>span{font-size:10px;font-weight:900;letter-spacing:1.2px}.school-student-status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:30px;background:#ffffff29;color:#fff;font-size:9px;font-weight:800}.school-student-status span{width:6px;height:6px;border-radius:50%;background:#4ade80}.school-student-status.inactive span{background:#f87171}.school-card-body{display:flex;gap:22px;padding:4px 8px 10px;align-items:end;justify-content:center;position:relative;z-index:2}.school-card-left{display:flex;flex-direction:column;align-items:center}.school-photo{width:155px;height:155px;border-radius:20px;overflow:hidden;border:3px solid #2563eb;background:#eaf1ff;box-shadow:0 8px 20px #2563eb29;display:flex;align-items:center;justify-content:center}.school-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.school-avatar{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#4338ca);color:#fff;font-size:32px;font-weight:900}.school-student-type{margin-top:10px;min-width:105px;padding:7px 12px;text-align:center;border-radius:9px;background:linear-gradient(135deg,#0645ae,#145dd3);color:#fff;font-size:11px;font-weight:900;box-shadow:0 6px 14px #2563eb33}.school-year{display:flex;flex-direction:column;align-items:center;margin-top:10px}.school-year span{color:#1747a8;font-size:9px;font-weight:700}.school-year strong{margin-top:2px;color:#1747a8;font-size:12px}.school-card-info{min-width:0;padding-left:10px;border-left:2px solid #d8e4f5}.school-info-row{padding:2px 0;font-family:monospace;border-bottom:1px solid #110bcc}.school-info-label{display:block;color:#1454be;font-size:9px;font-weight:900;letter-spacing:.7px;margin-bottom:2px}.school-info-row>strong{display:block;color:#202938;font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.school-info-row>span{display:block;color:#0343aa;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.school-info-double{display:grid;grid-template-columns:1fr 1fr;gap:15px}.school-info-double>div{min-width:0}.school-info-id{margin-top:8px;color:#8793a5;font-size:9px}.school-info-id strong{color:#344054}.school-card-qr-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-left:4px;border-left:2px solid #c9dcf6}.school-qr-frame{width:100px;height:100px;display:flex;align-items:center;justify-content:center;background:#fff;border:3px solid #1659c7;border-radius:19px;box-shadow:0 8px 20px #0f172a14}.school-qr-frame svg{width:100%;height:100%}.school-scan-text{margin-top:8px;width:158px;padding:7px 8px;display:flex;align-items:center;justify-content:center;gap:5px;border-radius:20px;background:linear-gradient(135deg,#1455bd,#1749a3);color:#fff;font-size:8px;font-weight:800}.school-scan-text span{opacity:.9}.school-scan-text strong{font-size:9px}.school-badge-code{margin-top:7px;color:#172033;font-family:monospace;font-size:10px;font-weight:900;letter-spacing:.5px}.school-card-footer{min-height:48px;padding:0 24px;border-radius:0 0 45px 45px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#063b9f,#064cc4,#063b9f);color:#fff;position:relative;z-index:3}.school-footer-left{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:800;letter-spacing:.8px}.school-footer-left b{color:#f4c20d}.school-footer-right{display:flex;align-items:center;gap:6px;font-size:9px}.school-card-actions{margin-top:12px;background:#fff;border:1px solid #e4e9f1;border-radius:16px;padding:12px 14px;box-shadow:0 5px 18px #0f172a0a}.school-badge-meta{display:flex;gap:25px;margin-bottom:10px}.school-badge-meta>div{display:flex;flex-direction:column;gap:2px}.school-badge-meta span{color:#98a2b3;font-size:8px;font-weight:800;letter-spacing:.6px}.school-badge-meta strong{color:#344054;font-size:11px}.badge-meta-active{color:#15803d!important}.badge-meta-inactive{color:#b91c1c!important}.student-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0}.history-button,.print-badge-button{width:100%;min-height:42px;padding:10px;border-radius:11px;font-size:12px}.school-card-no-badge{width:100%;min-height:270px;overflow:hidden;border-radius:25px;background:#fff;border:1px solid #e4e9f1;box-shadow:0 10px 30px #0f172a12}.no-badge-header{height:82px;padding:15px 22px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#063b9f,#064cc4)}.no-badge-header .school-brand-text strong{color:#fff}.no-badge-header>span{color:#fff;font-size:10px;font-weight:900;letter-spacing:1px}.no-badge-content{min-height:140px;padding:20px 25px;display:grid;grid-template-columns:100px 1fr 220px;gap:20px;align-items:center}.school-photo.small{width:90px;height:100px}.no-badge-info>span{color:#1454be;font-size:9px;font-weight:900}.no-badge-info h2{margin:4px 0;color:#172033;font-size:18px}.no-badge-info p{margin:0;color:#667085;font-size:12px}.no-badge-details{display:flex;flex-wrap:wrap;gap:15px;margin-top:12px;color:#8a95a7;font-size:9px}.no-badge-details strong{color:#344054}.no-badge-message{padding:18px;border-radius:15px;background:#fff8e8;border:1px solid #f9e1a6;display:flex;flex-direction:column;align-items:center;text-align:center}.no-badge-message div{font-size:28px}.no-badge-message strong{color:#92400e;font-size:12px;margin-top:4px}.no-badge-message span{color:#a16207;font-size:9px;line-height:1.4;margin-top:4px}.no-badge-footer{padding:10px 20px;background:#f5f7fb;color:#98a2b3;text-align:center;font-size:9px}.student-status{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:20px;background:#ecfdf3;color:#15803d;font-size:10px;font-weight:700}.student-status span{width:6px;height:6px;border-radius:50%;background:#22c55e}.student-status.inactive{background:#fef2f2;color:#b91c1c}.student-status.inactive span{background:#ef4444}.student-class{margin:7px 0 0;color:#667085;font-size:13px;font-weight:600}.student-badge-box{margin:0 20px 18px;padding:17px;border-radius:19px;background:linear-gradient(145deg,#f8fbff,#f4f7ff);border:1px solid #e1e8f7}.section-mini-title{display:block;color:#8a96aa;font-size:9px;font-weight:800;letter-spacing:.7px;margin-bottom:4px}.badge-box-header strong{color:#263247;font-size:12px;word-break:break-all}.badge-active,.badge-inactive{display:flex;align-items:center;gap:6px;padding:6px 9px;border-radius:20px;font-size:10px;font-weight:700}.badge-active{background:#dcfce7;color:#15803d}.badge-inactive{background:#fee2e2;color:#b91c1c}.badge-active span,.badge-inactive span{width:6px;height:6px;border-radius:50%}.badge-active span{background:#22c55e}.badge-inactive span{background:#ef4444}.badge-info-row{display:flex;flex-direction:column;gap:3px;padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid #e4e9f0}.badge-info-row:last-of-type{border-bottom:none}.badge-info-row span{color:#8b97aa;font-size:10px}.badge-info-row strong{color:#344054;font-size:11px}.badge-description p{margin:10px 0 0;color:#7a8699;font-size:10px;line-height:1.5}.no-badge-icon{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#fff3cd;font-size:20px}.student-no-badge strong{color:#92400e;font-size:13px}.student-no-badge p{margin:4px 0 0;color:#a16207;font-size:11px}.student-actions{padding:0 20px 20px}.history-button{width:100%;padding:12px;border:1px solid #dfe5ee;border-radius:13px;background:#fff;color:#344054;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:.2s ease}.history-button:hover{background:#f5f8ff;border-color:#bfd0f4;color:#2563eb}.modal-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999}.history-modal{width:min(650px,100%);max-height:85vh;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 25px 70px #0f172a40}.modal-header{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f5}.modal-student{display:flex;align-items:center;gap:13px}.modal-avatar{width:48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:#eaf1ff;color:#2563eb;font-weight:800}.modal-header h2{margin:0;color:#172033;font-size:17px}.modal-header p{margin:4px 0 0;color:#8993a5;font-size:12px}.modal-close{width:36px;height:36px;border:none;border-radius:10px;background:#f3f5f8;color:#667085;font-size:22px;cursor:pointer}.modal-close:hover{background:#e8ebf0}.modal-body{padding:20px;max-height:calc(85vh - 100px);overflow-y:auto}.history-list{display:flex;flex-direction:column;gap:10px}.history-item{display:flex;align-items:center;gap:13px;padding:13px;border-radius:14px;background:#f8fafc;border:1px solid #edf1f5}.movement-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800}.movement-icon.entree{background:#dcfce7;color:#15803d}.movement-icon.sortie{background:#fee2e2;color:#dc2626}.movement-content{flex:1}.movement-content strong{display:block;color:#344054;font-size:13px}.movement-content span{display:block;margin-top:3px;color:#8a95a7;font-size:11px}.movement-time{color:#344054;font-size:13px;font-weight:800}.history-empty{text-align:center;padding:50px 20px}.history-empty>div{font-size:42px;margin-bottom:10px}.history-empty strong{display:block;color:#344054;font-size:16px}.history-empty p{color:#8a95a7;font-size:12px}.history-loading{min-height:250px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;color:#7a8699;font-size:13px}.badges-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.print-all-button{border:none;border-radius:14px;padding:13px 20px;display:flex;align-items:center;justify-content:center;gap:9px;background:#111827;color:#fff;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #0f172a2e;transition:.2s ease}.print-all-button:hover{transform:translateY(-2px);background:#1f2937;box-shadow:0 12px 25px #0f172a40}.print-all-button span{font-size:17px}.print-badge-button{width:100%;padding:12px;border:none;border-radius:13px;background:#111827;color:#fff;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:.2s ease}.print-badge-button:hover{background:#1f2937;transform:translateY(-1px)}.print-badge-button span{font-size:16px}.print-badges-container{display:none}.print-badge{width:85mm;min-height:54mm;padding:7mm;box-sizing:border-box;background:#fff;border:1px solid #d8dee8;border-radius:5mm;display:flex;flex-direction:column;font-family:Arial,sans-serif;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.print-badge-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:3mm;border-bottom:1px solid #dce2eb}.print-school-name{font-size:16px;font-weight:900;letter-spacing:1px;color:#172033}.print-badge-title{font-size:9px;font-weight:800;color:#2563eb;letter-spacing:1px}.print-student{display:flex;align-items:center;gap:4mm;margin-top:4mm}.print-avatar{width:14mm;height:14mm;flex-shrink:0;border-radius:4mm;display:flex;align-items:center;justify-content:center;background:#2563eb;color:#fff;font-size:14px;font-weight:900}.print-student-info{min-width:0}.print-student-info h2{margin:0;font-size:15px;font-weight:900;color:#172033}.print-student-info p{margin:1.5mm 0 0;font-size:10px;color:#667085;font-weight:600}.print-details{display:grid;grid-template-columns:1fr 1fr;gap:3mm;margin-top:4mm}.print-details div{padding:2.5mm;background:#f7f9fc;border-radius:2.5mm;border:1px solid #e7ebf1}.print-details span{display:block;font-size:6px;font-weight:800;color:#8a95a7;letter-spacing:.6px;margin-bottom:1mm}.print-details strong{display:block;font-size:9px;color:#263247;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.print-qr{display:flex;justify-content:center;align-items:center;margin:4mm 0 3mm}.print-code{text-align:center;padding:2.5mm;border-radius:2.5mm;background:#f5f7fb;border:1px solid #e3e8f0}.print-code span{display:block;font-size:6px;font-weight:800;color:#8a95a7;letter-spacing:.8px;margin-bottom:1mm}.print-code strong{display:block;font-family:monospace;font-size:10px;color:#172033}.print-badge-footer{margin-top:3mm;text-align:center;font-size:6.5px;color:#8a95a7;line-height:1.4}@media print{@page{size:A4;margin:10mm}body.printing-badges *{visibility:hidden!important}body.printing-badges .print-badges-container{display:flex!important;flex-wrap:wrap;gap:10mm;visibility:visible!important}body.printing-badges .print-badge{display:flex!important;visibility:visible!important}body.printing-badges .print-badge{visibility:visible!important}body.printing-badges .print-selected-badge{position:relative!important;width:85mm!important;height:54mm!important;transform:scale(1);box-shadow:none!important;page-break-inside:avoid}body.printing-badges .student-card{width:85mm!important}body.printing-badges .school-card{border-radius:5mm!important}}@media (max-width: 900px){.badges-header-actions{width:100%;flex-direction:column;align-items:stretch}.print-all-button,.scanner-button{width:100%;justify-content:center}}@media (max-width: 600px){.badges-header-actions{gap:9px}.print-all-button,.scanner-button{width:100%}}.print-page{background:#fff;padding:5mm;width:100%;height:100vh}.print-grid{display:flex;flex-wrap:wrap;justify-content:space-around;width:100%;height:100%}.print-school-card{width:31%;height:150px;overflow:hidden;border-radius:5mm;border:1px solid #dbe4f2;background:#fff;display:flex;flex-direction:column;box-sizing:border-box;page-break-inside:avoid;-moz-column-break-inside:avoid;break-inside:avoid;font-family:Arial,sans-serif}.print-header{height:10mm;padding:10mm 2mm;display:flex;justify-content:space-between;align-items:center;color:#fff}.print-school{display:flex;align-items:center;gap:3mm}.print-logo{width:12mm;height:12mm;border-radius:3mm;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.print-logo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.print-body{flex:1;display:flex;align-items:center;gap:4mm;padding:3mm 4mm}.print-photo{width:28mm;height:28mm;border:1px solid #2563eb;border-radius:4mm;overflow:hidden;flex-shrink:0}.print-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.print-photo div{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#4338ca);color:#fff;font-weight:900}.print-info{flex:1;min-width:0}.print-info h2{margin:0;font-size:9px}.print-info p{margin:1mm 0;font-size:5px;color:#667085}.print-qr{display:flex;flex-direction:column;align-items:center}.print-qr svg{width:80%!important;height:80%!important}.print-footer{height:7mm;padding:0 4mm;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(90deg,#063b9f,#064cc4);color:#fff;font-size:5px}@media print{@page{size:A4 portrait;margin:0}html,body{margin:0!important;padding:0!important;width:210mm;height:297mm;background:#fff}body *{visibility:hidden!important}.print-page,.print-page *{visibility:visible!important}.print-page{position:absolute;top:0;left:0;width:210mm;height:297mm;padding:0;margin:0;background:#fff}.print-grid{display:flex!important;align-items:center!important;justify-content:space-around!important;gap:2mm!important;width:210mm!important;height:100%!important;margin:0!important;padding:4mm!important}.print-school-card{padding:1mm!important;position:relative!important;width:85mm!important;height:55mm!important;min-width:85mm!important;max-width:85mm!important;min-height:55mm!important;max-height:55mm!important;flex:0 0 55mm!important;overflow:hidden!important;box-sizing:border-box!important;border-radius:0!important;border:0px solid #063c9f67!important;background-image:linear-gradient(#ffffffb8,#ffffffb8),url(/scolar/assets/images/scolar2.png)!important;background-repeat:no-repeat,no-repeat!important;background-position:center,center!important;background-size:cover,contain!important;box-shadow:none!important;font-family:Arial,sans-serif!important;transform:none!important;page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;isolation:isolate!important}.print-school-card:before{content:"";position:absolute;top:0;right:0;width:25%;height:40px;background:linear-gradient(90deg,#063b9f,#1258d8,#063b9f);clip-path:polygon(18% 0,100% 0,100% 100%,0 100%);z-index:-1}.print-school-card:after{content:"";position:absolute;width:250px;height:250px;top:22px;left:40px;border-radius:50%;background:transparent;border:10px solid #6983d189;box-shadow:0 0 0 18px #fff,0 0 0 21px #6983d189;pointer-events:none;z-index:0}.print-school-card .school-card-header{height:12mm!important;min-height:12mm!important;padding:1mm 4mm 3mm!important;display:flex!important;align-items:center!important;justify-content:space-between!important;position:relative;z-index:2}.print-school-card .school-logo{margin-top:3mm!important;width:12mm!important;height:12mm!important;min-width:12mm!important;min-height:12mm!important;border-radius:3mm!important;box-shadow:0 3px 8px #0000001f!important}.print-school-card .school-logo img{width:100%!important;height:100%!important;-o-object-fit:cover!important;object-fit:cover!important}.print-school-card .school-brand{text-align:center!important;gap:2mm!important;color:#1258d8!important}.print-school-card .school-brand-text strong{font-size:8px!important;font-weight:900!important}.print-school-card .school-brand-text span{font-size:9px!important;color:#1258d8;margin-top:0!important}.print-school-card .school-card-type{gap:2px!important}.print-school-card .school-card-type>span{font-size:8px!important;margin-left:20mm!important;letter-spacing:.6px!important}.print-school-card .school-student-status{padding:2px 5px!important;gap:3px!important;font-size:8px!important}.print-school-card .school-student-status span{width:4px!important;height:4px!important}.print-school-card .school-card-body{display:flex!important;gap:3mm!important;padding:1mm 2mm!important;align-items:center!important;justify-content:center!important;position:relative;z-index:2;flex:1}.print-school-card .school-card-left{flex-shrink:0!important;align-items:center!important}.print-school-card .school-photo{width:20mm!important;height:20mm!important;min-width:20mm!important;min-height:20mm!important;border-radius:4mm!important;border:1px solid #2563eb!important;box-shadow:0 3px 8px #2563eb1f!important}.print-school-card .school-avatar{font-size:14px!important}.print-school-card .school-student-type{margin-top:2mm!important;min-width:20mm!important;padding:2px 4px!important;border-radius:3px!important;font-size:5px!important;box-shadow:none!important}.print-school-card .school-year{margin-top:2mm!important}.print-school-card .school-year span{font-size:7px!important}.print-school-card .school-year strong{font-size:8px!important;margin-top:1px!important}.print-school-card .school-card-info{padding-left:2mm!important;border-left:1px solid #d8e4f5!important;min-width:0!important;flex:1!important}.print-school-card .school-info-row{padding:.5mm 0!important;border-bottom:1px solid #dbe4f0!important}.print-school-card .school-info-label{font-size:4px!important;letter-spacing:.3px!important;margin-bottom:1px!important}.print-school-card .school-info-row>strong{font-size:8px!important;white-space:nowrap!important;text-transform:capitalize!important;overflow:hidden!important;text-overflow:ellipsis!important}.print-school-card .school-info-row>span{font-size:6px!important;white-space:nowrap!important;text-transform:capitalize!important;overflow:hidden!important;text-overflow:ellipsis!important}.print-school-card .school-info-double{gap:5px!important}.print-school-card .school-info-id{margin-top:2px!important;font-size:4px!important}.mamodif{display:flex;justify-content:space-evenly;align-items:center}.monsup{text-transform:lowercase!important}.print-school-card .school-card-qr-section{padding-left:2mm!important;border-left:1px solid #c9dcf6!important;flex-shrink:0!important}.print-school-card .school-qr-frame{width:22mm!important;height:22mm!important;border:1px solid #1659c7!important;border-radius:3mm!important;box-shadow:none!important}.print-school-card .school-qr-frame svg{width:19mm!important;height:19mm!important}.print-school-card .school-scan-text{margin-top:1mm!important;width:18mm!important;padding:2px!important;gap:2px!important;border-radius:8px!important;font-size:4px!important}.print-school-card .school-scan-text strong{font-size:4px!important}.print-school-card .school-badge-code{margin-top:1mm!important;font-size:5px!important;display:none!important;visibility:hidden!important}.print-school-card .school-card-footer{min-height:8mm!important;height:8mm!important;padding:0 2mm!important;position:relative;z-index:3;font-size:5px!important}.print-school-card .school-footer-left{gap:1px!important;font-size:6px!important;display:none;visibility:hidden;letter-spacing:.3px!important}.print-school-card .school-footer-right{gap:1px!important;display:none;visibility:hidden;font-size:6px!important}}.documents-modal-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:25px;background:#0f172a8c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:documentsOverlayIn .2s ease}.documents-modal{width:min(850px,100%);max-height:90vh;background:#fff;border-radius:18px;box-shadow:0 25px 70px #00000038;overflow:hidden;display:flex;flex-direction:column;animation:documentsModalIn .25s ease}.documents-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #edf0f4}.documents-modal-title{display:flex;align-items:center;gap:14px}.documents-modal-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#eef4ff;color:#2563eb;font-size:20px}.documents-modal-title h2{margin:0;font-size:18px;font-weight:700;color:#172033}.documents-modal-title p{margin:4px 0 0;font-size:13px;color:#737b8c}.documents-modal-close{width:38px;height:38px;border:none;border-radius:10px;background:#f5f6f8;color:#667085;cursor:pointer;font-size:17px;transition:.2s}.documents-modal-close:hover{background:#feecec;color:#dc2626}.documents-eleve-info{display:flex;gap:24px;padding:14px 24px;background:#f8fafc;border-bottom:1px solid #edf0f4;flex-wrap:wrap}.documents-eleve-info>div{display:flex;align-items:center;gap:8px;font-size:13px;color:#667085}.documents-eleve-info i{color:#2563eb}.documents-eleve-info strong{margin-left:4px;color:#172033;font-weight:600}.documents-message{margin:16px 24px 0;padding:11px 14px;border-radius:10px;display:flex;align-items:center;gap:9px;font-size:13px}.documents-message.success{background:#ecfdf3;color:#15803d;border:1px solid #bbf7d0}.documents-message.error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.documents-upload-box,.documents-list-section{padding:20px 24px}.documents-list-section{overflow-y:auto;flex:1}.documents-section-title{display:flex;align-items:center;gap:9px;margin-bottom:15px;font-size:14px;font-weight:700;color:#172033}.documents-section-title i{color:#2563eb}.documents-section-title span{display:flex;align-items:center;gap:8px}.documents-section-title b{min-width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#eef4ff;color:#2563eb;font-size:11px}.documents-upload-box{margin:18px 24px 0;padding:18px;border:1px solid #e7ebf0;border-radius:14px;background:#fafbfc}.documents-upload-box .documents-section-title{margin-bottom:14px}.documents-upload-form{display:grid;grid-template-columns:1fr 1.5fr auto;gap:12px;align-items:end}.documents-form-group{display:flex;flex-direction:column;gap:6px}.documents-form-group label{font-size:12px;font-weight:600;color:#5c6678}.documents-form-group select,.documents-form-group input{width:100%;height:40px;padding:0 11px;border:1px solid #dfe4ea;border-radius:8px;background:#fff;color:#273142;outline:none;font-size:13px;box-sizing:border-box}.documents-form-group input{padding-top:9px}.documents-form-group select:focus,.documents-form-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.documents-upload-btn{height:40px;padding:0 16px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;transition:.2s}.documents-upload-btn:hover{background:#1d4ed8}.documents-upload-btn:disabled{opacity:.65;cursor:not-allowed}.documents-loading{min-height:120px;display:flex;align-items:center;justify-content:center;gap:10px;color:#667085;font-size:13px}.documents-empty{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:5px;color:#667085}.documents-empty-icon{width:48px;height:48px;margin-bottom:5px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#94a3b8;font-size:20px}.documents-empty strong{color:#475467;font-size:14px}.documents-empty span{max-width:380px;font-size:12px;line-height:1.5}.documents-list{display:flex;flex-direction:column;gap:9px}.document-item{min-height:68px;display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e9edf2;border-radius:11px;background:#fff;transition:.2s}.document-item:hover{border-color:#d6deea;box-shadow:0 4px 15px #0f172a0d}.document-file-icon{width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#f1f5f9;color:#64748b;font-size:18px}.document-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.document-info strong{color:#172033;font-size:13px}.document-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#667085;font-size:12px}.document-meta{display:flex;gap:12px;color:#98a2b3;font-size:10px}.document-actions{display:flex;gap:6px}.document-view-btn,.document-delete-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;cursor:pointer;text-decoration:none;transition:.2s;font-size:13px}.document-view-btn{background:#eff6ff;color:#2563eb}.document-view-btn:hover{background:#dbeafe}.document-delete-btn{background:#fef2f2;color:#dc2626}.document-delete-btn:hover{background:#fee2e2}.documents-modal-footer{display:flex;justify-content:flex-end;padding:14px 24px;border-top:1px solid #edf0f4;background:#fafbfc}.documents-close-btn{height:36px;padding:0 16px;border:1px solid #dfe4ea;border-radius:8px;background:#fff;color:#475467;font-size:13px;font-weight:600;cursor:pointer;transition:.2s}.documents-close-btn:hover{background:#f8fafc}@keyframes documentsOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes documentsModalIn{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 700px){.documents-modal-overlay{padding:10px}.documents-modal{max-height:95vh;border-radius:14px}.documents-upload-form{grid-template-columns:1fr}.documents-upload-btn{width:100%}.documents-eleve-info{gap:10px;flex-direction:column}.document-item{align-items:flex-start}.document-actions{margin-left:auto}.documents-upload-box,.documents-list-section{padding:15px}.documents-upload-box{margin:12px 15px 0}}:root{--conv-blue: #2563eb;--conv-blue-dark: #1d4ed8;--conv-blue-soft: #eff6ff;--conv-text: #172033;--conv-text-soft: #667085;--conv-border: #e7ebf2;--conv-bg: #f6f8fc;--conv-white: #ffffff;--conv-orange: #f59e0b;--conv-green: #16a34a;--conv-purple: #7c3aed;--conv-red: #dc2626;--conv-shadow: 0 4px 18px rgba(15, 23, 42, .05);--conv-shadow-hover: 0 12px 30px rgba(15, 23, 42, .09)}.convocations-page{width:100%;max-width:1500px;margin:0 auto;padding:30px 32px 50px;box-sizing:border-box;color:var(--conv-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}.convocations-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.convocations-header-left{display:flex;align-items:center;gap:16px}.convocations-title-icon{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:25px;box-shadow:0 8px 20px #2563eb38}.convocations-title-line{display:flex;align-items:center;gap:12px}.convocations-title-line h1{margin:0;font-size:28px;line-height:1.2;font-weight:750;letter-spacing:-.6px;color:#101828}.convocations-header p{margin:6px 0 0;color:var(--conv-text-soft);font-size:14px}.convocations-live{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:#ecfdf3;color:#15803d;font-size:11px;font-weight:700}.convocations-live span{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e1f}.convocation-create-button{border:none;outline:none;min-height:45px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:11px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 7px 18px #2563eb33;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.convocation-create-button span{font-size:21px;line-height:1}.convocation-create-button:hover{transform:translateY(-2px);box-shadow:0 11px 24px #2563eb45}.convocation-create-button:active{transform:translateY(0)}.convocations-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.convocation-stat-card{min-height:92px;display:flex;align-items:center;gap:14px;padding:17px;background:var(--conv-white);border:1px solid var(--conv-border);border-radius:15px;box-shadow:var(--conv-shadow);box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease}.convocation-stat-card:hover{transform:translateY(-2px);box-shadow:var(--conv-shadow-hover)}.convocation-stat-card>div:last-child{display:flex;flex-direction:column;gap:3px}.convocation-stat-card span{color:#8a94a6;font-size:12px;font-weight:600}.convocation-stat-card strong{color:#111827;font-size:25px;line-height:1;font-weight:750}.convocation-stat-icon{width:46px;height:46px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:13px;font-size:20px;font-weight:700}.convocation-stat-icon.blue{background:#eff6ff;color:#2563eb}.convocation-stat-icon.orange{background:#fff7ed;color:#ea580c}.convocation-stat-icon.green{background:#ecfdf3;color:#16a34a}.convocation-stat-icon.purple{background:#f5f3ff;color:#7c3aed}.convocations-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:13px;background:#fff;border:1px solid var(--conv-border);border-radius:14px;box-shadow:var(--conv-shadow)}.convocations-search{height:42px;flex:1;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid #e3e7ef;border-radius:10px;background:#fafbfc;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.convocations-search:focus-within{background:#fff;border-color:#93b4ff;box-shadow:0 0 0 3px #2563eb14}.convocations-search span{font-size:16px;opacity:.65}.convocations-search input{width:100%;border:none;outline:none;background:transparent;color:#1d2939;font-size:13px}.convocations-search input::-moz-placeholder{color:#98a2b3}.convocations-search input::placeholder{color:#98a2b3}.convocations-toolbar>select{height:42px;min-width:175px;padding:0 35px 0 12px;border:1px solid #e3e7ef;border-radius:10px;background:#fff;color:#344054;font-size:13px;font-weight:600;outline:none;cursor:pointer}.convocations-toolbar>select:focus{border-color:#93b4ff;box-shadow:0 0 0 3px #2563eb14}.convocations-container{width:100%}.convocations-list{display:flex;flex-direction:column;gap:11px}.convocation-card{display:grid;grid-template-columns:minmax(200px,1.25fr) minmax(190px,1.2fr) minmax(135px,.8fr) auto auto;align-items:center;gap:20px;padding:16px 18px;background:#fff;border:1px solid var(--conv-border);border-radius:15px;box-shadow:var(--conv-shadow);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.convocation-card:hover{transform:translateY(-2px);border-color:#d7e1f4;box-shadow:var(--conv-shadow-hover)}.convocation-student{display:flex;align-items:center;min-width:0;gap:12px}.convocation-avatar{width:47px;height:47px;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:13px;background:linear-gradient(135deg,#dbeafe,#e0e7ff);color:#1d4ed8;font-size:14px;font-weight:800;border:1px solid #dbe7fb}.convocation-avatar img{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.convocation-student>div:last-child{min-width:0;display:flex;flex-direction:column;gap:4px}.convocation-student strong{overflow:hidden;color:#172033;font-size:13px;font-weight:750;white-space:nowrap;text-overflow:ellipsis}.convocation-student span{color:#8a94a6;font-size:11px}.convocation-main{min-width:0;display:flex;flex-direction:column;gap:4px}.convocation-label{color:#98a2b3;font-size:9px;font-weight:800;letter-spacing:.8px}.convocation-main strong{overflow:hidden;color:#344054;font-size:13px;font-weight:700;white-space:nowrap;text-overflow:ellipsis}.convocation-main p{overflow:hidden;margin:0;color:#98a2b3;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.convocation-date{display:flex;flex-direction:column;gap:4px}.convocation-date strong{color:#344054;font-size:13px;font-weight:700}.convocation-date>span:last-child{color:#8a94a6;font-size:11px}.convocation-status{display:inline-flex;align-items:center;width:-moz-max-content;width:max-content;gap:7px;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:750;white-space:nowrap}.convocation-status>span{width:6px;height:6px;border-radius:50%}.convocation-status.en_attente{background:#fff7ed;color:#c2410c}.convocation-status.en_attente>span{background:#f97316}.convocation-status.envoyee{background:#eff6ff;color:#1d4ed8}.convocation-status.envoyee>span{background:#3b82f6}.convocation-status.confirmee{background:#ecfdf3;color:#15803d}.convocation-status.confirmee>span{background:#22c55e}.convocation-status.honoree{background:#f5f3ff;color:#6d28d9}.convocation-status.honoree>span{background:#8b5cf6}.convocation-status.annulee{background:#fef2f2;color:#b91c1c}.convocation-status.annulee>span{background:#ef4444}.convocation-actions{display:flex;align-items:center;gap:7px}.convocation-actions button{width:35px;height:35px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #e4e7ec;border-radius:9px;background:#fff;cursor:pointer;font-size:14px;transition:background .2s ease,border-color .2s ease,transform .2s ease}.convocation-actions button:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.convocation-actions button.delete:hover{background:#fef2f2;border-color:#fecaca}.convocation-actions select{height:35px;padding:0 28px 0 9px;border:1px solid #e4e7ec;border-radius:9px;background:#fff;color:#475467;font-size:10px;font-weight:600;outline:none;cursor:pointer}.convocations-empty{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;background:#fff;border:1px dashed #d6dce7;border-radius:17px;text-align:center}.convocations-empty>div{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;border-radius:18px;background:#eff6ff;color:#2563eb;font-size:27px}.convocations-empty strong{color:#344054;font-size:16px}.convocations-empty p{max-width:420px;margin:7px 0 18px;color:#98a2b3;font-size:12px}.convocations-empty button{border:none;padding:10px 16px;border-radius:9px;background:#2563eb;color:#fff;font-size:12px;font-weight:700;cursor:pointer}.convocations-loading{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;color:#667085;font-size:13px}.convocations-spinner{width:30px;height:30px;border:3px solid #e5edff;border-top-color:#2563eb;border-radius:50%;animation:convocationSpin .8s linear infinite}@keyframes convocationSpin{to{transform:rotate(360deg)}}.convocation-modal-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:25px;background:#0f172a8c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:convocationOverlayIn .2s ease}@keyframes convocationOverlayIn{0%{opacity:0}to{opacity:1}}.convocation-modal{width:min(620px,100%);max-height:calc(100vh - 50px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:18px;box-shadow:0 25px 70px #0f172a40;animation:convocationModalIn .25s ease}@keyframes convocationModalIn{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.convocation-modal-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid #edf0f5}.convocation-modal-header h2{margin:0;color:#101828;font-size:18px;font-weight:750}.convocation-modal-header p{margin:5px 0 0;color:#98a2b3;font-size:11px}.convocation-modal-header>button{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid #e4e7ec;border-radius:9px;background:#fff;color:#667085;font-size:22px;line-height:1;cursor:pointer;transition:background .2s ease,color .2s ease}.convocation-modal-header>button:hover{background:#f2f4f7;color:#101828}.convocation-form{overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:16px}.convocation-form::-webkit-scrollbar{width:6px}.convocation-form::-webkit-scrollbar-thumb{background:#d0d5dd;border-radius:10px}.form-group{display:flex;flex-direction:column;gap:7px}.form-group label{color:#344054;font-size:12px;font-weight:700}.form-group label:first-letter{text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{width:100%;box-sizing:border-box;border:1px solid #d9dee8;border-radius:10px;background:#fff;color:#1d2939;font-family:inherit;font-size:13px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.form-group textarea{min-height:90px;padding:11px 12px;resize:vertical;line-height:1.5}.form-group input::-moz-placeholder,.form-group textarea::-moz-placeholder{color:#a1a9b8}.form-group input::placeholder,.form-group textarea::placeholder{color:#a1a9b8}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#b9c2d0}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#7da5f8;box-shadow:0 0 0 3px #2563eb17}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.convocation-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:5px;padding-top:17px;border-top:1px solid #edf0f5}.convocation-form-actions button{min-height:41px;padding:0 16px;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.convocation-form-actions button:first-child{border:1px solid #d9dee8;background:#fff;color:#475467}.convocation-form-actions button:first-child:hover{background:#f8fafc}.convocation-form-actions button:last-child{border:none;padding-left:19px;padding-right:19px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 6px 15px #2563eb2e}.convocation-form-actions button:last-child:hover{transform:translateY(-1px);box-shadow:0 9px 20px #2563eb40}.convocation-form-actions button:disabled{opacity:.55;cursor:not-allowed;transform:none}@media (max-width: 1200px){.convocations-page{padding:25px 22px 40px}.convocations-stats{grid-template-columns:repeat(2,1fr)}.convocation-card{grid-template-columns:minmax(190px,1fr) minmax(170px,1fr) minmax(130px,.8fr);gap:15px}.convocation-card>.convocation-status{grid-column:1}.convocation-actions{grid-column:2 / span 2;justify-content:flex-end}}@media (max-width: 760px){.convocations-page{padding:18px 14px 35px}.convocations-header{flex-direction:column;align-items:stretch}.convocations-header-left{align-items:flex-start}.convocations-title-icon{width:45px;height:45px;border-radius:12px;font-size:21px}.convocations-title-line{flex-wrap:wrap}.convocations-title-line h1{font-size:22px}.convocation-create-button{width:100%}.convocations-stats{grid-template-columns:1fr 1fr;gap:10px}.convocation-stat-card{min-height:78px;padding:12px;gap:10px}.convocation-stat-icon{width:39px;height:39px;border-radius:10px;font-size:17px}.convocation-stat-card strong{font-size:20px}.convocations-toolbar{flex-direction:column;align-items:stretch}.convocations-toolbar>select{width:100%}.convocation-card{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:16px}.convocation-student,.convocation-main,.convocation-date{padding-bottom:12px;border-bottom:1px solid #edf0f5}.convocation-status{align-self:flex-start}.convocation-actions{justify-content:flex-end}.convocation-actions select{flex:1}.convocation-modal-overlay{padding:12px}.convocation-modal{max-height:calc(100vh - 24px);border-radius:15px}.convocation-modal-header,.convocation-form{padding:17px}.form-grid{grid-template-columns:1fr}}@media (max-width: 430px){.convocations-stats{grid-template-columns:1fr}.convocations-title-line{gap:7px}.convocations-live{font-size:9px}.convocation-form-actions{flex-direction:column-reverse}.convocation-form-actions button{width:100%}}:root{--rapport-primary: #2563eb;--rapport-primary-dark: #1d4ed8;--rapport-primary-light: #eff6ff;--rapport-success: #16a34a;--rapport-success-light: #f0fdf4;--rapport-danger: #dc2626;--rapport-danger-light: #fef2f2;--rapport-warning: #f59e0b;--rapport-warning-light: #fffbeb;--rapport-purple: #7c3aed;--rapport-purple-light: #f5f3ff;--rapport-text: #172033;--rapport-text-light: #667085;--rapport-border: #e5e7eb;--rapport-background: #f6f8fc;--rapport-white: #ffffff;--rapport-radius: 16px;--rapport-shadow: 0 4px 18px rgba(15, 23, 42, .06)}.rapports-page{width:100%;min-height:100vh;padding:28px;background:var(--rapport-background);box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--rapport-text)}.rapports-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}.rapports-header-left{display:flex;align-items:center;gap:16px}.rapports-title-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:25px;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;box-shadow:0 8px 20px #2563eb38}.rapports-title-line{display:flex;align-items:center;gap:12px}.rapports-title-line h1{margin:0;font-size:26px;font-weight:750;letter-spacing:-.5px}.rapports-header p{margin:6px 0 0;color:var(--rapport-text-light);font-size:14px}.rapports-live{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:var(--rapport-success-light);color:var(--rapport-success);font-size:11px;font-weight:700}.rapports-live span{width:7px;height:7px;border-radius:50%;background:var(--rapport-success);box-shadow:0 0 0 3px #16a34a1f}.rapports-export{display:flex;align-items:center;gap:10px}.rapports-export button{height:42px;padding:0 16px;border:1px solid transparent;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.rapports-export button:hover{transform:translateY(-1px)}.rapports-export button:disabled{opacity:.55;cursor:not-allowed;transform:none}.rapport-export-pdf{background:#fff;border-color:#e5e7eb!important;color:#344054}.rapport-export-pdf:hover{background:#f8fafc}.rapport-export-excel{background:#2563eb;color:#fff;box-shadow:0 5px 14px #2563eb2e}.rapport-export-excel:hover{background:#1d4ed8}.rapports-filter-card{background:#fff;border:1px solid var(--rapport-border);border-radius:var(--rapport-radius);padding:18px 20px;box-shadow:var(--rapport-shadow);margin-bottom:22px}.rapport-filter-title{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:750;margin-bottom:14px}.rapport-filter-title span{font-size:17px}.rapport-period-buttons{display:flex;flex-wrap:wrap;gap:8px}.rapport-period-buttons button{height:37px;padding:0 14px;border:1px solid #e4e7ec;border-radius:9px;background:#fff;color:#475467;font-size:12px;font-weight:650;cursor:pointer;transition:all .2s ease}.rapport-period-buttons button:hover{border-color:#b8c7e6;background:#f8faff}.rapport-period-buttons button.active{color:#fff;border-color:var(--rapport-primary);background:var(--rapport-primary);box-shadow:0 4px 10px #2563eb2e}.rapport-custom-dates{display:flex;align-items:flex-end;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid #edf0f4}.rapport-custom-dates>div{display:flex;flex-direction:column;gap:6px}.rapport-custom-dates label{font-size:11px;font-weight:700;color:#475467}.rapport-custom-dates input{height:38px;padding:0 11px;border:1px solid #d0d5dd;border-radius:8px;outline:none;color:#344054;background:#fff;font-size:12px}.rapport-custom-dates input:focus{border-color:var(--rapport-primary);box-shadow:0 0 0 3px #2563eb14}.rapport-custom-dates button{height:38px;padding:0 17px;border:none;border-radius:8px;background:var(--rapport-primary);color:#fff;font-size:12px;font-weight:700;cursor:pointer}.rapport-custom-dates button:hover{background:var(--rapport-primary-dark)}.rapports-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.rapport-stat-card{min-height:115px;padding:20px;background:#fff;border:1px solid var(--rapport-border);border-radius:var(--rapport-radius);box-shadow:var(--rapport-shadow);display:flex;align-items:center;gap:15px;box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease}.rapport-stat-card:hover{transform:translateY(-2px);box-shadow:0 9px 25px #0f172a14}.rapport-stat-icon{width:46px;height:46px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:13px;font-size:21px;font-weight:800}.rapport-stat-card.recette .rapport-stat-icon{background:var(--rapport-success-light);color:var(--rapport-success)}.rapport-stat-card.depense .rapport-stat-icon{background:var(--rapport-danger-light);color:var(--rapport-danger)}.rapport-stat-card.solde-positive .rapport-stat-icon{background:var(--rapport-primary-light);color:var(--rapport-primary)}.rapport-stat-card.solde-negative .rapport-stat-icon{background:var(--rapport-danger-light);color:var(--rapport-danger)}.rapport-stat-card.operations .rapport-stat-icon{background:var(--rapport-purple-light);color:var(--rapport-purple)}.rapport-stat-card span{display:block;margin-bottom:5px;color:#667085;font-size:12px;font-weight:600}.rapport-stat-card strong{display:block;font-size:20px;font-weight:800;letter-spacing:-.3px}.rapport-stat-card small{display:block;margin-top:5px;color:#98a2b3;font-size:10px}.rapports-tabs{display:flex;align-items:center;gap:3px;padding:5px;margin-bottom:18px;background:#fff;border:1px solid var(--rapport-border);border-radius:12px;box-shadow:var(--rapport-shadow)}.rapports-tabs button{flex:1;height:40px;border:none;border-radius:8px;background:transparent;color:#667085;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.rapports-tabs button:hover{color:var(--rapport-primary);background:#f8faff}.rapports-tabs button.active{background:var(--rapport-primary);color:#fff;box-shadow:0 3px 8px #2563eb2e}.rapport-content{display:flex;flex-direction:column;gap:18px}.rapport-overview-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px}.rapport-panel{background:#fff;border:1px solid var(--rapport-border);border-radius:var(--rapport-radius);box-shadow:var(--rapport-shadow);overflow:hidden}.rapport-panel-header{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #eef1f5}.rapport-panel-header h2{margin:0;font-size:15px;font-weight:750}.rapport-panel-header p{margin:5px 0 0;color:#98a2b3;font-size:11px}.rapport-panel-header>span{color:#667085;font-size:12px;font-weight:700}.rapport-panel-header button{border:none;background:var(--rapport-primary-light);color:var(--rapport-primary);border-radius:8px;padding:8px 12px;font-size:11px;font-weight:700;cursor:pointer}.rapport-panel-header button:hover{background:#dbeafe}.rapport-financial-bars{padding:25px 22px}.financial-row{margin-bottom:24px}.financial-row:last-child{margin-bottom:0}.financial-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.financial-label span{font-size:12px;font-weight:650;color:#475467}.financial-label strong{font-size:12px;font-weight:800}.financial-progress{height:10px;background:#eef2f6;border-radius:999px;overflow:hidden}.financial-progress-recette{height:100%;border-radius:inherit;background:linear-gradient(90deg,#16a34a,#22c55e);transition:width .5s ease}.financial-progress-depense{height:100%;border-radius:inherit;background:linear-gradient(90deg,#dc2626,#f87171);transition:width .5s ease}.rapport-solde-panel{position:relative;min-height:210px;padding:30px;box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#1d4ed8,#3730a3);color:#fff;border-radius:var(--rapport-radius);box-shadow:0 10px 28px #2563eb2e}.rapport-solde-panel>span{position:relative;z-index:2;font-size:12px;opacity:.78;margin-bottom:8px}.rapport-solde-panel>strong{position:relative;z-index:2;font-size:28px;font-weight:850;letter-spacing:-.7px}.rapport-solde-panel>p{position:relative;z-index:2;margin:8px 0 0;font-size:11px;opacity:.68}.rapport-solde-decoration{position:absolute;right:-30px;bottom:-55px;width:180px;height:180px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:80px;font-weight:900;color:#ffffff12}.rapport-table-panel{width:100%}.rapport-table-wrapper{width:100%;overflow-x:auto}.rapport-table{width:100%;border-collapse:collapse;min-width:760px}.rapport-table thead th{padding:13px 18px;background:#f8fafc;border-bottom:1px solid #e8edf3;color:#667085;text-align:left;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.35px;white-space:nowrap}.rapport-table tbody td{padding:15px 18px;border-bottom:1px solid #eef1f5;color:#475467;font-size:12px;vertical-align:middle}.rapport-table tbody tr{transition:background .15s ease}.rapport-table tbody tr:hover{background:#fafcff}.rapport-table tbody tr:last-child td{border-bottom:none}.rapport-table td strong{color:#344054;font-weight:700}.rapport-type{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:750}.rapport-type.recette{background:var(--rapport-success-light);color:var(--rapport-success)}.rapport-type.depense{background:var(--rapport-danger-light);color:var(--rapport-danger)}.montant-recette{color:var(--rapport-success)!important;font-weight:800!important;white-space:nowrap}.montant-depense{color:var(--rapport-danger)!important;font-weight:800!important;white-space:nowrap}.rapport-total-recette{color:var(--rapport-success)!important;font-size:16px!important}.rapport-total-depense{color:var(--rapport-danger)!important;font-size:16px!important}.rapport-category{display:inline-flex;padding:5px 9px;border-radius:7px;background:#f2f4f7;color:#475467;font-size:10px;font-weight:700}.rapport-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.rapport-empty>div{width:54px;height:54px;margin-bottom:12px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:#f2f4f7;font-size:23px}.rapport-empty strong{font-size:14px;color:#344054}.rapport-empty p{margin:6px 0 0;color:#98a2b3;font-size:11px}.rapports-loading-page{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#667085;font-size:13px}.rapports-spinner{width:38px;height:38px;border-radius:50%;border:3px solid #e5e7eb;border-top-color:var(--rapport-primary);animation:rapports-spin .8s linear infinite}@keyframes rapports-spin{to{transform:rotate(360deg)}}@media (max-width: 1100px){.rapports-page{padding:20px}.rapports-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.rapport-overview-grid{grid-template-columns:1fr}}@media (max-width: 700px){.rapports-page{padding:14px}.rapports-header{flex-direction:column;align-items:stretch}.rapports-header-left{align-items:flex-start}.rapports-title-icon{width:46px;height:46px;border-radius:13px;font-size:20px}.rapports-title-line{flex-wrap:wrap}.rapports-title-line h1{font-size:21px}.rapports-header p{font-size:12px;line-height:1.5}.rapports-export{width:100%}.rapports-export button{flex:1}.rapports-stats{grid-template-columns:1fr}.rapport-stat-card{min-height:100px}.rapport-period-buttons{display:grid;grid-template-columns:repeat(2,1fr)}.rapport-period-buttons button{width:100%}.rapport-custom-dates{flex-direction:column;align-items:stretch}.rapport-custom-dates>div{width:100%}.rapport-custom-dates input,.rapport-custom-dates button{width:100%;box-sizing:border-box}.rapports-tabs{overflow-x:auto}.rapports-tabs button{flex:0 0 auto;min-width:125px}.rapport-panel-header{padding:16px}.rapport-financial-bars{padding:20px 16px}.rapport-solde-panel{min-height:180px}}@media (max-width: 430px){.rapports-title-line h1{font-size:19px}.rapports-live{font-size:9px}.rapport-period-buttons{grid-template-columns:1fr}.rapport-stat-card strong{font-size:18px}.rapport-solde-panel>strong{font-size:23px}}.depenses-page{width:100%;min-height:100vh;padding:28px 32px 50px;background:#f5f7fb;box-sizing:border-box;font-family:Inter,Segoe UI,Arial,sans-serif;color:#172033}.depenses-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.depenses-header-left{display:flex;align-items:center;gap:16px}.depenses-title-icon{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0d47c9,#2563eb);color:#fff;font-size:25px;box-shadow:0 10px 25px #2563eb33}.depenses-title-line{display:flex;align-items:center;gap:12px}.depenses-title-line h1{margin:0;font-size:27px;font-weight:750;letter-spacing:-.5px;color:#172033}.depenses-header-left p{margin:5px 0 0;color:#7b8496;font-size:13px}.depenses-live{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:#eaf8f0;color:#15803d;font-size:11px;font-weight:700}.depenses-live span{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e1f}.depense-create-button{height:46px;padding:0 18px;border:none;border-radius:12px;background:linear-gradient(135deg,#0d47c9,#2563eb);color:#fff;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #2563eb33;transition:.2s ease}.depense-create-button span{font-size:20px;line-height:1}.depense-create-button:hover{transform:translateY(-2px);box-shadow:0 12px 25px #2563eb47}.depense-create-button:active{transform:translateY(0)}.depenses-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.depense-stat-card{min-height:105px;padding:18px;background:#fff;border:1px solid #e8ecf3;border-radius:16px;display:flex;align-items:center;gap:14px;box-sizing:border-box;box-shadow:0 5px 20px #14223c0a;transition:.2s ease}.depense-stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #14223c14}.depense-stat-icon{width:48px;height:48px;flex-shrink:0;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:20px}.depense-stat-icon.blue{background:#eaf2ff;color:#2563eb}.depense-stat-icon.red{background:#fff0f0;color:#dc2626}.depense-stat-icon.green{background:#eaf8f0;color:#16a34a}.depense-stat-icon.orange{background:#fff6e8;color:#ea8a00}.depense-stat-card span{display:block;margin-bottom:5px;color:#8a93a3;font-size:11px;font-weight:600}.depense-stat-card strong{display:block;color:#182235;font-size:17px;font-weight:750}.depenses-toolbar{display:flex;align-items:center;gap:12px;padding:14px;margin-bottom:18px;background:#fff;border:1px solid #e8ecf3;border-radius:15px;box-shadow:0 5px 20px #14223c09}.depenses-search{height:42px;flex:1;min-width:220px;display:flex;align-items:center;gap:9px;padding:0 13px;background:#f8f9fc;border:1px solid #e5e9f1;border-radius:10px;box-sizing:border-box}.depenses-search span{font-size:15px;opacity:.65}.depenses-search input{width:100%;height:100%;border:none;outline:none;background:transparent;color:#202938;font-size:13px}.depenses-search input::-moz-placeholder{color:#9aa2b1}.depenses-search input::placeholder{color:#9aa2b1}.depenses-toolbar select{height:42px;min-width:175px;padding:0 12px;border:1px solid #e1e6ef;border-radius:10px;outline:none;background:#fff;color:#344054;font-size:12px;font-weight:600;cursor:pointer}.depenses-toolbar select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.depenses-container{width:100%}.depenses-list{display:flex;flex-direction:column;gap:10px}.depense-card{min-height:92px;padding:15px 18px;display:grid;grid-template-columns:48px minmax(190px,1.7fr) minmax(110px,.8fr) 105px 150px 105px 100px;align-items:center;gap:16px;background:#fff;border:1px solid #e8ecf3;border-radius:14px;box-sizing:border-box;box-shadow:0 3px 15px #14223c09;transition:.2s ease}.depense-card:hover{border-color:#d8e1f0;box-shadow:0 8px 25px #14223c12;transform:translateY(-1px)}.depense-card-icon{width:46px;height:46px;border-radius:13px;background:#fff1f1;display:flex;align-items:center;justify-content:center;color:#dc2626;font-size:19px}.depense-main,.depense-category,.depense-date,.depense-amount{min-width:0}.depense-label{display:block;margin-bottom:5px;color:#98a0ae;font-size:9px;font-weight:750;letter-spacing:.7px;text-transform:uppercase}.depense-main strong,.depense-category strong,.depense-date strong{display:block;color:#263144;font-size:12px;font-weight:700}.depense-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.depense-main p{max-width:300px;margin:5px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8b94a4;font-size:10px}.depense-amount strong{display:block;color:#dc2626;font-size:13px;font-weight:800;white-space:nowrap}.depense-status{width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:700;white-space:nowrap}.depense-status>span{width:6px;height:6px;border-radius:50%}.depense-status.payee{background:#eaf8f0;color:#16803b}.depense-status.payee>span{background:#22c55e}.depense-status.en_attente{background:#fff6e8;color:#b76a00}.depense-status.en_attente>span{background:#f59e0b}.depense-status.annulee{background:#fff0f0;color:#c62828}.depense-status.annulee>span{background:#ef4444}.depense-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px}.depense-actions button{width:34px;height:34px;border:1px solid #e5e9f0;border-radius:9px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;transition:.18s ease}.depense-actions button:hover{background:#f3f6fb;border-color:#cfd8e7;transform:translateY(-1px)}.depense-actions button.delete:hover{background:#fff1f1;border-color:#fecaca}.depenses-empty{min-height:350px;padding:40px;background:#fff;border:1px solid #e8ecf3;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.depenses-empty>div{width:68px;height:68px;margin-bottom:15px;border-radius:20px;background:#eef3ff;display:flex;align-items:center;justify-content:center;font-size:28px}.depenses-empty strong{color:#263144;font-size:16px}.depenses-empty p{max-width:420px;margin:8px 0 18px;color:#8a93a3;font-size:12px}.depenses-empty button{height:40px;padding:0 17px;border:none;border-radius:9px;background:#2563eb;color:#fff;font-size:12px;font-weight:700;cursor:pointer}.depenses-loading{min-height:300px;background:#fff;border:1px solid #e8ecf3;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:10px;color:#7c8697;font-size:13px}.depenses-spinner{width:20px;height:20px;border:2px solid #dbe5f7;border-top-color:#2563eb;border-radius:50%;animation:depenseSpin .75s linear infinite}@keyframes depenseSpin{to{transform:rotate(360deg)}}.depense-modal-overlay{position:fixed;inset:0;z-index:9999;padding:25px;background:#0f172a8c;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.depense-modal{width:min(650px,100%);max-height:calc(100vh - 50px);overflow-y:auto;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0f172a40;animation:depenseModalIn .22s ease}@keyframes depenseModalIn{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.depense-modal-header{position:sticky;top:0;z-index:2;padding:20px 24px;background:#fff;border-bottom:1px solid #edf0f5;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.depense-modal-header h2{margin:0;color:#182235;font-size:19px;font-weight:750}.depense-modal-header p{margin:5px 0 0;color:#8a93a3;font-size:11px}.depense-modal-header>button{width:34px;height:34px;border:1px solid #e6eaf1;border-radius:9px;background:#fff;color:#687386;font-size:22px;line-height:1;cursor:pointer;transition:.18s ease}.depense-modal-header>button:hover{background:#f5f7fa;color:#1f2937}.depense-form{padding:24px}.form-group{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.form-group label{color:#344054;font-size:11px;font-weight:700}.form-group input,.form-group select,.form-group textarea{width:100%;box-sizing:border-box;border:1px solid #dfe4ec;border-radius:10px;outline:none;background:#fff;color:#273142;font-family:inherit;font-size:12px;transition:.18s ease}.form-group input,.form-group select{height:43px;padding:0 12px}.form-group textarea{padding:11px 12px;min-height:90px;resize:vertical}.form-group input::-moz-placeholder,.form-group textarea::-moz-placeholder{color:#a0a8b5}.form-group input::placeholder,.form-group textarea::placeholder{color:#a0a8b5}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.depense-form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:8px;margin-top:6px;border-top:1px solid #edf0f5}.depense-form-actions button{height:42px;padding:0 17px;border-radius:10px;font-size:12px;font-weight:700;cursor:pointer;transition:.18s ease}.depense-form-actions button:first-child{border:1px solid #dfe4ec;background:#fff;color:#596579}.depense-form-actions button:first-child:hover{background:#f7f8fa}.depense-form-actions button:last-child{border:none;background:linear-gradient(135deg,#0d47c9,#2563eb);color:#fff;box-shadow:0 6px 15px #2563eb2e}.depense-form-actions button:last-child:hover{transform:translateY(-1px);box-shadow:0 9px 20px #2563eb40}.depense-form-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}.depense-modal::-webkit-scrollbar{width:7px}.depense-modal::-webkit-scrollbar-track{background:transparent}.depense-modal::-webkit-scrollbar-thumb{background:#d7dce5;border-radius:10px}@media (max-width: 1250px){.depenses-page{padding:24px}.depenses-stats{grid-template-columns:repeat(2,1fr)}.depense-card{grid-template-columns:46px minmax(180px,1fr) 120px 130px 100px}.depense-category{display:none}.depense-date{display:block}}@media (max-width: 900px){.depenses-page{padding:20px}.depenses-header{align-items:flex-start;flex-direction:column}.depense-create-button{width:100%;justify-content:center}.depenses-toolbar{flex-wrap:wrap}.depenses-search{flex:1 1 100%}.depenses-toolbar select{flex:1}.depense-card{grid-template-columns:46px 1fr auto;gap:12px}.depense-date,.depense-status{display:none}.depense-amount{text-align:right}.depense-actions{justify-content:flex-end}}@media (max-width: 600px){.depenses-page{padding:15px}.depenses-header-left{align-items:flex-start}.depenses-title-icon{width:45px;height:45px;border-radius:13px;font-size:20px}.depenses-title-line{flex-wrap:wrap}.depenses-title-line h1{font-size:21px}.depenses-header-left p{font-size:11px}.depenses-stats{grid-template-columns:1fr;gap:10px}.depense-stat-card{min-height:85px}.depenses-toolbar{flex-direction:column;align-items:stretch}.depenses-search,.depenses-toolbar select{width:100%}.depense-card{display:grid;grid-template-columns:42px 1fr auto;padding:14px}.depense-card-icon{width:42px;height:42px}.depense-main{min-width:0}.depense-main strong{font-size:11px}.depense-amount{grid-column:2 / 3;text-align:left}.depense-amount strong{font-size:12px}.depense-actions{grid-column:3;grid-row:1 / span 2;flex-direction:column}.depense-modal-overlay{padding:10px}.depense-modal{max-height:calc(100vh - 20px);border-radius:16px}.depense-modal-header,.depense-form{padding:17px}.form-grid{grid-template-columns:1fr;gap:0}.depense-form-actions{flex-direction:column-reverse}.depense-form-actions button{width:100%}}.pointage-page{background:#f5f7fb}.pointage-container{width:100%;max-width:1500px;margin:0 auto}.pointage-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}.pointage-title-line{display:flex;align-items:center;gap:15px}.pointage-title-icon{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#c05115,#f59342);color:#fff;font-size:22px;box-shadow:0 8px 22px #c0511533}.pointage-header h1{margin:0;font-size:27px;font-weight:800;color:#172033}.pointage-header p{margin:5px 0 0;color:#7b8497;font-size:14px}.pointage-header-actions{display:flex;align-items:center;gap:10px}.pointage-btn{border:none;min-height:44px;padding:0 16px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;font-size:13px;font-weight:700;cursor:pointer;transition:.2s ease}.pointage-btn:hover{transform:translateY(-1px)}.pointage-btn-scan{color:#fff;background:linear-gradient(135deg,#c05115,#e7792f);box-shadow:0 6px 18px #c0511533}.pointage-btn-refresh{background:#fff;color:#263247;border:1px solid #e4e8ef}.pointage-btn-refresh:disabled{opacity:.6;cursor:wait}.pointage-btn-secondary{background:#eef1f6;color:#354052}.pointage-spin{animation:pointageRotate .8s linear infinite}@keyframes pointageRotate{to{transform:rotate(360deg)}}.pointage-message{display:flex;align-items:center;gap:12px;padding:13px 15px;border-radius:12px;margin-bottom:20px;font-size:13px;font-weight:600}.pointage-message-success{background:#eaf8f0;color:#167447;border:1px solid #ccefdc}.pointage-message-error{background:#fff0f0;color:#bd3434;border:1px solid #ffd5d5}.pointage-message span{flex:1}.pointage-message button{border:none;background:transparent;font-size:20px;cursor:pointer;color:inherit}.pointage-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-bottom:20px}.pointage-stat-card{width:100%;min-width:0;border:1px solid #e8ebf1;background:#fff;border-radius:16px;padding:18px;display:flex;align-items:center;gap:14px;text-align:left;cursor:pointer;transition:.2s ease;box-shadow:0 5px 20px #1c273a09}.pointage-stat-card:hover{transform:translateY(-2px);box-shadow:0 9px 25px #1c273a14}.pointage-stat-icon{flex:0 0 45px;width:45px;height:45px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:17px}.pointage-stat-info{display:flex;flex-direction:column;min-width:0}.pointage-stat-info span{font-size:12px;color:#7e8799;margin-bottom:4px}.pointage-stat-info strong{font-size:23px;line-height:1;color:#172033}.stat-total .pointage-stat-icon{background:#eef2ff;color:#5366d9}.stat-present .pointage-stat-icon{background:#e9f8ef;color:#1d9a5b}.stat-retard .pointage-stat-icon{background:#fff4df;color:#e19a16}.stat-absent .pointage-stat-icon{background:#ffeded;color:#d84949}.stat-non-pointe .pointage-stat-icon{background:#eef0f4;color:#7a8494}.pointage-filtres{background:#fff;border:1px solid #e8ebf1;border-radius:16px;padding:15px;display:flex;align-items:center;gap:12px;margin-bottom:20px;box-shadow:0 5px 20px #1c273a09}.pointage-search{height:43px;flex:1;min-width:220px;display:flex;align-items:center;gap:10px;padding:0 12px;background:#f7f8fa;border:1px solid #e8ebf1;border-radius:10px}.pointage-search>i{color:#9098a7}.pointage-search input{width:100%;border:none;outline:none;background:transparent;color:#263247;font-size:13px}.pointage-search button{border:none;background:transparent;color:#9098a7;font-size:19px;cursor:pointer}.pointage-filter-field{display:flex;align-items:center;gap:8px}.pointage-filter-field label{display:none;color:#747e90;font-size:12px;font-weight:700}.pointage-filter-field input,.pointage-filter-field select{height:43px;border:1px solid #e1e5ec;border-radius:10px;background:#fff;padding:0 11px;outline:none;color:#293449;font-size:13px}.pointage-filter-field input:focus,.pointage-filter-field select:focus,.pointage-search:focus-within{border-color:#d47a42;box-shadow:0 0 0 3px #d47a4214}.pointage-export-btn{height:43px;padding:0 15px;border:none;border-radius:10px;background:#172033;color:#fff;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.pointage-table-card{background:#fff;border:1px solid #e8ebf1;border-radius:16px;overflow:hidden;box-shadow:0 5px 20px #1c273a09}.pointage-table-header{min-height:72px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #edf0f4}.pointage-table-header h2{margin:0 0 4px;color:#172033;font-size:16px;font-weight:800}.pointage-table-header span{color:#8992a2;font-size:12px}.pointage-reset-filter{border:none;background:#f3f5f8;color:#667184;border-radius:8px;padding:8px 11px;font-size:12px;font-weight:600;cursor:pointer}.pointage-table-wrapper{width:100%;overflow-x:auto}.pointage-table{width:100%;min-width:850px;border-collapse:collapse}.pointage-table thead th{padding:13px 18px;background:#fafbfc;border-bottom:1px solid #edf0f4;color:#7c8596;font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:800;text-align:left;white-space:nowrap}.pointage-table tbody td{padding:14px 18px;border-bottom:1px solid #f0f2f5;color:#465166;font-size:13px}.pointage-table tbody tr{transition:background .15s ease}.pointage-table tbody tr:hover{background:#fcfcfd}.pointage-table tbody tr:last-child td{border-bottom:none}.professeur-cell{display:flex;align-items:center;gap:11px}.professeur-avatar{flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:#f4e8df;color:#bd5f27;display:flex;align-items:center;justify-content:center;font-weight:800}.professeur-cell strong{display:block;color:#293449;font-size:13px}.professeur-cell small{display:block;margin-top:3px;color:#929aaa;font-size:11px}.heure-cell{display:inline-flex;align-items:center;gap:7px;color:#465166;font-weight:600}.heure-cell i{color:#9aa2b1;font-size:11px}.pointage-statut{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:8px;font-size:11px;font-weight:800;white-space:nowrap}.pointage-statut i{font-size:10px}.statut-present{background:#eaf8f0;color:#198653}.statut-retard{background:#fff4df;color:#bd7910}.statut-absent{background:#ffeded;color:#c53d3d}.statut-non-pointe{background:#eef0f4;color:#707a8a}.pointage-detail-btn{width:34px;height:34px;border:1px solid #e4e7ed;background:#fff;color:#6d7687;border-radius:9px;cursor:pointer;transition:.2s ease}.pointage-detail-btn:hover{color:#c05115;border-color:#e1b99e;background:#fff8f3}.pointage-empty{padding:65px 20px;text-align:center}.pointage-empty-icon{width:65px;height:65px;margin:0 auto 15px;border-radius:18px;background:#f1f3f6;color:#9099a8;display:flex;align-items:center;justify-content:center;font-size:24px}.pointage-empty h3{margin:0 0 6px;color:#293449;font-size:16px}.pointage-empty p{margin:0;color:#929aaa;font-size:13px}.pointage-modal-overlay{position:fixed;inset:0;z-index:9999;background:#141b2785;display:flex;align-items:center;justify-content:center;padding:20px}.pointage-modal{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:18px;box-shadow:0 25px 80px #0003}.pointage-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:20px;border-bottom:1px solid #edf0f4}.pointage-modal-header h2{margin:0 0 4px;color:#172033;font-size:18px}.pointage-modal-header p{margin:0;color:#858e9f;font-size:13px}.pointage-modal-header button{width:34px;height:34px;border:none;border-radius:9px;background:#f2f4f7;color:#6e7788;cursor:pointer}.pointage-detail-grid{padding:20px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pointage-detail-item{padding:14px;background:#f8f9fb;border-radius:11px}.pointage-detail-item span{display:block;margin-bottom:5px;color:#8992a1;font-size:11px;font-weight:700}.pointage-detail-item strong{color:#293449;font-size:13px}.pointage-commentaire{margin:0 20px 20px;padding:14px;background:#fff9f5;border:1px solid #f5e0d2;border-radius:11px}.pointage-commentaire span{color:#8d7466;font-size:11px;font-weight:800}.pointage-commentaire p{margin:7px 0 0;color:#4b4d52;font-size:13px}.pointage-modal-footer{padding:15px 20px;border-top:1px solid #edf0f4;display:flex;justify-content:flex-end}.pointage-validation-code{width:100%;margin-top:22px;padding:18px;border-radius:16px;border:1px solid rgba(192,81,21,.18);background:linear-gradient(135deg,#c051150f,#f5934214)}.pointage-validation-code-header{display:flex;align-items:center;justify-content:space-between;gap:15px}.pointage-validation-code-header>div{display:flex;flex-direction:column;gap:4px}.pointage-validation-code-header span{font-size:11px;font-weight:800;letter-spacing:1px;color:#777}.pointage-validation-code-header strong{font-size:14px;color:#222}.pointage-validation-code-header>i{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:11px;background:#c051151a;color:#c05115}.pointage-validation-code-value{margin-top:14px;display:flex;align-items:center;justify-content:center;gap:12px}.pointage-validation-code-value strong{font-size:30px;line-height:1;letter-spacing:8px;color:#c05115;font-family:monospace}.pointage-validation-code-value button{width:42px;height:42px;border:none;border-radius:11px;background:#fff;color:#c05115;cursor:pointer;box-shadow:0 4px 14px #00000014;transition:.2s ease}.pointage-validation-code-value button:hover{transform:translateY(-2px)}.pointage-validation-code p{margin:14px 0 0;text-align:center;font-size:12px;line-height:1.5;color:#777}@media (max-width: 600px){.pointage-validation-code-value strong{font-size:24px;letter-spacing:5px}}@media (max-width: 1200px){.pointage-stats{grid-template-columns:repeat(3,1fr)}.pointage-filtres{flex-wrap:wrap}.pointage-search{flex-basis:100%}}@media (max-width: 800px){.pointage-page{padding:20px 14px}.pointage-header{align-items:flex-start;flex-direction:column}.pointage-header-actions{width:100%}.pointage-header-actions .pointage-btn{flex:1}.pointage-stats{grid-template-columns:repeat(2,1fr)}.pointage-filtres{align-items:stretch;flex-direction:column}.pointage-search{min-width:0}.pointage-filter-field,.pointage-filter-field input,.pointage-filter-field select,.pointage-export-btn{width:100%}.pointage-table-header{align-items:flex-start;flex-direction:column}}@media (max-width: 520px){.pointage-page{padding:15px 10px}.pointage-header h1{font-size:23px}.pointage-title-icon{width:46px;height:46px;border-radius:13px}.pointage-stats{grid-template-columns:1fr 1fr;gap:9px}.pointage-stat-card{padding:13px;gap:9px;border-radius:13px}.pointage-stat-icon{flex-basis:37px;width:37px;height:37px;border-radius:10px;font-size:14px}.pointage-stat-info strong{font-size:19px}.pointage-stat-info span{font-size:10px}.pointage-header-actions{flex-direction:column}.pointage-header-actions .pointage-btn{width:100%}.pointage-detail-grid{grid-template-columns:1fr}.pointage-table-header{padding:14px}}.salaires-container{width:100%;max-width:1500px;margin:0 auto}.salaires-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.salaires-title-line{display:flex;align-items:center;gap:16px}.salaires-title-icon{width:58px;height:58px;min-width:58px;border-radius:17px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#c05115,#f59342);color:#fff;font-size:23px;box-shadow:0 10px 25px #c0511538}.salaires-header h1{margin:0;font-size:28px;font-weight:800;letter-spacing:-.5px;color:#172033}.salaires-header p{margin:6px 0 0;color:#778198;font-size:14px}.salaires-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.salaires-btn{border:0;min-height:44px;padding:0 17px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,opacity .2s ease}.salaires-btn:hover:not(:disabled){transform:translateY(-2px)}.salaires-btn:disabled{opacity:.6;cursor:not-allowed}.salaires-btn-primary{color:#fff;background:linear-gradient(135deg,#c05115,#e8752f);box-shadow:0 7px 18px #c0511538}.salaires-btn-primary:hover:not(:disabled){box-shadow:0 10px 25px #c051154d}.salaires-btn-refresh{color:#354052;background:#fff;border:1px solid #e5e9f1;box-shadow:0 3px 12px #1e2a400d}.salaires-btn-refresh:hover:not(:disabled){background:#f8f9fc}.salaires-btn-secondary{color:#465066;background:#eef1f6}.salaires-message{min-height:48px;margin-bottom:20px;padding:12px 15px;border-radius:12px;display:flex;align-items:center;gap:11px;font-size:14px;font-weight:600;animation:salaireMessageIn .25s ease}.salaires-message-success{color:#14734c;background:#eaf8f1;border:1px solid #c8eddb}.salaires-message-error{color:#b42318;background:#fff0ee;border:1px solid #ffd2cd}.salaires-message>i{font-size:17px}.salaires-message span{flex:1}.salaires-message button{width:30px;height:30px;border:0;background:transparent;color:currentColor;font-size:21px;cursor:pointer;border-radius:8px}.salaires-message button:hover{background:#0000000d}@keyframes salaireMessageIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.salaires-periode-card{background:#fff;border:1px solid #e7eaf0;border-radius:17px;padding:18px 20px;margin-bottom:20px;display:flex;align-items:center;gap:22px;box-shadow:0 5px 20px #1f29370b}.salaires-periode-title{display:flex;align-items:center;gap:12px;min-width:260px}.salaires-periode-icon{width:43px;height:43px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#fff3e9;color:#c05115;font-size:17px}.salaires-periode-title strong{display:block;color:#263148;font-size:14px}.salaires-periode-title span{display:block;margin-top:3px;color:#8a93a6;font-size:12px}.salaires-periode-fields{display:flex;align-items:flex-end;gap:12px;flex:1}.salaires-filter-field{display:flex;flex-direction:column;gap:7px}.salaires-filter-field label{color:#68738a;font-size:12px;font-weight:700}.salaires-filter-field select,.salaires-filter-field input{height:42px;min-width:145px;padding:0 13px;border:1px solid #dfe4ec;border-radius:10px;background:#fff;color:#283348;font-size:13px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.salaires-filter-field select:focus,.salaires-filter-field input:focus{border-color:#d66c2a;box-shadow:0 0 0 3px #d66c2a1a}.salaires-periode-current{margin-left:auto;min-height:40px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;border-radius:10px;color:#a64b13;background:#fff6ef;font-size:13px;font-weight:700;white-space:nowrap}.salaires-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:20px}.salaire-stat-card{min-width:0;padding:17px;border:1px solid #e7eaf0;border-radius:16px;background:#fff;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;box-shadow:0 4px 16px #1f29370a;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.salaire-stat-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #1f293714}.salaire-stat-icon{width:43px;height:43px;min-width:43px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:16px}.salaire-stat-info{min-width:0}.salaire-stat-info span{display:block;color:#7c879a;font-size:11px;font-weight:600;margin-bottom:4px;white-space:nowrap}.salaire-stat-info strong{display:block;color:#202a3d;font-size:19px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-total .salaire-stat-icon{color:#49627d;background:#edf3f8}.stat-money .salaire-stat-icon{color:#b75a19;background:#fff0e5}.stat-paye .salaire-stat-icon{color:#17835a;background:#e8f8f0}.stat-valide .salaire-stat-icon{color:#3d67a8;background:#edf2ff}.stat-calcule .salaire-stat-icon{color:#7656b8;background:#f2edff}.stat-brouillon .salaire-stat-icon{color:#8b6b2f;background:#fff8e8}.salaires-resume{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.salaires-resume-item{min-height:82px;padding:15px 18px;border-radius:15px;background:#fff;border:1px solid #e7eaf0;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 15px #1f293709}.salaires-resume-item span{display:block;color:#7b8598;font-size:12px;margin-bottom:5px}.salaires-resume-item strong{color:#202a3d;font-size:17px;font-weight:800}.salaires-resume-item>i{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#f5f7fa;color:#c05115}.salaires-filtres{display:flex;align-items:flex-end;gap:12px;margin-bottom:18px}.salaires-search{flex:1;min-width:220px;height:44px;padding:0 12px;border-radius:11px;border:1px solid #dfe4ec;background:#fff;display:flex;align-items:center;gap:9px;transition:border-color .2s ease,box-shadow .2s ease}.salaires-search:focus-within{border-color:#d66c2a;box-shadow:0 0 0 3px #d66c2a17}.salaires-search>i{color:#9099aa;font-size:14px}.salaires-search input{width:100%;height:100%;border:0;outline:none;background:transparent;color:#293449;font-size:13px}.salaires-search input::-moz-placeholder{color:#9aa2b1}.salaires-search input::placeholder{color:#9aa2b1}.salaires-search button{width:28px;height:28px;border:0;border-radius:7px;background:#f0f2f6;color:#667085;cursor:pointer;font-size:17px}.salaires-filtres .salaires-filter-field{min-width:160px}.salaires-filtres .salaires-filter-field select{width:100%}.salaires-export-btn{height:44px;padding:0 16px;border:1px solid #dfe4ec;border-radius:11px;background:#fff;color:#3b4659;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:700;cursor:pointer;transition:.2s ease}.salaires-export-btn:hover{border-color:#bfc7d5;background:#f8f9fb;transform:translateY(-1px)}.salaires-table-card{background:#fff;border:1px solid #e5e9ef;border-radius:17px;overflow:hidden;box-shadow:0 6px 22px #1f29370d}.salaires-table-header{min-height:76px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #edf0f4}.salaires-table-header h2{margin:0;color:#202a3d;font-size:17px;font-weight:800}.salaires-table-header span{display:block;margin-top:5px;color:#8b94a5;font-size:12px}.salaires-reset-filter{border:0;background:#f5f6f8;color:#667085;min-height:36px;padding:0 11px;border-radius:9px;display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;cursor:pointer}.salaires-reset-filter:hover{background:#eceef2}.salaires-table-wrapper{width:100%;overflow-x:auto;scrollbar-width:thin}.salaires-table{width:100%;min-width:1250px;border-collapse:collapse}.salaires-table thead th{height:48px;padding:0 13px;text-align:left;white-space:nowrap;background:#f8f9fb;border-bottom:1px solid #e6e9ef;color:#707a8e;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}.salaires-table tbody td{padding:14px 13px;border-bottom:1px solid #edf0f4;color:#394358;font-size:12px;vertical-align:middle;white-space:nowrap}.salaires-table tbody tr{transition:background .15s ease}.salaires-table tbody tr:hover{background:#fafbfc}.salaire-professeur-cell{display:flex;align-items:center;gap:10px;min-width:190px}.salaire-professeur-avatar{width:38px;height:38px;min-width:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#c05115,#f59342);color:#fff;font-size:14px;font-weight:800}.salaire-professeur-cell strong{display:block;color:#283247;font-size:12px;font-weight:800}.salaire-professeur-cell small{display:block;margin-top:3px;color:#8c95a6;font-size:10px}.salaire-type{min-height:27px;padding:0 8px;border-radius:7px;display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800}.salaire-type i{font-size:10px}.salaire-type-mensuel{color:#a34c13;background:#fff0e5}.salaire-type-horaire{color:#3e6090;background:#edf3fb}.salaire-type-cours{color:#6550a1;background:#f0ecfb}.salaire-base{color:#303a4e;font-size:12px}.salaire-activite{display:flex;flex-direction:column;gap:3px}.salaire-activite span{color:#374157;font-weight:700}.salaire-activite span i{margin-right:5px;color:#8791a4}.salaire-activite small{color:#9099aa;font-size:10px}.salaire-mini-value{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700}.salaire-mini-value i{font-size:10px}.salaire-mini-value.normal{color:#596478}.salaire-mini-value.warning{color:#ad7410}.salaire-mini-value.danger{color:#c33c36}.salaire-prime{color:#158357;font-weight:800;font-size:11px}.salaire-deduction{color:#c3453d;font-weight:800;font-size:11px}.salaire-final{color:#1f2d43;font-size:13px;font-weight:900}.salaire-statut{min-height:27px;padding:0 8px;border-radius:7px;display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:800}.salaire-statut i{font-size:9px}.salaire-statut-brouillon{color:#80621f;background:#fff7df}.salaire-statut-calcule{color:#684ba1;background:#f0ebfc}.salaire-statut-valide{color:#315e9b;background:#ebf2ff}.salaire-statut-paye{color:#13794f;background:#e7f8ef}.text-right{text-align:right!important}.salaire-detail-btn{width:34px;height:34px;border:1px solid #e2e6ed;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;color:#647086;background:#fff;cursor:pointer;transition:.2s ease}.salaire-detail-btn:hover{color:#c05115;border-color:#efc5a9;background:#fff7f1;transform:translateY(-1px)}.salaires-empty{min-height:350px;padding:45px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.salaires-empty-icon{width:70px;height:70px;margin-bottom:15px;border-radius:20px;display:flex;align-items:center;justify-content:center;background:#f3f5f8;color:#9aa3b2;font-size:27px}.salaires-empty h3{margin:0;color:#3b4659;font-size:17px}.salaires-empty p{max-width:420px;margin:8px 0 20px;color:#8a94a6;font-size:13px;line-height:1.6}.salaires-modal-overlay{position:fixed;inset:0;z-index:9999;padding:25px;display:flex;align-items:center;justify-content:center;background:#1018288c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:salaireOverlayIn .2s ease}@keyframes salaireOverlayIn{0%{opacity:0}to{opacity:1}}.salaires-modal{width:100%;max-width:900px;max-height:calc(100vh - 50px);overflow-y:auto;background:#fff;border-radius:20px;box-shadow:0 25px 70px #0003;animation:salaireModalIn .25s ease}@keyframes salaireModalIn{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.salaires-modal-header{min-height:86px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #edf0f4}.salaires-modal-title{display:flex;align-items:center;gap:12px}.salaires-modal-avatar{width:48px;height:48px;min-width:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#c05115,#f59342);color:#fff;font-weight:900;font-size:17px}.salaires-modal-header h2{margin:0;color:#202a3d;font-size:17px}.salaires-modal-header p{margin:4px 0 0;color:#8a94a5;font-size:12px}.salaires-modal-header>button{width:37px;height:37px;border:0;border-radius:10px;background:#f3f5f7;color:#677185;cursor:pointer;font-size:15px}.salaires-modal-header>button:hover{background:#ebeef2}.salaires-detail-summary{padding:17px 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#fafbfc;border-bottom:1px solid #edf0f4}.salaires-detail-summary>div{padding:12px;border:1px solid #e8ebf0;border-radius:11px;background:#fff}.salaires-detail-summary span{display:block;margin-bottom:5px;color:#8791a3;font-size:10px;font-weight:700}.salaires-detail-summary strong{color:#283348;font-size:14px;font-weight:900}.salaires-detail-summary strong.positive{color:#158357}.salaires-detail-summary strong.negative{color:#c3453d}.salaires-detail-summary .highlight{background:#fff6ef;border-color:#f2d4bd}.salaires-detail-summary .highlight strong{color:#b94e12}.salaires-detail-section{padding:19px 20px;border-bottom:1px solid #edf0f4}.salaires-detail-section-title{display:flex;align-items:center;gap:9px;margin-bottom:14px}.salaires-detail-section-title i{color:#c05115}.salaires-detail-section-title h3{margin:0;color:#313b4f;font-size:14px}.salaires-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.salaires-detail-item{padding:12px;border-radius:10px;background:#f8f9fb}.salaires-detail-item span{display:block;margin-bottom:5px;color:#8791a2;font-size:10px}.salaires-detail-item strong{color:#303a4e;font-size:13px}.negative-text{color:#c3453d!important}.warning-text{color:#b47711!important}.salaires-details-loading,.salaires-details-empty{min-height:100px;display:flex;align-items:center;justify-content:center;gap:10px;color:#8a94a5;font-size:13px}.salaires-details-empty{flex-direction:column}.salaires-details-empty i{font-size:23px;color:#adb5c2}.salaires-details-empty p{margin:0}.salaires-details-list{display:flex;flex-direction:column;gap:7px}.salaires-detail-line{min-height:58px;padding:9px 11px;display:flex;align-items:center;gap:10px;border:1px solid #e9ecf1;border-radius:11px;background:#fff}.salaires-detail-line-icon{width:34px;height:34px;min-width:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#f5f6f8;color:#c05115;font-size:12px}.salaires-detail-line-info{flex:1;min-width:0}.salaires-detail-line-info strong{display:block;color:#354055;font-size:12px}.salaires-detail-line-info span{display:block;margin-top:3px;color:#8b95a7;font-size:10px}.salaires-detail-line>strong{color:#303a4e;font-size:12px}.salaires-modal-footer{min-height:65px;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.salaires-modal-footer>div{display:flex;align-items:center;gap:10px}.salaires-modal-footer>div>span{color:#929baa;font-size:10px}.salaires-spin{animation:salaireSpin .9s linear infinite}@keyframes salaireSpin{to{transform:rotate(360deg)}}.salaires-table-wrapper::-webkit-scrollbar,.salaires-modal::-webkit-scrollbar{width:7px;height:7px}.salaires-table-wrapper::-webkit-scrollbar-track,.salaires-modal::-webkit-scrollbar-track{background:#f4f5f7}.salaires-table-wrapper::-webkit-scrollbar-thumb,.salaires-modal::-webkit-scrollbar-thumb{background:#cbd1da;border-radius:20px}.salaires-navigation{display:flex;align-items:center;gap:6px;padding:6px;margin-bottom:20px;background:#f1f3f6;border-radius:14px;overflow-x:auto}.salaires-navigation button{min-height:42px;padding:0 16px;border:0;border-radius:10px;background:transparent;color:#737d90;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-size:12px;font-weight:800;cursor:pointer;transition:.2s ease}.salaires-navigation button:hover{color:#c05115;background:#ffffffbf}.salaires-navigation button.active{color:#b94e12;background:#fff;box-shadow:0 3px 12px #1f293714}.salaires-navigation button i{font-size:13px}.salaires-section-card{background:#fff;border:1px solid #e5e9ef;border-radius:17px;overflow:hidden;box-shadow:0 6px 22px #1f29370d}.salaires-section-card-header{min-height:82px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #edf0f4}.salaires-section-card-header h2{margin:0;color:#202a3d;font-size:18px;font-weight:800}.salaires-section-card-header h2 i{margin-right:9px;color:#c05115}.salaires-section-card-header p{margin:6px 0 0;color:#8791a3;font-size:12px}.salaires-remuneration-filtres{padding:16px 20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf0f4}.salaires-remuneration-filtres .salaires-search{flex:1}.salaires-select-large{height:44px;min-width:190px;padding:0 13px;border:1px solid #dfe4ec;border-radius:11px;background:#fff;color:#283348;font-size:13px;outline:none}.salaires-select-large:focus{border-color:#d66c2a;box-shadow:0 0 0 3px #d66c2a1a}.salaires-remunerations-grid{padding:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.salaires-remuneration-card{border:1px solid #e5e9ef;border-radius:15px;padding:16px;background:#fff;transition:.2s ease}.salaires-remuneration-card:hover{transform:translateY(-2px);border-color:#efc6aa;box-shadow:0 10px 25px #1f293712}.salaires-remuneration-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.salaires-remuneration-card-top .salaire-professeur-cell{min-width:0}.salaire-active-badge{min-height:24px;padding:0 8px;border-radius:7px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:9px;font-weight:800}.salaire-active-badge i{font-size:6px}.salaire-active-badge.active{color:#14794f;background:#e8f8ef}.salaire-active-badge.inactive{color:#7c8492;background:#f0f2f5}.salaires-remuneration-type{margin-top:15px}.salaires-remuneration-values{margin-top:14px;padding:12px;border-radius:10px;background:#f8f9fb;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.salaires-remuneration-values span{display:block;margin-bottom:4px;color:#8b94a5;font-size:10px}.salaires-remuneration-values strong{color:#303a4e;font-size:13px}.salaires-remuneration-dates{margin-top:13px;display:flex;flex-direction:column;gap:6px}.salaires-remuneration-dates span{color:#7f899b;font-size:10px}.salaires-remuneration-dates i{width:15px;margin-right:5px;color:#c05115}.salaires-remuneration-actions{margin-top:14px;padding-top:12px;border-top:1px solid #edf0f4;display:flex;justify-content:flex-end}.salaires-remuneration-actions button{min-height:34px;padding:0 10px;border:0;border-radius:8px;background:#fff4ec;color:#b94e12;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;cursor:pointer}.salaires-remuneration-actions button:hover{background:#ffeadc}.salaires-configuration-grid{padding:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.salaires-config-card{padding:18px;border:1px solid #e7eaf0;border-radius:15px;background:#fff}.salaires-config-title{display:flex;align-items:center;gap:11px;margin-bottom:18px}.salaires-config-icon{width:42px;height:42px;min-width:42px;border-radius:11px;display:flex;align-items:center;justify-content:center}.salaires-config-icon.orange{color:#b94e12;background:#fff0e5}.salaires-config-icon.yellow{color:#a5760d;background:#fff8df}.salaires-config-icon.blue{color:#3e6090;background:#edf3fb}.salaires-config-icon.purple{color:#6650a2;background:#f0ecfb}.salaires-config-icon.red{color:#b94b45;background:#fff0ef}.salaires-config-icon.green{color:#168058;background:#e8f8f0}.salaires-config-title h3{margin:0;color:#303a4e;font-size:14px}.salaires-config-title span{display:block;margin-top:3px;color:#8a94a5;font-size:10px}.salaires-config-field{display:flex;flex-direction:column;gap:7px;margin-top:13px}.salaires-config-field label,.salaires-form-group>label{color:#626d81;font-size:11px;font-weight:800}.salaires-config-field select,.salaires-config-field input,.salaires-form-group>input,.salaires-form-group>select{width:100%;height:42px;padding:0 12px;border:1px solid #dfe4ec;border-radius:10px;background:#fff;color:#283348;font-size:12px;outline:none}.salaires-config-field select:focus,.salaires-config-field input:focus,.salaires-form-group>input:focus,.salaires-form-group>select:focus{border-color:#d66c2a;box-shadow:0 0 0 3px #d66c2a17}.salaires-toggle-row{min-height:54px;padding:10px 0;border-bottom:1px solid #edf0f4;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.salaires-toggle-row:last-child{border-bottom:0}.salaires-toggle-row strong{display:block;color:#354055;font-size:11px}.salaires-toggle-row span{display:block;margin-top:3px;color:#9099aa;font-size:10px}.salaires-toggle-row input,.salaires-toggle-large input{width:18px;height:18px;accent-color:#c05115;cursor:pointer}.salaires-input-unit{display:flex;align-items:center;height:42px;border:1px solid #dfe4ec;border-radius:10px;overflow:hidden;background:#fff}.salaires-input-unit:focus-within{border-color:#d66c2a;box-shadow:0 0 0 3px #d66c2a17}.salaires-input-unit input{flex:1;width:100%;height:100%;min-width:0;padding:0 12px;border:0;outline:none;background:transparent;color:#283348;font-size:12px}.salaires-input-unit span{height:100%;padding:0 10px;display:flex;align-items:center;border-left:1px solid #edf0f4;color:#858fa1;background:#f8f9fb;white-space:nowrap;font-size:10px;font-weight:700}.salaires-config-info{margin-top:15px;padding:11px;border-radius:10px;background:#f4f7fb;color:#6e798d;display:flex;align-items:flex-start;gap:8px;font-size:10px;line-height:1.5}.salaires-config-info i{color:#5478a8;margin-top:1px}.salaires-toggle-large{min-height:75px;padding:13px;border:1px solid #e5e9ef;border-radius:12px;background:#fafbfc;display:flex;align-items:center;gap:11px;cursor:pointer}.salaires-toggle-large-icon{width:39px;height:39px;min-width:39px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#e8f8f0;color:#168058}.salaires-toggle-large>div:nth-child(2){flex:1}.salaires-toggle-large strong{display:block;color:#303a4e;font-size:12px}.salaires-toggle-large span{display:block;margin-top:3px;color:#8b95a7;font-size:10px;line-height:1.4}.salaires-toggle-large.simple{margin-top:4px}.salaires-remuneration-form{padding:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.salaires-form-group{display:flex;flex-direction:column;gap:7px}.salaires-form-group.full{grid-column:1 / -1}.salaires-form-group small{color:#8d96a7;font-size:10px;line-height:1.4}.salaires-type-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.salaires-type-choice button{min-height:100px;padding:13px;border:1px solid #e1e5eb;border-radius:12px;background:#fff;color:#6e788b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:.2s ease}.salaires-type-choice button:hover{border-color:#efc5a9;background:#fff9f5}.salaires-type-choice button.active{border-color:#d66c2a;background:#fff5ed;color:#b94e12;box-shadow:0 0 0 2px #d66c2a14}.salaires-type-choice button i{font-size:19px}.salaires-type-choice button strong{font-size:12px}.salaires-type-choice button span{font-size:9px;color:#919aaa}.salaires-type-choice button.active span{color:#b66a3d}.salaires-loading-zone{min-height:220px;display:flex;align-items:center;justify-content:center;gap:10px;color:#8a94a5;font-size:13px}.salaires-empty-small{min-height:320px}.salaires-historique-info{margin:20px;padding:25px;border-radius:15px;border:1px solid #e7eaf0;background:#fafbfc;display:flex;align-items:center;gap:16px}.salaires-historique-icon{width:52px;height:52px;min-width:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#fff0e5;color:#c05115;font-size:20px}.salaires-historique-info>div:nth-child(2){flex:1}.salaires-historique-info h3{margin:0;color:#303a4e;font-size:15px}.salaires-historique-info p{margin:5px 0 0;color:#858fa1;font-size:11px;line-height:1.5}.salaires-section-card-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.salaires-section-card-header>div:first-child{min-width:0}.salaires-section-card-header h2{display:flex;align-items:center;gap:11px;margin:0 0 7px;color:#172033;font-size:21px;font-weight:750;letter-spacing:-.3px}.salaires-section-card-header h2 i{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#c05115,#f59342);color:#fff;font-size:16px;box-shadow:0 6px 16px #c0511533}.salaires-section-card-header p{margin:0;color:#7b8495;font-size:13px;line-height:1.5}.salaires-btn-primary,.salaires-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:0 17px;border-radius:10px;border:1px solid transparent;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.salaires-btn-primary{color:#fff;background:linear-gradient(135deg,#c05115,#e77d31);box-shadow:0 7px 18px #c0511538}.salaires-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px #c051154d}.salaires-btn-secondary{color:#465164;background:#fff;border-color:#e3e7ee;box-shadow:0 2px 8px #18274b0a}.salaires-btn-secondary:hover:not(:disabled){color:#c05115;border-color:#c0511559;background:#fffaf7}.salaires-btn-primary:disabled,.salaires-btn-secondary:disabled{opacity:.55;cursor:not-allowed;transform:none}.salaires-filtres-bar{display:flex;align-items:flex-end;flex-wrap:wrap;gap:14px;padding:16px;margin-bottom:20px;border:1px solid #edf0f4;border-radius:14px;background:linear-gradient(180deg,#fff,#fafbfd)}.salaires-filtre-group{display:flex;flex-direction:column;gap:7px;min-width:160px}.salaires-filtre-group label{display:flex;align-items:center;gap:7px;color:#667085;font-size:12px;font-weight:700}.salaires-filtre-group label i{color:#c05115}.salaires-filtre-group select{height:40px;min-width:160px;padding:0 35px 0 12px;border:1px solid #dfe4eb;border-radius:9px;outline:none;background-color:#fff;color:#273142;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.salaires-filtre-group select:focus{border-color:#c051158c;box-shadow:0 0 0 3px #c0511514}.salaires-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px}.salaires-stat-card{position:relative;display:flex;align-items:center;gap:14px;min-width:0;padding:18px;overflow:hidden;border:1px solid #edf0f4;border-radius:15px;background:#fff;box-shadow:0 4px 16px #1a273f0b;transition:transform .2s ease,box-shadow .2s ease}.salaires-stat-card:after{content:"";position:absolute;right:-24px;top:-24px;width:80px;height:80px;border-radius:50%;background:#c051150b}.salaires-stat-card:hover{transform:translateY(-2px);box-shadow:0 9px 24px #1a273f14}.salaires-stat-icon{position:relative;z-index:1;flex:0 0 45px;display:flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:12px;color:#c05115;background:linear-gradient(135deg,#c051151c,#f5934229);font-size:17px}.salaires-stat-card>div:last-child{position:relative;z-index:1;min-width:0}.salaires-stat-card span{display:block;margin-bottom:4px;color:#7a8495;font-size:11px;font-weight:650}.salaires-stat-card strong{display:block;color:#172033;font-size:17px;font-weight:800;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.salaires-stat-card small{display:block;margin-top:4px;color:#9aa2b1;font-size:10px}.salaires-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:17px}.salaires-search{position:relative;flex:1;min-width:220px;max-width:390px}.salaires-search>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#9ba4b3;font-size:13px;pointer-events:none}.salaires-search input{width:100%;height:41px;padding:0 13px 0 38px;border:1px solid #e1e5eb;border-radius:10px;outline:none;background:#fff;color:#293344;font-size:13px;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.salaires-search input::-moz-placeholder{color:#a5acb8}.salaires-search input::placeholder{color:#a5acb8}.salaires-search input:focus{border-color:#c0511580;box-shadow:0 0 0 3px #c0511512}.salaires-status-filters{display:flex;align-items:center;gap:6px;padding:4px;border:1px solid #e9ecf1;border-radius:10px;background:#f7f8fa}.salaires-status-filters button{height:32px;padding:0 12px;border:0;border-radius:7px;background:transparent;color:#747e8e;font-size:11px;font-weight:700;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.salaires-status-filters button:hover{color:#c05115}.salaires-status-filters button.active{color:#c05115;background:#fff;box-shadow:0 2px 7px #1e283c14}.salaires-table-container{width:100%;overflow-x:auto;border:1px solid #edf0f4;border-radius:14px;background:#fff}.salaires-table{width:100%;min-width:920px;border-collapse:separate;border-spacing:0}.salaires-table thead th{padding:13px 15px;border-bottom:1px solid #e9edf2;background:#fafbfc;color:#778092;font-size:10px;font-weight:800;text-align:left;text-transform:uppercase;letter-spacing:.45px;white-space:nowrap}.salaires-table thead th:first-child{border-top-left-radius:13px}.salaires-table thead th:last-child{border-top-right-radius:13px}.salaires-table tbody td{padding:15px;border-bottom:1px solid #f0f2f5;color:#3d4655;font-size:12px;vertical-align:middle}.salaires-table tbody tr:last-child td{border-bottom:0}.salaires-table tbody tr{transition:background .18s ease}.salaires-table tbody tr:hover{background:#fffaf7}.salaires-professeur-cell{display:flex;align-items:center;gap:11px;min-width:190px}.salaires-avatar{flex:0 0 38px;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#fff0e5,#ffe3d1);color:#c05115;font-size:14px}.salaires-professeur-cell>div:last-child{min-width:0}.salaires-professeur-cell strong{display:block;max-width:190px;overflow:hidden;color:#273142;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.salaires-professeur-cell small{display:block;margin-top:3px;color:#9aa2af;font-size:9px}.salaires-periode-cell{display:flex;flex-direction:column;gap:3px}.salaires-periode-cell strong{color:#303948;font-size:12px;font-weight:750}.salaires-periode-cell span{color:#9aa2af;font-size:10px}.salaires-montant{color:#202938;font-size:13px;font-weight:800;white-space:nowrap}.salaires-paiement-info{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.salaires-paiement-ok{display:inline-flex;align-items:center;gap:5px;color:#16835b;font-size:11px;font-weight:800}.salaires-paiement-ok i{font-size:11px}.salaires-paiement-info small{color:#8d96a5;font-size:9px}.salaires-paiement-attente{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:7px;background:#fff7e9;color:#a86a05;font-size:10px;font-weight:750}.salaires-paiement-attente i{font-size:9px}.salaires-actions{display:flex;align-items:center;gap:7px}.salaires-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:36px;height:35px;padding:0 10px;border:1px solid #e4e8ee;border-radius:9px;background:#fff;color:#697386;font-size:11px;font-weight:750;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}.salaires-action-btn:hover:not(:disabled){transform:translateY(-1px)}.salaires-action-view:hover:not(:disabled){border-color:#d7dce4;color:#455065;background:#f8f9fb}.salaires-action-pay{border-color:#c051152e;color:#c05115;background:#fff8f3}.salaires-action-pay:hover:not(:disabled){border-color:#c0511559;background:#fff0e7;box-shadow:0 5px 14px #c0511521}.salaires-action-btn:disabled{opacity:.45;cursor:not-allowed}.salaires-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;padding:35px 20px;border:1px dashed #dfe4eb;border-radius:14px;background:linear-gradient(180deg,#fff,#fbfcfd);text-align:center}.salaires-empty-state>i{display:flex;align-items:center;justify-content:center;width:55px;height:55px;margin-bottom:14px;border-radius:15px;background:#f5f6f8;color:#a4acb9;font-size:21px}.salaires-empty-state h3{margin:0 0 6px;color:#384253;font-size:15px;font-weight:750}.salaires-empty-state p{max-width:420px;margin:0;color:#9099a8;font-size:12px;line-height:1.5}.salaires-modal-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;background:#12192694;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:salairesModalOverlayIn .2s ease}@keyframes salairesModalOverlayIn{0%{opacity:0}to{opacity:1}}.salaires-modal{width:min(560px,100%);max-height:calc(100vh - 40px);overflow-y:auto;border:1px solid rgba(255,255,255,.75);border-radius:18px;background:#fff;box-shadow:0 28px 70px #0f172a38;animation:salairesModalIn .24s ease}@keyframes salairesModalIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.salaires-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:21px 22px;border-bottom:1px solid #edf0f4}.salaires-modal-header h2{display:flex;align-items:center;gap:9px;margin:0 0 5px;color:#202938;font-size:18px;font-weight:800}.salaires-modal-header h2 i{color:#c05115}.salaires-modal-header p{margin:0;color:#8b94a3;font-size:11px}.salaires-modal-close{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border:0;border-radius:9px;background:#f4f5f7;color:#697386;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}.salaires-modal-close:hover:not(:disabled){background:#fff0e8;color:#c05115;transform:rotate(4deg)}.salaires-paiement-resume{display:flex;align-items:center;gap:13px;margin:20px 22px;padding:15px;border:1px solid rgba(192,81,21,.12);border-radius:13px;background:linear-gradient(135deg,#fffaf7,#fff4ec)}.salaires-paiement-resume-icon{display:flex;align-items:center;justify-content:center;flex:0 0 43px;width:43px;height:43px;border-radius:12px;background:#fff;color:#c05115;box-shadow:0 4px 12px #c0511517}.salaires-paiement-resume>div:nth-child(2){min-width:0;flex:1}.salaires-paiement-resume>div:nth-child(2) strong{display:block;overflow:hidden;color:#293344;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.salaires-paiement-resume>div:nth-child(2) span{display:block;margin-top:3px;color:#8b94a3;font-size:10px}.salaires-paiement-montant{color:#c05115!important;font-size:15px!important;white-space:nowrap}.salaires-paiement-modal form{padding-bottom:0}.salaires-form-group{display:flex;flex-direction:column;gap:7px;margin:0 22px 16px}.salaires-form-group label{color:#4a5568;font-size:11px;font-weight:750}.salaires-form-group label span{margin-left:3px;color:#d94b3d}.salaires-form-group input,.salaires-form-group select,.salaires-form-group textarea{width:100%;box-sizing:border-box;border:1px solid #dfe4eb;border-radius:9px;outline:none;background:#fff;color:#273142;font-family:inherit;font-size:12px;transition:border-color .2s ease,box-shadow .2s ease}.salaires-form-group input,.salaires-form-group select{height:41px;padding:0 12px}.salaires-form-group textarea{min-height:95px;padding:11px 12px;resize:vertical}.salaires-form-group input:focus,.salaires-form-group select:focus,.salaires-form-group textarea:focus{border-color:#c0511580;box-shadow:0 0 0 3px #c0511512}.salaires-form-group input:disabled,.salaires-form-group select:disabled,.salaires-form-group textarea:disabled{background:#f7f8fa;cursor:not-allowed}.salaires-form-group small{color:#9aa2af;font-size:9px;line-height:1.4}.salaires-paiement-warning{display:flex;align-items:flex-start;gap:10px;margin:5px 22px 20px;padding:12px 13px;border:1px solid #e8e1d3;border-radius:11px;background:#fffbf3}.salaires-paiement-warning>i{margin-top:2px;color:#b27b18;font-size:14px}.salaires-paiement-warning strong{display:block;margin-bottom:3px;color:#705317;font-size:11px}.salaires-paiement-warning p{margin:0;color:#8b7550;font-size:10px;line-height:1.5}.salaires-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:16px 22px;border-top:1px solid #edf0f4;background:#fafbfc}.salaires-paiement-details{padding:20px 22px}.salaires-paiement-detail-prof{display:flex;align-items:center;gap:12px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #edf0f4}.salaires-paiement-detail-prof>div:last-child{min-width:0}.salaires-paiement-detail-prof strong{display:block;color:#273142;font-size:14px;font-weight:800}.salaires-paiement-detail-prof span{display:block;margin-top:3px;color:#8d96a5;font-size:10px}.salaires-paiement-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.salaires-paiement-detail-grid>div{padding:13px;border:1px solid #edf0f4;border-radius:11px;background:#fafbfc}.salaires-paiement-detail-grid span{display:block;margin-bottom:5px;color:#8d96a5;font-size:9px;font-weight:650}.salaires-paiement-detail-grid strong{display:block;overflow:hidden;color:#2d3748;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.salaires-paiement-detail-status{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:13px;border-radius:11px;background:#f0faf6}.salaires-paiement-detail-status>i{margin-top:2px;color:#16835b;font-size:15px}.salaires-paiement-detail-status strong{display:block;margin-bottom:3px;color:#166b4e;font-size:11px}.salaires-paiement-detail-status span{display:block;color:#5e8879;font-size:10px;line-height:1.45}.salaires-paiement-observation{margin-top:14px;padding:13px;border-radius:11px;background:#f7f8fa}.salaires-paiement-observation>span{display:block;margin-bottom:5px;color:#697386;font-size:10px;font-weight:750}.salaires-paiement-observation p{margin:0;color:#4b5565;font-size:11px;line-height:1.5}.salaires-modal::-webkit-scrollbar,.salaires-table-container::-webkit-scrollbar{width:7px;height:7px}.salaires-modal::-webkit-scrollbar-track,.salaires-table-container::-webkit-scrollbar-track{background:transparent}.salaires-modal::-webkit-scrollbar-thumb,.salaires-table-container::-webkit-scrollbar-thumb{border-radius:20px;background:#d9dee6}.salaires-modal::-webkit-scrollbar-thumb:hover,.salaires-table-container::-webkit-scrollbar-thumb:hover{background:#bdc5d0}@media (max-width: 1100px){.salaires-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.salaires-table{min-width:850px}}@media (max-width: 700px){.salaires-section-card-header{align-items:flex-start;flex-direction:column}.salaires-section-card-header>.salaires-btn-secondary{width:100%}.salaires-filtres-bar{display:grid;grid-template-columns:1fr 1fr}.salaires-filtre-group,.salaires-filtre-group select{min-width:0;width:100%}.salaires-stats-grid{grid-template-columns:1fr 1fr;gap:10px}.salaires-stat-card{padding:13px;gap:10px}.salaires-stat-icon{flex-basis:37px;width:37px;height:37px;border-radius:10px;font-size:13px}.salaires-stat-card strong{font-size:13px}.salaires-stat-card span{font-size:9px}.salaires-table-toolbar{align-items:stretch;flex-direction:column}.salaires-search{width:100%;max-width:none}.salaires-status-filters{width:100%;overflow-x:auto}.salaires-status-filters button{flex:1;min-width:-moz-max-content;min-width:max-content}.salaires-table-container{margin-left:-1px;margin-right:-1px}.salaires-modal-overlay{align-items:flex-end;padding:0}.salaires-modal{width:100%;max-height:92vh;border-radius:19px 19px 0 0}.salaires-paiement-resume{align-items:flex-start;flex-wrap:wrap}.salaires-paiement-montant{width:100%;margin-left:56px;margin-top:-4px}.salaires-paiement-detail-grid{grid-template-columns:1fr}.salaires-modal-footer{position:sticky;bottom:0;z-index:2}}@media (max-width: 430px){.salaires-filtres-bar,.salaires-stats-grid{grid-template-columns:1fr}.salaires-stat-card{min-height:65px}.salaires-modal-header{padding:17px}.salaires-paiement-resume,.salaires-form-group,.salaires-paiement-warning{margin-left:17px;margin-right:17px}.salaires-modal-footer{padding-left:17px;padding-right:17px}.salaires-modal-footer .salaires-btn-primary,.salaires-modal-footer .salaires-btn-secondary{flex:1}}@media (max-width: 1100px){.salaires-remunerations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.salaires-configuration-grid{grid-template-columns:1fr}}@media (max-width: 900px){.salaires-section-card-header{align-items:flex-start;flex-direction:column}.salaires-remuneration-filtres{flex-wrap:wrap}.salaires-remuneration-filtres .salaires-search{flex:1 1 100%}.salaires-select-large{flex:1}.salaires-historique-info{align-items:flex-start;flex-direction:column}}@media (max-width: 650px){.salaires-navigation{margin-left:-2px;margin-right:-2px}.salaires-navigation button{min-height:39px;padding:0 11px;font-size:10px}.salaires-navigation button i{font-size:11px}.salaires-remunerations-grid{grid-template-columns:1fr;padding:12px}.salaires-section-card-header{padding:15px}.salaires-section-card-header h2{font-size:15px}.salaires-remuneration-filtres,.salaires-configuration-grid{padding:12px}.salaires-config-card{padding:14px}.salaires-remuneration-form{grid-template-columns:1fr;padding:14px}.salaires-form-group.full{grid-column:auto}.salaires-type-choice{grid-template-columns:1fr}.salaires-type-choice button{min-height:75px;flex-direction:row;justify-content:flex-start;text-align:left}.salaires-historique-info{margin:12px;padding:17px}}@media (max-width: 420px){.salaires-remuneration-values{grid-template-columns:1fr}.salaires-remuneration-card-top{flex-direction:column}.salaires-select-large{width:100%;min-width:0}}@media (max-width: 1250px){.salaires-stats{grid-template-columns:repeat(3,1fr)}.salaires-periode-card{flex-wrap:wrap}.salaires-periode-title{min-width:220px}.salaires-periode-current{margin-left:0}}@media (max-width: 900px){.salaires-page{padding:22px 16px 45px}.salaires-header{align-items:flex-start;flex-direction:column}.salaires-header-actions{width:100%;justify-content:flex-start}.salaires-periode-card{align-items:flex-start;flex-direction:column}.salaires-periode-title,.salaires-periode-fields{width:100%}.salaires-periode-fields .salaires-filter-field{flex:1}.salaires-periode-fields .salaires-filter-field select{width:100%}.salaires-periode-current{width:100%;justify-content:center}.salaires-resume{grid-template-columns:1fr}.salaires-filtres{align-items:stretch;flex-wrap:wrap}.salaires-search{flex:1 1 100%}.salaires-filtres .salaires-filter-field{flex:1}.salaires-export-btn{flex:0 0 auto}.salaires-detail-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width: 650px){.salaires-page{padding:15px 10px 35px}.salaires-header{margin-bottom:17px}.salaires-title-line{align-items:flex-start;gap:11px}.salaires-title-icon{width:46px;height:46px;min-width:46px;border-radius:13px;font-size:18px}.salaires-header h1{font-size:21px;line-height:1.25}.salaires-header p{font-size:12px;line-height:1.5}.salaires-header-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.salaires-header-actions .salaires-btn{width:100%;padding:0 9px;font-size:11px}.salaires-header-actions .salaires-btn span{white-space:nowrap}.salaires-periode-card{padding:14px;gap:15px;border-radius:14px}.salaires-periode-title{min-width:0}.salaires-periode-fields{gap:8px}.salaires-filter-field select,.salaires-filter-field input{min-width:0;height:40px;font-size:12px}.salaires-stats{grid-template-columns:repeat(2,1fr);gap:9px}.salaire-stat-card{padding:12px;gap:8px;border-radius:13px}.salaire-stat-icon{width:35px;height:35px;min-width:35px;border-radius:9px;font-size:13px}.salaire-stat-info span{font-size:9px}.salaire-stat-info strong{font-size:15px}.salaires-resume-item{min-height:70px;padding:12px}.salaires-resume-item strong{font-size:14px}.salaires-filtres{gap:8px}.salaires-filtres .salaires-filter-field{min-width:0}.salaires-export-btn{height:40px;padding:0 12px;font-size:11px}.salaires-table-card{border-radius:14px}.salaires-table-header{padding:14px;min-height:65px}.salaires-table-header h2{font-size:14px}.salaires-empty{min-height:300px;padding:30px 15px}.salaires-modal-overlay{padding:10px;align-items:flex-end}.salaires-modal{max-height:calc(100vh - 20px);border-radius:18px 18px 0 0}.salaires-modal-header{padding:14px}.salaires-detail-summary{grid-template-columns:repeat(2,1fr);padding:12px;gap:7px}.salaires-detail-summary>div{padding:10px}.salaires-detail-summary strong{font-size:12px}.salaires-detail-section{padding:15px 14px}.salaires-detail-grid{grid-template-columns:repeat(2,1fr)}.salaires-modal-footer{padding:11px 14px}}@media (max-width: 420px){.salaires-page{padding-left:8px;padding-right:8px}.salaires-header-actions{grid-template-columns:1fr}.salaires-periode-fields{flex-direction:column;width:100%}.salaires-periode-fields .salaires-filter-field{width:100%}.salaires-stats{grid-template-columns:1fr 1fr}.salaire-stat-card{min-height:68px}.salaires-filtres .salaires-filter-field{flex:1 1 100%}.salaires-export-btn{width:100%}.salaires-detail-grid{grid-template-columns:1fr}.salaires-modal-title h2{font-size:14px}.salaires-modal-title p{font-size:10px}.salaires-detail-summary{grid-template-columns:1fr 1fr}.salaires-modal-footer>div{flex-direction:column;align-items:flex-start;gap:4px}}.scanner-page{min-height:100vh;padding:30px;background:#d5dfef;text-align:center}.scanner-page h1{font-size:28px;font-weight:700;color:#1e293b;margin-bottom:10px}.scanner-page p{color:#64748b;margin-bottom:25px}#reader{background:#fff;border-radius:20px;padding:15px;box-shadow:0 10px 30px #00000014;overflow:hidden;border:3px solid #e2e8f0}#reader__dashboard_section_swaplink,#reader__dashboard_section_csr{display:none!important}#reader video{border-radius:15px}.scanner-result{width:-moz-fit-content;width:fit-content;max-width:400px;margin:25px auto 15px;padding:15px 25px;border-radius:50px;background:#dcfce7;color:#166534;font-size:18px;font-weight:700;box-shadow:0 8px 20px #16653426;animation:validation .4s ease}.scanner-badge-result{width:100%;display:flex;justify-content:center;flex-direction:column;align-items:center}.matri-materi{display:block;color:#202938;font-size:10px;font-weight:800;white-space:nowrap;text-overflow:ellipsis}.scanner-badge-result .school-card{position:relative;width:50%;min-height:350px;overflow:hidden;border-radius:25px;background:radial-gradient(circle at 0% 100%,rgba(37,99,235,.08),transparent 30%),linear-gradient(135deg,#fff 0% 58%,#f5f8ff);border:1px solid #dbe4f2;box-shadow:0 12px 35px #0f172a1a;font-family:Arial,sans-serif;isolation:isolate}@keyframes validation{0%{opacity:0;transform:translateY(-15px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.eleve-scan-card{width:350px;margin:25px auto;background:#fff;border-radius:25px;padding:25px;box-shadow:0 15px 40px #0000001a;animation:cardAppear .5s ease}@keyframes cardAppear{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.eleve-scan-card h2{font-size:24px;color:#0f172a;margin-bottom:15px}.eleve-scan-card p{font-size:16px;color:#475569}.scan-status{margin-top:20px;padding:15px;border-radius:15px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 10px 25px #22c55e59}.scanner-result.error{background:#fee2e2;color:#991b1b;box-shadow:0 8px 20px #991b1b26}@media (max-width:600px){.canner-page{padding:10px;width:100%}.scanner-badge-result .school-card{width:99%;min-width:0;background:transparent;border:none;border-radius:0;box-shadow:none;overflow:visible;transition:none}.student-card:hover{transform:none;box-shadow:none}.school-card{position:relative;width:100%;min-height:350px;overflow:hidden;border-radius:25px;background:radial-gradient(circle at 0% 100%,rgba(37,99,235,.08),transparent 30%),linear-gradient(135deg,#fff 0% 58%,#f5f8ff);border:1px solid #dbe4f2;box-shadow:0 12px 35px #0f172a1a;font-family:Arial,sans-serif;isolation:isolate}.school-card:before{content:"";position:absolute;top:0;right:0;width:40%;height:85px;background:linear-gradient(135deg,#063b9f,#064cc4 55%,#002d83);clip-path:polygon(18% 0,100% 0,100% 100%,0 100%);z-index:-1}.school-card:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:12px;background:linear-gradient(90deg,#063b9f,#1258d8,#063b9f);z-index:1}.school-card-header{height:92px;padding:16px 22px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.school-brand{display:flex;align-items:center;gap:10px}.school-logo{position:relative;width:70px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 7px 18px #00000029;overflow:hidden;-o-object-fit:cover;object-fit:cover}.school-logo img{width:100%;height:100%}.school-logo-s{color:#0645ae;font-size:36px;font-weight:900;line-height:1}.school-logo-cap{position:absolute;top:2px;right:1px;font-size:13px}.school-brand-text{display:flex;flex-direction:column}.school-brand-text strong{color:#000;font-size:9px;font-weight:900;letter-spacing:-.5px}.school-brand-text span{color:#ffffffeb;display:none;font-size:8px;margin-top:1px}.school-card-type{display:flex;align-items:flex-end;flex-direction:column;gap:7px;color:#fff}.school-card-type>span{font-size:10px;font-weight:900;letter-spacing:1.2px}.school-student-status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:30px;background:#ffffff29;color:#fff;font-size:9px;font-weight:800}.school-student-status span{width:6px;height:6px;border-radius:50%;background:#4ade80}.school-student-status.inactive span{background:#f87171}.school-card-body{display:flex;gap:22px;padding:4px 8px 10px;align-items:end;justify-content:center;position:relative;z-index:2}.school-card-left{display:flex;flex-direction:column;align-items:center}.school-photo{width:95px;height:95px;border-radius:20px;overflow:hidden;border:3px solid #2563eb;background:#eaf1ff;box-shadow:0 8px 20px #2563eb29;display:flex;align-items:center;justify-content:center}.school-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.school-avatar{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#4338ca);color:#fff;font-size:32px;font-weight:900}.school-student-type{margin-top:10px;min-width:105px;padding:7px 12px;text-align:center;border-radius:9px;background:linear-gradient(135deg,#0645ae,#145dd3);color:#fff;font-size:11px;font-weight:900;box-shadow:0 6px 14px #2563eb33}.school-year{display:flex;flex-direction:column;align-items:center;margin-top:10px}.school-year span{color:#1747a8;font-size:9px;font-weight:700}.school-year strong{margin-top:2px;color:#1747a8;font-size:12px}.school-card-info{min-width:0;display:flex;flex-direction:column;align-items:center;padding-left:2px;border-left:2px solid #d8e4f5}.school-info-row{padding:7px 0;border-bottom:1px solid #dbe4f0}.school-info-label{display:block;color:#1454be;font-size:9px;font-weight:900;letter-spacing:.7px;margin-bottom:2px}.school-info-row>strong{display:block;color:#202938;font-size:10px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.school-info-row>span{display:block;color:#202938;font-size:10px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.school-info-double{display:grid;grid-template-columns:1fr 1fr;gap:15px}.school-info-double>div{min-width:0}.school-info-id{margin-top:8px;color:#8793a5;font-size:9px}.school-info-id strong{color:#344054}.school-card-qr-section{display:none;flex-direction:column;align-items:center;justify-content:center;padding-left:2px;border-left:2px solid #c9dcf6}.school-qr-frame{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#fff;border:3px solid #1659c7;border-radius:19px;box-shadow:0 8px 20px #0f172a14}.school-qr-frame svg{width:140px;height:140px}.school-scan-text{margin-top:8px;width:88px;padding:7px 8px;display:flex;align-items:center;justify-content:center;gap:5px;border-radius:20px;background:linear-gradient(135deg,#1455bd,#1749a3);color:#fff;font-size:8px;font-weight:800}.school-scan-text span{opacity:.9;font-size:5px}.school-scan-text strong{font-size:5px}.school-badge-code{margin-top:7px;color:#172033;font-family:monospace;font-size:10px;font-weight:900;letter-spacing:.5px}.school-card-footer{min-height:48px;display:none;padding:0 24px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#063b9f,#064cc4,#063b9f);color:#fff;position:relative;z-index:3}.school-footer-left{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:800;letter-spacing:.8px}.school-footer-left b{color:#f4c20d}.school-footer-right{display:flex;align-items:center;gap:6px;font-size:9px}.school-card-actions{margin-top:12px;background:#fff;border:1px solid #e4e9f1;border-radius:16px;padding:12px 14px;box-shadow:0 5px 18px #0f172a0a}.school-badge-meta{display:flex;gap:25px;margin-bottom:10px}.school-badge-meta>div{display:flex;flex-direction:column;gap:2px}.school-badge-meta span{color:#98a2b3;font-size:8px;font-weight:800;letter-spacing:.6px}.school-badge-meta strong{color:#344054;font-size:11px}.badge-meta-active{color:#15803d!important}.badge-meta-inactive{color:#b91c1c!important}}.scanner-finance-card{width:50%;margin-top:18px;margin-bottom:35px;background:#fff;border:1px solid #dbe4f2;border-radius:22px;box-shadow:0 12px 35px #0f172a14;overflow:hidden;text-align:left;animation:financeAppear .45s ease}@keyframes financeAppear{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.scanner-finance-header{min-height:75px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(135deg,#f8fbff,#fff);border-bottom:1px solid #e5ebf4}.scanner-finance-title{display:flex;align-items:center;gap:12px}.scanner-finance-title-icon{width:43px;height:43px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:linear-gradient(135deg,#063b9f,#1258d8);color:#fff;font-size:20px;box-shadow:0 7px 16px #2563eb33}.scanner-finance-title>div:last-child{display:flex;flex-direction:column}.scanner-finance-title strong{color:#172033;font-size:16px;font-weight:900}.scanner-finance-title span{margin-top:2px;color:#7a8699;font-size:10px}.scanner-finance-global-status{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:30px;font-size:10px;font-weight:900}.scanner-finance-global-status span{width:7px;height:7px;border-radius:50%}.scanner-finance-global-status.soldé{background:#dcfce7;color:#15803d}.scanner-finance-global-status.soldé span{background:#22c55e}.scanner-finance-global-status.non-solde{background:#fee2e2;color:#b91c1c}.scanner-finance-global-status.non-solde span{background:#ef4444}.scanner-finance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e5ebf4;border-bottom:1px solid #e5ebf4}.scanner-finance-summary-item{min-height:85px;padding:15px;display:flex;flex-direction:column;justify-content:center;background:#fff}.scanner-finance-summary-item span{color:#8a96a8;font-size:8px;font-weight:900;letter-spacing:.6px;margin-bottom:6px}.scanner-finance-summary-item strong{color:#202938;font-size:14px;font-weight:900}.scanner-finance-summary-item.paid strong{color:#15803d}.scanner-finance-summary-item.remaining strong{color:#dc2626}.scanner-finance-progress{padding:15px 20px 18px}.scanner-finance-progress-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.scanner-finance-progress-top span{color:#7a8699;font-size:9px;font-weight:700}.scanner-finance-progress-top strong{color:#1454be;font-size:10px;font-weight:900}.scanner-finance-progress-bar{width:100%;height:8px;overflow:hidden;border-radius:20px;background:#e8edf5}.scanner-finance-progress-bar>div{height:100%;border-radius:20px;background:linear-gradient(90deg,#063b9f,#2563eb);transition:width .5s ease}.scanner-modalites{border-top:1px solid #e5ebf4}.scanner-modalites-title{min-height:52px;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;background:#f8fafc}.scanner-modalites-title strong{color:#172033;font-size:12px;font-weight:900}.scanner-modalites-title span{color:#8a96a8;font-size:9px;font-weight:700}.scanner-modalites-list{display:flex;flex-direction:column}.scanner-modalite{padding:15px 20px;display:grid;grid-template-columns:1.3fr 1.7fr auto;align-items:center;gap:15px;border-bottom:1px solid #edf1f6;background:#fff}.scanner-modalite:last-child{border-bottom:none}.scanner-modalite-main{display:flex;align-items:center;gap:10px;min-width:0}.scanner-modalite-icon{flex-shrink:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#eff6ff;color:#2563eb;font-size:13px;font-weight:900}.scanner-modalite-name{min-width:0;display:flex;flex-direction:column}.scanner-modalite-name strong{color:#202938;font-size:11px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scanner-modalite-name span{margin-top:3px;color:#98a2b3;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scanner-modalite-values{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.scanner-modalite-values>div{display:flex;flex-direction:column;min-width:0}.scanner-modalite-values span{color:#98a2b3;font-size:7px;font-weight:800;text-transform:uppercase}.scanner-modalite-values strong{margin-top:3px;color:#344054;font-size:9px;font-weight:900;white-space:nowrap}.scanner-modalite-values .modalite-paye,.scanner-modalite-values .modalite-solde{color:#15803d}.scanner-modalite-values .modalite-reste{color:#dc2626}.scanner-modalite-status{min-width:82px;padding:6px 8px;text-align:center;border-radius:20px;font-size:8px;font-weight:900;white-space:nowrap}.scanner-modalite-status.soldé{background:#dcfce7;color:#15803d}.scanner-modalite-status.non-solde{background:#fee2e2;color:#b91c1c}.scanner-finance-loading{min-height:90px;display:flex;align-items:center;justify-content:center;gap:10px;color:#64748b;font-size:11px;font-weight:700}.scanner-finance-loading i{color:#2563eb;font-size:16px}.scanner-finance-empty{min-height:100px;padding:20px;display:flex;align-items:center;justify-content:center;gap:12px;color:#64748b;text-align:left}.scanner-finance-empty>span{width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#eff6ff;font-size:17px}.scanner-finance-empty strong{display:block;color:#344054;font-size:11px}.scanner-finance-empty p{margin:4px 0 0;color:#98a2b3;font-size:9px}@media (max-width: 600px){.scanner-finance-card{width:99%;margin-top:15px;border-radius:18px}.scanner-finance-header{padding:13px 15px;min-height:65px}.scanner-finance-title-icon{width:38px;height:38px;font-size:17px}.scanner-finance-title strong{font-size:13px}.scanner-finance-title span{font-size:8px}.scanner-finance-global-status{padding:6px 9px;font-size:8px}.scanner-finance-summary{grid-template-columns:1fr 1fr}.scanner-finance-summary-item{min-height:70px;padding:11px}.scanner-finance-summary-item:last-child{grid-column:1 / -1}.scanner-finance-summary-item strong{font-size:12px}.scanner-finance-progress{padding:13px 15px 15px}.scanner-modalites-title{padding:11px 15px}.scanner-modalite{grid-template-columns:1fr;gap:11px;padding:14px 15px}.scanner-modalite-values{grid-template-columns:repeat(3,1fr);padding-left:40px}.scanner-modalite-status{width:-moz-fit-content;width:fit-content;margin-left:40px}}.scanner-movement-status{display:flex;height:40px;margin-top:15px;border-radius:15px;text-align:center;align-items:center;padding:10px;background-color:#aab9d6}.scanner-confirmation-actions{display:flex;justify-content:space-around;width:100%}.scanner-confirmation-actions button{background-color:#3c55d5;color:#fff}.all-DossierEleve{width:90%;max-width:1400px;margin:0 auto}.kelepe{width:100%;margin-bottom:20px}.tete-student{display:flex;align-items:center;gap:15px;padding:22px 25px;background:#fff;border-radius:16px;border:1px solid #e8e8e8;box-shadow:0 5px 20px #0000000d}.icon-tete-student{width:52px;height:52px;min-width:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#f1f5ff;color:#315efb;font-size:22px}.first-inf-student{display:flex;flex-direction:column;gap:4px}.first-inf-student .title_student{font-size:22px;font-weight:700;color:#20242a}.first-inf-student span:last-child{color:#7a8089;font-size:14px}.all-DossierEleve .student-card{width:100%;background:#fff;border-radius:18px;border:1px solid #e8e8e8;padding:25px;margin-bottom:22px;box-sizing:border-box;box-shadow:0 5px 20px #0000000b}.all-DossierEleve .student-header{width:100%}.all-DossierEleve .student-profile{display:flex;align-items:center;gap:20px}.student-avatar{width:82px;height:82px;min-width:82px;border-radius:50%;overflow:hidden;background:#f4f6f9;border:3px solid #edf0f5;display:flex;align-items:center;justify-content:center}.student-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.idf-student{display:flex;flex-direction:column;gap:10px}.blaze-student{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.blaze-student span{font-size:25px;font-weight:750;color:#20242a}.blaze-student span+span:before{content:" "}.class-ann-student{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.class-ann-student div{display:flex;align-items:center;gap:7px;color:#69707a;font-size:14px}.class-ann-student i{color:#315efb}.info-grid-student{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}.info-card-student{background:#fafbfc;border:1px solid #e9edf2;border-radius:15px;padding:20px;box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.info-card-student:hover{transform:translateY(-2px);border-color:#dfe5ed;box-shadow:0 8px 20px #0000000d}.info-card-student h3{margin:0 0 18px;display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;color:#252a31}.info-card-student h3 i{color:#315efb;font-size:16px}.info-card-student p{margin:10px 0;color:#68717d;font-size:14px;line-height:1.5}.info-card-student p strong{color:#343a40;font-weight:650}.student-card>.tete-student{padding:0;margin-bottom:20px;border:none;box-shadow:none;background:transparent}.student-card>.tete-student .icon-tete-student{width:45px;height:45px;min-width:45px;border-radius:12px;background:#f1f5ff;color:#315efb}.student-card>.tete-student .title_student{font-size:19px}.info-card-student .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;cursor:pointer}.btn{border:none;border-radius:9px;padding:10px 15px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:#315efb;color:#fff;box-shadow:0 4px 12px #315efb33}.btn-primary:hover{opacity:.92}.btn-success{background:#198754;color:#fff}.btn-success:hover{background:#157347}.btn-close-card{display:block;margin:10px auto 25px;padding:11px 22px;border:none;border-radius:10px;background:#f0f2f5;color:#50565e;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.btn-close-card:hover{background:#e5e8ec;transform:translateY(-1px)}.empty-DossierEleve{min-height:220px;padding:35px;border-radius:16px;background:#fff;border:1px dashed #d9dee6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-sizing:border-box}.empty-DossierEleve i{font-size:38px;color:#aab1bb;margin-bottom:12px}.empty-DossierEleve h3{margin:0 0 8px;color:#343a40;font-size:18px}.empty-DossierEleve p{margin:0 0 18px;color:#7a828d;font-size:14px}@media (max-width: 1000px){.main-content-DossierEleve{padding:20px}.info-grid-student{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.main-content-DossierEleve{padding:12px}.student-card,.tete-student{padding:17px;border-radius:14px}.icon-tete-student{width:45px;height:45px;min-width:45px}.first-inf-student .title_student{font-size:18px}.first-inf-student span:last-child{font-size:12px}.student-profile{align-items:flex-start;gap:14px}.student-avatar{width:62px;height:62px;min-width:62px}.blaze-student{gap:5px}.blaze-student span{font-size:19px}.class-ann-student{flex-direction:column;align-items:flex-start;gap:7px}.info-grid-student{grid-template-columns:1fr;gap:12px;margin-top:18px}.info-card-student{padding:16px}}@media (max-width: 430px){.student-profile{flex-direction:column}.student-avatar{width:70px;height:70px}.blaze-student{flex-direction:column;align-items:flex-start}.class-ann-student{margin-top:4px}.student-card>.tete-student{align-items:flex-start}}.Privacy-page{--primary: #2563eb;--primary-dark: #1d4ed8;--text: #1f2937;--text-light: #6b7280;--border: #e5e7eb;--background: #f4f7fb;--card: #ffffff;min-height:100vh;margin:0;padding:55px 25px 80px;background:radial-gradient(circle at top left,rgba(37,99,235,.1),transparent 35%),radial-gradient(circle at bottom right,rgba(37,99,235,.07),transparent 35%),var(--background);color:var(--text);font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.8;box-sizing:border-box}.Privacy-page>*{max-width:900px;margin-left:auto;margin-right:auto}.Privacy-page header{max-width:900px;margin:0 auto 35px;padding:42px 45px;background:linear-gradient(135deg,#2563eb,#1e40af);border-radius:24px;position:relative;overflow:hidden;color:#fff;box-shadow:0 20px 45px #1e40af33,0 8px 20px #00000014}.Privacy-page header:before{content:"";position:absolute;width:220px;height:220px;top:-100px;right:-60px;border-radius:50%;background:#ffffff14}.Privacy-page header:after{content:"";position:absolute;width:150px;height:150px;bottom:-80px;left:-50px;border-radius:50%;background:#ffffff0f}.Privacy-page header h1{position:relative;z-index:2;margin:0;color:#fff;font-size:clamp(28px,4vw,42px);line-height:1.2;font-weight:800;letter-spacing:-.8px}.Privacy-page>p:first-of-type{max-width:900px;margin:0 auto 45px;padding:14px 20px;color:var(--text-light);background:#fff;border:1px solid var(--border);border-radius:12px;font-size:14px;box-shadow:0 5px 18px #0000000a}.Privacy-page>p:first-of-type strong{color:var(--text)}.Privacy-page h2{position:relative;margin-top:48px;margin-bottom:18px;padding-left:17px;color:#111827;font-size:24px;line-height:1.35;font-weight:800;letter-spacing:-.3px}.Privacy-page h2:before{content:"";position:absolute;left:0;top:3px;width:5px;height:calc(100% - 6px);border-radius:10px;background:linear-gradient(180deg,var(--primary),var(--primary-dark))}.Privacy-page h3{margin-top:30px;margin-bottom:12px;color:#374151;font-size:18px;line-height:1.4;font-weight:750}.Privacy-page p{margin-top:0;margin-bottom:18px;color:#4b5563;font-size:16px}.Privacy-page ul{margin:15px 0 25px;padding:20px 25px 20px 48px;background:#ffffffd9;border:1px solid var(--border);border-radius:16px;box-shadow:0 7px 22px #00000009}.Privacy-page li{margin:9px 0;padding-left:5px;color:#4b5563;font-size:15.5px}.Privacy-page li::marker{color:var(--primary);font-size:14px}.Privacy-page strong{color:#1f2937;font-weight:700}.Privacy-page a{color:var(--primary);font-weight:600;text-decoration:none;transition:color .2s ease}.Privacy-page a:hover{color:var(--primary-dark);text-decoration:underline}.Privacy-page h2:last-of-type{margin-top:60px}.Privacy-page h2,.Privacy-page h3,.Privacy-page p{transition:transform .2s ease,opacity .2s ease}@media (max-width: 768px){.Privacy-page{padding:30px 16px 60px}.Privacy-page header{padding:32px 28px;border-radius:20px;margin-bottom:25px}.Privacy-page header h1{font-size:30px}.Privacy-page>p:first-of-type{margin-bottom:35px;padding:12px 16px}.Privacy-page h2{margin-top:40px;font-size:21px}.Privacy-page h3{font-size:17px}.Privacy-page p{font-size:15px;line-height:1.75}.Privacy-page ul{padding:16px 18px 16px 38px;border-radius:14px}.Privacy-page li{font-size:14.5px}}@media (max-width: 480px){.Privacy-page{padding:18px 12px 45px}.Privacy-page header{padding:28px 22px;border-radius:18px}.Privacy-page header h1{font-size:26px;letter-spacing:-.4px}.Privacy-page>p:first-of-type{font-size:13px;margin-bottom:28px}.Privacy-page h2{margin-top:34px;padding-left:13px;font-size:19px}.Privacy-page h2:before{width:4px}.Privacy-page h3{margin-top:25px;font-size:16px}.Privacy-page p{font-size:14.5px;line-height:1.75}.Privacy-page ul{padding:14px 14px 14px 32px;border-radius:12px}.Privacy-page li{margin:7px 0;font-size:14px;line-height:1.65}}@media (prefers-reduced-motion: reduce){.Privacy-page *,.Privacy-page *:before,.Privacy-page *:after{transition:none!important;animation:none!important}}.supcompte-page{background-color:#fff;color:#000;text-align:center;height:100vh}.supcompte-page header{height:80px;background-color:#1362a7;display:flex;justify-content:center;align-items:center;color:#fff;font-weight:600;font-size:30px;margin-bottom:25px}.supcompte-page h2,.supcompte-page h3{color:#1a73e8;font-weight:600;font-size:25px;padding:0 10px}.supcompte-page ul{margin-left:20px;padding:0 10px}body{background:url(/scolar/assets/images/scolar2.png) no-repeat;background-size:contain;background-position:left;background-color:#5fa3c1}.connect-page{background:url(/scolar/assets/images/scolar2.png) no-repeat;background-size:contain;background-position:right}.connect-page{display:flex;justify-content:center;height:100vh;width:100vw;align-items:center}.connect-page .lpm h1{color:#858383;font-weight:600;font-size:45px;margin-bottom:25px}.connect-page .giga-form{text-align:center;display:flex;justify-content:center;position:relative;text-transform:uppercase}.connect-page .all-form{width:430px;height:500px;background-color:#fff;display:flex;border-radius:15px 5px;align-items:center;justify-content:center;position:relative}.connect-page .meute{display:flex;justify-content:space-around}.connect-page .insc{background-color:#fff;position:absolute;padding:20px;border-radius:50%;top:-71px;right:-74px}.connect-page .all-form a{color:#f81e05;position:relative;padding:15px 10px;background-color:#fff0;font-weight:800;font-family:serif;font-size:15px;text-transform:uppercase;visibility:visible;top:70px;right:0;text-decoration:underline}.connect-page h1{color:#767c958e;text-align:center;margin-top:20px}.connect-page .btn1,.connect-page .btn2,.connect-page .btn14 input{flex-direction:column;display:flex;align-items:center;position:relative;background-color:transparent}.connect-page .btn1 input,.connect-page .btn14 input{border:none;margin:10px 0;padding:5px 15px 5px 50px;background-color:#fff;height:45px;width:300px;color:#000;font-size:20px;font-weight:700;text-align:center;border-radius:5px;box-shadow:inset 5px 5px 10px #00000042,inset -3px -3px 7px #ffffff14,2px 3px 6px #00000017;transition:all .55s ease}.connect-page .btn1 input:active,.connect-page .btn14 input:active{transform:translateY(2px);box-shadow:inset 7px 7px 13px #0000008c,inset -2px -2px 5px #ffffff0f}.connect-page .lpm .bi{color:#707073;position:absolute;left:10px;z-index:45;top:10px;font-size:35px}.connect-page .seul{display:flex;justify-content:center;align-items:center;flex-direction:column}.connect-page .btn2 input{padding:10px 20px;color:#000;font-weight:800;border-radius:10px;width:auto;font-size:20px;border:none;margin-top:15px;background-color:#fcfcfc;box-shadow:inset 4px 4px 8px #00000038,inset -4px -4px 8px #ffffffe6,2px 3px 8px #0000001f;transition:all .55s ease;cursor:pointer}.connect-page .btn2 input:active{transform:translateY(5px);box-shadow:inset 6px 6px 12px #00000047,inset -3px -3px 7px #fffc}@media screen and (max-width:769px){.connect-page{display:flex;justify-content:center;height:100vh;background:url(/scolar/assets/images/1254855.jpg) no-repeat;background-size:cover;background-position:center;width:100vw;align-items:center}.giga{border:20px solid #ffffff;background-color:#000;width:90%;display:flex;justify-content:center;align-items:center;border-radius:5px 25px}.all-form{width:100%!important}.tgh{width:100%}.connect-page .btn1 input,.connect-page .btn14 input{border-right:none;border:2px solid #ffffff;outline:none;margin:10px 0;padding:5px 45px;background-color:transparent;height:45px;width:90%;color:#fff;font-size:20px;border-radius:25px 0;font-weight:700;text-align:left}.connect-page .lpm{width:100%!important;height:100%!important}.connect-page .lpm .bi{color:#fff;position:absolute;left:10%;top:19%;font-size:25px}.connect-page .btn2 input{padding:10px;color:#431a22;font-weight:800;width:auto;border-radius:0 15px;font-size:16px;border:none;margin-top:15px;background-color:#fff}}*{text-decoration:none;list-style:none}.lient_co{color:#000;font-size:25px}.all .giga-form{display:flex;justify-content:center;position:relative}.djolo .lpm{width:98%;height:99%}.all .all-form{border-radius:5px 5px 5px 0;padding:10px;background-color:#0001;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:10px 10px 20px 2px #333}.meute{display:flex;justify-content:space-around}.insc{background-color:#b01d1d;position:absolute;padding:20px;border-radius:50%;top:-71px;right:-74px}.all-form a{background-color:#4e5053cb;position:absolute;padding:40px;border-radius:50%;top:-61px;right:-104px;color:#000;font-weight:800;font-size:25px;text-decoration:none;visibility:hidden}.all h1{color:#1939c78e;text-align:center;margin-top:15px}.btn1,.btn2,.btn14{flex-direction:column;display:flex;align-items:center;position:relative;background-color:transparent}.btn{display:flex;align-items:center;justify-content:center;cursor:auto}.btn input[type=file]{display:none}.custom-file-upload{display:inline-flex;justify-content:center;align-items:center;border-radius:50%;width:120px;height:120px;border:2px solid #00000011;cursor:pointer;background-color:#f5f5f5;transition:all .3s ease;font-size:30px;color:#555;overflow:hidden}.custom-file-uploadPa{display:inline-flex;justify-content:center;align-items:center;border-radius:50%;width:180px;height:180px;cursor:pointer;background-color:#f5f5f5;transition:all .3s ease;font-size:30px;color:#555;overflow:hidden}.custom-file-upload:hover{background-color:#ddd;color:#000}.preview-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.btn1 input,.btn14 input{border-top:none;border-left:5px solid #333;border-right:none;border-bottom:2px solid #333;outline:none;margin:10px 0;padding:5px 40px;background-color:#2f73d893;width:180px;color:#fff;font-size:16px;border-radius:25px 0;font-weight:600;text-align:center}.btn14 input,#nom{width:300px}.seul .bi,.meute .bi{position:absolute;left:15px;top:35px;font-size:25px}.seul{display:flex;justify-content:center;align-items:center;flex-direction:column}.btn2 input{padding:5px;width:120px;color:#fff;font-size:16px;border:none;margin-top:15px;background-color:#0122a8c1;margin-bottom:15px}.indic{display:flex;justify-content:space-around;margin-bottom:15px}.giga #gauche{z-index:10;border:none;font-weight:800;color:#2f73d893;font-size:25px;padding:5px 15px;background-color:#fff;border-radius:15px}.giga #droite{z-index:10;border:none;font-weight:800;color:#6902e793;font-size:25px;padding:5px 15px;background-color:#fff;border-radius:15px}#gauche{transform:translate(-50%);transition:1s}#droite{transform:translate(50%);transition:1s}.lploki{position:relative}/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-green-300:oklch(87.1% .15 154.449);--color-blue-600:oklch(54.6% .245 262.881);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-950:oklch(13% .028 261.692);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-lg:.5rem;--radius-2xl:1rem;--blur-lg:16px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.z-10{z-index:10}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.ms-2{margin-inline-start:calc(var(--spacing)*2)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-10{margin-top:calc(var(--spacing)*10)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-18{margin-left:calc(var(--spacing)*18)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.table{display:table}.h-100{height:calc(var(--spacing)*100)}.h-screen{height:100vh}.w-full{width:100%}.min-w-full{min-width:100%}.table-auto{table-layout:auto}.border-collapse{border-collapse:collapse}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-around{justify-content:space-around}.justify-center{justify-content:center}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-red-500{border-color:var(--color-red-500)}.border-white{border-color:var(--color-white)}.border-t-blue-600{border-top-color:var(--color-blue-600)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-200{background-color:var(--color-red-200)}.bg-white{background-color:var(--color-white)}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.p-4{padding:calc(var(--spacing)*4)}.p-10{padding:calc(var(--spacing)*10)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.text-center{text-align:center}.text-right{text-align:right}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-gray-700{color:var(--color-gray-700)}.text-gray-950{color:var(--color-gray-950)}.text-red-600{color:var(--color-red-600)}.text-white{color:var(--color-white)}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.backdrop-blur-lg{--tw-backdrop-blur:blur(var(--blur-lg));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:bg-green-300:hover{background-color:var(--color-green-300)}}@media (min-width:40rem){.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:48rem){.md\:block{display:block}.md\:hidden{display:none}}}:root{color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
