/* Quick-ask: the chip that follows a selection, and the popover it opens.
 *
 * Both are global, like the citation card: there is one of each, and they sit
 * on the body rather than in a view. The answer inside is prose, styled once
 * with the conversations' in prose.css.
 */

::highlight(quick-ask) { background-color: var(--accent-wash); }

#selection-bar {
  position: fixed;
  z-index: 41;
  display: inline-flex;
  align-items: center;
  gap: 1px;
  height: 30px;
  padding: 0 2px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--raised);
  box-shadow: 0 6px 18px var(--shadow-cast);
  opacity: 0;
  transform: translateY(2px);
  transition: opacity var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);
}
#selection-bar.shown { opacity: 1; transform: none; }
#selection-bar .sel-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 24px;
  padding: 0 9px 0 7px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--text2);
  font: 600 var(--ui-small) var(--ui);
  cursor: pointer;
  transition: color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);
}
#selection-bar .sel-btn:not(:has(span)) { padding: 0 7px; }
#selection-bar .sel-btn:hover { color: var(--text); background: var(--surface-hover); }
#selection-bar .sel-btn .icon { width: 14px; height: 14px; color: var(--accent); }
#selection-bar .sel-btn:not(#quick-ask-chip) .icon { color: var(--text3); }
#selection-bar .sel-btn:hover .icon { color: var(--accent); }

#quick-ask {
  position: fixed;
  z-index: 42;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  background: var(--raised);
  box-shadow: 0 16px 40px var(--shadow-cast);
  color: var(--text);
  font-family: var(--ui);
  opacity: 0;
  transform: translateY(3px);
  transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease);
}
#quick-ask.shown { opacity: 1; transform: none; }

#quick-ask .qa-head { display: flex; align-items: center; gap: 6px; padding: 7px 8px 4px 12px; }
#quick-ask .qa-title { display: inline-flex; align-items: center; gap: 6px; font-size: var(--ui-small); font-weight: 600; color: var(--text2); }
#quick-ask .qa-title .icon { width: 14px; height: 14px; color: var(--accent); }
#quick-ask .qa-spacer { flex: 1; }
#quick-ask .qa-btn {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  flex: none;
  border: 0;
  border-radius: var(--radius-sm);
  background: transparent;
  color: var(--text3);
  cursor: pointer;
}
#quick-ask .qa-btn:hover { background: var(--soft); color: var(--text); }
#quick-ask .qa-btn .icon { width: 15px; height: 15px; }
#quick-ask .qa-promote {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 24px;
  padding: 0 8px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: transparent;
  color: var(--text2);
  font: 500 var(--ui-small) var(--ui);
  cursor: pointer;
}
#quick-ask .qa-promote[hidden] { display: none; }
#quick-ask .qa-promote:hover { background: var(--surface-hover); color: var(--text); }
#quick-ask .qa-promote .icon { width: 13px; height: 13px; }

#quick-ask .qa-quote {
  margin: 2px 12px 8px;
  padding: 2px 0 2px 10px;
  border-left: 3px solid var(--accent);
  color: var(--text2);
  font-size: var(--ui-small);
  line-height: 1.45;
  white-space: pre-wrap;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#quick-ask .qa-thread {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
  overflow-y: auto;
  padding: 0 12px;
}
#quick-ask .qa-thread:empty { display: none; }
#quick-ask .qa-q {
  align-self: flex-end;
  max-width: 85%;
  padding: 6px 10px;
  border-radius: var(--radius-md);
  background: var(--user-bubble);
  font-size: var(--ui-size);
  line-height: 1.45;
  white-space: pre-wrap;
  overflow-wrap: break-word;
}
#quick-ask .qa-a { font-size: var(--ui-size); line-height: 1.55; --block-gap: 0.6em; }
#quick-ask .qa-thinking { color: var(--text3); font-size: var(--ui-small); }

#quick-ask .qa-error {
  margin: 8px 12px 0;
  padding: 6px 10px;
  border-left: 3px solid var(--danger);
  border-radius: var(--radius-sm);
  background: var(--surface);
  color: var(--text2);
  font-size: var(--ui-small);
}
#quick-ask .qa-error[hidden] { display: none; }

#quick-ask .qa-form {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  margin: 10px 10px 0;
  padding: 4px 4px 4px 10px;
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  background: var(--input-bg);
}
#quick-ask .qa-form:focus-within { border-color: var(--accent); }
#quick-ask textarea {
  flex: 1;
  min-height: 28px;
  padding: 5px 0;
  border: 0;
  outline: none;
  resize: none;
  background: transparent;
  color: var(--text);
  font: var(--ui-size) / 1.4 var(--ui);
}
#quick-ask textarea::placeholder { color: var(--text3); }
#quick-ask .qa-btn.send { background: var(--accent); color: var(--accent-text); }
#quick-ask .qa-btn.send:hover { background: var(--accent-hover); color: var(--accent-text); }
#quick-ask .qa-btn.send.busy { background: var(--surface-hover); color: var(--text); }

#quick-ask .qa-hint { padding: 6px 12px 9px; color: var(--text3); font-size: var(--ui-meta); }
