@font-face{font-family:"KCA Poppins";src:url("../fonts/Poppins-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"KCA Poppins";src:url("../fonts/Poppins-Medium.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"KCA Poppins";src:url("../fonts/Poppins-SemiBold.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}
.kca-widget{position:fixed;left:24px;bottom:24px;z-index:99999;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;font-family:"KCA Poppins",Poppins,Arial,"Helvetica Neue",sans-serif;font-weight:400;color:#1a202c;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.kca-widget--right{left:auto;right:24px;justify-content:flex-end}
.kca-widget--right .kca-launcher-wrap{order:1}
.kca-widget--right .kca-backtop{order:2}
.kca-widget *{box-sizing:border-box}
.kca-widget [hidden]{display:none!important}
.kca-launcher-wrap{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}
.kca-launcher{display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 18px;border:0;border-radius:999px;background:var(--kca-accent,#2d3748);color:#fff;font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;box-shadow:0 16px 42px rgba(0,0,0,.28);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.kca-launcher:hover,.kca-launcher:focus-visible{transform:translateY(-2px);box-shadow:0 22px 56px rgba(0,0,0,.34);outline:0;background:var(--kca-accent-hover,#1a202c)}
.kca-launcher__icon{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:#1a202c;color:var(--kca-accent,#2d3748);font-size:15px;font-weight:600;line-height:1}
.kca-launcher__icon svg{display:block;width:16px;height:16px;fill:currentColor}
.kca-nudge{position:absolute;left:50%;bottom:62px;display:inline-flex;align-items:center;justify-content:center;min-height:40px;max-width:190px;white-space:nowrap;padding:9px 13px;border:1px solid var(--kca-accent-border,rgba(45,55,72,.42));border-radius:14px;background:#fff;color:#1a202c;font:inherit;font-size:13px;font-weight:500;line-height:1.25;box-shadow:0 16px 42px rgba(0,0,0,.24);cursor:pointer;animation:kca-nudge-in .34s ease both}
.kca-nudge:after{content:"";position:absolute;bottom:-6px;left:calc(50% - 6px);width:12px;height:12px;background:#fff;border-right:1px solid var(--kca-accent-border,rgba(45,55,72,.42));border-bottom:1px solid var(--kca-accent-border,rgba(45,55,72,.42));transform:rotate(45deg)}
.kca-nudge:hover,.kca-nudge:focus-visible{outline:0;background:#f7fafc}
.kca-widget.is-nudging .kca-launcher{animation:kca-launcher-shake .72s ease both .08s}
.kca-backtop{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid var(--kca-accent-border,rgba(45,55,72,.6));border-radius:999px;background:var(--kca-accent,#2d3748);color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.28);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.kca-backtop:hover,.kca-backtop:focus-visible{transform:translateY(-2px);box-shadow:0 20px 50px rgba(0,0,0,.34);outline:0;background:var(--kca-accent-hover,#1a202c)}
.kca-backtop svg{display:block;width:22px;height:22px;fill:currentColor}
.kca-panel{position:absolute;left:0;bottom:66px;width:min(360px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:min(680px,calc(100vh - 106px));display:grid;grid-template-rows:auto minmax(150px,1fr) auto auto;background:#fff;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.34);overflow:hidden}
.kca-widget--right .kca-panel{left:auto;right:0}
.kca-panel__header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid #e2e8f0;background:#fff}
.kca-panel__identity{display:flex;align-items:center;gap:10px;min-width:0}
.kca-panel__identity>div{min-width:0}
.kca-panel__identity .kca-avatar{width:32px;height:32px}
.kca-panel__header strong{display:block;overflow:hidden;color:#1a202c;font-size:15px;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.kca-panel__header span:not(.kca-avatar){display:block;overflow:hidden;margin-top:2px;color:#4a5568;font-size:12px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}
.kca-panel__header>[data-kca-close]{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#1a202c;font-family:Arial,"Helvetica Neue",sans-serif;font-size:20px;font-weight:400;line-height:1;cursor:pointer}
.kca-panel__header>[data-kca-close]:hover,.kca-panel__header>[data-kca-close]:focus-visible{background:#f7fafc;outline:0}
.kca-avatar{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border-radius:999px;background:#1a202c;color:var(--kca-accent,#2d3748);box-shadow:0 6px 18px rgba(0,0,0,.1)}
.kca-avatar svg{display:block;width:18px;height:18px;fill:currentColor}
.kca-messages{display:grid;align-content:start;gap:10px;min-width:0;min-height:150px;padding:16px 16px 10px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--kca-accent,#2d3748) #edf2f7}
.kca-messages::-webkit-scrollbar{width:7px}
.kca-messages::-webkit-scrollbar-track{background:#edf2f7}
.kca-messages::-webkit-scrollbar-thumb{background:var(--kca-accent,#2d3748);border-radius:999px}
.kca-message{display:flex;align-items:flex-end;gap:8px;min-width:0}
.kca-message__body{display:grid;gap:6px;min-width:0;max-width:86%}
.kca-message p{min-width:0;margin:0;padding:11px 13px;border-radius:16px;color:#1a202c;font-size:14px;font-weight:400;line-height:1.55;box-shadow:none;overflow-wrap:anywhere;word-break:break-word}
.kca-message--assistant{align-items:flex-start}
.kca-message--assistant .kca-message__body{max-width:calc(100% - 42px)}
.kca-message--assistant p{background:#f7fafc;border:1px solid #e2e8f0;border-bottom-left-radius:5px}
.kca-message--user{justify-content:flex-end}
.kca-message--user p{background:var(--kca-accent,#2d3748);color:#fff;border:0;border-bottom-right-radius:5px;font-weight:500}
.kca-message__meta{justify-self:end;color:var(--kca-accent,#2d3748);font-size:11px;font-weight:400;line-height:1}
.kca-message__links{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.kca-message__link{display:inline-flex;align-items:center;max-width:100%;min-height:30px;padding:6px 10px;border:1px solid var(--kca-accent-border,rgba(45,55,72,.55));border-radius:999px;background:#fff;color:#1a202c;font-size:12px;font-weight:600;line-height:1.2;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kca-message__link:hover,.kca-message__link:focus-visible{background:#f7fafc;color:#1a202c;outline:0}
.kca-limit{display:grid;gap:6px;margin-left:38px;padding:12px 13px;border:1px solid var(--kca-accent-border,rgba(45,55,72,.38));border-radius:14px;background:#f7fafc;color:#1a202c;box-shadow:0 10px 26px rgba(0,0,0,.06)}
.kca-limit strong{font-size:13px;font-weight:600;line-height:1.25}
.kca-limit p{margin:0;padding:0;border:0;background:transparent;box-shadow:none;color:#4a5568;font-size:13px;font-weight:400;line-height:1.45}
.kca-limit span{color:var(--kca-accent,#2d3748);font-size:12px;font-weight:500;line-height:1.2}
.kca-limit b{font-weight:600}
.kca-message--typing p{display:inline-flex;align-items:center;gap:9px;color:#4a5568}
.kca-typing__label{font-size:12px;font-weight:400}
.kca-typing__dots{display:inline-flex;align-items:center;gap:4px}
.kca-typing__dots i{display:block;width:5px;height:5px;border-radius:999px;background:var(--kca-accent,#2d3748);animation:kca-typing 1s infinite ease-in-out}
.kca-typing__dots i:nth-child(2){animation-delay:.14s}
.kca-typing__dots i:nth-child(3){animation-delay:.28s}
.kca-quick{display:flex;gap:7px;flex-wrap:wrap;padding:4px 16px 12px;background:#fff}
.kca-chip{border:1px solid var(--kca-accent-border,rgba(45,55,72,.34));border-radius:999px;background:#fff;color:#4a5568;padding:7px 10px;font-size:12px;font-weight:500;line-height:1.35;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.kca-chip:hover,.kca-chip:focus-visible{background:#f7fafc;border-color:var(--kca-accent,#2d3748);color:#1a202c;outline:0}
.kca-session-controls{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0;margin:0;padding:3px;border:1px solid var(--kca-accent-border,rgba(45,55,72,.34));border-radius:999px;background:#fff;box-shadow:none}
.kca-session-controls button{min-height:28px;border:0;border-radius:999px;background:transparent;color:#4a5568;padding:5px 8px;font:inherit;font-size:10.5px;font-weight:600;line-height:1.15;white-space:nowrap;cursor:pointer;box-shadow:none;transition:background-color .18s ease,color .18s ease}
.kca-session-controls button[data-kca-new-session]{background:#fff;color:#4a5568}
.kca-session-controls button:hover,.kca-session-controls button:focus-visible{background:#f7fafc;color:#1a202c;outline:0}
.kca-session-controls button:disabled{opacity:.45;cursor:not-allowed}
.kca-widget.is-session-ended .kca-input input{background:#f7fafc;color:#4a5568}
.kca-suggestion{display:flex;gap:8px;flex-wrap:wrap;margin-left:38px}
.kca-suggestion button,.kca-input button{min-height:38px;border:1px solid var(--kca-accent,#2d3748);border-radius:999px;background:#fff;color:#1a202c;padding:8px 14px;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;line-height:1.2;cursor:pointer}
.kca-suggestion button:hover,.kca-input button:hover,.kca-suggestion button:focus-visible,.kca-input button:focus-visible{background:#f7fafc;outline:0}
.kca-suggestion .is-primary{background:var(--kca-accent,#2d3748);color:#fff;border-color:var(--kca-accent,#2d3748)}
.kca-suggestion .is-primary:hover,.kca-suggestion .is-primary:focus-visible,.kca-input button:hover,.kca-input button:focus-visible{background:var(--kca-accent-hover,#1a202c)}
.kca-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:14px 16px 16px;border-top:1px solid #e2e8f0;background:#fff}
.kca-input input{width:100%;border:1px solid #e2e8f0;border-radius:13px;background:#fff;color:#1a202c;padding:10px 11px;font:inherit;font-size:14px;font-weight:400}
.kca-input input:focus{border-color:var(--kca-accent,#2d3748);outline:0;box-shadow:0 0 0 3px var(--kca-accent-light,rgba(45,55,72,.18))}
.kca-input input:disabled{background:#f7fafc;color:#4a5568}
.kca-input button{padding:0 15px;background:var(--kca-accent,#2d3748);color:#fff;border-color:var(--kca-accent,#2d3748)}
.kca-input button:disabled{cursor:not-allowed;opacity:.7}
@keyframes kca-typing{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}
@keyframes kca-nudge-in{0%{opacity:0;transform:translateX(-50%) translateY(8px) scale(.96)}100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
@keyframes kca-launcher-shake{0%,100%{transform:translateX(0)}15%{transform:translateX(-4px)}30%{transform:translateX(4px)}45%{transform:translateX(-3px)}60%{transform:translateX(3px)}75%{transform:translateX(-1px)}}
@media(max-width:520px){.kca-widget,.kca-widget--right{left:14px;right:14px;bottom:14px;align-items:center}.kca-widget--right{justify-content:flex-end}.kca-launcher{max-width:calc(100vw - 88px);min-height:48px;padding:0 14px}.kca-launcher span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kca-nudge{bottom:58px;max-width:170px;font-size:12px}.kca-backtop{width:46px;height:46px}.kca-panel,.kca-widget--right .kca-panel{left:0;right:0;bottom:62px;width:auto;max-height:calc(100vh - 92px);border-radius:18px}.kca-message p{font-size:13px}.kca-message__body{max-width:88%}.kca-message--assistant .kca-message__body{max-width:calc(100% - 40px)}.kca-limit,.kca-suggestion{margin-left:38px}.kca-suggestion button{min-height:36px;padding:8px 12px}.kca-input{grid-template-columns:minmax(0,1fr) auto}.kca-input button{min-height:42px}}
@media(max-width:380px){.kca-panel__header{gap:6px;padding:12px}.kca-panel__identity{gap:7px}.kca-panel__identity .kca-avatar{width:28px;height:28px}.kca-session-controls button{max-width:70px;overflow:hidden;padding:5px 6px;text-overflow:ellipsis}.kca-panel__header>[data-kca-close]{width:32px;height:32px}}
@media(prefers-reduced-motion:reduce){.kca-launcher,.kca-backtop{transition:none}.kca-launcher:hover,.kca-launcher:focus-visible,.kca-backtop:hover,.kca-backtop:focus-visible{transform:none}.kca-typing__dots i,.kca-nudge,.kca-widget.is-nudging .kca-launcher{animation:none}}
.kca-panel{display:flex;flex-direction:column}
.kca-messages{flex:1}
.kca-avatar{overflow:hidden}
.kca-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.kca-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.kca-widget :is(button,a,input,textarea):focus-visible{outline:3px solid var(--kca-accent,#2d3748)!important;outline:3px solid color-mix(in srgb,var(--kca-accent,#2d3748) 70%,#fff)!important;outline-offset:2px!important;box-shadow:0 0 0 2px #fff!important}
.kca-processing-notice{margin:0;padding:6px 16px 2px;color:#64748b;font-size:10.5px;line-height:1.35;background:#fff}
.kca-privacy-actions{display:flex;justify-content:flex-end;padding:2px 16px 5px;background:#fff}
.kca-privacy-actions button{padding:2px 0;border:0;background:transparent;color:#64748b;font:inherit;font-size:10px;text-decoration:underline;cursor:pointer}
.kca-lead-form{display:grid;gap:10px;padding:14px 16px;overflow:auto;border-top:1px solid #e2e8f0;background:#fff}
.kca-lead-form h3{margin:0;color:#1a202c;font-size:15px}
.kca-lead-form label{display:grid;gap:4px;color:#334155;font-size:11px;font-weight:600}
.kca-lead-form input,.kca-lead-form textarea{width:100%;min-height:38px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#1a202c;font:inherit;font-size:13px;font-weight:400}
.kca-lead-form textarea{min-height:72px;resize:vertical}
.kca-lead-form__columns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.kca-lead-form .kca-consent{display:flex;align-items:flex-start;gap:7px;font-weight:400;line-height:1.4}
.kca-lead-form .kca-consent input{flex:0 0 auto;width:16px;min-height:16px;margin-top:2px}
.kca-privacy-link{color:var(--kca-accent,#2d3748);font-size:11px}
.kca-lead-form__actions{display:flex;gap:8px;flex-wrap:wrap}
.kca-lead-form__actions button{min-height:36px;padding:7px 12px;border:1px solid var(--kca-accent,#2d3748);border-radius:999px;background:#fff;color:#1a202c;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.kca-lead-form__actions button[type=submit]{background:var(--kca-accent,#2d3748);color:#fff}
.kca-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.kca-turnstile{padding:8px 16px;background:#fff;overflow:auto}
.kca-session-controls{max-width:150px;overflow:auto}
.kca-session-controls button{flex:0 0 auto}
@media(max-width:520px){.kca-lead-form__columns{grid-template-columns:1fr}.kca-session-controls{max-width:150px}}

/* Polished client-ready visual theme. Admin colors are injected as CSS variables. */
.kca-widget{--kca-surface:var(--kca-panel-bg,#fff);--kca-surface-soft:#f7f9fd;--kca-surface-muted:#f1f5fb;--kca-border-strong:#d7dfeb;--kca-muted:#66758a;--kca-ring:rgba(91,75,255,.24);--kca-ring:color-mix(in srgb,var(--kca-accent,#5b4bff) 28%,transparent);--kca-shadow:0 24px 70px rgba(15,23,42,.18);--kca-shadow-soft:0 12px 30px rgba(15,23,42,.14);color:var(--kca-header-text,#172033)}
.kca-panel{width:min(378px,calc(100vw - 32px));border-color:var(--kca-border,#e4eaf3);border-radius:26px;background:var(--kca-surface);box-shadow:var(--kca-shadow)}
.kca-panel__header{padding:15px 16px;border-bottom-color:var(--kca-border,#e4eaf3);background:var(--kca-header-bg,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--kca-header-bg,#fff) 92%,#fff),var(--kca-header-bg,#fff))}
.kca-panel__header strong{color:var(--kca-header-text,#172033);font-size:15px;letter-spacing:-.01em}
.kca-panel__header span:not(.kca-avatar),.kca-message__meta,.kca-processing-notice,.kca-privacy-actions button{color:var(--kca-muted)}
.kca-panel__header>[data-kca-close]{border-color:var(--kca-border,#e4eaf3);background:rgba(255,255,255,.72);color:var(--kca-header-text,#172033);transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}
.kca-panel__header>[data-kca-close]:hover,.kca-panel__header>[data-kca-close]:focus-visible{background:#fff;border-color:var(--kca-border-strong);color:var(--kca-header-text,#172033);transform:translateY(-1px)}
.kca-avatar{background:var(--kca-accent,#5b4bff);color:var(--kca-launcher-text,#fff);box-shadow:0 7px 18px rgba(15,23,42,.12)}
.kca-launcher{min-height:50px;padding:0 19px;background:var(--kca-accent,#5b4bff);color:var(--kca-launcher-text,#fff);box-shadow:0 12px 28px rgba(15,23,42,.16),0 8px 18px color-mix(in srgb,var(--kca-accent,#5b4bff) 18%,transparent);transition:transform .14s ease,box-shadow .14s ease,filter .14s ease,background-color .14s ease}
.kca-launcher:hover{transform:translateY(-1px);box-shadow:0 15px 34px rgba(15,23,42,.18),0 8px 20px color-mix(in srgb,var(--kca-accent,#5b4bff) 20%,transparent);filter:saturate(.98) brightness(.98);background:var(--kca-accent,#5b4bff)}
.kca-launcher:focus-visible{transform:none;background:var(--kca-accent,#5b4bff);box-shadow:0 12px 30px rgba(15,23,42,.16)}
.kca-launcher__icon{background:rgba(255,255,255,.18);color:var(--kca-launcher-text,#fff)}
.kca-backtop{border-color:transparent;background:var(--kca-accent,#5b4bff);color:var(--kca-launcher-text,#fff);box-shadow:0 10px 26px rgba(15,23,42,.16);transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}
.kca-backtop:hover,.kca-backtop:focus-visible{transform:translateY(-1px);box-shadow:0 14px 32px rgba(15,23,42,.18);filter:saturate(.98) brightness(.98);background:var(--kca-accent,#5b4bff)}
.kca-nudge{border-color:var(--kca-border,#e4eaf3);border-radius:17px;background:var(--kca-surface);color:var(--kca-header-text,#172033);box-shadow:0 14px 34px rgba(15,23,42,.13)}
.kca-nudge:after{background:var(--kca-surface);border-color:var(--kca-border,#e4eaf3)}
.kca-nudge:hover,.kca-nudge:focus-visible{background:var(--kca-surface-soft)}
.kca-messages{gap:11px;padding:17px 16px 10px;background:var(--kca-surface);scrollbar-color:#cbd5e1 #f1f5f9}
.kca-messages::-webkit-scrollbar-track{background:#f1f5f9}
.kca-messages::-webkit-scrollbar-thumb{background:#cbd5e1}
.kca-message p{border-radius:18px;color:var(--kca-assistant-text,#172033);box-shadow:none}
.kca-message--assistant p{background:var(--kca-assistant-bg,#f6f8fc);border-color:var(--kca-border,#e4eaf3)}
.kca-message--user p{background:var(--kca-user-bg,var(--kca-accent,#5b4bff));color:var(--kca-user-text,#fff);font-weight:500;box-shadow:0 7px 18px rgba(15,23,42,.10)}
.kca-message__link,.kca-chip,.kca-suggestion button,.kca-input button,.kca-lead-form__actions button{border-color:var(--kca-border-strong);transition:background-color .14s ease,border-color .14s ease,color .14s ease,filter .14s ease,transform .14s ease}
.kca-message__link:hover,.kca-message__link:focus-visible,.kca-chip:hover,.kca-chip:focus-visible,.kca-suggestion button:hover,.kca-suggestion button:focus-visible{background:var(--kca-surface-soft);border-color:var(--kca-border-strong);color:var(--kca-header-text,#172033)}
.kca-quick,.kca-input,.kca-privacy-actions,.kca-processing-notice,.kca-turnstile,.kca-lead-form{background:var(--kca-surface)}
.kca-session-controls{border-color:var(--kca-border,#e4eaf3);background:color-mix(in srgb,var(--kca-header-bg,#fff) 82%,#f6f8fc)}
.kca-session-controls button,.kca-session-controls button[data-kca-new-session]{color:var(--kca-muted)}
.kca-session-controls button:hover,.kca-session-controls button:focus-visible{background:rgba(255,255,255,.78);color:var(--kca-header-text,#172033)}
.kca-input{gap:8px;padding:13px 16px 15px;border-top-color:var(--kca-border,#e4eaf3)}
.kca-input input{border-color:var(--kca-border-strong);border-radius:14px;background:var(--kca-input-bg,#fff);color:var(--kca-input-text,#172033)}
.kca-input input::placeholder{color:color-mix(in srgb,var(--kca-input-text,#172033) 52%,#fff)}
.kca-input input:hover{border-color:color-mix(in srgb,var(--kca-accent,#5b4bff) 26%,var(--kca-border-strong))}
.kca-input input:focus{border-color:color-mix(in srgb,var(--kca-accent,#5b4bff) 48%,var(--kca-border-strong));outline:0;box-shadow:0 0 0 2px color-mix(in srgb,var(--kca-accent,#5b4bff) 14%,transparent)}
.kca-input button,.kca-suggestion .is-primary,.kca-lead-form__actions button[type=submit]{border-color:var(--kca-accent,#5b4bff);background:var(--kca-accent,#5b4bff);color:var(--kca-launcher-text,#fff);box-shadow:none}
.kca-input button:hover,.kca-input button:focus-visible,.kca-suggestion .is-primary:hover,.kca-suggestion .is-primary:focus-visible,.kca-lead-form__actions button[type=submit]:hover,.kca-lead-form__actions button[type=submit]:focus-visible{background:var(--kca-accent,#5b4bff);filter:saturate(.96) brightness(.97);transform:translateY(-1px)}
.kca-limit{border-color:var(--kca-border,#e4eaf3);background:var(--kca-assistant-bg,#f6f8fc);box-shadow:none}
.kca-limit strong,.kca-lead-form h3{color:var(--kca-header-text,#172033)}
.kca-limit p,.kca-lead-form label{color:var(--kca-assistant-text,#172033)}
.kca-lead-form input,.kca-lead-form textarea{border-color:var(--kca-border-strong);background:var(--kca-input-bg,#fff);color:var(--kca-input-text,#172033)}
.kca-widget :is(button,a,input,textarea):focus-visible{outline:2px solid rgba(91,75,255,.26)!important;outline:2px solid var(--kca-ring)!important;outline-offset:2px!important;box-shadow:none!important}

/* Launcher alignment: override theme button line-height/padding so icons stay optically centered. */
.kca-widget .kca-launcher{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:50px;min-height:50px;padding:0 18px 0 16px;line-height:1;vertical-align:middle}
.kca-widget .kca-launcher>span:last-child{display:inline-flex;align-items:center;line-height:1;white-space:nowrap}
.kca-widget .kca-launcher__icon{box-sizing:border-box;display:inline-grid;place-items:center;flex:0 0 28px;width:28px;height:28px;margin:0;padding:0;border-radius:999px;font-family:Arial,"Helvetica Neue",sans-serif;font-size:14px;font-weight:700;line-height:1;text-align:center}
.kca-widget .kca-backtop{box-sizing:border-box;display:inline-grid;place-items:center;width:50px;height:50px;min-width:50px;min-height:50px;margin:0;padding:0;font-family:Arial,"Helvetica Neue",sans-serif;font-size:18px;font-weight:700;line-height:1;text-align:center;vertical-align:middle}
@media(max-width:520px){.kca-widget .kca-launcher{height:48px;min-height:48px;padding:0 14px 0 13px}.kca-widget .kca-launcher__icon{flex-basis:26px;width:26px;height:26px;font-size:13px}.kca-widget .kca-backtop{width:48px;height:48px;min-width:48px;min-height:48px}}

/* Premium balanced redesign: calmer shell, stronger brand accents, less clutter. */
.kca-panel{width:min(392px,calc(100vw - 32px));border-radius:28px;background:linear-gradient(180deg,var(--kca-surface,#fff),color-mix(in srgb,var(--kca-surface,#fff) 92%,#f6f8fc));box-shadow:0 22px 56px rgba(15,23,42,.16),0 3px 12px rgba(15,23,42,.06)}
.kca-panel__header{grid-template-columns:minmax(0,1fr) auto auto;padding:16px 16px 15px;border-bottom-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 78%,transparent);background:radial-gradient(circle at top left,color-mix(in srgb,var(--kca-accent,#5b4bff) 13%,transparent),transparent 44%),var(--kca-header-bg,#fff)}
.kca-panel__identity{gap:11px}
.kca-panel__identity .kca-avatar{width:38px;height:38px;border:2px solid rgba(255,255,255,.72);box-shadow:0 10px 24px rgba(15,23,42,.12)}
.kca-panel__identity>div{display:grid;gap:3px}
.kca-panel__header strong{color:var(--kca-header-text,#172033);font-size:15px;font-weight:700;letter-spacing:-.02em}
.kca-panel__header span:not(.kca-avatar){max-width:185px;margin:0;color:color-mix(in srgb,var(--kca-header-text,#172033) 68%,#fff);font-size:11px;line-height:1.25}
.kca-session-controls{padding:2px;border-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 82%,transparent);background:rgba(255,255,255,.64);backdrop-filter:blur(10px)}
.kca-session-controls button{min-height:30px;padding:6px 9px;border-radius:999px;font-size:10.5px;color:color-mix(in srgb,var(--kca-header-text,#172033) 72%,#fff)}
.kca-session-controls button[data-kca-new-session]{background:#fff;color:var(--kca-header-text,#172033);box-shadow:0 2px 8px rgba(15,23,42,.06)}
.kca-panel__header>[data-kca-close]{width:36px;height:36px;border-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 82%,transparent);background:rgba(255,255,255,.7);font-size:21px}
.kca-messages{gap:12px;padding:18px 16px 12px;background:linear-gradient(180deg,color-mix(in srgb,var(--kca-surface,#fff) 96%,#f8fafc),var(--kca-surface,#fff))}
.kca-message{gap:9px}
.kca-message--assistant+.kca-message--assistant .kca-avatar{visibility:hidden}
.kca-message--assistant p{border-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 85%,transparent);background:var(--kca-assistant-bg,#f6f8fc);color:var(--kca-assistant-text,#172033);box-shadow:0 1px 0 rgba(15,23,42,.03)}
.kca-message--user p{background:linear-gradient(135deg,var(--kca-user-bg,var(--kca-accent,#5b4bff)),color-mix(in srgb,var(--kca-user-bg,var(--kca-accent,#5b4bff)) 86%,#7c6cff));color:var(--kca-user-text,#fff);box-shadow:0 10px 22px color-mix(in srgb,var(--kca-user-bg,var(--kca-accent,#5b4bff)) 22%,transparent)}
.kca-message p{padding:11px 14px;border-radius:18px;font-size:14px;line-height:1.5}
.kca-message--assistant p{border-bottom-left-radius:7px}
.kca-message--user p{border-bottom-right-radius:7px}
.kca-message__meta{padding-right:5px;color:color-mix(in srgb,var(--kca-user-bg,var(--kca-accent,#5b4bff)) 54%,#64748b)}
.kca-suggestion{margin-left:39px}
.kca-suggestion button,.kca-chip{border-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 88%,#cbd5e1);background:rgba(255,255,255,.9);color:var(--kca-assistant-text,#172033)}
.kca-suggestion .is-primary{box-shadow:0 8px 18px color-mix(in srgb,var(--kca-accent,#5b4bff) 18%,transparent)}
.kca-processing-notice{padding:7px 18px 4px;background:var(--kca-surface,#fff);font-size:10.5px;color:var(--kca-muted)}
.kca-privacy-actions{padding:0 18px 9px;background:var(--kca-surface,#fff)}
.kca-privacy-actions button{font-size:10.5px;color:var(--kca-muted);opacity:.9}
.kca-input{align-items:center;gap:9px;padding:13px 16px 15px;border-top-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 78%,transparent);background:var(--kca-surface,#fff)}
.kca-input input{min-height:43px;border-radius:16px;border-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 86%,#cbd5e1);background:var(--kca-input-bg,#fff);box-shadow:inset 0 1px 0 rgba(15,23,42,.03)}
.kca-input button{min-height:43px;padding:0 17px;border-radius:999px;background:linear-gradient(135deg,var(--kca-accent,#5b4bff),color-mix(in srgb,var(--kca-accent,#5b4bff) 86%,#7c6cff));box-shadow:0 8px 18px color-mix(in srgb,var(--kca-accent,#5b4bff) 20%,transparent)}
.kca-launcher{gap:9px;height:52px;min-height:52px;padding:0 20px 0 15px;border-radius:999px;background:linear-gradient(135deg,var(--kca-accent,#5b4bff),color-mix(in srgb,var(--kca-accent,#5b4bff) 86%,#7c6cff));box-shadow:0 16px 34px color-mix(in srgb,var(--kca-accent,#5b4bff) 26%,transparent),0 10px 32px rgba(15,23,42,.14)}
.kca-launcher__icon{width:30px;height:30px;flex-basis:30px;background:rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.kca-backtop{background:linear-gradient(135deg,var(--kca-accent,#5b4bff),color-mix(in srgb,var(--kca-accent,#5b4bff) 86%,#7c6cff));box-shadow:0 12px 28px color-mix(in srgb,var(--kca-accent,#5b4bff) 20%,transparent)}
.kca-lead-form{background:var(--kca-surface,#fff);border-top-color:color-mix(in srgb,var(--kca-border,#e4eaf3) 78%,transparent)}
@media(max-width:520px){.kca-panel,.kca-widget--right .kca-panel{border-radius:24px}.kca-panel__header{padding:14px 12px}.kca-panel__header span:not(.kca-avatar){max-width:130px}.kca-session-controls button{padding:6px 7px}.kca-input{padding:12px}.kca-input input,.kca-input button{min-height:42px}}

/* Robis-style compact messenger design. */
.kca-widget{--kca-accent:#ff5a00;--kca-ring:color-mix(in srgb,var(--kca-accent,#ff5a00) 26%,transparent);font-family:"KCA Poppins",Poppins,Arial,"Helvetica Neue",sans-serif}
.kca-panel{width:min(400px,calc(100vw - 30px));max-height:min(704px,calc(100vh - 94px));border:0;border-radius:22px;background:var(--kca-panel-bg,#fff);box-shadow:0 22px 55px rgba(15,23,42,.18);overflow:hidden}
.kca-panel__header{display:grid;grid-template-columns:32px minmax(0,1fr) 34px 34px;gap:7px;align-items:center;min-height:58px;padding:9px 14px;border-bottom:1px solid var(--kca-border,#e5e7eb);background:var(--kca-header-bg,#fff)}
.kca-header-back,.kca-header-close{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:999px;background:transparent;color:#6b7280;font:inherit;font-family:Arial,"Helvetica Neue",sans-serif;line-height:1;cursor:pointer;box-shadow:none}
.kca-header-back{font-size:26px;font-weight:300}
.kca-header-close{font-size:25px;font-weight:300}
.kca-header-back:hover,.kca-header-back:focus-visible,.kca-header-close:hover,.kca-header-close:focus-visible{background:#f3f4f6;color:#111827;transform:none}
.kca-panel__identity{display:flex;align-items:center;gap:9px;min-width:0}
.kca-panel__identity .kca-avatar{width:34px;height:34px;border:1px solid #f0cf8a;background:#fff4cf;color:#8a5a00;box-shadow:none}
.kca-panel__identity>div{display:grid;gap:1px;min-width:0}
.kca-panel__header strong{overflow:hidden;color:var(--kca-header-text,#111827);font-size:14px;font-weight:600;line-height:1.15;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}
.kca-panel__header span:not(.kca-avatar){overflow:hidden;max-width:none;margin:0;color:#5f6b7a;font-size:12px;font-weight:400;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.kca-session-controls{display:grid;place-items:center;width:34px;height:34px;min-width:34px;max-width:34px;padding:0;border:0;background:transparent;overflow:hidden;box-shadow:none;backdrop-filter:none}
.kca-session-controls button{display:none}
.kca-session-controls button[data-kca-new-session]{display:grid;place-items:center;width:34px;height:34px;min-height:34px;padding:0;border:0;border-radius:999px;background:transparent;color:#6b7280;font-size:0;box-shadow:none}
.kca-session-controls button[data-kca-new-session]:before{content:"•••";font-size:14px;letter-spacing:1px;line-height:1}
.kca-session-controls button[data-kca-new-session]:hover,.kca-session-controls button[data-kca-new-session]:focus-visible{background:#f3f4f6;color:#111827}
.kca-messages{gap:14px;padding:16px 18px 8px;background:var(--kca-panel-bg,#fff);scrollbar-color:#d1d5db transparent}
.kca-messages::-webkit-scrollbar{width:6px}.kca-messages::-webkit-scrollbar-track{background:transparent}.kca-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:999px}
.kca-message{display:flex;gap:0;align-items:flex-end}
.kca-message--assistant .kca-avatar{display:none}
.kca-message__body{max-width:82%}
.kca-message--assistant .kca-message__body{max-width:86%}
.kca-message p{padding:12px 16px;border:0;border-radius:17px;background:var(--kca-assistant-bg,#f3f3f3);color:var(--kca-assistant-text,#111827);font-size:13.5px;font-weight:400;line-height:1.45;box-shadow:none}
.kca-message--assistant p{border-bottom-left-radius:5px}
.kca-message--user p{background:var(--kca-user-bg,var(--kca-accent,#ff5a00));color:var(--kca-user-text,#fff);border-bottom-right-radius:5px;font-weight:600;box-shadow:none}
.kca-message__meta{padding:3px 4px 0 0;color:#6b7280;font-size:11px}
.kca-message__link{border:0;background:#f3f3f3;color:#111827}
.kca-message__link:hover,.kca-message__link:focus-visible{background:#ededed;color:#111827}
.kca-quick{gap:8px;padding:3px 18px 12px;background:var(--kca-panel-bg,#fff)}
.kca-chip{padding:9px 13px;border:0;border-radius:999px;background:#f3f3f3;color:#111827;font-size:12.5px;font-weight:500}
.kca-chip:hover,.kca-chip:focus-visible{background:#ededed;color:#111827}
.kca-suggestion{justify-content:flex-end;margin:2px 0 2px;padding:0 10px 0 0}
.kca-suggestion button{min-height:44px;padding:11px 17px;border:0;border-radius:999px;background:#f3f3f3;color:#111827;font-size:13px;font-weight:600;box-shadow:none}
.kca-suggestion .is-primary,.kca-input button,.kca-lead-form__actions button[type=submit]{background:var(--kca-accent,#ff5a00);color:var(--kca-launcher-text,#fff);box-shadow:none}
.kca-suggestion .is-primary:hover,.kca-suggestion .is-primary:focus-visible,.kca-input button:hover,.kca-input button:focus-visible,.kca-lead-form__actions button[type=submit]:hover,.kca-lead-form__actions button[type=submit]:focus-visible{background:var(--kca-accent-hover,#e65100);filter:none;transform:none}
.kca-processing-notice{padding:5px 18px 0;background:var(--kca-panel-bg,#fff);color:#6b7280;font-size:10.5px}
.kca-privacy-actions{justify-content:flex-end;padding:0 18px 8px;background:var(--kca-panel-bg,#fff)}
.kca-privacy-actions button{color:#6b7280;font-size:10.5px}
.kca-input{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:8px;margin:0 18px 16px;padding:10px;border:1px solid var(--kca-border,#e5e7eb);border-radius:16px;background:var(--kca-input-bg,#fff)}
.kca-input input{min-height:38px;padding:8px 8px;border:0;border-radius:10px;background:transparent;color:var(--kca-input-text,#111827);font-size:13.5px;box-shadow:none}
.kca-input input:hover,.kca-input input:focus{border:0;box-shadow:none}
.kca-input input::placeholder{color:#6b7280}
.kca-input button{display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:0;border:0;border-radius:999px;font-size:0}
.kca-input button:before{content:"↑";font-family:Arial,"Helvetica Neue",sans-serif;font-size:18px;font-weight:700;line-height:1}
.kca-input button:disabled{background:#eceff3;color:#c7ccd4;opacity:1}
.kca-launcher{width:50px;height:50px;min-width:50px;min-height:50px;padding:0;border-radius:999px;background:var(--kca-accent,#ff5a00);box-shadow:0 15px 32px rgba(255,90,0,.24),0 10px 26px rgba(15,23,42,.14)}
.kca-launcher span:last-child{display:none}
.kca-launcher__icon{width:50px;height:50px;flex-basis:50px;background:transparent;color:var(--kca-launcher-text,#fff);font-size:0;box-shadow:none}
.kca-launcher__icon:before{content:"⌄";font-size:28px;font-family:Arial,"Helvetica Neue",sans-serif;font-weight:700;line-height:1;transform:translateY(-2px)}
.kca-widget:not(.is-open) .kca-launcher__icon:before{content:"?";font-size:17px;transform:none}
.kca-backtop{width:50px;height:50px;min-width:50px;min-height:50px;background:var(--kca-accent,#ff5a00);box-shadow:0 12px 26px rgba(255,90,0,.22)}
.kca-lead-form{margin:0 18px 12px;padding:14px;border:1px solid var(--kca-border,#e5e7eb);border-radius:16px;background:#fff}
.kca-lead-form input,.kca-lead-form textarea{border-color:var(--kca-border,#e5e7eb);border-radius:8px}
.kca-widget :is(button,a,input,textarea):focus-visible{outline:2px solid var(--kca-ring)!important;outline-offset:2px!important;box-shadow:none!important}
@media(max-width:520px){.kca-panel,.kca-widget--right .kca-panel{left:0;right:0;bottom:64px;width:auto;max-height:calc(100vh - 96px);border-radius:22px}.kca-panel__header{grid-template-columns:30px minmax(0,1fr) 32px 32px;padding:8px 12px}.kca-messages{padding:14px 16px 8px}.kca-input{margin:0 16px 14px}.kca-launcher{width:50px;min-width:50px;height:50px;min-height:50px}}

/* Final launcher safety overrides: keep the reference-style floating button circular. */
.kca-widget .kca-launcher{width:50px!important;max-width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;padding:0!important;border-radius:999px!important;gap:0!important;overflow:hidden!important}
.kca-widget .kca-launcher>span:last-child{display:none!important}
.kca-widget .kca-launcher .kca-launcher__icon{display:grid!important;place-items:center!important;flex:0 0 50px!important;width:50px!important;height:50px!important;margin:0!important;padding:0!important;background:transparent!important;color:var(--kca-launcher-text,#fff)!important;font-size:0!important;line-height:1!important;box-shadow:none!important}
.kca-widget .kca-launcher .kca-launcher__icon:before{content:"\2304";display:block;font-family:Arial,"Helvetica Neue",sans-serif;font-size:28px;font-weight:700;line-height:1;transform:translateY(-2px)}
.kca-widget:not(.is-open) .kca-launcher .kca-launcher__icon:before{content:"?";font-size:17px;transform:none}
.kca-session-controls button[data-kca-new-session]:before{content:"\2022\2022\2022"}
.kca-input button:before{content:"\2191"}

/* Minible-style SVG button reset: no text glyphs, no theme button circles. */
.kca-widget .kca-icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.kca-widget .kca-icon circle{fill:currentColor;stroke:none}
.kca-widget .kca-header-back[data-kca-close],.kca-widget .kca-header-close[data-kca-close],.kca-widget .kca-session-controls button[data-kca-new-session]{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;margin:0!important;padding:0!important;border:0!important;border-radius:999px!important;background:transparent!important;color:#6b7280!important;box-shadow:none!important;font-size:0!important;line-height:1!important}
.kca-widget .kca-header-back[data-kca-close]:hover,.kca-widget .kca-header-back[data-kca-close]:focus-visible,.kca-widget .kca-header-close[data-kca-close]:hover,.kca-widget .kca-header-close[data-kca-close]:focus-visible,.kca-widget .kca-session-controls button[data-kca-new-session]:hover,.kca-widget .kca-session-controls button[data-kca-new-session]:focus-visible{background:#f3f4f6!important;color:#111827!important;transform:none!important}
.kca-widget .kca-session-controls button[data-kca-new-session]:before,.kca-widget .kca-input button:before,.kca-widget .kca-launcher .kca-launcher__icon:before{content:none!important}
.kca-widget .kca-session-controls button[data-kca-new-session] .kca-icon{width:19px;height:19px;fill:currentColor;stroke:none}
.kca-widget .kca-header-back .kca-icon,.kca-widget .kca-header-close .kca-icon{width:20px;height:20px}
.kca-widget .kca-input button{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:0!important;border:0!important;border-radius:999px!important;background:var(--kca-accent,#ff5a00)!important;color:var(--kca-launcher-text,#fff)!important;font-size:0!important;line-height:1!important;box-shadow:none!important}
.kca-widget .kca-input button .kca-icon{width:19px;height:19px}
.kca-widget .kca-launcher .kca-launcher__icon .kca-icon{width:22px;height:22px;fill:currentColor;stroke:none}
.kca-widget .kca-launcher .kca-launcher__icon .kca-icon--chat-bubble{width:23px;height:23px;fill:none!important;stroke:currentColor!important;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.kca-widget .kca-launcher .kca-launcher__icon .kca-icon--chat-bubble circle{fill:currentColor!important;stroke:none!important}

/* Flat controls: chat buttons should not cast shadows or jump on hover. */
.kca-widget :is(.kca-launcher,.kca-backtop,.kca-nudge,.kca-input button,.kca-suggestion button,.kca-chip,.kca-message__link,.kca-lead-form__actions button,.kca-privacy-actions button,.kca-header-back,.kca-header-close,.kca-session-controls button),
.kca-widget :is(.kca-launcher,.kca-backtop,.kca-input button) .kca-launcher__icon{
    box-shadow:none!important;
    filter:none!important;
}
.kca-widget :is(.kca-launcher,.kca-backtop,.kca-nudge,.kca-input button,.kca-suggestion button,.kca-chip,.kca-message__link,.kca-lead-form__actions button,.kca-privacy-actions button,.kca-header-back,.kca-header-close,.kca-session-controls button):hover,
.kca-widget :is(.kca-launcher,.kca-backtop,.kca-nudge,.kca-input button,.kca-suggestion button,.kca-chip,.kca-message__link,.kca-lead-form__actions button,.kca-privacy-actions button,.kca-header-back,.kca-header-close,.kca-session-controls button):focus-visible{
    box-shadow:none!important;
    filter:none!important;
    transform:none!important;
}

/* Reactive floating controls: only the launcher and go-to-top button lift a little. */
.kca-widget .kca-launcher,
.kca-widget .kca-backtop{
    transition:transform .16s ease,background-color .16s ease,color .16s ease!important;
    will-change:transform;
}
.kca-widget .kca-launcher:hover,
.kca-widget .kca-launcher:focus-visible,
.kca-widget .kca-backtop:hover,
.kca-widget .kca-backtop:focus-visible{
    transform:translateY(-3px)!important;
}
.kca-widget .kca-launcher:active,
.kca-widget .kca-backtop:active{
    transform:translateY(-1px)!important;
}
@media (prefers-reduced-motion:reduce){
    .kca-widget .kca-launcher,
    .kca-widget .kca-backtop{
        transition:none!important;
        will-change:auto;
    }
    .kca-widget .kca-launcher:hover,
    .kca-widget .kca-launcher:focus-visible,
    .kca-widget .kca-launcher:active,
    .kca-widget .kca-backtop:hover,
    .kca-widget .kca-backtop:focus-visible,
    .kca-widget .kca-backtop:active{
        transform:none!important;
    }
}

/* CTA buttons should read as actions, not chat bubbles. */
.kca-widget .kca-suggestion{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    margin:8px 0 8px 46px!important;
    padding:0!important;
}
.kca-widget .kca-suggestion button{
    appearance:none!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    min-height:42px!important;
    padding:10px 14px!important;
    border:1.5px solid var(--kca-accent,#5b4bff)!important;
    border-radius:13px!important;
    background:var(--kca-panel-bg,#fff)!important;
    background:color-mix(in srgb,var(--kca-accent,#5b4bff) 8%,var(--kca-panel-bg,#fff))!important;
    color:var(--kca-accent,#5b4bff)!important;
    font-size:13px!important;
    font-weight:750!important;
    line-height:1.2!important;
    text-decoration:none!important;
    cursor:pointer!important;
}
.kca-widget .kca-suggestion button:after{
    content:"→";
    display:inline-block;
    font-size:14px;
    font-weight:800;
    line-height:1;
    transform:translateY(-.5px);
}
.kca-widget .kca-suggestion button:hover,
.kca-widget .kca-suggestion button:focus-visible{
    border-color:var(--kca-accent,#5b4bff)!important;
    background:var(--kca-accent,#5b4bff)!important;
    color:var(--kca-launcher-text,#fff)!important;
}
@media(max-width:520px){
    .kca-widget .kca-suggestion{
        margin-left:44px!important;
        margin-right:10px!important;
    }
    .kca-widget .kca-suggestion button{
        min-height:40px!important;
        padding:9px 13px!important;
    }
}

/* Header options menu opened from the three dots. */
.kca-widget .kca-session-controls{
    position:relative!important;
    display:grid!important;
    place-items:center!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:visible!important;
    background:transparent!important;
}
.kca-widget .kca-session-controls .kca-options-toggle{
    display:grid!important;
    place-items:center!important;
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    background:transparent!important;
    color:#6b7280!important;
    font-size:0!important;
    line-height:1!important;
    cursor:pointer!important;
}
.kca-widget .kca-session-controls .kca-options-toggle:hover,
.kca-widget .kca-session-controls .kca-options-toggle:focus-visible,
.kca-widget.is-options-open .kca-session-controls .kca-options-toggle{
    background:#f3f4f6!important;
    color:#111827!important;
}
.kca-widget .kca-options-menu[hidden]{
    display:none!important;
}
.kca-widget .kca-options-menu{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    right:0!important;
    z-index:3!important;
    display:grid!important;
    gap:3px!important;
    width:178px!important;
    padding:6px!important;
    border:1px solid var(--kca-border,#e5e7eb)!important;
    border-radius:14px!important;
    background:var(--kca-panel-bg,#fff)!important;
    box-shadow:none!important;
}
.kca-widget .kca-options-menu:before{
    content:"";
    position:absolute;
    top:-5px;
    right:13px;
    width:10px;
    height:10px;
    border-left:1px solid var(--kca-border,#e5e7eb);
    border-top:1px solid var(--kca-border,#e5e7eb);
    background:var(--kca-panel-bg,#fff);
    transform:rotate(45deg);
}
.kca-widget .kca-options-menu button,
.kca-widget .kca-options-menu button[data-kca-new-session]{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    min-width:0!important;
    min-height:36px!important;
    padding:8px 10px!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:var(--kca-header-text,#111827)!important;
    font-size:12.5px!important;
    font-weight:650!important;
    line-height:1.2!important;
    text-align:left!important;
    cursor:pointer!important;
}
.kca-widget .kca-options-menu button:before,
.kca-widget .kca-options-menu button:after{
    content:none!important;
}
.kca-widget .kca-options-menu button:hover,
.kca-widget .kca-options-menu button:focus-visible{
    background:#f3f4f6!important;
    color:var(--kca-header-text,#111827)!important;
}
.kca-widget .kca-options-menu button:disabled{
    opacity:.45!important;
    cursor:not-allowed!important;
}

/* Final hover lift for floating chat controls. */
.kca-widget .kca-launcher,
.kca-widget .kca-backtop{
    transition:transform .16s ease,background-color .16s ease,color .16s ease!important;
}
.kca-widget .kca-launcher:hover,
.kca-widget .kca-launcher:focus-visible,
.kca-widget .kca-backtop:hover,
.kca-widget .kca-backtop:focus-visible{
    transform:translateY(-4px)!important;
}
.kca-widget .kca-launcher:active,
.kca-widget .kca-backtop:active{
    transform:translateY(-2px)!important;
}
.kca-widget .kca-backtop .kca-icon{width:19px;height:19px}

/* Strong final hover fallback for themes that override transform. */
.kca-widget .kca-launcher-wrap .kca-launcher,
.kca-widget .kca-backtop{
    position:relative!important;
    top:0!important;
    translate:0 0!important;
    transition:top .16s ease,translate .16s ease,transform .16s ease,background-color .16s ease,color .16s ease!important;
}
.kca-widget .kca-launcher-wrap:hover .kca-launcher,
.kca-widget .kca-launcher:hover,
.kca-widget .kca-launcher:focus-visible,
.kca-widget .kca-backtop:hover,
.kca-widget .kca-backtop:focus-visible{
    top:-2px!important;
    translate:0 -3px!important;
    transform:translate3d(0,-3px,0)!important;
}
.kca-widget .kca-launcher-wrap:active .kca-launcher,
.kca-widget .kca-launcher:active,
.kca-widget .kca-backtop:active{
    top:-1px!important;
    translate:0 -1px!important;
    transform:translate3d(0,-1px,0)!important;
}

/* Reliable send arrow: use CSS shape so the icon never disappears. */
.kca-widget .kca-input button[type=submit]{
    position:relative!important;
    overflow:hidden!important;
    color:var(--kca-launcher-text,#fff)!important;
}
.kca-widget .kca-input button[type=submit] .kca-icon{
    display:none!important;
}
.kca-widget .kca-input button[type=submit]:before,
.kca-widget .kca-input button[type=submit]:after{
    content:""!important;
    position:absolute!important;
    display:block!important;
    pointer-events:none!important;
}
.kca-widget .kca-input button[type=submit]:before{
    left:50%!important;
    top:50%!important;
    width:11px!important;
    height:11px!important;
    margin-left:-6px!important;
    margin-top:-8px!important;
    border-top:2.4px solid currentColor!important;
    border-left:2.4px solid currentColor!important;
    border-radius:1px!important;
    background:transparent!important;
    transform:rotate(45deg)!important;
}
.kca-widget .kca-input button[type=submit]:after{
    left:50%!important;
    top:50%!important;
    width:2.4px!important;
    height:17px!important;
    margin-left:-1.2px!important;
    margin-top:-7px!important;
    border:0!important;
    border-radius:999px!important;
    background:currentColor!important;
    transform:none!important;
}

/* Normal paper-plane send icon. Overrides the temporary CSS-arrow fallback above. */
.kca-widget .kca-input button[type=submit]:before,
.kca-widget .kca-input button[type=submit]:after{
    content:none!important;
    display:none!important;
}
.kca-widget .kca-input button[type=submit] .kca-icon--send{
    display:block!important;
    width:20px!important;
    height:20px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    color:var(--kca-launcher-text,#fff)!important;
}

/* Header color should be fully controlled by Appearance > Header text. */
.kca-widget .kca-panel__header{
    color:var(--kca-header-text,#111827)!important;
}
.kca-widget .kca-panel__header strong,
.kca-widget .kca-panel__identity>div>span,
.kca-widget .kca-header-back[data-kca-close],
.kca-widget .kca-header-close[data-kca-close],
.kca-widget .kca-session-controls .kca-options-toggle{
    color:var(--kca-header-text,#111827)!important;
}
.kca-widget .kca-header-back[data-kca-close] .kca-icon,
.kca-widget .kca-header-close[data-kca-close] .kca-icon,
.kca-widget .kca-session-controls .kca-options-toggle .kca-icon{
    color:inherit!important;
    stroke:currentColor!important;
    fill:none!important;
}
.kca-widget .kca-session-controls .kca-options-toggle .kca-icon circle{
    fill:currentColor!important;
    stroke:none!important;
}
.kca-widget .kca-header-back[data-kca-close]:hover,
.kca-widget .kca-header-back[data-kca-close]:focus-visible,
.kca-widget .kca-header-close[data-kca-close]:hover,
.kca-widget .kca-header-close[data-kca-close]:focus-visible,
.kca-widget .kca-session-controls .kca-options-toggle:hover,
.kca-widget .kca-session-controls .kca-options-toggle:focus-visible,
.kca-widget.is-options-open .kca-session-controls .kca-options-toggle{
    color:var(--kca-header-text,#111827)!important;
    background:rgba(255,255,255,.16)!important;
}

/* Keep the attention nudge inside the viewport when only the chat launcher is visible. */
.kca-widget .kca-launcher-wrap{
    overflow:visible!important;
}
.kca-widget .kca-nudge{
    max-width:min(240px,calc(100vw - 32px))!important;
    overflow:visible!important;
    text-overflow:clip!important;
}
.kca-widget--right .kca-nudge{
    left:auto!important;
    right:0!important;
    transform:none!important;
    animation:kca-nudge-in-right .34s ease both!important;
}
.kca-widget--right .kca-nudge:after{
    left:auto!important;
    right:19px!important;
}
.kca-widget:not(.kca-widget--right) .kca-nudge{
    left:0!important;
    right:auto!important;
    transform:none!important;
    animation:kca-nudge-in-left .34s ease both!important;
}
.kca-widget:not(.kca-widget--right) .kca-nudge:after{
    left:19px!important;
    right:auto!important;
}
@keyframes kca-nudge-in-right{
    0%{opacity:0;transform:translateY(8px) scale(.96)}
    100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes kca-nudge-in-left{
    0%{opacity:0;transform:translateY(8px) scale(.96)}
    100%{opacity:1;transform:translateY(0) scale(1)}
}
@media(max-width:520px){
    .kca-widget--right .kca-nudge{
        right:0!important;
    }
    .kca-widget:not(.kca-widget--right) .kca-nudge{
        left:0!important;
    }
}
