/* All widget rules are root-scoped so page-builder and theme controls cannot leak in. */
/* Hide only the small revisit shortcut while open; the initial consent banner stays available. */
body.loa-assistant-open .cky-btn-revisit-wrapper{visibility:hidden!important;pointer-events:none!important}
#loa-widget,#loa-widget *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
#loa-widget{--loa-navy:#102a43;--loa-blue:#145da0;--loa-ink:#102a43;--loa-muted:#52667a;--loa-line:#d8e0e8;--loa-soft:#f4f6f9;--loa-cookie-offset:0px;position:fixed;z-index:999990;right:calc(max(16px,env(safe-area-inset-right,0px)) + var(--loa-visual-right-gap,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px) + var(--loa-cookie-offset) + var(--loa-whatsapp-offset,0px));max-width:calc(100vw - 24px);color:var(--loa-ink);font:400 15px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:left;letter-spacing:normal;text-transform:none}
#loa-widget :where(section,header,form,nav,p,h2,strong,label,div,span){margin:0;padding:0;border:0;font:inherit;letter-spacing:normal;text-transform:none;min-width:0}
#loa-widget button{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:9px 12px;border:1px solid var(--loa-blue);border-radius:24px;background:#fff;color:var(--loa-blue);font:700 14px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center;letter-spacing:normal;text-transform:none;white-space:normal;overflow-wrap:break-word;cursor:pointer;-webkit-tap-highlight-color:transparent}
#loa-widget button:hover{background:#edf5fc;color:#0d467b}
#loa-widget button:disabled{opacity:.6;cursor:wait}
#loa-widget :where(button,input,textarea,a):focus-visible{outline:3px solid #4289c8;outline-offset:2px}
#loa-widget :where(input:not([type=checkbox]),textarea){all:unset;box-sizing:border-box;display:block;width:100%;min-width:0;min-height:44px;height:44px;padding:10px 12px;border:1px solid #97a9ba;border-radius:9px;background:#fff;color:var(--loa-ink);font:400 16px/1.35 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:left;letter-spacing:normal;box-shadow:none}
#loa-widget :where(input,textarea)::placeholder{color:#64778a;opacity:1}
#loa-widget textarea{height:110px;min-height:64px;resize:vertical;max-height:180px}
#loa-widget input[type=checkbox]{all:revert;box-sizing:border-box;width:20px;height:20px;min-width:20px;margin:2px 8px 0 0;accent-color:var(--loa-blue);vertical-align:top;cursor:pointer}
#loa-widget a{color:var(--loa-blue);font:inherit;text-decoration:underline;overflow-wrap:anywhere}
#loa-widget [hidden]{display:none!important}
#loa-widget .loa-closed{position:relative;display:flex;justify-content:flex-end}
#loa-widget.loa-is-open .loa-closed{display:none}
#loa-widget .loa-launcher{width:64px;height:64px;min-height:64px;padding:3px;border:2px solid var(--loa-blue);border-radius:50%;background:#fff;box-shadow:0 10px 30px #102a4340}
#loa-widget .loa-launcher:hover{background:#fff;color:var(--loa-navy)}
#loa-widget .loa-avatar{display:block;flex-shrink:0;overflow:hidden;border-radius:50%;background:#fff}
#loa-widget .loa-avatar-launcher{width:54px;height:54px}
#loa-widget .loa-portrait{display:block;width:100%;height:100%;max-width:none;object-fit:cover;border:0;border-radius:50%;margin:0;padding:0}
#loa-widget .loa-badge{position:absolute;top:-4px;right:-4px;width:24px;height:24px;min-height:24px;padding:0;border:2px solid #fff;border-radius:50%;background:#c52233;color:#fff;font:800 13px/20px system-ui;box-shadow:0 3px 9px #102a4333}
#loa-widget .loa-badge:hover{background:#c52233;color:#fff}
#loa-widget.loa-is-open{top:calc(var(--loa-vv-top,0px) + max(8px,env(safe-area-inset-top,0px)));bottom:auto}
#loa-widget .loa-panel{position:relative;display:flex;flex-direction:column;width:min(390px,calc(100vw - 24px));height:auto;max-height:calc(var(--loa-vv-height,100vh) - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;border:1px solid var(--loa-line);border-radius:20px;background:#fff;box-shadow:0 18px 55px #0005}
#loa-widget .loa-header{display:flex;flex:0 0 auto;align-items:center;gap:12px;min-height:72px;padding:12px 14px;background:var(--loa-navy);color:#fff}
#loa-widget .loa-avatar-header{width:46px;height:46px;border:2px solid #fff;flex-basis:46px}
#loa-widget .loa-header strong{flex:1;font-weight:750;font-size:16px;line-height:1.3;color:#fff}
#loa-widget .loa-close{position:relative;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:var(--loa-blue);color:#fff}
#loa-widget .loa-close::before,#loa-widget .loa-close::after{content:"";position:absolute;left:11px;top:21px;width:22px;height:2px;border-radius:2px;background:#fff;transform:rotate(45deg)}
#loa-widget .loa-close::after{transform:rotate(-45deg)}
#loa-widget .loa-close:hover{background:#2479bf}
#loa-widget .loa-conversation{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}
#loa-widget .loa-transcript{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain;background:var(--loa-soft);scrollbar-width:thin}
#loa-widget .loa-transcript>*{flex:0 0 auto}
#loa-widget .loa-messages{display:flex;flex-direction:column;gap:10px;padding:14px}
#loa-widget .loa-message{flex:0 0 auto;width:fit-content;max-width:94%;padding:10px 12px;border:1px solid #dce3e9;border-radius:14px;background:#fff;color:var(--loa-ink);font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
#loa-widget .loa-user{align-self:flex-end;background:#e7f1fb;border-color:#c2d9ef}
#loa-widget .loa-quick-replies,#loa-widget .loa-suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;background:#fff}
#loa-widget .loa-link-cards{display:flex;flex-wrap:wrap;gap:8px;padding:8px 14px}
#loa-widget .loa-link-cards a{font-size:13px}
#loa-widget .loa-ai-disclosure{padding:7px 14px;color:var(--loa-muted);font-size:11px;line-height:1.35}
#loa-widget .loa-chat-form{display:grid;flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:auto;padding:10px 12px 5px;background:#fff;border-top:1px solid #e6edf3}
#loa-widget .loa-chat-form button,#loa-widget .loa-lead-actions button{background:var(--loa-blue);color:#fff;border-radius:9px}
#loa-widget .loa-chat-form button:hover,#loa-widget .loa-lead-actions button:hover{background:#0e4c84}
#loa-widget .loa-actions{display:grid;flex:0 0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:5px 12px 10px;background:#fff}
#loa-widget .loa-actions button{font-size:13px;padding:8px 6px}
#loa-widget .loa-flow{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden;background:var(--loa-soft)}
#loa-widget.loa-flow-active .loa-panel{height:min(680px,calc(var(--loa-vv-height,100vh) - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)))}
#loa-widget.loa-flow-active .loa-conversation{display:none}
#loa-widget .loa-flow-header{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-start;gap:3px;padding:6px 12px 10px;border-bottom:1px solid var(--loa-line);background:#fff}
#loa-widget .loa-flow-back{min-height:44px;padding:7px 0;border:0;border-radius:4px;font-size:13px}
#loa-widget .loa-flow-back:hover{background:transparent;text-decoration:underline}
#loa-widget .loa-flow-header h2{font-size:17px;font-weight:750;line-height:1.3}
#loa-widget .loa-quote-wizard{flex:1;min-height:0;padding:16px 14px;overflow-y:auto;overscroll-behavior:contain}
#loa-widget .loa-quote-wizard strong{display:block;margin:0 0 14px;font-weight:700;font-size:16px}
#loa-widget .loa-quote-wizard button{width:100%;margin:0 0 10px;min-height:48px}
#loa-widget .loa-lead-form{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}
#loa-widget .loa-lead-fields{display:flex;flex:1;flex-direction:column;gap:12px;min-height:0;padding:14px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
#loa-widget .loa-lead-fields>*{flex:0 0 auto}
#loa-widget .loa-lead-fields label{display:block;font-size:14px;font-weight:600;line-height:1.4}
#loa-widget .loa-lead-fields label :where(input:not([type=checkbox]),textarea){margin-top:5px}
#loa-widget .loa-lead-fields label span{font-weight:400;color:var(--loa-muted)}
#loa-widget .loa-consent{font-weight:400!important;font-size:13px!important}
#loa-widget .loa-privacy{font-size:12px;line-height:1.4;color:var(--loa-muted)}
#loa-widget .loa-lead-actions{flex:0 0 auto;padding:10px 14px max(12px,env(safe-area-inset-bottom,0px));border-top:1px solid var(--loa-line);background:#fff}
#loa-widget .loa-lead-actions button{width:100%}
#loa-widget .loa-form-status{max-height:96px;overflow-y:auto;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
#loa-widget .loa-form-status:empty{display:none}
#loa-widget .loa-form-status:not(:empty){margin-top:8px}
#loa-widget.loa-complete .loa-lead-actions{flex:1;min-height:0;overflow-y:auto;background:var(--loa-soft)}
#loa-widget.loa-complete .loa-form-status{padding:16px;margin-top:4px;max-height:none;border:2px solid var(--loa-blue);border-radius:12px;background:#fff;font-size:15px}
#loa-widget .loa-hp,#loa-widget .loa-sr-only{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}
#loa-widget.loa-short-viewport .loa-header{min-height:52px;padding:4px 12px}
#loa-widget.loa-short-viewport .loa-avatar-header{width:38px;height:38px;flex-basis:38px}
#loa-widget.loa-short-viewport .loa-quick-replies,#loa-widget.loa-short-viewport .loa-suggestions,#loa-widget.loa-short-viewport .loa-link-cards,#loa-widget.loa-short-viewport .loa-ai-disclosure{display:none}
#loa-widget.loa-short-viewport .loa-flow-header{padding:0 12px 5px;gap:0}
#loa-widget.loa-short-viewport .loa-flow-header h2{font-size:14px}
#loa-widget.loa-short-viewport .loa-lead-fields{gap:8px;padding:10px 14px}
#loa-widget.loa-short-viewport .loa-lead-fields textarea{height:64px;min-height:64px;max-height:64px}
#loa-widget.loa-short-viewport .loa-lead-actions{padding-top:6px;padding-bottom:max(6px,env(safe-area-inset-bottom,0px))}
@media(max-width:600px){
  body.loa-assistant-open{overflow:hidden!important;overscroll-behavior:none}
  #loa-widget.loa-is-open{left:var(--loa-vv-left,0px);right:auto;top:var(--loa-vv-top,0px);max-width:none}
  #loa-widget.loa-is-open .loa-panel{width:var(--loa-vv-width,100vw);height:var(--loa-vv-height,100dvh);max-height:var(--loa-vv-height,100dvh);border:0;border-radius:0}
  #loa-widget .loa-header{padding-top:max(12px,env(safe-area-inset-top,0px))}
  #loa-widget .loa-actions{padding-bottom:max(10px,env(safe-area-inset-bottom,0px))}
  #loa-widget.loa-input-focused .loa-quick-replies,#loa-widget.loa-input-focused .loa-suggestions,#loa-widget.loa-input-focused .loa-link-cards,#loa-widget.loa-input-focused .loa-ai-disclosure{display:none}
}
@media(max-width:390px){
  #loa-widget{right:calc(max(8px,env(safe-area-inset-right,0px)) + var(--loa-visual-right-gap,0px));max-width:calc(100vw - 16px)}
  #loa-widget .loa-header{gap:9px;padding-inline:10px}
  #loa-widget .loa-header strong{font-size:15px}
}
@media(max-width:320px){
  #loa-widget .loa-header{gap:7px}
  #loa-widget .loa-header strong{font-size:14px}
  #loa-widget .loa-actions button{font-size:12px;padding-inline:4px}
  #loa-widget .loa-chat-form{grid-template-columns:minmax(0,1fr) 72px}
}
@media(prefers-reduced-motion:reduce){#loa-widget *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
