/* IMPERIUM Build451 R1 — HR Operating System */
.hr452-shell{width:min(1180px,100%);margin:0 auto;padding:12px;display:grid;gap:14px;min-width:0}.hr452-shell *{box-sizing:border-box}.hr452-hero,.hr452-card,.hr452-person-card,.hr452-advanced{border:1px solid rgba(90,193,220,.2);background:linear-gradient(155deg,rgba(6,31,48,.98),rgba(3,20,32,.99));border-radius:22px;padding:18px;min-width:0}.hr452-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.hr452-hero.compact{padding:16px}.hr452-hero small,.hr452-card-head small{color:#5fd9e7;font-weight:900;letter-spacing:.12em}.hr452-hero h1{margin:4px 0 5px;font-size:clamp(1.9rem,5vw,3rem);line-height:1}.hr452-hero p{margin:0;color:#98afbd}.hr452-status{padding:8px 11px;border:1px solid rgba(88,219,228,.25);border-radius:999px;color:#9eeaf2;white-space:nowrap}.hr452-primary-grid,.hr452-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.hr452-action{display:grid;gap:7px;min-height:130px;padding:17px;border-radius:18px;border:1px solid rgba(92,194,220,.2);background:#061d2b;text-decoration:none;color:#eefaff}.hr452-action b{font-size:1.15rem}.hr452-action span{color:#91aaba;line-height:1.35}.hr452-kpis article{display:grid;gap:5px;padding:14px;border-radius:16px;background:#061b29;border:1px solid rgba(92,194,220,.15)}.hr452-kpis span{color:#8fa6b5}.hr452-kpis strong{font-size:1.8rem}.hr452-card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.hr452-card-head h2{margin:3px 0 0}.hr452-links,.hr452-toolbar,.hr452-weeknav{display:flex;flex-wrap:wrap;gap:8px}.hr452-links a,.hr452-weeknav a,.hr452-toolbar button,.hr452-toolbar select,.hr452-toolbar form button,.hr452-hero>button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 13px;border-radius:13px;border:1px solid rgba(91,205,227,.23);background:#082a3a;color:#e6f9ff;text-decoration:none;font-weight:800}.hr452-weeknav{justify-content:space-between}.hr452-banner{padding:12px 14px;border-radius:14px;background:#092638;color:#ccebf2}.hr452-banner.ok{border:1px solid rgba(68,214,158,.3);color:#caf4df}.hr452-banner.error{border:1px solid rgba(239,100,120,.3);color:#ffd3da}.hr452-planner-list{display:grid;gap:12px}.hr452-person{border:1px solid rgba(94,190,219,.16);border-radius:18px;padding:13px;background:#041923;min-width:0}.hr452-person>header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.hr452-person>header div{display:grid}.hr452-person>header small{color:#8ba5b4}.hr452-person>header button,.hr452-day button,.hr452-entry button{border:1px solid rgba(90,194,219,.2);background:#082b3b;color:#e8faff;border-radius:10px;padding:7px 9px}.hr452-days{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:7px;overflow-x:auto;padding-bottom:3px}.hr452-day{min-width:120px;border:1px solid rgba(87,178,207,.13);border-radius:14px;padding:8px;background:#04151f}.hr452-day-head{display:flex;justify-content:space-between;gap:5px;align-items:center}.hr452-day-head button{font-size:.72rem}.hr452-entry{display:grid;gap:3px;margin-top:7px;padding:8px;border-radius:11px;background:#092635}.hr452-entry span,.hr452-entry small{color:#a8bdc9}.hr452-entry em{color:#f1c36c;font-size:.72rem}.hr452-empty{display:block;margin-top:12px;color:#708897;font-style:italic}.state-riposo{background:#17242d}.state-da_definire{border:1px dashed #6f8795;background:transparent}.state-ferie,.state-malattia,.state-infortunio,.state-permesso{background:#2b2030}.hr452-list,.hr452-my-list{display:grid;gap:9px}.hr452-list article,.hr452-my-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px;border-radius:14px;background:#061b29}.hr452-list article>div,.hr452-my-list article>div{display:grid;gap:3px}.hr452-list form,.hr452-my-list form{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.hr452-personnel-list{display:grid;gap:10px}.hr452-person-card>summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer}.hr452-person-card>summary>div{display:grid;gap:3px}.hr452-person-card>summary span,.hr452-person-card>summary small{color:#8fa8b8}.hr452-person-body{display:grid;gap:12px;margin-top:14px}.hr452-form{display:grid;gap:10px}.hr452-form label,.hr452-dialog label{display:grid;gap:5px;color:#b9cbd5;font-weight:750}.hr452-form input,.hr452-form select,.hr452-dialog input,.hr452-dialog select,.hr452-list input,.hr452-list select,.hr452-my-list input{width:100%;min-width:0;min-height:45px;padding:9px 11px;border-radius:12px;border:1px solid rgba(91,194,218,.2);background:#03151f;color:#effaff}.hr452-form button,.hr452-dialog button,.hr452-list button,.hr452-my-list button{min-height:43px;border:1px solid rgba(80,213,228,.28);border-radius:12px;background:#0a3445;color:#e9fbff;font-weight:850;padding:9px 12px}.hr452-two{display:grid;grid-template-columns:1fr 1fr;gap:9px}.hr452-subcard{padding:13px;border-radius:15px;background:#061a27;border:1px solid rgba(87,181,209,.14)}.hr452-protected{padding:11px;border-radius:12px;background:#231f2d;color:#f0d7ff}.hr452-dialog{width:min(600px,calc(100% - 20px));max-height:90vh;overflow:auto;border:1px solid rgba(95,204,225,.25);border-radius:20px;background:#061a28;color:#eef9ff;padding:18px}.hr452-dialog::backdrop{background:rgba(0,0,0,.7)}.hr452-dialog form{display:grid;gap:10px}.hr452-dialog-actions{display:flex;justify-content:flex-end;gap:7px}.hr452-help{font-size:.8rem;color:#91a8b7}.hr452-replace-results{display:grid;gap:8px}.hr452-candidate{padding:9px;border-radius:11px;background:#082536}.hr452-candidate.excluded{opacity:.72}.hr452-calendar-shortcut{margin:10px 0}.hr452-calendar-shortcut a{display:inline-flex;padding:10px 13px;border-radius:12px;background:#082a3a;color:#e8fbff;text-decoration:none}
@media(max-width:850px){.hr452-primary-grid,.hr452-kpis{grid-template-columns:1fr 1fr}.hr452-days{grid-template-columns:repeat(7,minmax(145px,1fr))}.hr452-hero{display:grid}.hr452-status{justify-self:start}.hr452-list article,.hr452-my-list article{grid-template-columns:1fr}.hr452-person-card>summary{display:grid}.hr452-person>header{align-items:start}}
@media(max-width:560px){.hr452-shell{padding:8px}.hr452-primary-grid,.hr452-kpis,.hr452-two{grid-template-columns:1fr}.hr452-action{min-height:0}.hr452-toolbar{display:grid;grid-template-columns:1fr 1fr}.hr452-toolbar>*{width:100%}.hr452-toolbar form button{width:100%}.hr452-weeknav{display:grid;grid-template-columns:1fr 1fr}.hr452-weeknav a:nth-child(2){display:none}.hr452-card,.hr452-hero,.hr452-person-card{padding:13px;border-radius:18px}.hr452-person>header{display:grid}.hr452-person>header button{justify-self:start}.hr452-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.hr452-dialog-actions button{width:100%}}

.hr452-assignment-list,.hr452-absence-list{display:grid;gap:8px;margin:10px 0}.hr452-assignment,.hr452-absence-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border-radius:12px;background:#051923;border:1px solid rgba(90,190,216,.14)}.hr452-assignment>div,.hr452-absence-list article>div{display:grid;gap:3px;min-width:0}.hr452-assignment span,.hr452-assignment small,.hr452-absence-list span,.hr452-absence-list small{color:#91a9b8}.hr452-protected-inline{color:#e7c5ff}.hr452-absence-list form{display:flex;gap:6px;align-items:center}.hr452-absence-list select{min-height:42px;border-radius:11px;border:1px solid rgba(91,194,218,.2);background:#03151f;color:#effaff;padding:8px}
@media(max-width:700px){.hr452-assignment,.hr452-absence-list article{grid-template-columns:1fr}.hr452-absence-list form{display:grid;grid-template-columns:1fr 1fr}.hr452-absence-list form>*{width:100%}}

/* Build452 — coperture e sostituzione one-tap */
.hr452-gap{border-left:3px solid rgba(246,183,85,.72)!important}
.hr452-covered{display:block;color:#70e6c2!important;font-style:normal!important;font-weight:700}
.hr452-linkbutton{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:.72rem 1rem;border:1px solid rgba(83,223,238,.28);border-radius:14px;color:#8cecf6;background:rgba(31,135,151,.12)}
.hr452-inline-form{margin:0!important;display:inline-flex!important}
.hr452-inline-form button{min-width:86px}
.hr452-candidate{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important}
.hr452-candidate>div{min-width:0}
.hr452-candidate.excluded{grid-template-columns:1fr!important}
@media(max-width:700px){
  .hr452-candidate{grid-template-columns:1fr!important}
  .hr452-candidate .hr452-inline-form,
  .hr452-candidate .hr452-inline-form button{width:100%!important}
}
