/* Inherits the website's typography and palette; no separate customer theme. */
dialog.consult-chat{position:fixed;inset:18px 18px 18px auto;margin:0;width:min(540px,calc(100vw - 36px));height:calc(100dvh - 36px);max-width:none;max-height:none;padding:0;border:1px solid var(--line,#cddde7);border-radius:18px;background:var(--surface,#fff);color:var(--ink,#17394e);box-shadow:0 20px 70px #17394e30;overflow:hidden;font-size:16px}
dialog.consult-chat[open]{display:flex;flex-direction:column}
dialog.consult-chat::backdrop{background:#17394e45;backdrop-filter:blur(2px)}
.consult-chat-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:22px 22px 18px;border-bottom:1px solid var(--line,#cddde7)}
.consult-chat-header h2{font-size:21px;line-height:1.45;margin:0}.consult-chat-header p{font-size:14px;line-height:1.5;color:var(--muted,#577184);margin:5px 0 0}
.consult-chat-close{flex:none;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line,#cddde7);border-radius:10px;background:var(--surface,#fff);color:inherit;padding:10px}.consult-chat-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}
.consult-chat-receipt{flex:none;margin:0;padding:13px 22px;font-size:14px;line-height:1.6;background:var(--soft,#edf4f8);color:var(--muted,#577184)}.consult-chat-receipt.is-saved{color:#006168;background:#e8f5f4}
.consult-chat-log{flex:1;min-height:100px;overflow:auto;overscroll-behavior:contain;padding:22px;scrollbar-gutter:stable}.consult-chat-empty{font-size:16px;color:var(--muted,#577184);line-height:1.7;margin:20px 0}
.consult-chat-message{max-width:94%;margin:0 auto 18px 0;padding:14px 16px;border:1px solid var(--line,#cddde7);border-radius:2px 14px 14px;background:var(--surface,#fff);overflow-wrap:anywhere}.consult-chat-message.is-self{margin-left:auto;margin-right:0;border-color:#bddbdc;border-radius:14px 2px 14px 14px;background:#eff8f7}
.consult-chat-sender{display:block;font-size:13px;font-weight:600;color:var(--muted,#577184);margin-bottom:7px}.consult-chat-message p{font-size:15px;line-height:1.75;white-space:pre-wrap;margin:0}.consult-chat-message small{display:block;font-size:12px;color:var(--muted,#577184);margin-top:8px}.consult-chat-message a{display:block;font-size:15px;line-height:1.5;color:#006e75;text-decoration:underline;margin-top:8px;min-height:44px;padding:8px 0}
.consult-chat-warning,.consult-chat-error{flex:none;margin:0;padding:12px 22px;font-size:14px;line-height:1.6;background:#fff5e4;color:#85501e}.consult-chat-error{max-height:30%;overflow:auto;background:#fff1ef;color:#9d302b;border-top:1px solid #f0d2ce}.consult-chat-error p{font-size:14px;line-height:1.6;margin:0}.consult-chat-error button,.consult-chat-error a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;border:1px solid currentColor;border-radius:8px;padding:8px 13px;background:transparent;color:inherit;margin-top:8px;font-size:14px}
.consult-chat-composer{flex:none;border-top:1px solid var(--line,#cddde7);padding:16px 22px 18px;background:var(--surface,#fff)}.consult-chat-composer label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.consult-chat-composer textarea{display:block;width:100%;max-height:140px;min-height:80px;resize:vertical;border:1px solid var(--line,#cddde7);border-radius:10px;padding:11px 13px;background:var(--surface,#fff);color:inherit;font:inherit;font-size:16px;line-height:1.5}.consult-chat-composer>div{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:11px}.consult-chat-composer a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:var(--accent,#007d83)}.consult-chat-composer button{min-height:44px;min-width:112px;border-radius:9px;background:var(--accent,#007d83);color:white;font-weight:600;padding:10px 18px;font-size:16px}
.consult-chat button:disabled{cursor:default;opacity:.55}.consult-chat :is(button,a,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus,#236ab9);outline-offset:2px}
@media(max-width:640px){dialog.consult-chat{inset:var(--chat-viewport-top,0px) 0 auto;margin:0;width:100%;height:var(--chat-viewport-height,100dvh);border:0;border-radius:0}.consult-chat-header{padding:calc(16px + env(safe-area-inset-top)) 16px 14px}.consult-chat-header h2{font-size:20px}.consult-chat-receipt{padding:11px 16px}.consult-chat-log{padding:18px 16px}.consult-chat-message{max-width:96%;padding:12px 14px}.consult-chat-warning,.consult-chat-error{padding:10px 16px}.consult-chat-composer{padding:13px 16px calc(12px + env(safe-area-inset-bottom))}.consult-chat-composer textarea{resize:none;min-height:68px;max-height:100px}}
@media(prefers-reduced-motion:reduce){.consult-chat *{scroll-behavior:auto;transition:none}}
