#chatWidget {
    --cw-ink: #183239; --cw-muted: #657b80; --cw-accent: #0e756b; --cw-line: #e4eceb;
    font: 14px/1.7 Tahoma, Arial, sans-serif; direction: rtl; color: var(--cw-ink); text-align: right;
}
#chatWidget *, #chatWidget *::before, #chatWidget *::after { box-sizing: border-box; }
#chatWidget [hidden] { display: none !important; }
#chatWidget button, #chatWidget input, #chatWidget textarea, #chatWidget select { font: inherit; }
#chatWidget button { cursor: pointer; touch-action: manipulation; margin: 0; }
#chatWidget button:disabled { cursor: default; opacity: .45; }
#chatWidget button:focus-visible, #chatWidget input:focus-visible, #chatWidget textarea:focus-visible, #chatWidget select:focus-visible { outline: 3px solid #48b3a6; outline-offset: 3px; }
#chatWidget svg { display: block; width: 22px; height: 22px; flex-shrink: 0; }
#chatWidget .chat-widget-button { position: fixed; right: 24px; bottom: 24px; z-index: 99999; display: grid; place-items: center; width: 60px; height: 60px; border: 1px solid #ffffff40; border-radius: 22px; color: #fff; background: #0e756b; box-shadow: 0 8px 24px #0e756b40; transition: transform .18s ease, background .18s ease; }
#chatWidget .chat-widget-button:hover { transform: translateY(-3px); background: #095b54; }
#chatWidget .chat-widget-button > svg { width: 29px; height: 29px; }
#chatWidget .chat-widget-launcher-badge { position: absolute; top: -6px; right: -6px; min-width: 23px; padding: 0 5px; border: 2px solid #fff; border-radius: 20px; background: #c94b44; color: #fff; font-size: 11px; }
#chatWidget .chat-widget-window { position: fixed; right: 24px; bottom: 98px; z-index: 99999; display: flex; flex-direction: column; width: 420px; height: 660px; max-width: calc(100vw - 32px); max-height: calc(100dvh - 120px); overflow: hidden; isolation: isolate; border: 1px solid #d7e5e2; border-radius: 24px; background: #fff; box-shadow: 0 20px 70px #18323926, 0 3px 12px #1832390c; }
#chatWidget .chat-widget-header { display: flex; align-items: center; gap: 12px; padding: 16px 18px; color: #fff; background: #133e43; flex-shrink: 0; }
#chatWidget .chat-widget-brand { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid #ffffff2a; border-radius: 14px; background: #ffffff0d; }
#chatWidget .chat-widget-heading { flex: 1; }
#chatWidget .chat-widget-heading h2 { margin: 0; color: #fff; font: 700 17px/1.5 Tahoma, Arial, sans-serif; }
#chatWidget .chat-widget-connection { display: inline-flex; align-items: center; gap: 6px; color: #c3dbd9; font-size: 10px; }
#chatWidget .chat-widget-connection::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #d9b86b; }
#chatWidget .chat-widget-connection[data-state="online"]::before { background: #70ddaf; }
#chatWidget .chat-widget-connection[data-state="offline"]::before { background: #f2998b; }
#chatWidget .chat-widget-close { display: grid; place-items: center; width: 32px; height: 32px; border: 0; border-radius: 10px; background: #ffffff0d; color: #fff; font-size: 24px; line-height: 1; }
#chatWidget .chat-widget-close:hover { background: #ffffff20; }
#chatWidget .chat-widget-identity { display: flex; align-items: center; gap: 10px; padding: 12px 18px; border-bottom: 1px solid var(--cw-line); flex-shrink: 0; }
#chatWidget .chat-widget-identity > div { flex: 1; min-width: 0; }
#chatWidget .chat-widget-identity strong { display: block; font-size: 12px; overflow-wrap: anywhere; }
#chatWidget .chat-widget-eyebrow { display: block; font-size: 9px; color: var(--cw-muted); }
#chatWidget .chat-widget-site { max-width: 100px; padding: 3px 9px; border-radius: 8px; background: #f0f5f4; color: #59706e; font-size: 10px; overflow-wrap: anywhere; }
#chatWidget .chat-widget-avatar { position: relative; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 36px; height: 36px; border: 1px solid #d8e8e4; border-radius: 12px; background: #e6f2ed; color: #246e5e; font-weight: 700; font-size: 15px; }
#chatWidget .chat-widget-avatar[data-tone="1"] { color: #5469a0; background: #eef0fa; border-color: #e0e5f6; }
#chatWidget .chat-widget-avatar[data-tone="2"] { color: #a26d37; background: #fbf1e2; border-color: #f0e5d3; }
#chatWidget .chat-widget-avatar[data-tone="3"] { color: #895b83; background: #f5eaf2; border-color: #eadce6; }
#chatWidget .chat-widget-self-avatar { width: 32px; height: 32px; border-radius: 50%; font-size: 13px; }
#chatWidget .chat-widget-status { padding: 8px 16px; border-bottom: 1px solid #f4dfb3; background: #fff8e8; color: #855a1a; font-size: 11px; flex-shrink: 0; }
#chatWidget .chat-widget-users-header { display: flex; align-items: center; gap: 8px; width: 100%; padding: 11px 18px; border: 0; border-bottom: 1px solid var(--cw-line); background: #fff; color: var(--cw-ink); font-size: 12px; font-weight: 700; text-align: right; flex-shrink: 0; }
#chatWidget .chat-widget-users-header > svg { width: 18px; height: 18px; color: var(--cw-accent); }
#chatWidget .chat-widget-users-count { margin-right: auto; color: var(--cw-muted); font-size: 10px; font-weight: 400; }
#chatWidget .chat-widget-chevron svg { width: 15px; height: 15px; color: var(--cw-muted); transition: transform .15s; }
#chatWidget .chat-widget-users-header[aria-expanded="true"] .chat-widget-chevron svg { transform: rotate(180deg); }
#chatWidget .chat-widget-count { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 7px; background: #e0f2ed; color: #08675b; font-size: 10px; font-weight: 700; }
#chatWidget .chat-widget-contacts { display: flex; flex-direction: column; min-height: 80px; max-height: 220px; padding: 10px 12px 6px; border-bottom: 1px solid var(--cw-line); background: #fbfdfc; flex-shrink: 1; }
#chatWidget .chat-widget-filters { display: flex; flex-shrink: 0; gap: 8px; margin-bottom: 8px; }
#chatWidget .chat-widget-search { display: flex; align-items: center; flex: 1; min-width: 0; gap: 7px; margin: 0; padding: 6px 10px; border: 1px solid var(--cw-line); border-radius: 10px; background: #fff; }
#chatWidget .chat-widget-search svg { width: 16px; height: 16px; color: #8aa09f; }
#chatWidget .chat-widget-search input { min-width: 0; width: 100%; border: 0; background: transparent; color: var(--cw-ink); font-size: 11px; outline-offset: 0; }
#chatWidget .chat-widget-filters select { width: 100px; border: 1px solid var(--cw-line); border-radius: 10px; padding: 5px; background: #fff; color: var(--cw-ink); font-size: 10px; }
#chatWidget .chat-widget-users-list { min-height: 0; max-height: 166px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
#chatWidget .chat-widget-user { display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--cw-ink); text-align: right; }
#chatWidget .chat-widget-user:hover { background: #f0f6f4; }
#chatWidget .chat-widget-user.selected { border-color: #cee5de; background: #eaf5f0; }
#chatWidget .chat-widget-user-details { display: flex; flex-direction: column; flex: 1; min-width: 0; }
#chatWidget .chat-widget-user-name { font-size: 12px; overflow-wrap: anywhere; }
#chatWidget .chat-widget-user-subtitle { color: var(--cw-muted); font-size: 10px; }
#chatWidget .chat-widget-presence { position: absolute; right: -2px; bottom: -2px; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: #a8b8b7; }
#chatWidget .chat-widget-presence[data-online="true"] { background: #20a575; }
#chatWidget .chat-widget-no-users { padding: 16px 8px; margin: 0; color: var(--cw-muted); font-size: 11px; text-align: center; }
#chatWidget .chat-widget-selected-user { display: flex; align-items: center; gap: 9px; padding: 10px 16px; border-bottom: 1px solid var(--cw-line); background: #fff; flex-shrink: 0; }
#chatWidget .chat-widget-peer { flex: 1; min-width: 0; }
#chatWidget .chat-widget-peer strong { display: block; color: var(--cw-ink); font-size: 12px; overflow-wrap: anywhere; }
#chatWidget .chat-widget-peer > span { display: block; color: var(--cw-muted); font-size: 10px; }
#chatWidget .chat-widget-peer > span[data-online="true"] { color: #14835e; }
#chatWidget .chat-widget-today { max-width: 116px; color: var(--cw-muted); font-size: 9px; text-align: left; line-height: 1.8; }
#chatWidget .chat-widget-messages { position: relative; flex: 1; min-height: 70px; padding: 8px 16px 14px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; background: #f3f6f4; }
#chatWidget .chat-widget-empty { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 10px; min-height: 100%; padding: 22px 16px; text-align: center; }
#chatWidget .chat-widget-empty-icon { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 6px; border: 1px solid #d7e5df; border-radius: 23px; background: #e7eeea; color: #6e9a8c; transform: rotate(-7deg); }
#chatWidget .chat-widget-empty-icon svg { width: 32px; height: 32px; }
#chatWidget .chat-widget-empty strong { font-size: 14px; color: #34594f; }
#chatWidget .chat-widget-empty p { max-width: 240px; margin: 0; color: #6b817a; font-size: 11px; line-height: 2; }
#chatWidget .chat-widget-empty-action { margin-top: 5px; padding: 6px 14px; border: 1px solid #c6dcd2; border-radius: 9px; background: #fff; color: #176d57; font-size: 11px; }
#chatWidget .chat-widget-day { display: flex; align-items: center; gap: 10px; margin: 13px 0 18px; color: #6a817a; font-size: 9px; text-align: center; }
#chatWidget .chat-widget-day::before, #chatWidget .chat-widget-day::after { content: ''; flex: 1; height: 1px; background: #dfe8e2; }
#chatWidget .chat-widget-message { display: flex; justify-content: flex-end; margin: 0 0 12px; }
#chatWidget .chat-widget-message-own { justify-content: flex-start; }
#chatWidget .chat-widget-bubble { max-width: 87%; min-width: 115px; padding: 9px 12px 7px; border: 1px solid #e0e8e3; border-radius: 15px 15px 15px 4px; background: #fff; box-shadow: 0 2px 3px #18323904; }
#chatWidget .chat-widget-message-own .chat-widget-bubble { border-color: transparent; border-radius: 15px 15px 4px 15px; background: #0e756b; color: #fff; }
#chatWidget .chat-widget-message-sender { margin-bottom: 4px; color: #6c817c; font-size: 9px; overflow-wrap: anywhere; }
#chatWidget .chat-widget-message-own .chat-widget-message-sender { color: #c0e3db; }
#chatWidget .chat-widget-message-text { color: inherit; font-size: 13px; line-height: 1.95; white-space: pre-wrap; overflow-wrap: anywhere; text-align: start; }
#chatWidget .chat-widget-message-meta { display: flex; justify-content: flex-end; align-items: center; gap: 9px; margin-top: 5px; color: #7c9089; font-size: 9px; line-height: 1.5; }
#chatWidget .chat-widget-message-time { white-space: nowrap; }
#chatWidget .chat-widget-message-own .chat-widget-message-meta { color: #c4ded8; }
#chatWidget .chat-widget-seen { white-space: nowrap; }
#chatWidget .chat-widget-seen[data-seen="true"] { color: #b6ffe5; }
#chatWidget .chat-widget-older { align-self: center; padding: 5px 12px; margin: 6px; border: 1px solid var(--cw-line); border-radius: 20px; background: #fff; color: var(--cw-accent); font-size: 10px; flex-shrink: 0; }
#chatWidget .chat-widget-new-messages { position: absolute; left: 50%; bottom: 97px; transform: translateX(-50%); padding: 5px 12px; border: 1px solid #c5ded4; border-radius: 20px; background: #fff; color: #176d57; box-shadow: 0 2px 8px #18323915; font-size: 11px; }
#chatWidget .chat-widget-footer { display: flex; align-items: flex-end; gap: 8px; padding: 12px 12px 5px; border-top: 1px solid var(--cw-line); background: #fff; flex-shrink: 0; }
#chatWidget .chat-widget-composer { flex: 1; min-width: 0; margin: 0; }
#chatWidget .chat-widget-composer textarea { display: block; width: 100%; min-height: 44px; max-height: 100px; padding: 10px 12px; border: 1px solid #e0e9e5; border-radius: 13px; background: #f6f9f7; color: var(--cw-ink); font-size: 12px; line-height: 1.8; resize: none; overflow-y: hidden; }
#chatWidget .chat-widget-composer textarea::placeholder { color: #8a9f96; }
#chatWidget .chat-widget-send { display: grid; place-items: center; flex-shrink: 0; width: 43px; height: 43px; border: 0; border-radius: 13px; background: var(--cw-accent); color: #fff; }
#chatWidget .chat-widget-send svg { transform: rotate(-90deg); width: 20px; height: 20px; }
#chatWidget .chat-widget-hint { padding: 0 16px 9px; background: #fff; color: #8b9d96; font-size: 8px; text-align: center; flex-shrink: 0; }
#chatWidget .chat-widget-identity strong, #chatWidget .chat-widget-user-name, #chatWidget .chat-widget-peer strong { font-size: 13px; }
#chatWidget .chat-widget-eyebrow, #chatWidget .chat-widget-today, #chatWidget .chat-widget-day, #chatWidget .chat-widget-message-sender { font-size: 10px; }
#chatWidget .chat-widget-connection, #chatWidget .chat-widget-user-subtitle, #chatWidget .chat-widget-peer > span { font-size: 11px; }
#chatWidget .chat-widget-message-text { font-size: 14px; }
#chatWidget .chat-widget-message-meta { font-size: 10px; }
#chatWidget .chat-widget-hint { font-size: 9px; }
@media (max-width: 480px) {
    #chatWidget .chat-widget-button { right: 16px; bottom: 16px; width: 54px; height: 54px; border-radius: 19px; }
    #chatWidget .chat-widget-window { right: 10px; bottom: 82px; width: calc(100vw - 20px); max-width: none; max-height: calc(100dvh - 98px); border-radius: 20px; }
    #chatWidget .chat-widget-users-list { max-height: 140px; } #chatWidget .chat-widget-today { max-width: 90px; }
    #chatWidget .chat-widget-bubble { max-width: 92%; } #chatWidget .chat-widget-hint { display: none; }
}
@media (max-height: 600px) {
    #chatWidget .chat-widget-users-list { max-height: 90px; }
    #chatWidget .chat-widget-identity { padding-top: 6px; padding-bottom: 6px; } #chatWidget .chat-widget-header { padding-top: 9px; padding-bottom: 9px; }
}
@media (prefers-reduced-motion: reduce) { #chatWidget *, #chatWidget *::before, #chatWidget *::after { transition: none !important; } }
