/* v9.1 – Toàn bộ giao diện theo tông xanh/xám quen thuộc kiểu Facebook, khung chat kiểu Messenger */
:root {
  --accent: #1877f2 !important; --bubble-out: #0a7cff !important; --accent-soft: #e7f3ff;
  --bg: #f0f2f5; --panel: #ffffff; --line: #e4e6eb; --text: #050505; --muted: #65676b;
  --top: #ffffff; --top-ink: #1c1e21; --top-2: #ffffff; --rail-ink: #65676b; --chat-bg: #ffffff;
  --m-blue: #0a7cff; --m-in: #f0f2f5; --m-ink: #050505; --m-meta: #65676b; --fb-hover: #f2f2f2;
}

/* Thanh ngang trên: nền trắng, mục đang mở chữ xanh + gạch xanh */
.topbar { background: #fff; color: var(--top-ink); border-bottom: 1px solid var(--line); box-shadow: 0 1px 2px #0000001a; }
.topbar .rail-btn { color: var(--muted); opacity: 1; border-radius: 8px 8px 0 0; }
.topbar .rail-btn:hover { color: var(--text); background: var(--fb-hover); }
.topbar .rail-btn.active { color: var(--accent); border-bottom-color: var(--accent); background: transparent; }
.topbar #bellBtn { background: #e4e6eb; color: var(--text); }

/* Cột lọc trái */
.app.v9 .rail { background: #fff; border-right: 1px solid var(--line); }
.frail-btn { color: var(--rail-ink); }
.frail-btn:hover { background: var(--fb-hover); color: var(--text); }
.frail-btn.active { background: var(--accent-soft); color: var(--accent); }

/* Danh sách hội thoại */
.app.v9 .list-col { background: #fff; }
.app.v9 .list-head input, .app.v9 .list-head select { background: var(--bg); border: 0; border-radius: 20px; }
.app.v9 .conv { border-bottom: 0; border-radius: 0; }
.app.v9 .conv:hover { background: var(--fb-hover); }
.app.v9 .conv.active { background: var(--accent-soft); }
.unread-dot { background: var(--accent); }
.chip.active { background: var(--accent); border-color: var(--accent); }

/* Khung chat kiểu Messenger */
.app.v9 .chat-col, .app.v9 .messages { background: var(--chat-bg); }
.app.v9 .messages { padding: 16px 18px; gap: 3px; }
.app.v9 .msg { font-size: 15px; line-height: 1.34; padding: 8px 12px; border-radius: 18px; max-width: 65%; }
.app.v9 .msg.in { background: var(--m-in); color: var(--m-ink); border-bottom-left-radius: 18px; }
.app.v9 .msg.out { background: var(--m-blue); color: #fff; border-bottom-right-radius: 18px; }
.app.v9 .msg .by { font-size: 11px; margin-top: 2px; }
.app.v9 .msg.in .by { color: var(--m-meta); opacity: 1; }
.app.v9 .msg.out .by { color: #ffffffcc; opacity: 1; }
.app.v9 .msg.note { border-radius: 12px; font-size: 13px; }
.app.v9 .msg img { border-radius: 14px; }
.app.v9 .day { color: var(--m-meta); font-size: 12px; margin: 12px 0 6px; }
.app.v9 .chat-head { background: #fff; box-shadow: 0 1px 2px #0000000f; border-bottom: 1px solid var(--line); }
.app.v9 .chat-head .title { color: var(--m-ink); }
.app.v9 .chat-head .btn, .app.v9 .chat-head select { background: #e4e6eb; border: 0; color: var(--text); font-weight: 600; }
.app.v9 .chat-head .btn:hover { background: #d8dadf; }
.app.v9 #doneBtn { background: var(--accent-soft); color: var(--accent); }

/* Ô soạn tin: dạng viên thuốc xám, nút gửi xanh */
.app.v9 .composer { background: #fff; border-top: 1px solid var(--line); }
.app.v9 .composer textarea { background: var(--m-in); border: 0; border-radius: 20px; padding: 9px 14px; font-size: 15px; }
.app.v9 .composer.noting textarea { background: var(--note); }
.app.v9 #sendBtn { background: transparent; border: 0; color: var(--m-blue); font-weight: 700; padding: 8px 10px; }
.app.v9 #sendBtn:hover { background: var(--accent-soft); }
.app.v9 #attachBtn { color: var(--m-blue); }

/* Bảng thông tin khách bên phải: nền xám nhạt, ô nhập xám, nút xanh */
.app.v9 .info-col { background: #fff; border-left: 1px solid var(--line); }
.app.v9 .info-col h3 { color: var(--text); font-size: 15px; font-weight: 700; }
.app.v9 .info-col label { color: var(--muted); font-weight: 600; }
.app.v9 .info-col input, .app.v9 .info-col textarea, .app.v9 .info-col select { background: var(--bg); border: 1px solid transparent; border-radius: 8px; color: var(--text); }
.app.v9 .info-col input:focus, .app.v9 .info-col textarea:focus { background: #fff; border-color: var(--accent); }
.btn.primary { background: var(--accent); border-color: var(--accent); border-radius: 6px; font-weight: 600; }
.btn.primary:hover { background: #166fe5; }
.btn { border-radius: 6px; }

/* Cỡ to hơn trên máy tính: thanh trên, cột lọc trái, danh sách khách */
@media (min-width: 761px) {
  .topbar { height: 60px; flex-basis: 60px; padding: 0 18px; }
  .tb-brand { font-size: 18px; }
  .tb-brand .logo { width: 38px; height: 38px; }
  .topbar .rail-btn { height: 60px; padding: 0 22px; font-size: 15.5px; }
  .topbar #bellBtn { width: 40px; height: 40px; font-size: 19px; }
  .tb-me { font-size: 14.5px; }
  .tb-me .avatar-btn { width: 38px; height: 38px; font-size: 14px; }
  .topbar .notif-panel { top: 52px; }
  .app.v9 .rail { width: 64px; padding: 10px 0; gap: 6px; }
  .frail-btn { width: 48px; height: 48px; border-radius: 12px; }
  .frail-btn svg { width: 24px; height: 24px; }
  .frail-btn[data-tip]:hover::after { left: 54px; font-size: 13px; }
  .app.v9 .list-col { width: 370px; }
  .app.v9 .list-head { padding: 10px; gap: 8px; }
  .app.v9 .list-head input, .app.v9 .list-head select { font-size: 14px; padding: 9px 12px; }
  .app.v9 .conv { padding: 11px 12px 11px 11px; gap: 12px; }
  .app.v9 .conv .avatar { width: 50px; height: 50px; flex-basis: 50px; font-size: 16px; }
  .app.v9 .conv .name { font-size: 15px; }
  .app.v9 .conv .snippet { font-size: 13.5px; }
  .app.v9 .conv .meta { font-size: 12px; }
  .ctype svg { width: 17px; height: 17px; }
  .app.v9 .chat-head { min-height: 64px; }
  .app.v9 .chat-head .title { font-size: 16.5px; }
}


@media (max-width: 760px) { .app.v9 .msg { max-width: 80%; } }

@media (prefers-color-scheme: dark) {
  :root { --bg: #18191a; --panel: #242526; --line: #3a3b3c; --text: #e4e6eb; --muted: #b0b3b8; --accent-soft: #263951;
    --m-in: #3a3b3c; --m-ink: #e4e6eb; --m-meta: #b0b3b8; --chat-bg: #242526; --fb-hover: #3a3b3c; --top-ink: #e4e6eb; }
  .topbar, .app.v9 .rail, .app.v9 .list-col, .app.v9 .chat-head, .app.v9 .composer, .app.v9 .info-col { background: #242526; }
  .topbar #bellBtn, .app.v9 .chat-head .btn, .app.v9 .chat-head select { background: #3a3b3c; color: #e4e6eb; }
}

/* Phân tách rõ các khung: cột lọc xám, danh sách trắng, khung chat xanh nhạt, thông tin khách xám nhạt */
:root { --chat-tint: #e9f1fc; }
.app.v9 .rail { background: #f0f2f5; }
.app.v9 .list-col { background: #fff; border-right: 1px solid #dadde1; }
.app.v9 .chat-col, .app.v9 .messages { background: var(--chat-tint); }
.app.v9 .chat-head { background: #fff; border-bottom: 1px solid #d6e2f3; }
.app.v9 .composer { background: #fff; border-top: 1px solid #d6e2f3; }
.app.v9 .msg.in { background: #fff; box-shadow: 0 1px 1px #0000000f; }
.app.v9 .info-col { background: #f7f8fa; border-left: 1px solid #dadde1; }
.app.v9 .info-col input, .app.v9 .info-col textarea, .app.v9 .info-col select { background: #fff; border: 1px solid #e4e6eb; }
.app.v9 .post-banner, .app.v9 .post-card { background: #fff; }
@media (prefers-color-scheme: dark) {
  :root { --chat-tint: #1c2633; }
  .app.v9 .rail { background: #1c1d1f; }
  .app.v9 .list-col, .app.v9 .chat-head, .app.v9 .composer { background: #242526; border-color: #3a3b3c; }
  .app.v9 .msg.in { background: #3a3b3c; }
  .app.v9 .info-col { background: #1f2021; }
  .app.v9 .info-col input, .app.v9 .info-col textarea, .app.v9 .info-col select { background: #3a3b3c; border-color: #3a3b3c; }
}

/* v9.3 – Thanh trên + cột lọc màu xanh đậm riêng của ChatHub, khung chat nền xám ấm, danh sách/thông tin trắng */
:root { --bar: #2f6db5; --bar-2: #285f9e; --chat-tint: #ebe7e2; --accent: #2f6db5 !important; --accent-soft: #e6effa; }
.topbar { background: var(--bar); color: #fff; border-bottom: 0; box-shadow: 0 1px 3px #0000002e; }
.tb-brand .brand-name, .tb-me .nm { color: #fff; }
.topbar .rail-btn { color: #e8f0fb; opacity: .92; border-bottom: 0; border-top: 0; height: 40px !important; margin: auto 0; border-radius: 8px; }
.topbar .rail-btn:hover { color: #fff; background: #ffffff1f; opacity: 1; }
.topbar .rail-btn.active { color: #fff; background: #ffffff2e; font-weight: 700; }
.topbar #bellBtn { background: #ffffff26; color: #fff; }
.tb-me .avatar-btn { box-shadow: 0 0 0 2px #ffffff66; }
.app.v9 .rail { background: var(--bar-2); border-right: 0; }
.frail-btn { color: #dbe7f7; }
.frail-btn:hover { background: #ffffff1f; color: #fff; }
.frail-btn.active { background: #ffffff33; color: #fff; }
.app.v9 .list-col { background: #fff; }
.app.v9 .chat-col, .app.v9 .messages { background: var(--chat-tint); }
.app.v9 .chat-head, .app.v9 .composer { border-color: #dcd7d1; }
.app.v9 .msg.out { background: var(--bar); }
.app.v9 .info-col { background: #fff; }
.app.v9 .info-col input, .app.v9 .info-col textarea, .app.v9 .info-col select { background: #f0f2f5; border: 1px solid transparent; }
@media (max-width: 760px) {
  .topbar { border-top: 0; box-shadow: 0 -1px 3px #0000002e; }
  .topbar .rail-btn { height: 50px !important; border-radius: 0; }
  .topbar .rail-btn.active { background: #ffffff26; }
}
@media (prefers-color-scheme: dark) {
  :root { --bar: #24548c; --bar-2: #1f4877; --chat-tint: #1e1f22; }
  .app.v9 .list-col, .app.v9 .info-col { background: #242526; }
  .app.v9 .info-col input, .app.v9 .info-col textarea, .app.v9 .info-col select { background: #3a3b3c; }
}
