.masgar-chatbot-root, .masgar-chatbot-launcher, .masgar-chatbot-panel, .masgar-chatbot-avatar-viewer{
      --kc-bg:#fff7f7; --kc-card:#ffffff; --kc-line:#efd3d3; --kc-user:#d52222; --kc-text:#362020;
      --kc-grad1:#e12727; --kc-grad2:#990000; --kc-shadow:0 20px 60px rgba(80,0,0,.22);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
    }
    .kc-fab{position:fixed;right:20px;bottom:20px;border:none;border-radius:999px;padding:14px 21px;font-weight:600;cursor:pointer;box-shadow:0 8px 30px rgba(0,0,0,.2);z-index:9999;background:linear-gradient(135deg,var(--kc-grad1),var(--kc-grad2));color:#fff;transition:transform .15s ease;display:flex;align-items:center;gap:8px}
    .kc-fab.kc-side-left{left:20px;right:auto}
    .kc-fab.kc-side-right{right:20px;left:auto}
    .kc-avatar{object-fit:contain;object-position:center;flex-shrink:0}
    .kc-avatar-zoomable{cursor:zoom-in}
    .kc-fab .kc-avatar{width:36px;height:36px;border-radius:0;display:block;visibility:visible;opacity:1}
    .kc-fab .kc-label{display:block;flex:1 1 auto;min-width:0;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .kc-fab:active{ transform:scale(.97) }
    .kc-fab::after{content:"";position:absolute;inset:-6px;border-radius:999px;border:2px solid rgba(153,0,0,.35);animation:kc-pulse 2.6s infinite;pointer-events:none}
    @keyframes kc-pulse{0%{opacity:.8;transform:scale(.95)}70%{opacity:0;transform:scale(1.2)}100%{opacity:0;transform:scale(1.2)}}
    @media (max-width:480px){
      .kc-fab{padding:12px 16px}
      .kc-fab .kc-label{max-width:100%;white-space:normal;line-height:1.2}
    }
    .kc-panel{position:fixed;right:20px;bottom:90px;width:var(--kc-panel-width,340px);max-width:min(var(--kc-panel-width,90vw),90vw);height:var(--kc-panel-height,auto);max-height:calc(100vh - 120px);min-height:320px;background:var(--kc-card);border:1px solid var(--kc-line);border-radius:16px;box-shadow:var(--kc-shadow);display:none;flex-direction:column;overflow:hidden;z-index:9999;transform-origin:95% 100%;opacity:0;transform:translateY(8px) scale(.98);box-sizing:border-box}
    .kc-panel.kc-side-left{left:20px;right:auto;transform-origin:5% 100%}
    .kc-panel.kc-side-right{right:20px;left:auto;transform-origin:95% 100%}
    .kc-panel.kc-open{display:flex;animation:kc-pop .18s ease-out forwards}
    .kc-panel.kc-close{animation:kc-pop-out .14s ease-in forwards}
    .kc-panel.kc-resizable{cursor:default}
    @keyframes kc-pop{to{opacity:1;transform:translateY(0) scale(1)}}
    @keyframes kc-pop-out{to{opacity:0;transform:translateY(8px) scale(.98)}}
    .kc-header{padding:10px 16px;background:linear-gradient(90deg,var(--kc-grad1),var(--kc-grad2));color:#fff;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:12px}
    .kc-header-info{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0;gap:4px}
    .kc-header .kc-avatar{width:44px;height:44px;border-radius:12px;background:#fff;padding:3px;box-sizing:border-box;flex-shrink:0;display:block;visibility:visible;opacity:1}
    .kc-body{position:relative;flex:1 1 auto;min-height:220px;padding:16px;overflow-y:auto;scrollbar-gutter:stable;background:linear-gradient(165deg,#fffafa,#fff0f0);color:var(--kc-text);scrollbar-width:thin;scrollbar-color:rgba(153,0,0,.35) transparent;isolation:isolate}
    .kc-body>*{position:relative;z-index:1}
    .kc-body:hover{scrollbar-color:rgba(153,0,0,.6) transparent}
    .kc-body::-webkit-scrollbar{width:6px}
    .kc-body::-webkit-scrollbar-thumb{background:rgba(153,0,0,.3);border-radius:3px}
    .kc-body:hover::-webkit-scrollbar-thumb{background:rgba(153,0,0,.6)}
    .kc-body::-webkit-scrollbar-track{background:transparent}
    .kc-msg{margin:6px 0;display:flex;opacity:0;transform:translateY(6px);animation:kc-in .2s ease-out forwards}
    .kc-user{justify-content:flex-end}.kc-bot{justify-content:flex-start}
    .kc-bot .kc-avatar{width:24px;height:24px;border-radius:50%;margin-right:8px}
    .kc-avatar-viewer{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(35,0,0,.85);z-index:10000;padding:32px}
    .kc-avatar-viewer.kc-show{display:flex}
    .kc-avatar-viewer img{max-width:90vw;max-height:90vh;border-radius:20px;box-shadow:0 22px 60px rgba(0,0,0,.45)}
    .kc-avatar-viewer .kc-avatar-close{position:absolute;top:24px;right:24px;width:38px;height:38px;border-radius:50%;border:none;background:rgba(100,0,0,.7);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
    .kc-avatar-viewer .kc-avatar-close:hover{background:rgba(100,0,0,.9)}
    @keyframes kc-in{to{opacity:1;transform:translateY(0)}}
    .kc-bubble{position:relative;max-width:78%;padding:10px 12px;border-radius:14px;line-height:1.35;font-size:14px;white-space:pre-wrap;word-wrap:break-word}
    .kc-bubble{backdrop-filter:blur(12px);background:#ffffff;border:1px solid rgba(190,24,24,.2);box-shadow:0 10px 32px rgba(90,0,0,.08)}
    .kc-bubble.kc-has-copy{padding-right:12px;padding-bottom:10px}
    .kc-user .kc-bubble{background:linear-gradient(135deg,var(--kc-grad1),var(--kc-grad2));color:#fff;border-bottom-right-radius:6px;border:1px solid rgba(255,255,255,.12);box-shadow:0 5px 14px rgba(153,0,0,.12)}
    .kc-bot .kc-bubble{background:#ffffff;color:var(--kc-text);border-bottom-left-radius:6px;border:1px solid rgba(190,24,24,.18);box-shadow:0 12px 30px rgba(90,0,0,.06)}
    .kc-bubble.kc-rich{white-space:normal;line-height:1.45}
    .kc-bubble.kc-rich .kc-rich-content{white-space:normal}
    .kc-bubble.kc-rich p{margin:0 0 .65em}
    .kc-bubble.kc-rich p:last-child{margin-bottom:0}
    .kc-bubble.kc-rich ul,
    .kc-bubble.kc-rich ol{margin:.2em 0 .75em 1.2em;padding:0}
    .kc-bubble.kc-rich li{margin:.25em 0}
    .kc-bubble.kc-rich pre{margin:.6em 0;padding:12px;background:#fff4f4;border-radius:10px;border:1px solid rgba(190,24,24,.25);overflow:auto;color:#4c1919}
    .kc-bubble.kc-rich pre code{background:none;padding:0}
    .kc-bubble.kc-rich code{font-family:"Courier New",Courier,monospace;font-size:13px;padding:2px 4px;border-radius:4px;background:#fce6e6}
    .kc-bubble.kc-rich blockquote{margin:.6em 0;padding-left:14px;border-left:3px solid rgba(190,24,24,.45);color:#6f3030}
    .kc-bubble.kc-rich hr{border:none;border-top:1px solid rgba(190,24,24,.3);margin:.6em 0}
    .kc-bubble.kc-rich a{color:#990000;text-decoration:underline}
    .kc-bubble.kc-rich table{width:100%;border-collapse:collapse;margin:.6em 0}
    .kc-bubble.kc-rich th,
    .kc-bubble.kc-rich td{border:1px solid rgba(190,24,24,.25);padding:6px 8px;text-align:left}
    .kc-bubble.kc-rich img{max-width:100%;height:auto;border-radius:10px;margin:.5em 0}
    .kc-bubble.kc-rich .kc-format-latex{font-size:14px;line-height:1.45}
    .kc-bubble.kc-rich .kc-underline{text-decoration:underline}
    .kc-copy-btn{position:absolute;left:-32px;bottom:4px;width:18px;height:18px;border:none;border-radius:6px;background:#fff0f0;color:#990000;display:flex;align-items:center;justify-content:center;gap:0;padding:0;cursor:pointer;opacity:0;transform:translateX(-8px) scale(.92);transition:opacity .18s ease,transform .18s ease,background .15s ease,color .15s ease;pointer-events:none}
    .kc-copy-btn svg{width:12px;height:12px;fill:currentColor}
    .kc-msg:hover .kc-copy-btn,.kc-copy-btn:focus-visible{opacity:1;transform:translateX(0) scale(1);pointer-events:auto}
    .kc-copy-btn:hover{background:rgba(190,24,24,.85);color:#fff}
    .kc-copy-btn:focus-visible{outline:2px solid rgba(153,0,0,.85);outline-offset:2px}
    .kc-typing{display:inline-flex;align-items:center;gap:6px}
    .kc-dot{width:6px;height:6px;border-radius:50%;background:#b31313;opacity:.4;animation:kc-dot 1.2s infinite}
    .kc-dot:nth-child(2){animation-delay:.2s}.kc-dot:nth-child(3){animation-delay:.4s}
    @keyframes kc-dot{0%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}100%{opacity:.3;transform:translateY(0)}}
    .kc-footer{display:flex;gap:8px;padding:10px;background:var(--kc-card);border-top:1px solid var(--kc-line)}
    .kc-input{flex:1;padding:10px 12px;border-radius:10px;border:1px solid var(--kc-line);background:var(--kc-bg);color:var(--kc-text);outline:none;transition:box-shadow .2s,border-color .2s}
    .kc-input:focus{box-shadow:0 0 0 3px rgba(190,24,24,.25);border-color:#990000}
    .kc-send{position:relative;min-width:86px;padding:10px 14px;border-radius:10px;border:none;background:linear-gradient(135deg,var(--kc-grad1),var(--kc-grad2));color:#fff;font-weight:700;cursor:pointer;overflow:hidden}
    .kc-send:disabled{opacity:.85;cursor:not-allowed}
    .kc-send .kc-slabel{display:inline-block;transition:opacity .15s}
    .kc-send.kc-loading .kc-slabel{opacity:0}
    .kc-send .kc-spinner{position:absolute;inset:0;display:none;align-items:center;justify-content:center}
    .kc-send.kc-loading .kc-spinner{display:flex}
    .kc-spin{width:18px;height:18px;border-radius:50%;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;animation:kc-spin .8s linear infinite}
    @keyframes kc-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
    .kc-header .kc-status{font-size:12px;line-height:12px;color:rgba(255,255,255,.82);margin-top:4px;min-height:12px}
    .kc-header .kc-status .blink{animation:kc-blink 1.2s infinite}
    @keyframes kc-blink{50%{opacity:.35}}
    @keyframes kc-pop{to{opacity:1;transform:translateY(0) scale(1)}}
    @keyframes kc-pop-out{to{opacity:0;transform:translateY(8px) scale(.98)}}
    .kc-resize-handle{display:none;position:absolute;width:18px;height:18px;bottom:10px;left:10px;background:#ffffff;border:1px solid rgba(190,24,24,.35);border-radius:6px;align-items:center;justify-content:center;cursor:sw-resize;box-shadow:0 6px 18px rgba(90,0,0,.12);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
    .kc-resize-handle::before{content:"";width:10px;height:10px;border-left:2px solid #990000;border-bottom:2px solid #990000;transform:translate(-1px,1px) rotate(0deg)}
    .kc-panel.kc-resizable .kc-resize-handle{display:flex}
    .kc-panel.kc-resizable:hover .kc-resize-handle,.kc-resize-handle.kc-active{opacity:1;visibility:visible;pointer-events:auto}
    .kc-scroll-bottom{position:absolute;right:18px;top:12px;bottom:auto;display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:999px;background:#fff0f0;color:#4c1919;font-size:12px;line-height:1.2;cursor:pointer;box-shadow:0 12px 32px rgba(90,0,0,.14);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,background .18s ease,color .18s ease;transform:translateY(6px);z-index:2}
    .kc-scroll-bottom .kc-scroll-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:rgba(190,24,24,.35);color:#fff;font-weight:600;font-size:11px}
    .kc-scroll-bottom .kc-scroll-text{font-weight:600;letter-spacing:.01em}
    .kc-scroll-bottom:hover{background:rgba(190,24,24,.88);color:#fff}
    .kc-scroll-bottom:focus-visible{outline:2px solid rgba(153,0,0,.85);outline-offset:2px}
    .kc-body.kc-scroll-pending:hover .kc-scroll-bottom,.kc-scroll-bottom:focus-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}

.masgar-chatbot-close{border:0;background:transparent;color:#fff;font:inherit;font-size:26px;line-height:1;width:30px;height:36px;padding:0;cursor:pointer;border-radius:8px;flex-shrink:0}
.masgar-chatbot-close:hover{background:rgba(255,255,255,.16);color:#fff}
.masgar-chatbot-launcher:hover,.masgar-chatbot-panel .kc-send:hover{background:linear-gradient(135deg,#d52222,#990000);color:#fff}
.masgar-chatbot-launcher:focus-visible,.masgar-chatbot-panel button:focus-visible{outline:2px solid #990000;outline-offset:3px}
.masgar-chatbot-panel .kc-input{min-width:0;font:inherit;font-size:14px}
.masgar-chatbot-launcher,.masgar-chatbot-panel button{font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
@media (prefers-reduced-motion:reduce){.kc-fab::after{animation:none}.kc-panel.kc-open{animation:none;opacity:1;transform:none}.kc-msg{animation:none;opacity:1;transform:none}}

/* Keep widget controls independent of the site's theme and Elementor kit. */
button.masgar-chatbot-launcher.kc-fab {
  appearance:none; display:inline-flex; flex-direction:row; align-items:center; justify-content:center;
  width:auto; min-width:0; max-width:calc(100vw - 32px); height:56px; margin:0; padding:8px 18px;
  border:2px solid rgba(255,255,255,.9); border-radius:999px;
  background:linear-gradient(135deg,#e12727,#990000); color:#fff;
  font:600 14px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif; gap:8px;
  box-shadow:0 0 0 1px #990000,0 6px 20px rgba(80,0,0,.2); text-transform:none;
}
button.masgar-chatbot-launcher.kc-fab::after {content:none}
button.masgar-chatbot-launcher.kc-fab .kc-label {white-space:nowrap;line-height:1.2;color:inherit}
button.masgar-chatbot-launcher.kc-fab img.kc-avatar,
.masgar-chatbot-panel.kc-panel img.kc-avatar {background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;margin-top:0;margin-bottom:0}
.masgar-chatbot-panel.kc-panel .kc-header img.kc-avatar {width:36px;height:36px}
.masgar-chatbot-panel.kc-panel button {appearance:none;margin:0;text-transform:none;font:500 14px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;box-shadow:none}
.masgar-chatbot-panel.kc-panel button.masgar-chatbot-close {
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;
  width:30px;min-width:30px;height:30px;min-height:0;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;
}
.masgar-chatbot-panel.kc-panel button.masgar-chatbot-close:hover {background:rgba(255,255,255,.15)}
.masgar-chatbot-panel.kc-panel button.masgar-chatbot-close svg {display:block;width:18px;height:18px}
.masgar-chatbot-panel.kc-panel button.kc-send {display:inline-flex;align-items:center;justify-content:center;min-width:64px;width:auto;padding:10px 14px;border:0;border-radius:10px;background:linear-gradient(135deg,#e12727,#990000);color:#fff}
.masgar-chatbot-panel.kc-panel input.kc-input {width:0;min-width:0;margin:0;padding:10px 12px;font:400 14px/1.4 system-ui,sans-serif;border:1px solid #efd3d3;border-radius:10px;background:#fffafa;color:#362020}
.masgar-chatbot-panel.kc-panel input.kc-input:focus {border-color:#990000;box-shadow:0 0 0 2px #f9dddd;outline:0}
.masgar-chatbot-panel.kc-panel .kc-header .kc-status {font-weight:400;line-height:1.4;min-height:0;margin:0}
.masgar-chatbot-panel.kc-panel .kc-header .kc-status:empty {display:none}
.masgar-chatbot-panel.kc-panel .kc-bubble {box-shadow:none;backdrop-filter:none;line-height:1.5}
.masgar-chatbot-panel.kc-panel .kc-bubble.kc-has-copy {padding-bottom:6px}
.masgar-chatbot-panel.kc-panel button.kc-copy-btn {
  position:static;display:flex;align-items:center;justify-content:center;width:26px;min-width:26px;height:26px;
  padding:5px;margin:6px 0 0 -3px;border:0;border-radius:6px;background:transparent;color:#8e7777;
  opacity:.65;transform:none;pointer-events:auto;transition:background .15s,color .15s;
}
.masgar-chatbot-panel.kc-panel button.kc-copy-btn:hover,
.masgar-chatbot-panel.kc-panel button.kc-copy-btn.kc-copied {background:#fff0f0;color:#990000;opacity:1}
.masgar-chatbot-panel.kc-panel button.kc-copy-btn svg {width:15px;height:15px;display:block}
.masgar-chatbot-panel.kc-panel .kc-rich-content h1,
.masgar-chatbot-panel.kc-panel .kc-rich-content h2,
.masgar-chatbot-panel.kc-panel .kc-rich-content h3 {font-size:1.05em;margin:.5em 0;font-weight:700;color:inherit}
.masgar-chatbot-panel.kc-panel .kc-rich-content a {overflow-wrap:anywhere}
