/* The assistant sits above the shared booking dock, never on top of it. */
.sr-chat-launcher{position:fixed;z-index:88;right:24px;bottom:calc(100px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:9px;min-height:44px;padding:11px 16px;max-width:calc(100% - 40px);border:1px solid #c8c9bd;border-radius:999px;background:#faf8f3;color:var(--sr-navy);box-shadow:0 4px 18px #092b3d18;font:500 13px/1.3 SR Sans,Arial,sans-serif;cursor:pointer}
.sr-chat-launcher[hidden],.sr-chat-trigger[hidden],body:has(dialog[open]) .sr-chat-launcher,body:has(.sr-mobile-nav[open]) .sr-chat-launcher,body:has(.sr-shortcuts[open]) .sr-chat-launcher{display:none}
body:has(.sr-message-form input:focus,.sr-message-form textarea:focus) .sr-chat-launcher{display:none}
.sr-chat-inline{display:inline-flex;gap:12px;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border:1px solid #c8c9bd;border-radius:8px;background:#f7f4ee;color:var(--sr-navy);font:600 13px/1.4 SR Sans,Arial,sans-serif;cursor:pointer}
.sr-footer-message .sr-chat-inline{justify-self:start;margin-top:8px}
.sr-chat-launcher:hover,.sr-chat-inline:hover{background:#eee7dc;border-color:#8e704a}
.sr-chat-dialog{position:fixed;inset:var(--sr-chat-top,164px) 24px 96px auto;width:430px;max-width:calc(100% - 40px);height:min(760px,calc(100dvh - var(--sr-chat-top,164px) - 96px));max-height:none;margin:auto 0 0;padding:0;border:1px solid #d9d1c5;border-radius:18px;background:#faf8f3;color:var(--sr-navy);box-shadow:0 15px 70px #092b3d30;overflow:hidden}
.sr-chat-dialog[open]{display:flex;flex-direction:column}
.sr-chat-dialog::backdrop{background:#092b3d20}
.sr-chat-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 20px 14px;background:#eee7dc;flex:none}
.sr-chat-header p{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#536772}
.sr-chat-header h2{font:400 26px/1.12 SR Serif,Georgia,serif;margin:7px 0 0;color:var(--sr-navy)}
.sr-chat-dialog button{font-family:SR Sans,Arial,sans-serif;cursor:pointer}
.sr-chat-close{flex:none;width:36px;height:36px;padding:0;border:1px solid #ccc5b8;border-radius:50%;background:#faf8f3;color:var(--sr-navy);font-size:17px}
.sr-chat-dialog .sr-chat-privacy{font-size:10px;line-height:1.55;padding:12px 20px;color:#536772;flex:none}
.sr-chat-selection{display:flex;align-items:center;gap:12px;padding:0 20px 12px;font-size:11px;flex:none}
.sr-chat-selection select{min-width:0;width:100%;min-height:40px;border:1px solid #c9c9bf;border-radius:7px;background:white;color:var(--sr-navy);font:400 14px/1.4 SR Sans,Arial,sans-serif;padding:6px 9px}
.sr-chat-log{flex:1;min-height:90px;padding:4px 20px 16px;overflow:auto;overscroll-behavior:contain;scroll-behavior:auto}
.sr-chat-dialog .sr-chat-message{margin:0 0 12px;border:1px solid #ded8cc;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.65;overflow-wrap:anywhere;background:white;white-space:pre-wrap}
.sr-chat-message p+p,.sr-chat-message strong+p{margin-top:8px}
.sr-chat-dialog .sr-chat-user{margin-left:30px;border-color:#e2d6c2;background:#eee7dc}
.sr-chat-answer-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.sr-chat-answer-actions>a,.sr-chat-answer-actions>button,.sr-chat-choices button{display:inline-flex;align-items:center;min-height:40px;padding:8px 11px;border:1px solid #cad0c5;border-radius:7px;background:#f7f4ee;color:var(--sr-navy);font-size:12px;line-height:1.4;text-decoration:none;text-align:left;overflow-wrap:anywhere}
.sr-chat-answer-actions .sr-chat-call{border:0;background:none;font-size:11px;color:#536772;padding-left:0}
.sr-chat-choices{display:flex;flex-wrap:wrap;gap:7px}
.sr-chat-topics{display:flex;flex-wrap:wrap;gap:6px;padding:8px 20px;border-top:1px solid #e1dbd0;flex:none}
.sr-chat-topics button{border:1px solid #d6cbb7;border-radius:999px;padding:6px 9px;min-height:32px;background:#faf8f3;color:#445b65;font-size:10px;line-height:1.4;text-align:left}
.sr-chat-form{display:flex;gap:8px;padding:8px 20px;flex:none}
#sr-chat-dialog .sr-chat-form input{flex:1;width:0;min-width:0;min-height:44px;border:1px solid #c9c9bf;border-radius:7px;background:white;font:400 16px/1.4 SR Sans,Arial,sans-serif;color:var(--sr-navy);padding:10px}
.sr-chat-form input::placeholder{font-size:12px;color:#6b787f}
#sr-chat-dialog .sr-chat-form button{padding:8px 14px;border:0;border-radius:7px;background:var(--sr-navy);color:white;font-size:12px;font-weight:600}
#sr-chat-dialog .sr-chat-form button:is(:hover,:focus,:active){background:#174352;color:white}
.sr-chat-footer{display:flex;justify-content:space-between;gap:12px;padding:4px 20px 12px;flex:none}
.sr-chat-footer button{background:transparent;border:0;padding:4px 0;min-height:32px;font-size:10px;color:#536772;text-align:left;text-decoration:underline;text-underline-offset:3px}
.sr-chat-status:not(:empty){padding:0 20px 12px;font-size:10px;color:#536772}
.sr-chat-dialog :focus-visible,.sr-chat-trigger:focus-visible{outline:3px solid var(--sr-gold);outline-offset:2px}
body:has(.sr-chat-dialog[open]){overflow:hidden}
.sr-message-handoff{padding:14px;margin-bottom:20px;border:1px solid #c8cdbd;border-radius:9px;background:#eeefe7;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.sr-message-handoff strong{display:block;color:var(--sr-navy)}
.sr-message-handoff pre{white-space:pre-wrap;font:inherit;max-height:160px;overflow:auto;margin:10px 0;background:#faf8f3;padding:10px;border-radius:5px}
.sr-message-handoff-buttons{display:flex;flex-wrap:wrap;gap:8px}
.sr-message-handoff button{min-height:40px;padding:8px 11px;border:1px solid #c8c9bd;border-radius:6px;background:#faf8f3;color:var(--sr-navy);font:600 12px/1.4 SR Sans,Arial,sans-serif;cursor:pointer}
.sr-message-handoff [role=status]:not(:empty){padding-top:10px;color:#853e26}
@media(max-width:767px){
 .sr-chat-launcher{right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px));padding:10px 13px;font-size:12px}
 .sr-chat-dialog{inset:auto 8px 8px;width:calc(100% - 16px);max-width:none;height:min(790px,calc(100dvh - var(--sr-chat-top,132px) - 8px));margin:0;max-height:none;border-radius:16px}
 .sr-chat-header{padding:14px 16px 10px}.sr-chat-header h2{font-size:23px}
 .sr-chat-dialog .sr-chat-privacy{padding:8px 16px;font-size:9px}
 .sr-chat-selection{padding:0 16px 8px;gap:8px;font-size:10px}
 .sr-chat-log{padding:4px 16px 12px}.sr-chat-topics{padding:8px 16px}
 .sr-chat-form{padding:8px 16px}.sr-chat-footer{padding:0 16px 10px}
 .sr-chat-dialog .sr-chat-message{font-size:12px;padding:10px 12px}
 .sr-footer-message .sr-chat-inline{width:100%;justify-self:stretch}
}
@media(max-height:600px){.sr-chat-privacy,.sr-chat-topics{display:none}.sr-chat-log{min-height:0}}
@media print{.sr-chat-launcher,.sr-chat-inline,.sr-chat-dialog{display:none!important}}
