/* Kundenchat – nutzt die Farben der Website (site.css) */
#kc[hidden]{display:none}
.kc-fab{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:29;width:58px;height:58px;border-radius:50%;border:0;background:var(--blue);color:#fff;box-shadow:0 8px 28px rgba(0,0,0,.22);cursor:pointer;display:grid;place-items:center}
.kc-fab svg{width:27px;height:27px}
.kc-fab:focus-visible,.kc-panel :focus-visible{outline:2px solid var(--blue);outline-offset:2px}
html.cb-open .kc-fab,html.cb-open .kc-panel{display:none}
.kc-panel{position:fixed;right:20px;bottom:calc(90px + env(safe-area-inset-bottom,0px));z-index:29;width:372px;height:min(600px,calc(100vh - 130px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)));background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 40px rgba(0,0,0,.2);display:flex;flex-direction:column;overflow:hidden;font-size:15px;line-height:1.42}
.kc-panel[hidden]{display:none}
.kc-head{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line)}
.kc-head b{display:block;font-size:16px}
.kc-head small{color:var(--mute);font-size:13px}
.kc-x{border:0;background:none;color:var(--mute);font-size:24px;line-height:1;padding:4px 8px;cursor:pointer;font-family:inherit}
.kc-msgs{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain}
.kc-m{max-width:86%;padding:9px 13px;border-radius:16px;overflow-wrap:anywhere}
.kc-m.bot{background:var(--alt);align-self:flex-start;border-bottom-left-radius:5px}
.kc-m.me{background:var(--blue);color:#fff;align-self:flex-end;border-bottom-right-radius:5px}
.kc-m a{color:var(--blue);font-weight:600}
.kc-m ul{padding-left:18px;margin:2px 0}
.kc-opts{border-top:1px solid var(--line);padding:12px 16px;display:flex;flex-wrap:wrap;gap:8px;max-height:40%;overflow-y:auto}
.kc-chip{font:inherit;font-size:14px;border:1px solid var(--blue);color:var(--blue);background:none;border-radius:980px;padding:7px 13px;cursor:pointer;text-align:left}
.kc-chip:hover{background:var(--blue);color:#fff}
.kc-chip.quiet{border-color:var(--line);color:var(--mute)}
.kc-chip.quiet:hover{background:var(--alt);color:var(--ink)}
.kc-form{width:100%;display:grid;gap:5px;position:relative}
.kc-l{font-size:13px;color:var(--mute)}
.kc-form input:not([type=checkbox]),.kc-form textarea{width:100%;font:inherit;font-size:15px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.kc-form textarea{resize:vertical;min-height:64px}
.kc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kc-ds{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--mute);margin-top:4px}
.kc-ds input{margin-top:2px}
.kc-ds a{color:var(--blue)}
.kc-err{color:#c4441c;font-size:13px;min-height:1em}
.kc-row{display:flex;gap:8px;justify-content:flex-end}
.kc-btn{font:inherit;font-size:14px;border:1px solid var(--blue);background:var(--blue);color:#fff;border-radius:980px;padding:8px 16px;cursor:pointer}
.kc-btn.sec{background:none;color:var(--mute);border-color:var(--line)}
.kc-btn:disabled{opacity:.6}
@media (max-width:520px){
  .kc-fab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}
  .kc-panel{left:10px;right:10px;width:auto;bottom:calc(82px + env(safe-area-inset-bottom,0px));height:calc(100vh - 100px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));height:calc(100dvh - 100px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
}
@media print{#kc{display:none}}
.kc-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kc-two div{display:grid;gap:5px}
.kc-size .kc-l{margin:0}
.kc-chip.kc-ang{font-weight:600}
