  /* ============================== A3: FIRST-RUN BUILDER COACH (spec §8.2) ==============================
     NO scrim, NO modal — a ring + a small card, both non-blocking. */
  .coach-ring{ position:fixed; z-index:158; pointer-events:none; outline:2px solid var(--brand-600); outline-offset:2px; border-radius:var(--r-card);
    transition:top var(--dur-2) var(--ease-step), left var(--dur-2) var(--ease-step), width var(--dur-2) var(--ease-step), height var(--dur-2) var(--ease-step); } /* spec §3/§6 — no zero-offset halo; the ring is the one allowed layout transition */
  .coach-card{ position:fixed; z-index:158; width:300px; pointer-events:auto; background:var(--surface-default);
    border:1px solid var(--border-strong); border-radius:var(--r-card); box-shadow:var(--shadow-2); padding:16px 18px 12px; }
  .coach-step{ font-size:11px; line-height:13px; font-weight:600; font-stretch:var(--stretch-label); letter-spacing:.08em; text-transform:uppercase; color:var(--text-muted); }
  .coach-title{ font-size:14px; font-weight:600; color:var(--text-primary); margin-top:4px; }
  .coach-body{ font-size:13px; line-height:1.5; color:var(--text-secondary); margin-top:6px; }
  .coach-dots{ display:flex; gap:6px; margin-top:14px; }
  .coach-dot{ width:6px; height:6px; border-radius:50%; background:var(--border-default); }
  .coach-dot.on{ background:var(--brand-600); }
  .coach-foot{ display:flex; align-items:center; gap:8px; margin-top:12px; padding-top:10px; border-top:1px solid var(--border-default); }
  .coach-foot-end{ justify-content:flex-end; }
  .coach-btn-skip{ background:transparent; border:none; color:var(--text-muted); font-size:12.5px; padding:6px 4px; cursor:pointer; }
  .coach-btn-skip:hover{ color:var(--text-secondary); }
  .coach-btn-ghost{ background:transparent; border:1px solid var(--border-control); color:var(--text-secondary); border-radius:var(--r-control); padding:6px 12px; font-size:12.5px; cursor:pointer; }
  .coach-btn-ghost:hover{ border-color:var(--text-secondary); color:var(--text-primary); }
  .coach-btn-primary{ background:var(--brand-600); border:1px solid var(--brand-600); color:var(--text-on-accent); border-radius:var(--r-control); padding:6px 12px; font-size:12.5px; cursor:pointer; font-weight:600; }
  .coach-btn-primary:hover{ background:var(--brand-700); border-color:var(--brand-700); }
  .coach-arrow{ position:absolute; width:10px; height:10px; transform:rotate(45deg); background:var(--surface-default);
    border-left:1px solid var(--border-strong); border-top:1px solid var(--border-strong); }
