@font-face{font-family:Game;src:local('Malgun Gothic')}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#111923;color:#fff;font-family:Game,'Segoe UI',sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #ffdb55;outline-offset:5px}button{border:0;color:inherit}#game{position:relative;width:100%;height:100%;isolation:isolate}#scene{display:block;width:100%;height:100%;outline:0}#vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#10182775,transparent 24%,transparent 80%,#10182730)}.hidden{display:none!important}.screen{position:absolute;inset:0}.title-copy{position:absolute;left:6%;top:15%;z-index:1}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:800;color:#ffdb55;display:flex;align-items:center;gap:9px}.live-dot{width:7px;height:7px;border-radius:50%;background:#ffdb55;box-shadow:0 0 14px #ffd84e}.title-kicker{margin-top:38px;font-size:17px;letter-spacing:4px;font-weight:700;color:#dce7ee}h1{margin:12px 0 22px;font-size:clamp(64px,7.5vw,116px);font-weight:1000;line-height:1.04;letter-spacing:-7px;color:#fff;text-shadow:5px 6px 0 #9d2831,7px 8px 0 #151d28;transform:skew(-5deg)}h1 span{display:block;color:#ffdb55;font-size:.46em;letter-spacing:10px;margin:12px 0 0 6px;text-shadow:3px 3px #16212d}.primary{background:#ffdb55;color:#151d28;font-size:17px;font-weight:900;padding:19px 24px;min-width:240px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:4px 4px 0 #101721;transition:transform .15s,background .15s}.primary:hover{background:#ffe786;transform:translateY(-2px)}.primary span{font-size:25px;line-height:1}.title-actions{display:flex;align-items:center;gap:24px;margin-top:19px}.title-actions button{background:none;padding:0;font-size:12px;border-bottom:1px solid #ffffff70;padding-bottom:3px}.title-actions>span{font-size:9px;color:#9aafb9;letter-spacing:1px}#title-screen{background:linear-gradient(90deg,#111d2df5 0%,#142436d9 25%,#1b293556 48%,transparent 67%)}.title-footer{position:absolute;bottom:30px;left:6%;right:5%;display:flex;justify-content:space-between;color:#b7c5ce;font-size:11px;letter-spacing:.6px}.title-footer kbd{margin-left:10px}kbd{font-family:inherit;font-size:10px;letter-spacing:0;padding:3px 6px;border:1px solid #ffffff45;border-radius:3px;white-space:nowrap}#hud{position:absolute;inset:0;pointer-events:none}#hud button{pointer-events:auto}.player-panel{position:absolute;top:27px;left:30px;display:flex;gap:13px;align-items:center}.helmet{--suit:#e63740;display:inline-block;width:60px;height:65px;background:var(--suit);border:3px solid #14212b;border-radius:48% 48% 42% 42%;position:relative;box-shadow:inset -9px -3px 0 #0002,inset 5px 3px 0 #fff2}.helmet:before{content:'';position:absolute;top:23px;left:3px;right:3px;height:16px;background:#101924;clip-path:polygon(0 0,100% 0,88% 100%,13% 100%);border-top:3px solid #d4e0e4}.helmet i{position:absolute;width:17px;height:3px;left:18px;bottom:8px;background:#f3f1df}.helmet.blue{--suit:#2683e4}.helmet.yellow{--suit:#ffcf37}.helmet.tiny{width:29px;height:33px;border-width:2px}.helmet.tiny:before{top:12px;height:8px;left:1px;right:1px;border-top-width:1px}.helmet.tiny i{width:9px;left:8px;bottom:3px;height:2px}.player-details{width:235px}.player-label{display:flex;justify-content:space-between;margin-bottom:7px;align-items:center}.player-label strong{font-size:19px;letter-spacing:2px;text-shadow:1px 2px #162230}.player-label>span{font-size:11px;font-weight:900;color:#ffdb55}.bar{height:11px;background:#14202bd9;border:2px solid #14202b;transform:skew(-12deg);overflow:hidden}.bar>div{height:100%;width:100%;transition:width .14s}.hp>div{background:linear-gradient(90deg,#c82a32,#ff655e)}.player-meta{display:flex;justify-content:space-between;font-size:9px;margin-top:5px;color:#e4edf0;font-weight:700;text-shadow:1px 1px #14202b}.mission{position:absolute;top:27px;left:50%;transform:translateX(-50%);text-align:center;background:linear-gradient(90deg,transparent,#13202be6,transparent);min-width:320px;padding:9px 35px}.mission>span{display:block;font-size:9px;letter-spacing:3px;color:#ffdb55;font-weight:900}.mission strong{display:block;font-size:16px;margin:5px 0}.mission small{display:block;font-size:10px;color:#b7c9d3}.right-hud{position:absolute;top:25px;right:30px;text-align:right}.top-buttons{display:flex;align-items:center;justify-content:flex-end;gap:8px}.top-buttons button{background:#14202bc9;border:1px solid #ffffff25;min-height:30px;min-width:32px;font-size:15px;border-radius:2px}.top-buttons button:first-child{font-size:9px;font-weight:800;padding:0 9px;letter-spacing:.5px}.top-buttons button:hover{background:#334c60}.ko{margin-top:11px;display:flex;align-items:baseline;justify-content:end;gap:8px;text-shadow:2px 3px #12202c}.ko strong{font-size:46px;line-height:1.1;font-weight:900;font-style:italic;font-variant-numeric:tabular-nums}.ko span{font-size:17px;color:#ffdb55;font-style:italic;font-weight:900}#timer{font-size:11px;letter-spacing:2px;color:#d5dfe5;font-variant-numeric:tabular-nums;margin-top:3px}#boss-panel{position:absolute;top:120px;left:35%;right:35%}#boss-panel>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:800;text-shadow:1px 1px #131d27;margin-bottom:6px}#boss-hp-text{font-size:9px}.bar.boss{height:10px}.boss>div{background:#ff515a}#combo{position:absolute;left:37px;top:32%;text-shadow:3px 3px #14202c;transform:skew(-8deg)}#combo strong{font-size:68px;line-height:1;color:#ffdf59;display:block;font-weight:1000}#combo>span{font-size:17px;letter-spacing:3px;font-weight:900}#combo small{display:block;margin-top:6px;font-size:13px;color:#bdeaff;font-weight:800}#capture-panel{position:absolute;bottom:180px;left:50%;transform:translateX(-50%);text-align:center;background:#13202be6;padding:14px 25px;width:260px;border-top:2px solid #ffd653}#capture-panel>span{font-size:12px;font-weight:800}.bar.capture{margin:9px 0;height:8px}.capture>div{background:#ffdb55;width:0}#capture-text{font-size:10px;color:#c2d1da}.bottom-hud{position:absolute;left:30px;right:30px;bottom:58px;display:flex;align-items:end;justify-content:space-between;gap:20px}.group-label{display:block;font-size:9px;letter-spacing:2px;margin-bottom:10px;font-weight:800;color:#dce6ec}.group-label kbd{margin-left:5px}.team-buttons{display:flex;gap:6px}.team-card{position:relative;width:85px;background:#17212de0;border:1px solid #ffffff25;display:grid;grid-template-columns:30px 1fr;align-items:center;padding:7px 6px;gap:0 5px;text-align:left;border-bottom:3px solid transparent}.team-card.selected{border-bottom-color:#ffdb55;background:#243a4ef0}.team-card .helmet{grid-row:1/3}.team-card>span:not(.helmet){font-size:10px;font-weight:800}.team-card small{font-size:9px;color:#a4b7c5}.power>div{background:linear-gradient(90deg,#d99e1f,#ffe36c);width:35%}#notice{position:absolute;top:25%;left:50%;transform:translateX(-50%);text-align:center;pointer-events:none;width:70%;text-shadow:2px 3px #16202e;animation:notice-in .25s ease-out}#notice small{font-size:10px;letter-spacing:5px;color:#ffde66;font-weight:900;display:block;margin-bottom:10px}#notice strong{font-size:clamp(20px,3vw,37px);font-style:italic;letter-spacing:-1px}#cutin{position:absolute;top:30%;left:0;width:100%;height:175px;background:linear-gradient(100deg,#122131,#e33142 45%,#b8202dd9 75%,transparent);border-top:3px solid #ffe57a;border-bottom:3px solid #fff2;transform:skewY(-4deg);display:flex;flex-direction:column;justify-content:center;padding-left:12%;pointer-events:none;animation:cutin-in .2s ease-out;z-index:7}#cutin small{font-size:11px;color:#ffe47a;letter-spacing:6px}#cutin strong{font-size:45px;font-weight:1000;font-style:italic;margin:6px 0;text-shadow:3px 3px #24202c}#cutin>span{font-size:10px;letter-spacing:5px;color:#ffffff90}.modal{position:absolute;inset:0;z-index:10;background:#101925b8;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{width:400px;background:#142331;border:1px solid #63768470;border-top:4px solid #ffda55;padding:33px;box-shadow:12px 12px 0 #08121c66}.modal-card h2{font-size:29px;letter-spacing:-1px;margin:20px 0 12px}.modal-card p{font-size:12px;color:#b6c8d2;line-height:1.8;margin-bottom:25px}.modal-card .primary{width:100%;min-width:0;font-size:15px;padding:15px 20px}.secondary{display:block;width:100%;padding:14px;background:transparent;border:1px solid #ffffff25;font-size:12px;margin-top:12px}.secondary:hover{background:#ffffff0b}.volume{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#b7cbd6;margin-top:20px}.volume input{accent-color:#ffda55;width:150px}.volume input[type=checkbox]{width:16px}.help-card{width:500px}.help-card h2{font-size:25px}.key-grid{display:grid;grid-template-columns:80px 1fr;gap:13px 15px;margin:26px 0;align-items:center}.key-grid kbd{text-align:center;font-size:11px;padding:5px}.key-grid>span{font-size:11px;color:#d6e0e7}.tip{background:#263c4a;padding:12px;border-left:3px solid #ffdb55}.results{display:flex;justify-content:space-between;margin:28px 0;gap:15px}.results>div{flex:1}.results strong{display:block;font-size:28px;color:#ffdb55;white-space:nowrap}.results span{display:block;margin-top:6px;font-size:10px;color:#a6becd}.result-card{width:460px}#loading{position:absolute;inset:0;z-index:20;background:#14212e;display:flex;align-items:center;justify-content:center;flex-direction:column}.loading-mark{font-size:58px;font-weight:1000;font-style:italic;color:#ffdb55}.loading-mark+p{font-size:13px;color:#adc1cd}.loading-mark+p span{animation:blink 1s infinite}#damage-flash{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,#ef273788);pointer-events:none;opacity:0;transition:opacity .1s}#floaters{position:absolute;inset:0;pointer-events:none;overflow:hidden}.floater{position:absolute;font-size:19px;font-weight:1000;color:#fff3bc;text-shadow:1px 2px #12212c;transform:translate(-50%,-50%);font-style:italic}.floater.heal{color:#a3ffc5}.floater.special{font-size:26px;color:#ffdf50}#error{z-index:30}@keyframes blink{50%{opacity:.2}}@keyframes notice-in{from{opacity:0;margin-top:15px}to{opacity:1;margin-top:0}}@keyframes cutin-in{from{opacity:0;left:-50%}to{opacity:1;left:0}}@media(max-width:900px){.title-copy{top:12%}h1{font-size:75px}.title-kicker{margin-top:25px}.player-details{width:165px}.player-panel{left:18px;top:18px}.helmet{width:45px;height:51px}.helmet:before{top:18px;height:13px}.helmet i{left:13px;bottom:6px}.mission{top:18px;min-width:220px;padding:8px 15px}.mission strong{font-size:13px}.mission small{font-size:9px}.right-hud{right:18px;top:18px}.bottom-hud{left:18px;right:18px}.title-footer{font-size:9px}#boss-panel{left:33%;right:28%}}@media(max-height:650px){.title-copy{top:9%}.title-kicker{margin-top:20px}h1{font-size:72px;margin-bottom:14px}.primary{padding:14px 22px}.title-actions{margin-top:14px}.modal-card{padding:24px}.key-grid{gap:9px;margin:15px 0}.help-card .tip{margin-bottom:15px}.modal-card h2{margin-top:13px}.bottom-hud{bottom:45px}.player-panel{top:18px}.mission{top:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:700px){.player-panel{top:13px;left:13px;gap:8px}.player-panel .helmet{width:34px;height:40px;border-width:2px}.player-panel .helmet:before{top:14px;height:10px;left:2px;right:2px;border-top-width:2px}.player-panel .helmet i{left:9px;bottom:5px;width:13px;height:2px}.player-details{width:145px}.player-label{margin-bottom:5px}.player-label strong{font-size:14px}.player-label>span{font-size:9px}.player-meta{font-size:8px}.player-meta span:last-child{display:none}.player-panel .bar.hp{height:9px}.mission{top:71px;min-width:220px;padding:6px 15px;pointer-events:none}.mission>span{font-size:8px;letter-spacing:2px}.mission strong{font-size:12px;margin:3px 0}.mission small{font-size:8px}.right-hud{top:13px;right:13px}.ko{margin-top:8px}.ko strong{font-size:32px}.ko span{font-size:12px}.top-buttons{gap:5px}.top-buttons button{min-height:25px;min-width:27px;font-size:12px}.top-buttons button:first-child{font-size:8px;padding:0 6px}#timer{font-size:9px;margin-top:0}#combo{left:17px;top:33%}#combo strong{font-size:43px}#combo>span{font-size:11px;letter-spacing:2px}#combo small{font-size:9px}#capture-panel{bottom:auto;top:125px;width:190px;padding:8px 13px;background:#13202bb8}#capture-panel>span{font-size:10px}#capture-text{font-size:8px}.bar.capture{margin:6px 0;height:5px}.bottom-hud{left:13px;right:13px;bottom:40px;gap:10px}.team-card{width:66px;padding:5px 3px;grid-template-columns:25px 1fr;gap:0 3px}.team-card .helmet.tiny{transform:scale(.85);transform-origin:center}.team-card>span:not(.helmet){font-size:9px}.team-card small{font-size:8px}.group-label{font-size:8px;letter-spacing:1px;margin-bottom:6px}#boss-panel{top:127px;left:30%;right:22%}#boss-panel>div:first-child{font-size:10px}#notice{top:32%;width:85%}#notice strong{font-size:24px}#notice small{font-size:8px;letter-spacing:3px}#cutin{height:130px}#cutin strong{font-size:32px}#cutin small{font-size:9px}.title-footer>span:last-child{display:none}}
.helmet.robot{--suit:#a53238;border-radius:8%}.helmet.robot:before{background:#151e27;border-top-color:#b4b9bb}.helmet.robot:after{content:none}
/* Gunmetal, restrained red and warm silver replace the bright arcade dressing. */
:root{--accent:#bd4149;--paper:#e5e2d8}.eyebrow,.player-label>span,.mission>span,.ko span,.results strong{color:#d7b87e}.live-dot{background:#bd4149;box-shadow:0 0 10px #bd414955}.title-kicker{letter-spacing:12px;color:#c0b9aa;font-size:14px}h1{color:var(--paper);transform:none;text-shadow:0 2px 0 #55575b,0 6px 18px #050b12;font-size:clamp(60px,7.3vw,112px);letter-spacing:-6px;font-weight:900}h1 span{color:#acb7c0;text-shadow:none;font-size:.27em;letter-spacing:9px;margin-top:22px}.primary{background:#a93640;color:#f1ebe0;box-shadow:none;border:1px solid #ca5a62;font-size:15px;letter-spacing:2px}.primary:hover{background:#be414b}.title-actions>span{color:#748695}#title-screen{background:linear-gradient(90deg,#0b131ff7,#0e1a29db 25%,#12202c4d 49%,transparent 72%)}.title-footer{border-top:1px solid #b6c6d02b;padding-top:16px;font-size:10px}.helmet{border-radius:35% 35% 25% 25%;box-shadow:inset -6px -2px #0003}.bar{transform:none;height:8px}.hp>div{background:#8ba38e}.power>div{background:#708ba9}.team-card.selected{border-bottom-color:#b8444e;background:#293644}.group-label{letter-spacing:1px}#combo{transform:none}#combo strong{color:#d8d9d4;font-size:54px;font-style:normal}#combo>span{font-size:11px;letter-spacing:4px}#combo small{font-size:10px;color:#b6c0c8}.ko strong{font-style:normal;font-size:40px}.ko span{font-style:normal;font-size:12px}.mission{background:linear-gradient(90deg,transparent,#101a27e8,transparent)}#notice strong{font-style:normal}#cutin{transform:none;border-top-color:#c0ab7a;background:#263644}#cutin strong{font-style:normal;font-size:38px}#cutin small{color:#c5b591}.modal-card{background:#17212d;border-top-color:#a13b44;box-shadow:0 20px 70px #0008;max-height:94vh;overflow:auto}.modal-card h2{font-size:25px}.tip{background:#25313e;border-left-color:#aa4c50}.volume input{accent-color:#a9444c}.key-grid{grid-template-columns:90px 1fr;gap:11px}.key-grid kbd{font-size:10px}.help-card{width:560px}.floater{font-size:14px;font-weight:700;font-style:normal;color:#ddd7c5}.floater.special{font-size:20px}.radar-panel{position:absolute;right:30px;top:186px;background:#111d28d9;padding:8px;border:1px solid #8899a733;width:156px}.radar-panel small{display:block;font-size:8px;letter-spacing:1.4px;color:#a8b9c7;margin-bottom:7px}#radar{display:block;width:140px;height:108px}.title-copy{top:14%}
@media(max-width:900px){.radar-panel{right:18px;top:170px;width:113px;padding:6px}.radar-panel small{font-size:6px;letter-spacing:.5px}#radar{width:99px;height:77px}.title-copy{top:11%}}
@media(max-width:700px){.radar-panel{right:13px;top:155px;width:88px;padding:4px}.radar-panel small{font-size:5px}#radar{width:78px;height:60px}#combo strong{font-size:36px}.ko strong{font-size:30px}h1{font-size:62px}#boss-panel{top:139px}.title-copy .title-kicker{margin-top:20px}h1 span{font-size:.27em;margin-top:14px;letter-spacing:7px}.title-footer{bottom:18px}.key-grid{gap:8px}.modal-card{padding:20px}}
@media(max-height:600px){.title-copy{top:7%}.title-kicker{margin-top:18px}h1{font-size:64px}.help-card h2{font-size:22px}.help-card .key-grid{margin:14px 0;gap:7px}.help-card .tip{font-size:10px;margin:12px 0;padding:8px}.help-card .primary{padding:12px 18px}.help-card{max-height:96vh}.radar-panel{top:165px}.modal-card .volume{margin-top:12px}}
@media(max-width:700px){#capture-panel{top:auto;bottom:132px}#notice{top:29%}}

#cinematic{position:absolute;inset:0;z-index:5;pointer-events:none}#cinematic-flash{position:absolute;inset:0;background:#f3efdc;opacity:0}.cinematic-bar{position:absolute;left:0;right:0;background:#070c12}.cinematic-bar.top{top:0;height:10%}.cinematic-bar.bottom{bottom:0;height:16%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px}
@media(max-width:700px){.cinematic-bar.bottom{height:19%}#capture-panel{bottom:160px}}

/* Combat information only; controls live in the field manual. */
.bottom-hud{bottom:20px}.cinematic-bar.top,.cinematic-bar.bottom{height:8%}.giant-battle .team{display:none}.giant-battle .bottom-hud{justify-content:flex-end}#finish-boss{display:block;margin:12px auto 0;padding:10px 18px;background:#a93640;border:1px solid #c9796d;color:#f0e3c9;font-size:13px;letter-spacing:2px;box-shadow:0 4px 20px #0006}#finish-boss:hover{background:#bf4d50}#finish-boss kbd{letter-spacing:0;margin-left:3px}
.title-actions{flex-wrap:wrap;max-width:520px;gap:14px 20px}
/* Keep the fight unobstructed at both compact and desktop viewport sizes. */
.mission #capture-panel{position:static;transform:none;width:100%;max-width:240px;margin:4px auto 0;padding:0;background:none;border:0}
.mission #capture-panel .bar.capture{height:5px;margin:5px 0 3px}
.mission #capture-text{font-size:9px}
.stage-select{display:flex;gap:7px;margin-top:14px}.stage-select button{padding:9px 12px;background:#1b2635;border:1px solid #667584;color:#bac6cf;font-size:12px}.stage-select button[aria-pressed=true]{color:#ead5ac;border-color:#c49b59;background:#39342b}#stage-summary{font-size:11px;color:#c4bbac;margin:9px 0 15px}.title-copy{top:8%}.title-actions{gap:10px 15px}.mission strong{font-size:15px}.mission small{line-height:1.5}
@media(max-height:660px){.title-copy{top:4%}h1{font-size:56px}.title-kicker{margin-top:10px}.stage-select{margin-top:8px}.stage-select button{padding:7px 10px}.title-footer{bottom:10px}.title-actions{margin-top:12px}}
@media(max-width:700px){.stage-select button{font-size:10px;padding:8px}.mission strong{font-size:11px}.mission small{font-size:9px}.title-copy{left:5%}}
/* Short encounter scenes share the combat camera and can always be skipped. */
#encounter-scene{position:absolute;inset:0;z-index:8;pointer-events:none}

#skip-scene{position:absolute;right:24px;bottom:24px;pointer-events:auto;background:#17212cdd;border:1px solid #666b70;color:#d4d4cc;padding:10px 15px}



.player-details>.bar.power{margin-top:5px;height:9px}.player-meta #power-text{color:#ffe06a}.stage-select{flex-wrap:wrap;max-width:580px}
.player-details .hp>div{background:linear-gradient(90deg,#c82a32,#ff655e)}.player-details .power>div{background:linear-gradient(90deg,#d99e1f,#ffe36c)}.player-meta #power-text{display:inline}

.helmet.gray{background:#929994}.team-buttons{flex-wrap:wrap}
#hero-icon.helmet.gray{width:82px;height:76px;border:0;border-radius:0;box-shadow:none;background:transparent url('./assets/ui/gray-up.svg') center/contain no-repeat}
#hero-icon.helmet.gray.gray-forward{background-image:url('./assets/ui/gray-forward.svg')}
#hero-icon.helmet.gray::before,#hero-icon.helmet.gray i{display:none}
@media(max-width:700px){#hero-icon.helmet.gray{width:52px;height:48px}}
/* Opt-in visual QA: Escape freezes the real game without covering its pose. */

@font-face{font-family:MusouBrush;src:url('./assets/fonts/musou-brush.woff2') format('woff2');font-display:swap;unicode-range:U+7121,U+96D9}
/* Original title composition: flat blue, raised red letters, two plain choices.
   Gray mode changes only the logo, keeping the same screen and round layout. */
#title-screen{background:#07379d;display:grid;place-items:center;z-index:3}
.arcade-layout{position:relative;width:min(100%,1000px);height:min(100%,720px);display:flex;flex-direction:column;align-items:center;padding:clamp(28px,8vh,76px) 5% 28px}
.ranger-title{margin:0 0 clamp(35px,8vh,76px);transform:none;line-height:1;text-align:center;font-size:inherit;letter-spacing:0;text-shadow:none;width:100%}
#title-toggle{display:inline-flex;flex-direction:column;align-items:center;background:transparent;padding:10px 16px 28px;max-width:100%;--logo:#f0090b}
#title-toggle[aria-pressed=true]{--logo:#a0a0a0}
.ranger-title .ranger-kicker{display:block;font-family:Game,sans-serif;font-size:clamp(22px,3.8vw,42px);font-weight:500;letter-spacing:1px;line-height:1.2;color:#ffff19;background:#353737;padding:5px 16px;margin:0 0 6px;text-shadow:none;box-shadow:0 2px 0 #777;transform:perspective(200px) rotateX(8deg)}
.ranger-title .ranger-logo{display:block;font-family:'Malgun Gothic',Game,sans-serif;font-size:clamp(62px,16vw,156px);font-weight:1000;letter-spacing:-7px;white-space:nowrap;line-height:1.1;color:var(--logo);margin:0;paint-order:stroke fill;-webkit-text-stroke:6px #fff;transform:skew(-8deg);text-shadow:2px 5px #3b3d3e,4px 8px #3b3d3e,6px 11px #3b3d3e,8px 14px #3b3d3e,10px 17px #323435,12px 20px #323435}
#main-menu{width:290px;max-width:80%;display:grid;gap:12px}
.menu-choice{position:relative;background:transparent;border:1px solid transparent;border-left:5px solid transparent;border-right:5px solid transparent;font-size:21px;font-weight:600;letter-spacing:1px;padding:10px 14px;color:#fff;min-height:48px}
.menu-choice:hover,.menu-choice.selected,.menu-choice:focus-visible{border-color:#ff1a13;outline:0;background:#0b3b9e}
#round-menu{width:100%;max-width:800px;position:relative}
.round-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px 18px;align-items:start}
.round-choice{display:flex;align-items:center;flex-direction:column;gap:9px;background:none;padding:0;color:#fff;font:18px Georgia,serif}
.round-portrait{display:block;width:76px;height:76px;max-width:100%;border:2px solid transparent;overflow:hidden}
.round-choice img{display:block;object-fit:contain;width:100%;height:100%;transform:scale(1.8);transform-origin:50% 0%;image-rendering:auto}
.round-choice:hover .round-portrait,.round-choice:focus-visible .round-portrait{border-color:#ff1a13}.round-choice:focus-visible{outline:0}
.menu-back{position:absolute;right:0;bottom:10px;background:none;padding:8px 16px;font-size:16px;color:#fff;border:1px solid #ffffff35}
.menu-back:hover{border-color:#ff1a13}
.musou-mark{position:absolute;bottom:27px;right:30px;font-family:MusouBrush,'Gungsuh',serif;font-size:clamp(60px,9vw,94px);letter-spacing:-5px;line-height:1.2;color:#f7f1df;transform:rotate(-9deg);text-shadow:3px 4px 0 #071744;pointer-events:none}
.musou-mark::after{content:'';position:absolute;right:-13px;bottom:3px;width:10px;height:26px;background:#bf261d;border:2px solid #e55135;transform:rotate(8deg)}
.result-card h2{margin-top:0}
@media(max-width:600px){.ranger-title .ranger-logo{letter-spacing:-5px;-webkit-text-stroke:4px #fff}.arcade-layout{padding-top:12vh}.round-grid{grid-template-columns:repeat(4,1fr);gap:18px 12px}.round-portrait{width:62px;height:62px}.menu-back{bottom:-46px}.musou-mark{right:28px;bottom:25px}.ranger-title{margin-bottom:55px}}
@media(max-height:560px){.arcade-layout{padding-top:10px}.ranger-title{margin-bottom:20px}.ranger-title .ranger-kicker{font-size:24px}.ranger-title .ranger-logo{font-size:64px}.menu-choice{font-size:17px;padding:7px}.round-portrait{width:52px;height:52px}.round-grid{gap:8px 18px}.round-choice{gap:3px}.musou-mark{font-size:48px;bottom:15px}}
