/* ============================================================
   AI INSIGHTS PAGE  —  Scoped styles, no global overrides.
   Small local accent for "pending / not yet tracked" state that
   the shared token set has no equivalent for — scoped to this
   page only, not added to the global token file.
   ============================================================ */
.qai-page{
  --qai-pending:      #7C6FE0;
  --qai-pending-bg:   rgba(124, 111, 224, 0.10);
}

.qai-icon-img{display:inline-block!important;vertical-align:middle;flex-shrink:0;filter:brightness(0) opacity(0.82)}

/* ── Page header ─────────────────────────────────────────── */
.qai-page__head{margin-bottom:var(--space-6)}
.qai-page__title{font-size:var(--text-3xl);font-weight:var(--weight-bold);letter-spacing:-.01em;margin:0 0 4px;color:var(--text-primary)}
.qai-page__sub{font-size:var(--text-base);color:var(--text-secondary);margin:0;max-width:56ch}

/* ── Capability card grid ────────────────────────────────── */
.qai-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5);margin-bottom:var(--space-6)}
@media (max-width:1100px){.qai-grid{grid-template-columns:1fr}}

.qai-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);box-shadow:var(--shadow-xs);min-height:0}
.qai-card--pending{background:var(--surface-2)}
.qai-card--loading{align-items:flex-start}

.qai-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}
.qai-card__id{display:flex;align-items:center;gap:10px}
.qai-card__id .qai-icon-img{width:20px;height:20px}
.qai-card__icon{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.qai-card__icon svg{width:17px;height:17px}
.qai-card__icon--pending{background:var(--qai-pending-bg);color:var(--qai-pending)}
.qai-card__icon--brand{background:var(--brand-muted);color:var(--brand)}
.qai-card__name{font-weight:var(--weight-semibold);font-size:var(--text-lg);color:var(--text-primary)}

.qai-chip{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-xs);font-weight:var(--weight-medium);
  padding:3px 9px;border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0}
.qai-chip::before{content:"";width:5px;height:5px;border-radius:50%}
.qai-chip--live{background:var(--success-bg);color:var(--success)}
.qai-chip--live::before{background:var(--success)}
.qai-chip--pending{background:var(--qai-pending-bg);color:var(--qai-pending)}
.qai-chip--pending::before{background:var(--qai-pending)}

.qai-card__desc{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.45}

.qai-card__metric{display:flex;align-items:baseline;gap:var(--space-3);min-height:34px}
.qai-card__figure{font-size:2.1rem;font-weight:var(--weight-bold);letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;color:var(--text-primary)}
.qai-card__figure--dim{color:var(--text-muted)}
.qai-card__trend{display:flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:var(--weight-medium);
  font-family:var(--font-mono)}
.qai-card__trend--down{color:var(--error)}
.qai-card__trend--up{color:var(--success)}
.qai-card__trend--flat{color:var(--text-muted)}
.qai-spark{margin-left:auto;flex-shrink:0}

.qai-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.qai-table th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);
  font-weight:var(--weight-medium);padding:0 0 6px;border-bottom:1px solid var(--border)}
.qai-table td{padding:7px 0;border-bottom:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-mono);
  font-variant-numeric:tabular-nums}
.qai-table tr:last-child td{border-bottom:none}
.qai-table th.num,.qai-table td.num{text-align:right;padding-left:var(--space-3);min-width:44px}
.qai-td-name{color:var(--text-primary);font-weight:var(--weight-medium);font-family:var(--font-sans)!important}
.qai-rate--bad{color:var(--error);font-weight:var(--weight-semibold)}
.qai-rate--good{color:var(--success);font-weight:var(--weight-semibold)}
.qai-ghost-row td{color:var(--text-muted)}

.qai-empty{font-size:var(--text-sm);color:var(--text-muted);margin:0;line-height:1.5}

.qai-card__foot{margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.qai-card__link{font-size:var(--text-sm);color:var(--brand);font-weight:var(--weight-medium);text-decoration:none}
.qai-card__link:hover{text-decoration:underline}
.qai-card__note{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}

/* ── Needs attention ─────────────────────────────────────── */
.qai-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);margin-bottom:var(--space-6)}
.qai-section__head{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}
.qai-section__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);margin:0 0 2px;color:var(--text-primary)}
.qai-section__count{background:var(--error-bg);color:var(--error);font-size:var(--text-xs);font-weight:var(--weight-semibold);
  border-radius:var(--radius-full);padding:2px 8px;margin-left:6px}
.qai-section__sub{font-size:var(--text-sm);color:var(--text-muted);margin:0}

.qai-insight{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);
  border-bottom:1px solid var(--border)}
.qai-insight:last-child{border-bottom:none}
.qai-insight__dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0}
.qai-insight__dot--warn{background:var(--warning)}
.qai-insight__dot--ok{background:var(--success)}
.qai-insight__dot--pending{background:var(--qai-pending)}
.qai-insight__body{flex:1;min-width:0}
.qai-insight__title{font-weight:var(--weight-medium);font-size:var(--text-base);margin:0 0 3px;color:var(--text-primary)}
.qai-insight__desc{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.5}
.qai-insight__desc code{font-family:var(--font-mono);font-size:.85em;background:var(--surface-2);padding:1px 5px;border-radius:4px}
.qai-insight__action{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--brand);text-decoration:none;
  white-space:nowrap;flex-shrink:0;margin-top:1px}
.qai-insight__action:hover{text-decoration:underline}

/* ── Data sources footnote ───────────────────────────────── */
.qai-sources{border:1px dashed var(--border-hi);border-radius:var(--radius-lg);padding:var(--space-5);background:var(--surface-2)}
.qai-sources__title{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0 0 var(--space-3);
  text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}
.qai-sources__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.qai-sources__item h4{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0 0 4px;color:var(--text-primary)}
.qai-sources__item p{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.5}
.qai-sources__item code{font-family:var(--font-mono);font-size:.82em;background:var(--surface);border:1px solid var(--border);
  padding:1px 5px;border-radius:4px;color:var(--text-primary)}
@media (max-width:900px){.qai-sources__grid{grid-template-columns:1fr}}
