:root {
  --echo-bg: #09090b;
  --echo-wall: #1a1528;
  --echo-wall-glow: #8b6cff;
  --echo-fragment: #4cc9f0;
  --echo-power: #fbbf24;
}

.game-board-wrapper {
  position: relative;
  background: var(--echo-bg);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
  overflow: hidden;
}

#game-canvas {
  display: block;
  outline: none;
}

.game-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(12, 12, 14, 0.85);
  backdrop-filter: blur(4px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 10;
  transition: opacity 0.3s;
}

.game-overlay.hidden {
  opacity: 0;
  pointer-events: none;
}

.game-overlay h2 {
  font-size: 2.5rem;
  margin-bottom: 8px;
  color: var(--echo-wall-glow);
  text-shadow: 0 0 20px rgba(139, 108, 255, 0.4);
}

.game-overlay p {
  color: var(--text-muted);
  margin-bottom: 24px;
}


@media (max-width: 800px) {
  #game-canvas {
    width: 100%;
    height: auto;
  }
}


/* INSTÄLLNING - Global Mobile Fallback Fix */
html, body {
    overflow-x: hidden !important;
    max-width: 100vw;
}
@media (max-width: 800px) {
    canvas, .game-canvas, #game-container, #game-stage, #app {
        max-width: 100% !important;
        height: auto;
    }
    .panel, .sidebar, .menu, #ui, #overlay {
        max-width: 100% !important;
        box-sizing: border-box;
    }
}
