@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--primary: #2563eb;--primary-light: #3b82f6;--primary-dark: #1d4ed8;--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--surface: #ffffff;--background: #f1f5f9;--sidebar-bg: #ffffff;--sidebar-border: #e2e8f0;--border: #e2e8f0;--border-light: #f1f5f9;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 25px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .04);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-light: #64748b;--success: #10b981;--success-bg: #ecfdf5;--success-text: #065f46;--danger: #ef4444;--danger-bg: #fef2f2;--danger-text: #991b1b;--warning: #f59e0b;--warning-bg: #fffbeb;--warning-text: #92400e;--info: #3b82f6;--info-bg: #eff6ff;--info-text: #1e40af;--purple: #8b5cf6;--purple-bg: #f5f3ff;--radius-xs: 4px;--radius-sm: 6px;--radius: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--gap-xs: 4px;--gap-sm: 8px;--gap: 12px;--gap-md: 16px;--gap-lg: 20px;--gap-xl: 24px;--gap-2xl: 32px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.6;color:var(--text-primary);background-color:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}app-root{display:block;height:100%}a{color:var(--primary);text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--gap-xl);flex-wrap:wrap;gap:var(--gap-md)}.page-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0}.page-subtitle{font-size:13px;color:var(--text-light);margin-top:var(--gap-xs)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--gap-xl)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--gap-sm);padding:10px 18px;border-radius:var(--radius);font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;border:1px solid transparent;white-space:nowrap}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:var(--surface);color:var(--text-secondary);border-color:var(--border)}.btn-secondary:hover{background:var(--background)}.btn-danger{background:var(--danger);color:#fff}.form-group{display:flex;flex-direction:column;gap:var(--gap-xs);margin-bottom:var(--gap-md)}.form-group label{font-size:13px;font-weight:600;color:var(--text-secondary)}.form-input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;font-family:inherit;background:var(--surface);color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100)}.data-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border-radius:var(--radius-lg);overflow:hidden}.data-table thead{background:var(--background)}.data-table th{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);border-bottom:1px solid var(--border)}.data-table td{padding:14px 16px;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--border-light)}.data-table tbody tr:hover{background:var(--primary-50);cursor:pointer}.data-table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.badge-success{background:var(--success-bg);color:var(--success-text)}.badge-warning{background:var(--warning-bg);color:var(--warning-text)}.badge-danger{background:var(--danger-bg);color:var(--danger-text)}.badge-info{background:var(--info-bg);color:var(--info-text)}.badge-neutral{background:var(--background);color:var(--text-secondary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}
