@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
:root{color-scheme:dark;--bg:#07101f;--panel:#102039;--line:#24364c;--white:#eaf5fc;--muted:#8094ac;--cyan:#64e3ff;--accent:#26bfe6;--red:#ff6d89;font-family:'Noto Sans KR',sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 65% 5%,#142b45 0,transparent 54%),var(--bg);color:var(--white);min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}button:disabled{opacity:.55;cursor:wait}button:active{transform:translateY(1px)}button{color:inherit}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.app{max-width:1392px;padding:0 40px;margin:auto}.topbar{height:102px;display:flex;align-items:center;gap:42px}.brand{display:flex;align-items:center;gap:11px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:29px;line-height:1;letter-spacing:1px}.brand-mark{color:var(--cyan);font:56px/1 sans-serif}.brand-light{font-weight:500;color:var(--cyan)}.brand small{display:block;color:#7793ad;font:9px/1.2 'Noto Sans KR',sans-serif;letter-spacing:3.2px;margin-top:7px}.chapter{display:flex;align-items:center;gap:13px;border-left:1px solid var(--line);padding-left:32px;font-size:13px;color:#c0d2e2}.chapter-index{font-family:'Barlow Condensed',sans-serif;color:#63d7f2;font-size:32px;font-weight:500}.chapter small{display:block;font:10px 'Barlow Condensed',sans-serif;letter-spacing:2px;margin-top:5px;color:#6d8aa3}.header-actions{margin-left:auto;display:flex;gap:9px}.icon-button{border:1px solid #2a3c54;background:#122138;width:38px;height:38px;display:grid;place-items:center;font-size:23px;position:relative;border-radius:4px;color:#a8bbcf}.icon-button:hover{background:#203a55;color:var(--cyan);border-color:#527d97}.sound-slash{position:absolute;top:8px;left:19px;width:1px;height:22px;background:#b5cbdf;transform:rotate(45deg);box-shadow:2px 0 #122138}.icon-button.on .sound-slash{display:none}.game-shell{position:relative;width:100%;aspect-ratio:16/9;border:1px solid #39566c;background:#344f65;overflow:hidden;isolation:isolate;box-shadow:0 24px 85px #0005;border-radius:5px 5px 0 0}.game-shell:fullscreen{width:100vw;height:100vh;border:0;border-radius:0;background:#07101f;display:flex;align-items:center;justify-content:center}.game-shell:fullscreen canvas{width:100%;height:100%;object-fit:contain}canvas{display:block;width:100%;height:100%;image-rendering:pixelated;outline:none;touch-action:none}.hud{position:absolute;inset:4% 3.3% auto;display:flex;justify-content:space-between;pointer-events:none;z-index:5}.player-hud{display:flex;gap:11px;align-items:center;filter:drop-shadow(0 2px 2px #10243b66)}.mini-portrait{width:56px;height:56px;overflow:hidden;background:#d0edfa;border:2px solid #e8faff;transform:skew(-5deg);position:relative}.mini-portrait img{position:absolute;width:240%;height:auto;left:-14%;top:-5%;filter:none}.health-block{min-width:168px}.health-label{font-size:15px;font-weight:800;color:#fff;text-shadow:0 1px 4px #031329}.health-label span{font:9px 'Barlow Condensed',sans-serif;letter-spacing:1px;display:inline-block;margin-left:8px;color:#e2f5ff}.health-track{display:flex;gap:3px;background:#15324cbe;padding:4px 5px;margin-top:4px;transform:skew(-8deg);border:1px solid #83bad288;width:211px;height:18px}.health-track i{background:#79edff;flex:1;box-shadow:0 0 7px #66dfff55}.health-track i.lost{background:#335371;box-shadow:none}.weapon-line{display:flex;align-items:center;gap:8px;margin-top:5px}.weapon-line>span{font:9px 'Barlow Condensed',sans-serif;letter-spacing:1px;color:#fff}.shot-track{height:4px;width:96px;background:#10304b8a}.shot-track i{display:block;height:100%;background:#fff38a;width:0;box-shadow:0 0 6px #fdff8f}.right-hud{display:flex;flex-direction:column;align-items:flex-end;text-shadow:0 1px 3px #143c5d}.stage-tag{background:#102c44dd;border:1px solid #81adc77a;font:12px 'Barlow Condensed',sans-serif;padding:3px 8px;letter-spacing:1.5px;transform:skew(-6deg)}.stage-tag b{font-size:17px;color:var(--cyan);margin-left:5px}.right-hud strong{font:29px 'Barlow Condensed',sans-serif;letter-spacing:2px;margin-top:4px;color:white}.score-label{font:9px 'Barlow Condensed',sans-serif;letter-spacing:3px;color:#d5f4ff}.start-screen{position:absolute;inset:0;z-index:8;background:linear-gradient(90deg,#081b30eb 0,#0b2940cc 34%,#154b6777 63%,#194b6700 100%)}.start-shade{position:absolute;inset:0;background:linear-gradient(0deg,#08192be8,transparent 25%,transparent 75%,#0b203f33);pointer-events:none}.start-copy{position:relative;z-index:3;margin:7% 0 0 7%;width:48%}.eyebrow{font:12px 'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:3px;color:#86deef;display:flex;align-items:center;gap:10px}.eyebrow i{display:inline-block;width:22px;height:2px;background:#69e2ff}h1{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:clamp(64px,8.3vw,120px);font-weight:800;line-height:.82;letter-spacing:-1px;margin:22px 0 20px;transform:skew(-6deg);color:#f3fcff;text-shadow:0 6px 28px #05172d55}h1 span{color:#6ee8ff}h1 em{font:700 clamp(14px,1.6vw,22px) 'Noto Sans KR',sans-serif;display:block;letter-spacing:3px;margin-top:21px;font-style:normal;color:#e8f5fc}.start-copy p{font-size:14px;line-height:1.8;color:#afc8dc;margin:0 0 24px}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#71e5fb;color:#102e47;border:1px solid #a7f2ff;box-shadow:0 4px 0 #226681;font-size:16px;font-weight:800;min-width:224px;padding:14px 20px;border-radius:2px}.primary-button:hover{background:#aff4ff;box-shadow:0 4px 0 #226681,0 0 30px #50d8ff3c}.primary-button>span{font-size:24px;font-weight:400;line-height:1}.primary-button small{font:11px 'Barlow Condensed',sans-serif;letter-spacing:1px;opacity:.55}.start-details{display:flex;gap:17px;margin-top:25px;font:11px 'Barlow Condensed',sans-serif;color:#6ed8f7;letter-spacing:1px}.start-details b{font:500 11px 'Noto Sans KR',sans-serif;color:#91aabd;margin-left:4px;letter-spacing:0}.hero-art{position:absolute;inset:0 0 0 39%;pointer-events:none}.portrait-crop{overflow:hidden;position:relative}.portrait-crop img{position:absolute;width:200%;max-width:none;height:200%;object-fit:fill;left:0;top:0}.hero-portrait{width:100%;height:100%;filter:drop-shadow(-16px 20px 0 #57dafa20);transform-origin:50% 100%}.hero-portrait img{object-fit:fill}.halo-orbit{position:absolute;width:65%;aspect-ratio:1;left:18%;top:16%;border:1px solid #88e4ff66;border-radius:50%;box-shadow:0 0 0 24px #67dfff05,0 0 0 25px #a1edff22;transform:rotate(-25deg);animation:halo 12s linear infinite}.halo-orbit:after{content:'';position:absolute;width:10%;height:2px;left:0;top:50%;background:#a9f2ff;box-shadow:0 0 15px #8df0ff}.hero-name{position:absolute;right:7%;bottom:13%;background:#08253ebb;backdrop-filter:blur(8px);border-left:2px solid #72e7ff;padding:10px 17px;color:white;font-size:22px;letter-spacing:4px;transform:skew(-7deg)}.hero-name span{display:block;font:11px 'Barlow Condensed',sans-serif;letter-spacing:2.2px;color:#8ee6ff;margin-top:4px}.start-bottom{position:absolute;left:7%;right:4%;bottom:4%;display:flex;justify-content:space-between;font:10px 'Barlow Condensed','Noto Sans KR',sans-serif;letter-spacing:1.4px;color:#96bace;z-index:2}.start-bottom i{margin:0 9px;font-style:normal;color:#61d8f8}.operation-bar{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border:1px solid #2b4157;border-top:0;border-radius:0 0 5px 5px;background:linear-gradient(90deg,#13283d,#122136);font-size:13px;gap:15px}.operation-state{display:flex;gap:10px;align-items:center}.state-indicator{width:6px;height:6px;background:#77e3ff;box-shadow:0 0 8px #76dfff77;transform:rotate(45deg)}#operation-state{color:#afedff;font-weight:600}.operation-state small{font-size:12px;color:#829ab0;margin-left:8px}.operation-skills{display:flex;gap:24px;color:#aac2d4;font-size:12px}.skill-icon{color:#61d9f9;font-size:20px;font-style:normal;vertical-align:middle;margin-right:7px}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 1px 30px;color:#7690a8}.key-guide{display:flex;gap:18px;flex-wrap:wrap;font-size:12px}.key-guide>span{display:inline-flex;align-items:center;gap:5px}.key-guide small{font-size:10px;color:#506e8a;margin-left:1px}kbd{font-family:inherit;min-width:22px;height:22px;background:#122139;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;border:1px solid #2a3e56;border-bottom:2px solid #374d66;border-radius:3px;font-size:11px;color:#bdd3e5}.fan-note{font-size:10px;white-space:nowrap;color:#587088}.boss-hud{position:absolute;top:5%;left:33%;right:22%;z-index:6;color:#fff}.boss-hud>div:first-child{display:flex;align-items:center;gap:11px;text-shadow:1px 1px 3px #20102e}.boss-hud span{font:9px 'Barlow Condensed',sans-serif;letter-spacing:1px;color:#ffe0e9}.boss-hud strong{font-size:14px}.boss-hud small{font:10px 'Barlow Condensed',sans-serif;color:#fff6bd;margin-left:auto}.boss-track{background:#331e3fc9;border:1px solid #f48ba6;height:12px;transform:skew(-9deg);margin-top:6px;padding:2px}.boss-track i{display:block;height:100%;background:linear-gradient(90deg,#f35a88,#ffa7bb);width:100%;transition:width .15s}.dialogue{position:absolute;left:6%;right:6%;bottom:7%;z-index:16;display:flex;align-items:center;min-height:115px;border:1px solid #75dbfb66;border-left:4px solid #6edcff;background:linear-gradient(100deg,#0a253eee,#0b1b31f5);box-shadow:0 10px 35px #0005;padding:18px 58px 18px 172px;cursor:pointer;animation:dialogue-in .28s ease-out}.dialogue-portrait{position:absolute;left:0;bottom:0;width:167px;height:190px;transform-origin:50% 100%;pointer-events:none}.dialogue-content>span{color:#7be2ff;letter-spacing:2px;font-size:14px;font-weight:800}.dialogue-content p{font-size:16px;line-height:1.7;margin:10px 0;color:#e6f5ff;min-height:28px}.dialogue-content small{font-size:10px;color:#7b9cb5}.dialogue button{border:0;background:none;color:#6ee8ff;font-size:36px;position:absolute;right:16px;bottom:24px}.dialogue.aru{border-color:#f795b766;border-left-color:#ff8bab}.dialogue.aru .dialogue-content>span{color:#ff9fbe}.center-overlay{position:absolute;inset:0;background:#061323c9;backdrop-filter:blur(9px);z-index:20;display:grid;place-items:center}.overlay-panel{text-align:center;min-width:320px}.overlay-panel>span{font:12px 'Barlow Condensed',sans-serif;letter-spacing:5px;color:#7bddf5}.overlay-panel h2{font-size:34px;font-weight:900;margin:18px 0 10px;letter-spacing:-1px}.overlay-panel p{font-size:14px;color:#9db4c8;margin:0 0 26px}.overlay-panel .primary-button{margin:0 auto}.text-button{background:transparent;border:0;font-size:12px;color:#8ea6bc;padding:18px 24px}.text-button:hover{color:#fff}#result-stats{display:flex;justify-content:center;gap:30px;margin:20px 0 30px}#result-stats span{display:flex;flex-direction:column;font-size:11px;color:#92b3ca;gap:6px}#result-stats b{color:#e1f9ff;font:27px 'Barlow Condensed',sans-serif}.notice{position:absolute;top:24%;left:50%;transform:translate(-50%,-12px);opacity:0;transition:opacity .2s,transform .2s;background:#0c2946ec;color:#b8f6ff;border:1px solid #61d4f199;box-shadow:0 8px 28px #00182e55;padding:11px 28px;font-size:14px;white-space:nowrap;z-index:12;pointer-events:none}.notice.show{opacity:1;transform:translate(-50%,0)}.cutin{position:absolute;left:0;right:0;top:20%;height:31%;z-index:14;background:linear-gradient(100deg,#56e1ff00,#65dcff,#0c78b6ee 70%,#187abb00);transform:skewY(-5deg);border-block:1px solid #b4f5ff;box-shadow:0 0 50px #3ccdff88;pointer-events:none;animation:cutin .95s ease-out forwards;overflow:hidden}.cutin .portrait-crop{position:absolute;height:220%;width:28%;bottom:-55%;left:14%;transform:skewY(5deg)}.cutin>span{position:absolute;top:25%;left:43%;font-weight:900;font-size:clamp(22px,3vw,43px);font-style:italic;color:white;text-shadow:3px 3px 0 #0a659c}.cutin small{display:block;font:14px 'Barlow Condensed',sans-serif;letter-spacing:5px;margin-top:8px}.touch-controls{display:none;position:absolute;inset:auto 0 3%;justify-content:space-between;align-items:flex-end;padding:0 3%;z-index:10;pointer-events:none;touch-action:none}.touch-controls button{pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;border:1px solid #bcf4ff66;background:#1236537a;color:#edfbff;backdrop-filter:blur(4px);height:55px;width:55px;border-radius:50%;font-size:24px;font-weight:700}.touch-controls button.pressed{background:#75e8ffc9;color:#0b314c}.touch-move,.touch-action{display:flex;align-items:flex-end;gap:9px}.touch-controls .touch-small{width:39px;height:39px;font-size:15px;margin-bottom:7px}.touch-controls .touch-fire{background:#48c9e78a;border-color:#c0f6ffb0;width:65px;height:65px}.playing .hud{display:flex}.game-shell:not(.playing) .hud{display:none}.game-shell:not(.playing) .touch-controls{display:none}.loading-message{color:#8bebff}.game-shell.loading .primary-button{opacity:.55;pointer-events:none}
@keyframes dialogue-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes cutin{0%{opacity:0;translate:-100% 0}15%,65%{opacity:1;translate:0 0}100%{opacity:0;translate:25% 0}}
@media(min-width:1600px){.app{max-width:1536px}.topbar{height:115px}.start-copy{margin-top:8%}h1{font-size:130px}.start-copy p{margin-top:25px;margin-bottom:28px}}
@media(max-width:1100px){.app{padding:0 24px}.topbar{height:86px}.start-copy{margin-top:6%}h1{margin-top:17px;margin-bottom:17px;font-size:9.2vw}.start-copy p{font-size:12px;margin-bottom:17px}.start-details{margin-top:18px;gap:10px}.primary-button{font-size:14px;padding:10px 16px;min-width:205px}.footer{flex-wrap:wrap;gap:15px;padding-top:21px}.key-guide{gap:14px}.fan-note{width:100%;text-align:right}.hero-name{font-size:18px}.operation-skills{gap:14px}.health-label span{display:none}}
@media(max-width:760px){.app{padding:0 12px}.topbar{height:76px;gap:16px}.brand{font-size:23px;gap:5px}.brand-mark{font-size:42px}.brand small{font-size:8px;letter-spacing:1.7px}.chapter{padding-left:15px;gap:8px;font-size:10px}.chapter-index{font-size:24px}.chapter small{font-size:8px;letter-spacing:1px}.header-actions{gap:5px}.icon-button{width:31px;height:31px;font-size:20px}.sound-slash{left:16px;top:5px}.start-copy{margin:5% 0 0 5%}.eyebrow{font-size:8px;letter-spacing:1.8px;gap:6px}.eyebrow i{width:14px}h1{font-size:9.5vw;margin-top:13px;margin-bottom:11px}h1 em{font-size:11px;letter-spacing:1px;margin-top:13px}.start-copy p{font-size:10px;line-height:1.55;margin-bottom:13px}.primary-button{font-size:12px;min-width:155px;padding:9px 12px;gap:12px}.primary-button small{font-size:9px}.primary-button>span{font-size:18px}.start-details{display:none}.start-bottom{font-size:8px;letter-spacing:.4px;bottom:4%;left:5%}.hero-name{font-size:14px;letter-spacing:2px;padding:7px 10px;bottom:14%;right:5%}.hero-name span{font-size:8px;letter-spacing:1px}.operation-bar{padding:12px 13px;font-size:11px}.operation-state{gap:8px}.operation-state small{font-size:10px;max-width:200px}.operation-skills{font-size:10px}.operation-skills>span:first-child{display:none}.skill-icon{font-size:15px;margin-right:4px}.key-guide{gap:12px;font-size:10px}.key-guide small{display:none}.footer{padding:17px 0;gap:13px}.fan-note{font-size:9px}.hud{inset:4% 3% auto}.mini-portrait{width:37px;height:37px}.player-hud{gap:7px}.health-block{min-width:118px}.health-label{font-size:11px}.health-track{width:127px;height:12px;gap:2px;padding:2px 3px;margin-top:3px}.weapon-line{margin-top:3px;gap:4px}.weapon-line>span{font-size:6px}.shot-track{width:50px;height:3px}.right-hud strong{font-size:20px;margin-top:2px}.stage-tag{font-size:9px;padding:1px 4px}.stage-tag b{font-size:12px}.score-label{font-size:6px;letter-spacing:2px}.dialogue{left:4%;right:4%;bottom:12%;min-height:85px;padding:12px 35px 12px 109px}.dialogue-portrait{width:105px;height:130px}.dialogue-content>span{font-size:11px}.dialogue-content p{font-size:12px;line-height:1.5;margin:7px 0;min-height:18px}.dialogue-content small{font-size:8px}.dialogue button{font-size:28px;right:10px;bottom:15px}.overlay-panel{min-width:260px}.overlay-panel>span{font-size:9px;letter-spacing:4px}.overlay-panel h2{font-size:25px;margin-top:10px}.overlay-panel p{font-size:11px;margin-bottom:15px}.text-button{font-size:10px;padding:12px}.notice{font-size:11px;padding:8px 17px;top:28%}.boss-hud{left:31%;right:19%;top:7%}.boss-hud span{display:none}.boss-hud strong{font-size:10px}.boss-hud small{font-size:8px}.boss-track{height:9px;margin-top:4px}#result-stats{margin:12px 0 18px;gap:22px}#result-stats span{font-size:9px}#result-stats b{font-size:21px}}
@media(pointer:coarse){.touch-controls{display:flex}.key-guide{display:none}.fan-note{text-align:center}.game-shell.playing .dialogue{bottom:22%}.touch-controls button{height:46px;width:46px}.touch-controls .touch-fire{height:54px;width:54px}.touch-controls .touch-small{width:34px;height:34px}.touch-move,.touch-action{gap:7px}}
@media(max-width:480px){.chapter{display:none}.app{padding:0 8px}.topbar{height:66px}.game-shell{aspect-ratio:4/3}.game-shell canvas{object-fit:cover;object-position:center}.start-copy{margin-top:10%;width:54%}h1{font-size:14vw}.hero-art{left:37%;right:-12%;top:10%}.hero-portrait{width:125%;height:90%;left:-4%}.start-bottom>span:last-child{display:none}.start-bottom{font-size:8px}.start-copy p{font-size:10px;margin-top:15px;max-width:150px}.hero-name{bottom:10%;font-size:12px;right:14%}.hero-name span{font-size:6px}.eyebrow{font-size:7px;letter-spacing:1px}.operation-state small{display:none}.operation-skills{font-size:9px}.mini-portrait{width:30px;height:35px}.health-track{width:108px}.health-label{font-size:10px}.weapon-line>span{font-size:5px}.shot-track{width:48px}.boss-hud{top:21%;left:14%;right:14%}.dialogue-content p{font-size:11px}.dialogue{padding-left:87px;left:3%;right:3%}.dialogue-portrait{width:90px;height:115px}.touch-controls{padding:0 3%;bottom:3%}.touch-controls button{width:40px;height:40px}.touch-controls .touch-fire{width:46px;height:46px}.touch-controls .touch-small{width:30px;height:30px}.cutin>span{font-size:22px}.cutin small{font-size:9px;letter-spacing:2px}.overlay-panel h2{font-size:23px}}
@media(max-height:500px) and (orientation:landscape){.app{padding:0;max-width:calc((100vh - 46px)*16/9)}.topbar{height:46px}.brand{font-size:19px}.brand-mark{font-size:32px}.brand small{font-size:6px;margin-top:3px}.chapter{font-size:9px}.chapter-index{font-size:20px}.chapter small{display:none}.game-shell{border-radius:0}.operation-bar,.footer{display:none}.start-copy{margin-top:5%}h1{font-size:14vh}.start-copy p{font-size:10px}.start-details{display:none}.start-bottom{font-size:8px}.hero-name{font-size:15px}.eyebrow{font-size:9px}.primary-button{min-width:170px;padding:8px 13px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-portrait,.dialogue-portrait,.halo-orbit{animation:none}.cutin{animation-duration:.4s}.notice{transition:none}}
@media(max-width:480px){.game-shell.playing canvas{position:absolute;top:8%;width:100%;height:auto;object-fit:contain;aspect-ratio:16/9}.game-shell.playing{background:#0b2137}.game-shell.playing .hud{top:3%}.game-shell.playing .boss-hud{top:19%}.game-shell.playing .dialogue{bottom:20%}}
@media(min-width:761px){.game-shell{container-type:inline-size}.start-copy h1{font-size:clamp(54px,9.8cqw,120px)}}
@media(min-width:761px) and (min-height:600px){.app{max-width:min(1392px,calc((100dvh - 210px)*16/9 + 80px))}}

.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 224px;gap:20px;align-items:start}.game-column{min-width:0}.music-card{border:1px solid #30465e;background:#102137;padding:11px;border-radius:5px}.music-heading{padding:4px 4px 12px}.music-heading span{display:block;font:11px 'Barlow Condensed',sans-serif;letter-spacing:2px;color:#7bdcf8}.music-heading strong{display:block;font-size:15px;margin-top:6px}.youtube-slot{width:200px;height:200px;background:#071423;margin:auto;border:0;overflow:hidden}.youtube-slot iframe{display:block;width:200px;height:200px;border:0}.bgm-button{width:100%;margin-top:12px;background:#214764;border:1px solid #407491;padding:10px;color:#bbf2ff;font-size:13px;font-weight:700;border-radius:3px}.bgm-button:hover{background:#315c78}.music-card>p{font-size:11px;line-height:1.7;color:#93b1c7;margin:12px 3px}.music-card>a{font-size:11px;color:#83d8f0;margin:0 3px}.mission-info{border-top:1px solid #2b425b;padding:19px 3px 3px;margin-top:20px}.mission-info>span{font-size:11px;color:#8aa7c0;display:block}.mission-info>b{font-size:23px;font-weight:800;margin-top:6px;display:block;color:#b0efff}.mission-info>p{font-size:11px;line-height:1.8;color:#86a5be}.stage-select{display:flex;gap:9px;margin-top:20px;max-width:340px}.stage-select button{background:#132c438f;border:1px solid #51789177;border-radius:3px;text-align:left;padding:10px 12px;color:#9fc4db;flex:1;white-space:nowrap}.stage-select button.selected{border-color:#75e7ff;background:#25516bab;color:#d0f8ff}.stage-select small{display:block;font:9px 'Barlow Condensed',sans-serif;letter-spacing:1.5px;color:#6ac6e5}.stage-select b{display:block;font-size:12px;margin-top:5px}.hero-portrait,.dialogue-portrait,.halo-orbit{animation:none!important}.hero-portrait{transform:none;filter:drop-shadow(-16px 20px 0 #57dafa20)}.game-shell .hero-portrait img{object-fit:fill}.dialogue-portrait.static-face{height:100%;width:140px}.dialogue-portrait.static-face img{width:100%;height:100%;object-fit:cover;position:static}.dialogue.hina{border-color:#bb91f666;border-left-color:#d8a9ff}.dialogue.hina .dialogue-content>span{color:#dcb6ff}.game-layout:fullscreen{width:100vw;height:100vh;padding:24px;background:#06101e;align-items:center;grid-template-columns:minmax(0,1fr) 224px}.game-layout:fullscreen .game-shell{border-radius:0}.game-layout:fullscreen .operation-bar{display:flex}.shot-track i{background:#8cedff}.shot-track{background:#153952}.start-copy{margin-top:6%}.start-copy p{margin-bottom:17px}.start-copy h1{margin-top:19px;margin-bottom:18px}
@media(min-width:1101px){.app{max-width:min(1550px,calc((100dvh - 200px)*16/9 + 324px))}.start-copy h1{font-size:clamp(55px,9.6cqw,112px)}}
@media(max-width:1100px){.app{max-width:none}.game-layout{grid-template-columns:minmax(0,1fr) 214px;gap:12px}.music-card{padding:6px}.start-copy h1{font-size:clamp(44px,9.1cqw,96px)}.start-copy{margin:5% 0 0 5%}.start-copy p{font-size:11px;margin-bottom:12px}.stage-select{margin-top:12px;gap:6px}.stage-select button{padding:7px 8px}.stage-select b{font-size:10px}.stage-select small{font-size:8px}.primary-button{min-width:175px}.start-bottom{font-size:8px;left:5%}.hero-name{font-size:16px}.mission-info{padding-top:12px;margin-top:12px}}
@media(max-width:850px){.game-layout{grid-template-columns:1fr}.music-card{display:grid;grid-template-columns:200px 1fr;gap:0 16px;max-width:100%;padding:12px}.youtube-slot{grid-column:1;grid-row:1/6}.music-heading{grid-column:2;padding:4px 0}.bgm-button{grid-column:2;width:auto;align-self:start;margin-top:6px}.music-card>p,.music-card>a{grid-column:2;margin:6px 0}.mission-info{display:none}.start-copy h1{font-size:10cqw}.game-shell{container-type:inline-size}.start-copy p{font-size:12px}.stage-select{margin-top:14px}.stage-select b{font-size:11px}.hero-name{font-size:18px}.game-layout:fullscreen{grid-template-columns:minmax(0,1fr) 214px;padding:8px;gap:8px}.game-layout:fullscreen .music-card{display:block;padding:6px}.game-layout:fullscreen .music-heading,.game-layout:fullscreen .music-card>p,.game-layout:fullscreen .music-card>a{display:none}.game-layout:fullscreen .bgm-button{width:100%;font-size:10px;padding:6px}.game-layout:fullscreen .operation-bar{display:none}}
@media(max-width:480px){.start-copy{margin-top:7%;width:57%}.start-copy h1{font-size:13cqw;min-height:0;margin:16px 0}.start-copy p{font-size:9px;line-height:1.5;max-width:165px;margin:0 0 12px}.stage-select{margin-top:14px;gap:5px;width:200px}.stage-select button{padding:6px}.stage-select b{font-size:9px}.stage-select small{font-size:7px}.hero-art{left:40%;right:-12%;top:8%}.hero-name{font-size:12px}.start-bottom{font-size:7px;bottom:3%}.music-card{gap:0 10px;padding:8px}.music-heading strong{font-size:12px}.music-card>p,.music-card>a{font-size:10px}.bgm-button{font-size:11px;padding:8px}.dialogue-portrait.static-face{width:85px}.dialogue-portrait:not(.static-face){width:90px}.game-layout:fullscreen{grid-template-columns:1fr;padding:8px;overflow:auto}.game-layout:fullscreen .music-card{display:grid;grid-template-columns:200px 1fr;gap:8px}.game-layout:fullscreen .bgm-button{grid-column:2}.game-layout:fullscreen .youtube-slot{grid-row:1}}
@media(max-height:500px) and (orientation:landscape){.app{max-width:none}.game-layout{grid-template-columns:minmax(0,1fr) 214px;gap:8px}.music-card{display:block;padding:6px}.music-heading,.music-card>p,.music-card>a,.mission-info{display:none}.bgm-button{width:100%;font-size:10px;padding:6px}.game-column{max-width:calc((100dvh - 48px)*16/9)}.stage-select{margin-top:9px}.stage-select button{padding:5px 8px}.start-copy p{font-size:9px}.start-copy h1{font-size:9cqw}.start-copy h1 em{font-size:10px;margin-top:9px}.start-copy{margin-top:4%}.primary-button{padding:6px 10px;min-width:155px}.start-bottom{font-size:7px}.hero-name{font-size:12px}}
