/**
 * ask.css
 * ----------------------------------------------------------------------------
 * Styles for the "Ask your data" interface (modules/dashboard.js). Linked
 * in index.html alongside the other stylesheets. Follows the same rule as
 * components.css: no hard-coded colors/spacing, only design tokens from
 * variables.css, so this respects the light/dark theme engine for free.
 */

.ask-composer {
  display: flex;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}

.ask-composer .ask-input {
  flex: 1;
}

.ask-history {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  max-height: 60vh;
  overflow-y: auto;
}

.ask-turn {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.ask-turn__label {
  display: block;
  font-size: var(--text-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink-faint);
  margin-bottom: var(--space-1);
}

.ask-turn__question p {
  margin: 0;
  font-weight: 600;
  color: var(--color-ink);
}

.ask-turn__answer-body p {
  margin: 0 0 var(--space-3);
}

.ask-status {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-style: italic;
  color: var(--color-ink-muted);
}

.ask-status--error {
  font-style: normal;
  color: var(--color-danger);
}

.ask-turn__sources {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin-top: var(--space-2);
}

.ask-source {
  border-top: var(--border-width) solid var(--color-border);
  padding-top: var(--space-3);
}

.ask-source__meta {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  margin-bottom: var(--space-2);
}

.ask-source__params {
  color: var(--color-ink-faint);
  font-family: var(--font-mono);
}

.ask-source__error {
  color: var(--color-danger);
  font-size: var(--text-sm);
  margin-bottom: var(--space-2);
}
