.uzmi-ai-launcher{
  position:fixed;z-index:1100;top:var(--uzmi-ai-safe-top,96px);right:20px;
  width:62px;height:62px;border:1px solid rgba(255,255,255,.34);border-radius:50%;
  display:flex;align-items:center;justify-content:center;overflow:visible;
  color:#fff;background:linear-gradient(145deg,rgba(46,125,50,.96),rgba(27,94,32,.94));
  box-shadow:0 14px 34px rgba(36,60,41,.28);font-size:1.55rem;cursor:pointer;
  -webkit-backdrop-filter:blur(14px) saturate(135%);backdrop-filter:blur(14px) saturate(135%);
  animation:uzmiAiLauncherFloat 4.5s ease-in-out infinite;
  transition:transform .3s cubic-bezier(.25,.8,.25,1),box-shadow .3s ease,filter .3s ease;
}
.uzmi-ai-launcher:hover{animation-play-state:paused;transform:translateY(-3px) scale(1.06);filter:brightness(1.08);box-shadow:0 18px 40px rgba(36,60,41,.38)}
.uzmi-ai-launcher:focus-visible{outline:3px solid #d6a13b;outline-offset:3px}
.uzmi-ai-online-dot{position:absolute;right:2px;top:2px;width:14px;height:14px;border-radius:50%;background:#79d97f;border:3px solid var(--cream)}
.uzmi-ai-launcher-label{position:absolute;right:74px;white-space:nowrap;padding:9px 14px;border:1px solid var(--line);border-radius:50px;background:var(--card);color:var(--ink);font:700 .78rem var(--display);box-shadow:var(--shadow);pointer-events:none;transition:.25s ease}
.uzmi-ai-launcher:hover .uzmi-ai-launcher-label{transform:translateX(-3px)}
.uzmi-ai-launcher-ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.5);transform:scale(0);pointer-events:none;animation:uzmiAiLauncherRipple .65s ease-out forwards}

.uzmi-ai-shell{
  position:fixed;z-index:1099;top:calc(var(--uzmi-ai-safe-top,96px) + 76px);right:20px;
  width:min(400px,calc(100vw - 28px));height:min(650px,calc(100dvh - var(--uzmi-ai-safe-top,96px) - 92px));
  display:flex;flex-direction:column;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:24px;
  box-shadow:0 28px 80px rgba(17,35,20,.28);opacity:0;visibility:hidden;transform:translateY(20px) scale(.96);transform-origin:right top;
  transition:opacity .3s ease,visibility 0s linear .3s,transform .35s cubic-bezier(.25,.8,.25,1);
}
.uzmi-ai-shell.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .3s ease,visibility 0s,transform .35s cubic-bezier(.25,.8,.25,1)}
.uzmi-ai-header{flex:0 0 auto;display:flex;align-items:center;gap:11px;padding:15px 16px;background:linear-gradient(135deg,#244b2a,#1b5e20);color:#fff}
.uzmi-ai-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);font-size:1.25rem;box-shadow:inset 0 0 0 3px rgba(255,255,255,.05)}
.uzmi-ai-title{min-width:0;flex:1}.uzmi-ai-title strong{display:block;color:#fff;font:700 .95rem/1.25 var(--display)}
.uzmi-ai-status{display:flex;align-items:center;gap:6px;margin-top:2px;color:rgba(255,255,255,.82);font-size:.72rem}
.uzmi-ai-status::before{content:"";width:7px;height:7px;border-radius:50%;background:#82e487;box-shadow:0 0 0 3px rgba(130,228,135,.14)}
.uzmi-ai-head-actions{display:flex;gap:4px}.uzmi-ai-icon-btn{width:34px;height:34px;border:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff;cursor:pointer;transition:.25s ease}
.uzmi-ai-icon-btn:hover{background:rgba(255,255,255,.22);transform:scale(1.06)}.uzmi-ai-icon-btn.is-active{background:#d6a13b;color:#221805}.uzmi-ai-icon-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.uzmi-ai-notice{flex:0 0 auto;padding:8px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--green) 10%,var(--card));color:var(--muted);font-size:.69rem;line-height:1.45;text-align:center}

.uzmi-ai-lead-gate[hidden],.uzmi-ai-messages[hidden],.uzmi-ai-suggestions[hidden],.uzmi-ai-composer[hidden],.uzmi-ai-voice-panel[hidden]{display:none!important}
.uzmi-ai-shell.is-gated .uzmi-ai-lead-gate{flex:1 1 auto;min-height:0;max-height:none;margin:10px auto;width:calc(100% - 20px);display:block}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate{margin:6px auto;width:calc(100% - 12px);padding:8px 12px}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate h3{margin-bottom:2px;font-size:.88rem;line-height:1.25}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate>p{margin-bottom:5px;font-size:.68rem;line-height:1.3}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate .lead-capture-fields{gap:5px}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate .lead-capture-fields label{gap:2px;font-size:.66rem;line-height:1.2}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate .lead-capture-fields input{height:34px;min-height:34px;padding:5px 8px}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate .lead-capture-status{min-height:12px;margin:2px 0 0;font-size:.66rem;line-height:1.2}
body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate .lead-capture-submit{margin-top:1px;padding:7px 12px}

.uzmi-ai-lead-gate{flex:0 1 auto;width:calc(100% - 24px);max-width:340px;max-height:calc(100% - 24px);margin:12px auto;padding:clamp(15px,4vw,18px);overflow-y:auto;border:1px solid var(--line);border-radius:18px;background:var(--cream-2);box-shadow:0 14px 32px rgba(36,60,41,.12)}
.uzmi-ai-lead-gate h3{margin:0 0 5px;color:var(--green-dark);font:750 1rem var(--display)}.uzmi-ai-lead-gate>p{margin:0 0 13px;color:var(--muted);font-size:.76rem}
.lead-capture-fields{display:grid;gap:10px}.lead-capture-fields label{display:grid;gap:6px;color:var(--ink);font:700 .72rem var(--display)}
.lead-capture-fields input{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:10px;outline:0;background:var(--card);color:var(--ink);font-size:.8rem}.lead-capture-fields input:focus{border-color:var(--moss);box-shadow:0 0 0 3px rgba(74,107,79,.14)}
.lead-capture-status{min-height:20px;margin:7px 0 0;color:#b3413a;font-size:.72rem}.lead-capture-submit{width:100%;margin-top:4px;padding:10px;border:0;border-radius:50px;background:#d6a13b;color:#221805;font:750 .82rem var(--display);cursor:pointer}.lead-capture-submit:hover{background:#244b2a;color:#fff}.lead-capture-submit:disabled{opacity:.55;cursor:wait}

.uzmi-ai-messages{flex:1 1 auto;overflow-y:auto;padding:17px 14px 10px;scroll-behavior:smooth;background:linear-gradient(180deg,var(--cream) 0%,var(--card) 48%)}
.uzmi-ai-messages::-webkit-scrollbar{width:6px}.uzmi-ai-messages::-webkit-scrollbar-track{background:transparent}.uzmi-ai-messages::-webkit-scrollbar-thumb{background:#8eaa91;border-radius:10px}
.uzmi-ai-row{display:flex;gap:8px;margin-bottom:14px;animation:uzmiAiMessageIn .3s ease both}.uzmi-ai-row.user{justify-content:flex-end}
.uzmi-ai-mini-avatar{flex:0 0 28px;width:28px;height:28px;margin-top:3px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--green) 10%,var(--card));color:var(--green-dark);font-size:.78rem}
.uzmi-ai-bubble{max-width:82%;padding:11px 13px;border-radius:16px;font-size:.86rem;line-height:1.62;white-space:pre-wrap;overflow-wrap:anywhere}
.uzmi-ai-row.assistant .uzmi-ai-bubble{border:1px solid var(--line);border-top-left-radius:5px;background:var(--card);color:var(--ink);box-shadow:0 8px 22px rgba(36,60,41,.07)}
.uzmi-ai-row.user .uzmi-ai-bubble{border-bottom-right-radius:5px;background:#2e7d32;color:#fff;box-shadow:0 8px 20px rgba(46,125,50,.2)}
.uzmi-ai-message-wrap{max-width:84%}.uzmi-ai-message-wrap .uzmi-ai-bubble{max-width:100%}
.uzmi-ai-message-tools{display:flex;align-items:center;gap:4px;margin-top:5px;padding-left:3px;opacity:.72}.uzmi-ai-tool{padding:3px 6px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:.72rem;cursor:pointer;transition:.2s ease}.uzmi-ai-tool:hover{background:color-mix(in srgb,var(--green) 10%,var(--card));color:var(--green-dark)}
.uzmi-ai-consult{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:10px;padding:9px 12px;border-radius:50px;background:#d6a13b;color:#221805;font:700 .78rem var(--display);transition:.25s ease}.uzmi-ai-consult:hover{background:#244b2a;color:#fff;transform:translateY(-1px)}
.uzmi-ai-source-badge{display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:4px 8px;border:1px solid var(--line);border-radius:50px;background:color-mix(in srgb,var(--green) 10%,var(--card));color:var(--green-dark);font:700 .62rem var(--display)}
.uzmi-ai-source-badge.ai-generated{background:rgba(201,151,63,.13);border-color:rgba(214,161,59,.35);color:var(--ink)}.uzmi-ai-source-badge.safety-guidance{background:rgba(179,65,58,.10);border-color:rgba(179,65,58,.28);color:var(--ink)}

.uzmi-ai-suggestions{flex:0 0 auto;display:flex;align-items:center;gap:7px;overflow-x:auto;padding:8px 12px 10px;border-top:1px solid var(--line);background:var(--card);scrollbar-width:none}.uzmi-ai-suggestions::-webkit-scrollbar{display:none}
.uzmi-ai-chip{flex:0 0 auto;padding:7px 11px;border:1px solid #8eaa91;border-radius:50px;background:var(--card);color:var(--green-dark);font:600 .7rem var(--display);cursor:pointer;transition:.25s ease}.uzmi-ai-chip:hover{background:color-mix(in srgb,var(--green) 10%,var(--card));border-color:var(--moss);transform:translateY(-1px)}
.uzmi-ai-composer{flex:0 0 auto;display:flex;align-items:flex-end;gap:7px;padding:10px 11px 12px;border-top:1px solid var(--line);background:var(--card)}
.uzmi-ai-input-wrap{flex:1;display:flex;align-items:flex-end;padding:4px 5px 4px 12px;border:1px solid var(--line);border-radius:18px;background:var(--cream-2);transition:.25s ease}.uzmi-ai-input-wrap:focus-within{border-color:var(--moss);box-shadow:0 0 0 3px rgba(74,107,79,.13)}
#uzmiAiInput{flex:1;min-height:34px;max-height:104px;padding:7px 4px;border:0;outline:0;resize:none;background:transparent;color:var(--ink);font:400 .85rem/1.45 var(--body)}#uzmiAiInput::placeholder{color:var(--muted);opacity:.72}
.uzmi-ai-send{flex:0 0 38px;width:38px;height:38px;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#2e7d32;color:#fff;box-shadow:0 7px 16px rgba(46,125,50,.24);cursor:pointer;transition:.25s ease}.uzmi-ai-send:hover{transform:scale(1.06);background:#1b5e20}.uzmi-ai-send:disabled{opacity:.45;cursor:not-allowed;transform:none}
.uzmi-ai-mic{flex:0 0 32px;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--moss);cursor:pointer;transition:.25s ease}.uzmi-ai-mic:hover{background:color-mix(in srgb,var(--green) 10%,var(--card))}.uzmi-ai-mic.is-listening{background:#c23b35!important;color:#fff!important;box-shadow:0 0 0 4px rgba(194,59,53,.14);animation:uzmiAiMicRecord 1.05s ease-in-out infinite}
.uzmi-ai-typing{display:flex;align-items:center;gap:4px;height:19px;padding:2px 0}.uzmi-ai-typing span{width:6px;height:6px;border-radius:50%;background:#8eaa91;animation:uzmiAiDots 1.1s infinite ease-in-out}.uzmi-ai-typing span:nth-child(2){animation-delay:.15s}.uzmi-ai-typing span:nth-child(3){animation-delay:.3s}

.uzmi-ai-voice-panel{flex:0 0 auto;margin:0;padding:12px 14px 11px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,color-mix(in srgb,var(--green) 10%,var(--card)),var(--card));color:var(--ink);opacity:0;transform:translateY(-5px);transition:opacity .22s ease,transform .22s ease}
.uzmi-ai-voice-panel.is-visible{display:block;opacity:1;transform:none}.uzmi-ai-voice-main{display:flex;align-items:center;gap:10px;min-width:0}.uzmi-ai-voice-orb{flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--moss);color:#fff;box-shadow:0 7px 18px rgba(46,125,50,.24)}
.uzmi-ai-voice-panel[data-mode=listening] .uzmi-ai-voice-orb{background:#c23b35;animation:uzmiAiVoiceGlow 1.15s ease-in-out infinite}.uzmi-ai-voice-panel[data-mode=thinking] .uzmi-ai-voice-orb{background:#244b2a}.uzmi-ai-voice-panel[data-mode=speaking] .uzmi-ai-voice-orb{background:#2e7d32;animation:uzmiAiSpeakingGlow 1.25s ease-in-out infinite}.uzmi-ai-voice-panel[data-mode=error] .uzmi-ai-voice-orb{background:#b3413a}
.uzmi-ai-voice-copy{min-width:0;flex:1}.uzmi-ai-voice-copy strong{display:block;color:var(--ink);font:700 .79rem/1.25 var(--display)}.uzmi-ai-voice-copy span{display:block;margin-top:2px;color:var(--muted);font-size:.68rem;line-height:1.35}
.uzmi-ai-sound-waves{height:30px;min-width:36px;display:flex;align-items:center;justify-content:center;gap:3px}.uzmi-ai-sound-waves span{width:3px;height:8px;border-radius:4px;background:var(--moss);animation:uzmiAiVoiceWave .8s ease-in-out infinite}.uzmi-ai-sound-waves span:nth-child(2){animation-delay:.1s}.uzmi-ai-sound-waves span:nth-child(3){animation-delay:.2s}.uzmi-ai-sound-waves span:nth-child(4){animation-delay:.3s}.uzmi-ai-sound-waves span:nth-child(5){animation-delay:.4s}
.uzmi-ai-live-transcript{display:none;max-height:58px;margin-top:9px;padding:8px 10px;overflow:auto;border:1px solid rgba(74,107,79,.14);border-radius:10px;background:color-mix(in srgb,var(--card) 75%,transparent);color:var(--muted);font-size:.72rem;line-height:1.45;overflow-wrap:anywhere}.uzmi-ai-live-transcript.has-text{display:block}
.uzmi-ai-speech-progress{display:none;height:3px;margin-top:9px;border-radius:6px;overflow:hidden;background:rgba(74,107,79,.16)}.uzmi-ai-voice-panel[data-mode=speaking] .uzmi-ai-speech-progress{display:block}.uzmi-ai-speech-progress span{display:block;width:0;height:100%;border-radius:inherit;background:var(--moss);transition:width .18s linear}
.uzmi-ai-voice-controls{display:none;align-items:center;gap:6px;flex-wrap:wrap;margin-top:9px}.uzmi-ai-voice-panel[data-mode=listening] .uzmi-ai-voice-controls,.uzmi-ai-voice-panel[data-mode=speaking] .uzmi-ai-voice-controls,.uzmi-ai-voice-panel[data-mode=paused] .uzmi-ai-voice-controls{display:flex}
.uzmi-ai-voice-controls button{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border:1px solid var(--line);border-radius:50px;background:var(--card);color:var(--muted);font:600 .64rem var(--display);cursor:pointer}.uzmi-ai-voice-controls button:hover{background:color-mix(in srgb,var(--green) 10%,var(--card));color:var(--green-dark);border-color:#8eaa91}
.uzmi-ai-voice-panel[data-mode=listening] #uzmiAiPauseSpeech,.uzmi-ai-voice-panel[data-mode=listening] #uzmiAiResumeSpeech,.uzmi-ai-voice-panel[data-mode=listening] #uzmiAiReplaySpeech,.uzmi-ai-voice-panel[data-mode=speaking] #uzmiAiReplaySpeech{display:none}

@keyframes uzmiAiLauncherFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes uzmiAiLauncherRipple{to{transform:scale(3);opacity:0}}
@keyframes uzmiAiDots{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}
@keyframes uzmiAiMessageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes uzmiAiVoiceWave{0%,100%{height:7px;opacity:.55}50%{height:25px;opacity:1}}
@keyframes uzmiAiVoiceGlow{0%,100%{box-shadow:0 0 0 0 rgba(194,59,53,.24)}50%{box-shadow:0 0 0 9px rgba(194,59,53,0)}}
@keyframes uzmiAiSpeakingGlow{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@keyframes uzmiAiMicRecord{0%,100%{transform:scale(1)}50%{transform:scale(1.09)}}

@media(max-width:575.98px){
  .uzmi-ai-launcher{top:var(--uzmi-ai-safe-top,76px);right:14px;width:56px;height:56px}
  .uzmi-ai-launcher-label{display:none}
  .uzmi-ai-shell{left:8px;right:8px;top:calc(var(--uzmi-ai-safe-top,76px) + 68px);width:auto;height:calc(100dvh - var(--uzmi-ai-safe-top,76px) - 78px);max-height:680px;border-radius:20px}
  .uzmi-ai-bubble,.uzmi-ai-message-wrap{max-width:88%}
  .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate{margin:8px auto;width:calc(100% - 16px);padding:14px;max-width:360px}
  body.uzmi-offer-banner-visible .uzmi-ai-shell.is-gated .uzmi-ai-lead-gate{margin:5px auto;width:calc(100% - 10px);padding:8px 10px}
  .uzmi-ai-voice-panel{padding:10px 11px}.uzmi-ai-voice-controls button span{display:none}.uzmi-ai-voice-controls button{width:32px;height:30px;justify-content:center;padding:0}
}
@media(prefers-reduced-motion:reduce){.uzmi-ai-shell,.uzmi-ai-row,.uzmi-ai-launcher,.uzmi-ai-typing span,.uzmi-ai-voice-orb,.uzmi-ai-sound-waves span,.uzmi-ai-mic.is-listening{animation:none!important;transition:none!important}}
