*{margin:0;padding:0;box-sizing:border-box}html,body,#root{min-height:100%}body{background:#efe9e1;-webkit-font-smoothing:antialiased;font-family:IBM Plex Sans Arabic,system-ui,sans-serif}input,textarea,select,button{font:inherit;color:inherit}input::placeholder,textarea::placeholder{color:#b9aa97;font-weight:400}a{color:inherit;text-decoration:none}.app-frame{max-width:480px;margin:0 auto;min-height:100vh;position:relative}::-webkit-scrollbar{width:0;height:0}.page-enter{animation:pageIn .32s ease-out both}@keyframes pageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.reveal{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}.reveal.in{opacity:1;transform:none}.modal-root .reveal{opacity:1!important;transform:none!important}.rise{animation:riseIn .5s ease-out both}@keyframes riseIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.landing-title{animation:landingTitle .6s cubic-bezier(.2,.8,.3,1) both}@keyframes landingTitle{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}.tick-pop{animation:tickPop .28s cubic-bezier(.3,1.6,.5,1) both}@keyframes tickPop{0%{transform:scale(0)}60%{transform:scale(1.25)}to{transform:scale(1)}}.star-pop{animation:starPop .22s cubic-bezier(.3,1.6,.5,1) both}@keyframes starPop{0%{transform:scale(.4)}60%{transform:scale(1.25)}to{transform:scale(1)}}.pressable{transition:transform .12s ease}.pressable:active{transform:scale(.96)}.count-pulse{animation:countPulse 2s ease-in-out infinite alternate}@keyframes countPulse{0%{opacity:1}to{opacity:.82}}.nav-in{animation:navIn .45s cubic-bezier(.2,.8,.3,1) both}@keyframes navIn{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}.fade-in{animation:fadeIn .4s ease both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.page-enter,.rise,.landing-title,.tick-pop,.star-pop,.nav-in,.fade-in,.count-pulse{animation:none!important}.reveal{opacity:1!important;transform:none!important;transition:none!important}.pressable,.pressable:active{transform:none;transition:none}}
