@media(max-width:950px){
 main{padding:0 12px}.masthead{height:48px}.wordmark{font-size:9px;letter-spacing:1.8px}.edition{font-size:8px;letter-spacing:1px}
 .stats{gap:15px}.stat strong,.stat #lives{font-size:18px}.stat small{font-size:8px;margin-bottom:5px}.icon-button{width:34px;min-width:34px;height:34px;font-size:16px}.tools{gap:5px}.brand>span{display:none}.brand h1{font-size:24px}
 .panel,.ready .panel{padding:16px 19px}.ready .panel{width:49%}.overlay.ready{padding-right:5%}
 .eyebrow{font-size:7px;letter-spacing:1.5px}h2{font-size:28px;margin:10px 0;line-height:1.3}.panel p{font-size:10px;line-height:1.7;margin:8px 0 12px}
 .primary{min-width:180px;padding:11px 18px;font-size:12px}.howto{font-size:10px;gap:7px;margin-bottom:15px}.howto span+span{font-size:9px}.panel .hint{font-size:8px;margin-top:13px}.best{margin-top:12px;font-size:8px}.best span{font-size:11px}
 .route{width:160px}.route-label{font-size:9px}.route-note{font-size:8px}.toast{font-size:11px}
 .chapter strong{font-size:28px}.chapter small{font-size:9px}.chapter span{font-size:9px}.results{gap:22px;margin:16px 0}.results strong{font-size:22px}.results small{font-size:8px}
 footer{font-size:9px;flex-wrap:wrap;gap:5px;padding-top:12px}.secondary{margin-top:10px;font-size:10px}
}
@media(orientation:landscape) and (max-height:600px){
 body{display:grid;place-items:center;min-height:100svh}main{padding:0;width:100%;max-width:none}.masthead,footer{display:none}
 .game{width:min(100vw,calc(100svh * 16 / 9));margin:auto;border:0;border-radius:0}
 .hud{inset:4% 3.5% auto}.brand>span{display:none}.brand h1{font-size:23px}.stats{gap:13px}.stat strong,.stat #lives{font-size:17px}.stat small{font-size:7px;margin-bottom:5px}.icon-button{min-width:36px;width:36px;height:36px}
 .overlay{padding:15px}.panel,.ready .panel{padding:15px 18px}.panel h2{font-size:25px;margin:8px 0;line-height:1.25}.panel p{font-size:10px;line-height:1.6;margin:8px 0 12px}.eyebrow{font-size:7px;letter-spacing:1px}
 .primary{min-width:175px;padding:10px 18px;font-size:12px}.howto{font-size:10px;margin-bottom:13px;gap:6px}.howto span+span{font-size:9px}.panel .hint{margin-top:12px;font-size:8px}.best{margin-top:11px}
 .bottom-hud{bottom:4%}.route{width:150px}.route-note{display:none}.results{margin:14px 0}.results strong{font-size:20px}.toast{font-size:11px}
}
@media(max-width:550px) and (orientation:portrait){
 main{padding:0 8px}.edition{display:none}.game{margin-top:13vh;border-radius:10px}.hud{inset:5% 3% auto}.brand h1{font-size:15px}.stats{gap:8px}.stat strong,.stat #lives{font-size:12px}.stat small{font-size:6px}.tools{gap:4px}.icon-button{min-width:28px;width:28px;height:28px;font-size:12px}
 .overlay,.overlay.ready{padding:12px;place-items:center}.panel,.ready .panel{width:77%;padding:10px 15px}.panel h2{font-size:20px;margin:5px 0;line-height:1.2}.eyebrow{font-size:6px;letter-spacing:.8px}.panel p{font-size:8px;line-height:1.45;margin:7px 0}.howto{display:none}.panel .hint,.best{display:none}.primary{font-size:10px;min-width:145px;padding:8px 13px}.secondary{font-size:8px;padding:4px;margin-top:6px}
 .route{width:86px}.route-label{font-size:7px;letter-spacing:0;margin-bottom:6px}.route-note{display:none}.route-track b{width:5px;height:5px;top:-1px}.bottom-hud{bottom:4%}.toast{top:27%;font-size:8px}.chapter strong{font-size:18px;margin:5px 0}.chapter small,.chapter span{font-size:6px}.chapter small{letter-spacing:2px}.countdown{font-size:20px}.results{gap:13px;margin:10px 0}.results strong{font-size:16px}.results small{font-size:6px}.results em{font-size:9px}
 footer:before{content:"スマホを横向きにすると、広く遊べます。";color:#ebc487;width:100%}footer{font-size:8px}
}
@media(max-width:950px){.jump-button{width:180px;height:60px}}
@media(max-width:550px) and (orientation:portrait){.jump-button{width:132px;height:44px}}
