@import url("../iconfont/iconfont.css");

:root {
    --navy-950: #071a3a;
    --navy-900: #0c2855;
    --navy-800: #163f78;
    --navy-700: #245da6;
    --blue-600: #3978c8;
    --blue-500: #5a94df;
    --blue-400: #7eb4ef;
    --blue-100: #e9f3ff;
    --blue-50: #f5f9ff;
    --cyan-500: #37aaa9;
    --cyan-100: #def6f3;
    --violet-500: #6e72d8;
    --orange-500: #e89043;
    --ink-900: #12233f;
    --ink-800: #243b60;
    --ink-700: #3e5676;
    --ink-600: #5d718c;
    --ink-500: #7b8da4;
    --line: #dce7f3;
    --line-strong: #c8d8e9;
    --surface: #fff;
    --surface-soft: #f7faff;
    --page: #eef5fc;
    --success: #1b9a72;
    --warning: #c8782e;
    --danger: #d95f65;
    --shadow-xs: 0 1px 2px rgba(16, 48, 90, .05);
    --shadow-sm: 0 8px 24px rgba(28, 63, 105, .08);
    --shadow-md: 0 18px 44px rgba(28, 63, 105, .12);
    --shadow-lg: 0 30px 80px rgba(7, 26, 58, .20);
    --radius-sm: 8px;
    --radius-md: 14px;
    --radius-lg: 22px;
    --radius-xl: 30px;
    --container: min(1240px, calc(100vw - 30px));
    --header-h: 72px;
    --ease: cubic-bezier(.22, .8, .24, 1);
}

/* 鍩硅娲诲姩 */
.message-page {
    background: #f3f8fe;
    color: #526273
}

.message-hero {
    padding: 42px 0 54px;
    color: #fff;
    background: linear-gradient(110deg, #071d43, #123e78 58%, #2465b4)
}

.message-crumb {
    display: flex;
    gap: 10px;
    color: rgba(255, 255, 255, .72);
    font-size: 14px
}

.message-crumb a {
    color: inherit
}

.message-crumb b {
    color: #fff
}

.message-hero > div > p {
    margin: 34px 0 13px;
    color: #64dfde;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .24em
}

.message-hero h1 {
    margin: 0;
    color: #fff;
    font-size: 42px
}

.message-main {
    padding: 34px 0 72px;
    background: #f3f8fe
}

.message-title {
    position: relative;
    margin: 0 0 34px;
    padding-left: 14px;
    color: #245da6;
    font-size: 24px
}

.message-title:before {
    content: "";
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    width: 4px;
    border-radius: 4px;
    background: #4598f5
}

.message-layout {
    display: grid;
    grid-template-columns:220px minmax(0, 1fr);
    gap: 24px
}

.message-categories {
    align-self: start;
    padding: 18px 0;
    background: rgba(255, 255, 255, .35)
}

.message-categories h3 {
    margin: 0;
    padding: 0 16px 14px;
    color: #245da6;
    font-size: 15px
}

.message-categories nav {
    display: flex;
    flex-direction: column
}

.message-categories a {
    position: relative;
    padding: 13px 16px;
    border-top: 1px solid #edf2f7;
    color: #66778a;
    font-size: 13px;
    line-height: 1.45
}

.message-categories a.is-active {
    color: #245da6;
    background: #eef6ff;
    font-weight: 600
}

.message-categories a.is-active:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 3px;
    background: #3978c8
}

.message-list {
    display: grid;
    gap: 12px
}

.message-item {
    display: grid;
    grid-template-columns:30px minmax(0, 1fr);
    gap: 10px;
    padding: 14px 16px;
    border: 1px solid #e0e8f1;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 2px 7px rgba(30, 75, 120, .03)
}

.message-item > span {
    display: grid;
    width: 27px;
    height: 27px;
    place-items: center;
    border-radius: 8px;
    background: #4b9cf6;
    color: #fff;
    font-size: 12px;
    font-weight: 700
}

.message-item h3 {
    margin: 2px 0 5px;
    color: #27394d;
    font-size: 15px;
    line-height: 1.45
}

.message-item p {
    margin: 3px 0;
    color: #69798a;
    font-size: 13px;
    line-height: 1.65
}

.message-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-top: 18px
}

.message-pagination a, .message-pagination > span {
    display: grid;
    min-width: 30px;
    height: 30px;
    place-items: center;
    border: 1px solid #dfe7f0;
    border-radius: 7px;
    background: #fff;
    color: #3978c8;
    font-size: 12px
}

.message-pagination > span {
    border-color: #286db7;
    background: #286db7;
    color: #fff
}

.message-pagination small {
    margin-left: 3px;
    color: #7d8995;
    font-size: 12px
}

.message-ask {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 58px;
    padding: 30px 34px;
    border: 1px solid #dceaf2;
    background: linear-gradient(110deg, #eefbf9, #f9fcff, #eefbf9)
}

.message-ask small {
    color: #4898FF;
    font-size: 11px;
    font-weight: 700
}

.message-ask h2 {
    margin: 7px 0 2px;
    color: #245da6;
    font-size: 24px
}

.message-ask p {
    margin: 0;
    color: rgba(0, 0, 0, 0.65);
    font-size: 14px
}

.message-ask > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    min-height: 40px;
    padding: 0 17px;
    border-radius: 8px;
    background: #2875bf;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    box-shadow: 0 5px 12px rgba(36, 93, 166, .2)
}

.message-ask > a i {
    margin-right: 4px;
}

.activity-review-page {
    background: #f3f8fe;
    color: #26384c
}

.activity-review-hero {
    padding: 42px 0 54px;
    color: #fff;
    background: linear-gradient(110deg, #071d43, #123e78 58%, #2465b4)
}

.activity-review-crumb {
    display: flex;
    gap: 10px;
    color: rgba(255, 255, 255, .72);
    font-size: 14px
}

.activity-review-crumb a {
    color: inherit;
    text-decoration: none
}

.activity-review-crumb b {
    color: #fff
}

.activity-review-hero p {
    margin: 34px 0 13px;
    color: #64dfde;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .24em
}

.activity-review-hero h1 {
    margin: 0;
    color: #fff;
    font-size: 42px
}

.activity-review-main {
    padding: 28px 0 72px;
    background: #f3f8fe
}

.activity-review-search {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 22px;
    color: #7b8da4;
    font-size: 13px
}

.activity-review-search svg {
    position: absolute;
    z-index: 1;
    left: 16px;
    width: 15px;
    height: 15px;
    fill: none;
    stroke: #8c98a6;
    stroke-width: 2
}

.activity-review-search input {
    flex: 1;
    width: 100%;
    height: 38px;
    padding: 0 16px 0 43px;
    border: 2px solid #dce5ef;
    border-radius: 20px;
    background: #fff;
    color: #273b52;
    outline: 0;
    box-shadow: 0 1px 2px rgba(30, 75, 120, .02)
}

.activity-review-search input::placeholder {
    color: #9aa4af
}

.activity-review-search input:focus {
    border-color: #72aef0;
    box-shadow: 0 0 0 3px rgba(75, 138, 218, .12)
}

.activity-review-search span {
    white-space: nowrap
}

.activity-review-search b {
    color: #245da6
}

.activity-review-panel {
    padding: 20px;
    border: 1px solid #e0e9f3;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(30, 75, 120, .04)
}

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

.activity-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #dbe5ef;
    border-radius: 12px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s
}

.activity-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(28, 63, 105, .12)
}

.activity-card > img {
    display: block;
    width: 100%;
    height: 160px;
    object-fit: cover
}

.activity-card > div {
    display: flex;
    min-height: 104px;
    flex: 1;
    flex-direction: column;
    padding: 13px 14px 10px
}

.activity-card h2 {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #283a4d;
    font-size: 15px;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.activity-card footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: auto;
    padding-top: 11px;
    border-top: 1px solid #edf1f5;
    color: #9aa5b2;
    font-size: 12px
}

.activity-card footer b {
    color: #3787d7;
    font-weight: 600;
    white-space: nowrap
}

.activity-review-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 26px
}

.activity-review-pagination a, .activity-review-pagination span {
    display: grid;
    min-width: 31px;
    height: 31px;
    place-items: center;
    border: 1px solid #e1e8f1;
    border-radius: 7px;
    background: #fff;
    color: #3978c8;
    font-size: 13px;
    text-decoration: none
}

.activity-review-pagination .is-active {
    border-color: #286db7;
    background: #286db7;
    color: #fff
}

.activity-review-pagination small {
    margin-left: 2px;
    color: #7e8995;
    font-size: 12px
}



.training-page {
    background: #f3f8fe;
    color: #24384f
}

.training-hero {
    padding: 42px 0 54px;
    color: #fff;
    background: linear-gradient(110deg, #071d43 0%, #123e78 58%, #2465b4 100%)
}

.training-crumb {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, .72);
    font-size: 14px
}

.training-crumb a {
    color: inherit;
    text-decoration: none
}

.training-crumb b {
    color: #fff;
    font-weight: 600
}

.training-kicker {
    margin: 34px 0 13px;
    color: #64dfde;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .24em
}

.training-hero h1 {
    margin: 0;
    color: #fff;
    font-size: 42px;
    line-height: 1.25;
    letter-spacing: 0
}

.training-main {
    padding: 70px 0 84px;
    background: #f3f8fe
}

.training-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px
}

.training-section-head h2 {
    position: relative;
    margin: 0;
    padding-left: 14px;
    color: #245da6;
    font-size: 24px;
    line-height: 1.3
}

.training-section-head h2:before {
    content: "";
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    width: 4px;
    border-radius: 4px;
    background: #4598f5
}

.training-section-head > a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #245da6;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none
}

.training-review-grid {
    display: grid;
    grid-template-columns:minmax(0, 1.48fr) minmax(370px, 1fr);
    gap: 24px;
    align-items: stretch
}

.training-feature {
    position: relative;
    display: block;
    overflow: hidden;
    min-height: 486px;
    border-radius: 18px;
    background: #dce8f5
}

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

.training-feature-caption {
    position: absolute;
    right: 24px;
    bottom: 18px;
    left: 24px;
    padding: 15px 24px;
    border-radius: 28px;
    background: linear-gradient(90deg, rgba(31, 102, 180, .96), rgba(38, 118, 192, .76), rgba(56, 126, 195, .30));
    color: #fff
}

.training-feature-caption h3 {
    margin: 0 0 3px;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4
}

.training-feature-caption time {
    display: block;
    font-size: 14px;
    line-height: 1.4
}

.training-news-list {
    display: grid;
    grid-template-rows:repeat(3, minmax(0, 1fr));
    gap: 14px
}

.training-news {
    display: grid;
    grid-template-columns:174px minmax(0, 1fr);
    gap: 15px;
    min-height: 0;
    padding: 12px;
    border-radius: 18px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease
}

.training-news:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(28, 63, 105, .10)
}

.training-news img {
    display: block;
    width: 174px;
    height: 100%;
    min-height: 0;
    border-radius: 10px;
    object-fit: cover
}

.training-news > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 3px 2px 3px 0
}

.training-news h3 {
    margin: 0;
    color: #172b43;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.75;
    letter-spacing: 0
}

.training-news time {
    margin-top: auto;
    color: #8c98a7;
    font-size: 12px
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth;
    background: var(--page);
    scroll-padding-top: calc(var(--header-h) + 24px)
}

body {
    margin: 0;
    background: var(--page);
    color: var(--ink-900);
    font-family: "HONOR Sans CN", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden
}

button, input, select {
    font: inherit
}

button {
    color: inherit
}

a {
    color: inherit;
    text-decoration: none
}

svg {
    display: block
}

::selection {
    background: #cce2ff;
    color: #123a70
}

:focus-visible {
    outline: 3px solid rgba(75, 138, 218, .28);
    outline-offset: 3px
}

.container {
    width: var(--container);
    margin-inline: auto;
    min-width: 0
}

.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important
}

.header {
    background: linear-gradient(180deg, rgba(7, 26, 58, .9) 0%, rgba(7, 26, 58, 1) 100%);
}

/* Hero 鈥� no stats */
.subpage {
    /*padding-top: var(--header-h)*/
}

.page-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(112deg, #071a3a 0%, #0c2855 57%, #245da6 100%);
    color: #fff;
    padding: 42px 0 38px
}

.page-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    left: 38%;
    bottom: -160px;
    width: 520px;
    height: 220px;
    background: radial-gradient(ellipse, rgba(71, 171, 213, .23), transparent 68%);
    pointer-events: none
}

.hero-grid-lines {
    position: absolute;
    inset: 0;
    opacity: .13;
    background-image: linear-gradient(rgba(255, 255, 255, .18) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .16) 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(90deg, transparent, #000 28%, #000 75%, transparent)
}

.crumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    color: rgba(255, 255, 255, .68);
    font-size: 12px;
    margin-bottom: 24px
}

.crumb a {
    color: rgba(255, 255, 255, .85)
}

.crumb a:hover {
    color: #fff;
    text-decoration: underline
}

.crumb .sep {
    opacity: .5
}

.crumb .cur {
    color: #fff;
    font-weight: 600
}

.hero-copy {
    min-width: 0;
    max-width: 760px
}

.hero-kicker {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #a9cfff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase
}

.hero-kicker::before {
    content: "";
    width: 28px;
    height: 2px;
    background: linear-gradient(90deg, #6fd9ff, #647ee8)
}

.page-hero h1 {
    margin: 0;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.15;
    letter-spacing: .06em
}

.page-kicker {
    margin: 0 0 9px;
    color: #86d6ef;
    font: 600 11px/1.2 Inter, system-ui, sans-serif;
    letter-spacing: .24em
}

.page-hero p.lead {
    margin: 13px 0 0;
    max-width: 720px;
    color: rgba(255, 255, 255, .84);
    font-size: 15px;
    line-height: 1.85;
    text-wrap: pretty
}

.hero-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px
}

.tag {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 0 10px;
    border-radius: 999px;
    background: var(--blue-50);
    color: var(--blue-600);
    font-size: 12px;
    border: 1px solid #d7e6fb
}

.hero-tags .tag {
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .23);
    color: #fff
}

.page-body {
    padding: 42px 0 72px
}

.section-label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 16px
}

.section-label h2, .section-label h3 {
    margin: 0;
    color: var(--navy-700);
    font-size: 21px;
    letter-spacing: .03em
}

.section-label .bar {
    width: 4px;
    height: 20px;
    border-radius: 3px;
    background: linear-gradient(180deg, #6fd9ff, #647ee8);
    flex: 0 0 auto
}

/* 鈹€鈹€鈹€鈹€ Lead Carousel 鈹€鈹€鈹€鈹€ */
.lead-carousel {
    position: relative;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: var(--shadow-md);
    min-height: 300px;
    background: linear-gradient(135deg, #173e75, #2e6bb2)
}

.lc-track {
    display: flex;
    height: 100%;
    transition: transform .45s var(--ease)
}

.lc-slide {
    flex: 0 0 100%;
    min-width: 0;
    min-height: 300px;
    padding: 30px 30px 24px;
    color: #fff;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    background-clip: border-box;
    display: flex;
    flex-direction: column
}

.lc-slide::before {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    box-shadow: 0 0 0 40px rgba(255, 255, 255, .03), 0 0 0 88px rgba(255, 255, 255, .015);
    z-index: -1
}

.lc-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(105deg, rgba(7, 22, 50, .9) 0%, rgba(7, 22, 50, .62) 42%, rgba(7, 22, 50, .2) 100%);
    z-index: -1
}

.lc-badges {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap
}

.lc-badge {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 0 9px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    font-size: 11px
}

.lc-badge.is-key {
    background: #fff;
    color: var(--navy-700);
    font-weight: 700
}

.lc-slide h2 {
    margin: 22px 0 0;
    font-size: clamp(22px, 3vw, 30px);
    line-height: 1.35;
    letter-spacing: .02em;
    text-wrap: balance;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.lc-slide p {
    margin: 12px 0 0;
    color: rgba(255, 255, 255, .78);
    font-size: 13.5px;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.lc-impact {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 18px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 12px;
    background: rgba(5, 29, 66, .16);
    font-size: 12px;
    line-height: 1.6
}

.lc-impact strong {
    white-space: nowrap;
    color: #cce8ff
}

.lc-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    margin-bottom: 12px;
    padding-top: 18px;
    color: rgba(255, 255, 255, .62);
    font-size: 11.5px
}

.lc-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    font-weight: 700;
    font-size: 12px;
    cursor: pointer
}

.lc-link:hover {
    text-decoration: underline
}

.lc-dots {
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
    z-index: 2
}

.lc-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .35);
    cursor: pointer;
    transition: .18s ease;
    border: none;
    min-width: 8px;
    min-height: 8px;
    padding: 0
}

.lc-dot.is-active {
    background: #fff;
    box-shadow: 0 0 8px rgba(255, 255, 255, .4)
}

.lc-actions {
    position: absolute;
    top: 30px;
    right: 20px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    opacity: 0;
    transition: opacity .18s ease
}

.lc-actions .favorite-button,
.lc-actions .share-button {
    background: rgba(255, 255, 255, .15);
    border-color: rgba(255, 255, 255, .28);
    color: #fff;
    backdrop-filter: blur(6px)
}

.lc-actions .favorite-button:hover,
.lc-actions .share-button:hover {
    background: rgba(255, 255, 255, .26);
    border-color: rgba(255, 255, 255, .48)
}

.lc-actions .favorite-button.is-saved {
    background: rgba(255, 255, 255, .22);
    border-color: rgba(255, 200, 120, .5);
    color: #ffd28c
}

.lc-slide:hover .lc-actions {
    opacity: 1
}

/* 鈹€鈹€鈹€鈹€ Priority Grid (2-col) 鈹€鈹€鈹€鈹€ */
.priority-grid {
    display: grid;
    grid-template-columns:minmax(0, 2fr) minmax(300px, 1fr);
    gap: 18px
}

.inline-actions {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity .18s ease
}

/* 鍑烘捣閫変笂娴烽潰鏉匡紙澶嶇敤鐭ヨ瘑椤电殑 lead 澶存潯 + 鍒楄〃琛岀粨鏋勶級 */
.section-label .floor-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
    color: var(--blue-600);
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none
}

.section-label .floor-more:hover {
    text-decoration: underline
}

.academy-shanghai {
    margin-top: 30px;
    padding: 26px 0 0;
    border-top: 1px solid #e3ebf4
}

.academy-shanghai .section-label {
    margin-bottom: 18px
}

.academy-shanghai-panel {
    display: grid;
    grid-template-columns:minmax(0, 2fr) minmax(0, 3fr);
    gap: 18px;
    align-items: stretch
}

.academy-shanghai-lead {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    min-height: 238px;
    box-shadow: var(--shadow-sm)
}

.as-track {
    display: flex;
    height: 100%;
    transition: transform .45s var(--ease)
}

.as-slide {
    flex: 0 0 100%;
    min-width: 0;
    min-height: 238px;
    padding: 22px;
    color: #fff;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    text-decoration: none
}

.as-slide::before {
    content: "";
    position: absolute;
    right: -38px;
    top: -52px;
    z-index: -1;
    width: 165px;
    height: 165px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    box-shadow: 0 0 0 28px rgba(255, 255, 255, .035), 0 0 0 56px rgba(255, 255, 255, .025)
}

.as-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background: linear-gradient(180deg, rgba(7, 22, 50, 0) 0%, rgba(7, 22, 50, .42) 50%, rgba(7, 22, 50, .94) 80%, #071632 100%)
}

.as-slide > * {
    position: relative;
    z-index: 1
}

.as-slide h4 {
    margin: 0;
    font-size: 19px;
    line-height: 1.5;
    text-wrap: balance
}

.as-slide time {
    margin-top: 12px;
    color: rgba(255, 255, 255, .78);
    font: 500 13px/1 Inter, sans-serif
}

.as-slide .inline-actions {
    position: absolute;
    top: 16px;
    right: 16px;
    display: none
}

.academy-shanghai-lead:hover .inline-actions, .academy-shanghai-lead:focus-within .inline-actions {
    display: inline-flex
}

.as-dots {
    position: absolute;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
    z-index: 3
}

.as-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .35);
    cursor: pointer;
    transition: .18s ease;
    border: none;
    min-width: 8px;
    min-height: 8px;
    padding: 0
}

.as-dot.is-active {
    background: #fff;
    box-shadow: 0 0 8px rgba(255, 255, 255, .4)
}

.academy-shanghai-list {
    display: grid;
    gap: 0;
    align-content: start;
    padding: 6px 16px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
    box-shadow: var(--shadow-sm)
}

.academy-shanghai-item {
    position: relative;
    display: grid;
    grid-template-columns:minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 48px;
    padding: 10px 8px;
    border-bottom: 1px solid #edf2f7;
    color: var(--ink-800);
    text-decoration: none;
    transition: background .16s ease, color .16s ease, transform .16s ease
}

.academy-shanghai-item:last-child {
    border-bottom: 0
}

.academy-shanghai-item span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 500
}

.academy-shanghai-item time {
    color: var(--ink-500);
    font: 400 13px/1 Inter, sans-serif;
    white-space: nowrap
}

.academy-shanghai-item:hover {
    border-radius: 8px;
    background: var(--blue-50);
    color: var(--navy-700);
    transform: translateX(2px)
}

/* 鈹€鈹€鈹€鈹€ Unified Section Head 鈹€鈹€鈹€鈹€ */
.risk-brief {
    border: 1px solid #f1cfd3;
    border-radius: 22px;
    background: #fff;
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    max-height: 480px
}

/* Shared layout + decorative ring pattern */
.risk-brief-head,
.col-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 22px 14px;
    flex: 0 0 auto;
    position: relative;
    overflow: hidden
}
.risk-brief-head .risk-brief-icon,
.col-head .col-icon
{
    margin-right: 10px;
}
.risk-brief-head::after,
    /* Risk 鈥� left white 鈫� right pink */
.risk-brief-head {
    background: linear-gradient(to bottom right, #fff, #fce8ea);
    border-bottom: 1px solid rgba(0, 0, 0, .06)
}

.risk-brief-head h3 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: #b04752;
    font-size: 17px;
    flex: 1 1 auto;
    width: 100%
}

.risk-brief-icon {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 9px;
    font-size: 16px;
    color: #fff;
    flex: 0 0 auto;
    background: linear-gradient(135deg, #d95f65, #b94451)
}

.risk-brief-icon iconify-icon {
    display: block;
    font-size: 17px;
    line-height: 1;
    color: #fff
}

.risk-brief-head .risk-more {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #c94a58;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none;
    position: absolute;
    right: 22px;
    top: 50%;
    transform: translateY(-50%)
}

.risk-brief-head .risk-more:hover {
    text-decoration: underline
}

.risk-pulse {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--danger);
    box-shadow: 0 0 0 6px rgba(217, 95, 101, .12)
}

.risk-brief-list {
    overflow-y: auto;
    flex: 1;
    margin: 0;
    padding: 4px 16px 12px;
    list-style: none
}

.risk-brief-item {
    position: relative;
    display: block;
    padding: 12px 100px 12px 14px;
    border-bottom: 1px solid #f2e6e8;
    min-height: 68px;
    transition: background .16s ease
}

.risk-brief-item:last-child {
    border-bottom: 0
}

.risk-brief-item:hover {
    background: #fafcff
}

.risk-brief-top {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 5px
}

.risk-brief-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 650;
    line-height: 1;
    white-space: nowrap;
    flex: 0 0 auto
}

.risk-brief-tag.is-risk {
    background: #fdeef0;
    color: #c94a58
}

.risk-brief-tag.is-consular {
    background: #edf5fc;
    color: #356b9f
}

.risk-brief-tag.is-event {
    background: #fdf1e3;
    color: #c87525
}

.risk-brief-title {
    min-width: 0;
    flex: 1;
    color: var(--ink-800);
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.45;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    text-decoration: none
}

.risk-brief-title:hover {
    color: var(--blue-600)
}

.risk-brief-summary {
    margin: 0;
    color: var(--ink-500);
    font-size: 11px;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden
}

/* Right meta: date only; actions remain a sibling and swap on hover */
.risk-brief-meta {
    position: absolute;
    right: 14px;
    top: 18px;
    display: flex;
    align-items: center;
    gap: 4px
}

.risk-brief-meta time {
    color: var(--ink-500);
    font: 400 12px/1 Inter, sans-serif;
    white-space: nowrap
}

.risk-brief-item > .risk-brief-actions {
    position: absolute;
    right: 14px;
    top: 12px
}

/* 鈹€鈹€鈹€鈹€ 2脳2 Section 鈹€鈹€鈹€鈹€ */
.info-section {
    margin-top: 44px
}

.grid-2x2 {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 22px;
    align-items: stretch
}

.grid-2x2 .col-block {
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--shadow-xs);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 0
}

/* Category backgrounds 鈥� top-left white 鈫� bottom-right tint */
.col-head--policy {
    background: linear-gradient(to bottom right, #fff, #eeecfa)
}

.col-head--project {
    background: linear-gradient(to bottom right, #fff, #fdf2ea)
}

.col-head--work {
    background: linear-gradient(to bottom right, #fff, #e8f6f5)
}

.col-head--news {
    background: linear-gradient(to bottom right, #fff, #e8effa)
}

/* 淇℃伅閫熻鏍囬鍙栨秷娓愬彉鍙婅楗拌儗鏅紝淇濇寔绾櫧鏍囬鏍� */
.grid-2x2 .col-head--policy,
.grid-2x2 .col-head--project,
.grid-2x2 .col-head--work,
.grid-2x2 .col-head--news,
.grid-2x2 .col-head--compliance,
.grid-2x2 .col-head--consular {
    background: #fff
}

.grid-2x2 .col-head::after {
    display: none
}

.col-head {
    border-bottom: 1px solid rgba(0, 0, 0, .06)
}

.col-icon {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 9px;
    font-size: 15px;
    font-weight: 800;
    color: #fff;
    flex: 0 0 auto
}

.col-icon.policy {
    background: linear-gradient(135deg, #6e72d8, #5358b8)
}

.col-icon.project {
    background: linear-gradient(135deg, #e89043, #cf6f25)
}

.col-icon.work {
    background: linear-gradient(135deg, #37aaa9, #258a90)
}

.col-icon.news {
    background: linear-gradient(135deg, #3978c8, #285fa8)
}

.col-icon.compliance {
    background: linear-gradient(135deg, #f09b43, #d97a26)
}

.col-icon.consular {
    background: linear-gradient(135deg, #e05a5a, #bf3f45)
}


.col-icon iconify-icon {
    display: block;
    width: 1em;
    height: 1em;
    font-size: 16px;
    line-height: 1;
    color: inherit
}

.col-head h3 {
    margin: 0;
    font-size: 17px;
    color: #2c3e60;
    letter-spacing: .02em;
    flex: 1
}

.col-head .col-more {
    color: #5b7aaa;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none
}

.col-head .col-more:hover {
    color: #3978c8;
    text-decoration: underline
}

.col-head .col-more:after {
    content: '\e64e';
    font-family: iconfont;
    font-size: 12px;
    margin-left: 4px;
}

.col-head.col-head--policy .col-more {
    color: #9C7CFF
}

/* Policy search + tabs */
.policy-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    flex-wrap: wrap
}

.policy-search {
    display: flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--surface-soft);
    flex: 1;
    min-width: 0
}

.policy-search input {
    border: 0;
    background: 0;
    outline: 0;
    width: 100%;
    font-size: 12px;
    color: var(--ink-800)
}

.policy-search iconify-icon {
    color: var(--ink-400);
    font-size: 14px;
    flex: 0 0 auto
}

.policy-tabs {
    display: flex;
    gap: 4px;
    background: var(--blue-50);
    border-radius: 7px;
    padding: 2px;
    flex-shrink: 0
}

.policy-tab {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--ink-500);
    cursor: pointer;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    transition: .15s ease
}

.policy-tab:hover {
    color: var(--navy-700)
}

.policy-tab.is-active {
    background: #fff;
    color: var(--navy-700);
    box-shadow: 0 1px 4px rgba(28, 63, 105, .08)
}

/* List items 鈥� unified layout: [thumb?] body | time鈫抐av */
.col-list {
    overflow: auto;
    padding: 8px 0;
    height: 466px;
}

.col-list .list-item {
    display: flex;
    gap: 12px;
    padding: 10px 20px;
    border-bottom: 1px solid #f4f6fc;
    transition: background .12s ease;
    align-items: center;
    position: relative
}

.col-list .list-item[hidden] {
    display: none !important
}

.policy-toolbar[hidden] {
    display: none !important
}

.col-list .list-item:last-child {
    border-bottom: 0
}

.col-list .list-item:hover {
    background: var(--surface-soft)
}

.col-list .list-item .li-title {
    text-decoration: none;
    color: inherit;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden
}

.col-list .list-item .li-thumb {
    width: 72px;
    height: 54px;
    border-radius: 8px;
    flex: 0 0 auto;
    overflow: hidden;
    background: var(--surface-soft)
}

.col-list .list-item .li-thumb img, .col-list .list-item .li-thumb .li-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.col-list .list-item .li-body {
    min-width: 0;
    flex: 1
}

.col-list .list-item .li-body .li-top {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
    min-width: 0
}

.col-list .list-item .li-body h4 {
    margin: 0;
    font-size: 13.5px;
    color: var(--ink-900);
    line-height: 1.45;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    min-width: 0
}

.col-list .list-item:hover .li-body h4 {
    color: var(--navy-700)
}

.col-list .list-item .li-body .li-summary {
    margin: 3px 0 0;
    color: var(--ink-500);
    font-size: 11.5px;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.col-list .list-item .li-body .li-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 4px;
    color: var(--ink-400);
    font-size: 11px
}

.col-list .list-item .li-body .li-meta .li-date {
    color: var(--ink-500)
}

.col-list .list-item .li-body .li-top .li-tag {
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    padding: 0 6px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 600;
    flex: 0 0 auto
}

.li-tag.t-policy {
    background: #f1eefe;
    color: #655ac5
}

.li-tag.t-project {
    background: #fdf1e3;
    color: #c87525
}

.li-tag.t-work {
    background: #e3f6f2;
    color: #1f8a7f
}

.li-tag.t-news {
    background: var(--blue-100);
    color: #2f6fb8
}

.col-list .list-item .li-body .li-meta .li-tag {
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    padding: 0 6px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 600;
    flex: 0 0 auto
}

.li-tag.t-region {
    background: #eef3fb;
    color: #3a6ea5
}

.col-list .list-item .li-body .li-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 4px;
    color: var(--ink-400);
    font-size: 11px
}

.col-list .list-item .li-body .li-meta > span {
    color: var(--ink-600);
    font-size: 11px
}

.col-list .list-item .li-body .li-meta .li-date {
    color: var(--ink-500)
}

.col-list .list-item .li-body .li-meta .li-status {
    display: inline-flex;
    align-items: center;
    min-height: 16px;
    padding: 0 5px;
    border-radius: 3px;
    background: #e6f7ed;
    color: #1b9a72;
    font-size: 9.5px;
    font-weight: 700
}

/* Right-meta: time/deadline (gray), hover鈫抐av */
.col-list .list-item .li-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    flex: 0 0 auto;
    min-width: 52px
}

.col-list .list-item .li-right time, .col-list .list-item .li-right .li-deadline {
    color: var(--ink-500);
    font: 400 12px/1 Inter, sans-serif;
    white-space: nowrap
}

.col-list .list-item .li-right .li-deadline {
    color: #c4711f;
    font: 700 10.5px/1 Inter, sans-serif;
    display: inline-flex;
    align-items: center;
    gap: 2px
}

.col-list .list-item .li-right .li-deadline iconify-icon {
    font-size: 10px
}

.col-list .list-item .li-right .favorite-button,
.col-list .list-item .li-right .share-button {
    position: static;
    width: 28px;
    height: 28px;
    min-height: 28px;
    padding: 0;
    font-size: 13px
}

.col-list .list-item:hover .li-right time, .col-list .list-item:hover .li-right .li-deadline {
}

.col-list .list-empty {
    padding: 28px 20px;
    text-align: center;
    color: var(--ink-400);
    font-size: 12px
}

/* Toast */
.toast {
    position: fixed;
    left: 50%;
    bottom: 28px;
    z-index: 100;
    max-width: calc(100vw - 32px);
    padding: 11px 16px;
    border-radius: 10px;
    background: rgba(7, 26, 58, .94);
    color: #fff;
    box-shadow: var(--shadow-lg);
    font-size: 12px;
    opacity: 0;
    transform: translate(-50%, 18px);
    pointer-events: none;
    transition: .24s var(--ease)
}

.toast.is-show {
    opacity: 1;
    transform: translate(-50%, 0)
}

/* 缁忚锤瑕佺偣绠€娲佸垪琛� */
.project-simple .col-head--project {
    background: linear-gradient(to bottom right, #fff, #fff8e8)
}

.project-simple .col-icon.project {
    background: #ffc928;
    color: #fff
}

.col-head--project .col-more {
    color: #FFB20D
}

.col-head--work .col-more {
    color: #37AAA9;
}

.project-simple .col-head--policy .col-more {
    color: #6e72d8;
}

.project-simple .col-head--news .col-more {
    color: #245DA6;
}

.project-simple .col-list .list-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    min-height: 36px
}

.project-simple .col-list .list-item .li-title {
    flex: 1;
    min-width: 0
}

.project-simple .col-list .list-item .li-title h4 {
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0
}

.project-simple .col-list .list-item time {
    font-size: 11px;
    color: var(--ink-500);
    white-space: nowrap
}

.project-simple .col-list .list-item:before {
    content: '';
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #f2b400;
    flex: none
}

/* ====== 璧勮璇︾粏椤典笓鐢ㄦ牱寮� ====== */
.article-detail-card {
    background: #fff;
    border-radius: var(--radius-md, 14px);
    box-shadow: var(--shadow-sm, 0 8px 24px rgba(28, 63, 105, .08));
    padding: 48px 56px 56px;
}
.article-detail-card .article-detail-body img{
    width: 100%!important;
    height: auto!important;
}
.article-detail-title {
    margin: 0 0 20px;
    font-size: clamp(22px, 2.8vw, 30px);
    font-weight: 700;
    color: var(--navy-700, #245da6);
    line-height: 1.45;
    letter-spacing: .03em;
    text-align: center;
}

.article-detail-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 32px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line, #dce7f3);
    color: var(--ink-500, #7b8da4);
    font-size: 13px;
}

.article-detail-meta-left {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
}

.article-detail-meta-left span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.article-detail-meta-left .icon {
    width: 15px;
    height: 15px;
    opacity: .6;
}

.article-detail-fontsize {
    display: flex;
    align-items: center;
    font-size: 16px;
}

.article-detail-fontsize .through {
    color: var(--ink-500, #5d718c);
}

.article-detail-fontsize .controls {
    display: flex;
    gap: 4px;
}
.fujian li a{
    color:#245DA6;
}
.article-detail-fontsize .controls a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    height: 26px;
    border-radius: 4px;
    color: var(--ink-600, #5d718c);
    font-size: 16px;
    text-decoration: none;
    cursor: pointer;
    transition: .15s ease;
}

.article-detail-fontsize .controls a:hover {
    border-color: var(--blue-500, #5a94df);
    color: var(--blue-600, #3978c8);
}

.article-detail-fontsize .controls a.selected {
    border: 1px solid rgba(72, 152, 255, 0.4);
    font-weight: bold;
    color: rgba(72, 152, 255, 1);
}

.article-detail-body {
    font-size: 17px;
    line-height: 2;
    color: var(--ink-900, #12233f);
}
.article-detail-body table{
    max-width: 100%!important;
}
.article-detail-body p {
    margin: 0 0 1.2em;
    text-indent: 2em;
}

.article-detail-body p:last-child {
    margin-bottom: 0;
}

/* ====== 涓�/涓嬬瘒瀵艰埅 ====== */
.article-detail-nav {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid var(--line, #dce7f3);
}

.article-detail-nav a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--ink-600, #5d718c);
    font-size: 14px;
    text-decoration: none;
    transition: color .15s ease;
}

.article-detail-nav a:hover {
    color: var(--blue-600, #3978c8);
}

.article-detail-nav a .nav-label {
    color: var(--ink-500, #7b8da4);
    flex-shrink: 0;
}

.article-detail-nav a .nav-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ====== 杩斿洖鍒楄〃 ====== */
.article-service-action {
    display: flex;
    justify-content: center;
    padding: 26px 20px;
    margin-top: 32px;
    border: 1px dashed #dce1e7;
    border-radius: 12px;
}
.article-service-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 17px 32px;
    border-radius: 8px;
    background: linear-gradient(100deg, #255d9f, #4894ff);
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
}
.article-service-button:hover { color: #fff; filter: brightness(1.08); }
.article-service-button:focus-visible { outline: 3px solid #246bb8; outline-offset: 4px; }
.article-service-button svg { flex-shrink: 0; }
.article-detail-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 36px;
    padding: 10px 24px;
    border-radius: 8px;
    border: 1px solid var(--line, #dce7f3);
    color: var(--ink-600, #5d718c);
    font-size: 14px;
    text-decoration: none;
    transition: .15s ease;
}

.article-detail-back:hover {
    border-color: var(--blue-500, #5a94df);
    color: var(--blue-600, #3978c8);
    background: var(--blue-50, #f5f9ff);
}

/* ====== 鍑烘捣灏忚鍫備笓鐢ㄦ牱寮� ====== */

/* 鈹€鈹€鈹€ 鎼滅储鏍忥紙鑳跺泭鏍峰紡锛� 鈹€鈹€鈹€ */
.classroom-search-bar {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    margin-bottom: 24px;
}

.classroom-search-bar .classroom-search-wrap {
    display: flex;
    align-items: center;
    flex: 1;
    width: 100%;
    height: 44px;
    padding: 0 18px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.classroom-search-bar .classroom-search-wrap:focus-within {
    border-color: var(--blue-500);
    box-shadow: 0 0 0 3px rgba(90, 148, 223, .12);
}

.classroom-search-bar .search-icon {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    color: var(--ink-500);
    flex-shrink: 0;
}

.classroom-search-bar input {
    flex: 1;
    min-width: 0;
    border: none;
    outline: none;
    background: transparent;
    font-size: 14px;
    color: var(--ink-900);
}

.classroom-search-bar input::placeholder {
    color: var(--ink-500);
}

.classroom-result-count {
    font-size: 13px;
    color: var(--ink-500);
    white-space: nowrap;
}

.classroom-result-count strong {
    color: var(--blue-600);
    font-weight: 700;
}

/* 鈹€鈹€鈹€ 閫夐」鍗″崱鐗囧鍣� 鈹€鈹€鈹€ */
.classroom-tabs-card {
    background: #fff;
    border-radius: var(--radius-md);
    padding: 20px 24px 28px;
    margin-bottom: 28px;
    box-shadow: var(--shadow-sm);
}

.classroom-tabs {
    display: flex;
    justify-content: center;
    gap: 8px;
}

.classroom-tab {
    display: inline-flex;
    align-items: center;
    height: 36px;
    padding: 0 22px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: var(--ink-700);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: .18s ease;
    user-select: none;
}

.classroom-tab:hover {
    background: var(--blue-50);
    color: var(--blue-600);
}

.classroom-tab.is-active {
    background: var(--navy-700);
    color: #fff;
    font-weight: 600;
}

/* 鈹€鈹€鈹€ 鍗＄墖缃戞牸 鈹€鈹€鈹€ */
.classroom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 24px;
}

.classroom-card {
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-md);
    overflow: hidden;
    background: #fff;
    box-shadow: var(--shadow-sm);
    transition: transform .25s ease, box-shadow .25s ease;
    text-decoration: none;
    color: inherit;
}

.classroom-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

.classroom-card:focus-visible {
    outline: 3px solid rgba(75, 138, 218, .28);
    outline-offset: 3px;
}

.classroom-card-img {
    position: relative;
    height: 260px;
    overflow: hidden;
    background: linear-gradient(135deg, #173e75, #2e6bb2);
}

.classroom-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.classroom-card-img .card-img-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 14px 18px;
    background: linear-gradient(180deg, transparent, rgba(7, 26, 58, .85));
}

.classroom-card-img .card-img-overlay h3 {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.classroom-card-gradient {
    position: relative;
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px 28px;
    background: linear-gradient(135deg, #1a5fb4 0%, #4a90d9 100%);
    text-align: center;
}

.classroom-card-gradient h3 {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.classroom-card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 16px 18px 18px;
}

.classroom-card-tag {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    background: var(--blue-50);
    color: var(--blue-600);
    font-size: 11px;
    font-weight: 600;
    margin-bottom: 10px;
}

.classroom-card-title {
    flex: 1;
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--ink-900);
    line-height: 1.65;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.classroom-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 42px;
    flex-wrap: wrap;
}

.classroom-pagination a,
.classroom-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: #fff;
    color: var(--ink-700);
    font-size: 13px;
    text-decoration: none;
    transition: .15s ease;
}

.classroom-pagination a:hover {
    border-color: var(--blue-500);
    color: var(--blue-600);
}

.classroom-pagination .is-active {
    border-color: var(--blue-600);
    background: var(--blue-600);
    color: #fff;
    font-weight: 700;
}

.classroom-pagination .page-ellipsis {
    border: none;
    background: transparent;
    color: var(--ink-500);
    min-width: auto;
    padding: 0 4px;
}

.classroom-pagination .page-total {
    margin-left: 12px;
    border: none;
    background: transparent;
    color: var(--ink-600);
    font-size: 13px;
    gap: 2px;
}

.classroom-pagination .page-total strong {
    color: var(--ink-900);
    font-weight: 700;
}

/* ====== 鐮斿绌洪棿涓撶敤鏍峰紡 ====== */

/* 鈹€鈹€鈹€ 鎼滅储鏍忥紙鑳跺泭鏍峰紡 + 鐑棬璇嶏級 鈹€鈹€鈹€ */
.study-search-bar {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    margin-bottom: 26px;
}

.study-search-wrap {
    display: flex;
    align-items: center;
    flex: 1;
    width: 100%;
    height: 44px;
    padding: 10px 18px;
    border: 2px solid var(--line);
    border-radius: 999px;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.study-search-wrap:focus-within {
    border-color: var(--blue-500);
    box-shadow: 0 0 0 3px rgba(90, 148, 223, .12);
}

.study-search-wrap .search-icon {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    color: var(--ink-500);
    flex-shrink: 0;
}

.study-search-wrap input {
    flex: 1;
    min-width: 0;
    border: none;
    outline: none;
    background: transparent;
    font-size: 14px;
    color: var(--ink-900);
}

.study-search-wrap input::placeholder {
    color: var(--ink-500);
}

.study-hot {
    font-size: 13px;
    color: var(--ink-500);
    white-space: nowrap;
}

.study-hot a {
    color: var(--danger);
    font-weight: 600;
}

.study-hot a:hover {
    text-decoration: underline;
}

/* 鈹€鈹€鈹€ 鍗＄墖缃戞牸 鈹€鈹€鈹€ */
.study-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.study-list-panel {
    padding: 22px;
    border-radius: 22px;
    background: rgba(255, 255, 255, .72);
    border: 1px solid rgba(220, 231, 243, .9);
    box-shadow: 0 10px 30px rgba(28, 63, 105, .06);
}

/* 鐮斿绌洪棿锛氱爺绌舵姤鍛婂垎绫讳笌鍦板尯绛涢€� */
.study-report-nav {
    margin: 0 0 18px
}

.study-report-categories {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 14px
}

.study-report-categories a {
    position: relative;
    display: block;
    height: 132px;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 14px;
    background: #dceafa;
    text-decoration: none;
    transition: border-color .2s, transform .2s, box-shadow .2s
}

.study-report-categories a:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(28, 63, 105, .14)
}

.study-report-categories a.is-active {
    border-color: #2f86e8;
    box-shadow: 0 0 0 1px rgba(47, 134, 232, .15)
}

.study-report-categories img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.study-report-categories a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 48%, rgba(5, 26, 57, .68) 100%);
    pointer-events: none
}

.study-report-categories span {
    position: absolute;
    z-index: 1;
    left: 14px;
    bottom: 13px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .02em
}

.study-report-filter {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 9px 16px;
}

.study-report-filter b {
    margin-right: 8px;
    color: #3c4d60;
    font-size: 12px
}

.study-report-filter a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 17px;
    border: 1px solid #dce6ef;
    border-radius: 16px;
    color: #47586a;
    font-weight: bold;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    transition: background .18s, color .18s, border-color .18s
}

.study-report-filter a:hover {
    border-color: #78a9d8;
    color: #245da6
}

.study-report-filter a.is-active {
    border-color: #3978c8;
    color: #fff;
    background: #3978c8
}
.study-report-cont{
    background: #fff;
    border: 1px solid #dce6ef;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(28, 63, 105, .03)
}
.study-report-subfilter {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    padding: 10px;
    border-top: 0;
    border-radius:10px;
    background: #fff;
    background:rgba(72, 152, 255, 0.1);
    margin:6px 10px 10px 56px;
    max-height: 118px;
    overflow: auto;
    scrollbar-width: thin;
    scrollbar-color: #d4dce5 transparent;
}
.study-report-subfilter::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
.study-report-subfilter::-webkit-scrollbar-track {
    background: transparent;
}
.study-report-subfilter::-webkit-scrollbar-thumb {
    background: #d4dce5;
    border-radius: 3px;
}
.study-report-subfilter::-webkit-scrollbar-thumb:hover {
    background: #bcc6d2;
}

.study-report-subfilter[hidden] { display: none }
.study-report-subfilter b { grid-column: 1; color: #3c4d60; font-size: 12px }
.study-report-subfilter a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    border: 1px solid #4b98f0;
    border-radius: 16px;
    color: #3978c8;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
    background: #fff;
    white-space: nowrap;
    width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
}
.study-report-subfilter a:hover,
.study-report-subfilter a.is-active { color: #fff; background: #4797ef }

.study-card {
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-md);
    overflow: hidden;
    background: #fff;
    border: 1px solid #E1E8EF;
    /*box-shadow: var(--shadow-sm);*/
    transition: transform .25s ease, box-shadow .25s ease;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}

.study-card:focus-visible {
    outline: 3px solid rgba(75, 138, 218, .35);
    outline-offset: 3px;
}

.study-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

/* 鈹€鈹€鈹€ 鍗＄墖灏侀潰 鈹€鈹€鈹€ */
.study-cover {
    position: relative;
    height: 208px;
    overflow: hidden;
}

.study-cover--image {
    background: #f5f0e6;
}

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

.study-cover--poster {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 18px 22px;
    background: linear-gradient(165deg, #fbf7ef 0%, #f1e9da 100%);
}

.study-cover--poster::before {
    content: "";
    width: 30px;
    height: 2px;
    margin-bottom: 10px;
    background: var(--blue-400);
}

.study-cover--poster h3 {
    margin: 0;
    font-size: 14.5px;
    font-weight: 700;
    color: var(--ink-900);
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.study-cover-speaker {
    margin: 8px 0 0;
    font-size: 11px;
    color: var(--ink-600);
}

.study-cover--blue {
    background: linear-gradient(165deg, #eaf3fd 0%, #d8e9fa 100%);
}

.study-cover--blue::before {
    background: var(--blue-500);
}

.study-cover-sub {
    margin: 0 0 8px;
    font-size: 11px;
    font-weight: 600;
    color: #c94a58;
    letter-spacing: .08em;
}

.study-cover--brand {
    background: #fff;
}

.study-cover--brand::before {
    display: none;
}

.study-cover-badge {
    display: block;
    width: 34px;
    height: 34px;
    margin-bottom: 12px;
    border-radius: 9px;
    background: linear-gradient(135deg, #e05a5a 0%, #c73a44 100%);
    box-shadow: 0 4px 10px rgba(199, 58, 68, .28);
}

.study-cover--photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.study-cover--photo .study-cover-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 14px 16px;
    background: linear-gradient(180deg, transparent, rgba(7, 26, 58, .88));
}

.study-cover--photo .study-cover-overlay h3 {
    margin: 0;
    font-size: 14.5px;
    font-weight: 600;
    color: #fff;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.study-cover--flag .study-flag {
    position: absolute;
    top: 0;
    right: 0;
    width: 74%;
    height: 64%;
    display: flex;
    align-items: center;
    padding: 16px 18px 12px 34px;
    background: linear-gradient(135deg, #e35d5d 0%, #c73842 100%);
    clip-path: polygon(14% 0, 100% 0, 100% 100%, 0 100%);
}

.study-flag h3 {
    margin: 0;
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* 鈹€鈹€鈹€ 鍗＄墖鍐呭 鈹€鈹€鈹€ */
.study-card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 15px 18px 16px;
}

.study-card-title {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    color: var(--ink-900);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.study-card-desc {
    margin: 8px 0 0;
    font-size: 12.5px;
    color: var(--ink-500);
    line-height: 1.75;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.study-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--line);
}

.study-card-body .study-card-desc {
    flex: 1;
}

.study-action {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 34px;
    padding: 0 13px;
    border: 1px solid #cfe1f8;
    border-radius: 999px;
    background: #f5f9ff;
    font-size: 13px;
    font-weight: 600;
    color: var(--blue-600);
    text-decoration: none;
    white-space: nowrap;
    transition: all .2s ease;
}

.study-action:hover {
    color: #fff;
    background: var(--blue-600);
    border-color: var(--blue-600);
    text-decoration: none;
}

.study-action svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

/* 鈹€鈹€鈹€ 鍒嗛〉鍣� 鈹€鈹€鈹€ */
.study-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    margin-top: 42px;
    flex-wrap: wrap;
}

.study-pagination a,
.study-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 6px;
    border-radius: 8px;
    color: var(--ink-700);
    font-size: 13px;
    text-decoration: none;
    transition: .15s ease;
}

.study-pagination a:hover {
    background: var(--blue-50);
    color: var(--blue-600);
}

.study-pagination .is-active {
    background: var(--blue-600);
    color: #fff;
    font-weight: 700;
}

.study-pagination .page-total {
    margin-left: 10px;
    color: var(--ink-600);
    font-size: 13px;
    white-space: nowrap;
}

.study-pagination .page-total strong {
    color: var(--ink-900);
    font-weight: 700;
}

.ai-assistant-trigger {
    position: fixed;
    right: 18px;
    bottom: 22px;
    z-index: 1200;
    display: flex;
    align-items: flex-end;
    width: 158px;
    height: 112px;
    line-height: 0;
    text-decoration: none;
    filter: drop-shadow(0 10px 22px rgba(0, 13, 48, .35));
    transition: transform .2s ease, filter .2s ease)
}

.ai-assistant-trigger__image {
    display: block;
    width: 112px;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    pointer-events: none
}

.ai-assistant-trigger:hover {
    transform: translateY(-4px) scale(1.02);
    filter: drop-shadow(0 16px 30px rgba(0, 13, 48, .5))
}

#aiAgentPeekHost {
    right: 18px;
    bottom: 22px;
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

#aiAgentPeekHost:after {
    content: attr(data-tooltip);
    position: absolute;
    right: calc(100% - 8px);
    top: 50%;
    transform: translateY(-50%) translateX(6px);
    padding: 9px 14px;
    border-radius: 10px;
    background: #17365f;
    color: #eaf6ff;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease
}

#aiAgentPeekHost:hover:after, #aiAgentPeekHost:focus-visible:after {
    opacity: 1;
    visibility: visible;
    transform: translateY(-50%) translateX(0)
}

/* 棣栭〉鍚屾锛氬彸渚� AI 鏁板瓧浜猴紙PC锛� */
#aiAgentPeekHost {
    position: fixed;
    right: 18px;
    bottom: 22px;
    z-index: 1200;
    display: flex;
    align-items: flex-end;
    width: 158px;
    height: 112px;
    line-height: 0;
    text-decoration: none;
    filter: drop-shadow(0 10px 22px rgba(0, 13, 48, .35));
    transition: transform .2s ease, filter .2s ease
}

#aiAgentPeekHost .ai-assistant-trigger__image {
    display: block;
    width: 112px;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    pointer-events: none
}

#aiAgentPeekHost:hover {
    transform: translateY(-4px) scale(1.02);
    filter: drop-shadow(0 16px 30px rgba(0, 13, 48, .5))
}

#aiAgentPeekHost:after {
    content: attr(data-tooltip);
    position: absolute;
    right: calc(100% - 8px);
    top: 50%;
    transform: translateY(-50%) translateX(6px);
    padding: 9px 14px;
    border-radius: 10px;
    background: #17365f;
    color: #eaf6ff;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease
}

#aiAgentPeekHost:hover:after, #aiAgentPeekHost:focus-visible:after {
    opacity: 1;
    visibility: visible;
    transform: translateY(-50%) translateX(0)
}

#aiAgentPeekHost {
    right: -68px;
    bottom: clamp(288px, 36vh, 396px);
    width: clamp(160px, 14vw, 210px);
    height: auto;
    aspect-ratio: 1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateZ(0);
    transition: opacity .24s ease, transform .3s cubic-bezier(.4, 0, .2, 1);
    filter: none
}

#aiAgentPeekHost.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

#aiAgentPeekHost .ai-assistant-trigger__image {
    width: 100%;
    height: 100%;
    transform: scale(.54);
    filter: none;
    transition: transform .22s ease
}

#aiAgentPeekHost:hover .ai-assistant-trigger__image {
    filter: none;
    transform: scale(.62) rotate(-1deg)
}

#aiAgentPeekHost:after {
    right: 132px
}

/*涓€甯︿竴璺�                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               */


/* ===== 椤甸潰涓撳睘锛氫竴甯︿竴璺� ===== */
/* 鈹€鈹€鈹€鈹€ Lead Carousel (belt-and-road page) 鈹€鈹€鈹€鈹€ */
.belt-zone-grid {
    display: grid;
    grid-template-columns:minmax(0, 1.55fr) minmax(340px, .72fr);
    gap: 22px
}

.lead-carousel {
    position: relative;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: var(--shadow-md);
    min-height: 300px;
    background: linear-gradient(135deg, #173e75, #2e6bb2);
    height: 100%
}

.lc-track {
    display: flex;
    height: 100%;
    transition: transform .45s var(--ease)
}

.lc-slide {
    flex: 0 0 100%;
    min-width: 0;
    min-height: 300px;
    padding: 30px 30px 24px;
    color: #fff;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column
}

.lc-slide::before {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    box-shadow: 0 0 0 40px rgba(255, 255, 255, .03), 0 0 0 88px rgba(255, 255, 255, .015);
    z-index: -1
}

.lc-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(5, 16, 40, .92) 0%, rgba(5, 16, 40, .58) 46%, rgba(5, 16, 40, .16) 100%);
    z-index: -1
}

.lc-slide h2 {
    margin: 22px 0 0;
    font-size: clamp(22px, 3vw, 30px);
    line-height: 1.35;
    letter-spacing: .02em;
    text-wrap: balance;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.lc-desc {
    display: -webkit-box;
    overflow: hidden;
    margin: 12px 0 0;
    max-width: 660px;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    line-height: 1.8;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.lc-foot time {
    color: rgba(255, 255, 255, .72)
}

.lc-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 18px;
    color: rgba(255, 255, 255, .62);
    font-size: 11.5px
}

.lc-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    font-weight: 700;
    font-size: 12px;
    text-decoration: none
}

.lc-link:hover {
    text-decoration: underline
}

.lc-dots {
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
    z-index: 2
}

.lc-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .35);
    cursor: pointer;
    transition: .18s ease;
    border: none;
    min-width: 8px;
    min-height: 8px;
    padding: 0
}

.lc-dot[aria-selected="true"] {
    background: #fff;
}

.belt-lc-slide {
    min-height: 390px
}

.belt-lc-slide .lc-badges {
    margin-bottom: auto
}

.belt-lc-slide h2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.belt-zone-grid aside {
    margin-top: 0
}

.belt-top-news {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 20px 22px 22px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--shadow-sm)
}

.belt-top-news__head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--line-soft)
}

.belt-top-news__icon {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: var(--blue-100);
    color: var(--blue-600);
    font-size: 15px
}

.belt-top-news__head h2 {
    margin: 0;
    color: var(--navy-700);
    font-size: 17px;
    letter-spacing: .02em
}

.belt-top-news__more {
    margin-left: auto;
    color: var(--ink-500);
    font-size: 12px;
    white-space: nowrap;
}

.belt-top-news__more:hover {
    color: var(--blue-600)
}

.belt-top-news__list {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none
}

.belt-top-news__list li {
    border-bottom: 1px solid var(--line-soft)
}

.belt-top-news__list li:last-child {
    border-bottom: 0
}

.belt-top-news__list a {
    display: grid;
    grid-template-columns:minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 14px 0;
    color: var(--ink-700);
    text-decoration: none
}

.belt-top-news__list a:hover {
    color: var(--blue-600)
}

.belt-top-news__list span {
    overflow: hidden;
    font-size: 13px;
    line-height: 1.5;
    text-overflow: ellipsis;
    white-space: nowrap
}

.belt-top-news__list time {
    color: var(--ink-500);
    font-size: 10px;
    white-space: nowrap
}

.belt-public-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 24px 0 16px
}

.belt-public-heading h2 {
    margin: 0;
    color: var(--navy-700);
    font-size: 23px;
    letter-spacing: .03em
}

.belt-public-heading h2::before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 21px;
    margin: 0 10px -3px 0;
    border-radius: 3px;
    background: linear-gradient(180deg, #6fd9ff, #647ee8)
}

.belt-public-heading a, .belt-category__head > a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--blue-600);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none
}

.belt-public-heading a:hover, .belt-category__head > a:hover {
    text-decoration: underline;
    text-underline-offset: 4px
}

.belt-activity {
    margin-bottom: 38px
}

.belt-activity__viewport {
    overflow: hidden
}

.belt-activity__track {
    display: flex;
    gap: 16px;
    transition: transform .35s cubic-bezier(.22, .8, .24, 1);
    will-change: transform
}

.belt-activity__controls {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 12px
}

.belt-activity__button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    color: var(--blue-600);
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, transform .18s ease
}

.belt-activity__button:hover:not(:disabled) {
    border-color: #98badf;
    background: var(--blue-50);
    transform: translateY(-1px)
}

.belt-activity__button:disabled {
    cursor: not-allowed;
    opacity: .38
}

.belt-activity__button:focus-visible {
    outline: 2px solid var(--blue-500);
    outline-offset: 3px
}

.belt-activity-card {
    display: block;
    flex: 0 0 calc((100% - 48px) / 4);
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: var(--shadow-xs);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease
}

.belt-activity-card:hover {
    border-color: #98badf;
    box-shadow: var(--shadow-sm);
    transform: translateY(-3px)
}

.belt-activity-card__media {
    aspect-ratio: 1.6;
    overflow: hidden;
    background: var(--blue-50)
}

.belt-activity-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .24s ease
}

.belt-activity-card:hover .belt-activity-card__media img {
    transform: scale(1.045)
}

.belt-activity-card h3 {
    margin: 0;
    padding: 14px 15px 16px;
    font-size: 14px;
    line-height: 1.55
}

.belt-category-grid {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 26px 20px
}

.belt-category {
    min-width: 0;
    padding: 16px;
    background: #fff;
    border-radius: 14px;
    border: 1px solid var(--line);
    box-shadow: var(--shadow-xs)
}

.belt-category--shanghai {
    --belt-accent: #2c9694;
    --belt-soft: #e5f7f3
}

.belt-category--commerce {
    --belt-accent: #e28a39;
    --belt-soft: #fff1e2
}

.belt-category--humanities {
    --belt-accent: #766dcd;
    --belt-soft: #eeedff
}

.belt-category--research {
    --belt-accent: #5c83c9;
    --belt-soft: #e9f0ff
}

.belt-category__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px
}

.belt-category__title {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0
}

.belt-category__icon {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: var(--110, #245DA61A);
    color: #4898FF;
    font-size: 15px
}

.belt-category__title h2 {
    margin: 0;
    color: var(--navy-700);
    font-size: 20px;
    letter-spacing: .03em
}

.belt-category__lead {
    display: grid;
    grid-template-columns:minmax(150px, .86fr) minmax(0, 2.14fr);
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: var(--shadow-xs);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease
}

.belt-category__lead:hover {
    border-color: #98badf;
    box-shadow: var(--shadow-sm);
    transform: translateY(-2px)
}

.belt-category__lead-media {
    min-height: 154px;
    overflow: hidden;
    background: linear-gradient(135deg, var(--belt-soft), #fff)
}

.belt-category__lead-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .24s ease
}

.belt-category__lead:hover .belt-category__lead-media img {
    transform: scale(1.045)
}

.belt-category__lead-body {
    min-width: 0;
    padding: 15px 16px
}

.belt-category__lead-body h3 {
    margin: 0;
    color: var(--navy-700);
    font-size: 15px;
    line-height: 1.55
}

.belt-category__lead-body p {
    display: -webkit-box;
    overflow: hidden;
    margin: 9px 0 0;
    color: var(--ink-600);
    font-size: 12px;
    line-height: 1.65;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4
}

.belt-category__lead-body time {
    display: block;
    margin-top: 10px;
    color: var(--ink-500);
    font-size: 10px;
    text-align: right;
}

.belt-category__list {
    display: grid;
    gap: 0;
    margin: 12px 0 0;
    padding: 0;
    list-style: none
}

.belt-category__list li {
    border-bottom: 1px solid var(--line-soft)
}

.belt-category__list li:last-child {
    border-bottom: 0
}

.belt-category__list a {
    display: grid;
    grid-template-columns:minmax(0, 1fr) auto 12px;
    align-items: center;
    gap: 8px;
    padding: 11px 0;
    color: var(--ink-700);
    text-decoration: none
}

.belt-category__list a:hover {
    color: var(--belt-accent)
}

.belt-category__list span {
    font-size: 12.5px;
    line-height: 1.45
}

.belt-category__list time {
    color: var(--ink-500);
    font-size: 10px;
    white-space: nowrap
}

.belt-category__list iconify-icon {
    color: var(--belt-accent);
    font-size: 10px
}


/* ===== 涓€甯︿竴璺ぇ浣胯皥 ===== */
.belt-ambassador {
    margin-bottom: 38px
}

.belt-ambassador__shell {
    display: grid;
    grid-template-columns:minmax(0, .78fr) minmax(0, 4.22fr);
    gap: 10px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: var(--shadow-md);
    background: #1c5bb5
}

.belt-ambassador__main {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 500px;
    min-width: 0
}

.belt-ambassador__main .swiper-wrapper {
    height: 100%
}

.belt-ambassador__main .swiper-slide {
    position: relative;
    overflow: hidden;
    min-width: 0;
    background-size: cover;
    background-position: center
}

.amb-main-body {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: 0 30px 30px 0;
    pointer-events: none
}

.amb-watch {
    pointer-events: auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 22px;
    border-radius: 999px;
    background: #1c5bb5;
    color: #fff;
    font-size: 18px;
    text-decoration: none;
    border: 5px solid rgba(255, 255, 255, .3)
}

.amb-watch:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(28, 91, 181, .45)
}

.belt-ambassador__thumbs {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
    order: -1;
    min-width: 0;
    width: 100%;
    background: linear-gradient(180deg, rgba(20, 44, 86, .6), rgba(10, 26, 54, .85))
}

.belt-ambassador__thumbs .swiper {
    width: 100%;
    height: 100%
}

.belt-ambassador__thumbs .swiper-wrapper {
    flex-direction: column;
    background: #245DA6;
    padding-right: 10px;
}

.belt-ambassador__thumbs .swiper-slide {
    height: auto;
    flex: 1
}

.belt-ambassador__thumbs .swiper-slide:last-child {
    margin-bottom: 0 !important;
}

.amb-thumb {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
    min-height: 74px;
    padding: 12px 14px;
    overflow: hidden;
    border: 0 !important;
    outline: 0;
    background-size: cover;
    background-position: center;
    color: #fff;
    text-align: left;
    cursor: pointer;
    transition: filter .2s ease, transform .2s ease
}

.amb-thumb > * {
    position: relative;
    z-index: 1
}

.amb-thumb-tag {
    color: rgba(255, 255, 255, .72);
    font-size: 10px;
    letter-spacing: .06em
}

.amb-thumb strong {
    display: block;
    margin-top: 2px;
    font-size: 16px;
    line-height: 1.3;
    background: linear-gradient(135deg, #ffe9a8, #f0c766);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent
}

.amb-thumb em {
    display: -webkit-box;
    overflow: hidden;
    margin-top: 4px;
    color: rgba(255, 255, 255, .78);
    font-size: 11px;
    line-height: 1.5;
    font-style: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.amb-thumb:hover {
    transform: translateY(-2px)
}

.amb-thumb.is-active, .belt-ambassador__thumbs .swiper-slide-thumb-active .amb-thumb {
    border: 0 !important;
    box-shadow: none;
    filter: brightness(1.08)
}

/* ===== 涓€甯︿竴璺� 路 璧勮鍒楄〃椤� ===== */
.belt-list {
    margin: 0 auto;
}

.belt-list .section-label {
    margin-bottom: 18px
}

.belt-list-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px
}

.belt-list-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 18px;
    border-radius: 14px;
    border: 1px solid #4898ff;
    background: #fff;
    color: #4898ff;
    font-size: 14px;
    cursor: pointer;
    transition: .18s ease
}

.belt-list-tab:hover {
    background: #eaf3ff
}

.belt-list-tab.is-active {
    border-color: #4898ff;
    background: #4898ff;
    color: #fff;
    font-weight: 600
}

.belt-list-filter {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px
}

.belt-list-filter__field {
    position: relative;
    display: inline-flex;
    align-items: center
}

.belt-list-select {
    appearance: none;
    -webkit-appearance: none;
    height: 38px;
    min-width: 170px;
    padding: 0 36px 0 36px;
    border: 1px solid var(--line);
    border-radius: var(--radius-sm);
    background: #fff;
    color: var(--ink-700);
    font-size: 13px;
    cursor: pointer;
    outline: none
}

.belt-list-select:focus {
    border-color: var(--blue-500);
    box-shadow: 0 0 0 3px rgba(90, 148, 223, .12)
}

.belt-list-select__cal {
    position: absolute;
    left: 12px;
    pointer-events: none;
    color: #4898ff;
    font-size: 14px
}

.belt-list-select__arrow {
    position: absolute;
    right: 12px;
    pointer-events: none;
    color: #4898ff;
    font-size: 12px
}

.belt-list-search {
    position: relative;
    display: inline-flex;
    align-items: center
}

.belt-list-search__input {
    width: 220px;
    height: 38px;
    padding: 0 40px 0 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius-sm);
    background: #fff;
    color: var(--ink-800);
    font-size: 13px;
    outline: none
}

.belt-list-search__input:focus {
    border-color: var(--blue-500);
    box-shadow: 0 0 0 3px rgba(90, 148, 223, .12)
}

.belt-list-search__input::placeholder {
    color: #b0b8c4
}

.belt-list-search__btn {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    border: 0;
    background: transparent;
    color: #4898ff;
    font-size: 14px;
    cursor: pointer;
    transition: color .16s ease
}

.belt-list-search__btn:hover {
    color: #3978c8
}

.belt-list-count {
    margin: 0 0 10px;
    color: var(--ink-600);
    font-size: 13px
}

.belt-list-items {
    display: flex;
    flex-direction: column;
    background: #fff;
    padding: 0 16px;
    border-radius: 10px;
}

.belt-list-item {
    display: grid;
    grid-template-columns:107px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 18px 4px;
    border-bottom: 1px solid var(--line);
    text-decoration: none;
    transition: background .16s ease
}

.belt-list-item:hover {
    background: var(--surface-soft)
}

.belt-list-item__media {
    position: relative;
    display: block;
    width: 107px;
    height: 80px;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #e9f3ff, #dce7f3);
    flex: 0 0 auto
}

.belt-list-item__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .24s ease
}

.belt-list-item:hover .belt-list-item__media img {
    transform: scale(1.05)
}

.belt-list-item__body {
    min-width: 0
}

.belt-list-item__body h3 {
    margin: 0 0 8px;
    color: var(--ink-900);
    font-size: 17px;
    line-height: 1.45;
    font-weight: 600;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    transition: color .16s ease
}

.belt-list-item:hover .belt-list-item__body h3 {
    color: var(--blue-600)
}

.belt-list-item__body p {
    margin: 0;
    color: var(--ink-600);
    font-size: 13px;
    line-height: 1.75;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.belt-list-item__date {
    flex: 0 0 auto;
    align-self: center;
    color: #3978c8;
    font-size: 13px;
    white-space: nowrap
}

.belt-pager {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 26px;
    flex-wrap: wrap
}

.belt-pager__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: #fff;
    color: var(--ink-700);
    font-size: 13px;
    cursor: pointer;
    transition: .15s ease
}

.belt-pager__btn:hover:not(.is-active) {
    border-color: var(--blue-500);
    color: var(--blue-600)
}

.belt-pager__btn.is-active {
    border-color: var(--blue-600);
    background: var(--blue-600);
    color: #fff;
    font-weight: 700
}

.belt-pager__btn:disabled {
    cursor: not-allowed;
    opacity: .45
}

.belt-pager__total {
    margin-left: 8px;
    color: var(--ink-500);
    font-size: 12px
}

/* ===== 鍒嗛〉锛坖Query pagination 鎻掍欢鏍峰紡瀵归綈椤甸潰椋庢牸锛� ===== */
.pagination {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center
}

.pagination .whj_jqueryPaginationCss-1 {
    width: 100%;
    height: auto;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 26px
}

.pagination .whj_jqueryPaginationCss-1 div {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: #fff;
    color: var(--ink-700);
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
    transition: .15s ease;
    box-sizing: border-box
}

.pagination .whj_jqueryPaginationCss-1 a {
    color: inherit;
    text-decoration: none;
    display: inline-flex
}

.pagination .whj_jqueryPaginationCss-1 a div {
    width: auto
}

.pagination .whj_jqueryPaginationCss-1 div.whj_hover:hover {
    border-color: var(--blue-500);
    color: var(--blue-600);
    background: #f4f9ff
}

.pagination .whj_jqueryPaginationCss-1 div.whj_checked {
    border-color: #4898ff;
    background: #4898ff;
    color: #fff;
    font-weight: 700
}

.pagination .whj_jqueryPaginationCss-1 div.whj_hoverDisable {
    cursor: not-allowed;
    opacity: .45
}

.pagination .whj_jqueryPaginationCss-1 div.whj_hoverDisable:hover {
    border-color: var(--line);
    color: var(--ink-700);
    background: #fff
}

.pagination .whj_jqueryPaginationCss-1 div.whj_skip,
.pagination .whj_jqueryPaginationCss-1 div.wbk {
    border: none;
    background: transparent;
    cursor: default;
    min-width: 0;
    height: auto;
    padding: 0 4px;
    color: var(--ink-500);
    font-size: 12px
}

.pagination .whj_jqueryPaginationCss-1 div.wbk {
    margin-right: 2px
}

.pagination .whj_jqueryPaginationCss-1 input {
    width: 44px;
    height: 36px;
    text-align: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    color: var(--ink-800);
    font-size: 13px;
    box-sizing: border-box;
    outline: none;
    transition: .15s ease
}

.pagination .whj_jqueryPaginationCss-1 input:focus {
    border-color: var(--blue-500);
    box-shadow: 0 0 0 3px rgba(90, 148, 223, .12)
}

.pagination .whj_jqueryPaginationCss-1 input::-webkit-outer-spin-button,
.pagination .whj_jqueryPaginationCss-1 input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.pagination .whj_jqueryPaginationCss-1 div[name="whj_confirm"] {
    border-color: #4898ff;
    background: #4898ff;
    color: #fff;
    font-weight: 600
}

.pagination .whj_jqueryPaginationCss-1 div[name="whj_confirm"]:hover {
    border-color: #3978c8;
    background: #3978c8;
    color: #fff
}

/* ===== 鍔炰簨鎸囧崡 ===== */
.bszn-odi {
    margin-bottom: 44px
}

.bszn-odi__desc {
    margin: -6px 0 18px;
    color: var(--ink-600);
    font-size: 13px
}

.bszn-odi-grid {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 20px
}

.bszn-odi-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 20px;
    border-radius: var(--radius-lg);
    background: #fff;
    box-shadow: var(--shadow-xs);
    text-decoration: none;
    transition: .2s ease;
    min-width: 0
}

.bszn-odi-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    border-color: #cfe0f5
}

.bszn-odi-card__icon {
    flex: 0 0 auto;
    width: 68px;
    height: 73px;
    display: grid;
    place-items: center
}

.bszn-odi-card__icon img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block
}

.bszn-odi-card__body {
    flex: 1;
    min-width: 0
}

.bszn-odi-card__title {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--ink-900);
    font-size: 17px;
    font-weight: 600
}

.bszn-odi-card__new {
    display: inline-flex;
    align-items: center;
    height: 20px;
    padding: 0 8px;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff8a4c, #ff5f6d);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em
}

.bszn-odi-card__ai {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 20px;
    min-width: 28px;
    padding: 0 8px;
    border-radius: 6px;
    background: linear-gradient(90deg, #fbbf24, #f59e0b);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em
}

.bszn-odi-card__desc {
    display: block;
    margin-top: 6px;
    color: var(--ink-600);
    font-size: 13px;
    line-height: 1.6;
}

.bszn-odi-card__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px
}

.bszn-odi-card__tags em {
    font-style: normal;
    padding: 3px 10px;
    border-radius: 999px;
    background: var(--blue-50);
    color: var(--blue-700);
    font-size: 14px
}

.bszn-odi-card__arrow {
    flex: 0 0 auto;
    color: #4898FF;
    font-size: 20px;
    transition: color .2s ease, transform .2s ease
}

.bszn-odi-card:hover .bszn-odi-card__arrow {
    color: var(--blue-600);
    transform: translateX(3px)
}

.bszn-matters {
    margin-bottom: 44px
}

.bszn-matter__icon.iconfont {
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased
}

.bszn-matters-grid {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 12px
}

.bszn-matter {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    min-height: 190px;
    padding: 20px 14px;
    border: 1px solid #edf1f6;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(25, 59, 103, .025);
    text-decoration: none;
    transition: .2s ease;
    min-width: 0
}

.bszn-matter:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    border-color: #cfe0f5
}

.bszn-matter__icon {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 11px;
    display: grid;
    place-items: center;
    background: var(--mc-bg, #e8f1fb);
    border: 0;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--mc, #3978c8) 8%, transparent);
    color: var(--mc, #3978c8);
    font-size: 21px
}

.bszn-matter__body {
    flex: 1;
    min-width: 0
}

.bszn-matter__title {
    display: block;
    color: #26364f;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 700
}

.bszn-matter__list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 9px
}

.bszn-matter__list i {
    font-style: normal;
    display: flex;
    align-items: flex-start;
    gap: 7px;
    color: #5c6779;
    font-size: 12px;
    line-height: 1.7;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal
}

.bszn-matter__list i::before {
    content: "";
    flex: 0 0 auto;
    width: 5px;
    margin-top: 7px;
    height: 5px;
    border-radius: 50%;
    background: var(--mc, #3978c8);
    transition: background .16s ease
}

.bszn-matter__more {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 10px;
    color: var(--mc, #3978c8);
    font-size: 12px;
    transition: color .16s ease
}

.bszn-matter__list i.is-more {
    color: var(--mc, #3978c8);
    font-size: 12px;
    margin-top: 2px
}

.bszn-matter__list i.is-more::before {
    display: none
}

.bszn-matter:hover .bszn-matter__list i::before {
    background: var(--mc, #3978c8)
}

.bszn-flow__figure {
    margin: 0;
}

.bszn-flow__figure img {
    display: block;
    width: 100%;
    height: auto
}

/* ===== 鍔炰簨鎸囧崡璇︽儏 ===== */
.bszn-detail-tabs-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 34px;
    min-width: 0
}

.bszn-detail-tabs {
    position: relative;
    min-width: 0;
    flex: 1;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    cursor: grab;
    border-bottom: 1px solid var(--line);
    scroll-behavior: smooth;
    overscroll-behavior-x: contain;
    touch-action: pan-x
}

.bszn-detail-tabs::-webkit-scrollbar {
    display: none
}

.bszn-detail-tabs.is-dragging {
    cursor: grabbing;
    scroll-behavior: auto;
    user-select: none
}

.bszn-detail-tabs__track {
    display: flex;
    align-items: stretch;
    gap: 10px;
    width: max-content;
    min-width: 100%;
    padding: 0 4px
}

.bszn-detail-tabs-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 28px;
    width: 28px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--blue-600);
    cursor: pointer;
    transition: background .15s ease, color .15s ease, opacity .15s ease
}

.bszn-detail-tabs-arrow:hover:not(:disabled) {
    background: var(--blue-50);
    color: var(--navy-700)
}

.bszn-detail-tabs-arrow:disabled {
    opacity: .35;
    cursor: default
}

.bszn-detail-tabs-arrow svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round
}

.bszn-detail-tab {
    position: relative;
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    min-height: 48px;
    padding: 0 18px;
    color: var(--ink-600);
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    border-radius: 8px;
    transition: color .15s ease, background .15s ease
}

.bszn-detail-tab:hover {
    color: var(--navy-700)
}

.bszn-detail-tab.is-active {
    padding: 0 18px;
    border-radius: 8px;
    color: #fff;
    background: var(--navy-700);
    font-weight: 700
}

.bszn-detail-tab.is-active:hover {
    color: #fff
}

.bszn-detail-tab.is-active::after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0px;
    width: calc(100% - 28px);
    height: 4px;
    transform: translateX(-50%);
    border-radius: 8px 8px 0 0;
    background: #64DFDE
}

.bszn-guide {
    margin-bottom: 44px
}

.bszn-guide:last-child {
    margin-bottom: 0
}

.bszn-guide-grid {
    display: grid;
    padding: 20px;
    grid-template-columns:minmax(0, 1fr) 400px;
    gap: 22px;
    align-items: stretch;
    border-radius: var(--radius-lg);
    background: #fff;
    box-shadow: var(--shadow-xs)
}

/* 閮ㄩ棬淇℃伅鍗� */
.bszn-dept-card {
    display: flex;
    flex-direction: column;;
    border-radius: var(--radius-lg);
    background: #fff;
    box-shadow: var(--shadow-xs);
    overflow: hidden;
    min-width: 0
}

.bszn-dept-card__head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 20px;
    background: linear-gradient(90deg, #245DA6 0%, #4898FF 100%);;
    color: #fff
}

.bszn-dept-card__head.is-reform {
    background: linear-gradient(112deg, #2e4a9f, #4a6cf7)
}

.bszn-dept-card__head svg {
    flex: 0 0 auto
}

.bszn-dept-card__title {
    font-size: 17px;
    font-weight: 700;
    letter-spacing: .03em
}

.bszn-dept-card__body {
    flex: 1;
    padding: 18px 20px 8px
}

.bszn-dept-card__sec {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 12px;
    color: var(--navy-700);
    font-size: 14.5px;
    font-weight: 700
}

.bszn-dept-card__sec svg {
    color: var(--blue-600);
    flex: 0 0 auto
}

.bszn-dept-card__more {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    font-weight: 500
}

.bszn-dept-card__more a {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: var(--blue-600);
    font-size: 12px;
    text-decoration: none
}

.bszn-dept-card__more a:hover {
    text-decoration: underline
}

.bszn-dept-card__list {
    list-style: none;
    margin: 0 0 20px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
    background: #fff
}

.bszn-dept-card__list li {
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 8px 14px;
    border-bottom: 1px solid #edf2f7;
    background: #fff;
    transition: background .15s ease
}

.bszn-dept-card__list li:last-child {
    border-bottom: 0
}

.bszn-dept-card__list li:hover {
    background: var(--blue-50)
}

.bszn-dept-card__list a {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--ink-700);
    font-size: 13px;
    line-height: 1.5;
    text-decoration: none;
    min-width: 0
}

.bszn-dept-card__list a::before {
    content: "";
    flex: 0 0 auto;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #c6d4e4
}

.bszn-dept-card__list li:hover a {
    color: var(--navy-700)
}

.bszn-dept-card__list a em {
    flex: 0 0 auto;
    margin-left: auto;
    font-style: normal;
    padding: 1px 8px;
    border-radius: 999px;
    background: var(--blue-50);
    color: var(--blue-600);
    font-size: 11px;
    white-space: nowrap
}

.bszn-dept-card__list.is-policy {
    margin-bottom: 6px
}

.bszn-dept-card__list.is-policy a::before {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 0;
    background: var(--blue-400)
}

.bszn-dept-card__foot {
    display: flex;
    justify-content: center;
    padding: 16px 20px;
    border-top: 1px solid var(--line);
    background: var(--surface-soft)
}

.bszn-dept-card__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 26px;
    border-radius: 999px;
    background: linear-gradient(90deg, #4a6cf7, #6b8ff7);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(74, 108, 247, .25);
    transition: .18s ease
}

.bszn-dept-card__btn.is-reform {
    background: linear-gradient(90deg, #2e4a9f, #4a6cf7);
    box-shadow: 0 4px 12px rgba(46, 74, 159, .28)
}

.bszn-dept-card__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(74, 108, 247, .32)
}

.bszn-dept-card__btn svg {
    flex: 0 0 auto
}

/* 涓ぎ CTA 鏉愭枡娓呭崟 */
.bszn-guide-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin: 0 0 44px;
    padding: 26px 34px;
    border-radius: var(--radius-lg);
    background: linear-gradient(90deg, #245DA6 0%, #4898FF 100%);;
    color: #fff;
    box-shadow: 0 8px 24px rgba(59, 110, 245, .28);
    width: 60%;
    margin: 0 auto;
}

.bszn-guide-cta__copy h3 {
    margin: 0;
    font-size: 22px;
    letter-spacing: .03em
}

.bszn-guide-cta__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px
}

.bszn-guide-cta__tags span {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: rgba(255, 255, 255, .09);
    color: rgba(255, 255, 255, .9);
    font-size: 11px;
    line-height: 1;
    white-space: nowrap
}

.bszn-guide-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex: 0 0 auto;
    min-height: 44px;
    padding: 0 30px;
    border-radius: 999px;
    background: #fff;
    color: var(--blue-600);
    font-size: 14.5px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(20, 60, 140, .2);
    transition: .18s ease
}

.bszn-guide-cta__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(20, 60, 140, .28)
}

/* 閮ㄩ棬鍜ㄨ鏂瑰紡寮规 */
body.is-modal-open {
    overflow: hidden
}

.bszn-modal {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px
}

.bszn-modal[hidden] {
    display: none
}

.bszn-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 32, 60, .55);
    opacity: 0;
    transition: opacity .22s ease
}

.bszn-modal.is-open .bszn-modal__backdrop {
    opacity: 1
}

.bszn-modal__dialog {
    position: relative;
    width: min(660px, 100%);
    max-height: calc(100vh - 48px);
    overflow: auto;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 16px 48px rgba(15, 32, 60, .3);
    transform: translateY(16px) scale(.98);
    opacity: 0;
    transition: transform .22s ease, opacity .22s ease
}

.bszn-modal.is-open .bszn-modal__dialog {
    transform: none;
    opacity: 1
}

.bszn-modal__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 15px 22px;
    border-radius: 12px 12px 0 0;
    background: linear-gradient(90deg, #2e4a9f, #4a6cf7);
    color: #fff
}

.bszn-modal__title {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: .03em
}

.bszn-modal__close {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .16);
    color: #fff;
    cursor: pointer;
    transition: background .15s ease, transform .2s ease
}

.bszn-modal__close svg {
    width: 14px;
    height: 14px
}

.bszn-modal__close:hover {
    background: rgba(255, 255, 255, .32);
    transform: rotate(90deg)
}

.bszn-modal__close:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px
}

.bszn-modal__body {
    padding: 22px 24px 26px
}

.bszn-modal__list {
    list-style: none;
    margin: 0;
    padding: 0;
    counter-reset: bsznConsult
}

.bszn-modal__item {
    position: relative;
    padding: 0 0 18px 42px;
}

.bszn-modal__item:last-child {
    padding-bottom: 2px;
    border-bottom: 0
}

.bszn-modal__item::before {
    counter-increment: bsznConsult;
    content: counter(bsznConsult);
    position: absolute;
    left: 0;
    top: 2px;
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--blue-50);
    color: var(--blue-600);
    font-size: 13px;
    font-weight: 700;
    line-height: 1
}

.bszn-modal__item h4 {
    margin: 0 0 6px;
    font-size: 14.5px;
    font-weight: 600;
    line-height: 1.5
}

.bszn-modal__item p {
    margin: 2px 0 0;
    color: var(--ink-700);
    font-size: 13px;
    line-height: 1.7
}

.bszn-modal__item .bszn-modal__tel {
    color: var(--ink-600)
}

.bszn-modal__item .bszn-modal__tel a {
    color: var(--blue-600);
    font-weight: 600;
    text-decoration: none
}

.bszn-modal__item .bszn-modal__tel a:hover {
    text-decoration: underline
}

/* 鍙傝€冩祦绋嬪浘鍙充晶閮ㄩ棬鍗＄墖锛堝晢鍔″銆佸彂鏀瑰鍏辩敤锛� */
.bszn-guide--business .bszn-guide-grid, .bszn-guide--reform .bszn-guide-grid {
    padding: 20px 20px 48px 44px;
    grid-template-columns:minmax(0, 1.78fr) minmax(320px, 1fr);
    gap: 32px;
    border: 1px solid #f1f5fa;
    border-radius: 20px;
    box-shadow: none
}

.bszn-guide--business .bszn-dept-card, .bszn-guide--reform .bszn-dept-card {
    border: 0;
    border-radius: 0;
    box-shadow: none
}

.bszn-guide--business .bszn-dept-card__head, .bszn-guide--reform .bszn-dept-card__head {
    min-height: 51px;
    padding: 0 19px;
    border-radius: 7px 7px 0 0;
    background: linear-gradient(90deg, #245da6 0%, #4898ff 100%)
}

.bszn-guide--business .bszn-dept-card__head svg, .bszn-guide--reform .bszn-dept-card__head svg, .bszn-guide--business .bszn-dept-card__btn svg, .bszn-guide--reform .bszn-dept-card__btn svg {
    display: none
}

.bszn-guide--business .bszn-dept-card__title, .bszn-guide--reform .bszn-dept-card__title {
    font-size: 18px
}

.bszn-guide--business .bszn-dept-card__body, .bszn-guide--reform .bszn-dept-card__body {
    padding: 24px 18px 0
}

.bszn-guide--business .bszn-dept-card__sec, .bszn-guide--reform .bszn-dept-card__sec {
    margin-bottom: 12px;
    font-size: 16px;
    line-height: 20px
}

.bszn-guide--business .bszn-dept-card__sec::before, .bszn-guide--reform .bszn-dept-card__sec::before {
    content: "";
    width: 4px;
    height: 18px;
    flex: 0 0 auto;
    border-radius: 3px;
    background: #4898ff
}

.bszn-guide--business .bszn-dept-card__list, .bszn-guide--reform .bszn-dept-card__list {
    margin-bottom: 34px;
    border: 0;
    border-radius: 0;
    overflow: visible
}

.bszn-guide--business .bszn-dept-card__list li, .bszn-guide--reform .bszn-dept-card__list li {
    position: relative;
    min-height: 29px;
    padding: 3px 20px 3px 0;
    border-bottom: 0
}

.bszn-guide--business .bszn-dept-card__list a, .bszn-guide--reform .bszn-dept-card__list a {
    overflow: hidden;
    color: #262626;
    font-size: 14px!important;
    line-height: 1.5;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
}

.bszn-guide--business .bszn-dept-card__list:not(.is-policy) a::before, .bszn-guide--reform .bszn-dept-card__list:not(.is-policy) a::before {
    display: none
}

.bszn-guide--business .bszn-dept-card__list:not(.is-policy) li::after, .bszn-guide--reform .bszn-dept-card__list:not(.is-policy) li::after {
    content: "\e64e";
    font-family: "iconfont";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-52%);
    color: #c9cfd6;
    font-size: 12px;
    font-weight: 300;
    line-height: 1
}

.bszn-guide--business .bszn-dept-card__list.is-policy, .bszn-guide--reform .bszn-dept-card__list.is-policy {
    margin-bottom: 0
}

.bszn-guide--business .bszn-dept-card__list.is-policy a::before, .bszn-guide--reform .bszn-dept-card__list.is-policy a::before {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--blue-600)
}

.bszn-guide--business .bszn-dept-card__foot, .bszn-guide--reform .bszn-dept-card__foot {
    gap: 18px;
    padding: 0;
    border-top: 0;
    background: #fff
}

.bszn-guide--business .bszn-dept-card__btn, .bszn-guide--reform .bszn-dept-card__btn {
    min-width: 0;
    min-height: 45px;
    padding: 0 12px;
    border: 1px solid #e4edf7;
    background: #f3f8ff;
    color: var(--navy-700);
    font-size: 16px;
    font-weight: 700;
    box-shadow: none
}

/* 涓や釜閮ㄩ棬浠呬繚鐣欐寜閽暟閲忓拰涓绘鑹插樊寮� */
.bszn-guide--business .bszn-dept-card__btn {
    flex: 1
}

.bszn-guide--business .bszn-dept-card__btn:not(.is-ghost) {
    background: #4898ff;
    border-color: #4898ff;
    color: #fff
}

.bszn-guide--reform .bszn-dept-card__btn {
    flex: 0 1 166px
}

/* 鐗硅壊鏈嶅姟鍖� */
.featured-services-page {
    background: #f1f7fd
}

.featured-hero {
    padding: 42px 0 56px;
    color: #fff;
    background: linear-gradient(110deg, #071d43, #2465b4)
}

.featured-crumb {
    display: flex;
    gap: 10px;
    color: rgba(255, 255, 255, .65);
    font-size: 13px
}

.featured-crumb a {
    color: inherit;
    text-decoration: none
}

.featured-crumb b {
    color: #fff
}

.featured-hero p {
    margin: 32px 0 12px;
    color: #64dfde;
    font-size: 11px;
    letter-spacing: 2px;
    font-weight: 700
}

.featured-hero h1 {
    margin: 0;
    font-size: 38px
}

.featured-content {
    padding: 54px 0 80px
}

.featured-content h2 {
    margin: 0 0 24px;
    padding-left: 12px;
    border-left: 4px solid #3187e8;
    color: #18579e;
    font-size: 22px
}

.featured-service-grid {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 20px
}

.featured-service-card {
    padding: 14px;
    border: 1px solid #e0e8f1;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(30, 75, 120, .08)
}

.featured-service-card__hero {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 86px;
    padding: 0 18px;
    border-radius: 15px;
    background: var(--accent);
    color: #fff
}

.featured-service-card__hero h3 {
    margin: 0;
    font-size: 19px
}

.featured-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .16);
    font-size: 18px
}

.featured-service-card h4 {
    margin: 18px 0 13px;
    padding-left: 10px;
    border-left: 3px solid var(--accent);
    font-size: 14px
}

.featured-tags {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 8px;
    min-height: 76px
}

.featured-tags span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 4px 8px;
    border: 1px solid #dbe4ee;
    border-color: color-mix(in srgb, var(--accent) 28%, #fff);
    border-radius: 7px;
    color: #444;
    font-size: 12px;
    text-align: center;
    line-height: 1.35
}

.featured-tags a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 4px 8px;
    border: 1px solid #dbe4ee;
    border-color: color-mix(in srgb, var(--accent) 28%, #fff);
    border-radius: 7px;
    color: #444;
    font-size: 12px;
    text-align: center;
    line-height: 1.35;
    text-decoration: none;
    transition: .18s
}

.featured-tags a:hover {
    background: color-mix(in srgb, var(--accent) 10%, #fff);
    color: var(--accent);
    transform: translateY(-1px)
}

.featured-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #e8edf2
}

.featured-foot small {
    color: #8b939c;
    font-size: 11px
}

.featured-foot a {
    color: #337fc5;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none
}

.featured-detail-page {
    background: #f1f7fd
}

.featured-detail-lead {
    max-width: 850px;
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
    line-height: 1.8
}

.featured-pills {
    display: flex;
    gap: 12px;
    margin-top: 14px
}

.featured-pills span {
    padding: 5px 12px;
    border: 1px solid #64dfde;
    border-radius: 20px;
    color: #fff;
    font-size: 14px;
}

.featured-pills span i {
    color: #64dfde;
    font-size: 13px;
}

.featured-detail-body {
    padding: 40px 0 120px
}

.detail-picker, .detail-summary, .detail-services {
    padding: 22px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(30, 75, 120, .06)
}

.detail-picker h2 {
    margin: 0 0 16px;
    color: #245DA6;
    font-size: 16px
}

.detail-options {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px
}

.detail-options a {
    padding: 18px;
    border: 2px solid #E1E8EF;
    border-radius: 12px;
    color: #245DA6;
    text-decoration: none;
    font-size: 20px;
    font-weight: bold;
}

.detail-options a.is-active {
    border: 2px solid #245DA6
}

.detail-options b {
    display: inline-flex;
    margin-right: 10px;
    padding: 7px 9px;
    border-radius: 8px;
    border: 2px solid #245DA6;
    font-size: 16px
}

.detail-options a.is-active b {
    background: #245DA6;
    color: #fff;
}

.detail-layout {
    display: grid;
    grid-template-columns:330px 1fr;
    gap: 16px;
    margin-top: 18px
}

.detail-summary h2 {
    color: #245DA6;
    font-size: 32px;
    margin-top: 0;
}

.detail-summary p {
    color: rgba(0, 0, 0, .85);
    font-size: 14px;
    line-height: 1.8
}

.detail-stats {
    display: flex;
    gap: 10px;
    margin: 24px 0
}

.detail-stats strong {
    flex: 1;
    padding: 14px;
    border-radius: 10px;
    background: #f7faff;
    color: #408de2;
    font-size: 26px
}

.detail-stats small {
    display: block;
    color: #8c98a6;
    font-size: 11px
}

.detail-summary h3 {
    margin-top: 24px;
    font-size: 13px
}

.detail-summary li {
    margin: 12px 0;
    color: #3678bd;
    font-size: 12px
}

.detail-summary .detail-value {
    margin-top: 30px;
    padding-top: 2px;
    border-top: 1px solid #dce5ee
}

.detail-summary .detail-value h3 {
    margin-top: 20px
}

.detail-summary .detail-value p {
    display: flex;
    align-items: center;
    gap: 0;
    margin: 13px 0;
    color: #252b32;
    font-size: 12px;
    line-height: 1.75
}

.detail-value .icon-dunpai {
    flex: 0 0 auto;
    margin-right: 11px;
    color: #4898ff;
    font-size: 14px
}

.detail-value p span:last-child {
    min-width: 0
}

.detail-kicker {
    margin: 0;
    color: #3575b9;
    font-size: 10px;
    letter-spacing: 1px
}

.detail-services h2 {
    margin: 4px 0;
    color: #245DA6;
    font-size: 20px
}

.detail-services > p:not(.detail-kicker) {
    color: rgba(0, 0, 0, .8);
    font-size: 12px
}

.detail-tabs {
    display: flex;
    gap: 0;
    margin: 14px 0
}

.detail-tabs span {
    margin-right: 8px;
    padding: 10px 20px;
    border: 2px solid #dce6f0;
    border-radius: 8px;
    color: #245DA6;
    font-size: 12px
}

.detail-tabs span:last-child {
    margin-right: 0
}

.detail-tabs .is-active {
    background: #eaf3ff
}

.detail-group {
    margin-top: 14px;
    padding: 16px;
    border: 2px solid #dce6f0;
    border-radius: 14px
}

.detail-group h3 {
    margin: 0 0 14px;
    color: #245DA6;
    font-size: 24px
}

.detail-items {
    display: grid;
    grid-template-columns:repeat(2, 1fr);
    gap: 10px
}
.detail-items strong{
    display: inline-block;
    min-width: 0;
    max-width: calc(100% - 120px);
    width: auto;
    padding-right: 0;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
    margin-top: -4px;
}
.detail-items a {
    padding: 13px;
    border: 1px solid #e6edf4;
    border-radius: 10px;
    color: #2866a6;
    text-decoration: none;
    min-width: 0;
}

.detail-items a {
    position: relative;
    padding-top: 18px
}

.detail-more {
    position: absolute;
    right: 12px;
    top: 14px;
    padding: 3px 8px;
    border: 1px solid #dce6f0;
    border-radius: 12px;
    color: #245DA6;
    font-size: 12px
}

.detail-more i {
    font-size: 11px
}

.detail-meta {
    display: flex;
    align-items: center;
    gap: 0;
    margin-top: 16px;
    color: #5f6975
}

.detail-meta i {
    flex: 0 0 auto;
    margin-right: 7px;
    color: #2866a6;
    font-size: 13px;
    background: #F3F8FF;
    width: 28px;
    height: 28px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.detail-meta b {
    margin-right: 5px;
    color: #30343a;
    font-size: 12px;
    display: block;
}

.detail-items small {
    display: block;
    font-size: 11px;
    line-height: 1.45
}

.detail-items small {
    color: #718092;
    font-size: 10px;
    line-height: 1.7
}

/* 鏃х増 Android WebView 涓嶆敮鎸� grid gap 鏃剁殑闂磋窛鍏滃簳 */
@supports not (gap: 1px) {
    .detail-items {
        margin: -5px
    }

    .detail-items > a {
        margin: 5px
    }
}

.service-detail-page {
    background: #f2f7fd
}

.service-detail-hero {
    margin-top: 0;
    padding: 44px 0 52px;
    color: #fff;
    background: linear-gradient(110deg, #071e44, #2668b9)
}

.service-detail-hero nav {
    display: flex;
    gap: 10px;
    color: rgba(255, 255, 255, .7);
    font-size: 12px
}

.service-detail-hero nav a {
    color: inherit;
    text-decoration: none
}

.service-detail-hero nav b {
    color: #fff
}

.service-detail-hero h1 {
    margin: 40px 0 10px;
    font-size: 36px
}

.service-detail-hero p {
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-size: 12px
}

.service-detail-main {
    padding: 42px 0 160px
}

.service-intro-card, .service-provider-card {
    margin: 0 auto 18px;
    padding: 30px 40px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 2px 12px rgba(30, 75, 120, .06)
}

.service-intro-card {
    max-width: 1000px
}

.service-intro-card img {
    display: block;
    width: 100%;
    height: 430px;
    object-fit: cover;
    border-radius: 15px
}

.service-intro-card p {
    margin: 28px 8px 0;
    color: #30343a;
    font-size: 14px;
    line-height: 1.8
}

.service-provider-card {
    max-width: 1000px;
    padding-top: 24px;
    padding-bottom: 36px
}

.service-provider-card h2 {
    margin: 0 0 18px;
    padding-left: 10px;
    border-left: 4px solid #245DA6;
    color: #245DA6;
    font-size: 17px
}

.service-provider-list {
    display: flex;
    gap: 14px
}

.service-provider-list a {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 180px;
    padding: 16px;
    border: 1px solid #dfe8f1;
    border-radius: 10px;
    color: #27384d;
    text-decoration: none
}

.service-provider-list strong {
    font-size: 13px
}

.service-provider-list small {
    color: #8a949e;
    font-size: 10px
}

.service-provider-table-wrap {
    overflow-x: auto
}

.service-provider-table-wrap table {
    width: min(100%, 900px);
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    border: 1px solid #d7e2ed!important;
    border-radius: 12px;
    color: #30343a;
    font-size: 14px;
    table-layout: fixed
}
.service-provider-table-wrap table{
    border: 1px solid #d7e2ed!important;
}
.service-provider-table-wrap table th, .service-provider-table-wrap table td {
    padding: 11px 14px;
    border: 1px solid #d7e2ed!important;
    line-height: 1.45;
    vertical-align: middle;
    border-collapse: collapse;
}

.service-provider-table-wrap table th:last-child, .service-provider-table-wrap table td:last-child {
    border-right: 0
}

.service-provider-table-wrap table tr:last-child td {
    border-bottom: 0
}

.service-provider-table-wrap table th {
    color: #438fe9;
    font-weight: 600;
    text-align: center
}

.service-provider-table-wrap table td {
    text-align: center
}

.service-provider-table-wrap table td:nth-child(1) {
    width: 31%
}

.service-provider-table-wrap table td:nth-child(2) {
    width: 31%;
}

.service-provider-table-wrap table td:nth-child(3) {
    width: 38%;
    text-align: left;
}

.research-page {
    background: #f1f7fd
}

.research-content {
    padding: 30px 0 120px;
    min-height: 1200px
}

.research-search {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 22px
}

.research-search input {
    flex: 1;
    height: 40px;
    padding: 0 18px;
    border: 1px solid #dce6ef;
    border-radius: 22px;
    background: #fff;
    outline: 0
}

.research-search span {
    color: #7c8997;
    font-size: 12px;
    white-space: nowrap
}

.research-types {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 14px
}

.research-types a {
    position: relative;
    height: 145px;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 14px;
    text-decoration: none
}

.research-types a.is-active {
    border-color: #2f86e8
}

.research-types img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.research-types b {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 14px;
    color: #fff;
    background: linear-gradient(transparent, rgba(0, 0, 0, .62));
    font-size: 15px
}

.research-filter {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 13px 16px;
    margin-bottom: 18px;
    border-radius: 12px;
    background: #fff
}

.research-filter b {
    margin-right: 10px;
    font-size: 12px
}

.research-filter a {
    padding: 6px 16px;
    border-radius: 16px;
    color: #47586a;
    font-size: 11px;
    text-decoration: none
}

.research-filter a.is-active {
    color: #fff;
    background: #3978c8
}

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

.research-card {
    min-height: 210px;
    padding: 16px;
    border: 1px solid #e0e8f0;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 2px 7px rgba(30, 75, 120, .05);
    text-decoration: none;
    transition: .18s
}

.research-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(30, 75, 120, .12)
}

.research-tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 10px;
}

.research-tags span {
    padding: 4px 7px;
    border-radius: 50px;
    color: #245DA6;
    background: #fff;
    font-size: 12px;
    border:1px solid #E1E8EF;
}

.research-card h2 {
    margin: 15px 0 10px;
    color: #26394e;
    font-size: 15px
}

.research-card p {
    margin: 0;
    color: #778594;
    font-size: 12px;
    line-height: 1.7
}

.research-card footer {
    display: flex;
    margin-top: 18px;
    padding-top: 12px;
    border-top: 1px solid #edf1f5;
    color: #97a2ad;
    font-size: 12px;
    flex-direction: column;
}

.research-card footer b {
    color: #327ac0;
    margin-bottom: 6px;
}

.research-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 26px
}

.research-pagination a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 6px;
    color: #3275b7;
    background: #fff;
    font-size: 12px;
    text-decoration: none
}

.research-pagination a.is-active {
    color: #fff;
    background: #2e73bd
}

.research-pagination span {
    margin-left: 5px;
    color: #87929d;
    font-size: 11px
}

.research-page .research-card {
    display: flex;
    flex-direction: column;
    min-height: 206px;
    padding: 17px 16px 14px;
    border-radius: 14px;
    border-color: #dce6ef;
    background: #fff
}

.research-page .research-card h2 {
    margin: 14px 0 10px;
    color: #202f40;
    font-size: 15px;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.research-page .research-card p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    min-height: 40px;
    color: #697887;
    font-size: 12px;
    line-height: 1.65
}

.research-page .research-card footer {
    margin-top: auto;
    padding-top: 11px
}

.research-page .research-tags span {
    padding: 4px 7px;
    border-radius: 4px;
    background: #edf5ff;
    color: #3674b5
}

.research-page .research-card:first-child .research-tags span:first-child {
    background: #2f74be;
    color: #fff
}

.research-page .research-card:first-child .research-tags span:nth-child(2) {
    background: #4b94ee;
    color: #fff
}

.research-page .research-tags span:last-child {
    border: 1px solid transparent
}

.research-page .research-card:hover {
    border-color: #b7d0e8
}

.research-page .research-tags span.is-more {
    border-color: #3978c8;
    background: #fff;
    color: #2866a6
}

.research-page .research-tags span.is-strong {
    color: #fff;
    background: #3478c2;
    font-weight: 600
}

/* 鎶ュ憡鍗＄墖鏍囩涓庡弬鑰冪ǹ淇濇寔涓€鑷达細鐮斿绌洪棿棣栧崱鍚屾棣栧彂/鍘熷垱鑹查樁銆� */
.research-page .research-tags span.is-accent,
.study-report-page .study-report-card__tags span.is-accent {
    background: #4b94ee;
    color: #fff
}

.study-report-page .study-list-panel {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none
}

.study-report-page .study-grid {
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 16px;
    position: relative;
    min-height: 80px;
}
.study-report-page .study-grid .search-empty{
    position: absolute;
    left:50%;
    transform: translate(-50%, 0);
}
.study-report-card {
    display: flex;
    flex-direction: column;
    min-height: 180px;
    padding: 17px 16px 14px;
    border: 1px solid #dce6ef;
    border-radius: 14px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 2px 7px rgba(30, 75, 120, .05);
    transition: transform .18s, box-shadow .18s, border-color .18s
}

.study-report-card:hover {
    transform: translateY(-2px);
    border-color: #b7d0e8;
    box-shadow: 0 6px 16px rgba(30, 75, 120, .12)
}

.study-report-card__tags {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    min-height: 22px
}

.study-report-card__tags span {
    padding: 4px 7px;
    border-radius: 4px;
    color: #3674b5;
    background: #edf5ff;
    font-size: 12px;
    line-height: 1
}

.study-report-card__tags span.is-strong {
    color: #fff;
    background: #3478c2;
    font-weight: 600
}

.study-report-card__tags span.is-more {
    border: 1px solid #3978c8;
    color: #2866a6;
    background: #fff
}

.study-report-card h3 {
    margin: 14px 0 10px;
    color: #202f40;
    font-size: 16px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
}

.study-report-card p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 40px;
    margin: 0;
    color: #697887;
    font-size: 12px;
    line-height: 1.65
}

.study-report-card footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 11px;
    border-top: 1px solid #edf1f5;
    color: #97a2ad;
    font-size: 12px
}

.study-report-card footer b {
    color: #327ac0;
    font-weight: 600
}

.modal-dialog {
    max-width: 660px;
}

.ant-dropdown-link {
    color: #fff !important;
    font-size: 14px !important;
}

/* 涓撲笟鏈嶅姟 */
.pro-page {
    background: #f3f8fe;
    color: #26384c
}

.pro-hero {
    padding: 42px 0 48px;
    color: #fff;
    background: linear-gradient(110deg, #071d43, #2465b4)
}

.pro-crumb {
    display: flex;
    gap: 10px;
    color: rgba(255, 255, 255, .68);
    font-size: 12px
}

.pro-crumb a {
    color: inherit;
    text-decoration: none
}

.pro-crumb b {
    color: #fff
}

.pro-hero-kicker {
    margin: 36px 0 9px;
    color: #64dfde;
    font-size: 11px;
    letter-spacing: .18em;
    font-weight: 700
}

.pro-hero h1 {
    margin: 0;
    font-size: 38px
}

.pro-main {
    padding: 26px 0 84px
}

.pro-banner-row {
    display: grid;
    gap: 16px;
    margin-bottom: 24px
}

.pro-banner {
    position: relative;
    min-height: 160px;
    overflow: hidden;
    padding: 28px 26px;
    border: 3px solid #4898FF33;
    border-radius: 16px;
    background: #fff url('../img/flfw.png') right center/auto 100% no-repeat;
    display: flex;
    align-items: center;
    justify-content:space-between;
    flex-wrap: wrap;
}

.pro-banner h2 {
    position: relative;
    z-index: 1;
    margin: 0 0 7px;
    color: #245DA6;
    font-size: 24px;
    line-height: 1.25;
    width: 100%;
}

.pro-banner p {
    position: relative;
    z-index: 1;
    max-width: 350px;
    color: rgba(0, 0, 0, 0.65);
    font-size: 14px;
    line-height: 1.75
}

.pro-banner-tags {
    display: flex;
    max-width: 250px;
    gap: 7px;
    flex-wrap: wrap;
    padding-right: 20px;
}

.pro-banner-tags span {
    padding: 5px 9px;
    border: 1px solid rgba(72, 152, 255, 0.4);
    border-radius: 13px;
    color: #245DA6;
    background: #fff;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap
}

.pro-banner-link {
    z-index: 1;
    padding: 11px 16px;
    border-radius: 10px;
    color: #fff;
    background: linear-gradient(270deg, #4898FF 0%, #245DA6 100%);
    text-decoration: none;
    font-size: 14px;
    line-height: 1.3;
    box-shadow: 0 3px 10px rgba(38, 101, 174, .12)
}

.pro-banner-link:hover {
    color: rgba(255,255,255,.6);
    box-shadow: 0 5px 14px rgba(38, 101, 174, .18)
}

.pro-publish {
    position: relative;
    display: block;
    min-height: 160px;
    border: 2px solid #d9eafb;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 2px 9px rgba(31, 84, 138, .07);
    transition: transform .2s, box-shadow .2s;
    display: none;
}

.pro-publish:hover {
    transform: translateY(-2px);
    box-shadow: 0 7px 15px rgba(31, 84, 138, .14)
}

.pro-publish img {
    display: block;
    position: absolute;
    z-index: 1;
    top: -7px;
    right: 8px;
    width: 88px;
    height: auto;
    object-fit: contain;
    pointer-events: none
}

.pro-publish-tip {
    position: absolute;
    z-index: 2;
    top: 47px;
    left: 0;
    width: 100%;
    color: #4592ee;
    font-size: 16px;
    line-height: 1.35;
    text-align: center;
    white-space: nowrap
}

.pro-publish-btn {
    position: absolute;
    z-index: 2;
    right: 30px;
    bottom: 24px;
    left: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 45px;
    border-radius: 9px;
    color: #fff;
    background: #4998f5;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    box-shadow: 0 7px 14px rgba(61, 139, 231, .25);
    transition: background .2s, box-shadow .2s
}

.pro-publish:hover .pro-publish-btn {
    background: #3789ec;
    box-shadow: 0 9px 18px rgba(61, 139, 231, .34)
}

.pro-title {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 15px;
    color: #1c5da4;
    font-size: 24px
}

.pro-title:before {
    content: "";
    width: 4px;
    height: 18px;
    border-radius: 3px;
    background: #3187e8
}

.pro-tools {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-bottom: 16px
}

.pro-select, .pro-search {
    height: 37px;
    border: 0;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(30, 75, 120, .04)
}

.pro-select {
    display: flex;
    align-items: center;
    gap: 7px;
    width: 184px;
    padding: 0 12px;
    color: #718398;
    font-size: 11px
}

.pro-select select {
    flex: 1;
    width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #718398;
    font-size: 11px
}

.pro-select > .iconfont:first-child {
    color: #4599f1
}

.pro-select > .iconfont:last-child {
    margin-left: auto;
    color: #4599f1;
    transform: rotate(90deg)
}

.pro-search {
    display: flex;
    align-items: center;
    width: 184px;
    padding: 0 12px;
    color: #a2afbd
}

.pro-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    font-size: 11px
}

.pro-search svg {
    width: 13px;
    height: 13px;
    margin-right: 8px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8
}

.pro-browser {
    padding: 13px 16px 18px;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 3px 13px rgba(30, 75, 120, .05)
}

.pro-categories {
    display: grid;
    grid-template-columns:repeat(7, minmax(0, 1fr));
    gap: 7px
}

.pro-category {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 106px;
    padding: 13px 6px;
    border: 1px solid #edf1f5;
    border-radius: 9px;
    color: #394757;
    background: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: .18s
}

.pro-category .iconfont {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    margin-bottom: 10px;
    border-radius: 9px;
    color: #4398f2;
    background: #f1f6fc;
    font-size: 19px;
    transition: color .18s, background .18s;
    font-weight: normal;
}

.pro-category.is-active, .pro-category:hover {
    border-color: #55a1fa;
    box-shadow: 0 0 0 1px #55a1fa;
    color: #2679cc
}

.pro-category.is-active {
    background: #fbfdff
}

.pro-category.is-active .iconfont {
    color: #fff;
    background: #4398f2
}

.pro-block {
    margin-top: 22px
}

.pro-block-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #2877c4;
    font-size: 16px;
    font-weight: 700
}

.pro-block-head .iconfont {
    font-size: 14px
}

.pro-cards {
    position: relative;
    padding: 0 50px;
}

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

.pro-institution-swiper {
    overflow: hidden
}

.pro-institution-swiper .swiper-slide {
    height: auto
}

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

.pro-institution {
    min-height: 180px;
    padding: 16px 13px 13px;
    border: 1px solid #dbe5f0;
    border-radius: 8px;
    background: #fff;
    position: relative;
}

.pro-institution-top {
    display: flex;
    gap: 8px;
    align-items: center
}

.pro-institution-logo {
    display: block;
    width: 40px;
    height: 44px;
    flex: 0 0 40px;
    object-fit: contain;
    position: absolute;
    right:12px;
    top:12px;
}

.pro-institution strong {
    display: block;
    color: #293c50;
    font-size: 14px;
    line-height: 1.4;
    padding-right: 40px;
}

.pro-institution small {
    display: inline-block;
    margin-bottom: 6px;
    padding: 4px 9px;
    border-radius: 7px;
    color: #317bc3;
    background: #f2f7fd;
    font-size: 12px;
    line-height: 1.2
}

.pro-tags {
    display: flex;
    gap: 5px;
    margin: 13px 0;
    min-height: 24px;
    white-space: nowrap;
    overflow: auto;
}

.pro-tags span {
    padding: 4px 8px;
    border: 1px solid #d9eafa;
    border-radius: 6px;
    color: #4381b9;
    background: #fff;
    font-size: 12px;
    line-height: 1.2
}

.pro-card-foot {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    border-top: 1px solid #eef2f6;
    padding-top: 13px
}

.pro-card-foot a {
    padding: 6px 10px;
    border-radius: 7px;
    color: #4898FF;
    background: #f3f8ff;
    font-size: 12px;
    text-decoration: none
}
.pro-card-foot a:hover{
    color:#fff;
    background:#4898FF!important;
}
.pro-card-foot a:last-child {
    border: 1px solid #7ab5f0;
    background: #fff
}
.pro-card-foot a .icon-youjiantou{
    transform: rotate(-45deg);
    display: inline-block;
}
.pro-arrow {
    position: absolute;
    top: 50%;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 50%;
    color: #fff;
    background: #4898FF;
    font-size: 14px;
    cursor: pointer;
    transform: translateY(-50%)
}
.pro-arrow.swiper-button-disabled{
    opacity: 0.5;
}
.pro-arrow.prev {
    left: 0px
}

.pro-arrow.next {
    right: 0;
}

[data-institution-carousel] .pro-dots {
    display: flex;
    justify-content: center;
    gap: 7px;
    margin-top: 10px;
    min-height: 9px
}

[data-institution-carousel] .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: #bddaf7;
    opacity: 1
}

[data-institution-carousel] .swiper-pagination-bullet-active {
    background: #4398f2
}

.pro-product-swiper {
    overflow: hidden
}

.pro-product-swiper .swiper-slide {
    height: auto
}

.pro-product-page {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 16px
}

[data-product-carousel] .pro-dots {
    display: flex;
    justify-content: center;
    gap: 7px;
    min-height: 9px;
    margin-top: 10px
}

[data-product-carousel] .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: #bddaf7;
    opacity: 1
}

[data-product-carousel] .swiper-pagination-bullet-active {
    background: #4398f2
}

.pro-product {
    min-height: 105px;
    padding: 12px 13px;
    border: 1px solid #e5ebf2;
    border-radius: 8px;
    background: #fff;
    transition: .3s;
}
.pro-product:hover {
    border:1px solid #4387bf;;
}
.pro-product small {
    color: #4387bf;
    font-size: 12px;
    background: #F3F8FF;
    border-radius: 8px;
    padding:2px 10px;
}

.pro-product h3 {
    margin: 7px 0 5px;
    color: #27394d;
    font-size: 16px;
}

.pro-product p {
    margin: 0;
    overflow: hidden;
    color: #82909e;
    font-size: 12px;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.pro-product a {
    display: block;
    margin-top: 10px;
    color: #317bc3;
    font-size: 12px;
    text-align: right;
    text-decoration: none
}

.pro-products .pro-arrow {
    background: #4898FF
}

.pro-reports {
    margin-top: 46px
}

.pro-report-grid {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 16px
}

.pro-report-grid .research-card {
    min-height: 280px;
    padding: 0 16px 14px;
    overflow: hidden
}

.pro-report-grid .research-card img {
    display: block;
    width: calc(100% + 32px);
    height: 112px;
    margin-left: -16px;
    object-fit: cover
}

.pro-report-grid .research-card h2 {
    font-size: 16px;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.pro-report-grid .research-card p {
    font-size: 12px;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.pro-report-more {
    display: block;
    width: max-content;
    margin: 20px auto 0;
    padding: 8px 18px;
    border: 1px solid #cfe2f6;
    border-radius: 8px;
    color: #327dc3;
    background: #fff;
    font-size: 11px;
    text-decoration: none
}

/* 涓撲笟鏈嶅姟鏈烘瀯璇︽儏 */
.institution-page {
    background: #f3f8fe;
    color: #27384d
}

.institution-hero {
    padding: 42px 0 48px;
    color: #fff;
    background: #0c2a57;
}

.institution-crumb {
    display: flex;
    gap: 10px;
    color: rgba(255, 255, 255, .7);
    font-size: 12px
}

.institution-crumb a {
    color: inherit;
    text-decoration: none
}

.institution-crumb b {
    color: #fff
}

.institution-hero .page-kicker {
    margin: 38px 0 8px;
    color: #61e1df;
    font-size: 11px;
    letter-spacing: .18em;
    font-weight: 700
}

.institution-hero h1 {
    margin: 0;
    font-size: 36px;
    line-height: 1.2
}

.institution-main {
    padding: 42px 0 120px
}

.institution-top {
    display: grid;
    grid-template-columns:132px minmax(0, 1fr) 207px;
    gap: 28px;
    align-items: center;
    margin-bottom: 18px
}

.institution-logo {
    display: grid;
    place-items: center;
    width: 132px;
    height: 132px;
    padding: 20px;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 3px 12px rgba(30, 75, 120, .08)
}

.institution-logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain
}

.institution-summary small {
    display: block;
    margin-bottom: 9px;
    color: #6f7d8d;
    font-size: 12px
}

.institution-summary h2 {
    margin: 0 0 10px;
    color: #18283b;
    font-size: 28px
}

.institution-summary p {
    margin: 5px 0;
    color: #718092;
    font-size: 12px;
    line-height: 1.7
}

.institution-summary p i {
    margin-right: 6px;
    color: #6d8cb2;
    font-style: normal
}

.institution-publish {
    display: block;
    justify-self: end;
    width: 207px;
    height: 201px;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 5px 14px rgba(28, 63, 105, .12);
    transition: transform .2s, box-shadow .2s
}

.institution-publish:hover {
    transform: translateY(-2px);
    box-shadow: 0 9px 20px rgba(28, 63, 105, .2)
}

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

.institution-section {
    margin-bottom: 18px;
    padding: 20px 22px 24px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 2px 12px rgba(30, 75, 120, .06)
}

.institution-section h2 {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 20px;
    color: #245da6;
    font-size: 24px
}

.institution-section h2:before {
    content: "";
    width: 4px;
    height: 20px;
    border-radius: 3px;
    background: #2d9cff
}

.institution-section p {
    margin: 0;
    color: #303c4b;
    font-size: 16px;
    line-height: 2
}

.institution-lines {
    display: grid;
    gap: 0
}

.institution-line {
    display: grid;
    grid-template-columns:146px minmax(0, 1fr);
    padding: 12px 0;
    border-bottom: 1px dashed #e5ebf2;
    font-size: 16px
}

.institution-line:last-child {
    border-bottom: 0
}

.institution-line strong {
    color: #2c78bd
}

.institution-line span {
    color: #303c4b
}

.country-link {
    margin-left: 12px;
    color: #8693a0;
    font-size: 11px;
    text-decoration: none
}

.country-link .iconfont {
    margin-left: 3px
}

.institution-service-grid {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 14px
}

.institution-service {
    display: flex;
    flex-direction: column;
    min-height: 100px;
    padding: 16px;
    border: 1px solid #dce6ef;
    border-radius: 8px;
    color: #26384c;
    text-decoration: none;
    transition: border-color .2s, box-shadow .2s
}

.institution-service:hover {
    border-color: #73a9d8;
    box-shadow: 0 5px 14px rgba(42, 94, 147, .1)
}

.institution-service strong {
    font-size: 16px
}

.institution-service small {
    margin-top: 10px;
    color: #7b8997;
    font-size: 14px;
    line-height: 1.6;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
}

.institution-service b {
    margin-top: 12px;
    align-self: flex-end;
    color: #3178ba;
    font-size: 12px
}

.institution-service b .iconfont {
    font-size: 12px;
    rotate: 45deg;
}

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

.institution-reports .study-report-card {
    min-height: 205px
}

.institution-people-grid {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 14px
}

.institution-person {
    display: flex;
    flex-direction: column;
    padding: 16px;
    border: 1px solid #dce6ef;
    border-radius: 8px;
    background: #fff;
    transition: border-color .2s, box-shadow .2s
}

.institution-person:hover {
    border-color: #73a9d8;
    box-shadow: 0 5px 14px rgba(42, 94, 147, .1)
}

.institution-person-main {
    display: flex;
    align-items: flex-start;
    gap: 12px
}

.institution-person-avatar {
    flex-shrink: 0;
    width: 56px;
    height: 56px;
    border-radius: 8px;
    object-fit: cover
}

.institution-person-info strong {
    font-size: 16px
}

.institution-person-info em {
    display: block;
    margin-top: 6px;
    color: rgba(0, 0, 0, 0.85);
    font-style: normal;
    font-size: 14px
}

.institution-person-info small {
    display: block;
    margin-top: 6px;
    color: rgba(0, 0, 0, 0.65);
    font-size: 13px;
    line-height: 1.6
}

.institution-person-link {
    margin-top: 14px;
    padding-top: 10px;
    align-self: flex-end;
    border-top: 1px solid #eee;
    color: #3178ba;
    font-size: 12px;
    font-weight: 600;
    width: 100%;
    text-align: right;
}

.institution-person-link .iconfont {
    font-size: 12px;
    rotate: 45deg
}

.institution-contact-box {
    padding: 34px 20px;
    border: 1px dashed #c9d7e6;
    border-radius: 10px;
    display: flex;
    justify-content: center
}

.institution-contact-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 28px;
    border: 0;
    border-radius: 8px;
    background: linear-gradient(90deg, #245DA6 0%, #4898FF 100%);
    color: #fff;
    font-size: 15px;
    cursor: pointer;
    transition: box-shadow .2s, filter .2s
}

.institution-contact-btn:hover {
    filter: brightness(1.06);
    box-shadow: 0 6px 16px rgba(36, 101, 176, .3)
}

.institution-contact-btn .iconfont {
    font-size: 16px
}

.institution-section.is-contact-flash {
    animation: contact-flash 1.2s ease
}

@keyframes contact-flash {

    0%,
    100% {
        box-shadow: 0 2px 12px rgba(30, 75, 120, .06)
    }

    30% {
        box-shadow: 0 0 0 3px rgba(45, 156, 255, .35), 0 2px 12px rgba(30, 75, 120, .06)
    }
}

/* Professional service child detail pages */
.pro-child-page {
    background: #eef6fc;
    color: #1f2d3d
}

.pro-child-hero {
    background: linear-gradient(120deg, #123f76, #245da6);
    color: #fff;
    padding: 28px 0 76px
}

.pro-child-crumb {
    font-size: 14px;
    display: flex;
    gap: 10px;
    align-items: center;
    opacity: .9
}

.pro-child-crumb a {
    color: #fff
}

.pro-child-hero h1 {
    font-size: 30px;
    margin: 40px 0 0;
    font-weight: 600
}

.pro-child-main {
    margin-top: 40px;
    padding-bottom: 100px
}

.pro-product-head, .pro-person-head {
    display: flex;
    align-items: center;
    gap: 30px;
}

.pro-product-logo {
    width: 190px;
    height: 190px;
    border: 1px solid #e3eaf2;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    overflow: hidden;
}

.pro-product-logo img {
    object-fit: cover;
    width: 100%;
}

.pro-product-logo strong {
    font-size: 30px
}

.pro-product-logo span {
    font-size: 14px;
    margin-top: 5px
}

.pro-head-info small {
    font-size: 14px
}

.pro-head-info h2 {
    font-size: 26px;
    margin: 12px 0 8px
}

.pro-head-info p {
    margin: 0;
    color: #657487;
    font-size: 15px
}

.pro-detail-card {
    background: #fff;
    border-radius: 12px;
    padding: 20px 22px 24px;
    margin-top: 22px;
    box-shadow: 0 8px 22px rgba(36, 93, 166, .06)
}

.pro-detail-card h3 {
    font-size: 17px;
    margin: 22px 0 10px;
    color: #245DA6
}

.pro-detail-card p {
    font-size: 16px;
    line-height: 2;
    color: #596b7e;
    margin: 7px 0
}

.pro-person-avatar {
    width: 140px;
    height: 190px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #91a5bb;
    font-size: 42px
}

.pro-person-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.pro-company {
    display: flex !important;
    align-items: center;
    gap: 8px;
    margin: 12px 0 !important;
    color: #253b54 !important
}

.tongli-logo {
    display: block;
    width: 28px;
    height: 28px;
    border: 1px solid #e2e8ef;
    border-radius: 3px;
    object-fit: cover;
    flex: none
}

.pro-company strong {
    font-size: 15px
}

.pro-company i {
    font-size: 12px;
    color: #8997a5;
    rotate: -45deg;
}

.pro-person-head .pro-head-info h2 {
    margin-bottom: 6px
}

.pro-person-head .pro-head-info em {
    font-style: normal;
    font-size: 14px
}

.pro-qr {
    text-align: center
}

.pro-qr img {
    width: 150px;
    height: 150px;
    object-fit: cover
}

.pro-qr p {
    font-size: 14px;
    color: #657487;
    margin: 10px 0 0
}

.pro-company a {
    color: #253b54;
    text-decoration: none
}

.pro-company a:hover {
    text-decoration: underline;
    color: #245da6
}

/* headerUser 鐧诲綍鎻愮ず寮规 */
.myModal-receive {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center
}

.myModal-receive .mask {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .42)
}

.myModal-receive .vue-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(750px, calc(100vw - 40px));
    margin: 0;
    overflow: hidden;
    border: 1px solid #dbe6f2;
    border-radius: 32px;
    background: #fff;
    box-shadow: 0 18px 60px rgba(31, 75, 125, .16)
}

.myModal-receive .vue-modal-content {
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none
}

.myModal-receive .vue-modal-header {
    position: relative;
    display: flex;
    align-items: center;
    height: 66px;
    padding: 0 20px !important;
    border: 0;
    background: linear-gradient(90deg, #F7FBFF 0%, #EEF5FF 70%, #E6F0FF 100%) !important;
}

.myModal-receive .vue-modal-title {
    display: flex;
    align-items: center;
    gap: 17px;
    margin: 0;
    color: #245da6;
    font-size: 36px;
    font-weight: 600
}

.myModal-receive .vue-modal-title span {
    display: block;
    width: 6px !important;
    height: 20px !important;
    border-radius: 4px !important;
    background: #4898ff !important;
}

.myModal-receive .vue-modal-header .close {
    position: absolute !important;
    right: 14px;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #aab4c1;
    font-size: 32px;
    line-height: 36px;
    cursor: pointer;
    transform: rotate(45deg);
    top: 16px !important;
}

.myModal-receive .vue-modal-header .close:before {
    content: '+';

}

.myModal-receive .vue-modal-body {
    padding: 72px 40px 54px
}

.myModal-receive .warring {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

.myModal-receive .warring img {
    display: none !important;
}

.myModal-receive .warring:before {
    content: "!";
    display: flex;
    align-items: center;
    justify-content: center;
    width: 68px;
    height: 68px;
    margin-bottom: 24px;
    border: 1px solid #d8e4f1;
    border-radius: 50%;
    background: #eaf4ff;
    color: #3187ee;
    font-size: 48px;
    font-weight: 700;
    box-shadow: 0 12px 28px rgba(36, 93, 166, .1)
}

.myModal-receive .warring h4 {
    margin: 0;
    color: #222;
    font-size: 30px;
    font-weight: 400;
    line-height: 1.5
}

.myModal-receive .modal-footer-handle {
    display: flex;
    justify-content: center;
    gap: 22px;
    padding: 38px 40px 68px;
    border: 0;
    background: #fff
}

.myModal-receive .modal-footer-handle button {
    width: 240px;
    height: 72px;
    margin: 0;
    border-radius: 18px;
    font-size: 24px;
    font-weight: 600;
    cursor: pointer
}

.myModal-receive .modal-footer-handle .default {
    border: 1px solid #d5e1ee;
    background: #fff;
    color: #4898ff
}

.myModal-receive .modal-footer-handle .primary {
    background: #4898ff !important;
    color: #fff;
    box-shadow: 0 10px 25px rgba(72, 152, 255, .18)
}

/* 鍙嬪煄鍦板尯鎶曚績淇℃伅 */
.sister-city-main {
    padding: 60px 0 80px;
    background: #f1f7fd
}

.sister-city-card {
    max-width: 1200px;
    margin: auto;
    padding: 66px 70px 92px;
    border: 1px solid #e4ebf3;
    border-radius: 38px;
    background: #fff;
    box-shadow: 0 5px 22px rgba(34, 76, 126, .04)
}

.sister-city-card > h2 {
    margin: 0 0 34px;
    text-align: center;
    color: #245da6;
    font-size: 32px
}

/* 涓€绾ч€夐」鍗★紙鍦板尯锛夆€斺€斾娇鐢� Bootstrap3 nav-tabs 缁撴瀯 */
.sister-city-card .sister-region-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 10px;
    border-bottom: 0;
    padding-left: 0
}

.sister-city-card .sister-region-tabs > li {
    float: none;
    margin: 0
}

.sister-city-card .sister-region-tabs > li > a, .sister-city-card .sister-region-tabs > li > a:focus {
    display: flex;
    align-items: center;
    height: 48px;
    margin: 0;
    padding: 0 24px;
    border: 1px solid #398eff;
    border-radius: 12px;
    background: #fff;
    color: #398eff;
    font-size: 14px
}

.sister-city-card .sister-region-tabs > li > a:hover {
    background: #f2f8ff;
    border-color: #398eff;
    color: #398eff
}

.sister-city-card .sister-region-tabs > li.active > a, .sister-city-card .sister-region-tabs > li.active > a:focus, .sister-city-card .sister-region-tabs > li.active > a:hover {
    background: #398eff;
    border-color: #398eff;
    color: #fff;
    cursor: pointer
}

.sister-region-content {
    margin-bottom: 10px
}

.sister-region-content > .tab-pane {
    display: none
}

.sister-region-content > .tab-pane.active {
    display: block
}

/* 浜岀骇閫夐」鍗★紙鍩庡競锛夆€斺€斿悓涓€鏍峰紡涓嬬殑 nav-tabs */
.sister-city-picker {
    padding: 10px 14px 14px;
    border-radius: 6px;
    background: #eaf4ff
}

.sister-city-row {
    display: grid;
    grid-template-columns:120px minmax(0, 1fr);
    align-items: center;
    min-height: 39px
}

.sister-city-row strong {
    color: #245da6;
    font-size: 14px
}

.sister-city-row .sister-city-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 10px;
    margin: 0;
    border-bottom: 0;
    padding-left: 0
}

.sister-city-row .sister-city-tabs > li {
    float: none;
    margin: 0
}

.sister-city-row .sister-city-tabs > li > a, .sister-city-row .sister-city-tabs > li > a:focus {
    margin: 0;
    padding: 7px 12px;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: #398eff;
    font-size: 14px;
    line-height: 1.4;
    border:none;
    outline:none;
}

.sister-city-row .sister-city-tabs > li > a:hover {
    background: #dbeaff;
    border: 0;
    color: #398eff
}

.sister-city-row .sister-city-tabs > li.active > a, .sister-city-row .sister-city-tabs > li.active > a:focus, .sister-city-row .sister-city-tabs > li.active > a:hover {
    background: #4898ff;
    border: 0;
    color: #fff;
    cursor: pointer
}

.sister-city-empty {
    margin: 0;
    padding: 14px;
    border-radius: 6px;
    background: #eaf4ff;
    color: #5b6b7d;
    font-size: 14px
}

/* 鍩庡競鍐呭鍖� */
.sister-city-content {
    padding-top: 16px
}

.sister-city-content.is-empty {
    display: none
}

.sister-city-content > .tab-pane {
    display: none
}

.sister-city-content > .tab-pane.active {
    display: block
}

.sister-city-content section {
    margin-top: 28px
}

.sister-city-content h3 {
    margin: 0 0 14px;
    color: #1162ad;
    font-size: 18px
}

.sister-city-content p {
    margin: 6px 0;
    color: #252d37;
    font-size: 14px;
    line-height: 1.9
}

.sister-city-content a {
    color: #252d37;
    overflow-wrap: anywhere
}

.sister-city-content a:hover {
    color: #245da6;
    text-decoration: underline
}

.sister-qr-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin: 14px 0 16px
}

.sister-qr-item img {
    width: 104px;
    height: 104px;
    object-fit: cover
}

.sister-qr-item div {
    display: flex;
    flex-direction: column;
    gap: 5px;
    color: #9e736f
}

.sister-qr-item strong {
    font-size: 14px
}

.sister-qr-item span {
    font-size: 13px
}

.hot-topic-heading > a, .hot-topic-news a, .hot-topic-news time, .hot-report-card p, .hot-report-card time {
    font-size: 14px
}

.hot-topic-feature-swiper {
    position: relative;
    min-height: 352px;
    border-radius: 17px;
    overflow: hidden;
    margin: 0 !important;
}

.hot-topic-feature-swiper .hot-topic-feature {
    height: auto;
    min-height: 352px
}

.hot-topic-feature__image {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

/* 鐑偣鍐呭鍒楄〃椤� */
.hot-content-page {
    background: #f3f8fe
}

.hot-content-body {
    position: relative;
    min-height: 1050px;
    background: #f3f8fe
}

.hot-content-list {
    margin: 0 auto
}

.hot-content-list .section-label {
    margin-bottom: 16px
}

.hot-content-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin-bottom: 14px
}

.hot-content-tabs button {
    height: 42px;
    padding: 0 19px;
    border: 1px solid #4898ff;
    border-radius: 13px;
    background: #fff;
    color: #4898ff;
    font-size: 14px;
    cursor: pointer;
    margin: 0 7px 7px 0
}

.hot-content-tabs button:hover {
    background: #edf6ff
}

.hot-content-tabs button.is-active {
    background: #4898ff;
    color: #fff;
    font-weight: 600
}

.hot-content-subtabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    width: max-content;
    max-width: 100%;
    margin: -2px 0 22px 40px;
    padding: 5px;
    border-radius: 8px;
    background: #e5effd
}

.hot-content-subtabs button {
    height: 32px;
    padding: 0 12px;
    border: 0;
    border-radius: 7px;
    background: #f4f8ff;
    color: #4898ff;
    font-size: 13px;
    cursor: pointer;
    margin: 0 4px 4px 0
}

.hot-content-subtabs button:hover,
.hot-content-subtabs button.is-active {
    background: #4898ff;
    color: #fff;
    font-weight: 600
}

.hot-content-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 17px
}

.hot-content-select, .hot-content-search {
    position: relative;
    display: flex;
    align-items: center;
    height: 42px;
    border: 1px solid #e2eaf3;
    border-radius: 13px;
    background: #fff;
    color: #4898ff
}

.hot-content-select {
    width: 268px;
    padding: 0 36px
}

.hot-content-select select {
    width: 100%;
    height: 100%;
    border: 0;
    outline: 0;
    appearance: none;
    background: transparent;
    color: #9aa6b6;
    font-size: 14px
}

.hot-content-select input {
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #657487;
    font-size: 14px;
    cursor: pointer
}

.hot-content-select input::placeholder {
    color: #9aa6b6
}

.hot-content-select > iconify-icon:first-child {
    position: absolute;
    left: 15px;
    font-size: 15px
}

.hot-content-select .arrow {
    position: absolute;
    right: 14px;
    font-size: 13px
}

.hot-content-search {
    margin-left: auto;
    width: 238px;
    padding-left: 15px
}

.hot-content-search input {
    width: 100%;
    height: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #33485d;
    font-size: 14px
}

.hot-content-search input::placeholder {
    color: #a5afbb
}

.hot-content-search button {
    width: 42px;
    height: 100%;
    border: 0;
    background: transparent;
    color: #4898ff;
    font-size: 15px;
    cursor: pointer
}

.hot-content-count {
    margin: 0 0 14px;
    color: #8391a0;
    font-size: 14px
}

.hot-content-count b {
    color: #4898ff;
}

.hot-content-items {
    padding: 0 23px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(42, 83, 126, .03)
}

.hot-content-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    min-height: 98px;
    padding: 16px 0;
    border-bottom: 1px solid #edf0f3;
    color: #26384d;
    text-decoration: none
}

.hot-content-item:last-child {
    border-bottom: 0
}

.hot-content-item:hover strong {
    color: #2463ad
}

.hot-content-item__main {
    display: flex;
    flex: 1;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px
}
.hot-content-item__main .labels{
    display: flex;
    align-content: center;
}
.hot-content-item__main .labels .is-news{
    margin-right: 10px;
}
.hot-content-item em {
    padding: 3px 9px;
    border-radius: 10px;
    color: #fff;
    font-size: 12px;
    font-style: normal;
}

.hot-content-item em.is-news {
    background: #2e5cb8
}

.hot-content-item em.is-policy {
    background: #9669f0
}

.hot-content-item em.is-focus {
    background: #f7a832
}

.hot-content-item .labels em {
    margin-right: 6px
}

.hot-content-item .hot-content-item__tag {
    background: #9669f0
}

.hot-content-item>strong {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45
}

.hot-content-item small {
    display: -webkit-box;
    overflow: hidden;
    color: #9aa4af;
    font-size: 12px;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.hot-content-item time {
    flex: none;
    color: #3980d5;
    font-size: 12px
}

.hot-content-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
}
.hot-content-pagination select.whj_border{
    border: 1px solid #e0e8f1;
    border-radius: 4px;
    color:#3979ba;
    font-size: 14px;
    height: 30px;
}
.hot-content-pagination a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 30px;
    border: 1px solid #e0e8f1;
    border-radius: 7px;
    background: #fff;
    color: #3979ba;
    font-size: 13px;
    text-decoration: none
}

/*.hot-content-pagination a:hover, .hot-content-pagination a.is-active {*/
/*    border-color: #2164ad;*/
/*    background: #2164ad;*/
/*    color: #fff*/
/*}*/

.hot-content-pagination span {
    margin-left: 2px;
    color: #818e9c;
    font-size: 13px
}

.hot-content-avatar {
    position: absolute;
    right: 5px;
    bottom: 430px;
    width: 64px;
    height: 64px
}

.hot-content-avatar img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

/* daterangepicker 椤圭洰閰嶈壊瑕嗙洊 */
.daterangepicker {
    z-index: 10000;
    border: 1px solid #e1e8f0;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 14px 40px rgba(25, 61, 101, .16);
    font-family: inherit;
    box-sizing: border-box
}

.daterangepicker:before,
.daterangepicker:after {
    display: none
}

.daterangepicker.show-calendar {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 656px;
    padding: 64px 16px 14px;
    background: #fff
}

.daterangepicker.show-calendar::before {
    content: "\9009\62E9\65E5\671F\533A\95F4";
    display: block;
    position: absolute;
    top: 18px;
    border: 0;
    color: #252f3a;
    font-size: 17px;
    font-weight: 700;
    left: 20px !important;
}

.daterangepicker.show-calendar>.drp-calendar {
    width: 244px;
    max-width: none;
    margin: 0 10px 0 0;
    padding: 15px 10px 10px !important;
    border: 1px solid #dfe7ef !important;
    border-radius: 8px;
    box-sizing: border-box
}

.daterangepicker.show-calendar>.drp-calendar.left,
.daterangepicker.show-calendar>.drp-calendar.right {
    position: relative;
}

.daterangepicker.show-calendar>.drp-calendar.left {
    order: 1
}

.daterangepicker.show-calendar>.drp-calendar.right {
    order: 2
}

.daterangepicker .drp-calendar.left::before, .daterangepicker .drp-calendar.right::before {
    position: absolute;
    top: -24px;
    left: 7px;
    color: #4a5664;
    font-size: 12px
}

.daterangepicker .drp-calendar.left::before {
    content: "\5F00\59CB\65E5\671F"
}

.daterangepicker .drp-calendar.right::before {
    content: "\7ED3\675F\65F6\95F4"
}

.daterangepicker.show-calendar>.ranges {
    position: relative;
    width: 110px;
    padding: 25px 5px 5px;
    border-radius: 8px;
    box-sizing: border-box;
    margin-top: 0;
}

.daterangepicker.show-calendar>.ranges {
    order: 3
}

.daterangepicker.show-calendar > .ranges::before {
    content: "\5FEB\6377\9009\62E9";
    position: absolute;
    top: 8px;
    left: 10px;
    color: #4a5664;
    font-size: 12px
}

.daterangepicker.show-calendar .ranges ul {
    width: auto
}

.daterangepicker.show-calendar .ranges li {
    margin: 0 0 7px;
    padding: 7px 5px;
    text-align: center
}

.daterangepicker.show-calendar .ranges li:last-child {
    display: none
}

.daterangepicker.show-calendar>.drp-buttons {
    display: flex !important;
    position: relative;
    z-index: 20;
    flex: 0 0 100%;
    justify-content: center;
    align-items: center;
    flex-direction: row-reverse;
    min-height: 45px;
    padding: 12px 0 0;
    border-top: 0;
    pointer-events: auto
}

.daterangepicker.show-calendar>.drp-buttons {
    order: 4
}

.daterangepicker .calendar-table {
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent
}

.daterangepicker .calendar-table table {
    width: 100%;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 2px 1px
}

.daterangepicker .calendar-table th,
.daterangepicker .calendar-table td {
    min-width: 0;
    width: auto;
    height: 27px;
    padding: 0;
    line-height: 27px;
    border-radius: 4px;
    font-size: 12px;
    text-align: center;
    cursor: pointer
}

.daterangepicker th.month {
    width: auto;
    white-space: nowrap
}

.daterangepicker select.monthselect,
.daterangepicker select.yearselect {
    display: inline-block;
    width: 72px;
    height: 28px;
    margin: 0 2px;
    padding: 0 5px;
    border: 1px solid #dbe3eb;
    border-radius: 4px;
    background: #fff;
    color: #4d5865;
    font-size: 12px;
    line-height: 28px;
    -webkit-appearance: menulist;
    appearance: auto;
    vertical-align: middle
}

.daterangepicker select.yearselect {
    width: 66px
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
    background: #4898ff;
    color: #fff
}

.daterangepicker td.in-range {
    background: #dceaff;
    color: #334b67
}

.daterangepicker .ranges li {
    margin: 0 0 8px;
    padding: 7px 5px;
    border: 1px solid #4898ff;
    border-radius: 6px;
    background: #fff;
    color: #337dd0;
    font-size: 12px;
    text-align: center;
    cursor: pointer
}
.daterangepicker .ranges{
    padding:10px;
}
.daterangepicker .ranges li:hover,
.daterangepicker .ranges li.active {
    background: #4898ff;
    color: #fff
}

.daterangepicker .drp-selected {
    display: none !important
}

.daterangepicker .drp-buttons .btn {
    position: relative;
    z-index: 21;
    width: 100px;
    height: 30px;
    margin: 0 4px;
    pointer-events: auto;
    cursor: pointer
}

.daterangepicker .drp-buttons .btn {
    min-width: 100px;
    padding: 6px 15px;
    border: 0;
    border-radius: 5px;
    font-weight: 400
}

.daterangepicker .applyBtn {
    background: #4898ff;
    color: #fff
}

.daterangepicker .cancelBtn {
    background: #e5ebf2;
    color: #657486
}

.daterangepicker th.month select {
    vertical-align: middle
}

.daterangepicker .calendar-table .prev span, .daterangepicker .calendar-table .next span {
    border-color: #405064
}


/* 鐑偣鍐呭鍥藉 / 鍦板尯閫夋嫨鍣� */
.hot-content-list {
    position: relative
}

.hot-region-trigger {
    cursor: pointer
}

.hot-region-popup {
    position: absolute;
    z-index: 999;
    top: 136px;
    left: 248px;
    width: 470px;
    border: 1px solid #dce6f0;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 14px 38px rgba(31, 70, 111, .16);
    overflow: hidden
}

.hot-region-popup[hidden] {
    display: none
}

.hot-region-popup__search {
    display: flex;
    align-items: center;
    height: 34px;
    margin: 10px;
    padding: 0 10px;
    border: 1px solid #bdd4ef;
    border-radius: 7px;
    color: #7891ac
}

.hot-region-popup__search input {
    width: 100%;
    height: 100%;
    margin-left: 7px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #3d4f63;
    font-size: 12px
}

.hot-region-popup__search input::placeholder {
    color: #9caabd
}

.hot-region-popup__body {
    display: grid;
    grid-template-columns:148px minmax(0, 1fr);
    min-height: 220px;
    border-top: 1px solid #edf1f5;
    border-bottom: 1px solid #edf1f5
}

.hot-region-popup__nav {
    padding: 5px 0;
    border-right: 1px solid #e5ebf1
}

.hot-region-popup__nav button {
    display: block;
    width: 100%;
    min-height: 32px;
    padding: 7px 14px;
    border: 0;
    border-left: 3px solid transparent;
    background: #fff;
    color: #4d5a68;
    text-align: left;
    font-size: 12px;
    cursor: pointer
}

.hot-region-popup__nav button:hover {
    background: #f6f9fc
}

.hot-region-popup__nav button.is-active {
    border-left-color: #4898ff;
    background: #eff6ff;
    color: #3175be;
    font-weight: 600
}

.hot-region-popup__countries {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: 0 10px;
    padding: 8px 14px
}

.hot-region-country {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
    min-width: 0;
    height: 32px;
    padding: 0 3px;
    border: 0;
    background: #fff;
    color: #344457;
    text-align: left;
    cursor: pointer
}

.hot-region-country:hover, .hot-region-country.is-selected {
    border-radius: 4px;
    background: #eff6ff;
    color: #2471c1
}

.hot-region-country span {
    font-size: 12px;
    white-space: nowrap
}

.hot-region-country small {
    overflow: hidden;
    color: #8e9cad;
    font-size: 9px;
    text-overflow: ellipsis;
    white-space: nowrap
}

.hot-region-popup footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 40px;
    padding: 5px 12px;
    color: #8e9aa8;
    font-size: 11px;
    box-sizing: border-box
}

.hot-region-popup footer b {
    font-weight: 500
}

.hot-region-popup footer button {
    min-width: 68px;
    height: 28px;
    border: 0;
    border-radius: 5px;
    background: #4898ff;
    color: #fff;
    font-size: 12px;
    cursor: pointer
}

/* 鐑偣涓撳尯 */
.hot-topics-page {
    background: #f3f8fe;
    color: #26384d
}

.hot-topics-hero {
    padding: 42px 0 40px
}

.hot-topics-content {
    position: relative;
    min-height: 1050px;
    padding: 56px 0 100px;
    background: #f3f8fe
}

.hot-topic-block {
    margin: 0 0 27px
}

.hot-topic-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 21px
}

.hot-topic-heading h2 {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    color: #2463ad;
    font-size: 21px;
    line-height: 1.25;
    letter-spacing: .02em
}

.hot-topic-heading h2 span {
    display: block;
    width: 4px;
    height: 20px;
    border-radius: 2px;
    background: #3d94fa
}

.hot-topic-heading > a {
    color: #245d9f;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none
}

.hot-topic-heading > a b {
    font-size: 16px;
    font-weight: 400;
    vertical-align: -1px
}

.hot-topic-feature-grid {
    display: grid;
    grid-template-columns:minmax(0, 2.07fr) minmax(285px, 1fr);
    gap: 20px
}

.hot-topic-feature-grid .swiper-pagination-clickable .swiper-pagination-bullet {
    background: #fff;
}

.hot-topic-feature-grid .hot-topic-dots {
    bottom: 20px !important;
}

.hot-topic-feature {
    position: relative;
    min-height: 352px;
    border-radius: 17px;
    background-position: center;
    background-size: cover;
    overflow: hidden;
    color: #fff
}

.hot-topic-feature__shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg, rgba(4, 35, 75, .74) 0%, rgba(4, 35, 75, .36) 57%, rgba(4, 35, 75, .1) 100%)
}

.hot-topic-feature__copy {
    position: absolute;
    inset: 0;
    z-index: 2;
    max-width: none;
    padding: 101px 38px 30px
}

.hot-topic-feature__copy h3,
.hot-topic-feature__copy p,
.hot-topic-feature__copy a:not(.hot-topic-feature__button) {
    position: relative
}

.hot-topic-feature h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 29px;
    line-height: 1.45;
    letter-spacing: .02em
}

.hot-topic-feature p {
    max-width: 590px;
    margin: 0;
    color: rgba(255, 255, 255, .8);
    font-size: 16px;
    line-height: 1.8
}

.hot-topic-feature__button {
    position: absolute;
    right: 42px;
    bottom: 29px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 0;
    padding: 14px 21px;
    border-radius: 30px;
    background: rgba(50, 136, 232, .86);
    box-shadow: 0 4px 12px rgba(16, 74, 140, .2);
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    isolation: isolate;
    transition: .3s;
}

.hot-topic-feature__button:hover {
    background: rgba(50, 136, 232, 1);
}

.hot-topic-feature__copy .hot-topic-feature__button {
    position: absolute;
    right: 42px;
    bottom: 29px
}

.hot-topic-feature__button::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: -10px;
    border: 10px solid rgba(255, 255, 255, .18);
    border-radius: 50px;
    background: transparent
}

.hot-topic-feature__button span {
    font-size: 25px;
    line-height: 1
}

.hot-topic-dots {
    position: absolute;
    z-index: 2;
    bottom: 13px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: 9px
}

.hot-topic-dots i {
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .58)
}

.hot-topic-dots i.is-active {
    background: #fff
}

.hot-topic-news {
    display: flex;
    flex-direction: column;
    padding: 15px 18px;
    border: 1px solid #e5eaf1;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 5px 12px rgba(33, 81, 133, .04)
}

.hot-topic-news a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 46px;
    border-bottom: 1px solid #edf0f4;
    color: #26384d;
    text-decoration: none;
    font-size: 13px
}

.hot-topic-news a:last-child {
    border-bottom: 0
}

.hot-topic-news a:hover {
    color: #2463ad
}

.hot-topic-news span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.hot-topic-news time {
    flex: none;
    color: #a8b2be;
    font-size: 11px
}

.hot-report-block {
    margin-top: 24px
}

.hot-report-grid {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 19px
}

.hot-report-card {
    display: block;
    min-width: 0;
    padding: 10px 10px 15px;
    border: 1px solid #e4eaf1;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 3px 9px rgba(34, 76, 126, .03);
    color: #26384d;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s
}

.hot-report-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 9px 22px rgba(34, 76, 126, .1)
}

.hot-report-card img {
    display: block;
    width: 100%;
    height: 177px;
    border-radius: 9px;
    object-fit: cover
}

.hot-report-card h3 {
    margin: 11px 0 1px;
    font-size: 14px;
    line-height: 1.45;
    font-weight: 700
}

.hot-report-card p {
    margin: 0;
    color: #64758a;
    font-size: 12px;
    line-height: 1.7
}

.hot-report-card time {
    display: block;
    margin-top: 7px;
    color: #a2acb8;
    font-size: 11px
}

.hot-topic-avatar {
    position: absolute;
    right: 4px;
    bottom: 432px;
    display: block;
    width: 62px;
    height: 62px;
    z-index: 3
}

.hot-topic-avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain
}
.el-pager{
    flex-wrap: wrap;
}
.hot-content-pagination .pagination .whj_jqueryPaginationCss-1 div.whj_checked{
    border-color: #4898FF!important;
    background: #4898FF!important;
}
.pagination .whj_jqueryPaginationCss-1 div[name="whj_confirm"]{
    color:#fff!important;
}
.channelinfo{
    display: none;
}

/* ================= gap 鍏煎鍏滃簳(鑷姩鐢熸垚, 鍕挎墜鏀�) =================
/* 鏃х増瀹夊崜 WebView(Chromium<84)涓嶆敮鎸� flex/grid 鐨� gap 灞炴€�,
   浠ヤ笅鎸夊悓鏍烽棿璺濈敤 margin 绛夋晥瀹炵幇; 鏀寔 gap 鐨勬祻瑙堝櫒涓嶄細鍛戒腑銆� */
@supports not (gap: 1px) {
    .message-crumb > * { margin-right: 10px }
    .message-crumb > :last-child { margin-right: 0 }

    .message-layout > * { margin-right: 24px; margin-bottom: 24px }

    .message-list > * { margin-right: 12px; margin-bottom: 12px }

    .message-item > * { margin-right: 10px; margin-bottom: 10px }

    .message-pagination > * { margin-right: 7px }
    .message-pagination > :last-child { margin-right: 0 }

    .message-ask > * { margin-bottom: 24px }
    .message-ask > :last-child { margin-bottom: 0 }

    .activity-review-crumb > * { margin-right: 10px }
    .activity-review-crumb > :last-child { margin-right: 0 }

    .activity-review-search > * { margin-right: 10px }
    .activity-review-search > :last-child { margin-right: 0 }

    .activity-review-grid > * { margin-right: 16px; margin-bottom: 16px }

    .activity-card footer > * { margin-right: 8px }
    .activity-card footer > :last-child { margin-right: 0 }

    .activity-review-pagination > * { margin-right: 8px }
    .activity-review-pagination > :last-child { margin-right: 0 }

    .training-crumb > * { margin-right: 10px }
    .training-crumb > :last-child { margin-right: 0 }

    .training-section-head > a > * { margin-right: 4px }
    .training-section-head > a > :last-child { margin-right: 0 }

    .training-review-grid > * { margin-right: 24px; margin-bottom: 24px }

    .training-news-list > * { margin-right: 14px; margin-bottom: 14px }

    .training-news > * { margin-right: 15px; margin-bottom: 15px }

    .crumb > * { margin-right: 8px }
    .crumb > :last-child { margin-right: 0 }

    .hero-kicker > * { margin-right: 10px }
    .hero-kicker > :last-child { margin-right: 0 }

    .hero-tags > * { margin-right: 8px }
    .hero-tags > :last-child { margin-right: 0 }

    .section-label > * { margin-right: 10px }
    .section-label > :last-child { margin-right: 0 }

    .lc-badges > * { margin-right: 8px }
    .lc-badges > :last-child { margin-right: 0 }

    .lc-impact > * { margin-right: 10px }
    .lc-impact > :last-child { margin-right: 0 }

    .lc-foot > * { margin-right: 12px }
    .lc-foot > :last-child { margin-right: 0 }

    .lc-link > * { margin-right: 6px }
    .lc-link > :last-child { margin-right: 0 }

    .lc-dots > * { margin-right: 6px }
    .lc-dots > :last-child { margin-right: 0 }

    .lc-actions > * { margin-right: 6px }
    .lc-actions > :last-child { margin-right: 0 }

    .priority-grid > * { margin-right: 18px; margin-bottom: 18px }

    .section-label .floor-more > * { margin-right: 6px }
    .section-label .floor-more > :last-child { margin-right: 0 }

    .academy-shanghai-panel > * { margin-right: 18px; margin-bottom: 18px }

    .as-dots > * { margin-right: 6px }
    .as-dots > :last-child { margin-right: 0 }

    .academy-shanghai-item > * { margin-right: 12px; margin-bottom: 12px }

    .risk-brief-head > * { margin-right: 12px }
    .risk-brief-head > :last-child { margin-right: 0 }
    .col-head > * { margin-right: 12px }
    .col-head > :last-child { margin-right: 0 }

    .risk-brief-head h3 > * { margin-right: 10px }
    .risk-brief-head h3 > :last-child { margin-right: 0 }

    .risk-brief-head .risk-more > * { margin-right: 4px }
    .risk-brief-head .risk-more > :last-child { margin-right: 0 }

    .risk-brief-top > * { margin-right: 8px }
    .risk-brief-top > :last-child { margin-right: 0 }

    .risk-brief-meta > * { margin-right: 4px }
    .risk-brief-meta > :last-child { margin-right: 0 }

    .grid-2x2 > * { margin-right: 22px; margin-bottom: 22px }

    .policy-toolbar > * { margin-right: 10px }
    .policy-toolbar > :last-child { margin-right: 0 }

    .policy-search > * { margin-right: 6px }
    .policy-search > :last-child { margin-right: 0 }

    .policy-tabs > * { margin-right: 4px }
    .policy-tabs > :last-child { margin-right: 0 }

    .col-list .list-item > * { margin-right: 12px }
    .col-list .list-item > :last-child { margin-right: 0 }

    .col-list .list-item .li-body .li-top > * { margin-right: 6px }
    .col-list .list-item .li-body .li-top > :last-child { margin-right: 0 }

    .col-list .list-item .li-body .li-meta > * { margin-right: 6px }
    .col-list .list-item .li-body .li-meta > :last-child { margin-right: 0 }

    .col-list .list-item .li-right > * { margin-bottom: 4px }
    .col-list .list-item .li-right > :last-child { margin-bottom: 0 }

    .col-list .list-item .li-right .li-deadline > * { margin-right: 2px }
    .col-list .list-item .li-right .li-deadline > :last-child { margin-right: 0 }

    .project-simple .col-list .list-item > * { margin-right: 12px }
    .project-simple .col-list .list-item > :last-child { margin-right: 0 }

    .article-detail-meta > * { margin-bottom: 12px }
    .article-detail-meta > :last-child { margin-bottom: 0 }

    .article-detail-meta-left > * { margin-right: 20px }
    .article-detail-meta-left > :last-child { margin-right: 0 }

    .article-detail-meta-left span > * { margin-right: 4px }
    .article-detail-meta-left span > :last-child { margin-right: 0 }

    .article-detail-fontsize .controls > * { margin-right: 4px }
    .article-detail-fontsize .controls > :last-child { margin-right: 0 }

    .article-detail-nav > * { margin-bottom: 12px }
    .article-detail-nav > :last-child { margin-bottom: 0 }

    .article-detail-nav a > * { margin-right: 8px }
    .article-detail-nav a > :last-child { margin-right: 0 }

    .article-detail-back > * { margin-right: 6px }
    .article-detail-back > :last-child { margin-right: 0 }

    .classroom-search-bar > * { margin-bottom: 16px }
    .classroom-search-bar > :last-child { margin-bottom: 0 }

    .classroom-tabs > * { margin-right: 8px }
    .classroom-tabs > :last-child { margin-right: 0 }

    .classroom-grid > * { margin-right: 20px; margin-bottom: 20px }

    .classroom-pagination > * { margin-right: 6px }
    .classroom-pagination > :last-child { margin-right: 0 }

    .classroom-pagination .page-total > * { margin-right: 2px }
    .classroom-pagination .page-total > :last-child { margin-right: 0 }

    .study-search-bar > * { margin-bottom: 16px }
    .study-search-bar > :last-child { margin-bottom: 0 }

    .study-grid > * { margin-right: 22px; margin-bottom: 22px }

    .study-report-categories > * { margin-right: 12px; margin-bottom: 12px }

    .study-report-filter > * { margin-right: 8px }
    .study-report-filter > :last-child { margin-right: 0 }

    .study-card-actions > * { margin-right: 10px }
    .study-card-actions > :last-child { margin-right: 0 }

    .study-action > * { margin-right: 5px }
    .study-action > :last-child { margin-right: 0 }

    .study-pagination > * { margin-right: 4px }
    .study-pagination > :last-child { margin-right: 0 }

    .belt-zone-grid > * { margin-right: 22px; margin-bottom: 22px }

    .belt-top-news__head > * { margin-right: 10px }
    .belt-top-news__head > :last-child { margin-right: 0 }

    .belt-top-news__list a > * { margin-right: 12px; margin-bottom: 12px }

    .belt-public-heading > * { margin-right: 16px }
    .belt-public-heading > :last-child { margin-right: 0 }

    .belt-public-heading a > * { margin-right: 7px }
    .belt-public-heading a > :last-child { margin-right: 0 }
    .belt-category__head > a > * { margin-right: 7px }
    .belt-category__head > a > :last-child { margin-right: 0 }

    .belt-activity__track > * { margin-right: 16px }
    .belt-activity__track > :last-child { margin-right: 0 }

    .belt-activity__controls > * { margin-right: 8px }
    .belt-activity__controls > :last-child { margin-right: 0 }

    .belt-category-grid > * { margin-right: 20px; margin-bottom: 26px }

    .belt-category__head > * { margin-right: 12px }
    .belt-category__head > :last-child { margin-right: 0 }

    .belt-category__title > * { margin-right: 10px }
    .belt-category__title > :last-child { margin-right: 0 }

    .belt-category__list a > * { margin-right: 8px; margin-bottom: 8px }

    .belt-ambassador__shell > * { margin-right: 10px; margin-bottom: 10px }

    .amb-watch > * { margin-right: 8px }
    .amb-watch > :last-child { margin-right: 0 }

    .belt-ambassador__thumbs > * { margin-bottom: 12px }
    .belt-ambassador__thumbs > :last-child { margin-bottom: 0 }

    .belt-list-tabs > * { margin-right: 10px }
    .belt-list-tabs > :last-child { margin-right: 0 }

    .belt-list-filter > * { margin-right: 12px }
    .belt-list-filter > :last-child { margin-right: 0 }

    .belt-list-item > * { margin-right: 16px; margin-bottom: 16px }

    .belt-pager > * { margin-right: 6px }
    .belt-pager > :last-child { margin-right: 0 }

    .pagination .whj_jqueryPaginationCss-1 > * { margin-right: 6px }
    .pagination .whj_jqueryPaginationCss-1 > :last-child { margin-right: 0 }

    .bszn-odi-grid > * { margin-right: 20px; margin-bottom: 20px }

    .bszn-odi-card > * { margin-right: 16px }
    .bszn-odi-card > :last-child { margin-right: 0 }

    .bszn-odi-card__title > * { margin-right: 8px }
    .bszn-odi-card__title > :last-child { margin-right: 0 }

    .bszn-odi-card__tags > * { margin-right: 6px }
    .bszn-odi-card__tags > :last-child { margin-right: 0 }

    .bszn-matters-grid > * { margin-right: 12px; margin-bottom: 12px }

    .bszn-matter > * { margin-right: 14px }
    .bszn-matter > :last-child { margin-right: 0 }

    .bszn-matter__list > * { margin-bottom: 6px }
    .bszn-matter__list > :last-child { margin-bottom: 0 }

    .bszn-matter__list i > * { margin-right: 7px }
    .bszn-matter__list i > :last-child { margin-right: 0 }

    .bszn-matter__more > * { margin-right: 4px }
    .bszn-matter__more > :last-child { margin-right: 0 }

    .bszn-detail-tabs-wrap > * { margin-right: 8px }
    .bszn-detail-tabs-wrap > :last-child { margin-right: 0 }

    .bszn-detail-tabs__track > * { margin-right: 30px }
    .bszn-detail-tabs__track > :last-child { margin-right: 0 }

    .bszn-guide-grid > * { margin-right: 22px; margin-bottom: 22px }

    .bszn-dept-card__head > * { margin-right: 10px }
    .bszn-dept-card__head > :last-child { margin-right: 0 }

    .bszn-dept-card__sec > * { margin-right: 7px }
    .bszn-dept-card__sec > :last-child { margin-right: 0 }

    .bszn-dept-card__more a > * { margin-right: 3px }
    .bszn-dept-card__more a > :last-child { margin-right: 0 }

    .bszn-dept-card__list a > * { margin-right: 8px }
    .bszn-dept-card__list a > :last-child { margin-right: 0 }

    .bszn-dept-card__btn > * { margin-right: 8px }
    .bszn-dept-card__btn > :last-child { margin-right: 0 }

    .bszn-guide-cta > * { margin-bottom: 24px }
    .bszn-guide-cta > :last-child { margin-bottom: 0 }

    .bszn-guide-cta__tags > * { margin-right: 8px }
    .bszn-guide-cta__tags > :last-child { margin-right: 0 }

    .bszn-guide-cta__btn > * { margin-right: 6px }
    .bszn-guide-cta__btn > :last-child { margin-right: 0 }

    .bszn-modal__head > * { margin-right: 16px }
    .bszn-modal__head > :last-child { margin-right: 0 }

    .bszn-guide--business .bszn-guide-grid > * { margin-right: 32px }
    .bszn-guide--business .bszn-guide-grid > :last-child { margin-right: 0 }
    .bszn-guide--reform .bszn-guide-grid > * { margin-right: 32px }
    .bszn-guide--reform .bszn-guide-grid > :last-child { margin-right: 0 }

    .bszn-guide--business .bszn-dept-card__foot > * { margin-right: 18px }
    .bszn-guide--business .bszn-dept-card__foot > :last-child { margin-right: 0 }
    .bszn-guide--reform .bszn-dept-card__foot > * { margin-right: 18px }
    .bszn-guide--reform .bszn-dept-card__foot > :last-child { margin-right: 0 }

    .featured-crumb > * { margin-right: 10px }
    .featured-crumb > :last-child { margin-right: 0 }

    .featured-service-grid > * { margin-right: 20px; margin-bottom: 20px }

    .featured-service-card__hero > * { margin-right: 12px }
    .featured-service-card__hero > :last-child { margin-right: 0 }

    .featured-tags > * { margin-right: 8px; margin-bottom: 8px }

    .featured-pills > * { margin-right: 12px }
    .featured-pills > :last-child { margin-right: 0 }

    .detail-options > * { margin-right: 12px; margin-bottom: 12px }

    .detail-layout > * { margin-right: 16px; margin-bottom: 16px }

    .detail-stats > * { margin-right: 10px }
    .detail-stats > :last-child { margin-right: 0 }

    .detail-items > * { margin-right: 10px; margin-bottom: 10px }

    .service-detail-hero nav > * { margin-right: 10px }
    .service-detail-hero nav > :last-child { margin-right: 0 }

    .service-provider-list > * { margin-bottom: 14px }
    .service-provider-list > :last-child { margin-bottom: 0 }

    .service-provider-list a > * { margin-bottom: 5px }
    .service-provider-list a > :last-child { margin-bottom: 0 }

    .research-search > * { margin-bottom: 22px }
    .research-search > :last-child { margin-bottom: 0 }

    .research-types > * { margin-right: 12px; margin-bottom: 12px }

    .research-filter > * { margin-right: 8px }
    .research-filter > :last-child { margin-right: 0 }

    .research-grid > * { margin-right: 16px; margin-bottom: 16px }

    .research-tags > * { margin-right: 6px }
    .research-tags > :last-child { margin-right: 0 }

    .research-pagination > * { margin-right: 8px }
    .research-pagination > :last-child { margin-right: 0 }

    .study-report-page .study-grid > * { margin-right: 16px }
    .study-report-page .study-grid > :last-child { margin-right: 0 }

    .study-report-card__tags > * { margin-right: 6px }
    .study-report-card__tags > :last-child { margin-right: 0 }

    .pro-crumb > * { margin-right: 10px }
    .pro-crumb > :last-child { margin-right: 0 }

    .pro-banner-row > * { margin-right: 16px; margin-bottom: 16px }

    .pro-banner-tags > * { margin-right: 7px }
    .pro-banner-tags > :last-child { margin-right: 0 }

    .pro-publish-btn > * { margin-right: 10px }
    .pro-publish-btn > :last-child { margin-right: 0 }

    .pro-title > * { margin-right: 9px }
    .pro-title > :last-child { margin-right: 0 }

    .pro-tools > * { margin-bottom: 16px }
    .pro-tools > :last-child { margin-bottom: 0 }

    .pro-select > * { margin-right: 7px }
    .pro-select > :last-child { margin-right: 0 }

    .pro-categories > * { margin-right: 7px; margin-bottom: 7px }

    .pro-block-head > * { margin-right: 8px }
    .pro-block-head > :last-child { margin-right: 0 }

    .pro-card-grid > * { margin-right: 16px; margin-bottom: 16px }

    .pro-institution-page > * { margin-right: 16px; margin-bottom: 16px }

    .pro-institution-top > * { margin-right: 8px }
    .pro-institution-top > :last-child { margin-right: 0 }

    .pro-tags > * { margin-right: 5px }
    .pro-tags > :last-child { margin-right: 0 }

    .pro-card-foot > * { margin-right: 10px }
    .pro-card-foot > :last-child { margin-right: 0 }

    [data-institution-carousel] .pro-dots > * { margin-right: 7px }
    [data-institution-carousel] .pro-dots > :last-child { margin-right: 0 }

    .pro-product-page > * { margin-right: 16px; margin-bottom: 16px }

    [data-product-carousel] .pro-dots > * { margin-right: 7px }
    [data-product-carousel] .pro-dots > :last-child { margin-right: 0 }

    .pro-report-grid > * { margin-right: 16px; margin-bottom: 16px }

    .institution-crumb > * { margin-right: 10px }
    .institution-crumb > :last-child { margin-right: 0 }

    .institution-top > * { margin-right: 28px; margin-bottom: 28px }

    .institution-section h2 > * { margin-right: 9px }
    .institution-section h2 > :last-child { margin-right: 0 }

    .institution-service-grid > * { margin-right: 14px; margin-bottom: 14px }

    .institution-reports > * { margin-right: 16px; margin-bottom: 16px }

    .institution-people-grid > * { margin-right: 14px; margin-bottom: 14px }

    .institution-person-main > * { margin-right: 12px }
    .institution-person-main > :last-child { margin-right: 0 }

    .institution-contact-btn > * { margin-right: 8px }
    .institution-contact-btn > :last-child { margin-right: 0 }

    .pro-child-crumb > * { margin-right: 10px }
    .pro-child-crumb > :last-child { margin-right: 0 }

    .pro-product-head > * { margin-right: 30px }
    .pro-product-head > :last-child { margin-right: 0 }
    .pro-person-head > * { margin-right: 30px }
    .pro-person-head > :last-child { margin-right: 0 }

    .pro-company > * { margin-right: 8px }
    .pro-company > :last-child { margin-right: 0 }

    .myModal-receive .vue-modal-title > * { margin-right: 17px }
    .myModal-receive .vue-modal-title > :last-child { margin-right: 0 }

    .myModal-receive .modal-footer-handle > * { margin-right: 22px }
    .myModal-receive .modal-footer-handle > :last-child { margin-right: 0 }

    .sister-city-card .sister-region-tabs > * { margin-right: 6px }
    .sister-city-card .sister-region-tabs > :last-child { margin-right: 0 }

    .sister-city-row .sister-city-tabs > * { margin-right: 10px }
    .sister-city-row .sister-city-tabs > :last-child { margin-right: 0 }

    .sister-qr-item > * { margin-right: 18px }
    .sister-qr-item > :last-child { margin-right: 0 }

    .sister-qr-item div > * { margin-bottom: 5px }
    .sister-qr-item div > :last-child { margin-bottom: 0 }

    .hot-content-filters > * { margin-right: 10px }
    .hot-content-filters > :last-child { margin-right: 0 }

    .hot-content-item > * { margin-bottom: 25px }
    .hot-content-item > :last-child { margin-bottom: 0 }

    .hot-content-item__main > * { margin-bottom: 5px }
    .hot-content-item__main > :last-child { margin-bottom: 0 }

    .hot-content-pagination > * { margin-right: 8px }
    .hot-content-pagination > :last-child { margin-right: 0 }

    .hot-region-popup__countries > * { margin-right: 10px; margin-bottom: 0 }

    .hot-region-country > * { margin-right: 5px }
    .hot-region-country > :last-child { margin-right: 0 }

    .hot-topic-heading h2 > * { margin-right: 9px }
    .hot-topic-heading h2 > :last-child { margin-right: 0 }

    .hot-topic-feature-grid > * { margin-right: 20px; margin-bottom: 20px }

    .hot-topic-feature__button > * { margin-right: 10px }
    .hot-topic-feature__button > :last-child { margin-right: 0 }

    .hot-topic-dots > * { margin-right: 9px }
    .hot-topic-dots > :last-child { margin-right: 0 }

    .hot-topic-news a > * { margin-right: 10px }
    .hot-topic-news a > :last-child { margin-right: 0 }

    .hot-report-grid > * { margin-right: 19px; margin-bottom: 19px }

    .header .nav-right>li>a > * { margin-right: 6px }
    .header .nav-right>li>a > :last-child { margin-right: 0 }
    .header #headerUserPc > * { margin-right: 6px }
    .header #headerUserPc > :last-child { margin-right: 0 }

    .header-login-link > * { margin-right: 5px }
    .header-login-link > :last-child { margin-right: 0 }

    .footer-dropdown-toggle > * { margin-right: 7px }
    .footer-dropdown-toggle > :last-child { margin-right: 0 }

    .footer-site-nav a > * { margin-right: 7px }
    .footer-site-nav a > :last-child { margin-right: 0 }

    .footer-main-grid > * { margin-right: 42px; margin-bottom: 42px }

    .footer-friends h2 > * { margin-right: 7px }
    .footer-friends h2 > :last-child { margin-right: 0 }

    .footer-friend-cols > * { margin-right: 38px; margin-bottom: 38px }

    .footer-qrs > * { margin-right: 14px }
    .footer-qrs > :last-child { margin-right: 0 }

    .footer-copyright .container > * { margin-bottom: 24px }
    .footer-copyright .container > :last-child { margin-bottom: 0 }
}
