:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1c1c1f;--ink:#e8e8ea}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;margin:0;font-family:system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,sans-serif;overflow:hidden}#stage{height:100dvh;position:fixed;inset:0}#stage canvas{touch-action:none;outline:none;width:100%;height:100%;display:block}#ui-root{pointer-events:none;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;inset:0}.temp-message{pointer-events:none;place-items:center;font-size:16px;display:grid;position:absolute;inset:0}.gate{--reserve:156px;--gw:min(100vw, calc((100dvh - var(--reserve)) * .851));--u:calc(var(--gw) / 400);--cream:#f6ede2;--gold:#d9a441;--orange:#ff8a3d;--red:#c8202e;--plum:#050306;z-index:1000;color:var(--cream);background:radial-gradient(70% 45% at 50% 62%, #ff4a1a24, transparent 70%), radial-gradient(130% 90% at 50% 30%, #1c1210 0%, #0e0908 46%, var(--plum) 100%);touch-action:none;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif;position:fixed;inset:0;overflow:hidden}@media (max-height:520px){.gate{--reserve:84px}.gate__tag{display:none}.gate__foot{height:64px}}.gate *,.gate :before,.gate :after{box-sizing:border-box}.gate [hidden]{display:none!important}.gate__world{padding:max(env(safe-area-inset-top,0px), 12px) 0 max(env(safe-area-inset-bottom,0px), 12px);will-change:transform;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.gate__sky{pointer-events:none;position:absolute;inset:0;overflow:hidden}.gate__star{opacity:.3;width:3px;height:3px;animation:gate-twinkle var(--dur,3s) ease-in-out var(--delay,0s) infinite;background:#ff9a5a;border-radius:50%;position:absolute}.gate__ember{width:var(--size,6px);height:var(--size,6px);background:radial-gradient(circle, #ffe2a0 0%, var(--orange) 55%, #ff8a3d00 72%);opacity:0;animation:gate-rise var(--dur,9s) linear var(--delay,0s) infinite;border-radius:50%;position:absolute;bottom:-12px}@keyframes gate-twinkle{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:.85;transform:scale(1.25)}}@keyframes gate-rise{0%{opacity:0;transform:translate(0,0)scale(.6)}12%{opacity:.9}to{opacity:0;transform:translate3d(var(--drift,20px), -86vh, 0) scale(1)}}.gate__tag{height:40px;font-size:clamp(16px, calc(var(--u) * 17), 24px);letter-spacing:.01em;color:var(--cream);text-shadow:0 2px #000000bf;align-items:center;margin:8px 0 0;font-weight:800;transition:opacity .4s,transform .4s;display:flex;position:relative}.gate.has-life{--reserve:190px}.gate__life{max-width:calc(100% - 32px);color:var(--cream);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;background:#140f0dc7;border:1px solid #d9a44159;border-radius:999px;flex:none;margin:0;padding:4px 12px;font-size:13px;font-weight:700;line-height:1.35;transition:opacity .4s;position:relative;overflow:hidden}.gate.is-stamped .gate__life{opacity:0}@media (max-height:520px){.gate.has-life{--reserve:84px}.gate__life{display:none}}.gate.is-stamped .gate__tag{opacity:0;transform:translateY(-6px)}.gate__stage{flex:none;place-items:center;width:100%;display:grid;position:relative}.gate__foot{align-content:center;place-items:center;gap:8px;width:min(100%,560px);height:108px;display:grid;position:relative}.gate__foot>*{grid-area:1/1}.gate__hint{min-height:48px;color:var(--cream);font:inherit;font-size:clamp(15px, calc(var(--u) * 16), 20px);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#140f0dd1;border:2.5px solid #d9a441cc;border-radius:999px;align-items:center;gap:10px;padding:0 22px 0 16px;font-weight:800;transition:opacity .3s,transform .3s;animation:1.6s ease-in-out infinite gate-hint-bob;display:inline-flex;box-shadow:0 4px #000000b3}.gate__hint:focus-visible,.gate__retry:focus-visible{outline:3px solid var(--cream);outline-offset:3px}.gate.is-stamped .gate__hint{opacity:0;pointer-events:none;animation:none;transform:translateY(8px)}.gate__tap{background:var(--gold);border-radius:50%;width:14px;height:14px;position:relative}.gate__tap:after{content:"";border:2px solid var(--gold);border-radius:50%;animation:1.4s ease-out infinite gate-ping;position:absolute;inset:-2px}@keyframes gate-ping{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}@keyframes gate-hint-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.gate__sub{font-size:clamp(15px, calc(var(--u) * 17), 22px);color:var(--cream);text-align:center;opacity:0;background:#0a0606a8;border-radius:999px;margin:0;padding:6px 18px 8px;font-weight:800;transition:opacity .45s .15s,transform .45s cubic-bezier(.2,.9,.3,1.3) .15s;transform:translateY(10px)}.gate.is-impact .gate__sub{opacity:1;transform:none}.gate.is-failed .gate__sub{opacity:0}.gate__result{justify-items:center;gap:10px;display:grid}.gate__wait{font-size:clamp(13px, calc(var(--u) * 14), 17px);color:#f6ede2e0;text-shadow:0 1px #000c;margin:0;font-weight:700;animation:.4s both gate-fade-in}.gate__dots i{background:currentColor;border-radius:50%;width:5px;height:5px;margin-left:4px;animation:1s ease-in-out infinite gate-dot;display:inline-block}.gate__dots i:nth-child(2){animation-delay:.15s}.gate__dots i:nth-child(3){animation-delay:.3s}@keyframes gate-dot{0%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}@keyframes gate-fade-in{0%{opacity:0}to{opacity:1}}.gate__error{align-self:center;justify-items:center;gap:8px;display:grid}.gate__error p{font-size:clamp(15px, calc(var(--u) * 16), 20px);margin:0;font-weight:800}.gate__retry{border:2.5px solid var(--gold);background:var(--gold);color:#1a0f0a;min-height:44px;font:inherit;cursor:pointer;border-radius:999px;padding:0 22px;font-weight:800}.gate__live{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gate__art{width:var(--gw);aspect-ratio:400/470;position:relative}.gate__svg{width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.gate__moon{aspect-ratio:1;opacity:.55;background:radial-gradient(circle,#6a1a0c 0%,#3a0c06 50%,#14040200 72%);border-radius:50%;width:80%;position:absolute;top:-2%;left:10%}.gate-eye,.gate-lantern,.gate-plaque,.gate-wisp,.gate-glow{transform-box:fill-box}.gate-lantern{transform-origin:50% 0;animation:3.6s ease-in-out infinite gate-sway}.gate-plaque{transform-origin:50% 0;animation:4.4s ease-in-out -1.2s infinite gate-sway}.gate-lantern+.gate-lantern{animation-delay:-1.7s}@keyframes gate-sway{0%,to{transform:rotate(-3.2deg)}50%{transform:rotate(3.2deg)}}.gate-glow{transform-origin:50%;animation:2.4s ease-in-out infinite gate-pulse}@keyframes gate-pulse{0%,to{opacity:.75;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}.gate-eye{transform-origin:50%;animation:5.2s ease-in-out infinite gate-blink}.gate-eye+.gate-eye{animation-delay:40ms}@keyframes gate-blink{0%,90%,to{transform:scaleY(1)}94%{transform:scaleY(.08)}}.gate-pupil{animation:7s ease-in-out infinite gate-look}@keyframes gate-look{0%,to{transform:translate(0)}30%{transform:translate(-3px)}65%{transform:translate(3px)}}.gate-eyes{filter:drop-shadow(0 0 6px #ffaa3cbf)}.gate-eye--far{opacity:.7}.gate-eye--2{animation-duration:6.1s;animation-delay:-2.3s}.gate-eye--3{animation-duration:4.7s;animation-delay:-.9s}.gate-eye--4{animation-duration:7.3s;animation-delay:-4.1s}.gate-deep{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite gate-pulse}.gate-wisp{transform-origin:50%;animation:4.2s ease-in-out infinite gate-bob}.gate-wisp--2{animation-duration:5s;animation-delay:-1.4s}.gate-wisp--3{animation-duration:3.7s;animation-delay:-2.2s}.gate-wisp--4{animation-duration:4.8s;animation-delay:-.6s}@keyframes gate-bob{0%,to{transform:translate(0,0)rotate(-4deg)}50%{transform:translate(3px,-11px)rotate(5deg)}}.gate-wisps--far{opacity:.9}.gate__reel{--row:calc(var(--u) * 46);width:44%;height:29.4%;position:absolute;top:53.2%;left:28%}.gate__frame{border-radius:calc(var(--u) * 16);border:calc(var(--u) * 4) solid var(--gold);box-shadow:inset 0 0 calc(var(--u) * 16) #000000bf, 0 0 calc(var(--u) * 22) #ff7a2e47, 0 calc(var(--u) * 5) 0 #2a1206;background:linear-gradient(#0c0808 0%,#1f1414 50%,#0c0808 100%);position:absolute;inset:0}.gate__view{border-radius:calc(var(--u) * 11);position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000 31% 69%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 31% 69%,#0000 100%)}.gate__strip{height:calc(var(--row) * 44);will-change:transform;position:absolute;top:0;left:0;right:0;transform:translateY(2.2727%)}.gate__row,.gate__single{height:var(--row);line-height:var(--row);text-align:center;white-space:nowrap;font-size:calc(var(--u) * 37);letter-spacing:.04em;color:var(--cream);text-shadow:0 calc(var(--u) * 2.5) 0 #3a1206;font-weight:900}.gate.is-fast .gate__row{color:var(--cream);text-shadow:0 calc(var(--u) * -13) 0 #f6ede24d, 0 calc(var(--u) * 13) 0 #f6ede24d, 0 calc(var(--u) * 2.5) 0 #3a1206}.gate__single{height:auto;line-height:1;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.gate__single.is-in{animation:.35s ease-out both gate-calm-in}@keyframes gate-calm-in{0%{opacity:0}to{opacity:1}}.gate__lens{left:calc(var(--u) * 7);right:calc(var(--u) * 7);height:var(--row);pointer-events:none;background:linear-gradient(90deg,#0000,#ff8a3d1f,#0000);border-top:2px solid #d9a44173;border-bottom:2px solid #d9a44173;position:absolute;top:50%;transform:translateY(-50%)}.gate__ptr{border-top:calc(var(--u) * 10) solid transparent;border-bottom:calc(var(--u) * 10) solid transparent;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.gate__ptr--l{left:calc(var(--u) * -17);border-left:calc(var(--u) * 13) solid var(--gold);filter:drop-shadow(0 2px #050306)}.gate__ptr--r{right:calc(var(--u) * -17);border-right:calc(var(--u) * 13) solid var(--gold);filter:drop-shadow(0 2px #050306)}.gate.is-settled:not(.is-reduced) .gate__frame{animation:.45s ease-out gate-settle}@keyframes gate-settle{0%{box-shadow:inset 0 0 calc(var(--u) * 16) #000000a6, 0 0 calc(var(--u) * 46) #ff8a3dd9, 0 calc(var(--u) * 5) 0 #2a1206}}.gate__stamp{width:calc(var(--u) * 296);height:calc(var(--u) * 178);margin:calc(var(--u) * -89) 0 0 calc(var(--u) * -148);align-content:center;justify-items:center;gap:calc(var(--u) * 2);opacity:0;pointer-events:none;display:grid;position:absolute;top:68%;left:50%;transform:rotate(-6deg)}.gate.is-stamping .gate__stamp{animation:.56s both gate-stamp}@keyframes gate-stamp{0%{opacity:0;transform:translateY(calc(var(--u) * -22)) scale(2.1) rotate(-16deg);animation-timing-function:cubic-bezier(.55,0,.9,.55)}38%{opacity:1;animation-timing-function:ease-out;transform:translateY(0)scale(.88)rotate(-6deg)}56%{opacity:1;animation-timing-function:ease-in-out;transform:scale(1.07)rotate(-6deg)}76%{opacity:1;animation-timing-function:ease-in-out;transform:scale(.985)rotate(-6deg)}to{opacity:1;transform:scale(1)rotate(-6deg)}}.gate.is-reduced.is-stamping .gate__stamp{animation:.3s ease-out both gate-stamp-calm}@keyframes gate-stamp-calm{0%{opacity:0;transform:rotate(-6deg)}to{opacity:1;transform:rotate(-6deg)}}.gate__plate{border-radius:calc(var(--u) * 38);background:var(--red);filter:url(#gate-ink) drop-shadow(0 calc(var(--u) * 8) 0 #6b0f26);position:absolute;inset:0}.gate__plate:after{content:"";inset:calc(var(--u) * 9);border-radius:calc(var(--u) * 30);border:calc(var(--u) * 3.5) solid #fff4e8e0;position:absolute}.gate__lead,.gate__name,.gate__tail{color:var(--cream);white-space:nowrap;text-shadow:0 calc(var(--u) * 2) 0 #6b0f26cc;margin:0;font-weight:900;line-height:1;position:relative}.gate__lead{font-size:calc(var(--u) * 25);letter-spacing:.08em}.gate__name{font-size:calc(var(--u) * 62);letter-spacing:.02em}.gate__tail{font-size:calc(var(--u) * 25);letter-spacing:.08em}.gate__burst{pointer-events:none;width:0;height:0;position:absolute;top:68%;left:50%}.gate__burst i{left:calc(var(--u) * -4);top:calc(var(--u) * -14);width:calc(var(--u) * 8);height:calc(var(--u) * 28);border-radius:calc(var(--u) * 5);background:var(--gold);opacity:0;position:absolute}.gate.is-impact:not(.is-reduced) .gate__burst i{animation:.5s ease-out both gate-burst}@keyframes gate-burst{0%{opacity:1;transform:rotate(var(--a)) translateY(calc(var(--u) * -96)) scaleY(.4)}to{opacity:0;transform:rotate(var(--a)) translateY(calc(var(--u) * -168)) scaleY(1.1)}}.gate__flash{opacity:0;pointer-events:none;background:radial-gradient(circle,#ffaa5acc,#ff8c3c00 68%);border-radius:45%;position:absolute;inset:40% 20% 6%}.gate.is-impact:not(.is-reduced) .gate__flash{animation:.4s ease-out gate-flash}@keyframes gate-flash{0%{opacity:1;transform:scale(.7)}to{opacity:0;transform:scale(1.3)}}.gate.is-impact:not(.is-reduced) .gate__world{animation:.32s linear gate-shake}@keyframes gate-shake{0%{transform:translate(0,0)}14%{transform:translate(3px,4px)}30%{transform:translate(-3px,-2px)}46%{transform:translate(2px,2px)}62%{transform:translate(-2px,-1px)}80%{transform:translate(1px,1px)}to{transform:translate(0,0)}}.gate.is-impact:not(.is-reduced) .gate-eye{animation:.7s ease-in-out both gate-squint}@keyframes gate-squint{0%,to{transform:scaleY(1)}18%,70%{transform:scaleY(.12)}}.gate.is-reduced .gate__star,.gate.is-reduced .gate__ember,.gate.is-reduced .gate-lantern,.gate.is-reduced .gate-plaque,.gate.is-reduced .gate-glow,.gate.is-reduced .gate-eye,.gate.is-reduced .gate-pupil,.gate.is-reduced .gate-wisp,.gate.is-reduced .gate-deep,.gate.is-reduced .gate__hint,.gate.is-reduced .gate__tap:after{animation:none}.gate.is-reduced .gate__ember{display:none}.gate.is-dropping{pointer-events:none;animation:.9s linear both gate-leave}@keyframes gate-leave{0%,40%{opacity:1}to{opacity:0}}.gate.is-dropping:not(.is-reduced) .gate__world{animation:.8s both gate-fall}@keyframes gate-fall{0%{animation-timing-function:ease-out;transform:translate(0,0)scale(1)rotate(0)}16%{animation-timing-function:cubic-bezier(.6,0,.9,.5);transform:translateY(-1.5%)scale(1.03)rotate(0)}to{transform:translateY(62vh)scale(.42)rotate(6deg)}}.gate.is-reduced.is-dropping{animation:.35s ease-out both gate-leave-calm}.gate.is-reduced.is-dropping .gate__world{animation:none}@keyframes gate-leave-calm{0%{opacity:1}to{opacity:0}}body.qs-arriving #stage{animation:.9s cubic-bezier(.2,.7,.2,1) both qs-arrive}@keyframes qs-arrive{0%{filter:brightness(0);transform:translateY(-4%)scale(1.16)}35%{filter:brightness(.12)}to{filter:brightness();transform:none}}
