#directory-chat-root{--dc-bottom:18px;--dc-bg:var(--surface-strong,#fff);--dc-card:var(--surface-soft,#f3f6f8);--dc-text:var(--text,#203238);--dc-muted:var(--muted,#586972);--dc-line:var(--line,#cdd6db);--dc-brand:var(--brand-strong,#22566c);position:fixed;bottom:calc(var(--dc-bottom) + env(safe-area-inset-bottom,0px));right:18px;z-index:99970;max-width:calc(100vw - 24px);font-family:inherit;font-size:14px;line-height:1.6;color:var(--dc-text);text-align:start}
#directory-chat-root[data-side=left]{right:auto;left:18px}
#directory-chat-root *,#directory-chat-root *:before,#directory-chat-root *:after{box-sizing:border-box}
#directory-chat-root [hidden]{display:none!important}
#directory-chat-root button,#directory-chat-root input,#directory-chat-root textarea{font:inherit;letter-spacing:normal;text-transform:none}
#directory-chat-root button{cursor:pointer;border:1px solid var(--dc-line);border-radius:12px;white-space:normal;line-height:1.5;min-height:40px;padding:8px 13px;box-shadow:none}
#directory-chat-root button:disabled{cursor:wait;opacity:.6}
#directory-chat-root :is(button,input,textarea,a):focus-visible{outline:2px solid var(--dc-brand);outline-offset:3px}
#directory-chat-root .dc-launch{display:flex;align-items:center;gap:9px;background:var(--dc-bg);color:var(--dc-text);border:2px solid var(--dc-brand);border-radius:999px;padding:12px 19px;box-shadow:0 6px 25px rgba(0,0,0,.18);font-weight:700}
#directory-chat-root .dc-mark{font-size:22px;color:var(--dc-brand);line-height:1}
#directory-chat-root .dc-topic{margin:0;padding:6px 10px;border-inline-start:3px solid var(--dc-brand);background:var(--dc-card);color:var(--dc-text);border-radius:6px;font-weight:600;font-size:12px}
#directory-chat-root .dc-head-copy{flex:1;min-width:0}
#directory-chat-root .dc-logo-wrap{width:64px;flex:0 0 64px;padding:4px;background:var(--header-bg,var(--dc-bg));border-radius:10px}
#directory-chat-root .dc-logo{width:56px;height:44px;object-fit:contain;display:block;max-width:100%}
#directory-chat-root .dc-logo-dark{display:none}
html[data-theme=dark] #directory-chat-root .dc-logo-light{display:none}
html[data-theme=dark] #directory-chat-root .dc-logo-dark{display:block}
#directory-chat-root .dc-panel{width:380px;max-width:calc(100vw - 24px);height:min(660px,var(--dc-panel-height,calc(100dvh - 106px)));max-height:var(--dc-panel-height,calc(100dvh - 106px));margin-bottom:10px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--dc-line);border-radius:20px;background:var(--dc-bg);color:var(--dc-text);box-shadow:0 16px 50px rgba(0,0,0,.24)}
#directory-chat-root .dc-head{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--dc-card);padding:14px 16px;border-bottom:1px solid var(--dc-line);border-top:4px solid var(--dc-brand)}
#directory-chat-root .dc-head strong,#directory-chat-root .dc-head small{display:block;color:var(--dc-text)}
#directory-chat-root .dc-head small{color:var(--dc-muted);font-size:12px}
#directory-chat-root .dc-icon{font-size:25px;line-height:1;width:38px;min-height:38px;padding:0;background:transparent;color:var(--dc-text)}
#directory-chat-root .dc-status{margin:0;padding:7px 16px;border-bottom:1px solid var(--dc-line);color:var(--dc-muted);font-size:12px}
#directory-chat-root .dc-intake{overflow:auto;padding:15px;display:flex;flex-direction:column;gap:10px;min-height:0;flex:1}
#directory-chat-root .dc-intro,#directory-chat-root .dc-help{margin:0;color:var(--dc-muted)}
#directory-chat-root .dc-field{display:grid;gap:4px;color:var(--dc-text);font-weight:600}
#directory-chat-root input:not([type=checkbox]),#directory-chat-root textarea{width:100%;min-width:0;background:var(--dc-bg);color:var(--dc-text);border:1px solid var(--dc-line);border-radius:10px;padding:9px 11px;box-shadow:none}
#directory-chat-root input::placeholder,#directory-chat-root textarea::placeholder{color:var(--dc-muted);opacity:1}
#directory-chat-root input[name=contact]{direction:ltr;text-align:start}
#directory-chat-root .dc-consent{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.7;color:var(--dc-muted)}
#directory-chat-root .dc-consent input{flex:0 0 17px;width:17px;height:17px;margin-top:3px;accent-color:var(--dc-brand)}
#directory-chat-root .dc-privacy{color:var(--dc-text);text-decoration:underline;font-size:12px}
#directory-chat-root .dc-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
#directory-chat-root .dc-primary{background:var(--brand,var(--dc-text));color:var(--dc-on-brand,var(--on-brand,var(--dc-bg)));border-color:var(--brand,var(--dc-text));font-weight:600}
#directory-chat-root .dc-secondary{background:var(--dc-card);color:var(--dc-text);font-size:12px}
#directory-chat-root .dc-log{overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1;padding:0 14px}
#directory-chat-root .dc-log:empty{display:none}
#directory-chat-root .dc-message{max-width:95%;margin:12px 0;padding:10px 12px;border-radius:14px;border:1px solid var(--dc-line);background:var(--dc-card);overflow-wrap:anywhere}
#directory-chat-root .dc-message p{white-space:pre-wrap;margin:3px 0 0;color:var(--dc-text);font-size:14px;line-height:1.75}
#directory-chat-root .dc-role{font-size:11px;color:var(--dc-muted)}
#directory-chat-root .dc-role-user{margin-inline-start:auto;background:var(--dc-bg);border-inline-start:3px solid var(--dc-brand)}
#directory-chat-root .dc-role-agent{border-inline-start:3px solid var(--dc-brand)}
#directory-chat-root .dc-role-system{font-size:12px;border-style:dashed}
#directory-chat-root .dc-sources{display:grid;gap:4px;margin-top:10px}
#directory-chat-root .dc-sources a{color:var(--dc-text);text-decoration:underline;line-height:1.7}
#directory-chat-root .dc-composer{display:flex;gap:7px;align-items:end;border-top:1px solid var(--dc-line);padding:10px}
#directory-chat-root .dc-composer textarea{resize:vertical;max-height:140px;min-height:46px}
#directory-chat-root .dc-composer button{flex-shrink:0}
#directory-chat-root .dc-actions{display:flex;gap:7px;padding:0 10px 10px}
#directory-chat-root .dc-actions:has(button:not([hidden])){padding-top:3px}
#directory-chat-root .dc-error,#directory-chat-root .dc-live{padding:0 13px;margin:5px 0;font-size:12px;color:var(--dc-text)}
#directory-chat-root .dc-error:empty,#directory-chat-root .dc-live:empty{display:none}
#directory-chat-root .dc-handoff{padding:12px;border:1px solid var(--dc-line);margin:8px;border-radius:12px;background:var(--dc-card)}
#directory-chat-root .dc-handoff p{margin:0 0 8px;line-height:1.8;color:var(--dc-text)}
#directory-chat-root .dc-handoff button{margin:3px}
@media(max-width:480px){#directory-chat-root{right:12px}#directory-chat-root[data-side=left]{left:12px}#directory-chat-root.dc-open{bottom:calc(12px + env(safe-area-inset-bottom,0px))}#directory-chat-root .dc-panel{width:calc(100vw - 24px);height:min(650px,calc(100dvh - 92px));max-height:calc(100dvh - 92px)}#directory-chat-root .dc-head{padding:10px 13px}#directory-chat-root .dc-launch{padding:9px 15px}}
@media(prefers-reduced-motion:reduce){#directory-chat-root *{scroll-behavior:auto;transition:none}}

#directory-chat-root .dc-retry{margin:0 15px 10px;align-self:flex-start}
#directory-chat-root .dc-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:8px 15px;max-height:112px;overflow:auto;border-top:1px solid var(--dc-line)}
#directory-chat-root .dc-suggestion{min-height:32px;padding:5px 9px;font-size:12px;text-align:start;background:var(--dc-card);color:var(--dc-text)}

/* Composer attachment menu and dismissible file/order panel. */
#directory-chat-root [hidden] { display:none!important; }
#directory-chat-root .dc-panel { position:relative; }
#directory-chat-root .dc-panel > .dc-head,
#directory-chat-root .dc-panel > .dc-status,
#directory-chat-root .dc-panel > .dc-composer,
#directory-chat-root .dc-panel > .dc-actions { flex-shrink:0; }
#directory-chat-root .dc-log:not(:empty) { min-height:64px; }
#directory-chat-root .dc-compose-tools { position:relative;flex:none;align-self:center; }
#directory-chat-root .dc-add { width:38px;height:38px;min-height:38px;border:1px solid var(--dc-line);border-radius:50%;padding:0;background:var(--dc-card);color:var(--dc-text);font-size:27px;font-weight:400;line-height:1; }
#directory-chat-root .dc-add[aria-expanded=true] { border-color:var(--dc-brand);box-shadow:0 0 0 2px var(--dc-line); }
#directory-chat-root .dc-attach-menu { position:absolute;bottom:calc(100% + 13px);inset-inline-start:0;z-index:8;min-width:205px;max-width:calc(100vw - 50px);padding:7px;border:1px solid var(--dc-line);border-radius:14px;background:var(--dc-card);box-shadow:0 8px 28px #0003;display:grid;gap:3px; }
#directory-chat-root .dc-attach-choice { display:block;width:100%;padding:10px 12px;text-align:start;white-space:normal;background:transparent;border:0;border-radius:8px;color:var(--dc-text);font-size:13px; }
#directory-chat-root .dc-attach-choice:hover:not(:disabled),#directory-chat-root .dc-attach-choice:focus-visible { background:var(--dc-bg);outline:1px solid var(--dc-brand); }
#directory-chat-root .dc-attach-choice:disabled { opacity:.45;cursor:not-allowed; }
#directory-chat-root .dc-tools { position:absolute;top:83px;bottom:107px;inset-inline:12px;z-index:6;display:flex;flex-direction:column;min-height:0;border:1px solid var(--dc-line);border-radius:16px;background:var(--dc-bg);box-shadow:0 8px 24px #0004;overflow:hidden; }
#directory-chat-root .dc-tools-head { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--dc-line);background:var(--dc-card);flex-shrink:0; }
#directory-chat-root .dc-tools-head strong { color:var(--dc-text);font-size:14px; }
#directory-chat-root .dc-tools-feedback { margin:0;padding:7px 14px;color:var(--dc-text);font-size:12px;border-bottom:1px solid var(--dc-line);flex-shrink:0;max-height:75px;overflow:auto; }
#directory-chat-root .dc-tools-feedback:empty { display:none; }
#directory-chat-root .dc-tools-body { min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:14px; }
#directory-chat-root .dc-upload-box { display:grid;gap:14px; }
#directory-chat-root .dc-file-selection { padding:12px;border:1px solid var(--dc-line);border-radius:10px;background:var(--dc-card);color:var(--dc-text);font-size:13px;overflow-wrap:anywhere;margin:0; }
#directory-chat-root .dc-tools input:not([type=checkbox]) { box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:8px;border:1px solid var(--dc-line);border-radius:9px;background:var(--dc-bg);color:var(--dc-text); }
#directory-chat-root .dc-offer,#directory-chat-root .dc-order { border:1px solid var(--dc-line);border-radius:12px;padding:12px;margin-top:12px;overflow-wrap:anywhere; }
#directory-chat-root .dc-offer p,#directory-chat-root .dc-order p { margin:8px 0;white-space:pre-wrap;font-size:13px;color:var(--dc-text); }
#directory-chat-root .dc-file-row { display:flex;gap:8px;align-items:center;justify-content:space-between;padding:8px 0;font-size:12px;overflow-wrap:anywhere; }
#directory-chat-root .dc-receipt fieldset { border:0;padding:0;margin:8px 0; }
#directory-chat-root .dc-source-document { display:block;font-size:12px; }
#directory-chat-root .dc-terms { white-space:pre-wrap; }
#directory-chat-root .dc-tools .dc-primary,#directory-chat-root .dc-tools .dc-secondary { white-space:normal; }
@media(max-width:360px){#directory-chat-root .dc-composer{gap:5px;padding:8px}#directory-chat-root .dc-composer .dc-primary{padding-inline:9px}#directory-chat-root .dc-add{width:32px;height:32px;min-height:32px}}
@media(max-height:500px){#directory-chat-root .dc-tools{top:70px;bottom:95px}#directory-chat-root .dc-tools-head{padding:4px 10px}#directory-chat-root .dc-suggestions{display:none}#directory-chat-root .dc-intake{min-height:0}}

/* Use the available viewport in short/landscape windows; keep close and send reachable. */
@media(max-height:500px){
 #directory-chat-root.dc-open{bottom:calc(8px + env(safe-area-inset-bottom,0px))}
 #directory-chat-root.dc-open .dc-launch{display:none}
 #directory-chat-root .dc-panel{height:calc(100dvh - 16px - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 16px - env(safe-area-inset-bottom,0px));margin-bottom:0}
 #directory-chat-root .dc-head{padding:6px 12px}
 #directory-chat-root .dc-head small{display:none}
 #directory-chat-root .dc-logo-wrap{width:46px;flex-basis:46px}
 #directory-chat-root .dc-logo{height:30px;width:38px}
 #directory-chat-root .dc-status{padding:3px 12px}
 #directory-chat-root .dc-composer{padding:6px}
 #directory-chat-root .dc-composer textarea{height:46px;max-height:80px}
 #directory-chat-root .dc-actions{padding-bottom:6px}
 #directory-chat-root .dc-actions button{min-height:32px;padding:4px 10px}
 #directory-chat-root .dc-tools{top:62px;bottom:99px}
 #directory-chat-root .dc-attach-menu{max-height:calc(100dvh - 150px);overflow-y:auto}
}
