/* ===== 新手指引 (onboarding tour) — 纯前端，零后端改动 ===== */
.tour-spotlight {
    position: fixed;
    border-radius: 12px;
    border: 2px solid #3498db;
    box-shadow: 0 0 0 9999px rgba(15, 30, 55, 0.5);
    pointer-events: none;
    z-index: 10000;
    transition: top .25s ease, left .25s ease, width .25s ease, height .25s ease;
}
.tour-highlight {
    position: relative;
    z-index: 10001 !important;
    border-radius: 12px;
}
.tour-popover {
    position: fixed;
    z-index: 10002;
    display: none;
    width: 320px;
    max-width: calc(100vw - 32px);
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 16px 44px rgba(20, 40, 80, 0.28);
    padding: 0 0 1.1rem;
    font-family: inherit;
    overflow: hidden;
}
.tour-popover::before {
    content: "";
    display: block;
    height: 4px;
    background: linear-gradient(90deg, #3498db, #5b9bf0);
}
.tour-popover .tour-step-count {
    font-size: .72rem;
    color: #8a97a8;
    margin: .9rem 1.15rem .3rem;
    font-weight: 600;
    letter-spacing: .3px;
}
.tour-popover .tour-title {
    font-size: 1.02rem;
    font-weight: 700;
    color: #1f2d3d;
    margin: 0 1.15rem .45rem;
}
.tour-popover .tour-text {
    font-size: .85rem;
    line-height: 1.6;
    color: #51606f;
    margin: 0 1.15rem .95rem;
}
.tour-popover .tour-actions {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: 0 1.15rem;
}
.tour-popover .tour-btn {
    border: none;
    border-radius: 8px;
    padding: .45rem .95rem;
    font-size: .82rem;
    cursor: pointer;
    font-weight: 600;
    font-family: inherit;
    transition: all .15s ease;
}
.tour-popover .tour-btn-skip {
    background: transparent;
    color: #8a97a8;
    margin-right: auto;
}
.tour-popover .tour-btn-skip:hover { color: #1f2d3d; }
.tour-popover .tour-btn-prev {
    background: #eef1f5;
    color: #1f2d3d;
}
.tour-popover .tour-btn-prev:hover { background: #e2e7ee; }
.tour-popover .tour-btn-next {
    background: #3498db;
    color: #fff;
}
.tour-popover .tour-btn-next:hover { background: #2c81c9; }
.tour-popover .tour-btn:disabled { opacity: .4; cursor: not-allowed; }
