/* Site assistant. Self-contained dark tokens so it looks the same on every page (the Answerable AI page is cream). */
.pa-open, .pa-panel { --pa-bg: #0c0e11; --pa-ink: #e9e6df; --pa-mute: #9aa3a9; --pa-rule: #3a4147; --pa-acc: #ff5b1f; font: 400 15px/1.5 "Build Archivo", Archivo, Arial, sans-serif; }
.pa-open { position: fixed; z-index: 90; right: 16px; bottom: 16px; min-width: 44px; min-height: 44px; padding: 0 14px; background: var(--pa-bg); color: var(--pa-ink); border: 1px solid var(--pa-rule); border-radius: 0; font: 700 12px/1 "Build Mono", "Courier New", monospace; letter-spacing: .12em; text-transform: uppercase; cursor: pointer; }
.pa-open:hover { border-color: var(--pa-acc); }
.pa-open:focus-visible, .pa-panel button:focus-visible, .pa-panel input:focus-visible, .pa-log:focus-visible, .pa-panel a:focus-visible { outline: 2px solid var(--pa-acc); outline-offset: 2px; }
.pa-panel { position: fixed; z-index: 91; right: 16px; bottom: 16px; width: min(380px, calc(100vw - 32px)); max-height: min(560px, calc(100vh - 32px)); display: flex; flex-direction: column; background: var(--pa-bg); color: var(--pa-ink); border: 1px solid var(--pa-rule); }
.pa-panel[hidden], .pa-open[hidden] { display: none; }
.pa-head { display: flex; justify-content: space-between; align-items: center; padding: 8px 8px 8px 14px; border-bottom: 1px solid var(--pa-rule); }
.pa-x { min-height: 44px; padding: 0 12px; background: none; color: var(--pa-mute); border: 0; font: 700 12px/1 "Build Mono", "Courier New", monospace; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.pa-x:hover { color: var(--pa-ink); }
.pa-note { margin: 0; padding: 10px 14px; color: var(--pa-mute); font-size: 13px; border-bottom: 1px solid var(--pa-rule); }
.pa-log { flex: 1 1 auto; min-height: 120px; overflow-y: auto; padding: 12px 14px; display: grid; gap: 12px; align-content: start; }
.pa-msg p { margin: 0; overflow-wrap: anywhere; }
.pa-me p { color: var(--pa-mute); }
.pa-me p::before { content: "You: "; }
.pa-src { margin-top: 6px !important; font-size: 13px; color: var(--pa-mute); }
.pa-src a { color: var(--pa-ink); text-decoration: underline; text-decoration-color: var(--pa-acc); text-underline-offset: 3px; }
.pa-form { display: flex; border-top: 1px solid var(--pa-rule); }
.pa-form input { flex: 1 1 auto; min-width: 0; min-height: 48px; padding: 0 14px; background: transparent; color: var(--pa-ink); border: 0; border-radius: 0; font: inherit; }
.pa-send { min-height: 48px; padding: 0 16px; background: var(--pa-acc); color: #07080a; border: 0; border-radius: 0; font: 700 12px/1 "Build Mono", "Courier New", monospace; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.pa-send:disabled { opacity: .5; cursor: default; }
@media print { .pa-open, .pa-panel { display: none !important; } }
