@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";
:root{--app-bg:#f8fafc;--accent:#7c3aed}html,body,#root{background-color:var(--app-bg);width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{color:#0f172a;-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,sans-serif}.phone-mockup{background-color:var(--app-bg);flex-direction:column;width:100%;max-width:430px;height:100%;margin:0 auto;display:flex;position:relative;overflow:hidden}#app-loader{z-index:9999;background:#f8fafc;flex-direction:column;justify-content:center;align-items:center;transition:opacity .4s ease-out,visibility .4s;display:flex;position:fixed;inset:0}.app-loader-text{color:#94a3b8;text-transform:uppercase;letter-spacing:.2em;margin-top:20px;font-size:10px;font-weight:800}.spinner{border:3px solid #7c3aed;border-top-color:#0000;border-radius:50%;width:40px;height:40px;animation:.8s cubic-bezier(.5,0,.5,1) infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.4s cubic-bezier(.16,1,.3,1) forwards slide-up}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:.3s ease-out forwards fade-in}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:.4s ease-out forwards fade-in-up}@keyframes slide-in-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.animate-slide-in-up{animation:.3s cubic-bezier(.16,1,.3,1) forwards slide-in-up}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#f8fafc 50%,#f1f5f9 75%) 0 0/200% 100%;animation:1.5s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.tap-bounce:active{transition:transform .1s;transform:scale(.96)}.mask-gradient-b{-webkit-mask-image:linear-gradient(#000 50%,#0000 100%);mask-image:linear-gradient(#000 50%,#0000 100%)}
