@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";
:root{--color-primary:#111827;--color-accent:#0fcfde;--color-accent-hover:#0bb8c5;--color-background:#fff;--color-background-subtle:#f9fafb;--color-background-card:#fff;--color-text-primary:#4b5563;--color-text-heading:#111827;--color-text-muted:#9ca3af;--color-border:#e5e7eb;--color-border-light:#f3f4f6;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--sidebar-width:280px;--sidebar-collapsed-width:80px;--header-height:64px;--bottom-nav-height:64px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-background-subtle);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--color-text-heading);font-weight:600;line-height:1.3}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}a{color:var(--color-accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-accent-hover)}button{font-family:var(--font-family);cursor:pointer;border:none;outline:none}.btn{justify-content:center;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3)var(--spacing-5);font-size:var(--font-size-sm);border-radius:var(--radius-lg);transition:all var(--transition-fast);font-weight:500;display:inline-flex}.btn-primary{background:var(--color-accent);color:#fff;box-shadow:0 4px 14px #0fcfde59}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 6px 20px #0fcfde73}.btn-secondary{color:var(--color-text-primary);border:1px solid var(--color-border);background:0 0}.btn-secondary:hover{background:var(--color-background-subtle);border-color:var(--color-text-muted)}.card{background:var(--color-background-card);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),transform var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}input,select,textarea{font-family:var(--font-family);font-size:var(--font-size-sm);padding:var(--spacing-3)var(--spacing-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #0fcfde26}.badge{padding:var(--spacing-1)var(--spacing-3);font-size:var(--font-size-xs);border-radius:var(--radius-full);align-items:center;font-weight:500;display:inline-flex}.badge-success{color:var(--color-success);background:#10b9811a}.badge-warning{color:var(--color-warning);background:#f59e0b1a}.badge-error{color:var(--color-error);background:#ef44441a}.badge-info{color:var(--color-info);background:#3b82f61a}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background-subtle)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.dashboard-layout{width:100%;min-width:0;min-height:100vh;display:flex}.main-content{margin-left:var(--sidebar-offset,var(--sidebar-width));width:calc(100% - var(--sidebar-offset,var(--sidebar-width)));max-width:calc(100% - var(--sidebar-offset,var(--sidebar-width)));min-width:0;padding:var(--spacing-8);transition:margin-left var(--transition-base);flex:auto}.page-header{margin-bottom:var(--spacing-8)}.page-header h1{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-2)}.page-header p{color:var(--color-text-muted);font-size:var(--font-size-base)}.stats-grid{gap:var(--spacing-6);margin-bottom:var(--spacing-8);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.table-container{background:var(--color-background-card);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{padding:var(--spacing-4);text-align:left;border-bottom:1px solid var(--color-border-light)}th{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);background:var(--color-background-subtle);font-weight:600}tr:last-child td{border-bottom:none}tr:hover td{background:var(--color-background-subtle)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.animate-slide-in{animation:.3s ease-out forwards slideIn}@media (max-width:768px){.dashboard-layout{flex-direction:column}.main-content{width:100%;max-width:100%;padding:var(--spacing-6)var(--spacing-4)calc(var(--spacing-8) + var(--bottom-nav-height));margin-left:0}.stats-grid{gap:var(--spacing-4);grid-template-columns:repeat(2,minmax(0,1fr))}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{table-layout:auto}th,td{white-space:nowrap;padding:var(--spacing-3)}}@media (max-width:480px){.stats-grid{gap:var(--spacing-3);grid-template-columns:repeat(2,minmax(0,1fr))}}
