/* ===========================
   Global Variables
   =========================== */

:root {
  --color-bg-page: #f4f4f4;
  --color-grid-dot: #e2e2e2;

  --color-text-main: #111;
  --color-panel-bg: #ffffff;
  --color-panel-border: #000000;

  --color-button-bg: #ffffff;
  --color-button-border: #000000;
  --color-button-shadow: #b5b5b5;

  --font-pixel: "Press Start 2P", "VT323", monospace, system-ui;

  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 12px;
  --space-lg: 16px;
  --space-xl: 24px;
  --space-2xl: 32px;

  --game-max-width: 960px;
  --game-aspect-ratio: 16 / 9;
}

/* ===========================
   Page Background
   =========================== */

body {
  margin: 0;
  padding: 0;
  font-family: var(--font-pixel);
  background-color: var(--color-bg-page);

  /* Dot-grid background (like mockups) */
  background-image:
    radial-gradient(circle at 1px 1px, var(--color-grid-dot) 1px, transparent 0);
  background-size: 8px 8px;
}

/* Make pixel art crisp */
img,
canvas {
  image-rendering: pixelated;
}

/* ===========================
   Game Shell & Screen
   =========================== */

.game-shell {
  max-width: var(--game-max-width);
  margin: 0 auto;
  padding: var(--space-xl) var(--space-lg);
}

.game-screen {
  position: relative;
  background-color: var(--color-panel-bg);
  border: 4px solid var(--color-panel-border);
  aspect-ratio: var(--game-aspect-ratio);
  overflow: hidden;
}

/* ===========================
   Start Screen / Overlays
   =========================== */

.round-overlay {
  position: absolute;
  inset: 0;
  background: rgba(244, 244, 244, 0.95);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl);
  box-sizing: border-box;
}

.round-card {
  background: var(--color-panel-bg);
  border: 4px solid var(--color-panel-border);
  box-shadow: 4px 4px 0 var(--color-panel-border);
  padding: var(--space-xl);
  width: 90%;
  max-width: 500px;
  text-align: center;
}

.round-card__title {
  font-size: 20px;
  margin-bottom: var(--space-xl);
  letter-spacing: 2px;
}

/* ===========================
   Start Button
   =========================== */

.btn-start-round {
  margin: var(--space-xl) auto 0;
  padding: var(--space-md) var(--space-2xl);
  background: var(--color-button-bg);
  font-family: var(--font-pixel);
  font-size: 14px;
  border: 4px solid var(--color-button-border);
  box-shadow: 4px 4px 0 var(--color-button-shadow);
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.btn-start-round:active {
  transform: translate(2px, 2px);
  box-shadow: 2px 2px 0 var(--color-button-shadow);
}

/* ===========================
   Game Canvas
   =========================== */

.game-canvas {
  width: 100%;
  height: 100%;
  display: block;
}
