#page-chat .chat-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
#page-chat .chat-toolbar h1{margin-bottom:4px}
.chat-layout{display:grid;grid-template-columns:minmax(190px,260px) minmax(0,1fr);gap:14px;height:min(680px,70vh);min-height:380px}
.chat-sidebar,.chat-conversation{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;min-width:0;min-height:0;display:flex;flex-direction:column}
.chat-sidebar>input{width:calc(100% - 20px);margin:10px}.chat-people{overflow:auto;flex:1;padding:6px}
.chat-person{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:12px;border:0;border-radius:8px;text-align:left;background:transparent;color:var(--text);font:inherit;cursor:pointer;overflow-wrap:anywhere}
.chat-person.selected{background:var(--surface-2);box-shadow:inset 3px 0 var(--primary)}.chat-person b{background:var(--primary);color:white;border-radius:14px;padding:2px 7px}
.chat-conversation>header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.chat-messages{flex:1;min-height:0;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:12px}
.chat-message{align-self:flex-start;max-width:85%;padding:10px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;overflow-wrap:anywhere}
.chat-message.mine{align-self:flex-end;border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface))}
.chat-message p{font-weight:400;white-space:pre-wrap;margin:0 0 6px}.chat-message small{font-size:10px;color:var(--muted)}
#chatForm{display:flex;align-items:flex-end;gap:10px;padding:12px;border-top:1px solid var(--border)}#chatInput{resize:vertical;min-height:48px;max-height:140px;flex:1;min-width:0}#chatSend{flex:none}
/* Campos próprios do chat seguem as cores dos formulários existentes. */
#chatSearch,#chatInput{background:var(--field-bg);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:10px 12px;font:inherit}
#page-chat .chat-toolbar p{color:var(--muted)}
.chat-message.mine{background:var(--primary-soft)}
.chat-contact-copy{display:flex;align-items:center;gap:8px;min-width:0}.chat-presence-dot{width:9px;height:9px;border-radius:50%;background:var(--muted);flex:none}.chat-presence-dot.online{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 15%,transparent)}
.chat-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:12px 8px;border:0;border-bottom:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;font-weight:600;text-align:left;cursor:pointer;overflow-wrap:anywhere}.chat-group-toggle small{font-weight:400;color:var(--muted);font-size:10px;flex:none}.chat-group-empty{padding:8px}.chat-contact-group{margin-bottom:8px}
.chat-group-members{display:grid;gap:8px;max-height:40vh;overflow:auto;margin-top:16px}.chat-group-members label{display:flex;gap:10px;align-items:center;padding:9px;border:1px solid var(--border);border-radius:8px;overflow-wrap:anywhere}.chat-group-members input{flex:none;width:18px;height:18px;accent-color:var(--primary)}
button.queue-online-user{color:var(--text);font:inherit;cursor:pointer}button.queue-online-user:hover{border-color:var(--primary)}.chat-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:2px 5px;margin-left:6px;border-radius:12px;background:var(--primary);color:white;font-size:10px}.chat-toolbar [hidden]{display:none!important}
