.mechanic-absence{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:20px;margin:0 0 18px}.mechanic-absence>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.mechanic-absence h2{margin:3px 0}.mechanic-absence header p{margin:4px 0;color:#64748b}.absence-header-actions{display:flex;gap:8px;align-items:center}.mechanic-absence header button,.mechanic-absence-form button{border:0;border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer}.mechanic-absence header button,.mechanic-absence-form button[type=submit]{background:#172033;color:#fff}.mechanic-absence [data-absence-toggle]{background:#e8eef7;color:#172033}.mechanic-absence.collapsed{padding:12px 16px}.mechanic-absence.collapsed>header{align-items:center}.mechanic-absence.collapsed header small,.mechanic-absence.collapsed header p,.mechanic-absence.collapsed [data-absence-open],.mechanic-absence.collapsed [data-absence-body]{display:none}.mechanic-absence.collapsed h2{font-size:16px;margin:0}.mechanic-absence-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid #e2e8f0}.mechanic-absence-form label{display:grid;gap:6px;font-weight:700}.mechanic-absence-form input,.mechanic-absence-form select,.mechanic-absence-form textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:10px;background:#fff}.mechanic-absence-form .wide{grid-column:1/-1}.mechanic-absence-form footer{display:flex;justify-content:flex-end;gap:8px}.absence-warning{padding:12px;border-radius:10px;background:#fff1f2;border:1px solid #fecdd3;color:#9f1239;display:grid;gap:3px}.absence-warning[hidden]{display:none}.absence-request{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 0;border-top:1px solid #eef2f7}.absence-request:first-child{margin-top:14px}.absence-request div{display:grid;gap:3px}.absence-request span,.absence-request small{color:#64748b}.absence-request strong{font-size:12px;background:#fff7ed;padding:6px 9px;border-radius:20px;height:max-content}.absence-request.rejected{opacity:.65}.absence-empty{padding:14px 0;color:#64748b}.employee-priority-bars{display:grid;gap:6px;padding:8px 10px;border-bottom:1px solid #22324a}.employee-priority-bar{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;border:1px solid #38506d;border-radius:7px;background:#12243a;color:#e8f1ff}.employee-priority-bar.critical{border-color:#ef4444;background:#35171d;box-shadow:inset 3px 0 #ef4444;animation:employeeAlarmPulse 1.4s ease-in-out infinite}.employee-priority-summary{min-width:0;display:flex;align-items:center;gap:9px;flex:1;font-size:12px;cursor:pointer}.employee-priority-summary b{white-space:nowrap;font-size:11px;color:#93c5fd}.employee-priority-bar.critical .employee-priority-summary b{color:#fca5a5}.employee-priority-summary strong{white-space:nowrap;color:#fff}.employee-priority-summary span{white-space:nowrap;color:#b8c7dc}.employee-priority-summary em{white-space:nowrap;color:#fca5a5;font-style:normal}.employee-priority-summary u{color:#93c5fd;text-decoration:none;font-weight:800}.employee-priority-actions{display:flex;gap:5px;flex:0 0 auto}.employee-priority-actions button{border:1px solid #48627f;background:#172a42;color:#eaf2ff;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:700;cursor:pointer}.employee-priority-actions button:first-child{background:#1d4ed8;border-color:#3b82f6;color:#fff}.employee-priority-bar.critical .employee-priority-actions button:first-child{background:#b91c1c;border-color:#ef4444}.absence-workspace-backdrop{position:fixed;inset:0;background:rgba(2,6,23,.72);z-index:1190}.absence-workspace{position:fixed;z-index:1200;inset:2vh 2vw;background:#0b1627;color:#e5edf8;border:1px solid #334b68;border-radius:16px;overflow:auto;padding:20px;box-shadow:0 25px 80px rgba(0,0,0,.55)}.absence-workspace>header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #263a53;padding-bottom:14px}.absence-workspace>header h2{margin:4px 0}.absence-workspace>header p{margin:0;color:#9fb0c6}.absence-workspace>header button{font-size:28px;background:transparent;border:0;color:#fff;cursor:pointer}.absence-impact{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:14px 0}.absence-impact>div{background:#12243a;border:1px solid #2d4561;border-radius:9px;padding:10px;display:grid;gap:3px}.absence-impact b{font-size:20px}.absence-impact span{font-size:11px;color:#a8bad0}.absence-impact .danger{border-color:#ef4444;background:#35171d}.absence-note{background:#12243a;border-radius:9px;padding:12px;margin-bottom:12px}.absence-note p{margin:5px 0 0}.absence-workspace-grid{display:grid;grid-template-columns:minmax(620px,1.55fr) minmax(300px,.65fr);gap:14px}.absence-team-calendar,.absence-ai,.absence-checklist{border:1px solid #2d4561;border-radius:10px;background:#101f32;padding:12px}.absence-team-calendar>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.absence-team-calendar>header>div{display:grid;gap:2px}.absence-team-calendar>header span{text-transform:capitalize;color:#9fb0c6}.absence-team-calendar nav{display:flex;gap:6px}.absence-team-calendar nav button{width:34px;height:30px;border:1px solid #405a78;background:#172a42;color:#fff;border-radius:7px;font-size:20px;cursor:pointer}.absence-month-weekdays,.absence-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.absence-month-weekdays b{text-align:center;padding:6px;color:#91a6bf;font-size:11px;text-transform:uppercase}.absence-month-day{min-height:92px;border-top:1px solid #2a405b;border-left:1px solid #2a405b;padding:5px;overflow:visible;background:#0e1b2d}.absence-month-day:nth-child(7n){border-right:1px solid #2a405b}.absence-month-day:nth-last-child(-n+7){border-bottom:1px solid #2a405b}.absence-month-day.empty{background:#0a1422}.absence-month-day time{display:block;text-align:right;color:#9fb0c6;font-size:11px;margin-bottom:4px}.absence-day-events{display:grid;gap:3px}.absence-day-event{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:1px;border-radius:0;padding:4px 7px;background:#1d4ed8;color:#fff;font-size:9px;line-height:1.15;overflow:hidden;margin-left:-6px;margin-right:-6px}.absence-day-event.range-start{margin-left:0;border-radius:5px 0 0 5px}.absence-day-event.range-end{margin-right:0;border-radius:0 5px 5px 0}.absence-day-event.range-start.range-end{border-radius:5px}.absence-day-event.range-middle strong,.absence-day-event.range-middle span{visibility:hidden}.absence-day-event strong,.absence-day-event span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.absence-day-event.type-sickness,.absence-day-event.type-emergency{background:#991b1b}.absence-day-event.type-day_off,.absence-day-event.type-training{background:#6d28d9}.absence-day-event.type-other{background:#475569}.absence-day-event.reported{outline:1px dashed #fbbf24;outline-offset:-2px}.absence-day-event.subject{box-shadow:0 0 0 2px #60a5fa inset}.absence-calendar-legend{display:flex;gap:14px;flex-wrap:wrap;padding-top:10px;font-size:10px;color:#a8bad0}.absence-calendar-legend span{display:flex;align-items:center;gap:5px}.absence-calendar-legend i{width:10px;height:10px;border-radius:3px;background:#1d4ed8}.absence-calendar-legend i.sick{background:#991b1b}.absence-calendar-legend i.dayoff{background:#6d28d9}.absence-calendar-legend i.pending{background:transparent;border:1px dashed #fbbf24}.absence-ai{margin-bottom:12px}.absence-ai h3,.absence-checklist h3{margin:0 0 9px}.absence-ai h3 span{font-size:10px;border:1px solid #64748b;border-radius:12px;padding:3px 6px;margin-left:5px}.absence-ai p{font-weight:700}.absence-ai div{font-size:12px;margin:6px 0;color:#c8d6e8}.absence-checklist label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #263a53;font-size:12px}.absence-checklist label b{font-size:9px}.absence-checklist .required b{color:#fca5a5}.absence-checklist .ok b{color:#86efac}.absence-workspace>footer{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #263a53}.absence-workspace>footer button{border:1px solid #49627f;background:#172a42;color:#fff;border-radius:7px;padding:9px 14px;font-weight:800;cursor:pointer}.absence-workspace>footer .primary{background:#1d4ed8;border-color:#3b82f6}.absence-workspace-loading{position:fixed;z-index:1200;left:50%;top:50%;transform:translate(-50%,-50%);background:#0b1627;color:#fff;padding:18px 24px;border-radius:10px}@keyframes employeeAlarmPulse{0%,100%{border-color:#ef4444;box-shadow:inset 3px 0 #ef4444,0 0 0 rgba(239,68,68,0)}50%{border-color:#fca5a5;box-shadow:inset 3px 0 #f87171,0 0 10px rgba(239,68,68,.28)}}@media(prefers-reduced-motion:reduce){.employee-priority-bar.critical{animation:none}}@media(max-width:900px){.absence-workspace-grid{grid-template-columns:1fr}.absence-month-day{min-height:76px}}@media(max-width:760px){.mechanic-absence>header{display:block}.absence-header-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:10px}.mechanic-absence>header button{width:100%;margin-top:0}.mechanic-absence.collapsed>header{display:flex;align-items:center}.mechanic-absence.collapsed .absence-header-actions{display:block;margin-top:0}.mechanic-absence-form{grid-template-columns:1fr}.mechanic-absence-form .wide{grid-column:auto}.employee-priority-bar{align-items:flex-start;flex-direction:column}.employee-priority-summary{align-items:flex-start;flex-wrap:wrap}.employee-priority-actions{width:100%}.employee-priority-actions button{flex:1}.absence-workspace{inset:1vh 1vw;padding:10px}.absence-impact{grid-template-columns:repeat(2,1fr)}.absence-month-day{min-height:62px;padding:3px}.absence-day-event{font-size:8px;padding:3px 5px;margin-left:-4px;margin-right:-4px}.absence-day-event.range-start{margin-left:0}.absence-day-event.range-end{margin-right:0}.absence-workspace>footer{position:sticky;bottom:-10px;background:#0b1627;padding:10px 0}}
