/* #/formulas — the pricing-approval page. Reference reading, not a dashboard: one column, generous
   measure, and the disagreements carrying the only colour on the page. */
.fx-intro .fx-counts{margin:6px 0 0;font-size:13px}
.fx-h{margin:0 0 6px;font-size:15px;display:flex;align-items:center;gap:8px}
.fx-sub{margin:14px 0 6px;font-size:13px}
.fx-lead{max-width:78ch}
.fx-tally{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 10px}

.fx-finds{display:flex;flex-direction:column;gap:10px}
.fx-find{border:1px solid var(--line);border-left-width:3px;border-radius:10px;padding:10px 12px;
  background:var(--surface-2)}
.fx-find--blocks{border-left-color:var(--danger-vivid)}
.fx-find--prices{border-left-color:var(--warn-vivid)}
.fx-find--stale{border-left-color:var(--line-strong)}
.fx-find-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fx-find-n{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;
  border-radius:50%;background:var(--surface);border:1px solid var(--line);font-size:11px;
  font-variant-numeric:tabular-nums}
.fx-find-d{margin:6px 0 0;max-width:82ch;font-size:12.5px}
/* The evidence is the part a reader checks, so it keeps the monospace and wraps rather than scrolling
   away — a truncated measurement is not evidence. */
.fx-ev{margin:8px 0 0;padding:7px 9px;border-radius:8px;background:var(--surface);
  border:1px solid var(--line);font-size:11.5px;white-space:pre-wrap;word-break:break-word;
  font-family:var(--font-mono)}

.fx-brands{display:flex;flex-direction:column;gap:8px}
.fx-brand{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--surface-2)}
.fx-brand-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%;text-align:left;
  background:none;border:0;padding:2px 0;cursor:pointer;color:inherit;font:inherit}
.fx-brand-h:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}
.fx-caret{margin-left:auto;opacity:.6}
.fx-brand .minitable{margin-top:6px}
.fx-var{margin:10px 0 0;max-width:80ch}
.fx-warn{margin:8px 0 0}

.fx-rules{display:flex;flex-direction:column;gap:8px}
.fx-rule{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;
  background:var(--surface-2);border:1px solid var(--line)}
.fx-rule span{font-size:12.5px;color:var(--ink-muted);max-width:84ch}

/* Decision cards (2026-09-13): the question a person answers, the answers, and what Claude will do with each. */
.fx-q{margin:8px 0 0;padding:8px 10px;border-radius:8px;background:var(--surface);border:1px solid var(--line);
  font-weight:600;max-width:82ch}
.fx-q-k{display:block;margin-bottom:2px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  color:var(--ink-muted)}
.fx-opts{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.fx-opt{display:flex;align-items:flex-start;gap:10px;padding:7px 9px;border-radius:8px;background:var(--surface);
  border:1px solid var(--line)}
.fx-opt-k{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:20px;height:20px;
  border-radius:50%;border:1px solid var(--line-strong);font-size:11px;font-weight:700}
.fx-opt-b{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}
.fx-will{font-size:12.5px;color:var(--ink-muted);max-width:78ch}
.fx-copy{flex:0 0 auto;white-space:nowrap}
.fx-copy.is-copied{border-color:var(--ok-line);color:var(--ok)}
.fx-find--tidy{border-left-color:var(--info-vivid)}
.fx-evd{margin:8px 0 0}
.fx-evd summary{cursor:pointer;font-size:12px;color:var(--ink-muted)}
.fx-row-inuse td{background:var(--ok-soft)}
.fx-offscreen{position:fixed;left:-9999px;top:0;opacity:0}

/* the filter bar (Stage 3a, 2026-09-27): a brand, a search, and "Decisions only" */
.fx-filter-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.fx-filter-row .fx-q{flex:1 1 220px}
.fx-view{display:flex;gap:6px}
.fx-shown{margin:10px 0 0;font-size:12px}
