*{box-sizing:border-box}body{margin:0;background:#f5f7f9;color:#1d303b;font:14px 'Segoe UI',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #dce3e7;background:white;border-radius:7px;padding:10px 14px;color:#344852}button:hover{background:#eef4f3}aside{position:fixed;width:236px;background:#142d32;color:#b1c2c4;height:100vh;padding:35px 21px;display:flex;flex-direction:column}.brand{color:white;text-decoration:none;font-size:32px;display:flex;gap:13px;align-items:center;font-weight:700;margin-bottom:48px}.brand>:first-child{color:#70d5b7}.dot{color:#68d1b3}aside small{font-size:10px;letter-spacing:1.6px;color:#7d999d;padding-left:14px}nav{margin-top:18px}nav button{display:block;background:none;border:0;color:#b1c2c4;width:100%;text-align:left;margin-bottom:7px;padding:14px}nav button.active{background:#26464a;color:#a5efda}nav i{font-style:normal;display:inline-block;width:30px;font-size:18px}.aside-bottom{margin-top:auto;font-size:12px}.aside-bottom p{font-size:11px;line-height:1.6;color:#8da6aa}.aside-bottom button{background:transparent;border-color:#365156;color:#b1c2c4;width:100%;font-size:11px;margin-top:8px}.live{display:inline-block;width:6px;height:6px;border-radius:50%;background:#73d4ae;margin-right:7px}main{margin-left:236px}header{height:78px;background:white;border-bottom:1px solid #e4e9ec;padding:0 42px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#7e8e96}header b{margin:0 15px;color:#bcc8cd}#crumb{color:#31464d}.profile{background:#e9f2ee;color:#427b66;border-radius:50%;padding:12px;font-weight:600}.content{padding:38px 42px;max-width:1700px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.eyebrow{letter-spacing:1.8px;color:#7c9298;font-size:10px;font-weight:700}h1{font-size:30px;font-weight:650;letter-spacing:-1px;margin:9px 0}p{color:#86949b;margin:6px 0;line-height:1.6}.primary{background:#16745f;color:white;border-color:#16745f}.primary:hover{background:#105d4d}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:28px}.metric,.panel{background:white;border:1px solid #e2e8eb;border-radius:10px}.metric{padding:22px}.metric-label{color:#77888f;font-size:12px}.metric strong{font-size:32px;display:block;margin:14px 0 7px;font-weight:600}.metric small{color:#6e8e83;font-size:11px}.metric .icon{float:right;background:#eef5f2;padding:8px;border-radius:7px;color:#438c76}.grid{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(250px,1fr);gap:23px}.panel-head{padding:22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef1f3}h2{font-size:16px;margin:0;font-weight:650}.link{border:0;background:none;color:#28836c;padding:0;font-size:12px}.toolbar{display:flex;gap:12px;padding:18px 22px;border-bottom:1px solid #edf0f1}input,select,textarea{border:1px solid #dce3e7;border-radius:6px;padding:10px 12px;background:white;color:#344852;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #8ecdbb}#search{flex:1;max-width:380px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;font-size:10px;color:#8d9ca2;font-weight:600;letter-spacing:.7px;background:#fbfcfd;padding:14px 22px}td{padding:18px 22px;border-top:1px solid #eef1f3;font-size:12px}td strong{display:block;font-weight:600;font-size:12px}td small{display:block;color:#94a0a5;margin-top:5px;font-size:10px}.badge{font-size:10px;padding:5px 8px;border-radius:5px;background:#edf3f5;color:#69828c}.badge.En-cours{background:#e8f1fc;color:#427dc0}.badge.Terminée{background:#e8f5ee;color:#428766}.badge.Urgente{background:#fcece9;color:#c46b59}.badge.En-attente{background:#fff4de;color:#b18a33}.rowbtn{border:0;padding:5px 8px;color:#6c8991}.alert{padding:18px 22px;border-bottom:1px solid #eef1f3}.alert strong{font-size:12px}.alert p{font-size:11px}.alert .tag{float:right;color:#c48a41;font-size:10px}.empty{padding:40px;text-align:center;color:#8c9da3}.bottom-panel{margin-top:24px}.workload{padding:18px 22px}.person{display:flex;align-items:center;gap:10px;margin:15px 0}.avatar{background:#e7f1ef;color:#408370;padding:10px;border-radius:50%;font-size:11px}.person-info{flex:1;font-size:12px}.person-info small{color:#97a3a8;display:block;margin-top:5px}.bar{height:5px;background:#edf2f1;border-radius:5px;margin-top:9px}.bar span{display:block;background:#69aa97;height:5px;border-radius:5px}footer{margin-top:30px;color:#9caaaf;font-size:10px;letter-spacing:.4px}footer span{margin:0 8px}#saved{float:right}dialog{border:0;border-radius:13px;padding:28px;width:510px;max-width:92vw;box-shadow:0 20px 100px #142d3244}dialog::backdrop{background:#102f3466}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-head button{border:0;font-size:24px;padding:0}label{display:block;font-size:12px;margin:13px 0 6px}#fields input,#fields select,#fields textarea{width:100%}.actions{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}#toast{position:fixed;bottom:25px;right:25px;background:#173f35;color:white;padding:14px 20px;border-radius:8px;display:none}@media(max-width:1100px){.grid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}aside{width:195px}main{margin-left:195px}.content{padding:28px 23px}}@media(max-width:700px){aside{position:static;width:100%;height:auto;padding:18px}.brand{margin:0;font-size:25px}aside small,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:15px}nav button{white-space:nowrap;padding:9px;font-size:11px}nav i{width:20px}main{margin:0}header{height:55px;padding:0 20px}.content{padding:25px 16px}.heading{align-items:flex-start;gap:15px;flex-direction:column}h1{font-size:26px}.metric{padding:16px}td,th{padding:14px}.toolbar{flex-wrap:wrap}#saved{float:none;display:block;margin:10px 0}}

dialog.wide{width:900px;max-height:90vh;overflow:auto}.job-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.job-grid .full,.form-section{grid-column:1/-1}.form-section{margin:25px 0 4px;padding-bottom:10px;border-bottom:1px solid #e1eae7;font-size:14px;color:#16745f}.form-help{font-size:12px;line-height:1.6}.job-grid input[readonly]{background:#f1f5f3;color:#387461}.wide .actions{position:sticky;bottom:-28px;background:white;padding:18px 0;border-top:1px solid #edf1ef}@media(max-width:600px){.job-grid{grid-template-columns:1fr}.wide .actions{bottom:-28px}}

button.danger{color:#b53737;border-color:#e9bbbb;margin-right:auto}button.danger:hover{background:#fff0f0}button[hidden]{display:none!important}

.personnel-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.personnel-tabs button{font-size:12px}

.parts-group{padding:16px 0;border-bottom:1px solid #e4ebe7}.parts-group h4{margin:0 0 12px}.part-entry{display:grid;grid-template-columns:minmax(0,1fr) 110px 38px;gap:9px;margin-bottom:10px}.part-entry button{padding:7px;color:#b53737}@media(max-width:600px){.part-entry{grid-template-columns:minmax(0,1fr) 85px 32px}}

aside{overflow-y:auto}.aside-bottom{padding-top:20px}

.analysis-section{margin-bottom:23px}.analysis-note{padding:15px 22px;font-size:12px;line-height:1.7}.analysis-section td{white-space:normal;min-width:120px}.analysis-section .toolbar label{margin:0}.analysis-section .toolbar{align-items:end;flex-wrap:wrap}.analysis-section label input,.analysis-section label select{display:block;margin-top:5px}
