:root{--bg:#e8f7fb;--ink:#0d3b66;--accent:#ff5c7a}
*{box-sizing:border-box}
body{margin:0;padding:8px;font-family:system-ui,sans-serif;background:var(--bg);color:var(--ink);text-align:center}
h1{font-size:1.4rem;margin:6px 0}
#hud{display:flex;gap:16px;justify-content:center;font-weight:700;font-size:1.1rem;margin:4px 0}
#stage{width:100%;max-width:1000px;height:62vh;min-height:320px;margin:0 auto;border:4px solid #fff;border-radius:16px;box-shadow:0 6px 20px #0d3b6633;overflow:hidden}
#stage canvas{display:block;width:100%;height:100%;touch-action:none}
#bar{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:10px 0}
button{font:inherit;font-weight:600;min-height:44px;padding:10px 14px;border:0;border-radius:12px;background:var(--accent);color:#fff;cursor:pointer}
#msg{min-height:1.5em;margin:4px;font-weight:600}
.hint{font-size:.85rem;opacity:.75}
