/* Listing-scoped assistant and owner workspace. */
#ls-business-chat { --lsc-accent:#5b5cf0; --lsc-ink:#101828; --lsc-muted:#667085; --lsc-line:#e8eaf0; font:400 14px/1.5 var(--ls-font-primary,Arial,sans-serif); color:var(--lsc-ink); }
#ls-business-chat *, #ls-chat-owner * { box-sizing:border-box; }
#ls-business-chat [hidden], #ls-chat-owner [hidden] { display:none!important; }
#ls-business-chat button, #ls-business-chat input, #ls-business-chat textarea, #ls-chat-owner input, #ls-chat-owner textarea, #ls-chat-owner select { font:inherit; }
#ls-business-chat button { cursor:pointer; text-transform:none; letter-spacing:normal; margin:0; }
#ls-business-chat button:focus-visible, #ls-business-chat a:focus-visible, #ls-business-chat input:focus-visible, #ls-business-chat textarea:focus-visible, #ls-chat-owner button:focus-visible { outline:3px solid #4445d7; outline-offset:3px; }
#ls-business-chat .lsc-launcher { position:fixed; inset-inline-end:24px; bottom:24px; z-index:99990; display:flex; align-items:center; gap:10px; padding:15px 22px; border:1px solid #4445d7; border-radius:50px; background:#5b5cf0; color:white; font-weight:700; box-shadow:0 8px 30px rgba(16,24,40,.2); }
#ls-business-chat .lsc-launcher::before { content:''; width:18px; height:16px; border:2px solid currentColor; border-radius:5px 5px 5px 0; }
#ls-business-chat .lsc-panel { position:fixed; right:24px; bottom:94px; z-index:99991; width:390px; max-width:calc(100vw - 32px); max-height:min(720px,calc(100dvh - 130px)); display:flex; flex-direction:column; background:white; border:1px solid #e8eaf0; border-radius:20px; box-shadow:0 20px 70px rgba(16,24,40,.22); overflow:hidden; }
#ls-business-chat .lsc-header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:20px; background:#f0f0fe; border-bottom:1px solid #e8eaf0; flex-shrink:0; }
#ls-business-chat .lsc-header h2 { margin:0; font:700 18px/1.3 var(--ls-font-primary,Arial,sans-serif); color:#101828; overflow-wrap:anywhere; }
#ls-business-chat .lsc-header p { margin:5px 0 0; color:#475467; font-size:11px; }
#ls-business-chat .lsc-close { display:grid; place-items:center; flex:0 0 40px; width:40px; height:40px; padding:0; border:1px solid #d6d6fa; border-radius:50%; color:#344054; background:#fff; font-size:26px; line-height:1; }
#ls-business-chat .lsc-scroll { padding:20px; overflow-y:auto; overscroll-behavior:contain; }
#ls-business-chat p { margin:0 0 12px; font-size:inherit; line-height:1.5; }
#ls-business-chat h3 { margin:0 0 12px; font-size:16px; line-height:1.4; color:#101828; }
#ls-business-chat .lsc-intro { color:#475467; }
#ls-business-chat .lsc-actions { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
#ls-business-chat .lsc-primary, #ls-business-chat .lsc-secondary, #ls-business-chat .lsc-slot, #ls-business-chat .lsc-danger { min-height:42px; padding:10px 13px; border:1px solid transparent; border-radius:10px; font-size:13px; font-weight:600; line-height:1.4; }
#ls-business-chat .lsc-primary { background:#5b5cf0; color:#fff; }
#ls-business-chat .lsc-primary:hover { background:#4445d7; }
#ls-business-chat .lsc-secondary, #ls-business-chat .lsc-slot { background:#fff; color:#4445d7; border-color:#d6d6fa; }
#ls-business-chat .lsc-secondary:hover, #ls-business-chat .lsc-slot:hover { background:#f0f0fe; }
#ls-business-chat .lsc-danger { background:#b42318; color:#fff; }
#ls-business-chat .lsc-status { color:#344054; background:#f8fafc; border-radius:8px; overflow-wrap:anywhere; }
#ls-business-chat .lsc-status:not(:empty) { padding:10px; border:1px solid #e8eaf0; margin-bottom:14px; }
#ls-business-chat .lsc-content:not(:empty) { border-top:1px solid #e8eaf0; padding-top:16px; margin-top:16px; margin-bottom:18px; }
#ls-business-chat .lsc-field, #ls-chat-owner .lsc-field { display:block; font-weight:600; margin:0 0 14px; }
#ls-business-chat .lsc-field input, #ls-business-chat .lsc-field textarea, #ls-business-chat .lsc-compose textarea { display:block; width:100%; min-height:44px; margin-top:5px; padding:10px 12px; border:1px solid #d0d5dd; border-radius:9px; background:#fff; color:#101828; box-shadow:none; resize:vertical; font-size:16px; }
#ls-business-chat .lsc-honey { position:absolute!important; width:1px!important; height:1px!important; opacity:0; pointer-events:none; }
#ls-business-chat .lsc-consent, #ls-chat-owner .lsc-consent { display:flex; align-items:flex-start; gap:8px; font-weight:400; margin-bottom:14px; }
#ls-business-chat .lsc-consent { color:#475467; font-size:12px; }
#ls-business-chat .lsc-consent input, #ls-chat-owner .lsc-consent input { flex:0 0 auto; margin-top:3px; }
#ls-business-chat .lsc-detail { color:#667085; font-size:12px; margin-top:8px; }
#ls-business-chat .lsc-slots { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
#ls-business-chat .lsc-slots p { grid-column:1/-1; }
#ls-business-chat .lsc-message, #ls-chat-owner .lsc-message { padding:12px 14px; margin:10px 0; border-radius:12px; background:#f2f4f7; overflow-wrap:anywhere; }
#ls-business-chat .lsc-message strong, #ls-chat-owner .lsc-message strong { font-size:11px; color:#475467; }
#ls-business-chat .lsc-message p, #ls-chat-owner .lsc-message p { margin:5px 0 0; white-space:pre-wrap; }
#ls-business-chat .lsc-message-visitor, #ls-chat-owner .lsc-message-visitor { background:#f0f0fe; margin-left:20px; }
#ls-business-chat .lsc-message-owner, #ls-chat-owner .lsc-message-owner { background:#e7f8f6; border:1px solid #c1e9e3; }
#ls-business-chat .lsc-compose { display:flex; align-items:flex-end; gap:8px; margin-top:16px; }
#ls-business-chat .lsc-compose textarea { margin:0; min-width:0; }
#ls-business-chat .lsc-compose button { flex:0 0 auto; }
#ls-business-chat .lsc-appointment { background:#effaf6; border:1px solid #c5e7db; padding:14px; border-radius:12px; margin-top:12px; }
#ls-business-chat .lsc-appointment strong { display:block; color:#066448; font-size:13px; margin-bottom:6px; }
#ls-business-chat .lsc-text-button { border:0; padding:8px 0; min-height:40px; background:none; color:#4445d7; text-decoration:underline; font-size:12px; display:block; }
#ls-business-chat .lsc-footer { padding:12px 20px; border-top:1px solid #e8eaf0; font-size:10px; line-height:1.5; color:#667085; background:#f8fafc; flex-shrink:0; }
#ls-business-chat .lsc-footer a { color:#4445d7; }
#ls-business-chat.lsc-busy button, #ls-chat-owner.lsc-busy button { opacity:.65; pointer-events:none; }
#ls-business-chat.lsc-busy .lsc-close, #ls-business-chat.lsc-busy .lsc-launcher { pointer-events:auto; opacity:1; }
#ls-chat-owner { max-width:1200px; margin:24px 0; font-size:14px; line-height:1.5; }
#ls-chat-owner .lsc-owner-tabs { display:flex; flex-wrap:wrap; gap:8px; padding-bottom:16px; border-bottom:1px solid #dcdcde; }
#ls-chat-owner .lsc-owner-status:not(:empty) { padding:12px 16px; background:white; border-left:4px solid #5b5cf0; }
#ls-chat-owner .lsc-owner-view { margin-top:20px; }
#ls-chat-owner .lsc-inbox-layout { display:grid; grid-template-columns:280px minmax(0,1fr); gap:20px; }
#ls-chat-owner .lsc-thread-list, #ls-chat-owner .lsc-thread-detail, #ls-chat-owner .lsc-schedule, #ls-chat-owner .lsc-owner-booking { background:white; border:1px solid #dcdcde; padding:20px; border-radius:12px; min-width:0; }
#ls-chat-owner .lsc-thread-button { display:block; width:100%; padding:12px; text-align:left; background:#f8fafc; border:1px solid #e8eaf0; border-radius:8px; cursor:pointer; margin-bottom:10px; overflow-wrap:anywhere; }
#ls-chat-owner .lsc-thread-button:hover { border-color:#5b5cf0; }
#ls-chat-owner .lsc-thread-button span, #ls-chat-owner .lsc-thread-button small { display:block; margin-top:4px; }
#ls-chat-owner .lsc-owner-log { max-height:440px; overflow:auto; margin-bottom:20px; }
#ls-chat-owner .lsc-field input, #ls-chat-owner .lsc-field select, #ls-chat-owner .lsc-field textarea { display:block; width:100%; margin-top:6px; font-weight:400; }
#ls-chat-owner .lsc-schedule-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#ls-chat-owner .lsc-schedule-rows { margin:20px 0; }
#ls-chat-owner .lsc-schedule-row { display:grid; grid-template-columns:110px 100px minmax(100px,1fr) 20px minmax(100px,1fr); gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid #e8eaf0; }
#ls-chat-owner .lsc-schedule-row .lsc-consent { margin:0; }
#ls-chat-owner .lsc-owner-bookings { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:16px; }
#ls-chat-owner .lsc-owner-booking p { white-space:pre-wrap; overflow-wrap:anywhere; }
#ls-chat-owner .lsc-warning { color:#b42318; }
@media(max-width:600px) {
  #ls-business-chat .lsc-launcher { right:16px; bottom:max(16px,env(safe-area-inset-bottom)); padding:13px 18px; }
  #ls-business-chat .lsc-panel { left:12px; right:12px; bottom:84px; width:auto; max-width:none; max-height:calc(100dvh - 110px); border-radius:16px; }
  #ls-business-chat .lsc-header { padding:16px; }
  #ls-business-chat .lsc-scroll { padding:16px; }
  #ls-chat-owner .lsc-inbox-layout, #ls-chat-owner .lsc-schedule-fields { grid-template-columns:1fr; }
  #ls-chat-owner .lsc-schedule-row { grid-template-columns:1fr 1fr; gap:8px; }
  #ls-chat-owner .lsc-schedule-row>span { display:none; }
}
@media(prefers-reduced-motion:reduce) { #ls-business-chat * { scroll-behavior:auto!important; transition:none!important; } }
