/* ============================================================
   浙江新峰数字教材研究院 · 百度智能云企业风格 v2 设计系统
   参考：企业级云官网（浅蓝Hero / 描边卡片 / 紧凑排版 / 彩色标签 / 深色页脚）
   ============================================================ */

/* ---- 全局防横向溢出 + 盒模型保障 ---- */
*, *::before, *::after { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: hidden; }
body { margin: 0; }
img, video, canvas { max-width: 100%; }
.header-container, .container, [style*="max-width: 1200px"], [style*="max-width: 1100px"] { min-width: 0; }
.hero-content { max-width: 100%; word-break: break-word; }
.hero-content h1 { word-break: break-word; overflow-wrap: anywhere; }

:root {
    --xf-primary: #165DFF;
    --xf-primary-hover: #4080FF;
    --xf-primary-active: #0E42D2;
    --xf-primary-light: #E8F3FF;
    --xf-primary-border: #94BFFF;
    --xf-success: #00B42A;
    --xf-warning: #FF7D00;
    --xf-error: #F53F3F;
    --xf-purple: #722ED1;
    --xf-cyan: #0FC6C2;
    --xf-title: #1D2129;
    --xf-body: #4E5969;
    --xf-secondary: #86909C;
    --xf-border: #E5E6EB;
    --xf-divider: #F2F3F5;
    --xf-bg: #F7F8FA;
    --xf-hero-bg: #F2F7FF;
    --xf-footer: #1D2129;
    --xf-card-shadow: 0 2px 12px 0 rgba(22,93,255,0.05);
    --xf-card-hover: 0 8px 24px 0 rgba(22,93,255,0.12);
}

/* ========== 基础文字 ========== */
body { color: var(--xf-body); }
h1,h2,h3,h4,h5,h6 { color: var(--xf-title); }

/* ========== 导航栏：更紧凑、企业化 ========== */
.site-header {
    background: rgba(255,255,255,0.96) !important;
    backdrop-filter: saturate(180%) blur(12px);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
    box-shadow: 0 1px 0 0 var(--xf-divider) !important;
    border-bottom: 1px solid var(--xf-divider);
}
.header-container { height: 68px !important; max-width: 1280px !important; padding: 0 32px !important; }
.site-logo img { height: 52px !important; }
.main-navigation ul { gap: 36px !important; }
.main-navigation ul li a {
    font-size: 15px !important;
    font-weight: 500 !important;
    color: var(--xf-title) !important;
    position: relative;
}
.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item > a { color: var(--xf-primary) !important; }
.main-navigation ul li.current-menu-item > a::after {
    content: ''; position: absolute; left: 0; right: 0; bottom: -22px;
    height: 2px; background: var(--xf-primary); border-radius: 2px;
}
.header-actions .btn { padding: 7px 18px !important; font-size: 14px !important; }

/* ========== 全局卡片：白底 + 1px描边 + hover蓝色浮起 ========== */
.value-card, .feature-item, .case-card, .success-feature,
.product-card, .platform-card, .about-card, .solution-card,
.feature-box, .six-feature-card, .news-card, .stat-card,
.overview-card, .video-card {
    background: #fff !important;
    border: 1px solid var(--xf-border) !important;
    border-radius: 8px !important;
    box-shadow: var(--xf-card-shadow) !important;
    transition: all .25s ease !important;
}
.value-card:hover, .feature-item:hover, .case-card:hover,
.success-feature:hover, .product-card:hover, .platform-card:hover,
.about-card:hover, .solution-card:hover, .feature-box:hover,
.six-feature-card:hover, .news-card:hover, .overview-card:hover, .video-card:hover {
    border-color: var(--xf-primary-border) !important;
    box-shadow: var(--xf-card-hover) !important;
    transform: translateY(-4px);
}

/* ========== 图标容器：浅蓝底 + 蓝色图标（线性轻盈） ========== */
.value-icon, .feature-icon-circle, .six-feature-icon {
    background: var(--xf-primary-light) !important;
    border-radius: 12px !important;
    width: 52px !important;
    height: 52px !important;
    margin: 0 auto 16px !important;
}
.value-icon i, .feature-icon-circle i, .six-feature-icon i {
    color: var(--xf-primary) !important;
    font-size: 24px !important;
}

/* ========== 彩色小标签 ========== */
.xf-tag {
    display: inline-block; padding: 2px 8px; border-radius: 4px;
    font-size: 12px; line-height: 18px; font-weight: 400;
}
.xf-tag-blue   { background:#E8F3FF; color:#165DFF; }
.xf-tag-orange { background:#FFF3E8; color:#FF7D00; }
.xf-tag-red    { background:#FFECE8; color:#F53F3F; }
.xf-tag-purple { background:#F5E8FF; color:#722ED1; }
.xf-tag-green  { background:#E8FFEA; color:#00B42A; }
.xf-tag-cyan   { background:#E8FFFB; color:#0FC6C2; }

/* ========== 区块标题 ========== */
.xf-section-title { text-align:center; margin-bottom:44px; }
.xf-section-title h2 { font-size:30px; font-weight:700; color:var(--xf-title); margin:0 0 12px; }
.xf-section-title .sub { font-size:15px; color:var(--xf-secondary); margin:0; }
.xf-section-title .accent-bar {
    width:40px; height:4px; border-radius:2px;
    background: linear-gradient(90deg,#165DFF,#4080FF);
    margin: 16px auto 0;
}

/* ========== 按钮 ========== */
.btn { border-radius: 6px !important; font-weight:400 !important; letter-spacing:.3px; }
.btn.btn-primary {
    background: var(--xf-primary) !important;
    border: 1px solid var(--xf-primary) !important;
    box-shadow: 0 2px 6px rgba(22,93,255,.18) !important;
}
.btn.btn-primary:hover {
    background: var(--xf-primary-hover) !important;
    border-color: var(--xf-primary-hover) !important;
    box-shadow: 0 4px 14px rgba(22,93,255,.3) !important;
}
.btn.btn-secondary {
    background:#fff !important; color:var(--xf-primary) !important;
    border:1px solid var(--xf-primary-border) !important;
}
.btn.btn-secondary:hover {
    background: var(--xf-primary-light) !important;
    color: var(--xf-primary) !important;
    border-color: var(--xf-primary) !important;
}

/* ========== 页脚：深色企业风 ========== */
.site-footer {
    background: var(--xf-footer) !important;
    color: #C9CDD4 !important;
}
.site-footer h4 { color: #fff !important; font-size:15px !important; font-weight:600 !important; }
.site-footer a { color: #A9AEB8 !important; font-size:13.5px !important; }
.site-footer a:hover { color: #4080FF !important; }
.site-footer .footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.08) !important;
    color: #86909C !important;
}

/* ========== 通用容器宽度统一 ========== */
.container, .container-wide, [class*="container"] {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}
.container {
  width: 100%;
  padding-left: 24px;
  padding-right: 24px;
}

/* ========== 首页区块针对性优化 ========== */

/* 修复：浅色渐变背景区被全局"渐变白字"规则误伤（提高选择器优先级） */
section.university-alliance-section[style] h2,
section.university-alliance-section[style] h3,
section.university-alliance-section[style] h4,
section.university-alliance-section[style] p,
section.university-alliance-section[style] span,
section.university-alliance-section[style] div { color: var(--xf-title) !important; }
section.university-alliance-section[style] .section-title-center p,
section.university-alliance-section[style] .case-info p,
section.university-alliance-section[style] .case-info li { color: var(--xf-body) !important; }
.university-alliance-section .case-layout {
    border:1px solid var(--xf-border) !important;
    border-radius:12px !important;
    box-shadow: var(--xf-card-shadow) !important;
}

/* 高校联盟tab按钮：企业风格 */
.alliance-tab-btn { border-radius:6px !important; font-weight:500 !important; padding:10px 28px !important; }
.alliance-tab-btn.active {
    background: var(--xf-primary) !important;
    box-shadow:0 4px 12px rgba(22,93,255,.25) !important;
}

/* 区块标题统一（浅底区域） */
.value-cards-section .section-title-center h2,
.platform-intro-section .section-title-center h2,
.six-features-section .section-title-center h2,
.success-cases-section .section-title-center h2 {
    color: var(--xf-title) !important; font-weight:700;
}
.value-cards-section .section-title-center p,
.platform-intro-section .section-title-center p,
.six-features-section .section-title-center p,
.success-cases-section .section-title-center p { color: var(--xf-secondary) !important; }

/* 智能教材平台 tab 按钮 */
.platform-intro-section .tab-btn,
.platform-intro-section button[class*="tab"] {
    border-radius:6px !important; font-weight:500 !important;
}

/* 案例体验卡片 */
.success-cases-section .case-card,
.success-cases-section [class*="case-item"] {
    background:#fff !important; border:1px solid var(--xf-border) !important;
    border-radius:8px !important; overflow:hidden;
}

/* 六大痛点/产品特性卡片内部排版 */
.value-cards-section .value-card,
.six-features-section .six-feature-card { padding:28px 24px !important; }
.value-cards-section .value-card h3,
.six-features-section .six-feature-card h3,
.six-features-section .six-feature-card h4 {
    font-size:17px !important; font-weight:600 !important; margin-bottom:10px !important;
}
.value-cards-section .value-card p,
.six-features-section .six-feature-card p {
    font-size:13.5px !important; line-height:1.7 !important; color:var(--xf-body) !important;
}

/* ========== Hero：深蓝科技 Banner 背景 + 白色文字 ========== */
.hero-banner { height:560px !important; }
.hero-banner .hero-slide {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
.hero-banner .hero-overlay {
    background: linear-gradient(180deg, rgba(6,22,58,0.42) 0%, rgba(6,22,58,0.28) 45%, rgba(6,22,58,0.55) 100%) !important;
    opacity:1 !important;
}
.hero-banner .hero-content h1 {
    color:#fff !important;
    font-size:46px !important; letter-spacing:1px !important;
    text-shadow:0 2px 14px rgba(0,0,0,0.28) !important;
}
.hero-banner .hero-content .highlight { color:#7FB0FF !important; }
.hero-banner .hero-content .hero-subtitle-en {
    color:#BFD6FF !important;
    opacity:1 !important; letter-spacing:6px !important; font-weight:500 !important;
}
.hero-banner .hero-content .subtitle {
    color:rgba(255,255,255,0.92) !important;
    opacity:1 !important; font-size:17px !important;
    text-shadow:0 1px 8px rgba(0,0,0,0.22);
}
.hero-banner .btn-hero.btn-primary {
    background: var(--xf-primary) !important; color:#fff !important;
    border:1px solid var(--xf-primary) !important;
    box-shadow:0 4px 16px rgba(22,93,255,.45) !important;
}
.hero-banner .btn-hero.btn-primary:hover { background: var(--xf-primary-hover) !important; }
.hero-banner .btn-hero.btn-outline {
    background:rgba(255,255,255,0.10) !important; color:#fff !important;
    border:1px solid rgba(255,255,255,0.65) !important;
}
.hero-banner .btn-hero.btn-outline:hover { background:#fff !important; color:var(--xf-primary) !important; border-color:#fff !important; }
.hero-prev, .hero-next {
    background:rgba(255,255,255,0.92) !important; color:var(--xf-primary) !important;
    border:none !important;
    box-shadow:0 2px 10px rgba(0,0,0,.25) !important;
}
.hero-indicators .indicator { background:rgba(255,255,255,0.45) !important; }
.hero-indicators .indicator.active { background:#fff !important; }

/* 彩色渐变卡片（a/div）内文字保持白色，覆盖全局标题深色规则 */
a[style*="linear-gradient"] h3,
a[style*="linear-gradient"] h4,
a[style*="linear-gradient"] p,
a[style*="linear-gradient"] span,
div[style*="linear-gradient(135deg, #165DFF"] h2,
div[style*="linear-gradient(135deg, #165DFF"] h3,
div[style*="linear-gradient(135deg, #165DFF"] p,
div[style*="linear-gradient(135deg, #FA8C16"] h2,
div[style*="linear-gradient(135deg, #FA8C16"] h3,
div[style*="linear-gradient(135deg, #FA8C16"] p { color:#fff !important; }
/* 渐变卡片裁切超出的装饰水印，避免窄屏横向溢出 */
a[style*="linear-gradient"] { overflow:hidden; position:relative; }

/* ========== 内页顶部 Hero（汇总页统一浅蓝风格） ========== */
section.page-hero-v2 {
    position:relative; overflow:hidden;
    background-image:
        radial-gradient(circle at 12% 20%, rgba(22,93,255,0.08) 0%, transparent 38%),
        radial-gradient(circle at 88% 80%, rgba(64,128,255,0.10) 0%, transparent 42%),
        linear-gradient(180deg, #F2F7FF 0%, #E8F1FF 100%) !important;
}
section.page-hero-v2 h1 { color: var(--xf-title) !important; letter-spacing:1px; }
section.page-hero-v2 p { color: var(--xf-body) !important; }
/* 面包屑小标签（可选） */
section.page-hero-v2::after {
    content:""; position:absolute; left:50%; bottom:0; transform:translateX(-50%);
    width:56px; height:3px; border-radius:3px;
    background:linear-gradient(90deg,var(--xf-primary),var(--xf-primary-hover));
}

/* ========== 智能教材平台 二级切换：当前单张卡片占满右侧、饱满排版 ========== */
/* 左右等高：右侧 main 与 grid 撑满到与左侧蓝色菜单相同高度 */
.platform-content .platform-main { display:flex; }
.platform-content .feature-grid-2x2 { flex:1 1 auto; width:100%; grid-template-columns:1fr; }
.platform-content .feature-box[style*="display: block"] {
    grid-column: 1 / -1 !important;
    height:100%;
    min-height:0;
    padding: 24px 30px !important;
    background:#fff !important;
    border:1px solid var(--xf-border);
    border-radius:10px;
    box-shadow:0 6px 18px rgba(29,33,41,0.06);
    display:flex !important;
    flex-direction:column;
    animation: xfFadeIn .28s ease;
}
.platform-content .feature-box[style*="display: block"] h4 {
    font-size:19px !important; margin-bottom:12px; padding-bottom:12px;
    border-bottom:2px solid #E8F0FE;
}
.platform-content .feature-box[style*="display: block"] h4 i { font-size:22px; }
.fb-desc { font-size:13.5px; color:#5A6573; line-height:1.75; margin:0 0 14px; }
.fb-adv {
    display:flex; align-items:center; gap:7px;
    font-size:13px; font-weight:600; color:var(--xf-primary); margin-bottom:10px;
}
.fb-adv i { font-size:13px; }
.platform-content .fb-points {
    display:grid; grid-template-columns:repeat(2,1fr); gap:8px 34px;
    margin:0; padding:0; list-style:none;
}
.platform-content .fb-points li {
    font-size:14px !important; color:#3D4757; line-height:1.5;
    padding:5px 0 5px 24px !important; position:relative;
}
.platform-content .fb-points li::before {
    content:'✓'; position:absolute; left:0; top:6px;
    width:16px; height:16px; border-radius:50%;
    background:var(--xf-primary); color:#fff; font-size:10px; line-height:16px; text-align:center;
}
@keyframes xfFadeIn { from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);} }

/* ========== 高校合作联盟 Logo 走马灯（无限无缝横向滚动） ========== */
.partner-marquee {
    position:relative; overflow:hidden;
    margin:0 auto 44px; max-width:1200px;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.partner-marquee-track {
    display:flex; flex-wrap:nowrap; align-items:center; width:max-content;
    animation:xfMarquee 34s linear infinite;
}
.partner-marquee:hover .partner-marquee-track { animation-play-state:paused; }
.partner-logo {
    flex:0 0 auto; width:212px; height:96px; margin-right:18px;
    background:#fff; border:1px solid var(--xf-border); border-radius:12px;
    display:flex; align-items:center; justify-content:center; padding:12px 18px;
    box-shadow:0 2px 8px rgba(29,33,41,0.04);
    transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.partner-logo:hover {
    transform:translateY(-4px); border-color:var(--xf-primary);
    box-shadow:0 10px 24px rgba(22,93,255,0.14);
}
.partner-logo img { width:100%; height:100%; object-fit:contain; display:block; }
@keyframes xfMarquee { from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* ========== 22 个子页面 Hero 统一浅蓝企业风格 ========== */
section[class$="-hero"] {
    position:relative; overflow:hidden;
    background-image:
        radial-gradient(circle at 12% 22%, rgba(22,93,255,0.08) 0%, transparent 38%),
        radial-gradient(circle at 88% 78%, rgba(64,128,255,0.10) 0%, transparent 42%),
        linear-gradient(180deg, #F2F7FF 0%, #E8F1FF 100%) !important;
    padding:84px 0 68px !important;
    margin-top:68px !important;
    border-bottom:1px solid var(--xf-border);
}
section[class$="-hero"] h1 { color:var(--xf-title) !important; letter-spacing:.5px; }
section[class$="-hero"] p,
section[class$="-hero"] [class$="-subtitle"] { color:var(--xf-body) !important; opacity:1 !important; }
/* Hero 主/次按钮 */
section[class$="-hero"] .btn-hero-primary,
section[class$="-hero"] .btn-cta-primary {
    background:var(--xf-primary) !important; color:#fff !important;
    border:1px solid var(--xf-primary) !important; border-radius:6px !important;
    box-shadow:0 4px 14px rgba(22,93,255,.28) !important; font-weight:500 !important;
}
section[class$="-hero"] .btn-hero-primary:hover,
section[class$="-hero"] .btn-cta-primary:hover { background:var(--xf-primary-active) !important; }
section[class$="-hero"] .btn-hero-outline,
section[class$="-hero"] .btn-cta-outline {
    background:#fff !important; color:var(--xf-primary) !important;
    border:1px solid var(--xf-primary-border) !important; border-radius:6px !important;
    font-weight:500 !important;
}
section[class$="-hero"] .btn-hero-outline:hover,
section[class$="-hero"] .btn-cta-outline:hover { background:var(--xf-primary-light) !important; }
/* 面包屑/小标签若为白字也转主蓝 */
section[class$="-hero"] [class*="breadcrumb"] { color:var(--xf-secondary) !important; }

/* ========== 产品总览页 Hero：科技-20 蓝色图片背景 + 白色文字 ========== */
.page-hero-v2.product-overview-hero {
    margin-top:0 !important;
    background-image:
        linear-gradient(90deg, rgba(9,42,132,0.62) 0%, rgba(18,74,190,0.34) 52%, rgba(28,104,224,0.12) 100%),
        url('/wp-content/uploads/2026/08/page-hero-product.jpg') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    border-bottom:none !important;
}
.page-hero-v2.product-overview-hero h1 {
    color:#fff !important;
    text-shadow:0 2px 14px rgba(8,30,90,.38) !important;
}
.page-hero-v2.product-overview-hero p {
    color:rgba(255,255,255,0.94) !important;
    text-shadow:0 1px 8px rgba(8,30,90,.30);
}

/* ========== 智能教材平台总览页 Hero：科技-19 蓝色流体背景 + 白色文字 ========== */
.page-hero-v2.platform-overview-hero {
    margin-top:0 !important;
    background-image:
        linear-gradient(90deg, rgba(9,42,132,0.40) 0%, rgba(18,74,190,0.30) 50%, rgba(14,120,210,0.18) 100%),
        url('/wp-content/uploads/2026/08/page-hero-platform.jpg') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    border-bottom:none !important;
}
.page-hero-v2.platform-overview-hero h1 {
    color:#fff !important;
    text-shadow:0 2px 14px rgba(8,30,90,.38) !important;
}
.page-hero-v2.platform-overview-hero p {
    color:rgba(255,255,255,0.94) !important;
    text-shadow:0 1px 8px rgba(8,30,90,.30);
}

/* ========== 案例总览页 Hero：科技-14 2.5D蓝色方块背景 + 白色文字 ========== */
.page-hero-v2.cases-overview-hero {
    margin-top:0 !important;
    background-image:
        linear-gradient(90deg, rgba(9,40,120,0.34) 0%, rgba(18,74,190,0.26) 50%, rgba(12,46,140,0.40) 100%),
        url('/wp-content/uploads/2026/08/page-hero-cases.jpg') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    border-bottom:none !important;
}
.page-hero-v2.cases-overview-hero h1 {
    color:#fff !important;
    text-shadow:0 2px 14px rgba(8,30,90,.38) !important;
}
.page-hero-v2.cases-overview-hero p {
    color:rgba(255,255,255,0.94) !important;
    text-shadow:0 1px 8px rgba(8,30,90,.30);
}

/* ========== 关于我们总览页 Hero：科技-11 深蓝科技地球背景 + 白色文字 ========== */
.page-hero-v2.about-overview-hero {
    margin-top:0 !important;
    background-image:
        linear-gradient(90deg, rgba(6,26,84,0.30) 0%, rgba(10,40,120,0.18) 50%, rgba(6,26,84,0.30) 100%),
        url('/wp-content/uploads/2026/08/page-hero-about.jpg') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    border-bottom:none !important;
}
.page-hero-v2.about-overview-hero h1 {
    color:#fff !important;
    text-shadow:0 2px 16px rgba(4,18,60,.5) !important;
}
.page-hero-v2.about-overview-hero p {
    color:rgba(255,255,255,0.92) !important;
    text-shadow:0 1px 10px rgba(4,18,60,.45);
}

/* ========== 案例页 5×5 视频网格：宽屏强制 5 列填满（高优先级覆盖 header 属性选择器误伤） ========== */
@media (min-width: 1025px) {
    section .video-grid-5x5.video-grid-5x5 { grid-template-columns:repeat(5,1fr) !important; gap:16px !important; }
}
@media (min-width: 721px) and (max-width: 1024px) {
    section .video-grid-5x5.video-grid-5x5 { grid-template-columns:repeat(4,1fr) !important; gap:12px !important; }
}
@media (min-width: 521px) and (max-width: 720px) {
    section .video-grid-5x5.video-grid-5x5 { grid-template-columns:repeat(3,1fr) !important; }
}
@media (max-width: 520px) {
    section .video-grid-5x5.video-grid-5x5 { grid-template-columns:repeat(2,1fr) !important; gap:10px !important; }
}

/* ========== 内页通用：卡片/按钮/区块标题精修 ========== */

/* 白色内容卡片：统一圆角、描边、hover 浮起（限定内页，不影响深色面板） */
body.page [style*="border-radius: 16px"][style*="background: #fff"],
body.page [style*="background: #fff"][style*="border-radius: 16px"] {
    border-radius:10px !important;
    border:1px solid var(--xf-border) !important;
    box-shadow:var(--xf-card-shadow) !important;
}
body.page [style*="border-radius: 16px"][style*="background: #fff"]:hover,
body.page [style*="background: #fff"][style*="border-radius: 16px"]:hover {
    box-shadow:var(--xf-card-shadow-hover) !important;
}

/* 内页图片外框圆角同步 */
body.page [style*="border-radius: 16px"][style*="overflow: hidden"] img { border-radius:0; }

/* 内页按钮统一为 6px 企业圆角（胶囊改小圆角） */
body.page a[style*="border-radius: 50px"],
body.page a[style*="border-radius: 8px"] { border-radius:6px !important; }

/* 内页区块标题居中、装饰条 */
body.page [style*="text-align: center"] > h2[style*="color: #1a1a1a"],
body.page [style*="text-align: center; margin-bottom: 48px"] h2 {
    color:var(--xf-title) !important; font-weight:700 !important;
}

/* 内页小标签（如"品牌简介"）统一为浅蓝胶囊 */
body.page span[style*="background: #e8f0fe"],
body.page span[style*="background:#e8f0fe"] {
    background:var(--xf-primary-light) !important;
    color:var(--xf-primary) !important;
    border-radius:6px !important;
}

/* 数据大数字使用主蓝 */
body.page [style*="color: #165DFF"][style*="font-weight"],
body.page strong[style*="color: #165DFF"] { color:var(--xf-primary) !important; }

/* ========== 登录 / 注册 / 用户中心 认证页精修 ========== */
.auth-page-wrap {
    background-image:
        radial-gradient(circle at 15% 20%, rgba(22,93,255,0.08) 0%, transparent 40%),
        radial-gradient(circle at 85% 80%, rgba(64,128,255,0.10) 0%, transparent 42%),
        linear-gradient(135deg, #F2F7FF 0%, #E8F1FF 100%) !important;
}
.auth-card {
    border-radius:12px !important;
    border:1px solid var(--xf-border) !important;
    box-shadow:0 12px 40px rgba(29,33,41,0.10) !important;
    overflow:hidden;
}
.auth-brand {
    background:linear-gradient(150deg, #0E42D2 0%, #165DFF 55%, #4080FF 100%) !important;
}
.auth-brand .auth-feature-item i {
    width:10px !important; height:10px !important;
    background:#ffffff !important;
    font-size:0 !important;
}
.auth-brand .auth-feature-item i::before { content:none !important; }
.auth-form-wrap input[type="text"],
.auth-form-wrap input[type="password"],
.auth-form-wrap input[type="email"],
.auth-form-wrap input[type="tel"] {
    border-radius:6px !important;
    border:1px solid var(--xf-border) !important;
    height:44px !important;
    transition:all .2s ease !important;
}
.auth-form-wrap input:focus {
    border-color:var(--xf-primary) !important;
    box-shadow:0 0 0 3px rgba(22,93,255,0.12) !important;
    outline:none !important;
}
.auth-submit-btn {
    background:var(--xf-primary) !important;
    border-radius:6px !important;
    height:46px !important;
    font-weight:500 !important;
    box-shadow:0 4px 14px rgba(22,93,255,.28) !important;
}
.auth-submit-btn:hover { background:var(--xf-primary-active) !important; }
.auth-form-wrap a, .auth-form-wrap .form-options a { color:var(--xf-primary) !important; }

/* ---- 用户中心 ---- */
.user-info-card, .user-nav, .user-content-panel, .stat-card {
    border-radius:8px !important;
    border:1px solid var(--xf-border) !important;
    box-shadow:var(--xf-card-shadow) !important;
}
.user-info-card .user-avatar,
[style*="linear-gradient(135deg, #1677ff"] {
    background-image:linear-gradient(135deg, #165DFF, #4080FF) !important;
}
.user-info-card .user-role {
    color:var(--xf-primary) !important; background:var(--xf-primary-light) !important;
    border-radius:6px !important;
}
.user-nav a:hover { background:var(--xf-bg) !important; color:var(--xf-primary) !important; }
.user-nav a.active {
    background:var(--xf-primary-light) !important; color:var(--xf-primary) !important;
    border-left-color:var(--xf-primary) !important;
}
.stat-card .stat-value { color:var(--xf-primary) !important; }
.uc-form-group input:focus, .uc-form-group select:focus, .uc-form-group textarea:focus {
    border-color:var(--xf-primary) !important;
    box-shadow:0 0 0 3px rgba(22,93,255,0.12) !important; outline:none !important;
}
.uc-btn-primary { background:var(--xf-primary) !important; border-color:var(--xf-primary) !important; border-radius:6px !important; }
.uc-btn-primary:hover { background:var(--xf-primary-active) !important; border-color:var(--xf-primary-active) !important; }
.uc-btn-default { border-radius:6px !important; }
.uc-btn-default:hover { color:var(--xf-primary) !important; border-color:var(--xf-primary) !important; }
.user-center-header, [style*="linear-gradient(135deg, #0958d9"] {
    background-image:linear-gradient(135deg, #0E42D2 0%, #165DFF 100%) !important;
}

/* ========== 响应式微调 ========== */
/* ========== 响应式：平板 / 手机适配 ========== */

/* ---- 平板及以下（≤992px）---- */
@media (max-width: 992px) {
    .auth-card { max-width:640px; }
}

/* ---- 手机导航修复（≤768px）---- */
@media (max-width: 768px) {
    .header-container { height:60px !important; padding:0 14px !important; gap:10px; }
    .site-logo img { height:40px !important; }

    /* 关键修复：覆盖 style.css 的 fixed 抽屉，nav 回到流内，只占汉堡宽度 */
    .main-navigation {
        display:block !important; position:relative !important;
        top:auto !important; left:auto !important; bottom:auto !important;
        width:auto !important; height:auto !important;
        flex:0 0 auto; order:3; overflow:visible !important;
        background:transparent !important; box-shadow:none !important;
    }
    .main-navigation > ul { display:none !important; }
    .main-navigation .menu-toggle {
        display:flex !important; position:static !important; flex-direction:column;
        justify-content:center; align-items:center;
        width:40px; height:38px; flex:0 0 auto; background:#fff; border:1px solid var(--xf-border);
        border-radius:6px; cursor:pointer; padding:0; gap:5px; margin:0; z-index:1200;
    }
    .main-navigation .menu-toggle span {
        display:block; width:18px; height:2px; background:var(--xf-title); border-radius:2px; margin:0;
    }
    .main-navigation.active > ul {
        display:flex !important; flex-direction:column !important; gap:0 !important;
        position:absolute; top:46px; right:0; min-width:210px; background:#fff;
        border:1px solid var(--xf-border); border-radius:8px;
        box-shadow:0 12px 32px rgba(0,0,0,.14); padding:8px !important; z-index:1200;
    }
    .main-navigation.active > ul > li { margin:0 !important; width:100%; border:0 !important; }
    .main-navigation.active > ul > li > a { padding:11px 14px !important; border-radius:6px; font-size:15px !important; }

    /* 右侧登录/注册按钮紧凑化 */
    .header-actions { gap:8px; order:2; }
    .header-actions .btn { padding:7px 13px !important; font-size:13px !important; gap:4px; }

    /* 首页 Hero 字号/间距 */
    .hero-banner { height:440px !important; }
    .hero-banner .hero-content { padding:0 20px; }
    .hero-banner .hero-content h1 { font-size:27px !important; letter-spacing:0 !important; }
    .hero-banner .hero-content .hero-subtitle-en { font-size:12px !important; letter-spacing:3px !important; margin-bottom:14px !important; }
    .hero-banner .hero-content .subtitle { font-size:14px !important; margin-bottom:24px !important; }
    .hero-banner .hero-buttons { gap:12px; }
    .hero-banner .btn-hero { padding:11px 24px; font-size:14px; }
    .hero-prev, .hero-next { width:36px !important; height:36px !important; }

    /* 内页顶部 Hero */
    section.page-hero-v2 { padding:56px 0 48px !important; margin-top:60px !important; }
    section.page-hero-v2 h1 { font-size:26px !important; }
    section.page-hero-v2 p { font-size:14px !important; }

    /* 综合资讯：左右布局改上下，分类菜单横向排列 */
    .news-layout { flex-direction:column !important; padding:0 16px !important; gap:16px !important; }
    .news-sidebar { width:100% !important; padding:12px !important; }
    .news-menu { display:flex !important; flex-wrap:wrap !important; gap:8px !important; }
    .news-menu li { margin-bottom:0 !important; padding:8px 14px !important; white-space:nowrap; }
    .news-main { width:100% !important; padding:20px !important; min-width:0; }

    /* 大图底部叠加的统计条：4 项允许换行、缩小间距，避免窄屏溢出 */
    [style*="linear-gradient(transparent"] {
        flex-wrap:wrap !important; gap:14px 20px !important;
        padding:14px 20px !important;
    }
    [style*="linear-gradient(transparent"] > div { flex:1 1 38% !important; min-width:0; }
    [style*="linear-gradient(transparent"] > div > div:first-child { font-size:22px !important; }
    /* 渐变圆角卡裁切超出的装饰圆圈/水印 */
    div[style*="linear-gradient(135deg"] { overflow:hidden !important; }
    /* 通用：绝对定位装饰元素（负 right/top 的圆、图标）不产生横向滚动 */
    [style*="position: absolute"][style*="right: -"] { max-width:120px; }

    /* 智能教材平台：二级菜单手机端改为横向胶囊标签条 */
    .platform-sidebar { width:100% !important; padding:16px !important; }
    .platform-sidebar h3 { margin-bottom:12px !important; padding-bottom:10px !important; }
    .platform-sidebar .sidebar-menu { display:flex !important; flex-direction:row !important; flex-wrap:wrap !important; gap:8px !important; }
    .platform-sidebar .sidebar-menu > li {
        width:auto !important; flex:0 0 auto !important; margin-bottom:0 !important;
        padding:8px 14px !important; white-space:nowrap; border-radius:20px !important;
        background:rgba(255,255,255,0.12) !important; color:rgba(255,255,255,0.92) !important;
    }
    .platform-sidebar .sidebar-menu > li.active {
        background:#fff !important; color:var(--xf-primary) !important; font-weight:600;
    }
    /* 当前单张卡片：手机端不强制等高、内容单列、紧凑内边距 */
    .platform-content .platform-main { display:block; }
    .platform-content .feature-box[style*="display: block"] {
        height:auto !important; padding:20px !important;
    }
    .platform-content .feature-box[style*="display: block"] h4 { font-size:17px !important; margin-bottom:10px !important; }
    .platform-content .fb-points { grid-template-columns:1fr !important; gap:0 !important; }
    .platform-content .fb-points li { font-size:14px !important; padding:6px 0 6px 24px !important; }

    /* 高校合作联盟走马灯：手机端缩小卡片 */
    .partner-marquee { margin-bottom:30px; }
    .partner-logo { width:158px !important; height:72px; padding:10px 14px; margin-right:12px; }

    /* 认证页：左右变上下 */
    .auth-page-wrap { padding:24px 14px !important; margin-top:60px !important; }
    .auth-card { flex-direction:column; min-height:auto; }
    .auth-brand { padding:32px 26px !important; }
    .auth-brand h2 { font-size:22px !important; }
    .auth-form-wrap { padding:28px 24px !important; }

    .xf-section-title h2 { font-size:23px; }
    .xf-section-title { margin-bottom:28px; }
}

/* ---- 小屏手机（≤480px）---- */
@media (max-width: 480px) {
    .header-container { padding:0 10px !important; gap:6px; }
    .site-logo img { height:36px !important; }
    .header-actions .btn { padding:6px 10px !important; font-size:12.5px !important; }
    /* 极窄屏隐藏按钮文字前的图标，保证不挤 */
    .header-actions .btn i { display:none; }

    .hero-banner { height:400px !important; }
    .hero-banner .hero-content h1 { font-size:23px !important; }
    .hero-banner .hero-buttons { flex-direction:column; width:100%; }
    .hero-banner .hero-buttons .btn-hero { width:100%; justify-content:center; }

    section.page-hero-v2 h1 { font-size:23px !important; }
    .auth-brand { padding:26px 20px !important; }
    .auth-form-wrap { padding:24px 18px !important; }
}


/* =====================================================================
 * 悬浮智能客服 Xinfeng Floating AI Assistant  v1.5.0
 * 主色与全站统一：#165DFF 企业稳重蓝；位于回到顶部按钮上方，互不重叠
 * ===================================================================== */
.xf-chat { --xf-primary: #165DFF; --xf-primary-deep: #0E49A3; }
.xf-chat * { box-sizing: border-box; }

/* 悬浮入口按钮 */
.xf-chat-launcher {
    position: fixed;
    right: 40px;
    bottom: 104px;
    width: 56px;
    height: 56px;
    border: none;
    border-radius: 50%;
    background: linear-gradient(135deg, #165DFF 0%, #0E49A3 100%);
    color: #fff;
    font-size: 23px;
    cursor: pointer;
    z-index: 100000;
    box-shadow: 0 8px 24px rgba(22, 93, 255, 0.42);
    transition: transform .25s ease, box-shadow .25s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}
.xf-chat-launcher:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(22, 93, 255, 0.5); }
.xf-chat-launcher.xf-hidden { display: none; }
.xf-chat-pulse {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(22, 93, 255, 0.45);
    animation: xfChatPulse 2.2s ease-out infinite;
    z-index: -1;
}
@keyframes xfChatPulse {
    0%   { transform: scale(1);   opacity: .55; }
    70%  { transform: scale(1.55); opacity: 0; }
    100% { transform: scale(1.55); opacity: 0; }
}

/* 聊天面板 */
.xf-chat-panel {
    position: fixed;
    right: 40px;
    bottom: 104px;
    width: 372px;
    max-width: calc(100vw - 32px);
    height: 548px;
    max-height: calc(100vh - 132px);
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    display: none;
    flex-direction: column;
    z-index: 100001;
    box-shadow: 0 18px 56px rgba(13, 35, 80, 0.26);
    transform: translateY(16px) scale(.97);
    opacity: 0;
    transform-origin: right bottom;
    transition: transform .24s ease, opacity .24s ease;
}
.xf-chat-panel.open {
    display: flex;
    transform: translateY(0) scale(1);
    opacity: 1;
}

/* 头部 */
.xf-chat-header {
    flex: 0 0 auto;
    background: linear-gradient(135deg, #165DFF 0%, #0E49A3 100%);
    padding: 14px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
}
.xf-chat-hd-left { display: flex; align-items: center; gap: 11px; min-width: 0; }
.xf-chat-hd-avatar {
    width: 38px; height: 38px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.18);
    display: flex; align-items: center; justify-content: center;
    font-size: 17px; flex-shrink: 0;
}
.xf-chat-title { font-size: 15px; font-weight: 600; line-height: 1.3; }
.xf-chat-status { font-size: 12px; opacity: .9; display: flex; align-items: center; gap: 5px; margin-top: 2px; }
.xf-status-dot { width: 7px; height: 7px; border-radius: 50%; background: #3ED598; box-shadow: 0 0 0 3px rgba(62, 213, 152, .28); }
.xf-chat-close {
    width: 30px; height: 30px;
    border: none; border-radius: 50%;
    background: rgba(255, 255, 255, 0.14);
    color: #fff; cursor: pointer; font-size: 13px;
    flex-shrink: 0;
    transition: background .2s;
}
.xf-chat-close:hover { background: rgba(255, 255, 255, 0.3); }

/* 消息区 */
.xf-chat-body { flex: 1 1 auto; overflow-y: auto; background: #F4F6FA; padding: 16px 14px; }
.xf-msg { display: flex; align-items: flex-start; gap: 8px; margin-bottom: 14px; }
.xf-msg-user { flex-direction: row-reverse; }
.xf-msg-avatar {
    width: 30px; height: 30px; flex-shrink: 0;
    border-radius: 50%;
    background: linear-gradient(135deg, #165DFF, #0E49A3);
    color: #fff; font-size: 13px;
    display: flex; align-items: center; justify-content: center;
}
.xf-bubble {
    max-width: 77%;
    padding: 10px 13px;
    font-size: 13.5px;
    line-height: 1.62;
    border-radius: 13px;
    word-break: break-word;
}
.xf-msg-bot .xf-bubble { background: #fff; border: 1px solid #EAEDF2; color: #2A3142; border-top-left-radius: 4px; }
.xf-msg-user .xf-bubble { background: #165DFF; color: #fff; border-top-right-radius: 4px; }

/* 正在输入动画 */
.xf-typing { display: inline-flex; gap: 5px; padding: 13px 15px; }
.xf-typing span { width: 7px; height: 7px; border-radius: 50%; background: #B6C2D9; animation: xfTyping 1.1s infinite ease-in-out; }
.xf-typing span:nth-child(2) { animation-delay: .18s; }
.xf-typing span:nth-child(3) { animation-delay: .36s; }
@keyframes xfTyping { 0%, 80%, 100% { transform: translateY(0); opacity: .45; } 40% { transform: translateY(-4px); opacity: 1; } }

/* 常见问题 */
.xf-quick { display: flex; flex-wrap: wrap; gap: 8px; margin: 2px 0 4px 38px; }
.xf-chip {
    background: #fff;
    border: 1px solid #C9D8FF;
    color: #165DFF;
    font-size: 12px;
    line-height: 1.3;
    padding: 6px 11px;
    border-radius: 14px;
    cursor: pointer;
    transition: background .18s, border-color .18s;
}
.xf-chip:hover { background: #EAF1FF; border-color: #165DFF; }

/* 输入区 */
.xf-chat-input {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 13px;
    background: #fff;
    border-top: 1px solid #EAEDF2;
}
.xf-chat-input input {
    flex: 1;
    min-width: 0;
    height: 40px;
    border: 1px solid #E1E5EE;
    border-radius: 10px;
    padding: 0 13px;
    font-size: 13px;
    color: #2A3142;
    background: #F7F9FC;
    transition: border-color .18s, background .18s;
}
.xf-chat-input input:focus { outline: none; border-color: #165DFF; background: #fff; }
.xf-chat-send {
    width: 42px; height: 40px;
    flex-shrink: 0;
    border: none; border-radius: 10px;
    background: linear-gradient(135deg, #165DFF, #0E49A3);
    color: #fff; font-size: 15px; cursor: pointer;
    transition: filter .18s;
}
.xf-chat-send:hover { filter: brightness(1.08); }

/* 平板 */
@media (max-width: 900px) and (min-width: 577px) {
    .xf-chat-launcher { right: 24px; }
    .xf-chat-panel { right: 24px; width: 344px; }
}
/* 手机：面板近全宽，避免横向溢出 */
@media (max-width: 576px) {
    .xf-chat-launcher { right: 16px; bottom: 92px; width: 52px; height: 52px; font-size: 21px; }
    .xf-chat-panel {
        left: 12px;
        right: 12px;
        bottom: 84px;
        width: auto;
        max-width: none;
        height: 72vh;
        max-height: 72vh;
    }
    .xf-bubble { max-width: 82%; font-size: 13px; }
    .xf-quick { margin-left: 0; }
}

/* ============================================================
   13 secondary detail pages: deep-blue enterprise hero + white text
   Overrides the light-blue section[class$="-hero"] fallback above.
   Scoped by .xf-deep-hero so conference/news/careers pages are untouched.
   ============================================================ */
body section.xf-deep-hero {
    position: relative; overflow: hidden;
    background-image: linear-gradient(135deg, #0E42B3 0%, #165DFF 55%, #4080FF 100%) !important;
    border-bottom: none !important;
}
body section.xf-deep-hero::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background:
        radial-gradient(circle at 12% 18%, rgba(255,255,255,0.10) 0%, transparent 36%),
        radial-gradient(circle at 88% 82%, rgba(255,255,255,0.08) 0%, transparent 40%);
}
body section.xf-deep-hero > * { position: relative; z-index: 1; }
body section.xf-deep-hero h1 {
    color: #ffffff !important; letter-spacing: .5px;
    text-shadow: 0 2px 14px rgba(6,24,70,.28);
}
body section.xf-deep-hero p,
body section.xf-deep-hero [class$="-subtitle"],
body section.xf-deep-hero span { color: rgba(255,255,255,.92) !important; opacity: 1 !important; }
body section.xf-deep-hero [class*="breadcrumb"] { color: rgba(255,255,255,.78) !important; }
body section.xf-deep-hero .btn-hero-primary,
body section.xf-deep-hero .btn-cta-primary {
    background: #ffffff !important; color: #165DFF !important;
    border: 1px solid #ffffff !important; border-radius: 6px !important;
    box-shadow: 0 6px 18px rgba(8,30,90,.28) !important; font-weight: 600 !important;
}
body section.xf-deep-hero .btn-hero-primary:hover,
body section.xf-deep-hero .btn-cta-primary:hover { background: #EAF1FF !important; color: #0E42B3 !important; }
body section.xf-deep-hero .btn-hero-outline,
body section.xf-deep-hero .btn-cta-outline {
    background: rgba(255,255,255,.08) !important; color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.65) !important; border-radius: 6px !important; font-weight: 500 !important;
}
body section.xf-deep-hero .btn-hero-outline:hover,
body section.xf-deep-hero .btn-cta-outline:hover { background: #ffffff !important; color: #165DFF !important; border-color: #ffffff !important; }