.kvai-root{--bg: #faf8f5;--fg: #2b2825;--muted: #7a736b;--accent: #4a7c59;--accent-soft: #e5efe8;--user-bubble: #4a7c59;--assistant-bubble: #ffffff;--border: #e3ddd4;--radius: 14px;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--fg);line-height:1.55;font-size:16px;text-align:left}.kvai-root *,.kvai-root *:before,.kvai-root *:after{box-sizing:border-box}.kvai-root button,.kvai-root textarea{font:inherit}.kvai-root .chat-view{max-width:760px;margin:0 auto;min-height:60vh;display:flex;flex-direction:column}.kvai-root .chat-header{padding:1.2rem 0 .4rem}.kvai-root .chat-header h1{margin:0;font-size:1.4rem}.kvai-root .chat-sub{margin:.2rem 0 0;color:var(--muted);font-size:.9rem}.kvai-root .chat-messages{flex:1;padding:1rem 0 2rem}.kvai-root .bubble-row{display:flex;margin:.6rem 0}.kvai-root .bubble-user{justify-content:flex-end}.kvai-root .bubble-assistant{justify-content:flex-start}.kvai-root .bubble{max-width:88%;padding:.7rem 1rem;border-radius:var(--radius);background:var(--assistant-bubble);border:1px solid var(--border)}.kvai-root .bubble-user .bubble{background:var(--user-bubble);color:#fff;border:none}.kvai-root .bubble-kind-clarification{background:var(--accent-soft);border-color:var(--accent)}.kvai-root .bubble-kind-error{background:#fbeae7;border-color:#e0b3ab;color:#8c3a2e}.kvai-root .bubble-text p{margin:.4rem 0;white-space:pre-wrap}.kvai-root .bubble-text p:first-child{margin-top:0}.kvai-root .bubble-text p:last-child{margin-bottom:0}.kvai-root .cursor{animation:kvai-blink 1s step-start infinite;color:var(--accent)}@keyframes kvai-blink{50%{opacity:0}}.kvai-root .status-indicator{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.9rem;padding:.4rem .2rem}.kvai-root .status-spinner{width:.9em;height:.9em;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:kvai-spin .8s linear infinite}@keyframes kvai-spin{to{transform:rotate(360deg)}}.kvai-root .confidence-badge{display:inline-block;font-size:.72rem;font-weight:600;padding:.1rem .5rem;border-radius:999px;margin-bottom:.4rem;cursor:default}.kvai-root .confidence-high{background:#e0efe3;color:#2c6e3f}.kvai-root .confidence-medium{background:#fdf3d8;color:#8a6d1a}.kvai-root .confidence-low,.kvai-root .confidence-none{background:#fbeae7;color:#8c3a2e}.kvai-root .source-list h4{margin:.9rem 0 .3rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.kvai-root .source-card{border:1px solid var(--border);border-radius:10px;padding:.5rem .7rem;margin:.35rem 0;font-size:.88rem;background:#fdfcfa}.kvai-root .source-card-head{display:flex;gap:.5rem;align-items:baseline;color:var(--muted);font-size:.78rem}.kvai-root .source-index{font-weight:700;color:var(--accent)}.kvai-root .source-relevance{margin-left:auto;display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;color:var(--muted);cursor:default}.kvai-root .source-relevance-dot{width:.55rem;height:.55rem;border-radius:50%;flex-shrink:0}.kvai-root .source-card-title a{color:var(--accent)}.kvai-root .source-card-meta{display:flex;gap:.7rem;color:var(--muted);font-size:.78rem}.kvai-root .source-toggle{background:none;border:none;color:var(--accent);padding:.2rem 0;font-size:.78rem;cursor:pointer}.kvai-root .source-text{margin:.3rem 0 0;padding:.4rem .6rem;border-left:3px solid var(--accent-soft);color:#4c463f;font-size:.85rem}.kvai-root .source-context{color:var(--muted);font-style:italic}.kvai-root .source-fluegel_impuls{background:var(--accent-soft)}.kvai-root .citation-link{display:inline;margin:0;padding:0 .15em;border:none;background:none;color:var(--accent);font:inherit;font-size:.88em;font-weight:600;line-height:inherit;vertical-align:baseline;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.kvai-root .citation-link:hover{color:#2c5a3a}.kvai-root .citation-static{color:var(--accent);font-size:.88em;font-weight:600}.kvai-root .citation-popover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:transparent}.kvai-root .citation-popover{position:fixed;z-index:1001;width:min(22rem,calc(100vw - 1rem));max-height:min(70vh,28rem);overflow-y:auto;padding:1.1rem 1.25rem 1.25rem;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 8px 28px #2b28252e}.kvai-root .citation-popover .source-card-popover{margin:0;padding:0;border:none;border-radius:0;background:transparent}.kvai-root .citation-popover .source-card-popover .source-card-title{margin-top:.35rem}.kvai-root .citation-popover .source-card-popover .source-card-meta{margin-top:.3rem}.kvai-root .citation-popover .source-card-popover .source-text{margin-top:.65rem;padding:0;border-left:none}.kvai-root .citation-popover-divider{margin:1rem 0;border:none;border-top:1px solid var(--border)}.kvai-root .citation-popover-close{position:sticky;top:0;float:right;margin:-.35rem -.25rem .35rem .5rem;padding:.25rem .55rem;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:1.2rem;line-height:1;cursor:pointer}.kvai-root .citation-popover-close:hover{background:var(--accent-soft);color:#2b2825}.kvai-root .related-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}.kvai-root .starter-chips{margin:1rem 0 .5rem}.kvai-root .starter-label{color:var(--muted);font-size:.85rem;margin:0 0 .4rem}.kvai-root .chip{border:1px solid var(--accent);background:none;color:var(--accent);border-radius:8px;padding:.5rem .75rem;font-size:.82rem;cursor:pointer;width:100%;max-width:500px;margin:6px}.kvai-root .chip:hover:not(:disabled){background:var(--accent-soft)}.kvai-root .chip:disabled{opacity:.5;cursor:default}.kvai-root .feedback-box{margin-top:.8rem;padding-top:.6rem;border-top:1px dashed var(--border);font-size:.85rem}.kvai-root .feedback-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.kvai-root .feedback-label{color:var(--muted)}.kvai-root .star{background:none;border:none;font-size:1.25rem;color:var(--border);cursor:pointer;padding:0 .1rem}.kvai-root .star-on{color:#e2a93b}.kvai-root .feedback-comment{width:100%;margin:.4rem 0;padding:.45rem .6rem;border:1px solid var(--border);border-radius:8px;resize:vertical}.kvai-root .feedback-submit{border:none;background:var(--accent);color:#fff;border-radius:8px;padding:.35rem .9rem;cursor:pointer}.kvai-root .feedback-submit:disabled{opacity:.5;cursor:default}.kvai-root .feedback-error{color:#8c3a2e}.kvai-root .feedback-done{color:var(--accent)}.kvai-root .feedback-edit{background:none;border:none;color:var(--muted);text-decoration:underline;cursor:pointer;font-size:.8rem}.kvai-root .chat-input-row{position:sticky;bottom:0;display:flex;gap:.5rem;padding:.7rem 0 1rem;background:linear-gradient(transparent,var(--bg) 30%)}.kvai-root .search-view .chat-input-row{position:static;background:none}.kvai-root .chat-input{flex:1;padding:.6rem .8rem;border:1px solid var(--border);border-radius:10px;resize:none;background:#fff}.kvai-root .chat-input-row button{border:none;background:var(--accent);color:#fff;border-radius:10px;padding:0 1.1rem;font-size:.95rem;cursor:pointer}.kvai-root .chat-input-row button:disabled{opacity:.5;cursor:default}.kvai-root .search-view{max-width:760px;margin:0 auto}.kvai-root .search-summary-bar{display:flex;align-items:center;gap:.8rem;margin:.6rem 0}.kvai-root .search-count{color:var(--muted);font-size:.85rem}.kvai-root .search-scope-toggle{margin-left:auto;display:flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.82rem;cursor:pointer}.kvai-root .summary-bubble{max-width:none;margin:.6rem 0}.kvai-root .search-results{margin-top:.6rem}.kvai-root .search-empty{color:var(--muted)}.kvai-root .kvai-wp-card{margin:.6rem 0}body{margin:0;background:#faf8f5;color:#2b2825;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55}.kvai-root .chat-view{min-height:100vh;padding:0 1rem}.token-gate{max-width:380px;margin:18vh auto;padding:0 1rem;text-align:center}.token-gate form{display:flex;gap:.5rem}.token-gate input{flex:1;padding:.6rem .8rem;border:1px solid #e3ddd4;border-radius:8px;font-size:1rem}.token-gate button{padding:.6rem 1rem;border:none;border-radius:8px;background:#4a7c59;color:#fff;cursor:pointer}.token-error{color:#b0483a}
