/* Customer chat material overrides. Loaded after the legacy chat cascade. */
.chat-header { position: relative; isolation: isolate; overflow: hidden; background: color-mix(in srgb, var(--chat-theme) 82%, #0b2f25); border-bottom: 1px solid rgba(255,255,255,.34); box-shadow: inset 0 -1px 0 rgba(255,255,255,.14); }
.chat-header::before { content: ""; position: absolute; inset: -42% 28% -62% -8%; z-index: -1; background: radial-gradient(circle, rgba(255,255,255,.28), rgba(255,255,255,0) 68%); filter: blur(14px); opacity: .7; pointer-events: none; }
.chat-header::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(115deg, rgba(255,255,255,.15), transparent 42%, rgba(255,255,255,.06)); pointer-events: none; }
.header-content { position: relative; z-index: 1; }
.tts-toggle, .handoff-toggle { display: inline-grid; place-items: center; box-sizing: border-box; min-height: 40px; border: 1px solid rgba(255,255,255,.46); background: rgba(255,255,255,.16); box-shadow: inset 0 1px 0 rgba(255,255,255,.22), inset 0 -8px 18px rgba(0,33,23,.09); backdrop-filter: blur(18px) saturate(155%); -webkit-backdrop-filter: blur(18px) saturate(155%); transition: transform .2s ease, background-color .2s ease, border-color .2s ease; }
.tts-toggle { width: 40px; min-width: 40px; padding: 0; aspect-ratio: 1; }
.intent-toggle, .human-toggle { min-width: 72px; padding: 0 12px; color: #fff; }
.intent-toggle { background: rgba(255,255,255,.24); }
.tts-toggle:hover, .handoff-toggle:hover { transform: translateY(-2px); background: rgba(255,255,255,.28); border-color: rgba(255,255,255,.78); }
.voice-button, .send-button { display: grid; place-items: center; box-sizing: border-box; width: 46px; min-width: 46px; height: 46px; min-height: 46px; aspect-ratio: 1 / 1; padding: 0; border-radius: 14px; border: 1px solid rgba(255,255,255,.8); box-shadow: inset 0 1px 0 rgba(255,255,255,.7), inset 0 -10px 18px rgba(0,40,28,.08), 0 6px 14px rgba(12,57,42,.14); transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease; }
.voice-button { color: var(--chat-theme); background: rgba(255,255,255,.72); backdrop-filter: blur(16px) saturate(145%); -webkit-backdrop-filter: blur(16px) saturate(145%); }
.send-button { color: #fff; background: color-mix(in srgb, var(--chat-theme) 90%, #073326); border-color: color-mix(in srgb, var(--chat-theme) 52%, white); }
.voice-button:hover, .send-button:hover { transform: translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.76), inset 0 -10px 18px rgba(0,40,28,.12), 0 9px 18px rgba(12,57,42,.2); }
.voice-button:active, .send-button:active { transform: translateY(0) scale(.96); }
.voice-button svg, .send-button svg { width: 21px; height: 21px; stroke-width: 1.9; }
.chat-authority-panel { border: 1px solid rgba(255,255,255,.58); background: rgba(255,255,255,.38); box-shadow: inset 0 1px 0 rgba(255,255,255,.65), inset 0 -12px 22px rgba(24,93,65,.05); backdrop-filter: blur(20px) saturate(145%); -webkit-backdrop-filter: blur(20px) saturate(145%); }
.chat-authority-head, .chat-citation-list, .chat-citation-empty, .chat-risk-boundaries { display: none !important; }
.chat-ai-note { display: inline-flex; align-items: center; gap: 7px; margin: 1px 0 8px; color: rgba(46,76,65,.72); font-size: 11px; line-height: 1.45; }
.chat-source-badge, .chat-note-dot { display: inline-grid; place-items: center; flex: 0 0 auto; width: 17px; height: 17px; border-radius: 50%; color: var(--chat-theme); background: rgba(255,255,255,.66); box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }
.chat-source-badge { font-size: 11px; }
.chat-note-dot { width: 6px; height: 6px; margin-left: 5px; background: color-mix(in srgb, var(--chat-theme) 60%, white); }
@media (max-width: 520px) { .tts-toggle { width: 36px; min-width: 36px; height: 36px; min-height: 36px; } .intent-toggle, .human-toggle { min-width: 0; padding: 0 10px; } .voice-button, .send-button { width: 42px; min-width: 42px; height: 42px; min-height: 42px; border-radius: 13px; } }
@media (prefers-reduced-motion: reduce) { .tts-toggle, .handoff-toggle, .voice-button, .send-button { transition: none; } .chat-header::before { filter: none; } }
