:root{color-scheme:light;font-family:'Noto Sans JP',sans-serif;color:#fff4e8;background:#956c82}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;touch-action:none}button,input,a{-webkit-tap-highlight-color:transparent}button,.button{font:inherit;font-size:13px;font-weight:600;letter-spacing:.04em;color:inherit;border:1px solid #fff6e84d;background:#60435470;border-radius:15px;padding:15px 24px;cursor:pointer;text-decoration:none;text-align:center;transition:background .15s,transform .15s;touch-action:manipulation}button:hover,.button:hover{background:#9c6b80b0}button:active,.button:active{transform:scale(.97)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ffe5a7;outline-offset:4px}.primary{background:#fff2d8;color:#654755;border-color:#fff5df;box-shadow:0 7px 30px #47233926}.primary:hover{background:#fff9eb}.glass{background:#4b304255;border:1px solid #fff6e82e;box-shadow:0 6px 30px #422d3924;backdrop-filter:blur(16px)}.hidden{display:none!important}#world,#vignette,#flash{position:fixed;inset:0;width:100%;height:100%}#world{display:block}#vignette{pointer-events:none;background:radial-gradient(ellipse at 50% 44%,transparent 45%,#3e223224 100%)}#flash{pointer-events:none;background:#fff6d7;opacity:0;transition:opacity .3s}#loading,#error{position:fixed;inset:0;display:grid;place-content:center;gap:26px;justify-items:center;background:#a67c90}.spinner{width:24px;height:24px;border:2px solid #ffecd944;border-top-color:#ffecd9;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}progress{width:140px;height:3px;border:0;border-radius:3px;overflow:hidden;accent-color:#fff0d7}progress::-webkit-progress-bar{background:#fff3}progress::-webkit-progress-value{background:#fff0d7}#intro{position:fixed;bottom:13%;left:50%;transform:translateX(-50%);display:flex;gap:12px}#intro .primary{min-width:180px}#intro button{white-space:nowrap}.top-buttons{position:fixed;right:max(24px,env(safe-area-inset-right));top:max(23px,env(safe-area-inset-top));display:flex;gap:10px}.icon{width:46px;height:46px;padding:0;font-size:21px;border-radius:50%}#sound.muted{opacity:.5}#hud{pointer-events:none}.timing{position:fixed;top:max(24px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;border-radius:50px;padding:13px 23px;font-size:23px;font-variant-numeric:tabular-nums;letter-spacing:.06em}#online-indicator{font-size:9px;color:#eac5bc}#online-indicator.live{color:#b5ffdf;box-shadow:0 0 12px #9cffc8;border-radius:50%}.counts{position:fixed;left:25px;top:25px;border-radius:24px;padding:13px 21px;display:flex;gap:24px;font-size:18px}.counts b{font-size:15px;margin-left:5px;font-weight:500}#minimap{position:fixed;bottom:30px;right:26px;width:135px;height:135px;border-radius:50%;border:1px solid #fff6e856;box-shadow:0 10px 35px #43273a44;opacity:.85}#controls{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:21px;padding:10px 18px;border-radius:50px;font-size:11px;white-space:nowrap}kbd{font-family:inherit;font-size:10px;display:inline-block;border:1px solid #fff4d84a;border-radius:5px;padding:4px 6px;margin-right:5px;color:#ffedcf}#space-action{padding:0;border:0;background:none;font-size:11px}#space-action.active{color:#ffe2a3}#space-action.active kbd{background:#ffedcf;color:#6b4354}#countdown{position:fixed;inset:0;display:grid;place-items:center;font-size:110px;font-weight:200;text-shadow:0 10px 55px #48233b;pointer-events:none;font-variant-numeric:tabular-nums}dialog{width:min(390px,calc(100% - 38px));padding:42px 28px 28px;border:1px solid #fff0dd4d;border-radius:28px;background:#604153ed;color:#fff2df;backdrop-filter:blur(25px);box-shadow:0 30px 130px #32152888}dialog::backdrop{background:#42283a55;backdrop-filter:blur(7px)}.dialog-buttons{display:grid;gap:10px}.dialog-buttons>button,.dialog-buttons>.button{width:100%}.close{position:absolute;top:8px;right:10px;border:0;background:none;font-size:24px;padding:3px 10px}.slider{display:flex;align-items:center;gap:14px;padding:12px 15px;background:#4b2e412e;border-radius:14px}.slider input{width:100%;accent-color:#ffdeb3}#result-time{font-size:40px;font-weight:300;text-align:center;letter-spacing:.035em;font-variant-numeric:tabular-nums;margin:10px 0 22px}#result-rank{text-align:center;color:#ffe3a4;margin-bottom:14px;font-size:24px}#record-form{display:flex;gap:8px;margin-bottom:10px}#nickname{width:100%;min-width:0;border:1px solid #fff1dc44;border-radius:12px;background:#34223550;color:#fff4e4;padding:12px;font:inherit;font-size:13px}#nickname::placeholder{color:#e6cdc5a6}#register{padding:12px 15px;white-space:nowrap;font-size:12px}output{display:block;min-height:20px;font-size:11px;text-align:center;opacity:.8;margin:8px 0 16px}#rank-list{padding:0;margin:0 0 20px;max-height:53vh;overflow:auto;list-style:none;touch-action:pan-y}#rank-list li{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:14px 5px;border-bottom:1px solid #ffe4d21c;font-size:13px}#rank-list li:first-child{color:#ffe5a5}#rank-list time{font-size:13px;font-variant-numeric:tabular-nums}#rank-list .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#refresh-rank{width:100%}#rank-loading{margin:15px auto 25px}#joystick{position:fixed;bottom:max(36px,env(safe-area-inset-bottom));left:30px;width:114px;height:114px;border-radius:50%;border:1px solid #fff4d85c;background:#6e425c33;touch-action:none;backdrop-filter:blur(5px)}#stick{position:absolute;width:46px;height:46px;left:33px;top:33px;border-radius:50%;background:#fff0df91;border:1px solid #fff5e3a6;pointer-events:none}#touch-action{position:fixed;right:30px;bottom:max(50px,env(safe-area-inset-bottom));width:84px;height:84px;border-radius:50%;padding:8px;background:#fff0dcdf;color:#6a4254;font-size:30px;box-shadow:0 7px 26px #48263b33}#touch-action small{display:block;font-size:10px;margin-top:2px}#touch-action.active{background:#ffe1a1}body[data-phase=loading] .top-buttons{display:none}@media(pointer:coarse){#controls{bottom:14px;font-size:10px;gap:12px;padding:7px 13px}#controls>span{display:none}#controls kbd{display:none}#minimap{bottom:auto;top:93px;right:22px;width:92px;height:92px}}@media(max-width:650px){.top-buttons{right:15px;top:max(19px,env(safe-area-inset-top));gap:8px}.icon{width:38px;height:38px;font-size:18px}.counts{top:20px;left:14px;padding:10px 14px;gap:12px}.counts span{font-size:15px}.counts b{font-size:12px;margin-left:2px}.timing{top:75px;font-size:19px;padding:9px 18px}#intro{bottom:23%;flex-direction:column;gap:10px}#intro button{font-size:12px;padding:13px 23px}#controls{max-width:95%;gap:12px}#minimap{width:90px;height:90px;right:15px}#result-time{font-size:34px}dialog{padding:40px 22px 23px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001s!important;transition:none!important}}
