@tailwind base;@tailwind components;@tailwind utilities;@layer base{:root{--background: #0f172a;--background-secondary: #1e293b;--background-tertiary: #334155;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--border-color: rgba(51, 65, 85, .5);--shadow-color: rgba(0, 0, 0, .3);--accent-primary: #14b8a6;--accent-secondary: #0ea5e9;--accent-success: #22c55e;--accent-danger: #f43f5e;--accent-warning: #f59e0b;--radius: .75rem;--transition-duration: .2s}*{border-color:var(--border-color)}body{background-color:#050608;background-image:radial-gradient(circle at 0% 0%,rgba(20,184,166,.05) 0%,transparent 50%),radial-gradient(circle at 100% 100%,rgba(139,92,246,.05) 0%,transparent 50%);color:var(--text-primary);font-feature-settings:"ss01","ss03","cv01","cv02";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background-color:#14b8a64d;color:var(--text-primary)}*:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:rgba(71,85,105,.5) rgba(30,41,59,.3)}}@layer utilities{.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:#1e293b4d;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#47556980;border-radius:4px;transition:background .2s}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b8cc}.thin-scrollbar::-webkit-scrollbar{width:4px;height:4px}.thin-scrollbar::-webkit-scrollbar-track{background:transparent}.thin-scrollbar::-webkit-scrollbar-thumb{background:#4755694d;border-radius:2px}.thin-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b880}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{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 slideInLeft{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 pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #14b8a633}50%{box-shadow:0 0 40px #14b8a666}}@keyframes shimmerBackground{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-fade-in-up{animation:fadeInUp .4s ease-out}.animate-fade-in-down{animation:fadeInDown .4s ease-out}.animate-slide-in-right{animation:slideInRight .3s ease-out}.animate-slide-in-left{animation:slideInLeft .3s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,#fff0,#ffffff0d,#fff0);background-size:200% 100%;animation:shimmer 2s infinite}.animate-shimmer-bg{background:linear-gradient(90deg,var(--background-secondary) 0%,var(--background-tertiary) 50%,var(--background-secondary) 100%);background-size:1000px 100%;animation:shimmerBackground 3s 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}.glass{background:#0f172a99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(51,65,85,.5)}.glass-light{background:#1e293b66;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(51,65,85,.3)}.glass-dark{background:#020617cc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(51,65,85,.3)}.glass-card{background:#0f172a66;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(51,65,85,.5);box-shadow:0 8px 32px #0000004d}.glass-card-hover{transition:all var(--transition-duration) ease}.glass-card-hover:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0006;border-color:#14b8a64d}.bg-gradient-primary{background:linear-gradient(135deg,#14b8a626,#0ea5e926)}.bg-gradient-secondary{background:linear-gradient(135deg,#8b5cf626,#ec489926)}.bg-gradient-success{background:linear-gradient(135deg,#22c55e26,#14b8a626)}.bg-gradient-danger{background:linear-gradient(135deg,#f43f5e26,#fb923c26)}.text-gradient-primary{background:linear-gradient(135deg,#14b8a6,#0ea5e9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-secondary{background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.border-gradient-primary{border-image:linear-gradient(135deg,#14b8a6,#0ea5e9) 1}.shadow-glow{box-shadow:0 0 30px #14b8a626}.shadow-glow-lg{box-shadow:0 0 60px #14b8a633}.transition-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-bounce{transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.font-mono-sm{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.75rem;letter-spacing:.025em}.aspect-ratio-square{aspect-ratio:1 / 1}.aspect-ratio-video{aspect-ratio:16 / 9}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.hover-glow{transition:box-shadow .2s ease}.hover-glow:hover{box-shadow:0 0 30px #14b8a633}.hover-scale{transition:transform .2s ease}.hover-scale:hover{transform:scale(1.02)}.cursor-grab{cursor:grab}.cursor-grab:active{cursor:grabbing}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot-green{background-color:#22c55e;box-shadow:0 0 10px #22c55e80}.status-dot-yellow{background-color:#f59e0b;box-shadow:0 0 10px #f59e0b80}.status-dot-red{background-color:#f43f5e;box-shadow:0 0 10px #f43f5e80}.status-dot-gray{background-color:#64748b;box-shadow:0 0 10px #64748b80}.tooltip{position:relative}.tooltip:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:4px 8px;background:var(--background-secondary);color:var(--text-primary);font-size:.75rem;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease}.tooltip:hover:before{opacity:1}@media print{.no-print{display:none!important}.print-break-inside-avoid{break-inside:avoid}.print-break-before{break-before:page}.print-break-after{break-after:page}body{background:#fff;color:#000}}@media (max-width: 640px){.sm\:scrollable{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.text-shadow{text-shadow:0 2px 4px rgba(0,0,0,.3)}.text-shadow-sm{text-shadow:0 1px 2px rgba(0,0,0,.2)}.text-shadow-lg{text-shadow:0 4px 8px rgba(0,0,0,.4)}.bg-grid{background-image:linear-gradient(rgba(51,65,85,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(51,65,85,.1) 1px,transparent 1px);background-size:20px 20px}.bg-dots{background-image:radial-gradient(rgba(51,65,85,.2) 1px,transparent 1px);background-size:20px 20px}.backdrop-saturate{backdrop-filter:saturate(180%);-webkit-backdrop-filter:saturate(180%)}.ring-offset-background{--tw-ring-offset-color: var(--background)}.recharts-wrapper .recharts-tooltip-wrapper{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.recharts-default-tooltip{background-color:#0f172ae6!important;border-color:#33415580!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-radius:8px!important;box-shadow:0 8px 32px #0000004d!important}.shimmer-loading{background:linear-gradient(90deg,#1e293b4d 25%,#33415566,#1e293b4d 75%);background-size:200% 100%;animation:shimmer 2s infinite}}
