/* Chat messenger v75 — one authoritative geometry and a readable messenger UI. */

html .game-screen #chatPanel.chat-panel.chat-messenger,
html .game-screen #chatPanel.chat-panel.chat-messenger * {
  box-sizing: border-box;
}

html .game-screen #chatPanel.chat-panel.chat-messenger {
  --chat75-accent: #168fda;
  --chat75-accent-strong: #0579c7;
  --chat75-ink: #173f57;
  --chat75-copy: #456a7d;
  --chat75-muted: #7893a2;
  --chat75-line: #d4e5ec;
  --chat75-panel: rgba(250, 253, 254, var(--chat-opacity, .96));
  --chat75-card: #ffffff;
  --chat75-soft: #f1f7f9;
  --chat75-hover: #edf6f9;
  isolation: isolate !important;
  z-index: 92 !important;
  display: grid !important;
  grid-template-rows: 64px 52px minmax(0, 1fr) !important;
  gap: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--chat75-line) 88%, white) !important;
  border-radius: 22px !important;
  background: var(--chat75-panel) !important;
  color: var(--chat75-ink) !important;
  box-shadow: 0 24px 64px rgba(5, 36, 52, .25), 0 2px 9px rgba(5, 36, 52, .1), inset 0 1px rgba(255, 255, 255, .9) !important;
  backdrop-filter: blur(19px) saturate(1.08) !important;
  transform: none !important;
  font-family: var(--ui-font, "Onest PokePark", "Segoe UI", system-ui, sans-serif) !important;
}

html[data-game-theme="dark"] .game-screen #chatPanel.chat-panel.chat-messenger {
  --chat75-ink: #e6f2f6;
  --chat75-copy: #b5ccd6;
  --chat75-muted: #819eaa;
  --chat75-line: #2b5060;
  --chat75-panel: rgba(10, 38, 50, var(--chat-opacity, .96));
  --chat75-card: #102f3c;
  --chat75-soft: #123745;
  --chat75-hover: #174453;
  box-shadow: 0 27px 72px rgba(0, 18, 28, .48), inset 0 1px rgba(255, 255, 255, .06) !important;
}

html .game-screen #chatPanel.chat-no-blur { backdrop-filter: none !important; }

html .game-screen #chatPanel > .chat-head {
  position: relative !important;
  z-index: 12 !important;
  grid-row: 1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 64px !important;
  padding: 9px 11px 9px 16px !important;
  border: 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--chat75-line) 76%, transparent) !important;
  border-radius: 0 !important;
  background: color-mix(in srgb, var(--chat75-card) 78%, transparent) !important;
  cursor: grab !important;
  touch-action: none !important;
}

html .game-screen #chatPanel.is-adjusting[data-adjusting="move"] > .chat-head { cursor: grabbing !important; }
html .game-screen #chatPanel.is-adjusting[data-adjusting="resize"],
html .game-screen #chatPanel.is-adjusting[data-adjusting="resize"] * { cursor: nwse-resize !important; }

html .game-screen #chatPanel .chat-title-copy {
  display: grid !important;
  gap: 3px !important;
  min-width: 0 !important;
}

html .game-screen #chatPanel .chat-title-copy > b {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  color: var(--chat75-ink) !important;
  font-size: 16px !important;
  font-weight: 820 !important;
  line-height: 1.1 !important;
  letter-spacing: -.015em !important;
}

html .game-screen #chatPanel .chat-title-icon {
  display: grid !important;
  place-items: center !important;
  width: 27px !important;
  height: 27px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--chat75-accent) !important;
  box-shadow: none !important;
}

html .game-screen #chatPanel .chat-title-icon .ui-icon { width: 23px !important; height: 23px !important; }

html .game-screen #chatPanel .chat-title-copy > small {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 0 0 36px !important;
  color: var(--chat75-muted) !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html .game-screen #chatPanel .chat-title-copy > small > i {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #37c979 !important;
  box-shadow: 0 0 0 3px rgba(55, 201, 121, .12) !important;
}

html .game-screen #chatPanel .chat-head-actions {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

html .game-screen #chatPanel .chat-head-actions > button {
  display: grid !important;
  place-items: center !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--chat75-copy) !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: background .15s ease, color .15s ease, transform .12s ease !important;
}

html .game-screen #chatPanel .chat-head-actions > button:hover {
  border-color: color-mix(in srgb, var(--chat75-line) 75%, transparent) !important;
  background: var(--chat75-hover) !important;
  color: var(--chat75-accent-strong) !important;
}

html .game-screen #chatPanel .chat-head-actions > button:active { transform: scale(.94) !important; }
html .game-screen #chatPanel .chat-head-actions .ui-icon { width: 19px !important; height: 19px !important; }

html .game-screen #chatPanel .chat-head-search {
  position: absolute !important;
  z-index: 4 !important;
  inset: 9px 151px 9px 14px !important;
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr) 34px !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 220px !important;
  padding: 0 4px 0 12px !important;
  border: 1px solid color-mix(in srgb, var(--chat75-accent) 30%, var(--chat75-line)) !important;
  border-radius: 14px !important;
  background: var(--chat75-card) !important;
  box-shadow: 0 7px 22px rgba(7, 48, 66, .1) !important;
}

html .game-screen #chatPanel .chat-head-search[hidden] { display: none !important; }
html .game-screen #chatPanel .chat-head-search > span { color: var(--chat75-accent) !important; }
html .game-screen #chatPanel .chat-head-search input {
  min-width: 0 !important;
  height: 42px !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: var(--chat75-ink) !important;
  font: inherit !important;
  font-size: 13px !important;
}
html .game-screen #chatPanel .chat-head-search input::placeholder { color: var(--chat75-muted) !important; }
html .game-screen #chatPanel .chat-head-search button {
  display: grid !important;
  place-items: center !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: var(--chat75-muted) !important;
}

html .game-screen #chatPanel > .chat-tabs {
  position: relative !important;
  z-index: 8 !important;
  grid-row: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: center !important;
  gap: 4px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 6px 10px 7px !important;
  overflow: visible !important;
  border: 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--chat75-line) 68%, transparent) !important;
  border-radius: 0 !important;
  background: color-mix(in srgb, var(--chat75-card) 48%, transparent) !important;
}

html .game-screen #chatPanel > .chat-tabs > button {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-width: 0 !important;
  min-height: 38px !important;
  padding: 0 9px !important;
  border: 1px solid transparent !important;
  border-radius: 11px !important;
  background: transparent !important;
  color: var(--chat75-muted) !important;
  font-size: 11px !important;
  font-weight: 760 !important;
  box-shadow: none !important;
}

html .game-screen #chatPanel > .chat-tabs > button:hover { background: var(--chat75-hover) !important; color: var(--chat75-copy) !important; }
html .game-screen #chatPanel > .chat-tabs > button.is-active {
  border-color: color-mix(in srgb, var(--chat75-accent) 22%, var(--chat75-line)) !important;
  background: color-mix(in srgb, var(--chat75-accent) 10%, var(--chat75-card)) !important;
  color: var(--chat75-accent-strong) !important;
}
html .game-screen #chatPanel .chat-tab-icon { display: grid !important; width: 19px !important; height: 19px !important; }
html .game-screen #chatPanel .chat-tab-icon .ui-icon { width: 18px !important; height: 18px !important; }

html .game-screen #chatPanel > .chat-messenger-layout {
  position: relative !important;
  z-index: 2 !important;
  grid-row: 3 !important;
  display: grid !important;
  grid-template-columns: minmax(340px, 1fr) clamp(168px, 27%, 220px) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html .game-screen #chatPanel .chat-conversation {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-right: 1px solid color-mix(in srgb, var(--chat75-line) 72%, transparent) !important;
  background: color-mix(in srgb, var(--chat75-card) 34%, transparent) !important;
}

html .game-screen #chatPanel .chat-log-wrap { position: relative !important; min-height: 0 !important; overflow: hidden !important; }
html .game-screen #chatPanel .chat-log {
  height: 100% !important;
  min-height: 0 !important;
  padding: 12px 12px 18px !important;
  overflow: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: color-mix(in srgb, var(--chat75-muted) 35%, transparent) transparent !important;
}

html .game-screen #chatPanel .chat-message {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) 28px !important;
  align-items: start !important;
  gap: 9px !important;
  width: 100% !important;
  margin: 0 0 3px !important;
  padding: 8px 8px !important;
  border: 1px solid transparent !important;
  border-radius: 13px !important;
  background: transparent !important;
  color: var(--chat75-ink) !important;
}

html .game-screen #chatPanel .chat-message:hover {
  border-color: color-mix(in srgb, var(--chat75-line) 60%, transparent) !important;
  background: color-mix(in srgb, var(--chat75-hover) 68%, transparent) !important;
}
html .game-screen #chatPanel .chat-message.is-self { background: color-mix(in srgb, var(--chat75-accent) 5%, transparent) !important; }
html .game-screen #chatPanel .chat-message.is-system {
  grid-template-columns: 32px minmax(0, 1fr) !important;
  margin: 3px 0 6px !important;
  border-color: color-mix(in srgb, var(--chat75-line) 68%, transparent) !important;
  background: var(--chat75-soft) !important;
}
html .game-screen #chatPanel .chat-message-avatar { width: 38px !important; height: 38px !important; }
html .game-screen #chatPanel .chat-message-avatar.is-system { width: 32px !important; height: 32px !important; }
html .game-screen #chatPanel .chat-message-body { display: grid !important; gap: 3px !important; min-width: 0 !important; }
html .game-screen #chatPanel .chat-message-meta { display: flex !important; align-items: center !important; gap: 7px !important; min-height: 18px !important; }
html .game-screen #chatPanel .chat-author-button,
html .game-screen #chatPanel .chat-message-meta > b {
  color: var(--chat75-ink) !important;
  font-size: 12px !important;
  font-weight: 820 !important;
}
html .game-screen #chatPanel .chat-message-meta time,
html .game-screen #chatPanel .chat-message-meta small { color: var(--chat75-muted) !important; font-size: 9px !important; font-weight: 620 !important; }
html .game-screen #chatPanel .chat-message p {
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-wrap: anywhere !important;
  color: var(--chat75-copy) !important;
  font-size: var(--chat-font-size, 14px) !important;
  font-weight: 520 !important;
  line-height: 1.46 !important;
  letter-spacing: -.006em !important;
}
html .game-screen #chatPanel .chat-message-more { width: 28px !important; height: 28px !important; color: var(--chat75-muted) !important; }

html .game-screen #chatPanel .chat-inline-sticker {
  display: grid !important;
  grid-template-rows: 92px auto !important;
  justify-items: center !important;
  width: min(150px, 100%) !important;
  margin: 5px 0 2px !important;
  padding: 8px 10px 7px !important;
  border: 1px solid color-mix(in srgb, var(--chat75-accent) 16%, var(--chat75-line)) !important;
  border-radius: 18px !important;
  background: color-mix(in srgb, var(--chat75-accent) 5%, var(--chat75-card)) !important;
}
html .game-screen #chatPanel .chat-inline-sticker img { width: 92px !important; height: 92px !important; object-fit: contain !important; }
html .game-screen #chatPanel .chat-inline-sticker small { color: var(--chat75-copy) !important; font-size: 10px !important; font-weight: 750 !important; }

html .game-screen #chatPanel #chatForm {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) 46px !important;
  align-items: end !important;
  gap: 5px !important;
  min-width: 0 !important;
  min-height: 60px !important;
  margin: 0 10px 10px !important;
  padding: 7px !important;
  border: 1px solid color-mix(in srgb, var(--chat75-line) 90%, transparent) !important;
  border-radius: 17px !important;
  background: var(--chat75-card) !important;
  box-shadow: 0 7px 20px rgba(9, 49, 66, .07) !important;
}
html .game-screen #chatPanel #chatForm[hidden] { display: none !important; }
html .game-screen #chatPanel #chatForm:focus-within {
  border-color: color-mix(in srgb, var(--chat75-accent) 52%, var(--chat75-line)) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--chat75-accent) 9%, transparent), 0 7px 20px rgba(9, 49, 66, .07) !important;
}
html .game-screen #chatPanel #chatForm textarea {
  min-width: 0 !important;
  min-height: 44px !important;
  max-height: 96px !important;
  padding: 11px 7px 8px !important;
  resize: none !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: var(--chat75-ink) !important;
  font: inherit !important;
  font-size: 13px !important;
  line-height: 1.38 !important;
}
html .game-screen #chatPanel #chatForm textarea::placeholder { color: var(--chat75-muted) !important; opacity: .9 !important; }
html .game-screen #chatPanel .chat-composer-tool {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 44px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: var(--chat75-soft) !important;
  color: var(--chat75-copy) !important;
}
html .game-screen #chatPanel .chat-composer-tool:hover,
html .game-screen #chatPanel .chat-composer-tool[aria-expanded="true"] { background: color-mix(in srgb, var(--chat75-accent) 11%, var(--chat75-card)) !important; color: var(--chat75-accent) !important; }
html .game-screen #chatPanel .chat-composer-tool .ui-icon { width: 21px !important; height: 21px !important; }
html .game-screen #chatPanel .chat-send-button {
  display: grid !important;
  place-items: center !important;
  width: 46px !important;
  height: 46px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: linear-gradient(150deg, #31a9ee, #087fd0) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(12, 128, 207, .25) !important;
}
html .game-screen #chatPanel .chat-send-button:hover { filter: brightness(1.05) !important; transform: translateY(-1px) !important; }
html .game-screen #chatPanel .chat-send-button .ui-icon { width: 21px !important; height: 21px !important; }

html .game-screen #chatPanel .chat-online-sidebar {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 10px 9px !important;
  overflow: hidden !important;
  background: color-mix(in srgb, var(--chat75-soft) 64%, transparent) !important;
}
html .game-screen #chatPanel .chat-online-sidebar > header { min-height: 46px !important; padding: 5px 6px 9px !important; }
html .game-screen #chatPanel .chat-online-sidebar > header b { color: var(--chat75-copy) !important; font-size: 11px !important; font-weight: 790 !important; }
html .game-screen #chatPanel .chat-online-sidebar > header small { color: #2eaa69 !important; }
html .game-screen #chatPanel .chat-online-list { min-height: 0 !important; padding: 0 !important; overflow: auto !important; }
html .game-screen #chatPanel .chat-online-player {
  grid-template-columns: 35px minmax(0, 1fr) 8px !important;
  gap: 8px !important;
  min-height: 52px !important;
  padding: 7px 6px !important;
  border-radius: 12px !important;
}
html .game-screen #chatPanel .chat-online-player:hover { background: var(--chat75-hover) !important; }
html .game-screen #chatPanel .chat-online-player .chat-player-avatar { width: 35px !important; height: 35px !important; }
html .game-screen #chatPanel .chat-online-player b { color: var(--chat75-copy) !important; font-size: 10px !important; }
html .game-screen #chatPanel .chat-online-player small { color: var(--chat75-muted) !important; font-size: 8px !important; line-height: 1.25 !important; }

html .game-screen #chatPanel > .chat-config {
  position: absolute !important;
  z-index: 60 !important;
  top: 58px !important;
  right: 10px !important;
  display: none !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  width: min(340px, calc(100% - 20px)) !important;
  max-height: calc(100% - 72px) !important;
  margin: 0 !important;
  padding: 15px !important;
  overflow: auto !important;
  border: 1px solid var(--chat75-line) !important;
  border-radius: 17px !important;
  background: color-mix(in srgb, var(--chat75-card) 97%, transparent) !important;
  box-shadow: 0 20px 48px rgba(5, 34, 49, .25) !important;
}
html .game-screen #chatPanel > .chat-config.is-open { display: grid !important; }
html .game-screen #chatPanel > .chat-config > label { display: grid !important; gap: 6px !important; min-width: 0 !important; color: var(--chat75-copy) !important; }
html .game-screen #chatPanel > .chat-config > label > span { font-size: 11px !important; font-weight: 720 !important; }
html .game-screen #chatPanel > .chat-config .chat-check { grid-template-columns: 18px minmax(0, 1fr) !important; align-items: center !important; }
html .game-screen #chatPanel > .chat-config fieldset { border-color: var(--chat75-line) !important; border-radius: 13px !important; }
html .game-screen #chatPanel > .chat-config button[data-reset-chat] {
  min-height: 40px !important;
  border: 1px solid color-mix(in srgb, #df6257 30%, var(--chat75-line)) !important;
  border-radius: 12px !important;
  background: color-mix(in srgb, #df6257 7%, var(--chat75-card)) !important;
  color: #c64d49 !important;
  font-size: 10px !important;
  font-weight: 780 !important;
}

html .game-screen #chatPanel > .chat-emoji-panel {
  position: absolute !important;
  z-index: 72 !important;
  left: 10px !important;
  bottom: 78px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: 56px 52px minmax(0, 1fr) !important;
  align-items: stretch !important;
  width: min(430px, calc(100% - 30px)) !important;
  height: min(390px, calc(100% - 144px)) !important;
  min-height: 270px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--chat75-line) !important;
  border-radius: 18px !important;
  background: color-mix(in srgb, var(--chat75-card) 98%, transparent) !important;
  color: var(--chat75-ink) !important;
  box-shadow: 0 20px 52px rgba(3, 28, 42, .3) !important;
}
html .game-screen #chatPanel > .chat-emoji-panel[hidden] { display: none !important; }
html .game-screen #chatPanel > .chat-emoji-panel > .chat-media-head,
html .game-screen #chatPanel > .chat-emoji-panel > .chat-emoji-categories,
html .game-screen #chatPanel > .chat-emoji-panel > .chat-emoji-grid {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  min-width: 0 !important;
}
html .game-screen #chatPanel .chat-media-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 56px !important;
  padding: 8px 9px 8px 15px !important;
  border-bottom: 1px solid color-mix(in srgb, var(--chat75-line) 75%, transparent) !important;
  background: color-mix(in srgb, var(--chat75-soft) 48%, transparent) !important;
}
html .game-screen #chatPanel .chat-media-head > span { display: grid !important; gap: 2px !important; min-width: 0 !important; }
html .game-screen #chatPanel .chat-media-head b { color: var(--chat75-ink) !important; font-size: 12px !important; font-weight: 800 !important; }
html .game-screen #chatPanel .chat-media-head small { color: var(--chat75-muted) !important; font-size: 8px !important; font-weight: 650 !important; }
html .game-screen #chatPanel .chat-media-tabs {
  display: grid !important;
  grid-template-columns: repeat(2, auto) !important;
  gap: 3px !important;
  padding: 3px !important;
  border: 1px solid var(--chat75-line) !important;
  border-radius: 11px !important;
  background: var(--chat75-card) !important;
}
html .game-screen #chatPanel .chat-media-tabs button {
  min-width: 68px !important;
  height: 32px !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--chat75-muted) !important;
  font-size: 9px !important;
  font-weight: 760 !important;
}
html .game-screen #chatPanel .chat-media-tabs button.is-active { background: color-mix(in srgb, var(--chat75-accent) 11%, var(--chat75-card)) !important; color: var(--chat75-accent-strong) !important; }

html .game-screen #chatPanel .chat-emoji-categories {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-width: 0 !important;
  padding: 6px 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  border-bottom: 1px solid color-mix(in srgb, var(--chat75-line) 65%, transparent) !important;
  background: transparent !important;
  scrollbar-width: none !important;
}
html .game-screen #chatPanel .chat-emoji-categories::-webkit-scrollbar { display: none !important; }
html .game-screen #chatPanel .chat-emoji-categories > button {
  position: relative !important;
  flex: 0 0 auto !important;
  display: grid !important;
  grid-template-columns: 24px auto !important;
  place-items: center start !important;
  gap: 6px !important;
  width: auto !important;
  min-width: 42px !important;
  height: 38px !important;
  padding: 0 10px !important;
  border: 1px solid transparent !important;
  border-radius: 11px !important;
  background: transparent !important;
  color: var(--chat75-muted) !important;
  font-size: 18px !important;
}
html .game-screen #chatPanel .chat-emoji-categories > button > span { display: grid !important; place-items: center !important; width: 24px !important; height: 24px !important; }
html .game-screen #chatPanel .chat-emoji-categories > button > b { display: block !important; color: inherit !important; font-size: 9px !important; font-weight: 740 !important; white-space: nowrap !important; }
html .game-screen #chatPanel .chat-emoji-categories > button > i { position: absolute !important; top: 2px !important; right: 3px !important; font-size: 8px !important; font-style: normal !important; }
html .game-screen #chatPanel .chat-emoji-categories > button:hover { background: var(--chat75-hover) !important; }
html .game-screen #chatPanel .chat-emoji-categories > button.is-active { border-color: color-mix(in srgb, var(--chat75-accent) 25%, var(--chat75-line)) !important; background: color-mix(in srgb, var(--chat75-accent) 9%, var(--chat75-card)) !important; color: var(--chat75-accent-strong) !important; }
html .game-screen #chatPanel .chat-emoji-categories > button.is-locked { opacity: .72 !important; }

html .game-screen #chatPanel .chat-emoji-grid {
  display: grid !important;
  grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  align-content: start !important;
  gap: 4px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 10px !important;
  overflow: auto !important;
  background: transparent !important;
}
html .game-screen #chatPanel .chat-emoji-grid > button:not(.chat-sticker-button) {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 42px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: transparent !important;
  font-size: 23px !important;
  line-height: 1 !important;
}
html .game-screen #chatPanel .chat-emoji-grid > button:not(.chat-sticker-button):hover { background: var(--chat75-hover) !important; transform: scale(1.07) !important; }
html .game-screen #chatPanel .chat-emoji-grid.is-sticker-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: minmax(118px, auto) !important;
  align-items: stretch !important;
  gap: 8px !important;
}
html .game-screen #chatPanel .chat-sticker-button {
  display: grid !important;
  grid-template-rows: minmax(78px, 1fr) auto !important;
  justify-items: center !important;
  gap: 4px !important;
  min-width: 0 !important;
  min-height: 118px !important;
  padding: 7px 5px !important;
  border: 1px solid color-mix(in srgb, var(--chat75-line) 80%, transparent) !important;
  border-radius: 14px !important;
  background: color-mix(in srgb, var(--chat75-soft) 66%, transparent) !important;
  color: var(--chat75-copy) !important;
}
html .game-screen #chatPanel .chat-sticker-button:hover { border-color: color-mix(in srgb, var(--chat75-accent) 32%, var(--chat75-line)) !important; background: color-mix(in srgb, var(--chat75-accent) 7%, var(--chat75-card)) !important; transform: translateY(-2px) !important; }
html .game-screen #chatPanel .chat-sticker-button img { width: 82px !important; height: 82px !important; object-fit: contain !important; }
html .game-screen #chatPanel .chat-sticker-button span { overflow: hidden !important; max-width: 100% !important; color: inherit !important; font-size: 9px !important; font-weight: 730 !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
html .game-screen #chatPanel .chat-pack-locked {
  grid-column: 1 / -1 !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  gap: 8px !important;
  min-height: 100% !important;
  padding: 20px !important;
  color: var(--chat75-copy) !important;
  text-align: center !important;
}
html .game-screen #chatPanel .chat-pack-locked > span { font-size: 34px !important; color: var(--chat75-accent) !important; }
html .game-screen #chatPanel .chat-pack-locked > b { font-size: 14px !important; }
html .game-screen #chatPanel .chat-pack-locked > p { max-width: 270px !important; margin: 0 !important; color: var(--chat75-muted) !important; font-size: 10px !important; line-height: 1.45 !important; }
html .game-screen #chatPanel .chat-pack-locked > button { min-height: 39px !important; padding: 0 15px !important; border: 1px solid color-mix(in srgb, var(--chat75-accent) 30%, var(--chat75-line)) !important; border-radius: 11px !important; background: color-mix(in srgb, var(--chat75-accent) 9%, var(--chat75-card)) !important; color: var(--chat75-accent-strong) !important; font-size: 10px !important; font-weight: 780 !important; }

html .game-screen #chatPanel > .chat-resize {
  position: absolute !important;
  z-index: 90 !important;
  right: 2px !important;
  bottom: 2px !important;
  display: grid !important;
  place-items: end !important;
  width: 38px !important;
  height: 38px !important;
  padding: 9px 6px 5px 9px !important;
  border: 0 !important;
  border-radius: 0 0 19px 0 !important;
  background: linear-gradient(135deg, transparent 48%, color-mix(in srgb, var(--chat75-muted) 38%, transparent) 49%, transparent 51%) !important;
  color: var(--chat75-muted) !important;
  opacity: .72 !important;
  cursor: nwse-resize !important;
  touch-action: none !important;
}
html .game-screen #chatPanel > .chat-resize::before,
html .game-screen #chatPanel > .chat-resize::after { display: none !important; content: none !important; }
html .game-screen #chatPanel > .chat-resize .ui-icon { width: 18px !important; height: 18px !important; transform: none !important; }
html .game-screen #chatPanel > .chat-resize:hover { opacity: 1 !important; color: var(--chat75-accent) !important; }

@media (min-width: 761px) {
  html .game-screen #chatPanel.chat-panel.chat-messenger:not(.is-minimized) {
    position: absolute !important;
    left: var(--chat-x, 18px) !important;
    top: var(--chat-y, calc(100% - 632px)) !important;
    right: auto !important;
    bottom: auto !important;
    width: var(--chat-width, min(720px, calc(100% - 36px))) !important;
    height: var(--chat-height, min(620px, calc(100% - 36px))) !important;
    min-width: 560px !important;
    min-height: 460px !important;
    max-width: none !important;
    max-height: none !important;
  }

  html .game-screen #chatPanel.chat-panel.chat-messenger.is-minimized {
    position: absolute !important;
    left: max(18px, env(safe-area-inset-left)) !important;
    top: auto !important;
    right: auto !important;
    bottom: max(18px, env(safe-area-inset-bottom)) !important;
    display: grid !important;
    grid-template-rows: 1fr !important;
    width: clamp(340px, 25vw, 410px) !important;
    min-width: 340px !important;
    max-width: 410px !important;
    height: 62px !important;
    min-height: 62px !important;
    max-height: 62px !important;
    padding: 0 !important;
    border-radius: 18px !important;
  }
  html .game-screen #chatPanel.is-minimized > .chat-head { grid-row: 1 !important; min-height: 60px !important; padding: 8px 10px 8px 14px !important; border: 0 !important; }
  html .game-screen #chatPanel.is-minimized .chat-title-copy > small { margin-left: 36px !important; font-size: 9px !important; }
  html .game-screen #chatPanel.is-minimized .chat-head-actions > [data-chat-search-toggle],
  html .game-screen #chatPanel.is-minimized .chat-head-actions > [data-toggle-chat-settings],
  html .game-screen #chatPanel.is-minimized .chat-head-actions > [data-close-chat] { display: none !important; }
  html .game-screen #chatPanel.is-minimized .chat-head-actions > .chat-minimize { display: grid !important; }
  html .game-screen #chatPanel.is-minimized > :not(.chat-head) { display: none !important; }
}

@media (min-width: 761px) and (max-width: 1050px) {
  html .game-screen #chatPanel.chat-panel.chat-messenger:not(.is-minimized) { min-width: 520px !important; }
  html .game-screen #chatPanel > .chat-messenger-layout { grid-template-columns: minmax(330px, 1fr) 170px !important; }
  html .game-screen #chatPanel .chat-online-player { grid-template-columns: 31px minmax(0, 1fr) 7px !important; gap: 6px !important; }
  html .game-screen #chatPanel .chat-online-player .chat-player-avatar { width: 31px !important; height: 31px !important; }
}

@media (max-width: 760px) {
  html .game-screen #chatPanel.chat-panel.chat-messenger {
    position: absolute !important;
    top: max(8px, env(safe-area-inset-top)) !important;
    right: max(8px, env(safe-area-inset-right)) !important;
    bottom: calc(92px + env(safe-area-inset-bottom)) !important;
    left: max(8px, env(safe-area-inset-left)) !important;
    grid-template-rows: 58px 50px minmax(0, 1fr) !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    border-radius: 20px !important;
  }
  html .game-screen #chatPanel.chat-panel.chat-messenger:not(.is-open) { transform: translateY(calc(100% + 120px)) !important; pointer-events: none !important; }
  html .game-screen #chatPanel > .chat-head { min-height: 58px !important; padding: 7px 8px 7px 12px !important; }
  html .game-screen #chatPanel .chat-title-copy > b { font-size: 14px !important; }
  html .game-screen #chatPanel .chat-title-copy > small { margin-left: 34px !important; font-size: 8px !important; }
  html .game-screen #chatPanel .chat-head-actions > button { width: 38px !important; height: 38px !important; }
  html .game-screen #chatPanel .chat-head-actions [data-toggle-chat-settings] { display: none !important; }
  html .game-screen #chatPanel .chat-head-search { inset: 7px 98px 7px 9px !important; min-width: 0 !important; }
  html .game-screen #chatPanel > .chat-tabs { padding: 5px 7px 6px !important; }
  html .game-screen #chatPanel > .chat-tabs > button { min-height: 38px !important; padding: 0 5px !important; font-size: 9px !important; }
  html .game-screen #chatPanel .chat-tab-icon { display: none !important; }
  html .game-screen #chatPanel > .chat-messenger-layout { grid-template-columns: minmax(0, 1fr) !important; }
  html .game-screen #chatPanel .chat-conversation { border-right: 0 !important; }
  html .game-screen #chatPanel .chat-online-sidebar { display: none !important; }
  html .game-screen #chatPanel .chat-log { padding: 9px 8px 14px !important; }
  html .game-screen #chatPanel .chat-message { grid-template-columns: 34px minmax(0, 1fr) !important; gap: 8px !important; padding: 7px 6px !important; }
  html .game-screen #chatPanel .chat-message-avatar { width: 34px !important; height: 34px !important; }
  html .game-screen #chatPanel .chat-message-more { display: none !important; }
  html .game-screen #chatPanel .chat-message p { font-size: max(12px, var(--chat-font-size, 14px)) !important; }
  html .game-screen #chatPanel #chatForm { grid-template-columns: 40px minmax(0, 1fr) 44px !important; min-height: 58px !important; margin: 0 7px 7px !important; }
  html .game-screen #chatPanel > .chat-emoji-panel {
    right: 7px !important;
    bottom: 70px !important;
    left: 7px !important;
    width: auto !important;
    height: min(47dvh, 410px) !important;
    min-height: 270px !important;
  }
  html .game-screen #chatPanel .chat-media-head { grid-template-columns: minmax(0, 1fr) auto !important; padding-left: 11px !important; }
  html .game-screen #chatPanel .chat-media-tabs button { min-width: 58px !important; padding: 0 7px !important; }
  html .game-screen #chatPanel .chat-emoji-categories > button > b { display: none !important; }
  html .game-screen #chatPanel .chat-emoji-categories > button { grid-template-columns: 24px !important; min-width: 38px !important; padding: 0 7px !important; }
  html .game-screen #chatPanel .chat-emoji-grid { grid-template-columns: repeat(7, minmax(0, 1fr)) !important; gap: 3px !important; padding: 7px !important; }
  html .game-screen #chatPanel .chat-emoji-grid > button:not(.chat-sticker-button) { height: 38px !important; font-size: 21px !important; }
  html .game-screen #chatPanel .chat-emoji-grid.is-sticker-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(104px, auto) !important;
  }
  html .game-screen #chatPanel .chat-sticker-button { min-height: 104px !important; }
  html .game-screen #chatPanel .chat-sticker-button img { width: 70px !important; height: 70px !important; }
  html .game-screen #chatPanel > .chat-config { top: 56px !important; right: 7px !important; left: 7px !important; width: auto !important; max-height: calc(100% - 64px) !important; }
  html .game-screen #chatPanel > .chat-resize { display: none !important; }
}

@media (max-width: 380px) {
  html .game-screen #chatPanel.chat-panel.chat-messenger { right: 5px !important; bottom: calc(86px + env(safe-area-inset-bottom)) !important; left: 5px !important; }
  html .game-screen #chatPanel .chat-title-copy > small { display: none !important; }
  html .game-screen #chatPanel .chat-title-copy > b { font-size: 13px !important; }
  html .game-screen #chatPanel .chat-head-actions > button { width: 36px !important; height: 36px !important; }
  html .game-screen #chatPanel > .chat-tabs > button { font-size: 8px !important; }
  html .game-screen #chatPanel .chat-media-head { grid-template-columns: 1fr !important; min-height: 82px !important; gap: 5px !important; }
  html .game-screen #chatPanel .chat-media-tabs { width: 100% !important; grid-template-columns: repeat(2, 1fr) !important; }
  html .game-screen #chatPanel > .chat-emoji-panel { grid-template-rows: 82px 48px minmax(0, 1fr) !important; }
  html .game-screen #chatPanel .chat-emoji-grid { grid-template-columns: repeat(6, minmax(0, 1fr)) !important; }
  html .game-screen #chatPanel .chat-emoji-grid.is-sticker-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (prefers-reduced-motion: reduce) {
  html .game-screen #chatPanel.chat-panel.chat-messenger,
  html .game-screen #chatPanel.chat-panel.chat-messenger * { transition: none !important; animation: none !important; }
}
