.tour-layer { position: fixed; inset: 0; pointer-events: none !important; }
.tour-hole { position: fixed; border-radius: var(--radius); outline: var(--focus-ring-w) solid var(--accent); box-shadow: 0 0 0 100vmax var(--scrim); }
.tour-centered { background: var(--scrim); }
.tour-bubble { position: fixed; display: flex; flex-direction: column; gap: var(--sp-3); width: min(var(--rail-w-max), calc(100vw - var(--sp-6))); max-height: calc(100vh - var(--sp-6)); overflow: auto; padding: var(--sp-4); border: var(--border); border-radius: var(--radius-lg); background: var(--surface); color: var(--text); pointer-events: auto; box-shadow: var(--shadow-lg); }
.tour-count { color: var(--text-2); font-size: var(--fs-sm); }
.tour-actions { display: flex; justify-content: flex-end; gap: var(--sp-2); }
.tour-switch[aria-checked="true"] { background: var(--accent-soft); color: var(--accent); }
