.page-header.svelte-16pwk6k{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}h1.svelte-16pwk6k{font-size:1.5rem;font-weight:800;color:#1e293b;margin:0}.header-actions.svelte-16pwk6k{display:flex;align-items:center;gap:1rem}.month-bar.svelte-16pwk6k{display:flex;align-items:center;gap:.5rem}.month-btn.svelte-16pwk6k{width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#64748b}.month-btn.svelte-16pwk6k:hover{background:#f8fafc;border-color:#cbd5e1}.month-label.svelte-16pwk6k{font-size:.95rem;font-weight:700;color:#1e293b;min-width:120px;text-align:center}.export-row.svelte-16pwk6k{display:flex;gap:.5rem}.btn-export.svelte-16pwk6k{display:flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;font-size:.8rem;font-weight:600;color:#334155;cursor:pointer;font-family:inherit}.btn-export.svelte-16pwk6k:hover{background:#f8fafc;border-color:#cbd5e1}.btn-export--ghost.svelte-16pwk6k{color:#64748b}.stats-row.svelte-16pwk6k{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card.svelte-16pwk6k{background:#fff;padding:1.25rem;border-radius:12px;text-align:center;box-shadow:0 1px 3px #0000000f}.num.svelte-16pwk6k{display:block;font-size:2rem;font-weight:800;color:#1e293b;letter-spacing:-.5px}.num.ok.svelte-16pwk6k{color:#27ae60}.num.warn.svelte-16pwk6k{color:#f59e0b}.num.alert.svelte-16pwk6k{color:#e74c3c}.label.svelte-16pwk6k{font-size:.8rem;color:#94a3b8;font-weight:500}.panels.svelte-16pwk6k{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}section.svelte-16pwk6k{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 1px 3px #0000000f}h2.svelte-16pwk6k{font-size:.95rem;font-weight:700;margin:0 0 1rem;color:#334155}table.svelte-16pwk6k{width:100%;border-collapse:collapse;font-size:.85rem}th.svelte-16pwk6k{text-align:left;padding:.6rem .5rem;border-bottom:2px solid #e2e8f0;color:#94a3b8;font-size:.75rem;font-weight:600;text-transform:uppercase}td.svelte-16pwk6k{padding:.65rem .5rem;border-bottom:1px solid #f1f5f9}.num-col.svelte-16pwk6k,th.num-col.svelte-16pwk6k{text-align:center}.dept-name.svelte-16pwk6k{font-weight:600;color:#334155}.ok-text.svelte-16pwk6k{color:#27ae60;font-weight:600}.warn-text.svelte-16pwk6k{color:#f59e0b;font-weight:600}.alert-text.svelte-16pwk6k{color:#e74c3c;font-weight:600}.rate-bar-wrap.svelte-16pwk6k{display:inline-block;width:70px;height:7px;background:#f1f5f9;border-radius:4px;vertical-align:middle;margin-right:.5rem;overflow:hidden}.rate-bar.svelte-16pwk6k{height:100%;border-radius:4px;transition:width .3s}.rate-label.svelte-16pwk6k{font-size:.75rem;font-weight:700}.late-ranking.svelte-16pwk6k{display:flex;flex-direction:column}.late-row.svelte-16pwk6k{display:flex;align-items:center;gap:.6rem;padding:.65rem 0;border-bottom:1px solid #f1f5f9}.late-row.svelte-16pwk6k:last-child{border-bottom:none}.rank.svelte-16pwk6k{width:26px;height:26px;border-radius:50%;background:#f1f5f9;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#94a3b8;flex-shrink:0}.rank.rank-top.svelte-16pwk6k{background:#fef3c7;color:#d97706}.rank-dept-name.svelte-16pwk6k{flex:1;font-size:.9rem;color:#334155;font-weight:500}.late-count.svelte-16pwk6k{font-size:.85rem}.empty.svelte-16pwk6k{color:#94a3b8;font-size:.9rem}.loading.svelte-16pwk6k{text-align:center;padding:3rem;color:#94a3b8}@media(max-width:768px){h1.svelte-16pwk6k{font-size:1.1rem}.page-header.svelte-16pwk6k{flex-direction:column;align-items:stretch;gap:.5rem}.header-actions.svelte-16pwk6k{flex-direction:column;gap:.5rem}.month-bar.svelte-16pwk6k,.export-row.svelte-16pwk6k{justify-content:center}.btn-export.svelte-16pwk6k{white-space:nowrap;flex:1;justify-content:center}.stats-row.svelte-16pwk6k{grid-template-columns:repeat(2,1fr);gap:.5rem}.stat-card.svelte-16pwk6k{padding:.8rem}.num.svelte-16pwk6k{font-size:1.5rem}.label.svelte-16pwk6k{font-size:.72rem}.panels.svelte-16pwk6k{grid-template-columns:1fr;gap:1rem}section.svelte-16pwk6k{padding:1rem}table.svelte-16pwk6k{font-size:.8rem}th.svelte-16pwk6k,td.svelte-16pwk6k{padding:.4rem .3rem}.dept-name.svelte-16pwk6k{white-space:nowrap}.rate-bar-wrap.svelte-16pwk6k{width:40px;margin-right:.3rem}th.svelte-16pwk6k:nth-child(5),td.svelte-16pwk6k:nth-child(5){display:none}}
