*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-app: #030712;--bg-sidebar: #111827;--bg-card: #1f2937;--bg-hover: #374151;--border: #374151;--border-light: #4b5563;--text-primary: #f9fafb;--text-secondary: #9ca3af;--text-muted: #6b7280;--accent: #6366f1;--accent-hover: #4f46e5;--accent-bg: rgba(99, 102, 241, .15);--danger: #ef4444;--success: #22c55e;--warning: #f59e0b;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;color:var(--text-primary);background-color:var(--bg-app)}body{min-height:100vh;background:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased}.hr-layout{display:flex;min-height:100vh}.hr-sidebar{width:240px;flex-shrink:0;background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:20px 12px;gap:4px}.hr-sidebar-logo{display:flex;align-items:center;gap:10px;padding:0 8px 20px;border-bottom:1px solid var(--border);margin-bottom:8px}.hr-sidebar-logo-text{font-size:15px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hr-nav-link{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:8px;text-decoration:none;font-size:14px;font-weight:500;color:var(--text-secondary);transition:background .12s,color .12s}.hr-nav-link:hover{background:var(--bg-hover);color:var(--text-primary)}.hr-nav-link.active{background:var(--accent-bg);color:var(--accent);font-weight:600}.hr-sidebar-user{margin-top:auto;border-top:1px solid var(--border);padding-top:16px}.hr-sidebar-username{font-size:13px;font-weight:600;color:var(--text-primary);padding:0 8px 8px;display:flex;align-items:center;justify-content:space-between}.hr-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--danger);color:#fff;font-size:11px;font-weight:700}.hr-logout-btn{width:100%;padding:8px 12px;background:transparent;border:1px solid var(--border);border-radius:8px;font-size:13px;color:var(--text-secondary);cursor:pointer;text-align:left;transition:background .12s,color .12s}.hr-logout-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.hr-main{flex:1;padding:32px;min-width:0;max-width:1280px}.hr-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.btn-primary{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.hr-input{width:100%;padding:9px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;outline:none;transition:border-color .12s}.hr-input:focus{border-color:var(--accent)}.hr-input::placeholder{color:var(--text-muted)}.hr-table{width:100%;border-collapse:collapse;font-size:13px}.hr-table th{text-align:left;padding:10px 12px;color:var(--text-secondary);font-weight:600;border-bottom:1px solid var(--border);background:var(--bg-card)}.hr-table td{padding:10px 12px;color:var(--text-primary);border-bottom:1px solid var(--border)}.hr-table tr:hover td{background:#ffffff05}.badge-active{padding:2px 8px;border-radius:12px;font-size:12px;background:#22c55e26;color:#4ade80}.badge-blocked{padding:2px 8px;border-radius:12px;font-size:12px;background:#ef444426;color:#f87171}.badge-pending{padding:2px 8px;border-radius:12px;font-size:12px;background:#f59e0b26;color:#fbbf24}.badge-done{padding:2px 8px;border-radius:12px;font-size:12px;background:#22c55e26;color:#4ade80}.badge-failed{padding:2px 8px;border-radius:12px;font-size:12px;background:#ef444426;color:#f87171}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}
