:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#172033;background:#f4f6f9;font-synthesis:none;--navy:#17253f;--orange:#ee721b;--line:#e4e8ef;--muted:#687387;--green:#1d9b69;--red:#d9485f;--amber:#e7a51a;--blue:#3578d4}*{box-sizing:border-box}body{margin:0;background:#f4f6f9}button,input,select{font:inherit}button{cursor:pointer}.hrApp{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#14213a,#0d182b);color:#fff;padding:22px 14px;display:flex;flex-direction:column;transition:.2s}.sidebar.collapsed{width:76px}.collapse{position:absolute;right:12px;top:12px;background:transparent;border:0;color:#9eabc0;font-size:18px}.brand{display:flex;align-items:center;gap:11px;padding:26px 8px 25px;border-bottom:1px solid #ffffff17}.brand img{width:50px;height:38px;object-fit:contain;background:#fff;border-radius:7px;padding:3px}.brand div{display:grid}.brand strong{font-size:15px;letter-spacing:.8px}.brand small{font-size:10px;color:#9da9bd;text-transform:uppercase}.sidebar nav{display:grid;gap:4px;padding-top:18px}.sidebar nav button{height:44px;border:0;background:transparent;color:#aeb8c9;border-radius:8px;text-align:left;padding:0 12px;display:flex;align-items:center;gap:12px;white-space:nowrap}.sidebar nav button span{font-size:17px;width:18px;text-align:center}.sidebar nav button:hover,.sidebar nav button.active{background:#ffffff12;color:#fff}.sidebar nav button.active{box-shadow:inset 3px 0 var(--orange)}.sidebar nav b{margin-left:auto;background:var(--orange);padding:2px 7px;border-radius:10px;font-size:11px}.sidebarFoot{margin-top:auto;border-top:1px solid #ffffff17;padding:16px 5px;display:flex;align-items:center;gap:10px}.sidebarFoot div{display:grid}.sidebarFoot small{color:#8491a6}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--orange);font-size:12px;font-weight:800}.hrApp>main{padding:30px 34px;min-width:0}.pageHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.pageHead h1{margin:3px 0 0;font-size:28px;color:var(--navy)}.eyebrow{margin:0;color:#8490a2;font-size:10px;font-weight:800;letter-spacing:1.4px}.headActions{display:flex;gap:10px;align-items:center}.ghost{background:#fff;border:1px solid var(--line);color:#566176;border-radius:8px;padding:9px 14px}.live{background:#e8f7f1;color:#16835a;border-radius:20px;padding:8px 12px;font-size:12px;font-weight:700}.notice{background:#fff4e9;border:1px solid #ffd1a8;padding:10px 14px;border-radius:8px;margin:-12px 0 18px;color:#8a4a18;display:flex;justify-content:space-between}.hero{background:linear-gradient(110deg,#172a4b,#213c67);color:#fff;border-radius:13px;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 8px 24px #1829431c}.hero p{margin:0 0 5px;color:#bdc8d9;font-size:12px}.hero h2{font-size:23px;margin:0 0 7px}.hero span{font-size:13px;color:#d7ddea}.hero button,.card button,.warHero button,.drawer button,.protocolGrid button,.adminTiles button{background:var(--orange);color:#fff;border:0;border-radius:7px;padding:9px 14px;font-weight:700}.kpis{display:grid;grid-template-columns:repeat(8,minmax(100px,1fr));gap:11px;margin:18px 0}.kpi{background:#fff;border:1px solid var(--line);border-top:3px solid #8d9aab;border-radius:9px;padding:15px;display:grid;gap:8px;box-shadow:0 2px 8px #19284408}.kpi small{color:var(--muted);font-size:11px}.kpi strong{font-size:25px;color:var(--navy)}.kpi.warn{border-top-color:var(--amber)}.kpi.orange{border-top-color:var(--orange)}.kpi.danger{border-top-color:var(--red)}.kpi.good{border-top-color:var(--green)}.kpi.blue{border-top-color:var(--blue)}.twoCols{display:grid;grid-template-columns:1.65fr 1fr;gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:20px;box-shadow:0 3px 14px #17253f0a}.cardTitle{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.cardTitle>div{display:flex;align-items:center;gap:8px}.cardTitle h3{margin:0;font-size:15px}.cardTitle button{background:transparent;color:var(--orange);padding:4px}.dot{width:8px;height:8px;border-radius:50%}.red{background:var(--red)}.workList{display:grid}.workList article{display:grid;grid-template-columns:5px 1fr auto 85px auto;gap:13px;align-items:center;padding:12px 3px;border-top:1px solid #eef0f4}.workList article>div{display:grid}.workList small,.recoveryRow small{font-size:9px;color:#8a94a4;text-transform:uppercase;font-weight:800}.workList strong{font-size:13px}.workList p{margin:2px 0 0;color:var(--muted);font-size:11px}.workList button{font-size:11px;padding:7px 10px}.priority{height:34px;width:4px;border-radius:5px;background:#9ca6b5}.priority.HIGH{background:var(--orange)}.priority.CRITICAL{background:var(--red)}.priority.LOW{background:var(--green)}.status{display:inline-flex;width:max-content;border-radius:12px;padding:4px 8px;font-size:9px;font-weight:800;text-transform:uppercase;background:#eef1f5;color:#566176}.status.escalation,.status.critico,.status.bloccato{background:#feecef;color:#c6314b}.status.da-firmare,.status.contratto{background:#eaf2ff;color:#2867b9}.status.in-lavorazione,.status.parziale,.status.proroga{background:#fff2df;color:#b76911}.status.completo,.status.done,.status.chiuso{background:#e8f7f1;color:#148159}.counter{background:#feecef;color:#c6314b;border-radius:12px;padding:4px 8px;font-weight:800}.donutWrap{display:flex;align-items:center;justify-content:space-around;padding:16px}.donut{--pct:0%;width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle 58px,#fff 59px,transparent 60px),conic-gradient(var(--green) var(--pct),#edf0f4 0)}.donut strong{font-size:29px}.donut small{color:var(--muted)}.legend p{display:grid;grid-template-columns:8px 1fr auto;gap:8px;font-size:12px}.legend i{width:8px;height:8px;border-radius:50%;margin-top:4px}.green{background:var(--green)}.orange{background:var(--orange)}.toolbar{display:grid;grid-template-columns:2fr repeat(2,1fr) auto;gap:10px}.toolbar input,.toolbar select,.mapping select,.tableWrap select{border:1px solid var(--line);border-radius:7px;padding:10px;background:#fff}.resultCount{font-size:11px;color:var(--muted)}.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse}th{font-size:9px;text-transform:uppercase;color:#778296;background:#f8f9fb}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid #edf0f4;white-space:nowrap}td{font-size:12px}td small{display:block;color:var(--muted)}tbody tr{cursor:pointer}tbody tr:hover{background:#fff9f5}.tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:15px}.tabs button{background:transparent;color:#657084;border:0;border-bottom:2px solid transparent;border-radius:0;padding:9px 12px;text-transform:capitalize;white-space:nowrap}.tabs button.active{color:var(--orange);border-color:var(--orange)}.warHero{background:#231d24;color:#fff;border-radius:11px;padding:19px 22px;margin-bottom:15px;display:flex;align-items:center;gap:35px}.warHero>div:first-child{margin-right:auto}.warHero p{margin:0;color:#fdab70;font-size:10px;font-weight:800}.warHero h2{margin:4px 0}.warHero>div:not(:first-child){display:grid;text-align:center}.warHero b{font-size:23px}.warHero small{color:#bcb4bc}.recoveryList{display:grid}.recoveryRow{display:grid;grid-template-columns:4px 1.3fr 1fr 130px auto;gap:15px;align-items:center;border-bottom:1px solid #edf0f4;padding:13px 2px}.recoveryRow h3,.recoveryRow p{margin:3px 0;font-size:13px}.recoveryRow>div:nth-child(4){display:grid;gap:5px}.quick{display:flex;gap:5px}.quick button:first-child{background:#edf1f5;color:#455066}.deadlineGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.deadlineGrid article{display:flex;gap:12px;border:1px solid var(--line);border-radius:9px;padding:13px}.deadlineGrid h3,.deadlineGrid p{margin:6px 0}.deadlineGrid p{font-size:11px;color:var(--muted)}.dateBox{width:48px;height:54px;border-radius:7px;background:#fff3ea;color:#c65b10;display:grid;place-content:center;text-align:center}.dateBox b{font-size:20px}.dateBox small{text-transform:uppercase}.emptyState{text-align:center;padding:70px 20%}.emptyState>span{font-size:50px;color:#adb5c1}.stepper{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:22px}.stepper b{border-bottom:3px solid var(--line);padding:10px;color:#9ba4b2;font-size:11px}.stepper b.done{color:var(--orange);border-color:var(--orange)}.dropzone{border:2px dashed #cfd5df;background:#fafbfc;display:grid;place-items:center;padding:35px;border-radius:10px;color:var(--muted);cursor:pointer}.dropzone>strong{color:var(--navy);margin:8px}.dropzone input{display:none}.mapping{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.mapping h3{width:100%}.mapping span{background:#eef2f7;border-radius:6px;padding:8px;font-size:11px}.protocolGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.protocolGrid article>span{color:var(--orange);font-weight:900}.protocolGrid p{min-height:38px;color:var(--muted);font-size:12px}.anomalyCatalog{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:4px 16px}.anomalyCatalog h3{grid-column:1/-1}.anomalyCatalog p{margin:0;min-height:0}.anomalyCatalog b{color:var(--orange);margin-right:8px}.report{grid-template-columns:repeat(4,1fr)}.report button{margin-top:12px}.adminTiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.drawerOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182888;z-index:20}.drawer{position:absolute;right:0;top:0;height:100%;width:min(850px,92vw);background:#f5f7fa;padding:26px;overflow:auto;box-shadow:-10px 0 30px #10203933}.drawerClose{position:absolute;right:18px;top:15px!important;background:transparent!important;color:#6b7483!important;font-size:25px!important}.drawer header{display:grid;grid-template-columns:62px 1fr auto;gap:15px;align-items:center;background:#fff;border-radius:10px;padding:18px;margin-bottom:15px}.drawer header h2,.drawer header p{margin:3px}.employeeAvatar{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff0e5;color:var(--orange);font-weight:900;font-size:20px}.folderScore{border-left:4px solid var(--amber);padding:8px 14px;display:grid}.folderScore b{font-size:26px}.folderScore span{font-size:10px;color:var(--muted)}.folderScore.good{border-color:var(--green)}.folderScore.bad{border-color:var(--red)}.drawerBody{background:#fff;border-radius:10px;padding:18px}.infoGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px}.infoGrid>div{border:1px solid var(--line);padding:12px;border-radius:7px;display:grid}.infoGrid small{color:var(--muted);font-size:10px}.dataCards{display:grid;gap:8px}.dataCards article{border:1px solid var(--line);border-radius:7px;padding:12px}.dataCards p{margin:4px 0;color:var(--muted)}.zero{padding:35px;text-align:center;color:#8b95a5}.report{margin:0}@media (max-width:1200px){.kpis{grid-template-columns:repeat(4,1fr)}.protocolGrid{grid-template-columns:repeat(2,1fr)}}@media (max-width:800px){.hrApp{grid-template-columns:76px 1fr}.sidebar{width:76px}.brand div,.sidebar nav button:not(.active){font-size:0}.hrApp>main{padding:18px}.twoCols,.deadlineGrid{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}.toolbar{grid-template-columns:1fr}.recoveryRow{grid-template-columns:4px 1fr}.recoveryRow>*{grid-column:2}.pageHead .ghost{display:none}.infoGrid{grid-template-columns:repeat(2,1fr)}}.companySelect{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 12px;color:var(--navy);font-weight:700}.companyGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.companyGrid button{display:grid;text-align:left;gap:5px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:15px;color:var(--navy)}.companyGrid button.active{border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange);background:#fff9f4}.companyGrid small{color:var(--orange);font-size:9px;font-weight:900;letter-spacing:.8px}.companyGrid strong{font-size:15px}.companyGrid span{font-size:11px;color:var(--muted)}@media (max-width:900px){.companyGrid{grid-template-columns:repeat(2,1fr)}.companySelect{max-width:150px}}.toolbar{grid-template-columns:minmax(240px,2fr) repeat(2,minmax(130px,1fr)) auto auto}.importEmployees{display:flex;align-items:center;justify-content:center;background:#eef2f7;color:#344258;border:1px solid var(--line);border-radius:7px;padding:9px 14px;font-weight:700;cursor:pointer;white-space:nowrap}.importEmployees input{display:none}.companyGrid{grid-template-columns:repeat(3,1fr)}.quickActions{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 13px;margin-top:13px}.quickActions>div{display:grid;margin-right:auto}.quickActions small,.driveHero small,.associationRules>div small{font-size:9px;color:var(--orange);font-weight:900;letter-spacing:1px}.quickActions button{border:1px solid var(--line);background:#f8fafc;color:#334158;border-radius:7px;padding:8px 12px;font-weight:700}.quickActions button:hover{border-color:var(--orange);color:var(--orange)}.driveHero{display:grid;grid-template-columns:58px 1fr auto auto;gap:18px;align-items:center;background:linear-gradient(110deg,#172a4b,#213c67);color:#fff;border-radius:12px;padding:25px 28px;margin-bottom:15px}.driveMark{width:52px;height:52px;border-radius:12px;background:#fff;color:#4285f4;display:grid;place-items:center;font-weight:900;font-size:25px}.driveHero h2{margin:4px 0}.driveHero p{margin:0;color:#cbd5e4;font-size:12px;max-width:720px}.driveHero button{border:0;background:var(--orange);color:#fff;border-radius:7px;padding:10px 14px;font-weight:800}.driveHero button:disabled{background:#52627b;cursor:not-allowed}.connectorStatus{font-size:11px;color:#f3bf73;background:#ffffff12;padding:8px 10px;border-radius:14px}.connectorStatus.connected{color:#71ddb5}.associationRules{display:grid;grid-template-columns:230px 1fr auto;align-items:center;gap:20px}.associationRules h3{margin:4px 0}.associationRules ol{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none;counter-reset:rules}.associationRules li{display:grid;grid-template-columns:25px 1fr;column-gap:8px;counter-increment:rules}.associationRules li:before{content:counter(rules);grid-row:1/3;width:23px;height:23px;border-radius:50%;background:#fff0e6;color:var(--orange);display:grid;place-items:center;font-size:11px;font-weight:900}.associationRules li span{font-size:10px;color:var(--muted)}@media (max-width:900px){.quickActions{flex-wrap:wrap}.quickActions>div{width:100%}.driveHero{grid-template-columns:50px 1fr}.driveHero>span,.driveHero>button{grid-column:2}.associationRules,.associationRules ol{grid-template-columns:1fr}}.simpleUpload{margin-bottom:15px;border-top:4px solid var(--green)}.simpleUploadHead{display:flex;justify-content:space-between;align-items:center;gap:25px}.simpleUploadHead small{color:var(--green);font-size:9px;font-weight:900;letter-spacing:1px}.simpleUploadHead h2{margin:5px 0}.simpleUploadHead p{margin:0;color:var(--muted);font-size:12px}.uploadButton{background:var(--green);color:#fff;border-radius:8px;padding:12px 18px;font-weight:800;white-space:nowrap;cursor:pointer}.uploadButton input{display:none}.uploadQueue{display:grid;gap:7px;margin-top:20px}.uploadQueue article{display:grid;grid-template-columns:minmax(200px,1.3fr) minmax(220px,1fr) minmax(180px,.8fr) 35px;gap:8px;align-items:center;padding:9px;border:1px solid #cdeadd;background:#f7fcfa;border-radius:8px}.uploadQueue article.unmatched{border-color:#f1d39c;background:#fffbf4}.uploadQueue article>div{display:grid}.uploadQueue small{color:var(--muted)}.uploadQueue select{border:1px solid var(--line);background:#fff;border-radius:6px;padding:8px}.uploadQueue button{background:transparent;color:var(--muted);font-size:20px;padding:4px}.uploadFooter{display:flex;justify-content:flex-end;align-items:center;gap:15px;margin-top:13px}.uploadFooter span{font-size:11px;color:var(--muted)}.uploadFooter button{background:var(--green)}.uploadFooter button:disabled{opacity:.5}.driveAdvanced{margin-top:12px}.driveAdvanced>summary{cursor:pointer;color:var(--muted);font-size:12px;padding:12px}.driveAdvanced .driveHero{margin-top:5px}@media (max-width:900px){.simpleUploadHead{align-items:flex-start;flex-direction:column}.uploadQueue article{grid-template-columns:1fr}.uploadQueue article>button{justify-self:end}}
