/* ==================================================================
 * 朗孚科技 · 国内站品牌样式（langfusmt.cn）
 * 仅由 langfu-child 子主题加载，海外站不受影响。
 * 前缀：lfsmt-   （插件自带样式前缀为 tdbp-）
 * ================================================================== */

:root {
    /* 配色对齐同行（东为信 smtdwx.com / 佳万兴 smtyamaha.com）：
       两家都用「蓝底 + 白字 + 橙色强调」，橙色均为 #ff6600。
       —— 主蓝 #1278B6 为同行导航条实际用色（用户指定）。
       深档为同色系加深，用于首屏/深色块底色，保证白字对比度。 */
    --lf-blue: #1278B6;
    --lf-blue-dark: #0e5f92;
    --lf-navy: #0a4a72;
    --lf-orange: #ff6600;
    --lf-orange-dark: #e35a00;
    --lf-bg: #f7f8fa;
    --lf-surface: #ffffff;
    --lf-border: #e5e9f0;
    --lf-text: #333333;
    --lf-muted: #666666;
    --lf-radius: 8px;
    --lf-shadow: 0 1px 2px rgba(10, 74, 114, .05), 0 8px 24px rgba(10, 74, 114, .07);
}

/* ── 把插件的设计变量改写成朗孚品牌色 ───────────────────────── */
.tdbp {
    --tdbp-blue: var(--lf-blue);
    --tdbp-blue-dark: var(--lf-blue-dark);
    --tdbp-navy: var(--lf-navy);
    --tdbp-accent: var(--lf-orange);
    --tdbp-text: var(--lf-text);
    --tdbp-muted: var(--lf-muted);
    --tdbp-border: var(--lf-border);
    --tdbp-bg: var(--lf-bg);
}

/* 插件里少数写死的深蓝链接，一并拉回品牌蓝 */
.tdbp .tdbp-link,
.tdbp .tdbp-card-link,
.tdbp .tdbp-download {
    color: var(--lf-blue);
}

.tdbp .tdbp-download:hover {
    color: var(--lf-blue-dark);
    border-color: var(--lf-blue);
}

.tdbp-container {
    max-width: 1240px;
}

/* ── 卡片/按钮圆角与质感对齐品牌 ──────────────────────────── */
.tdbp-card,
.tdbp-section,
.tdbp-summary,
.tdbp-inquiry,
.tdbp-gallery,
.tdbp-category-hero,
.tdbp-filter {
    border-radius: var(--lf-radius);
}

.tdbp-button {
    border-radius: 6px;
    font-weight: 600;
}

/* ==================================================================
 * 产品中心：左分类树 + 右产品网格
 * ================================================================== */

.lfsmt-page-head {
    margin: 4px 0 22px;
}

.lfsmt-page-head h1 {
    margin: 0 0 8px;
    font-size: 28px;
    line-height: 1.3;
    color: var(--lf-navy);
}

.lfsmt-page-head__desc {
    margin: 0;
    max-width: 760px;
    color: var(--lf-muted);
    font-size: 15px;
    line-height: 1.75;
}

.lfsmt-catalog {
    display: grid;
    grid-template-columns: 268px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

/* ── 左侧栏 ─────────────────────────────────────────────── */
.lfsmt-sidebar {
    position: sticky;
    top: 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.lfsmt-sidebar__block {
    background: var(--lf-surface);
    border: 1px solid var(--lf-border);
    border-radius: var(--lf-radius);
    overflow: hidden;
}

.lfsmt-sidebar__title {
    margin: 0;
    padding: 14px 16px;
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    background: var(--lf-navy);
    display: flex;
    align-items: center;
    gap: 8px;
}

.lfsmt-sidebar__title::before {
    content: "";
    width: 3px;
    height: 15px;
    background: var(--lf-orange);
    border-radius: 2px;
}

.lfsmt-sidebar__body {
    padding: 8px;
}

/* ── 分类树 ─────────────────────────────────────────────── */
.lfsmt-tree {
    list-style: none;
    margin: 0;
    padding: 0;
}

.lfsmt-tree--sub {
    display: none;
    padding-left: 14px;
    border-left: 1px dashed var(--lf-border);
    margin-left: 15px;
}

.lfsmt-tree__item.is-open > .lfsmt-tree--sub {
    display: block;
}

.lfsmt-tree__row {
    display: flex;
    align-items: center;
    gap: 4px;
    border-radius: 6px;
    padding: 2px 6px 2px 2px;
    transition: background .15s ease;
}

.lfsmt-tree__row:hover {
    background: #eef3fa;
}

/* 有子分类的行整行可点（分类名 = 展开/收起开关，见 assets/js/langfu.js）。
   加 is-clickable 由脚本打上，无 JS 时不会误给可点光标。 */
.lfsmt-tree__row.is-clickable {
    cursor: pointer;
    /* 双击会选中文字，配合脚本里的防双击守卫会显得别扭，直接禁掉选中 */
    user-select: none;
    -webkit-user-select: none;
}

.lfsmt-tree__item.is-current > .lfsmt-tree__row {
    background: #e9eff9;
}

.lfsmt-tree__item.is-current > .lfsmt-tree__row .lfsmt-tree__link {
    color: var(--lf-blue);
    font-weight: 700;
}

/* 展开箭头 */
.lfsmt-tree__toggle {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    position: relative;
    border-radius: 4px;
}

.lfsmt-tree__toggle::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 7px;
    width: 6px;
    height: 6px;
    border-right: 1.6px solid var(--lf-muted);
    border-bottom: 1.6px solid var(--lf-muted);
    transform: rotate(-45deg);
    transition: transform .18s ease;
}

.lfsmt-tree__item.is-open > .lfsmt-tree__row .lfsmt-tree__toggle::before {
    transform: rotate(45deg);
}

.lfsmt-tree__toggle--empty {
    cursor: default;
}

.lfsmt-tree__toggle--empty::before {
    content: "";
    left: 8px;
    top: 9px;
    width: 4px;
    height: 4px;
    border: 0;
    background: #9db6d4;
    border-radius: 50%;
    transform: none;
}

.lfsmt-tree__link {
    flex: 1 1 auto;
    padding: 7px 0;
    font-size: 14px;
    line-height: 1.5;
    color: var(--lf-text);
    text-decoration: none;
}

.lfsmt-tree__link:hover {
    color: var(--lf-blue);
}

.lfsmt-tree__count {
    flex: 0 0 auto;
    min-width: 22px;
    text-align: center;
    font-size: 11px;
    color: var(--lf-muted);
    background: #eef3fa;
    border-radius: 10px;
    padding: 1px 6px;
}

/* ── 品牌标签 ───────────────────────────────────────────── */
.lfsmt-chips {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lfsmt-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 10px;
    font-size: 13px;
    color: var(--lf-text);
    background: #f8fafc;
    border: 1px solid var(--lf-border);
    border-radius: 999px;
    text-decoration: none;
    transition: all .15s ease;
}

.lfsmt-chip:hover {
    border-color: var(--lf-blue);
    color: var(--lf-blue);
}

.lfsmt-chip.is-current {
    background: var(--lf-blue);
    border-color: var(--lf-blue);
    color: #fff;
}

.lfsmt-chip__count {
    font-size: 11px;
    color: var(--lf-muted);
}

.lfsmt-chip.is-current .lfsmt-chip__count {
    color: rgba(255, 255, 255, .8);
}

/* ── 侧栏询价 CTA ───────────────────────────────────────── */
.lfsmt-sidebar__block--cta {
    background: linear-gradient(160deg, var(--lf-navy), var(--lf-blue));
    border-color: transparent;
    padding: 18px 16px;
    color: #fff;
}

.lfsmt-cta__title {
    margin: 0 0 6px;
    font-size: 15px;
    font-weight: 700;
    color: #fff;
}

.lfsmt-cta__text {
    margin: 0 0 12px;
    font-size: 13px;
    line-height: 1.7;
    color: rgba(255, 255, 255, .78);
}

.lfsmt-cta__btn {
    display: block;
    text-align: center;
    padding: 10px 14px;
    background: var(--lf-orange);
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
    border-radius: 6px;
    text-decoration: none;
    transition: background .15s ease;
}

.lfsmt-cta__btn:hover {
    background: var(--lf-orange-dark);
}

.lfsmt-cta__meta {
    margin: 12px 0 0;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, .16);
    font-size: 12px;
    line-height: 1.8;
    color: rgba(255, 255, 255, .7);
}

.lfsmt-cta__meta strong {
    color: #fff;
}

/* ── 右侧主区 ───────────────────────────────────────────── */
.lfsmt-main {
    min-width: 0;
}

.lfsmt-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 16px;
    margin-bottom: 18px;
    background: var(--lf-surface);
    border: 1px solid var(--lf-border);
    border-radius: var(--lf-radius);
    font-size: 13px;
    color: var(--lf-muted);
}

.lfsmt-toolbar strong {
    color: var(--lf-orange);
    font-size: 15px;
}

.lfsmt-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px;
}

/* ── 空分类落地页 ───────────────────────────────────────── */
.lfsmt-empty {
    padding: 54px 24px 50px;
    text-align: center;
    color: var(--lf-muted);
}

.lfsmt-empty__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    margin-bottom: 18px;
    border-radius: 50%;
    background: #eef3fa;
    color: var(--lf-blue);
}

.lfsmt-empty__title {
    display: block;
    margin-bottom: 12px;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 700;
    color: var(--lf-navy);
}

.lfsmt-empty__desc {
    max-width: 540px;
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.9;
    color: var(--lf-muted);
}

.lfsmt-empty__desc strong {
    color: var(--lf-navy);
}

.lfsmt-empty__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 24px;
}

.lfsmt-empty__btn {
    display: inline-block;
    padding: 11px 20px;
    border: 1px solid var(--lf-border);
    border-radius: 6px;
    background: var(--lf-surface);
    color: var(--lf-navy) !important;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}

.lfsmt-empty__btn:hover {
    border-color: var(--lf-blue);
    color: var(--lf-blue) !important;
}

.lfsmt-empty__btn--primary {
    background: var(--lf-orange);
    border-color: var(--lf-orange);
    color: #fff !important;
}

.lfsmt-empty__btn--primary:hover {
    background: var(--lf-orange-dark);
    border-color: var(--lf-orange-dark);
    color: #fff !important;
}

/* ── 原地换页（PJAX）期间的过渡态 ─────────────────────────
   点叶子分类 / 品牌 / 翻页时不再整页刷新，只替换右侧 .lfsmt-main。
   ⚠️ 过渡范围只覆盖右侧主区：把左侧目录一起变淡会造成明显的「刷新感」。 */
.lfsmt-swapping .lfsmt-main {
    opacity: .45;
    transition: opacity .12s ease;
    pointer-events: none;
}

/* ── 产品卡片（覆盖插件默认观感）────────────────────────── */
.lfsmt-grid .tdbp-product-card {
    border-radius: var(--lf-radius);
    box-shadow: var(--lf-shadow);
    transition: transform .18s ease, box-shadow .18s ease;
}

.lfsmt-grid .tdbp-product-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(15, 23, 42, .12);
}

.lfsmt-grid .tdbp-product-card h3 {
    font-size: 15px;
    line-height: 1.5;
}

/* ── 分页 ───────────────────────────────────────────────── */
.lfsmt-main .tdbp-pagination {
    margin-top: 28px;
}

.lfsmt-main .tdbp-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    margin: 0 3px;
    padding: 0 8px;
    border: 1px solid var(--lf-border);
    border-radius: 6px;
    background: #fff;
    color: var(--lf-text);
    text-decoration: none;
    font-size: 14px;
}

.lfsmt-main .tdbp-pagination .page-numbers.current,
.lfsmt-main .tdbp-pagination .page-numbers:hover {
    background: var(--lf-blue);
    border-color: var(--lf-blue);
    color: #fff;
}

/* ── 面包屑 ─────────────────────────────────────────────── */
.lfsmt-breadcrumb {
    text-transform: none;
    letter-spacing: 0;
    font-size: 13px;
    margin-bottom: 14px;
}

/* ==================================================================
 * 响应式
 * ================================================================== */

@media (max-width: 1024px) {
    .lfsmt-catalog {
        grid-template-columns: 232px minmax(0, 1fr);
        gap: 20px;
    }

    .lfsmt-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 860px) {
    .lfsmt-catalog {
        grid-template-columns: 1fr;
    }

    .lfsmt-sidebar {
        position: static;
    }

    .lfsmt-page-head h1 {
        font-size: 23px;
    }
}

@media (max-width: 560px) {
    .lfsmt-grid {
        grid-template-columns: 1fr !important;
    }

    /* 空分类落地页：移动端按钮撑满，更好点 */
    .lfsmt-empty {
        padding: 36px 18px 34px;
    }

    .lfsmt-empty__icon {
        width: 68px;
        height: 68px;
        margin-bottom: 14px;
    }

    .lfsmt-empty__icon svg {
        width: 36px;
        height: 36px;
    }

    .lfsmt-empty__title {
        font-size: 16.5px;
    }

    .lfsmt-empty__desc {
        font-size: 13.5px;
        line-height: 1.85;
    }

    .lfsmt-empty__actions {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        margin-top: 20px;
    }

    .lfsmt-empty__btn {
        padding: 12px 16px;
        text-align: center;
    }
}

/* ==================================================================
 * 首页与通用区块
 * ================================================================== */

.lf-wrap {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
}

.lf-section {
    padding: 64px 0;
}

.lf-section--tint {
    background: var(--lf-bg);
}

.lf-section__head {
    text-align: center;
    margin-bottom: 38px;
}

.lf-section__head h2 {
    margin: 0 0 10px;
    font-size: 28px;
    color: var(--lf-navy);
}

.lf-section__head p {
    margin: 0 auto;
    max-width: 640px;
    color: var(--lf-muted);
    font-size: 15px;
    line-height: 1.8;
}

/* ── 按钮 ───────────────────────────────────────────────── */
.lf-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 28px;
    font-size: 15px;
    font-weight: 700;
    border-radius: 6px;
    text-decoration: none;
    transition: all .18s ease;
    line-height: 1;
}

.lf-btn--primary {
    background: var(--lf-orange);
    color: #fff !important;
}

.lf-btn--primary:hover {
    background: var(--lf-orange-dark);
    transform: translateY(-1px);
}

.lf-btn--ghost {
    background: transparent;
    color: var(--lf-navy) !important;
    border: 1.5px solid var(--lf-border);
}

.lf-btn--ghost:hover {
    border-color: var(--lf-blue);
    color: var(--lf-blue) !important;
}

.lf-btn--onDark {
    background: rgba(255, 255, 255, .12);
    color: #fff !important;
    border: 1.5px solid rgba(255, 255, 255, .35);
}

.lf-btn--onDark:hover {
    background: rgba(255, 255, 255, .22);
}

/* ── 首屏 ───────────────────────────────────────────────── */
.lf-hero {
    position: relative;
    background: linear-gradient(135deg, #0e5f92 0%, #0a4a72 55%, #062f49 100%);
    color: #fff;
    overflow: hidden;
}

.lf-hero::after {
    content: "";
    position: absolute;
    right: -160px;
    top: -160px;
    width: 620px;
    height: 620px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(18, 120, 182, .48), transparent 68%);
    pointer-events: none;
}

.lf-hero__inner {
    position: relative;
    z-index: 1;
    max-width: 1240px;
    margin: 0 auto;
    padding: 86px 20px 76px;
}

.lf-hero__eyebrow {
    display: inline-block;
    margin: 0 0 18px;
    padding: 6px 14px;
    font-size: 13px;
    letter-spacing: .06em;
    color: #bcd3ea;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
}

.lf-hero h1 {
    margin: 0 0 20px;
    font-size: 44px;
    line-height: 1.28;
    color: #fff;
    font-weight: 800;
}

.lf-hero__lead {
    margin: 0 0 32px;
    max-width: 660px;
    font-size: 16px;
    line-height: 1.9;
    color: rgba(255, 255, 255, .82);
}

.lf-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 46px;
}

.lf-hero__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
    margin: 0;
    padding: 26px 0 0;
    list-style: none;
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.lf-hero__stats li {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.lf-hero__stats strong {
    font-size: 30px;
    color: var(--lf-orange);
    line-height: 1.1;
}

.lf-hero__stats span {
    font-size: 13px;
    color: rgba(255, 255, 255, .66);
}

/* ── 分类入口卡片 ───────────────────────────────────────── */
.lf-cat-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.lf-cat-card {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px 22px;
    background: #fff;
    border: 1px solid var(--lf-border);
    border-radius: var(--lf-radius);
    text-decoration: none;
    transition: all .18s ease;
    position: relative;
    overflow: hidden;
}

.lf-cat-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: var(--lf-orange);
    transform: scaleY(0);
    transform-origin: top;
    transition: transform .2s ease;
}

.lf-cat-card:hover {
    border-color: var(--lf-blue);
    box-shadow: 0 10px 26px rgba(15, 23, 42, .09);
    transform: translateY(-3px);
}

.lf-cat-card:hover::before {
    transform: scaleY(1);
}

.lf-cat-card__name {
    font-size: 17px;
    font-weight: 700;
    color: var(--lf-navy);
}

.lf-cat-card__desc {
    font-size: 13px;
    line-height: 1.7;
    color: var(--lf-muted);
}

.lf-cat-card__count {
    margin-top: auto;
    padding-top: 10px;
    font-size: 12px;
    color: var(--lf-blue);
    font-weight: 600;
}

/* ── 优势 ───────────────────────────────────────────────── */
.lf-features {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.lf-feature {
    padding: 26px 22px;
    background: #fff;
    border: 1px solid var(--lf-border);
    border-radius: var(--lf-radius);
    text-align: center;
}

.lf-feature__icon {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    margin: 0 auto 14px;
    font-size: 24px;
    background: #e9eff9;
    border-radius: 12px;
}

.lf-feature h3 {
    margin: 0 0 8px;
    font-size: 16px;
    color: var(--lf-navy);
}

.lf-feature p {
    margin: 0;
    font-size: 13px;
    line-height: 1.75;
    color: var(--lf-muted);
}

/* ── 行业标签 ───────────────────────────────────────────── */
.lf-industries {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.lf-industries li {
    padding: 10px 20px;
    font-size: 14px;
    color: var(--lf-navy);
    background: #fff;
    border: 1px solid var(--lf-border);
    border-radius: 999px;
}

/* ── 联系块 ─────────────────────────────────────────────── */
.lf-contact {
    padding: 40px 36px;
    background: linear-gradient(135deg, #0a4a72, #1278B6);
    border-radius: var(--lf-radius);
    color: #fff;
    text-align: center;
}

.lf-contact__main h3 {
    margin: 0 0 10px;
    font-size: 24px;
    color: #fff;
}

.lf-contact__main p {
    margin: 0 auto 26px;
    max-width: 620px;
    font-size: 15px;
    line-height: 1.85;
    color: rgba(255, 255, 255, .78);
}

.lf-contact__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    margin-bottom: 20px;
}

.lf-contact__actions .lf-btn--ghost {
    color: #fff !important;
    border-color: rgba(255, 255, 255, .35);
}

.lf-contact__actions .lf-btn--ghost:hover {
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .6);
    color: #fff !important;
}

.lf-contact__meta {
    margin: 0;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .14);
    font-size: 13px;
    color: rgba(255, 255, 255, .6);
}

/* ── 通用内容排版 ───────────────────────────────────────── */
.lf-prose {
    max-width: 860px;
    margin: 0 auto;
    font-size: 15.5px;
    line-height: 1.95;
    color: #333333;
}

.lf-prose h2 {
    margin: 34px 0 14px;
    font-size: 22px;
    color: var(--lf-navy);
}

.lf-prose h3 {
    margin: 26px 0 10px;
    font-size: 18px;
    color: var(--lf-navy);
}

.lf-prose ul {
    padding-left: 22px;
}

.lf-prose li {
    margin-bottom: 8px;
}

/* ── 首页响应式 ─────────────────────────────────────────── */
@media (max-width: 1024px) {
    .lf-cat-cards,
    .lf-features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lf-hero h1 {
        font-size: 34px;
    }
}

@media (max-width: 640px) {
    .lf-cat-cards,
    .lf-features {
        grid-template-columns: 1fr;
    }

    .lf-hero__inner {
        padding: 56px 20px 48px;
    }

    .lf-hero h1 {
        font-size: 27px;
    }

    .lf-hero__stats {
        gap: 28px;
    }

    .lf-section {
        padding: 44px 0;
    }

    .lf-contact {
        padding: 30px 22px;
    }
}

/* ==================================================================
 * 顶部热线条（对齐同行的「服务热线」条）
 * ================================================================== */

.lf-topbar {
    background: #0e5f92;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    line-height: 1;
}

.lf-topbar__inner {
    max-width: 1240px;
    margin: 0 auto;
    padding: 9px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.lf-topbar__brand {
    letter-spacing: .02em;
}

.lf-topbar__contact {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.lf-topbar__contact a {
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}

.lf-topbar__contact a:hover {
    color: var(--lf-orange);
}

.lf-topbar__sep {
    color: rgba(255, 255, 255, .28);
}

/* ==================================================================
 * 头部：蓝底 + 白字（对齐同行调性）
 * 同行两家均为「蓝色导航条 + 白色文字 + 橙色强调」，
 * 这里把 Astra 默认的白底深字改写成蓝底白字，导航条用主蓝 #1278B6。
 * ================================================================== */

.ast-primary-header-bar,
.ast-primary-header-bar.ast-primary-header,
.main-header-bar {
    background-color: var(--lf-blue);
    border-bottom: 0;
}

/* 导航条高度：Astra 默认 80px（且 .main-header-bar 上 line-height:3，19px×3=57px）
   偏高，这里把整条链的行高与最小高度一起压到同行的量级（46px）。
   注意 .main-header-bar 与 .ast-primary-header-bar 是同一个元素，不能用后代选择器。 */
.ast-primary-header-bar .site-primary-header-wrap,
.ast-mobile-header-wrap .ast-primary-header-bar,
.ast-primary-header-bar .ast-builder-grid-row {
    min-height: 46px;
}

.ast-primary-header-bar.main-header-bar,
.ast-primary-header-bar .main-header-bar-navigation,
.ast-primary-header-bar .main-navigation,
.ast-primary-header-bar .main-header-menu,
.ast-desktop:not(.ast-header-sticked) .ast-primary-header-bar .main-header-menu > .menu-item {
    line-height: 46px;
}

/* Logo 区块默认有 1em 上下内边距，会顶高整条导航，去掉 */
.ast-primary-header-bar .ast-site-identity {
    padding-top: 0;
    padding-bottom: 0;
}

/* 站名 / Logo */
.site-header .site-title,
.site-header .site-title a,
.site-header .site-title a:link,
.site-header .site-title a:visited {
    color: #fff !important;
}

.site-header .site-title {
    font-size: 21px;
    line-height: 1.2;
}

/* 一级导航链接：白字加粗 */
.ast-primary-header-bar .main-header-menu > .menu-item > .menu-link {
    color: #fff !important;
    background-color: transparent !important;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: .02em;
    padding-left: 16px;
    padding-right: 16px;
    box-shadow: none;
    transition: color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

/* 项与项之间的分界：用很淡的暗缝，避免白色竖线过于抢眼 */
.ast-primary-header-bar .main-header-menu > .menu-item + .menu-item > .menu-link {
    box-shadow: inset 1px 0 0 0 rgba(6, 47, 73, .18);
}

.ast-primary-header-bar .main-header-menu > .menu-item > .menu-link:hover,
.ast-primary-header-bar .main-header-menu > .menu-item > .menu-link:focus,
.ast-primary-header-bar .main-header-menu > .menu-item.current-menu-item > .menu-link,
.ast-primary-header-bar .main-header-menu > .menu-item.current-menu-ancestor > .menu-link {
    color: #fff !important;
    background-color: rgba(255, 255, 255, .16) !important;
    box-shadow: inset 1px 0 0 0 rgba(6, 47, 73, .18), inset 0 -3px 0 0 var(--lf-orange);
}

/* 当前项若是第一个，没有左缝 */
.ast-primary-header-bar .main-header-menu > .menu-item:first-child > .menu-link {
    box-shadow: none;
}

.ast-primary-header-bar .main-header-menu > .menu-item:first-child > .menu-link:hover,
.ast-primary-header-bar .main-header-menu > .menu-item:first-child.current-menu-item > .menu-link {
    box-shadow: inset 0 -3px 0 0 var(--lf-orange);
}

/* 下拉子菜单保持白底深字，避免蓝底串色 */
.ast-primary-header-bar .main-header-menu .sub-menu .menu-link {
    color: var(--lf-text) !important;
    background-color: #fff !important;
}

.ast-primary-header-bar .main-header-menu .sub-menu .menu-link:hover {
    color: var(--lf-orange) !important;
    box-shadow: none;
}

/* 移动端汉堡按钮
   注意：Astra 用 [data-section="section-header-mobile-trigger"] 属性选择器
   写死了图标 fill（优先级 0,4,0），普通类选择器盖不住，必须同优先级 + !important。 */
.ast-mobile-header-wrap .menu-toggle,
.ast-mobile-header-wrap .ast-button-wrap .menu-toggle,
.main-header-menu-toggle,
.menu-toggle {
    color: #fff !important;
}

[data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal,
[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg,
.ast-mobile-header-wrap .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
    color: #fff !important;
    fill: #fff !important;
}

/* 移动端展开后的菜单面板仍用白底，保证可读 */
.ast-mobile-popup-content .main-header-menu > .menu-item > .menu-link,
.ast-mobile-header-content .main-header-menu > .menu-item > .menu-link {
    color: var(--lf-text) !important;
    background-color: transparent !important;
    box-shadow: none;
}

/* ==================================================================
 * 通用网格
 * ================================================================== */

.lf-grid {
    display: grid;
    gap: 20px;
}

.lf-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lf-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lf-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.lf-section__foot {
    margin: 30px 0 0;
    text-align: center;
}

/* ==================================================================
 * 产品卡片
 * ================================================================== */

.lf-pcard {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--lf-border);
    border-radius: var(--lf-radius);
    overflow: hidden;
    text-decoration: none;
    transition: all .18s ease;
}

.lf-pcard:hover {
    border-color: var(--lf-blue);
    box-shadow: 0 12px 28px rgba(15, 23, 42, .10);
    transform: translateY(-3px);
}

.lf-pcard__media {
    display: block;
    aspect-ratio: 4 / 3;
    background: var(--lf-bg);
    overflow: hidden;
}

.lf-pcard__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}

.lf-pcard:hover .lf-pcard__media img {
    transform: scale(1.04);
}

.lf-pcard__body {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px 18px 18px;
    flex: 1;
}

.lf-pcard__model {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--lf-orange);
}

.lf-pcard__title {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
    color: var(--lf-navy);
}

.lf-pcard__more {
    margin-top: auto;
    padding-top: 10px;
    font-size: 13px;
    font-weight: 600;
    color: var(--lf-blue);
}

/* ==================================================================
 * 双维度分类（按机型 / 按配件品类）
 * ================================================================== */

.lf-dim {
    margin-bottom: 44px;
}

.lf-dim:last-child {
    margin-bottom: 0;
}

.lf-dim__head {
    margin-bottom: 20px;
    padding-left: 12px;
    border-left: 3px solid var(--lf-orange);
}

.lf-dim__head h3 {
    margin: 0 0 4px;
    font-size: 20px;
    color: var(--lf-navy);
}

.lf-dim__head p {
    margin: 0;
    font-size: 14px;
    color: var(--lf-muted);
}

.lf-tiles {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.lf-tiles--sm {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.lf-tile {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--lf-border);
    border-radius: var(--lf-radius);
    overflow: hidden;
    text-decoration: none;
    transition: all .18s ease;
}

.lf-tile:hover {
    border-color: var(--lf-blue);
    box-shadow: 0 10px 24px rgba(15, 23, 42, .09);
    transform: translateY(-2px);
}

.lf-tile__thumb {
    display: block;
    aspect-ratio: 4 / 3;
    background: var(--lf-bg);
}

.lf-tile__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.lf-tile__name {
    padding: 12px 14px 2px;
    font-size: 14px;
    font-weight: 700;
    color: var(--lf-navy);
    line-height: 1.45;
}

.lf-tile__count {
    padding: 0 14px 12px;
    font-size: 12px;
    color: var(--lf-muted);
}

/* ==================================================================
 * 新闻卡片
 * ================================================================== */

.lf-ncard {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--lf-border);
    border-radius: var(--lf-radius);
    overflow: hidden;
    text-decoration: none;
    transition: all .18s ease;
}

.lf-ncard:hover {
    border-color: var(--lf-blue);
    box-shadow: 0 10px 24px rgba(15, 23, 42, .09);
    transform: translateY(-2px);
}

.lf-ncard__media {
    display: block;
    aspect-ratio: 16 / 9;
    background: var(--lf-bg);
}

.lf-ncard__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.lf-ncard__body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px 18px 20px;
}

.lf-ncard__date {
    font-size: 12px;
    color: var(--lf-muted);
}

.lf-ncard__title {
    font-size: 15.5px;
    font-weight: 700;
    line-height: 1.55;
    color: var(--lf-navy);
}

.lf-ncard__excerpt {
    font-size: 13px;
    line-height: 1.75;
    color: var(--lf-muted);
}

/* ==================================================================
 * 公司实力
 * ================================================================== */

.lf-about {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 40px;
    align-items: center;
}

.lf-about__media img {
    width: 100%;
    border-radius: var(--lf-radius);
    display: block;
    border: 1px solid var(--lf-border);
}

.lf-about__body h2 {
    margin: 0 0 14px;
    font-size: 26px;
    color: var(--lf-navy);
}

.lf-about__body p {
    margin: 0 0 16px;
    font-size: 15px;
    line-height: 1.9;
    color: #666666;
}

.lf-about__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.lf-about__stats li {
    padding: 16px 14px;
    text-align: center;
    background: var(--lf-bg);
    border-radius: var(--lf-radius);
}

.lf-about__stats strong {
    display: block;
    font-size: 24px;
    color: var(--lf-orange);
    line-height: 1.2;
}

.lf-about__stats span {
    font-size: 12.5px;
    color: var(--lf-muted);
}

/* ==================================================================
 * 响应式
 * ================================================================== */

@media (max-width: 1024px) {
    .lf-grid--3,
    .lf-grid--4,
    .lf-tiles {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lf-tiles--sm {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .lf-about {
        grid-template-columns: 1fr;
        gap: 26px;
    }
}

@media (max-width: 640px) {
    .lf-grid--2,
    .lf-grid--3,
    .lf-grid--4,
    .lf-tiles,
    .lf-tiles--sm {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lf-topbar__inner {
        justify-content: center;
        text-align: center;
    }

    .lf-topbar__brand {
        display: none;
    }

    .lf-about__stats {
        grid-template-columns: 1fr;
    }
}

/* ==================================================================
 * Hero 双栏（左文右图）
 * ================================================================== */

.lf-hero__grid {
    display: grid;
    grid-template-columns: 1.12fr .88fr;
    gap: 52px;
    align-items: center;
}

.lf-hero__media img {
    width: 100%;
    display: block;
    border-radius: var(--lf-radius);
    border: 1px solid rgba(255, 255, 255, .16);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .34);
}

.lfsmt-home-hero {
    position: relative;
    width: 100%;
    min-width: 0;
    aspect-ratio: 1 / 1;
    box-sizing: border-box;
    overflow: hidden;
    background: rgba(255, 255, 255, .04);
    border-radius: var(--lf-radius);
    border: 1px solid rgba(255, 255, 255, .16);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .34);
}

.lfsmt-home-hero > .lfsmt-home-hero__image {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.lfsmt-home-hero > .lfsmt-home-hero__image[hidden] {
    display: none;
}

@media (max-width: 1024px) {
    .lf-hero__grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .lf-hero__media {
        order: -1;
    }
}

/* ==================================================================
 * 新闻资讯：国内门户式列表（标签行 + 标题/时间）
 * 覆盖 Astra 默认的 blog-layout-4 卡片网格
 * ================================================================== */

#primary.lf-news {
    display: block;
    grid-template-columns: none;
}

.lf-news__main {
    margin-top: 0;
}

/* 白色面板，让细分隔线读得清 */
.lf-news-panel {
    background: #fff;
    border: 1px solid #e6edf4;
    border-radius: var(--lf-radius, 10px);
    padding: 0 26px 6px;
    box-shadow: 0 2px 10px rgba(10, 74, 114, .04);
}

/* ── 分类标签行 ─────────────────────────────────────────── */
.lf-news-tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 30px;
    border-bottom: 1px solid #eef1f4;
    margin: 0 0 2px;
}

.lf-news-tabs a {
    position: relative;
    display: inline-block;
    padding: 17px 0 13px;
    font-size: 16px;
    line-height: 1.4;
    color: #8a9099;
    text-decoration: none;
    transition: color .18s ease;
}

.lf-news-tabs a:hover {
    color: var(--lf-blue);
}

.lf-news-tabs a.is-active {
    color: var(--lf-navy);
    font-weight: 700;
}

/* 活动标签下的橙色横线（与导航 hover 下划线同一语言） */
.lf-news-tabs a.is-active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 3px;
    border-radius: 2px;
    background: var(--lf-orange);
}

/* ── 列表 ──────────────────────────────────────────────── */
.lf-news-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.lf-news-item {
    border-bottom: 1px solid #f0f2f5;
}

.lf-news-item:last-child {
    border-bottom: 0;
}

.lf-news-item > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 17px 2px;
    text-decoration: none;
}

.lf-news-item__main {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.lf-news-item__cat {
    flex: 0 0 auto;
    font-size: 12px;
    line-height: 1.5;
    color: var(--lf-blue);
    border: 1px solid rgba(18, 120, 182, .32);
    border-radius: 3px;
    padding: 0 7px;
    white-space: nowrap;
}

.lf-news-item__title {
    font-size: 16px;
    line-height: 1.6;
    color: #2b3038;
    transition: color .18s ease;
}

.lf-news-item > a:hover .lf-news-item__title {
    color: var(--lf-blue);
}

.lf-news-item__time {
    flex: 0 0 auto;
    font-size: 14px;
    color: #9aa3ad;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.lf-news-empty {
    margin: 0;
    padding: 40px 0;
    text-align: center;
    color: var(--lf-muted);
    font-size: 15px;
}

/* ── 分页 ──────────────────────────────────────────────── */
.lf-news-pager {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 26px 0 4px;
}

.lf-news-pager .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border: 1px solid #e2e9f1;
    border-radius: 6px;
    background: #fff;
    color: #4a5560;
    font-size: 14px;
    text-decoration: none;
    transition: all .18s ease;
}

.lf-news-pager .page-numbers:hover {
    border-color: var(--lf-blue);
    color: var(--lf-blue);
}

.lf-news-pager .page-numbers.current {
    background: var(--lf-blue);
    border-color: var(--lf-blue);
    color: #fff;
    font-weight: 600;
}

@media (max-width: 782px) {
    .lf-news-panel {
        padding: 0 16px 4px;
    }

    .lf-news-tabs {
        gap: 22px;
    }

    .lf-news-item > a {
        gap: 14px;
        padding: 14px 0;
    }

    .lf-news-item__title {
        font-size: 15px;
    }

    .lf-news-item__cat {
        display: none;
    }
}

/* ==================================================================
 * 文章详情页：中文排版与上下篇
 * ================================================================== */

.single .entry-header {
    margin-bottom: 22px;
}

.single .entry-header .entry-title {
    font-size: 34px;
    line-height: 1.5;
    color: var(--lf-navy);
    text-wrap: balance;
}

.single .entry-header .entry-meta {
    margin-top: 12px;
    font-size: 14px;
    color: #9aa3ad;
}

.single .entry-header .entry-meta a {
    color: #9aa3ad;
}

/* 中文正文：参数对齐参考站（凤凰网 original.ifeng.com 文章页实测）
     桌面：16px / 行高 2.0（32px）/ #2b2b2b / 两端对齐
     移动：约 17-19px / 行高 1.67-1.8 —— 手机上反而比桌面大一档
   text-align: justify 是中文新闻站的标准做法（汉字等宽，两端对齐不留锯齿）。 */
.single .entry-content {
    font-size: 16px;
    line-height: 2;
    color: #2b2b2b;
    text-align: justify;
    overflow-wrap: break-word;
}

.single .entry-content p {
    margin: 0 0 1.15em;
}

.single .entry-content h2 {
    font-size: 20px;
    color: var(--lf-navy);
    margin: 1.8em 0 .7em;
}

.single .entry-content h3 {
    font-size: 17px;
    color: var(--lf-navy);
    margin: 1.6em 0 .6em;
}

.single .entry-content ul,
.single .entry-content ol {
    padding-left: 1.4em;
    margin: 0 0 1.15em;
}

.single .entry-content li {
    margin-bottom: .5em;
}

.single .entry-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* ── 上下篇 ─────────────────────────────────────────────── */
.single .post-navigation {
    margin-top: 34px;
    padding-top: 22px;
    border-top: 1px solid #eef1f4;
}

.single .post-navigation .nav-links {
    gap: 24px;
}

.single .post-navigation a span.ast-post-nav {
    display: inline-block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
    color: var(--lf-blue);
}

.single .post-navigation a p {
    margin-top: 6px;
    font-size: 14px;
    line-height: 1.6;
    color: #4a5560;
}

.single .post-navigation a:hover p {
    color: var(--lf-blue);
}

/* 响应式：参考站在手机上把正文调大到 18.7px、标题 25px。
   这里分两档（平板 / 手机），保证窄屏可读性。 */
@media (max-width: 782px) {
    .single .entry-header .entry-title {
        font-size: 26px;
    }

    .single .entry-content {
        font-size: 16.5px;
        line-height: 1.9;
    }
}

@media (max-width: 480px) {
    .single .entry-header .entry-title {
        font-size: 24px;
        line-height: 1.45;
    }

    .single .entry-content {
        font-size: 17px;
        line-height: 1.85;
    }
}

/* ==================================================================
 * 文章详情页：特色图（hero）+ 正文表格
 *
 * hero 由子主题挂在 astra_single_header_before 输出（functions.php 5.4 节），
 * 位置在 <article> 内部、标题之前 —— 所以宽度天然等于正文面板宽度。
 * 这里只需用负边距抵消面板的 padding，让图铺满整块面板。
 * ================================================================== */

/* 面板加圆角并裁掉 hero 的直角，两者拼成一张卡。
   作用域用 .single —— 文章与产品详情共用（产品页一直如此，保持不变）。 */
.single .ast-article-single {
    border-radius: 10px;
    overflow: hidden;
}

/* ⚠️ 面板 padding 必须显式声明：Astra 的
   .ast-separate-container .ast-article-single 是响应式的
   （桌面 2.5em ≈ 40px，768px 时 36.5px，390px 时只剩 14.6px），
   而 hero 要靠等量负边距才能铺满 —— 之前写死 -2.5em，在手机上负边距比内边距
   大 22px，导致 hero 比卡片宽、被 overflow:hidden 左右各裁掉 22px。
   改用同一个变量，两边永远相等。
   作用域收窄到 .single-post —— 产品详情页（single-b2b_product）不该被改。 */
.single-post .ast-article-single {
    --lf-card-pad: 40px;
    padding: var(--lf-card-pad);
}

/* 注意：类名必须与首页首屏 .lf-hero 区分开。
   首页 .lf-hero 是 .entry-content[data-ast-blocks-layout] > * 的子元素，
   而 Astra 那条内联规则特异性 0,2,0 会吃掉 margin-left/right，
   导致这里的负边距在首页「部分生效」（top/bottom 生效、left/right 被中和），
   把首屏整体上提 40px。改名 + 加 .single 作用域彻底隔开。 */
.single .lf-post-hero {
    margin: calc(-1 * var(--lf-card-pad)) calc(-1 * var(--lf-card-pad)) 1.8em;
    overflow: hidden;
}

.single .lf-post-hero img {
    display: block;
    width: 100%;
    height: auto;
    /* 限高：4:3 的图铺满 1240px 会高达 930px，把标题顶出首屏。
       max-height + object-fit 让图片在限高内居中裁切，保持横幅观感。
       480px ≈ 1240:480 的横幅比例，标题仍留在首屏内。
       手机上图本身就矮（390px 宽 → 292px 高），不会触发限高，不裁切。 */
    max-height: 480px;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 782px) {
    .single-post .ast-article-single {
        --lf-card-pad: 28px;
    }

    .single .lf-post-hero {
        margin-bottom: 1.3em;
    }
}

@media (max-width: 480px) {
    .single-post .ast-article-single {
        --lf-card-pad: 16px;
    }
}

/* ── 正文表格 ─────────────────────────────────────────── */
.single .entry-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.4em 0;
    font-size: 15px;
}

.single .entry-content th,
.single .entry-content td {
    border: 1px solid #e6edf4;
    padding: 10px 14px;
    text-align: left;
    line-height: 1.7;
}

.single .entry-content thead th {
    background: #f4f8fc;
    color: var(--lf-navy);
    font-weight: 700;
    white-space: nowrap;
}

.single .entry-content tbody tr:nth-child(even) {
    background: #fafcfe;
}

/* 正文内的分隔线 / 引用 */
.single .entry-content hr {
    border: 0;
    border-top: 1px solid #eef1f4;
    margin: 2em 0;
}

.single .entry-content blockquote {
    margin: 1.4em 0;
    padding: 2px 0 2px 16px;
    border-left: 3px solid var(--lf-orange);
    color: #4a5560;
}

@media (max-width: 782px) {
    .single .entry-content table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

/* 手机端分类入口；桌面保留原有完整侧栏。 */
.lfsmt-mobile-menu__summary { display: none; }
.lfsmt-mobile-menu__content { display: flex; flex-direction: column; gap: 16px; }
@media (max-width: 860px) {
    .lfsmt-mobile-menu { border: 1px solid var(--lf-border); border-radius: var(--lf-radius); background: #fff; }
    .lfsmt-mobile-menu__summary { display: flex; align-items: center; gap: 12px; padding: 14px 16px; min-height: 48px; cursor: pointer; font-size: 15px; font-weight: 700; color: var(--lf-navy); list-style: none; }
    .lfsmt-mobile-menu__summary::-webkit-details-marker { display: none; }
    .lfsmt-mobile-menu__summary::after { content: '+'; margin-left: auto; font-size: 22px; line-height: 1; }
    .lfsmt-mobile-menu[open] > .lfsmt-mobile-menu__summary::after { content: '−'; }
    .lfsmt-mobile-menu__current { flex: 1; min-width: 0; font-size: 13px; font-weight: 400; color: var(--lf-muted); overflow-wrap: anywhere; }
    .lfsmt-mobile-menu__content { padding: 0 8px 8px; gap: 12px; }
    .lfsmt-mobile-menu__summary:focus-visible { outline: 2px solid var(--lf-blue); outline-offset: 2px; }
    .lfsmt-main { scroll-margin-top: 16px; }
    .lfsmt-tree__row { min-height: 44px; }
}
