/* ============================================================
   Fingerscan Digital — Chatbot Widget CSS (v3)
   ============================================================
   Preserved verbatim from the existing live widget on
   bayarealivescanandmore.com (Quinnie Do's Cloudflare Worker
   chatbot). All class names use the .fsd- prefix to avoid
   conflict with main theme styles.
   ============================================================ */
:root{--fsd-navy:#1e3a5f;--fsd-navy-deep:#15294a;--fsd-navy-soft:#3b5878;--fsd-blue-brand:#4FB3E8;--fsd-blue-hover:#3a9fd4;--fsd-blue-light:#6cc5f0;--fsd-gold:#d4a574;--fsd-bg:#f8fafc;--fsd-bg-warm:#f1f5f9;--fsd-line:#e2e8f0;--fsd-bot-bubble:#ffffff;--fsd-user-bubble:#1e3a5f;--fsd-user-text:#ffffff;--fsd-text:#0f172a;--fsd-text-muted:#475569;--fsd-shadow-sm:0 1px 2px rgba(30, 58, 95, .06),0 4px 12px rgba(30, 58, 95, .04);--fsd-shadow-md:0 4px 16px rgba(30, 58, 95, .10);--fsd-shadow-lg:0 20px 60px rgba(30, 58, 95, .20)}.fsd-chat-panel *,.fsd-chat-widget *{box-sizing:border-box;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Arial,sans-serif}.fsd-chat-widget{position:fixed;bottom:24px;right:24px;z-index:999999;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Arial,sans-serif}.fsd-chat-fab{width:64px;height:64px;border-radius:50%;background:var(--fsd-blue-brand);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(79,179,232,.45);transition:transform .2s,box-shadow .2s,background .2s;position:relative}.fsd-chat-fab:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(79,179,232,.55);background:var(--fsd-blue-hover)}.fsd-chat-fab svg{width:28px;height:28px}.fsd-pulse{position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--fsd-blue-brand);animation:2s ease-out infinite fsd-pulse;opacity:0}@keyframes fsd-pulse{0%{transform:scale(.95);opacity:.7}100%{transform:scale(1.35);opacity:0}}.fsd-notif-dot{position:absolute;top:4px;right:4px;width:12px;height:12px;background:var(--fsd-gold);border:2px solid #fff;border-radius:50%}.fsd-welcome-bubble{position:absolute;bottom:78px;right:0;background:#fff;padding:14px 32px 14px 18px;border-radius:14px 14px 4px 14px;box-shadow:var(--fsd-shadow-md);width:280px;font-size:13px;line-height:1.5;color:var(--fsd-navy);animation:.4s ease-out fsd-slideUp;border:1px solid var(--fsd-line);cursor:pointer;transition:transform .2s,box-shadow .2s;display:none}.fsd-welcome-bubble:hover{transform:translateY(-2px);box-shadow:var(--fsd-shadow-lg)}.fsd-welcome-bubble strong{color:var(--fsd-blue-brand);font-weight:600}.fsd-close-bubble{position:absolute;top:6px;right:6px;background:0 0;border:none;cursor:pointer;color:var(--fsd-text-muted);padding:4px;border-radius:4px;line-height:1}.fsd-close-bubble:hover{background:var(--fsd-bg-warm)}@keyframes fsd-slideUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fsd-chat-panel{position:fixed;bottom:24px;right:24px;width:400px;height:640px;max-height:calc(100vh - 48px);background:var(--fsd-bg);border-radius:16px;box-shadow:var(--fsd-shadow-lg);display:none;flex-direction:column;overflow:hidden;z-index:999999;border:1px solid var(--fsd-line)}.fsd-chat-panel.fsd-open{display:flex;animation:.3s ease-out fsd-panelOpen}@keyframes fsd-panelOpen{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.fsd-chat-header{background:#fff;color:var(--fsd-navy);padding:16px 20px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--fsd-line);position:relative}.fsd-chat-header::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--fsd-navy) 0%,var(--fsd-blue-brand) 50%,var(--fsd-gold) 100%)}.fsd-chat-avatar{width:52px;height:52px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.fsd-chat-avatar img{width:100%;height:100%;object-fit:contain;display:block}.fsd-chat-header-info{flex:1;min-width:0}.fsd-chat-header-name{font-family:Georgia,'Times New Roman',Times,serif;font-size:17px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--fsd-navy)}.fsd-chat-header-status{font-size:11px;color:var(--fsd-text-muted);margin-top:3px;display:flex;align-items:center;gap:6px}.fsd-status-dot{width:6px;height:6px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 0 rgba(22,163,74,.6);animation:2s infinite fsd-statusPulse}@keyframes fsd-statusPulse{0%,100%{box-shadow:0 0 0 0 rgba(22,163,74,.6)}50%{box-shadow:0 0 0 4px rgba(22,163,74,0)}}.fsd-trust-badge{background:rgba(30,58,95,.08);border:1px solid rgba(30,58,95,.15);color:var(--fsd-navy);padding:2px 8px;border-radius:4px;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:inline-block;margin-top:4px}.fsd-chat-close{background:0 0;border:none;color:var(--fsd-text-muted);cursor:pointer;padding:6px;border-radius:8px;transition:background .2s,color .2s}.fsd-chat-close:hover{background:var(--fsd-bg-warm);color:var(--fsd-navy)}.fsd-chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth;background:var(--fsd-bg)}.fsd-chat-messages::-webkit-scrollbar{width:6px}.fsd-chat-messages::-webkit-scrollbar-thumb{background:var(--fsd-line);border-radius:3px}.fsd-msg{max-width:86%;padding:12px 16px;border-radius:14px;font-size:14px;line-height:1.55;word-wrap:break-word;animation:.25s ease-out fsd-msgIn}@keyframes fsd-msgIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fsd-msg strong{font-weight:600;color:var(--fsd-blue-brand)}.fsd-msg ul{padding-left:20px;margin:6px 0}.fsd-msg li{margin:2px 0}.fsd-msg a{color:var(--fsd-blue-brand);text-decoration:underline;font-weight:500}.fsd-msg p{margin-bottom:0}.fsd-msg p+p{margin-top:8px}.fsd-quick-replies{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;max-width:92%;animation:.3s ease-out fsd-msgIn}.fsd-quick-reply{background:#fff;border:1px solid var(--fsd-line);color:var(--fsd-navy);padding:8px 14px;border-radius:8px;font-size:12.5px;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.fsd-quick-reply:hover{background:var(--fsd-navy);color:#fff;border-color:var(--fsd-navy);transform:translateY(-1px);box-shadow:var(--fsd-shadow-sm)}.fsd-lead-form{background:#fff;padding:16px;border-radius:14px;align-self:stretch;border:1px solid var(--fsd-blue-brand);box-shadow:0 0 0 3px rgba(79,179,232,.1)}.fsd-lead-form h4{font-family:Georgia,'Times New Roman',Times,serif;font-size:15px;font-weight:700;margin-bottom:4px;color:var(--fsd-navy)}.fsd-lead-form p{font-size:12px;color:var(--fsd-text-muted);margin-bottom:12px}.fsd-lead-form label{display:block;font-size:11px;color:var(--fsd-text-muted);margin-bottom:4px;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.fsd-lead-form input,.fsd-lead-form select,.fsd-lead-form textarea{width:100%;padding:9px 12px;border:1px solid var(--fsd-line);border-radius:8px;font-family:inherit;font-size:13px;margin-bottom:10px;background:var(--fsd-bg);color:var(--fsd-text)}.fsd-lead-form input:focus,.fsd-lead-form select:focus,.fsd-lead-form textarea:focus{outline:0;border-color:var(--fsd-blue-brand);box-shadow:0 0 0 3px rgba(79,179,232,.15)}.fsd-lead-form textarea{resize:vertical;min-height:60px}.fsd-lead-form button{width:100%;padding:11px;background:var(--fsd-navy);color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s;margin-top:4px}.fsd-lead-form button:hover{background:var(--fsd-navy-deep)}.fsd-lead-form button:disabled{background:var(--fsd-text-muted);cursor:not-allowed}.fsd-form-success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;padding:14px 16px;border-radius:14px;font-size:13px;line-height:1.5;align-self:stretch}.fsd-form-success strong{color:#065f46;font-weight:700}.fsd-form-error{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;padding:10px 14px;border-radius:8px;font-size:12px;margin-bottom:10px}.fsd-typing{align-self:flex-start;background:var(--fsd-bot-bubble);padding:14px 16px;border-radius:14px 14px 14px 4px;border:1px solid var(--fsd-line);box-shadow:var(--fsd-shadow-sm);display:flex;gap:4px}.fsd-typing span{width:7px;height:7px;border-radius:50%;background:var(--fsd-navy-soft);opacity:.4;animation:1.4s infinite fsd-typing}.fsd-typing span:nth-child(2){animation-delay:.2s}.fsd-typing span:nth-child(3){animation-delay:.4s}@keyframes fsd-typing{0%,100%,60%{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.fsd-chat-input-area{border-top:1px solid var(--fsd-line);padding:14px 16px 12px;background:#fff}.fsd-chat-input-wrap{display:flex;gap:8px;align-items:flex-end;background:var(--fsd-bg);border:1px solid var(--fsd-line);border-radius:12px;padding:8px 8px 8px 14px;transition:border-color .2s,box-shadow .2s}.fsd-chat-input-wrap:focus-within{border-color:var(--fsd-blue-brand);box-shadow:0 0 0 3px rgba(79,179,232,.15)}.fsd-chat-input{flex:1;border:none;outline:0;resize:none;font-family:inherit;font-size:14px;color:var(--fsd-text);background:0 0;max-height:100px;min-height:24px;padding:4px 0;line-height:1.5}.fsd-chat-input::placeholder{color:var(--fsd-text-muted)}.fsd-chat-send{background:var(--fsd-blue-brand);color:#fff;border:none;width:36px;height:36px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .1s;flex-shrink:0}.fsd-chat-send:hover{background:var(--fsd-blue-hover)}.fsd-chat-send:active{transform:scale(.95)}.fsd-chat-send:disabled{opacity:.4;cursor:not-allowed}.fsd-chat-send svg{width:18px;height:18px}.fsd-talk-human-btn{background:0 0;border:1px solid var(--fsd-line);color:var(--fsd-text-muted);padding:6px 12px;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer;margin-bottom:8px;transition:all .2s;align-self:center}.fsd-talk-human-btn:hover{color:var(--fsd-navy);border-color:var(--fsd-blue-brand);background:#fff}.fsd-chat-footer{text-align:center;font-size:10.5px;color:var(--fsd-text-muted);margin-top:10px;letter-spacing:.02em}.fsd-chat-footer a{color:var(--fsd-blue-brand);text-decoration:none;font-weight:500}.fsd-chat-footer .fsd-divider{margin:0 6px;opacity:.4}.fsd-rate-warning{background:#fef3c7;border:1px solid #fbbf24;color:#78350f;padding:10px 14px;border-radius:10px;font-size:12px;align-self:center;text-align:center;margin:4px 0;max-width:90%}@media (max-width:480px){.fsd-chat-panel{width:100%;height:100%;max-height:100%;bottom:0;right:0;border-radius:0}.fsd-chat-widget{bottom:16px;right:16px}.fsd-welcome-bubble{width:240px}}