/* Forward comparison panel. Namespaced .fw-* so it cannot collide with
 * style.css, theme-v4.css, cas.css or phase.css.
 * Colour means one thing: sign of money. Book identity is carried by its
 * letter and label, never by colour, so B cannot look "good" by hue alone. */
.fwd-card { display: flex; flex-direction: column; gap: 10px; }
.fw-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.fw-head .label { flex: 1 1 auto; }
.fw-meta { font-size: 10px; color: var(--text-dimmer); font-variant-numeric: tabular-nums; }
.fw-phase { font-size: 11px; color: var(--text-dim); line-height: 1.4; }
.fw-phase b { color: var(--text); font-weight: 600; }
.fw-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
table.fw-t { width: 100%; border-collapse: collapse; font-size: 11px;
  font-variant-numeric: tabular-nums; }
table.fw-t th { font-size: 9px; letter-spacing: .05em; text-transform: uppercase;
  font-weight: 600; color: var(--text-dimmer); text-align: right; padding: 3px 5px;
  white-space: nowrap; border-bottom: 1px solid var(--border); }
table.fw-t th:first-child, table.fw-t td:first-child { text-align: left; }
table.fw-t td { padding: 5px; text-align: right; color: var(--text); white-space: nowrap;
  border-bottom: 1px solid var(--border); }
.fw-book { font-weight: 700; }
.fw-sub { display: block; font-size: 9px; font-weight: 400; color: var(--text-dimmer); }
.fw-pos { color: #6ee7b7; }
.fw-neg { color: #fca5a5; }
.fw-dim { color: var(--text-dimmer); }
.fw-chip { display: inline-block; font-size: 9px; font-weight: 600; letter-spacing: .04em;
  padding: 1px 6px; border-radius: 999px; border: 1px solid var(--border);
  color: var(--text-dim); background: var(--bg-card-alt); }
.fw-chip.warn { color: #fcd34d; border-color: #5b4a12; }
.fw-chip.bad { color: #fca5a5; border-color: #5b1d1d; }
.fw-last { font-size: 10px; color: var(--text-dim); line-height: 1.5; }
.fw-note { font-size: 9px; color: var(--text-dimmer); line-height: 1.45; }
.fw-empty { font-size: 11px; color: var(--text-dimmer); padding: 6px 0; }
