@tailwind base;@tailwind components;@tailwind utilities;body{margin:0;font-family:Instrument Sans,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f8fafc,#eef2f6,#f1f5f9);background-attachment:fixed;color:#111827;letter-spacing:-.01em;min-height:100vh;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;opacity:.4;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");z-index:-1}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dark body{background:#050a1f;color:#f3f4f6}.dark body:before{opacity:.05;mix-blend-mode:overlay}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-in{animation:fadeInUp .5s cubic-bezier(.22,1,.36,1) forwards;opacity:0}.animate-in-left{animation:fadeInLeft .5s cubic-bezier(.22,1,.36,1) forwards;opacity:0}.animate-fade{animation:fadeIn .4s ease-out forwards;opacity:0}.animate-scale{animation:scaleIn .4s cubic-bezier(.22,1,.36,1) forwards;opacity:0}.delay-1{animation-delay:50ms}.delay-2{animation-delay:.1s}.delay-3{animation-delay:.15s}.delay-4{animation-delay:.2s}.delay-5{animation-delay:.25s}.delay-6{animation-delay:.3s}.card-hover{transition:all .3s cubic-bezier(.22,1,.36,1)}.card-hover:hover{transform:translateY(-2px);box-shadow:0 10px 40px -10px #0000001a,0 0 0 1px #0000000d}.dark .card-hover:hover{box-shadow:0 10px 40px -10px #00000080,0 0 0 1px #ffffff0d}.btn-hover{transition:all .2s cubic-bezier(.22,1,.36,1)}.btn-hover:hover{transform:translateY(-1px) scale(1.02)}.btn-hover:active{transform:translateY(0) scale(.98)}.kanban-card{transition:all .25s cubic-bezier(.22,1,.36,1);will-change:transform,box-shadow}.kanban-card:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 12px 24px -8px #0000001f,0 0 0 1px #023cff1a}.dark .kanban-card:hover{box-shadow:0 12px 24px -8px #0006,0 0 0 1px #023cff33}.nav-item{transition:all .2s ease;position:relative}.nav-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%) scaleY(0);width:3px;height:60%;background:linear-gradient(180deg,#023cff,#0026b3);border-radius:0 2px 2px 0;transition:transform .2s ease}.nav-item.active:before,.nav-item:hover:before{transform:translateY(-50%) scaleY(1)}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.dark .custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff1a}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#00000040}.dark .custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#fff3}@keyframes progressWave{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes progressShimmer{0%{transform:translate(-100%) skew(-15deg)}to{transform:translate(200%) skew(-15deg)}}.invoice-progress-active{background:linear-gradient(90deg,#2563eb,#3b82f6,#60a5fa);box-shadow:0 0 8px #2563eb4d,inset 0 1px #ffffff1a}.dark .invoice-progress-active{background:linear-gradient(90deg,#3b82f6,#60a5fa,#93c5fd);box-shadow:0 0 12px #3b82f666,inset 0 1px #ffffff26}.invoice-progress-completed{background:linear-gradient(90deg,#059669,#10b981,#34d399);box-shadow:0 0 8px #0596694d,inset 0 1px #ffffff1a}.dark .invoice-progress-completed{background:linear-gradient(90deg,#10b981,#34d399,#6ee7b7);box-shadow:0 0 12px #10b98166,inset 0 1px #ffffff26}.invoice-progress-error{background:linear-gradient(90deg,#dc2626,#ef4444,#f87171);box-shadow:0 0 8px #dc26264d,inset 0 1px #ffffff1a}.dark .invoice-progress-error{background:linear-gradient(90deg,#ef4444,#f87171,#fca5a5);box-shadow:0 0 12px #ef444466,inset 0 1px #ffffff26}.invoice-progress-shimmer{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);width:30%;height:100%;animation:progressShimmer 2s ease-in-out infinite;pointer-events:none}.dark .invoice-progress-shimmer{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%)}@keyframes scaleInBounce{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleInBounce .4s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes pulseGlow{0%,to{box-shadow:0 0 #3b82f600}50%{box-shadow:0 0 0 4px #3b82f626}}.file-item-active{animation:pulseGlow 2s ease-in-out infinite;background:#2563eb0d!important;border-radius:0}.file-item-waiting{background:#4f46e508!important;border-radius:0}.dark .file-item-waiting{background:#6366f10d!important}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer-effect{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes smoothSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:smoothSpin .8s linear infinite}@keyframes confettiBurst{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.confetti-burst:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:inherit;background:radial-gradient(circle,rgba(16,185,129,.3) 0%,transparent 70%);animation:confettiBurst .6s ease-out forwards;pointer-events:none}@keyframes slideInRight{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.animate-slide-in{animation:slideInRight .3s ease-out forwards}@keyframes countUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-count{animation:countUp .2s ease-out}.dark .file-item-active{background:#3b82f61a!important}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@keyframes toggleSpring{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}
