/* Insights board (ops §16b). Scoped stat row + status pills. */
.qfl-statrow { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0; }
.qfl-stat {
  flex: 1 1 120px; min-width: 120px; padding: 12px 14px;
  border: 1px solid var(--border, #e2e8f0); border-radius: 10px; background: var(--card, #fff);
}
.qfl-stat__value { font-size: 22px; font-weight: 600; line-height: 1.1; }
.qfl-stat__label { font-size: 12px; color: var(--muted, #64748b); margin-top: 4px; }
.qfl-stat--ok .qfl-stat__value { color: #1f883d; }
.qfl-stat--warn .qfl-stat__value { color: #b45309; }
.qfl-stat--bad .qfl-stat__value { color: #dc2626; }

.qfl-pill {
  display: inline-block; padding: 1px 8px; border-radius: 999px;
  font-size: 12px; font-weight: 500; white-space: nowrap;
}
.qfl-pill--ok { background: #dcfce7; color: #166534; }
.qfl-pill--warn { background: #fef3c7; color: #92400e; }
.qfl-pill--bad { background: #fee2e2; color: #991b1b; }
.qfl-pill--muted { background: #f1f5f9; color: #64748b; }
.qfl-pill--new { background: #dbeafe; color: #1e40af; }
.qfl-pill--check { background: #ede9fe; color: #5b21b6; }

/* Insights docs pages (Query API guide + legacy inventory). */
.qfl-note {
  border: 1px solid var(--border, #e2e8f0); border-left: 3px solid #2563eb;
  background: var(--note-bg); border-radius: 8px; padding: 10px 14px; margin: 14px 0;
  font-size: 13px; line-height: 1.5;
}
.qfl-code { position: relative; margin: 10px 0; }
.qfl-code pre {
  margin: 0; padding: 12px 14px; background: #0f172a; color: #e2e8f0;
  border-radius: 8px; overflow-x: auto; font-family: ui-monospace, monospace;
  font-size: 12.5px; line-height: 1.5; white-space: pre;
}
.qfl-copy {
  position: absolute; top: 8px; right: 8px; padding: 2px 10px;
  border: 1px solid #334155; background: #1e293b; color: #cbd5e1;
  border-radius: 6px; font-size: 11px; cursor: pointer;
}
.qfl-copy:hover { background: #334155; }

/* Editable inventory (Insights Apps): status select + note input. */
.qfl-status-select, .qfl-note-input {
  width: 100%; padding: 4px 6px; border: 1px solid var(--border, #e2e8f0);
  border-radius: 6px; font: inherit; font-size: 12.5px; background: var(--card); color: var(--fg);
}
.qfl-status-select { border-left-width: 4px; }
.status--new      { border-left-color: #2563eb; color: #1e40af; }
.status--upgraded { border-left-color: #16a34a; color: #166534; }
.status--check    { border-left-color: #7c3aed; color: #5b21b6; }
.status--legacy   { border-left-color: #d97706; color: #92400e; }
.status--remove   { border-left-color: #dc2626; color: #991b1b; }
.status--removed  { border-left-color: #94a3b8; color: #64748b; text-decoration: line-through; }
:root[data-theme="dark"] .status--new      { color: #93c5fd; }
:root[data-theme="dark"] .status--upgraded { color: #86efac; }
:root[data-theme="dark"] .status--legacy   { color: #fcd34d; }
:root[data-theme="dark"] .status--remove   { color: #fca5a5; }
:root[data-theme="dark"] .status--removed  { color: #94a3b8; }
.qfl-status-select:focus, .qfl-note-input:focus { outline: 2px solid #93c5fd; outline-offset: 0; }

.qfl-cell--ok { color: #1f883d; }
.qfl-cell--warn { color: #b45309; }
.qfl-cell--bad { color: #dc2626; font-weight: 600; }
.qfl-cell--muted { color: var(--muted, #64748b); }

/* Assets library form (§16b). */
.qfl-assets__new { border: 1px solid var(--border, #e2e8f0); border-radius: 10px; padding: 14px; margin: 12px 0 20px; }
.qfl-assets__form { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.qfl-assets__form label, .qfl-assets__new > label { display: flex; flex-direction: column; font-size: 12px; color: var(--muted, #64748b); gap: 3px; }
.qfl-assets__form input, .qfl-assets__form select, .qfl-assets__new textarea {
  padding: 6px 8px; border: 1px solid var(--border, #e2e8f0); border-radius: 6px; font: inherit; width: 100%;
}
.qfl-assets__new textarea { font-family: ui-monospace, monospace; font-size: 12px; }
.qfl-btn--small { padding: 2px 8px; font-size: 12px; }
