/* Тур по сайту (#500) — макет docs/design/onboarding-banner-tour.html */
.ob-spot { position: absolute; z-index: 100000; box-shadow: 0 0 0 9999px rgba(8,8,6,.78); outline: 2px solid var(--accent); outline-offset: 3px; pointer-events: none; transition: all .25s ease; }
.ob-pop { position: absolute; z-index: 100001; width: min(340px, calc(100vw - 32px)); background: var(--surface); border: 1px solid var(--border-hi); border-top: 3px solid var(--accent); box-shadow: var(--shadow); padding: .9rem 1rem 1rem; }
.ob-n { font: 600 .72rem 'IBM Plex Mono', monospace; color: var(--accent); letter-spacing: .04em; text-transform: uppercase; }
.ob-h { margin: .3rem 0 .35rem; font: 700 1.05rem/1.2 'Roboto Condensed', sans-serif; letter-spacing: .04em; text-transform: uppercase; color: #fff; }
.ob-p { margin: 0 0 .9rem; font-size: .88rem; line-height: 1.45; color: var(--text); }
.ob-leg { display: block; position: relative; padding-left: 1.1rem; margin-bottom: .55rem; }
.ob-leg i { position: absolute; left: 0; top: .35em; width: .6rem; height: .6rem; }
.ob-leg b { color: #fff; font-weight: 500; }
.ob-hint { display: block; color: var(--text-muted); font-size: .8rem; }
.ob-row { display: flex; align-items: center; gap: .5rem; }
.ob-skip { margin-right: auto; background: none; border: 0; color: var(--text-muted); text-decoration: underline; min-height: 44px; padding: 0; cursor: pointer; font-size: .82rem; }
.ob-b { min-height: 44px; padding: 0 .9rem; background: none; border: 1px solid var(--border-hi); color: var(--text); font: 700 .8rem/1 'Roboto Condensed', sans-serif; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.ob-next { background: var(--accent); border-color: var(--accent); color: #13130f; }
.ob-dots { display: flex; gap: 4px; margin-bottom: .7rem; }
.ob-dots i { flex: 1; height: 3px; background: var(--border-hi); }
.ob-dots i.on { background: var(--accent); }
@media (max-width: 600px) { .ob-pop { position: fixed; left: 8px; right: 8px; bottom: 8px; width: auto; } }
@media (prefers-reduced-motion: reduce) { .ob-spot { transition: none; } }
