/* VIA Assistant — scripted chat widget. Conversation is a fixed decision tree
   (not AI-generated), but the booking/audit-request flow submits real leads
   to /api/submit-lead.php — see js/site.js. */
.via-chat-launch{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:var(--blue,#1C55FE);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 16px 34px -10px rgba(28,85,254,.6);z-index:120;transition:transform .18s,box-shadow .18s}
.via-chat-launch:hover{transform:translateY(-2px)}
.via-chat-launch.hidden{display:none}

.via-chat-panel{position:fixed;right:22px;bottom:22px;width:372px;max-width:calc(100vw - 32px);height:566px;max-height:calc(100vh - 40px);background:#fff;border:1px solid rgba(14,17,22,.10);border-radius:20px;box-shadow:0 30px 70px -24px rgba(14,17,22,.5);z-index:121;display:none;flex-direction:column;overflow:hidden;font-family:'Poppins',system-ui,sans-serif}
.via-chat-panel.open{display:flex;animation:vcIn .2s ease}
@keyframes vcIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

.vc-head{display:flex;align-items:center;gap:11px;padding:15px 16px;background:var(--blue,#1C55FE);color:#fff}
.vc-avatar{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;flex:none}
.vc-avatar img{height:14px;width:auto;display:block}
.vc-htext{display:flex;flex-direction:column;line-height:1.25;flex:1}
.vc-htext strong{font-family:'Bricolage Grotesque','Poppins',sans-serif;font-size:15px;font-weight:800;letter-spacing:-.01em}
.vc-htext span{font-size:12px;color:rgba(255,255,255,.85);display:flex;align-items:center;gap:6px}
.vc-dot{width:7px;height:7px;border-radius:50%;background:#3ee08a;display:inline-block}
.vc-close{margin-left:auto;background:none;border:none;color:#fff;font-size:22px;line-height:1;cursor:pointer;opacity:.85}
.vc-close:hover{opacity:1}

.vc-body{flex:1;overflow-y:auto;padding:16px 15px;background:#F6F8FB;display:flex;flex-direction:column;gap:10px}
.vc-msg{max-width:86%;padding:11px 14px;border-radius:14px;font-size:13.5px;line-height:1.5}
.vc-bot{background:#fff;border:1px solid rgba(14,17,22,.07);border-bottom-left-radius:4px;align-self:flex-start;color:#22252b}
.vc-user{background:var(--blue,#1C55FE);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.vc-warnmsg{align-self:flex-start;background:#FFF6E9;border:1px solid #FCE1B6;color:#8a5a00;border-bottom-left-radius:4px;font-weight:500}
.vc-list{margin:8px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:4px}

.vc-quick{display:flex;flex-wrap:wrap;gap:8px;align-self:flex-start;max-width:100%}
.vc-qbtn{font-family:'Poppins',sans-serif;font-size:12.5px;font-weight:600;color:var(--blue,#1C55FE);background:#fff;border:1px solid var(--blue-tint-2,#D4E2FF);border-radius:20px;padding:8px 13px;cursor:pointer;transition:background .15s}
.vc-qbtn:hover{background:var(--blue-tint,#E9F0FF)}

.vc-form{align-self:stretch;background:#fff;border:1px solid rgba(14,17,22,.08);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px}
.vc-field{display:flex;flex-direction:column;gap:4px}
.vc-field span{font-size:11.5px;font-weight:600;color:#5b6373}
.vc-field input,.vc-field textarea{font-family:'Poppins',sans-serif;font-size:13px;padding:9px 11px;border:1px solid rgba(14,17,22,.14);border-radius:9px;outline:none;width:100%;color:#22252b}
.vc-field input:focus,.vc-field textarea:focus{border-color:var(--blue,#1C55FE)}
.vc-field textarea{min-height:56px;resize:vertical}
.vc-submit{font-family:'Poppins',sans-serif;font-size:14px;font-weight:600;color:#fff;background:var(--blue,#1C55FE);border:none;border-radius:40px;padding:12px;cursor:pointer;margin-top:2px}
.vc-submit:hover{background:var(--blue-press,#1442D6)}
.vc-note{margin-top:8px;font-size:11px;color:#8a909a}
.vc-hp{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}
.vc-error{margin-top:8px;font-size:12.5px;color:#a1332a;background:#fdecea;border:1px solid #f3b7b0;border-radius:9px;padding:9px 11px}
.vc-preview{margin-top:8px;font-size:12.5px;color:#8a6300;background:#fff6e0;border:1px solid #f0dba3;border-radius:9px;padding:9px 11px}

.vc-input{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid rgba(14,17,22,.08);background:#fff}
.vc-input input{flex:1;font-family:'Poppins',sans-serif;font-size:13.5px;padding:10px 12px;border:1px solid rgba(14,17,22,.12);border-radius:30px;outline:none;color:#22252b}
.vc-input input:focus{border-color:var(--blue,#1C55FE)}
.vc-send{width:38px;height:38px;border-radius:50%;background:var(--blue,#1C55FE);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.vc-send:hover{background:var(--blue-press,#1442D6)}

@media(max-width:480px){
  .via-chat-panel{right:0;bottom:0;left:0;top:0;width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}
  .via-chat-launch{right:16px;bottom:16px}
}
