@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@500;600;700;800&display=swap");:root{--color-primary-start:#3b82f6;--color-primary-end:#2563eb;--color-secondary-start:#8b5cf6;--color-secondary-end:#7c3aed;--color-accent-start:#06b6d4;--color-accent-end:#0891b2;--color-success-start:#10b981;--color-success-end:#059669;--color-warning-start:#f59e0b;--color-warning-end:#d97706;--color-error-start:#ef4444;--color-error-end:#dc2626;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-secondary:#8b5cf6;--color-accent:#06b6d4;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--bg-primary:#ffffff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--bg-elevated:#ffffff;--bg-overlay:rgba(0,0,0,0.5);--text-primary:#111827;--text-secondary:#374151;--text-muted:#6b7280;--text-inverse:#ffffff;--border-color:#e5e7eb;--border-color-hover:#d1d5db;--border-color-focus:#3b82f6;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--shadow-glow:0 0 20px rgba(59,130,246,0.3);--shadow-glow-hover:0 0 30px rgba(59,130,246,0.5);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--font-heading:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","Courier New",monospace;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--text-4xl:36px;--text-5xl:48px;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);--transition-bounce:500ms cubic-bezier(0.68,-0.55,0.265,1.55);--glass-bg:rgba(255,255,255,0.7);--glass-border:rgba(255,255,255,0.3);--glass-shadow:0 8px 32px 0 rgba(31,38,135,0.15);--glass-blur:blur(10px)}.dark-theme,[data-theme=dark]{--color-primary-start:#60a5fa;--color-primary-end:#3b82f6;--color-secondary-start:#a78bfa;--color-secondary-end:#8b5cf6;--color-primary:#60a5fa;--color-primary-hover:#3b82f6;--color-secondary:#a78bfa;--bg-primary:#0a0a0a;--bg-secondary:#1a1a1a;--bg-tertiary:#2a2a2a;--bg-elevated:#1f1f1f;--bg-overlay:rgba(0,0,0,0.7);--text-primary:#ffffff;--text-secondary:#e5e5e5;--text-muted:#b3b3b3;--text-inverse:#111827;--border-color:#333333;--border-color-hover:#4a4a4a;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.3);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.4),0 2px 4px -1px rgba(0,0,0,0.3);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.5),0 4px 6px -2px rgba(0,0,0,0.4);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.6),0 10px 10px -5px rgba(0,0,0,0.5);--glass-bg:rgba(26,26,26,0.7);--glass-border:rgba(255,255,255,0.1);--glass-shadow:0 8px 32px 0 rgba(0,0,0,0.37)}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;background-color:var(--bg-primary);transition:background-color var(--transition-base),color var(--transition-base)}body,h1,h2,h3,h4,h5,h6{color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;margin-bottom:var(--space-md)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{margin-bottom:var(--space-md);color:var(--text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.grid{display:grid}.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)}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.m-xs{margin:var(--space-xs)}.m-sm{margin:var(--space-sm)}.m-md{margin:var(--space-md)}.m-lg{margin:var(--space-lg)}.m-xl{margin:var(--space-xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.bg-gradient-primary{background:linear-gradient(135deg,var(--color-primary-start),var(--color-primary-end))}.bg-gradient-secondary{background:linear-gradient(135deg,var(--color-secondary-start),var(--color-secondary-end))}.bg-gradient-accent{background:linear-gradient(135deg,var(--color-accent-start),var(--color-accent-end))}.card{background:var(--bg-elevated);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card-glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:12px 24px;font-family:var(--font-body);font-size:var(--text-base);font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base);outline:none;text-decoration:none;position:relative;overflow:hidden}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--color-primary-start),var(--color-primary-end));color:white;box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:linear-gradient(135deg,var(--color-secondary-start),var(--color-secondary-end));color:white;box-shadow:var(--shadow-md)}.btn-secondary:hover:not(:disabled){box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-outline{background:transparent;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary);color:white;transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-ghost:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--border-color-hover)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out}.animate-slide-up{animation:slideUp var(--transition-base) ease-out}.animate-slide-down{animation:slideDown var(--transition-base) ease-out}.animate-scale-in{animation:scaleIn var(--transition-base) ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.stagger-item{animation:slideUp var(--transition-base) ease-out backwards}.stagger-item:first-child{animation-delay:0s}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 0,var(--bg-tertiary) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.spinner{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}@media (max-width:768px){:root{--text-5xl:36px;--text-4xl:30px;--text-3xl:24px;--text-2xl:20px}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.card{padding:var(--space-md)}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-color-hover)}*{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-secondary)}