#chat-dialog{position:fixed;inset:auto 24px 24px auto;margin:0;padding:0;width:min(580px,calc(100vw - 32px));max-width:580px;height:min(800px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);border:1px solid #dbe2df;border-radius:18px;background:#fff;box-shadow:0 28px 90px #17264030;overflow:hidden;color:#172640}
#chat-dialog[open]{display:flex;flex-direction:column}#chat-dialog [hidden]{display:none!important}#chat-dialog::backdrop{background:#101c344d;backdrop-filter:blur(3px)}
#chat-dialog button,#chat-dialog input,#chat-dialog textarea{font:inherit}#chat-dialog button{touch-action:manipulation}#chat-dialog input,#chat-dialog textarea{box-sizing:border-box}
#chat-dialog .chat-modal-head{display:flex;align-items:center;gap:12px;padding:19px 24px 17px;flex-shrink:0;background:#fff}#chat-dialog .chat-modal-head>div{min-width:0;flex:1}#chat-dialog .chat-modal-head strong{font-size:17px;font-weight:700;display:block}#chat-dialog .chat-modal-head small{font-size:11px;color:#7a8389;display:block;margin-top:4px}#chat-dialog #chat-close{width:36px;height:36px;border:0;border-radius:50%;background:#f2f4f1;font-size:25px;color:#58656d;margin-left:auto;flex-shrink:0}
#chat-dialog .contact-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:0 24px 14px;border-bottom:1px solid #e6eae5;flex-shrink:0}#chat-dialog .contact-tabs>button{border:0;border-radius:7px;background:#f4f5f2;padding:11px 14px;color:#737d83;font-size:13px;font-weight:600}#chat-dialog .contact-tabs>button[aria-selected=true]{background:#172640;color:#fff}#chat-dialog .contact-tabs>button:disabled{opacity:.6}
#chat-dialog .contact-body{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:22px 24px;background:#fff}#contact-fields,#chat-dialog .contact-topics{border:0;margin:0;padding:0;min-width:0}#chat-dialog .contact-topics{margin-bottom:22px}#chat-dialog .contact-topics legend{font-size:17px;font-weight:700;line-height:1.5;letter-spacing:-.035em;margin-bottom:14px;padding:0}#chat-dialog .contact-topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}#chat-dialog .contact-topic-grid>label{position:relative;display:flex;align-items:center;gap:8px;padding:12px 13px;min-height:65px;border:1px solid #dfe4de;border-radius:9px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}#chat-dialog .contact-topic-grid>label:hover{border-color:#84978e}#chat-dialog .contact-topic-grid>label:has(input:checked){border-color:#567565;background:#f1f5ef}#chat-dialog .contact-topic-grid>label:has(input:focus-visible){outline:3px solid #4263df;outline-offset:2px}#chat-dialog .contact-topic-grid input{position:absolute;left:13px;top:13px;width:1px;height:1px;margin:0;opacity:0}#chat-dialog .contact-topic-grid strong{display:block;font-size:13px;font-weight:600;line-height:1.45}#chat-dialog .contact-topic-grid small{display:block;font-size:11px;line-height:1.5;color:#758078;margin-top:4px}#chat-dialog .contact-topic-grid i{font-size:15px;font-style:normal;color:#7d8a80;margin-left:auto}#chat-dialog .contact-topic-grid>label:has(input:checked) i{color:#365441}#chat-dialog .contact-topic-grid>label:has(input:disabled){cursor:default}
#chat-dialog .contact-field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600;line-height:1.5;margin-bottom:17px}#chat-dialog .contact-field input,#chat-dialog .contact-field textarea{display:block;width:100%;min-height:44px;border:1px solid #d9dfd8;border-radius:7px;padding:11px 12px;font-size:13px;font-weight:400;color:#25364b;background:#fff;line-height:1.65;outline-offset:2px}#chat-dialog .contact-field textarea{min-height:96px;max-height:200px;resize:vertical}#chat-dialog .contact-field input::placeholder,#chat-dialog .contact-field textarea::placeholder{color:#9bA29d}#chat-dialog .contact-field input:focus,#chat-dialog .contact-field textarea:focus{border-color:#567565}#chat-dialog .contact-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}#contact-fields:disabled{opacity:.65}
#chat-dialog .contact-consent{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.8;color:#6e7975;cursor:pointer;margin-top:2px}#chat-dialog .contact-consent>input{width:16px;height:16px;flex-shrink:0;accent-color:#3c5b4b;margin:2px 0 0}#chat-dialog .contact-consent button{font-size:inherit;border:0;padding:0;background:none;color:#4a6559;text-decoration:underline;text-underline-offset:3px}
#chat-dialog .contact-intake-actions{padding:16px 24px 17px;border-top:1px solid #e6eae5;background:#fff;flex-shrink:0}#chat-dialog #contact-submit{width:100%;min-height:48px;font-size:13px;border-radius:7px}#chat-dialog #contact-submit:disabled{opacity:.6;cursor:wait}#chat-dialog .contact-email{display:block;text-align:center;font-size:11px;color:#78867c;padding:10px 0 0}#chat-dialog #contact-status,#contact-receipt [data-status]{font-size:12px;line-height:1.8;color:#925444;margin:0 0 12px;overflow-wrap:anywhere}
#chat-dialog #live-messages{padding:0;min-height:100%;background:#fff}#chat-dialog .live-message{font-size:14px;line-height:1.85;white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere;max-width:91%;margin:0 0 16px;padding:13px 15px;border-radius:11px;width:fit-content}#chat-dialog .live-message.assistant{background:#f0f3ee;color:#45584c;margin-right:auto}#chat-dialog .live-message.user{background:#243a5d;color:#fff;margin-left:auto}#chat-dialog .live-message.notice{font-size:12px;background:transparent;color:#7d8580;padding:4px 0;max-width:100%}#chat-dialog .typing-indicator{font-size:12px;color:#8a968d;margin:7px 0 15px}
#chat-dialog .contact-guide-actions{padding:14px 24px 15px;border-top:1px solid #e6eae5;background:#fff;flex-shrink:0}#chat-dialog #chat-form{display:flex;gap:9px;align-items:center;margin:0;border:0;padding:0;background:#fff}#chat-dialog #chat-text{flex:1;min-width:0;height:46px;padding:11px 12px;border:1px solid #d9dfd8;border-radius:7px;color:#334d70;font-size:13px;background:white;outline-offset:2px}#chat-dialog #chat-form>button{width:44px;height:44px;flex-shrink:0;padding:0;background:#172640;border:0;color:white;border-radius:7px;font-size:22px}#chat-dialog #chat-form>button:disabled{opacity:.45}#chat-dialog #chat-apply{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;font-size:12px;border:0;background:none;color:#4d695b;padding:14px 0 0}
#contact-receipt{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:24px 0}#contact-receipt .receipt-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#edf4e9;color:#4c715b;font-size:23px}#contact-receipt h2{font-size:23px;line-height:1.5;letter-spacing:-.035em;margin:0}#contact-receipt p{font-size:14px;color:#68786c;line-height:1.9;margin:0;word-break:keep-all;overflow-wrap:anywhere}#contact-receipt small{font-size:11px;line-height:1.8;color:#8c968e;overflow-wrap:anywhere;max-width:100%}#contact-receipt .btn{font-size:13px;min-height:46px}#contact-receipt .contact-new{font-size:13px;border:0;background:none;color:#4d695b;padding:8px 0;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){#chat-dialog{inset:auto 10px max(10px,env(safe-area-inset-bottom)) 10px;width:calc(100vw - 20px);height:min(820px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);border-radius:14px}#chat-dialog .chat-modal-head{padding:16px 17px 13px}#chat-dialog .contact-tabs{padding:0 17px 12px}#chat-dialog .contact-body{padding:20px 17px}#chat-dialog .contact-topic-grid>label{padding:11px 10px;min-height:64px}#chat-dialog .contact-topic-grid strong{font-size:12px}#chat-dialog .contact-topic-grid small{font-size:10px}#chat-dialog .contact-topics legend{font-size:17px}#chat-dialog .contact-field input,#chat-dialog .contact-field textarea,#chat-dialog #chat-text{font-size:16px}#chat-dialog .contact-field-grid{grid-template-columns:1fr;gap:0}#chat-dialog .contact-field{margin-bottom:16px}#chat-dialog .contact-intake-actions{padding:13px 17px 14px}#chat-dialog .contact-guide-actions{padding:13px 17px 14px}#chat-dialog .live-message{font-size:14px}#chat-dialog .contact-consent{font-size:11px}#contact-receipt{padding:18px 0}#contact-receipt h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){#chat-dialog *{scroll-behavior:auto;transition:none!important}}
#chat-dialog .contact-topic-selection{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;border-radius:9px;background:#f1f5ef;border:1px solid #d6e1d3}#chat-dialog .contact-topic-selection>strong{font-size:16px;font-weight:600}#chat-dialog .contact-topic-selection>button{font-size:12px;background:none;border:0;color:#567160;text-decoration:underline;text-underline-offset:3px;padding:6px}#chat-dialog:not(.is-choosing-topic) .contact-topics legend{font-size:12px;font-weight:600;margin-bottom:8px;letter-spacing:0}#chat-dialog.is-choosing-topic .contact-body{flex:0 1 auto;padding-top:28px;padding-bottom:28px}#chat-dialog.is-choosing-topic{height:auto;min-height:0}#chat-dialog.is-choosing-topic .contact-intake-actions{padding-top:4px;border-top:0;padding-bottom:21px}#chat-dialog.is-choosing-topic .contact-topics{margin-bottom:0}#chat-dialog.is-choosing-topic .contact-email{padding-top:0}
