/* Oliver: a quiet reading surface, useful starting points and one composer. */
body.ux-r311.ol-assistant-active #page-assistant .assistant-chat-panel {
  background:var(--ux-bg)!important; border-color:transparent!important; box-shadow:none!important;
}
body.ux-r311.ol-assistant-active #page-assistant .assistant-chat-panel::before,
body.ux-r311.ol-assistant-active #page-assistant .assistant-chat-panel::after { background:none!important; box-shadow:none!important; }
body.ux-r311.ol-assistant-active #page-assistant .assistant-conversation-bar { background:var(--ux-bg)!important; border-color:var(--ux-line)!important; }
body.ux-r311 #page-assistant .assistant-conversation-mark { color:var(--primary-light); background:var(--primary-dim); box-shadow:none; }
body.ux-r311 #page-assistant .assistant-conversation-copy strong { color:var(--ux-text); }
body.ux-r311 #page-assistant .assistant-conversation-copy small { color:var(--ux-muted); }
body.ux-r311.ol-assistant-active #page-assistant .chat-box { gap:16px!important; }
body.ux-r311 #page-assistant .assistant-welcome {
  display:grid!important; align-content:start; justify-items:start; align-items:start;
  width:min(100%,460px); min-height:0!important; margin:clamp(12px,4vh,36px) auto 16px!important;
  padding:8px 4px!important; gap:12px!important; text-align:left;
}
body.ux-r311 #page-assistant .assistant-welcome .assistant-empty-icon {
  width:44px; height:44px; border:0; border-radius:var(--r);
  background:var(--primary-dim); box-shadow:none;
}
body.ux-r311 #page-assistant .assistant-welcome .assistant-empty-icon svg { width:28px; height:28px; }
body.ux-r311 #page-assistant .assistant-welcome h3 { margin:4px 0 0; color:var(--ux-text); font-size:clamp(20px,3vw,24px); font-weight:750; line-height:1.3; letter-spacing:-.02em; }
body.ux-r311 #page-assistant .assistant-welcome > p { margin:0; max-width:40ch; color:var(--ux-muted); font-size:14px; line-height:1.55; }
.assistant-start-options { display:grid; width:100%; gap:8px; margin-top:8px; }
body.ux-r311 #page-assistant .assistant-start-options button {
  display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:46px; width:100%;
  padding:12px 14px; border:1px solid var(--ux-line); border-radius:var(--r-sm);
  background:var(--ux-panel); color:var(--ux-text); text-align:left; font-family:inherit; font-size:13px; font-weight:600; line-height:1.4;
  cursor:pointer; transition:background 140ms ease,border-color 140ms ease;
}
.assistant-start-options button span { min-width:0; overflow-wrap:anywhere; }
.assistant-start-options button svg { width:16px; height:16px; flex:none; color:var(--primary-light); }
body.ux-r311.ol-assistant-active #page-assistant .chat-msg {
  min-width:0; padding:14px 16px!important; font-size:14px!important; line-height:1.65!important;
  overflow-wrap:anywhere; box-shadow:none!important; border-color:transparent!important;
}
body.ux-r311.ol-assistant-active #page-assistant .chat-msg.bot {
  max-width:min(90%,760px)!important; background:var(--ux-panel)!important; color:var(--ux-text)!important;
  border-radius:var(--r) var(--r) var(--r) 6px!important;
}
body.ux-r311.ol-assistant-active #page-assistant .chat-msg.user {
  max-width:min(84%,680px)!important; background:var(--primary)!important; color:var(--on-primary)!important;
  border-radius:var(--r) var(--r) 6px var(--r)!important;
}
body.ux-r311.ol-assistant-active #page-assistant .chat-msg.bot.has-artifact,
body.ux-r311.ol-assistant-active #page-assistant .chat-msg.bot.has-draft,
body.ux-r311.ol-assistant-active #page-assistant .chat-msg.bot.is-chart-only { width:100%!important; max-width:1100px!important; }
body.ux-r311 #page-assistant .chat-rich-text { color:var(--ux-text); line-height:1.65!important; overflow-wrap:anywhere; }
body.ux-r311 #page-assistant .chat-rich-text strong { color:var(--ux-text); }
body.ux-r311 #page-assistant .chat-rich-text :is(p,ul,ol) { margin-block:8px; }
body.ux-r311 #page-assistant .chat-artifact { min-width:0; max-width:100%; background:var(--ux-bg)!important; border-color:var(--ux-line)!important; border-radius:var(--r-sm); box-shadow:none!important; }
body.ux-r311 #page-assistant .chat-artifact.table { overflow-x:auto; }
body.ux-r311 #page-assistant .chat-feedback { margin-top:14px; padding-top:10px; border-top:1px solid var(--ux-line); color:var(--ux-muted); gap:8px; }
body.ux-r311 #page-assistant .chat-feedback button { min-height:36px; padding:8px 12px; border-color:transparent; border-radius:var(--r-sm); background:var(--primary-dim); color:var(--primary-light); line-height:1.35; }
body.ux-r311 #page-assistant .chat-quick-actions { display:flex; flex-wrap:wrap; gap:8px; }
body.ux-r311 #page-assistant .chat-quick-actions button { white-space:normal; overflow-wrap:anywhere; min-width:0; max-width:100%; padding:11px 14px; border-radius:var(--r-sm); }
body.ux-r311 #page-assistant .chat-quick-actions button:not(.danger):not(.primary) { background:var(--primary-dim); color:var(--primary-light); border-color:transparent; }
body.ux-r311 #page-assistant .chat-quick-actions button.primary { background:var(--primary); color:var(--on-primary); border-color:var(--primary); }
body.ux-r311 #page-assistant #assistantComposerForm { background:var(--ux-bg)!important; border-color:transparent!important; box-shadow:none!important; }
body.ux-r311 #page-assistant #assistantComposerForm .chat-input-row.composer {
  padding:5px!important; border:1px solid var(--ux-line)!important; border-radius:var(--r-lg)!important;
  background:var(--ux-panel)!important; gap:5px!important; box-shadow:none!important;
}
body.ux-r311 #page-assistant #assistantComposerForm .chat-input-row.composer:focus-within { border-color:var(--primary-light)!important; }
body.ux-r311 #page-assistant #assistantComposerForm textarea#chatInput { padding:10px 8px!important; background:transparent!important; color:var(--ux-text)!important; border:0!important; outline:0!important; box-shadow:none!important; font-size:14px!important; line-height:1.45!important; }
body.ux-r311 #page-assistant #assistantComposerForm textarea#chatInput::placeholder { color:var(--ux-muted); opacity:1; }
body.ux-r311 #page-assistant :is(#chatImage,#chatMic):not(.recording):not(.listening):not(.voice-ready) { background:transparent!important; color:var(--ux-muted)!important; border-color:transparent!important; box-shadow:none!important; }
body.ux-r311.ol-assistant-active #page-assistant #assistantComposerForm #chatSend { background:var(--primary)!important; color:var(--on-primary)!important; border-color:var(--primary)!important; box-shadow:none!important; }
body.ux-r311 #page-assistant :is(.assistant-start-options button,.chat-feedback button,.chat-quick-actions button,#chatImage,#chatMic,#chatSend):focus-visible { outline:2px solid var(--primary-light); outline-offset:2px; }
@media (hover:hover) {
  body.ux-r311 #page-assistant .assistant-start-options button:hover { background:var(--primary-dim); border-color:var(--primary-light); }
}
@media (max-width:380px) {
  body.ux-r311.ol-assistant-active #page-assistant .chat-msg { padding:12px!important; }
  body.ux-r311 #page-assistant .assistant-welcome { gap:10px!important; }
}
@media (prefers-reduced-motion:reduce) { .assistant-start-options button { transition:none!important; } }
