/* Visite guidée */
.tour-spot { position: fixed; z-index: 90; border-radius: 10px; box-shadow: 0 0 0 9999px rgba(3,6,10,.78), 0 0 0 2px var(--mint); pointer-events: none; transition: all .3s var(--ease); }
.tour-box { position: fixed; z-index: 91; width: min(320px, calc(100vw - 24px)); padding: 16px 16px 14px; background: var(--panel-2); border: 1px solid var(--line-2); border-radius: 12px; box-shadow: 0 24px 60px rgba(0,0,0,.6); }
.tour-box.is-in { animation: tour-in .28s var(--ease); }
@keyframes tour-in { from { opacity: 0; transform: translateY(8px) scale(.98); } }
.tour-n { font: 700 11px var(--f-mono); color: var(--mint); }
.tour-t { display: block; margin: 4px 0 6px; font: 700 24px/1 var(--f-display); text-transform: uppercase; letter-spacing: .02em; }
.tour-d { font-size: 14px; line-height: 1.45; color: var(--text-2); }
.tour-act { display: flex; justify-content: space-between; align-items: center; margin-top: 14px; }
.tour-skip { background: none; border: 0; color: var(--muted); font-size: 13px; cursor: pointer; }
.tour-next { height: 38px; padding: 0 18px; border: 0; background: var(--mint); color: var(--mint-ink); font: 700 14px var(--f-display); letter-spacing: .05em; text-transform: uppercase; cursor: pointer; clip-path: polygon(7px 0, 100% 0, 100% calc(100% - 7px), calc(100% - 7px) 100%, 0 100%, 0 7px); }
[data-tour-start] { font: 800 15px var(--f-display); }
