/* ═══ §2 · SHARED · TAP TARGETS ═══════════════════════════════════════════════════════
   Every DISCRETE control answers to at least 44×44 CSS px — the finger, not the ink. The
   control keeps the size it is drawn at; a transparent ::after grows only the HIT box around
   its centre, so nothing on screen moves.

   NOT in this list, deliberately: LIST ROWS (.race-bar · .home-portfolio-row ·
   .home-signal-row · .sfti-grid-row · .scanner-modal-row · .replay-row). A row's hit area is
   bounded by the row above and below it — growing one steals the next, and a list that fires
   the wrong row is worse than a short one.

   PACKED GROUPS (.council-chip · .replay-pill · .replay-speed · .tf-btn) cannot take an
   invisible overlay either — their neighbours are 4–6px away, so the overlay would sit on the
   chip beside them. They take the 44 FOR REAL, in flow. Form controls render no
   pseudo-element, so they take it for real too. */

.race-why-btn, .race-rewind-btn, .statik-chat-trigger, .status-brand, #header-regime,
.modal-close, .modal-grabber, .toggle-track,
.composite-modal-close, .council-close,
.theater-fs-btn, .log-det-refresh-btn, .holo-btn {
  position: relative;
  touch-action: manipulation;
}
.race-why-btn::after, .race-rewind-btn::after, .statik-chat-trigger::after,
.status-brand::after, #header-regime::after,
.modal-close::after, .modal-grabber::after, .toggle-track::after,
.composite-modal-close::after, .council-close::after,
.theater-fs-btn::after, .log-det-refresh-btn::after, .holo-btn::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: max(100%, 44px);
  height: max(100%, 44px);
  /* purely a hit box — it never paints. Where two overlays touch, the later element in the DOM
     wins the hit test, which is why the modal header sits after the grabber. */
  background: none;
  pointer-events: auto;
}
.modal-btn, .settings-btn, .search-input {
  min-height: 44px;
  touch-action: manipulation;
}
.council-chip, .replay-pill, .replay-speed, .tf-btn { touch-action: manipulation; }

