*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}button,input,select,textarea{transition:all .2s ease}button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}button:not(:disabled):active{transform:translateY(0)}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px #2563eb33;border-color:#2563eb}[style*="cursor: pointer"]:hover{box-shadow:0 4px 12px #0000001a}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{animation:shimmer 2s infinite linear;background:linear-gradient(to right,#f0f0f0 8%,#f8f8f8 18%,#f0f0f0 33%);background-size:1000px 100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}[style*="rgba(0, 0, 0, 0.5)"]{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.glass{background:#ffffffe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast{animation:slideInRight .3s ease}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes badgePop{0%{transform:scale(.8)}50%{transform:scale(1.1)}to{transform:scale(1)}}.badge-enter{animation:badgePop .3s ease}@keyframes ripple{to{transform:scale(4);opacity:0}}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);animation:ripple .6s ease-out}
