:root{--blue: #0066ff;--teal: #00d2b4;--gradient: linear-gradient(135deg, var(--blue), var(--teal));--bg: #f4f7fb;--card: #ffffff;--text: #1a1a2e;--text-muted: #5c6478;--border: #e2e8f0;--host-bubble: linear-gradient(135deg, #0066ff, #0088cc);--guest-bubble: #e8edf5;--guest-text: #1a1a2e;--warn-bg: #fff8e6;--warn-border: #f5a623;--block-bg: #ffeef0;--block-border: #e0245e;--healthy: #22c55e;--tense: #f59e0b;--escalating: #ef4444}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}.wrap{max-width:1100px;margin:0 auto;padding:1.5rem 1rem 2rem}.logo{display:block;height:clamp(40px,7vw,52px);width:auto;margin:0 auto 1rem}.home-page{padding-top:1.25rem;padding-bottom:1.5rem}.home-header{text-align:center;margin-bottom:1.25rem}.home-header .logo{margin:0 auto .65rem}.home-headline{margin:0 0 .75rem;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}.home-subtitle{margin:.55rem auto 0;max-width:none;font-size:.88rem;line-height:1.5;color:#7a8494;white-space:nowrap}@media(max-width:640px){.home-subtitle{font-size:clamp(.68rem,2.8vw,.82rem)}}header{text-align:center;margin-bottom:2rem}header h1{margin:0;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;letter-spacing:-.02em;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}header p,.subhead{margin:.5rem 0 0;color:var(--text-muted);font-size:1.05rem}.home-api-link{margin:1rem 0 0;text-align:center;font-size:.78rem}.home-api-link a{color:#9aa3b2;text-decoration:none;font-weight:500;transition:color .15s ease}.home-api-link a:hover{color:var(--blue)}.landing-card{max-width:440px;margin:0 auto;background:#fff;border-radius:18px;padding:1.35rem 1.35rem 1.4rem;text-align:center;border:1px solid rgba(226,232,240,.85);box-shadow:0 10px 40px #0066ff0f,0 2px 8px #0f172a0a}.home-cta-group{display:flex;flex-direction:column;gap:.55rem}.home-cta-group .btn-gradient,.home-cta-group .btn-secondary,.home-cta-group .open-chat-link{width:100%}.home-cta-group-inline{margin-top:.85rem}.home-api-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.25rem;font-size:.92rem}.landing-card h2{margin:0 0 1rem;font-size:1.2rem;font-weight:600}.btn{cursor:pointer;border:none;border-radius:12px;padding:.7rem 1.25rem;font-size:.95rem;font-weight:600;font-family:inherit;transition:opacity .15s,transform .1s}.btn:active{transform:scale(.98)}.btn-gradient{background:var(--gradient);color:#fff;width:100%;padding:.78rem 1.5rem;font-size:.95rem}.btn-gradient:hover{opacity:.92}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{opacity:.92}.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#f7f9fc}.link-result{margin-top:0;padding-top:0;border-top:none;display:none}.link-result.visible{display:block}.link-result label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem;text-align:left}.link-row{display:flex;gap:.5rem}.link-row input{flex:1;border:1px solid var(--border);border-radius:10px;padding:.65rem .85rem;font-size:.9rem;font-family:inherit;background:#f8fafc}.helper-text{margin:.85rem 0 0;font-size:.85rem;color:var(--text-muted);text-align:left}.layout{display:grid;grid-template-columns:1fr 300px;gap:1.25rem;align-items:start}@media(max-width:840px){.layout{grid-template-columns:1fr}}.panel{background:var(--card);border-radius:16px;box-shadow:0 2px 12px #0000000f;overflow:hidden;border:1px solid var(--border)}.chat-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.chat-header-info{font-weight:600;font-size:.95rem}.role-badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.role-badge.host{background:#0066ff1f;color:var(--blue)}.role-badge.guest{background:#00d2b426;color:#009980}.room-id{font-size:.75rem;color:var(--text-muted);font-weight:400}.chat-messages{min-height:280px;max-height:min(52vh,420px);overflow-y:auto;padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:.85rem}.chat-messages.empty:after{content:"Say hello — your message is checked before it sends.";display:block;text-align:center;color:var(--text-muted);font-size:.9rem;padding:2rem 1rem}.bubble{max-width:85%;padding:.7rem 1rem;border-radius:16px;font-size:.95rem;word-break:break-word}@keyframes fade-in-soft{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.bubble-enter,.intervention-enter{animation:fade-in-soft .24s ease-out both}@media(prefers-reduced-motion:reduce){.bubble-enter,.intervention-enter{animation:none}}.bubble.other{align-self:flex-start;background:var(--guest-bubble);color:var(--guest-text);border-bottom-left-radius:4px}.bubble.self{align-self:flex-end;background:var(--host-bubble);color:#fff;border-bottom-right-radius:4px}.bubble.self.guest-self{background:linear-gradient(135deg,#00b894,var(--teal))}.bubble-meta{font-size:.7rem;opacity:.8;margin-bottom:.2rem}.bubble.self .bubble-meta{text-align:right}.intervention-slot{padding:0 1.25rem}.intervention{margin:.4rem 0 .35rem;padding:1.15rem 1.2rem;border-radius:14px;border:1px solid var(--border);box-shadow:0 4px 14px #00000012}.intervention.caution{background:var(--warn-bg);border-color:var(--warn-border)}.intervention.blocked{background:var(--block-bg);border-color:var(--block-border)}.intervention h3{margin:0;font-size:1rem;font-weight:700}.interception-note{margin:.35rem 0 .75rem;font-size:.8rem;color:var(--text-muted)}.why-flag-label{margin:0 0 .2rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.flag-reason{margin:0 0 .85rem;font-size:.87rem;color:#6b7280}.compare{margin:0 0 1rem;padding:.75rem .85rem;background:#ffffffb8;border-radius:10px;border:1px solid rgba(0,0,0,.06)}.compare-line{margin:0 0 .4rem;font-size:.86rem}.compare-line:last-child{margin-bottom:0}.compare-line .label{font-weight:600;color:var(--text-muted);font-size:.8rem}.intervention-actions{display:flex;flex-wrap:wrap;gap:.55rem}.chat-composer{border-top:1px solid var(--border);background:#fafbfc}.try-these{padding:.65rem 1.25rem .35rem}.try-these-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.45rem}.try-these-pills{display:flex;flex-wrap:wrap;gap:.4rem}.pill-btn{cursor:pointer;border:1px solid var(--border);background:#fff;color:var(--text);border-radius:999px;padding:.4rem .8rem;font-size:.82rem;font-family:inherit}.pill-btn:hover{background:#f3f4f6}.chat-input-row{display:flex;gap:.5rem;padding:.65rem 1.25rem 0}.chat-input-row input{flex:1;border:1px solid var(--border);border-radius:10px;padding:.65rem .85rem;font-size:.95rem;font-family:inherit;outline:none}.chat-input-row input:focus{border-color:var(--blue)}.chat-input-row input:disabled{opacity:.6}.powered-by{margin:0;text-align:center;padding:4px 1.25rem .65rem;color:#8b93a1;font-size:.68rem;font-weight:500;letter-spacing:.01em}.brand-chatbff{font-weight:700;letter-spacing:.01em;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.health-panel{padding:1.25rem}.health-panel h2{margin:0 0 1rem;font-size:1.05rem;font-weight:700}.health-status{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;border-radius:12px;background:#f8fafc;border:1px solid var(--border);margin-bottom:1rem}.health-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.health-dot.healthy{background:var(--healthy)}.health-dot.tense{background:var(--tense)}.health-dot.escalating{background:var(--escalating)}.health-label{font-weight:700;font-size:.95rem}.health-desc{font-size:.8rem;color:var(--text-muted);margin-top:.1rem}.flags-section h3{margin:0 0 .6rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.flags-list{list-style:none;margin:0;padding:0}.flags-list li{font-size:.85rem;color:var(--text-muted);padding:.4rem 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.5rem}.flags-list li:last-child{border-bottom:none}.flags-list li:before{content:"•";color:var(--tense);font-weight:700}.flags-list.empty li{color:#aab0bc;font-style:italic}.flags-list.empty li:before{content:none}.top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.top-bar .logo{margin:0}.top-bar a{font-size:.85rem;color:var(--blue);text-decoration:none;font-weight:500}.top-bar a:hover{text-decoration:underline}.sending-indicator{font-size:.8rem;color:var(--text-muted);padding:0 1.25rem .5rem;display:none}.sending-indicator.visible{display:block}.open-chat-link{display:inline-block;text-decoration:none}.app-layout{min-height:100vh;display:flex;flex-direction:column}.app-main{flex:1}.site-footer{text-align:center;padding:1.25rem .75rem 1.5rem}.site-footer p{margin:0 auto;color:#b4bcc8;font-size:.6rem;font-weight:400;line-height:1.4;letter-spacing:.015em;white-space:nowrap}@media(max-width:520px){.site-footer p{font-size:clamp(.52rem,2.2vw,.58rem)}}.site-footer a{color:#9eb8e8;text-decoration:none;font-weight:400;transition:color .15s ease}.site-footer a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:2px}.api-page{max-width:720px}.api-top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.api-top-bar .logo{margin:0}.api-back-link{font-size:.85rem;color:var(--blue);text-decoration:none;font-weight:500}.api-back-link:hover{text-decoration:underline}.api-hero{text-align:center;margin-bottom:2rem}.api-eyebrow{margin:0 0 .5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.api-hero h1{margin:0 0 .75rem;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}.api-subtitle{margin:0;color:var(--text-muted);font-size:1.05rem;line-height:1.55;max-width:36rem;margin-inline:auto}.api-section{padding:1.35rem 1.4rem;margin-bottom:1rem}.api-section h2{margin:0 0 1rem;font-size:1.05rem;font-weight:700}.api-steps{margin:0;padding-left:1.25rem;color:var(--text-muted);line-height:1.7}.api-steps li{padding:.15rem 0}.api-endpoint{display:flex;flex-direction:column;gap:.85rem}.api-endpoint-header{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.http-method{display:inline-block;padding:.25rem .55rem;border-radius:6px;font-size:.72rem;font-weight:700;letter-spacing:.04em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.http-method.post{background:#0066ff1f;color:var(--blue)}.api-path{font-size:.9rem;color:var(--text);background:#f4f7fb;padding:.3rem .55rem;border-radius:6px;border:1px solid var(--border)}.code-block{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#f8fafc}.code-block-label{padding:.45rem .85rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:#f0f4f8;border-bottom:1px solid var(--border)}.code-block pre{margin:0;padding:.85rem 1rem;overflow-x:auto;font-size:.82rem;line-height:1.5;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#1e293b}.code-block code{white-space:pre}.api-use-cases{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.api-use-cases li{padding:.55rem .75rem;background:#f8fafc;border:1px solid var(--border);border-radius:10px;font-size:.9rem;color:var(--text-muted)}.api-note p{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.6}.api-note a{color:var(--blue);text-decoration:none;font-weight:500}.api-note a:hover{text-decoration:underline}.api-cta{text-align:center;padding:1.75rem 1.4rem;margin-bottom:.5rem}.api-cta p{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text)}.api-cta-btn{display:inline-block;width:auto;text-decoration:none}@media(max-width:520px){.api-section{padding:1.15rem 1rem}.api-endpoint-header{align-items:flex-start;flex-direction:column}}
