*,:before,:after{box-sizing:border-box}html,body{overscroll-behavior:none;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#000;height:100%;margin:0;overflow:hidden}#app{position:fixed;inset:0}.calc{--gap:min(3.4vw, 16px);--key:calc((min(100vw, 420px) - var(--pad) * 2 - var(--gap) * 3) / 4);--pad:max(16px, env(safe-area-inset-left));--display-size:min(22vw, 96px);max-width:420px;padding:0 var(--pad) max(28px, calc(env(safe-area-inset-bottom) + 12px));color:#fff;background:#000;flex-direction:column;justify-content:flex-end;margin:0 auto;font-family:-apple-system,SF Pro Display,Helvetica Neue,Apple SD Gothic Neo,Roboto,sans-serif;display:flex;position:absolute;inset:0}.calc__display{padding:0 calc(var(--gap) * .6) calc(var(--gap) * .6);touch-action:none;flex:1;justify-content:flex-end;align-items:flex-end;display:flex;overflow:hidden}.calc__value{font-size:var(--display-size);letter-spacing:-.02em;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:300;line-height:1}.calc__keys{grid-template-columns:repeat(4, var(--key));grid-auto-rows:var(--key);gap:var(--gap);display:grid}.calc__key{appearance:none;font:inherit;font-size:calc(var(--key) * .42);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:0;font-weight:400;transition:filter .35s,background-color .25s,color .25s}.calc__key--num{background:#333}.calc__key--fn{color:#000;font-size:calc(var(--key) * .36);background:#a5a5a5;font-weight:500}.calc__key--op{font-size:calc(var(--key) * .48);background:#ff9f0a}.calc__key--wide{text-align:left;padding-left:calc(var(--key) * .38);grid-column:span 2}.calc__key.is-flash{filter:brightness(1.55);transition:none}.calc__key--op.is-active{color:#ff9f0a;background:#fff}@media (width>=600px) and (height>=600px){.calc{--key:80px;--gap:14px;--display-size:80px;border-radius:40px;max-width:426px;height:min(720px,100vh);padding:32px;top:50%;bottom:auto;transform:translateY(-50%);box-shadow:0 0 0 1px #222}}@media (orientation:landscape) and (height<=500px){.calc{--key:calc((100vh - 120px) / 5);max-width:none;width:min(100vw, calc(var(--key) * 7 + 80px))}.calc__keys{grid-template-columns:repeat(4, calc(var(--key) * 1.6))}.calc__key{font-size:calc(var(--key) * .5)}}.dissolve{z-index:10;width:100%;height:100%;image-rendering:pixelated;transition:opacity .5s;position:absolute;inset:0}.dissolve.is-leaving{opacity:0}.game-host{background:#1a1230;position:absolute;inset:0}.game-host canvas{image-rendering:pixelated}.rotate-hint{display:none}@media (orientation:portrait) and (width<=600px){.rotate-hint{z-index:5;color:#e8dcff;background:#1a1230;flex-direction:column;justify-content:center;align-items:center;gap:20px;font:600 16px/1.4 -apple-system,Apple SD Gothic Neo,sans-serif;display:flex;position:absolute;inset:0}.rotate-hint__phone{border:4px solid #e8dcff;border-radius:6px;width:36px;height:60px;animation:1.8s ease-in-out infinite rotate-phone}}@keyframes rotate-phone{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}.fs-btn{z-index:4;appearance:none;color:#e8dcff;cursor:pointer;background:#120c24e6;border:0;border-radius:0;margin:0;line-height:0;position:absolute}.fs-btn svg{fill:currentColor;width:100%;height:100%}.fs-btn:active{background:#3a2d63}.login{z-index:6;background:#0c08188c;padding:12px 16px;font-family:Galmuri11,Apple SD Gothic Neo,sans-serif;transition:opacity .3s;display:flex;position:absolute;inset:0;overflow-y:auto}.login.is-leaving{opacity:0}.login__card{color:#e8dcff;background:#241a40;flex-direction:column;gap:10px;width:min(300px,100%);margin:auto;padding:18px 18px 16px;display:flex;box-shadow:0 0 0 3px #0c0818,inset 0 0 0 3px #4a3b78,6px 6px 0 3px #0c0818}.login__title{font:inherit;color:#ffd27a;text-align:center;text-shadow:0 2px #0c0818;margin:0 0 2px;font-size:24px}.login__field{color:#b9a6ff;flex-direction:column;gap:4px;font-size:12px;display:flex}.login__field input{appearance:none;font:inherit;color:#fff;-webkit-user-select:text;user-select:text;background:#120c24;border:0;border-radius:0;outline:none;padding:8px 10px;font-size:16px;box-shadow:inset 0 0 0 2px #4a3b78}.login__field input:focus{box-shadow:inset 0 0 0 2px #ffd27a}.login__error{color:#ff7a8a;text-align:center;min-height:14px;margin:0;font-size:12px}.login__button{appearance:none;font:inherit;color:#1a1230;cursor:pointer;background:#ffd27a;border:0;border-radius:0;padding:10px;font-size:16px;box-shadow:inset 0 -4px #c99a3a}.login__button:active:not(:disabled){box-shadow:inset 0 4px #c99a3a}.login__button:disabled{opacity:.6;cursor:default}.is-shake{animation:.3s steps(6,end) login-shake}@keyframes login-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@media (height<=420px){.login__card{gap:6px;padding:12px 16px}.login__title{font-size:18px}.login__field input{padding:6px 10px}.login__button{padding:8px}}.login__note{color:#e8dcff;text-align:center;margin:-4px 0 2px;font-size:12px;line-height:1.5}.login__field input:read-only{color:#b9a6ff;box-shadow:inset 0 0 0 2px #2a2050}.login__back{appearance:none;font:inherit;color:#b9a6ff;cursor:pointer;background:0 0;border:0;padding:2px;font-size:12px;text-decoration:underline}.login [hidden]{display:none!important}
