:root{--ink: #1d2440;--cream: #fff8ec;--yellow: #f2b625;--red: #d8352e;--blue: #2f6fc8;--green: #2e9e5b;--panel: rgba(255, 248, 236, .94);--shade: rgba(20, 16, 30, .55);--vh: 1vh;--gn: 0px;--font: "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Hiragino Sans", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#f2dfc6;color:var(--ink);font-family:var(--font);-webkit-tap-highlight-color:transparent;overscroll-behavior:none}body{overflow:hidden}button,select,input{font:inherit;color:inherit}button{cursor:pointer}[hidden]{display:none!important}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}body:has(#gamenow-exit-launcher){--gn: 58px}body.gamenow-mobile-mode{--gn: 0px}.app{position:fixed;inset:0;overflow:hidden;user-select:none;-webkit-user-select:none}#view{position:absolute;inset:0;width:100%;height:100%;display:block}.poster{position:absolute;inset:0;background:#e9c98f url(/poster.webp) center 30% / cover no-repeat;transition:opacity .6s ease}body.ready3d .poster{opacity:0;pointer-events:none}body[data-screen=play] .poster{display:none}.swipe{position:absolute;inset:0;touch-action:none;z-index:2}.flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:6}#screens{position:absolute;inset:0;z-index:5;pointer-events:none}.big-go{display:block;width:min(100%,360px);min-height:60px;margin:0 auto;padding:12px 22px;border:0;border-radius:18px;background:linear-gradient(180deg,#ffd34f,#f2a31b);color:#3a2200;font-size:22px;font-weight:900;letter-spacing:.02em;box-shadow:0 5px #b8710c,0 10px 24px #5028004d;text-shadow:0 1px 0 rgba(255,255,255,.5)}.big-go:active{transform:translateY(3px);box-shadow:0 2px #b8710c,0 6px 14px #5028004d}.chip{min-height:44px;padding:8px 16px;border-radius:999px;border:2px solid rgba(29,36,64,.15);background:var(--cream);color:var(--ink);font-weight:800;font-size:15px;box-shadow:0 3px #1d244026}.chip.ghost{background:transparent;box-shadow:none}.icon{min-width:44px;min-height:44px;border-radius:14px;border:0;background:#fff8ece6;color:var(--ink);font-size:18px;font-weight:900;box-shadow:0 3px #1d24402e}.link{background:none;border:0;min-height:44px;padding:8px 10px;color:inherit;text-decoration:underline;font-size:14px}.badge{display:inline-block;margin-left:4px;padding:1px 7px;border-radius:999px;background:var(--red);color:#fff;font-size:12px}.ico{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.18em;margin-right:.25em}.ico.coin{border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffe58a,#f2a31b 70%);box-shadow:inset 0 0 0 .12em #c77a09;position:relative}.ico.coin:after{content:"";position:absolute;left:34%;top:34%;width:32%;height:32%;background:#5a3200bf;border-radius:1px}.ico.ticket{width:1.3em;height:.85em;vertical-align:-.08em;border-radius:3px;background:linear-gradient(90deg,#ffd54f 70%,#f57f17 70% 74%,#ffd54f 74%);box-shadow:inset 0 0 0 .08em #c49000}.ico.board{width:1.5em;height:.55em;border-radius:.3em;background:#9b6b3d;box-shadow:0 .18em 0 -.06em #222,inset 0 -.1em #6d4626;vertical-align:0}.wallet{display:inline-flex;align-items:center;min-height:36px;padding:4px 12px;border-radius:999px;background:#1d2440c7;color:#fff;font-weight:900;font-size:16px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:max(10px,env(safe-area-inset-top)) calc(12px + var(--gn)) 6px max(12px,env(safe-area-inset-left));pointer-events:auto}.brand{color:var(--ink);background:#fff8ece6;padding:8px 12px;border-radius:12px;font-weight:900;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;letter-spacing:.02em}.top-actions{display:flex;gap:6px;align-items:center}.lang select{min-height:44px;max-width:108px;border-radius:12px;border:0;padding:0 8px;background:#fff8ece6;font-weight:700}.screen{position:absolute;inset:0;display:flex;flex-direction:column;pointer-events:none}.title-screen{background:linear-gradient(180deg,#fff0d28c,#fff0d200 34%,#28140a00 58%,#28140a8c)}.hero{text-align:center;padding:2vh 16px 0;pointer-events:none}.logo{margin:0;line-height:1}.logo-ko{display:block;font-size:clamp(46px,13vw,92px);font-weight:900;color:#fff;letter-spacing:-.02em;-webkit-text-stroke:3px #3a1d0a;paint-order:stroke fill;text-shadow:0 5px 0 #d8352e,0 9px 18px rgba(0,0,0,.35);transform:rotate(-3deg)}.logo-en{display:inline-block;margin-top:10px;padding:4px 12px;border-radius:8px;background:var(--ink);color:var(--yellow);font-size:clamp(14px,3.6vw,20px);font-weight:900;letter-spacing:.3em}.tagline{max-width:520px;margin:12px auto 0;padding:8px 14px;border-radius:12px;background:#fff8ecd1;font-size:14px;line-height:1.45;font-weight:600}.actions{margin-top:auto;padding:12px calc(16px + var(--gn)) 4px 16px;text-align:center;pointer-events:auto}.stats-line{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:14px 0 10px;color:#fff;font-size:15px;text-shadow:0 1px 3px rgba(0,0,0,.6)}.stats-line b{font-size:17px}.stats-line .lv{padding:0 8px;border-radius:8px;background:#d8352ed9}.row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:8px}.foot{display:flex;justify-content:center;gap:10px;padding:0 calc(12px + var(--gn)) max(8px,env(safe-area-inset-bottom)) 12px;color:#fff;pointer-events:auto;text-shadow:0 1px 2px rgba(0,0,0,.6)}.result-screen,.panel-screen{background:#14101e59}.result-card,.panel{pointer-events:auto;margin:4px auto 0;width:min(94vw,480px);max-height:calc(100% - 70px);overflow:auto;padding:16px 16px max(16px,env(safe-area-inset-bottom));border-radius:22px;background:var(--panel);box-shadow:0 12px 40px #00000059}.result-card h2,.panel h2{margin:0;font-size:22px;text-align:center}.cause{margin:4px 0 0;text-align:center;color:#6b5a4a;font-weight:700}.score-big{margin:6px 0;text-align:center;font-size:46px;font-weight:900;color:var(--red);line-height:1.1}.new-best{display:block;font-size:16px;color:#fff;background:var(--green);width:fit-content;margin:4px auto 0;padding:3px 12px;border-radius:999px;animation:pop .5s ease}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:8px 0}.grid div{background:#fff;border-radius:12px;padding:6px 4px;text-align:center}.grid dt{font-size:11px;color:#7a6a5a}.grid dd{margin:2px 0 0;font-weight:900;font-size:15px;white-space:nowrap}.reward{text-align:center;font-weight:900;color:var(--green);margin:4px 0}.missions{list-style:none;margin:8px 0;padding:0;display:grid;gap:6px}.mission{display:grid;grid-template-columns:1fr auto;grid-template-areas:"n num" "bar bar";gap:4px 8px;padding:8px 10px;border-radius:12px;background:#fff;font-size:14px;font-weight:700}.mission .m-name{grid-area:n}.mission .m-num{grid-area:num;font-variant-numeric:tabular-nums;color:#6b5a4a}.mission .bar{grid-area:bar;height:8px;border-radius:99px;background:#eadfcd;overflow:hidden}.mission .bar i{display:block;height:100%;background:linear-gradient(90deg,#f2b625,#f08a24);border-radius:99px}.mission.done{background:#e6f5ea}.mission.done .bar i{background:var(--green)}.mission.done .m-num{color:var(--green);font-weight:900}.missions.big .mission{font-size:16px;padding:12px}.tip{font-size:13px;color:#5a4a3a;background:#fff3d6;border-radius:10px;padding:8px 10px;margin:8px 0 12px}.note{font-size:13px;color:#5a4a3a;text-align:center;line-height:1.5}.lv-big{text-align:center;font-weight:900;font-size:20px;margin:8px 0;color:var(--red)}.lv-big small{display:block;font-size:13px;color:#6b5a4a;font-weight:700}.shop-screen{background:linear-gradient(180deg,#14101e00 0% 30%,#14101e66)}.shop-screen .panel{margin-top:auto;max-height:62%;border-radius:22px 22px 0 0;width:min(100vw,560px)}.tabs{display:flex;gap:6px;margin-bottom:10px}.tab{flex:1;min-height:44px;border-radius:12px;border:0;background:#efe3cf;font-weight:900}.tab.on{background:var(--ink);color:var(--yellow)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.card{display:flex;flex-direction:column;gap:4px;padding:10px;border-radius:16px;background:#fff;border:3px solid transparent}.card.sel{border-color:var(--yellow)}.card h3{margin:0;font-size:15px}.card h3 small{color:#8a7a6a;font-size:12px}.card p{margin:0;font-size:12px;color:#6b5a4a;line-height:1.35;flex:1}.buy{min-height:44px;border-radius:12px;border:0;background:var(--green);color:#fff;font-weight:900;font-size:15px}.buy.poor{background:#b9ab98}.buy.on,.buy:disabled{background:#e9dfcf;color:#6b5a4a}.pips{display:flex;gap:3px}.pips i{flex:1;height:6px;border-radius:3px;background:#eadfcd}.pips i.on{background:var(--yellow)}.portrait{width:52px;height:52px;border-radius:50%;align-self:center;position:relative;background:#f2c7a5;box-shadow:inset 0 -6px #00000014}.portrait:before{content:"";position:absolute;left:4px;right:4px;top:2px;height:22px;border-radius:26px 26px 6px 6px}.portrait:after{content:"";position:absolute;left:15px;top:28px;width:22px;height:5px;border-radius:3px;background:radial-gradient(circle at 3px 2px,#2a1d17 2px,transparent 2.5px),radial-gradient(circle at 19px 2px,#2a1d17 2px,transparent 2.5px)}.p-doyun:before{background:#24407a}.p-haeun:before{background:#1f1a1a;box-shadow:18px 4px 0 -4px #d32f2f}.p-mingu:before{background:#fafafa;border-bottom:5px solid #1f1a1a}.p-bongsun:before{background:radial-gradient(circle at 20% 60%,#c4c4c4 7px,transparent 7.5px),radial-gradient(circle at 50% 40%,#c4c4c4 9px,transparent 9.5px),radial-gradient(circle at 80% 60%,#c4c4c4 7px,transparent 7.5px)}.p-jeombak{background:#fafafa}.p-jeombak:before{background:radial-gradient(circle at 70% 60%,#8d5a3b 6px,transparent 6.5px)}.portrait[class*=" b-"]{border-radius:12px;height:26px;width:70px;margin:13px 0}.b-soban{background:#9b6b3d!important;border-radius:50%!important}.b-washboard{background:repeating-linear-gradient(90deg,#c9a26b 0 5px,#a98454 5px 7px)!important}.b-bamboo{background:repeating-linear-gradient(0deg,#8bc34a 0 5px,#7cb342 5px 10px)!important}.b-najeon{background:radial-gradient(circle at 25% 50%,#b3e5fc 4px,transparent 5px),radial-gradient(circle at 60% 40%,#f8bbd0 4px,transparent 5px),#16121a!important}.b-lantern{background:linear-gradient(90deg,#c62828 60%,#1f4fb0 60%)!important}.b-ticket{background:linear-gradient(90deg,#ffd54f 70%,#f57f17 70% 74%,#ffd54f 74%)!important}.portrait[class*=" b-"]:before,.portrait[class*=" b-"]:after,.portrait[class*=" u-"]:after{display:none}.u-magnet{background:radial-gradient(circle at 50% 60%,#d9b36c 18px,transparent 19px),#e8f4ff}.u-magnet:before{left:22px;right:22px;top:4px;height:18px;background:#b68a43;border-radius:3px}.u-shoes{background:radial-gradient(ellipse 16px 9px at 35% 60%,#ec407a 90%,transparent),radial-gradient(ellipse 16px 9px at 68% 66%,#ec407a 90%,transparent),#ffeef5}.u-shoes:before{display:none}.u-double{background:radial-gradient(circle at 50% 62%,#d32f2f 16px,transparent 17px),#fff5d6}.u-double:before{left:18px;right:18px;top:10px;height:10px;background:#ffc107;border-radius:4px}.hud{position:absolute;inset:0;z-index:4;pointer-events:none}.hud-left{position:absolute;left:max(10px,env(safe-area-inset-left));top:max(10px,env(safe-area-inset-top));display:flex;gap:8px;align-items:flex-start}.hud .pause{pointer-events:auto;width:48px;height:48px;font-size:16px}.hud-score{display:flex;flex-direction:column;align-items:flex-start;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.35),0 0 8px rgba(0,0,0,.35)}.hud-score b{font-size:30px;font-weight:900;line-height:1;font-variant-numeric:tabular-nums;-webkit-text-stroke:1px rgba(40,20,10,.5)}.hud-score small{font-size:13px;font-weight:800;opacity:.95}.mult{margin-top:2px;padding:0 8px;border-radius:8px;background:#1d2440bf;font-weight:900;font-size:14px;text-shadow:none}.mult.hot{background:var(--red);animation:pulse .6s ease infinite alternate}.hud-right{position:absolute;right:calc(max(10px,env(safe-area-inset-right)) + var(--gn));top:max(12px,env(safe-area-inset-top))}.wallet.bump{animation:bump .18s ease}.powers{position:absolute;left:max(10px,env(safe-area-inset-left));top:calc(max(10px,env(safe-area-inset-top)) + 84px);display:flex;gap:6px}.pw{width:40px;height:40px;border-radius:50%;background:conic-gradient(var(--c) calc(var(--p) * 360deg),rgba(255,255,255,.25) 0);display:grid;place-items:center;box-shadow:0 2px 6px #0000004d}.pw i{width:30px;height:30px;border-radius:50%;background:#1d2440d9;display:block;position:relative}.pw i:after{content:"";position:absolute;inset:7px;border-radius:50%}.pw-magnet{--c: #8fd3ff}.pw-magnet i:after{background:#d9b36c;border-radius:50% 50% 40% 40%}.pw-shoes{--c: #ff8ac2}.pw-shoes i:after{background:#ec407a;border-radius:40% 60% 30% 30%;inset:10px 6px}.pw-double{--c: #ffd54f}.pw-double i:after{background:#d32f2f}.pw-board{--c: #c89b63}.pw-board i:after{background:#9b6b3d;inset:12px 5px;border-radius:4px}.pw.ending{animation:blink .3s steps(2) infinite}.zone-name{position:absolute;left:50%;top:calc(max(10px,env(safe-area-inset-top)) + 64px);transform:translate(-50%);padding:6px 16px;border-radius:999px;background:#1d2440c7;color:var(--yellow);font-weight:900;font-size:16px;opacity:0;white-space:nowrap}.zone-name.show{animation:zone 3.2s ease forwards}.board-btn{position:absolute;left:max(14px,env(safe-area-inset-left));bottom:max(18px,env(safe-area-inset-bottom));width:68px;height:68px;border-radius:50%;border:3px solid rgba(255,255,255,.85);background:#9b6b3de6;color:#fff;font-weight:900;pointer-events:auto;display:none;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px #00000040;touch-action:none;z-index:3}.board-btn .ico.board{background:#fff3c4;margin:0 0 2px}.board-btn b{font-size:14px;line-height:1}.board-btn.empty{opacity:.45}.board-btn.riding{background:#2e9e5bf2}body.gamenow-mobile-mode .board-btn,.touch .board-btn{display:flex}@media(pointer:coarse){.board-btn{display:flex}}.coach{position:absolute;z-index:4;left:50%;top:calc(max(10px,env(safe-area-inset-top)) + 96px);transform:translate(-50%);min-width:230px;max-width:calc(100vw - 32px - var(--gn));padding:10px 14px;border-radius:16px;background:#14101ec7;color:#fff;font-size:14px;pointer-events:none;opacity:0;transition:opacity .3s}.coach.show{opacity:1}.coach b{display:block;color:var(--yellow);margin-bottom:4px}.coach ul{list-style:none;margin:0;padding:0;display:grid;gap:3px}.coach li{display:flex;gap:8px;align-items:center;transition:opacity .3s}.coach li.done{opacity:.45;text-decoration:line-through}.coach li.done kbd{background:var(--green)}.coach kbd{min-width:92px;padding:2px 8px;border-radius:6px;background:#ffffff2e;font-family:inherit;font-weight:800;font-size:13px;text-align:center;white-space:nowrap}.coach p{margin:6px 0 0;font-size:12px;opacity:.8}.hint{position:absolute;z-index:4;left:50%;bottom:max(26px,calc(env(safe-area-inset-bottom) + 14px));transform:translate(-50%);display:flex;flex-direction:row;align-items:center;gap:10px;padding:8px 18px;border-radius:18px;background:#fff8ece6;color:var(--ink);pointer-events:none;opacity:0;transition:opacity .2s}.hint.show{opacity:1;animation:hintpop .35s ease}.hint .arrow{font-size:34px;line-height:1;color:var(--red)}.hint b{font-size:20px;white-space:nowrap}.hint small{white-space:nowrap}.hint small{font-size:13px;color:#6b5a4a;font-weight:700}.toast{position:absolute;z-index:7;left:50%;top:calc(max(10px,env(safe-area-inset-top)) + 130px);transform:translate(-50%,-8px);max-width:calc(100vw - 40px - var(--gn));padding:8px 16px;border-radius:14px;background:#1d2440e6;color:#fff;font-weight:800;font-size:15px;text-align:center;opacity:0;transition:opacity .25s,transform .25s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%)}body:has(#coach.show) .toast{top:calc(max(10px,env(safe-area-inset-top)) + 300px)}@media(orientation:landscape)and (max-height:560px){body:has(#coach.show) .toast{top:auto;bottom:22px}}body:not([data-screen=play]) .toast{top:auto;bottom:max(90px,calc(env(safe-area-inset-bottom) + 90px))}.loading{position:absolute;inset:0;z-index:8;display:grid;place-items:center;background:#14101e59}.loading i{width:54px;height:54px;border-radius:50%;border:6px solid rgba(255,255,255,.3);border-top-color:var(--yellow);animation:spin .8s linear infinite}dialog.sheet{border:0;border-radius:22px;padding:0;width:min(92vw,400px);max-height:88vh;background:var(--panel);color:var(--ink);box-shadow:0 20px 60px #00000073}dialog.sheet::backdrop{background:#14101e80}.sheet-body{display:flex;flex-direction:column;gap:10px;padding:18px}.sheet-body h2{margin:0;text-align:center}.sheet-body .chip,.sheet-body .big-go{width:100%}.small{font-size:13px;color:#5a4a3a;line-height:1.5;margin:0;text-align:center}.slider{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:8px;font-weight:800;font-size:14px;min-height:44px}.slider input{width:100%;min-height:32px;accent-color:var(--red)}.keys{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:14px}.keys dt{font-weight:900}.keys dd{margin:0}.credits{font-size:12px;line-height:1.5;padding-left:18px;margin:0;max-height:34vh;overflow:auto}body.night .hud-score{text-shadow:0 2px 0 rgba(0,0,0,.5),0 0 10px rgba(0,0,0,.6)}@media(orientation:landscape)and (max-height:560px){.hero{padding-top:0}.logo-ko{font-size:clamp(36px,9vh,64px)}.tagline{display:none}.actions{padding-top:4px}.stats-line{margin:8px 0 6px}.result-card,.panel{max-height:calc(100% - 64px)}.grid{grid-template-columns:repeat(4,1fr)}.shop-screen .panel{position:absolute;right:calc(8px + var(--gn));top:60px;bottom:8px;width:min(52vw,480px);max-height:none;border-radius:18px}.coach{left:auto;right:calc(14px + var(--gn));transform:none;top:70px}.powers{top:calc(max(10px,env(safe-area-inset-top)) + 70px)}}@media(min-width:900px){.shop-screen .panel{position:absolute;right:calc(16px + var(--gn));top:72px;bottom:16px;width:460px;max-height:none;border-radius:22px}}@media(max-width:400px){.topbar{gap:4px;padding-left:8px;padding-right:8px}.brand{padding:8px;font-size:14px}.lang select{max-width:86px;font-size:14px}.wallet{padding:4px 9px;font-size:14px}}@media(max-width:360px){.grid{grid-template-columns:repeat(2,1fr)}.big-go{font-size:20px;min-height:56px}.coach kbd{min-width:78px}}@keyframes pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes bump{50%{transform:scale(1.18)}}@keyframes pulse{to{transform:scale(1.12)}}@keyframes blink{50%{opacity:.35}}@keyframes zone{0%{opacity:0;transform:translate(-50%,-8px)}12%,75%{opacity:1;transform:translate(-50%)}to{opacity:0}}@keyframes hintpop{0%{transform:translate(-50%) scale(.8)}to{transform:translate(-50%) scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.mult.hot,.pw.ending,.hint.show,.new-best{animation:none}}
