@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--md-sys-color-primary:#3b82f6;--md-sys-color-primary-hover:#2563eb;--md-sys-color-primary-active:#1d4ed8;--md-sys-color-primary-light:#3b82f61f;--md-sys-color-primary-glow:#3b82f640;--md-sys-color-on-primary:#fff;--md-sys-color-secondary:#38bdf8;--md-sys-color-secondary-light:#38bdf81f;--md-sys-color-on-secondary:#0a0b10;--md-sys-color-background:#0a0b10;--md-sys-color-surface:#0f1117;--md-sys-color-surface-container:#161821;--md-sys-color-surface-container-high:#1e2030;--md-sys-color-surface-container-highest:#262840;--md-sys-color-surface-bright:#2a2d3e;--md-sys-color-on-background:#f0f0f5;--md-sys-color-on-surface:#e8e8f0;--md-sys-color-on-surface-variant:#9ca3af;--md-sys-color-outline:#ffffff14;--md-sys-color-outline-variant:#ffffff0a;--md-sys-color-error:#f43f5e;--md-sys-color-error-light:#f43f5e1f;--md-sys-color-success:#22c55e;--md-sys-color-success-light:#22c55e1f;--md-sys-color-warning:#eab308;--md-sys-color-warning-light:#eab3081f;--md-sys-color-info:#38bdf8;--md-sys-color-info-light:#38bdf81f;--md-sys-elevation-0:none;--md-sys-elevation-1:0 1px 3px #0000004d, 0 1px 2px #0003;--md-sys-elevation-2:0 4px 12px #0006, 0 2px 4px #0003;--md-sys-elevation-3:0 8px 24px #00000080, 0 4px 8px #0000004d;--md-sys-elevation-focus:0 0 0 3px var(--md-sys-color-primary-glow);--font-heading:"Outfit", sans-serif;--font-body:"Outfit", sans-serif;--font-mono:"JetBrains Mono", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:.75rem;--space-lg:1rem;--space-xl:1.5rem;--space-2xl:2rem;--space-3xl:3rem;--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:9999px;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--glass-bg:#16182199;--glass-border:#ffffff0d;--glass-blur:24px;--sidebar-width:260px;--header-height:64px;--content-max-width:1200px}*,:before,:after{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-body);background-color:var(--md-sys-color-background);color:var(--md-sys-color-on-background);min-height:100vh;line-height:1.6}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--md-sys-elevation-1);border-radius:var(--radius-md)}.hover-lift{transition:transform var(--transition-base), box-shadow var(--transition-base)}.hover-lift:hover{box-shadow:var(--md-sys-elevation-2);transform:translateY(-4px)}.skeleton{background:linear-gradient(90deg, var(--md-sys-color-surface-container-high) 25%, var(--md-sys-color-surface-container) 50%, var(--md-sys-color-surface-container-high) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:2s linear infinite shimmer}.mono{font-family:var(--font-mono)}:focus-visible{box-shadow:var(--md-sys-elevation-focus);outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--md-sys-color-surface-container-high);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-surface-container-highest)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out}.animate-fade-in-up{animation:fadeInUp var(--transition-base) ease-out}.animate-slide-in-right{animation:slideInRight var(--transition-base) ease-out}.animate-scale-in{animation:scaleIn var(--transition-base) ease-out}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-spin{animation:1s linear infinite spin}
