*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;max-width:100vw}#root{width:100%;min-height:100vh;overflow-x:hidden;max-width:100vw}.sidebar{width:280px;background:#1a1a1a;color:#fff;display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;box-shadow:4px 0 20px #0000004d;z-index:1000;transition:width .3s ease}.sidebar.collapsed{width:70px}.toggle-btn{position:absolute;top:1rem;right:-15px;width:30px;height:30px;background:#117865;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1001;box-shadow:0 2px 8px #0003;transition:all .3s ease}.toggle-btn:hover{background:#0a5045;transform:scale(1.1)}.toggle-btn svg{width:18px;height:18px;color:#fff}.sidebar-logo{padding:1rem 1.5rem;background:#1a1a1a;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.1);transition:padding .3s ease}.sidebar.collapsed .sidebar-logo{padding:.75rem .5rem}.logo-image{max-width:100%;height:auto;max-height:45px;object-fit:contain;transition:all .3s ease}.sidebar.collapsed .logo-image{max-height:35px}.sidebar-header{padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.2);overflow:hidden;transition:padding .3s ease}.sidebar.collapsed .sidebar-header{padding:0;height:0;border:none}.sidebar-header h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;color:#fff;white-space:nowrap;opacity:1;transition:opacity .3s ease}.sidebar.collapsed .sidebar-header h2{opacity:0}.user-info{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff1a;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.sidebar.collapsed .user-info{opacity:0;visibility:hidden}.user-icon{width:24px;height:24px;color:#fff;flex-shrink:0}.user-name{font-size:.85rem;font-weight:500;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav{flex:1;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem;overflow-y:auto;transition:padding .3s ease}.sidebar.collapsed .sidebar-nav{padding:.75rem .5rem}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;color:#fffc;text-decoration:none;border-radius:8px;font-weight:500;font-size:.9rem;transition:all .2s ease;position:relative;white-space:nowrap;justify-content:flex-start}.sidebar.collapsed .nav-link{justify-content:center;padding:.65rem .5rem}.nav-link:hover{background:#ffffff1a;color:#fff;transform:translate(4px)}.sidebar.collapsed .nav-link:hover{transform:translate(0)}.nav-link.active{background:#ffffff26;color:#fff;font-weight:600}.nav-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:70%;background:#fff;border-radius:0 4px 4px 0}.nav-link.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.nav-link.disabled:hover{background:transparent;color:#fffc;transform:none}.nav-link svg{width:20px;height:20px;flex-shrink:0}.nav-link span{opacity:1;transition:opacity .3s ease}.sidebar.collapsed .nav-link span{opacity:0;width:0;overflow:hidden}.sidebar-footer{padding:.75rem 1rem;border-top:1px solid rgba(255,255,255,.2);transition:padding .3s ease}.sidebar.collapsed .sidebar-footer{padding:.75rem .5rem}.logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.sidebar.collapsed .logout-btn{padding:.65rem}.logout-btn:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-2px)}.logout-btn svg{width:20px;height:20px;flex-shrink:0}.logout-btn span{opacity:1;transition:opacity .3s ease}.sidebar.collapsed .logout-btn span{opacity:0;width:0;overflow:hidden}@media(max-width:1024px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}}@media(max-width:768px){.sidebar{width:100%;max-width:280px}}.layout{display:flex;min-height:100vh;background-color:#f7fafc}.main-content{flex:1;padding:2rem;margin-left:280px;transition:margin-left .3s ease}.main-content.sidebar-collapsed{margin-left:70px}.main-content.no-padding{padding:0;height:100vh;overflow:hidden}@media(max-width:1024px){.main-content{margin-left:0;padding:1.5rem}}@media(max-width:768px){.main-content{padding:1rem}}.home-page{max-width:1200px;margin:0 auto}.welcome-section{background:#fff;padding:3rem;border-radius:20px;box-shadow:0 4px 20px #00000014;margin-bottom:2rem}.welcome-section h1{color:#2d3748;margin:0 0 .5rem;font-size:2.5rem;font-weight:700}.welcome-subtitle{color:#718096;margin:0 0 1.5rem;font-size:1.2rem}.new-project-btn{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;border-radius:12px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #1178654d}.new-project-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #11786566}.new-project-btn svg{width:24px;height:24px}.info-section{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014}.info-section h2{margin:0 0 1.5rem;color:#2d3748;font-size:1.5rem;font-weight:600;padding-bottom:1rem;border-bottom:2px solid #117865}.info-grid{display:grid;gap:1rem}.info-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f7fafc;border-radius:12px;border:1px solid #e2e8f0}.info-label{color:#718096;font-weight:500;font-size:.95rem}.info-value{color:#2d3748;font-weight:600;font-size:1rem}.companies-section{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014}.companies-section h2{margin:0 0 1.5rem;color:#2d3748;font-size:1.5rem;font-weight:600;padding-bottom:1rem;border-bottom:2px solid #117865}.companies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.company-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:12px;padding:1rem;transition:all .3s ease;cursor:pointer}.company-card:hover{border-color:#117865;transform:translateY(-4px);box-shadow:0 8px 20px #11786533}.company-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #cbd5e0}.company-icon{width:40px;height:40px;background:linear-gradient(135deg,#117865,#0a5045);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.company-icon svg{width:22px;height:22px;color:#fff}.company-info{flex:1}.company-refresh-btn{width:32px;height:32px;border:none;border-radius:8px;background:#1178651a;color:#117865;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease}.company-refresh-btn:hover:not(:disabled){background:#117865;color:#fff;box-shadow:0 4px 12px #1178654d}.company-refresh-btn:disabled{cursor:not-allowed;opacity:.7}.company-refresh-btn svg{width:16px;height:16px}.company-refresh-btn.refreshing svg{animation:spin 1s linear infinite}.company-info h3{margin:0 0 .35rem;color:#1a202c;font-size:1rem;font-weight:700;line-height:1.3}.company-siren{margin:0;color:#718096;font-size:.8rem;font-family:Courier New,monospace;font-weight:500}.exercices-list h4{margin:0 0 .65rem;color:#4a5568;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.exercices-grid{display:flex;flex-wrap:wrap;gap:.5rem}.exercice-badge{padding:.4rem .75rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border-radius:6px;font-size:.8rem;font-weight:600;box-shadow:0 2px 6px #1178654d}.company-last-import{margin:.75rem 0 0;padding-top:.65rem;border-top:1px solid #e2e8f0;color:#a0aec0;font-size:.7rem;font-style:italic}.import-result-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.import-result-modal{background:#fff;border-radius:16px;padding:2rem;max-width:420px;width:90%;text-align:center;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.import-result-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.import-result-icon.success{background:#e6fffa;color:#117865}.import-result-icon.error{background:#fff5f5;color:#e53e3e}.import-result-icon svg{width:32px;height:32px}.import-result-modal h3{margin:0 0 .5rem;color:#2d3748;font-size:1.25rem;font-weight:700}.import-result-company{margin:0 0 .75rem;color:#718096;font-size:1rem}.import-result-details{margin:0 0 1.5rem;color:#117865;font-size:1.1rem;font-weight:600}.import-result-details.error{color:#e53e3e;font-size:.9rem;font-weight:400}.import-result-close-btn{padding:.75rem 2rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.import-result-close-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1178654d}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.new-client-btn{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#eac900,#c9a800);color:#1a202c;border:none;border-radius:12px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #eac9004d}.new-client-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #eac90066}.new-client-btn svg{width:24px;height:24px}.clients-section{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014}.clients-section h2{margin:0 0 1.5rem;color:#2d3748;font-size:1.5rem;font-weight:600;padding-bottom:1rem;border-bottom:2px solid #117865}.clients-list{display:flex;flex-direction:column;gap:2rem}.client-group{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #bae6fd;border-radius:16px;padding:1.5rem;transition:all .3s ease}.client-group:hover{border-color:#38bdf8;box-shadow:0 4px 16px #38bdf833}.client-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #7dd3fc}.client-header h3{margin:0;color:#0c4a6e;font-size:1.5rem;font-weight:700;flex:1}.client-code{padding:.5rem 1rem;background:#0ea5e91a;color:#0369a1;border-radius:8px;font-size:.9rem;font-weight:600;font-family:Courier New,monospace}.client-count{padding:.5rem 1rem;background:#eac900;color:#1a202c;border-radius:8px;font-size:.9rem;font-weight:600}.delete-client-btn{width:36px;height:36px;border:none;border-radius:8px;background:#ef44441a;color:#dc2626;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease;margin-left:auto}.delete-client-btn:hover{background:#dc2626;color:#fff;box-shadow:0 4px 12px #dc26264d;transform:translateY(-2px)}.delete-client-btn svg{width:20px;height:20px}.no-clients-message{text-align:center;padding:3rem 2rem;color:#718096;font-size:1.1rem}.no-companies-message{text-align:center;padding:2rem;background:#fff;border:2px dashed #cbd5e0;border-radius:12px;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.no-companies-message p{margin:0;color:#718096}.hint-text{font-size:.9rem;font-style:italic;color:#a0aec0}.company-card.draggable{cursor:move}.company-card.draggable:active{opacity:.5;cursor:grabbing}.company-info h4{margin:0 0 .35rem;color:#1a202c;font-size:1rem;font-weight:700;line-height:1.3}.exercices-list h5{margin:0 0 .65rem;color:#4a5568;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.client-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.client-modal{background:#fff;border-radius:16px;max-width:500px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.client-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0}.client-modal-header h3{margin:0;color:#2d3748;font-size:1.5rem;font-weight:700}.close-modal-btn{width:36px;height:36px;border:none;background:#0000000d;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-modal-btn:hover:not(:disabled){background:#0000001a}.close-modal-btn:disabled{cursor:not-allowed;opacity:.5}.close-modal-btn svg{width:20px;height:20px;color:#4a5568}.client-modal-body{padding:2rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;color:#4a5568;font-weight:600;font-size:.95rem}.form-group input{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;transition:all .2s ease;box-sizing:border-box}.form-group input:disabled{background:#f7fafc;cursor:not-allowed;opacity:.7}.client-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;border-top:1px solid #e2e8f0}.cancel-btn{padding:.75rem 1.5rem;background:#fff;color:#4a5568;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-btn:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0}.cancel-btn:disabled{cursor:not-allowed;opacity:.5}.create-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #1178654d}.create-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #11786566}.create-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media(max-width:768px){.welcome-section{padding:2rem}.welcome-section h1{font-size:2rem}.action-buttons{flex-direction:column}.new-project-btn,.new-client-btn{width:100%;justify-content:center}.info-item{flex-direction:column;align-items:flex-start;gap:.5rem}.companies-grid{grid-template-columns:1fr}.company-header{flex-direction:column;align-items:center;text-align:center}.client-header{flex-direction:column;align-items:flex-start}.client-modal{width:95%}.client-modal-header,.client-modal-body,.client-modal-footer{padding:1.5rem}.client-modal-footer{flex-direction:column}.cancel-btn,.create-btn{width:100%}}.new-project-container{padding:.5rem 2rem;max-width:1400px;margin:0 auto;height:calc(100vh - 80px);overflow-y:auto;position:relative}.powerbi-notification{position:fixed;top:20px;right:20px;z-index:9999;min-width:400px;max-width:500px;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 10px 30px #0003;animation:slideInRight .4s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.powerbi-notification.refreshing{background:linear-gradient(135deg,#117865,#0a5045);color:#fff}.powerbi-notification.success{background:linear-gradient(135deg,#38a169,#2f855a);color:#fff}.powerbi-notification .notification-content{display:flex;align-items:flex-start;gap:1rem}.powerbi-notification .notification-content svg{width:32px;height:32px;flex-shrink:0;stroke-width:2.5}.powerbi-notification .notification-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.powerbi-notification strong{display:block;font-size:1.125rem;font-weight:700;margin-bottom:.25rem;color:#fff}.powerbi-notification p{margin:0;font-size:.9rem;color:#fffffff2;line-height:1.4}.powerbi-notification .notification-close{position:absolute;top:1rem;right:1rem;background:#fff3;border:none;border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0}.powerbi-notification .notification-close:hover{background:#ffffff4d;transform:scale(1.1)}.powerbi-notification .notification-close svg{width:18px;height:18px;color:#fff}.new-project-header{margin-bottom:.75rem}.new-project-header h1{font-size:1.75rem;font-weight:700;color:#1a202c;margin-bottom:.25rem}.new-project-subtitle{font-size:.95rem;color:#718096}.connectors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:.75rem}.connector-card{background:#fff;border-radius:10px;padding:1.25rem;box-shadow:0 1px 3px #0000001a;border:2px solid transparent;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center}.connector-card:hover{border-color:#117865;transform:translateY(-4px);box-shadow:0 10px 20px #11786533}.connector-icon{width:60px;height:60px;background:linear-gradient(135deg,#117865,#0a5045);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.connector-icon svg{width:30px;height:30px;color:#fff}.connector-logo{width:150px;height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.connector-logo img{max-width:100%;max-height:100%;object-fit:contain}.connector-card h3{font-size:1.15rem;font-weight:700;color:#1a202c;margin-bottom:.5rem}.connector-card p{font-size:.9rem;color:#718096;margin-bottom:1rem;line-height:1.4}.connector-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.connector-btn svg{width:20px;height:20px}.connector-btn:hover{transform:scale(1.05)}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease-in}.modal-content{background:#fff;border-radius:16px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.modal-header h2{font-size:1.5rem;font-weight:700;color:#1a202c}.close-btn{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:8px;transition:background-color .2s ease}.close-btn:hover{background-color:#f7fafc}.close-btn svg{width:24px;height:24px;color:#718096}.form-group label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#4a5568;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.form-group label svg{width:18px;height:18px;color:#117865}.form-group input{width:100%;padding:.75rem 1rem;font-size:1rem;border:2px solid #e2e8f0;border-radius:8px;transition:all .2s ease;box-sizing:border-box}.error-message{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background-color:#fff5f5;border:1px solid #fc8181;border-radius:8px;color:#c53030;margin-bottom:1.5rem}.error-message svg{width:20px;height:20px;flex-shrink:0}.modal-actions{display:flex;gap:1rem;margin-top:2rem}.cancel-btn{flex:1;padding:.75rem 1.5rem;background:#fff;color:#718096;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-btn:hover:not(:disabled){background-color:#f7fafc;border-color:#cbd5e0}.cancel-btn:disabled{opacity:.5;cursor:not-allowed}.confirm-btn{flex:1;padding:.75rem 1.5rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.confirm-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #11786566}.confirm-btn:disabled{opacity:.5;cursor:not-allowed}.dossiers-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.dossiers-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:2rem}.dossiers-header h2{font-size:1.5rem;font-weight:700;color:#1a202c}.search-box{position:relative;flex:1;max-width:400px}.search-box svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#718096}.search-box input{width:100%;padding:.75rem 1rem .75rem 3rem;font-size:1rem;border:2px solid #e2e8f0;border-radius:8px;transition:all .2s ease}.search-box input:focus{outline:none;border-color:#117865;box-shadow:0 0 0 3px #1178651a}.dossiers-list{max-height:500px;overflow-y:auto;margin-bottom:2rem}.dossier-item{display:flex;align-items:center;gap:1rem;padding:1.25rem;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;cursor:pointer;transition:all .2s ease}.dossier-item:hover{border-color:#117865;background-color:#f7fafc}.dossier-item.selected{border-color:#117865;background-color:#edf2f7;box-shadow:0 0 0 3px #1178651a}.dossier-icon{width:50px;height:50px;background:linear-gradient(135deg,#117865,#0a5045);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dossier-icon svg{width:28px;height:28px;color:#fff}.dossier-info{flex:1}.dossier-info h4{font-size:1.125rem;font-weight:600;color:#1a202c;margin-bottom:.25rem}.dossier-info p{font-size:.875rem;color:#718096;font-family:Courier New,monospace}.dossier-description{display:block;font-size:.875rem;color:#4a5568;margin-top:.5rem}.selected-check{width:32px;height:32px;background:#117865;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.selected-check svg{width:20px;height:20px;color:#fff}.dossiers-actions{display:flex;gap:1rem;justify-content:flex-end}.no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:#718096}.no-results svg{width:64px;height:64px;margin-bottom:1rem;opacity:.5}.no-results p{font-size:1.125rem;font-weight:500}.pagination{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin:2rem 0;padding:1rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:12px}.pagination-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff;color:#117865;border:2px solid #117865;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #1178651a;min-width:120px;justify-content:center}.pagination-btn:hover:not(:disabled){background:linear-gradient(135deg,#117865,#0a5045);color:#fff;transform:translateY(-2px);box-shadow:0 6px 12px #1178654d}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:#e2e8f0;color:#a0aec0;border-color:#e2e8f0;transform:none}.pagination-info{font-size:1rem;font-weight:600;color:#4a5568;padding:.5rem 1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;min-width:150px;text-align:center}.results-info{font-size:.95rem;color:#718096;padding:.75rem 1.25rem;background:#f7fafc;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid #117865;font-weight:500}.exercice-section{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 4px 6px #0000001a;max-width:800px;margin:0 auto}.exercice-header{text-align:center;margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.exercice-header h2{font-size:2rem;font-weight:700;color:#1a202c;margin-bottom:.75rem;background:linear-gradient(135deg,#117865,#0a5045);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.exercice-header p{font-size:1.125rem;color:#718096;font-weight:500}.exercice-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2.5rem}.exercice-item{display:flex;align-items:center;justify-content:space-between;padding:2rem 1.75rem;border:3px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#fff,#f7fafc);position:relative;overflow:hidden}.exercice-item:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#117865,#0a5045);transform:scaleX(0);transition:transform .3s ease}.exercice-item:hover{border-color:#117865;transform:translateY(-4px);box-shadow:0 12px 24px #11786533}.exercice-item:hover:before{transform:scaleX(1)}.exercice-item.selected{border-color:#117865;background:linear-gradient(135deg,#edf2f7,#e6fffa);box-shadow:0 8px 16px #11786540;transform:translateY(-2px)}.exercice-item.selected:before{transform:scaleX(1);height:6px}.exercice-info{flex:1}.exercice-info h4{font-size:1.75rem;font-weight:700;color:#1a202c;margin-bottom:.5rem;letter-spacing:-.02em}.exercice-info p{font-size:1rem;color:#718096;font-weight:500}.exercice-item .selected-check{width:40px;height:40px;background:linear-gradient(135deg,#117865,#0a5045);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 8px #11786566;animation:scaleIn .3s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.exercice-item .selected-check svg{width:24px;height:24px;color:#fff;stroke-width:3}.exercice-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:2rem;border-top:2px solid #e2e8f0}@media(max-width:768px){.new-project-container{padding:1rem}.new-project-header h1{font-size:1.5rem}.connectors-grid{grid-template-columns:1fr;gap:1rem}.modal-content{padding:1.5rem}.dossiers-header{flex-direction:column;align-items:stretch;gap:1rem}.search-box{max-width:100%}.dossiers-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}.pagination{flex-direction:column;gap:1rem}.pagination-btn{width:100%}.exercice-section{padding:1.5rem}.exercice-list{grid-template-columns:1fr}.exercice-header h2{font-size:1.5rem}.exercice-actions{flex-direction:column}.exercice-actions .cancel-btn,.exercice-actions .confirm-btn{width:100%}}.loading-screen{position:fixed;inset:0;background:linear-gradient(135deg,#f7fafc,#edf2f7);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease-in}.loading-content{background:#fff;border-radius:20px;padding:3rem;max-width:500px;width:90%;box-shadow:0 20px 40px #00000026;text-align:center;animation:slideUp .4s ease-out}.loading-spinner{width:80px;height:80px;margin:0 auto 2rem;border:6px solid #e2e8f0;border-top-color:#eac900;border-right-color:#117865;border-radius:50%;animation:spin 1s linear infinite}.loading-content h2{font-size:1.75rem;font-weight:700;color:#1a202c;margin-bottom:1rem;background:linear-gradient(135deg,#117865,#0a5045);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.loading-message{font-size:1.125rem;color:#718096;margin-bottom:2rem;min-height:30px;font-weight:500}.progress-bar-container{width:100%;height:12px;background:#e2e8f0;border-radius:10px;overflow:hidden;margin-bottom:1rem;box-shadow:inset 0 2px 4px #0000001a}.progress-bar{height:100%;background:linear-gradient(90deg,#eac900,#117865);transition:width .5s ease;border-radius:10px;box-shadow:0 2px 8px #eac90066;position:relative;overflow:hidden}.progress-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:.95rem;color:#4a5568;font-weight:600;margin-top:.75rem}@media(max-width:768px){.loading-content{padding:2rem}.loading-content h2{font-size:1.5rem}.loading-spinner{width:60px;height:60px}}.connector-card.disabled{opacity:.6;cursor:not-allowed}.connector-card.disabled:hover{border-color:transparent;transform:none;box-shadow:0 1px 3px #0000001a}.connector-card.disabled .connector-icon{background:linear-gradient(135deg,#a0aec0,#718096)}.connector-card.disabled .connector-btn{display:none}.existing-connectors-section{margin-top:1rem;padding-top:1rem;border-top:2px solid #e2e8f0}.section-header-toggle{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:.5rem 0;transition:all .2s ease}.section-header-toggle:hover{opacity:.8}.section-header-toggle h2{font-size:1.4rem;font-weight:700;color:#1a202c;margin-bottom:.25rem}.section-header-toggle .section-subtitle{margin-bottom:0}.toggle-btn-section{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.toggle-btn-section:hover{background-color:#f7fafc}.toggle-btn-section svg{width:28px;height:28px;color:#117865}.existing-connectors-section h2{font-size:1.4rem;font-weight:700;color:#1a202c;margin-bottom:.5rem}.existing-connectors-list{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.existing-connector-card{background:#fff;border-radius:10px;padding:1rem 1.5rem;box-shadow:0 1px 3px #0000001a;border:2px solid #68d391;transition:all .3s ease;cursor:pointer;display:flex;align-items:center;gap:1rem}.existing-connector-card:hover{border-color:#117865;transform:translate(4px);box-shadow:0 4px 12px #11786533}.existing-connector-icon{width:45px;height:45px;background:linear-gradient(135deg,#68d391,#48bb78);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.existing-connector-icon svg{width:24px;height:24px;color:#fff}.existing-connector-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.existing-connector-info h3{font-size:1.05rem;font-weight:700;color:#1a202c;margin:0}.connector-url{font-size:.875rem;color:#718096;font-family:Courier New,monospace;margin:0}.connector-type-badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;width:fit-content;background-color:#e2e8f0;color:#4a5568}.connector-type-badge.acd{background-color:#ebf4ff;color:#3182ce}.connector-type-badge.pennylane{background-color:#f0fff4;color:#276749}.connector-status{font-size:.75rem;color:#48bb78;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.use-connector-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex-shrink:0}.use-connector-btn svg{width:20px;height:20px}.use-connector-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px #11786566}.file-upload-section{margin-top:1rem;padding-top:1rem;border-top:2px solid #e2e8f0}.file-upload-section h2{font-size:1.4rem;font-weight:700;color:#1a202c;margin-bottom:.5rem}.section-subtitle{font-size:.9rem;color:#718096;margin-bottom:1rem}.drop-zone{border:2px dashed #cbd5e0;border-radius:12px;padding:1.5rem 1rem;text-align:center;cursor:pointer;transition:all .3s ease;background-color:#f7fafc}.drop-zone:hover{border-color:#117865;background-color:#edf2f7}.drop-zone.dragging{border-color:#117865;background-color:#e6fffa;transform:scale(1.02)}.drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:.75rem}.upload-icon{width:40px;height:40px;color:#117865;opacity:.8}.drop-zone-text{color:#4a5568;font-size:.95rem;margin:0;font-weight:500}.files-section{margin-top:1rem}.files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.files-header h3{color:#2d3748;margin:0;font-size:1.05rem;font-weight:600}.files-actions{display:flex;gap:.75rem}.upload-btn{background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;padding:.5rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.upload-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #11786566}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.clear-btn{background-color:#fc8181;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.clear-btn:hover:not(:disabled){background-color:#f56565;transform:translateY(-2px);box-shadow:0 4px 12px #f5656566}.clear-btn:disabled{opacity:.6;cursor:not-allowed}.files-list{display:flex;flex-direction:column;gap:.75rem}.file-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f7fafc;border-radius:12px;border:1px solid #e2e8f0;transition:all .2s ease}.file-item:hover{background-color:#edf2f7;border-color:#cbd5e0;transform:translate(4px)}.file-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.file-icon{width:40px;height:40px;color:#117865;flex-shrink:0}.file-details{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1}.file-name{color:#2d3748;font-weight:600;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:#718096;font-size:.875rem}.file-date{color:#a0aec0;font-size:.8rem;font-style:italic}.progress-bar{width:100%;height:6px;background-color:#e2e8f0;border-radius:3px;overflow:hidden;position:relative;margin-top:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#117865,#eac900);transition:width .3s ease;border-radius:3px}.progress-text{position:absolute;top:-20px;right:0;font-size:.75rem;color:#117865;font-weight:600}.uploaded-files-section{margin-top:1.5rem;padding-top:1rem;border-top:2px solid #e2e8f0}.uploaded-files-section h3{color:#2d3748;margin:0 0 1rem;font-size:1.05rem;font-weight:600}.file-item.uploaded{background-color:#fff;border:2px solid #e2e8f0}.file-item.uploaded:hover{border-color:#cbd5e0;background-color:#f7fafc}.file-actions{display:flex;gap:.5rem}.action-btn{background-color:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.action-btn svg{width:24px;height:24px}.download-btn:hover{background-color:#bee3f8}.download-btn svg{color:#3182ce}.delete-btn:hover{background-color:#fed7d7}.delete-btn svg{color:#e53e3e}.remove-btn{background-color:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.remove-btn:hover{background-color:#fed7d7}.remove-btn svg{width:24px;height:24px;color:#e53e3e}.loading-companies{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;gap:1.5rem}.loading-companies p{margin:0;color:#117865;font-weight:600}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#117865;border-radius:50%;animation:spin .8s linear infinite}.siren-list{background-color:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:1rem}.siren-item{padding:1.25rem;background-color:#fff;border:2px solid #117865;border-radius:8px;transition:all .2s ease}.siren-item:hover{transform:translate(5px);box-shadow:0 4px 12px #11786533}.siren-header{display:flex;align-items:flex-start;gap:1rem}.siren-icon{width:32px;height:32px;color:#117865;flex-shrink:0;margin-top:.25rem}.siren-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.siren-number{font-size:1.1rem;font-weight:700;color:#117865;font-family:Courier New,monospace;letter-spacing:.05em}.company-name{font-size:1.15rem;font-weight:600;color:#2d3748;line-height:1.4}.files-summary{background-color:#edf2f7;border-radius:8px;padding:1rem;margin-bottom:1.5rem;text-align:center}.files-summary p{margin:0;color:#4a5568;font-size:.95rem}.files-summary strong{color:#117865;font-size:1.1rem}@media(max-width:768px){.file-upload-section{margin-top:3rem;padding-top:2rem}.drop-zone{padding:3rem 1.5rem}.upload-icon{width:60px;height:60px}.files-header{flex-direction:column;align-items:flex-start;gap:.75rem}.files-actions{width:100%;flex-direction:column}.upload-btn,.clear-btn{width:100%}.existing-connectors-section{margin-top:3rem;padding-top:2rem}.existing-connector-card{flex-direction:column;align-items:flex-start;gap:1rem}.use-connector-btn{width:100%;justify-content:center}}.pennylane-token-help{display:flex;gap:12px;padding:16px;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:24px}.pennylane-token-help svg{width:24px;height:24px;color:#2563eb;flex-shrink:0;margin-top:2px}.pennylane-token-help p{margin:0;font-size:.875rem;line-height:1.5;color:#1e40af}.pennylane-token-help strong{color:#1e3a8a;font-weight:600}.input-help{display:block;margin-top:6px;font-size:.75rem;color:#6b7280;font-style:italic}.modal-subtitle{margin:0;padding:0;font-size:.875rem;color:#6b7280;font-weight:400}.required{color:#ef4444;margin-left:4px}.fec-expertise-container{padding:0;margin:0;width:100%;height:100vh;display:flex;flex-direction:column;overflow:hidden}.error-message{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.5rem;background-color:#fff5f5;border:1px solid #fc8181;border-radius:8px;color:#c53030;margin-bottom:1.5rem}.error-message svg{width:24px;height:24px;flex-shrink:0}.error-message div{flex:1}.error-message p{margin:0 0 .5rem}.error-message p:last-child{margin-bottom:0}.error-help{font-size:.875rem;color:#e53e3e;font-weight:500;margin-top:.5rem}.no-data-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;flex:1}.no-data-message svg{width:64px;height:64px;color:#cbd5e0;margin-bottom:1rem}.no-data-message h3{font-size:1.5rem;font-weight:600;color:#2d3748;margin-bottom:.5rem}.no-data-message p{font-size:1rem;color:#718096}.powerbi-container{flex:1;width:100%;height:100%;background:#fff;overflow:hidden;position:relative}.powerbi-report{width:100%;height:100%;border:none}.pl-container{padding:.5rem 2rem;max-width:1600px;margin:0 auto;height:calc(100vh - 80px);overflow-y:auto}.pl-header{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;margin-bottom:.75rem}.pl-title-block{background:#fff;padding:.75rem 1rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;align-items:center}.pl-header-top{background:#fff;padding:.75rem 1.5rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.pl-header h1{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0;white-space:nowrap}.export-pdf-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #e53e3e4d}.export-excel-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#117865,#0d5f4f);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #1178654d}.pl-filters{display:flex;gap:1rem;align-items:flex-end;flex:1;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.3rem;flex:1;max-width:260px}.filter-group label{font-size:.75rem;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.03em}.filter-group select{padding:.5rem .75rem;border:1.5px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#2d3748;background:#fff;cursor:pointer;transition:all .2s ease}.filter-group select:hover{border-color:#117865}.filter-group select:focus{outline:none;border-color:#117865;box-shadow:0 0 0 3px #1178651a}.pl-content-wrapper{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;margin-bottom:1rem}.pl-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:1.25rem;overflow-x:auto}.pl-table{width:100%;min-width:800px}.pl-row{display:grid;grid-template-columns:2fr 1.2fr 1.2fr 1fr 1fr;gap:1rem;padding:.5rem .75rem;border-bottom:1px solid #e2e8f0;align-items:center;transition:background .2s ease}.pl-row:hover:not(.header):not(.pl-section-header){background:#f7fafc}.pl-row.header{font-weight:700;color:#1a202c;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #117865;padding:.65rem .75rem;position:sticky;top:0;z-index:10}.pl-row.level-0{font-weight:700;font-size:1rem;color:#117865;background:linear-gradient(135deg,#1178650d,#11786505)}.pl-row.level-1{padding-left:2rem;color:#4a5568}.pl-row.level-2{padding-left:3rem;font-style:italic;color:#718096}.pl-row.total{font-weight:700;background:linear-gradient(135deg,#1178651a,#1178650d);border-top:2px solid #117865;border-bottom:2px solid #117865;margin-top:.15rem;margin-bottom:.3rem}.pl-section-header{font-weight:700;font-size:1rem;color:#2d3748;background:linear-gradient(135deg,#edf2f7,#e2e8f0);padding:.65rem .75rem;margin-top:.5rem;margin-bottom:.3rem;border-left:4px solid #117865;text-transform:uppercase;letter-spacing:.05em;grid-column:1 / -1}.pl-label{font-weight:500}.pl-value{text-align:right;font-weight:500;font-family:Courier New,monospace;font-size:.95rem}.pl-row.total .pl-value,.pl-row.level-0 .pl-value{font-weight:700;font-size:1rem;color:#117865}.pl-value.positive{color:#38a169}.pl-value.negative{color:#e53e3e}.ratios-sidebar{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:1rem;height:fit-content;position:sticky;top:1rem}.ratios-sidebar h2{font-size:1rem;font-weight:700;color:#1a202c;margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:2px solid #117865}.ratios-list{display:flex;flex-direction:column;gap:.65rem}.ratio-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:8px;padding:.65rem .75rem;transition:all .3s ease;display:flex;flex-direction:column;gap:.35rem}.ratio-card:hover{border-color:#117865;transform:translate(4px);box-shadow:0 4px 12px #11786526}.ratio-label{font-size:.7rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.03em;line-height:1.2}.ratio-value{font-size:1.1rem;font-weight:700;color:#117865;font-family:Courier New,monospace;line-height:1}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.no-data-message{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:3rem;text-align:center;color:#718096;font-size:1.125rem}@media(max-width:1200px){.pl-row{grid-template-columns:2fr 1fr 1fr .8fr .8fr}}@media(max-width:968px){.pl-container,.pl-header{padding:1rem}.pl-header-top{flex-direction:column;align-items:flex-start;gap:1rem}.pl-header h1{font-size:1.5rem}.export-pdf-btn{width:100%;justify-content:center}.pl-filters{flex-direction:column;gap:1rem}.filter-group{max-width:100%}.pl-content-wrapper{grid-template-columns:1fr;gap:1rem}.ratios-sidebar{position:static}.ratios-list{flex-direction:row;flex-wrap:wrap;gap:.75rem}.ratio-card{flex:1;min-width:150px}.pl-table-container{padding:1rem;overflow-x:auto}.pl-row{font-size:.875rem}.pl-value{font-size:.85rem}.ratio-value{font-size:1.5rem}}@media(max-width:768px){.ratios-list{flex-direction:column}.ratio-card{min-width:auto}.pl-row{grid-template-columns:1fr;gap:.5rem;padding:1rem}.pl-row.header{display:none}.pl-label:after{content:":"}.pl-value{text-align:left;padding-left:1rem}.pl-value:before{content:attr(data-label);font-weight:600;display:block;color:#718096;font-size:.75rem;margin-bottom:.25rem}.pl-section-header{font-size:1rem;padding:.75rem}}.sig-container{padding:.5rem 2rem;max-width:1600px;margin:0 auto;height:calc(100vh - 80px);overflow-y:auto}.sig-header{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;margin-bottom:.75rem}.sig-title-block{background:#fff;padding:.75rem 1rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;align-items:center}.sig-header-top{background:#fff;padding:.75rem 1.5rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.sig-header h1{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0;white-space:nowrap}.sig-filters{display:flex;gap:1rem;align-items:flex-end;flex:1;flex-wrap:wrap}.sig-content-wrapper{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;margin-bottom:1rem}.sig-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:1.25rem;overflow-x:auto}.sig-table{width:100%;min-width:900px}.sig-row{display:grid;grid-template-columns:2fr 1.2fr .6fr;gap:.75rem;padding:.5rem .75rem;border-bottom:1px solid #e2e8f0;align-items:center;transition:background .2s ease}.sig-table.with-comparison .sig-row{grid-template-columns:2fr 1fr .5fr 1fr .5fr .8fr .7fr}.sig-row:hover:not(.header):not(.sig-section-header){background:#f7fafc}.sig-row.header{font-weight:700;color:#1a202c;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #117865;padding:.65rem .75rem;position:sticky;top:0;z-index:10}.sig-row.level-0{font-weight:700;font-size:1rem;color:#117865;background:linear-gradient(135deg,#1178650d,#11786505)}.sig-row.level-1{padding-left:2rem;color:#4a5568}.sig-row.level-2{padding-left:3rem;font-style:italic;color:#718096}.sig-row.total{font-weight:700;background:linear-gradient(135deg,#1178651a,#1178650d);border-top:2px solid #117865;border-bottom:2px solid #117865;margin-top:.15rem;margin-bottom:.3rem}.sig-section-header{font-weight:700;font-size:1rem;color:#2d3748;background:linear-gradient(135deg,#edf2f7,#e2e8f0);padding:.65rem .75rem;margin-top:.5rem;margin-bottom:.3rem;border-left:4px solid #117865;text-transform:uppercase;letter-spacing:.05em;grid-column:1 / -1}.sig-label{font-weight:500}.sig-value{text-align:right;font-weight:500;font-family:Courier New,monospace;font-size:.95rem}.sig-pct{text-align:right;font-weight:500;font-family:Courier New,monospace;font-size:.85rem;color:#718096}.sig-row.total .sig-value,.sig-row.level-0 .sig-value{font-weight:700;font-size:1rem;color:#117865}.sig-row.total .sig-pct,.sig-row.level-0 .sig-pct{font-weight:700;color:#117865}.sig-value.positive{color:#38a169}.sig-value.negative{color:#e53e3e}.ratio-pct{font-size:.7rem;font-weight:500;color:#a0aec0;font-style:italic}@media(max-width:1200px){.sig-row{grid-template-columns:2fr 1fr .5fr}.sig-table.with-comparison .sig-row{grid-template-columns:2fr .8fr .5fr .8fr .5fr .7fr .6fr}}@media(max-width:968px){.sig-container{padding:1rem}.sig-header{grid-template-columns:1fr}.sig-header-top{flex-direction:column;align-items:flex-start;gap:1rem}.sig-filters{flex-direction:column;gap:1rem}.sig-content-wrapper{grid-template-columns:1fr;gap:1rem}.sig-table-container{padding:1rem;overflow-x:auto}.sig-row{font-size:.875rem}.sig-value{font-size:.85rem}}.comparaison-sig-container{padding:.5rem 2rem;max-width:1600px;margin:0 auto;height:calc(100vh - 80px);overflow-y:auto}.comparaison-sig-header{background:#fff;padding:.75rem 1.5rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;margin-bottom:.75rem}.comparaison-sig-header h1{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 .75rem}.comparaison-sig-filters{display:flex;gap:1.5rem;align-items:flex-start;flex-wrap:wrap}.comparaison-sig-filters .filter-group-pair{display:flex;gap:.75rem;align-items:flex-end;padding:.5rem .75rem;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.comparaison-sig-filters .filter-group-pair .pair-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#117865;margin-bottom:.25rem}.comparaison-sig-filters .filter-group{display:flex;flex-direction:column;gap:.25rem}.comparaison-sig-filters .filter-group label{font-size:.75rem;font-weight:600;color:#4a5568}.comparaison-sig-filters .filter-group select{padding:.4rem .6rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;background:#fff;min-width:160px}.export-pdf-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #e53e3e4d;align-self:flex-end}.export-pdf-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e53e3e66;background:linear-gradient(135deg,#c53030,#9b2c2c)}.export-pdf-btn svg{width:16px;height:16px}.export-excel-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#117865,#0d5f4f);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #1178654d;align-self:flex-end}.export-excel-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #11786566;background:linear-gradient(135deg,#0d5f4f,#094a3d)}.export-excel-btn svg{width:16px;height:16px}.comparaison-sig-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:1.25rem;overflow-x:auto;margin-bottom:1rem}.comparaison-sig-table{width:100%;min-width:800px}.comparaison-sig-row{display:grid;grid-template-columns:2fr 1.2fr 1.2fr 1fr .7fr;gap:.75rem;padding:.5rem .75rem;border-bottom:1px solid #e2e8f0;align-items:center;transition:background .2s ease}.comparaison-sig-row:hover:not(.header):not(.comparaison-sig-section-header){background:#f7fafc}.comparaison-sig-row.header{font-weight:700;color:#1a202c;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #117865;padding:.65rem .75rem;position:sticky;top:0;z-index:10}.comparaison-sig-row.header .sig-value{font-size:.85rem;font-family:inherit}.comparaison-sig-row.level-0{font-weight:700;font-size:1rem;color:#117865;background:linear-gradient(135deg,#1178650d,#11786505)}.comparaison-sig-row.level-1{padding-left:2rem;color:#4a5568}.comparaison-sig-row.level-2{padding-left:3rem;font-style:italic;color:#718096}.comparaison-sig-row.total{font-weight:700;background:linear-gradient(135deg,#1178651a,#1178650d);border-top:2px solid #117865;border-bottom:2px solid #117865;margin-top:.15rem;margin-bottom:.3rem}.comparaison-sig-section-header{font-weight:700;font-size:1rem;color:#2d3748;background:linear-gradient(135deg,#edf2f7,#e2e8f0);padding:.65rem .75rem;margin-top:.5rem;margin-bottom:.3rem;border-left:4px solid #117865;text-transform:uppercase;letter-spacing:.05em;grid-column:1 / -1}.comparaison-sig-label{font-weight:500}.comparaison-sig-value{text-align:right;font-weight:500;font-family:Courier New,monospace;font-size:.95rem}.comparaison-sig-row.total .comparaison-sig-value,.comparaison-sig-row.level-0 .comparaison-sig-value{font-weight:700;font-size:1rem;color:#117865}.comparaison-sig-value.positive{color:#38a169}.comparaison-sig-value.negative{color:#e53e3e}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#718096}@media(max-width:1200px){.comparaison-sig-row{grid-template-columns:2fr 1fr 1fr .8fr .6fr}}@media(max-width:968px){.comparaison-sig-container{padding:1rem}.comparaison-sig-filters{flex-direction:column;gap:1rem}.comparaison-sig-filters .filter-group-pair{flex-direction:column;width:100%}.comparaison-sig-table-container{padding:1rem;overflow-x:auto}.comparaison-sig-row{font-size:.875rem}.comparaison-sig-value{font-size:.85rem}}.sig-mensuel-container{padding:.5rem 2rem;max-width:1800px;margin:0 auto;height:calc(100vh - 80px);overflow-y:auto}.sig-mensuel-header{background:#fff;padding:.75rem 1.5rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;margin-bottom:.75rem}.sig-mensuel-header h1{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 .5rem}.sig-mensuel-header .sig-filters{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.sig-mensuel-header .filter-group{display:flex;flex-direction:column;gap:.2rem}.sig-mensuel-header .filter-group label{font-size:.75rem;font-weight:600;color:#4a5568}.sig-mensuel-header .filter-group select{padding:.4rem .6rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;background:#fff;min-width:150px}.sig-mensuel-header .export-pdf-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #e53e3e4d}.sig-mensuel-header .export-pdf-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e53e3e66;background:linear-gradient(135deg,#c53030,#9b2c2c)}.sig-mensuel-header .export-pdf-btn svg{width:16px;height:16px}.sig-mensuel-header .export-excel-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#117865,#0d5f4f);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #1178654d}.sig-mensuel-header .export-excel-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #11786566;background:linear-gradient(135deg,#0d5f4f,#094a3d)}.sig-mensuel-header .export-excel-btn svg{width:16px;height:16px}.sig-mensuel-toolbar{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.sig-mensuel-toolbar .toggle-detail-btn{padding:.35rem .75rem;border:1px solid #117865;border-radius:6px;background:#fff;color:#117865;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.sig-mensuel-toolbar .toggle-detail-btn.active,.sig-mensuel-toolbar .toggle-detail-btn:hover{background:#117865;color:#fff}.sig-mensuel-toolbar .unit-label{font-size:.75rem;color:#718096;font-style:italic}.sig-mensuel-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:.75rem;overflow-x:auto;margin-bottom:1rem}.sig-mensuel-table{width:100%;min-width:1200px}.sig-mensuel-row{display:grid;grid-template-columns:minmax(140px,1.8fr) repeat(12,1fr) 1.2fr;gap:0;padding:.25rem 0;border-bottom:1px solid #edf2f7;align-items:center;transition:background .15s ease}.sig-mensuel-row:hover:not(.header):not(.sig-mensuel-section-header){background:#f7fafc}.sig-mensuel-row.header{font-weight:700;font-size:.7rem;color:#1a202c;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #117865;padding:.5rem 0;position:sticky;top:0;z-index:10}.sig-mensuel-row.header .sig-mensuel-cell{text-align:center;font-size:.7rem}.sig-mensuel-row.level-0{font-weight:700;color:#117865;background:linear-gradient(135deg,#1178650a,#11786503)}.sig-mensuel-row.level-1{color:#4a5568}.sig-mensuel-row.level-1 .sig-mensuel-label{padding-left:1rem}.sig-mensuel-row.level-2{font-style:italic;color:#a0aec0}.sig-mensuel-row.level-2 .sig-mensuel-label{padding-left:1.5rem}.sig-mensuel-row.total{font-weight:700;background:linear-gradient(135deg,#11786514,#11786508);border-top:2px solid #117865;border-bottom:2px solid #117865;margin-top:1px;margin-bottom:2px}.sig-mensuel-row.total .sig-mensuel-cell{color:#117865;font-weight:700}.sig-mensuel-section-header{font-weight:700;font-size:.75rem;color:#2d3748;background:linear-gradient(135deg,#edf2f7,#e2e8f0);padding:.4rem .5rem;margin-top:.25rem;margin-bottom:.15rem;border-left:3px solid #117865;text-transform:uppercase;letter-spacing:.05em;grid-column:1 / -1}.sig-mensuel-label{font-size:.75rem;font-weight:500;padding:0 .4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sig-mensuel-cell{text-align:right;font-size:.7rem;font-family:Courier New,monospace;padding:.15rem .3rem;white-space:nowrap}.sig-mensuel-cell.total-col{font-weight:700;background:#1178650a;border-left:2px solid #117865}.sig-mensuel-row.level-0 .sig-mensuel-cell,.sig-mensuel-row.total .sig-mensuel-cell.total-col{font-weight:700;color:#117865}.sig-mensuel-row.comparison{border-bottom:none;opacity:.6}.sig-mensuel-row.comparison .sig-mensuel-label{font-style:italic;color:#a0aec0;font-size:.65rem}.sig-mensuel-row.comparison .sig-mensuel-cell{font-size:.65rem;color:#718096}@media(max-width:968px){.sig-mensuel-container{padding:1rem}.sig-mensuel-header .sig-filters{flex-direction:column;gap:.75rem}.sig-mensuel-table-container{padding:.5rem}}.classement-container{padding:.5rem 2rem;max-width:1800px;margin:0 auto;height:calc(100vh - 80px);overflow-y:auto}.classement-header{background:#fff;padding:.75rem 1.5rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;margin-bottom:.75rem}.classement-header h1{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 .5rem}.classement-filters{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.classement-filters .filter-group{display:flex;flex-direction:column;gap:.2rem}.classement-filters .filter-group label{font-size:.75rem;font-weight:600;color:#4a5568}.classement-filters .filter-group select{padding:.4rem .6rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;background:#fff;min-width:150px}.classement-header .export-pdf-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #e53e3e4d}.classement-header .export-pdf-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e53e3e66;background:linear-gradient(135deg,#c53030,#9b2c2c)}.classement-header .export-pdf-btn svg{width:16px;height:16px}.classement-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:.75rem}.stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000000f;padding:.75rem 1rem;text-align:center}.stat-label{font-size:.75rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.stat-value{font-size:1.1rem;font-weight:700;color:#117865;font-family:Courier New,monospace}.classement-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:.75rem;overflow-x:auto;margin-bottom:1rem}.classement-row{display:grid;grid-template-columns:50px 1.5fr 1.2fr .6fr 2fr;gap:0;padding:.4rem .5rem;border-bottom:1px solid #edf2f7;align-items:center;transition:background .15s ease}.classement-row:hover:not(.header){background:#f7fafc}.classement-row.header{font-weight:700;font-size:.8rem;color:#1a202c;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #117865;padding:.6rem .5rem;position:sticky;top:0;z-index:10}.classement-row.na{opacity:.5}.classement-rank{font-size:.85rem;font-weight:700;color:#117865;text-align:center}.classement-nom{font-size:.85rem;font-weight:500;color:#2d3748;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.5rem}.classement-value{text-align:right;font-size:.85rem;font-weight:600;font-family:Courier New,monospace;color:#2d3748;padding-right:.75rem}.classement-value.negative{color:#e53e3e}.classement-pct{text-align:right;font-size:.8rem;color:#718096;padding-right:.75rem}.classement-bar-col{position:relative;height:18px;background:#f7fafc;border-radius:4px;overflow:hidden}.classement-bar{height:100%;border-radius:4px;transition:width .4s ease}.classement-bar.positive{background:linear-gradient(90deg,#11786533,#11786599)}.classement-bar.negative{background:linear-gradient(90deg,#e53e3e33,#e53e3e99)}@media(max-width:968px){.classement-container{padding:1rem}.classement-filters{flex-direction:column;gap:.75rem}.classement-stats{grid-template-columns:repeat(2,1fr)}.classement-row{grid-template-columns:40px 1.2fr 1fr .5fr 1.5fr}}.bilan-container{padding:.5rem 2rem;max-width:1600px;margin:0 auto;height:calc(100vh - 80px);overflow-y:auto}.bilan-header{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;margin-bottom:.75rem}.bilan-title-block{background:#fff;padding:.75rem 1rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;align-items:center}.bilan-header h1{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0;white-space:nowrap}.bilan-header-top{background:#fff;padding:.75rem 1.5rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.bilan-filters{display:flex;gap:1rem;align-items:flex-end;flex:1;flex-wrap:wrap}.bilan-filters .export-pdf-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #e53e3e4d}.bilan-filters .export-pdf-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e53e3e66;background:linear-gradient(135deg,#c53030,#9b2c2c)}.bilan-filters .export-pdf-btn svg{width:16px;height:16px}.bilan-filters .export-excel-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#117865,#0d5f4f);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #1178654d}.bilan-filters .export-excel-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #11786566;background:linear-gradient(135deg,#0d5f4f,#094a3d)}.bilan-filters .export-excel-btn svg{width:16px;height:16px}.bilan-content-wrapper{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;margin-bottom:1rem}.bilan-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:1.25rem;overflow-x:auto}.bilan-table{width:100%;min-width:800px}.bilan-row{display:grid;grid-template-columns:2fr 1.2fr 1.2fr 1fr 1fr;gap:1rem;padding:.5rem .75rem;border-bottom:1px solid #e2e8f0;align-items:center;transition:background .2s ease}.bilan-row:hover:not(.header):not(.bilan-section-header){background:#f7fafc}.bilan-row.header{font-weight:700;color:#1a202c;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #117865;padding:.65rem .75rem;position:sticky;top:0;z-index:10}.bilan-row.level-0{font-weight:700;font-size:1rem;color:#117865;background:linear-gradient(135deg,#1178650d,#11786505)}.bilan-row.level-1{padding-left:2rem;color:#4a5568}.bilan-row.level-2{padding-left:3rem;font-style:italic;color:#718096}.bilan-row.sub-section-header{font-weight:600;font-size:.88rem;color:#4a5568;background:#f7fafc;padding-left:1.5rem;border-left:3px solid #a0aec0;margin-top:.25rem}.bilan-row.total{font-weight:700;background:linear-gradient(135deg,#1178651a,#1178650d);border-top:2px solid #117865;border-bottom:2px solid #117865;margin-top:.15rem;margin-bottom:.3rem}.bilan-section-header{font-weight:700;font-size:1rem;color:#2d3748;background:linear-gradient(135deg,#edf2f7,#e2e8f0);padding:.65rem .75rem;margin-top:.5rem;margin-bottom:.3rem;border-left:4px solid #117865;text-transform:uppercase;letter-spacing:.05em;grid-column:1 / -1}.bilan-section-header.level-1{font-size:.95rem;background:linear-gradient(135deg,#edf2f7,#e2e8f0);color:#2d3748;border-left:4px solid #117865}.bilan-section-header.level-2{font-size:.85rem;background:#f7fafc;color:#4a5568;border-left:3px solid #a0aec0;text-transform:none;font-style:italic}.bilan-separator{height:2rem;grid-column:1 / -1;background:transparent}.bilan-label{font-weight:500}.bilan-value{text-align:right;font-weight:500;font-family:Courier New,monospace;font-size:.95rem}.bilan-row.total .bilan-value,.bilan-row.level-0 .bilan-value{font-weight:700;font-size:1rem;color:#117865}.bilan-value.positive{color:#38a169}.bilan-value.negative{color:#e53e3e}@media(max-width:1200px){.bilan-row{grid-template-columns:2fr 1fr 1fr .8fr .8fr}}@media(max-width:968px){.bilan-container{padding:1rem}.bilan-header{grid-template-columns:1fr}.bilan-header-top{flex-direction:column;align-items:flex-start;gap:1rem}.bilan-filters{flex-direction:column;gap:1rem}.bilan-content-wrapper{grid-template-columns:1fr;gap:1rem}.bilan-table-container{padding:1rem;overflow-x:auto}.bilan-row{font-size:.875rem}.bilan-value{font-size:.85rem}}.clients-fournisseurs-container{padding:.7rem 2rem;max-width:1600px;margin:0 auto;height:calc(100vh - 80px);display:flex;flex-direction:column;overflow:hidden}.cf-header{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem}.cf-title-block{background:#fff;padding:.75rem 1rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;flex-direction:column;justify-content:center}.cf-header h1{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 .25rem}.cf-subtitle{font-size:.75rem;color:#718096;margin:0;font-weight:400}.cf-controls{background:#fff;padding:.5rem 1rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;gap:.75rem;align-items:flex-end}.cf-control-group{display:flex;flex-direction:column;gap:.25rem;flex:1}.cf-control-group label{font-size:.75rem;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.03em}.cf-control-group select{padding:.5rem .75rem;border:1.5px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#2d3748;background:#fff;cursor:pointer;transition:all .2s ease}.cf-control-group select:hover{border-color:#117865}.cf-control-group select:focus{outline:none;border-color:#117865;box-shadow:0 0 0 3px #1178651a}.cf-control-group select:disabled{background-color:#f7fafc;color:#a0aec0;cursor:not-allowed}.cf-tabs-container{background:#fff;padding:.5rem 1rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;display:flex;align-items:center}.cf-tabs{display:flex;gap:.5rem;width:100%}.cf-tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;color:#4a5568;transition:all .2s ease;white-space:nowrap}.cf-tab:hover{background:#edf2f7;border-color:#117865}.cf-tab.active{background:linear-gradient(135deg,#117865,#0d5a4a);color:#fff;border-color:#117865;box-shadow:0 4px 12px #1178654d}.cf-tab-icon{font-size:1.125rem}.cf-content{display:flex;flex-direction:column;gap:1rem;flex:1;overflow:hidden}.cf-chart-section{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 2px 12px #0000000f;display:flex;flex-direction:column;flex:1;min-height:0}.cf-chart-container{flex:1;min-height:300px}.cf-pareto-info{margin-top:.75rem;border-top:1px solid #e2e8f0;padding-top:.75rem}.cf-info-card{background:linear-gradient(135deg,#117865,#0d5a4a);padding:1rem 1.25rem;border-radius:8px;color:#fff}.cf-info-label{display:block;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;margin-bottom:.5rem;opacity:.95}.cf-info-text{margin:0;font-size:.8125rem;line-height:1.5;font-weight:400}.cf-table-section{background:#fff;border-radius:12px;padding:.75rem;box-shadow:0 2px 12px #0000000f;display:flex;flex-direction:column;flex-shrink:0}.cf-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.cf-table-header h2{font-size:1rem;font-weight:700;color:#1a202c;margin:0}.cf-total{font-size:.8125rem;color:#718096;font-weight:500}.cf-total strong{color:#1a202c;font-size:1rem;margin-left:.5rem;font-weight:700}.cf-table-wrapper{overflow-x:auto;overflow-y:auto;max-height:280px;flex:1}.cf-table{width:100%;border-collapse:collapse;font-size:.75rem}.cf-table thead{background:#f7fafc;position:sticky;top:0;z-index:1}.cf-table th{padding:.4rem .5rem;text-align:left;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#718096;border-bottom:2px solid #e2e8f0}.cf-table tbody tr{border-bottom:1px solid #edf2f7;transition:background .15s ease}.cf-table tbody tr:hover{background:#f7fafc}.cf-table tbody tr.cf-highlighted{background:#1178650d}.cf-table tbody tr.cf-highlighted:hover{background:#11786514}.cf-table td{padding:.5rem;color:#2d3748}.cf-rank{width:50px}.cf-rank-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#edf2f7;border-radius:50%;font-weight:700;font-size:.75rem;color:#718096}.cf-table tbody tr.cf-highlighted .cf-rank-badge{background:linear-gradient(135deg,#117865,#0d5a4a);color:#fff}.cf-name{font-weight:600;color:#1a202c;min-width:200px}.cf-compte-info{display:flex;flex-direction:column;gap:.25rem}.cf-compte-lib{font-weight:600;color:#1a202c}.cf-compte-num{font-size:.625rem;color:#718096;font-family:Courier New,monospace}.cf-amount{font-weight:600;color:#1a202c;white-space:nowrap;text-align:right;font-family:Courier New,monospace;font-size:.75rem}.cf-amount .positive{color:#38a169}.cf-amount .negative{color:#e53e3e}.cf-count{text-align:center;color:#718096;font-weight:500}.cf-percentage{width:180px}.cf-percentage-bar{position:relative;width:100%;height:22px;background:#edf2f7;border-radius:4px;overflow:hidden}.cf-percentage-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#117865,#0d5a4a);transition:width .3s ease}.cf-percentage-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.6875rem;font-weight:700;color:#1a202c;z-index:1}.cf-cumulative{font-weight:600;color:#718096;text-align:center}.cf-cumulative-80{color:#38a169;background:#38a1691a;padding:.25rem .5rem;border-radius:4px;font-weight:700;display:inline-block}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;min-height:400px}.loading-container p{color:#718096;font-size:1rem;font-weight:500}.error-message{background:#fff5f5;border:2px solid #feb2b2;border-radius:12px;padding:1.5rem;color:#c53030;text-align:center;margin:2rem}.error-message h3{margin:0 0 .5rem;font-size:1.125rem}.error-message p{margin:0}.no-data-message{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:3rem;text-align:center;color:#718096;font-size:1.125rem;margin:2rem}@media(max-width:1400px){.cf-chart-container{height:380px}.cf-table-wrapper{max-height:500px}}@media(max-width:1024px){.cf-header{grid-template-columns:1fr}.cf-controls{flex-direction:column;align-items:stretch}.cf-control-group{max-width:100%}.cf-chart-container{height:350px}}@media(max-width:768px){.clients-fournisseurs-container{padding:.5rem 1rem}.cf-header h1{font-size:1.125rem}.cf-subtitle{font-size:.6875rem}.cf-tabs-container{padding:.5rem 1rem}.cf-tabs{flex-direction:column;gap:.5rem}.cf-tab{justify-content:center}.cf-chart-container{height:300px}.cf-table-header{flex-direction:column;align-items:flex-start;gap:.75rem}.cf-table th,.cf-table td{padding:.5rem;font-size:.75rem}.cf-percentage{width:140px}.cf-table-wrapper{max-height:350px}}.admin-container{max-width:1200px;width:100%;padding:2rem}.admin-header{margin-bottom:2rem}.admin-header h1{color:#1a202c;margin:0 0 .5rem;font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#117865,#0a5045);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-subtitle{color:#718096;margin:0;font-size:1.1rem}.alert{padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background-color:#fed7d7;color:#c53030;border:1px solid #fc8181}.alert-success{background-color:#c6f6d5;color:#276749;border:1px solid #68d391}.admin-tabs{display:flex;gap:0;margin-bottom:2rem;border-bottom:2px solid #e2e8f0}.admin-tab{padding:.75rem 2rem;border:none;background:none;font-size:1rem;font-weight:600;color:#718096;cursor:pointer;position:relative;transition:color .2s ease}.admin-tab:hover,.admin-tab.active{color:#117865}.admin-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:linear-gradient(135deg,#117865,#0a5045);border-radius:3px 3px 0 0}.admin-actions{display:flex;gap:1rem;margin-bottom:2rem}.btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn svg{width:20px;height:20px}.btn-primary{background:linear-gradient(135deg,#117865,#0a5045);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #11786566}.btn-secondary{background-color:#e2e8f0;color:#4a5568}.btn-secondary:hover:not(:disabled){background-color:#cbd5e0;transform:translateY(-2px)}.btn:disabled{opacity:.6;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;flex:1}.loading-container .spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#eac900;border-right-color:#117865;border-radius:50%;animation:spin .8s linear infinite}.loading-container p{color:#718096;font-size:1rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner p{margin:0;color:#117865;font-weight:600;font-size:1rem}.clients-table-container{background-color:#fff;border-radius:12px;border:2px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 3px #0000001a}.clients-table{width:100%;border-collapse:collapse}.clients-table thead{background:linear-gradient(135deg,#117865,#0a5045);border-bottom:2px solid #117865}.clients-table th{padding:1rem;text-align:left;font-weight:600;color:#fff;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}.clients-table tbody tr{border-bottom:1px solid #e2e8f0;transition:all .2s ease}.clients-table tbody tr:hover{background-color:#f7fafc}.clients-table tbody tr:last-child{border-bottom:none}.clients-table td{padding:1rem;color:#4a5568;font-size:.95rem}.client-id{font-family:Courier New,monospace;font-size:.85rem;color:#718096}.actions-cell{display:flex;gap:.5rem;align-items:center}.btn-action{background-color:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-action svg{width:24px;height:24px}.btn-action:disabled{opacity:.4;cursor:not-allowed}.btn-associate{color:#117865}.btn-associate:hover:not(:disabled){background-color:#e6fffa}.btn-users{color:#117865}.btn-users:hover:not(:disabled){background-color:#e6fffa}.btn-init{color:#48bb78}.btn-init:hover:not(:disabled){background-color:#c6f6d5}.no-data{text-align:center;padding:3rem 2rem;color:#a0aec0;font-style:italic}.no-users-message{text-align:center;padding:2rem;color:#a0aec0;font-style:italic;background-color:#f7fafc;border-radius:8px;margin:1rem 0}.no-users-message p{margin:0}.users-list{margin:1rem 0}.users-table{width:100%;border-collapse:collapse;background-color:#fff;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0}.users-table thead{background:linear-gradient(135deg,#117865,#0a5045)}.users-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#fff;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #117865}.users-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s ease}.users-table tbody tr:hover{background-color:#f7fafc}.users-table tbody tr:last-child{border-bottom:none}.users-table td{padding:.75rem 1rem;color:#4a5568;font-size:.9rem}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:#fff;border-radius:16px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h2{color:#1a202c;margin:0;font-size:1.5rem;font-weight:700}.close-btn{background-color:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background-color:#fed7d7}.close-btn svg{width:24px;height:24px;color:#e53e3e}.client-info{background-color:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.client-info p{margin:.5rem 0;color:#4a5568;font-size:.95rem}.client-info strong{color:#2d3748;font-weight:600}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#2d3748;font-weight:600;font-size:.9rem}.form-group input{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;color:#2d3748;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#117865;box-shadow:0 0 0 3px #1178651a}.form-group input::placeholder{color:#a0aec0}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.cancel-btn{background-color:#e2e8f0;color:#4a5568;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-btn:hover{background-color:#cbd5e0;transform:translateY(-2px)}.confirm-btn{background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.confirm-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #11786566}.confirm-btn:disabled{opacity:.6;cursor:not-allowed}.powerbi-config-section{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a;border:2px solid #e2e8f0}.powerbi-config-section h2{color:#1a202c;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.section-description{color:#718096;font-size:1rem;margin:0 0 1.5rem}.powerbi-mode-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.mode-option{position:relative}.mode-option input[type=radio]{position:absolute;opacity:0;cursor:pointer}.mode-option label{display:block;padding:1.5rem;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .3s ease;background:#f7fafc}.mode-option input[type=radio]:checked+label{border-color:#117865;background:linear-gradient(135deg,#1178650d,#0a50450d);box-shadow:0 4px 12px #11786526}.mode-option input[type=radio]:disabled+label{opacity:.6;cursor:not-allowed}.mode-option label:hover:not(:has(input:disabled)){border-color:#117865;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.mode-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.mode-header svg{width:24px;height:24px;color:#117865;flex-shrink:0}.mode-title{font-size:1.125rem;font-weight:700;color:#1a202c;flex:1}.mode-badge{padding:.25rem .75rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.mode-description{color:#4a5568;font-size:.9rem;line-height:1.5;margin:0 0 1rem}.mode-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.mode-features li{display:flex;align-items:center;gap:.5rem;color:#718096;font-size:.875rem}.mode-features li:before{content:"✓";display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:#117865;color:#fff;border-radius:50%;font-size:.75rem;font-weight:700;flex-shrink:0}.success-message{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;text-align:center}.success-icon{width:64px;height:64px;color:#48bb78;animation:scaleIn .3s ease}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.success-message p{margin:0;font-size:1.125rem;color:#2d3748;font-weight:500}@media(max-width:768px){.admin-container{padding:1.5rem}.admin-header h1{font-size:2rem}.powerbi-mode-selector{grid-template-columns:1fr}.mode-option label{padding:1.25rem}.admin-actions{flex-direction:column}.btn{width:100%;justify-content:center}.clients-table-container{overflow-x:auto}.clients-table{min-width:600px}.modal-content{padding:1.5rem;width:95%}.modal-actions{flex-direction:column-reverse}.cancel-btn,.confirm-btn{width:100%}}@media(max-width:600px){.clients-table th,.clients-table td{padding:.75rem .5rem;font-size:.85rem}.btn-action svg{width:20px;height:20px}}.btn-config{color:#3182ce}.btn-config:hover:not(:disabled){background-color:#bee3f8}.modal-large{max-width:700px;width:90%}.config-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e2e8f0}.config-section:last-of-type{border-bottom:none}.config-section h3{font-size:1.125rem;font-weight:600;color:#2d3748;margin:0 0 1rem}.checkbox-group{margin-bottom:1rem}.checkbox-group label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;border-radius:8px;transition:background-color .2s}.checkbox-group label:hover{background-color:#f7fafc}.checkbox-group input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#117865}.checkbox-group span{font-size:.95rem;color:#4a5568;font-weight:500}.btn-schedule{background-color:#805ad5;color:#fff}.btn-schedule:hover{background-color:#6b46c1}.schedules-list{display:flex;flex-direction:column;gap:1rem;margin:1rem 0;max-height:400px;overflow-y:auto}.schedule-card{border:1px solid #E2E8F0;border-radius:8px;padding:1rem;background:#f7fafc}.schedule-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #E2E8F0}.schedule-title{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#2d3748}.schedule-title svg{width:20px;height:20px;color:#805ad5}.schedule-details{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.schedule-detail{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;color:#718096;text-transform:uppercase;letter-spacing:.05em}.detail-value{font-size:.95rem;font-weight:500;color:#2d3748}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.active{background-color:#c6f6d5;color:#22543d}.status-badge.inactive{background-color:#fed7d7;color:#742a2a}.schedule-notifications{display:flex;gap:1rem;flex-wrap:wrap}.notification-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.notification-badge.enabled{background-color:#e9d8fd;color:#553c9a}.notification-badge.disabled{background-color:#edf2f7;color:#718096}.btn-edit{background-color:#4299e1;color:#fff}.btn-edit:hover{background-color:#3182ce}.btn-delete{background-color:#e53e3e;color:#fff}.btn-delete:hover{background-color:#c53030}.schedule-form{padding:1rem 0}.schedule-form h3{margin-bottom:1.5rem;color:#2d3748;font-size:1.25rem}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}@media(max-width:600px){.form-row,.schedule-details{grid-template-columns:1fr}}.no-data-message{text-align:center;padding:2rem;color:#718096;background:#f7fafc;border-radius:8px;border:1px dashed #CBD5E0}.client-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 .5rem;background:linear-gradient(135deg,#117865,#0a5045);color:#fff;border-radius:14px;font-size:.85rem;font-weight:600}.cabinet-add-client{display:flex;gap:.75rem;margin-bottom:1.5rem;align-items:center}.cabinet-add-client select{flex:1;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;color:#2d3748;background:#fff;transition:border-color .2s ease}.cabinet-add-client select:focus{outline:none;border-color:#117865;box-shadow:0 0 0 3px #1178651a}.cabinet-add-client .btn{white-space:nowrap}.delete-confirm-message{padding:1.5rem 0;text-align:center}.delete-confirm-message p{margin:.5rem 0;color:#4a5568;font-size:1rem}.delete-warning{color:#e53e3e!important;font-weight:500;font-size:.9rem!important}.confirm-btn.btn-danger{background:linear-gradient(135deg,#e53e3e,#c53030)}.confirm-btn.btn-danger:hover:not(:disabled){box-shadow:0 4px 12px #e53e3e66}.tarifs-container{padding:1rem 2rem;max-width:1400px;margin:0 auto;background:#f7fafc;min-height:calc(100vh - 80px);display:flex;flex-direction:column;overflow-x:hidden;width:100%;box-sizing:border-box}.tarifs-header{text-align:center;margin-bottom:1.5rem}.tarifs-header h1{font-size:2rem;font-weight:700;color:#1a202c;margin-bottom:.3rem}.tarifs-subtitle{font-size:.95rem;color:#718096;margin-bottom:1rem}.tarifs-controls{display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap}.billing-toggle-wrapper{display:flex;justify-content:center;margin-bottom:0}.billing-toggle{display:inline-flex;background:#f7fafc;border-radius:16px;padding:.5rem;gap:.75rem;box-shadow:0 4px 20px #00000014;border:2px solid #e2e8f0}.billing-toggle-btn{position:relative;padding:.75rem 1.5rem;border:2px solid transparent;border-radius:12px;background:#fff;cursor:pointer;font-size:.9rem;font-weight:600;color:#4a5568;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:.35rem;min-width:180px;height:auto}.billing-toggle-btn:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.billing-toggle-btn.active{background:linear-gradient(135deg,#117865,#0d5a4d);color:#fff;border-color:#117865;box-shadow:0 8px 24px #1178654d;transform:translateY(-4px)}.toggle-main{display:flex;align-items:center;gap:.5rem}.toggle-icon{width:24px;height:24px}.toggle-title{font-size:1rem;font-weight:700}.toggle-badge{position:absolute;top:-12px;right:-12px;background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;font-size:.65rem;font-weight:700;padding:.35rem .75rem;border-radius:16px;box-shadow:0 4px 12px #e53e3e66;display:flex;align-items:center;gap:.25rem;animation:pulse 2s infinite}.toggle-badge svg{width:14px;height:14px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.toggle-subtitle{font-size:.8rem;font-weight:600;opacity:.9;text-transform:uppercase;letter-spacing:.03em}.toggle-description{font-size:.7rem;font-weight:400;opacity:.7;font-style:italic}.billing-toggle-btn.active .toggle-subtitle,.billing-toggle-btn.active .toggle-description{opacity:.95}.audit-option-wrapper{display:flex;justify-content:center;margin-top:0}.audit-option{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .3s ease;max-width:500px;width:100%}.audit-option:hover{border-color:#117865;box-shadow:0 4px 12px #11786526}.audit-option.active{border-color:#117865;background:linear-gradient(135deg,#1178650d,#1178651a)}.audit-option input[type=checkbox]{display:none}.audit-option-content{flex:1}.audit-option-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.audit-icon{width:20px;height:20px;color:#117865}.audit-option-title{font-weight:600;color:#2d3748;font-size:1rem}.audit-option-price{font-weight:700;color:#117865;font-size:.9rem;margin-left:auto}.audit-option-description{font-size:.85rem;color:#718096}.audit-checkbox{width:24px;height:24px;border:2px solid #cbd5e0;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.audit-checkbox.checked{background:#117865;border-color:#117865}.audit-checkbox svg{width:14px;height:14px;color:#fff}.tarifs-carousel-wrapper{position:relative;display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;flex:1;min-height:0;width:100%;max-width:100%;overflow:hidden}.tarifs-carousel{flex:1;overflow:hidden;border-radius:16px;width:100%;max-width:100%}.tarifs-carousel-track{display:flex;transition:transform .4s ease-in-out}.carousel-slide{min-width:calc(100% / 3);padding:1rem .5rem;box-sizing:border-box;display:flex;justify-content:center;align-items:center}.carousel-nav{width:50px;height:50px;border-radius:50%;background:#fff;border:2px solid #117865;color:#117865;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 12px #0000001a;flex-shrink:0;z-index:10}.carousel-nav:hover{background:#117865;color:#fff;transform:scale(1.1);box-shadow:0 6px 16px #1178654d}.carousel-nav svg{width:24px;height:24px}.carousel-indicators{display:flex;justify-content:center;gap:.5rem;margin-bottom:1.5rem}.carousel-indicators .indicator{width:10px;height:10px;border-radius:50%;background:#cbd5e0;border:none;cursor:pointer;transition:all .3s ease;padding:0}.carousel-indicators .indicator.active{background:#117865;width:24px;border-radius:5px}.carousel-indicators .indicator:hover{background:#a0aec0}.tarifs-grid{display:none}.tarif-card{position:relative;background:#fff;border:2px solid #e2e8f0;border-radius:16px;padding:1.25rem;transition:all .3s ease;display:flex;flex-direction:column;width:100%;max-width:380px;margin:0 auto;height:100%;min-height:500px;box-sizing:border-box}.tarif-card:hover{transform:translateY(-8px);box-shadow:0 12px 24px #00000026;border-color:#117865}.tarif-card.popular{border-color:#117865;border-width:3px;box-shadow:0 8px 20px #11786533}.tarif-card.selected{border-color:#eac900;border-width:3px;box-shadow:0 8px 24px #eac90066;background:linear-gradient(135deg,#fffef5,#fff);transform:scale(1.02)}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#117865,#0d5a4d);color:#fff;font-size:.75rem;font-weight:700;padding:.4rem 1.5rem;border-radius:20px;text-transform:uppercase;letter-spacing:.05em}.tarif-card.custom-quote{border-color:#805ad5;background:linear-gradient(135deg,#faf5ff,#fff);border-width:2px}.tarif-card.custom-quote:hover{border-color:#805ad5;box-shadow:0 12px 24px #805ad533}.custom-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#805ad5,#6b46c1);color:#fff;font-size:.75rem;font-weight:700;padding:.4rem 1.5rem;border-radius:20px;text-transform:uppercase;letter-spacing:.05em}.tarif-card.custom-quote .price-main{color:#805ad5;font-size:2rem}.tarif-card.custom-quote .feature-icon{color:#805ad5}.contact-cta{background:linear-gradient(135deg,#805ad5,#6b46c1);display:flex;align-items:center;justify-content:center;gap:.5rem}.contact-cta:hover{background:linear-gradient(135deg,#6b46c1,#553c9a);box-shadow:0 8px 20px #805ad566}.tarif-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.tarif-header h3{font-size:1.2rem;font-weight:700;color:#1a202c;margin-bottom:.3rem}.price-per-dossier{font-size:.75rem;color:#718096;font-weight:500}.tarif-price{margin-bottom:1rem}.price-main{font-size:1.75rem;font-weight:700;color:#117865;line-height:1;margin-bottom:.3rem}.price-period{font-size:.85rem;font-weight:400;color:#718096}.price-annual{font-size:.8rem;color:#4a5568;font-weight:500}.price-savings{font-size:.7rem;color:#e53e3e;font-weight:600;margin-top:.3rem;padding:.35rem;background:#fff5f5;border-radius:6px;text-align:center}.tarif-features{flex:1;margin-bottom:1rem}.feature{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;color:#4a5568;font-size:.8rem}.feature.special{color:#e53e3e;font-weight:600;font-size:.75rem;font-style:italic}.feature-icon{width:16px;height:16px;color:#117865;flex-shrink:0}.feature.special .feature-icon{color:#e53e3e}.feature.audit-feature{color:#117865;font-weight:600;background:#11786514;border-radius:6px;padding:.5rem .75rem;margin-top:.25rem}.feature.audit-feature .feature-icon{color:#117865}.tarif-cta{width:100%;padding:.75rem;background:linear-gradient(135deg,#117865,#0d5a4d);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #1178654d}.tarif-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px #11786566;background:linear-gradient(135deg,#0d5a4d,#0a4539)}.tarif-cta:disabled{opacity:.6;cursor:not-allowed;transform:none}.tarif-cta.selected{background:linear-gradient(135deg,#eac900,#d4b500);box-shadow:0 4px 12px #eac90066}.tarif-cta.selected:hover{background:linear-gradient(135deg,#d4b500,#bfa000);box-shadow:0 8px 20px #eac90080}.spinner-icon{width:20px;height:20px;animation:spin 1s linear infinite;display:inline-block;margin-right:.5rem}.tarifs-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.25rem;margin-bottom:1.5rem}.info-card{background:#fff;padding:1.25rem;border-radius:12px;box-shadow:0 4px 12px #00000014;text-align:center}.info-card h3{font-size:1rem;font-weight:700;color:#1a202c;margin-bottom:.5rem}.info-card p{color:#718096;font-size:.85rem;line-height:1.5}.tarifs-faq{background:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 12px #00000014;margin-bottom:1rem}.tarifs-faq h2{font-size:1.5rem;font-weight:700;color:#1a202c;margin-bottom:1.25rem;text-align:center}.faq-item{padding:1rem 0;border-bottom:1px solid #e2e8f0}.faq-item:last-child{border-bottom:none}.faq-item h4{font-size:.95rem;font-weight:600;color:#1a202c;margin-bottom:.5rem}.faq-item p{color:#4a5568;line-height:1.5;font-size:.85rem}@media(max-width:1024px){.carousel-slide{min-width:50%}.tarif-card{max-width:100%}}@media(max-width:768px){.tarifs-container{padding:.75rem 1rem}.tarifs-carousel-wrapper{gap:.5rem}.tarifs-header h1{font-size:1.75rem}.tarifs-subtitle{font-size:.875rem}.carousel-slide{min-width:100%;padding:1rem}.carousel-nav{width:40px;height:40px}.carousel-nav svg{width:20px;height:20px}.tarif-card{padding:1.25rem;min-height:450px;max-width:100%}.tarifs-controls{flex-direction:column;align-items:stretch;gap:1rem}.billing-toggle-wrapper{width:100%;padding:0;box-sizing:border-box}.billing-toggle{flex-direction:column;width:100%;gap:.5rem;box-sizing:border-box}.billing-toggle-btn{width:100%;min-width:unset;padding:1rem 1.5rem;box-sizing:border-box}.toggle-badge{top:-10px;right:10px}.toggle-title{font-size:1rem}.toggle-icon{width:20px;height:20px}.tarifs-info{grid-template-columns:1fr}.tarifs-faq{padding:1.5rem}}.success-container{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 80px);padding:2rem;background:linear-gradient(135deg,#f7fafc,#e2e8f0)}.success-card{background:#fff;border-radius:16px;padding:3rem 2rem;max-width:600px;width:100%;box-shadow:0 8px 24px #0000001a;text-align:center}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,#48bb78,#38a169);border-radius:50%;margin-bottom:2rem}.success-icon svg{width:48px;height:48px;color:#fff}.success-card h1{font-size:2rem;font-weight:700;color:#1a202c;margin-bottom:1rem}.success-message{font-size:1.1rem;color:#4a5568;line-height:1.6;margin-bottom:2rem}.success-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}.btn-primary,.btn-secondary{padding:.875rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#117865,#0d5a4d);color:#fff;box-shadow:0 4px 12px #1178654d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #11786566;background:linear-gradient(135deg,#0d5a4d,#0a4539)}.btn-secondary{background:#fff;color:#117865;border:2px solid #117865}.btn-secondary:hover{background:#f7fafc;transform:translateY(-2px)}.session-info{padding:1rem;background:#f7fafc;border-radius:8px;margin-top:1rem}.session-info p{font-size:.875rem;color:#718096;margin:0}.session-info code{background:#e2e8f0;padding:.25rem .5rem;border-radius:4px;font-family:monospace;font-size:.8rem;color:#2d3748}@media(max-width:768px){.success-card{padding:2rem 1.5rem}.success-card h1{font-size:1.5rem}.success-message{font-size:1rem}.success-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.parametrages-container{padding:2rem;max-width:1400px;margin:0 auto}.parametrages-header{margin-bottom:2rem}.parametrages-header h1{font-size:2rem;font-weight:600;color:#117865;margin-bottom:.5rem}.parametrages-header p{color:#6b7280;font-size:1rem}.parametrages-tabs{display:flex;gap:1rem;border-bottom:2px solid #E5E7EB;margin-bottom:2rem}.parametrages-tab{padding:1rem 1.5rem;background:none;border:none;color:#6b7280;font-size:1rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.parametrages-tab:hover{color:#117865}.parametrages-tab.active{color:#117865;border-bottom-color:#117865}.tab-content{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 1px 3px #0000001a}.schedules-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.schedule-card{border:1px solid #E5E7EB;border-radius:8px;padding:1.5rem;background:#f9fafb}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.schedule-title{font-size:1.125rem;font-weight:600;color:#1f2937}.schedule-actions{display:flex;gap:.5rem}.schedule-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.schedule-info-item{display:flex;flex-direction:column}.schedule-info-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem}.schedule-info-value{font-size:1rem;font-weight:500;color:#1f2937}.schedule-status{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:500}.schedule-status.active{background:#d1fae5;color:#065f46}.schedule-status.inactive{background:#fee2e2;color:#991b1b}.add-schedule-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#117865;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.add-schedule-btn:hover{background:#0f6a59}.add-schedule-btn:disabled{background:#9ca3af;cursor:not-allowed}.schedule-form{display:grid;gap:1.5rem;margin-top:1rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:#374151}.form-group input,.form-group select{padding:.75rem;border:1px solid #D1D5DB;border-radius:6px;font-size:1rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:#117865;box-shadow:0 0 0 3px #1178651a}.checkbox-group{display:flex;align-items:center;gap:.5rem}.checkbox-group input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#117865;color:#fff}.btn-primary:hover{background:#0f6a59}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover{background:#d1d5db}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-icon{padding:.5rem;background:none;border:1px solid #D1D5DB;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.btn-icon:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}.subscription-card{border:1px solid #E5E7EB;border-radius:8px;padding:2rem;background:#f9fafb}.subscription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.subscription-plan{font-size:1.5rem;font-weight:600;color:#117865}.subscription-badge{padding:.5rem 1rem;background:#d1fae5;color:#065f46;border-radius:9999px;font-size:.875rem;font-weight:500}.subscription-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.subscription-detail{display:flex;flex-direction:column;gap:.5rem}.subscription-detail-label{font-size:.875rem;color:#6b7280}.subscription-detail-value{font-size:1.125rem;font-weight:600;color:#1f2937}.display-settings{display:grid;gap:2rem}.color-picker-group{display:flex;flex-direction:column;gap:1rem}.color-picker-row{display:flex;align-items:center;gap:1rem}.color-picker-row label{min-width:150px;font-weight:500;color:#374151}.color-picker-input{display:flex;align-items:center;gap:.5rem}.color-picker-input input[type=color]{width:60px;height:40px;border:1px solid #D1D5DB;border-radius:6px;cursor:pointer}.color-picker-input input[type=text]{width:120px;padding:.5rem;border:1px solid #D1D5DB;border-radius:6px;font-family:monospace}.color-preview{width:40px;height:40px;border-radius:6px;border:1px solid #D1D5DB}.loading-container,.error-container{text-align:center;padding:3rem}.spinner{border:4px solid #E5E7EB;border-top:4px solid #117865;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{color:#dc2626;padding:1rem;background:#fee2e2;border-radius:6px;margin:1rem 0}.success-message{color:#065f46;padding:1rem;background:#d1fae5;border-radius:6px;margin:1rem 0}.no-data-message{text-align:center;padding:2rem;color:#6b7280}.login-container{min-height:100vh;display:flex;background:#fff;padding:0}.login-left{flex:1;display:flex;flex-direction:column;justify-content:center;padding:4rem;background:#fff}.login-logo{margin-bottom:3rem}.login-logo img{max-width:200px;height:auto}.login-title{font-size:3rem;font-weight:700;color:#1a1a1a;margin:0 0 1.5rem;line-height:1.2}.login-subtitle{font-size:1.25rem;color:#666;margin:0;line-height:1.6}.login-right{flex:1;display:flex;align-items:center;justify-content:center;background:#eac900;padding:4rem}.login-card{background:#fff;border-radius:20px;padding:4rem 3rem;box-shadow:0 10px 40px #00000026;text-align:center;max-width:450px;width:100%}.login-card h2{color:#1a1a1a;margin:0 0 1rem;font-size:2rem;font-weight:700}.login-card-subtitle{color:#666;margin:0 0 2.5rem;font-size:1rem}.login-btn{width:100%;background:#1a1a1a;color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:1rem;box-shadow:0 4px 12px #0003}.login-btn:hover{background:#333;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.microsoft-icon{width:24px;height:24px}@media(max-width:1024px){.login-container{flex-direction:column}.login-left{padding:3rem 2rem;text-align:center}.login-logo{display:flex;justify-content:center;margin-bottom:2rem}.login-title{font-size:2.5rem}.login-right{padding:3rem 2rem}}@media(max-width:768px){.login-left{padding:2rem 1.5rem}.login-title{font-size:2rem}.login-subtitle{font-size:1.1rem}.login-card{padding:3rem 2rem}.login-card h2{font-size:1.75rem}}
