@font-face{font-family:NPSfont;src:url(https://cdn.jsdelivr.net/gh/fontbee/font@main/Nps/NPSfontRegular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:NPSfont;src:url(https://cdn.jsdelivr.net/gh/fontbee/font@main/Nps/NPSfontBold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:NPSfont;src:url(https://cdn.jsdelivr.net/gh/fontbee/font@main/Nps/NPSfontExtraBold.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0;font-family:NPSfont,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,Segoe UI,sans-serif}button,input,select,textarea{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;appearance:none;font-family:inherit;outline:none!important}.readable-modal-font,.readable-modal-font *{letter-spacing:0!important;font-family:NPSfont,Apple SD Gothic Neo,Noto Sans KR,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}button:focus,button:active,button:focus-visible{box-shadow:none!important;outline:none!important}.tap-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.tap-btn:active{filter:brightness(.7)}.game-btn{--ink:#061224;--btn-top:#fff;--btn-mid:#ddd;--btn-bottom:#bbb;--btn-text:#fff;--btn-text-shadow-1:#00000038;--btn-text-shadow-2:#00000029;border:5px solid var(--ink);background:linear-gradient(180deg, var(--btn-top) 0%, var(--btn-mid) 55%, var(--btn-bottom) 100%);width:100%;min-height:76px;color:var(--btn-text);letter-spacing:-.04em;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:28px;justify-content:center;align-items:center;padding:0 24px;font-family:NPSfont,-apple-system,BlinkMacSystemFont,sans-serif;font-size:28px;font-weight:900;line-height:1;transition:transform 80ms,filter 80ms,box-shadow 80ms;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 4px #ffffff3d,inset 0 -7px #0000001f,0 6px #00000038,0 10px 18px #00000021}.game-btn>span{z-index:1;white-space:nowrap;text-align:center;text-shadow:0 3px 0 var(--btn-text-shadow-1), 0 5px 0 var(--btn-text-shadow-2);position:relative}.game-btn--purple{--btn-top:#a57aff;--btn-mid:#825be4;--btn-bottom:#6240c7;--btn-text:#fff;--btn-text-shadow-1:#234b80;--btn-text-shadow-2:#00000038}.game-btn--yellow{--btn-top:#ffe071;--btn-mid:#ffc72b;--btn-bottom:#f0a600;--btn-text:#101827;--btn-text-shadow-1:#ffffff5c;--btn-text-shadow-2:#00000012}.game-btn:active{filter:none;transform:translateY(5px);box-shadow:inset 0 3px #ffffff2e,inset 0 -4px #0000001a,0 2px #0000003d,0 5px 10px #0000001f}.puzzle-stage-scroll{scrollbar-width:none;-ms-overflow-style:none}.puzzle-stage-scroll::-webkit-scrollbar{width:0;height:0;display:none}html,body{-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#000;width:100%;height:100%;font-family:NPSfont,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,Segoe UI,sans-serif}body{overscroll-behavior:none;justify-content:center;align-items:center;display:flex}#root{background:#000;width:100%;max-width:430px;height:100%;max-height:min(100dvh,931.667px);position:relative;overflow:auto;box-shadow:0 0 40px #0009}#rotate-gate{z-index:9999;color:#fff;text-align:center;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;font-family:NPSfont,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,Segoe UI,sans-serif;display:none;position:fixed;inset:0}#rotate-gate .rotate-icon{font-size:64px;animation:2s ease-in-out infinite rotateHint}#rotate-gate .rotate-text-ko{letter-spacing:.5px;font-size:18px}#rotate-gate .rotate-text-en{opacity:.6;letter-spacing:.3px;font-size:13px}@keyframes rotateHint{0%,to{transform:rotate(0)}50%{transform:rotate(-90deg)}}@media (orientation:landscape) and (height<=500px){#rotate-gate{display:flex}#root{display:none}}@media (width<=430px){#root{max-width:100%;max-height:100%;box-shadow:none}}body.desktop-mode #root{max-width:none;max-height:none;box-shadow:none;background:0 0;overflow:visible}body.desktop-mode{display:block}*,:before,:after{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}@keyframes floatScoreUp{0%{opacity:0;transform:translate(-50%)scale(.6)}20%{opacity:1;transform:translate(-50%,-10px)scale(1.15)}60%{opacity:1;transform:translate(-50%,-36px)scale(1)}to{opacity:0;transform:translate(-50%,-68px)scale(.9)}}@keyframes rainbowBanner{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)rotate(-6deg)}20%{opacity:1;transform:translate(-50%,-50%)scale(1.25)rotate(2deg)}35%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}80%{opacity:1;transform:translate(-50%,-50%)scale(1.05)rotate(0)}to{opacity:0;transform:translate(-50%,-50%)scale(1.6)rotate(8deg)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 20px #ffffff0d}50%{box-shadow:0 0 40px #ffffff1a}}@keyframes megaFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes heartRain{0%{transform:translateY(0)rotate(0)}to{transform:translateY(calc(100vh + 40px))rotate(25deg)}}@keyframes floatUp{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-55px)}}@keyframes targetPulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes feverPulse{0%{opacity:.5}to{opacity:1}}@keyframes heartPopIn{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.18)}75%{transform:scale(.92)}to{transform:scale(1)}}@keyframes particleBurst{0%{opacity:1;transform:translate(0)scale(1)}to{transform:translate(var(--px),var(--py)) scale(0);opacity:0}}@keyframes bombShake{0%,to{transform:translate(0)}10%{transform:translate(-6px,4px)}20%{transform:translate(5px,-3px)}30%{transform:translate(-4px,-5px)}40%{transform:translate(4px,3px)}50%{transform:translate(-3px,2px)}60%{transform:translate(2px,-2px)}}@keyframes borderPulse{0%{transform:scale(1)}40%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes borderSweep{0%{background-position:-100% 0}to{background-position:200% 0}}@keyframes deathDarken{0%{background:#de2f4440}30%{background:#de2f4426}to{background:#0000004d}}@keyframes lastSecondsPulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes heartbeatRing{0%{opacity:.5;transform:translate(-50%,-50%)scale(.8)}50%{opacity:0;transform:translate(-50%,-50%)scale(1.5)}to{opacity:0;transform:translate(-50%,-50%)scale(1.5)}}@keyframes textPulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}@keyframes lastCountPop{0%{opacity:0;transform:translate(-50%,-50%)scale(2.5)}20%{opacity:.2;transform:translate(-50%,-50%)scale(.9)}40%{opacity:.15;transform:translate(-50%,-50%)scale(1.05)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@keyframes lastSecondsShake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}@keyframes gameOverFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes heartFall{0%{opacity:.6;transform:translateY(-40%)}70%{opacity:1;transform:translateY(4%)}to{opacity:1;transform:translateY(0)}}@keyframes gachaIdle{0%,to{transform:scale(1)rotate(0)}50%{transform:scale(1.05)rotate(1deg)}}@keyframes gachaShake{0%,to{transform:translate(0)rotate(0)}20%{transform:translate(-6px)rotate(-4deg)}40%{transform:translate(6px)rotate(4deg)}60%{transform:translate(-4px)rotate(-2deg)}80%{transform:translate(4px)rotate(2deg)}}@keyframes gachaSparkle{0%{opacity:1;transform:translate(-50%,-50%)scale(0)}50%{transform:translate(calc(-50% + var(--sx,30px)), calc(-50% + var(--sy,-30px))) scale(1.2);opacity:.8}to{transform:translate(calc(-50% + var(--sx,30px)*1.5), calc(-50% + var(--sy,-30px)*1.5)) scale(0);opacity:0}}div[style]>div:nth-child(2){--sx:-35px;--sy:-25px}div[style]>div:nth-child(3){--sx:40px;--sy:-20px}div[style]>div:nth-child(4){--sx:-30px;--sy:30px}div[style]>div:nth-child(5){--sx:35px;--sy:25px}div[style]>div:nth-child(6){--sx:0px;--sy:-40px}div[style]>div:nth-child(7){--sx:0px;--sy:35px}@keyframes gachaReveal{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.3)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes gachaPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes gachaLand{0%{opacity:.3;transform:scale(.5)}60%{opacity:1;transform:scale(1.25)}to{opacity:1;transform:scale(1)}}@keyframes rushCountPop{0%{opacity:0;transform:scale(.85)}40%{opacity:1;transform:scale(1.35)}to{opacity:1;transform:scale(1.1)}}@keyframes rushFlash{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes rushHeartPop{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}
