/* KNGX Care — visible FAB on Safari/WebKit. Do not rely on mask-composite. */
.kchat{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:240;pointer-events:none}
.kchat > *{pointer-events:auto}
.kchat-fab{
  position:relative;width:3.5rem;height:3.5rem;border-radius:50%;border:0;cursor:pointer;
  background:#22C55E;color:#052e16;display:grid;place-items:center;isolation:isolate;overflow:visible;
  box-shadow:0 .5rem 1.25rem rgba(22,163,74,.35);z-index:242
}
.kchat-fab:hover{transform:scale(1.05)}
.kchat-fab .kchat-crown{width:1.45rem;height:1.45rem;display:block;position:relative;z-index:2;pointer-events:none;filter:brightness(0) invert(1)}
.kchat-fab .kchat-ico-x{display:none;position:relative;z-index:2;width:1.35rem;height:1.35rem;stroke:#052e16}
.kchat.open .kchat-fab .kchat-crown{display:none}
.kchat.open .kchat-fab .kchat-ico-x{display:block}
.kchat-fab-ring,.kchat-fab-core{display:none!important}
.kchat-scrim{display:none;position:fixed;inset:0;background:rgba(16,20,24,.4);z-index:230}
.kchat.open .kchat-scrim{display:block}
.kchat-scrim[hidden]{display:none!important}
.kchat-panel{
  position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:5.6rem;width:min(24.5rem,calc(100vw - 1.5rem));
  height:min(38rem,calc(100dvh - 7rem));z-index:241;background:#fff;border-radius:1.35rem;
  border:1px solid #E5E7EB;box-shadow:0 1.5rem 3.5rem rgba(15,23,42,.22);display:flex;flex-direction:column;overflow:hidden
}
.kchat-panel[hidden]{display:none!important}
.kchat-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.95rem 1rem .35rem;background:#fff}
.kchat-head-title{font-size:1.12rem;font-weight:800;letter-spacing:-.02em;color:#111827}
.kchat-close{background:transparent;border:0;color:#6B7280;font-size:1.6rem;line-height:1;cursor:pointer;width:2.4rem;height:2.4rem;border-radius:.6rem}
.kchat-disc{margin:0;padding:0 1.15rem .65rem;font-size:.7rem;line-height:1.4;color:#9CA3AF;text-align:center}
.kchat-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.5rem 1rem 1rem;display:flex;flex-direction:column;gap:.65rem;background:#fff}
.kchat-orb{position:relative;width:min(13rem,68%);aspect-ratio:1;margin:.85rem auto 1.1rem;pointer-events:none}
.kchat-orb-mark{position:absolute;inset:0;display:grid;place-items:center}
.kchat-crown-lg{width:4.25rem;height:4.25rem;object-fit:contain;display:block;filter:drop-shadow(0 .4rem 1rem rgba(34,197,94,.4))}
.kchat-welcome{display:flex;flex-direction:column;gap:.85rem}
.kchat-hi{margin:0;text-align:center;font-size:1.05rem;font-weight:700;color:#1F2937}
.kchat-quick{display:flex;flex-direction:column;gap:.55rem}
.kchat-quick button{width:100%;border:1px solid #E5E7EB;background:#F3F4F6;border-radius:1rem;padding:1rem 1.1rem;font:600 .92rem/1.3 Manrope,system-ui,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:space-between}
.kchat-quick button:hover{background:#ECFDF5;border-color:#BBF7D0}
.kchat-quick button span{color:#94A3B8;font-size:1.15rem}
.kchat-foot{display:flex;gap:.5rem;padding:.85rem .9rem .95rem;border-top:1px solid #F3F4F6;background:#fff}
.kchat-foot input{flex:1;min-width:0;height:2.85rem;padding:0 1.1rem;border:0;border-radius:999px;font:inherit;font-size:.92rem;background:#F3F4F6}
.kchat-foot input:focus{outline:none;background:#fff;box-shadow:inset 0 0 0 1.5px #86EFAC}
.kchat-send{width:2.85rem;height:2.85rem;border:0;border-radius:999px;background:#22C55E;color:#052e16;cursor:pointer;display:grid;place-items:center}
.kchat-send svg{width:1.1rem;height:1.1rem}
.kchat-st{display:none!important}
.kchat-bubble{max-width:88%;padding:.7rem .85rem;border-radius:1rem;font-size:.9rem;line-height:1.45}
.kchat-bubble.bot{background:#F8FAF9;border:1px solid #E5E7EB;color:#1F2937;border-bottom-left-radius:.3rem;align-self:flex-start}
.kchat-bubble.me{background:#22C55E;color:#052e16;align-self:flex-end;border-bottom-right-radius:.3rem;font-weight:600}
.kchat-body.chatting .kchat-orb,.kchat-body.chatting .kchat-hi,.kchat-body.chatting .kchat-quick{display:none}
.kchat-imgs{display:grid;gap:.45rem;margin-top:.55rem}
.kchat-imgs img{max-width:100%;border-radius:.75rem}
@media(max-width:40rem){
  .kchat-fab{width:3.15rem;height:3.15rem}
  .kchat.open .kchat-fab{display:none}
  .kchat-panel{right:0;left:0;bottom:0;width:100%;height:min(92dvh,45rem);border-radius:1.1rem 1.1rem 0 0}
}
@media(prefers-reduced-motion:reduce){.kchat-fab{transition:none}}
