.town-page{padding-block:36px 70px;min-width:0}.town-back,.town-eyebrow,.town-help{color:var(--text-3,#9aa7ba)}.town-back{display:inline-block;margin-bottom:24px}.town-head h1{font-size:clamp(30px,5vw,52px);margin:12px 0}.town-head p{max-width:64ch;line-height:1.8}.town-pill{display:inline-block;padding:5px 14px;border:1px solid var(--line-2,#435269);border-radius:24px;margin-top:12px}.town-game{position:relative;max-width:820px;margin:28px auto 0;padding:18px;background:var(--surface,#132133);border:1px solid var(--line,#435269);border-radius:12px;color:var(--text,#e6edf8)}.town-page .corner{position:absolute;width:14px;height:14px;border:0 solid var(--line-2,#435269);pointer-events:none}.town-page .corner--tl{top:7px;left:7px;border-top-width:1px;border-left-width:1px}.town-page .corner--br{bottom:7px;right:7px;border-bottom-width:1px;border-right-width:1px}.town-hud{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:4px 0 12px;font-variant-numeric:tabular-nums}.town-stage{position:relative;display:flex;align-items:center;justify-content:center;height:clamp(220px,48vw,400px);overflow:hidden;background:#192635;border:1px solid var(--line,#435269)}#town-canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;max-width:none}.town-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.town-game button{cursor:pointer;border:1px solid var(--line-2,#435269);border-radius:6px;padding:8px 12px;background:var(--bg,#0d1827);color:inherit;font:inherit;min-height:40px}.town-game button:hover{border-color:var(--cyan,#65d9ee)}.town-game button:focus-visible,#town-canvas:focus-visible{outline:2px solid var(--cyan,#65d9ee);outline-offset:2px}.town-controls{display:flex;align-items:center;gap:16px;margin-top:12px}.town-controls>span{font-size:12px;color:var(--text-3,#9aa7ba)}.town-pad{display:grid;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,42px);gap:3px;touch-action:none}.town-pad button{padding:0;user-select:none;-webkit-user-select:none}.town-pad button:first-child{grid-column:2}.town-pad button:nth-child(2){grid-column:1;grid-row:2}.town-pad button:nth-child(3){grid-column:2;grid-row:2}.town-pad button:nth-child(4){grid-column:3;grid-row:2}.town-game .town-a{border-radius:50%;width:62px;height:62px;font-weight:bold;font-size:20px;touch-action:manipulation}.town-a small{display:block;font-size:10px}.town-help{max-width:820px;margin:16px auto;line-height:1.8;font-size:13px}.town-panel{border-top:1px solid var(--line,#435269);padding:12px;line-height:1.8}.town-panel ul{padding-left:20px}.town-dialog{position:absolute;bottom:8px;left:8px;right:8px;max-height:95%;overflow:auto;background:var(--bg,#0d1827);border:2px solid var(--cyan,#65d9ee);padding:14px;z-index:3;box-shadow:0 8px 30px #0006}.town-dialog p{margin:10px 0;line-height:1.8}.town-dialog button{margin:4px}#town-status{font-size:12px;color:var(--text-2,#b3c0d1);min-height:18px}.town-fs-exit{display:none;position:absolute;right:calc(8px + env(safe-area-inset-right));top:calc(8px + env(safe-area-inset-top));z-index:5}.town-game [hidden]{display:none!important}html.town-pseudo-fs,html.town-pseudo-fs body{overflow:hidden}html.town-pseudo-fs .nav,html.town-pseudo-fs .bg-grid,html.town-pseudo-fs .town-head,html.town-pseudo-fs .town-back,html.town-pseudo-fs .town-help{display:none!important}html.town-pseudo-fs .town-game,.town-game:fullscreen{position:fixed;inset:0;z-index:1000;max-width:none;margin:0;border:0;border-radius:0;height:100dvh;box-sizing:border-box;padding:calc(50px + env(safe-area-inset-top)) 12px calc(8px + env(safe-area-inset-bottom));display:flex;flex-direction:column;background:var(--bg,#0d1827)}html.town-pseudo-fs .town-stage,.town-game:fullscreen .town-stage{flex:1;min-height:80px;height:auto}html.town-pseudo-fs .town-fs-exit,.town-game:fullscreen .town-fs-exit{display:block}html.town-pseudo-fs .town-panel,.town-game:fullscreen .town-panel{max-height:100px;overflow:auto}@media(max-width:480px){.town-game{padding:10px}.town-hud{font-size:12px}.town-actions{gap:5px}.town-game button{font-size:13px}.town-controls>span{max-width:100px}}@media(orientation:landscape) and (max-height:600px){html.town-pseudo-fs .town-game,.town-game:fullscreen{display:grid;grid-template-columns:145px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;padding:10px;gap:8px}.town-game:fullscreen .town-stage,html.town-pseudo-fs .town-stage{grid-column:2;grid-row:1/4;height:100%}.town-game:fullscreen .town-controls,html.town-pseudo-fs .town-controls{flex-wrap:wrap;gap:4px}.town-game:fullscreen .town-hud,html.town-pseudo-fs .town-hud{padding-top:30px}.town-game:fullscreen .town-actions,html.town-pseudo-fs .town-actions{margin:0;max-height:110px;overflow:auto}.town-game:fullscreen #town-status,html.town-pseudo-fs #town-status{display:none}}
