:root{color-scheme:dark;font-family:"PingFang SC","Microsoft YaHei",sans-serif;background:#171c1b;color:#e8dfc5}*{box-sizing:border-box}body{margin:0;min-height:100dvh;display:flex;align-items:center;flex-direction:column;background:radial-gradient(ellipse at 50% 45%,#34392e,#171c1b 75%);overflow-x:hidden}.host-bar{width:min(100%,760px);height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;flex-shrink:0;font-size:12px;gap:14px}.host-bar a{color:inherit;text-decoration:none}.host-bar button,#load-retry{font:inherit;background:none;color:#eacb75;border:1px solid #777a61;border-radius:2px;padding:6px 12px;cursor:pointer}.game-stage{position:relative;width:min(calc((100dvh - 78px)*390/844),100vw,540px);aspect-ratio:390/844;flex-shrink:0;background:#252b25;box-shadow:0 20px 60px #0d120a70}canvas{position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none;user-select:none;outline:none}canvas:focus-visible{outline:2px solid #edcb75;outline-offset:-2px}.host-notice{margin:8px 12px 12px;font-size:10px;line-height:1.7;max-width:540px;color:#afbaa7;text-align:center}.load-status{position:absolute;inset:0;background:#202820;display:grid;place-items:center;text-align:center;padding:36px;line-height:1.9;font-size:14px}.load-status[hidden],button[hidden]{display:none}.loading-stamp{display:inline-block;color:#dcb65f;border:3px double currentColor;padding:8px 20px;font-size:27px;font-weight:900;transform:rotate(-7deg);margin-bottom:16px}.load-status[data-state=loading] .loading-stamp{animation:breathe 1.8s ease-in-out infinite}.load-status[data-state=error] .loading-stamp{color:#e68b69}.load-status p{max-width:320px}.host-bar a:focus-visible,button:focus-visible{outline:2px solid #edcb75;outline-offset:3px}@keyframes breathe{50%{opacity:.5}}@media(max-width:450px){.host-bar{height:34px;font-size:10px}.game-stage{width:min(calc((100dvh - 68px)*390/844),100vw)}.host-notice{font-size:9px;margin-top:5px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important}}:fullscreen .host-bar{display:none}:fullscreen .game-stage{width:min(calc(100dvh*390/844),100vw)}:fullscreen .host-notice{display:none}
