:root{color-scheme:dark;font-family:system-ui,sans-serif;background:#101a17;color:#efe9d8}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at top,#294432,#101a17 70%)}[hidden]{display:none!important}#entry{width:min(420px,94vw);padding:32px;background:#17271fee;border:2px solid #6f8055;box-shadow:0 12px 50px #0008}.version{color:#bdc998;font-size:12px;letter-spacing:2px}h1{font-size:30px;margin:12px 0}.intro{color:#bbc2b2;font-size:14px;margin-bottom:28px}label{display:block;font-size:14px;margin:14px 0}input,select{display:block;width:100%;margin-top:7px;padding:11px;background:#101b16;border:1px solid #63735b;color:inherit;font:inherit}input:focus,select:focus,button:focus-visible{outline:2px solid #d1c17b;outline-offset:2px}button{min-height:40px;cursor:pointer;padding:10px 18px;background:#d0bd7d;color:#19251c;border:0;font:inherit;font-weight:600}form>button,#ready>button{width:100%;margin-top:10px}.secondary{background:#324735;color:#eee8d3;border:1px solid #63735b}button:disabled{opacity:.5;cursor:wait}#status{font-size:14px;min-height:20px;color:#e4bd92}#game{width:100%;text-align:center}#toolbar{display:flex;align-items:center;gap:10px;padding:10px;max-width:1280px;margin:auto;font-size:14px}#toolbar span{margin-right:auto}#toolbar button{font-size:12px;min-height:32px;padding:6px 10px}#viewport{width:min(100vw,1280px,calc((100vh - 100px)*16/9));aspect-ratio:16/9;margin:auto;background:#080d0a}canvas{width:100%;height:100%;display:block;image-rendering:pixelated}#loading{color:#bdc998;font-size:14px}#viewport:fullscreen{width:100vw;height:100vh;display:grid;place-items:center}#viewport:fullscreen canvas{width:min(100vw,calc(100vh*16/9));height:auto;aspect-ratio:16/9}
/* Fit the render surface to the available screen instead of shrinking a fixed 1280px HUD. */
body.playing{display:block;min-height:0;overflow:hidden}#game{height:100vh;height:100dvh;display:flex;flex-direction:column;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#toolbar{width:100%;flex:none;flex-wrap:wrap}#toolbar button{min-height:44px}#viewport{flex:1;min-height:0;width:100%;max-width:1280px;aspect-ratio:auto}canvas{touch-action:none}#loading:empty{display:none}#game.expanded,#game:fullscreen{position:fixed;inset:0;z-index:10;background:#101a17;width:100%;height:100vh;height:100dvh}#game.expanded #viewport,#game:fullscreen #viewport{max-width:none}@media(max-width:600px){#entry{padding:22px}input,select{font-size:16px}#toolbar{gap:6px;padding:6px}#toolbar span{font-size:12px}#viewport{max-width:none}}
/* Tall desktop windows keep the landscape world framing; short/mobile screens still use their available height. */
@media(min-width:1024px){#game{justify-content:center}#toolbar,#viewport{margin:0 auto}#viewport{max-height:min(720px,56.25vw)}#game.expanded #viewport,#game:fullscreen #viewport{max-height:56.25vw}}
/* HTML 채팅 독: 브라우저 IME로 한글 조합, Unity 패널과 무관하게 열림 유지 */
#chat{position:relative;flex:none;width:100%;max-width:1280px;margin:0 auto;padding:4px 8px;text-align:left;font-size:13px;z-index:2}#game.expanded #chat,#game:fullscreen #chat{max-width:none}#chat-log{position:absolute;left:8px;bottom:100%;width:min(380px,calc(100% - 16px));max-height:6.6em;overflow-y:auto;padding:4px 6px;background:#0009;color:#fff;line-height:1.3;text-shadow:1px 1px #000;word-break:break-all}#chat-log:empty{display:none}#chat-log.idle{opacity:0;pointer-events:none;transition:opacity .6s}#chat-row{display:flex;gap:4px;max-width:520px}#chat-input{flex:1;min-width:0;margin:0;padding:6px 8px;background:#101b16e6;font-size:16px}#chat-row button{min-height:36px;padding:4px 10px;font-size:13px}

/* Safari browser bars and IME change the visible viewport independently of 100vh. */
body.playing #game{position:fixed;inset:auto;top:var(--game-top,0px);left:var(--game-left,0px);width:var(--game-width,100%);height:var(--game-height,100dvh)}
