/* Coach marks: an amber ring on the real control and a paper card beside it. No full-screen overlay: the film and the controls stay usable. Nothing here animates (the reveal is the one animated moment). */ .root { position: fixed; inset: 0; z-index: 60; pointer-events: none; } .ring { position: fixed; border: 2px solid var(--grease-amber); border-radius: 8px; box-shadow: 0 0 0 4px rgba(240, 169, 46, 0.3), 0 0 0 1px rgba(0, 0, 0, 0.6) inset, 0 0 22px rgba(240, 169, 46, 0.35); pointer-events: none; } .card { position: fixed; pointer-events: auto; padding: 14px 16px 12px; border-radius: 8px; background: var(--report-paper); color: var(--report-ink); border: 1px solid #0d0f11; border-top: 4px solid var(--grease-amber); box-shadow: 0 16px 44px rgba(0, 0, 0, 0.55); font-size: var(--fs-1); } .count { margin: 0 0 4px; font-size: 13px; color: var(--report-ink-muted); } .title { margin: 0 0 6px; font-size: var(--fs-2); font-weight: 700; line-height: 1.25; } .body { margin: 0; line-height: 1.45; } .row { display: flex; align-items: center; gap: 8px; margin-top: 12px; } .spacer { flex: 1; } .skip { background: none; border: none; padding: 4px 0; color: var(--report-ink-muted); text-decoration: underline; cursor: pointer; font-size: var(--fs-1); } .back, .next { padding: 6px 14px; border-radius: var(--radius); border: 1px solid var(--report-ink); background: #fff; color: var(--report-ink); cursor: pointer; font-size: var(--fs-1); } .back:disabled { opacity: 0.4; cursor: default; } .next { background: var(--report-ink); color: #fff; font-weight: 700; } .card button:focus-visible { outline: 2px solid #9a6200; outline-offset: 2px; }