/* 首页与各内页共用版块样式（依赖 common.css 中的:root 与页头页脚） *//* ----- 区块留白（内页 page-hero 单独由 common.css 控制） ----- */section:not(.page-hero) {padding:58px 0;}
.section-divider {height:10px;width:100%;flex-shrink:0;}
.section-divider.d1 {background:linear-gradient(90deg,var(--primary-dark),var(--primary));}
.section-divider.d2 {background:linear-gradient(90deg,#3b82f6,#93c5fd);}
.section-divider.d3 {background:rgba(30,64,175,0.2);}
.section-title {text-align:center;margin-bottom:48px;}
.section-title h2 {font-size:1.85rem;color:var(--primary);font-weight:700;margin-bottom:10px;}
.section-title p {color:var(--text-muted);font-size:1rem;}
@media screen and (max-width:768px) {.section-title h2 {font-size:1.4rem;}
.section-title p {font-size:0.85rem;}
.section-title {margin-bottom:14px;}
section:not(.page-hero) {padding:24px 0;}
}
/* ----- 首页 · Hero 与叠层数据条 ----- */.hero-metrics-stack {position:relative;--hero-height:clamp(500px,50vh,600px);--hero-pagination-bottom:clamp(64px,9vh,88px);--metrics-overlap:clamp(32px,4vh,48px);padding-bottom:calc(var(--metrics-overlap) * 0.2);}
.hero-metrics-stack .hero-swiper {position:relative;z-index:1;height:var(--hero-height);max-height:var(--hero-height);padding-bottom:0;overflow:hidden;}
.hero-metrics-stack .hero-swiper .swiper-wrapper,.hero-metrics-stack .hero-swiper .swiper-slide {height:var(--hero-height) !important;max-height:var(--hero-height);}
.hero-metrics-stack .hero-swiper .swiper-pagination {bottom:var(--hero-pagination-bottom) !important;}
.hero-metrics-stack .hero-swiper .swiper-button-next,.hero-metrics-stack .hero-swiper .swiper-button-prev {z-index:8;}
@media (max-width:768px) {.hero-metrics-stack {--hero-height:clamp(360px,55vw,420px);--hero-pagination-bottom:clamp(72px,12vw,96px);--metrics-overlap:clamp(28px,8vw,40px);padding-bottom:calc(var(--metrics-overlap) * 0.15);}
}
.hero-swiper {opacity:0;transform:translateY(24px);animation:fadeSlideUp 0.9s ease forwards;animation-delay:0.35s;}
.hero-swiper,.hero-swiper .swiper-wrapper {height:100%;}
@keyframes fadeSlideUp {to {opacity:1;transform:translateY(0);}
}
.hero-swiper .swiper-slide {height:100%;min-height:0;display:flex;align-items:center;justify-content:center;padding:clamp(28px,4vh,44px) 6% clamp(80px,10vh,100px);background-size:cover;background-position:center;position:relative;box-sizing:border-box;}
.hero-swiper .swiper-slide::before {content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(15,23,42,0.78) 0%,rgba(30,64,175,0.55) 100%);}
.hero-content {position:relative;z-index:2;max-width:var(--page-max);margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;text-align:center;color:var(--white);}
.hero-content h2 {font-size:clamp(1.65rem,3.5vw,2.15rem);font-weight:700;margin-bottom:16px;line-height:1.35;}
.hero-content p {font-size:clamp(0.95rem,2vw,1.05rem);opacity:0.93;margin-bottom:26px;}
.hero-btns {display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.hero-btns a {padding:12px 28px;border-radius:8px;font-weight:600;transition:transform 0.35s ease,box-shadow 0.35s ease;}
.hero-btns .outline {background:transparent;border:2px solid rgba(255,255,255,0.9);color:var(--white);}
.hero-btns .outline:hover {background:var(--white);color:var(--primary);transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,0.2);}
.hero-btns .solid {background:var(--white);color:var(--primary);border:2px solid var(--white);}
.hero-btns .solid:hover {transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,0.25);}
.hero-swiper .swiper-pagination-bullet {background:var(--white);opacity:0.45;}
.hero-swiper .swiper-pagination-bullet-active {opacity:1;background:var(--white);}
.hero-swiper .swiper-button-next,.hero-swiper .swiper-button-prev {color:var(--white);}
/* ----- 滚动显现 ----- */.reveal {opacity:0;transform:translateY(36px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal.visible {opacity:1;transform:translateY(0);}
.reveal-stagger .reveal-item {opacity:0;transform:translateY(28px);transition:opacity 0.65s ease,transform 0.65s ease;}
.reveal-stagger.visible .reveal-item:nth-child(1) {transition-delay:0.05s;}
.reveal-stagger.visible .reveal-item:nth-child(2) {transition-delay:0.15s;}
.reveal-stagger.visible .reveal-item:nth-child(3) {transition-delay:0.25s;}
.reveal-stagger.visible .reveal-item:nth-child(4) {transition-delay:0.35s;}
.reveal-stagger.visible .reveal-item:nth-child(5) {transition-delay:0.45s;}
.reveal-stagger.visible .reveal-item:nth-child(6) {transition-delay:0.55s;}
.reveal-stagger.visible .reveal-item {opacity:1;transform:translateY(0);}
.page-shell {max-width:var(--page-max);margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;}
/* 叠在轮播下的数据条 */.hero-metrics-stack .metrics-strip {position:relative;z-index:5;margin-top:calc(var(--metrics-overlap,-48px) * -1);padding:0 0 48px;background:transparent;border:none;}
.hero-metrics-stack .metrics-inner {padding:22px 26px;border-radius:var(--radius);background:rgba(255,255,255,0.76);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,0.55);box-shadow:0 16px 48px rgba(15,23,42,0.22);}
/* 独立展示的数据条（关于页等） */.metrics-strip {padding:48px 0;background:var(--white);border-top:1px solid rgba(30,64,175,0.08);border-bottom:1px solid rgba(30,64,175,0.08);}
.metrics-inner {padding:24px 28px;border-radius:var(--radius);background:linear-gradient(135deg,rgba(30,64,175,0.06),rgba(59,130,246,0.05));border:1px solid rgba(30,64,175,0.1);}
.stat-icon {width:4rem;height:4rem;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;font-size:1.8rem;color:var(--primary);background:rgba(30,64,175,0.12);border:1px solid rgba(30,64,175,0.15);}
.hero-metrics-stack .stat-icon {background:rgba(30,64,175,0.14);border-color:rgba(30,64,175,0.2);}
.stats-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0 auto;}
@media (max-width:900px) {.stats-grid {grid-template-columns:repeat(2,1fr);}
}
.stat-item {text-align:center;padding:20px 16px;border-radius:var(--radius);background:var(--white);border:1px solid rgba(30,64,175,0.1);transition:transform 0.4s ease,box-shadow 0.4s ease;}
.stat-item:hover {transform:translateY(-6px);box-shadow:0 12px 28px rgba(30,64,175,0.12);}
.hero-metrics-stack .stat-item {background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none;}
.hero-metrics-stack .stat-item:hover {background:transparent;box-shadow:none;}
.stat-num {font-size:2.2rem;font-weight:700;margin-bottom:6px;color:var(--primary);line-height:1.1;}
.stat-label {font-size:0.95rem;color:var(--text-muted);}
@media (max-width:768px) {.hero-metrics-stack .metrics-strip {margin-top:calc(var(--metrics-overlap,-100px) * -1);}
.page-shell {padding:0 12px;}
.stat-num {font-size:1.8rem;}
}
/* ----- 平台简介 ----- */.intro-wrap {display:grid;grid-template-columns:1fr 1fr;gap:48px;margin:0 auto;align-items:center;}
@media (max-width:900px) {.intro-wrap {grid-template-columns:1fr;}
}
.intro-text h3 {font-size:1.5rem;color:var(--primary);margin-bottom:16px;}
.intro-text p {color:var(--text-muted);margin-bottom:16px;}
.tags {display:flex;flex-wrap:wrap;gap:10px;margin:24px 0;}
.tags span {padding:8px 14px;background:rgba(30,64,175,0.1);color:var(--primary);border-radius:20px;font-size:0.88rem;transition:transform 0.3s ease,background 0.3s ease;}
.tags span:hover {transform:scale(1.05);background:rgba(30,64,175,0.18);}
.btn-primary {display:inline-block;padding:12px 28px;background:linear-gradient(135deg,var(--primary),var(--primary-light));color:var(--white);border-radius:8px;font-weight:600;transition:transform 0.35s ease,box-shadow 0.35s ease;}
.btn-primary:hover {transform:translateY(-3px);box-shadow:0 10px 28px rgba(30,64,175,0.35);}
.intro-img {border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform 0.5s ease,box-shadow 0.5s ease;}
.intro-img:hover {transform:scale(1.02);box-shadow:0 20px 50px rgba(30,64,175,0.2);}
@media screen and (max-width:768px) {.intro-text h3 {margin-bottom:14px;text-align:center;}
.tags span {font-size:0.8rem;width:45%;text-align:center;padding:6px 2.5%;}
.btn-primary {font-size:0.8rem;padding:8px 16px;width:100%;box-sizing:border-box;text-align:center;}
.intro-img {width:100%;}
.intro-text p {font-size:0.8rem;margin-bottom:14px;}
.intro-text {text-align:center;}
.intro-wrap {gap:24px;}
}
/* ----- 标签页 · 卡片 ----- */.tabs {display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:32px;}
.tab-btn {padding:10px 20px;border:2px solid rgba(30,64,175,0.25);background:var(--white);color:var(--text);border-radius:8px;cursor:pointer;font-family:inherit;font-size:0.92rem;font-weight:500;transition:all 0.35s ease;}
.tab-btn:hover,.tab-btn.active {background:var(--primary);color:var(--white);border-color:var(--primary);transform:translateY(-2px);}
/* 首页「专家团队」：移动端研究领域下拉 */.experts-category-switch {margin:0 auto;max-width:min(640px,100%);}
.experts-category-mobile .experts-category-label {display:block;font-size:0.875rem;font-weight:600;color:var(--text-muted);margin-bottom:8px;letter-spacing:0.02em;}
.experts-category-select-wrap {position:relative;}
.experts-category-select-wrap::after {content:"";pointer-events:none;position:absolute;right:16px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--primary);opacity:0.75;}
.experts-category-select {width:100%;display:block;appearance:none;-webkit-appearance:none;padding:14px 44px 14px 18px;font-family:inherit;font-size:0.95rem;font-weight:500;line-height:1.35;color:var(--text);background-color:var(--white);border:2px solid rgba(30,64,175,0.22);border-radius:12px;cursor:pointer;transition:border-color 0.25s ease,box-shadow 0.25s ease;}
.experts-category-select:hover {border-color:rgba(30,64,175,0.38);}
.experts-category-select:focus {outline:none;border-color:var(--primary);box-shadow:0 0 0 4px rgba(30,64,175,0.14);}
@media (max-width:640px) {.experts-category-switch {max-width:100%;margin-bottom:22px;}
.experts-category-mobile .experts-category-label {font-size:0.82rem;}
.experts-category-select {font-size:0.9rem;padding:12px 42px 12px 14px;border-radius:10px;}
.experts-category-select-wrap::after {right:14px;}
}
/* PC：研究领域横向 Swiper；移动端隐藏（改用下拉） */.experts-category-desktop {display:none;}
@media (min-width:769px) {.experts-category-mobile {display:none !important;}
.experts-category-desktop {display:flex;flex-direction:column;align-items:stretch;width:100%;}
.experts-category-toolbar {width:100%;}
.experts-category-label-text {margin-bottom:12px;text-align:center;max-width:40rem;padding:0 8px;box-sizing:border-box;}
}
.experts-category-toolbar {margin-bottom:28px;}
.experts-category-label-text {display:block;font-size:0.875rem;font-weight:600;color:var(--text-muted);margin-bottom:8px;letter-spacing:0.02em;}
.experts-category-swiper-wrap {display:flex;align-items:center;gap:10px;width:100%;max-width:100%;margin-inline:auto;box-sizing:border-box;}
.experts-category-swiper {flex:1 1 auto;width:100%;min-width:0;}
.experts-category-swiper .swiper-slide {height:auto;box-sizing:border-box;}
.experts-category-swiper .experts-cat-btn {width:100%;max-width:100%;margin:0;min-height:44px;padding:10px 14px;font-size:0.875rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform:none;display:block;text-align:center;border-radius:10px;box-sizing:border-box;}
.experts-category-swiper a.experts-cat-btn {text-decoration:none;color:var(--text);}
.experts-category-swiper a.experts-cat-btn:hover,.experts-category-swiper a.experts-cat-btn.active {color:var(--white);}
.experts-category-swiper .experts-cat-btn:hover {transform:none;}
.experts-category-nav {flex-shrink:0;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(30,64,175,0.25);background:var(--white);color:var(--primary);border-radius:10px;cursor:pointer;font-size:1rem;transition:background 0.25s ease,color 0.25s ease,border-color 0.25s ease,opacity 0.25s ease;}
.experts-category-nav:hover:not(.swiper-button-disabled) {background:var(--primary);color:var(--white);border-color:var(--primary);}
.experts-category-nav.swiper-button-disabled {opacity:0.35;cursor:not-allowed;pointer-events:none;}
.expert-category-empty {margin:0 auto 36px;max-width:520px;padding:48px 24px;text-align:center;border:2px dashed rgba(30,64,175,0.2);border-radius:12px;background:rgba(30,64,175,0.04);}
.expert-category-empty-lead {margin:0 0 10px;font-size:1.35rem;font-weight:700;color:var(--primary);}
.expert-category-empty-hint {margin:0;font-size:0.94rem;color:var(--text-muted);line-height:1.55;}
.tab-panel {display:none;}
.tab-panel.active {display:block;animation:panelIn 0.5s ease;}
@keyframes panelIn {from {opacity:0;transform:translateY(12px);}
to {opacity:1;transform:translateY(0);}
}
.card-grid {display:grid;gap:15px;margin:0 auto 36px;}
.card-grid--3 {grid-template-columns:repeat(3,1fr);}
@media (max-width:1100px) {.card-grid--3 {grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px) {.card-grid--3 {grid-template-columns:1fr;}
}
.expert-card-empty,.member-card-empty {grid-column:1 / -1;justify-self:center;width:100%;max-width:min(640px,100%);margin-inline:auto;box-sizing:border-box;justify-content:center;align-items:center;text-align:center;padding:28px 20px;}
@media (min-width:769px) {.expert-card-empty,.member-card-empty {max-width:calc(min(880px,calc(100vw - 10rem)) + 100px);}
}
.expert-card-empty .expert-intro,.member-card-empty .member-intro {flex:none;display:block;-webkit-line-clamp:unset;line-clamp:unset;overflow:visible;}
.btn-card-detail {display:inline-flex;align-items:center;gap:8px;padding:8px 14px;font-size:0.84rem;font-weight:600;color:var(--primary);background:transparent;border:2px solid rgba(30,64,175,0.45);border-radius:8px;cursor:pointer;text-decoration:none;transition:background 0.25s ease,color 0.25s ease,border-color 0.25s ease,transform 0.25s ease,box-shadow 0.25s ease;margin-top:15px;align-self:flex-end;box-sizing:border-box;box-shadow:none;}
.btn-card-detail:hover {transform:translateY(-2px);background:rgba(30,64,175,0.07);color:var(--primary-dark);border-color:var(--primary);box-shadow:0 4px 12px rgba(30,64,175,0.12);}
.btn-card-detail i {font-size:0.78rem;opacity:0.9;}
.card.expert-card {display:flex;flex-direction:column;height:100%;}
.expert-card .expert-name-row {display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 12px;margin-bottom:10px;}
.expert-card .expert-name {font-size:1.08rem;font-weight:700;color:var(--primary);}
.expert-card .expert-title {font-size:0.82rem;color:var(--text-muted);font-weight:500;}
.expert-card .expert-intro {font-size:0.9rem;color:var(--text-muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:14px;flex:1;min-height:0;}
.expert-card .expert-skills {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
.expert-card .expert-skills span {font-size:0.78rem;padding:4px 10px;border-radius:6px;background:rgba(30,64,175,0.1);color:var(--primary);font-weight:500;}
.member-card h4 {margin-bottom:6px;}
.member-card .member-meta {font-size:0.84rem;color:var(--primary);font-weight:500;margin-bottom:12px;}
.member-card .member-intro {font-size:0.92rem;color:var(--text-muted);line-height:1.58;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1;}
.card.member-card {display:flex;flex-direction:column;}
.card {background:var(--white);padding:22px;border-radius:var(--radius);border:1px solid rgba(30,64,175,0.1);box-shadow:0 4px 20px rgba(0,0,0,0.04);transition:transform 0.4s ease,box-shadow 0.4s ease,border-color 0.35s ease;}
.card:hover {transform:translateY(-6px);box-shadow:0 16px 40px rgba(30,64,175,0.15);border-color:rgba(30,64,175,0.25);}
.card h4 {color:var(--primary);font-size:1.05rem;margin-bottom:8px;}
.card .meta {font-size:0.85rem;color:var(--text-muted);margin-bottom:10px;}
.section-cta {text-align:center;}
.project-card .status {display:inline-block;padding:5px 11px;border-radius:6px;font-size:0.78rem;font-weight:600;margin-bottom:10px;letter-spacing:0.02em;}
.project-card .status-st-running {background:rgba(59,130,246,0.22);color:#1e40af;}
.project-card .status-st-open {background:rgba(245,158,11,0.22);color:#c2410c;}
.project-card .status-st-plan {background:rgba(100,116,139,0.2);color:#475569;}
.project-card .status-st-urgent {background:rgba(239,68,68,0.18);color:#b91c1c;}
.project-card .status-st-stable {background:rgba(20,184,166,0.2);color:#0f766e;}
.project-card .status-st-deal {background:rgba(139,92,246,0.18);color:#6d28d9;}
.project-card .status-st-default {background:rgba(30,64,175,0.12);color:var(--primary-dark);}
.project-card .cats {font-size:0.88rem;color:var(--primary);margin-bottom:12px;}
.project-card .publisher {font-size:0.88rem;margin-top:12px;line-height:1.55;}
.project-card .publisher-label {color:#b45309;font-weight:700;margin-right:4px;}
.project-card .publisher-org {color:var(--text-muted);font-weight:500;}
.project-card {display:flex;flex-direction:column;}
.project-card .project-desc {flex:1;}
.link-btn {display:inline-block;margin-top:12px;color:var(--primary);font-weight:600;font-size:0.9rem;transition:transform 0.25s ease;}
.link-btn:hover {transform:translateX(4px);}
@media screen and (max-width:768px) {.tab-btn {font-size:0.8rem;padding:8px 10px;}
.tab-btn:hover,.tab-btn.active {transform:translateY(-2px);}
.tab-panel {padding:12px;}
.card-grid {gap:10px;margin:0 auto 18px;}
.card-grid--3 {grid-template-columns:1fr;}
.card-grid--2 {grid-template-columns:1fr;}
.btn-card-detail {font-size:0.8rem;padding:6px 10px;}
.btn-card-detail i {font-size:0.7rem;}
.expert-card .expert-name {font-size:1rem;}
.expert-card .expert-title {font-size:0.8rem;}
.expert-card .expert-intro {font-size:0.8rem;}
.expert-card .expert-skills span {font-size:0.7rem;padding:4px 8px;}
.member-card .member-meta {font-size:0.8rem;}
.member-card .member-intro {font-size:0.8rem;}
}
/* ----- AI 匹配 ----- */.ai-section {background:linear-gradient(180deg,#eff6ff 0%,var(--bg) 100%);}
.ai-grid {display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:0 auto;max-width:100%;}
@media (max-width:768px) {.ai-grid {grid-template-columns:1fr;}
}
.ai-card {background:var(--white);padding:28px;border-radius:var(--radius);border:2px solid rgba(30,64,175,0.15);transition:transform 0.4s ease,border-color 0.4s ease;}
.ai-card:hover {transform:translateY(-5px);border-color:var(--primary-light);}
.ai-card h4 {color:var(--primary);margin-bottom:12px;font-size:1.1rem;}
.ai-card-subtitle {color:var(--text-muted);font-size:0.92rem;margin:4px 0 8px;}
.ai-card-desc {color:var(--text-muted);font-size:0.92rem;line-height:1.55;margin:0 0 10px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.ai-card-score {color:var(--text-muted);font-size:0.92rem;margin:0 0 16px;}
.ai-card-score strong {color:var(--primary);font-weight:700;}
/* ----- 通知公告 ----- */.news-list {display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:0 auto;}
@media (max-width:768px) {.news-list {grid-template-columns:1fr;}
}
.news-item {display:flex;gap:16px;padding:20px;background:var(--white);border-radius:var(--radius);border:1px solid rgba(30,64,175,0.08);transition:transform 0.35s ease,box-shadow 0.35s ease;align-items:flex-start;height:100%;}
.news-item:hover {transform:translateY(-4px);box-shadow:var(--shadow);}
.news-date {flex-shrink:0;width:66px;text-align:center;padding:16px 8px;background:var(--primary);color:var(--white);border-radius:8px;font-weight:700;line-height:1.5;}
.news-date small {display:block;font-size:0.75rem;font-weight:500;opacity:0.9;margin-top:5px;}
/* ----- 通知公告详情 ----- */.news-detail {max-width:1280px;margin:0 auto;padding:32px 36px;background:var(--white);border-radius:var(--radius);border:1px solid rgba(30,64,175,0.08);box-shadow:0 8px 28px rgba(30,64,175,0.06);}
@media (max-width:600px) {.news-detail {padding:22px 18px;}
}
.news-detail-title {text-align:center;font-size:1.5rem;color:var(--primary);margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid rgba(30,64,175,0.1);color:var(--text-muted);justify-content:center;}
.news-detail-meta {display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid rgba(30,64,175,0.1);font-size:0.92rem;color:var(--text-muted);justify-content:center;}
.news-detail-meta span {display:inline-flex;align-items:center;gap:8px;}
.news-detail-meta i {color:var(--primary-light);opacity:0.9;}
.news-detail-body {font-size:1.05rem;line-height:1.85;color:var(--text);}
.news-detail-body p {margin:0 0 1.1em;}
.news-detail-body p:last-child {margin-bottom:0;}
.news-detail-actions {margin-top:36px;padding-top:24px;border-top:1px solid rgba(30,64,175,0.08);}
.news-detail-actions .link-btn:hover {transform:translateX(-4px);}
/* ----- 法律声明单页（隐私 / 免责） ----- */.legal-toc {display:flex;flex-wrap:wrap;justify-content:center;gap:12px 22px;margin-bottom:26px;padding:14px 20px;background:rgba(30,64,175,0.05);border-radius:var(--radius);border:1px solid rgba(30,64,175,0.1);font-size:0.92rem;}
.legal-toc a {color:var(--primary);font-weight:600;text-decoration:none;}
.legal-toc a:hover {text-decoration:underline;}
.legal-doc .news-detail-body h2 {scroll-margin-top:88px;font-size:1.2rem;font-weight:700;color:var(--primary);margin:2.2em 0 1em;padding-bottom:10px;border-bottom:1px solid rgba(30,64,175,0.12);}
.legal-doc .news-detail-body h2:first-child {margin-top:0;}
.legal-doc .news-detail-body ul {margin:0 0 1.15em;padding-left:1.35em;}
.legal-doc .news-detail-body li {margin-bottom:0.55em;}
.legal-doc .news-detail-body li:last-child {margin-bottom:0;}
.legal-doc .legal-doc-actions {display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;}
/* ----- 项目对接详情 ----- */.project-detail-wrap {max-width:100%;margin:0 auto;}
.project-detail-sheet {max-width:100%;}
.project-detail-title-main {font-size:1.42rem;font-weight:700;color:var(--primary);line-height:1.4;text-align:center;margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid rgba(30,64,175,0.12);}
.project-detail-strip {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 14px;margin-bottom:22px;font-size:0.9rem;color:var(--text-muted);}
.project-detail-strip-sep {opacity:0.45;user-select:none;}
.project-detail-type-pill {display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-weight:600;font-size:0.82rem;background:rgba(30,64,175,0.08);color:var(--primary);border:1px solid rgba(30,64,175,0.14);}
/* 详情页状态（未套在项目卡片上时也应有配色） */.project-detail-sheet .status {display:inline-flex;align-items:center;justify-content:center;padding:5px 11px;border-radius:6px;font-size:0.78rem;font-weight:600;letter-spacing:0.02em;}
.project-detail-sheet .status-st-running {background:rgba(59,130,246,0.22);color:#1e40af;}
.project-detail-sheet .status-st-open {background:rgba(245,158,11,0.22);color:#c2410c;}
.project-detail-sheet .status-st-plan {background:rgba(100,116,139,0.2);color:#475569;}
.project-detail-sheet .status-st-urgent {background:rgba(239,68,68,0.18);color:#b91c1c;}
.project-detail-sheet .status-st-stable {background:rgba(20,184,166,0.2);color:#0f766e;}
.project-detail-sheet .status-st-deal {background:rgba(139,92,246,0.18);color:#6d28d9;}
.project-detail-sheet .status-st-default {background:rgba(30,64,175,0.12);color:var(--primary-dark);}
/* 「项目状态」强调：圆角更小；色调与「项目类型」蓝紫胶囊区分——状态用语义色 + 描边 */.project-detail-status-em {font-weight:800;letter-spacing:0.04em;border-width:1px;border-style:solid;box-sizing:border-box;}
.project-detail-strip .project-detail-status-em {font-size:0.82rem;padding:4px 18px;border-radius:999px;}
.project-detail-status-em--field {font-size:1.12rem;padding:11px 18px;border-radius:8px;}
.project-detail-sheet .project-detail-status-em.status-st-running {background:rgba(22,163,74,0.11);color:#15803d;border-color:rgba(22,163,74,0.42);box-shadow:0 2px 10px rgba(22,163,74,0.12);}
.project-detail-sheet .project-detail-status-em.status-st-open {background:rgba(245,158,11,0.1);color:#c2410c;border-color:rgba(217,119,6,0.45);box-shadow:0 2px 10px rgba(245,158,11,0.12);}
.project-detail-sheet .project-detail-status-em.status-st-plan {background:rgba(100,116,139,0.08);color:#334155;border-color:rgba(100,116,139,0.38);box-shadow:0 2px 8px rgba(71,85,105,0.08);}
.project-detail-sheet .project-detail-status-em.status-st-urgent {background:rgba(239,68,68,0.1);color:#b91c1c;border-color:rgba(239,68,68,0.38);box-shadow:0 2px 10px rgba(239,68,68,0.12);}
.project-detail-sheet .project-detail-status-em.status-st-stable {background:rgba(20,184,166,0.11);color:#0f766e;border-color:rgba(13,148,136,0.4);box-shadow:0 2px 10px rgba(20,184,166,0.12);}
.project-detail-sheet .project-detail-status-em.status-st-deal {background:rgba(139,92,246,0.1);color:#6d28d9;border-color:rgba(124,58,237,0.38);box-shadow:0 2px 10px rgba(139,92,246,0.12);}
.project-detail-sheet .project-detail-status-em.status-st-default {background:rgba(30,64,175,0.06);color:var(--primary-dark);border-color:rgba(30,64,175,0.28);box-shadow:0 2px 8px rgba(30,64,175,0.08);}
.project-detail-fields {margin:0;padding:0;}
.project-detail-field {display:grid;grid-template-columns:minmax(100px,108px) 1fr;gap:10px 20px;padding:14px 0;border-bottom:1px solid rgba(30,64,175,0.08);margin:0;}
.project-detail-field:first-of-type {border-top:1px solid rgba(30,64,175,0.08);}
.project-detail-field dt {margin:0;font-weight:600;font-size:0.9rem;color:var(--text-muted);}
.project-detail-field dd {margin:0;font-size:0.98rem;line-height:1.65;color:var(--text);}
.project-detail-tags {display:flex;flex-wrap:wrap;gap:8px;}
.project-detail-tag {display:inline-block;padding:5px 12px;border-radius:8px;font-size:0.84rem;font-weight:500;background:rgba(30,64,175,0.07);color:var(--primary-dark);border:1px solid rgba(30,64,175,0.18);}
.project-detail-intro {font-size:1.02rem;line-height:1.85;}
.project-detail-intro p {margin:0 0 1em;}
.project-detail-intro p:last-child {margin-bottom:0;}
/* 项目简介：最后一项独立区块，标题一行 + 正文在下方 */.project-detail-intro-panel {/* margin-top:26px;*/  padding:20px 0px;border:1px solid rgba(30,64,175,0.14);border-top:none;/* border-radius:12px;background:rgba(30,64,175,0.035);box-sizing:border-box;*/}
.project-detail-intro-panel-title {margin:0 0 0;padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid rgba(30,64,175,0.14);font-size:1.06rem;font-weight:700;color:var(--primary);line-height:1.35;text-align:center;}
.project-detail-intro-panel-body {margin:0;padding:0 20px;}
@media (max-width:560px) {.project-detail-intro-panel {padding:16px 16px 18px;margin-top:20px;}
.project-detail-intro-panel-title {font-size:1rem;margin-bottom:14px;padding-bottom:10px;}
}
.project-detail-attach-list {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.project-detail-attach-list li {margin:0;padding:0;border:none;}
.project-detail-attach-row {display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;border:1px solid rgba(30,64,175,0.16);background:rgba(30,64,175,0.04);text-decoration:none;color:inherit;transition:border-color 0.2s ease,background 0.2s ease,box-shadow 0.2s ease;}
.project-detail-attach-row:hover {border-color:rgba(30,64,175,0.42);background:rgba(30,64,175,0.08);box-shadow:0 4px 14px rgba(30,64,175,0.1);}
.project-detail-attach-ico {flex-shrink:0;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(255,255,255,0.95);border:1px solid rgba(30,64,175,0.15);font-size:1.45rem;line-height:1;color:var(--primary);}
.project-detail-attach-body {display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:0;line-height:1.45;}
.project-detail-attach-name {font-weight:700;font-size:1rem;line-height:1.4;color:var(--primary);text-decoration:underline;text-underline-offset:3px;}
.project-detail-attach-meta {font-size:0.84rem;line-height:1.45;color:var(--text-muted);}
.project-detail-empty {margin:0;font-size:0.92rem;color:var(--text-muted);}
.project-detail-actions {margin-top:28px;padding-top:22px;border-top:1px solid rgba(30,64,175,0.08);display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 16px;}
.project-detail-actions .project-detail-btn {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 22px;border-radius:8px;font-size:0.95rem;font-weight:600;line-height:1.4;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform 0.25s ease,box-shadow 0.25s ease,background 0.25s ease,color 0.25s ease,border-color 0.25s ease;}
.project-detail-actions .project-detail-btn--back {background:#fff;color:var(--primary);border-color:rgba(30,64,175,0.22);box-shadow:0 1px 2px rgba(15,23,42,0.04);}
.project-detail-actions .project-detail-btn--back:hover {background:#f8fafc;border-color:rgba(30,64,175,0.45);transform:translateY(-2px);box-shadow:0 8px 20px rgba(30,64,175,0.12);}
.project-detail-actions .project-detail-btn--primary {background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;border:none;}
.project-detail-actions .project-detail-btn--primary:hover {transform:translateY(-2px);box-shadow:0 10px 28px rgba(30,64,175,0.35);}
.project-detail-actions--mobile {flex-direction:column;align-items:stretch;}
.project-detail-actions--mobile .project-detail-btn {width:100%;}
/* 项目对接 — PC 端联系弹窗 */.project-contact-modal {position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:24px 16px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 0.2s ease,visibility 0.2s ease;}
.project-contact-modal.is-open {opacity:1;visibility:visible;pointer-events:auto;}
.project-contact-modal__backdrop {position:absolute;inset:0;background:rgba(15,23,42,0.48);}
.project-contact-modal__dialog {position:relative;width:min(520px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 24px 48px rgba(15,23,42,0.18);border:1px solid rgba(30,64,175,0.08);}
.project-contact-modal__head {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid rgba(30,64,175,0.08);}
.project-contact-modal__head h3 {margin:0;font-size:1.05rem;font-weight:700;color:var(--text-dark,#0f172a);display:flex;align-items:center;gap:8px;}
.project-contact-modal__head h3 .fa {color:var(--primary,#1e40af);}
.project-contact-modal__close {flex-shrink:0;width:34px;height:34px;border:none;border-radius:8px;background:#f1f5f9;color:#64748b;font-size:22px;line-height:1;cursor:pointer;transition:background 0.2s ease,color 0.2s ease;}
.project-contact-modal__close:hover {background:#e2e8f0;color:#0f172a;}
.project-contact-modal__body {padding:18px 20px 8px;}
.project-contact-modal__tip {margin:0 0 16px;padding:12px 14px;border-radius:10px;background:#eff6ff;border:1px solid rgba(37,99,235,0.12);color:#334155;font-size:0.92rem;line-height:1.65;}
.project-contact-modal__tip .fa {margin-right:6px;color:#2563eb;}
.project-contact-modal__info {margin:0;}
.project-contact-modal__row {display:grid;grid-template-columns:108px 1fr;gap:8px 14px;padding:12px 0;border-bottom:1px solid rgba(30,64,175,0.06);}
.project-contact-modal__row:last-child {border-bottom:none;}
.project-contact-modal__row dt {margin:0;font-size:0.88rem;font-weight:600;color:#64748b;}
.project-contact-modal__row dt .fa {width:16px;margin-right:4px;color:#94a3b8;}
.project-contact-modal__row dd {margin:0;font-size:0.95rem;font-weight:600;color:#0f172a;word-break:break-word;}
.project-contact-modal__row dd a {color:var(--primary,#1e40af);text-decoration:none;}
.project-contact-modal__row dd a:hover {text-decoration:underline;}
.project-contact-modal__foot {display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:14px 20px 18px;border-top:1px solid rgba(30,64,175,0.08);}
.project-contact-modal__foot--mobile {flex-wrap:nowrap;justify-content:stretch;}
.project-contact-modal__foot--mobile .project-contact-modal__action {flex:1;justify-content:center;min-width:0;}
.project-contact-modal__action {display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:8px;font-size:0.92rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:background 0.2s ease,color 0.2s ease,border-color 0.2s ease;}
.project-contact-modal__action--ghost {background:#fff;color:#475569;border:1px solid #cbd5e1;}
.project-contact-modal__action--ghost:hover {background:#f8fafc;color:#0f172a;}
body.project-contact-modal-open {overflow:hidden;}
.project-detail-not-found {text-align:center;padding:48px 20px;color:var(--text-muted);}
.project-detail-not-found a {color:var(--primary);font-weight:600;}
@media (max-width:560px) {.project-detail-field {grid-template-columns:1fr;gap:6px;}
}
/* ----- 通知详情：上一篇 / 下一篇 ----- */.news-detail-adjacent {display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid rgba(30,64,175,0.08);}
.news-adjacent-col {display:flex;flex-direction:column;gap:10px;min-width:0;}
.news-adjacent-col--next {text-align:right;align-items:flex-end;}
.news-adjacent-label {font-size:0.78rem;font-weight:700;color:var(--primary);letter-spacing:0.08em;}
.news-adjacent-link {color:var(--text);font-weight:600;font-size:0.98rem;line-height:1.45;text-decoration:none;transition:color 0.2s ease;}
.news-adjacent-link:hover {color:var(--primary);}
.news-adjacent-empty {color:var(--text-muted);font-size:0.95rem;line-height:1.45;}
@media (max-width:640px) {.news-detail-adjacent {grid-template-columns:1fr;}
.news-adjacent-col--next {text-align:left;align-items:flex-start;padding-top:18px;border-top:1px dashed rgba(30,64,175,0.15);}
}
/* ----- 服务申请入口（详情页等） ----- */.service-apply-section {background:#eef2f7;padding:48px 0 56px;}
.service-apply-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.service-apply-card {background:var(--white);border-radius:var(--radius);padding:28px 22px 26px;border:1px solid rgba(30,64,175,0.1);box-shadow:0 4px 20px rgba(0,0,0,0.04);display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform 0.35s ease,box-shadow 0.35s ease,border-color 0.3s ease;}
.service-apply-card:hover {transform:translateY(-6px);box-shadow:0 16px 36px rgba(30,64,175,0.12);border-color:rgba(30,64,175,0.22);}
.service-apply-icon {width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-light));color:var(--white);font-size:1.72rem;margin-bottom:18px;}
.service-apply-card h3 {font-size:1.12rem;color:var(--primary);margin:0 0 12px;font-weight:700;}
.service-apply-card p {font-size:0.92rem;color:var(--text-muted);line-height:1.65;margin:0 0 22px;flex:1;}
.service-apply-card .btn-primary {margin-top:auto;}
@media (max-width:960px) {.service-apply-grid {grid-template-columns:1fr;max-width:420px;margin:0 auto;}
}
.projects-teaser-note {margin:-8px 0 20px;font-size:0.92rem;color:var(--text-muted);text-align:center;}
.projects-teaser-note a {color:var(--primary);font-weight:600;text-decoration:none;}
.projects-teaser-note a:hover {text-decoration:underline;}
/* ----- 联系我们 ----- */.contact-section {background:#eef2f7;}
.contact-wrap {display:grid;grid-template-columns:1fr 1.08fr;gap:32px;margin:0 auto;align-items:stretch;}
@media (max-width:900px) {.contact-wrap {grid-template-columns:1fr;}
}
.contact-info-panel {background:var(--white);padding:28px 26px;border-radius:var(--radius);border:1px solid rgba(30,64,175,0.1);box-shadow:0 4px 24px rgba(0,0,0,0.04);display:flex;flex-direction:column;}
.contact-info-panel h3 {color:var(--primary);margin-bottom:22px;font-size:1.2rem;}
.contact-row {display:flex;gap:16px;align-items:flex-start;margin-bottom:22px;}
.contact-icon-circle {width:46px;height:46px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:1.05rem;}
.contact-icon-circle.c-loc {background:rgba(30,64,175,0.14);color:var(--primary);}
.contact-icon-circle.c-tel {background:rgba(34,197,94,0.18);color:#15803d;}
.contact-icon-circle.c-mail {background:rgba(249,115,22,0.18);color:#c2410c;}
.contact-icon-circle.c-time {background:rgba(139,92,246,0.18);color:#6d28d9;}
.contact-row-body .lbl {display:block;font-size:0.82rem;color:var(--text-muted);font-weight:500;}
.contact-row-body .val {display:block;font-size:0.95rem;color:var(--text);line-height:1.55;}
.contact-wechat {margin-top:auto;padding-top:22px;border-top:1px dashed rgba(30,64,175,0.22);}
.contact-wechat-inner {display:flex;gap:18px;align-items:center;}
.contact-wechat-qr {width:92px;height:92px;flex-shrink:0;border-radius:10px;border:1px solid rgba(30,64,175,0.15);background:linear-gradient(145deg,#f8fafc,#eff6ff);display:grid;place-items:center;text-align:center;font-size:0.68rem;color:var(--text-muted);line-height:1.35;padding:6px;}
.contact-wechat-qr img {width:100%;height:100%;object-fit:cover;border-radius:6px;}
.contact-wechat-text strong {display:block;color:var(--primary);font-size:0.95rem;margin-bottom:6px;}
.contact-wechat-text p {font-size:0.88rem;color:var(--text-muted);margin:0;}
.contact-notice {margin-top:18px;padding:14px 16px;background:rgba(30,64,175,0.06);border-radius:10px;border-left:4px solid var(--primary);font-size:0.86rem;color:var(--text-muted);line-height:1.55;}
.contact-services-title {margin-top:18px;font-size:0.88rem;font-weight:700;color:var(--primary);}
.contact-services-list {list-style:none;margin-top:10px;}
.contact-services-list li {position:relative;padding-left:18px;margin-bottom:10px;font-size:0.88rem;color:var(--text-muted);line-height:1.45;}
.contact-services-list li::before {content:"";position:absolute;left:0;top:0.55em;width:6px;height:6px;border-radius:50%;background:var(--primary-light);}
.contact-form-wrap {background:var(--white);padding:28px 26px;border-radius:var(--radius);border:1px solid rgba(30,64,175,0.1);box-shadow:0 4px 24px rgba(0,0,0,0.04);}
.form-group {margin-bottom:16px;}
.form-group label {display:block;margin-bottom:13px;font-size:0.9rem;color:var(--text);}
.form-group input,.form-group textarea {width:100%;padding:12px 14px;border:1px solid rgba(30,64,175,0.2);border-radius:8px;font-family:inherit;font-size:0.95rem;transition:border-color 0.25s ease,box-shadow 0.25s ease;box-sizing:border-box;}
.form-group input:focus,.form-group textarea:focus {outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(30,64,175,0.12);}
.form-group textarea {min-height:120px;resize:vertical;}
/* ----- CI 风格分页（basic-pagination） ----- */.basic-pagination {margin-top:36px;}
.basic-pagination.text-center {text-align:center;}
.basic-pagination .pagination {list-style:none;margin:0;padding:0;display:inline-flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;}
.basic-pagination .page-item {margin:0;}
.basic-pagination .page-item a,.basic-pagination .page-item .page-nolink {display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;box-sizing:border-box;border-radius:8px;border:1px solid rgba(30,64,175,0.22);background:var(--white);color:var(--primary);font-size:0.9rem;font-weight:600;text-decoration:none;transition:background 0.2s ease,color 0.2s ease,border-color 0.2s ease,transform 0.2s ease,box-shadow 0.2s ease;}
.basic-pagination .page-item a:hover {border-color:var(--primary);background:rgba(30,64,175,0.06);transform:translateY(-1px);}
.basic-pagination .page-item a.current {background:linear-gradient(135deg,var(--primary),var(--primary-light));color:var(--white);border-color:transparent;cursor:default;pointer-events:none;}
.basic-pagination .page-item a.current:hover {transform:none;}
.basic-pagination .page-item .page-nolink {opacity:0.45;cursor:default;pointer-events:none;}
.basic-pagination .page-item i {font-size:0.85rem;}
/* ========== 纯静态纵向分类区块（首页、项目列表等） ========== */.static-page-hint {color:var(--text-muted);font-size:0.94rem;margin-bottom:0.75rem;line-height:1.55;}
.static-category-stack {margin-top:2rem;}
.static-category-stack:first-of-type {margin-top:0.5rem;}
.static-category-title {font-size:clamp(1.05rem,2.4vw,1.22rem);font-weight:700;color:var(--primary);margin:0 0 1rem;padding-bottom:0.4rem;border-bottom:1px solid rgba(18,42,136,0.12);}
.file-list-static-note {margin:0;}
@media (max-width:768px) {.basic-pagination .page-item a,.basic-pagination .page-item .page-nolink {min-width:36px;height:36px;padding:0 10px;font-size:0.82rem;}
}
