#quickai-chat{font-family:Arial,Helvetica,sans-serif}
#quickai-button{position:fixed;right:18px;bottom:205px;min-width:155px;height:48px;border:0;border-radius:999px;background:#111827;color:#fff;font-size:15px;font-weight:800;box-shadow:0 14px 35px rgba(0,0,0,.28);cursor:pointer;z-index:999999;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;line-height:1;transition:transform .2s ease,box-shadow .2s ease}
#quickai-button:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(0,0,0,.32)}
#quickai-button .quickai-icon{font-size:21px;line-height:1}
#quickai-button .quickai-label{white-space:nowrap}
#quickai-window{position:fixed;right:18px;bottom:265px;width:390px;max-width:calc(100vw - 32px);height:620px;max-height:calc(100vh - 285px);background:#fff;border-radius:18px;box-shadow:0 20px 70px rgba(0,0,0,.28);overflow:hidden;display:none;z-index:999999}#quickai-window.quickai-open{display:flex;flex-direction:column}.quickai-header{background:#111827;color:#fff;padding:16px;display:flex;justify-content:space-between;align-items:center}.quickai-header span{display:block;font-size:12px;opacity:.8;margin-top:3px}#quickai-close{position:relative;top:16px;z-index:10;flex:0 0 44px;width:44px;height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;padding:0;background:rgba(17,24,39,.88);border:1px solid rgba(255,255,255,.42);border-radius:50%;color:#fff;font-size:30px;line-height:1;font-weight:500;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.28);-webkit-tap-highlight-color:transparent}#quickai-close:hover,#quickai-close:focus-visible{background:rgba(255,255,255,.24);outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.quickai-body{flex:1;overflow-y:auto;padding:16px;background:#f3f4f6}.quickai-message,.quickai-msg{padding:12px 14px;border-radius:14px;margin-bottom:12px;line-height:1.4;max-width:84%;font-size:14px}.quickai-message.bot,.quickai-msg.bot{background:#fff;color:#111827;box-shadow:0 2px 8px rgba(0,0,0,.07)}.quickai-message.user,.quickai-msg.user{background:#2563eb;color:#fff;margin-left:auto}.quickai-message.typing,.quickai-typing{color:#6b7280;font-style:italic}.quickai-actions{display:flex;border-top:1px solid #e5e7eb}.quickai-actions a,.quickai-actions button{flex:1;text-align:center;text-decoration:none;padding:10px;color:#111827;font-weight:700;font-size:12px;border-right:1px solid #e5e7eb;background:#fff;border-top:0;border-bottom:0;border-left:0;cursor:pointer}.quickai-actions a:last-child,.quickai-actions button:last-child{border-right:0}.quickai-footer{display:flex;gap:8px;padding:12px;border-top:1px solid #e5e7eb;background:#fff}.quickai-footer input{flex:1;border:1px solid #d1d5db;border-radius:12px;padding:12px;font-size:14px}.quickai-footer button{border:0;background:#111827;color:#fff;border-radius:12px;padding:0 14px;font-weight:700;cursor:pointer}
@media(max-width:700px){#quickai-button{right:16px;bottom:205px;min-width:145px;height:46px;font-size:14px;padding:0 14px}#quickai-window{right:0;bottom:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;border-radius:0}}
.quickai-photo-preview{display:flex!important;gap:6px;flex-wrap:wrap;background:#2563eb!important}
.quickai-photo-preview img{width:62px;height:62px;object-fit:cover;border-radius:10px;border:2px solid rgba(255,255,255,.7)}
.quickai-lead-overlay{position:absolute;inset:0;background:rgba(17,24,39,.72);display:flex;align-items:center;justify-content:center;padding:16px;z-index:2}
.quickai-lead-box{background:#fff;border-radius:16px;padding:18px;width:100%;max-width:330px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.quickai-lead-box h3{margin:0 0 12px;font-size:18px;color:#111827}.quickai-lead-box input,.quickai-lead-box textarea{width:100%;box-sizing:border-box;margin-bottom:9px;border:1px solid #d1d5db;border-radius:10px;padding:10px;font-size:14px}.quickai-lead-box textarea{min-height:82px}.quickai-lead-buttons{display:flex;gap:8px;justify-content:flex-end}.quickai-lead-buttons button{border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.quickai-cancel{background:#e5e7eb;color:#111827}.quickai-save{background:#111827;color:#fff}
.quickai-footer input:disabled,.quickai-footer button:disabled,.quickai-actions button:disabled{opacity:.55;cursor:not-allowed}
.quickai-start-new-wrap{text-align:center;margin:14px 0 4px}
.quickai-start-new{border:0;border-radius:12px;background:#111827;color:#fff;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.14)}
.quickai-start-new:hover{transform:translateY(-1px)}


/* v0.4.4: Move ONLY the message Send button above the orange Back-to-Top button. */
#quickai-window{position:fixed}
#quickai-form{position:relative}
#quickai-message-send{
    position:absolute;
    right:18px;
    bottom:82px;
    z-index:30;
    min-width:92px;
    height:46px;
    padding:0 18px;
    border:0;
    border-radius:12px;
    background:#111827;
    color:#fff;
    font-weight:800;
    box-shadow:0 10px 26px rgba(0,0,0,.24);
}
#quickai-message-send:hover{transform:translateY(-1px)}
#quickai-message-send:disabled{opacity:.55;cursor:not-allowed}

/* Keep the typing field usable after removing Send from the footer row. */
#quickai-form #quickai-input{
    width:100%;
    box-sizing:border-box;
}

@media(max-width:700px){
    #quickai-message-send{
        position:fixed;
        right:18px;
        bottom:132px;
        min-width:96px;
        height:46px;
        z-index:1000001;
    }
}


/* v0.4.6 branding: use Quick HandyMan logo in launcher and chat header. */
.quickai-header-brand{display:flex;align-items:center;gap:10px}
.quickai-header-brand>img{width:52px;height:38px;object-fit:contain;border-radius:7px;background:#171717}
.quickai-header-brand>div{min-width:0}
.quickai-header-brand strong{font-size:15px;line-height:1.15}
.quickai-header-brand span{font-size:11px!important;color:#d1fae5;opacity:1!important}

@media(max-width:700px){
    #quickai-button{
        right:16px;
        bottom:205px;
        min-width:210px;
        height:58px;
        padding:7px 13px 7px 7px;
    }
    #quickai-button .quickai-brand-logo{width:54px;height:43px}
    #quickai-button .quickai-button-copy strong{font-size:14px}
    #quickai-button .quickai-button-copy small{font-size:11px}
}

#quickai-button .quickai-button-copy small{display:none!important;}


/* v2.8.2 Alpha 3: desktop launcher isolation fix.
   Prevent WordPress theme image rules from enlarging the ServiceAI logo. */
#quickai-chat,
#quickai-chat *{
    box-sizing:border-box;
}
#quickai-button{
    width:auto !important;
    max-width:260px !important;
    overflow:hidden !important;
}
#quickai-button > img.quickai-brand-logo{
    display:block !important;
    flex:0 0 54px !important;
    width:54px !important;
    height:38px !important;
    min-width:54px !important;
    min-height:38px !important;
    max-width:54px !important;
    max-height:38px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    object-fit:contain !important;
    object-position:center !important;
    transform:none !important;
    position:static !important;
}
#quickai-window .quickai-header-brand > img{
    display:block !important;
    flex:0 0 52px !important;
    width:52px !important;
    height:38px !important;
    min-width:52px !important;
    min-height:38px !important;
    max-width:52px !important;
    max-height:38px !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:contain !important;
    transform:none !important;
    position:static !important;
}
@media (min-width:701px){
    #quickai-button{
        min-width:155px !important;
        width:auto !important;
        height:48px !important;
        max-height:48px !important;
        right:18px !important;
        bottom:205px !important;
    }
    #quickai-window{
        width:390px !important;
        height:620px !important;
        max-width:calc(100vw - 36px) !important;
        max-height:calc(100vh - 285px) !important;
        right:18px !important;
        left:auto !important;
        top:auto !important;
        overflow:hidden !important;
    }
}


/* v2.18.2 Alpha — Web AI Receptionist Voice Mode */
.quickai-footer{display:flex;align-items:center;gap:8px}
.quickai-voice-btn{
    flex:0 0 44px;width:44px;height:44px;border:1px solid #d1d5db;border-radius:50%;
    background:#fff;color:#111827;font-size:20px;line-height:1;cursor:pointer;
    display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.08);
}
.quickai-voice-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(0,0,0,.12)}
.quickai-voice-btn.is-listening{background:#fee2e2;border-color:#ef4444;animation:qaiVoicePulse 1.15s infinite}
.quickai-voice-btn:disabled{opacity:.45;cursor:not-allowed;animation:none}
.quickai-voice-status{margin:0 12px 6px;padding:7px 10px;border-radius:9px;background:#f3f4f6;color:#374151;font-size:12px;font-weight:700}
.quickai-voice-status.is-listening{background:#fee2e2;color:#991b1b}
.quickai-voice-status.is-thinking{background:#eff6ff;color:#1d4ed8}
.quickai-voice-status.is-speaking{background:#ecfdf5;color:#047857}
.quickai-voice-status.is-error{background:#fff7ed;color:#9a3412}
@keyframes qaiVoicePulse{0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.35)}50%{box-shadow:0 0 0 8px rgba(239,68,68,0)}}
@media(max-width:700px){
    .quickai-voice-btn{flex-basis:42px;width:42px;height:42px}
    #quickai-form #quickai-input{min-width:0}
}


/* v2.18.6 Alpha — ServiceAI Voice Call Experience */
.quickai-voice-call{flex:1;min-height:0;background:#111a2d;color:#fff;overflow:hidden}
.quickai-voice-call[hidden],.qai-call-ready[hidden],.qai-call-live[hidden],.qai-call-hidden{display:none!important}
.qai-call-ready,.qai-call-live{height:100%;padding:28px 28px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(180deg,#172238 0%,#101827 100%)}
.qai-call-icon{width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:42px;border:2px solid rgba(59,130,246,.35);background:rgba(37,99,235,.08);color:#60a5fa;margin-bottom:22px}
.qai-call-ready h3{font-size:24px;margin:0 0 12px}.qai-call-ready p{max-width:330px;margin:0 0 26px;color:#b7c0d2;font-size:15px;line-height:1.55}
#qai-start-call{width:100%;max-width:330px;border:0;border-radius:14px;padding:16px 18px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;font-size:18px;font-weight:800;cursor:pointer;box-shadow:0 12px 28px rgba(37,99,235,.28)}
.qai-call-live{justify-content:flex-start;padding-top:34px}.qai-call-orb{width:126px;height:126px;flex:0 0 126px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:35px;background:#263247;color:#dbeafe;box-shadow:0 0 0 0 rgba(34,197,94,0);transition:.25s ease;cursor:pointer}
.qai-call-orb.is-speaking{background:#22c55e;color:#fff;animation:qaiSpeakingPulse 1.35s infinite}.qai-call-orb.is-listening{background:#1d4ed8;color:#fff}.qai-call-orb.is-thinking{background:#7c3aed;color:#fff}.qai-call-orb.is-muted{background:#374151;color:#9ca3af}
.qai-call-state{font-size:18px;font-weight:700;margin:18px 0 24px;color:#cbd5e1}.qai-call-state.is-speaking{color:#4ade80}.qai-call-state.is-listening{color:#60a5fa}.qai-call-state.is-thinking{color:#c4b5fd}
.qai-call-transcript{width:100%;height:190px;overflow-y:auto;text-align:left;background:#0b1220;border:1px solid rgba(255,255,255,.06);border-radius:15px;padding:15px 16px;color:#d1d5db;font-size:14px;line-height:1.45;scroll-behavior:smooth}
.qai-call-line{margin:0 0 9px}.qai-call-line strong{color:#6b7280}.qai-call-line.user span{color:#60a5fa}.qai-call-line.ai span{color:#e5e7eb}
.qai-call-controls{display:flex;gap:28px;justify-content:center;margin-top:25px}.qai-call-controls button{width:64px;height:64px;border:0;border-radius:50%;font-size:25px;color:#fff;cursor:pointer}.qai-call-controls #qai-call-mute{background:#263247}.qai-call-controls #qai-call-mute.is-muted{background:#4b5563}.qai-call-controls #qai-call-end{background:#ef2b2d;transform:rotate(135deg);box-shadow:0 8px 20px rgba(239,43,45,.28)}
@keyframes qaiSpeakingPulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.34)}70%{box-shadow:0 0 0 22px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
@media(max-width:700px){.qai-call-ready,.qai-call-live{padding-left:22px;padding-right:22px}.qai-call-live{padding-top:56px}.qai-call-transcript{height:220px}.qai-call-orb{width:118px;height:118px;flex-basis:118px}}


/* v2.18.8 Alpha — Human Voice + chatbot Voice Call launcher */
.quickai-voice-call-launch{font-weight:800!important;border-color:#2563eb!important;background:#eff6ff!important;color:#1d4ed8!important}
.quickai-voice-call-launch:hover{background:#dbeafe!important}
.qai-call-ready{position:relative}
.qai-call-back{position:absolute;top:14px;left:14px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#dbeafe;border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer}
.qai-call-back:hover{background:rgba(255,255,255,.12)}

/* v2.18.8.1 Alpha — mobile Voice Call launcher visibility */
.quickai-voice-call-footer{flex:0 0 46px!important;width:46px!important;height:46px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#2563eb!important;color:#fff!important;font-size:21px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 4px 12px rgba(37,99,235,.28)}
@media(max-width:520px){.quickai-actions{display:grid!important;grid-template-columns:repeat(3,1fr)!important}.quickai-actions a,.quickai-actions button{min-width:0!important;padding:9px 4px!important;font-size:11px!important}.quickai-voice-call-launch{grid-column:span 1}.quickai-footer{align-items:center}.quickai-voice-btn,.quickai-voice-call-footer{flex:0 0 44px!important;width:44px!important}}

/* v2.18.9 professional voice recording UI */
.qai-recording-notice{margin:16px auto;max-width:390px;text-align:left;background:#f7fafc;border:1px solid #d8e3ea;border-radius:12px;padding:13px 14px;color:#233443}.qai-recording-notice strong,.qai-recording-notice span,.qai-recording-notice small{display:block}.qai-recording-notice span{margin:5px 0;line-height:1.45}.qai-recording-notice small{color:#607483}.qai-call-download{margin:12px auto 16px;max-width:360px;background:#eefbf5;border:1px solid #b9e9d2;border-radius:12px;padding:12px 14px;text-align:left;color:#183b2b}.qai-call-download strong,.qai-call-download span{display:block}.qai-call-download span{font-size:13px;margin:3px 0 8px}.qai-call-download a{display:inline-flex;background:#117a54;color:#fff!important;padding:8px 12px;border-radius:8px;text-decoration:none;font-weight:700}

/* ServiceAI v2.18.9 — professional recording consent/download UI */
.qai-recording-notice{display:flex;gap:12px;align-items:flex-start;margin:18px 0;padding:14px 15px;border:1px solid rgba(245,185,20,.35);border-radius:14px;background:rgba(245,185,20,.08);text-align:left}
.qai-recording-notice[hidden],.qai-call-download[hidden]{display:none!important}
.qai-recording-notice-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;font-size:11px;box-shadow:0 0 0 5px rgba(239,68,68,.10);flex:none}
.qai-recording-notice strong,.qai-recording-notice span,.qai-recording-notice small{display:block}
.qai-recording-notice span{margin-top:4px;line-height:1.45}.qai-recording-notice small{margin-top:6px;opacity:.72}
.qai-call-download{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;margin-top:18px;padding:15px;border:1px solid rgba(16,185,129,.32);border-radius:16px;background:linear-gradient(135deg,rgba(16,185,129,.12),rgba(59,130,246,.06));text-align:left}
.qai-download-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#10b981;color:#fff;font-weight:800;font-size:20px}
.qai-download-copy strong,.qai-download-copy span,.qai-download-copy small{display:block}.qai-download-copy span{margin-top:3px;line-height:1.35}.qai-download-copy small{margin-top:4px;opacity:.7}
#qai-call-download-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:10px;background:#0b63ce;color:#fff;text-decoration:none;font-weight:800;white-space:nowrap}
@media(max-width:520px){.qai-call-download{grid-template-columns:40px 1fr}.qai-call-download a{grid-column:1/-1;width:100%}}
