*{margin:0;padding:0;box-sizing:border-box}html{height:100%;overflow-y:scroll;overscroll-behavior:none}body{width:100%;height:calc(100vh + 1px);height:calc(100dvh + 1px);overflow:hidden;background:#14161f;overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#app{display:flex;flex-direction:column;width:100%;height:100%}#game{flex:1 1 auto;min-height:0;width:100%;position:relative;overflow:hidden}#game canvas{display:block}#rotate-notice{display:none}@media(orientation:portrait)and (max-width:900px){#rotate-notice{display:flex;position:fixed;inset:0;z-index:10;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#14161f;color:#f2f2f2;font-family:system-ui,-apple-system,sans-serif;text-align:center;padding:24px}#rotate-notice .rotate-phone__body{transform-box:view-box;transform-origin:60px 60px;animation:rotate-phone 2.8s cubic-bezier(.65,0,.35,1) infinite}#rotate-notice .rotate-phone__arrow{animation:rotate-arrow 2.8s ease-in-out infinite}@keyframes rotate-phone{0%,18%{transform:rotate(0)}52%,82%{transform:rotate(-90deg)}to{transform:rotate(0)}}@keyframes rotate-arrow{0%,10%{opacity:0}30%,50%{opacity:1}62%,to{opacity:0}}}#ad-banner{position:relative;flex:0 0 auto;height:50px;background:#0d0e14;border-top:1px solid rgba(255,255,255,.12)}#ad-banner[hidden]{display:none}.ad-banner__body{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:100%;padding:0 52px;border:0;background:linear-gradient(90deg,#1d2236,#2a3150 50%,#1d2236);color:#dfe4f5;font:600 14px system-ui,-apple-system,sans-serif;cursor:pointer}.ad-banner__tag{padding:2px 6px;border-radius:4px;background:#f5b82e;color:#1a1a1a;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.ad-banner__close{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:50%;background:#0000008c;color:#fff;font:700 16px/1 system-ui,sans-serif;cursor:pointer;z-index:2}#ad-banner.ad-banner--native{position:fixed;right:0;bottom:0;left:0;height:50px;background:transparent;border:0;pointer-events:none}#ad-banner.ad-banner--native .ad-banner__close{pointer-events:auto}.ad-rewarded{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:16px;background:#05060ab8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-family:system-ui,-apple-system,sans-serif;touch-action:manipulation}.ad-rewarded__frame{width:min(100%,720px);max-height:60vh;aspect-ratio:16 / 9;overflow:hidden;border-radius:12px;background:#101322}.ad-rewarded__media{width:100%;height:100%;object-fit:cover}.ad-rewarded__media--fake{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(120deg,#1c2a57,#6b2c7a,#c2572b,#1c2a57);background-size:300% 300%;animation:ad-rewarded-shift 4s ease-in-out infinite}.ad-rewarded__logo{font-size:clamp(36px,9vw,72px);font-weight:900;letter-spacing:.1em}.ad-rewarded__caption{font-size:14px;opacity:.85}.ad-rewarded__bar{width:min(100%,720px);height:8px;overflow:hidden;border-radius:4px;background:#ffffff2e}.ad-rewarded__fill{width:0;height:100%;background:#4cd37b;transition:width 1s linear}.ad-rewarded__status{font-size:16px;font-weight:600}.ad-rewarded__close{min-width:min(220px,100%);max-width:100%;padding:12px 22px;border:0;border-radius:999px;background:#1c8cdc;color:#fff;font:700 17px system-ui,sans-serif;cursor:pointer}.ad-rewarded__close:disabled{background:#3a3f52;color:#9097ad;cursor:not-allowed}@keyframes ad-rewarded-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.ad-rewarded__card{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(100%,560px);padding:20px 20px 24px;border-radius:18px;background:#14161f;border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 80px #0009;animation:ad-card-in .35s cubic-bezier(.22,1,.36,1) both}.ad-rewarded__card .ad-rewarded__frame,.ad-rewarded__card .ad-rewarded__bar{width:100%}.ad-rewarded__title{align-self:flex-start;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.6}@keyframes ad-card-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}.ad-rewarded{background:#0000008c;-webkit-backdrop-filter:none;backdrop-filter:none}.ad-rewarded__card{align-items:center;background:#fff;color:#111;border:0;border-radius:20px;box-shadow:0 20px 60px #00000059}.ad-rewarded__title{align-self:center;color:#111;opacity:.55}.ad-rewarded__frame{background:#f1f1f1;border-radius:12px}.ad-rewarded__media--fake{background:#f1f1f1;animation:none;color:#9a9a9a}.ad-rewarded__logo{font-size:16px;font-weight:600;letter-spacing:.12em}.ad-rewarded__caption{display:none}.ad-rewarded__bar{background:#e6e6e6}.ad-rewarded__fill{background:#111}.ad-rewarded__status{color:#111}.ad-rewarded__close{background:#111;color:#fff}.ad-rewarded__close:disabled{background:#e6e6e6;color:#9a9a9a}.ad-rewarded__frame{position:relative}.ad-rewarded__play{position:absolute;top:50%;left:50%;width:72px;height:72px;transform:translate(-50%,-50%);border:0;border-radius:50%;background:#111;cursor:pointer;transition:transform .2s}.ad-rewarded__play:after{content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-style:solid;border-width:12px 0 12px 20px;border-color:transparent transparent transparent #ffffff}.ad-rewarded__play:hover{transform:translate(-50%,-50%) scale(1.08)}.ad-rewarded__frame.is-playing .ad-rewarded__logo{animation:ad-pulse 1.2s ease-in-out infinite}.ad-rewarded__frame.is-done .ad-rewarded__logo:after{content:" ✓"}@keyframes ad-pulse{50%{opacity:.35}}.pwa-overlay{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:16px;background:#0a0e1c99;touch-action:manipulation}.pwa-card{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(100%,520px);padding:clamp(36px,9vh,64px) clamp(28px,7vw,64px);background-size:100% 100%;background-repeat:no-repeat;text-align:center;filter:drop-shadow(0 18px 40px rgba(0,0,0,.45));animation:ad-card-in .35s cubic-bezier(.22,1,.36,1) both}.pwa-title{font:400 clamp(30px,6vh,44px) "Grozel",system-ui,sans-serif;color:#7a3f0b}.pwa-text{font:600 clamp(15px,2.6vh,19px)/1.35 "BalooBhai2-SemiBold",system-ui,sans-serif;color:#7a3f0b}.pwa-actions{display:flex;gap:12px;margin-top:6px}.pwa-btn{min-width:128px;padding:10px 24px 12px;border:0;border-radius:999px;background:linear-gradient(#34a8f5,#1b84df);box-shadow:0 5px #0f5fa8,0 8px 14px #0000004d;color:#fff;font:400 clamp(20px,3.4vh,26px) "Grozel",system-ui,sans-serif;text-shadow:0 2px 0 #0f5fa8;cursor:pointer}.pwa-btn:active{transform:translateY(3px);box-shadow:0 2px #0f5fa8}.pwa-btn--later{background:linear-gradient(#f3e3b8,#d9c08a);box-shadow:0 5px #a98a4f,0 8px 14px #00000040;color:#7a3f0b;text-shadow:none}.ad-rewarded__frame--display{display:flex;align-items:center;justify-content:center;aspect-ratio:auto;min-height:250px;max-height:none}.ad-rewarded{background:#0a0e1c99}.ad-rewarded__card{gap:12px;width:min(100%,520px);padding:clamp(34px,8vh,56px) clamp(28px,7vw,60px);background-color:transparent;background-size:100% 100%;background-repeat:no-repeat;color:#7a3f0b;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 18px 40px rgba(0,0,0,.45))}.ad-rewarded__title{align-self:center;font:400 clamp(28px,5.5vh,40px) "Grozel",system-ui,sans-serif;letter-spacing:0;text-transform:none;color:#7a3f0b;opacity:1}.ad-rewarded__frame{background:#ffffff8c;border:2px solid #a98a4f;border-radius:14px}.ad-rewarded__media--fake{background:transparent;color:#a98a4f}.ad-rewarded__bar{height:14px;border-radius:999px;background:#7a3f0b33;border:2px solid #a98a4f}.ad-rewarded__fill{background:linear-gradient(#34a8f5,#1b84df);border-radius:999px}.ad-rewarded__status{font:600 clamp(15px,2.6vh,19px) "BalooBhai2-SemiBold",system-ui,sans-serif;color:#7a3f0b}.ad-rewarded__close{min-width:200px;padding:10px 24px 12px;background:linear-gradient(#34a8f5,#1b84df);box-shadow:0 5px #0f5fa8,0 8px 14px #0000004d;color:#fff;font:400 clamp(18px,3vh,24px) "Grozel",system-ui,sans-serif;text-shadow:0 2px 0 #0f5fa8}.ad-rewarded__close:disabled{background:linear-gradient(#f3e3b8,#d9c08a);box-shadow:0 5px #a98a4f,0 8px 14px #00000040;color:#8a6a3a;text-shadow:none}@media(orientation:portrait)and (max-width:900px){.pwa-overlay{display:none}}
