/* Public media-save deterrence. This is UI protection, not DRM. */
img,
picture,
svg,
canvas,
[data-protect-image] {
  -webkit-touch-callout: none !important;
  -webkit-user-select: none !important;
  user-select: none !important;
}
img {
  -webkit-user-drag: none !important;
  user-drag: none !important;
}

/* v20260906_0742: game interaction lock — disable blue text selection/long-press callout. */
html, body, body * {
  -webkit-user-select: none !important;
  user-select: none !important;
  -webkit-touch-callout: none !important;
}
input, textarea,
[contenteditable="true"], [contenteditable="true"] *,
[contenteditable="plaintext-only"], [contenteditable="plaintext-only"] * {
  -webkit-user-select: text !important;
  user-select: text !important;
  -webkit-touch-callout: default !important;
}

/* v20260906_0742: mobile text-entry exception. Game text stays locked, but account/nickname fields must be fully tappable/editable. */
input, textarea, select,
[contenteditable="true"], [contenteditable="plaintext-only"],
.player-nickname-input, #playerNicknameInput, #playerPasswordInput {
  pointer-events: auto !important;
  -webkit-user-select: text !important;
  user-select: text !important;
  -webkit-touch-callout: default !important;
  touch-action: manipulation !important;
}
#playerProfileBtn, .player-profile-pill,
.player-nickname-overlay, .player-nickname-card, .player-nickname-field, .player-nickname-input-row {
  pointer-events: auto !important;
}

/* v20260906_0742: the complete account dialog is outside the interaction lock. */
.player-nickname-overlay,
.player-nickname-overlay * {
  pointer-events: auto !important;
  -webkit-touch-callout: default !important;
}
.player-nickname-overlay input,
.player-nickname-overlay textarea,
#playerNicknameInput,
#playerPasswordInput {
  -webkit-user-select: text !important;
  user-select: text !important;
  touch-action: auto !important;
}
.player-nickname-overlay button,
#playerProfileBtn {
  touch-action: manipulation !important;
}
