@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes zoomInBounce{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinReverse{to{transform:rotate(-360deg)}}@keyframes bounce{0%,to{transform:translateY(0);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(-25%);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes bounceInUp{0%{opacity:0;transform:translateY(100px)}60%{opacity:1;transform:translateY(-20px)}80%{transform:translateY(10px)}to{transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes pulseRing{0%{transform:scale(.8);opacity:.8}to{transform:scale(2);opacity:0}}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.1)}28%{transform:scale(1)}42%{transform:scale(1.1)}70%{transform:scale(1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes skeleton{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatShadow{0%,to{transform:translateY(0);box-shadow:0 5px 15px #0000001a}50%{transform:translateY(-10px);box-shadow:0 25px 15px #0000000d}}@keyframes glow{0%,to{box-shadow:0 0 5px #6366f133,0 0 20px #6366f11a}50%{box-shadow:0 0 20px #6366f166,0 0 40px #6366f133}}@keyframes glowText{0%,to{text-shadow:0 0 5px rgba(99,102,241,.2)}50%{text-shadow:0 0 20px rgba(99,102,241,.5),0 0 30px rgba(99,102,241,.3)}}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromTop{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromBottom{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);opacity:0}40%{transform:perspective(400px) rotateX(-10deg)}70%{transform:perspective(400px) rotateX(10deg)}to{transform:perspective(400px) rotateX(0);opacity:1}}@keyframes flipInY{0%{transform:perspective(400px) rotateY(90deg);opacity:0}40%{transform:perspective(400px) rotateY(-10deg)}70%{transform:perspective(400px) rotateY(10deg)}to{transform:perspective(400px) rotateY(0);opacity:1}}@keyframes staggerFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes countUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes progressBar{0%{width:0}to{width:100%}}@keyframes progressIndeterminate{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes wave{0%,to{transform:scaleY(1)}50%{transform:scaleY(.5)}}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes borderPulse{0%,to{border-color:#6366f14d}50%{border-color:#6366f1cc}}.fade-in{animation:fadeIn .5s ease-in-out}.fade-out{animation:fadeOut .5s ease-in-out}.fade-in-up{animation:fadeInUp .6s ease-out}.fade-in-down{animation:fadeInDown .6s ease-out}.slide-up{animation:slideUp .5s ease-out}.slide-down{animation:slideDown .5s ease-out}.slide-left{animation:slideLeft .5s ease-out}.slide-right{animation:slideRight .5s ease-out}.scale-in{animation:scaleIn .3s ease-out}.scale-out{animation:scaleOut .3s ease-out}.zoom-in{animation:zoomIn .4s cubic-bezier(.175,.885,.32,1.275)}.zoom-in-bounce{animation:zoomInBounce .6s ease-out}.spin{animation:spin 1s linear infinite}.spin-slow{animation:spin 2s linear infinite}.bounce{animation:bounce 1s ease-in-out infinite}.bounce-in{animation:bounceIn .6s ease-out}.bounce-in-up{animation:bounceInUp .8s ease-out}.shake{animation:shake .5s ease-in-out}.wiggle{animation:wiggle .5s ease-in-out}.pulse{animation:pulse 2s ease-in-out infinite}.heartbeat{animation:heartbeat 1.5s ease-in-out infinite}.float{animation:float 3s ease-in-out infinite}.float-shadow{animation:floatShadow 3s ease-in-out infinite}.glow{animation:glow 2s ease-in-out infinite}.glow-text{animation:glowText 2s ease-in-out infinite}.flip-in-x{animation:flipInX .8s ease-out}.flip-in-y{animation:flipInY .8s ease-out}.slide-in-left{animation:slideInFromLeft .5s ease-out}.slide-in-right{animation:slideInFromRight .5s ease-out}.slide-in-top{animation:slideInFromTop .5s ease-out}.slide-in-bottom{animation:slideInFromBottom .5s ease-out}.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}.delay-700{animation-delay:.7s}.delay-1000{animation-delay:1s}.duration-150{animation-duration:.15s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.duration-700{animation-duration:.7s}.duration-1000{animation-duration:1s}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton 1.5s ease-in-out infinite;border-radius:4px}.skeleton-text{height:1em;margin-bottom:.5em;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton 1.5s ease-in-out infinite;border-radius:4px}.skeleton-text:last-child{width:80%}.skeleton-circle{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton 1.5s ease-in-out infinite;border-radius:50%}.skeleton-card{height:200px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton 1.5s ease-in-out infinite;border-radius:4px}.shimmer{background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);background-size:1000px 100%;animation:shimmer 2s infinite}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 20px #0000001a}.hover-scale{transition:transform .3s ease}.hover-scale:hover{transform:scale(1.05)}.hover-scale-sm{transition:transform .3s ease}.hover-scale-sm:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow .3s ease}.hover-glow:hover{box-shadow:0 0 20px #6366f166}.hover-shine{position:relative;overflow:hidden}.hover-shine:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.hover-shine:hover:after{left:100%}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.3) 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10);opacity:0;transition:transform .5s,opacity 1s}.ripple:active:after{transform:scale(0);opacity:.3;transition:0s}.gradient-animate{background:linear-gradient(-45deg,#6366f1,#8b5cf6,#ec4899,#f59e0b);background-size:400% 400%;animation:gradientShift 15s ease infinite}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}.stagger-7{animation-delay:.7s}.stagger-8{animation-delay:.8s}.stagger-9{animation-delay:.9s}.stagger-10{animation-delay:1s}.page-enter{animation:fadeInUp .4s ease-out}.page-leave{animation:fadeOut .3s ease-in}.card-hover{transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.card-hover:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0000001f}.btn-animated{position:relative;overflow:hidden;transition:all .3s ease}.btn-animated:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.btn-animated:hover:before{width:300px;height:300px}.btn-animated:active{transform:scale(.98)}.icon-spin-hover{transition:transform .3s ease}.icon-spin-hover:hover{transform:rotate(180deg)}.icon-bounce-hover{transition:transform .3s ease}.icon-bounce-hover:hover{animation:bounce .5s ease}.counter-animate{animation:countUp .5s ease-out}.badge-pulse{position:relative}.badge-pulse:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;animation:pulseRing 1.5s cubic-bezier(.215,.61,.355,1) infinite;background:inherit}.loading-dots{display:inline-flex;gap:4px}.loading-dots span{width:8px;height:8px;border-radius:50%;background:currentColor;animation:bounce 1.4s ease-in-out infinite both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}.loading-wave{display:inline-flex;gap:2px}.loading-wave span{width:4px;height:20px;background:currentColor;animation:wave 1.2s ease-in-out infinite}.loading-wave span:nth-child(1){animation-delay:0s}.loading-wave span:nth-child(2){animation-delay:.1s}.loading-wave span:nth-child(3){animation-delay:.2s}.loading-wave span:nth-child(4){animation-delay:.3s}.loading-wave span:nth-child(5){animation-delay:.4s}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}html,body{height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#1f2937;background:#f9fafb;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.2;color:#1f2937}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1rem}h6{font-size:.875rem}p{margin:0}a{text-decoration:none;color:inherit;transition:color .3s ease}img{max-width:100%;height:auto;display:block}button{font-family:inherit}::selection{background:#1caab033;color:#1f2937}:focus-visible{outline:2px solid #1caab0;outline-offset:2px}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}@media (max-width: 640px){.container{padding:0 1rem}}.container-fluid{width:100%;padding:0 1.5rem}@media (max-width: 640px){.container-fluid{padding:0 1rem}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:#1f2937}.text-secondary{color:#6b7280}.text-tertiary{color:#9ca3af}.text-success{color:#10b981}.text-warning{color:#f59e0b}.text-error{color:#ef4444}.text-info{color:#3b82f6}.bg-primary{background-color:#fff}.bg-secondary{background-color:#f9fafb}.bg-tertiary{background-color:#f3f4f6}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:2rem}.mt-6{margin-top:3rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:2rem}.mb-6{margin-bottom:3rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:1rem}.ml-4{margin-left:1.5rem}.mr-0{margin-right:0}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:1rem}.mr-4{margin-right:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:2rem}.p-6{padding:3rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:1rem;padding-right:1rem}.px-4{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:1rem;padding-bottom:1rem}.py-4{padding-top:1.5rem;padding-bottom:1.5rem}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.d-grid{display:grid}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.align-stretch{align-items:stretch}.flex-1{flex:1}.flex-grow-0{flex-grow:0}.flex-grow-1{flex-grow:1}.flex-shrink-0{flex-shrink:0}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:1rem}.gap-4{gap:1.5rem}.gap-5{gap:2rem}.w-full{width:100%}.w-auto{width:auto}.max-w-full{max-width:100%}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px}.rounded{border-radius:8px}.rounded-lg{border-radius:12px}.rounded-xl{border-radius:16px}.rounded-full{border-radius:9999px}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.visible{visibility:visible}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.transition-none{transition:none}.transition-all{transition:all .3s ease}.transition-fast{transition:all .15s ease}.transition-slow{transition:all .5s ease}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f9fafb}::-webkit-scrollbar-thumb{background:#9ca3af;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#6b7280}*{scrollbar-width:thin;scrollbar-color:#9ca3af #f9fafb}@media (max-width: 640px){.sm\:d-none{display:none}.sm\:d-block{display:block}.sm\:d-flex{display:flex}.sm\:flex-column{flex-direction:column}.sm\:text-center{text-align:center}.sm\:w-full{width:100%}}@media (max-width: 768px){.md\:d-none{display:none}.md\:d-block{display:block}.md\:d-flex{display:flex}.md\:flex-column{flex-direction:column}.md\:text-center{text-align:center}.md\:w-full{width:100%}}@media (max-width: 1024px){.lg\:d-none{display:none}.lg\:d-block{display:block}}@media print{body{background:#fff}.no-print{display:none!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn{padding:.5rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:.9375rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#1caab0,#737373);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1caab066}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:transparent;color:#1caab0;border:2px solid #1caab0}.btn-secondary:hover:not(:disabled){background:#1caab01a}.btn-outline{background:transparent;color:#6b7280;border:2px solid #e5e7eb}.btn-outline:hover:not(:disabled){border-color:#1caab0;color:#1caab0}.btn-ghost{background:transparent;color:#6b7280}.btn-ghost:hover:not(:disabled){background:#f9fafb;color:#1f2937}.btn-danger{background:linear-gradient(135deg,#ef4444,#eb1515);color:#fff}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.btn-success{background:linear-gradient(135deg,#10b981,#0c8a60);color:#fff}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.btn-sm{padding:.25rem 1rem;font-size:.8125rem}.btn-lg{padding:1rem 2rem;font-size:1.0625rem}.btn-icon{padding:.5rem;border-radius:8px}.btn-icon svg{width:20px;height:20px}.card{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:1.5rem;transition:all .3s ease}.card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.card-hover{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:1.5rem;transition:all .3s ease;cursor:pointer}.card-hover:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.card-hover:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:600;border-radius:9999px;text-transform:uppercase;letter-spacing:.5px}.badge-primary{background:#1caab01a;color:#1caab0}.badge-success{background:#10b9811a;color:#10b981}.badge-warning{background:#f59e0b1a;color:#f59e0b}.badge-error{background:#ef44441a;color:#ef4444}.badge-info{background:#3b82f61a;color:#3b82f6}.form-input{width:100%;padding:1rem 1.5rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;color:#1f2937;background:#fff;transition:all .3s ease}.form-input::placeholder{color:#9ca3af}.form-input:focus{outline:none;border-color:#1caab0;box-shadow:0 0 0 3px #1caab01a}.form-input:disabled{background:#f9fafb;cursor:not-allowed}.form-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#1f2937}.form-group{margin-bottom:1.5rem}.form-error{margin-top:.25rem;font-size:.8125rem;color:#ef4444}.divider{height:1px;background:#e5e7eb;margin:1.5rem 0}.avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9999px;background:linear-gradient(135deg,#1caab0,#737373);color:#fff;font-weight:600;font-size:.875rem;flex-shrink:0}.avatar-sm{width:32px;height:32px;font-size:.75rem}.avatar-lg{width:56px;height:56px;font-size:1.25rem}.avatar-xl{width:80px;height:80px;font-size:1.5rem}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);padding:.5rem 1rem;background:#1f2937;color:#fff;font-size:.75rem;border-radius:8px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .15s ease;z-index:700;pointer-events:none}[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.progress{height:8px;background:#f3f4f6;border-radius:9999px;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(135deg,#1caab0,#737373);border-radius:9999px;transition:width .5s ease}.empty-state{align-items:center;justify-content:center;display:flex;flex-direction:column;padding:4rem 2rem;text-align:center}.empty-state .empty-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.5}.empty-state h3{margin-bottom:.5rem;color:#1f2937}.empty-state p{color:#6b7280;margin-bottom:1.5rem;max-width:400px}.gradient-text{background:linear-gradient(135deg,#1caab0,#737373);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass{background:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spinner{width:40px;height:40px;border:3px solid rgba(99,102,241,.2);border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite}.spinner-sm{width:24px;height:24px;border:3px solid rgba(99,102,241,.2);border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite}.spinner-lg{width:56px;height:56px;border:3px solid rgba(99,102,241,.2);border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite}
