.reagentia-chat { --reagentia-color: #2563eb; font: 16px/1.5 system-ui, sans-serif; color: #172033; isolation: isolate; }
.reagentia-chat *, .reagentia-chat *::before, .reagentia-chat *::after { box-sizing: border-box; }
.reagentia-chat [hidden] { display: none !important; }
.reagentia-chat--inline { width: 100%; max-width: 760px; margin: 1rem auto; }
.reagentia-chat--bubble { position: fixed; right: max(1rem, env(safe-area-inset-right)); bottom: max(1rem, env(safe-area-inset-bottom)); z-index: 1000; }
.reagentia-chat--bubble.reagentia-chat--left { right: auto; left: max(1rem, env(safe-area-inset-left)); }
.reagentia-chat .reagentia-chat__panel { border: 1px solid #cbd5e1; border-radius: 12px; padding: 1rem; background: white; box-shadow: 0 4px 24px #0002; }
.reagentia-chat--bubble .reagentia-chat__panel { width: min(420px, calc(100vw - 2rem)); max-height: calc(100dvh - 6rem); overflow: auto; margin-bottom: .5rem; }
.reagentia-chat .reagentia-chat__title { font: 600 1.1rem/1.4 system-ui, sans-serif; margin: 0 0 .5rem; color: #172033; }
.reagentia-chat .reagentia-chat__status, .reagentia-chat .reagentia-chat__storage { margin: .5rem 0; font-size: .9rem; }
.reagentia-chat .reagentia-chat__notice { margin: .5rem 0; font-size: .8rem; }
.reagentia-chat .reagentia-chat__frame iframe { width: 100%; height: min(60dvh, 640px); min-height: 240px; display: block; border: 0; }
.reagentia-chat button { font: inherit; border: 1px solid var(--reagentia-color); border-radius: 8px; background: var(--reagentia-color); color: white; padding: .65rem 1rem; min-height: 44px; min-width: 44px; cursor: pointer; }
.reagentia-chat button:disabled { opacity: .55; cursor: wait; }
.reagentia-chat .reagentia-chat__close { margin-bottom: .5rem; }
.reagentia-chat a { color: #1d4ed8; text-decoration: underline; }
.reagentia-chat button:focus-visible, .reagentia-chat a:focus-visible { outline: 3px solid #0f172a; outline-offset: 3px; }
@media (max-width: 480px) { .reagentia-chat .reagentia-chat__panel { padding: .75rem; } .reagentia-chat--bubble .reagentia-chat__frame iframe { height: 48dvh; } }
