*{margin:0;padding:0;box-sizing:border-box}
html,body{width:100%;height:100%;overflow:hidden;
  background:linear-gradient(180deg,#DCEAF4 0%,#F6EFDD 100%)}
body{display:flex;align-items:center;justify-content:center;
  font-family:"PingFang SC","Microsoft YaHei",sans-serif}
.site-return{position:fixed;z-index:10;top:16px;left:16px;padding:10px 14px;border-radius:10px;background:#ff4937;color:#111;text-decoration:none;font:800 14px Arial,"Microsoft YaHei",sans-serif;box-shadow:3px 4px 0 #a02b22}
#stage{width:1280px;height:720px;max-width:100vw;max-height:56.25vw;
  border-radius:16px;overflow:hidden;
  box-shadow:0 18px 50px rgba(90,110,130,.30),0 0 0 1px rgba(255,255,255,.5) inset}
#game{width:100%;height:100%;display:block;
  image-rendering:pixelated;image-rendering:crisp-edges;
  touch-action:none;cursor:default}
.game-home{position:fixed;z-index:11;top:16px;right:16px;padding:10px 14px;border:1px solid #c9ff39;background:#0a0a0a;color:#c9ff39;text-decoration:none;font:700 12px Arial,sans-serif;letter-spacing:1px}
@media(max-width:600px){.game-home{top:10px;right:10px;padding:8px 10px;font-size:10px}.site-return{top:10px;left:10px;padding:8px 10px;font-size:11px}}

/* Keep navigation outside the playable 16:9 scene, including phone landscape. */
body{padding:60px 8px 16px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
.site-return,.game-home{top:12px;min-height:34px;padding:8px 12px;border:1px solid #494949;border-radius:0;background:#111;color:#efefea;box-shadow:none;font:700 11px/18px 'Microsoft YaHei',sans-serif;letter-spacing:0}
.site-return{left:12px}.game-home{right:12px;color:#c9ff39;border-color:#7b972f}
.site-return:hover,.game-home:hover{background:#c9ff39;color:#080808}
.site-return:focus-visible,.game-home:focus-visible{outline:2px solid #c9ff39;outline-offset:3px}
#wrap{height:100%;background:transparent}
#stage{position:relative;inset:auto;flex:none;width:min(calc(100vw - 16px),calc((100svh - 76px) * 16 / 9));height:auto;aspect-ratio:16/9;max-width:none;max-height:none;margin:auto;border-radius:2px}
#game{width:100%;height:100%;aspect-ratio:16/9;box-shadow:none}
#stage>.hint{bottom:5px;max-width:96%;white-space:normal;text-align:center;font-size:10px;line-height:1.4;padding:3px 8px;letter-spacing:0}
.start-inner{padding:8px}.start-inner .title{font-size:40px;letter-spacing:4px;margin-bottom:2px}.start-inner .sub{font-size:13px;letter-spacing:3px;margin-bottom:10px}.start-inner .time{font-size:15px;letter-spacing:2px;margin-bottom:12px}.start-inner .hint{font-size:10px;margin-top:10px;letter-spacing:0}.start-inner .btn-main{font-size:14px;padding:8px 20px;letter-spacing:1px}
@media(max-width:600px),(max-height:600px){
 #inspect-panel{position:fixed;inset:56px 8px 8px;overflow:auto;align-items:center;z-index:30}
 .inspect-box{width:min(400px,100%);max-height:100%;overflow:auto;padding:12px}
 #inspect-canvas{max-width:100%;width:160px;height:120px;margin:0 auto 8px}
 .inspect-title{margin-bottom:6px}.inspect-desc{font-size:12px;min-height:0;margin-bottom:8px}
 .inspect-btns{gap:6px;flex-wrap:wrap;justify-content:center}.inspect-btns button{padding:7px 12px!important;font-size:12px!important}
 .ending-title{font-size:24px;margin-bottom:14px}.ending-text{font-size:13px;margin-bottom:10px}
}
@media(max-width:400px){.start-inner .title{font-size:26px}.start-inner .sub{font-size:10px;margin-bottom:6px}.start-inner .time{font-size:12px;margin-bottom:8px}.start-inner .hint{font-size:8px;margin-top:7px}.start-inner .btn-main{font-size:12px;padding:6px 16px}}
