.workforce-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.workforce-kpis article{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-sm)}.workforce-kpis span{display:block;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.workforce-kpis strong{display:block;margin-top:7px;font-size:28px}.workforce-kpis .is-pending{border-left:5px solid #f59e0b}.workforce-kpis .is-approved{border-left:5px solid #16a34a}.workforce-kpis .is-sick{border-left:5px solid #dc2626}.absence-list{display:grid;gap:10px}.absence-row{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(140px,auto);align-items:center;gap:16px;padding:14px 16px;border:1px solid var(--border);border-left:6px solid var(--info);border-radius:13px;background:var(--surface);color:inherit;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.absence-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:var(--primary)}.absence-date{text-align:center;border-right:1px solid var(--border);padding-right:14px}.absence-date strong{display:block;font-size:28px;line-height:1}.absence-date span{display:block;margin-top:5px;color:var(--muted);font-size:11px;text-transform:uppercase}.absence-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.absence-main p{margin:5px 0;color:var(--muted)}.absence-main small{color:var(--muted)}.absence-meta{text-align:right}.absence-meta span,.absence-meta small{display:block}.absence-meta small{margin-top:5px;color:var(--muted)}.absence-pending{border-left-color:#f59e0b;background:repeating-linear-gradient(135deg,rgba(245,158,11,.08),rgba(245,158,11,.08) 9px,transparent 9px,transparent 18px),var(--surface)}.absence-leave-approved{border-left-color:#16a34a}.absence-sick{border-left-color:#dc2626;background:color-mix(in srgb,#dc2626 5%,var(--surface))}.absence-unjustified{border-left-color:#7f1d1d;background:color-mix(in srgb,#7f1d1d 7%,var(--surface))}.absence-rejected,.absence-cancelled{border-left-color:#64748b;opacity:.72}.absence-hero-status{padding:20px;border-radius:14px;margin-bottom:18px;border-left:7px solid #64748b}.absence-hero-status span,.absence-hero-status strong{display:block}.absence-hero-status span{font-size:12px;text-transform:uppercase;letter-spacing:.05em}.absence-hero-status strong{font-size:22px;margin-top:5px}.absence-review-form{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.planning-card.absence-card{cursor:pointer}.planning-card.absence-card::before{width:5px}.planning-card.absence-pending{border-style:dashed}.planning-card.absence-leave-approved::before{background:#16a34a}.planning-card.absence-pending::before{background:#f59e0b}.planning-card.absence-sick::before{background:#dc2626}.planning-card.absence-unjustified::before{background:#7f1d1d}.planning-card.absence-card time{color:inherit}.absence-legend{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 16px}.absence-legend span{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.absence-legend i{width:11px;height:11px;border-radius:3px;background:#64748b}.absence-legend .pending i{background:#f59e0b}.absence-legend .leave i{background:#16a34a}.absence-legend .sick i{background:#dc2626}.absence-legend .unjustified i{background:#7f1d1d}@media(max-width:900px){.workforce-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.absence-row{grid-template-columns:56px minmax(0,1fr)}.absence-meta{grid-column:2;text-align:left}}@media(max-width:560px){.workforce-kpis{grid-template-columns:1fr 1fr;gap:8px}.workforce-kpis article{padding:14px}.absence-row{padding:12px;gap:10px}.absence-date strong{font-size:22px}.absence-main p{font-size:12px}}
