:root{--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--primary-300: #93c5fd;--primary-400: #60a5fa;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-900: #1e3a8a;--accent-50: #fdf4ff;--accent-100: #fae8ff;--accent-200: #f5d0fe;--accent-300: #f0abfc;--accent-400: #e879f9;--accent-500: #d946ef;--accent-600: #c026d3;--accent-700: #a21caf;--accent-800: #86198f;--accent-900: #701a75;--success-50: #f0fdf4;--success-100: #dcfce7;--success-500: #22c55e;--success-600: #16a34a;--success-700: #15803d;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--error-50: #fef2f2;--error-100: #fee2e2;--error-500: #ef4444;--error-600: #dc2626;--error-700: #b91c1c;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-success: linear-gradient(135deg, #0ba360 0%, #3cba92 100%);--gradient-warm: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-ocean: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-sunset: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--gradient-royal: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fadeIn{animation:fadeIn var(--transition-base) ease-out}.animate-fadeInUp{animation:fadeInUp var(--transition-base) ease-out}.animate-slideInRight{animation:slideInRight var(--transition-base) ease-out}.animate-scaleIn{animation:scaleIn var(--transition-base) ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s infinite}.animate-spin{animation:spin 1s linear infinite}.glass{background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.glass-dark{background:#0003;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-primary{background:var(--gradient-primary)}.gradient-success{background:var(--gradient-success)}.gradient-warm{background:var(--gradient-warm)}.gradient-ocean{background:var(--gradient-ocean)}.gradient-sunset{background:var(--gradient-sunset)}.hover-lift{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:0 0 20px #667eea80}.hover-scale{transition:transform var(--transition-fast)}.hover-scale:hover{transform:scale(1.05)}.card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:1.5rem;transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-xl)}.card-gradient{background:linear-gradient(135deg,#ffffffe6,#ffffffb3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.btn-modern{position:relative;overflow:hidden;transition:all var(--transition-base)}.btn-modern:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--transition-slow)}.btn-modern:hover:before{left:100%}.btn-gradient{background:var(--gradient-primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-lg);font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.btn-gradient:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-gradient:active{transform:translateY(0)}.badge-modern{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.875rem;font-weight:600;transition:all var(--transition-fast)}.badge-primary{background:var(--primary-100);color:var(--primary-700)}.badge-success{background:var(--success-100);color:var(--success-700)}.badge-warning{background:var(--warning-100);color:var(--warning-700)}.badge-error{background:var(--error-100);color:var(--error-700)}.input-modern{padding:.75rem 1rem;border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:1rem;transition:all var(--transition-base);background:#fff}.input-modern:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 4px #3b82f61a}.input-modern:hover{border-color:var(--gray-300)}.skeleton{background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:shimmer 2s infinite;border-radius:var(--radius-md)}.tooltip{position:relative}.tooltip:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);padding:.5rem .75rem;background:var(--gray-900);color:#fff;font-size:.875rem;border-radius:var(--radius-md);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:var(--z-tooltip)}.tooltip:hover:after{opacity:1}.progress-bar{height:8px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden}.progress-fill{height:100%;background:var(--gradient-primary);border-radius:var(--radius-full);transition:width var(--transition-base)}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--gray-300),transparent);margin:1.5rem 0}.section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.section-header h2{font-size:1.875rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-card{background:#fff;border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-md);transition:all var(--transition-base);border-left:4px solid transparent}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.stat-card.primary{border-left-color:var(--primary-500)}.stat-card.success{border-left-color:var(--success-500)}.stat-card.warning{border-left-color:var(--warning-500)}.stat-card.error{border-left-color:var(--error-500)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.empty-state-icon{font-size:4rem;color:var(--gray-300);margin-bottom:1rem}.empty-state-title{font-size:1.5rem;font-weight:600;color:var(--gray-700);margin-bottom:.5rem}.empty-state-description{color:var(--gray-500);margin-bottom:1.5rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-base) ease-out}.modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);max-width:90vw;max-height:90vh;overflow:auto;z-index:var(--z-modal);animation:scaleIn var(--transition-base) ease-out}@media(max-width:768px){.section-header h2{font-size:1.5rem}}html{scroll-behavior:smooth}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:var(--radius-full);border:3px solid var(--gray-100)}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}*:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}::selection{background:var(--primary-200);color:var(--primary-900)}@tailwind base;@tailwind components;@tailwind utilities;*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0f172a!important;min-height:100vh;color:#e2e8f0!important;line-height:1.6}#root{min-height:100vh;background:#0f172a}.bg-white,.bg-gray-50{background-color:#1e293b!important}.bg-gray-100{background-color:#334155!important}.text-gray-900{color:#e2e8f0!important}.text-gray-800{color:#cbd5e1!important}.text-gray-700{color:#94a3b8!important}.border-gray-200{border-color:#475569!important}.border-gray-300{border-color:#64748b!important}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#1e293b;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#475569;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#64748b}
