*{box-sizing:border-box}:root{font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Noto Sans CJK JP,system-ui,sans-serif;color:#123d4c;background:#0c4354;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}body{display:grid;place-items:center;background:radial-gradient(ellipse at 50% 20%,#286b77,#0b3544 75%)}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #fff7b6;outline-offset:4px}[hidden]{display:none!important}#game{position:relative;width:min(100vw,53dvh);height:100dvh;max-height:1100px;isolation:isolate;overflow:hidden;background:#bde9ed;box-shadow:0 0 90px #001f2e66;user-select:none;-webkit-user-select:none}#world{display:block;width:100%;height:100%;touch-action:none}#interface{position:absolute;inset:0;pointer-events:none}.topbar{position:absolute;z-index:4;inset:max(20px,env(safe-area-inset-top)) 20px auto;display:flex;align-items:center;justify-content:space-between;gap:10px}.wordmark{font-size:21px;font-weight:950;letter-spacing:-1.2px}.wordmark span{display:inline-block;margin-left:5px;padding:2px 5px;font-size:12px;color:#fff;background:#123d4c;border-radius:4px;letter-spacing:0;vertical-align:middle}.stage-label{margin-left:auto;font-size:9px;font-weight:800;letter-spacing:1px}.stage-label b{margin-left:5px;font-size:14px}.sound-toggle{width:44px;height:44px;border:1px solid #123d4c2b;border-radius:50%;background:#ffffff75;color:#123d4c;font-size:22px;pointer-events:auto}.route{position:absolute;top:max(78px,calc(env(safe-area-inset-top) + 58px));left:22px;right:22px;display:flex;align-items:center;gap:9px}.route>span{font-size:8px;font-weight:900;letter-spacing:1px}.route-track{flex:1;height:5px;border-radius:8px;background:#123d4c26;overflow:hidden}.route-track i{display:block;height:100%;background:#1b9b85;transform-origin:left;transform:scaleX(0)}.stats{position:absolute;top:max(106px,calc(env(safe-area-inset-top) + 86px));left:22px;right:22px;display:flex;align-items:flex-start;justify-content:space-between}.squad-stat{display:flex;align-items:baseline;gap:5px;padding:5px 13px 7px;border-radius:12px;background:#fffdf0e8;box-shadow:0 4px #123d4c12}.stat-name{font-size:10px;font-weight:800}.squad-stat strong{font-size:34px;line-height:1;letter-spacing:-2px;font-weight:950;font-variant-numeric:tabular-nums}.unit{font-size:10px;font-weight:800}.weapon-stat{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:7px;padding-top:3px}.weapon-stat strong{font-size:21px;font-weight:900}#weapon-stars{grid-column:2;font-size:12px;letter-spacing:3px;color:#c88117}.boss-bar{position:absolute;top:180px;left:22px;right:22px;text-align:center}.boss-bar>span{font-size:11px;letter-spacing:3px;font-weight:900;color:#b63242}.boss-bar>div{height:9px;margin-top:6px;border-radius:10px;background:#6e39444d;overflow:hidden}.boss-bar i{display:block;height:100%;background:#e94b60;transform-origin:left}#notice{position:absolute;top:32%;left:10%;width:80%;text-align:center;font-weight:950;font-size:clamp(19px,5vw,30px);text-shadow:0 2px 0 #ffffff,2px 0 0 #ffffff,-2px 0 0 #ffffff,0 -2px 0 #ffffff}.notice-good{color:#087854}.notice-bad{color:#b82c42}.notice-upgrade{color:#ac6711}.steer-hint{position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:15%;width:70%;text-align:center;color:#123d4c;font-size:12px;font-weight:800;padding:12px 0;border-radius:25px;background:#ffffffe0;box-shadow:0 4px 12px #123d4c12}.steer-hint span{display:inline-block;margin:0 9px;color:#1a8c83}.vignette{position:absolute;inset:0;box-shadow:inset 0 0 65px 12px #f44355;opacity:0}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:28px 28px max(28px,env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent 12%,#0c435400 23%,#0b3a4a99 48%,#0b3a4a 78%);pointer-events:auto}.intro-number{position:absolute;right:15px;bottom:36%;font-size:clamp(140px,45vw,230px);line-height:1;font-weight:950;letter-spacing:-20px;color:#ffffff0a}.menu-copy{position:relative}.eyebrow{margin:0 0 18px;font-size:10px;letter-spacing:2.4px;font-weight:800;color:#7ee6d1}h1{margin:0;font-size:clamp(40px,10.3vw,62px);font-weight:950;letter-spacing:-2px;line-height:1.17;color:#fff9e9}.screen-detail{margin:18px 0 25px;font-size:13px;font-weight:600;line-height:1.9;color:#d4e8e6}.play-button{width:100%;min-height:62px;padding:16px 21px;display:flex;justify-content:space-between;align-items:center;border:0;border-radius:13px;background:#ffd36d;color:#173e48;font-size:18px;font-weight:900;box-shadow:0 5px #c18b32;transition:transform .1s,box-shadow .1s}.play-button span{font-size:27px;line-height:1}.play-button:active{transform:translateY(4px);box-shadow:0 1px #c18b32}.stage-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 18px}.stage-choice{min-height:52px;display:grid;gap:3px;padding:8px 4px;border:1px solid #ffffff40;border-radius:9px;color:#cde3e2;background:#ffffff0a;font-size:10px;font-weight:800}.stage-choice b{font-size:13px;letter-spacing:1px}.stage-choice[aria-pressed=true]{border-color:#7ee6d1;color:#fff;background:#2a827c70}#next{margin-bottom:14px}.play-button.replay-button{min-height:42px;padding:10px 16px;border:1px solid #ffffff40;background:transparent;color:#cde3e2;font-size:12px;box-shadow:none}.control-note{margin:16px 0 0;text-align:center;font-size:10px;letter-spacing:.5px;font-weight:700;color:#9fc4c5}@media (max-height: 680px){.topbar{top:10px}.route{top:62px}.stats{top:82px}.eyebrow{margin-bottom:10px}.screen-detail{margin:12px 0 18px}h1{font-size:38px}.play-button{min-height:54px}}@media (prefers-reduced-motion: reduce){.play-button{transition:none}}.okani-home{position:fixed;z-index:2147483000;top:calc(10px + env(safe-area-inset-top,0px));left:calc(10px + env(safe-area-inset-left,0px));display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;height:32px;padding:0 12px 0 9px;border:1px solid rgba(37,39,33,.18);border-radius:999px;background:#f4f1e8f0;color:#252721;font:700 12px/1 Noto Sans CJK JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;letter-spacing:.06em;text-decoration:none;box-shadow:0 2px 8px #0000002e;-webkit-tap-highlight-color:transparent}.okani-home:hover{background:#fff;color:#252721}.okani-home:focus-visible{outline:3px solid #c93824;outline-offset:3px}.okani-home__mark{display:block;flex:none;width:18px;height:18px}body:has(#overlay[hidden]) .okani-home{display:none}@media (max-aspect-ratio: 4 / 5){.okani-home{top:max(176px,calc(env(safe-area-inset-top,0px) + 156px))}}@media print{.okani-home{display:none}}.weapon-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.weapon-choice{display:grid;gap:5px;min-height:58px;padding:9px 2px;border:1px solid #ffffff40;border-radius:9px;color:#d4e8e6;background:#ffffff08}.weapon-choice span{font-size:10px;color:#80cbbf}.weapon-choice b{font-size:10px;white-space:nowrap}.weapon-choice[aria-pressed=true]{border-color:#ffd36d;color:#fff9e9;background:#b78a2940}.weapon-choice[aria-pressed=true] span{color:#ffd36d}#weapon-detail{color:#afcece;font-size:10px;line-height:1.6;margin:10px 0 18px;min-height:16px}.xp-track{position:absolute;top:max(167px,calc(env(safe-area-inset-top) + 147px));left:24px;right:24px;height:4px;overflow:hidden;border-radius:4px;background:#123d4c20}.xp-track i{display:block;height:100%;background:#d58c17;transform-origin:left}.boss-bar{top:max(188px,calc(env(safe-area-inset-top) + 168px))}.boss-bar small{display:block;margin-top:8px;min-height:14px;color:#a92742;font-size:10px;font-weight:900;text-shadow:0 1px 2px #fff}#cutin{position:absolute;z-index:3;top:auto;bottom:max(108px,calc(env(safe-area-inset-bottom) + 84px));left:22px;right:22px;width:auto;padding:7px 12px;display:grid;gap:2px;text-align:center;pointer-events:none;color:#fff9e9;background:#073f4a80;border-radius:8px;text-shadow:0 1px 2px #073f4a}#cutin-title{font-size:20px;font-weight:950;letter-spacing:.5px;line-height:1.1}#cutin-detail{font-size:11px;font-weight:800;line-height:1.4}#cutin.cutin-boss,#cutin.cutin-rage{background:#6b163180}#notice{top:auto;bottom:max(108px,calc(env(safe-area-inset-bottom) + 84px));left:22px;right:22px;width:auto;padding:8px 10px;font-size:17px;line-height:1.4;background:#ffffff80;border-radius:8px}.overlay{overflow-y:auto}.screen-detail{margin-bottom:16px}@media (max-height: 740px){.overlay{padding:20px 22px}h1{font-size:36px}.eyebrow{margin-bottom:8px}.screen-detail{margin:10px 0 12px;font-size:11px;line-height:1.6}.stage-choices{margin-bottom:10px}.stage-choice{min-height:44px;padding:5px}.weapon-choice{min-height:48px;padding:7px 1px}#weapon-detail{margin:7px 0 12px}.control-note{margin-top:12px}}@media (max-height: 680px){.topbar{top:max(10px,env(safe-area-inset-top));left:16px;right:16px;gap:6px}.wordmark{flex-shrink:0;white-space:nowrap;font-size:19px}.stage-label{white-space:nowrap;font-size:8px;letter-spacing:.3px}.stage-label b{font-size:12px}.xp-track{top:max(141px,calc(env(safe-area-inset-top) + 131px))}.boss-bar{top:max(156px,calc(env(safe-area-inset-top) + 146px))}.route{top:max(62px,calc(env(safe-area-inset-top) + 52px))}.stats{top:max(82px,calc(env(safe-area-inset-top) + 72px))}}#class-detail{margin:10px 0 6px;color:#b6d6d3;font-size:11px;line-height:1.6}.best-note{margin:0 0 18px;color:#7ee6d1;font-size:9px;font-weight:800;letter-spacing:1.4px}#weapon{max-width:86px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#weapon-stars{letter-spacing:1px}.lives{position:absolute;top:max(56px,calc(env(safe-area-inset-top) + 36px));left:24px;color:#d74c62;font-size:17px;line-height:1;letter-spacing:3px}#combo{position:absolute;top:max(59px,calc(env(safe-area-inset-top) + 39px));right:82px;color:#9c6c16;font-size:10px;font-weight:950;letter-spacing:1px}.boss-bar{top:max(210px,calc(env(safe-area-inset-top) + 190px))}.boss-bar>span{font-size:10px;letter-spacing:1px}.battle-controls{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:22px;right:22px;display:flex;align-items:flex-end;justify-content:space-between}.battle-controls button{pointer-events:auto;border:1px solid #ffffffbb;color:#164853;font-weight:900}#speed{min-width:91px;min-height:48px;padding:8px 12px;border-radius:16px;background:#f4fffae8;box-shadow:0 4px #2b888b38}#speed span,#speed small{display:inline-block;font-size:9px}#speed strong{margin:0 7px;font-size:16px}#speed[data-tier="3"]{background:#ffd36d}#pulse{position:relative;overflow:hidden;width:82px;min-height:76px;display:grid;align-content:center;gap:5px;padding:12px 7px;border-radius:24px;background:#ffd36d;box-shadow:0 5px #c18b3260}#pulse span{font-size:14px;letter-spacing:.5px}#pulse strong{font-size:10px;letter-spacing:1px}#pulse:disabled{color:#42717a;background:#effaf6dd;box-shadow:0 5px #42717a30}#pulse-progress{position:absolute;bottom:0;left:0;height:4px;width:100%;background:#16a58e;transform-origin:left}#pulse-flash{position:absolute;inset:0;pointer-events:none;opacity:0;box-shadow:inset 0 0 120px 30px #8aeaff}.steer-hint{bottom:max(120px,calc(env(safe-area-inset-bottom) + 96px));padding:9px 0;font-size:10px}@media (max-height: 680px){.lives{top:max(44px,calc(env(safe-area-inset-top) + 34px));font-size:14px}#combo{top:max(46px,calc(env(safe-area-inset-top) + 36px))}.boss-bar{top:max(184px,calc(env(safe-area-inset-top) + 174px))}#cutin,#notice{padding:2px 10px}#cutin-detail{display:none}#notice{font-size:16px;line-height:1.3}#weapon{max-width:72px}}
