/* Decision-ID: chatwoot-phi-privatanbindung-20261021. Phi tokens: phi-design/DESIGN.md. */
:host{
  --navy:#0f1a2e;--navy-50:#f0f3fa;--navy-100:#e0e8f5;--navy-700:#0a111e;
  --gold:#8a6d28;--gold-50:#faf7ef;--gold-100:#f6efdf;--gold-200:#eddfc0;--gold-600:#755d22;--white:#fff;
  --text:var(--navy);--muted:#546073;--border:var(--navy-100);--bg:var(--gold-50);
  --s-3xs:.236rem;--s-2xs:.382rem;--s-xs:.618rem;--s-sm:1rem;--s-md:1.272rem;--s-lg:1.618rem;--s-xl:2.058rem;--s-xxl:2.618rem;--s-xxxl:4.236rem;
  --radius-sm:var(--s-xs);--radius:var(--s-lg);--radius-main:var(--s-sm);
  --h1:clamp(2.618rem,4.72vw,4.236rem);--h2:clamp(1.272rem,1.8vw,1.618rem);--body:clamp(.9375rem,1.1vw,1rem);--small:.875rem;--micro:.75rem;
  --shadow:0 16px 40px rgb(15 26 46 / .14),0 4px 12px rgb(15 26 46 / .06);--motion:250ms ease-out;
  --page-width:88rem;--widget-width:23rem;--edge:var(--s-lg);--widget-bottom:6.25rem;
}
*{box-sizing:border-box}:host{scroll-behavior:smooth;scroll-padding-top:var(--s-lg)}.chat-root{margin:0;background:var(--bg);color:var(--text);font-family:APChatInter,Arial,sans-serif;font-size:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{transition:background var(--motion),color var(--motion),box-shadow var(--motion),transform var(--motion)}button:disabled{cursor:wait;opacity:.5}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button svg,svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}p,h1,h2{margin:0}.symbol-library{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--s-sm);left:var(--s-sm);transform:translateY(-200%);z-index:30;padding:var(--s-xs) var(--s-sm);background:var(--navy);color:var(--white);border-radius:var(--radius-sm)}.skip-link:focus{transform:translateY(0)}
.site-header{max-width:var(--page-width);margin:auto;padding:var(--s-lg) var(--s-xxl);display:flex;align-items:center;justify-content:space-between;gap:var(--s-lg);border-bottom:1px solid rgb(138 109 40 / .14)}.wordmark{color:var(--navy);text-decoration:none;letter-spacing:.13em;font-size:1rem;font-weight:450;line-height:1.2;white-space:nowrap}.wordmark strong{font-weight:750}.wordmark>span{display:block;font-size:.575rem;letter-spacing:.23em;font-weight:550;margin-top:var(--s-xs)}.header-end{display:flex;align-items:center;gap:var(--s-xl)}.preview-badge{display:inline-flex;align-items:center;gap:var(--s-xs);font-size:var(--micro);color:var(--muted)}.preview-badge>span,.widget-label>span{width:.375rem;height:.375rem;border-radius:50%;background:var(--gold)}.reset-button{background:none;border:0;color:var(--muted);display:flex;align-items:center;gap:var(--s-xs);min-height:44px;padding:var(--s-xs);font-size:var(--micro);border-radius:var(--radius-sm)}.reset-button:hover{background:var(--gold-100);color:var(--navy)}.reset-button svg{width:1rem;height:1rem}.page{max-width:var(--page-width);margin:auto;padding:0 var(--s-xxl)}.intro{display:flex;justify-content:space-between;gap:var(--s-xl);align-items:center;padding:var(--s-xl) 0 var(--s-xl)}.eyebrow{font-size:.6875rem;font-weight:650;letter-spacing:.15em;line-height:1.6;color:var(--gold);display:flex;align-items:center;gap:var(--s-xs)}.eyebrow>span{height:1px;width:var(--s-lg);background:var(--gold)}h1{font-size:var(--h1);font-weight:550;letter-spacing:-.06em;line-height:1.12;margin-top:var(--s-xs)}h1 em{font-style:normal;color:var(--gold)}.intro-copy{margin-top:var(--s-sm);color:var(--muted);font-size:var(--small);line-height:1.7}.intro-note{padding-right:var(--s-sm);width:var(--widget-width);flex-shrink:0;border-left:1px solid var(--gold-200);padding-left:var(--s-lg)}.note-number{color:var(--gold);font-size:.6875rem;font-weight:650;letter-spacing:.15em}.intro-note p{font-size:var(--small);line-height:1.8;margin-top:var(--s-xs)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) var(--widget-width);gap:var(--s-xl);align-items:start}.chat-surface{background:var(--white);border:1px solid var(--border);overflow:hidden}.main-chat{border-radius:var(--radius-main);box-shadow:0 8px 24px rgb(15 26 46 / .04);display:flex;flex-direction:column;min-width:0;height:42rem}.chat-header{padding:var(--s-lg);display:flex;justify-content:space-between;align-items:center;gap:var(--s-sm);border-bottom:1px solid var(--border)}.identity{display:flex;align-items:center;gap:var(--s-xs);min-width:0}.avatar{display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;width:3rem;height:3rem;border-radius:var(--s-sm);background:var(--gold-100);color:var(--gold);font-size:1.75rem;font-weight:650;letter-spacing:-.08em;line-height:1;padding-bottom:var(--s-3xs)}.avatar>span{height:.3rem;width:.3rem;background:currentColor;border-radius:50%;align-self:center;margin-top:.8rem;margin-left:.1rem}.identity h2{font-size:var(--h2);font-weight:650;letter-spacing:-.045em;line-height:1.2}.identity p{font-size:.75rem;color:var(--muted);margin-top:var(--s-3xs)}.handoff-button{border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s-xs) var(--s-sm);background:var(--white);font-size:.75rem;color:var(--navy);display:flex;align-items:center;gap:var(--s-xs);min-height:44px;flex-shrink:0}.handoff-button:hover{background:var(--gold-50);border-color:var(--gold-200)}.handoff-button svg{width:1rem;height:1rem}.conversation-context{padding:var(--s-xs) var(--s-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--s-xs);background:var(--gold-50);font-size:.6875rem;color:var(--muted)}.conversation-context>span:first-child{display:flex;gap:var(--s-xs);align-items:center}.conversation-context svg{width:.875rem;height:.875rem;color:var(--gold)}.context-label{color:var(--gold);font-size:.625rem;letter-spacing:.03em;white-space:nowrap}.messages{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--navy-100) transparent;padding:var(--s-lg);display:flex;flex-direction:column;gap:var(--s-sm)}.day-label{text-align:center;color:var(--muted);font-size:.625rem;letter-spacing:.02em;padding-bottom:var(--s-2xs)}.message{max-width:87%;flex-shrink:0;animation:message-in var(--motion)}.message.assistant{align-self:flex-start}.message.user{align-self:flex-end}.message-label{display:flex;align-items:center;gap:var(--s-xs);font-size:.625rem;color:var(--muted);padding:0 var(--s-2xs) var(--s-3xs)}.message.user .message-label{justify-content:flex-end}.message.user .message-label svg{width:.75rem;height:.75rem;color:var(--gold)}.bubble{padding:var(--s-xs) var(--s-sm);background:var(--navy-50);border-radius:var(--s-sm) var(--s-sm) var(--s-sm) var(--s-3xs);font-size:var(--small);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.user .bubble{background:var(--navy);color:var(--white);border-radius:var(--s-sm) var(--s-sm) var(--s-3xs) var(--s-sm)}.typing .bubble{display:flex;align-items:center;gap:var(--s-3xs);padding:var(--s-sm)}.typing .bubble i{width:5px;height:5px;background:var(--muted);border-radius:50%;animation:pulse 1s infinite}.typing .bubble i:nth-child(2){animation-delay:.15s}.typing .bubble i:nth-child(3){animation-delay:.3s}.composer-area{padding:var(--s-sm) var(--s-lg) var(--s-xs);border-top:1px solid var(--border)}.suggestions{display:flex;gap:var(--s-xs);flex-wrap:wrap;margin-bottom:var(--s-sm)}.suggestions button{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s-2xs) var(--s-xs);font-size:.75rem;min-height:44px;color:var(--navy);display:flex;gap:var(--s-sm);align-items:center;justify-content:space-between}.suggestions button span{color:var(--gold)}.suggestions button:hover{background:var(--gold-50);border-color:var(--gold-200)}.composer{display:flex;align-items:flex-end;gap:var(--s-xs);border:1px solid var(--border);border-radius:var(--s-sm);padding:var(--s-2xs);background:var(--white);transition:border-color var(--motion),box-shadow var(--motion)}.composer:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgb(138 109 40 / .12)}.composer textarea{flex:1;min-width:0;resize:none;border:0;background:transparent;color:var(--navy);min-height:44px;max-height:110px;line-height:1.5;padding:.7rem var(--s-xs);font-size:var(--small);outline:0}.composer textarea::placeholder{color:var(--muted);opacity:1}.send-button{display:flex;align-items:center;justify-content:center;background:var(--gold);border:0;border-radius:var(--radius-sm);color:var(--white);width:44px;height:44px;flex-shrink:0}.send-button:hover{background:var(--gold-600)}.composer-note{text-align:center;font-size:.625rem;color:var(--muted);padding-top:var(--s-xs)}.side-note{padding:var(--s-sm) var(--s-xs);max-width:var(--widget-width)}.side-note h2{font-size:1.618rem;font-weight:500;line-height:1.25;letter-spacing:-.04em;margin-top:var(--s-xs)}.side-note>p:not(.eyebrow){font-size:var(--small);color:var(--muted);margin-top:var(--s-sm);line-height:1.8}.text-button{padding:var(--s-xs) 0;min-height:44px;margin-top:var(--s-xs);display:flex;align-items:center;gap:var(--s-xs);border:0;background:none;font-size:var(--small);color:var(--gold)}.text-button:hover{color:var(--gold-600)}.text-button svg{width:1rem;height:1rem}.side-rule{width:2.618rem;border-top:1px solid var(--gold-200);margin:var(--s-lg) 0 var(--s-xs)}.side-caption{font-size:.625rem;letter-spacing:.12em;color:var(--muted)}.page-footer{display:flex;justify-content:space-between;gap:var(--s-sm);padding:var(--s-lg) 0 var(--s-xl);color:var(--muted);font-size:.625rem}.page-footer>span:first-child{letter-spacing:.1em}
.floating-chat{position:fixed;z-index:10;bottom:var(--widget-bottom);right:var(--edge);width:var(--widget-width);height:min(35.5rem,calc(100dvh - 8rem));border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;visibility:hidden;opacity:0;transform:translateY(var(--s-lg)) scale(.97);transform-origin:bottom right;pointer-events:none;transition:opacity var(--motion),transform var(--motion),visibility var(--motion)}.floating-chat.is-open{visibility:visible;opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.widget-header{background:var(--navy);color:var(--white);padding:var(--s-md) var(--s-sm);display:flex;align-items:center;justify-content:space-between;gap:var(--s-2xs)}.widget-header .avatar{width:2.618rem;height:2.618rem;font-size:1.618rem;background:rgb(255 255 255 / .1);color:var(--gold-200);border-radius:var(--radius-sm)}.widget-header .identity h2{font-size:1.272rem}.widget-header .identity p{font-size:.625rem;color:var(--navy-100);white-space:nowrap}.widget-actions{display:flex;gap:0}.icon-button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;color:var(--white);background:transparent;border-radius:var(--radius-sm)}.icon-button:hover{background:rgb(255 255 255 / .12)}.icon-button svg{width:1rem;height:1rem}.widget-label{font-size:.5625rem;color:var(--gold);letter-spacing:.09em;font-weight:650;display:flex;align-items:center;gap:var(--s-xs);padding:var(--s-xs) var(--s-sm);background:var(--gold-50)}.widget-label>span{width:.3rem;height:.3rem}.widget-messages{padding:var(--s-sm);gap:var(--s-xs)}.widget-messages .message{max-width:94%}.widget-messages .bubble{font-size:.75rem;padding:var(--s-xs) var(--s-xs);line-height:1.65}.widget-messages .message-label{font-size:.5625rem}.widget-messages .day-label{display:none}.widget-composer-area{border-top:1px solid var(--border);padding:var(--s-2xs) var(--s-sm) var(--s-xs)}.widget-handoff{background:none;border:0;padding:var(--s-2xs) 0;color:var(--gold);font-size:.625rem;min-height:44px;width:100%;display:flex;align-items:center;gap:var(--s-xs)}.widget-handoff svg{width:.875rem;height:.875rem}.widget-handoff svg:last-child{margin-left:auto}.widget-handoff:hover{color:var(--gold-600)}.widget-composer textarea{font-size:.75rem;padding-top:.8rem}.widget-composer{border-radius:var(--radius-sm)}.widget-footnote{text-align:center;font-size:.5625rem;padding-top:var(--s-2xs);color:var(--muted)}.launcher{position:fixed;z-index:11;right:var(--edge);bottom:var(--edge);display:flex;align-items:center;gap:var(--s-xs);border:0;border-radius:100px;background:var(--gold);color:var(--white);box-shadow:0 6px 16px rgb(15 26 46 / .16);min-height:56px;padding:var(--s-sm) var(--s-lg);font-weight:550;font-size:var(--small)}.launcher:hover{background:var(--gold-600);transform:translateY(-2px)}.launcher .launcher-close{display:none}.launcher[aria-expanded="true"] .launcher-close{display:block}.launcher[aria-expanded="true"] .launcher-chat{display:none}.toast{position:fixed;z-index:20;bottom:var(--s-lg);left:50%;max-width:calc(100vw - 2rem);transform:translate(-50%,var(--s-xl));background:var(--navy);color:var(--white);padding:var(--s-xs) var(--s-sm);border-radius:var(--radius-sm);font-size:.75rem;box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:var(--motion);pointer-events:none}.toast.visible{transform:translate(-50%,0);opacity:1;visibility:visible}.noscript-message{position:fixed;bottom:0;left:0;right:0;padding:var(--s-sm);background:var(--navy);color:var(--white)}
@keyframes message-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,80%,100%{opacity:.35}40%{opacity:1}}
@media(min-width:1441px){:host{--edge:max(var(--s-lg),calc((100vw - var(--page-width))/2 + var(--s-xxl)))}.floating-chat{width:var(--widget-width)}}
@media(max-width:1150px){.workspace{grid-template-columns:minmax(0,1fr) 21rem;gap:var(--s-lg)}:host{--widget-width:21rem;--edge:var(--s-sm)}.page,.site-header{padding-left:var(--s-lg);padding-right:var(--s-lg)}.handoff-button span{display:none}.handoff-button{padding:var(--s-xs);width:44px;justify-content:center}.handoff-button svg{width:1.125rem;height:1.125rem}.chat-header,.messages{padding:var(--s-sm)}.composer-area{padding:var(--s-sm)}.conversation-context{padding:var(--s-xs) var(--s-sm)}.context-label{display:none}.suggestions{gap:var(--s-2xs)}.suggestions button{font-size:.6875rem;gap:var(--s-xs)}.widget-header .identity p{white-space:normal}.widget-actions .icon-button{width:44px}.widget-header{padding:var(--s-sm) var(--s-xs)}.header-end{gap:var(--s-xs)}}
@media(max-width:900px){.workspace{grid-template-columns:minmax(0,1fr)}.side-note{display:none}.intro-note{width:auto}.main-chat{height:40rem}.intro{padding-top:var(--s-xl)}.floating-chat{width:23rem}.main-chat .handoff-button span{display:inline}.main-chat .handoff-button{width:auto;padding:var(--s-xs) var(--s-sm)}}
@media(max-width:639px){:host{--edge:var(--s-sm);--widget-bottom:5.75rem}.site-header{padding:var(--s-sm);gap:var(--s-xs)}.wordmark{font-size:.8125rem}.wordmark>span{font-size:.46rem}.preview-badge{font-size:.625rem;max-width:5.5rem;line-height:1.4}.preview-badge>span{display:none}.reset-button>span{display:none}.reset-button{width:44px;justify-content:center}.header-end{gap:0}.page{padding:0 var(--s-sm)}.intro{padding:var(--s-lg) 0;display:block}.intro-note{display:none}.intro-copy{font-size:.8125rem}.intro-copy br{display:none}.eyebrow{font-size:.625rem}h1{margin-top:var(--s-xs)}.main-chat{height:42rem;border-radius:var(--s-sm)}.main-chat .handoff-button span{display:none}.main-chat .handoff-button{width:44px;padding:var(--s-xs)}.identity p{font-size:.625rem}.identity h2{font-size:1.272rem}.avatar{width:2.618rem;height:2.618rem}.bubble{font-size:.8125rem}.message{max-width:95%}.suggestions{gap:var(--s-2xs);margin-bottom:var(--s-xs)}.suggestions button{font-size:.625rem;padding:var(--s-2xs) var(--s-xs);gap:var(--s-2xs)}.composer-area{padding:var(--s-xs)}.composer-note{font-size:.5625rem}.composer textarea{font-size:1rem}.page-footer{flex-direction:column;gap:var(--s-3xs);padding-bottom:6rem}.floating-chat{width:min(23rem,calc(100vw - 2 * var(--edge)));height:min(33rem,calc(100dvh - 7.5rem));border-radius:var(--s-sm)}.widget-header .identity p{font-size:.5625rem}.widget-header .identity h2{font-size:1.125rem}.widget-header .avatar{width:2.3rem;height:2.3rem}.widget-actions .icon-button{width:44px}.widget-composer textarea{font-size:1rem}.launcher{min-height:52px;padding:var(--s-xs) var(--s-lg)}.toast{bottom:6rem}.main-chat .handoff-button svg{width:1rem;height:1rem}}
/* Decision-ID: chatwoot-denkanzeige-20261021 */
.typing{align-self:flex-start;flex-shrink:0;max-width:100%}.typing .bubble{gap:.382rem}.typing .bubble i{flex-shrink:0}.typing .bubble span{margin-right:.236rem}
@media(prefers-reduced-motion:reduce){:host{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Keep the alternate introduction clear when the compact chat is open. */
.widget-open .side-note{visibility:hidden;pointer-events:none}
@media(max-width:1150px){.widget-open .intro-note{visibility:hidden}}

/* Live pilot controls; server security headers permit only these local assets. */
.test-button{min-height:44px;border:0;background:var(--gold);color:var(--white);border-radius:var(--radius-sm);padding:var(--s-xs) var(--s-sm);font-size:.75rem;white-space:nowrap}.test-button:hover{background:var(--gold-600)}.test-status-bar{display:flex;justify-content:space-between;gap:var(--s-sm);align-items:center;padding:var(--s-xs) var(--s-sm);margin-bottom:var(--s-lg);border:1px solid var(--gold-200);border-radius:var(--radius-sm);background:var(--gold-100);font-size:.75rem}.test-status-bar p{flex:1;min-width:0}.test-status-bar>span{font-size:.625rem;white-space:nowrap;color:var(--gold)}.test-status-bar.has-error{border-color:var(--gold);border-left-width:4px}.empty-chat{margin:auto;max-width:25rem;text-align:center;color:var(--muted);font-size:var(--small);padding:var(--s-lg)}.empty-chat p{margin-bottom:var(--s-sm)}.widget-messages .empty-chat{font-size:.75rem;padding:var(--s-xs)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.header-end{gap:var(--s-xs)}#stop-test{white-space:nowrap}.send-button:disabled{opacity:.45}.message-label{font-size:.6875rem}.composer textarea:disabled{opacity:.7}.message{animation:none}.widget-open .intro-note{visibility:hidden}
@media(max-width:639px){.site-header{flex-wrap:wrap}.header-end{width:100%;justify-content:flex-end}.preview-badge{max-width:none;margin-right:auto}.test-status-bar{align-items:flex-start;flex-direction:column;gap:var(--s-3xs)}.composer-note{font-size:.625rem}.widget-messages .message-label{font-size:.625rem}.widget-header .identity p{font-size:.625rem}}

.widget-status{font-size:.75rem;line-height:1.45;padding:var(--s-xs) var(--s-sm);background:var(--gold-100);border-left:3px solid var(--gold)}.widget-status[hidden]{display:none}

.test-status-bar{max-width:calc(100% - var(--widget-width) - var(--s-xl))}
@media(max-width:900px){.test-status-bar{max-width:none}}
@media(max-width:639px){#stop-test{width:auto;padding:var(--s-xs);font-size:.6875rem}#start-test{padding:var(--s-xs);font-size:.6875rem}.header-end .preview-badge{max-width:4rem;line-height:1.4}.header-end{justify-content:space-between}}

:host{display:block;isolation:isolate} .chat-root{font-size:16px} .header-end{flex-wrap:wrap}
/* Public integration: scoped to this shadow root, existing Divi presets stay in charge. */
:host{display:block;min-width:0;isolation:auto;--edge:1rem}.chat-root{background:transparent}.chat-controls{display:flex;flex-wrap:wrap;gap:.382rem;align-items:center;margin-bottom:.618rem}.chat-controls .reset-button{width:auto;font-size:.75rem}.test-status-bar{max-width:none;margin-bottom:.618rem}.main-chat{height:40rem;max-height:850px}.chat-header{padding:1rem}.chat-header .handoff-button span{display:none}.chat-header .handoff-button{width:44px;padding:.618rem}.public-privacy{font-size:.75rem;color:var(--muted);margin-top:.618rem;line-height:1.6}.public-privacy a,.widget-links a{color:var(--gold);text-underline-offset:.2em}.widget-links{font-size:.6875rem;text-align:center;line-height:1.6;padding-top:.618rem}.widget-links button{border:0;background:none;color:var(--gold);padding:.382rem;font-size:inherit;text-decoration:underline}.floating-chat[popover]{margin:0 0 0 auto;inset:auto var(--edge) var(--widget-bottom) auto;color:var(--navy)}.launcher[popover]{margin:0;inset:auto var(--edge) var(--edge) auto;overflow:visible}.launcher::backdrop,.floating-chat::backdrop{display:none}:host(.widget-only) .public-main{display:none}.empty-chat{padding:1rem}.composer-note{font-size:.6875rem}.widget-footnote{font-size:.625rem}.widget-messages .empty-chat{padding:.382rem}.floating-chat{height:min(38rem,calc(100dvh - 7rem))}.widget-label{font-size:.6875rem}.widget-header .identity p{font-size:.6875rem}.widget-composer-area{padding:.382rem .618rem}.widget-handoff{font-size:.75rem}.widget-messages .bubble{font-size:.8125rem}@media(max-width:639px){.main-chat{height:42rem}.chat-controls{gap:0}.chat-controls .reset-button{font-size:.6875rem}.public-privacy{font-size:.75rem}.floating-chat[popover]{width:calc(100vw - 2rem)}.widget-header .identity h2{font-size:1.125rem}.widget-header .identity p{display:none}}
