/* ======================================================
   金石软件 - 移动端独立样式 (app.mobile.css)
   设计基准：iPhone 375px~430px，兼容 320px~768px
   ====================================================== */

:root {
    --c-primary: #0663BE;
    --c-primary-dark: #044a8f;
    --c-primary-light: #e8f2fc;
    --c-accent: #00A7B0;
    --c-accent-dark: #00858c;
    --c-gradient-start: #0663BE;
    --c-gradient-end: #00A7B0;
    --c-gray-50: #f8fafc;
    --c-gray-100: #f1f5f9;
    --c-gray-200: #e5e7eb;
    --c-gray-300: #d1d5db;
    --c-gray-400: #9ca3af;
    --c-gray-500: #6b7280;
    --c-gray-600: #4b5563;
    --c-gray-700: #374151;
    --c-gray-800: #1f2937;
    --c-gray-900: #111827;
    --c-white: #ffffff;
    --c-text: #1f2937;
    --c-text-light: #6b7280;
    --c-text-lighter: #9ca3af;
    --c-border: #f0f0f0;
    --c-success: #10b981;
    --c-warning: #f59e0b;
    --c-danger:  #ef4444;

    --m-header-h: 48px;
    --m-tabbar-h: calc(58px + env(safe-area-inset-bottom));
    --m-radius: 12px;
    --m-radius-sm: 8px;
    --m-radius-lg: 16px;
    --m-gap: 12px;
    --m-pad: 16px;
    --m-shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
    --m-shadow: 0 4px 12px rgba(0,0,0,0.08);
    --m-shadow-lg: 0 10px 24px rgba(6,99,190,0.12);

    --vh: 100vh;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
    font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue",
                 "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
    font-size: 15px;
    color: var(--c-text);
    line-height: 1.6;
    background: var(--c-gray-50);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
    padding-top: calc(var(--m-header-h) + 0px);
    min-height: var(--vh);
    position: relative;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; -webkit-tap-highlight-color: transparent; }
a:active { opacity: 0.85; }
button { border: 0; background: none; font: inherit; color: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
input, textarea, select { font: inherit; color: inherit; }
ul, ol { list-style: none; }
h1, h2, h3, h4, h5 { font-weight: 700; line-height: 1.35; color: var(--c-gray-800); }
h1 { font-size: 22px; }
h2 { font-size: 19px; }
h3 { font-size: 17px; }
h4 { font-size: 15px; }
p  { color: var(--c-text-light); margin-bottom: 12px; }

/* ========== Header ========== */
.m-header {
    position: fixed; top: 0; left: 0; right: 0; z-index: 90;
    height: var(--m-header-h);
    background: var(--c-white);
    transition: box-shadow .2s ease, background .3s ease;
    backdrop-filter: saturate(180%) blur(16px);
}
.m-header.shadow { box-shadow: var(--m-shadow-sm); border-bottom: 1px solid var(--c-border); }
.m-header-inner {
    height: 100%;
    display: grid;
    grid-template-columns: 44px 1fr 44px;
    align-items: center;
    padding: 0 4px;
    padding-top: env(safe-area-inset-top);
}
.m-back, .m-menu-btn {
    width: 44px; height: 44px;
    display: inline-flex; align-items: center; justify-content: center;
    color: var(--c-gray-700);
}
.m-back:active, .m-menu-btn:active { color: var(--c-primary); background: var(--c-gray-100); border-radius: 10px; }
.m-logo {
    font-size: 17px; font-weight: 700; text-align: center;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: 1px;
}

/* ========== Drawer ========== */
.m-drawer-mask {
    position: fixed; inset: 0; z-index: 98;
    background: rgba(17,24,39,0.45);
    opacity: 0; pointer-events: none;
    transition: opacity .25s ease;
}
.m-drawer-mask.active { opacity: 1; pointer-events: auto; }
.m-drawer {
    position: fixed; top: 0; right: 0; bottom: 0; z-index: 99;
    width: 78%; max-width: 340px;
    background: var(--c-white);
    transform: translateX(105%);
    transition: transform .28s cubic-bezier(.4,0,.2,1);
    display: flex; flex-direction: column;
    box-shadow: -8px 0 24px rgba(0,0,0,0.1);
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom);
}
.m-drawer.active { transform: translateX(0); }
.m-drawer-head {
    padding: 16px 18px 14px;
    display: flex; justify-content: space-between; align-items: center;
    background: linear-gradient(150deg, rgba(6,99,190,0.07), rgba(0,167,176,0.06) 55%, rgba(255,255,255,0)), var(--c-white);
    color: var(--c-gray-900);
    border-bottom: 1px solid var(--c-gray-100);
}
.m-drawer-brand { display: flex; flex-direction: column; gap: 5px; }
.m-drawer-logo {
    width: 46px; height: 46px; border-radius: 12px;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff;
    display: inline-flex; align-items: center; justify-content: center;
    font-weight: 800; font-size: 18px;
    box-shadow: 0 2px 8px rgba(6,99,190,0.25);
}
.m-drawer-slogan { font-size: 11.5px; line-height: 1.5; color: var(--c-gray-500); }
.m-drawer-close { width: 36px; height: 36px; color: var(--c-gray-600); display: inline-flex; align-items: center; justify-content: center; border-radius: 8px; }
.m-drawer-close:active { background: var(--c-gray-100); }

.m-drawer-nav {
    flex: 1; overflow-y: auto;
    padding: 10px 8px 12px;
}
.m-drawer-nav li a {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    font-size: 15px; color: var(--c-gray-700);
    position: relative;
}
.m-drawer-nav li a .icon {
    width: 28px; height: 28px; border-radius: 8px;
    background: var(--c-gray-100);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 14px;
}
.m-drawer-nav li a .icon-sub { color: var(--c-gray-400); padding-left: 40px; font-size: 13px; }
.m-drawer-nav li a:active { background: var(--c-primary-light); color: var(--c-primary); }
.m-drawer-nav li a.active { background: var(--c-primary-light); color: var(--c-primary); }
.m-drawer-nav li a.active .icon { background: var(--c-primary); color: #fff; }
.m-drawer-nav .nav-divider { height: 1px; background: var(--c-gray-100); margin: 6px 14px; }
.m-tag-new {
    display: inline-block; padding: 1px 6px;
    background: linear-gradient(135deg, #ff7a00, #ef4444);
    color: #fff; font-size: 10px;
    border-radius: 4px; margin-left: 4px;
    font-style: normal;
    transform: translateY(-1px);
}

.m-drawer-foot {
    padding: 14px 18px 18px;
    border-top: 1px solid var(--c-gray-100);
    display: flex; flex-direction: column; gap: 10px;
}
.m-tel-btn {
    display: flex; align-items: center; justify-content: center;
    padding: 11px 14px; border-radius: 10px;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff !important; font-weight: 600; font-size: 14px;
}
.m-pc-link {
    text-align: center; color: var(--c-gray-500);
    font-size: 12px; padding: 6px 0;
}

/* ========== Main ========== */
.m-main { min-height: calc(var(--vh) - var(--m-header-h) - var(--m-tabbar-h)); }

/* ========== Section 通用 ========== */
.m-section { padding: 16px var(--m-pad); }
.m-section + .m-section { padding-top: 8px; }
.m-section-title {
    display: flex; justify-content: space-between; align-items: baseline;
    margin-bottom: 12px;
}
.m-section-title h2 { font-size: 18px; }
.m-section-title h2::before {
    content: ''; display: inline-block;
    width: 3px; height: 16px; margin-right: 8px; vertical-align: -2px;
    background: linear-gradient(180deg, var(--c-gradient-start), var(--c-gradient-end));
    border-radius: 2px;
}
.m-section-title .more { font-size: 13px; color: var(--c-gray-400); }
.m-section-title .more:active { color: var(--c-primary); }

/* ========== 通用卡片 ========== */
.m-card {
    background: var(--c-white);
    border-radius: var(--m-radius);
    box-shadow: var(--m-shadow-sm);
    overflow: hidden;
}
.m-card-body { padding: 14px; }

/* ========== 按钮 ========== */
.m-btn {
    display: inline-flex; align-items: center; justify-content: center;
    padding: 10px 18px;
    font-size: 14px; font-weight: 600;
    border-radius: 10px;
    transition: all .18s ease;
    border: 1px solid transparent;
    white-space: nowrap;
}
.m-btn:active { transform: scale(0.98); }
.m-btn-primary {
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff; box-shadow: 0 4px 12px rgba(6,99,190,0.25);
}
.m-btn-outline {
    background: transparent; color: var(--c-primary); border-color: var(--c-primary);
}
.m-btn-ghost { background: var(--c-primary-light); color: var(--c-primary); }
.m-btn-block { width: 100%; display: flex; }
.m-btn-lg { padding: 12px 24px; font-size: 15px; }

/* ========== Hero 横幅（浅色，与 PC 一致） ========== */
.m-hero {
    position: relative;
    padding: 24px var(--m-pad) 28px;
    background:
        radial-gradient(1200px 300px at 120% -20%, rgba(0,167,176,0.10), transparent 60%),
        radial-gradient(800px 300px at -10% 110%, rgba(6,99,190,0.09), transparent 60%),
        linear-gradient(180deg, #f7faff 0%, #e9f1fa 100%);
    color: #0b1220;
    overflow: hidden;
}
.m-hero::before {
    content: '';
    position: absolute; inset: 0;
    background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2364748b' fill-opacity='0.07'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    opacity: 0.5;
}
.m-hero > * { position: relative; }
.m-hero h1 {
    font-size: 23px;
    letter-spacing: -0.3px;
    margin-bottom: 6px;
    background: linear-gradient(135deg, #0b1220 15%, var(--c-primary) 60%, var(--c-accent) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.m-hero .subtitle { color: #475569; font-size: 14px; margin-bottom: 18px; }
.m-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; }

/* ========== 产品卡片 ========== */
.m-product-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--m-gap); }
.m-product-card {
    background: #fff;
    border-radius: var(--m-radius);
    padding: 16px 14px;
    box-shadow: var(--m-shadow-sm);
    display: flex; flex-direction: column; gap: 10px;
    position: relative; overflow: hidden;
}
.m-product-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, var(--c-gradient-start), var(--c-gradient-end));
    opacity: 0.9;
}
.m-product-card.placeholder::before { background: linear-gradient(90deg, #94a3b8, #cbd5e1); }
.m-product-icon {
    width: 42px; height: 42px; border-radius: 11px;
    background: linear-gradient(135deg, var(--c-primary-light), #fff);
    color: var(--c-primary);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 22px;
    box-shadow: inset 0 0 0 1px rgba(6,99,190,0.08);
}
.m-product-card h3 { font-size: 15px; }
.m-product-card p { font-size: 12.5px; color: var(--c-text-light); margin: 0; line-height: 1.5; min-height: 38px; }
.m-product-card .m-btn { padding: 7px 12px; font-size: 12px; align-self: flex-start; }

/* ========== 滚动条容器（横滑） ========== */
.m-scroll-x {
    display: flex; gap: 10px;
    overflow-x: auto; overflow-y: hidden;
    padding: 2px 0 10px; margin: 0 -4px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.m-scroll-x::-webkit-scrollbar { display: none; }
.m-scroll-x > * { scroll-snap-align: start; flex: 0 0 auto; }

/* ========== 行业/Tab chips ========== */
.m-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.m-chip {
    padding: 7px 13px;
    background: var(--c-white);
    border: 1px solid var(--c-border);
    border-radius: 999px;
    font-size: 13px;
    color: var(--c-gray-600);
    box-shadow: var(--m-shadow-sm);
}
.m-chip.active {
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff; border-color: transparent;
    box-shadow: 0 4px 10px rgba(6,99,190,0.25);
}

/* ========== 行业/功能卡片 ========== */
.m-feature-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--m-gap); }
.m-feature-card {
    background: #fff;
    border-radius: var(--m-radius);
    padding: 14px 12px;
    box-shadow: var(--m-shadow-sm);
    text-align: center;
}
.m-feature-card .ficon {
    width: 40px; height: 40px; margin: 0 auto 10px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--c-primary-light), #fff);
    color: var(--c-primary);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 20px;
}
.m-feature-card h4 { font-size: 14px; }
.m-feature-card p { font-size: 12px; color: var(--c-text-lighter); margin: 4px 0 0; }

/* ========== 模块列表 ========== */
.m-module-list { display: grid; grid-template-columns: 1fr 1fr; gap: var(--m-gap); }
.m-module-card {
    background: #fff;
    border-radius: var(--m-radius);
    padding: 14px;
    box-shadow: var(--m-shadow-sm);
    display: flex; align-items: flex-start; gap: 10px;
}
.m-module-card .micon {
    width: 38px; height: 38px; flex-shrink: 0;
    border-radius: 10px;
    background: var(--c-primary-light);
    color: var(--c-primary);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 18px;
}
.m-module-card h4 { font-size: 14px; margin-bottom: 4px; }
.m-module-card p { font-size: 12px; color: var(--c-text-lighter); margin: 0; line-height: 1.45; }

/* ========== 列表（新闻/案例） ========== */
.m-list { display: flex; flex-direction: column; gap: 10px; }
.m-list-item {
    background: #fff;
    border-radius: var(--m-radius);
    padding: 12px;
    display: flex; gap: 12px;
    box-shadow: var(--m-shadow-sm);
}
.m-list-item.has-thumb .thumb {
    width: 108px; height: 82px; flex-shrink: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, #e0e7ff, #cffafe);
    background-size: cover; background-position: center;
    overflow: hidden;
    display: inline-flex; align-items: center; justify-content: center;
    color: var(--c-primary); font-size: 28px;
}
.m-list-item .info { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.m-list-item .info h3 {
    font-size: 14.5px; line-height: 1.4;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 6px;
}
.m-list-item .info .excerpt {
    font-size: 12.5px; color: var(--c-text-light); line-height: 1.5;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
    margin-bottom: 6px;
}
.m-list-item .info .meta {
    display: flex; align-items: center; gap: 10px;
    margin-top: auto;
    font-size: 11.5px; color: var(--c-text-lighter);
}
.m-list-item .info .meta .tag {
    display: inline-block; padding: 1px 7px;
    background: var(--c-primary-light); color: var(--c-primary);
    border-radius: 4px; font-size: 11px;
}
.m-list-single {
    background: #fff;
    border-radius: var(--m-radius);
    padding: 14px;
    box-shadow: var(--m-shadow-sm);
    display: flex; flex-direction: column; gap: 8px;
}
.m-list-single h3 {
    font-size: 15px;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
}
.m-list-single .meta { font-size: 12px; color: var(--c-text-lighter); }

/* ========== 价格卡片 ========== */
.m-price-list { display: flex; flex-direction: column; gap: 14px; }
.m-price-card {
    background: #fff;
    border-radius: var(--m-radius);
    box-shadow: var(--m-shadow-sm);
    overflow: hidden;
    border: 2px solid transparent;
}
.m-price-card.featured {
    border-color: var(--c-primary);
    box-shadow: 0 8px 24px rgba(6,99,190,0.15);
}
.m-price-card .head {
    padding: 16px 18px 12px;
    background: var(--c-gray-50);
    border-bottom: 1px dashed var(--c-gray-200);
    position: relative;
}
.m-price-card.featured .head {
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff;
}
.m-price-card .head .badge {
    position: absolute; top: 10px; right: 14px;
    background: #ff7a00; color: #fff;
    padding: 2px 8px; border-radius: 6px; font-size: 11px; font-weight: 600;
}
.m-price-card .head h3 { font-size: 17px; }
.m-price-card .head .desc { font-size: 12px; opacity: 0.8; margin-top: 2px; }
.m-price-card.featured .head h3 { color: #fff; }
.m-price-card .price { padding: 16px 18px; }
.m-price-card .price .amount {
    display: flex; align-items: baseline; gap: 6px; margin-bottom: 6px;
}
.m-price-card .price .amount .symbol { font-size: 18px; color: var(--c-primary); font-weight: 700; }
.m-price-card .price .amount .num {
    font-size: 30px; color: var(--c-primary); font-weight: 800;
    line-height: 1; background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}
.m-price-card.featured .price .amount .symbol,
.m-price-card.featured .price .amount .num { color: var(--c-primary); -webkit-text-fill-color: initial; background: none; }
.m-price-card .price .amount .unit { color: var(--c-text-light); font-size: 13px; }
.m-price-card .price .tip { font-size: 12px; color: var(--c-text-lighter); }
.m-price-card .features { padding: 0 18px 8px; }
.m-price-card .features li {
    padding: 6px 0; font-size: 13.5px; color: var(--c-gray-700);
    display: flex; align-items: flex-start; gap: 8px;
}
.m-price-card .features li::before {
    content: '✓'; color: var(--c-success); font-weight: 700; font-size: 14px; flex-shrink: 0;
}
.m-price-card .foot { padding: 12px 18px 18px; }

/* ========== 优势/Why us ========== */
.m-why-grid { display: flex; flex-direction: column; gap: 12px; }
.m-why-card {
    background: #fff; border-radius: var(--m-radius);
    padding: 14px 14px 14px 62px;
    box-shadow: var(--m-shadow-sm);
    position: relative; min-height: 56px;
}
.m-why-card .wicon {
    position: absolute; left: 14px; top: 14px;
    width: 38px; height: 38px; border-radius: 10px;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 18px;
}
.m-why-card h4 { font-size: 15px; margin-bottom: 4px; }
.m-why-card p { font-size: 13px; color: var(--c-text-light); margin: 0; line-height: 1.5; }

/* ========== 截图画廊 ========== */
.m-shot-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.m-shot {
    border-radius: var(--m-radius);
    background: #fff;
    overflow: hidden;
    box-shadow: var(--m-shadow-sm);
    aspect-ratio: 4/3;
    display: inline-flex; align-items: center; justify-content: center;
    background-size: cover; background-position: center;
    position: relative;
    color: var(--c-primary); font-size: 34px;
}
.m-shot .shot-cap {
    position: absolute; left: 0; right: 0; bottom: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.55), transparent 70%);
    color: #fff; padding: 24px 10px 10px; font-size: 12px;
}

/* ========== 页脚（手机无footer PC样式，改底部版权条） ========== */
.m-copyright {
    text-align: center;
    padding: 18px var(--m-pad) 12px;
    color: var(--c-text-lighter);
    font-size: 11.5px; line-height: 1.7;
}
.m-copyright a { color: var(--c-primary); }

/* ========== TabBar ========== */
.m-tabbar {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 85;
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(16px);
    border-top: 1px solid var(--c-border);
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    padding: 5px 4px;
    padding-bottom: calc(5px + env(safe-area-inset-bottom));
    box-shadow: 0 -2px 8px rgba(0,0,0,0.04);
}
.m-tabbar .tab-item {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    padding: 4px 2px; gap: 2px;
    color: var(--c-gray-500);
    font-size: 10.5px;
    border-radius: 10px;
}
.m-tabbar .tab-item:active { background: var(--c-gray-100); }
.m-tabbar .tab-item.active { color: var(--c-primary); }
.m-tabbar .tab-icon { font-size: 20px; line-height: 1; }
.m-tabbar .tab-label { font-weight: 500; }
.m-tabbar-placeholder { height: var(--m-tabbar-h); }

/* ========== 面包屑（详情页） ========== */
.m-crumb {
    padding: 10px var(--m-pad);
    color: var(--c-text-lighter);
    font-size: 12px;
}
.m-crumb a { color: var(--c-gray-500); }
.m-crumb .sep { margin: 0 6px; color: var(--c-gray-300); }

/* ========== 详情页文章 ========== */
.m-article-head { padding: 14px var(--m-pad) 8px; }
.m-article-head h1 { font-size: 20px; line-height: 1.35; margin-bottom: 8px; }
.m-article-head .meta {
    display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
    font-size: 12px; color: var(--c-text-lighter);
}
.m-article-head .meta .tag {
    background: var(--c-primary-light); color: var(--c-primary);
    padding: 2px 8px; border-radius: 4px; font-weight: 500;
}
.m-article-cover {
    margin: 10px var(--m-pad) 6px;
    border-radius: var(--m-radius);
    height: 160px;
    background: linear-gradient(135deg, var(--c-primary-light), #cffafe);
    display: inline-flex; align-items: center; justify-content: center;
    color: var(--c-primary); font-size: 60px;
    overflow: hidden;
}
.m-article-body { padding: 12px var(--m-pad) 20px; }
.m-article-body img { max-width: 100%; height: auto; border-radius: 8px; margin: 10px 0; }
.m-article-body h2 { font-size: 17px; margin: 16px 0 8px; }
.m-article-body h3 { font-size: 15.5px; margin: 14px 0 6px; }
.m-article-body p { font-size: 14.5px; line-height: 1.75; color: #374151; }
.m-article-body ul { padding-left: 18px; margin-bottom: 12px; }
.m-article-body ul li { list-style: disc; font-size: 14px; padding: 3px 0; color: var(--c-gray-700); }
.m-article-body blockquote {
    border-left: 3px solid var(--c-primary);
    background: var(--c-primary-light);
    padding: 10px 12px; margin: 10px 0;
    border-radius: 0 8px 8px 0;
    font-size: 14px; color: var(--c-gray-700);
}
.m-article-body pre { background: #1f2937; color: #e5e7eb; padding: 12px; border-radius: 8px; overflow-x: auto; font-size: 12.5px; line-height: 1.6; }

/* ========== 关于页 ========== */
.m-about-text { padding: 4px var(--m-pad) 10px; }
.m-about-text p { font-size: 14px; line-height: 1.75; color: #374151; }

.m-stats {
    margin: 10px var(--m-pad);
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    border-radius: var(--m-radius);
    padding: 18px 10px;
    display: grid; grid-template-columns: repeat(4, 1fr);
    color: #fff;
    box-shadow: var(--m-shadow-lg);
}
.m-stats .item { text-align: center; }
.m-stats .num { font-size: 20px; font-weight: 800; letter-spacing: -0.5px; }
.m-stats .label { font-size: 11px; opacity: 0.9; margin-top: 2px; }

/* ========== 联系表单 ========== */
.m-contact-info {
    margin: 10px var(--m-pad);
    background: #fff;
    border-radius: var(--m-radius);
    box-shadow: var(--m-shadow-sm);
    overflow: hidden;
}
.m-contact-info .row {
    padding: 14px;
    display: flex; align-items: center; gap: 12px;
    border-bottom: 1px solid var(--c-border);
}
.m-contact-info .row:last-child { border-bottom: 0; }
.m-contact-info .row .cicon {
    width: 38px; height: 38px; flex-shrink: 0;
    border-radius: 10px;
    background: var(--c-primary-light);
    color: var(--c-primary);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 18px;
}
.m-contact-info .row .label { font-size: 12px; color: var(--c-text-lighter); }
.m-contact-info .row .value { font-size: 14.5px; color: var(--c-gray-800); font-weight: 500; }

.m-form {
    background: #fff; border-radius: var(--m-radius);
    margin: 10px var(--m-pad); padding: 16px 14px;
    box-shadow: var(--m-shadow-sm);
    display: flex; flex-direction: column; gap: 12px;
}
.m-form .title { font-size: 16px; font-weight: 700; color: var(--c-gray-800); }
.m-form .field { display: flex; flex-direction: column; gap: 6px; }
.m-form label { font-size: 13px; color: var(--c-gray-700); font-weight: 500; }
.m-form label .req { color: var(--c-danger); margin-left: 2px; }
.m-form input, .m-form textarea, .m-form select {
    width: 100%;
    padding: 11px 12px;
    border: 1px solid var(--c-gray-200);
    border-radius: 10px;
    font-size: 14.5px;
    background: var(--c-gray-50);
    outline: none;
    transition: all .2s ease;
}
.m-form input:focus, .m-form textarea:focus, .m-form select:focus {
    border-color: var(--c-primary);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(6,99,190,0.1);
}
.m-form textarea { min-height: 100px; resize: vertical; }

/* ========== Banner 轮播（简易） ========== */
.m-banner {
    margin: 10px var(--m-pad);
    border-radius: var(--m-radius);
    overflow: hidden;
    aspect-ratio: 16/9;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    position: relative;
    display: flex; align-items: center; justify-content: center;
    color: #fff;
    box-shadow: var(--m-shadow);
}
.m-banner .b-title { font-size: 20px; font-weight: 700; text-align: center; padding: 0 24px; }
.m-banner .b-sub { font-size: 13px; opacity: 0.9; text-align: center; margin-top: 4px; padding: 0 24px; }

/* ========== 通用网格工具 ========== */
.cols-2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--m-gap); }
.cols-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--m-gap); }
.cols-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--m-gap); }

/* ========== 消息提示 ========== */
.m-flash {
    margin: 10px var(--m-pad);
    padding: 11px 14px;
    border-radius: 10px;
    background: #dcfce7; color: #166534;
    font-size: 13.5px; font-weight: 500;
    border: 1px solid #bbf7d0;
}
.m-flash.warn { background: #fef3c7; color: #92400e; border-color: #fde68a; }
.m-flash.error { background: #fee2e2; color: #991b1b; border-color: #fecaca; }

/* ========== 产品亮点 ========== */
.m-highlight-scroll {
    display: flex; gap: 10px;
    overflow-x: auto; padding: 2px var(--m-pad) 10px;
    -webkit-overflow-scrolling: touch; scrollbar-width: none;
}
.m-highlight-scroll::-webkit-scrollbar { display: none; }
.m-highlight-card {
    flex: 0 0 72%; min-width: 240px;
    background: #fff;
    border-radius: var(--m-radius);
    padding: 14px;
    box-shadow: var(--m-shadow-sm);
    position: relative; overflow: hidden;
}
.m-highlight-card::after {
    content: ''; position: absolute; right: -30px; bottom: -30px;
    width: 90px; height: 90px;
    background: radial-gradient(circle, var(--c-primary-light), transparent 70%);
    opacity: 0.8;
}
.m-highlight-card .hicon {
    width: 42px; height: 42px; border-radius: 10px;
    background: var(--c-primary); color: #fff;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 20px; margin-bottom: 10px; position: relative; z-index: 1;
}
.m-highlight-card h4 { font-size: 15px; margin-bottom: 4px; position: relative; z-index: 1; }
.m-highlight-card p { font-size: 13px; color: var(--c-text-light); margin: 0; line-height: 1.55; position: relative; z-index: 1; }

/* ========== 顶部功能入口 ========== */
.m-entry-grid {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 6px 10px;
    margin: 10px var(--m-pad);
    padding: 14px 10px;
    background: #fff;
    border-radius: var(--m-radius);
    box-shadow: var(--m-shadow-sm);
}
.m-entry {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    padding: 6px 4px;
    border-radius: 10px;
}
.m-entry:active { background: var(--c-gray-100); }
.m-entry .eicon {
    width: 42px; height: 42px; border-radius: 12px;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 20px;
    color: #fff;
}
.m-entry:nth-child(1) .eicon { background: linear-gradient(135deg, #0663BE, #0a7fe2); }
.m-entry:nth-child(2) .eicon { background: linear-gradient(135deg, #00A7B0, #05c4cf); }
.m-entry:nth-child(3) .eicon { background: linear-gradient(135deg, #8b5cf6, #a78bfa); }
.m-entry:nth-child(4) .eicon { background: linear-gradient(135deg, #f59e0b, #fbbf24); }
.m-entry:nth-child(5) .eicon { background: linear-gradient(135deg, #10b981, #34d399); }
.m-entry:nth-child(6) .eicon { background: linear-gradient(135deg, #ef4444, #f87171); }
.m-entry:nth-child(7) .eicon { background: linear-gradient(135deg, #3b82f6, #60a5fa); }
.m-entry:nth-child(8) .eicon { background: linear-gradient(135deg, #ec4899, #f472b6); }
.m-entry .elabel { font-size: 12px; color: var(--c-gray-700); }

/* ========== 行业方案详情 ========== */
.m-industry-hero {
    margin: 10px var(--m-pad);
    padding: 18px 16px;
    border-radius: var(--m-radius);
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff;
    position: relative; overflow: hidden;
    box-shadow: var(--m-shadow-lg);
}
.m-industry-hero h2 { color: #fff; margin-bottom: 6px; }
.m-industry-hero p { color: rgba(255,255,255,0.88); font-size: 13.5px; margin: 0; }

/* ========== 分页 ========== */
.m-pagination {
    display: flex; justify-content: center; align-items: center; gap: 8px;
    padding: 14px var(--m-pad) 6px; flex-wrap: wrap;
}
.m-pagination a, .m-pagination span {
    min-width: 34px; height: 34px;
    display: inline-flex; align-items: center; justify-content: center;
    padding: 0 10px;
    background: #fff;
    border-radius: 8px;
    font-size: 13px; color: var(--c-gray-600);
    box-shadow: var(--m-shadow-sm);
}
.m-pagination .active { background: var(--c-primary); color: #fff; box-shadow: 0 4px 10px rgba(6,99,190,0.25); }
.m-pagination .disabled { opacity: 0.5; }

/* ========== 详情页操作按钮（浮动底部CTA） ========== */
.m-cta-bar {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 86;
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(16px);
    border-top: 1px solid var(--c-border);
    padding: 8px var(--m-pad);
    padding-bottom: calc(8px + env(safe-area-inset-bottom));
    display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.05);
}
.m-cta-bar + .m-tabbar-placeholder { height: calc(var(--m-tabbar-h) + 68px); }

/* 小屏优化 (320px) */
@media (max-width: 340px) {
    body { font-size: 14px; }
    .m-module-list, .m-feature-grid, .m-product-grid { grid-template-columns: 1fr; }
    .m-stats { grid-template-columns: repeat(2, 1fr); gap: 10px 6px; }
    .m-stats .item:nth-child(n+3) { margin-top: 4px; padding-top: 8px; border-top: 1px solid rgba(255,255,255,0.18); }
    .m-entry-grid { grid-template-columns: repeat(4,1fr); }
    .m-list-item.has-thumb .thumb { width: 92px; height: 72px; }
    h1 { font-size: 20px; }
}
/* 大屏安全边界 (768+)：避免内容过宽 */
@media (min-width: 700px) {
    body {
        max-width: 480px; margin: 0 auto;
        box-shadow: 0 0 40px rgba(0,0,0,0.1);
        background: #eef2ff;
    }
    .m-header, .m-tabbar { max-width: 480px; margin: 0 auto; left: 50%; transform: translateX(-50%); }
    .m-drawer { right: calc(50% - 240px); left: auto; transform: translateX(105%); }
    .m-drawer.active { transform: translateX(0%); }
}

/* ======================================================
   新增：页脚产品快速导航 + 极简联系条（TabBar 上方）
   ====================================================== */
.m-quick-nav-wrap {
    background: var(--c-white);
    border-top: 1px solid var(--c-gray-200);
}
/* — 极简联系条 — */
.m-quick-contact {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px var(--m-pad);
    gap: 10px;
    border-bottom: 1px solid var(--c-gray-100);
}
.m-qc-phone {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--c-gray-900);
    text-decoration: none;
}
.m-qc-phone-icon {
    width: 34px; height: 34px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    display: flex; align-items: center; justify-content: center;
    color: #fff; font-size: 16px; flex-shrink: 0;
}
.m-qc-phone-text { display: flex; flex-direction: column; line-height: 1.25; }
.m-qc-phone-label { font-size: 10.5px; color: var(--c-gray-500); }
.m-qc-phone-num { font-size: 17px; font-weight: 700; letter-spacing: 0.5px; color: var(--c-gray-900); }
.m-qc-actions { display: flex; gap: 8px; flex-shrink: 0; }

/* — 产品快速导航网格 — */
.m-quick-nav {
    padding: 14px var(--m-pad) 16px;
}
.m-quick-nav-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
.m-quick-nav-head .t { font-size: 13.5px; font-weight: 600; color: var(--c-gray-900); }
.m-quick-nav-head .more { font-size: 12px; color: var(--c-gray-500); text-decoration: none; }
.m-quick-nav-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 9px;
}
.m-qn-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 10px 4px;
    border-radius: 10px;
    border: 1px solid transparent;
    text-decoration: none;
    transition: transform .15s ease;
    -webkit-tap-highlight-color: transparent;
}
.m-qn-btn:active { transform: scale(0.96); }
.m-qn-btn .emoji { font-size: 17px; line-height: 1; }
.m-qn-btn .lbl { font-size: 11.5px; color: var(--c-gray-700); font-weight: 500; line-height: 1.2; }

/* 8 种产品背景色（与 8 个入口一一对应） */
.m-qn-btn.qn-1 { background: #F5F3FF; border-color: #EDE9FE; }  /* 财筑云 浅紫 */
.m-qn-btn.qn-2 { background: #EFF6FF; border-color: #DBEAFE; }  /* 工程项目 浅蓝 */
.m-qn-btn.qn-3 { background: #F0FDF4; border-color: #DCFCE7; }  /* 行业方案 浅绿 */
.m-qn-btn.qn-4 { background: #FFF7ED; border-color: #FFEDD5; }  /* 核心模块 浅橙 */
.m-qn-btn.qn-5 { background: #FEF2F2; border-color: #FECACA; }  /* 客户案例 浅红 */
.m-qn-btn.qn-6 { background: #ECFEFF; border-color: #CFFAFE; }  /* 帮助文档 浅青 */
.m-qn-btn.qn-7 { background: #FAF5FF; border-color: #F3E8FF; }  /* 价格方案 浅紫2 */
.m-qn-btn.qn-8 { background: #F1F5F9; border-color: #E2E8F0; }  /* 下载中心 浅灰 */

/* ======================================================
   新增：抽屉菜单 V2（整理后，10 条主项 + 统一快捷胶囊）
   ====================================================== */
.m-nav-list {
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 10px 10px 14px;
}
.m-nav-group {
    margin: 14px 6px 6px;
    padding: 0;
    font-size: 11.5px;
    font-weight: 600;
    color: var(--c-gray-500);
    letter-spacing: 1px;
    text-transform: none;
}
.m-nav-group:first-child { margin-top: 4px; }
.m-nav-main-item {
    margin: 2px 0;
}
.m-nav-main-item > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 12px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 500;
    color: var(--c-gray-800);
    text-decoration: none;
    transition: background .15s ease;
}
.m-nav-main-item > a:active,
.m-nav-main-item > a.active {
    background: var(--c-primary-light);
    color: var(--c-primary);
}
.m-nav-main-item .nav-badge {
    display: inline-block;
    padding: 1.5px 6px;
    margin-left: 6px;
    font-size: 10px;
    font-weight: 500;
    color: var(--c-primary);
    background: rgba(6,99,190,0.08);
    border-radius: 4px;
    line-height: 1.5;
}
.m-nav-main-item .arrow {
    width: 22px; height: 22px; border-radius: 50%; flex-shrink: 0;
    background: var(--c-gray-100);
    color: var(--c-gray-500);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 12px; font-weight: 600;
    transition: all .15s ease;
}
.m-nav-main-item > a:active .arrow,
.m-nav-main-item > a.active .arrow {
    background: var(--c-primary);
    color: #fff;
}

/* 产品快捷入口胶囊（统一挂在「产品中心」组底部 2×2） */
.m-nav-subgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding: 4px 6px 2px;
}
.m-nav-sub-btn {
    padding: 8px 10px;
    background: var(--c-gray-50);
    border: 1px solid var(--c-gray-100);
    border-radius: 8px;
    font-size: 12.5px;
    color: var(--c-gray-700);
    text-align: center;
    text-decoration: none;
    transition: all .15s ease;
}
.m-nav-sub-btn:active {
    background: var(--c-primary-light);
    color: var(--c-primary);
    border-color: rgba(6,99,190,0.2);
}
.m-nav-sub-btn.primary {
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff;
    border-color: transparent;
    box-shadow: 0 2px 6px rgba(6,99,190,0.22);
}

/* 抽屉菜单 V3：与 PC 顶栏同源的手风琴分组（details/summary 原生交互） */
.m-nav-acc {
    margin: 2px 0;
    border-radius: 10px;
    transition: background .15s ease;
}
.m-nav-acc[open] { background: var(--c-gray-50); }
.m-nav-acc-head {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    list-style: none;
    cursor: pointer;
    padding: 11px 12px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 500;
    color: var(--c-gray-800);
    transition: background .15s ease;
}
.m-nav-acc-head::-webkit-details-marker { display: none; }
/* 单字徽章：展开时点亮为品牌渐变实底 */
.m-nav-acc-badge {
    width: 27px; height: 27px; border-radius: 9px; flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center;
    margin-right: 10px;
    font-size: 13px; font-weight: 700;
    color: var(--c-primary);
    background: linear-gradient(135deg, rgba(6,99,190,0.12), rgba(0,167,176,0.12));
    transition: all .18s ease;
}
.m-nav-acc[open] > .m-nav-acc-head .m-nav-acc-badge {
    color: #fff;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    box-shadow: 0 2px 6px rgba(6,99,190,0.3);
}
.m-nav-acc-head .chev {
    margin-left: auto;
    font-size: 12px;
    color: var(--c-gray-400);
    transition: transform .18s ease;
}
.m-nav-acc[open] > .m-nav-acc-head .chev { transform: rotate(180deg); }
.m-nav-acc-head:active,
.m-nav-acc-head.active { color: var(--c-primary); }
.m-nav-acc[open] > .m-nav-acc-head {
    color: var(--c-primary-dark);
    font-weight: 600;
}
.m-nav-acc-body { padding: 2px 6px 8px; }
.m-nav-acc-sub {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 10px 6px 4px;
    font-size: 11.5px;
    font-weight: 600;
    color: var(--c-primary-dark);
    letter-spacing: 0.5px;
}
.m-nav-acc-sub::before {
    content: '';
    width: 3px;
    height: 11px;
    border-radius: 2px;
    background: linear-gradient(180deg, var(--c-gradient-start), var(--c-gradient-end));
}
.m-nav-acc-sub:first-child { margin-top: 2px; }
.m-nav-main-item.is-sub > a { padding-left: 14px; font-size: 14px; }
.m-nav-hero {
    background: linear-gradient(135deg, rgba(6,99,190,0.08), rgba(0,167,176,0.08));
    border: 1px solid rgba(6,99,190,0.12);
    box-shadow: 0 2px 10px rgba(6,99,190,0.08);
    color: var(--c-primary-dark);
    font-weight: 600;
}
.m-nav-hero .arrow {
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff;
    box-shadow: 0 2px 5px rgba(6,99,190,0.28);
}

/* 抽屉底部联系区（极简化） */
.m-drawer-foot .df-mini-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 14px 12px;
    gap: 10px;
}
.m-drawer-foot .df-mini-email {
    font-size: 12.5px;
    color: var(--c-gray-500);
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}
.m-drawer-foot .df-mini-trial {
    padding: 5px 10px;
    font-size: 12px;
    font-weight: 500;
    color: var(--c-primary);
    background: var(--c-primary-light);
    border-radius: 6px;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
}

/* 小屏 340 以下：产品胶囊 3 列更紧凑 */
@media (max-width: 340px) {
    .m-quick-nav-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ======================================================
   核心产品矩阵 V2：2 大产品卡片上下堆叠 · 放大展示
   ====================================================== */
.m-pmv2-header {
    padding: 8px var(--m-pad) 16px;
    text-align: center;
}
.m-pmv2-header h2 {
    font-size: 22px;
    font-weight: 800;
    margin: 0 0 6px;
    color: #0f172a;
    letter-spacing: -0.3px;
    background: linear-gradient(135deg, #064eab, #00a7b0);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.m-pmv2-subtitle {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    line-height: 1.6;
}

.m-pmv2-card {
    margin: 0 var(--m-pad);
    background: #fff;
    border-radius: 18px;
    padding: 18px 16px 18px;
    position: relative;
    box-shadow:
        0 1px 3px rgba(15,23,42,0.06),
        0 10px 24px -12px rgba(15,23,42,0.15);
    overflow: hidden;
}
/* 财筑云渐变顶部条 */
.m-pmv2-card-cloud {
    border-top: 4px solid transparent;
    background-image:
        linear-gradient(#fff, #fff),
        linear-gradient(135deg, #3b82f6 0%, #0663be 50%, #00a7b0 100%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
}
/* 金石工程渐变顶部条 */
.m-pmv2-card-jinshi {
    border-top: 4px solid transparent;
    background-image:
        linear-gradient(#fff, #fff),
        linear-gradient(135deg, #059669 0%, #0663be 50%, #8b5cf6 100%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
}

.m-pmv2-badge {
    display: inline-block;
    padding: 4px 10px 5px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(135deg, #f59e0b, #ef4444);
    border-radius: 8px;
    margin-bottom: 14px;
    letter-spacing: 0.2px;
}
.m-pmv2-badge-gray {
    background: linear-gradient(135deg, #475569, #1e293b);
}

.m-pmv2-icon-row {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 14px;
}
.m-pmv2-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    flex-shrink: 0;
}
.m-pmv2-icon-cloud {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 50%, #0663be 100%);
    color: #fff;
    box-shadow: 0 8px 18px -8px rgba(59,130,246,0.55);
}
.m-pmv2-icon-jinshi {
    background: linear-gradient(135deg, #dcfce7 0%, #a7f3d0 50%, #059669 100%);
    color: #fff;
    box-shadow: 0 8px 18px -8px rgba(5,150,105,0.55);
}
.m-pmv2-title-wrap {
    flex: 1;
    min-width: 0;
}
.m-pmv2-title {
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 4px;
    color: #0f172a;
    line-height: 1.25;
}
.m-pmv2-tagline {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.2px;
    color: #94a3b8;
    text-transform: uppercase;
}

.m-pmv2-slogan {
    font-size: 14px;
    color: #334155;
    line-height: 1.7;
    margin: 0 0 14px;
    font-weight: 500;
    padding: 10px 12px;
    background: linear-gradient(135deg, #f8fafc, #f1f5f9);
    border-radius: 10px;
    border-left: 3px solid rgba(6,99,190,0.25);
}
.m-pmv2-card-jinshi .m-pmv2-slogan {
    border-left-color: rgba(5,150,105,0.3);
}

.m-pmv2-features {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 16px;
}
.m-pmv2-fitem {
    padding: 9px 11px;
    background: #f8fafc;
    border-radius: 8px;
    font-size: 13px;
    color: #334155;
    line-height: 1.55;
    font-weight: 500;
}
.m-pmv2-card-cloud .m-pmv2-fitem:nth-child(odd) {
    background: #eff6ff;
}
.m-pmv2-card-jinshi .m-pmv2-fitem:nth-child(odd) {
    background: #f0fdf4;
}

.m-pmv2-btns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 14px;
}
.m-btn-big {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 12px 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-radius: 11px !important;
    text-align: center !important;
    text-decoration: none !important;
    letter-spacing: 0.2px;
    transition: all .15s ease;
}
.m-btn-big:active {
    transform: scale(0.97);
}
.m-btn-jinshi {
    background: linear-gradient(135deg, #059669 0%, #0663be 100%) !important;
}
.m-btn-alt2 {
    background: #fff !important;
    color: #0663be !important;
    border: 2px solid #dbeafe !important;
    box-shadow: 0 1px 2px rgba(15,23,42,0.04);
}
.m-pmv2-card-jinshi .m-btn-alt2 {
    color: #059669 !important;
    border-color: #bbf7d0 !important;
}

.m-pmv2-quicklinks {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    padding-top: 12px;
    border-top: 1px dashed #e2e8f0;
    justify-content: center;
}
.m-pmv2-quicklinks a {
    padding: 5px 10px;
    font-size: 12px;
    color: #475569;
    background: #f1f5f9;
    border-radius: 7px;
    text-decoration: none;
    font-weight: 500;
}
.m-pmv2-quicklinks a:active {
    background: linear-gradient(135deg, #0663be, #00a7b0);
    color: #fff;
}

/* ===== 移动端：12 大行业解决方案 V2 宫格 ===== */
#industries {
    padding-bottom: 10px;
}
.m-indv2-header {
    padding: 0 var(--m-pad) 18px;
    text-align: center;
}
.m-indv2-header h2 {
    font-size: 22px;
    font-weight: 800;
    margin: 0 0 6px;
    color: #0f172a;
    letter-spacing: -0.3px;
}
.m-indv2-header p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
}

.m-indv2-group {
    margin-bottom: 4px;
}
.m-indv2-group-title {
    padding: 10px var(--m-pad);
    font-size: 13px;
    font-weight: 700;
    color: #334155;
    display: flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(90deg, #f1f5f9 0%, transparent 100%);
}
.m-indv2-group-title.cloud {
    color: #0663be;
    background: linear-gradient(90deg, #dbeafe 0%, transparent 100%);
}
.m-indv2-group-title.jinshi {
    color: #b45309;
    background: linear-gradient(90deg, #fef3c7 0%, transparent 100%);
}
.m-indv2-group-icon {
    font-size: 16px;
}

.m-indv2-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 6px var(--m-pad) 4px;
}

.m-indv2-card {
    position: relative;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    box-shadow:
        0 1px 3px rgba(15,23,42,0.06),
        0 4px 14px -10px rgba(15,23,42,0.14);
    border: 1px solid #f1f5f9;
    transition: transform 0.2s ease;
}
.m-indv2-card:active {
    transform: scale(0.97);
}

.m-indv2-top {
    height: 4px;
    width: 100%;
    flex-shrink: 0;
}

.m-indv2-icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #fff;
    margin: 12px 12px 8px;
    box-shadow: 0 4px 10px -4px rgba(0,0,0,0.22);
}
.m-indv2-name {
    font-size: 14.5px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 12px 4px;
    line-height: 1.25;
}
.m-indv2-slogan {
    font-size: 11.5px;
    color: #64748b;
    margin: 0 12px 10px;
    line-height: 1.5;
    min-height: 32px;
    font-weight: 500;
}
.m-indv2-modules {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 0 12px 10px;
}
.m-indv2-mod {
    display: inline-block;
    padding: 3px 6px;
    font-size: 10px;
    font-weight: 600;
    border-radius: 4px;
    border: 1px solid;
    line-height: 1.3;
}
.m-indv2-cta {
    margin: auto 12px 12px;
    padding-top: 8px;
    border-top: 1px dashed #f1f5f9;
    font-size: 11.5px;
    font-weight: 700;
    text-align: right;
}

/* ===== 移动端：22 大功能模块架构 V2 ===== */
#modules {
    padding-bottom: 6px;
}
.m-fma-header {
    padding: 14px var(--m-pad) 16px;
    text-align: center;
}
.m-fma-badge {
    display: inline-block;
    padding: 4px 12px;
    font-size: 11.5px;
    font-weight: 700;
    color: #0663be;
    background: linear-gradient(135deg, #dbeafe, #e0e7ff);
    border-radius: 999px;
    margin-bottom: 10px;
}
.m-fma-header h2 {
    font-size: 19.5px;
    font-weight: 800;
    margin: 0 0 6px;
    color: #0f172a;
    letter-spacing: -0.2px;
    line-height: 1.3;
}
.m-fma-header p {
    font-size: 12.5px;
    color: #64748b;
    margin: 0;
    line-height: 1.5;
}

.m-fma-layer {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid #f1f5f9;
    box-shadow: 0 2px 8px -6px rgba(15,23,42,0.15);
}
.m-fma-layer-head {
    padding: 12px 14px;
    display: flex;
    align-items: center;
    gap: 12px;
}
.m-fma-layer-tag {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    color: #fff;
    font-weight: 800;
    font-size: 14px;
    line-height: 34px;
    text-align: center;
    flex-shrink: 0;
    box-shadow: 0 4px 10px -5px rgba(0,0,0,0.2);
}
.m-fma-layer-title h3 {
    font-size: 15px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 2px;
}
.m-fma-layer-title span {
    font-size: 11.5px;
    color: #475569;
    font-weight: 600;
}
.m-fma-mod-list {
    padding: 0 12px 12px;
}
.m-fma-mod-row {
    display: flex;
    gap: 6px;
    margin-bottom: 6px;
}
.m-fma-mod-row:last-child {
    margin-bottom: 0;
}
.m-fma-mod {
    flex: 1;
    display: block;
    padding: 8px 8px;
    font-size: 11.5px;
    font-weight: 700;
    color: var(--m-fma-accent);
    background: color-mix(in srgb, var(--m-fma-accent) 8%, transparent);
    border: 1px solid color-mix(in srgb, var(--m-fma-accent) 20%, transparent);
    border-radius: 8px;
    text-align: center;
    text-decoration: none;
    transition: all 0.2s ease;
    line-height: 1.3;
}
.m-fma-mod:active {
    transform: scale(0.96);
    background: color-mix(in srgb, var(--m-fma-accent) 14%, transparent);
}

.m-fma-summary {
    margin: 14px var(--m-pad) 6px;
    background: linear-gradient(135deg, #0663be, #1d4ed8);
    border-radius: 14px;
    padding: 16px 14px;
    color: #fff;
}
.m-fma-sum-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin-bottom: 12px;
}
.m-fma-sum-grid div {
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 9px;
    padding: 8px 4px;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.m-fma-sum-grid strong {
    font-size: 20px;
    font-weight: 800;
    line-height: 1;
}
.m-fma-sum-grid span {
    font-size: 10.5px;
    font-weight: 500;
    color: rgba(255,255,255,0.85);
}
.m-fma-sum-cta {
    display: flex;
    gap: 8px;
}
.m-fma-cta {
    flex: 1;
    display: block;
    padding: 10px 8px;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    border-radius: 9px;
    text-decoration: none;
    transition: all 0.2s ease;
}
.m-fma-cta.primary {
    background: #fff;
    color: #0663be;
}
.m-fma-cta.primary:active {
    transform: scale(0.97);
    filter: brightness(0.96);
}
.m-fma-cta.ghost {
    background: rgba(255,255,255,0.1);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.25);
}
.m-fma-cta.ghost:active {
    background: rgba(255,255,255,0.2);
}

/* ===== 移动端：产品版本对比 ===== */
.m-fma-compare-head {
    text-align: center;
    padding: 8px var(--m-pad) 14px;
}
.m-fma-compare-head h2 {
    font-size: 19px;
    font-weight: 800;
    margin: 0 0 4px;
    color: #0f172a;
}
.m-fma-compare-head p {
    font-size: 12.5px;
    color: #64748b;
    margin: 0;
}
.m-fma-compare-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 0 var(--m-pad);
}
.m-fma-pcard {
    display: block;
    border-radius: 14px;
    padding: 14px 12px 12px;
    background: #fff;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    border: 1.5px solid #e2e8f0;
    box-shadow: 0 2px 8px -6px rgba(15,23,42,0.15);
    transition: all 0.2s ease;
}
.m-fma-pcard:active {
    transform: scale(0.97);
}
.m-fma-pcard.cloud {
    background: linear-gradient(180deg, #f0f9ff 0%, #fff 50%);
    border-color: #bfdbfe;
}
.m-fma-pcard.jinshi {
    background: linear-gradient(180deg, #fffbeb 0%, #fff 50%);
    border-color: #fde68a;
}
.m-fma-pcard-badge {
    position: absolute;
    top: 10px; right: -24px;
    transform: rotate(35deg);
    background: linear-gradient(135deg, #0663be, #1d4ed8);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 28px;
    letter-spacing: 0.3px;
}
.m-fma-pcard-badge.alt {
    background: linear-gradient(135deg, #b45309, #d97706);
}
.m-fma-pcard-head {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 16px 0 10px;
}
.m-fma-pcard-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
    flex-shrink: 0;
}
.m-fma-pcard.cloud .m-fma-pcard-icon { background: linear-gradient(135deg, #3b82f6, #0663be); }
.m-fma-pcard.jinshi .m-fma-pcard-icon { background: linear-gradient(135deg, #f59e0b, #b45309); }
.m-fma-pcard-head h3 {
    font-size: 14px;
    font-weight: 800;
    margin: 0 0 2px;
    color: #0f172a;
    line-height: 1.25;
}
.m-fma-pcard-head span {
    font-size: 10.5px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.3;
    display: block;
}
.m-fma-pcard-list {
    list-style: none;
    margin: 0 0 12px;
    padding: 0;
}
.m-fma-pcard-list li {
    padding: 4px 0;
    font-size: 11.5px;
    color: #475569;
    display: flex;
    align-items: flex-start;
    gap: 6px;
    line-height: 1.45;
    font-weight: 500;
}
.ck {
    flex-shrink: 0;
    margin-top: 1px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    font-weight: 800;
}
.ck.yes {
    background: #dcfce7;
    color: #15803d;
}
.m-fma-pcard-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 10px;
    border-top: 1px dashed #e2e8f0;
}
.m-fma-pcard-footer div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.m-fma-pcard-footer strong {
    font-size: 11px;
    color: #1e293b;
    font-weight: 700;
}
.m-fma-pcard-footer span {
    font-size: 10.5px;
    color: #64748b;
    font-weight: 500;
}
.m-fma-pcard-cta {
    font-size: 11px;
    font-weight: 700;
    padding: 4px 8px;
    border-radius: 7px;
}
.m-fma-pcard.cloud .m-fma-pcard-cta {
    background: #dbeafe;
    color: #1d4ed8;
}
.m-fma-pcard.jinshi .m-fma-pcard-cta {
    background: #fef3c7;
    color: #92400e;
}

.m-fma-quickselect {
    background: #fff;
    border-radius: 12px;
    padding: 12px 14px;
    border: 1px solid #e2e8f0;
}
.m-fma-quickselect h4 {
    font-size: 13.5px;
    font-weight: 800;
    margin: 0 0 9px;
    color: #0f172a;
}
.m-fma-qsel-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 0;
    gap: 8px;
    font-size: 11.5px;
    color: #475569;
    font-weight: 500;
    border-bottom: 1px dashed #f1f5f9;
}
.m-fma-qsel-row:last-child {
    border-bottom: none;
}
.m-fma-qsel-row strong {
    color: #0f172a;
    font-weight: 700;
}
.m-fma-qsel-row em {
    font-style: normal;
    font-size: 10.5px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 999px;
    flex-shrink: 0;
}
.pick.cloud {
    background: #dbeafe;
    color: #1d4ed8;
}
.pick.jinshi {
    background: #fef3c7;
    color: #92400e;
}

/* ===== 移动端：客户案例 V2 · 产品应用效果量化卡片（产品 80% / 公司 20%） ===== */
.m-cv2-head {
    text-align: center;
    padding: 0 var(--m-pad) 12px;
}
.m-cv2-badge {
    display: inline-block;
    background: linear-gradient(135deg, #fef3c7, #fde68a);
    color: #92400e;
    font-size: 11.5px;
    font-weight: 700;
    padding: 3px 12px;
    border-radius: 999px;
    margin-bottom: 8px;
}
.m-cv2-head h2 {
    font-size: 19px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 5px;
}
.m-cv2-head p {
    font-size: 12.5px;
    color: #64748b;
    margin: 0;
    font-weight: 500;
}

/* 移动端快速 KPI 条 */
.m-cv2-kpibar {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7px;
    margin: 8px var(--m-pad) 14px;
}
.m-cv2-kpibar > div {
    background: #fff;
    border: 1px solid #f1f5f9;
    border-radius: 12px;
    padding: 11px 6px;
    text-align: center;
}
.m-cv2-kpibar b {
    display: block;
    font-size: 17px;
    font-weight: 800;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1.15;
    margin-bottom: 2px;
}
.m-cv2-kpibar i {
    font-style: normal;
    font-size: 10.5px;
    color: #64748b;
    font-weight: 500;
}

/* 案例卡片列表 */
.m-cv2-list {
    padding: 0 var(--m-pad) 10px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.m-cv2-card {
    display: block;
    background: #fff;
    border-radius: 16px;
    padding: 16px 14px 12px;
    text-decoration: none;
    border: 1.5px solid #f1f5f9;
    box-shadow: 0 2px 6px -4px rgba(15,23,42,0.1);
    position: relative;
    overflow: hidden;
    transition: all 0.15s ease;
}
.m-cv2-card:active {
    transform: scale(0.98);
}
.m-cv2-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 4px;
    height: 100%;
    background: var(--m-cv2, #2563eb);
    opacity: 0.9;
}

/* 头部 */
.m-cv2-hd {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding-left: 8px;
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px dashed #e2e8f0;
}
.m-cv2-logo {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}
.m-cv2-hdi { flex: 1; min-width: 0; }
.m-cv2-hdi h3 {
    font-size: 14.5px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 3px;
    line-height: 1.3;
}
.m-cv2-ind {
    font-size: 11px;
    color: #64748b;
    margin-bottom: 4px;
    font-weight: 500;
}
.m-cv2-prod {
    font-size: 11px;
    font-weight: 600;
    color: var(--m-cv2, #2563eb);
}

/* KPI 三项 */
.m-cv2-kpis {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    padding: 10px 8px;
    margin-left: 8px;
    margin-bottom: 10px;
    background: linear-gradient(135deg,
        color-mix(in srgb, var(--m-cv2, #2563eb) 7%, #fff) 0%,
        color-mix(in srgb, var(--m-cv2, #2563eb) 2%, #fff) 100%);
    border-radius: 10px;
    border: 1px solid color-mix(in srgb, var(--m-cv2, #2563eb) 14%, transparent);
}
.m-cv2-k { text-align: center; }
.m-cv2-kn {
    font-size: 17px;
    font-weight: 800;
    color: var(--m-cv2, #2563eb);
    letter-spacing: -0.3px;
    line-height: 1;
    margin-bottom: 3px;
}
.m-cv2-ku {
    font-size: 10px;
    font-weight: 600;
    color: var(--m-cv2, #2563eb);
    opacity: 0.8;
}
.m-cv2-kl {
    font-size: 10px;
    color: #475569;
    font-weight: 500;
}

/* 模块标签 */
.m-cv2-mods {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-left: 8px;
    margin-bottom: 10px;
}
.m-cv2-mod {
    font-size: 10.5px;
    color: #334155;
    padding: 2px 8px;
    border-radius: 999px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    font-weight: 500;
}

/* CTA */
.m-cv2-foot {
    padding-top: 10px;
    margin-left: 8px;
    border-top: 1px solid #f1f5f9;
    display: flex;
    justify-content: flex-end;
}
.m-cv2-more {
    font-size: 11.5px;
    font-weight: 700;
    color: var(--m-cv2, #2563eb);
}

/* 查看全部按钮 */
.m-cv2-all {
    display: block;
    margin: 10px 0 8px;
    padding: 12px 14px;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    color: #fff !important;
    text-align: center;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 6px 16px -8px rgba(37,99,235,0.6);
}
.m-cv2-all:active {
    transform: scale(0.97);
}

/* Logo 墙条（公司 20%） */
.m-cv2-logos {
    margin: 12px var(--m-pad) 0;
    padding: 10px 12px;
    background: #fafafa;
    border-radius: 10px;
    border: 1px solid #f1f5f9;
}
.m-cv2-logos span {
    font-size: 10.5px;
    color: #64748b;
    line-height: 1.6;
    font-weight: 500;
}

/* ================================================================
   移动端：价格方案 V2（产品对比 + 三档位 ROI）
   ================================================================ */
.m-pv2-head {
    text-align: center;
    padding: 0 var(--m-pad);
    margin-bottom: 18px;
}
.m-pv2-badge {
    display: inline-block;
    padding: 4px 12px;
    background: rgba(37,99,235,0.08);
    color: #2563eb;
    border-radius: 16px;
    font-size: 11.5px;
    font-weight: 700;
    margin-bottom: 10px;
    border: 1px solid rgba(37,99,235,0.15);
}
.m-pv2-head h2 {
    margin: 0 0 6px;
    font-size: 21px;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.2px;
}
.m-pv2-head p {
    margin: 0;
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
}
.m-pv2-card {
    background: #fff;
    border-radius: 16px;
    padding: 18px 16px 16px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 2px 6px rgba(15,23,42,0.04);
    overflow: hidden;
}
.m-pv2-card.cloud {
    border-top: 3px solid #2563eb;
}
.m-pv2-card.jinshi {
    border-top: 3px solid #7c3aed;
}
.m-pv2-badge-bar {
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 11.5px;
    font-weight: 700;
    margin-bottom: 14px;
    text-align: center;
}
.m-pv2-badge-bar.cloud {
    background: rgba(37,99,235,0.08);
    color: #1d4ed8;
}
.m-pv2-badge-bar.jinshi {
    background: rgba(124,58,237,0.08);
    color: #6d28d9;
}
.m-pv2-prod {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}
.m-pv2-ico {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    background: linear-gradient(135deg, #eff6ff, #dbeafe);
    flex-shrink: 0;
}
.m-pv2-card.jinshi .m-pv2-ico {
    background: linear-gradient(135deg, #f5f3ff, #ede9fe);
}
.m-pv2-prod h3 {
    margin: 0 0 3px;
    font-size: 17px;
    font-weight: 800;
    color: #0f172a;
}
.m-pv2-prod p {
    margin: 0;
    font-size: 11.5px;
    color: #64748b;
    font-weight: 500;
}
.m-pv2-tiers {
    display: grid;
    gap: 8px;
    margin-bottom: 14px;
}
.m-tier {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 14px;
    border-radius: 10px;
    background: #fafbfc;
    border: 1px solid #eef2f7;
}
.m-tier.hot {
    background: linear-gradient(135deg, #eff6ff, #ffffff);
    border-color: #bfdbfe;
    box-shadow: 0 3px 10px -5px rgba(37,99,235,0.3);
}
.m-pv2-card.jinshi .m-tier.hot {
    background: linear-gradient(135deg, #f5f3ff, #ffffff);
    border-color: #ddd6fe;
    box-shadow: 0 3px 10px -5px rgba(124,58,237,0.3);
}
.m-tier span {
    font-size: 14px;
    font-weight: 800;
    color: #0f172a;
}
.m-tier em {
    font-style: normal;
    font-size: 11px;
    color: #475569;
    font-weight: 500;
    text-align: right;
    display: block;
}
.m-tier.hot em {
    color: #059669;
    font-weight: 600;
}
.m-pv2-roi {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    padding: 14px 10px;
    background: linear-gradient(135deg, #1e3a8a, #1e40af);
    border-radius: 12px;
    color: #fff;
    margin-bottom: 14px;
}
.m-pv2-card.jinshi .m-pv2-roi {
    background: linear-gradient(135deg, #5b21b6, #6d28d9);
}
.m-pv2-roi > div {
    text-align: center;
    position: relative;
}
.m-pv2-roi > div + div::before {
    content: "";
    position: absolute;
    left: 0;
    top: 15%;
    bottom: 15%;
    width: 1px;
    background: rgba(255,255,255,0.15);
}
.m-pv2-roi b {
    display: block;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 2px;
}
.m-pv2-roi i {
    font-style: normal;
    font-size: 10.5px;
    color: rgba(255,255,255,0.8);
    font-weight: 500;
}
.m-pv2-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 18px;
    border-radius: 10px;
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.2s;
    text-align: center;
}
.m-pv2-cta.primary {
    background: #2563eb;
    color: #fff;
    box-shadow: 0 6px 16px -8px rgba(37,99,235,0.7);
}
.m-pv2-card.jinshi .m-pv2-cta.primary {
    background: #7c3aed;
    box-shadow: 0 6px 16px -8px rgba(124,58,237,0.7);
}
.m-pv2-cta.secondary {
    background: #fff;
    color: #2563eb;
    border: 1.5px solid #bfdbfe;
}
.m-pv2-card.jinshi .m-pv2-cta.secondary {
    color: #7c3aed;
    border-color: #ddd6fe;
}
.m-pv2-cta:active {
    transform: scale(0.97);
}
.m-pv2-comp {
    display: block;
    padding: 12px 14px;
    background: linear-gradient(90deg, #f0f9ff, #f5f3ff);
    border: 1px solid #e0e7ff;
    border-radius: 10px;
    font-size: 12.5px;
    font-weight: 600;
    color: #475569;
    text-decoration: none !important;
    text-align: center;
    line-height: 1.5;
}
.m-pv2-comp:active {
    transform: scale(0.98);
    background: #eef2ff;
}

/* ================================================================
   移动端：帮助文档前置 V2（4 张文档卡片 + 3 大入口）
   ================================================================ */
.m-dv2-head {
    text-align: center;
    padding: 0 var(--m-pad);
    margin-bottom: 16px;
}
.m-dv2-badge {
    display: inline-block;
    padding: 4px 12px;
    background: rgba(8,145,178,0.08);
    color: #0891b2;
    border-radius: 16px;
    font-size: 11.5px;
    font-weight: 700;
    margin-bottom: 10px;
    border: 1px solid rgba(8,145,178,0.18);
}
.m-dv2-head h2 {
    margin: 0 0 6px;
    font-size: 21px;
    font-weight: 800;
    color: #0f172a;
}
.m-dv2-head p {
    margin: 0;
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
}
.m-dv2-list {
    display: grid;
    gap: 10px;
    margin-bottom: 14px;
}
.m-dv2-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    text-decoration: none !important;
    transition: all 0.2s;
    border-left: 3px solid var(--mdv2, #2563eb);
    box-shadow: 0 2px 6px rgba(15,23,42,0.04);
}
.m-dv2-card:active {
    transform: scale(0.98);
    background: #f8fafc;
}
.m-dv2-ico {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.m-dv2-info {
    flex: 1;
    min-width: 0;
}
.m-dv2-cat {
    display: inline-block;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}
.m-dv2-info h3 {
    margin: 0 0 5px;
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.35;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.m-dv2-meta {
    font-size: 11px;
    color: #94a3b8;
    font-weight: 500;
}
.m-dv2-arr {
    font-size: 16px;
    font-weight: 700;
    flex-shrink: 0;
}
.m-dv2-entries {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-bottom: 4px;
}
.m-dv2-ent {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 14px 8px;
    border-radius: 12px;
    background: linear-gradient(135deg, #0f172a, #1e293b);
    color: #fff;
    text-decoration: none !important;
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    transition: all 0.2s;
}
.m-dv2-ent:nth-child(1) { background: linear-gradient(135deg, #1e40af, #2563eb); }
.m-dv2-ent:nth-child(2) { background: linear-gradient(135deg, #6d28d9, #7c3aed); }
.m-dv2-ent:nth-child(3) { background: linear-gradient(135deg, #0f766e, #0d9488); }
.m-dv2-ent:active {
    transform: scale(0.95);
    filter: brightness(1.1);
}

/* ================================================================
   移动端：CTA 咨询区强化 V2（三入口 + 信任指标）
   ================================================================ */
.m-ctav2-head {
    text-align: center;
    padding: 0 var(--m-pad);
    margin-bottom: 16px;
}
.m-ctav2-badge {
    display: inline-block;
    padding: 4px 12px;
    background: #fff;
    color: #2563eb;
    border-radius: 16px;
    font-size: 11.5px;
    font-weight: 700;
    margin-bottom: 10px;
    border: 1px solid rgba(37,99,235,0.22);
    box-shadow: 0 4px 10px -6px rgba(37,99,235,0.35);
}
.m-ctav2-head h2 {
    margin: 0 0 6px;
    font-size: 21px;
    font-weight: 800;
    color: #0f172a;
}
.m-ctav2-head p {
    margin: 0;
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.5;
}
.m-ctav2-list {
    display: grid;
    gap: 12px;
    margin-bottom: 18px;
}
.m-ctav2-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 18px 16px;
    background: #fff;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    text-decoration: none !important;
    box-shadow: 0 2px 6px rgba(15,23,42,0.04);
    transition: all 0.22s;
    overflow: hidden;
    border-top: 3px solid var(--mcta, #2563eb);
}
.m-ctav2-card.hot {
    border: 1px solid rgba(124,58,237,0.30);
    border-top: 3px solid var(--mcta, #7c3aed);
    box-shadow: 0 10px 28px -12px rgba(124,58,237,0.40);
}
.m-ctav2-card:active {
    transform: scale(0.98);
}
.m-ctav2-hot {
    position: absolute;
    top: 10px;
    right: 14px;
    padding: 4px 10px;
    background: linear-gradient(90deg, #7c3aed, #a855f7);
    color: #fff;
    border-radius: 12px;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.4px;
    box-shadow: 0 6px 14px -6px rgba(124,58,237,0.55);
}
.m-ctav2-hd {
    display: flex;
    align-items: center;
    gap: 12px;
}
.m-ctav2-ico {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: color-mix(in srgb, var(--mcta, #2563eb) 10%, #fff);
    border: 1px solid color-mix(in srgb, var(--mcta, #2563eb) 18%, #fff);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}
.m-ctav2-hd h3 {
    margin: 0 0 3px;
    font-size: 16px;
    font-weight: 800;
    color: #0f172a;
}
.m-ctav2-hd p {
    margin: 0;
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.4;
}
.m-ctav2-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 13px 16px;
    border-radius: 11px;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    text-decoration: none !important;
    transition: all 0.2s;
}
.m-ctav2-btn.primary {
    background: var(--mcta, #2563eb);
    color: #fff;
    box-shadow: 0 8px 20px -10px color-mix(in srgb, var(--mcta, #2563eb) 65%, transparent);
}
.m-ctav2-btn.primary.big {
    padding: 15px 16px;
    font-size: 15px;
}
.m-ctav2-btn.secondary {
    background: #fff;
    color: var(--mcta, #b45309);
    border: 1.5px solid var(--mcta, #b45309);
}
.m-ctav2-btn:active {
    transform: scale(0.97);
}
.m-ctav2-trust {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px 20px;
    padding: 0 var(--m-pad) 6px;
    font-size: 11.5px;
    color: #64748b;
    font-weight: 600;
}
.m-ctav2-trust span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

/* ================================================================
   移动端：产品资源中心 V2（m-rv2）70%产品 30%行业
   ================================================================ */
#mresource { padding-top: 8px; }
.m-rv2-head {
    text-align: center;
    padding: 0 var(--m-pad);
    margin-bottom: 14px;
}
.m-rv2-badge {
    display: inline-block;
    padding: 4px 12px;
    background: linear-gradient(90deg, rgba(37,99,235,0.08), rgba(124,58,237,0.08));
    color: #2563eb;
    border-radius: 16px;
    font-size: 11.5px;
    font-weight: 700;
    margin-bottom: 10px;
    border: 1px solid rgba(37,99,235,0.15);
    letter-spacing: 0.4px;
}
.m-rv2-head h2 {
    margin: 0 0 6px;
    font-size: 21px;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.2px;
}
.m-rv2-head p {
    margin: 0;
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.5;
}
.m-rv2-cats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
    padding: 0 var(--m-pad) 12px;
}
.m-rv2-cat {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 10px 4px 8px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    border-top: 3px solid var(--mrc, #2563eb);
    text-decoration: none !important;
    transition: all 0.2s;
    box-shadow: 0 1px 3px rgba(15,23,42,0.04);
}
.m-rv2-cat:active { transform: scale(0.96); }
.m-rv2-cat span { font-size: 16px; }
.m-rv2-cat em {
    font-style: normal;
    font-size: 11px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
}
.m-rv2-cat b {
    font-weight: 600;
    font-size: 9.5px;
    color: var(--mrc, #2563eb);
    opacity: 0.8;
    background: color-mix(in srgb, var(--mrc, #2563eb) 10%, transparent);
    padding: 1px 6px;
    border-radius: 8px;
    margin-top: 1px;
}
.m-rv2-hero {
    display: block;
    padding: 16px 16px 14px;
    background: #fff;
    border-radius: 14px;
    border: 1px solid #e2e8f0;
    border-left: 4px solid var(--mrhh, #7c3aed);
    text-decoration: none !important;
    transition: all 0.2s;
    box-shadow: 0 2px 6px rgba(15,23,42,0.04);
    position: relative;
    overflow: hidden;
}
.m-rv2-hero::after {
    content: "";
    position: absolute;
    top: -40px;
    right: -40px;
    width: 140px;
    height: 140px;
    background: radial-gradient(circle, color-mix(in srgb, var(--mrhh, #7c3aed) 8%, transparent), transparent 68%);
    pointer-events: none;
}
.m-rv2-hero:active { transform: scale(0.98); }
.m-rv2-hero-hd {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}
.m-rv2-hero-cat {
    font-size: 11.5px;
    font-weight: 700;
    color: var(--mrhh, #7c3aed);
    background: color-mix(in srgb, var(--mrhh, #7c3aed) 10%, transparent);
    padding: 3px 10px;
    border-radius: 12px;
}
.m-rv2-hero-meta {
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 600;
}
.m-rv2-hero h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 6px;
    font-size: 17px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.35;
    letter-spacing: -0.1px;
}
.m-rv2-hero p {
    position: relative;
    z-index: 1;
    margin: 0 0 10px;
    font-size: 12.5px;
    color: #475569;
    line-height: 1.55;
    font-weight: 500;
}
.m-rv2-hero-go {
    position: relative;
    z-index: 1;
    display: inline-block;
    padding: 8px 14px;
    background: var(--mrhh, #7c3aed);
    color: #fff;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
}
.m-rv2-cards {
    display: grid;
    gap: 10px;
    padding: 0 var(--m-pad) 12px;
}
.m-rv2-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 13px 14px 12px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    border-top: 3px solid var(--mrcc, #2563eb);
    text-decoration: none !important;
    transition: all 0.2s;
    box-shadow: 0 1px 4px rgba(15,23,42,0.04);
}
.m-rv2-card:active { transform: scale(0.98); }
.m-rv2-card-cat {
    display: inline-block;
    padding: 3px 9px;
    border-radius: 14px;
    font-size: 10.5px;
    font-weight: 700;
    align-self: flex-start;
    background: color-mix(in srgb, var(--mrcc, #2563eb) 10%, transparent);
    color: var(--mrcc, #2563eb);
}
.m-rv2-card h3 {
    margin: 0;
    font-size: 14.5px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.m-rv2-card p {
    margin: 0;
    font-size: 12px;
    color: #64748b;
    line-height: 1.55;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.m-rv2-card-foot {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 11px;
    color: #94a3b8;
    font-weight: 600;
    padding-top: 4px;
    border-top: 1px dashed #e2e8f0;
}
.m-rv2-tl {
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    padding: 14px 14px 12px;
    box-shadow: 0 1px 4px rgba(15,23,42,0.04);
}
.m-rv2-tl-hd {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.m-rv2-tl-title {
    font-size: 14.5px;
    font-weight: 800;
    color: #0f172a;
}
.m-rv2-tl-more {
    font-size: 11.5px;
    color: #2563eb;
    font-weight: 700;
    text-decoration: none !important;
}
.m-rv2-tl-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 10px;
}
.m-rv2-tl-list li {
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: 12px;
    align-items: flex-start;
    padding: 6px 0;
    border-left: 2px solid color-mix(in srgb, var(--mrtc, #2563eb) 30%, transparent);
    padding-left: 12px;
    position: relative;
}
.m-rv2-tl-list li::before {
    content: "";
    position: absolute;
    left: -5px;
    top: 10px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--mrtc, #2563eb);
}
.m-rv2-tl-v {
    font-size: 11.5px;
    font-weight: 700;
    color: var(--mrtc, #2563eb);
    background: color-mix(in srgb, var(--mrtc, #2563eb) 10%, transparent);
    padding: 3px 8px;
    border-radius: 6px;
    text-align: center;
    display: inline-block;
}
.m-rv2-tl-body {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.m-rv2-tl-body b {
    font-size: 12.5px;
    font-weight: 600;
    color: #334155;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.m-rv2-tl-body em {
    font-style: normal;
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 600;
}

/* ================================================================
   移动端：关于我们单页 V2（产品导向 8:2）
   ================================================================ */
.m-ab-hero {
    padding: 22px var(--m-pad) 18px;
    background:
        radial-gradient(circle at 10% 0%, rgba(37,99,235,0.10), transparent 55%),
        radial-gradient(circle at 90% 100%, rgba(124,58,237,0.10), transparent 55%),
        linear-gradient(180deg,#fff,#f5f9ff);
    text-align: center;
}
.m-ab-badge {
    display: inline-block;
    padding: 5px 12px;
    background: rgba(37,99,235,0.10);
    color: #2563eb;
    border-radius: 16px;
    font-size: 11.5px;
    font-weight: 700;
    margin-bottom: 12px;
    border: 1px solid rgba(37,99,235,0.18);
}
.m-ab-hero h1 {
    margin: 0 0 10px;
    font-size: 23px;
    line-height: 1.3;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.2px;
}
.m-grad {
    background: linear-gradient(90deg,#2563eb,#7c3aed 60%,#0ea5e9);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    font-style: normal;
}
.m-ab-hero p {
    margin: 0;
    font-size: 13px;
    color: #475569;
    line-height: 1.6;
    font-weight: 500;
}
.m-ab-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
    padding: 10px var(--m-pad) 4px;
}
.m-ab-stat {
    padding: 10px 4px 8px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    border-top: 3px solid var(--msc, #2563eb);
    text-align: center;
    box-shadow: 0 1px 4px rgba(15,23,42,0.05);
}
.m-ab-stat .num {
    font-size: 17px;
    font-weight: 800;
    color: var(--msc, #2563eb);
    line-height: 1.15;
    margin-bottom: 3px;
    letter-spacing: -0.3px;
}
.m-ab-stat .lab {
    font-size: 10.5px;
    color: #475569;
    font-weight: 600;
    line-height: 1.3;
}
.m-ab-ctarow {
    display: flex;
    gap: 8px;
    padding: 10px var(--m-pad) 16px;
}
.m-ab-cta1, .m-ab-cta2 {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 10px;
    border-radius: 10px;
    font-size: 12.5px;
    font-weight: 700;
    text-decoration: none !important;
}
.m-ab-cta1 {
    background: linear-gradient(135deg,#2563eb,#7c3aed);
    color: #fff;
    box-shadow: 0 6px 16px -8px rgba(37,99,235,0.6);
}
.m-ab-cta2 {
    background: #fff;
    color: #2563eb;
    border: 1.5px solid rgba(37,99,235,0.3);
}
.m-ab-sec {
    padding: 22px 0;
}
.m-ab-sec-head {
    padding: 0 var(--m-pad);
    text-align: center;
    margin-bottom: 14px;
}
.m-ab-st {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 14px;
    font-size: 11px;
    font-weight: 700;
    margin-bottom: 8px;
}
.m-ab-sec-head h2 {
    margin: 0;
    font-size: 18px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.3;
    letter-spacing: -0.1px;
}
.m-ab-prod {
    margin: 0 var(--m-pad) 10px;
    padding: 16px 14px 14px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-top: 4px solid var(--mpc, #2563eb);
    text-decoration: none !important;
    display: block;
    transition: all 0.2s;
    box-shadow: 0 2px 8px -6px rgba(15,23,42,0.15);
}
.m-ab-prod:active { transform: scale(0.99); }
.map-hd {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    flex-wrap: wrap;
    gap: 6px;
}
.map-tag {
    color: #fff;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
}
.map-price {
    font-size: 11.5px;
    font-weight: 700;
    color: #0f172a;
    padding: 3px 8px;
    background: #f8fafc;
    border-radius: 6px;
    border: 1px dashed #cbd5e1;
}
.map-name {
    font-size: 18px;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 2px;
    line-height: 1.2;
}
.map-sub {
    font-size: 12px;
    color: var(--mpc, #2563eb);
    font-weight: 700;
    margin-bottom: 6px;
}
.map-desc {
    font-size: 12.5px;
    color: #475569;
    line-height: 1.6;
    margin-bottom: 10px;
    font-weight: 500;
}
.map-metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    padding: 10px 8px;
    background: #f8fafc;
    border-radius: 10px;
    margin-bottom: 8px;
}
.map-met {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 2px;
}
.map-met b {
    font-size: 12.5px;
    font-weight: 800;
    color: var(--mpc, #2563eb);
}
.map-met span {
    font-size: 10px;
    color: #64748b;
    font-weight: 600;
    line-height: 1.3;
}
.map-feats {
    list-style: none;
    padding: 0;
    margin: 0 0 10px;
    display: grid;
    gap: 5px;
}
.map-feats li {
    font-size: 12px;
    color: #334155;
    font-weight: 600;
    line-height: 1.5;
}
.map-btn {
    padding: 10px 12px;
    border-radius: 9px;
    color: #fff;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
}
.m-ab-methods {
    display: grid;
    gap: 10px;
    padding: 0 var(--m-pad);
}
.m-ab-meth {
    padding: 14px 13px 12px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    border-top: 3px solid var(--mmc, #2563eb);
    box-shadow: 0 1px 5px rgba(15,23,42,0.05);
}
.m-mh {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}
.mm-step {
    font-size: 20px;
    font-weight: 900;
    color: var(--mmc, #2563eb);
    line-height: 1;
}
.mm-ico { font-size: 22px; }
.m-ab-meth h3 {
    margin: 0 0 5px;
    font-size: 15px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.3;
}
.m-ab-meth p {
    margin: 0 0 8px;
    font-size: 12.5px;
    color: #475569;
    line-height: 1.6;
    font-weight: 500;
}
.mm-kpi {
    font-size: 11.5px;
    font-weight: 700;
    color: var(--mmc, #2563eb);
    padding: 6px 10px;
    background: color-mix(in srgb, var(--mmc, #2563eb) 10%, transparent);
    border-radius: 7px;
    display: inline-block;
}
.m-ab-inds {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7px;
    padding: 0 var(--m-pad);
}
.m-ab-ind {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 12px 6px 10px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    border-top: 3px solid var(--mic, #2563eb);
    box-shadow: 0 1px 3px rgba(15,23,42,0.04);
    transition: all 0.2s;
}
.m-ab-ind:active { transform: scale(0.97); }
.mai-i { font-size: 22px; }
.mai-n {
    font-size: 11.5px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.25;
    text-align: center;
}
.m-ab-srvs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    padding: 0 var(--m-pad);
}
.m-ab-srv {
    padding: 12px 10px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    color: #0f172a;
    box-shadow: 0 1px 4px rgba(15,23,42,0.04);
}
.m-ab-voices {
    display: grid;
    gap: 10px;
    padding: 0 var(--m-pad);
}
.m-ab-voice {
    position: relative;
    padding: 16px 14px 13px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    border-left: 3px solid var(--mvc, #2563eb);
    box-shadow: 0 1px 4px rgba(15,23,42,0.05);
}
.mav-q {
    font-size: 13px;
    font-weight: 600;
    color: #1e293b;
    line-height: 1.7;
    margin: 0 0 10px;
    position: relative;
    z-index: 1;
}
.mav-q::before {
    content: '“';
    position: absolute;
    top: -14px;
    left: -2px;
    font-size: 38px;
    color: color-mix(in srgb, var(--mvc, #2563eb) 22%, transparent);
    font-weight: 900;
    line-height: 1;
    z-index: -1;
}
.mav-w {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11.5px;
    font-weight: 700;
    color: #475569;
    padding-top: 8px;
    border-top: 1px dashed #e2e8f0;
}
.mav-w span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
}
.m-ab-tl {
    position: relative;
    padding: 8px var(--m-pad) 4px 26px;
}
.m-ab-tl::before {
    content: "";
    position: absolute;
    left: 20px;
    top: 8px;
    bottom: 12px;
    width: 2px;
    background: linear-gradient(180deg,#2563eb,#7c3aed,#0ea5e9);
    opacity: 0.35;
    border-radius: 2px;
}
.m-ab-tli {
    position: relative;
    padding: 6px 0 10px 8px;
}
.mat-dot {
    position: absolute;
    left: -12px;
    top: 10px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--mtc, #2563eb);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--mtc, #2563eb) 18%, transparent);
    z-index: 1;
}
.mat-year {
    font-size: 12px;
    font-weight: 800;
    color: var(--mtc, #2563eb);
    margin-bottom: 3px;
    letter-spacing: 0.2px;
}
.mat-t {
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.4;
}
.m-ab-finalcta {
    margin: 10px var(--m-pad) 0;
    padding: 20px 16px 16px;
    background: linear-gradient(135deg,#1e3a8a,#4c1d95 60%,#0c4a6e);
    border-radius: 14px;
    color: #fff;
    text-align: center;
    box-shadow: 0 10px 24px -14px rgba(30,58,138,0.7);
}
.m-ab-finalcta h3 {
    margin: 0 0 8px;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: -0.1px;
}
.m-ab-finalcta p {
    margin: 0 0 14px;
    font-size: 12.5px;
    color: rgba(255,255,255,0.85);
    line-height: 1.6;
    font-weight: 500;
}
.mab-fc1, .mab-fc2 {
    display: block;
    padding: 12px 14px;
    border-radius: 10px;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 8px;
    text-align: center;
}
.mab-fc1 {
    background: #fff;
    color: #1e3a8a;
}
.mab-fc2 {
    background: linear-gradient(90deg,#f59e0b,#ef4444);
    color: #fff;
}

/* ================================================================
   移动端：页脚 V3（产品 80%：快速联系条 + 2×4 产品胶囊 + 友链 + 版权）
   ================================================================ */
.m-footerv3 {
    padding: 0 0 6px;
    background: #f9fafb;
    border-top: 1px solid #e5e7eb;
    margin-bottom: 0;
}
/* 快速联系条 */
.mf3-contact {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px var(--m-pad);
    background: linear-gradient(135deg,#1e3a8a 0%,#4c1d95 60%,#0c4a6e 100%);
}
.mf3-phone {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 9px;
    text-decoration: none !important;
    padding: 2px 0;
}
.mf3-pi {
    width: 34px; height: 34px;
    border-radius: 10px;
    background: rgba(255,255,255,0.14);
    border: 1px solid rgba(255,255,255,0.22);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    flex-shrink: 0;
}
.mf3-ptext {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}
.mf3-pl {
    font-size: 10.5px;
    color: rgba(255,255,255,0.8);
    font-weight: 600;
    line-height: 1.3;
}
.mf3-pn {
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
    letter-spacing: 0.2px;
}
.mf3-cta {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 9px;
    background: #fff;
    color: #1e3a8a;
    font-size: 12.5px;
    font-weight: 800;
    text-decoration: none !important;
    box-shadow: 0 6px 14px -6px rgba(0,0,0,0.4);
}

/* 产品胶囊矩阵 */
.mf3-quick {
    padding: 12px var(--m-pad) 6px;
    background: #f9fafb;
}
.mf3-qhead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 9px;
}
.mf3-qhead .t {
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: 0.1px;
}
.mf3-qhead .more {
    font-size: 11.5px;
    color: #2563eb;
    font-weight: 700;
    text-decoration: none !important;
}
.mf3-qgrid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 7px;
}
.mf3-qbtn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 10px 4px 9px;
    background: #fff;
    border-radius: 11px;
    border: 1px solid #e2e8f0;
    text-decoration: none !important;
    transition: all 0.18s;
    box-shadow: 0 1px 4px rgba(15,23,42,0.04);
    position: relative;
    overflow: hidden;
}
.mf3-qbtn::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    border-radius: 11px 11px 0 0;
}
.mf3-q1::before { background: #2563eb; }
.mf3-q2::before { background: #7c3aed; }
.mf3-q3::before { background: #0ea5e9; }
.mf3-q4::before { background: #10b981; }
.mf3-q5::before { background: #f59e0b; }
.mf3-q6::before { background: #ef4444; }
.mf3-q7::before { background: #14b8a6; }
.mf3-q8::before { background: #6366f1; }
.mf3-qbtn:active { transform: scale(0.96); }
.mf3-qbtn .e { font-size: 20px; line-height: 1; }
.mf3-qbtn .l {
    font-size: 11px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
    letter-spacing: 0.1px;
}

/* 友情链接 + 版权 */
.mf3-base {
    padding: 12px var(--m-pad) 10px;
    background: #f1f5f9;
    border-top: 1px solid #e2e8f0;
    margin-top: 6px;
}
.mf3-flinks { margin-bottom: 10px; }
.mf3-fhead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    font-weight: 700;
    color: #374151;
    margin-bottom: 8px;
}
.mf3-sitemap {
    font-size: 11.5px;
    font-weight: 500;
    color: #6b7280;
    text-decoration: none !important;
}
.mf3-flist {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 8px;
}
.mf3-flist a {
    padding: 4px 9px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    font-size: 11.5px;
    color: #4b5563;
    font-weight: 500;
    text-decoration: none !important;
}
.mf3-copy {
    text-align: center;
    font-size: 11px;
    color: #9ca3af;
    line-height: 1.85;
    padding-top: 10px;
    border-top: 1px solid #e2e8f0;
}
.mf3-copy div { line-height: 1.9; }

/* ================================================================
   移动端页脚 V3S：极简版（Logo + 4 产品胶囊 + 友情链接 + 版权）
   ================================================================ */
.m-fs3 {
    background:
        radial-gradient(circle at 10% 0%, rgba(37,99,235,0.12), transparent 50%),
        linear-gradient(180deg,#0b1220 0%,#0f172a 100%);
    color: #cbd5e1;
    padding: 18px 14px 12px;
    font-family: "PingFang SC","Microsoft YaHei",sans-serif;
    margin-top: 8px;
}
.mfs3-top {
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(148,163,184,0.14);
    margin-bottom: 12px;
}
.mfs3-logo {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none !important;
    margin-bottom: 7px;
}
.mfs3-logo .mi {
    width: 32px; height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg,#2563eb,#7c3aed);
    color: #fff;
    border-radius: 9px;
    font-size: 16px;
}
.mfs3-logo .mt {
    font-size: 15.5px;
    font-weight: 800;
    color: #f1f5f9;
    line-height: 1.1;
}
.mfs3-logo .mt em {
    display: block;
    font-style: normal;
    font-size: 10.5px;
    font-weight: 500;
    color: #94a3b8;
    margin-top: 2px;
}
.mfs3-slogan {
    font-size: 11.5px;
    color: #94a3b8;
    line-height: 1.6;
    margin-bottom: 11px;
    font-weight: 500;
}
/* 2x2 产品胶囊 */
.mfs3-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
}
.mfs3-g {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 0 7px;
    padding: 9px 10px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(148,163,184,0.14);
    border-radius: 9px;
    text-decoration: none !important;
    transition: all 0.15s;
    align-items: center;
}
.mfs3-g:active {
    background: rgba(255,255,255,0.06);
    transform: scale(0.985);
}
.mfs3-g .gi {
    grid-row: 1 / 3;
    font-size: 18px;
}
.mfs3-g .gn {
    font-size: 13px;
    font-weight: 700;
    color: #f1f5f9;
    line-height: 1.3;
}
.mfs3-g .gd {
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 500;
    line-height: 1.35;
    margin-top: 1px;
}
.mfs3-g.c-blue  { border-left: 3px solid #3b82f6; background: rgba(59,130,246,0.06); }
.mfs3-g.c-pur   { border-left: 3px solid #8b5cf6; background: rgba(139,92,246,0.06); }
.mfs3-g.c-ora   { border-left: 3px solid #f59e0b; background: rgba(245,158,11,0.06); }
.mfs3-g.c-grn   { border-left: 3px solid #10b981; background: rgba(16,185,129,0.06); }

/* 次级入口 + 友情链接 + 版权 */
.mfs3-sublinks {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
    margin-bottom: 11px;
}
.mfs3-sublinks a {
    font-size: 11.5px;
    font-weight: 600;
    color: #cbd5e1;
    text-align: center;
    padding: 6px 4px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(148,163,184,0.12);
    border-radius: 6px;
    text-decoration: none !important;
    line-height: 1.4;
}
.mfs3-sublinks a:active {
    background: rgba(59,130,246,0.14);
    color: #93c5fd;
}
.mfs3-copy {
    font-size: 10.5px;
    color: #475569;
    line-height: 1.85;
    text-align: center;
    font-weight: 500;
    letter-spacing: 0.1px;
}

/* ================================================================
   移动端：价格方案 V3 · 全新视觉风格
   ================================================================ */
.m-pv3-sec {
    position: relative;
    padding: 28px 0 22px;
    background:
        radial-gradient(600px 300px at 10% -10%, rgba(37,99,235,0.10), transparent 60%),
        radial-gradient(600px 300px at 90% 0%, rgba(139,92,246,0.10), transparent 60%),
        linear-gradient(180deg, #f4f7fc 0%, #ffffff 45%, #f8faff 100%);
    margin: 0;
    overflow: hidden;
}
.m-pv3-sec::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 1px 1px, rgba(100,116,139,0.10) 1px, transparent 0);
    background-size: 20px 20px;
    mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.5) 40%, transparent 100%);
    opacity: 0.3;
    pointer-events: none;
}
.m-pv3-sec > * { position: relative; z-index: 2; }

/* 标题区 */
.m-pv3-head {
    text-align: center;
    padding: 0 var(--m-pad);
    margin-bottom: 22px;
}
.m-pv3-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4.5px 13px;
    background: linear-gradient(90deg, rgba(37,99,235,0.08), rgba(139,92,246,0.10));
    color: #2563eb;
    border: 1px solid rgba(37,99,235,0.18);
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.2px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.5);
}
.m-pv3-badge .dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: radial-gradient(circle, #10b981, #059669);
    box-shadow: 0 0 0 2.5px rgba(16,185,129,0.18);
    animation: mpv3Pulse 2s ease-in-out infinite;
    font-style: normal;
    display: inline-block;
}
@keyframes mpv3Pulse {
    0%,100% { box-shadow: 0 0 0 2.5px rgba(16,185,129,0.18); }
    50% { box-shadow: 0 0 0 5px rgba(16,185,129,0.05); }
}
.m-pv3-head h2 {
    margin: 14px 0 10px;
    font-size: 24px;
    font-weight: 900;
    color: #0b1220;
    letter-spacing: -0.3px;
    line-height: 1.22;
    background: linear-gradient(135deg, #0b1220 20%, #2563eb 60%, #7c3aed 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.m-pv3-head-pills {
    display: inline-flex;
    align-items: center;
    gap: 7px 9px;
    padding: 5px 8px;
    background: rgba(255,255,255,0.7);
    backdrop-filter: blur(6px);
    border-radius: 14px;
    border: 1px solid rgba(148,163,184,0.18);
    box-shadow: 0 4px 14px -10px rgba(15,23,42,0.15);
    flex-wrap: wrap;
    justify-content: center;
}
.m-pv3-head-pills .pill {
    font-size: 11.5px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 8px;
    line-height: 1.6;
}
.m-pv3-head-pills .pill.blue {
    background: rgba(59,130,246,0.12);
    color: #1d4ed8;
    border: 1px solid rgba(59,130,246,0.24);
}
.m-pv3-head-pills .pill.pur {
    background: rgba(139,92,246,0.12);
    color: #6d28d9;
    border: 1px solid rgba(139,92,246,0.24);
}
.m-pv3-head-pills .vs {
    font-size: 10px;
    font-weight: 900;
    color: #fff;
    background: linear-gradient(135deg, #0f172a, #334155);
    width: 22px; height: 22px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    letter-spacing: -0.3px;
    box-shadow: 0 3px 8px -4px rgba(15,23,42,0.5);
}

/* 两张产品卡片 */
.m-pv3-card {
    margin: 0 var(--m-pad) 14px;
    background: #fff;
    border-radius: 20px;
    overflow: visible;
    position: relative;
    box-shadow:
        0 14px 38px -20px rgba(15,23,42,0.18),
        0 2px 5px rgba(15,23,42,0.04),
        inset 0 1px 0 rgba(255,255,255,0.9);
    border: 1px solid rgba(148,163,184,0.20);
}
.m-pv3-card::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 5px;
    border-radius: 20px 20px 0 0;
    background: linear-gradient(90deg, #0ea5e9, #2563eb 45%, #6366f1);
}
.m-pv3-card.pur::before {
    background: linear-gradient(90deg, #f59e0b, #a855f7 45%, #7c3aed);
}
/* 角标丝带 */
.m-pv3-ribbon {
    position: absolute;
    top: -11px;
    right: 16px;
    z-index: 3;
    padding: 4.5px 11px;
    border-radius: 9px;
    font-size: 10.5px;
    font-weight: 800;
    color: #fff;
    letter-spacing: 0.2px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    box-shadow:
        0 8px 18px -8px rgba(239,68,68,0.55),
        0 0 0 2.5px rgba(255,255,255,0.95);
}
.m-pv3-ribbon.cloud {
    background: linear-gradient(135deg, #ef4444, #f97316);
}
.m-pv3-ribbon.pur {
    background: linear-gradient(135deg, #7c3aed, #a855f7);
    box-shadow:
        0 8px 18px -8px rgba(124,58,237,0.55),
        0 0 0 2.5px rgba(255,255,255,0.95);
}

/* 产品头部 */
.m-pv3-cc {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 11px;
    align-items: center;
    padding: 24px 14px 16px;
    border-bottom: 1px dashed rgba(148,163,184,0.22);
    margin: 0 2px;
}
.m-pv3-logo {
    width: 48px; height: 48px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(59,130,246,0.10), rgba(37,99,235,0.20));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.7),
        0 6px 14px -6px rgba(37,99,235,0.42);
    flex-shrink: 0;
}
.m-pv3-logo.pur {
    background: linear-gradient(135deg, rgba(168,85,247,0.12), rgba(124,58,237,0.22));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.7),
        0 6px 14px -6px rgba(124,58,237,0.44);
}
.m-pv3-ttl .tag-row {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-bottom: 6px;
}
.m-pv3-ttl .tag {
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 0.3px;
    padding: 2.5px 7px;
    border-radius: 6px;
    background: linear-gradient(135deg, #2563eb, #3b82f6);
    color: #fff;
    line-height: 1.5;
}
.m-pv3-ttl .tag.pur {
    background: linear-gradient(135deg, #7c3aed, #a855f7);
}
.m-pv3-ttl .fit {
    font-size: 9.5px;
    color: #64748b;
    font-weight: 600;
    padding: 2.5px 7px;
    background: rgba(148,163,184,0.12);
    border-radius: 6px;
    line-height: 1.5;
}
.m-pv3-ttl .fit.pur {
    color: #6d28d9;
    background: rgba(139,92,246,0.10);
}
.m-pv3-ttl h3 {
    margin: 0 0 3px !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    color: #0b1220;
    letter-spacing: -0.2px;
    line-height: 1.2;
}
.m-pv3-ttl p {
    margin: 0 !important;
    font-size: 11.5px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.55;
    text-align: left !important;
}

/* 三档价格阶梯 */
.m-pv3-tiers {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    padding: 14px 12px 4px;
}
.mt-tier {
    position: relative;
    padding: 9px 5px 8px;
    border-radius: 11px;
    background: linear-gradient(180deg, #f8fafc, #ffffff);
    border: 1.3px solid rgba(148,163,184,0.20);
    text-align: center;
    transition: all 0.2s;
}
.mt-tier:active {
    transform: scale(0.97);
}
.mt-name {
    font-size: 10px;
    font-weight: 700;
    color: #64748b;
    letter-spacing: 0.3px;
    margin-bottom: 4px;
}
.mt-price {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 2px;
    margin-bottom: 3px;
    line-height: 1;
}
.mt-price b {
    font-size: 15px;
    font-weight: 900;
    color: #0b1220;
    letter-spacing: -0.3px;
}
.mt-price s {
    font-size: 9.5px;
    color: #64748b;
    font-weight: 600;
    text-decoration: none;
}
.mt-scope {
    font-size: 9.5px;
    color: #475569;
    font-weight: 600;
    line-height: 1.35;
}
/* 热门列 */
.mt-tier.mt-hot {
    background: linear-gradient(180deg, #eff6ff, #ffffff);
    border-color: #93c5fd;
    transform: translateY(-3px);
    box-shadow:
        0 8px 18px -8px rgba(37,99,235,0.40),
        inset 0 1px 0 rgba(255,255,255,0.9);
}
.mt-tier.mt-hot.pur {
    background: linear-gradient(180deg, #f5f3ff, #ffffff);
    border-color: #c4b5fd;
    box-shadow:
        0 8px 18px -8px rgba(124,58,237,0.42),
        inset 0 1px 0 rgba(255,255,255,0.9);
}
.mt-mark {
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    padding: 1.5px 8px;
    font-size: 9px;
    font-weight: 800;
    color: #fff;
    background: linear-gradient(135deg, #2563eb, #3b82f6);
    border-radius: 5px;
    letter-spacing: 0.4px;
    box-shadow: 0 3px 8px -3px rgba(37,99,235,0.6);
    white-space: nowrap;
}
.mt-mark.pur {
    background: linear-gradient(135deg, #7c3aed, #a855f7);
    box-shadow: 0 3px 8px -3px rgba(124,58,237,0.6);
}

/* ROI 4 格 */
.m-pv3-roi {
    margin: 12px 12px 12px;
    padding: 11px 11px 13px;
    border-radius: 15px;
    background:
        linear-gradient(135deg, rgba(37,99,235,0.07), rgba(14,165,233,0.08)),
        linear-gradient(180deg, #ffffff, #f8fbff);
    border: 1px solid rgba(59,130,246,0.16);
}
.m-pv3-roi.pur {
    background:
        linear-gradient(135deg, rgba(139,92,246,0.08), rgba(168,85,247,0.07)),
        linear-gradient(180deg, #ffffff, #faf7ff);
    border-color: rgba(139,92,246,0.16);
}
.m-pv3-roi .roi-title {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 10.5px;
    font-weight: 700;
    color: #2563eb;
    margin-bottom: 10px;
    padding: 3px 8px 3px 6px;
    background: rgba(37,99,235,0.10);
    border-radius: 6px;
}
.m-pv3-roi.pur .roi-title {
    color: #7c3aed;
    background: rgba(139,92,246,0.12);
}
.m-pv3-roi .roi-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
}
.m-pv3-roi .roi-cell {
    padding: 7px 4px 7px;
    background: #fff;
    border-radius: 10px;
    text-align: center;
    border: 1px solid rgba(148,163,184,0.12);
    box-shadow: inset 0 1px 0 rgba(15,23,42,0.03);
}
.m-pv3-roi .roi-cell span {
    display: block;
    font-size: 9px;
    color: #64748b;
    font-weight: 600;
    margin-bottom: 3px;
    line-height: 1.3;
    min-height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.m-pv3-roi .roi-cell b {
    font-size: 14px;
    font-weight: 900;
    letter-spacing: -0.25px;
    line-height: 1.1;
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.m-pv3-roi .roi-cell:nth-child(2) b { background: linear-gradient(135deg, #059669, #10b981); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;}
.m-pv3-roi .roi-cell:nth-child(3) b { background: linear-gradient(135deg, #7c3aed, #a855f7); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;}
.m-pv3-roi .roi-cell:nth-child(4) b { background: linear-gradient(135deg, #ea580c, #f97316); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;}
.m-pv3-roi.pur .roi-cell:nth-child(1) b { background: linear-gradient(135deg, #7c3aed, #a855f7); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;}
.m-pv3-roi.pur .roi-cell:nth-child(2) b { background: linear-gradient(135deg, #0891b2, #06b6d4); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;}
.m-pv3-roi.pur .roi-cell:nth-child(3) b { background: linear-gradient(135deg, #ca8a04, #eab308); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;}
.m-pv3-roi.pur .roi-cell:nth-child(4) b { background: linear-gradient(135deg, #db2777, #ec4899); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;}

/* 核心能力 3 条 */
.m-pv3-feats {
    list-style: none;
    padding: 0;
    margin: 0 12px 14px;
    display: grid;
    gap: 6px;
}
.m-pv3-feats li {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 8px;
    align-items: center;
    padding: 7px 10px;
    background: rgba(248,250,252,0.8);
    border-radius: 9px;
    border: 1px solid rgba(148,163,184,0.14);
    font-size: 11.5px;
    color: #334155;
    line-height: 1.45;
    font-weight: 500;
}
.m-pv3-feats li i {
    width: 20px; height: 20px;
    border-radius: 6px;
    background: linear-gradient(135deg, rgba(59,130,246,0.10), rgba(37,99,235,0.18));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-style: normal;
    flex-shrink: 0;
}
.m-pv3-card.pur .m-pv3-feats li i {
    background: linear-gradient(135deg, rgba(139,92,246,0.10), rgba(124,58,237,0.20));
}
.m-pv3-feats b {
    color: #0b1220;
    font-weight: 700;
}

/* 主 CTA 按钮 */
.m-pv3-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: 0 12px 14px;
    padding: 12px 14px;
    border-radius: 13px;
    font-size: 13px;
    font-weight: 800;
    color: #fff;
    text-decoration: none !important;
    letter-spacing: 0.2px;
    position: relative;
    overflow: hidden;
}
.m-pv3-btn em {
    font-style: normal;
    font-weight: 900;
    font-size: 12.5px;
}
.m-pv3-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.22), transparent);
    transform: translateX(-120%);
    transition: transform 0.7s ease;
}
.m-pv3-btn:active::after { transform: translateX(120%); }
.m-pv3-btn.blue {
    background: linear-gradient(135deg, #2563eb 0%, #3b82f6 50%, #0ea5e9 100%);
    box-shadow:
        0 12px 28px -10px rgba(37,99,235,0.72),
        inset 0 1px 0 rgba(255,255,255,0.28);
}
.m-pv3-btn.blue:active {
    transform: translateY(1px);
    box-shadow:
        0 6px 18px -6px rgba(37,99,235,0.6),
        inset 0 1px 0 rgba(255,255,255,0.28);
}
.m-pv3-btn.pur {
    background: linear-gradient(135deg, #7c3aed 0%, #a855f7 50%, #d946ef 100%);
    box-shadow:
        0 12px 28px -10px rgba(124,58,237,0.74),
        inset 0 1px 0 rgba(255,255,255,0.28);
}
.m-pv3-btn.pur:active {
    transform: translateY(1px);
    box-shadow:
        0 6px 18px -6px rgba(124,58,237,0.62),
        inset 0 1px 0 rgba(255,255,255,0.28);
}

/* 选型对比 2×2 */
.m-pv3-comp {
    margin: 6px var(--m-pad) 0;
    padding: 17px 14px 18px;
    background: linear-gradient(180deg, #ffffff, #f8faff);
    border-radius: 18px;
    border: 1px solid rgba(148,163,184,0.20);
    box-shadow:
        0 14px 38px -20px rgba(15,23,42,0.15),
        inset 0 1px 0 rgba(255,255,255,0.9);
}
.mpc-head {
    text-align: center;
    margin-bottom: 14px;
}
.mpc-head h4 {
    margin: 0 0 4px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    color: #0b1220 !important;
    letter-spacing: -0.15px !important;
    line-height: 1.3 !important;
}
.mpc-head p {
    margin: 0 !important;
    font-size: 11px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.5;
    text-align: center !important;
}
.mpc-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    margin-bottom: 14px;
}
.mpc-item {
    padding: 10px 10px 11px;
    background: #fff;
    border-radius: 13px;
    border: 1px solid rgba(148,163,184,0.16);
    box-shadow: inset 0 1px 0 rgba(15,23,42,0.03);
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.mpc-label {
    align-self: flex-start;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 0.4px;
    color: #fff;
    background: linear-gradient(135deg, #0f172a, #334155);
    padding: 2.5px 8px;
    border-radius: 6px;
}
.mpc-left, .mpc-right {
    padding: 7px 7px 7px;
    border-radius: 9px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}
.mpc-left {
    background: linear-gradient(135deg, rgba(59,130,246,0.10), rgba(37,99,235,0.14));
    color: #1d4ed8;
    border: 1px solid rgba(59,130,246,0.22);
}
.mpc-right {
    background: linear-gradient(135deg, rgba(139,92,246,0.10), rgba(124,58,237,0.14));
    color: #6d28d9;
    border: 1px solid rgba(139,92,246,0.22);
}
.mpc-left small, .mpc-right small {
    display: block;
    font-weight: 600;
    font-size: 9.5px;
    opacity: 0.78;
    margin-top: 3px;
    line-height: 1.3;
}
.mpc-vs {
    align-self: center;
    font-size: 10px;
    font-weight: 900;
    color: #fff;
    background: linear-gradient(135deg, #64748b, #94a3b8);
    width: 26px; height: 26px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    letter-spacing: -0.3px;
    box-shadow: 0 3px 8px -4px rgba(100,116,139,0.55);
}
.m-pv3-comp-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 11px 14px;
    border-radius: 12px;
    font-size: 12.5px;
    font-weight: 800;
    color: #fff;
    background: linear-gradient(135deg, #0b1220, #1e293b 60%, #334155);
    text-decoration: none !important;
    letter-spacing: 0.15px;
    box-shadow: 0 12px 28px -12px rgba(15,23,42,0.55);
}
.m-pv3-comp-btn em {
    font-style: normal;
    font-weight: 900;
    font-size: 12px;
}
.m-pv3-comp-btn:active {
    transform: translateY(1px);
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    box-shadow: 0 6px 18px -6px rgba(37,99,235,0.6);
}

/* 小屏兼容（<360px） */
@media (max-width: 359px) {
    .m-pv3-tiers { padding: 14px 10px 4px; gap: 4px; }
    .mt-price b { font-size: 13px; }
    .mt-scope { font-size: 9px; }
    .m-pv3-roi .roi-grid { gap: 4px; }
    .m-pv3-roi .roi-cell b { font-size: 12px; }
    .m-pv3-head h2 { font-size: 21px; }
}


/* ============================================
   产品总览页 /m/product.html（m-ov-*）
   ============================================ */
.m-ov-hero { padding: 26px var(--m-pad, 16px) 22px; background: linear-gradient(160deg, #eaf3fc 0%, #f6fbfc 100%); text-align: center; }
.m-ov-badge { display: inline-block; padding: 4px 12px; border-radius: 999px; background: rgba(6,99,190,.08); color: var(--c-primary, #0663BE); font-size: 12px; font-weight: 600; }
.m-ov-hero h1 { margin: 12px 0 8px; font-size: 24px; font-weight: 800; color: #0b1220; }
.m-ov-hero p { margin: 0 0 16px; font-size: 13.5px; color: #64748b; line-height: 1.7; }
.m-ov-btns { display: flex; gap: 10px; justify-content: center; }
.m-ov-btns .m-btn { flex: 1; }
.m-ov-hl-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 0 var(--m-pad, 16px); }
.m-ov-hl { padding: 14px 12px; background: #fff; border: 1px solid #eef1f5; border-radius: 12px; text-align: center; }
.m-ov-hl .hicon { font-size: 24px; display: block; margin-bottom: 6px; }
.m-ov-hl h4 { margin: 0 0 4px; font-size: 14px; color: #111827; }
.m-ov-hl p { margin: 0; font-size: 12px; color: #6b7280; }
.m-ov-ctarow { display: flex; gap: 10px; margin: 14px var(--m-pad, 16px) 0; }
.m-ov-ctarow .m-btn { flex: 1; }

/* ======================================================
   v4 全局 REBASE —— 大字高对比重构（2026-09-28）
   原则：同特异性后写覆盖；类名体系不变，全站自动生效
   痛点：字号小 / 灰字多 / 图标弱 / 点击区小
   ====================================================== */

/* ---------- 4.1 令牌与全局排版 ---------- */
:root {
    --c-text: #111827;
    --c-text-light: #4b5563;
    --c-text-lighter: #6b7280;
    --c-gray-50: #f6f8fb;
    --c-gray-100: #eef2f7;
    --c-gray-500: #6b7280;
    --c-gray-600: #4b5563;
    --c-gray-700: #374151;
    --m-radius: 14px;
    --m-pad: 16px;
    --fz-h1: 24px;
    --fz-h2: 20px;
    --fz-h3: 16.5px;
    --fz-body: 15.5px;
    --fz-meta: 13px;
    --m-btn-h: 48px;
}
body { font-size: 16px; color: #111827; line-height: 1.65; }
p { color: #374151; font-size: 15.5px; margin-bottom: 12px; }
h1 { font-size: var(--fz-h1); }
h2 { font-size: var(--fz-h2); }
h3 { font-size: var(--fz-h3); }
h4 { font-size: 15.5px; }
a { -webkit-tap-highlight-color: rgba(6,99,190,0.08); }

/* ---------- 4.2 Header ---------- */
.m-header { height: 56px; }
.m-header-inner { height: 56px; padding: 0 14px; }
.m-logo { font-size: 17px; font-weight: 800; color: #111827; letter-spacing: 0.3px; }
.m-back, .m-menu-btn { width: 40px; height: 40px; border-radius: 12px; }
.m-back:active, .m-menu-btn:active { background: var(--c-gray-100); }

/* ---------- 4.3 Hero ---------- */
.m-hero { padding: 30px var(--m-pad) 26px; }
.m-hero h1 { font-size: 26px; line-height: 1.35; color: #0f2c52; letter-spacing: 0.2px; }
.m-hero .subtitle { font-size: 15.5px; font-weight: 600; color: #33475e; margin-bottom: 20px; }
.m-hero-actions { gap: 10px; }
.m-hero-actions .m-btn { height: var(--m-btn-h); line-height: var(--m-btn-h); font-size: 16px; border-radius: 14px; }

/* ---------- 4.4 按钮全系 ---------- */
.m-btn {
    height: var(--m-btn-h); line-height: var(--m-btn-h);
    padding: 0 20px; font-size: 16px; font-weight: 700;
    border-radius: 14px;
}
.m-btn-big { height: 50px; line-height: 50px; font-size: 16.5px; }
.m-btn-lg, .m-btn-block { height: 50px; line-height: 50px; font-size: 16px; }
.m-btn-primary { box-shadow: 0 4px 14px rgba(6,99,190,0.28); }
.m-btn-primary:active, .m-btn-jinshi:active, .m-btn-alt:active, .m-btn-alt2:active { transform: scale(0.97); }

/* ---------- 4.5 区块标题 ---------- */
.m-section { padding: 22px 0 6px; }
.m-section-title { margin-bottom: 14px; padding: 0 var(--m-pad); }
.m-section-title h2 { font-size: 21px; color: #0f2c52; }
.m-section-title h2::before { width: 5px; height: 20px; border-radius: 3px; top: 3px; }
.m-section-title .more { font-size: 13.5px; font-weight: 600; color: var(--c-gray-500); }
.m-section-title p, .m-section-title .sub { font-size: 14px; color: #4b5563; }

/* ---------- 4.6 顶部 8 宫格入口 ---------- */
.m-entry-grid { gap: 10px 6px; padding: 16px 8px; border-radius: 16px; }
.m-entry { gap: 7px; padding: 8px 2px; }
.m-entry .eicon {
    width: 48px; height: 48px; border-radius: 14px;
    font-size: 24px;
    box-shadow: 0 3px 10px rgba(6,99,190,0.18);
}
.m-entry .elabel { font-size: 13.5px; font-weight: 600; color: #1f2937; }

/* ---------- 4.7 快捷导航（8 色） ---------- */
.m-quick-nav { padding: 16px var(--m-pad); }
.m-qn-btn { padding: 12px 4px; border-radius: 14px; border-width: 1.5px; }
.m-qn-btn .emoji { font-size: 24px; }
.m-qn-btn .lbl { font-size: 13px; font-weight: 600; color: #1f2937; }

/* ---------- 4.8 TabBar ---------- */
.m-tabbar {
    padding: 6px 4px;
    padding-bottom: calc(6px + env(safe-area-inset-bottom));
    border-top: 1px solid #e5eaf1;
}
.m-tabbar .tab-item { gap: 3px; padding: 5px 2px; color: #6b7280; font-size: 12px; font-weight: 600; }
.m-tabbar .tab-icon {
    font-size: 23px; line-height: 1;
    width: 44px; height: 30px;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 12px;
    transition: background .15s ease;
}
.m-tabbar .tab-item.active .tab-icon { background: rgba(6,99,190,0.1); }
.m-tabbar .tab-item.active { color: var(--c-primary); font-weight: 800; }
.m-tabbar .tab-label { font-size: 12px; }

/* ---------- 4.9 列表（新闻/案例/下载） ---------- */
.m-list-item { padding: 15px var(--m-pad); }
.m-list-item .info h3 { font-size: 16.5px; font-weight: 700; color: #111827; line-height: 1.45; }
.m-list-item .info .excerpt { font-size: 14px; color: #4b5563; line-height: 1.6; }
.m-list-item .info .meta { font-size: 12.5px; color: #6b7280; }
.m-list-item .info .meta .tag { font-size: 11.5px; font-weight: 600; padding: 2px 8px; }
.m-list-item.has-thumb .thumb { width: 108px; height: 78px; border-radius: 12px; }

/* ---------- 4.10 通用卡片 ---------- */
.m-card { padding: 18px 16px; border-radius: 16px; box-shadow: var(--m-shadow-sm); }
.m-card h3 { font-size: 17px; color: #111827; }
.m-card p { font-size: 14.5px; color: #4b5563; }

/* ---------- 4.11 页头/面包屑 ---------- */
.m-page-header { padding: 18px var(--m-pad) 14px; }
.m-page-header h1 { font-size: 22px; color: #0f2c52; }
.m-page-header .crumb, .m-crumb { font-size: 13px; color: #6b7280; }
.m-page-header .crumb a, .m-crumb a { color: var(--c-primary); font-weight: 600; }

/* ---------- 4.12 详情正文 ---------- */
.m-article-head h1 { font-size: 23px; line-height: 1.4; color: #0f2c52; }
.m-article-head .meta { font-size: 13px; color: #6b7280; }
.m-article-cover { border-radius: 14px; }
.m-article-body { font-size: 16px; line-height: 1.85; color: #1f2937; }
.m-article-body h2 { font-size: 19.5px; color: #0f2c52; margin: 22px 0 10px; }
.m-article-body h3 { font-size: 17.5px; color: #1f2937; margin: 18px 0 8px; }
.m-article-body p { font-size: 16px; color: #1f2937; line-height: 1.85; margin-bottom: 14px; }
.m-article-body li { font-size: 15.5px; color: #1f2937; line-height: 1.8; margin-bottom: 8px; }
.m-article-body strong, .m-article-body b { color: #0b3a75; font-weight: 700; }
.m-article-body table { font-size: 14px; }
.m-article-body table th { font-size: 14px; font-weight: 700; }
.m-article-body td { padding: 10px 12px; }
.m-article-body img { border-radius: 12px; }

/* ---------- 4.13 表单 ---------- */
.m-form label { font-size: 15px; font-weight: 700; color: #1f2937; margin-bottom: 7px; }
.m-form input, .m-form select, .m-form textarea {
    min-height: 48px; font-size: 16px; color: #111827;
    border: 1.5px solid #d7dee8; border-radius: 12px;
    padding: 12px 14px;
    background: #fff;
}
.m-form input::placeholder, .m-form textarea::placeholder { color: #9ca3af; font-size: 15px; }
.m-form input:focus, .m-form select:focus, .m-form textarea:focus { border-color: var(--c-primary); box-shadow: 0 0 0 3px rgba(6,99,190,0.12); }
.m-form textarea { min-height: 110px; }
.m-form button, .m-form .m-btn { height: 50px; line-height: 50px; font-size: 16.5px; }

/* ---------- 4.14 首页 · 产品大卡 V2 ---------- */
.m-pmv2-header h2 { font-size: 21px; color: #0f2c52; }
.m-pmv2-subtitle { font-size: 14px; color: #4b5563; font-weight: 500; }
.m-pmv2-card { border-radius: 18px; }
.m-pmv2-icon { width: 52px; height: 52px; border-radius: 15px; font-size: 27px; }
.m-pmv2-title { font-size: 18px; }
.m-pmv2-tagline { font-size: 12px; font-weight: 600; letter-spacing: 0.5px; }
.m-pmv2-slogan { font-size: 15px; font-weight: 600; line-height: 1.6; }
.m-pmv2-fitem { font-size: 14.5px; line-height: 1.7; }
.m-pmv2-badge { font-size: 12.5px; font-weight: 700; padding: 5px 12px; }
.m-pmv2-quicklinks a { font-size: 13.5px; font-weight: 600; }

/* ---------- 4.15 首页 · 行业卡 V2 ---------- */
.m-indv2-header h2 { font-size: 21px; color: #0f2c52; }
.m-indv2-header p { font-size: 14px; color: #4b5563; }
.m-indv2-group-title { font-size: 14.5px; font-weight: 700; }
.m-indv2-group-icon { font-size: 18px; }
.m-indv2-icon {
    width: 50px; height: 50px; border-radius: 14px;
    font-size: 25px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.12);
}
.m-indv2-name { font-size: 16.5px; font-weight: 700; color: #111827; }
.m-indv2-slogan { font-size: 13px; color: #4b5563; }
.m-indv2-mod { font-size: 12px; font-weight: 600; padding: 3px 9px; }
.m-indv2-cta { font-size: 14px; font-weight: 700; }

/* ---------- 4.16 首页 · 价格 V3 ---------- */
.m-pv3-head h2 { font-size: 21px; color: #0f2c52; }
.m-pv3-badge { font-size: 12.5px; font-weight: 700; }
.m-pv3-head-pills .pill { font-size: 13.5px; font-weight: 700; }
.m-pv3-ttl h3 { font-size: 17.5px; }
.m-pv3-ttl p { font-size: 13.5px; }
.m-pv3-ttl .tag { font-size: 12px; font-weight: 700; }
.m-pv3-ttl .fit { font-size: 12px; }
.mt-name { font-size: 13.5px; font-weight: 700; }
.mt-price b { font-size: 20px; }
.mt-price s { font-size: 12.5px; }
.mt-scope { font-size: 12.5px; color: #4b5563; }
.mt-mark { font-size: 11px; font-weight: 800; }
.roi-title { font-size: 14px; font-weight: 700; }
.roi-cell span { font-size: 12px; color: #6b7280; }
.roi-cell b { font-size: 15.5px; }
.m-pv3-feats li { font-size: 14.5px; }
.m-pv3-feats li i { font-size: 18px; }
.m-pv3-btn { height: 50px; line-height: 50px; font-size: 16px; font-weight: 700; }
.m-pv3-ribbon { font-size: 12.5px; font-weight: 700; }
.mpc-head h4 { font-size: 16.5px; }
.mpc-head p { font-size: 13px; }
.mpc-label { font-size: 12px; font-weight: 700; }
.mpc-left, .mpc-right { font-size: 14px; font-weight: 700; }
.mpc-left small, .mpc-right small { font-size: 11.5px; font-weight: 500; }
.m-pv3-comp-btn { height: 48px; line-height: 48px; font-size: 15.5px; font-weight: 700; }

/* ---------- 4.17 首页 · 帮助文档 V2 ---------- */
.m-dv2-badge { font-size: 12.5px; font-weight: 700; }
.m-dv2-head h2 { font-size: 21px; color: #0f2c52; }
.m-dv2-head p { font-size: 14px; color: #4b5563; }
.m-dv2-ico { width: 48px; height: 48px; border-radius: 13px; font-size: 24px; }
.m-dv2-card h3 { font-size: 16px; color: #111827; }
.m-dv2-cat { font-size: 12px; font-weight: 700; }
.m-dv2-meta { font-size: 12.5px; color: #6b7280; }
.m-dv2-arr { font-size: 17px; font-weight: 700; }
.m-dv2-ent { font-size: 14px; font-weight: 700; }

/* ---------- 4.18 首页 · CTA V2 ---------- */
.m-ctav2-badge { font-size: 12.5px; font-weight: 700; }
.m-ctav2-head h2 { font-size: 21px; color: #0f2c52; }
.m-ctav2-head p { font-size: 14px; color: #4b5563; }
.m-ctav2-ico { width: 48px; height: 48px; border-radius: 13px; font-size: 24px; }
.m-ctav2-card h3 { font-size: 17px; color: #111827; }
.m-ctav2-card p { font-size: 13.5px; color: #4b5563; }
.m-ctav2-btn { min-height: 42px; line-height: 42px; font-size: 14.5px; font-weight: 700; border-radius: 12px; }
.m-ctav2-hot { font-size: 12px; font-weight: 800; }
.m-ctav2-trust { font-size: 13px; font-weight: 600; color: #374151; }

/* ---------- 4.19 Banner ---------- */
.m-banner { padding: 22px 18px; border-radius: 16px; }
.m-banner .b-title { font-size: 18px; font-weight: 800; }
.m-banner .b-sub { font-size: 14px; }

/* ---------- 4.20 页脚 / 版权 ---------- */
.m-fs3 { padding: 26px var(--m-pad) 18px; }
.mfs3-logo .mt { font-size: 17px; font-weight: 800; color: #fff; }
.mfs3-logo .mt em { font-size: 12.5px; }
.mfs3-logo .mi { font-size: 26px; }
.mfs3-slogan { font-size: 13px; color: rgba(255,255,255,0.85); }
.mfs3-grid { gap: 10px; }
.mfs3-g { padding: 12px 13px; border-radius: 14px; }
.mfs3-g .gi { font-size: 22px; }
.mfs3-g .gn { font-size: 15px; font-weight: 700; color: #fff; }
.mfs3-g .gd { font-size: 12.5px; color: rgba(255,255,255,0.82); }
.mfs3-sublinks a { font-size: 13.5px; color: rgba(255,255,255,0.85); padding: 6px 10px; }
.mfs3-copy { font-size: 12.5px; color: rgba(255,255,255,0.72); line-height: 1.8; }
.m-copyright { font-size: 13px; color: #6b7280; padding: 18px var(--m-pad) 14px; line-height: 1.8; }

/* ---------- 4.21 抽屉补充放大 ---------- */
.m-drawer { width: 82%; max-width: 360px; }
.m-drawer-slogan { font-size: 12.5px; }
.m-nav-acc-head { padding: 13px 12px; font-size: 15.5px; }
.m-nav-acc-badge { width: 30px; height: 30px; font-size: 14px; border-radius: 10px; }
.m-nav-main-item > a { padding: 13px 12px; font-size: 15.5px; }
.m-nav-main-item.is-sub > a { font-size: 14.5px; }
.m-nav-acc-sub { font-size: 12px; }
.m-nav-sub-btn { padding: 10px; font-size: 13.5px; font-weight: 600; }
.m-tel-btn { height: 52px; line-height: 52px; font-size: 17px; font-weight: 800; border-radius: 14px; }
.df-mini-trial { font-size: 15px; font-weight: 700; }
.m-pc-link { font-size: 13.5px; }

/* ---------- 4.22 chips / 分页 / 杂项 ---------- */
.m-chip, .m-tab { min-height: 38px; padding: 8px 16px; font-size: 13.5px; font-weight: 600; border-radius: 19px; }
.m-tab.active { font-weight: 700; }
.m-page-btn { min-height: 42px; min-width: 42px; font-size: 14.5px; font-weight: 600; }
.m-detail-cta { padding: 12px var(--m-pad); }
.m-detail-cta .m-btn { font-size: 16px; }
.m-msg-tip { font-size: 15px; }
.m-msg-tip .title { font-size: 17px; font-weight: 800; }
.m-art-tags a { font-size: 13px; font-weight: 600; padding: 6px 12px; }
.m-about-stats .num { font-size: 24px; font-weight: 800; }
.m-about-stats .lbl { font-size: 12.5px; }
.m-contact-row { font-size: 15.5px; }
.m-contact-row .lbl { font-size: 13px; }
.m-hl-item .hl-title { font-size: 15.5px; font-weight: 700; }
.m-hl-item .hl-desc { font-size: 13.5px; }
.m-dl-item .dl-name { font-size: 15.5px; font-weight: 700; }
.m-dl-item .dl-meta { font-size: 12.5px; }
.m-price-card .p-name { font-size: 17px; font-weight: 800; }
.m-price-card .p-price { font-size: 24px; font-weight: 800; }
.m-price-list li { font-size: 14.5px; }

/* ---------- 4.23 Hero 数据条 ---------- */
.m-hero-stats {
    display: grid; grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 18px;
}
.m-hero-stats .hs {
    background: rgba(255,255,255,0.75);
    border: 1px solid rgba(6,99,190,0.1);
    border-radius: 14px;
    padding: 12px 6px;
    text-align: center;
    box-shadow: 0 2px 8px rgba(6,99,190,0.06);
}
.m-hero-stats .hs b { display: block; font-size: 20px; font-weight: 800; color: var(--c-primary); line-height: 1.2; }
.m-hero-stats .hs span { font-size: 12.5px; font-weight: 600; color: #4b5563; }
.mfs3-pc { color: #fff; font-weight: 600; text-decoration: underline; opacity: 0.85; }

/* ===== 8 大行业通用卡：财筑云/金石双入口按钮 ===== */
.m-indv2-ctas { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin: 0 12px 12px; }
.m-indv2-ctas .m-indv2-cta {
    margin: 0;
    padding: 9px 2px;
    border-top: none;
    border: 1.5px solid;
    border-radius: 9px;
    text-align: center;
    font-size: 11.5px;
    font-weight: 700;
    text-decoration: none;
    line-height: 1.2;
}
.m-indv2-ctas .m-indv2-cta:active { transform: scale(0.96); }

/* ================================================================
   v5 抽屉菜单重构（2026-09-28）
   目标：更大触控目标（行高 52px+）、产品大卡直达、层级更清爽
   结构变化：顶级"帮助文档"移入 产品中心 → 产品总览 → 文档中心
   ================================================================ */

/* --- 容器与头部 --- */
.m-drawer { width: 82%; max-width: 360px; background: #f6f8fb; }
.m-drawer-head {
    padding: 18px 16px 16px;
    background: linear-gradient(150deg, #eaf3ff, #e6fbfb 55%, #f6f8fb);
    border-bottom: 1px solid #e8eef6;
}
.m-drawer-logo { width: 52px; height: 52px; border-radius: 14px; font-size: 21px; }
.m-drawer-slogan { font-size: 12px; color: #5b6b7f; }
.m-drawer-close {
    width: 42px; height: 42px; border-radius: 12px;
    background: #fff; box-shadow: 0 1px 6px rgba(15,23,42,.08);
}
.m-nav-list, .m-drawer-nav {
    flex: 1; overflow-y: auto;
    padding: 12px 12px calc(16px + env(safe-area-inset-bottom));
    background: #f6f8fb;
}

/* --- 行条目：52px 触控高度 + 白底卡片化 --- */
.m-nav-main-item { margin: 0 0 6px; }
.m-nav-main-item > a {
    min-height: 52px; padding: 12px 14px;
    border-radius: 12px; background: #fff;
    font-size: 15.5px; font-weight: 500; color: #1f2937;
    display: flex; align-items: center; justify-content: space-between; gap: 10px;
    box-shadow: 0 1px 3px rgba(15,23,42,.05);
}
.m-nav-main-item > a:active { background: #eff6ff; color: var(--c-primary); }
.m-nav-main-item > a.active {
    background: linear-gradient(90deg, #eff6ff, #fff);
    color: var(--c-primary); font-weight: 700;
    box-shadow: inset 3px 0 0 var(--c-primary), 0 1px 3px rgba(15,23,42,.05);
}
.m-nav-main-item .arrow {
    width: 24px; height: 24px; border-radius: 50%;
    background: #f1f5f9; color: #94a3b8; font-size: 13px;
    display: inline-flex; align-items: center; justify-content: center; flex: none;
}
.m-nav-main-item.is-sub > a { min-height: 48px; font-size: 14.5px; padding: 10px 12px 10px 14px; }

/* --- 首页 hero --- */
.m-nav-hero {
    min-height: 56px; border-radius: 14px;
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    color: #fff; font-size: 16px; font-weight: 700;
    box-shadow: 0 4px 14px rgba(6,99,190,.28);
}
.m-nav-hero .arrow { background: rgba(255,255,255,.2); color: #fff; }

/* --- 手风琴分组 --- */
.m-nav-acc {
    border-radius: 14px; background: #fff; overflow: hidden;
    box-shadow: 0 1px 3px rgba(15,23,42,.05); margin: 8px 0;
}
.m-nav-acc[open] { background: #fff; }
.m-nav-acc-head {
    min-height: 54px; padding: 0 14px;
    display: flex; align-items: center; gap: 11px;
    font-size: 16px; font-weight: 600; color: #111827;
}
.m-nav-acc-badge {
    width: 30px; height: 30px; border-radius: 9px; font-size: 14px; font-weight: 800;
    background: #eef4ff; color: var(--c-primary);
    display: inline-flex; align-items: center; justify-content: center; flex: none;
}
.m-nav-acc[open] > .m-nav-acc-head { color: var(--c-primary); border-bottom: 1px dashed #e5ecf5; }
.m-nav-acc[open] > .m-nav-acc-head .m-nav-acc-badge {
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end)); color: #fff;
}
.m-nav-acc-head .chev { margin-left: auto; color: #9aa8ba; font-size: 13px; }
.m-nav-acc-body { padding: 8px 10px 12px; background: #f9fbfe; }

/* --- 子分组标题：渐变短线 + 大写感 --- */
.m-nav-acc-sub {
    margin: 10px 2px 6px; font-size: 12.5px; font-weight: 700;
    color: #7c8aa0; letter-spacing: .04em;
    display: flex; align-items: center; gap: 6px;
}
.m-nav-acc-sub::before {
    content: ''; width: 14px; height: 3px; border-radius: 2px;
    background: linear-gradient(90deg, var(--c-gradient-start), var(--c-gradient-end));
}

/* --- 产品大卡（核心产品：财筑云 / 金石） --- */
.m-nav-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 4px 0 6px; }
.m-nav-card {
    position: relative; min-height: 88px; padding: 14px 12px;
    border-radius: 14px; color: #fff;
    display: flex; flex-direction: column; justify-content: flex-end; gap: 4px;
}
.m-nav-card.cz { background: linear-gradient(140deg, #3b82f6, #0663be); box-shadow: 0 4px 12px rgba(6,99,190,.28); }
.m-nav-card.js { background: linear-gradient(140deg, #10b981, #059669); box-shadow: 0 4px 12px rgba(5,150,105,.28); }
.m-nav-card .nc-badge { position: absolute; top: 10px; left: 12px; font-size: 20px; }
.m-nav-card .nc-go {
    position: absolute; top: 10px; right: 10px;
    width: 22px; height: 22px; border-radius: 50%;
    background: rgba(255,255,255,.22); font-size: 12px;
    display: flex; align-items: center; justify-content: center;
}
.m-nav-card .nc-name { font-size: 15.5px; font-weight: 800; line-height: 1.3; }
.m-nav-card:active { filter: brightness(.93); }

/* --- 快捷胶囊 --- */
.m-nav-subgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.m-nav-sub-btn {
    min-height: 44px; border-radius: 11px;
    background: #fff; border: 1px solid #e3eaf3;
    color: #33475e; font-size: 13.5px; font-weight: 600;
    display: flex; align-items: center; justify-content: center; gap: 4px;
}
.m-nav-sub-btn.primary {
    background: linear-gradient(135deg, var(--c-gradient-start), var(--c-gradient-end));
    border: none; color: #fff;
}

/* ================================================================
   v5.2 全站边界固定：所有页面边界不可拖动、不晃动（2026-09-28）
   ================================================================ */
html, body {
    overflow-x: hidden;
    overflow-x: clip;            /* 支持 clip 的浏览器不产生滚动容器，fixed 元素更稳 */
    max-width: 100%;
    overscroll-behavior-x: none; /* 禁横向边缘回弹 */
    overscroll-behavior-y: none; /* 禁纵向边缘回弹与下拉刷新，边界完全固定 */
}
body { position: relative; overflow-wrap: break-word; } /* 长串自动折行，不撑破布局 */
img, video, canvas, iframe, embed, object { max-width: 100%; }
iframe, embed, object { width: 100%; }
/* 富文本/文章内的宽表格：容器内横向滚动，不撑破页面 */
.m-article-body table {
    display: block; width: max-content; max-width: 100%;
    overflow-x: auto; -webkit-overflow-scrolling: touch;
}

/* ================================================================
   v5.1 抽屉美化：行图标块 + 字号强化（2026-09-28）
   整体风格延续 v5，行条目加 emoji 图标块、文字整体上调一档
   ================================================================ */

/* --- 行条目标题区（图标 + 文字） --- */
.m-nav-main-item .lt { display: inline-flex; align-items: center; min-width: 0; }
.ri {
    width: 26px; height: 26px; border-radius: 8px;
    background: #eef4ff; font-style: normal; font-size: 14px; line-height: 1;
    display: inline-flex; align-items: center; justify-content: center;
    margin-right: 10px; flex: none;
}
.m-nav-main-item.is-sub .ri { width: 24px; height: 24px; font-size: 13px; background: #f0f6ff; }
.m-nav-hero .ri { background: rgba(255,255,255,.22); }
.m-nav-main-item > a.active .ri { background: #dbeafe; }

/* --- 字号整体上调一档 --- */
.m-nav-main-item > a { font-size: 16px; }
.m-nav-main-item.is-sub > a { font-size: 15px; }
.m-nav-hero { font-size: 17px; }
.m-nav-acc-head { font-size: 17px; gap: 12px; }
.m-nav-acc-badge { width: 36px; height: 36px; border-radius: 11px; font-size: 18px; }
.m-nav-card .nc-name { font-size: 16.5px; }
.m-nav-card .nc-badge { font-size: 24px; }
.m-nav-acc-sub { font-size: 13px; }
.m-nav-sub-btn { font-size: 14px; }
.m-drawer-slogan { font-size: 12.5px; }
