@tailwind base;@tailwind components;@tailwind utilities;:root{--foreground-rgb:0,0,0;--background-start-rgb:214,219,220;--background-end-rgb:255,255,255;--primary-50:240,249,255;--primary-100:224,242,254;--primary-200:186,230,253;--primary-300:125,211,252;--primary-400:56,189,248;--primary-500:14,165,233;--primary-600:2,132,199;--primary-700:3,105,161;--primary-800:7,89,133;--primary-900:12,74,110;--success-50:240,253,244;--success-100:220,252,231;--success-200:187,247,208;--success-300:134,239,172;--success-400:74,222,128;--success-500:34,197,94;--success-600:22,163,74;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.1);--shadow-xl:0 20px 25px -5px rgb(0 0 0/0.1);--shadow-2xl:0 25px 50px -12px rgb(0 0 0/0.25);--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);--transition-fast:150ms;--transition-base:250ms;--transition-slow:350ms;--transition-slowest:500ms}@media (prefers-color-scheme:dark){:root{--foreground-rgb:255,255,255;--background-start-rgb:0,0,0;--background-end-rgb:0,0,0;--glass-bg:rgba(0,0,0,0.7);--glass-border:rgba(255,255,255,0.1)}}body{color:rgb(var(--foreground-rgb));background:linear-gradient(to bottom,transparent,rgb(var(--background-end-rgb))) rgb(var(--background-start-rgb));font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glass-card{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:all var(--transition-base) cubic-bezier(.4,0,.2,1)}.glass-card:hover{background:rgba(255,255,255,.8);box-shadow:0 12px 48px 0 rgba(31,38,135,.2);transform:translateY(-2px)}.modern-card{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(249,250,255,.95));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:24px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 20px 40px -8px rgba(31,38,135,.08),0 8px 32px -8px rgba(0,0,0,.06);border:1px solid rgba(226,232,240,.8);transition:all var(--transition-base) cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.modern-card:before{height:2px;background:linear-gradient(135deg,#667eea,#764ba2 25%,#f093fb 50%,#fecfef 75%,#fecfef);transition:all var(--transition-base);transform:translateX(-100%)}.modern-card:after,.modern-card:before{content:"";position:absolute;top:0;left:0;right:0;opacity:0}.modern-card:after{bottom:0;background:radial-gradient(600px circle at var(--mouse-x,50%) var(--mouse-y,50%),rgba(99,102,241,.03),transparent 40%);transition:opacity var(--transition-slow);pointer-events:none}.modern-card:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,1),0 30px 60px -12px rgba(31,38,135,.15),0 18px 36px -18px rgba(0,0,0,.1);transform:translateY(-6px) scale(1.01);background:linear-gradient(135deg,rgba(255,255,255,1),rgba(249,250,255,.98));border-color:rgba(199,210,254,.5)}.modern-card:hover:before{opacity:.8;height:3px;transform:translateX(0)}.modern-card:hover:after{opacity:1}.btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:white;padding:12px 24px;border-radius:12px;font-weight:600;transition:all var(--transition-base) cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 12px rgba(99,102,241,.3)}.btn-primary:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width var(--transition-slow),height var(--transition-slow)}.btn-primary:hover{box-shadow:0 6px 20px rgba(99,102,241,.4);transform:translateY(-2px)}.btn-primary:hover:before{width:300px;height:300px}.btn-secondary{background:rgba(99,102,241,.1);color:#6366f1;padding:12px 24px;border-radius:12px;font-weight:600;border:2px solid rgba(99,102,241,.2);transition:all var(--transition-base)}.btn-secondary:hover{background:rgba(99,102,241,.15);border-color:rgba(99,102,241,.3);transform:translateY(-2px);box-shadow:0 4px 12px rgba(99,102,241,.15)}.skeleton{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:8px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.modern-input{background:white;border:2px solid #e5e7eb;border-radius:12px;padding:12px 16px;transition:all var(--transition-fast);font-size:16px}.modern-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.1)}.modern-input:hover:not(:focus){border-color:#d1d5db}.floating-label-container{position:relative}.floating-label{position:absolute;top:50%;left:16px;transform:translateY(-50%);background:white;padding:0 4px;color:#6b7280;pointer-events:none;transition:all var(--transition-fast)}.floating-label-container input:focus~.floating-label,.floating-label-container input:not(:placeholder-shown)~.floating-label{top:0;font-size:12px;color:#6366f1}.metric-card{background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.9));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;padding:28px;position:relative;overflow:hidden;transition:all var(--transition-base) cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.8);box-shadow:inset 0 .5px 0 1px rgba(255,255,255,.5),0 20px 40px -12px rgba(99,102,241,.08),0 4px 6px -2px rgba(0,0,0,.05)}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--metric-gradient,linear-gradient(135deg,#667eea 0,#764ba2 50%,#f093fb 100%));opacity:.9;transition:height var(--transition-base)}.metric-card:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(99,102,241,.05) 0,transparent 70%);opacity:0;transition:opacity var(--transition-slow);pointer-events:none}.metric-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:inset 0 .5px 0 1px rgba(255,255,255,.8),0 30px 60px -15px rgba(99,102,241,.15),0 10px 15px -5px rgba(0,0,0,.08);background:linear-gradient(135deg,rgba(255,255,255,1),rgba(249,250,255,.95))}.metric-card:hover:before{height:4px}.metric-card:hover:after{opacity:1}.metric-icon{width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:var(--metric-bg,linear-gradient(135deg,rgba(99,102,241,.15) 0,rgba(139,92,246,.15) 100%));color:var(--metric-color,#6366f1);transition:all var(--transition-base) cubic-bezier(.34,1.56,.64,1);position:relative;box-shadow:0 4px 12px rgba(99,102,241,.15),inset 0 1px 0 rgba(255,255,255,.5)}.metric-icon:before{content:"";position:absolute;inset:-2px;border-radius:18px;padding:2px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--transition-base)}.metric-card:hover .metric-icon{transform:scale(1.15) rotate(8deg);box-shadow:0 8px 20px rgba(99,102,241,.25),inset 0 1px 0 rgba(255,255,255,.7)}.metric-card:hover .metric-icon:before{opacity:.6}.scrollbar-thin{scrollbar-width:thin}.scrollbar-thin::-webkit-scrollbar{width:8px}.scrollbar-thumb-gray-300::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:4px}.scrollbar-track-gray-100::-webkit-scrollbar-track{background-color:#f3f4f6;border-radius:4px}.scrollbar-thumb-gray-300::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}@keyframes draw-line{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.animate-draw-line{stroke-dasharray:100;animation:draw-line .8s ease-out forwards}@keyframes bounce-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.animate-bounce-slow{animation:bounce-slow 2s ease-in-out infinite}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .8s ease-out forwards}.animate-fadeInLeft{animation:fadeInLeft .8s ease-out forwards}.animate-fadeInRight{animation:fadeInRight .8s ease-out forwards}.animate-scaleIn{animation:scaleIn .6s ease-out forwards}.animate-slideUp{animation:slideUp .8s ease-out forwards}.animate-stagger>*{opacity:0;animation:fadeIn .6s ease-out forwards}.animate-stagger>:first-child{animation-delay:.1s}.animate-stagger>:nth-child(2){animation-delay:.2s}.animate-stagger>:nth-child(3){animation-delay:.3s}.animate-stagger>:nth-child(4){animation-delay:.4s}.animate-stagger>:nth-child(5){animation-delay:.5s}.animate-stagger>:nth-child(6){animation-delay:.6s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 3s ease-in-out infinite}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.animate-gradient{animation:gradientShift 3s ease infinite}@keyframes gradient{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.animate-gradient{background-size:200% 200%;animation:gradient 3s ease infinite}.discovery-scroll{scrollbar-width:thin;scrollbar-color:#8b5cf6 #f3f4f6}.discovery-scroll::-webkit-scrollbar{width:12px}.discovery-scroll::-webkit-scrollbar-track{background:#f3f4f6;border-radius:6px;border:1px solid #e5e7eb}.discovery-scroll::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#8b5cf6,#a855f7);border-radius:6px;border:2px solid #f3f4f6;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.discovery-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#7c3aed,#9333ea);box-shadow:inset 0 1px 2px rgba(0,0,0,.2)}.discovery-scroll::-webkit-scrollbar-corner{background:#f3f4f6}.scroll-to-top-btn{position:fixed;bottom:2rem;right:2rem;width:3.5rem;height:3.5rem;background:linear-gradient(135deg,#8b5cf6,#a855f7);color:white;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;box-shadow:0 10px 25px rgba(147,51,234,.4);transition:all .3s ease;z-index:9999;border:2px solid white}.scroll-to-top-btn:hover{transform:translateY(-2px) scale(1.1);box-shadow:0 15px 35px rgba(147,51,234,.6);background:linear-gradient(135deg,#7c3aed,#9333ea)}.scroll-to-top-btn:active{transform:translateY(0) scale(1.05)}@keyframes fadeIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.animate-fadeIn{animation:fadeIn .3s ease-in-out}@keyframes blob{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}to{transform:translate(0) scale(1)}}.animate-blob{animation:blob 7s infinite}.animation-delay-2000{animation-delay:2s}.animation-delay-4000{animation-delay:4s}@keyframes smoothPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.pulse-smooth{animation:smoothPulse 2s ease-in-out infinite}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);background-size:1000px 100%;animation:shimmer 2s infinite}.glow{box-shadow:0 0 20px rgba(99,102,241,.3);transition:box-shadow var(--transition-base)}.glow:hover{box-shadow:0 0 30px rgba(99,102,241,.5)}.number-transition{transition:all var(--transition-slow) cubic-bezier(.4,0,.2,1)}.badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:4px;transition:all var(--transition-fast)}.badge-success{background:linear-gradient(135deg,#10b981,#059669);color:white}.badge-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:white}.badge-info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:white}.badge-premium{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f;border:1px solid rgba(251,191,36,.3);box-shadow:0 2px 8px rgba(251,191,36,.2)}.tooltip{position:relative}.tooltip-content{bottom:100%;background:#1f2937;color:white;padding:8px 12px;border-radius:8px;font-size:14px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast);margin-bottom:8px;box-shadow:0 4px 12px rgba(0,0,0,.15)}.tooltip-content,.tooltip-content:after{position:absolute;left:50%;transform:translateX(-50%)}.tooltip-content:after{content:"";top:100%;border:6px solid transparent;border-top-color:#1f2937}.tooltip:hover .tooltip-content{opacity:1;transform:translateX(-50%) translateY(-4px)}.data-grid{display:grid;grid-gap:24px;gap:24px;transition:gap var(--transition-base)}.data-grid-item{background:white;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.04);transition:all var(--transition-base);position:relative;overflow:hidden}.data-grid-item:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(99,102,241,.05));opacity:0;transition:opacity var(--transition-base)}.data-grid-item:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.08)}.data-grid-item:hover:after{opacity:1}.progress-bar{width:100%;height:8px;background:rgba(0,0,0,.05)}.progress-bar,.progress-fill{border-radius:4px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width var(--transition-slow) cubic-bezier(.4,0,.2,1)}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}.notification-dot{position:absolute;top:-4px;right:-4px;width:12px;height:12px;background:#ef4444;border:2px solid white;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.7)}70%{box-shadow:0 0 0 10px rgba(239,68,68,0)}to{box-shadow:0 0 0 0 rgba(239,68,68,0)}}.switch{position:relative;width:56px;height:28px}.switch input{opacity:0;width:0;height:0}.switch-slider{cursor:pointer;top:0;left:0;right:0;bottom:0;background:#e5e7eb;border-radius:34px}.switch-slider,.switch-slider:before{position:absolute;transition:var(--transition-fast)}.switch-slider:before{content:"";height:20px;width:20px;left:4px;bottom:4px;background:white;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.1)}.switch input:checked+.switch-slider{background:linear-gradient(90deg,#6366f1,#8b5cf6)}.switch input:checked+.switch-slider:before{transform:translateX(28px)}.campaign-card{background:linear-gradient(145deg,#ffffff,#fafbff);border:1px solid rgba(226,232,240,.6);border-radius:20px;padding:24px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px 0 rgba(0,0,0,.03),0 10px 20px -5px rgba(99,102,241,.08)}.campaign-card:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);border-radius:20px;opacity:0;z-index:-1;transition:opacity .3s ease}.campaign-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 1px 3px 0 rgba(0,0,0,.05),0 20px 40px -10px rgba(99,102,241,.2);border-color:transparent}.campaign-card:hover:before{opacity:1}.empty-state{text-align:center;padding:60px 40px;background:linear-gradient(135deg,rgba(249,250,255,.5),rgba(239,246,255,.5));border-radius:24px;border:2px dashed rgba(199,210,254,.5);position:relative}.empty-state:before{content:"";position:absolute;inset:-2px;border-radius:24px;padding:2px;background:linear-gradient(135deg,transparent 30%,#6366f1 50%,transparent 70%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s}.empty-state:hover:before{opacity:.3;animation:borderRotate 3s linear infinite}@keyframes borderRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.success-message{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid rgba(134,239,172,.3);border-radius:16px;padding:16px 20px;position:relative;overflow:hidden;animation:successSlideIn .4s cubic-bezier(.68,-.55,.265,1.55)}.success-message:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(134,239,172,.4),transparent);animation:successShimmer 2s ease-in-out infinite}@keyframes successSlideIn{0%{transform:translateX(100%) scale(.9);opacity:0}to{transform:translateX(0) scale(1);opacity:1}}@keyframes successShimmer{0%{left:-100%}50%{left:100%}to{left:100%}}.error-message{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid rgba(248,113,113,.3);border-radius:16px;padding:16px 20px;position:relative;overflow:hidden;animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-3px,0,0)}40%,60%{transform:translate3d(3px,0,0)}}.nav-item{position:relative;padding:12px 16px;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;overflow:hidden}.nav-item:before{content:"";position:absolute;top:50%;left:0;transform:translateY(-50%);width:3px;height:0;background:linear-gradient(135deg,#6366f1,#8b5cf6);transition:height .3s ease;border-radius:0 3px 3px 0}.nav-item:hover{background:linear-gradient(90deg,rgba(99,102,241,.05),transparent);padding-left:24px}.nav-item:hover:before{height:70%}.nav-item.active{box-shadow:0 8px 16px rgba(99,102,241,.3)}.fab,.nav-item.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:white}.fab{position:fixed;bottom:32px;right:32px;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(99,102,241,.3),0 12px 28px rgba(99,102,241,.15);cursor:pointer;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);z-index:1000}.fab:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 6px 20px rgba(99,102,241,.4),0 18px 40px rgba(99,102,241,.2)}.fab:active{transform:scale(.95)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer;width:100%}input[type=range]::-webkit-slider-track{height:8px;border-radius:4px;background:linear-gradient(90deg,#e5e7eb 0,#e5e7eb var(--range-progress,50%),#6366f1 var(--range-progress,50%),#6366f1 100%)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:white;border:3px solid #6366f1;height:24px;width:24px;border-radius:50%;cursor:pointer;margin-top:-8px;box-shadow:0 2px 8px rgba(99,102,241,.3);-webkit-transition:all .2s ease;transition:all .2s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 4px 12px rgba(99,102,241,.4);background:linear-gradient(135deg,white,#f0f9ff)}input[type=range]::-moz-range-track{height:8px;border-radius:4px;background:#e5e7eb}input[type=range]::-moz-range-thumb{background:white;border:3px solid #6366f1;height:24px;width:24px;border-radius:50%;cursor:pointer;box-shadow:0 2px 8px rgba(99,102,241,.3);-moz-transition:all .2s ease;transition:all .2s ease}input[type=range]::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:0 4px 12px rgba(99,102,241,.4)}