*{box-sizing:border-box;margin:0;padding:0}* body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;margin:0;font-family:Montserrat,IBM Plex Sans,sans-serif;overflow-x:hidden}* body #root{height:100%}* a{color:#000;cursor:pointer;text-decoration:none}.saisie-temps-container{background-color:#f3eadc;margin:auto;padding:50px}.saisie-temps-container form{background-color:#fff;border-radius:15px;gap:20px;width:50%;padding:25px;box-shadow:5px 5px 10px #00000080}.saisie-temps-card{text-align:center;background-color:#f9f9f9;border-radius:20px;padding:30px;box-shadow:0 4px 10px #0000001a}.container-header{flex-direction:column;align-items:center;display:flex}.date-picker{padding:10px}.date-picker input{border:none;border-radius:16px;padding:10px;font-size:16px}.trajet-row{justify-content:center;align-items:center;gap:12px;margin:12px 0;display:flex}.deplacement-row{justify-content:center;align-items:center;gap:10px;display:flex}.trajet-row .help{color:#666;font-size:12px}input[type=checkbox]{width:auto}.label-deplacement{margin-left:16px}.saisie-temps-form{flex-wrap:wrap;justify-content:center;gap:50px;margin-top:20px;display:flex}.saisie-temps-form .column{flex-direction:column;align-items:center;gap:15px;width:20%;min-width:200px;display:flex}.element{flex-direction:column;align-items:flex-start;width:100%;display:flex}.saisie-temps-form .column input,.saisie-temps-form .column select{box-sizing:border-box;background-color:#fff;border:none;border-radius:16px;width:100%;margin-bottom:5px;padding:10px;font-size:14px}.saisie-temps-form .column input[disabled],.saisie-temps-form .column select[disabled]{color:#7a7a7a;opacity:.85;background-color:#efefef}.time-inputs-wrapper{gap:8px;width:100%;display:flex}.time-inputs-wrapper input{width:100%}.commentaire-section{text-align:left;margin-top:12px;padding:0 12px}.commentaire-label{margin-bottom:6px;font-weight:700;display:block}.commentaire-section textarea{box-sizing:border-box;resize:vertical;border:1px solid #ccc;border-radius:10px;width:100%;padding:10px;font-family:inherit}.btn-validate{justify-content:center;gap:10px;width:100%;display:flex}.submit-section{margin-top:12px;padding:0 12px 16px}@media (max-width:720px){.saisie-temps-container form{width:100%;margin-top:0}}@media (max-width:480px){.saisie-temps-card{padding:20px}.saisie-temps-form .column{width:100%}}@media (min-width:1280px){.saisie-temps-container{height:100%;padding:15px}.saisie-temps-container form{width:100%}.commentaire-section textarea{width:60%;margin:0 auto;display:block}.commentaire-section{text-align:center}.container-header{flex-direction:row;justify-content:center;gap:50px;width:100%}.element{gap:10px}.saisie-temps-card{width:100%;max-width:none}.saisie-temps-form{flex-direction:column}.saisie-temps-form .column{flex-direction:row;justify-content:center;width:100%}}.time-group-container{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.time-input-box{box-sizing:border-box;background-color:#fff;border-radius:16px;flex:1;justify-content:center;align-items:center;padding:4px 12px;transition:box-shadow .2s;display:flex}.time-input-box:focus-within{box-shadow:0 0 0 2px #007bff}.time-select{appearance:none;color:#333;cursor:pointer;text-align:center;background:0 0;outline:none;margin:0;padding:6px;font-size:15px;font-weight:500;border:none!important;width:auto!important}.time-colon{color:#666;-webkit-user-select:none;user-select:none;margin:0 2px;font-weight:700}.time-divider{color:#888;font-size:14px;font-weight:600}.loading-overlay{z-index:9999;color:#fff;background:#00000073;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:1rem;display:flex;position:fixed;inset:0}.loading-spinner{border:4px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.confirm-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-modal{text-align:center;background:#fff;border-radius:10px;width:360px;padding:28px 32px;box-shadow:0 8px 32px #0000002e}.confirm-modal h3{margin:0 0 12px;font-size:1.15rem}.confirm-conflict-info{background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;margin:10px 0;padding:8px 14px;font-weight:600}.confirm-question{color:#555;margin:10px 0 20px}.confirm-actions{justify-content:center;gap:12px;display:flex}.btn-cancel{cursor:pointer;background:#f5f5f5;border:1px solid #ccc;border-radius:6px;padding:8px 22px}.btn-confirm{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:6px;padding:8px 22px;font-weight:600}.btn-confirm:hover{background:#dc2626}.btn-cancel:hover{background:#e5e5e5}.toast{z-index:9999;border-radius:8px;align-items:center;gap:10px;padding:14px 24px;font-size:.95rem;font-weight:600;animation:.3s slideUp;display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000026}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(16px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.planning-page{background-color:#f3eadc;flex-direction:column;align-items:center;min-height:calc(100vh - 70px);padding:40px 20px;display:flex}.planning-page h1{text-align:center;color:#0f265c;margin-bottom:30px;font-size:28px}.planning-encarts-wrapper{flex-wrap:wrap;justify-content:center;gap:20px;width:100%;max-width:700px;display:flex}.planning-encart{box-sizing:border-box;background-color:#fff;border:1px solid #ddd;border-radius:8px;width:300px;padding:20px}.planning-encart-btn{cursor:pointer;color:#fff;background-color:#0f265c;border:none;border-radius:4px;width:100%;padding:8px 16px}@media (max-width:680px){.planning-encart{width:100%}.planning-page h1{font-size:22px}}.gestion-planning-container{background-color:#f3eadc;min-height:100vh;padding:20px}.gestion-planning-content{background:#fff;border-radius:12px;max-width:800px;margin:0 auto;padding:30px;box-shadow:0 2px 8px #0000001a}.page-header{border-bottom:2px solid #e0e0e0;margin-bottom:30px;padding-bottom:15px}.page-header h1{color:#0f265c;margin:0;font-size:28px;font-weight:600}.planning-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:#555;font-size:14px;font-weight:600}.form-group input,.form-group select{border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:15px;transition:all .2s}.form-group input:focus,.form-group select:focus{border-color:#0bb2ff;outline:none;box-shadow:0 0 0 3px #0bb2ff1a}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.users-checkbox-list{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;max-height:250px;padding:12px;overflow-y:auto}.checkbox-item{cursor:pointer;border-radius:6px;justify-content:flex-start;align-items:center;gap:10px;padding:10px;transition:background-color .2s;display:flex}.checkbox-item:hover{background-color:#f0f0f0}.checkbox-item input[type=radio],.checkbox-item input[type=checkbox]{cursor:pointer;accent-color:#0bb2ff;border:none;flex-shrink:0;height:18px;margin:0;padding:0;width:18px!important}.checkbox-item span{color:#333;text-align:left;white-space:nowrap;font-size:14px}.no-data{text-align:center;color:#999;padding:30px;font-size:14px;font-style:italic}.alert{border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:500}.alert-error{color:#c62828;background-color:#ffebee;border:1px solid #ef5350}.alert-success{color:#2e7d32;background-color:#e8f5e9;border:1px solid #66bb6a}.form-actions{border-top:1px solid #e0e0e0;gap:12px;margin-top:20px;padding-top:20px;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;flex:1;padding:10px 24px;font-family:inherit;font-size:15px;font-weight:500;transition:all .2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{color:#fff;background-color:#0bb2ff}.btn-primary:hover:not(:disabled){background-color:#008aca;box-shadow:0 4px 12px #0bb2ff4d}.btn-secondary{color:#fff;background-color:#f39519}.btn-secondary:hover:not(:disabled){background-color:#d87f0a;box-shadow:0 4px 12px #f395194d}@media (max-width:768px){.gestion-planning-container{padding:10px}.gestion-planning-content{padding:20px}.form-row{grid-template-columns:1fr}.page-header h1{font-size:22px}.form-actions{flex-direction:column}.btn{width:100%}}.users-checkbox-list::-webkit-scrollbar{width:8px}.users-checkbox-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.users-checkbox-list::-webkit-scrollbar-thumb{background:#0bb2ff;border-radius:4px}.users-checkbox-list::-webkit-scrollbar-thumb:hover{background:#008aca}.error-page{background-color:#f3eadc;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:calc(100vh - 70px);padding:40px 20px;display:flex}.error-page a{color:#0e255b;text-decoration:underline}.error-page a:hover{color:#164193}.extraction-page{background-color:#f3eadc;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 70px);padding:40px 20px;display:flex}.date-picker{display:flex}.custom-datepicker{text-align:center;padding:10px;font-size:12px}.card{background:#fff;border-radius:16px;width:900px;padding:32px;box-shadow:0 10px 30px #0000000d}h2{margin-bottom:24px;font-size:20px}h3{margin:24px 0 16px;font-size:16px}.filters-row{gap:24px;display:flex}.field{flex-direction:column;flex:1;gap:8px;display:flex}.user{margin-top:15px}.field.full{margin-top:20px}label{color:#374151;font-size:14px}input,select{cursor:pointer;border:1px solid #d1d5db;border-radius:10px;width:100%;padding:12px 14px;font-size:14px}.label-remove{justify-content:space-between;display:flex}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg fill='none' stroke='%236b7280' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px}.input-icon{width:100%}.input-icon .icon{opacity:.6;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.date-range{gap:12px;display:flex}hr{border:none;border-top:1px solid #e5e7eb;margin:20px 0}.export-types{gap:20px;display:flex}.export-card{text-align:center;cursor:pointer;border:2px solid #e5e7eb;border-radius:14px;flex:1;padding:24px;transition:all .2s}.export-card:hover{border-color:#3b82f6}input:focus,select:focus{border-color:#00f;outline:none;box-shadow:0 0 0 3px #00f3}.active{background:#eff6ff;border-color:#3b82f6}.export-icon{margin-bottom:8px;font-size:24px}.export-btn{color:#9ca3af;cursor:not-allowed;background:#e5e7eb;border:none;border-radius:12px;margin:32px auto 0;padding:14px 28px;font-size:15px;display:block}.export-btn-ok{cursor:pointer;background:#e5e7eb;border:none;border-radius:12px;margin:32px auto 0;padding:14px 28px;font-size:15px;display:block}.modal{flex-direction:column;justify-content:center;gap:20px;display:flex}.modal h1{text-align:left;padding:10px}.modal .button{width:100px;margin:0 auto 20px;padding:10px}.container{justify-content:space-between;font-family:sans-serif;display:flex}.switch{cursor:pointer;background:#fff;border-radius:25px;align-items:center;width:110px;height:32px;padding:4px;display:flex;position:relative;box-shadow:0 4px 12px #00000040}.slider{color:#000;z-index:2;background:linear-gradient(135deg,#f39519,#f39b27);border-radius:20px;justify-content:center;align-items:center;width:48px;height:24px;font-size:12px;font-weight:700;transition:all .3s;display:flex;position:absolute;left:4px}.slider.right{background:linear-gradient(135deg,#009fe3,#009fe3da);left:58px}.label{text-align:center;pointer-events:none;width:50%;font-size:12px;position:absolute}.label.left{left:0}.label.right{right:0}.blocage-container{box-sizing:border-box;background-color:#f3eadc;justify-content:center;align-items:center;min-height:100vh;padding:50px;display:flex}.blocage-card{background-color:#fff;border-radius:20px;flex-direction:column;gap:24px;width:100%;max-width:420px;padding:36px 40px;display:flex;box-shadow:5px 5px 10px #0000001f}.blocage-card h2{color:#2c2c2c;text-align:center;margin:0;font-size:1.25rem;font-weight:700}.blocage-field{flex-direction:column;gap:8px;display:flex}.blocage-field label{color:#555;font-size:.875rem;font-weight:600}.blocage-field input[type=date]{color:#333;box-sizing:border-box;cursor:pointer;background-color:#f9f9f9;border:none;border-radius:16px;outline:none;width:100%;padding:10px 14px;font-size:15px;transition:box-shadow .2s,background-color .2s;box-shadow:inset 0 1px 3px #00000014}.blocage-field input[type=date]:focus{background-color:#fff;box-shadow:0 0 0 2px #007bff4d,inset 0 1px 3px #0000000f}.blocage-actions{justify-content:center;display:flex}.blocage-btn{color:#fff;cursor:pointer;background-color:#2c2c2c;border:none;border-radius:16px;padding:11px 32px;font-size:.9rem;font-weight:600;transition:background-color .2s,transform .15s,box-shadow .2s;box-shadow:2px 4px 8px #00000026}.blocage-btn:hover{background-color:#444;transform:translateY(-1px);box-shadow:3px 6px 14px #0000002e}.blocage-btn:active{transform:translateY(0);box-shadow:1px 2px 4px #0000001f}@media (max-width:480px){.blocage-container{padding:24px 16px}.blocage-card{padding:28px 24px}.blocage-btn{width:100%}}.toast{z-index:9999;white-space:nowrap;border-radius:16px;align-items:center;gap:10px;padding:14px 24px;font-size:.95rem;font-weight:600;animation:.3s slideUp;display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000026}.toast--success{color:#fff;background:#22c55e}.toast--error{color:#fff;background:#ef4444}nav{z-index:10;box-sizing:border-box;background-color:#fff;justify-content:space-between;align-items:center;width:100%;height:80px;padding:0 20px;display:flex;position:sticky;top:0}.container-logo{object-fit:contain;height:100%;max-height:100%}.container-logo .navbar-logo{object-fit:contain;z-index:10;height:80px;max-height:80px}.navbar-right{align-items:center;gap:12px;display:flex}.navbar-user{color:var(--bleu-fonce,#1a2e4a);white-space:nowrap;font-size:14px;font-weight:700}.navbar-links ul{gap:20px;margin:0;padding:0;list-style:none;display:flex}.navbar-links ul a{color:var(--bleu-fonce,#1a2e4a);text-decoration:none;position:relative}.navbar-links ul a:after{content:"";background-color:var(--orange,#f07c00);width:0;height:2px;transition:width .3s;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.navbar-links ul a:hover:after{width:100%}.navbar-links .dropdown{position:relative}.navbar-links .dropdown .dropdown-toggle{color:var(--bleu-fonce,#1a2e4a);cursor:pointer;padding:0;text-decoration:none;position:relative}.navbar-links .dropdown .dropdown-toggle:after{content:"";background-color:var(--orange,#f07c00);width:0;height:2px;transition:width .3s;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.navbar-links .dropdown:hover .dropdown-toggle:after{width:100%}.navbar-links .dropdown .dropdown-menu{border:1px solid var(--background,#eef0f2);z-index:1000;scrollbar-width:thin;background:#fff;flex-direction:column;min-width:100px;max-height:250px;margin:0;padding:0 0 10px;list-style:none;display:flex;position:absolute;top:calc(100% + 10px);left:0;overflow-y:scroll;box-shadow:0 6px 20px #00000014}.navbar-links .dropdown .dropdown-menu li{margin:0}.navbar-links .dropdown .dropdown-menu li a{color:var(--bleu-fonce,#1a2e4a);text-align:center;padding:5px 16px;text-decoration:none;display:block;position:relative}.navbar-links .dropdown .dropdown-menu li a:after{content:"";background-color:var(--orange,#f07c00);width:0;height:2px;transition:width .3s;position:absolute;bottom:4px}.navbar-links .dropdown .dropdown-menu li a:hover:after{width:calc(100% - 32px)}.burger{color:var(--bleu-fonce,#1a2e4a);cursor:pointer;background:0 0;border:none;font-size:30px;display:none}@media (max-width:768px){.burger{display:block}.navbar-links{border-top:1px solid var(--background,#eef0f2);background-color:#fff;flex-direction:column;width:100%;display:none;position:absolute;top:80px;right:0}.navbar-links.open{display:flex}.navbar-links ul{flex-direction:column;gap:15px;padding:20px}.navbar-links ul li{text-align:center}.navbar-links .dropdown .dropdown-menu{box-shadow:none;border:none;min-width:0;max-height:250px;padding:0;position:static;overflow-y:scroll}.navbar-links .dropdown .dropdown-menu li a{padding:10px 24px}}
