/* Compact editorial rhythm, using the tenant's own palette and type settings. */
.live-app .chat-window{position:relative;isolation:isolate}
.live-app .chat-scroll{scroll-behavior:auto!important;overflow-anchor:none;padding:18px clamp(16px,var(--chat-space,24px),28px);overscroll-behavior:contain}
.live-app .chat-scroll .message{animation:none;margin:14px 0 22px}
.live-app .chat-scroll .message-arrival{animation:chat-ink .22s ease-out}
@keyframes chat-ink{from{opacity:.35}to{opacity:1}}
.live-app .chat-top{padding:13px 18px;min-height:65px}
.live-app .assistant-id strong{font-size:13px;line-height:1.4}
.live-app .assistant-id small{font-size:10px;margin-top:3px}
.live-app .mini-mark.vori-avatar{display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 22%,var(--paper));border:1px solid color-mix(in srgb,var(--brand) 10%,transparent);box-shadow:none;overflow:hidden;width:36px;height:36px;border-radius:12px;flex:none}
.live-app .mini-mark.vori-avatar img{display:block;width:100%;height:100%;object-fit:contain}
.live-app .answer-head .mini-mark.vori-avatar{width:27px;height:27px;border-radius:9px}
.live-app .answer-head{gap:7px;margin-bottom:8px;font-size:10px;font-weight:500;line-height:1.3}
.live-app .answer-provider{border:0;background:color-mix(in srgb,var(--brand) 6%,var(--paper));border-radius:4px;padding:2px 4px;font-size:8px;letter-spacing:.5px}
.live-app .answer-body{font-size:var(--chat-size,15px);line-height:var(--chat-leading,1.65);text-wrap:pretty}
.live-app .answer-body p{margin:0 0 .75em}
.live-app .answer-body h3{font-size:1.15em;font-weight:600;line-height:1.35;letter-spacing:-.35px;margin:1.1em 0 .5em}
.live-app .answer-body>h3:first-child{margin-top:0}
.live-app .answer-body h4{font-size:.92em;font-weight:650;letter-spacing:0;margin:1em 0 .45em}
.live-app .answer-body ul,.live-app .answer-body ol{padding-left:1.3em;margin:.45em 0 .85em}
.live-app .answer-body li{padding:0 0 0 .2em;margin:.32em 0}
.live-app .answer-body li>p:last-child{margin-bottom:0}
.live-app .answer-body strong{font-weight:650}
.live-app .answer-body blockquote{margin:.8em 0;padding:10px 14px;border-left:2px solid color-mix(in srgb,var(--brand) 35%,var(--paper));background:color-mix(in srgb,var(--accent) 10%,var(--paper));border-radius:0 10px 10px 0;color:var(--ink)}
.live-app .answer-body blockquote p:last-child{margin:0}
.live-app .answer-body pre{padding:13px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--brand) 4%,var(--paper));overflow:auto;max-width:100%;font-size:.8em;line-height:1.65}
.live-app .answer-body code{font-size:.86em;padding:1px 4px;border-radius:4px;background:color-mix(in srgb,var(--accent) 16%,var(--paper));overflow-wrap:anywhere}
.live-app .answer-body pre code{padding:0;background:none;white-space:pre;overflow-wrap:normal}
.live-app .answer-body .rich-table-wrap{border-radius:10px;margin:.8em 0}
.live-app .answer-body .rich-table-wrap table{border:0;margin:0;border-radius:0}
.live-app .answer-body table{width:100%;border-collapse:separate;border-spacing:0;font-size:.85em;line-height:1.5;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:.65em 0}
.live-app .answer-body th{background:color-mix(in srgb,var(--brand) 5%,var(--paper));font-weight:600}
.live-app .answer-body td,.live-app .answer-body th{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top;min-width:95px}
.live-app .answer-body tr:last-child td{border-bottom:0}
.live-app .answer-body .live-sources{margin:12px 0 0;gap:5px}
.live-app .live-sources .source{font-size:10px;padding:6px 9px;line-height:1.45;border-radius:8px;max-width:100%;white-space:normal;text-align:left}
.live-app .live-sources .vori-web-source{padding:8px 10px;width:auto;flex:1 1 180px}
.live-app .user-bubble{max-width:90%;font-size:calc(var(--chat-size,15px) - 1px);padding:10px 14px;line-height:1.55;border-radius:16px 16px 5px 16px;white-space:pre-wrap}
.live-app .answer-actions{margin-top:9px;gap:4px}
.live-app .answer-actions .btn,.live-app .answer-actions .icon-btn{font-size:10px;min-height:30px;padding:5px 8px;border-radius:8px}
.live-app .answer-actions .icon-btn{width:30px;height:30px}
.live-app .response-trace{margin:7px 0 18px;font-size:10px;color:var(--muted)}
.live-app .g-general-notice{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;padding:6px 9px;margin:10px 0 8px;border-radius:8px;font-size:9px;background:color-mix(in srgb,var(--accent) 13%,var(--paper));border-color:var(--line);color:var(--muted)}
.live-app .g-general-notice b{font-size:9px;color:var(--ink)}
.live-app .g-general-notice span{font-size:9px}
.live-app .chat-window .welcome{padding-top:8px}
.live-app .welcome h1{font-size:clamp(24px,5vw,31px);line-height:1.15;letter-spacing:-1px;margin:12px 0}
.live-app .welcome .mascot-img{width:min(var(--avatar-size,142px),105px);height:auto;margin-bottom:12px}
.live-app .welcome .intro{font-size:13px;line-height:1.65;margin-bottom:20px}
.live-app .suggestions{gap:6px;grid-template-columns:1fr}
.live-app .suggestion{min-height:40px;padding:10px 12px;border-radius:11px;gap:10px;background:color-mix(in srgb,var(--accent) 10%,var(--paper));display:flex;align-items:center}
.live-app .suggestion b{font-size:12px;font-weight:500;line-height:1.4}
.live-app .suggestion svg{width:14px;height:14px;margin:0;opacity:.7;flex:none}
.live-app .welcome-footer{font-size:10px;margin-top:16px}
.live-app .composer-area{position:relative;padding:8px 14px 8px;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.live-app .composer{align-items:flex-end;padding:9px 10px;border-radius:16px;gap:8px}
.live-app .composer textarea{font-size:13px;line-height:1.6;min-height:26px;max-height:108px;padding:3px 2px;resize:none}
.live-app .send{width:34px;height:34px;border-radius:11px;flex:none}
.live-app .composer-meta{padding-top:5px;min-height:30px}
.live-app .conversation-tools{gap:3px}
.live-app .conversation-tool{min-height:28px;padding:5px 7px;font-size:10px;border-radius:8px}
.live-app .conversation-tool svg{width:16px;height:16px}
.live-app .progress-card{padding:14px 8px;gap:12px}
.live-app .progress-card .vori-pulse{width:64px;height:68px;flex:0 0 64px}
.live-app .progress-card .vori-pulse img{width:64px;height:64px}
.live-app .progress-card strong{font-size:13px}
.live-app .progress-card p{font-size:11px;margin-top:5px}
.live-app .progress-topic{display:none}
.live-app .chat-followups{margin-top:14px;display:flex;gap:6px;flex-wrap:wrap;padding-top:11px;border-top:1px solid var(--line)}
.live-app .chat-next-label{flex-basis:100%;color:var(--muted);font-size:9px;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:2px}
.live-app .chat-followup{display:flex;align-items:center;gap:10px;justify-content:space-between;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:8px 11px;min-height:36px;border-radius:11px;font-size:11px;line-height:1.4;text-align:left;transition:background .18s,border-color .18s}
.live-app .chat-followup:hover{background:color-mix(in srgb,var(--accent) 18%,var(--paper));border-color:color-mix(in srgb,var(--brand) 30%,var(--paper))}
.live-app .chat-followup>span:last-child{color:var(--muted);flex:none}
.live-app .chat-jump{position:absolute;z-index:5;right:18px;border:1px solid var(--line);border-radius:20px;background:var(--paper);color:var(--ink);box-shadow:0 3px 14px #152c2012;font-size:10px;padding:8px 12px;cursor:pointer}
.live-app .chat-jump[hidden]{display:none}
.live-app .chat-followup:focus-visible,.live-app .chat-jump:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
@media(pointer:coarse){.live-app .chat-followup,.live-app .suggestion{min-height:44px}.live-app .conversation-tool{min-width:40px;min-height:40px}}
@media(prefers-reduced-motion:reduce){.live-app .chat-scroll .message-arrival{animation:none}}

/* Quiet editorial hierarchy; evidence and next actions remain distinct from prose. */
.live-app .answer-body>p{max-width:76ch}
.live-app .answer-body>h3:first-child{font-size:1.1em;letter-spacing:-.025em;margin-bottom:.65em}
.live-app .answer-section-label{display:block;font-size:10px;letter-spacing:.07em;font-weight:600;color:var(--muted);margin:0 0 7px}
.live-app .answer-next{border-top:1px solid var(--line);margin:16px 0 0;padding-top:12px}
.live-app .answer-next ol{font-size:.91em;margin:0;padding-left:1.5em}
.live-app .answer-next li p{margin-bottom:0}
.live-app .answer-evidence{margin-top:17px;max-width:760px}
.live-app .answer-evidence .live-sources{display:flex;flex-wrap:wrap;margin:0;gap:6px}
.live-app .source-evidence{display:flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--brand) 3%,var(--paper));border:1px solid var(--line);flex:1 1 180px;min-width:0}
.live-app .source-evidence>span:first-of-type{min-width:0;flex:1}
.live-app .source-evidence small{display:block;font-size:9px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}
.live-app .source-evidence>svg{flex:none;opacity:.7}
.live-app .answer-more-sources{font-size:10px;color:var(--muted);margin-top:8px}
.live-app .answer-more-sources summary{cursor:pointer;width:fit-content;padding:4px 0}
.live-app .answer-more-sources[open] .live-sources{margin-top:7px}
.live-app .g-general-notice{margin-bottom:12px;gap:7px;border-radius:9px;font-size:10px}
@media(max-width:480px){.live-app .source-evidence{flex-basis:100%}.live-app .answer-evidence{margin-top:13px}}
