@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap";:root{font-family:Noto Sans JP,system-ui,sans-serif;background:#07121b;color:#f4f1e7;font-synthesis:none;-webkit-tap-highlight-color:transparent;touch-action:pan-y}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;width:100%}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}.layout{min-height:100dvh;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:12px;background:radial-gradient(ellipse at 50% 20%,#1b3843,#0b1922 45%,#050c12);padding:6px 12px}.game{position:relative;overflow:hidden;width:min(540px,calc((100dvh - 42px)*.6),100%);aspect-ratio:3/5;border:1px solid #527278;border-radius:13px;background:#0b1b21;box-shadow:0 12px 60px #020a10,0 0 0 5px #06141b}#scene{display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.hud{position:absolute;top:0;left:0;right:0;min-height:109px;padding:15px 21px 13px;background:linear-gradient(180deg,rgba(5,19,26,.96),rgba(9,25,32,.92) 65%,transparent);pointer-events:none}.brandline{display:flex;align-items:center;gap:8px;min-height:23px;color:#a9c5c0;font:700 16px Barlow Condensed,sans-serif;letter-spacing:2.7px}.status-dot{width:7px;height:7px;background:#eaba66;border-radius:50%;box-shadow:0 0 10px #d9a84e}.stages-btn{pointer-events:auto;margin-left:auto;padding:4px 10px;border:1px solid #4d6c71;border-radius:5px;background:#182e36;color:#d4ece9;font:600 12px Noto Sans JP,sans-serif;letter-spacing:0}.stages-btn:active{background:#35535a}.hud-main{display:flex;align-items:flex-start;justify-content:space-between;margin-top:8px;gap:10px}.hud-main>div{display:flex;flex-direction:column;gap:1px}.small-label{font:600 11px Barlow Condensed,Noto Sans JP,sans-serif;color:#93b4b3;letter-spacing:1.4px;margin:0}.stage-name{font-size:21px;font-weight:800;letter-spacing:-.6px;color:#fff1ce;white-space:nowrap}.people-hud{text-align:right;align-items:flex-end}.people-hud strong{font:700 30px Barlow Condensed,sans-serif;color:#ffd274}.message{position:absolute;top:16.5%;left:50%;transform:translate(-50%,-5px);border:1px solid #b5a06a;border-radius:6px;padding:9px 16px;background:#15282bf0;box-shadow:0 4px 25px #06151b;color:#f6e4b0;font-size:13px;font-weight:700;white-space:nowrap;max-width:91%;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .15s,transform .15s;pointer-events:none;text-align:center}.message.show{opacity:1;transform:translate(-50%)}.controls{position:absolute;bottom:15px;left:15px;right:15px;display:flex;justify-content:space-between;align-items:end;gap:16px}.surface-btn{border:2px solid #acd5d0;background:linear-gradient(180deg,#294f54,#1a343d);color:#f4fff5;border-radius:10px;box-shadow:0 5px #0c242b,0 9px 20px #0006;padding:11px 22px;font-size:19px;font-weight:800;min-height:62px}.surface-btn span{font-size:24px;vertical-align:-1px;color:#8ff1d3}.surface-btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px #0c242b}.boost-btn{border:2px solid #f1bf63;background:linear-gradient(180deg,#91662b,#6b461d);border-radius:12px;color:#fff1c8;box-shadow:0 5px #392718,0 10px 25px #0006;display:flex;flex-direction:column;justify-content:center;align-items:center;width:108px;min-height:75px;padding:4px 8px 9px;font-size:19px;font-weight:800;gap:0;touch-action:none;-webkit-user-select:none;user-select:none}.boost-btn .boost-icon{font-size:22px;line-height:21px}.boost-btn:active,.boost-btn.pressed{transform:translateY(3px);box-shadow:0 2px #392718,0 5px 18px #0009;filter:brightness(1.16)}.boost-btn.hot{border-color:#ff6a59;background:linear-gradient(180deg,#a94836,#542a28)}.boost-meter{width:73px;height:5px;border-radius:3px;background:#261c16;overflow:hidden;margin-top:3px}#boost-fill{display:block;width:0;height:100%;background:#f9d078;transition:width .1s linear}.end-run{position:absolute;bottom:102px;left:15px;border:1px solid #466571;background:#183038ee;border-radius:8px;padding:7px 10px;color:#cee4e1;font-size:11px;font-weight:700}.end-run[hidden]{display:none}.outside-caption{font-size:12px;font-weight:500;letter-spacing:.1px;color:#91aaa9;text-align:center;max-width:540px}.overlay{position:absolute;inset:0;background:#020a0fc9;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:pan-y}.overlay.hidden{display:none}.result,.select-panel{width:100%;max-width:430px;background:linear-gradient(155deg,#253a40,#14242d);border:1px solid #668581;border-radius:12px;box-shadow:0 20px 55px #020c11;padding:28px 24px;text-align:center}.result.perfect{border-color:#eac16d;box-shadow:0 0 60px #c8a74a36,0 20px 50px #000}.result-eyebrow,.select-head{font:700 15px Barlow Condensed,sans-serif;letter-spacing:2.6px;color:#b4cfca}.result.perfect .result-eyebrow{color:#f2ca6e}.result h2,.select-panel h2{font-size:36px;letter-spacing:-1.2px;margin:12px 0 11px;color:#fff0c1}.result-text{font-size:14px;line-height:1.7;color:#cadcd7;margin:0}.result-counter{margin:15px 0 0}.result-counter strong{font:800 96px Barlow Condensed,sans-serif;color:#ffd17b;line-height:1}.result-counter span{font-size:18px;font-weight:700;color:#d7e7e1}.result-time{font-size:13px;color:#b1c5c3;margin:0 0 24px}.result-actions{display:flex;flex-direction:column;gap:9px}.result-actions button{min-height:48px;border-radius:7px;font-size:15px;font-weight:800}.primary{border:1px solid #f5dba6;background:#f1bc67;color:#162e30}.secondary{border:1px solid #82aca7;background:#31535a;color:#f4fff9}.tertiary{border:1px solid #4b6b74;background:#152d36;color:#cededc}.select-panel{text-align:left;padding:22px}.select-head{display:flex;justify-content:space-between;align-items:center}.select-head button{width:37px;height:37px;border-radius:5px;background:#19323a;border:1px solid #6b8b86;font-size:23px}.select-panel h2{font-size:26px;margin:6px 0 12px}.stage-list{display:flex;flex-direction:column;gap:6px}.stage-choice{display:flex;align-items:center;gap:12px;width:100%;padding:11px;border:1px solid #597b78;border-radius:7px;background:#183139;text-align:left;color:#f0f5eb}.stage-choice:not(:disabled):active{background:#355963}.stage-choice:disabled{opacity:.38}.stage-number{font:700 30px Barlow Condensed,sans-serif;color:#f2d08d}.stage-choice-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.stage-choice-text strong{font-size:15px}.stage-choice-text small{font-size:10px;color:#afc8c4;line-height:1.4}@media(max-height:740px){.layout{padding:0}.game{width:min(100vw,60dvh,540px);border-radius:0;border:0}.outside-caption{display:none}.hud{padding-top:12px}.controls{bottom:12px}.result{padding:19px}.result-counter strong{font-size:76px}.stage-choice{padding:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
