/* ai-chat.css — the AI parts of the Ask tab (chat-ui.js / ai-chat.js).
   Base Ask styles live in styles.css; this file only adds and adjusts. */

/* Bubbles sit on the logical sides, so right-to-left languages mirror them. */
.ask-user { margin-left: 0; margin-inline-start: auto; border-radius: 14px; border-end-end-radius: 3px; }
.ask-bot { border-radius: 14px; border-end-start-radius: 3px; }
.ask-msg ul, .ask-msg ol { margin: .4em 0; padding-left: 0; padding-inline-start: 1.25em; }
.ask-msg ol { padding-inline-start: 1.5em; }
.ask-msg li { margin: .22em 0; }
.ask-msg a { color: var(--primary-dark); text-decoration: underline; overflow-wrap: anywhere; }
.ask-user a { color: #fff; }
.ask-msg { overflow-wrap: break-word; }
.ask-ai { max-width: 94%; }

/* Screen-reader-only text. */
.aic-sr {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* One-time note about AI answers. */
.aic-note {
  flex: none; display: flex; gap: 10px; align-items: center;
  background: var(--primary-soft); color: var(--ink-2);
  border-radius: var(--radius-sm); padding: 9px 11px; margin: 0 0 10px;
  font-size: .8rem; line-height: 1.4;
}
.aic-note p { margin: 0; flex: 1; }
.aic-note a { color: var(--primary-dark); white-space: nowrap; }
.aic-note .btn { flex: none; }
.aic-note.hidden { display: none; }

/* Confirmation card for a change the assistant wants to make. */
.aic-card {
  margin: 0 0 13px; padding: 12px 13px; max-width: 94%;
  background: var(--surface); border: 1px solid var(--line-2);
  border-inline-start: 4px solid var(--primary);
  border-radius: var(--radius-sm); box-shadow: var(--shadow);
  font-size: .9rem;
}
.aic-q { margin: 0 0 6px; font-weight: 650; color: var(--ink); }
.aic-items { list-style: none; margin: 0 0 10px; padding: 0; color: var(--ink-2); }
.aic-items li { margin: 2px 0; overflow-wrap: anywhere; }
.aic-items li:first-child { font-weight: 600; color: var(--ink); }
.aic-hint { margin: -4px 0 10px; font-size: .78rem; color: var(--muted); }
.aic-btns { display: flex; gap: 8px; flex-wrap: wrap; }
.aic-btns .btn { min-height: 40px; }
.aic-status { margin: 0; font-size: .82rem; color: var(--muted); }
.aic-status:empty { display: none; }
.aic-yes .aic-status { color: var(--good); font-weight: 600; }
.aic-yes .aic-err { color: var(--critical); font-weight: 400; }
.aic-card.aic-no, .aic-card.aic-superseded { opacity: .75; border-inline-start-color: var(--line-2); }

/* "Opened Dates" and similar one-liners. */
.aic-line { margin: 0 0 13px; text-align: center; font-size: .76rem; color: var(--muted); }

.aic-retry { display: block; margin-top: 8px; }
