body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;overflow:hidden;width:100%}.login-container{align-items:center;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;height:100vh;justify-content:center;left:0;min-height:100vh;padding:20px;position:fixed;top:0;width:100vw}.login-card{background:var(--color-bg-primary);border-radius:12px;box-shadow:var(--shadow-lg);max-width:400px;padding:40px;width:100%;z-index:10}.login-header{margin-bottom:32px;text-align:center}.login-header h1{color:var(--color-text-primary);font-size:2em;margin-bottom:8px}.login-header p{color:var(--color-text-secondary);font-size:.95em}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:var(--color-text-primary);font-size:.95em;font-weight:500}.form-group input{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-size:1em;padding:12px 16px;transition:all .2s ease}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1);outline:none}.login-btn{background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1em;font-weight:600;margin-top:8px;padding:12px 24px;transition:all .2s ease}.login-btn:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.login-btn:active{transform:translateY(0)}.error-message{background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;display:none;font-size:.9em;padding:12px}.error-message.show{display:block}.config-container{background:var(--color-bg-primary);border-radius:8px;margin:0;min-height:calc(100vh - 200px);padding:20px}.config-tabs{border-bottom:2px solid var(--color-border);display:flex;gap:8px;margin-bottom:30px;padding-bottom:0}.config-tab{background:#0000;border:none;border-bottom:3px solid #0000;border-radius:6px 6px 0 0;color:var(--color-text-secondary);cursor:pointer;font-size:.95em;font-weight:600;letter-spacing:.5px;margin-bottom:-2px;padding:12px 24px;position:relative;text-transform:uppercase;transition:all .2s ease}.config-tab:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.config-tab.active{background:var(--color-primary);border-bottom-color:var(--color-primary);box-shadow:0 2px 8px #137af233;color:var(--color-text-inverse)}.config-section{margin-bottom:30px}.config-section-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.config-section-header h2{color:var(--color-text-primary);font-size:1.5em;font-weight:600;margin:0}.config-btn,.config-section-header h2{letter-spacing:.5px;text-transform:uppercase}.config-btn{align-items:center;background:var(--color-primary);border:1px solid var(--color-primary);border-radius:6px;box-shadow:var(--shadow-sm);color:var(--color-text-inverse);cursor:pointer;display:inline-flex;font-size:.9em;font-weight:500;gap:8px;padding:12px 24px;transition:all .15s ease}.config-btn:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.config-btn-secondary{background:var(--color-text-secondary)}.config-btn-secondary:hover{background:var(--color-text-primary)}.config-btn-success{background:var(--color-success)}.config-btn-success:hover{background:var(--color-success-dark)}.config-btn-danger{background:var(--color-danger)}.config-btn-danger:hover{background:var(--color-danger-dark)}.config-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:8px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-height:200px;padding:24px;transition:all .2s ease}.config-card:hover{border-left-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.config-card-header{align-items:flex-start;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.config-card-header h3{color:var(--color-text-primary);flex:1 1;font-size:1.2em;font-weight:600;margin:0;padding-right:16px}.config-card-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.config-card-actions button{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:center;padding:0;transition:all .2s ease}.config-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.config-info-box{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;margin-bottom:30px;padding:20px}.config-info-box h3{color:var(--color-text-primary);font-size:18px;margin-bottom:15px;margin-top:0}.config-info-box p{color:var(--color-text-secondary);font-size:14px;margin-bottom:15px}.config-tags{display:flex;flex-wrap:wrap;gap:10px}.config-tag{background:var(--color-success);border:none;border-radius:4px;color:var(--color-text-inverse);cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.config-tag:hover{background:var(--color-success-dark);transform:translateY(-1px)}.config-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.config-modal-content{background:var(--color-bg-primary);border-radius:8px;box-shadow:var(--shadow-lg);max-height:95vh;max-width:900px;overflow:auto;padding:40px;position:relative;width:95%}.config-modal-content h2{color:var(--color-text-primary);margin-top:0}.config-form-group{margin-bottom:20px}.config-form-group label{color:var(--color-text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:8px}.config-form-group input,.config-form-group select,.config-form-group textarea{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.config-form-group input:focus,.config-form-group select:focus,.config-form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #137af21a;outline:none}.config-form-group textarea{resize:vertical}.config-checkbox-list{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;max-height:200px;overflow:auto;padding:10px}.config-checkbox-item{background:#0000;border-radius:4px;cursor:pointer;display:block;margin-bottom:5px;padding:8px;transition:background-color .2s ease}.config-checkbox-item.selected,.config-checkbox-item:hover{background:var(--color-primary-lighter)}.config-checkbox-item input{margin-right:8px;width:auto}.config-checkbox-item.unconfigured{background:var(--color-success-lighter)}.config-checkbox-item.unconfigured.selected{background:var(--color-success-light)}.config-modal-actions{border-top:1px solid var(--color-border);display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.config-status-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.config-status-group{margin-bottom:15px}.config-status-group h4{color:var(--color-text-primary);font-size:14px;margin-bottom:10px}.config-status-group p{color:var(--color-text-secondary);font-size:12px;margin-bottom:15px}.config-alert{border-radius:4px;margin:20px;padding:12px}.config-alert-error{background-color:var(--color-danger-light);color:var(--color-danger-dark)}.config-alert-success{background-color:var(--color-success-light);color:var(--color-success-dark)}.config-empty-state{color:var(--color-text-secondary);padding:40px;text-align:center}.config-card-body{margin-top:15px}.config-status-list{font-size:12px;margin-bottom:5px}.config-status-list strong{color:var(--color-text-primary);font-weight:600}.config-status-section{flex:1 1;margin-top:20px}.config-status-section h4{color:var(--color-text-primary);font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.config-btn-small{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;letter-spacing:.3px;padding:8px 16px;text-transform:uppercase;transition:all .15s ease}.config-btn-small:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.config-btn-edit{background:var(--color-primary-lighter);border-color:var(--color-primary-lighter);color:var(--color-primary);margin-right:8px}.config-btn-edit:hover{background:var(--color-primary-light);border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.config-btn-delete{background:var(--color-danger-lighter);border-color:var(--color-danger-lighter);color:var(--color-danger)}.config-btn-delete:hover{background:var(--color-danger-light);border-color:var(--color-danger);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.config-form-section{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;margin-bottom:25px;padding:20px}.config-form-section h3{font-size:18px}.config-form-section h3,.config-form-section h4{color:var(--color-text-primary);font-weight:600;margin-bottom:15px;margin-top:0}.config-form-section h4{font-size:16px;letter-spacing:.5px;text-transform:uppercase}.config-form-section p{color:var(--color-text-secondary);font-size:13px;line-height:1.5;margin-bottom:20px}.config-job-list-section{margin-bottom:15px}.config-job-list-section h4{color:var(--color-text-primary);font-size:14px;font-weight:600;margin-bottom:8px}.config-job-list{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;max-height:150px;overflow:auto;padding:10px}.config-job-item{background:#0000;border-radius:4px;cursor:pointer;display:block;margin-bottom:5px;padding:8px;transition:background-color .2s ease}.config-job-item.selected,.config-job-item:hover{background:var(--color-primary-lighter)}.config-job-item input{margin-right:8px;width:auto}.config-job-item.unconfigured{background:var(--color-success-lighter)}.config-job-item.unconfigured.selected{background:var(--color-success-light)}.config-job-item.unconfigured span{color:var(--color-text-secondary);font-size:11px;font-style:italic;margin-left:5px}.config-job-list-unified{background:var(--color-bg-secondary);flex-direction:column;max-height:400px;overflow-y:auto;padding:15px}.config-job-item-unified,.config-job-list-unified{border:1px solid var(--color-border);border-radius:6px;display:flex;gap:10px}.config-job-item-unified{align-items:center;background:var(--color-bg-primary);cursor:pointer;padding:10px 12px;transition:all .2s ease}.config-job-item-unified:hover{background:var(--color-bg-secondary);border-color:var(--color-primary)}.config-job-item-unified.selected{background:var(--color-primary-lighter);border-color:var(--color-primary)}.config-job-item-unified.unconfigured{border-left:3px solid var(--color-success)}.config-job-item-unified input[type=checkbox]{cursor:pointer;height:18px;margin:0;width:18px}.config-job-item-name{color:var(--color-text-primary);flex:1 1;font-weight:500}.config-job-item-badge{background:var(--color-success);border-radius:12px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.config-status-selectors-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-top:15px}.config-status-selector{display:flex;flex-direction:column;gap:10px}.config-status-selector-label{color:var(--color-text-primary);font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.config-status-buttons{display:flex;flex-wrap:wrap;gap:8px}.config-status-btn{background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);cursor:pointer;font-size:12px;font-weight:500;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.config-status-btn:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.config-status-btn.active{box-shadow:0 2px 6px #00000026;font-weight:600}.config-status-btn:not(.active){opacity:.7}.config-status-btn:not(.active):hover{opacity:1}.config-search-container{margin-bottom:20px}.config-search-input{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:14px;max-width:400px;padding:10px 15px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.config-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #137af21a;outline:none}.config-status-group-cell{display:flex;flex-direction:column;gap:6px}.config-status-item{align-items:center;display:flex;font-size:12px;gap:8px}.config-status-label-small{color:var(--color-text-secondary);font-size:11px;font-weight:500;min-width:60px}.config-status-badge-text{border-radius:4px;display:inline-block;font-size:11px;font-weight:500;padding:3px 8px;white-space:nowrap}.config-unconfigured-list{display:flex;flex-direction:column;gap:8px;margin-top:15px}.config-unconfigured-list-item{align-items:center;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:6px;display:flex;gap:12px;padding:12px 15px;transition:all .2s ease}.config-unconfigured-list-item:hover{background:var(--color-bg-primary);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.config-unconfigured-list-icon{flex-shrink:0;font-size:18px}.config-unconfigured-list-name{color:var(--color-text-primary);font-size:14px;font-weight:500}.config-status-badge{border-radius:12px;color:#fff;display:inline-block;font-size:11px;font-weight:600;margin-left:8px;padding:4px 10px}.config-status-label{color:var(--color-text-secondary);font-size:13px;font-weight:500}.config-status-list{align-items:center;display:flex;font-size:13px;margin-bottom:8px}.config-card-description{background:var(--color-bg-secondary);border-left:2px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);font-size:14px;line-height:1.6;margin-bottom:20px;padding:12px}.config-job-list-inline{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0}.config-job-list-inline li{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.config-job-list-inline li:hover{background:var(--color-bg-tertiary);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.config-empty-text{color:var(--color-text-tertiary);font-size:13px;margin:0}.config-form-help-text{color:var(--color-text-secondary);font-size:12px;line-height:1.5;margin-bottom:10px}.config-jobs-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:20px}.config-job-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;transition:all .3s ease}.config-job-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.config-job-card-header{align-items:center;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px}.config-job-card-title{color:var(--color-text-primary);font-size:18px;font-weight:600;margin:0}.config-job-card-actions{display:flex;gap:8px}.config-job-card-actions button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;justify-content:center;margin:0 4px;padding:8px;transition:all .2s ease}.config-job-card-actions .btn-edit{background:var(--color-primary-lighter);color:var(--color-primary)}.config-job-card-actions .btn-edit:hover{background:var(--color-primary-light);transform:translateY(-1px)}.config-job-card-actions .btn-delete{background:var(--color-danger-lighter);color:var(--color-danger)}.config-job-card-actions .btn-delete:hover{background:var(--color-danger-light);transform:translateY(-1px)}.config-job-card-body{padding:20px}.config-job-groups-section{border-bottom:1px solid var(--color-border);margin-bottom:20px;padding-bottom:16px}.config-job-groups-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.config-job-group-badge{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);display:inline-block;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s ease}.config-job-group-badge:hover{background:var(--color-bg-tertiary);border-color:var(--color-primary);color:var(--color-primary)}.config-job-status-section{margin-bottom:20px}.config-job-status-section:last-child{margin-bottom:0}.config-job-section-title{border-bottom:2px solid var(--color-border);color:var(--color-text-secondary);font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;padding-bottom:8px;text-transform:uppercase}.config-job-status-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.config-job-status-item{display:flex;flex-direction:column;gap:6px}.config-job-status-label{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.3px;text-transform:uppercase}.config-job-status-badge{border-radius:6px;display:inline-block;font-size:12px;font-weight:600;min-width:100px;padding:6px 12px;text-align:center;white-space:nowrap}.config-table-two-columns .config-table{width:100%}.config-table-two-columns .config-table td,.config-table-two-columns .config-table th{width:50%}.config-table-two-columns .config-table td:first-child,.config-table-two-columns .config-table td:nth-child(2),.config-table-two-columns .config-table th:first-child,.config-table-two-columns .config-table th:nth-child(2){border-right:1px solid var(--color-border)}.config-unconfigured-jobs{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:20px}.config-unconfigured-job-card{background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;padding:20px;transition:all .2s ease}.config-unconfigured-job-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.config-unconfigured-job-name{align-items:center;color:var(--color-text-primary);display:flex;font-size:16px;font-weight:600;gap:10px;margin-bottom:15px}.config-unconfigured-job-icon{font-size:20px}.config-unconfigured-job-btn{background:var(--color-success);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s ease;width:100%}.config-unconfigured-job-btn:hover{background:var(--color-success-dark);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.config-section-description{color:var(--color-text-secondary);font-size:14px;line-height:1.5;margin-bottom:0;margin-top:5px}.config-section-header>div{flex:1 1}.historique-container{margin:0 auto;max-width:1400px;padding:2rem}.historique-header{margin-bottom:2rem}.historique-header h1{color:#1a1a1a;font-size:2rem;font-weight:600;margin-bottom:.5rem}.historique-header .subtitle{color:#666;font-size:1rem}.historique-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.historique-controls>*{flex:0 0 auto}.search-box{flex:1 1;max-width:500px;min-width:300px;position:relative}.search-input{border:1px solid #ddd;border-radius:8px;font-size:1rem;padding:.75rem 1rem .75rem 2.5rem;transition:border-color .2s;width:100%}.search-input:focus{border-color:#4a90e2;outline:none}.search-box svg{color:#999;left:.75rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.stats{color:#666;font-size:.9rem}.no-results{color:#999;padding:3rem;text-align:center}.device-list{display:flex;flex-direction:column;gap:1rem}.device-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.device-card:hover{box-shadow:0 2px 8px #0000001a}.device-card-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:1.25rem;transition:background-color .2s}.device-card-header:hover{background-color:#f9f9f9}.device-info{flex:1 1}.device-serial{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.device-type-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.device-serial strong{color:#1a1a1a;font-size:1.1rem}.device-model{background:#f0f0f0;border-radius:4px;color:#666;font-size:.9rem;padding:.25rem .5rem}.filters{align-items:center;display:flex}.filter-buttons{display:flex;gap:.5rem}.filter-btn{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.filter-btn:hover{background:#f5f5f5;border-color:#bbb}.filter-btn.active{background:#4a90e2;border-color:#4a90e2;color:#fff}.device-owner{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.owner-label{color:#666;font-size:.9rem}.owner-name{color:#1a1a1a;font-weight:500}.owner-date{color:#666;font-size:.85rem}.no-owner{color:#999;font-style:italic}.device-actions{align-items:center;display:flex;gap:1rem}.history-count{color:#666;font-size:.9rem}.expand-icon{color:#666;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.device-history{background:#fafafa;border-top:1px solid #e0e0e0;padding:1.25rem}.device-history h3{color:#1a1a1a;font-size:1rem;font-weight:600;margin-bottom:1rem}.history-list{display:flex;flex-direction:column;gap:.75rem}.history-entry{align-items:flex-start;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;gap:1rem;justify-content:space-between;padding:.75rem}.history-user{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.history-user strong{color:#1a1a1a}.history-email{color:#666;font-size:.85rem}.history-details{align-items:flex-end;display:flex;flex:1 1;flex-direction:column;gap:.25rem}.history-date,.history-notes{color:#666;font-size:.85rem}.history-notes{font-style:italic}.current-badge{background:#4a90e2;border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:.25rem .5rem;white-space:nowrap}.loading{color:#666;padding:3rem;text-align:center}@media (max-width:768px){.historique-container{padding:1rem}.historique-controls{align-items:stretch;flex-direction:column}.search-box{max-width:100%}.device-card-header{align-items:flex-start;flex-direction:column;gap:1rem}.device-actions{justify-content:space-between;width:100%}.history-entry{flex-direction:column;gap:.5rem}.history-details{align-items:flex-start}}
/*# sourceMappingURL=main.ceccca94.css.map*/