/* /salary: общие токены страницы и заголовок.
   С сайта: btn, filter-chip, salary-status-dot, токены. Своё — раскладка и волосяные разделители (sv-*).
   Панель с графиком — 02_board.css, шкалы — 03_plots.css, списки и финал — 04_lists.css, появление шкал — 05_motion.css,
   справочник профессий — ../salary_hub.css */

.sv {
    --sv-line: color-mix(in srgb, var(--text-color) 9%, transparent);
    --sv-my: var(--salary-my-color, #7B61FF);
    padding-bottom: 72px;
}

/* Нулевая специфичность: отступы компонентов сайта внутри страницы (заголовки фильтров, FAQ, карточки) остаются свои */
:where(.sv) :where(h1, h2, h3, p) {
    margin: 0;
}

.sv-label {
    color: var(--text-muted);
    font-size: var(--fs-14);
    line-height: var(--lh-14);
    letter-spacing: var(--ls-14);
}

.sv-panel {
    background: var(--surface-primary);
    border-radius: 24px;
}

.sv-hero {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 64px 0 56px;
    text-align: center;
}

.sv-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 32px;
    padding: 0 14px 0 10px;
    border-radius: 999px;
    background: var(--surface-primary);
    color: var(--text-muted);
    font-size: var(--fs-14);
    letter-spacing: var(--ls-14);
}

.sv-h1 {
    margin-top: 24px;
    color: var(--text-color);
    font-size: 72px;
    font-weight: var(--fw-semibold);
    line-height: 1.02;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

.sv-h1 span,
.sv-h2 span {
    color: var(--text-muted);
}

.sv-sub {
    max-width: 640px;
    margin-top: 20px;
    color: var(--text-muted);
    font-size: var(--fs-20);
    line-height: var(--lh-20);
    letter-spacing: var(--ls-20);
    text-wrap: balance;
}

.sv-cta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 32px;
}

.sv .salary-page-loader {
    margin-top: 0;
}

@media (max-width: 1279px) {
    .sv {
        max-width: 600px;
        margin-left: auto;
        margin-right: auto;
        padding-bottom: 40px;
    }

    .sv-hero {
        padding: 32px 0 28px;
    }

    .sv-h1 {
        margin-top: 20px;
        font-size: 44px;
    }

    .sv-sub {
        margin-top: 14px;
        font-size: var(--fs-17);
        line-height: var(--lh-17);
    }

    .sv-cta {
        width: 100%;
        margin-top: 24px;
    }

    .sv-cta .btn {
        flex: 1 1 100%;
    }
}
