html,body{height:100%;margin:0}
.cw{background:var(--papier);color:var(--tinte);font:17px/1.45 var(--serif)}
#cw-chat{box-sizing:border-box;height:100%;display:flex;flex-direction:column;padding:12px;gap:8px;overflow-y:auto}
#cw-history{flex:1;overflow-y:auto;min-height:80px;display:flex;flex-direction:column;gap:8px}
#cw-history p{padding:10px 12px;margin:0;max-width:86%;border:1px solid var(--linie);border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.cw-theo{align-self:flex-start;background:var(--grund)}
#cw-history .cw-team{align-self:flex-start;background:var(--grund);border-left:3px solid var(--gelb)}
.cw-gast{align-self:flex-end;background:var(--blass)}
.cw-speaker{display:block;font:12px/1.4 var(--haus,var(--sans));margin-bottom:4px;color:var(--mut)}
#cw-welcome p{margin:0;padding:10px 12px;background:var(--grund);border-radius:12px}
#cw-suggestions{display:flex;flex-wrap:wrap;gap:8px}
#cw-offer,#cw-transfer{flex:none;padding:12px;background:var(--grund);border:1px solid var(--linie2);border-radius:12px}
#cw-offer p,#cw-transfer p{margin:0 0 8px}
#cw-qr{display:block;max-width:100%;height:auto;margin:8px auto;background:var(--papier)}
#cw-chat [hidden]{display:none!important}
#cw-form{display:flex;align-items:flex-end;gap:8px;flex:none;padding-top:6px}
#cw-text{min-width:0;flex:1;resize:vertical;max-height:140px;box-sizing:border-box;font:16px/1.4 var(--haus,var(--sans));padding:10px;border:1px solid var(--linie2);border-radius:6px;color:var(--tinte);background:var(--papier)}
#cw-chat button,#cw-chat a,#cw-chat summary{min-height:44px;cursor:pointer;font-family:var(--haus,var(--sans))}
#cw-chat button:disabled{opacity:.6;cursor:wait}
.cw-manual{background:none;border:0;color:var(--tinte);text-decoration:underline;text-align:left;padding:4px 0}
.cw-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cw-privacy{font:12px/1.4 var(--sans);color:var(--mut);margin:0}
.cw-privacy summary{display:flex;align-items:center;text-decoration:underline}
.cw-privacy p{margin:0 0 8px}
#cw-status{font:14px/1.4 var(--haus,var(--sans));color:var(--mut);margin:0}
#cw-error{color:var(--tinte);border-left:3px solid var(--gelb);padding-left:8px;margin:0}
@media(pointer:coarse){#cw-qr{display:none}}

#cw-chat .j-btn{max-width:100%;white-space:normal}
#cw-send{flex:none}
#cw-chat button:focus-visible,#cw-chat a:focus-visible,#cw-chat summary:focus-visible,#cw-text:focus-visible{outline:2px solid var(--gelb);outline-offset:3px}

#cw-offer button{margin:4px 4px 0 0}

#cw-identity{flex:none;padding:12px;border:1px solid var(--linie2);border-radius:12px;background:var(--grund)}
#cw-identity h2{font:600 18px/1.2 var(--haus,var(--sans));text-transform:uppercase;margin:0 0 8px}
#cw-identity p{margin:0 0 8px}
#cw-identity label{display:block;margin:8px 0 4px}
#cw-identity input{box-sizing:border-box;display:block;width:100%;min-width:0;min-height:44px;border:1px solid var(--linie2);border-radius:6px;padding:8px 10px;background:var(--papier);color:var(--tinte);font:16px/1.4 var(--haus,var(--sans))}
#cw-identity #cw-phone{font-family:var(--serif);font-variant-numeric:tabular-nums}
#cw-identity input:focus-visible{outline:2px solid var(--gelb);outline-offset:3px}
#cw-identity input[aria-invalid="true"]{border-color:var(--fehler)}
#cw-identity .cw-field-error,#cw-identity-error{color:var(--fehler)}
#cw-identity-send{margin-top:8px}
#cw-guest-state{margin:0;padding:8px 12px;border-left:3px solid var(--gelb);overflow-wrap:anywhere}
