/* DRAW onboarding: a top-layer spotlight and a compact contextual card. */
#onboardingTour{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:hidden;overscroll-behavior:contain}#onboardingTour::backdrop{background:transparent;backdrop-filter:none}
#onboardingTour{pointer-events:none;z-index:1000}.tour-card{pointer-events:auto}
.tour-spotlight{position:fixed;pointer-events:none;border-radius:7px;box-shadow:0 0 0 150vmax #000a}.tour-spotlight.has-target{outline:2px solid var(--gold-bright);outline-offset:3px;animation:tour-target-in .25s ease-out}
.tour-card{position:fixed;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;padding:18px;background:var(--surface);border:1px solid var(--gold);border-top:3px solid var(--gold-bright);border-radius:10px;box-shadow:0 16px 50px #0008;animation:draw-help-in .2s ease-out}.tour-card.tour-intro{width:min(440px,calc(100vw - 24px))}.tour-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--gold-bright);font-size:12px}.tour-heading button{display:grid;place-items:center;width:40px;height:40px;flex:none;padding:8px}.tour-card h2{font-size:20px;line-height:1.35;font-weight:500;color:var(--gold-bright);margin:12px 0}.tour-card p{font-size:13px;line-height:1.65;margin:0 0 16px;overflow-wrap:anywhere}.tour-card progress{display:block;width:100%;height:5px;border:0;border-radius:5px;overflow:hidden;accent-color:var(--gold);background:var(--line)}.tour-card progress::-webkit-progress-bar{background:var(--line)}.tour-card progress::-webkit-progress-value{background:var(--metal-gold)}.tour-card #tourHint{font-size:11px;color:var(--muted);margin:12px 0}
.tour-flow{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.tour-flow button{flex-direction:column;min-width:0;min-height:76px;padding:10px;gap:8px}.tour-flow .action-glyph{width:25px;height:25px;flex-basis:25px}.tour-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px}.tour-actions button{min-height:44px;padding:9px 10px}.tour-actions #tourSkip{margin-right:auto}.tour-actions .action-glyph{width:17px;height:17px;flex-basis:17px}.tour-card [hidden]{display:none!important}
.tour-preference{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:14px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--raised);cursor:pointer;font-size:13px;line-height:1.5}.tour-preference input{width:18px;min-width:18px;height:18px;min-height:18px;padding:0;margin:0;flex:none;accent-color:var(--gold)}.tour-preference:has(:checked){border-color:var(--gold);color:var(--gold-bright)}.tour-card #tourPreferenceNote{font-size:11px;line-height:1.5;color:var(--muted);margin:8px 0 0}
.tour-card{display:flex;flex-direction:column;overflow:hidden}.tour-heading,.tour-actions{flex:none}.tour-content{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scroll-padding-block:8px;padding:0 2px}.tour-actions{padding-top:12px;border-top:1px solid var(--line)}
@keyframes tour-target-in{from{opacity:.35}to{opacity:1}}
@media(max-width:600px){.tour-card{padding:14px}.tour-card h2{font-size:18px}.tour-actions{display:grid;grid-template-columns:1fr 1fr}.tour-actions #tourSkip{grid-column:1/-1;margin:0}.tour-intro .tour-actions #tourNext{grid-column:1/-1}.tour-actions button{min-width:0}.tour-flow .action-caption{font-size:12px}}
@media(prefers-reduced-motion:reduce){.tour-card,.tour-spotlight.has-target{animation:none}}
.tour-card:not(.tour-intro) .tour-preference,.tour-card:not(.tour-intro) #tourPreferenceNote{display:none}.tour-card:not(.tour-intro) #tourHint{font-size:11px;line-height:1.5}
@media(max-width:600px){.tour-card:not(.tour-intro) .tour-actions{display:flex;flex-wrap:nowrap;gap:6px}.tour-card:not(.tour-intro) .tour-actions button{flex:1;padding:8px 6px}.tour-card:not(.tour-intro) .tour-actions #tourSkip{flex:0 0 40px;width:40px;margin:0}.tour-card:not(.tour-intro) #tourSkip .action-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}
