/* HChat Professional UI v7
   Kalıcı üst bar, Status boşluk düzeltmesi ve güvenli panel yerleşimi. */

:root {
  --h7-header-height: 72px;
  --h7-users-width: 270px;
  --h7-channels-width: 250px;
  --h7-gap: 10px;
}

html,
body {
  width: 100%;
  height: 100%;
  margin: 0 !important;
  overflow: hidden !important;
}

/* Eski istemci kanal değişiminde üst kapsayıcıya top/transform uygulasa bile etkisizdir. */
body.hchat-ui-v2 #chat,
body.hchat-ui-v2 .sohbetkismi {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  overflow: hidden !important;
}

body.hchat-ui-v2 .sohbetkismi {
  display: block !important;
}

/* Üst bar, kanal ve Status geçişlerinden bağımsız olarak ekranın üstüne sabitlenir. */
body.hchat-ui-v2 .chat-ust,
body.hchat-ui-v2 .chat-ust[style] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  inset: 0 0 auto 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: auto !important;
  left: 0 !important;
  width: 100% !important;
  height: var(--h7-header-height) !important;
  min-height: var(--h7-header-height) !important;
  max-height: var(--h7-header-height) !important;
  margin: 0 !important;
  transform: none !important;
  translate: none !important;
  overflow: visible !important;
  z-index: 2147482000 !important;
}

body.hchat-ui-v2 .chat-ust > .row.ht-mob-hide,
body.hchat-ui-v2 .chat-ust > .row:not(.mob-top-menu) {
  height: var(--h7-header-height) !important;
  min-height: var(--h7-header-height) !important;
  margin: 0 !important;
  transform: none !important;
}

/* Panel aç/kapat düğmeleri üst bardan bağımsız sabitlenir. */
body.hchat-ui-v2 .hchat-chat-controls {
  position: fixed !important;
  top: calc(var(--h7-header-height) + 7px) !important;
  right: 14px !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  z-index: 2147481900 !important;
}

/* Ana alan üst barın altından başlar; eski JS'nin verdiği inline height/top değerleri geçersizdir. */
body.hchat-ui-v2 .main-content,
body.hchat-ui-v2 .main-content[style] {
  position: fixed !important;
  top: var(--h7-header-height) !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 43px 10px 10px !important;
  transform: none !important;
  overflow: hidden !important;
}

body.hchat-ui-v2 .main-content .main-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) var(--h7-users-width) var(--h7-channels-width) !important;
  grid-template-areas: "chat users channels" !important;
  gap: var(--h7-gap) !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
}

body.hchat-ui-v2 #chatPanel {
  grid-area: chat !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.hchat-ui-v2 .hchat-user-panel {
  grid-area: users !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.hchat-ui-v2 .channel-lister {
  grid-area: channels !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

/* Status ekranında nick listesi yoktur; boş kolon tamamen kaldırılır. */
body.hchat-ui-v2.hchat-status-view .main-content .main-row {
  grid-template-columns: minmax(0, 1fr) var(--h7-channels-width) !important;
  grid-template-areas: "chat channels" !important;
}

body.hchat-ui-v2.hchat-status-view .hchat-user-panel {
  display: none !important;
}

body.hchat-ui-v2.hchat-status-view .hchat-panel-toggle[data-panel="users"] {
  display: none !important;
}

body.hchat-ui-v2.hchat-hide-channels:not(.hchat-status-view) .main-content .main-row {
  grid-template-columns: minmax(0, 1fr) var(--h7-users-width) 0 !important;
}

body.hchat-ui-v2.hchat-hide-users:not(.hchat-status-view) .main-content .main-row {
  grid-template-columns: minmax(0, 1fr) 0 var(--h7-channels-width) !important;
}

body.hchat-ui-v2.hchat-hide-users.hchat-hide-channels:not(.hchat-status-view) .main-content .main-row,
body.hchat-ui-v2.hchat-status-view.hchat-hide-channels .main-content .main-row {
  grid-template-columns: minmax(0, 1fr) 0 !important;
  grid-template-areas: "chat channels" !important;
}

/* Yetki sıralaması değişirken öğelerde zıplama oluşmasını azaltır. */
body.hchat-ui-v2 #chatListUser .nicklist {
  overflow-anchor: none;
}

@media (max-width: 991px) {
  :root { --h7-header-height: 54px; }

  body.hchat-ui-v2 .chat-ust {
    height: var(--h7-header-height) !important;
    min-height: var(--h7-header-height) !important;
    max-height: var(--h7-header-height) !important;
  }

  body.hchat-ui-v2 .main-content,
  body.hchat-ui-v2 .main-content[style] {
    top: var(--h7-header-height) !important;
    padding: 0 !important;
  }

  body.hchat-ui-v2 .hchat-chat-controls {
    display: none !important;
  }

  body.hchat-ui-v2 .main-content .main-row,
  body.hchat-ui-v2.hchat-status-view .main-content .main-row {
    display: block !important;
  }

  body.hchat-ui-v2 .hchat-user-panel,
  body.hchat-ui-v2 .channel-lister {
    grid-area: auto !important;
  }
}
