@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{--color-background:#fff;--color-background-secondary:#f5f5f5;--color-foreground:#0a0a0a;--color-foreground-secondary:#4b5563;--color-foreground-muted:#9ca3af;--color-sidebar:#0a0a0a;--color-sidebar-text:#fff;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-success:#16a34a;--color-success-hover:#15803d;--color-danger:#dc2626;--color-danger-hover:#b91c1c;--color-warning:#f59e0b;--color-border:#e5e7eb;--sidebar-width:260px;--header-height:64px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--color-background-secondary);color:var(--color-foreground);line-height:1.6}h1,h2,h3,h4{font-weight:600;line-height:1.25}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background-color:var(--color-success-hover)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--color-danger-hover)}.btn-outline{background:transparent;border:1.5px solid var(--color-border);color:var(--color-foreground)}.btn-outline:hover:not(:disabled){background-color:var(--color-background-secondary)}.btn-ghost{background:transparent;color:var(--color-foreground-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--color-background-secondary)}.btn-sm{padding:6px 12px;font-size:13px}.btn-lg{padding:14px 28px;font-size:16px}.card{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:12px;padding:24px}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;margin-bottom:6px}.form-input{width:100%;padding:10px 14px;font-size:14px;border:1.5px solid var(--color-border);border-radius:8px;background-color:var(--color-background);transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--color-primary)}.form-select{width:100%;padding:10px 14px;font-size:14px;border:1.5px solid var(--color-border);border-radius:8px;cursor:pointer}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:14px 16px;text-align:left;border-bottom:1px solid var(--color-border)}.table th{font-weight:600;font-size:13px;color:var(--color-foreground-secondary);background-color:var(--color-background-secondary)}.badge{display:inline-flex;padding:4px 10px;font-size:12px;font-weight:500;border-radius:20px}.badge-success{background-color:#dcfce7;color:#16a34a}.badge-danger{background-color:#fee2e2;color:#dc2626}.badge-warning{background-color:#fef3c7;color:#d97706}.badge-info{background-color:#dbeafe;color:#2563eb}.badge-neutral{background-color:#f3f4f6;color:#6b7280}.stat-card{background-color:var(--color-background);border:1px solid var(--color-border);padding:20px 24px;gap:16px}.stat-card,.stat-icon{border-radius:12px;display:flex;align-items:center}.stat-icon{width:48px;height:48px;justify-content:center}.stat-icon-primary{background-color:#dbeafe;color:#2563eb}.stat-icon-success{background-color:#dcfce7;color:#16a34a}.stat-icon-warning{background-color:#fef3c7;color:#d97706}.stat-icon-danger{background-color:#fee2e2;color:#dc2626}.stat-value{font-size:28px;font-weight:700}.stat-label{font-size:14px;color:var(--color-foreground-secondary)}.grid{display:grid;grid-gap:24px;gap:24px}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.text-center{text-align:center}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-4{margin-bottom:16px}.animate-fadeIn{animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(1turn)}}