:root{--cream: #fff6e9;--coral: #ff6b5e;--coral-dark: #d94f43;--turq: #2ec4b6;--turq-dark: #1f9b8f;--yellow: #ffc845;--yellow-dark: #d9a312;--purple: #7c6fe0;--purple-dark: #5a4fb8;--pink: #ff9ec4;--pink-dark: #e06a9c;--green: #7bc47f;--green-dark: #57a05c;--ink: #2b2540;--muted: #9a917c;--muted2: #6f6857;--card-shadow: #ece4d2;--card-shadow2: #e3dcc9;--night: #2b2540;--ui-font: "Baloo 2", system-ui, -apple-system, sans-serif;--story-font: "Gaegu", "Baloo 2", cursive}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{font-family:var(--ui-font);color:var(--ink);background:#d9d3c6;overflow:hidden;user-select:none;-webkit-user-select:none}button{font-family:inherit;border:none;background:none;cursor:pointer;color:inherit}.app-root{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 0%,#efe7d7,#d9d3c6)}.stage{width:1024px;height:768px;transform-origin:center center;flex:none}.screen{position:relative;width:1024px;height:768px;border-radius:42px;overflow:hidden;background:var(--cream);box-shadow:0 28px 70px #00000038;display:flex;flex-direction:column}.tap{transition:transform .08s ease,box-shadow .08s ease}.tap:active{transform:translateY(4px)}.fadein{animation:fadein .45s ease both}.pop{animation:pop .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes flt{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes pls{0%,to{transform:scale(1);box-shadow:0 0 #ff6b5e73}50%{transform:scale(1.06);box-shadow:0 0 0 26px #ff6b5e00}}@keyframes wv{0%,to{transform:scaleY(.5)}50%{transform:scaleY(1)}}@keyframes flip{0%{transform:rotateY(0)}45%,to{transform:rotateY(-170deg)}}@keyframes tw{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}@keyframes fadein{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes flipNext{0%{transform:rotateY(0)}to{transform:rotateY(-180deg)}}@keyframes flipPrev{0%{transform:rotateY(-180deg)}to{transform:rotateY(0)}}.flip-next{animation:flipNext .62s ease-in-out forwards}.flip-prev{animation:flipPrev .62s ease-in-out forwards}.wv-bar{transform-origin:bottom center;animation:wv 1s infinite}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important}}
