html.onboarding-open,html.onboarding-open body{overflow:hidden;overscroll-behavior:none}
dialog.onboarding{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:hidden;color:#192019}
dialog.onboarding::backdrop{background:transparent}
.tour-spotlight{position:fixed;border:2px solid #cef05d;border-radius:16px;box-shadow:0 0 0 9999px #081009bd;pointer-events:none;transition:left .18s ease,top .18s ease,width .18s ease,height .18s ease;box-sizing:border-box}
.tour-card{position:fixed;padding:20px;background:#f8faf4;border:1px solid #d8dfcc;border-radius:22px;box-shadow:0 16px 50px #0004;box-sizing:border-box;max-height:calc(100dvh - 24px);overflow:visible}
.tour-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#66725b;font-size:13px;line-height:1.4}
.tour-card h2{font-size:23px;line-height:1.18;letter-spacing:-.5px;margin:12px 0 10px}.tour-card p{font-size:15px;line-height:1.5;margin:0 0 18px;color:#45503e}
.tour-card button{font-family:inherit;cursor:pointer;min-height:44px;border-radius:12px;font-size:15px;font-weight:650;border:0;padding:10px 14px}
.tour-card button:focus-visible{outline:2px solid #748e31;outline-offset:3px}.tour-meta button{background:none;color:#526047;padding:8px}
.tour-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.tour-actions [data-tour-next]{background:#cced5b;color:#182213;flex:1}.tour-actions [data-tour-back]{background:#e8ecdf;color:#26311d}
.tour-card .language-switch{display:inline-flex}.tour-card .language-switch button[aria-pressed=true]{background:#192019;color:#fff}
.tour-pointer{position:absolute;left:var(--tour-arrow);width:14px;height:14px;background:#cef05d;transform:translateX(-50%) rotate(45deg);animation:tour-point 1.3s ease-in-out infinite;pointer-events:none}
.tour-card[data-side=below] .tour-pointer{top:-8px}.tour-card[data-side=above] .tour-pointer{bottom:-8px}
@keyframes tour-point{50%{transform:translateX(-50%) rotate(45deg) scale(1.35)}}
@media(prefers-reduced-motion:reduce){.tour-pointer{animation:none}.tour-spotlight{transition:none}}
@media(max-height:460px){.tour-card{padding:12px}.tour-card h2{font-size:19px;margin:4px 0}.tour-card p{font-size:14px;margin-bottom:4px}.tour-actions{margin-top:4px}}
