*{box-sizing:border-box}body{background:var(--color-background);min-height:100vh;color:var(--color-text);font-family:var(--font-family);margin:0}a{color:var(--color-accent)}main{max-width:960px;margin:0 auto;padding:24px 16px 48px}body[data-view=midway]{flex-direction:column;height:100vh;display:flex;overflow:hidden}body[data-view=midway] main{flex:1;width:100%;max-width:none;min-height:0;padding:0;position:relative}.midway{position:absolute;inset:0}.midway-map{touch-action:none;width:100%;height:100%;display:block}.midway-help,.booth-card{border:2px solid var(--color-accent);border-radius:var(--radius);background:color-mix(in srgb, var(--color-background) 88%, transparent);margin:0;position:absolute}.midway-help{max-width:340px;color:var(--color-muted);padding:10px 14px;font-size:14px;line-height:1.7;bottom:16px;left:16px}kbd{background:var(--color-surface);color:var(--color-text);border-radius:4px;padding:1px 6px;font-family:inherit;font-weight:700}.blimp-link{border:2px solid var(--color-accent);border-radius:var(--radius);background:var(--color-background);color:var(--color-accent);white-space:nowrap;padding:6px 12px;font-size:13px;font-weight:700;position:absolute;top:16px;left:50%;transform:translate(-50%)}.blimp-link:not(:focus){clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.booth-card{width:min(360px,100% - 32px);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-accent) 25%, transparent);padding:16px 20px;bottom:16px;left:50%;transform:translate(-50%)}.booth-card[hidden]{display:none}.booth-card.closed{border-color:var(--color-muted);box-shadow:none}.booth-card h2{margin:0 0 6px}.booth-card .description{color:var(--color-muted);margin:0 0 10px}.booth-card .best{margin:0 0 12px;font-weight:700}.booth-card .best:empty{display:none}.play{border-radius:var(--radius);background:var(--color-accent);color:var(--color-background);padding:8px 20px;font-weight:700;text-decoration:none;display:inline-block}.play[hidden]{display:none}@media (width<=720px){.midway-help{display:none}}.game-header{flex-wrap:wrap;align-items:baseline;gap:8px 24px;margin-bottom:16px;display:flex}.game-header h1{margin:0}.game canvas{border-radius:var(--radius);cursor:crosshair;touch-action:none;width:100%;height:auto;display:block}
