html,
body {
  margin: 0;
  padding: 0;
  height: 100%;
  font: 12px "Times New Roman", Tahoma, Arial, sans-serif;
  color: #ffffff;
  background: #000033;
}

button,
input,
select {
  font: 12px Tahoma, Verdana, Arial, sans-serif;
}

img {
  border: 0;
}

.xc-login-page {
  height: 100vh;
  background: #c66900;
  color: #474747;
  font: 11px Tahoma, Verdana, Arial, sans-serif;
}

.xc-login-top {
  width: 100%;
  height: 60px;
  border-collapse: collapse;
}

.xc-login-top img {
  display: block;
}

.xc-login-fill {
  background: url("/old/iii/bg_second.gif") repeat-x left top;
}

.xc-login-main {
  width: 100%;
  border-collapse: collapse;
}

.xc-login-left {
  width: 246px;
  vertical-align: top;
  background: #f5f5f5;
}

.xc-login-left img {
  display: block;
}

.xc-login-content {
  background: #ffffff;
  vertical-align: top;
  padding: 25px;
}

.xc-login-title {
  margin: 0 0 14px;
  color: #993300;
  font-size: 18px;
}

.xc-login-box {
  width: 390px;
  background: #fff7e4;
  border: 1px solid #d0a060;
}

.xc-login-head {
  height: 22px;
  line-height: 22px;
  padding-left: 8px;
  background: #c66900;
  color: #ffffff;
  font-weight: bold;
}

.xc-login-body {
  padding: 12px;
}

.xc-row {
  margin-bottom: 8px;
}

.xc-row label {
  display: inline-block;
  width: 70px;
  font-weight: bold;
}

.xc-row input {
  width: 235px;
  height: 20px;
  border: 1px solid #999999;
}

.xc-button {
  height: 22px;
  padding: 0 18px;
  border: 1px solid #884400;
  background: #e1a04b;
  color: #3a1b00;
  cursor: pointer;
  font-weight: bold;
}

/* === XCHAT REAL ROOM LOOK === */

.xc-room {
  height: 100vh;
  min-width: 820px;
  background:
    url("../img/bgchat.gif") repeat,
    #020436;
  overflow: hidden;
}

.xc-room-frame {
  height: 100%;
  padding: 5px 4px 4px 4px;
  box-sizing: border-box;
  display: grid;
  grid-template-rows: 64px 1fr 50px 20px;
  gap: 3px;
}

.xc-top-strip {
  display: grid;
  grid-template-columns: 185px 1fr 220px;
  gap: 4px;
  min-height: 64px;
}

.xc-logo-box {
  overflow: hidden;
  border: 1px solid #5d83d9;
  background:
    url("/old/designes/rozmova4/img/header.gif") repeat-x,
    #02023b;
  display: flex;
  align-items: center;
  justify-content: center;
}

.xc-logo-box img {
  max-width: 165px;
  max-height: 52px;
}

.xc-girls {
  border: 1px solid #5d83d9;
  background: #f4f4f4;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

.xc-girl {
  background:
    linear-gradient(135deg, #ffffff, #d8d8d8);
  border-right: 1px solid #c7c7c7;
  position: relative;
}

.xc-girl::after {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 50% 50% 44% 44%;
  background:
    radial-gradient(circle at 50% 28%, #ffe3cf 0 20%, transparent 21%),
    radial-gradient(circle at 50% 42%, #b56b43 0 23%, transparent 24%),
    linear-gradient(#ececec, #cfcfcf);
  opacity: .85;
}

.xc-girls-text {
  position: absolute;
  z-index: 2;
  right: 16px;
  top: 11px;
  color: #0000ff;
  font: 20px Arial, sans-serif;
  background: rgba(255,255,255,.75);
  padding: 4px 8px;
}

.xc-private-box {
  border: 2px solid #b7b7b7;
  background: #1b1b39;
  color: #ffff00;
  padding: 8px;
  box-sizing: border-box;
  font: 12px Tahoma, Arial, sans-serif;
}

.xc-private-title {
  color: #ffff00;
  margin-bottom: 14px;
}

.xc-main-zone {
  display: grid;
  grid-template-columns: 1fr 230px;
  gap: 4px;
  min-height: 0;
}

.xc-chat-window {
  border: 2px solid #5d83d9;
  background:
    url("../img/chatbg.gif") repeat,
    #000000;
  overflow-y: auto;
  padding: 8px 10px;
  box-sizing: border-box;
  color: #00ffff;
  line-height: 18px;
  font: 16px "Times New Roman", serif;
}

.xc-chat-window::-webkit-scrollbar,
.xc-users-list::-webkit-scrollbar {
  width: 16px;
}

.xc-chat-window::-webkit-scrollbar-track,
.xc-users-list::-webkit-scrollbar-track {
  background: #00004a;
}

.xc-chat-window::-webkit-scrollbar-thumb,
.xc-users-list::-webkit-scrollbar-thumb {
  background: #bfc9ff;
  border: 2px solid #00004a;
}

.xc-line {
  margin: 0;
  padding: 0;
}

.xc-time {
  color: #cccccc;
}

.xc-nick {
  color: #ffcc00;
  font-weight: bold;
  cursor: pointer;
  text-decoration: underline;
}

.xc-msg-blue {
  color: #00ccff;
}

.xc-msg-cyan {
  color: #00ffff;
}

.xc-msg-pink {
  color: #ff00ff;
}

.xc-msg-orange {
  color: #ff9900;
}

.xc-msg-green {
  color: #00ff00;
}

.xc-sys {
  color: #ffcc00;
  font-style: italic;
}

.xc-act {
  color: #00ff66;
  font-style: italic;
}

.xc-priv {
  color: #ff66ff;
}

.xc-side {
  border: 1px solid #5d83d9;
  background:
    url("../img/bgchat.gif") repeat,
    #050543;
  color: #ffffff;
  display: grid;
  grid-template-rows: 42px 32px 50px 1fr;
  min-height: 0;
}

.xc-photo-toggle {
  text-align: center;
  padding-top: 8px;
  color: #ffffff;
  text-decoration: underline;
}

.xc-room-info {
  text-align: center;
  font: 15px "Times New Roman", serif;
  line-height: 18px;
  color: #ffffff;
}

.xc-room-info b {
  color: #00ffff;
}

.xc-alphabet {
  text-align: center;
  color: #66ff99;
  letter-spacing: 8px;
  font: 16px "Times New Roman", serif;
}

.xc-users-list {
  overflow-y: auto;
  padding: 2px 7px;
  box-sizing: border-box;
}

.xc-user {
  display: grid;
  grid-template-columns: 1fr 34px 16px;
  gap: 4px;
  align-items: center;
  min-height: 18px;
  color: #00ffff;
  cursor: pointer;
  font: 16px "Times New Roman", serif;
}

.xc-user:hover .xc-user-name {
  color: #ffff00;
}

.xc-user-name {
  color: #00ffff;
  text-decoration: underline;
}

.xc-user.me .xc-user-name {
  color: #66ff66;
}

.xc-user-gender {
  color: #00ff00;
  font-size: 14px;
}

.xc-star {
  color: #ff9900;
}

.xc-bottom {
  display: grid;
  grid-template-columns: 28px 94px 96px 1fr 112px 22px 22px 22px 44px 22px 22px;
  gap: 4px;
  align-items: center;
  min-height: 48px;
}

.xc-square {
  height: 23px;
  border: 1px solid #8bb6ff;
  background: #4779be;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font: bold 14px Arial, sans-serif;
}

.xc-say-select,
.xc-style-select {
  height: 23px;
  background: #071332;
  color: #66ff99;
  border: 1px solid #8bb6ff;
}

.xc-mini-input {
  height: 23px;
  background: #000000;
  color: #ffffff;
  border: 1px solid #8bb6ff;
  box-sizing: border-box;
}

.xc-message-input {
  height: 23px;
  background: #000000;
  color: #ffffff;
  border: 1px solid #8bb6ff;
  box-sizing: border-box;
  padding: 2px 5px;
}

.xc-send-btn {
  height: 23px;
  border: 1px solid #8bb6ff;
  background: #4779be;
  color: #ffffff;
  font: bold 12px Arial, sans-serif;
  cursor: pointer;
}

.xc-footer-menu {
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: #ffffff;
  font: 14px "Times New Roman", serif;
}

.xc-footer-menu label {
  display: flex;
  align-items: center;
  gap: 3px;
}

.xc-footer-menu input {
  width: 13px;
  height: 13px;
}

.xc-footer-menu span,
.xc-footer-menu a,
.xc-footer-menu label span {
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.15s, text-shadow 0.15s;
}

.xc-footer-menu span:hover,
.xc-footer-menu a:hover,
.xc-footer-menu label:hover span {
  color: #ffff00;
  text-shadow: 0 0 6px rgba(255, 255, 0, 0.5), 0 0 12px rgba(255, 200, 0, 0.3);
  text-decoration: underline;
  cursor: pointer;
}

.xc-target {
  position: fixed;
  left: 150px;
  bottom: 58px;
  display: none;
  background: #10104d;
  border: 1px solid #8bb6ff;
  color: #ffff00;
  padding: 3px 9px;
  z-index: 5;
}

.xc-target.on {
  display: block;
}

.xc-target.private {
  background: #55003a;
  color: #ffffff;
}


/* real top logo / no fake girls block */
.xc-logo-box {
  background: url("../img/bgchat.gif") repeat, #020436 !important;
}

.xc-logo-box img {
  max-width: 176px !important;
  max-height: 58px !important;
}

.xc-top-empty {
  border: 1px solid #5d83d9;
  background: url("../img/bgchat.gif") repeat, #020436;
  min-height: 64px;
}

.xc-girls,
.xc-girl,
.xc-girls-text {
  display: none !important;
}


/* old XChat gender colors from screenshot */
.xc-user.male .xc-user-name {
  color: #67ea91 !important;
}

.xc-user.female .xc-user-name {
  color: #c281ad !important;
}

.xc-user:hover .xc-user-name {
  color: #ffff00 !important;
}


/* original action select colors */
.xc-say-select option {
  background: #071332;
}

.xc-say-select {
  color: #ffffff;
}


/* old XChat board window */
.xc-board-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 20, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
}

.xc-board-modal.hidden {
  display: none;
}

.xc-board-window {
  width: 720px;
  height: 520px;
  border: 2px solid #5d83d9;
  background: url("../img/bgchat.gif") repeat, #020436;
  box-shadow: 0 0 0 1px #000, 0 0 18px #000;
}

.xc-board-title {
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 4px 0 8px;
  box-sizing: border-box;
  background: #000033;
  color: #66ffff;
  font: bold 14px "Times New Roman", serif;
  border-bottom: 1px solid #5d83d9;
}

.xc-board-title button {
  width: 24px;
  height: 19px;
  padding: 0;
  border: 1px solid #77aaff;
  background: #000;
  color: #ffffff;
  font: bold 11px Arial, sans-serif;
  cursor: pointer;
}

#boardFrame {
  width: 100%;
  height: calc(100% - 24px);
  border: 0;
  background: #000033;
}


/* native old2 XBoard, copied from old visual logic */
.xc-board-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 20, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
}

.xc-board-modal.hidden {
  display: none !important;
}

.xc-board-window {
  width: 535px !important;
  height: auto !important;
  max-height: 92vh;
  border: 2px solid #5d83d9;
  background: url("../img/chatbg.gif") repeat, #000000;
  box-shadow: 0 0 0 1px #000, 0 0 18px #000;
  overflow: hidden;
}

.xc-board-title {
  height: 23px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 4px 0 8px;
  box-sizing: border-box;
  background: #000033;
  color: #66ffff;
  font: bold 13px Verdana, Arial, sans-serif;
  border-bottom: 1px solid #5d83d9;
}

.xc-board-title button {
  width: 24px;
  height: 19px;
  padding: 0;
  border: 1px solid #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font: bold 11px Arial, sans-serif;
  cursor: pointer;
}

.xc-board-body {
  max-height: calc(92vh - 23px);
  overflow-y: auto;
  padding: 15px 5px;
  box-sizing: border-box;
  background: url("../img/chatbg.gif") repeat, #000000;
  color: #C0C0C0;
  font-family: Verdana, Arial, sans-serif;
  font-size: 8pt;
}

.xc-board-body table {
  font-family: Verdana, Arial, sans-serif;
  font-size: 8pt;
}

.xboard-black2 {
  border: solid 1px #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font-size: 9pt;
  font-family: Verdana, Arial, sans-serif;
}

.xboard-black1 {
  border: solid 1px #3d4976;
  background: #0b1920;
  color: #C0C0C0;
  font-size: 8pt;
  font-family: Verdana, Arial, sans-serif;
  cursor: pointer;
}

.xboard-item {
  margin: 0 0 2px 0;
  color: #C0C0C0;
  font-family: Verdana, Arial, sans-serif;
  font-size: 8pt;
  line-height: 1.35;
}

.xboard-delete {
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.xboard-delete img {
  vertical-align: middle;
}

#boardFrame {
  display: none !important;
}


/* make native board modal impossible to hide when opened */
.xc-board-modal:not(.hidden) {
  display: flex !important;
}


/* XChat Reborn native board remake */
.xboard-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 20, 0.45);
}

.xboard-modal.hidden {
  display: none !important;
}

.xboard-window {
  width: 535px;
  max-height: 92vh;
  background: url("../img/chatbg.gif") repeat #000000;
  border: 2px solid #5d83d9;
  box-shadow: 0 0 0 1px #000000, 0 0 18px #000000;
  overflow: hidden;
}

.xboard-window-title {
  height: 23px;
  background: #000033;
  color: #66ffff;
  border-bottom: 1px solid #5d83d9;
  box-sizing: border-box;
  padding: 0 4px 0 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font: bold 13px Verdana, Arial, sans-serif;
}

.xboard-window-title button {
  width: 24px;
  height: 19px;
  padding: 0;
  border: solid 1px #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font: bold 11px Arial, sans-serif;
  cursor: pointer;
}

.xboard-scroll {
  max-height: calc(92vh - 23px);
  overflow-y: auto;
  padding: 15px 5px;
  box-sizing: border-box;
  background: url("../img/chatbg.gif") repeat #000000;
  color: #C0C0C0;
  font-family: Verdana, Arial, sans-serif;
  font-size: 8pt;
}

.xboard-scroll table,
.xboard-scroll td,
.xboard-scroll p {
  color: #C0C0C0;
  font-family: Verdana, Arial, sans-serif;
  font-size: 8pt;
}

.xboard-black2 {
  border: solid 1px #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font-size: 9pt;
  font-family: Verdana, Arial, sans-serif;
}

.xboard-black1 {
  border: solid 1px #3d4976;
  background: #0b1920;
  color: #C0C0C0;
  font-size: 8pt;
  font-family: Verdana, Arial, sans-serif;
  cursor: pointer;
}

.xboard-message {
  margin: 0;
  line-height: 1.35;
}

.xboard-trash {
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

/* XBoard resize */
.xboard-window {
  position: relative;
  min-width: 360px;
  min-height: 260px;
  resize: both;
}

.xboard-window[style*="height"] .xboard-scroll {
  height: calc(100% - 23px);
  max-height: none;
}

.xboard-resize-grip {
  position: absolute;
  right: 2px;
  bottom: 2px;
  width: 14px;
  height: 14px;
  cursor: nwse-resize;
  background:
    linear-gradient(135deg, transparent 0 45%, #5d83d9 46% 55%, transparent 56%),
    linear-gradient(135deg, transparent 0 62%, #5d83d9 63% 72%, transparent 73%);
  opacity: 0.9;
}

body.xboard-resizing {
  user-select: none;
  cursor: nwse-resize !important;
}

/* XBoard draggable old window behavior */
.xboard-window-title {
  cursor: move;
  user-select: none;
}

.xboard-window-title button {
  cursor: pointer;
}

body.xboard-dragging {
  user-select: none;
  cursor: move !important;
}

.xboard-modal {
  pointer-events: auto;
}

.xboard-window {
  pointer-events: auto;
}

/* remove fake cyan separator lines: they were not in the original */
.xc-topbar,
.xc-top-strip,
.xc-header,
.xc-header-row,
.xc-main,
.xc-main-grid,
.xc-chat-wrap,
.xc-chat-frame,
.xc-chat-area,
.xc-right-panel,
.xc-left-panel,
.xc-users-panel,
.xc-bottom,
.xc-bottom-bar,
.xc-footer,
.xc-footer-menu,
.xc-midline,
.xc-toolbar,
.xc-subtoolbar,
.xc-room-title,
.xc-topic-row,
.xc-online-header,
.xc-status-panel,
.xc-panel,
.xc-box,
.xc-window,
.xc-window-inner,
.xc-window-body,
.xc-window-footer,
.xc-splitline,
.xc-divider {
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* also kill accidental horizontal pseudo-lines */
.xc-topbar::before,
.xc-topbar::after,
.xc-header::before,
.xc-header::after,
.xc-main::before,
.xc-main::after,
.xc-bottom::before,
.xc-bottom::after,
.xc-footer::before,
.xc-footer::after,
.xc-footer-menu::before,
.xc-footer-menu::after,
.xc-toolbar::before,
.xc-toolbar::after,
.xc-chat-wrap::before,
.xc-chat-wrap::after,
.xc-users-panel::before,
.xc-users-panel::after {
  display: none !important;
  content: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* keep controls intact */
input,
select,
textarea,
button {
  box-shadow: none;
}

/* remove remake-only blue borders from room layout */
.xc-room,
.xc-room-frame,
.xc-top-strip,
.xc-logo-box,
.xc-top-empty,
.xc-private-box,
.xc-main-zone,
.xc-chat-window,
.xc-side,
.xc-side-top,
.xc-room-info,
.xc-users,
.xc-user-list,
.xc-bottom,
.xc-footer-menu {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* remove blue separator lines between big old-chat zones */
.xc-top-strip > *,
.xc-main-zone > *,
.xc-bottom > *,
.xc-footer-menu > * {
  border-color: transparent !important;
  box-shadow: none !important;
}

/* keep only tiny old control borders */
.xc-bottom input,
.xc-bottom select,
.xc-bottom button,
.xc-footer-menu input,
.xc-footer-menu select,
.xc-footer-menu button,
.xboard-black1,
.xboard-black2 {
  border: 1px solid #3d4976 !important;
}

/* remove accidental 1px blue lines from layout edges */
.xc-room * {
  outline-color: transparent !important;
}

.xc-chat-window {
  border-right: 0 !important;
  border-bottom: 0 !important;
}

.xc-side {
  border-left: 0 !important;
}

.xc-top-strip {
  border-bottom: 0 !important;
}

.xc-bottom {
  border-top: 0 !important;
}

/* restore proper old-school separators, but dark and neat */
.xc-chat-window {
  border: 1px solid #324a8a !important;
  box-shadow: inset 0 0 0 1px #0a1028 !important;
}

.xc-side,
.xc-users,
.xc-user-list {
  border: 1px solid #324a8a !important;
  box-shadow: inset 0 0 0 1px #0a1028 !important;
}

.xc-bottom {
  border-top: 1px solid #324a8a !important;
  box-shadow: inset 0 1px 0 #0a1028 !important;
}

.xc-top-strip {
  border-bottom: 1px solid #24396d !important;
}

/* if these wrapper blocks exist, keep them visually grouped */
.xc-main-zone {
  gap: 6px;
}

.xc-chat-window,
.xc-side {
  background-clip: padding-box;
}

/* do not add ugly lines to controls */
.xc-bottom input,
.xc-bottom select,
.xc-bottom button,
.xc-footer-menu input,
.xc-footer-menu select,
.xc-footer-menu button {
  box-shadow: none !important;
}

/* links/footer stay clean */
.xc-footer-menu {
  border-top: 0 !important;
}

/* slightly separate private box at top right */
.xc-private-box,
.xc-room-info,
.xc-side-top {
  border-bottom: 1px solid #24396d !important;
}

/* right users list: no inner scrollbar */
.xc-side,
.xc-users,
.xc-user-list,
#usersBox {
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  max-height: none !important;
  height: auto !important;
}

.xc-side {
  position: relative;
}

/* keep user rows compact like old chat */
.xc-user {
  min-height: 14px !important;
  line-height: 14px !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* restore old XChat right user list spacing */
.xc-side {
  overflow: hidden !important;
}

.xc-users,
.xc-user-list,
#usersBox {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}

/* cancel squeezed rows from previous patch */
.xc-user {
  min-height: 17px !important;
  line-height: 17px !important;
  margin: 0 0 1px 0 !important;
  padding: 0 3px !important;
  align-items: center !important;
}

/* user name/status layout: roomier like original */
.xc-user-name {
  line-height: 17px !important;
}

.xc-user-status,
.xc-user-mark {
  line-height: 17px !important;
}

/* room block should breathe like old screenshot */
.xc-room-info {
  padding-top: 8px !important;
  padding-bottom: 7px !important;
  line-height: 17px !important;
  text-align: center !important;
}

/* ANGEL under room title: keep it as old room decoration, not cramped */
.xc-room-info .xc-room-angel,
.xc-room-info .angel,
.xc-room-info .xc-angel {
  display: block !important;
  margin-top: 5px !important;
  margin-bottom: 4px !important;
  color: #67ea91 !important;
  letter-spacing: 9px !important;
  line-height: 15px !important;
}

/* if ANGEL is plain text-ish styled by old classes, give room before users */
.xc-side-top,
.xc-room-info + .xc-users,
.xc-room-info + .xc-user-list {
  margin-top: 4px !important;
}

/* right panel should not show browser scrollbar inside */
.xc-side::-webkit-scrollbar,
.xc-users::-webkit-scrollbar,
.xc-user-list::-webkit-scrollbar,
#usersBox::-webkit-scrollbar {
  display: none !important;
}


/* right list closer to old XChat reference */
.xc-users,
.xc-user-list,
#usersBox {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}

.xc-user {
  display: grid !important;
  grid-template-columns: 1fr 34px 13px !important;
  column-gap: 4px !important;
  align-items: center !important;
  min-height: 15px !important;
  line-height: 15px !important;
  margin: 0 !important;
  padding: 0 3px !important;
  font-family: "Times New Roman", serif !important;
  font-size: 14px !important;
}

.xc-user-name {
  display: block !important;
  white-space: nowrap !important;
  text-decoration: underline !important;
  line-height: 15px !important;
}

.xc-user-status {
  color: #00ff66 !important;
  font-weight: bold !important;
  text-align: right !important;
  white-space: nowrap !important;
  line-height: 15px !important;
}

.xc-user-mark {
  text-align: center !important;
  white-space: nowrap !important;
  font-weight: bold !important;
  line-height: 15px !important;
}

.xc-user-me {
  display: block !important;
  min-height: 30px !important;
  line-height: 15px !important;
  margin: 0 0 1px 0 !important;
  padding: 0 3px !important;
}

.xc-user-mainline {
  height: 15px !important;
  line-height: 15px !important;
}

.xc-user-subline {
  display: grid !important;
  grid-template-columns: 1fr 34px 13px !important;
  column-gap: 4px !important;
  align-items: center !important;
  height: 15px !important;
  line-height: 15px !important;
}

.xc-user-angel {
  color: #67ea91 !important;
  font-weight: bold !important;
  letter-spacing: 7px !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  line-height: 15px !important;
}

/* right room block like old reference */
.xc-room-info {
  text-align: center !important;
  line-height: 16px !important;
  padding-top: 7px !important;
  padding-bottom: 5px !important;
}

.xc-room-count {
  color: #67ea91 !important;
  font-weight: bold !important;
}


/* right user list: original-like compact list with fixed real seed colors */
.xc-users,
.xc-user-list,
#usersBox {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}

.xc-user {
  display: grid !important;
  grid-template-columns: 1fr 34px 13px !important;
  column-gap: 4px !important;
  align-items: center !important;
  min-height: 15px !important;
  line-height: 15px !important;
  margin: 0 !important;
  padding: 0 3px !important;
  font-family: "Times New Roman", serif !important;
  font-size: 14px !important;
}

.xc-user-name {
  display: block !important;
  white-space: nowrap !important;
  text-decoration: underline !important;
  line-height: 15px !important;
}

.xc-user.male .xc-user-name {
  color: #67ea91 !important;
}

.xc-user.female .xc-user-name {
  color: #c281ad !important;
}

.xc-user-status {
  color: #00ff66 !important;
  font-weight: bold !important;
  text-align: right !important;
  white-space: nowrap !important;
  line-height: 15px !important;
}

.xc-user-mark {
  text-align: center !important;
  white-space: nowrap !important;
  font-weight: bold !important;
  line-height: 15px !important;
}

.xc-room-info {
  text-align: center !important;
  line-height: 16px !important;
  padding-top: 7px !important;
  padding-bottom: 5px !important;
}

.xc-room-count {
  color: #67ea91 !important;
  font-weight: bold !important;
}


/* XChat Reborn registration/login */
.xchat-auth-extra {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-left: 4px;
  vertical-align: middle;
}

#xchatPassword {
  width: 92px;
  height: 18px;
  box-sizing: border-box;
  border: 1px solid #3d4976;
  background: #000000;
  color: #c0c0c0;
  font: 12px "Times New Roman", serif;
}

#xchatSex {
  width: 38px;
  height: 18px;
  border: 1px solid #3d4976;
  background: #000000;
  color: #61adde;
  font: 12px "Times New Roman", serif;
}

#xchatRegisterBtn {
  height: 18px;
  border: 1px solid #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font: 12px "Times New Roman", serif;
  cursor: pointer;
}

#xchatAuthError {
  display: none;
  color: #ff8080;
  font: bold 12px "Times New Roman", serif;
  margin-left: 6px;
  white-space: nowrap;
}


/* old-style login/register line */
.xchat-auth-extra {
  display: none !important;
}

.xchat-login-old {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-left: 6px;
  vertical-align: middle;
  font-family: "Times New Roman", serif;
}

#xchatLoginPassword {
  width: 94px;
  height: 18px;
  box-sizing: border-box;
  border: 1px solid #3d4976;
  background: #000000;
  color: #61adde;
  font: 12px "Times New Roman", serif;
  padding: 1px 3px;
}

.xchat-register-link {
  color: #c0c0c0;
  text-decoration: underline;
  white-space: nowrap;
}

.xchat-register-link:hover {
  color: #ffff00;
}

#xchatLoginError {
  color: #ff8080;
  font-weight: bold;
  white-space: nowrap;
}


/* old-style admin panel */
.xadmin-modal {
  position: fixed;
  inset: 0;
  z-index: 100000;
  background: rgba(0, 0, 20, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
}

.xadmin-modal.hidden {
  display: none !important;
}

.xadmin-window {
  width: 520px;
  max-height: 90vh;
  overflow: hidden;
  background: url("../img/chatbg.gif") repeat #000000;
  border: 2px solid #5d83d9;
  box-shadow: 0 0 0 1px #000, 0 0 18px #000;
}

.xadmin-title {
  height: 23px;
  background: #000033;
  color: #66ffff;
  border-bottom: 1px solid #5d83d9;
  box-sizing: border-box;
  padding: 0 4px 0 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font: bold 13px Verdana, Arial, sans-serif;
}

.xadmin-title button {
  width: 24px;
  height: 19px;
  padding: 0;
  border: solid 1px #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font: bold 11px Arial, sans-serif;
  cursor: pointer;
}

.xadmin-body {
  padding: 14px;
  max-height: calc(90vh - 23px);
  overflow-y: auto;
  background: rgba(2, 48, 64, 0.72);
  color: #c0c0c0;
  font-family: "Times New Roman", Verdana, Arial, serif;
  font-size: 14px;
}

.xadmin-row {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 6px;
  align-items: center;
  margin-bottom: 7px;
}

/* Строка с label + input + button */
.xadmin-row label + input + button,
.xadmin-row:has(label):has(input):has(button) {
  /* handled below */
}

.xadmin-row label {
  text-align: right;
  color: #d0d0d0;
}

.xadmin-row input {
  height: 20px;
  border: 1px solid #3d4976;
  background: #000000;
  color: #61adde;
  font: 14px "Times New Roman", serif;
  padding: 1px 4px;
}

/* Кнопка внутри xadmin-row (не в xadmin-buttons) */
.xadmin-row > button {
  grid-column: 2;
  border: 1px solid #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font: 13px "Times New Roman", serif;
  padding: 3px 8px;
  cursor: pointer;
  text-align: left;
}

.xadmin-row > button:hover {
  color: #ffff00;
}

/* Когда в строке label + input + button — три элемента */
.xadmin-row.xadmin-row-3 {
  grid-template-columns: 90px 1fr auto;
}

.xadmin-row.xadmin-row-3 > button {
  grid-column: auto;
}

.xadmin-buttons {
  margin: 10px 0 8px 88px;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.xadmin-buttons button {
  border: 1px solid #3d4976;
  background: #0b1920;
  color: #c0c0c0;
  font: 13px "Times New Roman", serif;
  padding: 2px 7px;
  cursor: pointer;
}

.xadmin-buttons button:hover {
  color: #ffff00;
}

#xadminStatus {
  min-height: 18px;
  margin-left: 88px;
  font-weight: bold;
}

#xadminStatus.ok {
  color: #67ea91;
}

#xadminStatus.bad,
.xadmin-body .bad {
  color: #ff8080;
}

.xadmin-users-title {
  margin-top: 10px;
  color: #ffffff;
  font-weight: bold;
}

#xadminUsers {
  margin-top: 5px;
  border-top: 1px solid #324a8a;
  padding-top: 5px;
}

.xadmin-user {
  display: grid;
  grid-template-columns: 1fr 130px;
  gap: 8px;
  line-height: 17px;
}

.xadmin-user a {
  color: #67ea91;
  text-decoration: underline;
}

.xadmin-user span {
  color: #c281ad;
}


.xc-format-btn.xc-format-active,
#formatBold.xc-format-active,
#formatItalic.xc-format-active,

#xboardOverlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  pointer-events: none;
}

.xboard-window {
  position: fixed;
  left: 50%;
  top: 80px;
  transform: translateX(-50%);
  width: 540px;
  min-height: 360px;
  background: #000 url("../img/chatbg.gif");
  border: 2px solid #2448a8;
  color: #dbdcde;
  font: 12px Verdana, Arial, sans-serif;
  resize: both;
  overflow: auto;
  pointer-events: auto;
  box-shadow: 0 0 20px #000;
}

.xboard-title {
  cursor: move;
  background: #00194a;
  color: #ffff00;
  padding: 4px 8px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.xboard-close {
  background: #2448a8;
  color: #fff;
  border: 1px solid #6688ff;
  cursor: pointer;
}

.xboard-body {
  padding: 8px 16px 12px;
}

.xboard-head,
.xboard-bottom {
  text-align: center;
}

.xboard-form textarea {
  width: 100%;
  height: 56px;
  background: #050505;
  color: #ffffff;
  border: 1px solid #3454ad;
  font: 12px Verdana, Arial, sans-serif;
}

.xboard-buttons {
  text-align: center;
  margin: 6px 0;
}

.xboard-black1 {
  background: #000;
  color: #dbdcde;
  border: 1px solid #6060ff;
  margin: 0 3px;
  cursor: pointer;
}

.xboard-status {
  min-height: 16px;
  color: #ffff00;
  text-align: center;
  margin: 4px 0;
}

.xboard-item {
  border-top: 1px solid #293b89;
  padding: 6px 2px;
}

.xboard-meta {
  color: #61adde;
  display: flex;
  gap: 8px;
  align-items: center;
}

.xboard-meta b {
  color: #ffff00;
}

.xboard-text {
  color: #dbdcde;
  margin-top: 3px;
  white-space: pre-wrap;
  word-break: break-word;
}

.xboard-trash {
  margin-left: auto;
  background: transparent;
  color: #ff8080;
  border: 0;
  cursor: pointer;
}

.xboard-empty {
  color: #dbdcde;
  text-align: center;
  padding: 20px;
}


/* xchat bottom final order */
.xc-bottom {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

#actionSelect {
  order: 1 !important;
}

#miniInput {
  order: 2 !important;
}

#messageInput {
  order: 3 !important;
  flex: 1 1 auto !important;
  min-width: 220px !important;
}


.xc-send-btn {
  order: 8 !important;
  flex: 0 0 auto !important;
}


/* xchat xboard server v2 */
#xboardOverlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  pointer-events: none;
}

.xboard-window {
  position: fixed;
  left: 50%;
  top: 78px;
  transform: translateX(-50%);
  width: 540px;
  min-height: 360px;
  background: #000 url("../img/chatbg.gif");
  border: 2px solid #2448a8;
  color: #dbdcde;
  font: 12px Verdana, Arial, sans-serif;
  resize: both;
  overflow: auto;
  pointer-events: auto;
  box-shadow: 0 0 20px #000;
}

.xboard-title {
  cursor: move;
  background: #00194a;
  color: #ffff00;
  padding: 4px 8px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.xboard-close {
  background: #2448a8;
  color: #fff;
  border: 1px solid #6688ff;
  cursor: pointer;
}

.xboard-body {
  padding: 8px 16px 12px;
}

.xboard-head,
.xboard-bottom {
  text-align: center;
}

#xboardText {
  width: 100%;
  height: 58px;
  box-sizing: border-box;
  background: #050505;
  color: #ffffff;
  border: 1px solid #3454ad;
  font: 12px Verdana, Arial, sans-serif;
}

.xboard-buttons {
  text-align: center;
  margin: 6px 0;
}

.xboard-black1 {
  background: #000;
  color: #dbdcde;
  border: 1px solid #6060ff;
  margin: 0 3px;
  cursor: pointer;
}

.xboard-status {
  min-height: 16px;
  color: #ffff00;
  text-align: center;
  margin: 4px 0;
}

.xboard-item {
  border-top: 1px solid #293b89;
  padding: 6px 2px;
}

.xboard-meta {
  color: #61adde;
  display: flex;
  gap: 8px;
  align-items: center;
}

.xboard-meta b {
  color: #ffff00;
}

.xboard-text {
  color: #dbdcde;
  margin-top: 3px;
  white-space: pre-wrap;
  word-break: break-word;
}

.xboard-trash {
  margin-left: auto;
  background: transparent;
  color: #ff8080;
  border: 0;
  cursor: pointer;
}

.xboard-empty {
  color: #dbdcde;
  text-align: center;
  padding: 20px;
}

/* xchat target chip instead of old separate nick input */
#miniInput.xc-mini-input,
#miniInput {
  display: none !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
}

#targetSlot.xc-target-slot,
.xc-target-slot {
  order: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
  max-width: 210px !important;
  height: 22px !important;
  margin: 0 2px !important;
  vertical-align: middle !important;
}

.xc-target-slot:not(.has-target) {
  width: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.xc-target-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  height: 19px !important;
  max-width: 205px !important;
  padding: 0 5px !important;
  box-sizing: border-box !important;
  border: 1px solid #6688ff !important;
  background: #071653 !important;
  color: #dce8ff !important;
  font: 11px Verdana, Arial, sans-serif !important;
  line-height: 18px !important;
  cursor: pointer !important;
  user-select: none !important;
  white-space: nowrap !important;
}

.xc-target-chip.is-private {
  border-color: #ff9ac7 !important;
  background: #651339 !important;
  color: #ffe0ee !important;
}

.xc-target-chip-mode {
  color: #ffe66b !important;
  font-weight: bold !important;
  text-transform: lowercase !important;
}

.xc-target-chip.is-private .xc-target-chip-mode {
  color: #ffffff !important;
}

.xc-target-chip-name {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 125px !important;
  color: inherit !important;
}

.xc-target-chip-close {
  display: inline-block !important;
  width: 12px !important;
  height: 12px !important;
  margin-left: 2px !important;
  color: #ffffff !important;
  background: #5b0000 !important;
  border: 1px solid #ffb0b0 !important;
  font: bold 10px Verdana, Arial, sans-serif !important;
  line-height: 10px !important;
  text-align: center !important;
}

#actionSelect { order: 1 !important; }
#targetSlot { order: 2 !important; }
#messageInput { order: 3 !important; }
.xc-send-btn { order: 8 !important; }

/* xchat faster target chip + clear private highlight */
.xc-target-chip {
  transition: none !important;
}

.xc-target-chip.is-private {
  border: 1px solid #ff4fa3 !important;
  background: #8a0048 !important;
  color: #ffffff !important;
  box-shadow: 0 0 7px rgba(255, 70, 160, 0.9) !important;
}

.xc-target-chip.is-private .xc-target-chip-mode {
  color: #ffff66 !important;
  text-shadow: 0 0 4px #000 !important;
}

.xc-private-line {
  display: block !important;
  margin: 1px 0 !important;
  padding: 2px 5px !important;
  border-left: 4px solid #ff4fa3 !important;
  background: rgba(110, 0, 55, 0.82) !important;
  color: #ffd6e8 !important;
  box-shadow: inset 0 0 0 1px rgba(255, 130, 190, 0.35) !important;
}

.xc-private-line .xc-nick {
  color: #ffff66 !important;
}

.xc-private-badge {
  display: inline-block !important;
  margin-right: 5px !important;
  padding: 1px 4px !important;
  border: 1px solid #ffb6dc !important;
  background: #ff2f92 !important;
  color: #ffffff !important;
  font: bold 10px Verdana, Arial, sans-serif !important;
  line-height: 12px !important;
  text-shadow: 0 1px 1px #000 !important;
  vertical-align: 1px !important;
}

.xc-private-arrow {
  color: #ffffff !important;
  font-weight: bold !important;
}

/* unified nick click behavior: right list and chat window */
#messagesBox .xc-nick,
.xc-line .xc-nick,
.xc-live-user {
  cursor: pointer !important;
}

#messagesBox .xc-nick:hover,
.xc-line .xc-nick:hover,
.xc-live-user:hover {
  text-decoration: underline !important;
  filter: brightness(1.25) !important;
}

.xc-target-nick {
  cursor: pointer !important;
}

/* xchat footer links cleanup */
.xc-clean-footer-links {
  color: #ffffff !important;
}

.xc-clean-footer-links a,
.xc-clean-footer-links a:link,
.xc-clean-footer-links a:visited,
.xc-clean-footer-links button,
.xc-footer-link,
.xc-footer-link:link,
.xc-footer-link:visited {
  color: #ffffff !important;
  background: transparent !important;
  text-decoration: underline !important;
  border: 0 !important;
  font-weight: bold !important;
  text-shadow: 0 1px 1px #000 !important;
}

.xc-clean-footer-links a:hover,
.xc-clean-footer-links a:active,
.xc-clean-footer-links button:hover,
.xc-footer-link:hover,
.xc-footer-link:active,
.xc-footer-board-link:hover,
.xc-footer-admin-link:hover,
.xc-footer-exit-link:hover {
  color: #ffe66b !important;
  background: rgba(255, 230, 107, 0.12) !important;
  text-decoration: none !important;
  box-shadow: 0 0 5px rgba(255, 230, 107, 0.45) !important;
}

.xc-footer-board-link,
.xc-footer-board-link:link,
.xc-footer-board-link:visited {
  color: #ffffff !important;
}

.xc-footer-admin-link,
.xc-footer-admin-link:link,
.xc-footer-admin-link:visited {
  color: #ffffff !important;
}

.xc-footer-exit-link,
.xc-footer-exit-link:link,
.xc-footer-exit-link:visited {
  color: #ffffff !important;
}

/* xchat message input font matches chat messages */
#messageInput.xc-message-input,
#messageInput {
  font-family: Verdana, Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 16px !important;
  height: 20px !important;
  padding: 1px 4px !important;
  box-sizing: border-box !important;
}

/* xchat message input should visually use chat text font, not browser default */
#messageInput.xc-message-input,
#messageInput.xc-message-input-font-synced,
#messageInput {
  font-family: inherit !important;
  font-synthesis: none !important;
  text-rendering: auto !important;
  -webkit-font-smoothing: auto !important;
  -moz-osx-font-smoothing: auto !important;
}

/* xchat final message input visual size */
#messageInput.xc-message-input,
#messageInput.xc-message-input-font-synced,
#messageInput {
  font-size: 14px !important;
  line-height: 18px !important;
  height: 23px !important;
  padding: 2px 5px !important;
}

/* xchat modern smile button near color select */
#smileButton.xc-smile-btn,
.xc-smile-btn {
  order: 4 !important;
  width: 24px !important;
  height: 22px !important;
  min-width: 24px !important;
  padding: 0 !important;
  margin: 0 2px !important;
  border: 1px solid #7f8fd8 !important;
  background: #071653 !important;
  color: #fff58a !important;
  font: bold 16px Verdana, Arial, sans-serif !important;
  line-height: 18px !important;
  cursor: pointer !important;
  text-align: center !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.18) !important;
}

#smileButton.xc-smile-btn:hover,
.xc-smile-btn:hover {
  color: #ffffff !important;
  border-color: #ffe66b !important;
  background: #4c3000 !important;
  box-shadow: 0 0 6px rgba(255,230,107,0.65) !important;
}

.xc-send-btn { order: 9 !important; }

.xc-smile-panel {
  position: fixed !important;
  z-index: 99999 !important;
  display: none !important;
  width: 236px !important;
  max-height: 190px !important;
  box-sizing: border-box !important;
  padding: 5px !important;
  border: 2px solid #1f3a9a !important;
  background: #050b28 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 18px rgba(0,0,0,0.75) !important;
  font: 12px Verdana, Arial, sans-serif !important;
}

.xc-smile-panel.is-open {
  display: block !important;
}

.xc-smile-panel-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 5px !important;
  padding: 2px 4px !important;
  background: #7b0000 !important;
  color: #fff58a !important;
  font-weight: bold !important;
}

.xc-smile-panel-close {
  width: 18px !important;
  height: 18px !important;
  border: 1px solid #ffb0b0 !important;
  background: #320000 !important;
  color: #ffffff !important;
  cursor: pointer !important;
  line-height: 14px !important;
}

.xc-smile-grid {
  display: grid !important;
  grid-template-columns: repeat(6, 1fr) !important;
  gap: 4px !important;
}

.xc-smile-item {
  width: 32px !important;
  height: 28px !important;
  padding: 0 !important;
  border: 1px solid #273c94 !important;
  background: #0a1650 !important;
  color: #ffffff !important;
  font-size: 18px !important;
  line-height: 24px !important;
  cursor: pointer !important;
  text-align: center !important;
}

.xc-smile-item:hover {
  border-color: #ffe66b !important;
  background: #5b3900 !important;
}

/* xchat historic smiles */
/* xchat force visible smile button */
#smileButton.xc-smile-btn,#smileButton{
  display:inline-block!important;
  order:4!important;
  width:24px!important;
  height:22px!important;
  min-width:24px!important;
  padding:0!important;
  margin:0 2px!important;
  border:1px solid #7f8fd8!important;
  background:#071653!important;
  color:#fff58a!important;
  font:bold 16px Verdana,Arial,sans-serif!important;
  line-height:18px!important;
  cursor:pointer!important;
  text-align:center!important;
}
#smileButton:hover{
  color:#ffffff!important;
  border-color:#ffe66b!important;
  background:#4c3000!important;
}
.xc-send-btn{order:9!important;}

/* xchat smiles live fix */
#smileButton,
#smileButton.xc-smile-btn {
  display: inline-block !important;
  order: 4 !important;
  width: 24px !important;
  height: 22px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  padding: 0 !important;
  margin: 0 2px !important;
  border: 1px solid #7f8fd8 !important;
  background: #071653 !important;
  color: #fff58a !important;
  font: bold 16px Verdana, Arial, sans-serif !important;
  line-height: 18px !important;
  cursor: pointer !important;
  text-align: center !important;
  vertical-align: middle !important;
}

#smileButton:hover {
  color: #ffffff !important;
  border-color: #ffe66b !important;
  background: #4c3000 !important;
}

.xc-send-btn { order: 9 !important; }

.xc-smile-panel {
  position: fixed !important;
  z-index: 999999 !important;
  display: none !important;
  width: 300px !important;
  max-height: 230px !important;
  box-sizing: border-box !important;
  padding: 5px !important;
  border: 2px solid #1f3a9a !important;
  background: #050b28 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.75) !important;
  font: 12px Verdana, Arial, sans-serif !important;
}

.xc-smile-panel.is-open {
  display: block !important;
}

.xc-smile-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 5px !important;
  padding: 2px 4px !important;
  background: #7b0000 !important;
  color: #fff58a !important;
  font-weight: bold !important;
}

.xc-smile-close {
  width: 18px !important;
  height: 18px !important;
  border: 1px solid #ffb0b0 !important;
  background: #320000 !important;
  color: #ffffff !important;
  cursor: pointer !important;
  line-height: 14px !important;
}

.xc-smile-grid {
  display: grid !important;
  grid-template-columns: repeat(8, 1fr) !important;
  gap: 4px !important;
  max-height: 190px !important;
  overflow: auto !important;
}

.xc-smile-item {
  width: 31px !important;
  height: 29px !important;
  padding: 1px !important;
  border: 1px solid #273c94 !important;
  background: #0a1650 !important;
  cursor: pointer !important;
  text-align: center !important;
}

.xc-smile-item:hover {
  border-color: #ffe66b !important;
  background: #5b3900 !important;
}

.xc-smile-item img {
  max-width: 26px !important;
  max-height: 24px !important;
  vertical-align: middle !important;
}

.xc-chat-smile {
  max-width: 34px !important;
  max-height: 28px !important;
  vertical-align: middle !important;
  display: inline-block !important;
  margin: 0 1px !important;
}


/* Мгновенный предпросмотр истории при входе в комнату.
   Он нужен только на первые миллисекунды до прихода серверной истории. */
.xc-loading-line {
  color: #9fc7d7;
  font-style: italic;
}

.xc-cache-preview {
  opacity: 0.96;
}


/* Системные строки входа/выхода — часть обычной истории чата.
   Они идут строго на своём хронологическом месте среди сообщений,
   а не отдельным центрированным блоком наверху. */
.xc-system-line {
  display: block;
  width: auto;
  text-align: center;
  font: 11px Verdana, Arial, sans-serif;
  line-height: 15px;
  margin: 1px 0;
  padding: 0;
  opacity: 0.95;
  white-space: normal;
}

.xc-system-enter {
  color: #8ff0b0;
}

.xc-system-leave {
  color: #d6a0a0;
}

.xc-system-nick {
  color: #ffe28a;
  font-weight: bold;
}

/* xchat-footer-overlap-fix-v1 */
.xc-footer-menu {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  line-height: 18px !important;
  min-height: 22px !important;
  padding: 2px 6px !important;
  box-sizing: border-box !important;
}
.xc-footer-menu > * {
  position: static !important;
  float: none !important;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 18px !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
}
.xc-footer-menu label {
  gap: 3px !important;
}
.xc-footer-menu input[type="checkbox"] {
  flex: 0 0 auto !important;
  width: 13px !important;
  height: 13px !important;
  margin: 0 2px 0 0 !important;
}
.xc-footer-menu a,
.xc-footer-menu span,
.xc-footer-menu button {
  flex: 0 0 auto !important;
}


/* xchat-stable-footer-v2 */
.xc-footer-menu {
  display: block !important;
  position: relative !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  min-height: 24px !important;
  height: auto !important;
  padding: 2px 6px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  white-space: nowrap !important;
  line-height: 18px !important;
}

.xc-footer-menu #xchatStableFooter.xsf-footer-links {
  display: flex !important;
  position: static !important;
  float: none !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  width: auto !important;
  height: auto !important;
  min-height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  white-space: nowrap !important;
  line-height: 18px !important;
}

.xc-footer-menu #xchatStableFooter .xsf-footer-item,
.xc-footer-menu #xchatStableFooter a.xsf-footer-item,
.xc-footer-menu #xchatStableFooter span.xsf-footer-item,
.xc-footer-menu #xchatStableFooter label.xsf-footer-item {
  display: inline-flex !important;
  position: static !important;
  float: none !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  line-height: 18px !important;
  vertical-align: middle !important;
  transform: none !important;
}

.xc-footer-menu #xchatStableFooter input[type="checkbox"] {
  display: inline-block !important;
  position: static !important;
  float: none !important;
  flex: 0 0 auto !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  margin: 0 3px 0 0 !important;
  padding: 0 !important;
  vertical-align: middle !important;
}


/* xchat-info-smiles-v1 */
#xchatInfoPopup {
  position: fixed;
  inset: 0;
  z-index: 99990;
  font: 12px Verdana, Arial, sans-serif;
}

#xchatInfoPopup .xip-bg {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.25);
}

#xchatInfoPopup .xip-window {
  position: absolute;
  left: 50%;
  top: 48%;
  width: 360px;
  transform: translate(-50%, -50%);
  border: 1px solid #4563c8;
  background: #06051b url("../img/bg.gif") repeat;
  color: #ffffff;
  box-shadow: 0 0 0 1px #000, 0 8px 24px rgba(0,0,0,0.55);
}

#xchatInfoPopup .xip-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #15106a;
  color: #ffff66;
  padding: 4px 6px;
  font-weight: bold;
}

#xchatInfoPopup .xip-title button {
  background: #000;
  color: #fff;
  border: 1px solid #777;
  cursor: pointer;
}

#xchatInfoPopup .xip-body {
  padding: 10px;
  line-height: 1.55;
}

#xchatInfoPopup .xip-note {
  color: #9bbcff;
  font-size: 11px;
}

#xchatSmileFallbackPanel {
  position: fixed;
  z-index: 99980;
  width: 356px;
  max-height: 178px;
  overflow: auto;
  padding: 5px;
  border: 1px solid #4654b8;
  background: #050415 url("../img/bg.gif") repeat;
  box-shadow: 0 0 0 1px #000, 0 6px 18px rgba(0,0,0,0.55);
}

#xchatSmileFallbackPanel .xsf-smile {
  display: inline-flex;
  width: 26px;
  height: 26px;
  align-items: center;
  justify-content: center;
  margin: 2px;
  padding: 0;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
}

#xchatSmileFallbackPanel .xsf-smile:hover {
  border-color: #ffff66;
  background: rgba(255,255,255,0.08);
}

#xchatSmileFallbackPanel img {
  max-width: 22px;
  max-height: 22px;
}


/* xchat-smile-token-render-v1 */
.xc-smile-img {
  display: inline-block;
  max-width: 22px;
  max-height: 22px;
  width: auto;
  height: auto;
  vertical-align: -5px;
  margin: 0 1px;
}


/* xchat-smile-panel-force-visible-v1 */
#smilePanel.xc-smile-force-open {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  z-index: 99980 !important;
  width: 360px !important;
  min-height: 80px !important;
  max-height: 230px !important;
  overflow: auto !important;
}

#smilePanel.xc-smile-force-open .xc-smile-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

#smilePanel.xc-smile-force-open .xc-smile-grid {
  display: grid !important;
  grid-template-columns: repeat(7, 1fr) !important;
  gap: 3px !important;
}

#smilePanel.xc-smile-force-open .xc-smile-item {
  display: inline-flex !important;
  width: 28px !important;
  height: 28px !important;
  align-items: center !important;
  justify-content: center !important;
}

#smilePanel.xc-smile-force-open img {
  display: block !important;
  max-width: 24px !important;
  max-height: 24px !important;
}


/* xchat-single-owner-target-v2 */
#targetBox.xc-target {
  min-height: 20px;
}

#targetBox.xc-target.has-target {
  display: block !important;
  visibility: visible !important;
  min-height: 22px !important;
  padding: 2px 4px !important;
}

#targetChip.xc-target-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  min-height: 18px !important;
  padding: 1px 6px !important;
  border: 1px solid #7b7bc8 !important;
  background: #11145c !important;
  color: #ffffff !important;
  cursor: pointer !important;
  font: 12px Verdana, Arial, sans-serif !important;
}

#targetChip.xc-target-chip.is-private {
  border-color: #ff8db3 !important;
  background: #6d1638 !important;
  color: #ffe8f1 !important;
}

#targetChip .xc-target-mode {
  color: #ffff66 !important;
  font-weight: bold !important;
}

#targetChip.is-private .xc-target-mode {
  color: #ffd0df !important;
}

#targetChipClose {
  margin-left: 3px !important;
  color: #ffdddd !important;
}


/* xchat-single-owner-target-compat-v3 */
#targetBox.xc-target.has-target {
  display: block !important;
  visibility: visible !important;
  min-height: 22px !important;
  padding: 2px 4px !important;
}

#targetChip.xc-target-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  min-height: 18px !important;
  padding: 1px 6px !important;
  border: 1px solid #7b7bc8 !important;
  background: #11145c !important;
  color: #ffffff !important;
  cursor: pointer !important;
  font: 12px Verdana, Arial, sans-serif !important;
}

#targetChip.xc-target-chip.is-private {
  border-color: #ff8db3 !important;
  background: #6d1638 !important;
  color: #ffe8f1 !important;
}

#targetChip .xc-target-mode {
  color: #ffff66 !important;
  font-weight: bold !important;
}

#targetChip.is-private .xc-target-mode {
  color: #ffd0df !important;
}

#targetChipClose {
  margin-left: 3px !important;
  color: #ffdddd !important;
}


/* xchat-target-real-click-v6 */
#targetBox.xc-target.has-target {
  display: block !important;
  visibility: visible !important;
  min-height: 22px !important;
  padding: 2px 4px !important;
}

#targetChip.xc-target-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  min-height: 18px !important;
  padding: 1px 6px !important;
  border: 1px solid #7b7bc8 !important;
  background: #11145c !important;
  color: #ffffff !important;
  cursor: pointer !important;
  font: 12px Verdana, Arial, sans-serif !important;
}

#targetChip.xc-target-chip.is-private {
  border-color: #ff8db3 !important;
  background: #6d1638 !important;
  color: #ffe8f1 !important;
}

#targetChip .xc-target-mode {
  color: #ffff66 !important;
  font-weight: bold !important;
}

#targetChip.is-private .xc-target-mode {
  color: #ffd0df !important;
}

#targetChipClose {
  margin-left: 3px !important;
  color: #ffdddd !important;
}


/* xchat-target-inline-layout-v8 */
#targetBox {
  display: none !important;
  position: static !important;
  float: none !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 260px !important;
  height: 22px !important;
  min-height: 22px !important;
  margin: 0 5px 0 3px !important;
  padding: 0 !important;
  vertical-align: middle !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: visible !important;
  z-index: 2 !important;
}

#targetBox.has-target,
#targetBox.xc-target.has-target {
  display: inline-flex !important;
}

#targetBox:empty {
  display: none !important;
}

#targetChip.xc-target-chip {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 4px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  max-width: 250px !important;
  margin: 0 !important;
  padding: 1px 5px !important;
  border: 1px solid #8c8cff !important;
  background: #171661 !important;
  color: #ffffff !important;
  cursor: pointer !important;
  font: bold 12px Verdana, Arial, sans-serif !important;
  line-height: 14px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

#targetChip.xc-target-chip.is-private {
  border-color: #ff9abb !important;
  background: #7b073f !important;
  color: #ffe6f0 !important;
}

#targetChip .xc-target-mode {
  color: #ffff66 !important;
  font-weight: bold !important;
  flex: 0 0 auto !important;
}

#targetChip.is-private .xc-target-mode {
  color: #ffd5e4 !important;
}

#targetChip .xc-target-name {
  display: inline-block !important;
  max-width: 165px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#targetChipClose {
  flex: 0 0 auto !important;
  margin-left: 2px !important;
  color: #ffdede !important;
  font-weight: bold !important;
}

#messageInput {
  min-width: 80px !important;
}


/* xchat-target-row-fix-v10 */
.xc-input-row-target-v10 {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 4px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.xc-input-row-target-v10 > select,
.xc-input-row-target-v10 #actionSelect {
  order: 1 !important;
  flex: 0 0 auto !important;
}

.xc-input-row-target-v10 #targetBox {
  order: 2 !important;
  position: static !important;
  float: none !important;
  display: none !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 230px !important;
  height: 20px !important;
  min-height: 20px !important;
  margin: 0 2px !important;
  padding: 0 !important;
  overflow: visible !important;
  vertical-align: middle !important;
  z-index: 1 !important;
}

.xc-input-row-target-v10 #targetBox.has-target,
.xc-input-row-target-v10 #targetBox.xc-target.has-target {
  display: inline-flex !important;
  align-items: center !important;
}

.xc-input-row-target-v10 #targetBox:empty {
  display: none !important;
}

.xc-input-row-target-v10 #messageInput {
  order: 3 !important;
  flex: 1 1 auto !important;
  min-width: 120px !important;
  width: auto !important;
  margin-left: 0 !important;
}

.xc-input-row-target-v10 #smileButton,
.xc-input-row-target-v10 .xc-smile-btn {
  order: 4 !important;
  flex: 0 0 auto !important;
}

.xc-input-row-target-v10 .xc-send-btn {
  order: 5 !important;
  flex: 0 0 auto !important;
}

.xc-input-row-target-v10 #targetChip.xc-target-chip {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 4px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  max-width: 220px !important;
  margin: 0 !important;
  padding: 1px 5px !important;
  border: 1px solid #8c8cff !important;
  background: #171661 !important;
  color: #ffffff !important;
  cursor: pointer !important;
  font: bold 12px Verdana, Arial, sans-serif !important;
  line-height: 14px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

.xc-input-row-target-v10 #targetChip.xc-target-chip.is-private {
  border-color: #ff9abb !important;
  background: #7b073f !important;
  color: #ffe6f0 !important;
}

.xc-input-row-target-v10 #targetChip .xc-target-mode {
  color: #ffff66 !important;
  font-weight: bold !important;
  flex: 0 0 auto !important;
}

.xc-input-row-target-v10 #targetChip.is-private .xc-target-mode {
  color: #ffd5e4 !important;
}

.xc-input-row-target-v10 #targetChip .xc-target-name {
  display: inline-block !important;
  max-width: 145px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.xc-input-row-target-v10 #targetChipClose {
  flex: 0 0 auto !important;
  margin-left: 2px !important;
  color: #ffdede !important;
  font-weight: bold !important;
}

/* ===== MARQUEE — бегущая строка в шапке ===== */
.xc-marquee-strip {
  background: linear-gradient(to bottom, #0a0a2a, #020436);
  border-bottom: 1px solid #324a8a;
  border-top: 1px solid #1a1a4a;
  padding: 2px 6px;
  font: 12px Verdana, Arial, sans-serif;
  color: #ffff00;
  overflow: hidden;
  height: 18px;
  line-height: 18px;
}

.xc-marquee-strip marquee {
  height: 18px;
  line-height: 18px;
}

.xc-marquee-strip a { color: #61adde; }
.xc-marquee-strip b { color: #ff8080; }
.xc-marquee-strip i { color: #80ff80; }

/* ===== STATUS icons in user list ===== */
.xc-live-status {
  font-size: 10px;
  margin-left: 2px;
  vertical-align: middle;
}

/* ===== TYPING indicator ===== */
.xc-typing-indicator {
  transition: opacity 0.2s;
}


/* XChat original 32 message colors */
#xps-color {
    font-weight: 700;
}

#xps-color option {
    background: #000;
    font-weight: 700;
}


/* xchat-action-font-15x-v1
   Действия крупнее обычного текста на 50%.
   Обычные сообщения / privates / presence не меняются. */
.xc-line.xc-action-line {
  font-size: 1.5em !important;
  line-height: 1.35 !important;
}


/* xchat-input-dynamic-height-v1
   Реальная высота messageInput задаётся profile-settings.js
   исходя из выбранного размера текста. */
#messageInput.xc-message-input,
#messageInput.xc-message-input-font-synced,
#messageInput {
  min-height: 0;
  max-height: none;
}



/* xchat-message-time-v1 */
.xc-message-time {
  display: inline-block;
  min-width: 34px;
  margin-right: 6px;

  color: #7f8494 !important;
  opacity: .88;

  font-family: Verdana, Arial, sans-serif !important;
  font-size: 10px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  text-align: right;
  white-space: nowrap;
  user-select: none;

  vertical-align: middle;
  transform: translateY(-1px);
}

html.xchat-hide-message-time .xc-message-time {
  display: none !important;
}

@media (max-width: 700px) {
  .xc-message-time {
    min-width: 31px;
    margin-right: 5px;
    font-size: 9px !important;
  }
}
