:root { color-scheme: light; background: #e2d4be; }
* { box-sizing: border-box; }
html, body { width: 100%; height: 100%; margin: 0; overflow: hidden; overscroll-behavior: none; }
body {
  display: grid;
  place-items: center;
  height: 100vh;
  height: 100dvh;
  padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
  font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
#game { position: relative; width: 360px; height: 640px; flex: none; overflow: hidden; touch-action: none; }
canvas { display: block; width: 100%; height: 100%; touch-action: none; outline: none; }
/* Visible buttons, including their focus rings, are drawn on the canvas.
   A native button supplies keyboard activation and an accessible name. */
#action {
  position: absolute;
  left: 22.222222%;
  top: 55.9375%;
  width: 55.555556%;
  height: 9.6875%;
  padding: 0;
  border: 0;
  opacity: 0;
  cursor: pointer;
  touch-action: manipulation;
}
#action[hidden] { display: none; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
noscript { position: fixed; inset: 40% 10%; color: #4a382e; background: #f3e5cf; text-align: center; }


/* RETAKE polish */
canvas {
  filter: drop-shadow(0 10px 22px rgba(74, 56, 46, 0.12));
}
