@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes ripple{0%{width:0;height:0;opacity:.5}to{width:500px;height:500px;margin-left:-250px;margin-top:-250px;opacity:0}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.animate-slideUp{animation:slideUp .3s ease-out}.animate-fadeIn{animation:fadeIn .2s ease-in}.animate-scaleIn{animation:scaleIn .2s ease-out}.animate-shimmer{background:linear-gradient(90deg,#f3f4f600,#f3f4f680,#f3f4f600);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.dark .animate-shimmer{background:linear-gradient(90deg,#37415100,#4b556380,#37415100);background-size:200% 100%}.animate-ripple{animation:ripple .6s ease-out}.animate-shake{animation:shake .5s ease-in-out}.animate-bounceIn{animation:bounceIn .6s cubic-bezier(.68,-.55,.265,1.55)}.input-valid{@apply border-green-500 focus:ring-green-500 focus:border-green-500;}.input-invalid{@apply border-red-500 focus:ring-red-500 focus:border-red-500;}.input-base{@apply transition-all duration-200 ease-in-out;}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#9ca3af80;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#6b7280b3}.dark ::-webkit-scrollbar-thumb{background:#4b556380}.dark ::-webkit-scrollbar-thumb:hover{background:#374151b3}.skip-to-content{position:absolute;top:-40px;left:0;background:#667eea;color:#fff;padding:8px 16px;text-decoration:none;border-radius:0 0 4px;z-index:100;transition:top .2s ease}.skip-to-content:focus{top:0}*:focus-visible{outline:3px solid #667eea;outline-offset:2px;border-radius:4px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #667eea;outline-offset:2px}.dark *:focus-visible,.dark button:focus-visible,.dark a:focus-visible,.dark input:focus-visible,.dark textarea:focus-visible,.dark select:focus-visible{outline-color:#a855f7}*:focus:not(:focus-visible){outline:none}.focus-ring-primary:focus-visible{outline:3px solid #667eea;outline-offset:3px;box-shadow:0 0 0 6px #667eea33}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-slideUp,.animate-fadeIn,.animate-scaleIn,.animate-shimmer,.animate-ripple,.animate-shake,.animate-bounceIn,.gradient-mesh{animation:none!important}}@media(prefers-contrast:high){.glass,.glass-strong,.glass-subtle{background:#fff;border:2px solid black}.dark .glass,.dark .glass-strong,.dark .glass-subtle{background:#000;border:2px solid white}}.glass{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18)}.dark .glass{background:#1f2937b3;border:1px solid rgba(75,85,99,.18)}.glass-strong{background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.3)}.dark .glass-strong{background:#1f2937d9;border:1px solid rgba(75,85,99,.3)}.glass-subtle{background:#ffffff80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1)}.dark .glass-subtle{background:#1f293780;border:1px solid rgba(75,85,99,.1)}.gradient-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.gradient-success{background:linear-gradient(135deg,#10b981,#059669)}.gradient-danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.gradient-warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.gradient-info{background:linear-gradient(135deg,#3b82f6,#2563eb)}.gradient-pink{background:linear-gradient(135deg,#ec4899,#db2777)}.gradient-purple{background:linear-gradient(135deg,#a855f7,#9333ea)}.gradient-ocean{background:linear-gradient(135deg,#667eea,#764ba2,#f093fb)}.gradient-sunset{background:linear-gradient(135deg,#fa709a,#fee140)}.gradient-mesh{background:linear-gradient(135deg,#667eea,#764ba2,#f093fb,#4facfe,#00f2fe);background-size:200% 200%;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.card-elevated{box-shadow:0 10px 40px -10px #0000001a;transform:translateZ(0);transition:all .3s cubic-bezier(.4,0,.2,1)}.card-elevated:hover{box-shadow:0 20px 60px -15px #00000026;transform:translateY(-4px) translateZ(0)}.dark .card-elevated{box-shadow:0 10px 40px -10px #0000004d}.dark .card-elevated:hover{box-shadow:0 20px 60px -15px #0006}.backdrop-blur-strong{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.backdrop-blur-medium{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.backdrop-blur-light{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.gradient-text{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-animated{background:linear-gradient(90deg,#667eea,#764ba2,#f093fb,#4facfe);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 8s ease infinite}.shadow-glow{box-shadow:0 0 20px #667eea66}.shadow-glow-green{box-shadow:0 0 20px #10b98166}.shadow-glow-red{box-shadow:0 0 20px #ef444466}.gradient-border{position:relative;background:#fff;border-radius:.75rem}.gradient-border:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:.75rem;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}.dark .gradient-border{background:#1f2937}
