/* Respostas rápidas e referências: navy Elozi, texto para revisão, foco no atendimento. */
.quick-replies-button { color: #315b73; }
.reply-composer-quote { display: flex; align-items: center; gap: 12px; border: 1px solid #cce4d9; border-left: 3px solid #2c7d61; background: #f0f8f4; border-radius: 8px; padding: 10px 11px; margin-bottom: 10px; }
.reply-composer-reference { min-width: 0; flex: 1; }
.reply-quote-kicker { display: block; font-size: 9px; font-weight: 750; letter-spacing: .9px; text-transform: uppercase; line-height: 1.7; color: #386d57; }
.reply-quote-preview { display: block; width: 100%; text-align: left; border: 0; background: transparent; color: #36574c; padding: 2px 0 0; font: inherit; cursor: pointer; min-width: 0; }
.reply-quote-preview strong, .message-quote strong { display: block; font-size: 11px; font-weight: 750; line-height: 1.7; color: #2f6451; }
.reply-quote-preview > span, .message-quote > span { display: block; font-size: 11px; line-height: 1.7; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.reply-clear-quote { width: 36px; height: 36px; flex-shrink: 0; color: #386d57; border: 1px solid #cce1d6; border-radius: 7px; background: #fff9; }
.reply-clear-quote:hover { background: #dcefe6; }
.reply-composer-error { color: #a34236; font-size: 11px; line-height: 1.7; margin: 0 3px 9px; }
.reply-composer-error:empty { display: none; }
.message-quote { display: block; width: 100%; max-width: 100%; margin: 0 0 9px; padding: 7px 10px; border: 0; border-left: 3px solid #78ae99; border-radius: 4px 7px 7px 4px; background: #132b4407; color: #466578; text-align: left; font: inherit; cursor: pointer; overflow: hidden; }
.message-quote:hover { background: #132b440e; }
.message-quote.is-unavailable { cursor: default; color: #647c8c; border-left-color: #b8c8d2; }
.message-quote.is-unavailable > span { white-space: normal; }
.message-reply-button { display: inline-flex; align-items: center; gap: 5px; float: right; margin: 4px -4px 0 9px; padding: 3px 5px; min-height: 28px; border: 0; border-radius: 5px; background: transparent; color: #536f82; font: inherit; font-size: 10px; line-height: 1.6; cursor: pointer; }
.message-reply-button .icon { width: 13px; height: 13px; transform: rotate(180deg); }
.message-reply-button:hover { color: #174d38; background: #94e7c735; }
.message-reply-button:disabled { opacity: .45; cursor: default; }
.message:has(.message-reply-button)::after { content: ''; display: block; clear: both; }
.reply-jump-target > .message { outline: 2px solid #317c60; outline-offset: 4px; }
.message-entry.reply-jump-target { outline: none; }
.quick-replies-picker, .quick-replies-manager, .quick-reply-editor { color: var(--ink, #193149); min-width: 0; }
.quick-replies-intro { display: flex; align-items: center; gap: 11px; padding: 13px 14px; border: 1px solid #dce9e3; border-radius: 9px; background: #f1f8f5; margin-bottom: 16px; }
.quick-replies-mark { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; flex-shrink: 0; border-radius: 8px; background: #d8eee4; color: #316f53; }
.quick-replies-mark .icon { width: 18px; height: 18px; }
.quick-replies-intro p { margin: 0; color: #486656; font-size: 12px; line-height: 1.8; }
.quick-replies-search { display: flex; gap: 9px; align-items: center; min-height: 44px; border: 1px solid #d8e4ec; border-radius: 8px; padding: 0 12px; margin-bottom: 12px; background: #fff; }
.quick-replies-search .icon { width: 17px; height: 17px; flex-shrink: 0; color: #668197; }
.quick-replies-search input { width: 100%; min-width: 0; padding: 10px 0; background: transparent; font: inherit; font-size: 12px; color: var(--ink, #193149); }
.modal .quick-replies-search input { border: 0; }
.quick-replies-search:focus-within { border-color: #789adb; outline: 2px solid #3157d51c; outline-offset: 1px; }
.quick-replies-search input:focus { outline: none; }
.quick-replies-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; max-height: min(46dvh, 390px); overflow: auto; scrollbar-width: thin; }
.quick-reply-option { display: block; width: 100%; padding: 12px 14px 11px; border: 1px solid #dfe8ed; border-radius: 9px; color: #365872; background: #fff; font: inherit; text-align: left; cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.quick-reply-option:hover { border-color: #97bfab; background: #f5faf7; }
.quick-reply-option:disabled { opacity: .5; cursor: default; }
.quick-reply-option-heading { display: flex; align-items: center; gap: 9px; min-width: 0; }
.quick-reply-option-heading code, .quick-reply-admin-heading code { max-width: 100%; border: 1px solid #d6e9df; background: #eaf5ef; padding: 2px 6px; border-radius: 5px; color: #2c6850; font: inherit; font-size: 10px; font-weight: 750; line-height: 1.8; overflow-wrap: anywhere; }
.quick-reply-option-heading strong { min-width: 0; flex: 1; color: #23445d; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.quick-reply-option-heading .icon { width: 15px; height: 15px; color: #567d6b; flex-shrink: 0; }
.quick-reply-option-text { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; color: #637d91; font-size: 11px; line-height: 1.9; margin: 5px 0 7px; white-space: pre-wrap; }
.quick-reply-option-hint { color: #45795f; font-size: 9px; font-weight: 650; line-height: 1.8; }
.quick-replies-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 13px; padding-top: 12px; border-top: 1px solid #e3ebf0; }
.quick-replies-footer small { color: #698195; font-size: 10px; line-height: 1.8; }
.quick-replies-footer .text-button { color: #3157a8; font-size: 11px; }
.quick-replies-feedback { color: #a34236; font-size: 12px; line-height: 1.8; margin-top: 10px; }
.quick-replies-feedback:empty { display: none; }
.quick-replies-empty { display: grid; justify-items: center; gap: 9px; padding: 30px 17px; border: 1px dashed #ccdae4; border-radius: 9px; background: #f8fafc; text-align: center; }
.quick-replies-empty > .icon { width: 26px; height: 26px; color: #7b96ab; margin-bottom: 3px; }
.quick-replies-empty strong { font-size: 13px; line-height: 1.7; color: #32526b; }
.quick-replies-empty p { font-size: 11px; line-height: 1.8; color: #6a8193; margin: 0; }
.quick-replies-manager-heading { display: flex; align-items: flex-start; gap: 15px; margin-bottom: 16px; }
.quick-replies-manager-heading > p { flex: 1; color: #657e90; font-size: 12px; line-height: 1.8; margin: 0; }
.quick-replies-manager-heading .button { flex-shrink: 0; min-height: 42px; }
.quick-replies-admin-list { display: grid; gap: 10px; max-height: min(50dvh, 460px); overflow: auto; scrollbar-width: thin; }
.quick-reply-admin-card { padding: 14px 15px; border: 1px solid #dce6ee; border-radius: 9px; background: #fff; }
.quick-reply-admin-card.is-inactive { background: #f8fafb; border-color: #e2e8ed; }
.quick-reply-admin-heading { display: flex; align-items: center; gap: 9px; justify-content: space-between; }
.quick-reply-state { display: inline-block; font-size: 9px; font-weight: 700; padding: 3px 7px; border: 1px solid #dce4e9; border-radius: 5px; background: #f1f4f7; color: #667d8f; }
.quick-reply-state.is-active { color: #30674e; background: #eaf6ef; border-color: #d3e9dc; }
.quick-reply-admin-card h3 { font-size: 13px; line-height: 1.7; margin: 9px 0 5px; color: #294961; overflow-wrap: anywhere; }
.quick-reply-admin-card > p { font-size: 11px; line-height: 1.9; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; color: #688196; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.quick-reply-admin-actions { display: flex; gap: 8px; align-items: center; border-top: 1px solid #e5edf2; padding-top: 8px; margin-top: 11px; }
.quick-reply-admin-actions small { flex: 1; color: #7a90a1; font-size: 10px; }
.quick-reply-admin-actions .text-button { color: #315b73; min-height: 36px; font-size: 11px; }
.quick-reply-admin-actions [data-reply-action="toggle"] { color: #697781; }
.quick-reply-editor-fields { display: grid; gap: 15px; }
.quick-reply-editor-fields label { display: block; font-size: 12px; font-weight: 650; line-height: 1.8; }
.quick-reply-editor-fields input, .quick-reply-editor-fields textarea { display: block; width: 100%; max-width: 100%; margin-top: 5px; padding: 10px 12px; border: 1px solid #d8e2eb; border-radius: 8px; color: #365872; background: #fff; font: inherit; font-size: 13px; font-weight: 450; line-height: 1.8; }
.quick-reply-editor-fields textarea { resize: vertical; min-height: 130px; max-height: 34dvh; }
.quick-reply-editor-fields small { display: block; color: #6b8293; font-size: 10px; font-weight: 450; line-height: 1.8; margin-top: 5px; }
.quick-reply-shortcut-field { display: flex; gap: 7px; align-items: center; padding-left: 12px; border: 1px solid #d8e2eb; border-radius: 8px; margin-top: 5px; background: #fff; }
.quick-reply-shortcut-field > span { color: #73998a; font-weight: 750; }
.modal .quick-reply-shortcut-field input { border: 0; margin: 0; padding-left: 0; }
.quick-reply-shortcut-field:focus-within { outline: 2px solid #3157d5; outline-offset: 2px; }
.quick-reply-shortcut-field input:focus { outline: none; }
.quick-reply-preview { padding: 15px; margin-top: 20px; border: 1px solid #dce8e2; border-radius: 9px; background: #f4f9f6; }
.quick-reply-preview [data-reply-preview] > p { font-size: 12px; font-weight: 450; line-height: 1.9; color: #456955; white-space: pre-wrap; overflow-wrap: anywhere; margin: 7px 0 0; max-height: 170px; overflow: auto; }
.quick-reply-preview [data-reply-preview] > .quick-reply-preview-empty { color: #7b9184; }
.reply-quote-preview:focus-visible, .reply-clear-quote:focus-visible, .message-quote:focus-visible, .message-reply-button:focus-visible, .quick-reply-option:focus-visible, .quick-replies-button:focus-visible, .quick-replies-manager button:focus-visible, .quick-replies-picker button:focus-visible, .quick-reply-editor button:focus-visible, .quick-reply-editor-fields input:focus-visible, .quick-reply-editor-fields textarea:focus-visible { outline: 2px solid #3157d5; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .quick-reply-option { transition: none; } }
@media (max-width: 760px) {
  .reply-composer-quote { gap: 8px; padding: 9px; }
  .reply-clear-quote { width: 44px; height: 44px; }
  .message-reply-button { min-height: 38px; padding: 5px 7px; margin-top: 0; }
  .quick-replies-footer { flex-wrap: wrap; }
  .quick-replies-footer .text-button { min-height: 44px; }
  .quick-reply-option { padding: 12px; }
  .quick-reply-option-heading { flex-wrap: wrap; gap: 5px 8px; }
  .quick-reply-option-heading strong { flex-basis: calc(100% - 25px); order: 2; }
  .quick-reply-option-heading .icon { margin-left: auto; }
  .quick-replies-list { max-height: 42dvh; }
  .quick-replies-manager-heading { flex-wrap: wrap; gap: 10px; }
  .quick-replies-manager-heading > p { flex-basis: 100%; }
  .quick-replies-manager-heading .button { min-height: 44px; width: 100%; }
  .quick-reply-admin-actions .text-button { min-height: 44px; }
  .quick-reply-editor-fields input, .quick-reply-editor-fields textarea { font-size: 16px; }
  .quick-reply-editor-fields textarea { min-height: 120px; }
  .quick-replies-search input { font-size: 16px; }
}
