:root{--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-primary-light: #dbeafe;--color-secondary: #8b5cf6;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-bg-primary: #f8fafc;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f1f5f9;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #94a3b8;--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-success: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-warm: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-cool: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-sunset: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--gradient-ocean: linear-gradient(135deg, #2af598 0%, #009efd 100%);--gradient-purple: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);--gradient-shimmer: linear-gradient(90deg, transparent, rgba(255,255,255,.3), transparent);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-glow: 0 0 20px rgba(59, 130, 246, .3);--shadow-glow-lg: 0 0 40px rgba(59, 130, 246, .4);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-full: 9999px;--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: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--duration-slower: .7s;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .5s cubic-bezier(.68, -.55, .265, 1.55);--transition-elastic: all .6s cubic-bezier(.175, .885, .32, 1.275);--z-base: 1;--z-dropdown: 10;--z-sticky: 20;--z-modal-backdrop: 50;--z-modal: 60;--z-popover: 70;--z-tooltip: 80;--z-notification: 90}.dark,[data-theme=dark]{--color-bg-primary: #0f172a;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-text-primary: #f1f5f9;--color-text-secondary: #cbd5e1;--color-text-tertiary: #64748b;--color-border: #334155;--color-border-hover: #475569;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .6);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .7);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .8)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;transition:background-color var(--duration-normal) ease,color var(--duration-normal) ease}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:var(--radius-full);transition:background var(--duration-fast) ease}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:var(--color-border-hover) transparent}.glass{background:#ffffff1a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15)}.dark .glass{background:#0f172a4d;border:1px solid rgba(255,255,255,.1)}.glass-card{background:#ffffffb3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #1f26871a}.dark .glass-card{background:#1e293b66;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006}.bg-gradient-primary{background:var(--gradient-primary)}.bg-gradient-warm{background:var(--gradient-warm)}.bg-gradient-cool{background:var(--gradient-cool)}.bg-gradient-sunset{background:var(--gradient-sunset)}.bg-gradient-ocean{background:var(--gradient-ocean)}.bg-gradient-purple{background:var(--gradient-purple)}.transition-smooth{transition:var(--transition-smooth)}.transition-bounce{transition:var(--transition-bounce)}.transition-elastic{transition:var(--transition-elastic)}.hover-lift{transition:transform var(--duration-normal) ease,box-shadow var(--duration-normal) ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.hover-glow{transition:box-shadow var(--duration-normal) ease}.hover-glow:hover{box-shadow:var(--shadow-glow)}.hover-scale{transition:transform var(--duration-normal) ease}.hover-scale:hover{transform:scale(1.05)}.focus-ring:focus{outline:2px solid var(--color-primary);outline-offset:2px}.focus-ring-inset:focus{outline:2px solid var(--color-primary);outline-offset:-2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn var(--duration-normal) ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUp var(--duration-slow) ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-down{animation:slideDown var(--duration-slow) ease}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slideInLeft var(--duration-slow) ease}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.animate-slide-in-right{animation:slideInRight var(--duration-slow) ease}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleIn var(--duration-normal) ease}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-bounce{animation:bounce 1s ease-in-out infinite}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-shimmer{background:linear-gradient(90deg,var(--color-bg-tertiary) 25%,var(--color-border) 50%,var(--color-bg-tertiary) 75%);background-size:1000px 100%;animation:shimmer 2s infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-gradient{background-size:200% 200%;animation:gradientShift 3s ease infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 3s ease-in-out infinite}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.skeleton{background:var(--color-bg-tertiary);border-radius:var(--radius-md);position:relative;overflow:hidden}.skeleton:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--gradient-shimmer);animation:shimmer 2s infinite}.skeleton-text{height:1rem;margin-bottom:var(--spacing-sm)}.skeleton-title{height:1.5rem;width:60%;margin-bottom:var(--spacing-md)}.skeleton-card{height:200px;border-radius:var(--radius-xl)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-weight:600;font-size:var(--font-size-sm);border-radius:var(--radius-lg);border:none;cursor:pointer;transition:var(--transition-smooth);position:relative;overflow:hidden}.btn:active{transform:scale(.98)}.btn-primary{background:var(--color-primary);color:#fff;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:0 8px 20px #3b82f666;transform:translateY(-2px)}.btn-gradient{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.btn-gradient:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:var(--transition-smooth)}.card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px);border-color:var(--color-border-hover)}.card-premium{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-3xl);padding:var(--spacing-xl);box-shadow:var(--shadow-lg);transition:var(--transition-smooth);position:relative;overflow:hidden}.card-premium:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary)}.card-premium:hover{box-shadow:var(--shadow-2xl);transform:translateY(-6px)}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal-backdrop)}.dark .backdrop{background:#000000b3}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-modal);max-width:90vw;max-height:90vh;overflow:auto}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.no-print{display:none!important}}
