body { background: #1b1b2f; color: #fff; font-family: system-ui, sans-serif; text-align: center; margin: 0; padding: 8px; }
h1 { margin: 6px; font-size: 24px; }
canvas { width: min(960px, 98vw); background: #eee; border: 4px solid #fff; display: block; margin: 8px auto; image-rendering: pixelated; }
button { background: #e94560; color: #fff; border: 0; border-radius: 8px; padding: 8px 14px; margin: 3px; font-size: 15px; cursor: pointer; }
button.on { outline: 3px solid #ffd93d; }
button.alt { background: #3a3a5c; }
input, textarea { padding: 6px; border-radius: 6px; border: 0; }
textarea { width: min(600px, 90vw); height: 50px; }
#panel { max-width: 960px; margin: auto; }
.map { display: inline-block; background: #2a2a45; border-radius: 10px; padding: 10px; margin: 5px; }
