.new-game-confirm {
  width: min(440px, calc(100% - 32px)); max-height: calc(100dvh - 32px);
  box-sizing: border-box; overflow: auto; padding: 20px;
  border: 2px solid #88e0d0; border-radius: 12px; background: #142b23; color: #f3f7f4;
  font: 16px/1.5 system-ui, sans-serif; touch-action: pan-y;
}
.new-game-confirm::backdrop { background: #05070dcc; }
.new-game-confirm header, .new-game-confirm footer {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.new-game-confirm h2 { font-size: 24px; line-height: 1.2; margin: 0; }
.new-game-confirm p { color: #ffc7cc; }
.new-game-confirm button {
  min-height: 48px; padding: 10px 16px; border: 1px solid #88e0d0; border-radius: 8px;
  font: 700 16px system-ui, sans-serif; background: #9fd9cc; color: #142b23;
  cursor: pointer; touch-action: manipulation;
}
.new-game-confirm [data-close] { min-width: 44px; padding: 4px; background: transparent; color: #fff; }
.new-game-confirm label { display: flex; align-items: center; gap: 12px; min-height: 48px; margin: 18px 0; cursor: pointer; }
.new-game-confirm input { flex: 0 0 24px; width: 24px; height: 24px; accent-color: #9fd9cc; }
.new-game-confirm footer { justify-content: flex-end; flex-wrap: wrap; }
.new-game-confirm [data-confirm] { background: #a93246; border-color: #f995a4; color: #fff; }
.new-game-confirm button:disabled { opacity: .4; cursor: not-allowed; }
.new-game-confirm :focus-visible { outline: 3px solid #ffd166; outline-offset: 3px; }
