*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,roboto,helvetica,arial,sans-serif;font-size:1rem;line-height:1.5;color:#1f2937;background-color:#f9fafb;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;min-height:100vh}#app{min-height:100vh}a{color:#8b5cf6;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1)}a:hover{color:#692cf3}button{font-family:inherit;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}@media(min-width:1024px){.container{padding:0 2rem}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.loading-spinner{display:inline-block;width:1.5rem;height:1.5rem;border:2px solid #e5e7eb;border-top-color:#8b5cf6;border-radius:9999px;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fade-enter-active,.fade-leave-active{transition:opacity .2s cubic-bezier(.4,0,.2,1)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.slide-enter-from{transform:translateY(-10px);opacity:0}.slide-leave-to{transform:translateY(10px);opacity:0}
