:root {
    --bg: #F8F4F1;
    --panel: #ffffff;
    --panel2: #FBF7F4;
    --text: #222222;
    --muted: #666666;
    --line: #E8DED7;
    --shadow: 0 14px 40px rgba(22, 24, 26, .12);
    --red: #C40000;
    --red2: #C40000;
    --red3: #A80000;
    --gold: #F4C55A;
    --radius: 18px;
    --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace
}

* {
    box-sizing: border-box
}

html,
body {
    height: 100%
}

body {
    margin: 0;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    background: radial-gradient(900px 560px at 10% 0%, rgba(196, 0, 0, .10), transparent 60%), radial-gradient(900px 560px at 90% 10%, rgba(245, 208, 111, .12), transparent 60%), var(--bg);
    color: var(--text)
}

a {
    color: inherit;
    text-decoration: none
}

.wrap {
    max-width: 1560px;
    margin: 0 auto;
    padding: 0 24px
}

.sr-only {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden
}

.siteHeader {
    position: sticky;
    top: 0;
    z-index: 80;
    background: linear-gradient(90deg, var(--red3), var(--red), var(--red2));
    border-bottom: 1px solid rgba(255, 255, 255, .20);
    box-shadow: 0 10px 30px rgba(196, 0, 0, .18)
}

.topbar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 0
}

.brand {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-weight: 900;
    letter-spacing: .4px;
    white-space: nowrap
}

.brandMark {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .18);
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .18);
    font-weight: 1000
}

.brandSub {
    font-size: 12px;
    opacity: .92;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .25);
    background: rgba(255, 255, 255, .12)
}

.nav {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap
}

.navItem {
    position: relative
}

.navLink {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    padding: 7px 9px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .10);
    user-select: none
}

.navLink.active {
    background: rgba(255, 255, 255, .22);
    border-color: rgba(255, 255, 255, .36);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .15)
}

.navItem.open>.navLink {
    background: rgba(255, 255, 255, .22);
    border-color: rgba(255, 255, 255, .36)
}

.caret {
    opacity: .95;
    font-size: 12px;
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .24)
}

.dropdownMenu {
    position: absolute;
    left: 0;
    top: 44px;
    min-width: 260px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: var(--shadow);
    padding: 10px;
    display: none
}

.navItem:hover .dropdownMenu,
.navItem:focus-within .dropdownMenu,
.navItem.open .dropdownMenu {
    display: block
}

.dropHd {
    font-size: 12px;
    color: var(--muted);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 8px 10px
}

.dropGrid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px
}

.dropLink {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 9px 10px;
    border-radius: 12px;
    border: 1px solid var(--line);
    background: var(--panel2);
    font-size: 13px;
    font-weight: 800
}

.dropLink:hover {
    border-color: rgba(196, 0, 0, .35);
    background: #fff
}

.dropTag {
    font-size: 12px;
    color: var(--muted);
    font-weight: 700
}

.rightTools {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap
}

.search {
    display: flex;
    align-items: center;
    gap: 10px;
    background: transparent;
    border: none;
    padding: 0;
    min-width: 280px;
    max-width: 38vw
}

.searchInput {
    flex: 1;
    height: 46px;
    width: 100%;
    border: none;
    outline: none;
    background: rgba(255, 255, 255, .96);
    border: 1px solid rgba(255, 255, 255, .58);
    border-radius: 999px;
    padding: 0 16px;
    font-size: 13px;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .12)
}

.searchBtn {
    width: 56px;
    height: 46px;
    border: none;
    cursor: pointer;
    border-radius: 14px;
    background: rgba(255, 255, 255, .96);
    border: 1px solid rgba(255, 255, 255, .58);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .12);
    display: grid;
    align-content: center;
    justify-items: center;
    row-gap: 2px;
    font-weight: 1000;
    color: var(--red);
    line-height: 1.05
}

.searchBtn span {
    display: block;
    font-size: 15px
}

.searchBtn:hover {
    filter: brightness(1.02)
}

.btn {
    border: none;
    cursor: pointer;
    padding: 9px 12px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--line);
    background: var(--panel2);
    color: var(--text)
}

.btn.primary {
    background: linear-gradient(90deg, var(--gold), #FFD978);
    border: none;
    color: #3a2a00
}

.btn.red {
    background: rgba(255, 255, 255, .18);
    border: 1px solid rgba(255, 255, 255, .25);
    color: #fff
}

.btn.red:hover {
    background: rgba(255, 255, 255, .24)
}

.btn.brand {
    background: linear-gradient(90deg, var(--red3), var(--red2));
    border: none;
    color: #fff
}

.btn.brand:hover {
    filter: brightness(1.02)
}

.btn.small {
    padding: 7px 10px;
    font-size: 12px
}

.page {
    display: none;
    padding: 18px 0 26px
}

.page.active {
    display: block
}

.panel {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    overflow: hidden
}

.panelHd {
    padding: 16px 20px;
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px
}

.panelHd h2 {
    margin: 0;
    font-size: 18px;
    letter-spacing: .2px
}

.panelBd {
    padding: 18px 20px
}

.muted {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.7
}

.chips {
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: var(--panel2);
    font-size: 12px;
    font-weight: 800;
    color: var(--muted);
    white-space: nowrap
}

.chip strong {
    color: var(--text)
}

.chip.red {
    border-color: rgba(196, 0, 0, .25);
    background: rgba(196, 0, 0, .06);
    color: #A80000
}

.chip.ok {
    border-color: rgba(10, 120, 75, .25);
    background: rgba(10, 120, 75, .06);
    color: #0a784b
}

.chip.bad {
    border-color: rgba(220, 38, 38, .25);
    background: rgba(220, 38, 38, .06);
    color: #b91c1c
}

.grid {
    display: grid;
    gap: 14px
}

.cols2 {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 14px
}

.cols2b {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px
}

.cols3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 14px
}

.mediaGrid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px
}

.mediaCard {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .06);
    transition: .15s transform, .15s box-shadow, .15s border-color
}

.mediaCard:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .25);
    box-shadow: 0 14px 32px rgba(0, 0, 0, .09)
}

.thumb {
    height: 120px;
    background: linear-gradient(135deg, rgba(196, 0, 0, .18), rgba(245, 208, 111, .18));
    display: grid;
    place-items: center;
    color: #C40000;
    font-weight: 1000;
    letter-spacing: 2px
}

.mediaTitle {
    padding: 10px 12px;
    font-weight: 900;
    font-size: 13px;
    line-height: 1.35
}

.metaRow {
    padding: 0 12px 12px;
    color: var(--muted);
    font-size: 12px
}

.resourceGrid5 {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px
}

.resourceCard .thumb {
    position: relative;
    border-bottom: 1px solid rgba(196, 0, 0, .08);
    height: auto;
    aspect-ratio: 16 / 9;
    padding: 0;
    background: #F1E7DF;
    overflow: hidden
}

.thumbImg {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .28s ease
}

.resourceCard:hover .thumbImg {
    transform: scale(1.03)
}

.thumbBadgeRow {
    position: absolute;
    left: 10px;
    right: 10px;
    top: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    pointer-events: none
}

.thumbBadge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(168, 0, 0, .92);
    color: #fff;
    font-size: 11px;
    font-weight: 1000;
    letter-spacing: .2px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .16)
}

.thumbBadge.light {
    background: rgba(255, 255, 255, .92);
    color: #A80000
}

.thumbShade {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 52%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .48));
    pointer-events: none
}

.thumbCaption {
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 10px;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-shadow: 0 2px 10px rgba(0, 0, 0, .26);
    pointer-events: none
}

.resourceCard .mediaTitle {
    padding: 12px 14px 6px;
    font-size: 14px;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 46px
}

.resourceCard .metaRow {
    padding: 0 14px 14px;
    font-size: 12.5px;
    line-height: 1.7
}

.heroBox {
    display: grid;
    grid-template-columns: 520px 1fr;
    gap: 14px;
    align-items: stretch
}

.heroPic {
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(196, 0, 0, .95), rgba(196, 0, 0, .75));
    position: relative;
    overflow: hidden
}

.heroPic:before {
    content: "党政学习资料库 · 站点首页Banner（占位）";
    position: absolute;
    left: 18px;
    bottom: 18px;
    color: #fff;
    font-weight: 1000;
    text-shadow: 0 10px 20px rgba(0, 0, 0, .22)
}

.heroPic:after {
    content: "";
    position: absolute;
    inset: -60px;
    background: radial-gradient(200px 200px at 30% 40%, rgba(245, 208, 111, .45), transparent 60%), radial-gradient(240px 240px at 80% 30%, rgba(255, 255, 255, .18), transparent 62%), radial-gradient(240px 240px at 70% 80%, rgba(0, 0, 0, .14), transparent 60%);
    transform: rotate(8deg)
}

.heroInfo h1 {
    margin: 0;
    font-size: 22px;
    line-height: 1.25
}

.heroInfo ul {
    margin: 10px 0 0;
    padding-left: 18px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.8
}

.heroActions {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.homeHeroGrid {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: 14px;
    align-items: stretch
}

.homeHeroMain {
    border: 1px solid var(--line);
    background: linear-gradient(180deg, #fff, #FBF7F4);
    border-radius: 16px;
    padding: 18px 18px 16px;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .06)
}

.homeHeroTitle h1 {
    margin: 0;
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: .2px
}

.homeHeroSub {
    margin-top: 8px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.7
}

.homeSearch {
    margin-top: 14px;
    display: flex;
    gap: 10px;
    align-items: center
}

.homeSearchInput {
    flex: 1;
    height: 50px;
    border-radius: 999px;
    border: 1px solid var(--line);
    padding: 0 16px;
    font-size: 14px;
    outline: none;
    background: #fff;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .06)
}

.homeSearchInput:focus {
    border-color: rgba(196, 0, 0, .35);
    box-shadow: 0 0 0 3px rgba(196, 0, 0, .10), 0 10px 22px rgba(0, 0, 0, .06)
}

.homeSearchBtn {
    height: 50px;
    padding: 0 18px;
    border-radius: 14px;
    border: none;
    cursor: pointer;
    font-weight: 1000;
    color: #3a2a00;
    background: linear-gradient(90deg, var(--gold), #FFD978);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .06);
    white-space: nowrap
}

.homeHotRow {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
    flex-wrap: wrap
}

.hotLabel {
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid rgba(196, 0, 0, .18);
    background: rgba(196, 0, 0, .06);
    color: #A80000;
    font-size: 12px;
    font-weight: 1000;
    white-space: nowrap
}

.homeQuickRow {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.homeKpi {
    margin-top: 12px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.homeHeroSide {
    display: grid;
    gap: 14px
}

.featureCard {
    display: block;
    padding: 16px 16px 14px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(196, 0, 0, .95), rgba(196, 0, 0, .72));
    border: 1px solid rgba(255, 255, 255, .20);
    color: #fff;
    position: relative;
    overflow: hidden;
    box-shadow: 0 14px 32px rgba(196, 0, 0, .20)
}

.featureCard:after {
    content: "";
    position: absolute;
    inset: -60px;
    background: radial-gradient(220px 220px at 20% 30%, rgba(245, 208, 111, .40), transparent 62%), radial-gradient(260px 260px at 80% 20%, rgba(255, 255, 255, .18), transparent 64%), radial-gradient(260px 260px at 60% 90%, rgba(0, 0, 0, .16), transparent 62%);
    transform: rotate(8deg);
    opacity: .95
}

.featureCard * {
    position: relative;
    z-index: 1
}

.featureHd {
    font-size: 12px;
    font-weight: 1000;
    opacity: .92
}

.featureTitle {
    margin-top: 10px;
    font-size: 16px;
    font-weight: 1000;
    line-height: 1.35
}

.featureMeta {
    margin-top: 8px;
    font-size: 12px;
    opacity: .92;
    line-height: 1.7
}

.featureTags {
    margin-top: 10px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.featureTag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .26);
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap
}

.featurePill {
    background: rgba(255, 255, 255, .18);
    border-color: rgba(255, 255, 255, .25);
    color: #fff
}

.memberCard {
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: #fff;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .06)
}

.memberHd {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    font-weight: 1000;
    color: #A80000
}

.memberBody {
    margin-top: 10px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.7
}

.memberActions {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.iconGrid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px
}

.iconItem {
    border: 1px dashed rgba(196, 0, 0, .25);
    background: linear-gradient(180deg, #fff, #FBF7F4);
    border-radius: 16px;
    padding: 14px 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 1000
}

.icon {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: rgba(196, 0, 0, .10);
    border: 1px solid rgba(196, 0, 0, .18);
    display: grid;
    place-items: center;
    font-weight: 1000;
    color: #A80000
}

.iconSmall {
    font-size: 12px;
    color: var(--muted);
    font-weight: 800;
    margin-top: 2px
}

.list {
    display: grid;
    gap: 10px
}

.listItem {
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--panel2);
    padding: 10px 12px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px
}

.listTitle {
    font-weight: 1000
}

.listMeta {
    font-size: 12px;
    color: var(--muted);
    margin-top: 4px
}

.pill {
    font-size: 12px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid rgba(196, 0, 0, .18);
    background: rgba(196, 0, 0, .06);
    color: #A80000;
    font-weight: 900;
    white-space: nowrap
}

.filters {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center
}

.select {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 10px 12px;
    font-weight: 900;
    font-size: 13px;
    min-width: 160px
}

.formGrid {
    display: grid;
    gap: 12px;
    margin-top: 12px
}

.formRow {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap
}

.formRow label {
    min-width: 96px;
    font-weight: 1000
}

.formControl {
    flex: 1;
    min-width: 220px;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 10px 12px;
    font-size: 13px;
    background: #fff;
    outline: none
}

textarea.formControl {
    min-height: 92px;
    resize: vertical
}

.noteBox {
    border: 1px dashed rgba(196, 0, 0, .25);
    background: linear-gradient(180deg, #fff, #FBF7F4);
    border-radius: 16px;
    padding: 14px 12px
}

.kpiRow {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 10px
}

.detailCols {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 14px
}

.previewGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px
}

.previewBox {
    border: 1px solid var(--line);
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(196, 0, 0, .12), rgba(245, 208, 111, .12));
    min-height: 130px;
    display: grid;
    place-items: center;
    font-weight: 1000;
    color: #C40000;
    position: relative;
    overflow: hidden
}

.watermark {
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(135deg, rgba(196, 0, 0, .10) 0px, rgba(196, 0, 0, .10) 18px, rgba(255, 255, 255, 0) 18px, rgba(255, 255, 255, 0) 36px);
    mix-blend-mode: multiply;
    opacity: .35;
    pointer-events: none
}

.dock {
    position: fixed;
    right: 16px;
    bottom: 16px;
    width: 360px;
    max-width: calc(100vw - 32px);
    z-index: 90
}

.dockBtn {
    width: 100%;
    border-radius: 16px;
    padding: 12px 14px;
    background: linear-gradient(90deg, var(--red3), var(--red2));
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .22);
    box-shadow: 0 16px 40px rgba(196, 0, 0, .22);
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    font-weight: 1000
}

.dockPanel {
    margin-top: 10px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: var(--shadow);
    overflow: hidden;
    display: none
}

.dockPanel.active {
    display: block
}

.dockHd {
    padding: 12px 14px;
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px
}

.dockHd b {
    color: #A80000
}

.dockBd {
    padding: 12px 14px
}

.dockInput {
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 10px 12px;
    outline: none;
    font-size: 13px;
    background: #fff
}

.dockTips {
    margin-top: 8px;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.7
}

.dockFoot {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

footer {
    margin-top: 18px;
    background: #F1E7DF;
    border-top: 1px solid rgba(196, 0, 0, .12)
}

.footerInner {
    padding: 22px 0
}

.footerGrid {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr 1fr;
    gap: 16px
}

.footerTitle {
    font-weight: 1000;
    color: #A80000
}

.footerLinks {
    margin-top: 10px;
    display: grid;
    gap: 8px
}

.footerLinks a {
    color: #3b2f2f;
    font-weight: 800;
    font-size: 13px
}

.footerLinks a:hover {
    color: #A80000
}

.footerNote {
    margin-top: 10px;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.7
}

.copyright {
    border-top: 1px solid rgba(196, 0, 0, .10);
    padding: 12px 0;
    color: var(--muted);
    font-size: 12px
}

@media (max-width:1440px) {
    .resourceGrid5 {
        grid-template-columns: repeat(4, 1fr)
    }
}

@media (max-width:1020px) {

    .cols2,
    .detailCols,
    .heroBox,
    .homeHeroGrid {
        grid-template-columns: 1fr
    }

    .mediaGrid {
        grid-template-columns: repeat(2, 1fr)
    }

    .resourceGrid5 {
        grid-template-columns: repeat(3, 1fr)
    }

    .iconGrid {
        grid-template-columns: repeat(3, 1fr)
    }

    .search {
        min-width: 0;
        max-width: 100%
    }

    .previewGrid {
        grid-template-columns: 1fr
    }

    .footerGrid {
        grid-template-columns: 1fr 1fr
    }
}

@media (max-width:760px) {
    .resourceGrid5 {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:520px) {
    .mediaGrid {
        grid-template-columns: 1fr
    }

    .resourceGrid5 {
        grid-template-columns: 1fr
    }

    .iconGrid {
        grid-template-columns: repeat(2, 1fr)
    }

    .footerGrid {
        grid-template-columns: 1fr
    }
}

.nav {
    flex: 1;
    min-width: 0;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 2px
}

.nav::-webkit-scrollbar {
    display: none
}

.rightTools {
    flex: 0 0 auto
}

.searchBtn {
    width: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 14px;
    border-radius: 999px;
    line-height: 1;
    white-space: nowrap
}

.searchBtn span {
    display: inline;
    font-size: 13px
}

.breadcrumb {
    margin: 14px 0 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800
}

.breadcrumb a {
    color: #A80000;
    font-weight: 1000
}

.breadcrumb .sep {
    opacity: .55
}

.breadcrumb .cur {
    color: var(--text);
    font-weight: 1000
}

.toast {
    position: fixed;
    left: 50%;
    bottom: 22px;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, .78);
    color: #fff;
    padding: 10px 12px;
    border-radius: 14px;
    font-size: 13px;
    font-weight: 800;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .22);
    display: none;
    z-index: 120;
    max-width: calc(100vw - 32px);
    text-align: center
}

.tabs {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.tabBtn {
    border: none;
    cursor: pointer;
    padding: 8px 12px;
    border-radius: 999px;
    font-weight: 1000;
    font-size: 13px;
    border: 1px solid var(--line);
    background: var(--panel2);
    color: var(--muted)
}

.tabBtn.active {
    background: rgba(196, 0, 0, .10);
    border-color: rgba(196, 0, 0, .28);
    color: #A80000
}

.tabPanel {
    display: none
}

.tabPanel.active {
    display: block
}

.miniTable {
    width: 100%;
    border-collapse: collapse
}

.miniTable th,
.miniTable td {
    border-bottom: 1px solid var(--line);
    padding: 10px 0;
    text-align: left;
    font-size: 13px
}

.miniTable th {
    color: var(--muted);
    font-size: 12px;
    font-weight: 1000
}

.miniTable td .muted {
    font-size: 12px
}

.pager {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 14px
}

.pageBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 34px;
    padding: 0 10px;
    border-radius: 12px;
    border: 1px solid var(--line);
    background: #fff;
    color: var(--text);
    font-weight: 950;
    font-size: 13px;
    cursor: pointer;
    user-select: none
}

.pageBtn:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .06)
}

.pageBtn.active {
    background: linear-gradient(90deg, rgba(196, 0, 0, .95), rgba(196, 0, 0, .72));
    color: #fff;
    border-color: rgba(196, 0, 0, .25);
    box-shadow: 0 12px 28px rgba(196, 0, 0, .18)
}

.pageBtn.disabled,
.pageBtn[aria-disabled="true"] {
    opacity: .45;
    cursor: not-allowed;
    transform: none;
    box-shadow: none
}

.pageEllipsis {
    padding: 0 4px;
    color: var(--muted);
    font-weight: 950
}

#page-home {
    padding: 24px 0 40px
}

#page-home .pv-home {
    display: grid;
    gap: 34px
}

#page-home .pv-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) 430px;
    gap: 22px;
    align-items: stretch
}

#page-home .pv-hero-main {
    position: relative;
    overflow: hidden;
    min-height: 448px;
    border-radius: 32px;
    padding: 42px 42px 32px;
    background: linear-gradient(135deg, #C40000 0%, #C40000 46%, #C40000 100%);
    box-shadow: 0 20px 54px rgba(196, 0, 0, .18)
}

#page-home .pv-hero-main:before {
    content: "";
    position: absolute;
    right: -40px;
    top: -80px;
    width: 420px;
    height: 420px;
    background: radial-gradient(circle at 30% 30%, rgba(255, 220, 160, .24), transparent 58%);
    pointer-events: none
}

#page-home .pv-hero-main:after {
    content: "";
    position: absolute;
    left: 220px;
    bottom: -126px;
    width: 520px;
    height: 220px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    transform: rotate(-11deg);
    pointer-events: none
}

#page-home .pv-hero-tag,
#page-home .pv-hero-content,
#page-home .pv-hero-stats {
    position: relative;
    z-index: 1
}

#page-home .pv-hero-tag {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 15px;
    font-weight: 900
}

#page-home .pv-hero-title {
    margin: 18px 0 10px;
    color: #fff;
    font-size: 54px;
    line-height: 1.12;
    font-weight: 1000;
    letter-spacing: -1.2px
}

#page-home .pv-hero-desc {
    margin: 0;
    color: rgba(255, 255, 255, .86);
    font-size: 19px;
    line-height: 1.85;
    max-width: 760px
}

#page-home .pv-search {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 26px;
    padding: 10px 12px 10px 28px;
    width: min(880px, 90%);
    height: 78px;
    background: #fff;
    border-radius: 999px;
    box-shadow: 0 22px 42px rgba(89, 15, 15, .18)
}

#page-home .pv-search input {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-size: 20px;
    color: #222222
}

#page-home .pv-search input::placeholder {
    color: #99a1ab
}

#page-home .pv-search button {
    height: 56px;
    padding: 0 30px;
    border: none;
    cursor: pointer;
    border-radius: 999px;
    background: linear-gradient(135deg, #C40000, #C40000);
    color: #fff;
    font-size: 20px;
    font-weight: 1000;
    box-shadow: 0 12px 24px rgba(193, 22, 22, .20)
}

#page-home .pv-hero-hot {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 16px
}

#page-home .pv-hero-pill {
    display: inline-flex;
    align-items: center;
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 15px;
    font-weight: 900
}

#page-home .pv-hero-pill:hover {
    background: rgba(255, 255, 255, .2)
}

#page-home .pv-hero-stats {
    display: flex;
    gap: 34px;
    flex-wrap: wrap;
    margin-top: 34px
}

#page-home .pv-stat-num {
    font-size: 36px;
    color: #fff;
    font-weight: 1000;
    line-height: 1
}

#page-home .pv-stat-lab {
    margin-top: 8px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px
}

#page-home .pv-featured {
    position: relative;
    overflow: hidden;
    min-height: 448px;
    padding: 26px 26px 24px;
    background: linear-gradient(180deg, #fff 0%, #fff7f5 100%);
    border: 1px solid rgba(196, 0, 0, .08);
    border-radius: 30px;
    box-shadow: 0 16px 42px rgba(20, 26, 38, .08)
}

#page-home .pv-featured-top {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 6px
}

#page-home .pv-featured-title {
    font-size: 30px;
    font-weight: 1000;
    line-height: 1.15;
    margin: 0
}

#page-home .pv-featured-desc {
    margin-top: 8px;
    color: #8a939d;
    font-size: 15px;
    line-height: 1.7
}

#page-home .pv-stack {
    position: absolute;
    right: 24px;
    top: 48px;
    width: 254px;
    height: 330px;
    pointer-events: none
}

#page-home .pv-stack-card {
    position: absolute;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, .9);
    box-shadow: 0 24px 42px rgba(99, 18, 18, .18)
}

#page-home .pv-stack-card img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover
}

#page-home .pv-stack-card.back {
    width: 190px;
    height: 270px;
    right: 72px;
    top: 18px;
    transform: rotate(-8deg);
    opacity: .68
}

#page-home .pv-stack-card.mid {
    width: 214px;
    height: 304px;
    right: 36px;
    top: 12px;
    transform: rotate(5deg);
    opacity: .86
}

#page-home .pv-stack-card.front {
    width: 236px;
    height: 336px;
    right: 0;
    top: 0
}

#page-home .pv-weekly-list {
    width: 58%;
    display: grid;
    gap: 12px;
    margin-top: 18px;
    position: relative;
    z-index: 1
}

#page-home .pv-weekly-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 18px;
    background: #fff7f6;
    border: 1px solid #f3dfdb;
    transition: .15s transform, .15s box-shadow
}

#page-home .pv-weekly-item:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(20, 26, 38, .06)
}

#page-home .pv-rank-dot {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #C40000, #C40000);
    color: #fff;
    font-size: 15px;
    font-weight: 1000;
    flex: 0 0 auto
}

#page-home .pv-weekly-main {
    min-width: 0
}

#page-home .pv-weekly-main b {
    display: block;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.4;
    color: #222222;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-home .pv-weekly-main span {
    display: block;
    margin-top: 3px;
    color: #8d95a0;
    font-size: 13px;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-home .pv-featured-cta {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 22px;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 20px;
    border-radius: 20px;
    background: linear-gradient(90deg, #fff6f5, #fff);
    border: 1px solid #f2e1de
}

#page-home .pv-featured-cta b {
    display: block;
    font-size: 17px;
    color: #222222
}

#page-home .pv-featured-cta span {
    display: block;
    margin-top: 5px;
    color: #8b94a0;
    font-size: 13px
}

#page-home .pv-featured-btn,
#page-home .pv-more,
#page-home .pv-vip-mini-btn,
#page-home .pv-vip-strip-btn,
#page-home .pv-banner-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    cursor: pointer
}

#page-home .pv-featured-btn {
    padding: 12px 18px;
    border-radius: 999px;
    background: linear-gradient(135deg, #C40000, #C40000);
    color: #fff;
    font-weight: 1000;
    font-size: 16px;
    white-space: nowrap;
    box-shadow: 0 12px 24px rgba(201, 23, 23, .18)
}

#page-home .pv-quick-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 14px
}

#page-home .pv-qcard {
    background: #fff;
    border-radius: 22px;
    padding: 20px 18px 18px;
    border: 1px solid #eef1f4;
    box-shadow: 0 10px 28px rgba(20, 26, 38, .05);
    min-height: 118px;
    transition: .15s transform, .15s box-shadow, .15s border-color
}

#page-home .pv-qcard:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .18);
    box-shadow: 0 16px 34px rgba(20, 26, 38, .08)
}

#page-home .pv-qicon {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #fff0ee, #ffe6dc);
    color: #C40000;
    font-size: 20px;
    font-weight: 1000;
    margin-bottom: 14px
}

#page-home .pv-qtitle {
    font-size: 20px;
    font-weight: 900;
    color: #222222;
    margin-bottom: 6px
}

#page-home .pv-qsub {
    font-size: 14px;
    color: #8d95a0;
    line-height: 1.55
}

#page-home .pv-section {
    display: grid;
    gap: 18px
}

#page-home .pv-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px
}

#page-home .pv-section-title {
    font-size: 40px;
    line-height: 1;
    font-weight: 1000;
    letter-spacing: -1px;
    color: #222222
}

#page-home .pv-section-sub {
    margin-top: 8px;
    font-size: 15px;
    color: #99a2ad
}

#page-home .pv-more {
    padding: 10px 14px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #f0d9d5;
    color: #C40000;
    font-size: 15px;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 10px 24px rgba(20, 26, 38, .04)
}

#page-home .pv-card-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px
}

#page-home .pv-card {
    display: block;
    background: #fff;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid #eef1f4;
    box-shadow: 0 16px 40px rgba(20, 26, 38, .08);
    transition: .15s transform, .15s box-shadow, .15s border-color
}

#page-home .pv-card:hover {
    transform: translateY(-3px);
    border-color: rgba(196, 0, 0, .16);
    box-shadow: 0 22px 46px rgba(20, 26, 38, .12)
}

#page-home .pv-card-cover {
    padding: 12px 12px 0
}

#page-home .pv-card-cover img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 18px
}

#page-home .pv-card-body {
    padding: 18px 18px 20px
}

#page-home .pv-card-title {
    font-size: 21px;
    font-weight: 900;
    line-height: 1.42;
    color: #222222;
    min-height: 60px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .pv-tags {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px
}

#page-home .pv-tag {
    padding: 6px 10px;
    border-radius: 999px;
    background: #fff4f2;
    color: #C40000;
    font-size: 13px;
    font-weight: 900
}

#page-home .pv-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    color: #7f8892;
    font-size: 14px
}

#page-home .pv-card-meta strong {
    color: #C40000;
    font-size: 17px
}

#page-home .pv-content-row {
    display: grid;
    grid-template-columns: minmax(0, 2fr) 360px;
    gap: 22px;
    align-items: start
}

#page-home .pv-banner-list {
    display: grid;
    gap: 18px
}

#page-home .pv-banner {
    position: relative;
    overflow: hidden;
    height: 214px;
    border-radius: 28px;
    box-shadow: 0 18px 44px rgba(20, 26, 38, .10);
    display: block
}

#page-home .pv-banner img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover
}

#page-home .pv-banner-mask {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(75, 0, 0, .60) 0%, rgba(90, 0, 0, .22) 54%, rgba(0, 0, 0, .04) 100%)
}

#page-home .pv-banner-txt {
    position: absolute;
    left: 34px;
    top: 34px;
    right: 210px;
    color: #fff
}

#page-home .pv-banner-small {
    font-size: 17px;
    opacity: .92;
    font-weight: 900
}

#page-home .pv-banner-big {
    margin-top: 12px;
    font-size: 36px;
    line-height: 1.22;
    font-weight: 1000
}

#page-home .pv-banner-desc {
    margin-top: 8px;
    font-size: 17px;
    line-height: 1.7;
    opacity: .9
}

#page-home .pv-banner-btn {
    position: absolute;
    left: 34px;
    bottom: 28px;
    padding: 12px 20px;
    border-radius: 999px;
    background: #fff;
    color: #A80000;
    font-weight: 1000;
    font-size: 16px
}

#page-home .pv-side-stack {
    display: grid;
    gap: 18px
}

#page-home .pv-list-card {
    background: #fff;
    border-radius: 28px;
    padding: 24px;
    box-shadow: 0 16px 40px rgba(20, 26, 38, .08);
    border: 1px solid #eff1f4
}

#page-home .pv-list-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px
}

#page-home .pv-list-head h4 {
    margin: 0;
    font-size: 30px;
    line-height: 1.2;
    color: #222222
}

#page-home .pv-rank-list {
    display: grid;
    gap: 10px
}

#page-home .pv-rank-item {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 14px 14px;
    border-radius: 18px;
    background: #fbf7f6;
    border: 1px solid #f1e5e2
}

#page-home .pv-rank-num {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ece8e7;
    color: #847b79;
    font-weight: 1000;
    font-size: 14px
}

#page-home .pv-rank-item.top .pv-rank-num {
    background: linear-gradient(135deg, #C40000, #C40000);
    color: #fff
}

#page-home .pv-rank-name {
    font-weight: 900;
    font-size: 17px;
    color: #222222;
    line-height: 1.45;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-home .pv-rank-count {
    color: #9199a4;
    font-size: 13px;
    white-space: nowrap
}

#page-home .pv-search-tags {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

#page-home .pv-search-tags a {
    padding: 9px 12px;
    border-radius: 999px;
    background: #fff6f4;
    border: 1px solid #f1ddd8;
    color: #C40000;
    font-size: 14px;
    font-weight: 900
}

#page-home .pv-vip-mini {
    border-radius: 24px;
    padding: 24px;
    color: #fff;
    background: linear-gradient(135deg, #A80000, #C40000);
    box-shadow: 0 20px 40px rgba(200, 30, 30, .22)
}

#page-home .pv-vip-mini h5 {
    margin: 0;
    font-size: 31px;
    line-height: 1.2
}

#page-home .pv-vip-mini p {
    margin: 10px 0 18px;
    color: rgba(255, 255, 255, .88);
    font-size: 15px;
    line-height: 1.8
}

#page-home .pv-vip-mini-btn {
    padding: 12px 18px;
    border-radius: 999px;
    background: #fff;
    color: #A80000;
    font-weight: 1000;
    font-size: 16px
}

#page-home .pv-scene-grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 18px
}

#page-home .pv-scene {
    position: relative;
    overflow: hidden;
    height: 168px;
    border-radius: 26px;
    padding: 24px;
    background: linear-gradient(135deg, #fff 0%, #fff6f5 100%);
    box-shadow: 0 16px 38px rgba(20, 26, 38, .08);
    border: 1px solid #f0eeec
}

#page-home .pv-scene:before {
    content: "";
    position: absolute;
    right: -18px;
    top: -28px;
    width: 146px;
    height: 146px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 215, 170, .55), rgba(255, 255, 255, 0) 68%);
    pointer-events: none
}

#page-home .pv-scene-k {
    font-size: 15px;
    color: #C40000;
    font-weight: 900
}

#page-home .pv-scene h5 {
    margin: 16px 0 8px;
    font-size: 28px;
    line-height: 1.2;
    color: #222222
}

#page-home .pv-scene p {
    margin: 0;
    color: #8b94a0;
    font-size: 15px;
    line-height: 1.75
}

#page-home .pv-vip-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 26px;
    flex-wrap: wrap;
    padding: 34px 38px;
    border-radius: 30px;
    background: linear-gradient(135deg, #A80000 0%, #C40000 40%, #ef6a42 100%);
    box-shadow: 0 24px 54px rgba(197, 30, 30, .22)
}

#page-home .pv-vip-strip h3 {
    margin: 0;
    color: #fff;
    font-size: 42px;
    line-height: 1.12
}

#page-home .pv-vip-strip p {
    margin: 12px 0 0;
    color: rgba(255, 255, 255, .86);
    font-size: 17px
}

#page-home .pv-benefits {
    display: flex;
    gap: 26px;
    flex-wrap: wrap;
    color: #fff
}

#page-home .pv-benefits div {
    font-size: 16px;
    line-height: 1.65
}

#page-home .pv-benefits strong {
    display: block;
    font-size: 21px;
    margin-bottom: 6px
}

#page-home .pv-vip-strip-btn {
    padding: 16px 24px;
    border-radius: 999px;
    background: #fff;
    color: #A80000;
    font-size: 20px;
    font-weight: 1000;
    white-space: nowrap;
    box-shadow: 0 14px 28px rgba(120, 0, 0, .14)
}

@media (max-width:1440px) {
    #page-home .pv-card-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    #page-home .pv-quick-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    #page-home .pv-hero {
        grid-template-columns: minmax(0, 1fr) 400px
    }

    #page-home .pv-content-row {
        grid-template-columns: minmax(0, 1fr) 340px
    }
}

@media (max-width:1120px) {

    #page-home .pv-hero,
    #page-home .pv-content-row {
        grid-template-columns: 1fr
    }

    #page-home .pv-weekly-list {
        width: 100%;
        padding-right: 250px
    }

    #page-home .pv-card-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    #page-home .pv-scene-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .pv-banner-txt {
        right: 110px
    }
}

@media (max-width:820px) {
    #page-home .pv-hero-main {
        padding: 30px 24px 26px;
        min-height: auto
    }

    #page-home .pv-featured {
        min-height: auto;
        padding-bottom: 118px
    }

    #page-home .pv-featured-title {
        font-size: 26px
    }

    #page-home .pv-stack {
        display: none
    }

    #page-home .pv-weekly-list {
        width: 100%;
        padding-right: 0
    }

    #page-home .pv-search {
        width: 100%;
        height: auto;
        padding: 12px;
        gap: 10px;
        flex-direction: column;
        align-items: stretch;
        border-radius: 28px
    }

    #page-home .pv-search button {
        width: 100%
    }

    #page-home .pv-hero-title {
        font-size: 40px
    }

    #page-home .pv-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .pv-quick-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .pv-banner {
        height: 188px
    }

    #page-home .pv-banner-txt {
        left: 24px;
        top: 24px;
        right: 84px
    }

    #page-home .pv-banner-big {
        font-size: 28px
    }

    #page-home .pv-section-title {
        font-size: 32px
    }

    #page-home .pv-vip-strip {
        padding: 28px 24px
    }

    #page-home .pv-vip-strip h3 {
        font-size: 34px
    }
}

@media (max-width:560px) {

    #page-home .pv-card-grid,
    #page-home .pv-scene-grid {
        grid-template-columns: 1fr
    }

    #page-home .pv-hero-stats {
        gap: 16px 28px
    }

    #page-home .pv-hero-title {
        font-size: 34px
    }

    #page-home .pv-featured {
        padding-bottom: 128px
    }

    #page-home .pv-section-head {
        align-items: flex-start;
        flex-direction: column
    }

    #page-home .pv-more {
        padding: 9px 12px
    }
}

#page-home .pv-featured-clean {
    min-height: 448px;
    padding: 24px;
    background: #fff;
    border: 1px solid #efe4e1;
    box-shadow: 0 16px 42px rgba(20, 26, 38, .06)
}

#page-home .pv-featured-clean:before,
#page-home .pv-featured-clean:after {
    display: none
}

#page-home .pv-featured-note {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.6;
    color: #8d95a0
}

#page-home .pv-featured-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    background: #fff5f2;
    border: 1px solid #f2ddd7;
    color: #C40000;
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap
}

#page-home .pv-featured-clean .pv-weekly-list {
    width: 100%;
    padding-right: 0;
    margin-top: 18px;
    display: grid;
    gap: 10px
}

#page-home .pv-featured-clean .pv-weekly-item {
    padding: 14px 16px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #f0e7e4;
    box-shadow: none
}

#page-home .pv-featured-clean .pv-weekly-item:hover {
    transform: translateY(-1px);
    border-color: #e7d2cc;
    box-shadow: 0 12px 24px rgba(20, 26, 38, .06)
}

#page-home .pv-featured-clean .pv-weekly-main b {
    font-size: 17px
}

#page-home .pv-featured-clean .pv-weekly-main span {
    font-size: 13px
}

#page-home .pv-featured-clean .pv-featured-cta {
    position: static;
    left: auto;
    right: auto;
    bottom: auto;
    margin-top: 16px;
    padding: 18px 20px;
    background: #faf7f6;
    border: 1px solid #f2e8e5;
    box-shadow: none
}

#page-home .pv-featured-clean .pv-featured-btn {
    box-shadow: none
}

#page-home .pv-topic-panel {
    display: grid;
    gap: 18px
}

#page-home .pv-topic-hero-card {
    position: relative;
    display: block;
    height: 280px;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 18px 44px rgba(20, 26, 38, .10)
}

#page-home .pv-topic-hero-card img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover
}

#page-home .pv-topic-hero-mask {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(66, 8, 8, .72) 0%, rgba(77, 10, 10, .38) 50%, rgba(0, 0, 0, .10) 100%)
}

#page-home .pv-topic-hero-content {
    position: absolute;
    left: 32px;
    top: 30px;
    right: 190px;
    color: #fff
}

#page-home .pv-topic-hero-chip {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .18);
    font-size: 14px;
    font-weight: 900;
    color: #fff
}

#page-home .pv-topic-hero-content h3 {
    margin: 14px 0 10px;
    font-size: 36px;
    line-height: 1.22;
    font-weight: 1000
}

#page-home .pv-topic-hero-content p {
    margin: 0;
    font-size: 16px;
    line-height: 1.85;
    color: rgba(255, 255, 255, .90)
}

#page-home .pv-topic-hero-meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 16px
}

#page-home .pv-topic-hero-meta span {
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .16);
    font-size: 13px;
    font-weight: 900;
    color: #fff
}

#page-home .pv-topic-hero-btn {
    position: absolute;
    left: 32px;
    bottom: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    padding: 0 20px;
    border-radius: 999px;
    background: #fff;
    color: #A80000;
    font-size: 16px;
    font-weight: 1000
}

#page-home .pv-topic-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px
}

#page-home .pv-topic-card {
    display: flex;
    gap: 16px;
    align-items: stretch;
    background: #fff;
    border: 1px solid #eef1f4;
    border-radius: 24px;
    padding: 16px;
    box-shadow: 0 16px 40px rgba(20, 26, 38, .08);
    transition: .15s transform, .15s box-shadow, .15s border-color
}

#page-home .pv-topic-card:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .16);
    box-shadow: 0 20px 42px rgba(20, 26, 38, .12)
}

#page-home .pv-topic-card-cover {
    width: 124px;
    flex: 0 0 124px
}

#page-home .pv-topic-card-cover img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 18px
}

#page-home .pv-topic-card-body {
    min-width: 0;
    display: flex;
    flex-direction: column
}

#page-home .pv-topic-card-tag {
    display: inline-flex;
    align-self: flex-start;
    padding: 6px 10px;
    border-radius: 999px;
    background: #fff3ef;
    color: #C40000;
    font-size: 12px;
    font-weight: 900
}

#page-home .pv-topic-card-title {
    margin-top: 12px;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.45;
    color: #222222;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .pv-topic-card-desc {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.75;
    color: #8b94a0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .pv-topic-card-meta {
    margin-top: auto;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    padding-top: 14px
}

#page-home .pv-topic-card-meta span {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: #faf6f5;
    color: #7f8892;
    font-size: 12px;
    font-weight: 800
}

@media (max-width:1120px) {
    #page-home .pv-featured-clean {
        min-height: auto
    }

    #page-home .pv-topic-hero-card {
        height: 240px
    }
}

@media (max-width:820px) {
    #page-home .pv-featured-clean {
        padding: 24px
    }

    #page-home .pv-topic-hero-content {
        left: 24px;
        right: 24px;
        top: 24px
    }

    #page-home .pv-topic-hero-content h3 {
        font-size: 30px
    }

    #page-home .pv-topic-grid {
        grid-template-columns: 1fr
    }

    #page-home .pv-topic-hero-btn {
        left: 24px;
        bottom: 24px
    }
}

@media (max-width:560px) {
    #page-home .pv-featured-clean {
        padding: 20px
    }

    #page-home .pv-topic-card {
        flex-direction: column
    }

    #page-home .pv-topic-card-cover {
        width: 100%;
        flex-basis: auto
    }

    #page-home .pv-topic-card-cover img {
        aspect-ratio: 16/9
    }
}

#page-home {
    padding: 14px 0 34px;
    background: transparent
}

#page-home .pv-home {
    display: grid;
    gap: 24px
}

#page-home .pv-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.62fr) 330px;
    gap: 18px;
    align-items: stretch
}

#page-home .pv-hero-main {
    position: relative;
    overflow: hidden;
    min-height: 404px;
    padding: 28px 28px 22px;
    border-radius: 26px;
    background: linear-gradient(135deg, #C40000 0%, #C40000 46%, #C40000 100%);
    box-shadow: 0 18px 42px rgba(196, 0, 0, .16)
}

#page-home .pv-hero-main:before {
    content: "";
    position: absolute;
    right: -40px;
    top: -60px;
    width: 320px;
    height: 320px;
    background: radial-gradient(circle at 30% 30%, rgba(255, 221, 180, .24), transparent 62%);
    pointer-events: none
}

#page-home .pv-hero-main:after {
    content: "";
    position: absolute;
    left: 180px;
    bottom: -88px;
    width: 380px;
    height: 150px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    transform: rotate(-10deg);
    pointer-events: none
}

#page-home .pv-hero-tag,
#page-home .pv-hero-content,
#page-home .pv-hero-stats {
    position: relative;
    z-index: 1
}

#page-home .pv-hero-tag {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .15px
}

#page-home .pv-hero-title {
    margin: 18px 0 10px;
    max-width: 610px;
    font-size: 34px;
    line-height: 1.14;
    font-weight: 1000;
    letter-spacing: -.6px;
    color: #fff
}

#page-home .pv-hero-desc {
    margin: 0;
    max-width: 660px;
    color: rgba(255, 255, 255, .92);
    font-size: 14px;
    line-height: 1.78
}

#page-home .pv-search {
    position: relative;
    display: flex;
    align-items: center;
    margin-top: 22px;
    width: min(620px, 100%);
    height: 58px;
    padding: 0;
    background: #fff;
    border-radius: 999px;
    box-shadow: 0 16px 34px rgba(120, 20, 20, .18)
}

#page-home .pv-search input {
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
    background: transparent;
    padding: 0 146px 0 20px;
    color: #222222;
    font-size: 14px
}

#page-home .pv-search input::placeholder {
    color: #a0a7b0
}

#page-home .pv-search button {
    position: absolute;
    right: 8px;
    top: 8px;
    height: 42px;
    padding: 0 20px;
    border: none;
    cursor: pointer;
    border-radius: 999px;
    background: linear-gradient(135deg, #C40000, #e75d3e);
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    box-shadow: 0 10px 20px rgba(193, 22, 22, .18)
}

#page-home .pv-hero-hot {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 14px
}

#page-home .pv-hero-pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    line-height: 1
}

#page-home .pv-hero-pill:hover {
    background: rgba(255, 255, 255, .18)
}

#page-home .pv-hero-stats {
    display: flex;
    gap: 26px;
    flex-wrap: wrap;
    margin-top: 20px
}

#page-home .pv-stat-num {
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
    color: #fff
}

#page-home .pv-stat-lab {
    margin-top: 6px;
    color: rgba(255, 255, 255, .82);
    font-size: 11px;
    line-height: 1.4
}

#page-home .pv-featured,
#page-home .pv-featured-clean {
    min-height: 404px;
    padding: 22px;
    background: #fff;
    border-radius: 26px;
    border: 1px solid #efe4e1;
    box-shadow: 0 14px 34px rgba(20, 26, 38, .06)
}

#page-home .pv-featured-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px
}

#page-home .pv-featured-title {
    margin: 0;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 1000;
    color: #222222
}

#page-home .pv-featured-note {
    margin-top: 6px;
    color: #98a1ac;
    font-size: 12px;
    line-height: 1.5
}

#page-home .pv-featured-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff5f2;
    border: 1px solid #f1ddd8;
    color: #C40000;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap
}

#page-home .pv-weekly-list {
    display: grid;
    gap: 10px;
    margin-top: 12px;
    width: 100%;
    padding-right: 0
}

#page-home .pv-weekly-item {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 12px 14px;
    border-radius: 16px;
    background: #faf7f6;
    border: 1px solid #f0e6e2;
    transition: .15s transform, .15s box-shadow, .15s border-color
}

#page-home .pv-weekly-item:hover {
    transform: translateY(-1px);
    border-color: #ead5cf;
    box-shadow: 0 10px 20px rgba(20, 26, 38, .05)
}

#page-home .pv-rank-dot {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #C40000, #C40000);
    color: #fff;
    font-size: 13px;
    font-weight: 1000
}

#page-home .pv-weekly-main {
    min-width: 0
}

#page-home .pv-weekly-main b {
    display: block;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.45;
    color: #222222;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-home .pv-weekly-count {
    color: #9aa2ae;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap
}

#page-home .pv-featured-cta {
    display: none !important
}

#page-home .pv-quick-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 12px
}

#page-home .pv-qcard {
    min-height: 98px;
    padding: 16px 14px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #edf0f2;
    box-shadow: 0 10px 26px rgba(20, 26, 38, .04);
    transition: .15s transform, .15s box-shadow, .15s border-color
}

#page-home .pv-qcard:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .18);
    box-shadow: 0 14px 30px rgba(20, 26, 38, .07)
}

#page-home .pv-qicon {
    width: 34px;
    height: 34px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    margin-bottom: 12px;
    background: linear-gradient(135deg, #fff0ee, #ffe7df);
    color: #ca221f;
    font-size: 15px;
    font-weight: 1000
}

#page-home .pv-qtitle {
    font-size: 15px;
    font-weight: 900;
    color: #222222;
    margin-bottom: 5px
}

#page-home .pv-qsub {
    font-size: 11px;
    color: #96a0aa;
    line-height: 1.55
}

#page-home .pv-section {
    display: grid;
    gap: 14px
}

#page-home .pv-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px
}

#page-home .pv-section-title {
    font-size: 22px;
    line-height: 1.1;
    font-weight: 1000;
    letter-spacing: -.25px;
    color: #222222
}

#page-home .pv-section-sub {
    margin-top: 5px;
    font-size: 12px;
    color: #9ba4ae;
    line-height: 1.65
}

#page-home .pv-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #f0d9d5;
    color: #C40000;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 8px 18px rgba(20, 26, 38, .03)
}

#page-home .pv-card-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px
}

#page-home .pv-card {
    display: block;
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #edf0f2;
    box-shadow: 0 14px 34px rgba(20, 26, 38, .06);
    transition: .15s transform, .15s box-shadow, .15s border-color
}

#page-home .pv-card:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .15);
    box-shadow: 0 18px 38px rgba(20, 26, 38, .10)
}

#page-home .pv-card-cover {
    padding: 10px 10px 0
}

#page-home .pv-card-cover img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 16px
}

#page-home .pv-card-body {
    padding: 14px 14px 16px
}

#page-home .pv-card-title {
    min-height: 40px;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.5;
    color: #222222;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .pv-tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 10px
}

#page-home .pv-tag {
    padding: 4px 8px;
    border-radius: 999px;
    background: #fff4f2;
    color: #C40000;
    font-size: 11px;
    font-weight: 900;
    line-height: 1
}

#page-home .pv-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 12px;
    color: #8a939f;
    font-size: 11px;
    line-height: 1.5
}

#page-home .pv-card-meta strong {
    color: #C40000;
    font-size: 14px
}

#page-home .pv-content-row {
    display: grid;
    grid-template-columns: minmax(0, 2fr) 310px;
    gap: 18px;
    align-items: start
}

#page-home .pv-topic-panel {
    display: grid;
    gap: 14px
}

#page-home .pv-topic-hero {
    display: block
}

#page-home .pv-topic-list-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px
}

#page-home .pv-topic-list-card {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 12px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #edf0f2;
    box-shadow: 0 12px 30px rgba(20, 26, 38, .06);
    transition: .15s transform, .15s box-shadow, .15s border-color
}

#page-home .pv-topic-list-card:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .16);
    box-shadow: 0 16px 34px rgba(20, 26, 38, .09)
}

#page-home .pv-topic-list-cover {
    width: 86px;
    flex: 0 0 86px
}

#page-home .pv-topic-list-cover img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 12px
}

#page-home .pv-topic-list-body {
    min-width: 0;
    display: flex;
    flex-direction: column
}

#page-home .pv-topic-list-badge {
    display: inline-flex;
    align-self: flex-start;
    padding: 4px 8px;
    border-radius: 999px;
    background: #fff3ef;
    color: #C40000;
    font-size: 11px;
    font-weight: 900;
    line-height: 1
}

#page-home .pv-topic-list-title {
    margin-top: 10px;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.5;
    color: #222222;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .pv-topic-list-desc {
    margin-top: 7px;
    font-size: 12px;
    line-height: 1.7;
    color: #8d96a2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .pv-topic-list-meta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: 10px
}

#page-home .pv-topic-list-meta span {
    display: inline-flex;
    align-items: center;
    padding: 5px 8px;
    border-radius: 999px;
    background: #faf6f5;
    color: #7f8892;
    font-size: 11px;
    font-weight: 800;
    line-height: 1
}

#page-home .pv-topic-grid:empty {
    display: none
}

#page-home .pv-side-stack {
    display: grid;
    gap: 16px
}

#page-home .pv-list-card {
    background: #fff;
    border-radius: 22px;
    padding: 18px;
    border: 1px solid #edf0f2;
    box-shadow: 0 14px 32px rgba(20, 26, 38, .06)
}

#page-home .pv-list-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px
}

#page-home .pv-list-head h4 {
    margin: 0;
    font-size: 20px;
    line-height: 1.2;
    color: #222222;
    font-weight: 1000
}

#page-home .pv-rank-list {
    display: grid;
    gap: 10px
}

#page-home .pv-rank-item {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 11px 12px;
    border-radius: 16px;
    background: #faf7f6;
    border: 1px solid #f1e5e2
}

#page-home .pv-rank-num {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ece8e7;
    color: #847b79;
    font-size: 12px;
    font-weight: 1000
}

#page-home .pv-rank-item.top .pv-rank-num {
    background: linear-gradient(135deg, #C40000, #C40000);
    color: #fff
}

#page-home .pv-rank-name {
    font-size: 13px;
    font-weight: 900;
    line-height: 1.5;
    color: #222222;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-home .pv-rank-count {
    color: #96a0ab;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap
}

#page-home .pv-search-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

#page-home .pv-search-tags a {
    padding: 7px 10px;
    border-radius: 999px;
    background: #fff6f4;
    border: 1px solid #f1ddd8;
    color: #C40000;
    font-size: 11px;
    font-weight: 900;
    line-height: 1
}

#page-home .pv-vip-mini {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    padding: 20px;
    color: #fff;
    background: linear-gradient(135deg, #c31515, #f1653f);
    box-shadow: 0 18px 38px rgba(200, 30, 30, .20)
}

#page-home .pv-vip-mini:before {
    content: "";
    position: absolute;
    right: -40px;
    top: -36px;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .22), rgba(255, 255, 255, 0) 68%);
    pointer-events: none
}

#page-home .pv-vip-mini-badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .18);
    font-size: 11px;
    font-weight: 900
}

#page-home .pv-vip-mini h5 {
    position: relative;
    z-index: 1;
    margin: 12px 0 0;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 1000
}

#page-home .pv-vip-mini p {
    position: relative;
    z-index: 1;
    margin: 10px 0 14px;
    color: rgba(255, 255, 255, .88);
    font-size: 12px;
    line-height: 1.75
}

#page-home .pv-vip-mini-points {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 8px;
    margin-bottom: 14px
}

#page-home .pv-vip-mini-points span {
    font-size: 12px;
    line-height: 1.5;
    color: rgba(255, 255, 255, .92)
}

#page-home .pv-vip-mini-btn {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: #fff;
    color: #A80000;
    font-size: 13px;
    font-weight: 1000
}

#page-home .pv-scene-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px
}

#page-home .pv-scene {
    position: relative;
    overflow: hidden;
    height: 120px;
    padding: 16px 18px;
    border-radius: 20px;
    background: linear-gradient(135deg, #fff 0%, #fff6f5 100%);
    border: 1px solid #f0eeec;
    box-shadow: 0 12px 30px rgba(20, 26, 38, .05)
}

#page-home .pv-scene:before {
    content: "";
    position: absolute;
    right: -16px;
    top: -18px;
    width: 116px;
    height: 116px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 215, 170, .45), rgba(255, 255, 255, 0) 68%);
    pointer-events: none
}

#page-home .pv-scene-k {
    font-size: 11px;
    color: #C40000;
    font-weight: 900;
    line-height: 1
}

#page-home .pv-scene h5 {
    margin: 12px 0 6px;
    font-size: 16px;
    line-height: 1.3;
    color: #222222;
    font-weight: 1000
}

#page-home .pv-scene p {
    margin: 0;
    color: #8b94a0;
    font-size: 12px;
    line-height: 1.65
}

#page-home .pv-vip-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    padding: 24px 28px;
    border-radius: 24px;
    background: linear-gradient(135deg, #A80000 0%, #C40000 42%, #ef6a42 100%);
    box-shadow: 0 20px 44px rgba(197, 30, 30, .18)
}

#page-home .pv-vip-strip h3 {
    margin: 0;
    color: #fff;
    font-size: 24px;
    line-height: 1.18;
    font-weight: 1000
}

#page-home .pv-vip-strip p {
    margin: 10px 0 0;
    color: rgba(255, 255, 255, .86);
    font-size: 12px;
    line-height: 1.75
}

#page-home .pv-benefits {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    color: #fff
}

#page-home .pv-benefits div {
    font-size: 12px;
    line-height: 1.7;
    color: rgba(255, 255, 255, .92)
}

#page-home .pv-benefits strong {
    display: block;
    font-size: 14px;
    margin-bottom: 4px;
    color: #fff
}

#page-home .pv-vip-strip-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #fff;
    color: #A80000;
    font-size: 14px;
    font-weight: 1000;
    white-space: nowrap;
    box-shadow: 0 12px 22px rgba(120, 0, 0, .12)
}

@media (max-width:1440px) {
    #page-home .pv-quick-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    #page-home .pv-card-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    #page-home .pv-hero {
        grid-template-columns: minmax(0, 1fr) 320px
    }
}

@media (max-width:1120px) {

    #page-home .pv-hero,
    #page-home .pv-content-row {
        grid-template-columns: 1fr
    }

    #page-home .pv-card-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    #page-home .pv-scene-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .pv-topic-list-grid {
        grid-template-columns: 1fr
    }
}

@media (max-width:820px) {
    #page-home .pv-hero-main {
        padding: 24px 20px 20px;
        min-height: auto
    }

    #page-home .pv-featured,
    #page-home .pv-featured-clean {
        min-height: auto;
        padding: 20px
    }

    #page-home .pv-hero-title {
        font-size: 28px
    }

    #page-home .pv-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .pv-quick-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .pv-search {
        width: 100%
    }

    #page-home .pv-vip-strip {
        padding: 22px 20px
    }
}

@media (max-width:560px) {

    #page-home .pv-card-grid,
    #page-home .pv-scene-grid {
        grid-template-columns: 1fr
    }

    #page-home .pv-hero-title {
        font-size: 24px
    }
}

body {
    background: radial-gradient(1100px 640px at 8% 0%, rgba(196, 0, 0, .05), transparent 60%), radial-gradient(1000px 620px at 96% 8%, rgba(245, 208, 111, .07), transparent 58%), #f7f1ea
}

.wrap {
    max-width: 1328px;
    padding: 0 18px
}

.siteHeader {
    box-shadow: 0 10px 28px rgba(167, 20, 20, .18)
}

.topbar {
    padding: 8px 0;
    gap: 10px
}

.brand {
    font-size: 15px
}

.brandMark {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    font-size: 14px
}

.nav {
    gap: 6px
}

.navLink {
    padding: 5px 8px;
    font-size: 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14)
}

.search {
    min-width: 260px;
    max-width: 320px
}

.searchInput {
    height: 36px;
    padding: 0 14px;
    font-size: 12px
}

.searchBtn {
    height: 36px;
    padding: 0 12px;
    border-radius: 999px
}

.searchBtn span {
    font-size: 12px
}

.btn.red {
    padding: 7px 11px;
    font-size: 12px
}

.page {
    padding: 10px 0 24px
}

.breadcrumb {
    margin: 10px 0 8px;
    font-size: 11px
}

.panel {
    border: 1px solid #e7ded5;
    border-radius: 18px;
    box-shadow: 0 8px 24px rgba(24, 28, 34, .05)
}

.panelHd {
    padding: 16px 16px 12px
}

.panelBd {
    padding: 14px 16px 16px
}

.panelHd h2 {
    font-size: 18px
}

.muted {
    font-size: 11px;
    color: #968f89;
    line-height: 1.7
}

.chip {
    font-size: 11px;
    padding: 6px 10px;
    background: #faf6f3
}

.select {
    min-width: 140px;
    padding: 9px 12px;
    font-size: 12px
}

.pager {
    margin-top: 16px
}

.pageBtn {
    min-width: 26px;
    height: 26px;
    padding: 0 8px;
    border-radius: 10px;
    font-size: 11px;
    box-shadow: none
}

.pageBtn.active {
    box-shadow: none
}

footer {
    margin-top: 16px
}

.footerInner {
    padding: 20px 0
}

.footerTitle {
    font-size: 15px
}

.footerLinks a,
.footerNote,
.copyright {
    font-size: 11px
}

#page-search .resourceGrid5,
#page-channel .resourceGrid5,
#page-special .resourceGrid5,
#page-specials .resourceGrid5,
#page-tag .resourceGrid5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px
}

#page-search .resourceCard,
#page-channel .resourceCard,
#page-special .resourceCard,
#page-specials .resourceCard,
#page-tag .resourceCard {
    border-radius: 12px;
    border: 1px solid #e8e3df;
    background: #fff;
    box-shadow: none;
    overflow: hidden
}

#page-search .resourceCard .thumb,
#page-channel .resourceCard .thumb,
#page-special .resourceCard .thumb,
#page-specials .resourceCard .thumb,
#page-tag .resourceCard .thumb {
    aspect-ratio: 3 / 4;
    height: auto;
    border-bottom: none;
    background: #fff;
    padding: 0
}

#page-search .resourceCard .thumbImg,
#page-channel .resourceCard .thumbImg,
#page-special .resourceCard .thumbImg,
#page-specials .resourceCard .thumbImg,
#page-tag .resourceCard .thumbImg {
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block
}

#page-search .resourceCard .thumbBadgeRow,
#page-search .resourceCard .thumbShade,
#page-search .resourceCard .thumbCaption,
#page-channel .resourceCard .thumbBadgeRow,
#page-channel .resourceCard .thumbShade,
#page-channel .resourceCard .thumbCaption,
#page-special .resourceCard .thumbBadgeRow,
#page-special .resourceCard .thumbShade,
#page-special .resourceCard .thumbCaption,
#page-specials .resourceCard .thumbBadgeRow,
#page-specials .resourceCard .thumbShade,
#page-specials .resourceCard .thumbCaption,
#page-tag .resourceCard .thumbBadgeRow,
#page-tag .resourceCard .thumbShade,
#page-tag .resourceCard .thumbCaption {
    display: none !important
}

#page-search .resourceCard .mediaTitle,
#page-channel .resourceCard .mediaTitle,
#page-special .resourceCard .mediaTitle,
#page-specials .resourceCard .mediaTitle,
#page-tag .resourceCard .mediaTitle {
    padding: 7px 6px 8px;
    min-height: auto;
    font-size: 11px;
    line-height: 1.45;
    text-align: center;
    font-weight: 600;
    color: #7b726a
}

#page-search .resourceCard .metaRow,
#page-channel .resourceCard .metaRow,
#page-special .resourceCard .metaRow,
#page-specials .resourceCard .metaRow,
#page-tag .resourceCard .metaRow {
    display: none
}

#page-search .panelHd h2,
#page-channel .panelHd h2,
#page-special .panelHd h2 {
    font-size: 18px
}

#page-special .listItem {
    padding: 12px 14px;
    border-radius: 14px
}

#page-special .listTitle {
    font-size: 13px
}

#page-special .listMeta {
    font-size: 11px
}

#page-special .dockFoot .btn {
    padding: 8px 12px;
    font-size: 12px
}

#page-special .specialRich {
    font-size: 12px;
    color: #6d645c;
    line-height: 1.9
}

#page-special .specialRich a,
#page-special .listMeta a,
#page-special .quickLink {
    color: #A80000;
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px solid rgba(168, 0, 0, .18)
}

#page-special .specialRich a:hover,
#page-special .listMeta a:hover,
#page-special .quickLink:hover {
    color: #b42020;
    border-bottom-color: rgba(180, 32, 32, .32)
}

#page-special .specialQuickLinks {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px
}

#page-special .quickLink {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 999px;
    background: #faf5f1;
    border: 1px solid #eadfd6;
    box-shadow: 0 2px 8px rgba(24, 28, 34, .03)
}

#page-special .quickLink b {
    font-size: 12px
}

#page-special .quickLink span {
    font-size: 11px;
    color: #8e867e;
    font-weight: 600
}

#page-special .listMeta {
    color: #7b746d;
    line-height: 1.85
}

#page-special .panel+.panel,
#page-search .panel+.panel,
#page-channel .panel+.panel {
    margin-top: 14px
}

#page-specials .panel,
#page-special .panel {
    overflow: visible
}

.specialLibraryHero {
    position: relative;
    overflow: hidden !important;
    padding: 0;
    background: linear-gradient(135deg, #fff 0%, #fff7f2 58%, #fff0e5 100%);
    border-color: #f0dfd6
}

.specialLibraryHero:before,
.topicHero:before {
    content: "";
    position: absolute;
    right: -100px;
    top: -120px;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(196, 0, 0, .12), transparent 62%);
    pointer-events: none
}

.specialLibraryInner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 22px;
    padding: 28px;
    align-items: stretch
}

.topicEyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(196, 0, 0, .08);
    border: 1px solid rgba(196, 0, 0, .13);
    color: #A80000;
    font-size: 12px;
    font-weight: 1000
}

.specialLibraryTitle,
#page-special .topicTitle {
    margin: 14px 0 10px;
    font-size: 34px;
    line-height: 1.16;
    font-weight: 1000;
    letter-spacing: -.4px;
    color: #222222
}

.specialLibraryDesc,
.topicSubtitle {
    margin: 0;
    color: #6f6a64;
    font-size: 14px;
    line-height: 1.9;
    max-width: 840px
}

.topicMetaRow {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 14px
}

.topicMetaRow .chip,
.topicMetaRow .topicMetaChip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border-radius: 999px;
    border: 1px solid #eadbd2;
    background: #fffaf7;
    color: #6f6259;
    font-size: 12px;
    font-weight: 900
}

.topicStats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px
}

.topicStat {
    border: 1px solid #efdcd3;
    border-radius: 16px;
    background: #fff;
    padding: 14px;
    box-shadow: 0 10px 22px rgba(20, 26, 38, .04)
}

.topicStat b {
    display: block;
    font-size: 24px;
    line-height: 1;
    color: #a71919;
    font-weight: 1000
}

.topicStat span {
    display: block;
    margin-top: 8px;
    font-size: 12px;
    color: #82786f;
    line-height: 1.45;
    font-weight: 800
}

#page-specials .specialsCategoryNav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px
}

.topicPillGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px
}

.topicLinkCard {
    display: block;
    padding: 14px;
    min-height: 92px;
    border-radius: 16px;
    background: linear-gradient(180deg, #fff, #fffaf8);
    border: 1px solid #eadfd6;
    box-shadow: 0 8px 18px rgba(20, 26, 38, .035);
    transition: .15s transform, .15s border-color, .15s box-shadow
}

.topicLinkCard:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .22);
    box-shadow: 0 14px 28px rgba(20, 26, 38, .07)
}

.topicLinkCard b {
    display: block;
    color: #A80000;
    font-size: 14px;
    font-weight: 1000;
    line-height: 1.35
}

.topicLinkCard span {
    display: block;
    margin-top: 7px;
    color: #80766e;
    font-size: 12px;
    line-height: 1.65;
    font-weight: 700
}

.topicHero {
    position: relative;
    overflow: hidden !important;
    background: linear-gradient(135deg, #fff 0%, #fff8f4 58%, #fff0e8 100%);
    border-color: #f0dfd6
}

.topicHeroInner {
    position: relative;
    z-index: 1;
    padding: 28px
}

.topicHeroTop {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 22px;
    align-items: start
}

.topicScoreCard {
    border-radius: 18px;
    padding: 16px;
    background: linear-gradient(135deg, #C40000, #dd5336);
    color: #fff;
    box-shadow: 0 16px 34px rgba(196, 0, 0, .18)
}

.topicScoreCard .scoreLabel {
    font-size: 12px;
    font-weight: 900;
    opacity: .9
}

.topicScoreCard .scoreNum {
    margin-top: 8px;
    font-size: 34px;
    line-height: 1;
    font-weight: 1000
}

.topicScoreCard .scoreDesc {
    margin-top: 8px;
    font-size: 12px;
    line-height: 1.7;
    opacity: .9
}

.topicIntroGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 16px;
    margin-top: 18px;
    align-items: stretch
}

.topicIntroText,
.topicQuickPanel,
.topicTextBlock,
.topicSeoBox {
    border: 1px solid #eadfd6;
    border-radius: 18px;
    background: #fff;
    padding: 16px;
    box-shadow: 0 10px 22px rgba(20, 26, 38, .035)
}

.topicIntroText p,
.topicTextBlock p {
    margin: 0 0 10px;
    color: #5f5851;
    font-size: 13px;
    line-height: 1.95
}

.topicIntroText p:last-child,
.topicTextBlock p:last-child {
    margin-bottom: 0
}

.topicQuickPanel h3 {
    margin: 0 0 12px;
    font-size: 16px;
    color: #A80000
}

#page-special .specialQuickLinks {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    margin-top: 0
}

#page-special .quickLink {
    display: block;
    padding: 10px 12px;
    border-radius: 14px;
    background: #fff9f6;
    border: 1px solid #eadfd6;
    box-shadow: none
}

#page-special .quickLink b {
    display: block;
    font-size: 13px;
    color: #A80000
}

#page-special .quickLink span {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: #7b746d;
    line-height: 1.5
}

#page-special .topicStats {
    margin-top: 16px
}

.topicSectionHeadNote {
    font-size: 12px;
    color: #968f89;
    line-height: 1.7;
    font-weight: 700
}

#page-special .topicResourceGrid.resourceGrid5,
#page-specials .topicSpecialGrid.resourceGrid5 {
    gap: 16px
}

#page-special .topicResourceGrid .resourceCard .metaRow,
#page-specials .topicSpecialGrid .resourceCard .metaRow {
    display: block !important;
    padding: 0 10px 11px;
    font-size: 11px;
    color: #918880;
    line-height: 1.55;
    text-align: center
}

#page-special .topicResourceGrid .resourceCard .mediaTitle,
#page-specials .topicSpecialGrid .resourceCard .mediaTitle {
    font-size: 12px;
    color: #514941;
    font-weight: 800;
    min-height: 44px
}

.topicInternalGrid {
    display: grid;
    grid-template-columns: 1fr 1fr 1.4fr;
    gap: 14px
}

.topicInternalCard {
    border: 1px solid #eadfd6;
    background: #fff;
    border-radius: 18px;
    padding: 16px;
    box-shadow: 0 10px 22px rgba(20, 26, 38, .035)
}

.topicInternalCard h3 {
    margin: 0 0 12px;
    font-size: 16px;
    color: #A80000
}

.topicInlineLinks {
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.topicInlineLinks a {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    border-radius: 999px;
    background: #fff8f5;
    border: 1px solid #eadfd6;
    color: #7c211a;
    font-size: 12px;
    font-weight: 900
}

.topicResourceLinks {
    display: grid;
    gap: 8px
}

.topicResourceLinks a {
    display: block;
    padding: 9px 10px;
    border-radius: 12px;
    background: #fff8f5;
    border: 1px solid #eadfd6;
    color: #3d3530;
    font-size: 12px;
    line-height: 1.55;
    font-weight: 800
}

.topicSeoBox {
    font-size: 12px;
    line-height: 1.8;
    color: #625951
}

.topicSeoBox code {
    display: inline-block;
    max-width: 100%;
    overflow-wrap: anywhere;
    padding: 2px 6px;
    border-radius: 7px;
    background: #fff6f2;
    border: 1px solid #eadfd6;
    color: #A80000;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    font-size: 11px
}

.topicSeoGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 10px
}

.topicSeoItem {
    padding: 10px;
    border-radius: 12px;
    border: 1px solid #eadfd6;
    background: #fffaf8
}

.topicSeoItem b {
    display: block;
    color: #A80000;
    margin-bottom: 4px
}

@media (max-width:1120px) {

    .specialLibraryInner,
    .topicHeroTop,
    .topicIntroGrid {
        grid-template-columns: 1fr
    }

    .topicInternalGrid {
        grid-template-columns: 1fr
    }

    .topicStats {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .topicPillGrid,
    #page-specials .specialsCategoryNav {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media (max-width:560px) {

    .specialLibraryInner,
    .topicHeroInner {
        padding: 20px
    }

    .specialLibraryTitle,
    #page-special .topicTitle {
        font-size: 26px
    }

    .topicStats,
    .topicPillGrid,
    #page-specials .specialsCategoryNav,
    .topicSeoGrid {
        grid-template-columns: 1fr
    }
}

#page-home {
    padding: 12px 0 34px
}

#page-home .home-ui {
    display: grid;
    gap: 22px
}

#page-home .home-hero {
    position: relative;
    overflow: hidden;
    min-height: 300px;
    padding: 18px 22px 20px;
    border-radius: 26px;
    background: linear-gradient(135deg, #d82517 0%, #e45538 48%, #f08e5f 100%);
    box-shadow: 0 18px 42px rgba(196, 0, 0, .16)
}

#page-home .home-hero:before {
    content: "";
    position: absolute;
    inset: auto 130px -78px auto;
    width: 360px;
    height: 150px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    transform: rotate(-12deg)
}

#page-home .home-hero:after {
    content: "";
    position: absolute;
    right: -56px;
    top: -40px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 228, 185, .22), rgba(255, 255, 255, 0) 68%)
}

#page-home .home-hero__inner {
    position: relative;
    z-index: 1
}

#page-home .home-hero__label {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 11px;
    font-weight: 900
}

#page-home .home-hero__title {
    margin: 16px 0 8px;
    max-width: 640px;
    color: #fff;
    font-size: 31px;
    line-height: 1.08;
    font-weight: 1000;
    letter-spacing: -.6px
}

#page-home .home-hero__desc {
    margin: 0;
    max-width: 760px;
    color: rgba(255, 255, 255, .88);
    font-size: 12px;
    line-height: 1.8
}

#page-home .home-hero__form {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    max-width: 690px;
    background: #fff;
    border-radius: 999px;
    padding: 6px;
    box-shadow: 0 14px 30px rgba(120, 20, 20, .16)
}

#page-home .home-hero__input {
    flex: 1;
    height: 42px;
    border: none;
    outline: none;
    background: transparent;
    padding: 0 16px;
    font-size: 13px
}

#page-home .home-hero__btn {
    height: 42px;
    padding: 0 18px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, #C40000, #e95d3e);
    color: #fff;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 8px 18px rgba(193, 22, 22, .18)
}

#page-home .home-hero__terms {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px
}

#page-home .home-hero__pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    line-height: 1
}

#page-home .home-hero__stats {
    display: flex;
    gap: 28px;
    flex-wrap: wrap;
    margin-top: 18px
}

#page-home .home-stat__num {
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
    color: #fff
}

#page-home .home-stat__label {
    margin-top: 6px;
    font-size: 11px;
    color: rgba(255, 255, 255, .82)
}

#page-home .home-section {
    display: grid;
    gap: 12px
}

#page-home .home-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px
}

#page-home .home-section__title {
    font-size: 18px;
    line-height: 1.1;
    font-weight: 1000;
    color: #201d1c
}

#page-home .home-section__sub {
    margin-top: 4px;
    font-size: 11px;
    color: #9a938c;
    line-height: 1.65
}

#page-home .home-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #f0d9d5;
    color: #C40000;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 8px 18px rgba(20, 26, 38, .03)
}

#page-home .home-scene-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px
}

#page-home .home-scene-card {
    position: relative;
    overflow: hidden;
    min-height: 98px;
    padding: 16px 18px;
    border-radius: 18px;
    background: linear-gradient(180deg, #fff 0%, #fff8f5 100%);
    border: 1px solid #eee5dd;
    box-shadow: 0 10px 22px rgba(24, 28, 34, .04)
}

#page-home .home-scene-card:after {
    content: "";
    position: absolute;
    right: -18px;
    top: -22px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 217, 178, .42), rgba(255, 255, 255, 0) 68%)
}

#page-home .home-scene-card small {
    display: block;
    font-size: 11px;
    color: #C40000;
    font-weight: 900
}

#page-home .home-scene-card h3 {
    margin: 12px 0 6px;
    font-size: 16px;
    line-height: 1.3;
    color: #222222;
    font-weight: 1000
}

#page-home .home-scene-card p {
    margin: 0;
    font-size: 11px;
    line-height: 1.7;
    color: #857d76
}

#page-home .home-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px
}

#page-home .home-res {
    display: block;
    background: #fff;
    border: 1px solid #ebe3dc;
    border-radius: 18px;
    padding: 10px;
    box-shadow: 0 10px 22px rgba(24, 28, 34, .05)
}

#page-home .home-res__cover img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 14px
}

#page-home .home-res__title {
    margin-top: 10px;
    min-height: 38px;
    font-size: 13px;
    line-height: 1.5;
    color: #222222;
    font-weight: 800
}

#page-home .home-res__tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 8px
}

#page-home .home-res__tags span {
    padding: 4px 7px;
    border-radius: 999px;
    background: #fff4f1;
    color: #c42822;
    font-size: 10px;
    font-weight: 800;
    line-height: 1
}

#page-home .home-res__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
    color: #948d86;
    font-size: 10px
}

#page-home .home-res__meta strong {
    color: #d02e26;
    font-size: 12px
}

#page-home .home-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 272px;
    gap: 18px;
    align-items: start
}

#page-home .home-topic-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px
}

#page-home .home-topic {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    background: #fff;
    border: 1px solid #ece4dc;
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 10px 22px rgba(24, 28, 34, .05)
}

#page-home .home-topic__cover {
    width: 82px;
    flex: 0 0 82px
}

#page-home .home-topic__cover img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 12px
}

#page-home .home-topic__body {
    min-width: 0;
    display: flex;
    flex-direction: column
}

#page-home .home-topic__badge {
    display: inline-flex;
    align-self: flex-start;
    padding: 4px 7px;
    border-radius: 999px;
    background: #fff4f1;
    color: #cf2a23;
    font-size: 10px;
    font-weight: 800;
    line-height: 1
}

#page-home .home-topic__title {
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.45;
    color: #222222;
    font-weight: 800;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .home-topic__desc {
    margin-top: 6px;
    font-size: 11px;
    line-height: 1.65;
    color: #8f887f;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

#page-home .home-topic__meta {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: 10px
}

#page-home .home-topic__meta span {
    padding: 4px 7px;
    border-radius: 999px;
    background: #faf5f2;
    color: #8a8179;
    font-size: 10px;
    font-weight: 800;
    line-height: 1
}

#page-home .home-side {
    display: grid;
    gap: 14px
}

#page-home .home-sidecard {
    background: #fff;
    border: 1px solid #ece4dc;
    border-radius: 18px;
    padding: 16px;
    box-shadow: 0 10px 22px rgba(24, 28, 34, .05)
}

#page-home .home-sidecard__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px
}

#page-home .home-sidecard__head h4 {
    margin: 0;
    font-size: 18px;
    line-height: 1.2;
    color: #222222
}

#page-home .home-rank {
    display: grid;
    gap: 8px
}

#page-home .home-rank a {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 10px 10px;
    border-radius: 14px;
    background: #faf6f3;
    border: 1px solid #efe7e1
}

#page-home .home-rank__num {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ece7e5;
    color: #857c75;
    font-size: 11px;
    font-weight: 1000
}

#page-home .home-rank a.top .home-rank__num {
    background: linear-gradient(135deg, #C40000, #C40000);
    color: #fff
}

#page-home .home-rank__name {
    font-size: 12px;
    line-height: 1.45;
    color: #222222;
    font-weight: 800;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-home .home-rank__count {
    font-size: 10px;
    color: #918a84;
    white-space: nowrap
}

#page-home .home-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

#page-home .home-tags a {
    padding: 6px 9px;
    border-radius: 999px;
    border: 1px solid #f1dfd9;
    background: #fff6f3;
    color: #cf2a23;
    font-size: 10px;
    font-weight: 800;
    line-height: 1
}

#page-home .home-vip {
    position: relative;
    overflow: hidden;
    padding: 16px;
    border-radius: 18px;
    background: linear-gradient(135deg, #bf1816, #ef6a42);
    color: #fff;
    box-shadow: 0 16px 36px rgba(197, 30, 30, .18)
}

#page-home .home-vip:before {
    content: "";
    position: absolute;
    right: -34px;
    top: -26px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .22), rgba(255, 255, 255, 0) 68%)
}

#page-home .home-vip__badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .15);
    border: 1px solid rgba(255, 255, 255, .18);
    font-size: 10px;
    font-weight: 900
}

#page-home .home-vip h4 {
    position: relative;
    z-index: 1;
    margin: 10px 0 0;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 1000
}

#page-home .home-vip p {
    position: relative;
    z-index: 1;
    margin: 8px 0 12px;
    font-size: 11px;
    line-height: 1.7;
    color: rgba(255, 255, 255, .88)
}

#page-home .home-vip ul {
    position: relative;
    z-index: 1;
    margin: 0 0 12px;
    padding-left: 16px;
    font-size: 11px;
    line-height: 1.7;
    color: rgba(255, 255, 255, .92)
}

#page-home .home-vip a {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: #fff;
    color: #ba1816;
    font-size: 12px;
    font-weight: 900
}

#page-home .home-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    flex-wrap: wrap;
    padding: 24px 26px;
    border-radius: 24px;
    background: linear-gradient(135deg, #A80000 0%, #C40000 42%, #ef6a42 100%);
    box-shadow: 0 20px 44px rgba(197, 30, 30, .18)
}

#page-home .home-cta__copy h3 {
    margin: 0;
    color: #fff;
    font-size: 22px;
    line-height: 1.18;
    font-weight: 1000
}

#page-home .home-cta__copy p {
    margin: 8px 0 0;
    color: rgba(255, 255, 255, .86);
    font-size: 11px;
    line-height: 1.75
}

#page-home .home-benefits {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    color: #fff
}

#page-home .home-benefits div {
    font-size: 11px;
    line-height: 1.7;
    color: rgba(255, 255, 255, .92)
}

#page-home .home-benefits strong {
    display: block;
    margin-bottom: 4px;
    font-size: 14px;
    color: #fff
}

#page-home .home-cta a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    background: #fff;
    color: #A80000;
    font-size: 13px;
    font-weight: 1000;
    white-space: nowrap;
    box-shadow: 0 10px 20px rgba(120, 0, 0, .12)
}

@media (max-width:1200px) {
    .wrap {
        max-width: 1180px
    }

    #page-home .home-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    #page-home .home-main {
        grid-template-columns: 1fr
    }

    #page-home .home-side {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

@media (max-width:900px) {
    .nav {
        display: none
    }

    #page-home .home-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .home-topic-list {
        grid-template-columns: 1fr
    }

    #page-home .home-scene-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-search .resourceGrid5,
    #page-channel .resourceGrid5,
    #page-special .resourceGrid5,
    #page-specials .resourceGrid5,
    #page-tag .resourceGrid5 {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    #page-home .home-side {
        grid-template-columns: 1fr
    }
}

@media (max-width:640px) {
    .wrap {
        padding: 0 14px
    }

    #page-home .home-hero {
        padding: 18px 16px 18px
    }

    #page-home .home-hero__title {
        font-size: 24px
    }

    #page-home .home-hero__form {
        flex-direction: column;
        align-items: stretch;
        border-radius: 18px
    }

    #page-home .home-hero__btn {
        width: 100%
    }

    #page-home .home-grid,
    #page-home .home-scene-grid {
        grid-template-columns: 1fr
    }

    #page-search .resourceGrid5,
    #page-channel .resourceGrid5,
    #page-special .resourceGrid5,
    #page-specials .resourceGrid5,
    #page-tag .resourceGrid5 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

#page-home .home-res__tags,
#page-home .pv-tags {
    display: none !important
}

#page-home .home-res__meta {
    margin-top: 12px
}

#page-resource {
    padding: 12px 0 26px
}

#page-resource .resourceShell {
    max-width: 1118px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #e9e1d7;
    border-radius: 18px;
    box-shadow: 0 10px 26px rgba(24, 28, 34, .05);
    padding: 14px 16px 18px
}

#page-resource .resourceTopBar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid #eee7de;
    margin-bottom: 14px
}

#page-resource .resourceTitleBox {
    min-width: 0
}

#page-resource .resourceTitleBox h1 {
    margin: 0;
    font-size: 21px;
    line-height: 1.4;
    color: #222222;
    font-weight: 900;
    word-break: break-word
}

#page-resource .resourceTopMeta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
    flex: 0 0 auto
}

#page-resource .resourceMetaPill {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: #FBF7F4;
    border: 1px solid #ece3da;
    color: #867d74;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap
}

#page-resource .resourceLayout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 238px;
    gap: 14px;
    align-items: start
}

#page-resource .resourceMainCol,
#page-resource .resourceSideCol {
    min-width: 0
}

#page-resource .resourcePreviewCard {
    border: 1px solid #ebe4dc;
    border-radius: 16px;
    padding: 10px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(24, 28, 34, .03)
}

#page-resource .resourcePreviewHeroWrap {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    background: #f6f1eb;
    border: 1px solid #efe8df
}

#page-resource .resourcePreviewCard img {
    width: 100%;
    display: block;
    object-fit: cover;
    background: #f6f1eb
}

#page-resource #resHeroImage {
    aspect-ratio: 16/10
}

#page-resource .resourcePreviewBadge {
    position: absolute;
    left: 16px;
    top: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    height: 36px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .96);
    color: #C40000;
    font-size: 18px;
    font-weight: 1000;
    box-shadow: 0 12px 26px rgba(40, 20, 20, .14)
}

#page-resource .resourcePreviewGrid {
    margin-top: 10px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px
}

#page-resource .resourcePreviewThumb {
    border: 1px solid #efe8df;
    border-radius: 10px;
    overflow: hidden;
    background: #fbf8f5;
    box-shadow: 0 6px 16px rgba(24, 28, 34, .03)
}

#page-resource .resourcePreviewThumb img {
    aspect-ratio: 16/10
}

#page-resource .resourceArticle {
    margin-top: 8px;
    border: 1px solid #efe8df;
    border-radius: 14px;
    background: #fff;
    padding: 12px 14px
}

#page-resource .resourceArticleIntro {
    margin: 0 0 12px;
    color: #655d56;
    font-size: 12px;
    line-height: 1.9
}

#page-resource .resourceFaqList {
    display: grid;
    gap: 14px
}

#page-resource .resourceFaqItem {
    padding-top: 2px
}

#page-resource .resourceFaqQ {
    margin: 0;
    color: #222222;
    font-size: 13px;
    line-height: 1.7;
    font-weight: 900
}

#page-resource .resourceFaqA {
    margin: 4px 0 0;
    color: #655d56;
    font-size: 12px;
    line-height: 1.9
}

#page-resource .resourceArticleBlock+.resourceArticleBlock {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #f3eee9
}

#page-resource .resourceArticleBlock h3 {
    margin: 0 0 8px;
    font-size: 13px;
    line-height: 1.4;
    color: #222222;
    font-weight: 900
}

#page-resource .resourceArticleBlock p,
#page-resource .resourceArticleBlock li {
    margin: 0;
    color: #655d56;
    font-size: 12px;
    line-height: 1.9
}

#page-resource .resourceArticleBlock p+p {
    margin-top: 8px
}

#page-resource .resourceArticleBlock ul {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 6px
}

#page-resource .resourcePrevNext {
    margin-top: 10px;
    border: 1px solid #efe8df;
    border-radius: 12px;
    background: #FBF7F4;
    padding: 9px 12px
}

#page-resource .resourcePrevNextRow {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #8c847c;
    font-size: 12px;
    line-height: 1.7
}

#page-resource .resourcePrevNextRow+.resourcePrevNextRow {
    margin-top: 4px
}

#page-resource .resourcePrevNextRow span {
    white-space: nowrap
}

#page-resource .resourcePrevNextRow a {
    color: #7a746d;
    transition: color .15s ease
}

#page-resource .resourcePrevNextRow a:hover {
    color: #C40000
}

#page-resource .resourcePrevNextRow em {
    color: #b3aca4;
    font-style: normal
}

#page-resource .resourceGuessSection {
    margin-top: 14px
}

#page-resource .resourceGuessSection h3 {
    margin: 0 0 10px;
    font-size: 16px;
    line-height: 1.2;
    color: #222222;
    font-weight: 900
}

#page-resource .resourceGuessGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px
}

#page-resource .resourceGuessCard {
    display: block;
    background: #fff;
    border: 1px solid #ebe4dc;
    border-radius: 10px;
    padding: 8px;
    transition: .15s transform, .15s border-color, .15s box-shadow
}

#page-resource .resourceGuessCard:hover {
    transform: translateY(-2px);
    border-color: #e3d5cc;
    box-shadow: 0 10px 22px rgba(24, 28, 34, .06)
}

#page-resource .resourceGuessCard img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 8px;
    background: #f7f2ee
}

#page-resource .resourceGuessTitle {
    margin-top: 6px;
    height: 34px;
    overflow: hidden;
    color: #7b726a;
    font-size: 11px;
    line-height: 1.5;
    font-weight: 600;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

#page-resource .resourceInternalLinks {
    margin-top: 14px;
    display: grid;
    gap: 12px
}

#page-resource .resourceLinkModule {
    border: 1px solid #ebe4dc;
    border-radius: 14px;
    background: #fff;
    padding: 12px;
    box-shadow: 0 8px 18px rgba(24, 28, 34, .03)
}

#page-resource .resourceLinkModuleHead {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px
}

#page-resource .resourceLinkModuleHead h3 {
    margin: 0;
    color: #222222;
    font-size: 15px;
    line-height: 1.25;
    font-weight: 900
}

#page-resource .resourceLinkModuleHead span {
    color: #9a9189;
    font-size: 11px;
    line-height: 1.5;
    white-space: nowrap
}

#page-resource .resourceTextLinkGrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px
}

#page-resource .resourceTextLinkGrid.compact {
    grid-template-columns: repeat(4, minmax(0, 1fr))
}

#page-resource .resourceTextLink {
    display: block;
    min-width: 0;
    padding: 9px 10px;
    border-radius: 10px;
    border: 1px solid #F1E7DF;
    background: #FBF7F4;
    color: #3b332d;
    font-size: 12px;
    line-height: 1.55;
    font-weight: 850;
    transition: .15s transform, .15s border-color, .15s background, .15s color;
    word-break: break-word
}

#page-resource .resourceTextLink:hover {
    transform: translateY(-1px);
    border-color: #e1cfc4;
    background: #fff;
    color: #C40000
}

#page-resource .resourceTextLink small {
    display: block;
    margin-top: 3px;
    color: #9a9189;
    font-size: 10px;
    line-height: 1.45;
    font-weight: 700
}

#page-resource .resourceInternalLinks {
    margin-top: 14px;
    display: block
}

#page-resource .resourcePartyTopicNav {
    border: 1px solid #ebe4dc;
    border-radius: 14px;
    background: #fff;
    padding: 14px 16px;
    box-shadow: 0 8px 18px rgba(24, 28, 34, .03)
}

#page-resource .resourceTopicNavHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px
}

#page-resource .resourceTopicNavHead h3 {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #222222;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 950;
    letter-spacing: .2px
}

#page-resource .resourceTopicNavHead h3:before {
    content: "";
    width: 6px;
    height: 22px;
    border-radius: 999px;
    background: #df2020;
    box-shadow: 0 7px 14px rgba(223, 32, 32, .14);
    flex: 0 0 auto
}

#page-resource .resourceTopicNavHead span {
    color: #9a9189;
    font-size: 11px;
    line-height: 1.5;
    font-weight: 800;
    white-space: nowrap
}

#page-resource .resourceTopicNavGroup {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 14px;
    align-items: flex-start;
    padding: 9px 0;
    border-top: 1px dashed #F1E7DF
}

#page-resource .resourceTopicNavGroup:first-of-type {
    border-top: none
}

#page-resource .resourceTopicNavLabel {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 30px;
    color: #d51f1f;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 950;
    white-space: nowrap
}

#page-resource .resourceTopicNavLabel:before {
    content: "";
    width: 4px;
    height: 16px;
    border-radius: 999px;
    background: #df2020;
    flex: 0 0 auto
}

#page-resource .resourceTopicTagList {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    min-width: 0
}

#page-resource .resourceTopicTag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    min-height: 30px;
    padding: 5px 12px;
    border-radius: 999px;
    border: 1px solid #eadcd3;
    background: #fffaf7;
    color: #6e5f55;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 900;
    white-space: nowrap;
    transition: .15s border-color, .15s background, .15s color, .15s transform
}

#page-resource .resourceTopicTag:hover {
    transform: translateY(-1px);
    border-color: #edc7c2;
    background: #fff5f3;
    color: #C40000
}

#page-resource .resourceTopicTag.is-owner {
    background: #fff;
    border-color: #eadcd3
}

#page-resource .resourceTopicTag.is-branch {
    background: #fff7f5;
    border-color: #efcec9;
    color: #9f1c18
}

#page-resource .resourceTopicTag.is-other {
    background: #fffaf7;
    border-color: #eadcd3
}

#page-resource .resourceTopicTag em {
    color: #9a9189;
    font-size: 10px;
    line-height: 1;
    font-style: normal;
    font-weight: 800
}

#page-resource .resourceTopicNavEmpty {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    color: #aaa29a;
    font-size: 12px;
    font-weight: 800
}

@media (max-width:760px) {
    #page-resource .resourceTopicNavHead {
        align-items: flex-start;
        flex-direction: column
    }

    #page-resource .resourceTopicNavGroup {
        grid-template-columns: 1fr;
        gap: 6px;
        padding: 10px 0
    }

    #page-resource .resourceTopicNavLabel {
        min-height: auto
    }
}

#page-resource .resourceFactLink {
    color: #C40000;
    font-weight: 900;
    border-bottom: 1px dashed rgba(200, 39, 34, .38)
}

#page-resource .resourceFactLink:hover {
    color: #A80000;
    border-bottom-color: rgba(168, 0, 0, .55)
}

#page-resource .resourceSideCol {
    display: grid;
    gap: 12px
}

#page-resource .resourceActionCard,
#page-resource .resourceFactsCard,
#page-resource .resourceNoticeCard {
    background: #fff;
    border: 1px solid #ebe4dc;
    border-radius: 16px;
    box-shadow: 0 8px 18px rgba(24, 28, 34, .03)
}

#page-resource .resourceActionCard {
    padding: 14px
}

#page-resource .resourceActionCard h3 {
    margin: 0 0 12px;
    font-size: 14px;
    line-height: 1.2;
    color: #222222;
    font-weight: 900
}

#page-resource .resourceActionBtn {
    width: 100%;
    height: 38px;
    border-radius: 8px;
    border: 1px solid #eee7de;
    background: #fff;
    color: #7e766e;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
    transition: .15s filter ease, .15s transform ease
}

#page-resource .resourceActionBtn+.resourceActionBtn {
    margin-top: 8px
}

#page-resource .resourceActionBtn:hover {
    filter: brightness(1.01)
}

#page-resource .resourceActionBtn.primary {
    background: #f25a44;
    border-color: #f25a44;
    color: #fff
}

#page-resource .resourceActionBtn.ghost {
    background: #fff;
    border-color: #ece5dd;
    color: #7a726a
}

#page-resource .resourceFactsCard {
    padding: 14px 16px 16px
}

#page-resource .resourceFactsHead {
    margin: 0 0 12px;
    font-size: 14px;
    line-height: 1.2;
    color: #222222;
    font-weight: 900
}

#page-resource .resourceFactList {
    display: grid;
    gap: 10px
}

#page-resource .resourceFactRow {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    align-items: start
}

#page-resource .resourceFactRow span {
    color: #7f776f;
    font-size: 12px;
    line-height: 1.7
}

#page-resource .resourceFactRow strong {
    color: #252a30;
    font-size: 12px;
    line-height: 1.7;
    font-weight: 800;
    word-break: break-word
}

#page-resource .resourceFactSub {
    display: block;
    color: #8f887f;
    font-size: 11px;
    line-height: 1.6;
    font-weight: 500
}

#page-resource .resourceNoticeCard {
    padding: 14px
}

#page-resource .resourceNoticeHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px
}

#page-resource .resourceNoticeHead h4 {
    margin: 0;
    font-size: 13px;
    line-height: 1.2;
    color: #222222;
    font-weight: 900
}

#page-resource .resourceNoticeBadge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    background: #fff3f0;
    border: 1px solid #f0ddd7;
    color: #cc5347;
    font-size: 10px;
    font-weight: 900;
    line-height: 1
}

#page-resource .resourceNoticeBody p {
    margin: 0;
    color: #8f887f;
    font-size: 11px;
    line-height: 1.9
}

#page-resource .resourceNoticeBody p+p {
    margin-top: 8px
}

#page-resource .resourceAssistCard {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #f1e2db;
    border-radius: 12px;
    background: #fffaf8;
    padding: 11px 12px;
    color: #d15d46;
    box-shadow: 0 8px 18px rgba(24, 28, 34, .02)
}

#page-resource .resourceAssistIcon {
    width: 22px;
    height: 22px;
    border-radius: 6px;
    background: #f25a44;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 900;
    flex: 0 0 auto
}

#page-resource .resourceAssistText {
    min-width: 0;
    flex: 1;
    color: #d05c44;
    font-size: 12px;
    line-height: 1.5;
    font-weight: 900
}

#page-resource .resourceAssistArrow {
    color: #cf5a43;
    font-size: 18px;
    line-height: 1;
    flex: 0 0 auto
}

@media (max-width:980px) {
    #page-resource .resourceLayout {
        grid-template-columns: 1fr
    }

    #page-resource .resourceTopBar {
        flex-direction: column;
        align-items: flex-start
    }

    #page-resource .resourceTopMeta {
        justify-content: flex-start
    }
}

@media (max-width:720px) {
    #page-resource .resourceGuessGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media (max-width:520px) {
    #page-resource .resourceShell {
        padding: 12px
    }

    #page-resource .resourceGuessGrid {
        grid-template-columns: 1fr
    }

    #page-resource .resourceTitleBox h1 {
        font-size: 18px
    }
}

.filterPanelClean {
    padding: 0
}

.filterPanelClean .panelHd,
.filterPanelClean .panelBd {
    padding-left: 18px;
    padding-right: 18px
}

.filterHeadLine {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px
}

.filterSummary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    max-width: 58%;
    padding: 6px 12px;
    border-radius: 999px;
    background: #f7f2ee;
    border: 1px solid #ece1da;
    color: #8b756a;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45
}

.filterIntro {
    font-size: 13px;
    line-height: 1.85;
    color: #89766c
}

.filterRowsClean {
    display: grid;
    gap: 14px;
    margin-top: 16px
}

.filterRowClean {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding-top: 2px
}

.filterLabelClean {
    width: 72px;
    flex: 0 0 72px;
    padding-top: 8px;
    font-size: 13px;
    font-weight: 900;
    color: #5d3d36;
    letter-spacing: .02em
}

.filterLinksClean {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    min-width: 0
}

.filterLinkClean {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid #eaded7;
    background: #fff;
    color: #6f5951;
    font-size: 13px;
    font-weight: 700;
    transition: .18s ease;
    white-space: nowrap
}

.filterLinkClean:hover {
    border-color: #efc2b8;
    color: #c5392b;
    background: #fff7f4;
    transform: translateY(-1px)
}

.filterLinkClean.active {
    border-color: #f0c0b6;
    background: #fff1ee;
    color: #c5392b;
    box-shadow: 0 8px 18px rgba(211, 70, 52, .08)
}

.hiddenNativeFilters {
    display: none !important
}

.filterResultHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap
}

.filterResultTools {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap
}

.sortInline {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap
}

.sortInlineLabel {
    font-size: 12px;
    font-weight: 900;
    color: #68534c;
    letter-spacing: .02em
}

.sortInline .filterLinkClean {
    min-height: 32px;
    padding: 0 13px;
    font-size: 12px
}

.resultsCount {
    font-size: 12px;
    font-weight: 700;
    color: #9b877d
}

#page-search .panel+.panel,
#page-channel .panel+.panel {
    margin-top: 14px
}

footer {
    margin-top: 18px;
    background: #e4dad3;
    border-top: 1px solid #dacdc5
}

.footerInner {
    padding: 18px 0 14px
}

.footerGrid {
    display: grid;
    grid-template-columns: 1.15fr .92fr .92fr .92fr;
    gap: 28px;
    align-items: start
}

.footerTitle {
    font-weight: 1000;
    color: #8f1414;
    font-size: 15px;
    line-height: 1.2
}

.footerNote {
    margin-top: 10px;
    color: #85756e;
    font-size: 12px;
    line-height: 1.85
}

.footerLinks {
    margin-top: 10px;
    display: grid;
    gap: 8px
}

.footerLinks a {
    color: #493a37;
    font-weight: 700;
    font-size: 12px;
    line-height: 1.6
}

.footerLinks a:hover {
    color: #9d1f1f
}

.copyright {
    background: #e4dad3;
    border-top: 1px solid #d3c7bf;
    color: #8f817b;
    font-size: 11px
}

@media (max-width:980px) {
    .filterHeadLine {
        flex-direction: column;
        align-items: flex-start
    }

    .filterSummary {
        max-width: 100%
    }

    .filterRowClean {
        flex-direction: column;
        gap: 8px
    }

    .filterLabelClean {
        width: auto;
        flex: none;
        padding-top: 0
    }

    .footerGrid {
        grid-template-columns: 1fr 1fr
    }
}

@media (max-width:720px) {

    .filterPanelClean .panelHd,
    .filterPanelClean .panelBd {
        padding-left: 14px;
        padding-right: 14px
    }

    .filterLinksClean {
        gap: 8px
    }

    .filterLinkClean {
        min-height: 32px;
        padding: 0 12px;
        font-size: 12px
    }

    .footerGrid {
        grid-template-columns: 1fr
    }
}

.filterPanelClean {
    padding: 0;
    background: #fff;
    border-radius: 18px;
    overflow: hidden
}

.filterPanelClean .panelHd,
.filterPanelClean .panelBd {
    padding-left: 28px;
    padding-right: 28px
}

.filterPanelClean .panelHd {
    padding-top: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #efe3dc
}

.filterPanelClean .panelHd h2 {
    margin: 0;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 1000;
    color: #221915;
    letter-spacing: .01em
}

.filterPanelClean .panelBd {
    padding-top: 22px;
    padding-bottom: 26px
}

.filterSummary,
#searchDesc,
#page-channel .filterIntro {
    display: none !important
}

.filterRowsClean {
    margin-top: 0;
    gap: 18px
}

.filterRowClean {
    align-items: center;
    gap: 18px;
    padding-top: 0
}

.filterLabelClean {
    width: 92px;
    flex: 0 0 92px;
    padding-top: 0;
    font-size: 15px;
    line-height: 1;
    font-weight: 900;
    color: #4a332b
}

.filterLinksClean {
    gap: 12px 12px
}

.filterLinkClean {
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    border: 1px solid #ead9d0;
    background: #fff;
    color: #6c5950;
    font-size: 15px;
    font-weight: 800;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .88)
}

.filterLinkClean:hover {
    border-color: #efc7bb;
    color: #c53b2b;
    background: #fff7f4;
    transform: none
}

.filterLinkClean.active {
    border-color: #efcbc0;
    background: #fff2ee;
    color: #d44532;
    box-shadow: none
}

#page-search .row-search-suggest,
#page-channel .row-channel-topic {
    display: none !important
}

@media (max-width:980px) {

    .filterPanelClean .panelHd,
    .filterPanelClean .panelBd {
        padding-left: 20px;
        padding-right: 20px
    }

    .filterRowsClean {
        gap: 16px
    }

    .filterLabelClean {
        width: 84px;
        flex-basis: 84px;
        font-size: 14px
    }

    .filterLinkClean {
        min-height: 38px;
        padding: 0 16px;
        font-size: 14px
    }
}

@media (max-width:720px) {

    .filterPanelClean .panelHd,
    .filterPanelClean .panelBd {
        padding-left: 16px;
        padding-right: 16px
    }

    .filterRowClean {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px
    }

    .filterLabelClean {
        width: auto;
        flex: none
    }

    .filterLinksClean {
        gap: 10px 8px
    }

    .filterLinkClean {
        min-height: 34px;
        padding: 0 14px;
        font-size: 13px
    }
}

.dlModal {
    position: fixed;
    inset: 0;
    display: none;
    z-index: 520
}

.dlModal.active {
    display: block
}

.dlMask {
    position: absolute;
    inset: 0;
    background: rgba(15, 16, 18, .52);
    backdrop-filter: blur(6px)
}

.dlPanel {
    position: relative;
    width: min(1180px, calc(100% - 32px));
    margin: 48px auto;
    background: var(--panel);
    border-radius: 24px;
    box-shadow: 0 26px 80px rgba(10, 12, 15, .40);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .10)
}

.dlHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 18px;
    background: linear-gradient(180deg, rgba(250, 247, 244, .92), rgba(255, 255, 255, .98));
    border-bottom: 1px solid var(--line)
}

.dlHeadTitle {
    font-size: 15px;
    font-weight: 1000;
    letter-spacing: .2px
}

.dlHeadMeta {
    margin-top: 4px;
    font-size: 12px;
    color: var(--muted);
    font-weight: 700
}

.dlCloseBtn {
    width: 36px;
    height: 36px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line);
    background: #fff;
    cursor: pointer;
    font-weight: 1000
}

.dlCloseBtn:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 26px rgba(10, 12, 15, .10)
}

.dlBody {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 16px;
    padding: 16px;
    background: var(--panel2)
}

.dlLeft {
    min-width: 0
}

.dlRight {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.dlPreviewBox {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 16px 38px rgba(20, 26, 38, .10)
}

.dlPreviewBox img {
    width: 100%;
    height: auto;
    display: block
}

.dlLeftInfo {
    margin-top: 12px;
    padding: 12px 14px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px
}

.dlLeftInfo .abs {
    font-size: 12px;
    color: var(--muted);
    line-height: 1.7;
    font-weight: 700
}

.dlCard {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: 0 16px 38px rgba(20, 26, 38, .10);
    overflow: hidden
}

.dlCardHd {
    padding: 12px 14px;
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px
}

.dlCardHd h3 {
    margin: 0;
    font-size: 13px;
    font-weight: 1000
}

.dlCardBd {
    padding: 12px 14px
}

.dlAuthBadge {
    font-size: 12px;
    font-weight: 900
}

.dlStepTitle {
    font-size: 12px;
    font-weight: 1000;
    margin: 0 0 8px 0
}

.dlHelpText {
    font-size: 12px;
    color: var(--muted);
    line-height: 1.7;
    font-weight: 700
}

.dlTabs {
    display: flex;
    gap: 8px;
    margin-bottom: 10px
}

.dlTab {
    flex: 1;
    padding: 10px 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 12px;
    font-weight: 1000;
    cursor: pointer
}

.dlTab.active {
    border-color: rgba(196, 0, 0, .25);
    background: rgba(196, 0, 0, .07);
    color: var(--red3)
}

.dlLoginGrid {
    display: grid;
    gap: 10px
}

.dlLoginRow label {
    display: block;
    font-size: 12px;
    color: var(--muted);
    font-weight: 900;
    margin-bottom: 6px
}

.dlLoginRow input {
    width: 100%;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid var(--line);
    outline: none;
    font-size: 13px;
    background: #fff
}

.dlCodeRow {
    display: flex;
    gap: 8px;
    align-items: center
}

.dlCodeRow input {
    flex: 1
}

.dlHintLine {
    margin-top: 10px;
    font-size: 11px;
    color: var(--muted);
    line-height: 1.6;
    font-weight: 700
}

.dlHintLine a {
    color: var(--red3);
    text-decoration: underline
}

.dlQrWrap {
    display: grid;
    gap: 10px;
    place-items: center;
    padding: 6px 0
}

.dlQrBox {
    width: 180px;
    height: 180px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: #fff;
    display: grid;
    place-items: center;
    box-shadow: 0 16px 38px rgba(20, 26, 38, .10);
    overflow: hidden
}

.dlQrFake {
    width: 150px;
    height: 150px;
    background: linear-gradient(90deg, #111 25%, transparent 25%, transparent 50%, #111 50%, #111 75%, transparent 75%) 0 0/18px 18px, linear-gradient(#111 25%, transparent 25%, transparent 50%, #111 50%, #111 75%, transparent 75%) 0 0/18px 18px;
    opacity: .88;
    border-radius: 8px
}

.dlPlanRow {
    display: grid;
    gap: 10px
}

.dlPlans {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px
}

.dlPlan {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 12px 12px;
    cursor: pointer;
    background: #fff;
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease
}

.dlPlan:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(20, 26, 38, .10)
}

.dlPlan.active {
    border-color: rgba(196, 0, 0, .35);
    box-shadow: 0 18px 40px rgba(196, 0, 0, .12)
}

.dlPlanName {
    font-weight: 1000;
    font-size: 12px
}

.dlPlanPrice {
    margin-top: 6px;
    font-weight: 1100;
    font-size: 22px;
    color: var(--red3)
}

.dlPlanDesc {
    margin-top: 6px;
    font-size: 11px;
    color: var(--muted);
    line-height: 1.6;
    font-weight: 700
}

.dlPayRow {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 10px
}

.dlPayItem {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 10px;
    background: #fff
}

.dlPayItem .payTitle {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 1000;
    font-size: 12px
}

.dlPayItem .payMeta {
    margin-top: 6px;
    font-size: 11px;
    color: var(--muted);
    font-weight: 700
}

.dlPayItem .payQr {
    margin-top: 8px;
    display: grid;
    place-items: center
}

.dlPayItem .payQr .dlQrBox {
    width: 160px;
    height: 160px
}

.dlPayItem .payQr .dlQrFake {
    width: 132px;
    height: 132px;
    background-size: 16px 16px
}

.dlFileList {
    display: grid;
    gap: 10px
}

.dlFileItem {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 10px 10px;
    background: #fff
}

.dlFileMain {
    min-width: 0
}

.dlFileName {
    font-size: 12px;
    font-weight: 1000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.dlFileMeta {
    margin-top: 4px;
    font-size: 11px;
    color: var(--muted);
    font-weight: 700
}

.dlQuota {
    margin-top: 10px;
    padding: 10px 10px;
    border-radius: 14px;
    background: rgba(196, 0, 0, .06);
    border: 1px solid rgba(196, 0, 0, .14);
    font-size: 12px;
    color: var(--red3);
    font-weight: 900
}

@media (max-width:980px) {
    .dlPanel {
        margin: 18px auto
    }

    .dlBody {
        grid-template-columns: 1fr;
        gap: 12px
    }
}

.gateModal {
    position: fixed;
    inset: 0;
    display: none;
    z-index: 560
}

.gateModal.active {
    display: block
}

.gateMask {
    position: absolute;
    inset: 0;
    background: rgba(15, 16, 18, .52);
    backdrop-filter: blur(6px)
}

.gatePanel {
    position: relative;
    width: min(980px, calc(100% - 32px));
    margin: 54px auto;
    background: var(--panel);
    border-radius: 24px;
    box-shadow: 0 26px 80px rgba(10, 12, 15, .40);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .10)
}

.gateHd {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 18px;
    background: linear-gradient(180deg, rgba(250, 247, 244, .92), rgba(255, 255, 255, .98));
    border-bottom: 1px solid var(--line)
}

.gateTitle {
    font-size: 15px;
    font-weight: 1000;
    letter-spacing: .2px
}

.gateSub {
    margin-top: 4px;
    font-size: 12px;
    color: var(--muted);
    font-weight: 700
}

.gateClose {
    width: 36px;
    height: 36px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line);
    background: #fff;
    cursor: pointer;
    font-weight: 1000
}

.gateClose:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 26px rgba(10, 12, 15, .10)
}

.gateBody {
    padding: 16px;
    background: var(--panel2)
}

#wxLoginModal.active {
    display: flex;
    align-items: stretch;
    justify-content: center
}

#wxLoginModal .gateMask {
    background: rgba(255, 255, 255, .98);
    backdrop-filter: none
}

#wxLoginModal .gatePanelLogin {
    width: min(680px, calc(100% - 48px));
    margin: 0;
    border: none;
    box-shadow: none;
    background: transparent;
    border-radius: 0
}

#wxLoginModal .gateHd {
    display: none
}

#wxLoginModal .gateBodyLogin {
    padding: 0;
    background: transparent
}

.loginMock {
    max-width: 560px;
    margin: 0 auto;
    padding: 84px 18px 46px;
    text-align: center;
    min-height: 100vh
}

.loginMockTitle {
    font-size: 42px;
    font-weight: 1000;
    color: #2f221d;
    letter-spacing: .2px
}

.loginMockSub {
    margin-top: 14px;
    font-size: 18px;
    color: rgba(47, 34, 29, .78);
    font-weight: 700
}

.loginMockMethod {
    margin-top: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 900;
    color: #2f221d
}

.loginWxIcon {
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center
}

.loginWxIcon svg {
    width: 24px;
    height: 24px;
    display: block
}

.loginMockQrStage {
    margin-top: 16px;
    display: flex;
    justify-content: center
}

.loginMockQrCard {
    position: relative;
    width: 360px;
    height: 360px;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(20, 26, 38, .10);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    user-select: none
}

.loginMockQrCard:active {
    transform: scale(.995)
}

.loginMockQrCard .dlQrFake {
    width: 280px;
    height: 280px;
    background-size: 20px 20px;
    border-radius: 10px
}

.loginMockLast {
    position: absolute;
    top: 16px;
    right: 16px;
    padding: 6px 12px;
    background: #dff7e8;
    color: #28b34a;
    font-weight: 800;
    font-size: 14px;
    border-radius: 8px
}

.loginMockLast:after {
    content: "";
    position: absolute;
    left: 16px;
    bottom: -10px;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-top-color: #dff7e8;
    border-left-width: 0;
    border-right-width: 14px
}

.loginAgree {
    margin-top: 30px;
    display: grid;
    gap: 12px;
    justify-content: center;
    text-align: left;
    font-size: 14px;
    color: rgba(47, 34, 29, .40);
    font-weight: 700
}

.loginAgree label {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    max-width: 420px;
    line-height: 1.6
}

.loginAgree input {
    width: 16px;
    height: 16px;
    margin-top: 2px;
    accent-color: rgba(47, 34, 29, .38)
}

.loginAgree a {
    color: rgba(47, 34, 29, .65);
    text-decoration: none
}

@media (max-width:460px) {
    .loginMock {
        padding: 68px 14px 40px
    }

    .loginMockTitle {
        font-size: 32px
    }

    .loginMockSub {
        font-size: 16px
    }

    .loginMockMethod {
        font-size: 18px;
        margin-top: 28px
    }

    .loginMockQrCard {
        width: 320px;
        height: 320px;
        border-radius: 24px
    }

    .loginMockQrCard .dlQrFake {
        width: 248px;
        height: 248px
    }

    .loginMockLast {
        font-size: 13px
    }

    .loginAgree {
        font-size: 13px
    }
}

.loginGateBody {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 16px;
    align-items: center
}

.loginQrCol {
    display: grid;
    justify-items: center;
    gap: 10px
}

.dlQrBoxLarge {
    width: 200px;
    height: 200px;
    border-radius: 18px
}

.dlQrBoxLarge .dlQrFake {
    width: 166px;
    height: 166px
}

.loginQrHint {
    font-size: 12px;
    color: var(--muted);
    font-weight: 800
}

.loginBenefitsHd {
    font-size: 13px;
    font-weight: 1000
}

.loginBenefits ul {
    margin: 10px 0 0 18px;
    color: var(--muted);
    line-height: 1.8;
    font-weight: 700;
    font-size: 12px
}

.payGateBody {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 16px;
    align-items: stretch
}

.payLeftCard {
    border-radius: 20px;
    padding: 18px;
    color: #fff;
    background: radial-gradient(900px 560px at 20% 20%, rgba(255, 255, 255, .18), transparent 60%), linear-gradient(135deg, #C40000, #ff6a3d);
    box-shadow: 0 18px 46px rgba(196, 0, 0, .22);
    position: relative;
    overflow: hidden
}

.payLeftBadge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .18);
    border: 1px solid rgba(255, 255, 255, .22);
    font-weight: 1000;
    font-size: 12px;
    width: max-content
}

.payLeftTitle {
    margin-top: 12px;
    font-size: 22px;
    line-height: 1.15;
    font-weight: 1000;
    letter-spacing: .2px
}

.payLeftDesc {
    margin-top: 10px;
    font-size: 12px;
    line-height: 1.8;
    opacity: .92;
    font-weight: 700
}

.payLeftList {
    margin: 12px 0 0 18px;
    line-height: 1.9;
    font-size: 12px;
    font-weight: 700;
    opacity: .95
}

.payLeftFoot {
    margin-top: 14px;
    display: flex;
    align-items: baseline;
    gap: 10px
}

.payLeftAmount {
    font-size: 12px;
    opacity: .92;
    font-weight: 900
}

.payLeftPrice {
    font-size: 18px;
    font-weight: 1000
}

.payRightCol {
    min-width: 0
}

.payPlansHd {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px
}

.payPlansTitle {
    font-size: 13px;
    font-weight: 1000
}

.payPlansGrid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px
}

.payPlan {
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 16px;
    padding: 12px;
    cursor: pointer;
    transition: .15s ease
}

.payPlan:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 32px rgba(20, 26, 38, .10)
}

.payPlan.active {
    border-color: rgba(196, 0, 0, .35);
    box-shadow: 0 14px 34px rgba(196, 0, 0, .18);
    background: linear-gradient(180deg, rgba(196, 0, 0, .06), #fff)
}

.payPlanName {
    font-size: 13px;
    font-weight: 1000
}

.payPlanPrice {
    margin-top: 8px;
    font-size: 18px;
    font-weight: 1000;
    color: var(--red3)
}

.payPlanDesc {
    margin-top: 6px;
    font-size: 12px;
    color: var(--muted);
    line-height: 1.6;
    font-weight: 700
}

.payQrRow {
    margin-top: 12px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px
}

.payQrItem {
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 16px 38px rgba(20, 26, 38, .10);
    display: grid;
    justify-items: center;
    gap: 8px
}

.payQrTitle {
    font-size: 12px;
    font-weight: 1000
}

.payQrMeta {
    font-size: 12px;
    color: var(--muted);
    font-weight: 700;
    text-align: center;
    line-height: 1.6
}

@media (max-width:920px) {
    .gatePanel {
        margin: 22px auto
    }

    .loginGateBody {
        grid-template-columns: 1fr
    }

    .payGateBody {
        grid-template-columns: 1fr
    }

    .payPlansGrid {
        grid-template-columns: 1fr 1fr
    }
}

@media (max-width:520px) {
    .payPlansGrid {
        grid-template-columns: 1fr
    }

    .payQrRow {
        grid-template-columns: 1fr
    }
}

#page-resource .resourcePreviewIntro {
    margin-bottom: 14px !important
}

#page-resource .resourceInternalLinks {
    margin-top: 16px !important;
    padding: 0 !important;
    display: grid !important;
    gap: 12px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important
}

#page-resource .resourceInnerLinkPanel,
#page-resource .resourceRelatedPanel {
    background: #fff !important;
    border: 1px solid #f0dad2 !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(128, 35, 20, .06) !important;
    padding: 18px 22px !important
}

#page-resource .resourceInnerLinkPanel h2,
#page-resource .resourceRelatedHead h2 {
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #111827 !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important
}

#page-resource .resourceInnerLinkPanel h2:before,
#page-resource .resourceRelatedHead h2:before {
    content: "" !important;
    width: 5px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: #E60012 !important;
    flex: 0 0 auto !important
}

#page-resource .resourceInnerLinkPanel p {
    margin: 12px 0 0 !important;
    color: #2f343b !important;
    font-size: 14px !important;
    line-height: 1.8 !important
}

#page-resource .resourceInnerLinkPanel a {
    color: #30363d !important;
    font-weight: 700 !important
}

#page-resource .resourceInnerLinkPanel a:hover {
    color: #C40000 !important
}

#page-resource .resourceRelatedHead {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-bottom: 18px !important
}

#page-resource .resourceRelatedHead span {
    color: #8a7f78 !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 800 !important;
    white-space: nowrap !important
}

#page-resource .resourceRelatedGrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 70px !important;
    row-gap: 18px !important
}

#page-resource .resourceRelatedItem {
    position: relative !important;
    display: block !important;
    min-width: 0 !important;
    padding-left: 22px !important;
    color: #111827 !important
}

#page-resource .resourceRelatedItem:before {
    content: "›" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: #E60012 !important;
    font-size: 22px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important
}

#page-resource .resourceRelatedItem b {
    display: block !important;
    color: #111827 !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
    font-weight: 800 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important
}

#page-resource .resourceRelatedItem span {
    display: block !important;
    margin-top: 4px !important;
    color: #666666 !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important
}

#page-resource .resourceRelatedItem:hover b {
    color: #C40000 !important
}

#page-resource .resourceRelatedEmpty {
    color: #8a7f78 !important;
    font-size: 14px !important
}

@media (max-width:900px) {
    #page-resource .resourceRelatedGrid {
        grid-template-columns: 1fr !important;
        column-gap: 0 !important
    }

    #page-resource .resourceRelatedHead {
        align-items: flex-start !important;
        flex-direction: column !important
    }
}

#page-home {
    position: relative;
    padding: 0 0 38px;
    background: #f6f7f8;
    clip-path: inset(0 -100vmax);
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-home .home2 {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    gap: 24px;
    color: #222222
}

#page-home .home2-hero {
    position: relative;
    min-height: 290px;
    margin: 0 -24px 0;
    padding: 52px 42px 34px;
    overflow: hidden;
    text-align: center;
    background: radial-gradient(420px 210px at 8% 12%, rgba(199, 24, 24, .10), transparent 66%), radial-gradient(520px 260px at 92% 22%, rgba(214, 84, 38, .10), transparent 70%), linear-gradient(180deg, #fff7f2 0%, #fff 58%, #f6f7f8 100%);
    border-bottom: 1px solid #ece7e2
}

#page-home .home2-hero:before {
    content: "";
    position: absolute;
    left: -28px;
    bottom: 22px;
    width: 220px;
    height: 120px;
    background: linear-gradient(135deg, #c70000, #e02b1b);
    clip-path: polygon(0 0, 72% 28%, 100% 100%, 0 100%);
    filter: drop-shadow(0 18px 30px rgba(199, 0, 0, .16));
    opacity: .98
}

#page-home .home2-hero:after {
    content: "★";
    position: absolute;
    left: 52px;
    bottom: 68px;
    width: 74px;
    height: 74px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #f5d46b;
    font-size: 38px;
    background: rgba(255, 204, 64, .16)
}

#page-home .home2-hero-birds {
    position: absolute;
    right: 238px;
    top: 86px;
    color: #df3c2e;
    font-size: 22px;
    letter-spacing: 8px;
    opacity: .75;
    pointer-events: none
}

#page-home .home2-hero-tower {
    position: absolute;
    right: 92px;
    top: 130px;
    width: 70px;
    height: 90px;
    pointer-events: none
}

#page-home .home2-hero-tower:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #f0b24a, #d58a20);
    clip-path: polygon(20% 0, 80% 0, 80% 22%, 65% 22%, 65% 72%, 92% 72%, 92% 100%, 8% 100%, 8% 72%, 35% 72%, 35% 22%, 20% 22%);
    border-radius: 5px;
    box-shadow: 0 14px 24px rgba(192, 111, 16, .16)
}

#page-home .home2-hero-inner {
    position: relative;
    z-index: 1;
    max-width: 860px;
    margin: 0 auto
}

#page-home .home2-title {
    margin: 0;
    color: #c41414;
    font-size: 40px;
    line-height: 1.16;
    font-weight: 1000;
    letter-spacing: .3px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .8)
}

#page-home .home2-subtitle {
    margin: 12px 0 0;
    color: #3e3e3e;
    font-size: 15px;
    line-height: 1.7;
    font-weight: 500
}

#page-home .home2-search {
    display: flex;
    align-items: center;
    width: min(650px, 100%);
    height: 54px;
    margin: 22px auto 0;
    overflow: hidden;
    border-radius: 9px;
    background: #fff;
    border: 1px solid #ece1dc;
    box-shadow: 0 12px 30px rgba(120, 20, 20, .08)
}

#page-home .home2-search input {
    flex: 1;
    height: 100%;
    border: 0;
    outline: 0;
    padding: 0 20px;
    color: #555;
    font-size: 14px;
    background: transparent
}

#page-home .home2-search button {
    width: 110px;
    height: 100%;
    border: 0;
    cursor: pointer;
    color: #fff;
    background: linear-gradient(180deg, #df1616, #c70000);
    font-size: 15px;
    font-weight: 900
}

#page-home .home2-hot {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 16px
}

#page-home .home2-hot-label {
    color: #272727;
    font-size: 13px;
    font-weight: 800
}

#page-home .home2-hot a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 0 12px;
    border-radius: 999px;
    color: #555;
    background: #fff;
    border: 1px solid #eee2dd;
    font-size: 12px;
    font-weight: 700
}

#page-home .home2-section {
    display: grid;
    gap: 14px
}

#page-home .home2-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px
}

#page-home .home2-heading {
    margin: 0;
    color: #111;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 1000;
    letter-spacing: .1px
}

#page-home .home2-more {
    color: #8e8e8e;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap
}

#page-home .home2-topic-grid {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: 12px
}

#page-home .home2-topic-card,
#page-home .home2-type-card,
#page-home .home2-scene-card,
#page-home .home2-reason-card {
    background: #fff;
    border: 1px solid #e9e5e1;
    box-shadow: 0 8px 18px rgba(24, 28, 34, .035);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease
}

#page-home .home2-topic-card:hover,
#page-home .home2-type-card:hover,
#page-home .home2-scene-card:hover,
#page-home .home2-reason-card:hover,
#page-home .home2-card:hover {
    transform: translateY(-2px);
    border-color: #f0c7bd;
    box-shadow: 0 14px 26px rgba(24, 28, 34, .07)
}

#page-home .home2-topic-card {
    min-height: 78px;
    border-radius: 8px;
    padding: 14px 8px 11px;
    text-align: center
}

#page-home .home2-topic-icon {
    display: block;
    color: #e51d1d;
    font-size: 26px;
    line-height: 1;
    margin-bottom: 9px;
    font-weight: 1000
}

#page-home .home2-topic-title {
    color: #181818;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-home .home2-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px
}

#page-home .home2-card {
    display: block;
    padding: 0 0 12px;
    overflow: hidden;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #e9e5e1;
    box-shadow: 0 8px 18px rgba(24, 28, 34, .04);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease
}

#page-home .home2-cover {
    padding: 0;
    background: #f4f0ee
}

#page-home .home2-cover img {
    width: 100%;
    display: block;
    aspect-ratio: 16/9;
    object-fit: cover
}

#page-home .home2-card-title {
    padding: 12px 12px 0;
    min-height: 48px;
    color: #222222;
    font-size: 14px;
    line-height: 1.45;
    text-align: center;
    font-weight: 900;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

#page-home .home2-card-tags {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 10px 8px 0
}

#page-home .home2-card-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 0 7px;
    border-radius: 4px;
    color: #df1b1b;
    background: #fff2ef;
    border: 1px solid #ffd4cc;
    font-size: 11px;
    font-weight: 900;
    line-height: 1
}

#page-home .home2-type-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px
}

#page-home .home2-type-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 74px;
    padding: 14px 18px;
    border-radius: 10px
}

#page-home .home2-type-icon,
#page-home .home2-scene-icon,
#page-home .home2-reason-icon {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    background: #f24a3f;
    font-size: 19px;
    font-weight: 1000;
    box-shadow: 0 8px 16px rgba(220, 30, 30, .12)
}

#page-home .home2-type-card:nth-child(2) .home2-type-icon {
    background: #3f82e5
}

#page-home .home2-type-card:nth-child(3) .home2-type-icon {
    background: #5fbd5a
}

#page-home .home2-type-card:nth-child(4) .home2-type-icon {
    background: #f18a1a
}

#page-home .home2-type-card:nth-child(5) .home2-type-icon {
    background: #8866db
}

#page-home .home2-type-card:nth-child(6) .home2-type-icon {
    background: #4db8c8
}

#page-home .home2-type-title,
#page-home .home2-scene-title,
#page-home .home2-reason-title {
    color: #1b1b1b;
    font-size: 15px;
    font-weight: 1000;
    line-height: 1.25
}

#page-home .home2-type-sub,
#page-home .home2-scene-sub,
#page-home .home2-reason-sub {
    margin-top: 4px;
    color: #838383;
    font-size: 12px;
    line-height: 1.35
}

#page-home .home2-scene-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px
}

#page-home .home2-scene-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 70px;
    padding: 13px 16px;
    border-radius: 10px
}

#page-home .home2-latest-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 44px;
    row-gap: 0;
    padding: 4px 0
}

#page-home .home2-latest-item {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    min-height: 32px;
    border-bottom: 1px solid #e9e5e1;
    color: #343434;
    font-size: 13px
}

#page-home .home2-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    background: #df1b1b;
    font-size: 9px;
    font-weight: 1000
}

#page-home .home2-latest-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 700
}

#page-home .home2-latest-badge {
    color: #e11d1d;
    background: #fff0ed;
    border: 1px solid #ffd1c8;
    border-radius: 3px;
    padding: 2px 6px;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap
}

#page-home .home2-latest-date {
    color: #8d8d8d;
    font-size: 12px;
    white-space: nowrap
}

#page-home .home2-reason-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px
}

#page-home .home2-reason-card {
    display: flex;
    align-items: center;
    gap: 15px;
    min-height: 92px;
    padding: 20px 22px;
    border-radius: 10px
}

#page-home .home2-info {
    display: grid;
    gap: 10px
}

#page-home .home2-info p {
    margin: 0;
    color: #4b4b4b;
    font-size: 14px;
    line-height: 2;
    text-align: left
}

#page-home .home2-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 30px
}

#page-home .home2-faq-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 36px;
    padding: 0 15px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #e9e5e1;
    color: #333;
    font-size: 13px;
    font-weight: 800
}

#page-home .home2-faq-item span:first-child {
    color: #df1b1b;
    margin-right: 8px;
    font-weight: 1000
}

#page-home .home2-faq-item em {
    color: #777;
    font-style: normal;
    font-size: 14px
}

@media (max-width:1200px) {
    #page-home .home2-topic-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr))
    }

    #page-home .home2-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    #page-home .home2-type-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    #page-home .home2-scene-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

@media (max-width:900px) {
    #page-home .home2-hero {
        margin: 0 -14px;
        padding: 42px 22px 30px
    }

    #page-home .home2-title {
        font-size: 32px
    }

    #page-home .home2-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-home .home2-topic-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    #page-home .home2-latest-list,
    #page-home .home2-faq-grid {
        grid-template-columns: 1fr
    }

    #page-home .home2-reason-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media (max-width:640px) {

    #page-home .home2-hero-tower,
    #page-home .home2-hero-birds {
        display: none
    }

    #page-home .home2-search {
        height: auto;
        flex-direction: column;
        align-items: stretch;
        padding: 8px;
        border-radius: 14px
    }

    #page-home .home2-search input {
        height: 44px
    }

    #page-home .home2-search button {
        width: 100%;
        height: 42px;
        border-radius: 10px
    }

    #page-home .home2-type-grid,
    #page-home .home2-scene-grid,
    #page-home .home2-reason-grid {
        grid-template-columns: 1fr
    }
}

#page-home .home2-hero {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: 0;
    margin-bottom: 0;
    min-height: 320px;
    padding-top: 56px;
    padding-right: max(24px, calc((100vw - 1320px) / 2+24px));
    padding-bottom: 42px;
    padding-left: max(24px, calc((100vw - 1320px) / 2+24px));
    border-radius: 0;
    box-shadow: none;
    border: none;
    border-bottom: 1px solid #ece7e2;
    text-align: center;
    background: radial-gradient(520px 240px at 8% 12%, rgba(216, 31, 31, .07), transparent 68%), radial-gradient(560px 260px at 88% 20%, rgba(235, 166, 68, .16), transparent 72%), linear-gradient(180deg, #fff7f2 0%, #fffaf7 54%, #f6f7f8 100%)
}

#page-home .home2-hero:before {
    left: 0;
    bottom: 0;
    width: 300px;
    height: 145px;
    opacity: .96;
    background: linear-gradient(135deg, #c90000 0%, #e83b2d 100%);
    clip-path: polygon(0 0, 84% 33%, 100% 100%, 0 100%);
    filter: drop-shadow(0 18px 30px rgba(199, 0, 0, .13))
}

#page-home .home2-hero:after {
    left: 18px;
    bottom: 70px;
    width: 82px;
    height: 82px;
    border-radius: 50%;
    color: #f8d768;
    font-size: 42px;
    background: rgba(255, 201, 51, .18);
    box-shadow: none
}

#page-home .home2-hero-inner {
    max-width: 860px;
    margin: 0 auto;
    position: relative;
    z-index: 2
}

#page-home .home2-title {
    font-size: 42px;
    line-height: 1.18;
    letter-spacing: .2px;
    color: #c70000
}

#page-home .home2-subtitle {
    margin-top: 14px;
    color: #3f3b38;
    font-size: 16px;
    line-height: 1.6
}

#page-home .home2-search {
    width: min(660px, 100%);
    height: 56px;
    margin: 24px auto 0;
    border-radius: 9px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #eadfd8;
    box-shadow: 0 12px 28px rgba(93, 35, 19, .07)
}

#page-home .home2-search input {
    height: 100%;
    padding: 0 22px;
    font-size: 15px;
    color: #26313d;
    font-weight: 500
}

#page-home .home2-search input::placeholder {
    color: #26313d;
    opacity: 1
}

#page-home .home2-search button {
    width: 126px;
    height: 100%;
    border-radius: 0;
    background: #C40000;
    color: #fff;
    font-size: 15px;
    font-weight: 900;
    box-shadow: none
}

#page-home .home2-hot {
    margin-top: 18px;
    gap: 10px;
    justify-content: center
}

#page-home .home2-hot-label {
    color: #222;
    font-size: 13px;
    font-weight: 900
}

#page-home .home2-hot a {
    min-height: 28px;
    padding: 0 14px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #eadfd8;
    color: #444;
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 4px 10px rgba(24, 28, 34, .02)
}

#page-home .home2-hero-birds {
    right: max(310px, calc((100vw - 1320px) / 2+310px));
    top: 92px;
    color: #df3c2e;
    font-size: 19px;
    letter-spacing: 7px;
    opacity: .68;
    z-index: 1
}

#page-home .home2-hero-tower {
    right: max(136px, calc((100vw - 1320px) / 2+136px));
    top: 106px;
    width: 88px;
    height: 88px;
    border-radius: 22px;
    background: linear-gradient(180deg, #ffc75f 0%, #df9f2f 100%);
    box-shadow: 0 20px 36px rgba(197, 126, 20, .17);
    z-index: 1
}

#page-home .home2-hero-tower:before {
    content: "★";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background: none;
    color: #fff;
    font-size: 42px;
    clip-path: none;
    border-radius: 0;
    box-shadow: none
}

@media (max-width:900px) {
    #page-home .home2-hero {
        padding: 42px 18px 34px;
        min-height: 300px
    }

    #page-home .home2-title {
        font-size: 32px
    }

    #page-home .home2-subtitle {
        font-size: 14px
    }

    #page-home .home2-hero:before {
        width: 210px;
        height: 112px
    }

    #page-home .home2-hero:after {
        width: 62px;
        height: 62px;
        left: 16px;
        bottom: 58px;
        font-size: 32px
    }
}

@media (max-width:640px) {
    #page-home .home2-hero {
        padding: 34px 16px 28px;
        min-height: auto
    }

    #page-home .home2-search {
        height: auto;
        flex-direction: column;
        align-items: stretch;
        padding: 8px;
        border-radius: 14px
    }

    #page-home .home2-search input {
        height: 44px
    }

    #page-home .home2-search button {
        width: 100%;
        height: 42px;
        border-radius: 10px
    }
}

.filterPanelClean {
    border-radius: 16px
}

.filterPanelClean .panelHd,
.filterPanelClean .panelBd {
    padding-left: 18px !important;
    padding-right: 18px !important
}

.filterPanelClean .panelHd {
    padding-top: 12px !important;
    padding-bottom: 8px !important
}

.filterPanelClean .panelHd h2 {
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important
}

.filterPanelClean .panelBd {
    padding-top: 10px !important;
    padding-bottom: 12px !important
}

.filterRowsClean {
    gap: 8px !important;
    margin-top: 0 !important
}

.filterRowClean {
    gap: 10px !important;
    align-items: flex-start !important
}

.filterLabelClean {
    width: 72px !important;
    flex: 0 0 72px !important;
    padding-top: 6px !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    color: #4a332b !important
}

.filterLinksClean {
    gap: 8px 8px !important
}

.filterLinkClean {
    min-height: 30px !important;
    padding: 0 12px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    box-shadow: none !important
}

.filterLinkClean.active {
    box-shadow: none !important
}

#page-search .panel+.panel,
#page-channel .panel+.panel {
    margin-top: 10px !important
}

.filterResultHead {
    padding-top: 10px !important;
    padding-bottom: 8px !important
}

.filterResultHead h2 {
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important
}

.filterResultTools {
    gap: 8px !important
}

.sortInline .filterLinkClean {
    min-height: 28px !important;
    padding: 0 10px !important;
    font-size: 11px !important
}

@media (max-width:980px) {

    .filterPanelClean .panelHd,
    .filterPanelClean .panelBd {
        padding-left: 16px !important;
        padding-right: 16px !important
    }

    .filterLabelClean {
        width: 68px !important;
        flex-basis: 68px !important;
        font-size: 12px !important
    }

    .filterLinkClean {
        min-height: 28px !important;
        padding: 0 11px !important;
        font-size: 11px !important
    }
}

@media (max-width:720px) {

    .filterPanelClean .panelHd,
    .filterPanelClean .panelBd {
        padding-left: 14px !important;
        padding-right: 14px !important
    }

    .filterRowsClean {
        gap: 8px !important
    }

    .filterRowClean {
        flex-direction: column !important;
        gap: 8px !important
    }

    .filterLabelClean {
        width: auto !important;
        flex: none !important;
        padding-top: 0 !important
    }

    .filterLinksClean {
        gap: 8px 6px !important
    }

    .filterLinkClean {
        min-height: 28px !important;
        padding: 0 10px !important;
        font-size: 11px !important
    }
}

.siteHeader.dkHeader {
    height: 66px;
    box-shadow: 0 8px 20px rgba(130, 0, 0, .18)
}

.siteHeader.dkHeader::after {
    bottom: -105px;
    height: 150px;
    opacity: .78
}

.dkHeader .dkHeaderWrap {
    max-width: 1680px;
    padding-left: 54px;
    padding-right: 54px
}

.dkTopbar {
    height: 66px;
    gap: 20px
}

.dkBrand {
    min-width: 248px;
    gap: 10px
}

.dkLogoMark {
    width: 58px;
    height: 48px;
    flex: 0 0 58px;
    filter: drop-shadow(0 6px 12px rgba(100, 0, 0, .18))
}

.dkLogoMark svg {
    width: 58px;
    height: 48px
}

.dkLogoPage {
    stroke-width: 5.2
}

.dkLogoLine {
    stroke-width: 3.8
}

.dkLogoArc {
    stroke-width: 5.2
}

.dkBrandText {
    gap: 3px
}

.dkBrandText .brandName {
    font-size: 25px;
    letter-spacing: .2px
}

.dkBrandText .brandSlogan {
    font-size: 12px;
    letter-spacing: .2px
}

.dkHeaderDivider {
    height: 38px
}

.dkNav {
    gap: 26px
}

.dkNav .navLink {
    height: 44px;
    font-size: 17px;
    text-shadow: 0 1px 5px rgba(90, 0, 0, .14)
}

.dkNav .navLink.active::after {
    bottom: 1px;
    width: 34px;
    height: 3px;
    box-shadow: 0 3px 8px rgba(255, 232, 137, .28)
}

.dkRightTools {
    gap: 18px
}

.dkHeaderSearch {
    width: 350px;
    min-width: 350px;
    max-width: 350px;
    height: 44px
}

.dkHeaderSearch .dkSearchIcon {
    left: 18px;
    width: 18px;
    height: 18px;
    border-width: 2px
}

.dkHeaderSearch .dkSearchIcon::after {
    width: 8px;
    height: 2px;
    right: -6px
}

.dkHeaderSearch .searchInput {
    height: 44px;
    border-radius: 18px;
    padding: 0 76px 0 48px;
    font-size: 14px;
    box-shadow: 0 8px 18px rgba(100, 0, 0, .12), inset 0 0 0 1px rgba(255, 255, 255, .66)
}

.dkHeaderSearch .searchBtn {
    right: 6px;
    top: 6px;
    height: 32px;
    min-width: 56px;
    padding: 0 10px;
    border-radius: 13px;
    font-size: 15px
}

.dkHeaderSearch .searchBtn span {
    font-size: 15px
}

.dkVipBtn {
    height: 44px;
    min-width: 122px;
    padding: 0 18px;
    border-radius: 10px;
    font-size: 16px;
    gap: 7px;
    box-shadow: 0 8px 18px rgba(120, 0, 0, .13)
}

.dkVipBtn::before {
    font-size: 17px
}

.dkFooter {
    margin-top: 22px
}

.dkFooter .wrap {
    max-width: 1680px;
    padding-left: 54px;
    padding-right: 54px
}

.dkFooterMain {
    grid-template-columns: 1.34fr .86fr 1.18fr 1fr;
    padding-top: 32px !important;
    padding-bottom: 28px !important
}

.dkFooterCol {
    padding-left: 42px
}

.dkFooterLogo {
    gap: 12px
}

.dkFooterLogoMark {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border-radius: 10px;
    box-shadow: 0 7px 16px rgba(190, 0, 0, .10)
}

.dkFooterLogoMark svg {
    width: 54px;
    height: 54px
}

.dkFooterLogoText {
    gap: 5px
}

.dkFooterLogoText strong {
    font-size: 23px
}

.dkFooterLogoText em {
    font-size: 13px
}

.dkFooterIntro {
    max-width: 450px;
    margin: 20px 0 0;
    font-size: 14px;
    line-height: 1.75
}

.dkTrustList {
    gap: 12px;
    max-width: 430px;
    margin-top: 22px
}

.dkTrustItem b {
    margin-top: 7px;
    font-size: 14px
}

.dkTrustItem em {
    margin-top: 4px;
    font-size: 12px
}

.dkTrustIcon {
    width: 30px;
    height: 30px;
    transform: scale(.78);
    transform-origin: center bottom
}

.dkFooterCol h3 {
    margin: 0 0 24px;
    font-size: 21px
}

.dkFooterCol a {
    gap: 12px;
    min-height: 38px;
    font-size: 15px
}

.dkFooterCol a+a {
    margin-top: 2px
}

.dkFooterCol a i {
    font-size: 20px
}

.dkLinkIcon {
    flex-basis: 22px;
    width: 22px;
    height: 22px;
    font-size: 13px;
    transform: scale(.86);
    transform-origin: center
}

.dkLinkIcon.ppt {
    width: 20px;
    height: 20px;
    font-size: 12px;
    border-radius: 4px
}

.dkFooterBottomGrid {
    padding-top: 16px !important;
    padding-bottom: 16px !important
}

.dkFooterContact,
.dkFooterQrWrap {
    min-height: 58px;
    gap: 12px;
    padding: 0 20px
}

.dkFooterContact p,
.dkFooterQrWrap p {
    gap: 7px
}

.dkFooterContact b,
.dkFooterQrWrap b {
    font-size: 14px
}

.dkFooterContact em,
.dkFooterQrWrap em {
    font-size: 12px
}

.dkBottomIcon {
    flex-basis: 22px;
    width: 22px;
    height: 22px;
    transform: scale(.86);
    transform-origin: center
}

.dkBottomIcon.phone::before {
    font-size: 21px;
    line-height: 22px
}

.dkQrFake {
    width: 66px;
    height: 66px;
    flex-basis: 66px;
    border-radius: 7px
}

.dkQrFake::before {
    inset: 7px;
    background-size: 36px 36px
}

.dkQrFake::after {
    left: 22px;
    top: 22px;
    width: 22px;
    height: 22px;
    border-radius: 5px
}

.dkQrFake span {
    left: 27px;
    top: 27px;
    width: 12px;
    height: 12px;
    border-radius: 3px
}

.dkQrFake span::after {
    font-size: 8px;
    line-height: 12px
}

@media (max-width:1460px) {
    .siteHeader.dkHeader {
        height: 60px
    }

    .dkHeader .dkHeaderWrap,
    .dkFooter .wrap {
        padding-left: 28px;
        padding-right: 28px
    }

    .dkTopbar {
        height: 60px;
        gap: 14px
    }

    .dkBrand {
        min-width: 214px;
        gap: 8px
    }

    .dkLogoMark {
        width: 48px;
        height: 40px;
        flex-basis: 48px
    }

    .dkLogoMark svg {
        width: 48px;
        height: 40px
    }

    .dkBrandText .brandName {
        font-size: 22px
    }

    .dkBrandText .brandSlogan {
        font-size: 11px
    }

    .dkHeaderDivider {
        height: 32px
    }

    .dkNav {
        gap: 18px
    }

    .dkNav .navLink {
        height: 38px;
        font-size: 15px
    }

    .dkHeaderSearch {
        width: 292px;
        min-width: 292px;
        max-width: 292px;
        height: 40px
    }

    .dkHeaderSearch .searchInput {
        height: 40px;
        border-radius: 16px;
        font-size: 13px;
        padding-left: 42px
    }

    .dkHeaderSearch .searchBtn {
        height: 30px;
        top: 5px;
        right: 5px;
        min-width: 52px;
        font-size: 14px
    }

    .dkVipBtn {
        height: 40px;
        min-width: 108px;
        font-size: 14px;
        padding: 0 14px
    }

    .dkFooterMain {
        grid-template-columns: 1.25fr .82fr 1.12fr 1fr;
        padding-top: 28px !important;
        padding-bottom: 24px !important
    }

    .dkFooterCol {
        padding-left: 28px
    }

    .dkFooterLogoText strong {
        font-size: 20px
    }

    .dkFooterIntro {
        font-size: 13px
    }

    .dkFooterCol h3 {
        font-size: 19px;
        margin-bottom: 20px
    }

    .dkFooterCol a {
        font-size: 14px;
        min-height: 34px
    }

    .dkFooterBottomGrid {
        grid-template-columns: 1fr 1fr;
        padding-top: 14px !important;
        padding-bottom: 14px !important
    }

    .dkFooterQrWrap {
        border-left: 0;
        margin-top: 10px
    }
}

@media (max-width:1020px) {
    .siteHeader.dkHeader {
        height: auto
    }

    .dkTopbar {
        height: auto;
        min-height: 60px;
        padding: 8px 0;
        flex-wrap: wrap
    }

    .dkNav {
        order: 3;
        width: 100%;
        gap: 18px;
        overflow-x: auto;
        padding-bottom: 4px
    }

    .dkHeaderDivider {
        display: none
    }

    .dkRightTools {
        margin-left: auto;
        gap: 10px
    }

    .dkHeaderSearch {
        width: 250px;
        min-width: 220px
    }

    .dkFooterMain {
        grid-template-columns: 1fr 1fr;
        row-gap: 26px
    }

    .dkFooterCol:nth-child(2) {
        border-left: 0;
        padding-left: 0
    }

    .dkFooterBottomGrid {
        grid-template-columns: 1fr
    }

    .dkFooterContact,
    .dkFooterQrWrap {
        border-left: 0;
        border-top: 1px solid #eee6df;
        padding: 12px 0;
        min-height: auto
    }

    .dkFooterContact:first-child {
        border-top: 0
    }

    .dkTrustList {
        max-width: 100%
    }
}

@media (max-width:640px) {

    .dkHeader .dkHeaderWrap,
    .dkFooter .wrap {
        padding-left: 14px;
        padding-right: 14px
    }

    .dkBrandText .brandName {
        font-size: 20px
    }

    .dkLogoMark {
        width: 44px;
        height: 36px;
        flex-basis: 44px
    }

    .dkLogoMark svg {
        width: 44px;
        height: 36px
    }

    .dkNav {
        gap: 14px
    }

    .dkNav .navLink {
        font-size: 14px;
        height: 34px
    }

    .dkRightTools {
        width: 100%;
        gap: 10px
    }

    .dkHeaderSearch {
        flex: 1;
        width: auto;
        min-width: 0;
        height: 38px
    }

    .dkHeaderSearch .searchInput {
        height: 38px
    }

    .dkVipBtn {
        height: 38px;
        font-size: 13px
    }

    .dkFooterMain {
        grid-template-columns: 1fr;
        padding-top: 24px !important;
        padding-bottom: 20px !important
    }

    .dkFooterCol {
        border-left: 0;
        padding-left: 0;
        border-top: 1px solid #eee6df;
        padding-top: 20px
    }

    .dkTrustList {
        grid-template-columns: repeat(2, 1fr)
    }

    .dkFooterLogoText strong {
        font-size: 19px
    }

    .dkFooterIntro {
        font-size: 13px
    }

    .dkFooterCol h3 {
        font-size: 18px;
        margin-bottom: 16px
    }

    .dkFooterCol a {
        font-size: 14px
    }

    .dkFooterContact b,
    .dkFooterQrWrap b {
        font-size: 14px
    }

    .dkFooterContact em,
    .dkFooterQrWrap em {
        font-size: 12px
    }
}

#wxLoginModal .gateMask {
    background: rgba(255, 255, 255, .985) !important
}

#wxLoginModal .gatePanelLogin {
    position: relative
}

.loginMock {
    position: relative
}

.loginMockClose {
    position: absolute;
    top: 22px;
    right: 4px;
    width: 40px;
    height: 40px;
    border: none;
    border-radius: 999px;
    background: rgba(47, 34, 29, .06);
    color: rgba(47, 34, 29, .52);
    font-size: 20px;
    font-weight: 900;
    cursor: pointer;
    transition: .18s ease;
    box-shadow: 0 8px 18px rgba(20, 26, 38, .06)
}

.loginMockClose:hover {
    background: rgba(47, 34, 29, .10);
    color: rgba(47, 34, 29, .76);
    transform: translateY(-1px)
}

.loginMockClose:focus-visible {
    outline: 2px solid rgba(76, 13, 255, .24);
    outline-offset: 2px
}

#vipPayModal.active {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 12px 0
}

#vipPayModal .gateMask {
    background: rgba(16, 15, 29, .28);
    backdrop-filter: blur(6px)
}

#vipPayModal .gatePanel {
    width: min(1456px, calc(100% - 24px));
    margin: 0;
    border: none;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 28px 96px rgba(22, 18, 54, .22);
    overflow: hidden
}

#vipPayModal .gateHd {
    display: none
}

#vipPayModal .gateBody {
    padding: 0;
    background: #fff
}

.vipPayShell {
    position: relative;
    background: #fff
}

.vipModalClose {
    position: absolute;
    top: 16px;
    right: 18px;
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    cursor: pointer;
    z-index: 3;
    transition: .18s ease;
    border: 1px solid rgba(255, 255, 255, .16)
}

.vipModalClose:hover {
    background: rgba(255, 255, 255, .22);
    transform: translateY(-1px)
}

.vipModalTop {
    position: relative;
    min-height: 104px;
    padding: 18px 26px 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: #fff;
    background: linear-gradient(90deg, #4010df 0%, #5b18eb 46%, #6f1ee7 100%);
    overflow: hidden
}

.vipModalTop:before {
    content: "";
    position: absolute;
    right: 180px;
    top: -36px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .16), rgba(255, 255, 255, 0) 66%)
}

.vipModalTop:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 360px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0) 18%, rgba(255, 255, 255, .10) 18%, rgba(255, 255, 255, .10) 22%, rgba(255, 255, 255, 0) 22%, rgba(255, 255, 255, 0) 28%, rgba(255, 255, 255, .08) 28%, rgba(255, 255, 255, .08) 30%, rgba(255, 255, 255, 0) 30%);
    opacity: .65
}

.vipModalUser,
.vipModalTicker {
    position: relative;
    z-index: 1
}

.vipModalUser {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0
}

.vipUserAvatar {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffd8c7, #fff9f0);
    border: 3px solid rgba(255, 255, 255, .18);
    box-shadow: 0 8px 18px rgba(18, 12, 50, .22);
    color: #573680;
    font-size: 26px;
    font-weight: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex: 0 0 auto
}

.vipUserMeta {
    display: grid;
    gap: 4px;
    min-width: 0
}

.vipUserLine {
    font-size: 17px;
    font-weight: 900;
    white-space: nowrap
}

.vipUserLine strong {
    font-weight: 1000
}

.vipModalTicker {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    font-weight: 800;
    margin-right: 46px;
    max-width: 50%;
    text-align: right;
    line-height: 1.4
}

.vipTickerIcon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, .12);
    font-size: 14px;
    flex: 0 0 auto
}

.vipModalMain {
    display: grid;
    grid-template-columns: 286px minmax(0, 1fr);
    gap: 26px;
    padding: 22px 24px 22px;
    background: #fff
}

.vipBenefitsCard {
    position: relative;
    overflow: hidden;
    min-height: 660px;
    padding: 28px 24px 24px;
    border-radius: 26px;
    background: linear-gradient(180deg, #f7edd6 0%, #f4ecd9 100%)
}

.vipBenefitsCard:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, rgba(255, 255, 255, .38) 0 18%, rgba(255, 255, 255, 0) 18% 100%), linear-gradient(20deg, rgba(188, 165, 106, .16) 0 26%, rgba(255, 255, 255, 0) 26% 100%), linear-gradient(180deg, rgba(116, 85, 169, .05), rgba(116, 85, 169, 0));
    pointer-events: none
}

.vipBenefitsTitle {
    position: relative;
    margin: 70px 0 56px;
    text-align: center;
    color: #72558b;
    font-size: 25px;
    font-weight: 1000;
    line-height: 1.2
}

.vipBenefitsList {
    position: relative;
    display: grid;
    gap: 28px;
    margin: 0;
    padding-left: 26px;
    color: #74588f;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.45
}

.vipBenefitsList li {
    padding-left: 2px
}

.vipPayContent {
    min-width: 0;
    display: grid;
    gap: 16px
}

.vipPlansGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px
}

.vipPlanCard {
    position: relative;
    min-height: 230px;
    padding: 46px 18px 20px;
    border-radius: 24px;
    border: 1px solid #ece6f1;
    background: #fff;
    text-align: center;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .75);
    cursor: pointer;
    transition: .18s ease
}

.vipPlanCard:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 32px rgba(31, 24, 66, .08)
}

.vipPlanCard.active {
    border-color: #efc672;
    background: linear-gradient(180deg, #f7f2e3 0%, #f8f2df 100%);
    box-shadow: 0 16px 34px rgba(239, 198, 114, .18)
}

.vipPlanPromo {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 240px;
    padding: 8px 14px 9px;
    border-radius: 20px 0 18px 0;
    background: linear-gradient(90deg, #ff4cab 0%, #ff8c3f 100%);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap
}

.vipPlanTitle {
    font-size: 25px;
    font-weight: 1000;
    color: #111;
    line-height: 1.15
}

.vipPlanPriceRow {
    margin-top: 18px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 2px;
    flex-wrap: wrap;
    color: #ff6a3d
}

.vipPlanCurrency {
    font-size: 18px;
    font-weight: 900;
    line-height: 1.3;
    transform: translateY(-6px)
}

.vipPlanAmount {
    font-size: 52px;
    font-weight: 1000;
    line-height: 1
}

.vipPlanDecimal {
    font-size: 22px;
    font-weight: 1000;
    line-height: 1.15;
    transform: translateY(-4px)
}

.vipPlanOld {
    margin-left: 2px;
    color: #d69a62;
    font-size: 16px;
    font-weight: 800;
    text-decoration: line-through;
    transform: translateY(-2px)
}

.vipPlanDesc {
    margin-top: 18px;
    color: #1e1e1e;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.4
}

.vipPlanDesc.muted {
    color: #7f7f7f;
    font-weight: 700
}

.vipAmountLine {
    color: #8e8a8a;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.7;
    padding-left: 6px
}

.vipAmountLine strong,
.vipAmountLine .vipAmountNum {
    color: #ff6a00;
    font-size: 24px;
    font-weight: 1000
}

.vipAmountUnit {
    color: #8e8a8a;
    font-size: 17px;
    font-weight: 700
}

.vipAmountDesc {
    color: #9b9797
}

.vipQrRow {
    display: grid;
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    justify-content: center;
    gap: 72px;
    max-width: 720px;
    margin: 8px auto 0
}

.vipQrItem {
    text-align: center
}

.vipQrBox {
    width: 210px;
    height: 210px;
    border-radius: 14px;
    border: 1px solid #f0ebf1;
    background: #fff;
    box-shadow: 0 10px 22px rgba(20, 26, 38, .04);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto
}

.vipQrBox .dlQrFake {
    width: 170px;
    height: 170px;
    background-size: 20px 20px;
    border-radius: 8px
}

.vipQrLabel {
    margin-top: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #4b4b4b;
    font-size: 18px;
    font-weight: 800
}

.vipQrIcon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 16px;
    font-weight: 900
}

.vipQrIcon.wx {
    background: #21c05d
}

.vipQrIcon.ali {
    background: #1ca0ff
}

.vipPayAgreement {
    margin-top: 10px;
    text-align: center;
    color: #b1aeae;
    font-size: 14px;
    font-weight: 700
}

.vipPayActions {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap
}

.vipPayBtn {
    min-width: 164px;
    height: 44px;
    padding: 0 22px;
    border: none;
    border-radius: 999px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 1000;
    transition: .18s ease
}

.vipPayBtn.primary {
    background: linear-gradient(90deg, #ff6b42, #ff8b45);
    color: #fff;
    box-shadow: 0 14px 28px rgba(255, 113, 74, .22)
}

.vipPayBtn.ghost {
    background: #f6f1ef;
    color: #6e6666;
    border: 1px solid #ece4e1
}

.vipPayBtn.brand {
    background: #4f18e5;
    color: #fff
}

.vipPayBtn:hover {
    transform: translateY(-1px)
}

@media (max-width:1180px) {
    #vipPayModal .gatePanel {
        width: min(1120px, calc(100% - 20px))
    }

    .vipPlansGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .vipModalTicker {
        max-width: 46%;
        font-size: 14px
    }
}

@media (max-width:900px) {
    .vipModalMain {
        grid-template-columns: 1fr;
        gap: 18px
    }

    .vipBenefitsCard {
        min-height: auto
    }

    .vipBenefitsTitle {
        margin: 22px 0 28px
    }

    .vipBenefitsList {
        gap: 16px;
        font-size: 15px
    }

    .vipQrRow {
        gap: 24px;
        grid-template-columns: 1fr 1fr
    }

    .vipModalTop {
        padding-right: 56px;
        align-items: flex-start;
        flex-direction: column
    }

    .vipModalTicker {
        margin-right: 0;
        max-width: 100%;
        text-align: left
    }
}

@media (max-width:640px) {
    #vipPayModal .gatePanel {
        width: min(100%, calc(100% - 12px));
        border-radius: 22px
    }

    .vipModalMain {
        padding: 16px 14px 18px
    }

    .vipPlansGrid {
        grid-template-columns: 1fr
    }

    .vipPlanPromo {
        max-width: calc(100% - 40px);
        font-size: 12px
    }

    .vipPlanAmount {
        font-size: 46px
    }

    .vipQrRow {
        grid-template-columns: 1fr;
        gap: 18px
    }

    .vipQrBox {
        width: 188px;
        height: 188px
    }

    .vipQrBox .dlQrFake {
        width: 152px;
        height: 152px;
        background-size: 18px 18px
    }

    .vipModalTop {
        padding: 16px 52px 16px 16px;
        min-height: 96px
    }

    .vipUserLine {
        font-size: 15px
    }
}

#page-login {
    background: transparent
}

.loginRouteHero {
    min-height: calc(100vh - 128px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 56px 0 96px
}

.loginRoutePanel {
    width: min(980px, 100%);
    padding: 44px 48px;
    border-radius: 32px;
    border: 1px solid rgba(112, 74, 59, .08);
    background: radial-gradient(520px 220px at 88% 18%, rgba(255, 232, 223, .92), transparent 60%), radial-gradient(420px 160px at 12% 82%, rgba(255, 244, 236, .85), transparent 58%), linear-gradient(180deg, #fffaf7 0%, #fff 100%);
    box-shadow: 0 26px 80px rgba(49, 33, 27, .08)
}

.loginRouteBadge {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 900;
    color: #a14c35;
    background: rgba(255, 122, 69, .10);
    border: 1px solid rgba(255, 122, 69, .16)
}

.loginRoutePanel h2 {
    margin: 18px 0 10px;
    font-size: 34px;
    line-height: 1.22;
    font-weight: 1000;
    color: #2f221d
}

.loginRoutePanel p {
    margin: 0;
    font-size: 15px;
    line-height: 1.9;
    color: rgba(47, 34, 29, .70);
    font-weight: 700;
    max-width: 760px
}

.loginRouteMeta {
    margin-top: 18px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.loginRouteMeta .chip {
    padding: 0 14px;
    min-height: 34px;
    background: #fff;
    border-color: rgba(112, 74, 59, .12)
}

#wxLoginModal .gateMask {
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: none !important
}

#wxLoginModal .gatePanelLogin {
    position: relative;
    width: min(760px, calc(100% - 40px)) !important
}

.loginMock {
    position: relative;
    max-width: 620px;
    padding: 96px 18px 54px
}

.loginMockClose {
    position: fixed;
    top: 20px;
    right: 24px;
    width: 72px;
    height: 72px;
    border: none;
    border-radius: 999px;
    background: rgba(47, 34, 29, .055);
    color: rgba(47, 34, 29, .46);
    font-size: 40px;
    line-height: 1;
    font-weight: 300;
    cursor: pointer;
    transition: .18s ease;
    box-shadow: none
}

.loginMockClose:hover {
    background: rgba(47, 34, 29, .085);
    color: rgba(47, 34, 29, .72);
    transform: scale(1.02)
}

.loginMockClose:focus-visible {
    outline: 2px solid rgba(76, 13, 255, .18);
    outline-offset: 2px
}

.loginMockTitle {
    font-size: 66px;
    line-height: 1.08;
    letter-spacing: -1px;
    color: #2f221d
}

.loginMockSub {
    margin-top: 22px;
    font-size: 26px;
    line-height: 1.35;
    color: rgba(47, 34, 29, .78);
    font-weight: 900
}

.loginMockMethod {
    margin-top: 46px;
    font-size: 26px;
    gap: 14px;
    color: #2f221d
}

.loginWxIcon {
    width: 32px;
    height: 32px
}

.loginWxIcon svg {
    width: 32px;
    height: 32px
}

.loginMockQrStage {
    margin-top: 22px
}

.loginMockQrCard {
    width: 548px;
    height: 548px;
    border-radius: 34px;
    box-shadow: 0 28px 86px rgba(18, 22, 28, .08);
    background: #fff
}

.loginMockQrImg {
    width: 356px;
    height: 356px;
    display: block;
    object-fit: contain;
    image-rendering: pixelated
}

.loginMockLast {
    top: 22px;
    right: 22px;
    padding: 10px 16px;
    font-size: 15px;
    border-radius: 12px;
    background: #dff7e8;
    color: #28b34a
}

.loginMockLast:after {
    left: 16px;
    bottom: -11px;
    border-top-color: #dff7e8;
    border-right-width: 14px
}

.loginAgree {
    margin-top: 36px;
    font-size: 18px;
    gap: 12px;
    color: rgba(47, 34, 29, .38)
}

.loginAgree label {
    max-width: none;
    gap: 14px
}

.loginAgree input {
    width: 22px;
    height: 22px;
    margin-top: 2px;
    accent-color: rgba(47, 34, 29, .92)
}

.loginAgree a {
    color: rgba(47, 34, 29, .66)
}

@media (max-width:820px) {
    .loginRouteHero {
        padding: 40px 0 72px;
        min-height: calc(100vh - 112px)
    }

    .loginRoutePanel {
        padding: 32px 24px;
        border-radius: 24px
    }

    .loginRoutePanel h2 {
        font-size: 28px
    }

    .loginRoutePanel p {
        font-size: 14px
    }

    .loginMock {
        padding: 86px 16px 42px
    }

    .loginMockTitle {
        font-size: 48px
    }

    .loginMockSub {
        font-size: 22px;
        margin-top: 18px
    }

    .loginMockMethod {
        font-size: 22px;
        margin-top: 36px
    }

    .loginMockQrCard {
        width: min(440px, calc(100vw - 72px));
        height: min(440px, calc(100vw - 72px));
        border-radius: 28px
    }

    .loginMockQrImg {
        width: 290px;
        height: 290px
    }

    .loginMockClose {
        width: 58px;
        height: 58px;
        font-size: 32px;
        right: 18px;
        top: 16px
    }

    .loginAgree {
        font-size: 16px
    }

    .loginAgree input {
        width: 20px;
        height: 20px
    }
}

@media (max-width:560px) {
    #wxLoginModal .gatePanelLogin {
        width: min(100%, calc(100% - 20px)) !important
    }

    .loginMock {
        padding: 74px 10px 32px
    }

    .loginMockTitle {
        font-size: 34px;
        letter-spacing: 0
    }

    .loginMockSub {
        font-size: 18px;
        margin-top: 14px
    }

    .loginMockMethod {
        font-size: 18px;
        margin-top: 28px;
        gap: 10px
    }

    .loginWxIcon,
    .loginWxIcon svg {
        width: 24px;
        height: 24px
    }

    .loginMockQrCard {
        width: min(338px, calc(100vw - 34px));
        height: min(338px, calc(100vw - 34px));
        border-radius: 22px
    }

    .loginMockQrImg {
        width: 232px;
        height: 232px
    }

    .loginMockLast {
        top: 14px;
        right: 14px;
        padding: 7px 12px;
        font-size: 13px;
        border-radius: 10px
    }

    .loginMockClose {
        width: 48px;
        height: 48px;
        font-size: 28px;
        top: 12px;
        right: 12px
    }

    .loginAgree {
        font-size: 14px;
        margin-top: 28px
    }

    .loginAgree input {
        width: 18px;
        height: 18px
    }
}

:root {
    --dk-red: #C40000;
    --dk-red-deep: #A80000;
    --dk-red-soft: #fff1ee;
    --dk-orange: #ff7a22;
    --dk-line: #eee6df;
    --dk-text: #151515;
    --dk-muted: #77706a
}

body {
    background: radial-gradient(820px 420px at 76% 100px, rgba(236, 58, 31, .055), transparent 70%), linear-gradient(180deg, #fff 0, #fbf8f5 120px, #faf7f3 100%)
}

.wrap {
    max-width: 1228px;
    padding: 0 24px
}

.siteHeader {
    position: sticky;
    top: 0;
    z-index: 80;
    height: 64px;
    background: linear-gradient(90deg, #c90000 0%, #d80000 48%, #c90000 100%);
    border-bottom: 0;
    box-shadow: 0 8px 22px rgba(160, 0, 0, .18)
}

.topbar {
    height: 64px;
    padding: 0;
    gap: 22px;
    align-items: center;
    overflow: visible
}

.brand {
    gap: 10px;
    color: #fff;
    min-width: 160px;
    letter-spacing: 0;
    font-weight: 1000
}

.brandMark {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: linear-gradient(180deg, #fff7db 0%, #ffbe2e 100%);
    border: 3px solid rgba(255, 255, 255, .55);
    color: #d40000;
    font-size: 24px;
    box-shadow: 0 8px 18px rgba(130, 0, 0, .18)
}

.brandText {
    display: grid;
    gap: 2px;
    line-height: 1
}

.brandName {
    font-size: 22px;
    font-weight: 1000;
    letter-spacing: .5px
}

.brandSlogan {
    font-size: 11px;
    font-weight: 800;
    opacity: .95;
    letter-spacing: .2px
}

.nav {
    flex: 1;
    gap: 18px;
    justify-content: flex-start;
    overflow: visible;
    padding: 0;
    min-width: 0
}

.navItem {
    display: flex;
    align-items: center
}

.navLink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 34px;
    padding: 0 13px;
    border-radius: 999px;
    color: #fff;
    background: transparent;
    border: 0;
    box-shadow: none;
    font-size: 15px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap
}

.navLink:hover {
    background: rgba(255, 255, 255, .13)
}

.navLink.active {
    background: #fff;
    color: #d40000;
    border: 0;
    box-shadow: 0 8px 20px rgba(110, 0, 0, .12)
}

.caret,
.dropdownMenu {
    display: none !important
}

.rightTools {
    gap: 12px;
    margin-left: 0;
    flex: 0 0 auto;
    flex-wrap: nowrap
}

.search {
    width: 294px;
    min-width: 230px;
    max-width: 294px;
    height: 40px;
    gap: 0;
    position: relative
}

.searchInput {
    height: 40px;
    width: 100%;
    border-radius: 999px;
    border: 0;
    background: #fff;
    padding: 0 72px 0 18px;
    box-shadow: 0 8px 18px rgba(112, 0, 0, .13);
    font-size: 12px;
    color: #3b322d
}

.searchInput::placeholder {
    color: #a49c96
}

.searchBtn {
    position: absolute;
    right: 3px;
    top: 3px;
    height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: #fff;
    border: 0;
    box-shadow: none;
    color: #d40000;
    font-size: 13px;
    font-weight: 1000
}

.searchBtn span:first-child {
    display: none
}

.searchBtn span {
    font-size: 13px
}

.btn.red {
    height: 40px;
    border: 0;
    border-radius: 8px;
    padding: 0 16px;
    background: linear-gradient(180deg, #fff3d4, #ffd98a);
    color: #af3d00;
    font-size: 14px;
    font-weight: 1000;
    box-shadow: 0 8px 18px rgba(111, 0, 0, .12)
}

#authBtn::before {
    content: "♛";
    font-size: 17px;
    line-height: 1;
    color: #d05e00
}

.rightTools .btn.red:not(#authBtn) {
    display: none
}

.breadcrumb {
    height: 34px;
    margin: 12px 0 8px;
    color: #928b85;
    font-size: 12px;
    font-weight: 700;
    gap: 8px
}

.breadcrumb a {
    color: #7f7871;
    font-weight: 800
}

.breadcrumb .cur {
    color: #5e5650;
    font-weight: 900
}

.breadcrumb .sep {
    opacity: .45
}

#page-special {
    padding: 0 0 0
}

#page-special .topicPreviewHero {
    position: relative;
    min-height: 338px;
    padding: 38px 36px 32px;
    overflow: hidden !important;
    border-radius: 12px;
    background: radial-gradient(640px 210px at 82% 82%, rgba(237, 76, 45, .12), transparent 67%), linear-gradient(135deg, #fff 0%, #fff 62%, #fff6f1 100%);
    border: 1px solid #ece4dd;
    box-shadow: 0 10px 28px rgba(36, 25, 18, .075)
}

#page-special .topicPreviewHero:before {
    content: "";
    position: absolute;
    right: -120px;
    bottom: -152px;
    width: 760px;
    height: 330px;
    border-radius: 50%;
    background: linear-gradient(12deg, rgba(206, 18, 18, .17), rgba(255, 145, 75, .035));
    transform: rotate(-8deg);
    pointer-events: none
}

#page-special .topicPreviewHero:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 90px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(253, 240, 232, .5));
    pointer-events: none
}

.topicPreviewHeroCopy {
    position: relative;
    z-index: 3;
    max-width: 820px
}

.topicPreviewTitle {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 15px;
    font-size: 38px;
    line-height: 1.15;
    letter-spacing: -.9px;
    color: #111;
    font-weight: 1000
}

.topicPreviewBadge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    background: #fff1f0;
    color: #d71920;
    border: 1px solid #ffd8d2;
    font-size: 14px;
    font-weight: 1000;
    letter-spacing: .1px
}

.topicPreviewDesc {
    max-width: 900px;
    margin: 0;
    color: #2f2a26;
    font-size: 14px;
    line-height: 2.02;
    font-weight: 500
}

.topicPreviewMeta {
    margin-top: 25px;
    gap: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.topicPreviewMeta .topicMetaChip {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0 22px 0 0;
    margin-right: 22px;
    border: 0;
    border-right: 1px solid #eadbd2;
    border-radius: 0;
    background: transparent;
    color: #403832;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
    white-space: nowrap
}

.topicPreviewMeta .topicMetaChip:last-child {
    border-right: 0;
    margin-right: 0;
    padding-right: 0
}

.topicMetaIcon {
    width: 21px;
    height: 21px;
    color: #e33428;
    display: inline-grid;
    place-items: center;
    position: relative;
    flex: 0 0 21px
}

.topicMetaIcon::before,
.topicMetaIcon::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    display: block
}

.topicMetaIcon.icon-date::before {
    width: 15px;
    height: 15px;
    border: 1.8px solid currentColor;
    border-radius: 3px;
    top: 4px;
    left: 3px
}

.topicMetaIcon.icon-date::after {
    width: 13px;
    height: 1.8px;
    background: currentColor;
    top: 8px;
    left: 4px;
    box-shadow: 3px -5px 0 -1px currentColor, -3px -5px 0 -1px currentColor
}

.topicMetaIcon.icon-type::before {
    width: 16px;
    height: 16px;
    border: 1.8px solid currentColor;
    border-radius: 50%;
    left: 2px;
    top: 2px
}

.topicMetaIcon.icon-type::after {
    width: 7px;
    height: 7px;
    border-left: 1.8px solid currentColor;
    border-bottom: 1.8px solid currentColor;
    transform: rotate(-45deg);
    left: 7px;
    top: 6px
}

.topicMetaIcon.icon-scene::before {
    width: 16px;
    height: 16px;
    border: 1.8px solid currentColor;
    border-radius: 50% 50% 48% 48%;
    left: 3px;
    top: 1px
}

.topicMetaIcon.icon-scene::after {
    width: 18px;
    height: 7px;
    border: 1.8px solid currentColor;
    border-top: 0;
    border-radius: 0 0 10px 10px;
    left: 1px;
    bottom: 1px
}

.topicMetaIcon.icon-lock::before {
    width: 16px;
    height: 16px;
    border: 1.8px solid currentColor;
    border-radius: 50% 50% 45% 45%;
    left: 2px;
    top: 3px
}

.topicMetaIcon.icon-lock::after {
    width: 6px;
    height: 6px;
    border-left: 1.8px solid currentColor;
    border-bottom: 1.8px solid currentColor;
    transform: rotate(-45deg);
    left: 7px;
    top: 8px
}

.topicHeroActions {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 27px
}

.topicHeroBtn {
    min-width: 172px;
    height: 46px;
    line-height: 42px;
    text-align: center;
    border-radius: 999px;
    border: 1px solid #d71920;
    cursor: pointer;
    font-size: 15px;
    font-weight: 1000;
    transition: .15s transform, .15s box-shadow, .15s background
}

.topicHeroBtn:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(215, 25, 32, .15)
}

.topicHeroBtn.primary {
    background: #d71920;
    color: #fff
}

.topicHeroBtn.ghost {
    background: #fff;
    color: #d71920
}

.topicHeroArt {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 43%;
    min-width: 380px;
    pointer-events: none;
    overflow: hidden;
    z-index: 2
}

.topicHeroArt:before {
    content: "";
    position: absolute;
    right: -60px;
    top: 96px;
    width: 420px;
    height: 230px;
    border-radius: 50%;
    background: radial-gradient(circle at 46% 54%, rgba(255, 196, 124, .24), rgba(255, 255, 255, 0) 66%)
}

.topicMountains {
    position: absolute;
    left: 0;
    right: -20px;
    bottom: 0;
    height: 142px;
    opacity: .95;
    background: linear-gradient(163deg, transparent 0 39%, rgba(222, 188, 171, .35) 40% 58%, transparent 59%), linear-gradient(151deg, transparent 0 50%, rgba(229, 199, 183, .30) 51% 72%, transparent 73%), linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(246, 221, 208, .62))
}

.topicMonument {
    position: absolute;
    right: 82px;
    top: 50px;
    width: 92px;
    height: 204px;
    border-radius: 42px 42px 18px 18px;
    background: radial-gradient(circle at 48% 21%, rgba(255, 255, 255, .34), transparent 35%), linear-gradient(180deg, #ffbd48 0, #e47919 65%, #c75b11 100%);
    box-shadow: 0 18px 44px rgba(177, 64, 17, .24)
}

.topicMonument:before {
    content: "";
    position: absolute;
    left: 50%;
    top: -20px;
    width: 44px;
    height: 44px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: linear-gradient(180deg, #ffd579, #f1881b);
    box-shadow: 0 8px 15px rgba(157, 66, 12, .16)
}

.topicMonument:after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    top: 58px;
    height: 98px;
    border-left: 4px solid rgba(255, 237, 176, .35);
    border-right: 4px solid rgba(130, 53, 7, .12);
    border-radius: 999px
}

.monumentStar {
    position: absolute;
    left: 50%;
    top: 9px;
    transform: translateX(-50%);
    color: #fff2ce;
    font-size: 23px;
    z-index: 2;
    text-shadow: 0 1px 4px rgba(142, 52, 0, .18)
}

.monumentBase {
    position: absolute;
    left: -24px;
    right: -24px;
    bottom: -22px;
    height: 43px;
    border-radius: 999px 999px 9px 9px;
    background: linear-gradient(180deg, #f8ab35, #d15d14);
    box-shadow: 0 12px 24px rgba(183, 62, 12, .18)
}

.topicRibbon {
    position: absolute;
    right: -86px;
    bottom: 4px;
    width: 556px;
    height: 116px;
    border-radius: 58% 0 0 45%;
    background: linear-gradient(102deg, #ff5a26 0%, #d71920 42%, #9d0c13 100%);
    transform: rotate(-10deg);
    box-shadow: 0 18px 40px rgba(190, 23, 20, .22)
}

.topicRibbon.r2 {
    right: -140px;
    bottom: 88px;
    width: 442px;
    height: 76px;
    opacity: .96;
    transform: rotate(-22deg);
    filter: saturate(1.05)
}

.topicRibbon.r1:after {
    content: "";
    position: absolute;
    left: 44px;
    top: 10px;
    width: 170px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    transform: rotate(8deg)
}

.topicBird {
    position: absolute;
    width: 25px;
    height: 14px;
    border-top: 4px solid #ef5a40;
    border-radius: 50%;
    opacity: .9
}

.topicBird:after {
    content: "";
    position: absolute;
    right: -19px;
    top: -4px;
    width: 25px;
    height: 14px;
    border-top: 4px solid #ef5a40;
    border-radius: 50%;
    transform: rotate(-10deg)
}

.topicBird.b1 {
    right: 306px;
    top: 136px;
    transform: rotate(18deg)
}

.topicBird.b2 {
    right: 238px;
    top: 97px;
    transform: rotate(-10deg) scale(.82)
}

.topicBird.b3 {
    right: 382px;
    top: 122px;
    transform: rotate(-12deg) scale(.72)
}

#page-special .topicResourceSection {
    margin-top: 23px
}

.topicSectionTitleRow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px
}

.topicSectionTitleMain {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0
}

.topicSectionTitleMain h2 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    font-size: 22px;
    line-height: 1.2;
    color: #111;
    font-weight: 1000
}

.topicSectionTitleMain h2 span {
    display: inline-block;
    width: 5px;
    height: 24px;
    border-radius: 999px;
    background: #e32622
}

.topicSectionTitleMain em {
    font-style: normal;
    color: #9a928d;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap
}

.topicMoreText {
    border: 0;
    background: transparent;
    color: #88817b;
    cursor: pointer;
    font-size: 13px;
    font-weight: 800;
    display: inline-flex;
    align-items: center
}

#page-special .topicResourceGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px
}

.topicDownloadCard {
    display: flex;
    flex-direction: column;
    min-height: 184px;
    padding: 18px 16px 14px;
    border: 1px solid #eee6df;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(30, 20, 15, .045);
    transition: .16s transform, .16s box-shadow, .16s border-color
}

.topicDownloadCard:hover {
    transform: translateY(-2px);
    border-color: #f2c5bd;
    box-shadow: 0 12px 26px rgba(42, 26, 18, .07)
}

.topicFileTop {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: flex-start
}

.topicFileIcon {
    position: relative;
    width: 42px;
    height: 52px;
    border-radius: 6px 6px 5px 5px;
    background: linear-gradient(180deg, #ff512e, #ef2a12);
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 7px;
    font-size: 13px;
    font-weight: 1000;
    box-shadow: 0 10px 18px rgba(224, 45, 22, .18)
}

.topicFileIcon:before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 16px;
    height: 16px;
    background: rgba(255, 255, 255, .88);
    clip-path: polygon(0 0, 100% 0, 100% 100%);
    border-radius: 0 6px 0 0
}

.topicFileIcon:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 16px;
    height: 16px;
    background: rgba(143, 0, 0, .12);
    clip-path: polygon(0 0, 0 100%, 100% 100%)
}

.topicFileIcon.is-doc {
    background: linear-gradient(180deg, #2f82f0, #1761d4);
    box-shadow: 0 10px 18px rgba(23, 97, 212, .18)
}

.topicFileIcon.is-zip {
    background: linear-gradient(180deg, #ffc54c, #f2a51e);
    color: #5d3500;
    box-shadow: 0 10px 18px rgba(242, 165, 30, .18)
}

.topicFileIcon.is-xls {
    background: linear-gradient(180deg, #27b476, #12945d);
    box-shadow: 0 10px 18px rgba(18, 148, 93, .18)
}

.topicFileIcon.is-pdf {
    background: linear-gradient(180deg, #ff624d, #dc271c);
    box-shadow: 0 10px 18px rgba(220, 39, 28, .18)
}

.topicFileType {
    margin-top: 7px;
    text-align: center;
    color: #1f1a17;
    font-size: 12px;
    font-weight: 800;
    line-height: 1
}

.topicDownloadTitle {
    display: block;
    color: #18130f;
    font-size: 14px;
    font-weight: 1000;
    line-height: 1.58;
    min-height: 44px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.topicDownloadTitle:hover {
    color: #d71920
}

.topicDownloadTags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 8px
}

.topicDownloadTags span {
    height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: #f5efeb;
    color: #655b53;
    font-size: 11px;
    font-weight: 800;
    display: inline-flex;
    align-items: center
}

.topicDownloadMeta {
    margin-top: 10px;
    color: #8a8179;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.55;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.topicDownloadActions {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: auto;
    padding-top: 14px
}

.topicDownloadBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 78px;
    height: 30px;
    border-radius: 6px;
    border: 1px solid #d8d2cc;
    background: #fff;
    color: #221c18;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer
}

.topicDownloadBtn.dl {
    border-color: #d71920;
    background: #d71920;
    color: #fff;
    box-shadow: 0 9px 16px rgba(215, 25, 32, .16)
}

.topicMoreBtnWrap {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 18px
}

.topicMoreBtn {
    min-width: 220px;
    height: 38px;
    border-radius: 10px;
    border: 1px solid #d8d2cc;
    background: #fff;
    color: #28231f;
    cursor: pointer;
    font-size: 14px;
    font-weight: 1000;
    box-shadow: 0 6px 14px rgba(30, 20, 16, .035)
}

.topicMoreBtn:after {
    content: "⌄";
    margin-left: 12px
}

.topicMoreBtn[data-expanded="1"]:after {
    content: "⌃"
}

.topicIntroFaqPanel {
    margin-top: 20px;
    border-radius: 12px;
    border: 1px solid #eee6df;
    background: #fff;
    box-shadow: 0 8px 22px rgba(30, 20, 15, .045);
    overflow: hidden !important
}

.topicIntroFaqLayout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 520px;
    gap: 28px;
    align-items: start;
    padding: 22px 28px 24px
}

.topicIntroBlock {
    min-width: 0;
    padding-right: 2px
}

.topicFaqBlock {
    min-width: 0;
    border-left: 1px solid #eee6df;
    padding-left: 28px
}

.topicIntroTitle {
    margin: 0 0 12px;
    font-size: 20px;
    line-height: 1.25;
    color: #111;
    font-weight: 1000
}

#page-special .topicIntroCopy {
    border: 0;
    box-shadow: none;
    padding: 0;
    background: transparent
}

#page-special .topicIntroCopy p {
    margin: 0 0 9px;
    font-size: 14px;
    line-height: 1.95;
    color: #3b3631
}

#page-special .topicIntroCopy p:last-child {
    margin-bottom: 0
}

.topicFaqTitle {
    margin: 0 0 12px;
    font-size: 20px;
    line-height: 1.25;
    color: #111;
    font-weight: 1000
}

.topicFaqGrid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px
}

.topicFaqItem {
    border: 1px solid #ece5df;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    box-shadow: none
}

.topicFaqItem summary {
    list-style: none;
    min-height: 36px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 0 12px;
    cursor: pointer;
    font-size: 13px;
    color: #221f1c;
    font-weight: 800
}

.topicFaqItem summary::-webkit-details-marker {
    display: none
}

.topicFaqItem summary b {
    color: #d71920;
    font-weight: 1000;
    min-width: 24px
}

.topicFaqItem summary span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.topicFaqItem summary i {
    color: #333;
    font-style: normal;
    transition: .15s transform
}

.topicFaqItem[open] summary i {
    transform: rotate(180deg)
}

.topicFaqAnswer {
    color: #6d645c;
    font-size: 13px;
    line-height: 1.8
}

.topicBottomGrid {
    display: grid;
    grid-template-columns: 318px minmax(0, 1fr);
    gap: 18px;
    margin-top: 18px;
    align-items: start
}

.topicMemberCard {
    border: 1px solid #f2d7b8;
    border-radius: 12px;
    padding: 22px 24px;
    background: radial-gradient(280px 140px at 10% 0%, rgba(255, 201, 110, .48), transparent 60%), linear-gradient(135deg, #fff7ec 0%, #fff 100%);
    box-shadow: 0 8px 22px rgba(30, 20, 15, .045)
}

.topicMemberIcon {
    color: #e28b00;
    font-size: 26px;
    line-height: 1
}

.topicMemberCard h3 {
    margin: 9px 0 14px;
    color: #c25800;
    font-size: 18px;
    line-height: 1.46;
    font-weight: 1000
}

.topicMemberCard ul {
    margin: 0 0 18px 0;
    padding: 0;
    list-style: none;
    color: #8a6a42;
    font-size: 13px;
    line-height: 2;
    font-weight: 800
}

.topicMemberCard li:before {
    content: "✓";
    margin-right: 8px;
    color: #e78400;
    font-weight: 1000
}

.topicMemberBtn {
    width: 100%;
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: #d71920;
    color: #fff;
    cursor: pointer;
    font-size: 15px;
    font-weight: 1000;
    box-shadow: 0 14px 28px rgba(215, 25, 32, .18)
}

.topicInternalPanel {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important
}

.topicInternalPanel .panelBd {
    padding: 0 !important
}

.topicInternalPreview {
    padding: 17px 18px 16px;
    border: 1px solid #eee6df;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(30, 20, 15, .035)
}

.topicLinkHubHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px
}

.topicLinkHubHead h3 {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    color: #111;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 1000
}

.topicLinkHubHead h3:before {
    content: "";
    width: 5px;
    height: 22px;
    border-radius: 999px;
    background: #d71920;
    flex: 0 0 5px
}

.topicLinkHubHead span {
    color: #9a928d;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap
}

.topicLinkGroup {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    align-items: flex-start
}

.topicLinkGroup+.topicLinkGroup {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #f0e6df
}

.topicLinkGroupLabel {
    display: flex;
    align-items: center;
    min-height: 28px;
    color: #C40000;
    font-size: 13px;
    font-weight: 1000;
    white-space: nowrap
}

.topicLinkGroupLabel:before {
    content: "";
    width: 3px;
    height: 14px;
    margin-right: 7px;
    border-radius: 999px;
    background: #e32622;
    opacity: .85
}

.topicTagList {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    min-width: 0
}

.topicInternalTag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    min-height: 28px;
    padding: 0 11px;
    border-radius: 999px;
    border: 1px solid #efe4de;
    background: #fff;
    color: #4d433d;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
    transition: .14s transform, .14s border-color, .14s background, .14s color
}

.topicInternalTag:hover {
    transform: translateY(-1px);
    border-color: #e8b9b3;
    background: #fff7f6;
    color: #d71920
}

.topicInternalTag.is-upper {
    background: #fffdfa;
    color: #6f645d;
    border-color: #ece3dc
}

.topicInternalTag.is-related {
    background: #fff8f7;
    color: #a81515;
    border-color: #f1d8d5
}

.topicInternalTag.is-type {
    background: #faf7f3;
    color: #7a5741;
    border-color: #eee1d7
}

.topicInternalTagCount {
    margin-left: 6px;
    padding-left: 6px;
    border-left: 1px solid rgba(0, 0, 0, .08);
    color: #8e8580;
    font-size: 11px;
    font-weight: 800
}

.topicInternalEmpty {
    color: #9a928d;
    font-size: 12px;
    font-weight: 800;
    line-height: 28px
}

footer {
    margin-top: 22px;
    background: #fff;
    border-top: 1px solid #eee6df;
    box-shadow: 0 -4px 18px rgba(30, 20, 15, .03)
}

.footerInner {
    padding: 0
}

.footerGrid {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 62px;
    padding: 16px 0 8px;
    border-bottom: 1px solid #f0ebe7
}

.footerService {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #8c8680;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap
}

.footerService i {
    font-style: normal;
    color: #aaa29b;
    font-size: 17px
}

.footerLinks {
    display: flex !important;
    gap: 24px;
    justify-content: center;
    margin-top: 10px
}

.footerLinks a {
    font-size: 12px;
    color: #8c8680;
    font-weight: 800
}

.footerTitle,
.footerNote {
    display: none
}

.copyright {
    border-top: 0;
    padding: 6px 0 14px;
    color: #9a948e;
    text-align: center;
    font-size: 12px
}

@media (max-width:1120px) {
    .wrap {
        padding: 0 18px
    }

    .topbar {
        gap: 14px
    }

    .brand {
        min-width: 140px
    }

    .brandName {
        font-size: 19px
    }

    .brandMark {
        width: 40px;
        height: 40px
    }

    .nav {
        gap: 8px
    }

    .navLink {
        font-size: 13px;
        padding: 0 9px
    }

    .search {
        width: 230px;
        min-width: 190px
    }

    .topicHeroArt {
        opacity: .38;
        width: 48%
    }

    .topicBottomGrid {
        grid-template-columns: 1fr
    }

    #page-special .topicResourceGrid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .footerGrid {
        gap: 26px;
        flex-wrap: wrap
    }
}

@media (max-width:820px) {
    .siteHeader {
        height: auto
    }

    .topbar {
        height: auto;
        min-height: 64px;
        padding: 8px 0;
        flex-wrap: wrap
    }

    .nav {
        order: 3;
        width: 100%;
        overflow: auto;
        padding-bottom: 6px
    }

    .rightTools {
        margin-left: auto
    }

    .search {
        width: 240px
    }

    .topicPreviewTitle {
        font-size: 28px;
        align-items: flex-start;
        flex-direction: column;
        gap: 8px
    }

    .topicPreviewDesc {
        font-size: 13px
    }

    .topicPreviewMeta .topicMetaChip {
        border-right: 0;
        padding-right: 0;
        margin-right: 16px
    }

    .topicHeroArt {
        display: none
    }

    .topicHeroBtn {
        width: 100%;
        min-width: 0
    }

    .topicSectionTitleRow {
        align-items: flex-start;
        flex-direction: column
    }

    .topicIntroFaqLayout {
        grid-template-columns: 1fr;
        padding: 18px 18px 20px
    }

    .topicFaqBlock {
        border-left: 0;
        border-top: 1px solid #eee6df;
        padding-left: 0;
        padding-top: 18px
    }

    .topicFaqGrid {
        grid-template-columns: 1fr
    }

    #page-special .topicResourceGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .footerGrid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 14px
    }

    .footerService {
        justify-content: center
    }
}

@media (max-width:520px) {
    .wrap {
        padding: 0 14px
    }

    .rightTools {
        width: 100%;
        justify-content: space-between
    }

    .search {
        width: calc(100% - 116px);
        min-width: 0
    }

    .topicPreviewHero {
        padding: 22px 18px !important
    }

    .topicPreviewTitle {
        font-size: 24px
    }

    .topicPreviewMeta {
        gap: 10px
    }

    .topicPreviewMeta .topicMetaChip {
        width: 100%;
        margin: 0
    }

    #page-special .topicResourceGrid {
        grid-template-columns: 1fr
    }

    .footerGrid {
        grid-template-columns: 1fr
    }
}

#page-special .topicResultListSection {
    margin-top: 24px;
    padding: 0;
    overflow: hidden !important;
    background: #fff;
    border: 1px solid #e8ddd5;
    border-radius: 22px;
    box-shadow: 0 12px 32px rgba(34, 24, 18, .055)
}

#page-special .topicResultListSection .topicSectionTitleRow {
    min-height: 70px;
    margin: 0;
    padding: 0 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #eee5de;
    background: #fff
}

#page-special .topicResultListSection .topicSectionTitleMain h2 {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #171717;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 1000;
    letter-spacing: .1px
}

#page-special .topicResultListSection .topicSectionTitleMain h2 span {
    display: none
}

#page-special .topicResourceSortBar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
    color: #7b6f66;
    font-size: 14px;
    font-weight: 900;
    white-space: nowrap
}

#page-special .topicResourceCount {
    font-style: normal;
    color: #7b6f66;
    font-size: 14px;
    font-weight: 900
}

#page-special .topicSortLabel {
    color: #3b3029;
    font-weight: 1000
}

#page-special .topicSortPill {
    height: 36px;
    padding: 0 18px;
    border-radius: 999px;
    border: 1px solid #eaded7;
    background: #fff;
    color: #5e5148;
    cursor: default;
    font-size: 14px;
    font-weight: 1000;
    box-shadow: none
}

#page-special .topicSortPill.is-active {
    color: #d71920;
    border-color: #f3cfc9;
    background: #fff7f5
}

#page-special #specialResourceMoreTop {
    display: none !important
}

#page-special .topicResultListSection .topicResourceGrid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 24px !important;
    padding: 24px 22px 18px;
    margin: 0
}

#page-special .topicResultListSection .topicResourceGrid .muted {
    grid-column: 1/-1;
    padding: 22px;
    text-align: center;
    border: 1px dashed #eaded7;
    border-radius: 14px;
    background: #fffaf7
}

#page-special .topicResultCard {
    display: block;
    overflow: hidden;
    border: 1px solid #eaded7;
    border-radius: 15px;
    background: #fff;
    box-shadow: none;
    transition: .16s transform, .16s box-shadow, .16s border-color
}

#page-special .topicResultCard:hover {
    transform: translateY(-2px);
    border-color: #efc7bf;
    box-shadow: 0 12px 28px rgba(36, 24, 18, .08)
}

#page-special .topicResultThumb {
    position: relative;
    overflow: hidden;
    aspect-ratio: 3 / 4;
    background: #f3ede8;
    border-bottom: 1px solid #eaded7
}

#page-special .topicResultThumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transform: scale(1.001);
    transition: .24s transform ease
}

#page-special .topicResultCard:hover .topicResultThumb img {
    transform: scale(1.035)
}

#page-special .topicResultBadge {
    position: absolute;
    left: 12px;
    top: 12px;
    height: 26px;
    min-width: 48px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #fff;
    color: #d71920;
    font-size: 12px;
    font-weight: 1000;
    box-shadow: 0 8px 16px rgba(106, 0, 0, .12);
    z-index: 2
}

#page-special .topicResultCorner {
    position: absolute;
    right: 8px;
    top: 8px;
    width: 14px;
    height: 14px;
    border-radius: 2px;
    background: linear-gradient(135deg, rgba(255, 255, 255, .94), rgba(255, 255, 255, 0));
    opacity: .86;
    transform: rotate(45deg);
    z-index: 2
}

#page-special .topicResultTitle {
    min-height: 56px;
    padding: 11px 12px 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-align: center;
    color: #5a4b40;
    font-size: 15px;
    line-height: 1.42;
    font-weight: 1000;
    background: #fff
}

#page-special .topicResultCard:hover .topicResultTitle {
    color: #d71920
}

#page-special .topicResultListSection .topicMoreBtnWrap {
    margin: 0;
    padding: 0 22px 24px;
    display: flex;
    align-items: center;
    justify-content: center
}

#page-special .topicResultListSection .topicMoreBtn {
    min-width: 222px;
    height: 38px;
    border-radius: 999px;
    border: 1px solid #ded5cd;
    background: #fff;
    color: #2f2924;
    font-size: 14px;
    font-weight: 1000;
    box-shadow: 0 8px 18px rgba(30, 20, 16, .045)
}

@media (max-width:1120px) {
    #page-special .topicResultListSection .topicResourceGrid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 20px !important
    }
}

@media (max-width:820px) {
    #page-special .topicResultListSection .topicSectionTitleRow {
        height: auto;
        min-height: 70px;
        padding: 14px 18px;
        align-items: flex-start;
        flex-direction: column
    }

    #page-special .topicResourceSortBar {
        justify-content: flex-start;
        gap: 8px
    }

    #page-special .topicSortPill {
        height: 32px;
        padding: 0 14px;
        font-size: 13px
    }

    #page-special .topicResultListSection .topicResourceGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        padding: 18px;
        gap: 16px !important
    }
}

@media (max-width:520px) {
    #page-special .topicResultListSection {
        border-radius: 16px
    }

    #page-special .topicResultListSection .topicResourceGrid {
        grid-template-columns: 1fr !important
    }
}

.siteHeader.dkHeader {
    position: sticky;
    top: 0;
    z-index: 80;
    height: 88px;
    overflow: hidden;
    background: linear-gradient(90deg, #bc0000 0%, #db0000 44%, #c40000 100%);
    border-bottom: 0;
    box-shadow: 0 12px 28px rgba(130, 0, 0, .22)
}

.siteHeader.dkHeader::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(520px 180px at 16% 150%, rgba(255, 255, 255, .10), transparent 62%), radial-gradient(320px 110px at 82% 0%, rgba(255, 194, 78, .11), transparent 70%), linear-gradient(15deg, rgba(120, 0, 0, .18), transparent 42%);
    pointer-events: none
}

.siteHeader.dkHeader::after {
    content: "";
    position: absolute;
    left: -70px;
    bottom: -88px;
    width: 540px;
    height: 170px;
    border-radius: 50%;
    background: linear-gradient(15deg, rgba(255, 82, 54, .16), rgba(255, 255, 255, 0));
    transform: rotate(4deg);
    pointer-events: none
}

.dkHeader .dkHeaderWrap {
    position: relative;
    z-index: 1;
    max-width: 1760px;
    padding: 0 70px
}

.dkTopbar {
    height: 88px;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 28px;
    overflow: visible
}

.dkBrand {
    min-width: 312px;
    gap: 14px;
    color: #fff;
    letter-spacing: 0;
    font-weight: 1000
}

.dkLogoMark {
    width: 80px;
    height: 66px;
    display: grid;
    place-items: center;
    flex: 0 0 80px;
    filter: drop-shadow(0 10px 18px rgba(100, 0, 0, .22))
}

.dkLogoMark svg {
    width: 80px;
    height: 66px;
    display: block
}

.dkLogoPage {
    fill: none;
    stroke: #fff;
    stroke-width: 5.6;
    stroke-linejoin: round;
    stroke-linecap: round
}

.dkLogoLine {
    fill: none;
    stroke: #fff;
    stroke-width: 4.2;
    stroke-linecap: round;
    opacity: .96
}

.dkLogoArc {
    fill: none;
    stroke: url(#dkLogoGold);
    stroke-width: 5.6;
    stroke-linecap: round
}

.dkLogoStar {
    fill: url(#dkLogoGold);
    filter: drop-shadow(0 2px 3px rgba(80, 0, 0, .12))
}

.dkBrandText {
    display: grid;
    gap: 5px;
    line-height: 1
}

.dkBrandText .brandName {
    font-size: 34px;
    font-weight: 1000;
    letter-spacing: .4px;
    color: #fff;
    text-shadow: 0 2px 10px rgba(80, 0, 0, .16)
}

.dkBrandText .brandSlogan {
    font-size: 15px;
    font-weight: 900;
    letter-spacing: .4px;
    color: #ffe89b;
    opacity: 1
}

.dkHeaderDivider {
    width: 1px;
    height: 52px;
    background: rgba(255, 255, 255, .18);
    display: block;
    flex: 0 0 1px
}

.dkNav {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 34px;
    overflow: visible;
    padding: 0
}

.dkNav .navItem {
    display: flex;
    align-items: center
}

.dkNav .navLink {
    position: relative;
    height: 58px;
    padding: 0 0;
    color: #fff;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    font-size: 22px;
    font-weight: 1000;
    line-height: 1;
    white-space: nowrap;
    text-shadow: 0 2px 8px rgba(90, 0, 0, .16)
}

.dkNav .navLink:hover {
    background: transparent;
    color: #fff6c6
}

.dkNav .navLink.active {
    background: transparent;
    border: 0;
    box-shadow: none;
    color: #ffe889
}

.dkNav .navLink.active::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 4px;
    width: 46px;
    height: 5px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: #ffe889;
    box-shadow: 0 5px 12px rgba(255, 232, 137, .35)
}

.dkHeader .caret,
.dkHeader .dropdownMenu {
    display: none !important
}

.dkRightTools {
    margin-left: auto;
    gap: 28px;
    display: flex;
    align-items: center;
    flex-wrap: nowrap
}

.dkHeaderSearch {
    width: 428px;
    min-width: 428px;
    max-width: 428px;
    height: 56px;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0;
    padding: 0;
    border: 0;
    background: transparent
}

.dkHeaderSearch .dkSearchIcon {
    position: absolute;
    left: 23px;
    top: 50%;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
    z-index: 2;
    border: 3px solid #bababa;
    border-radius: 50%;
    opacity: .85
}

.dkHeaderSearch .dkSearchIcon::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 3px;
    border-radius: 999px;
    background: #bababa;
    right: -7px;
    bottom: 0;
    transform: rotate(45deg);
    transform-origin: center
}

.dkHeaderSearch .searchInput {
    width: 100%;
    height: 56px;
    border: 0;
    border-radius: 24px;
    background: #fff;
    padding: 0 94px 0 62px;
    color: #33302d;
    font-size: 17px;
    font-weight: 700;
    outline: none;
    box-shadow: 0 12px 28px rgba(100, 0, 0, .16), inset 0 0 0 1px rgba(255, 255, 255, .7)
}

.dkHeaderSearch .searchInput::placeholder {
    color: #9d9d9d;
    font-weight: 700
}

.dkHeaderSearch .searchBtn {
    position: absolute;
    right: 8px;
    top: 8px;
    height: 40px;
    min-width: 70px;
    padding: 0 14px;
    border: 0;
    border-radius: 18px;
    background: #fff;
    color: #d40000;
    box-shadow: none;
    font-size: 18px;
    font-weight: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.dkHeaderSearch .searchBtn span:first-child {
    display: none
}

.dkHeaderSearch .searchBtn span {
    font-size: 18px;
    line-height: 1
}

.dkVipBtn {
    height: 56px;
    min-width: 154px;
    padding: 0 25px;
    border: 0;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: linear-gradient(180deg, #fff1bc 0%, #ffd66f 100%) !important;
    color: #9f3200 !important;
    font-size: 20px;
    font-weight: 1000;
    box-shadow: 0 12px 24px rgba(120, 0, 0, .16);
    white-space: nowrap
}

.dkVipBtn::before {
    content: "♛";
    font-size: 22px;
    line-height: 1;
    color: #d06d00
}

.dkFooter {
    margin-top: 36px;
    background: #fff;
    border-top: 1px solid #eee6df;
    color: #252525;
    box-shadow: 0 -4px 18px rgba(40, 25, 15, .03)
}

.dkFooter .wrap {
    max-width: 1760px;
    padding-left: 70px;
    padding-right: 70px
}

.dkFooterMain {
    display: grid;
    grid-template-columns: 1.42fr .9fr 1.25fr 1fr;
    gap: 0;
    padding-top: 58px !important;
    padding-bottom: 48px !important
}

.dkFooterBrand,
.dkFooterCol {
    min-width: 0
}

.dkFooterCol {
    padding-left: 64px;
    border-left: 1px solid #eee4dd
}

.dkFooterLogo {
    display: flex;
    align-items: center;
    gap: 18px;
    color: #b30000
}

.dkFooterLogoMark {
    width: 76px;
    height: 76px;
    border-radius: 13px;
    display: grid;
    place-items: center;
    flex: 0 0 76px;
    box-shadow: 0 10px 24px rgba(190, 0, 0, .14)
}

.dkFooterLogoMark svg {
    width: 76px;
    height: 76px;
    display: block
}

.dkFooterLogoText {
    display: grid;
    gap: 9px;
    line-height: 1
}

.dkFooterLogoText strong {
    font-size: 31px;
    font-weight: 1000;
    color: #b30000;
    letter-spacing: .2px
}

.dkFooterLogoText em {
    font-style: normal;
    font-size: 17px;
    font-weight: 700;
    color: #646464
}

.dkFooterIntro {
    max-width: 520px;
    margin: 30px 0 0;
    font-size: 19px;
    line-height: 1.85;
    color: #2b2b2b;
    font-weight: 500
}

.dkTrustList {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    max-width: 560px;
    margin-top: 32px
}

.dkTrustItem {
    display: grid;
    justify-items: center;
    text-align: center;
    color: #181818
}

.dkTrustItem b {
    margin-top: 10px;
    font-size: 18px;
    font-weight: 1000;
    line-height: 1.25
}

.dkTrustItem em {
    font-style: normal;
    margin-top: 6px;
    font-size: 15px;
    color: #777;
    font-weight: 700;
    line-height: 1.2
}

.dkTrustIcon {
    position: relative;
    width: 44px;
    height: 44px;
    display: block;
    color: #d71920
}

.dkTrustIcon.shield::before {
    content: "";
    position: absolute;
    left: 8px;
    top: 5px;
    width: 28px;
    height: 30px;
    border: 3px solid currentColor;
    border-radius: 9px 9px 12px 12px;
    clip-path: polygon(50% 0, 100% 13%, 100% 58%, 50% 100%, 0 58%, 0 13%)
}

.dkTrustIcon.shield::after {
    content: "";
    position: absolute;
    left: 18px;
    top: 18px;
    width: 15px;
    height: 8px;
    border-left: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(-45deg)
}

.dkTrustIcon.cloud::before {
    content: "";
    position: absolute;
    left: 4px;
    top: 17px;
    width: 36px;
    height: 18px;
    border: 3px solid currentColor;
    border-radius: 18px;
    background: #fff
}

.dkTrustIcon.cloud::after {
    content: "";
    position: absolute;
    left: 17px;
    top: 28px;
    width: 10px;
    height: 13px;
    border-left: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(-45deg)
}

.dkTrustIcon.refresh::before {
    content: "";
    position: absolute;
    inset: 6px;
    border: 3px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%
}

.dkTrustIcon.refresh::after {
    content: "";
    position: absolute;
    right: 4px;
    top: 8px;
    border-left: 10px solid currentColor;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    transform: rotate(-18deg)
}

.dkTrustIcon.service::before {
    content: "";
    position: absolute;
    left: 7px;
    top: 12px;
    width: 30px;
    height: 27px;
    border: 3px solid currentColor;
    border-bottom: 0;
    border-radius: 22px 22px 0 0
}

.dkTrustIcon.service::after {
    content: "";
    position: absolute;
    right: 6px;
    bottom: 6px;
    width: 10px;
    height: 18px;
    border: 3px solid currentColor;
    border-radius: 5px;
    box-shadow: -30px 0 0 -3px #fff, -30px 0 0 0 currentColor
}

.dkFooterCol h3 {
    margin: 0 0 36px;
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
    color: #b30000;
    letter-spacing: .2px
}

.dkFooterCol a {
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 52px;
    color: #202020;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.25
}

.dkFooterCol a+a {
    margin-top: 4px
}

.dkFooterCol a:hover {
    color: #b30000
}

.dkFooterCol a i {
    margin-left: auto;
    font-style: normal;
    color: #555;
    font-size: 28px;
    font-weight: 300;
    line-height: 1
}

.dkFooterCol a strong {
    font-weight: 1000
}

.dkLinkIcon {
    position: relative;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    color: #d71920;
    display: inline-grid;
    place-items: center;
    font-size: 16px;
    font-weight: 1000
}

.dkLinkIcon.ppt {
    width: 24px;
    height: 24px;
    border-radius: 5px;
    background: #d71920;
    color: #fff;
    font-size: 15px
}

.dkLinkIcon.doc::before,
.dkLinkIcon.file::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 3px;
    width: 18px;
    height: 22px;
    border: 2.5px solid currentColor;
    border-radius: 3px
}

.dkLinkIcon.doc::after,
.dkLinkIcon.file::after {
    content: "";
    position: absolute;
    left: 9px;
    top: 12px;
    width: 10px;
    height: 2.5px;
    background: currentColor;
    box-shadow: 0 6px 0 currentColor
}

.dkLinkIcon.topic::before,
.dkLinkIcon.folder::before {
    content: "";
    position: absolute;
    left: 3px;
    top: 8px;
    width: 23px;
    height: 17px;
    border: 2.5px solid currentColor;
    border-radius: 4px
}

.dkLinkIcon.topic::after,
.dkLinkIcon.folder::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 5px;
    width: 10px;
    height: 6px;
    border: 2.5px solid currentColor;
    border-bottom: 0;
    border-radius: 3px 3px 0 0
}

.dkLinkIcon.edit::before {
    content: "";
    position: absolute;
    inset: 5px;
    border: 2.5px solid currentColor;
    border-radius: 4px
}

.dkLinkIcon.edit::after {
    content: "";
    position: absolute;
    right: 1px;
    top: 4px;
    width: 18px;
    height: 4px;
    background: currentColor;
    border-radius: 4px;
    transform: rotate(-42deg)
}

.dkLinkIcon.coop::before {
    content: "";
    position: absolute;
    left: 3px;
    top: 10px;
    width: 13px;
    height: 10px;
    border: 2.5px solid currentColor;
    border-radius: 50%;
    transform: rotate(-20deg)
}

.dkLinkIcon.coop::after {
    content: "";
    position: absolute;
    right: 3px;
    top: 10px;
    width: 13px;
    height: 10px;
    border: 2.5px solid currentColor;
    border-radius: 50%;
    transform: rotate(20deg)
}

.dkLinkIcon.paper::before {
    content: "";
    position: absolute;
    left: 3px;
    top: 14px;
    width: 24px;
    height: 0;
    border-top: 3px solid currentColor;
    transform: rotate(-22deg)
}

.dkLinkIcon.paper::after {
    content: "";
    position: absolute;
    right: 2px;
    top: 7px;
    width: 0;
    height: 0;
    border-left: 15px solid currentColor;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    transform: rotate(-22deg)
}

.dkLinkIcon.group::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 5px;
    width: 8px;
    height: 8px;
    border: 2.5px solid currentColor;
    border-radius: 50%;
    box-shadow: -9px 8px 0 -2.5px #fff, -9px 8px 0 0 currentColor, 9px 8px 0 -2.5px #fff, 9px 8px 0 0 currentColor
}

.dkLinkIcon.group::after {
    content: "";
    position: absolute;
    left: 3px;
    bottom: 3px;
    width: 22px;
    height: 12px;
    border: 2.5px solid currentColor;
    border-bottom: 0;
    border-radius: 14px 14px 0 0
}

.dkLinkIcon.shield2::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 4px;
    width: 18px;
    height: 20px;
    border: 2.5px solid currentColor;
    border-radius: 6px;
    clip-path: polygon(50% 0, 100% 12%, 100% 58%, 50% 100%, 0 58%, 0 12%)
}

.dkLinkIcon.shield2::after {
    content: "";
    position: absolute;
    left: 12px;
    top: 12px;
    width: 10px;
    height: 6px;
    border-left: 2.5px solid currentColor;
    border-bottom: 2.5px solid currentColor;
    transform: rotate(-45deg)
}

.dkLinkIcon.warn::before {
    content: "";
    position: absolute;
    left: 4px;
    top: 5px;
    width: 20px;
    height: 20px;
    border: 2.5px solid currentColor;
    border-radius: 50%
}

.dkLinkIcon.warn::after {
    content: "!";
    position: absolute;
    left: 11px;
    top: 6px;
    font-size: 17px;
    font-weight: 1000
}

.dkLinkIcon.privacy::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 4px;
    width: 18px;
    height: 21px;
    border: 2.5px solid currentColor;
    border-radius: 5px
}

.dkLinkIcon.privacy::after {
    content: "";
    position: absolute;
    left: 11px;
    top: 12px;
    width: 8px;
    height: 2.5px;
    background: currentColor;
    box-shadow: 0 6px 0 currentColor
}

.dkFooterBottom {
    border-top: 1px solid #eee6df;
    background: #fff
}

.dkFooterBottomGrid {
    display: grid;
    grid-template-columns: 1.05fr 1.05fr 1.35fr 1.25fr .95fr;
    align-items: center;
    gap: 0;
    padding-top: 28px !important;
    padding-bottom: 28px !important
}

.dkFooterContact,
.dkFooterQrWrap {
    min-height: 82px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 0 28px;
    border-left: 1px solid #eee6df
}

.dkFooterContact:first-child {
    border-left: 0;
    padding-left: 0
}

.dkFooterContact p,
.dkFooterQrWrap p {
    margin: 0;
    display: grid;
    gap: 12px;
    line-height: 1.1
}

.dkFooterContact b,
.dkFooterQrWrap b {
    font-size: 19px;
    color: #202020;
    font-weight: 800;
    white-space: nowrap
}

.dkFooterContact em,
.dkFooterQrWrap em {
    font-style: normal;
    font-size: 17px;
    color: #777;
    font-weight: 500;
    line-height: 1.35
}

.dkBottomIcon {
    position: relative;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    color: #df4040;
    display: block
}

.dkBottomIcon.phone::before {
    content: "☎";
    position: absolute;
    inset: 0;
    font-size: 26px;
    line-height: 28px
}

.dkBottomIcon.wechat::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 6px;
    width: 24px;
    height: 17px;
    border: 2px solid currentColor;
    border-radius: 12px;
    background: #fff
}

.dkBottomIcon.wechat::after {
    content: "··";
    position: absolute;
    left: 7px;
    top: 4px;
    color: currentColor;
    font-size: 20px;
    font-weight: 1000;
    letter-spacing: 2px
}

.dkBottomIcon.record::before,
.dkBottomIcon.rights::before {
    content: "";
    position: absolute;
    left: 4px;
    top: 4px;
    width: 20px;
    height: 22px;
    border: 2.4px solid currentColor;
    border-radius: 6px;
    clip-path: polygon(50% 0, 100% 13%, 100% 58%, 50% 100%, 0 58%, 0 13%)
}

.dkBottomIcon.record::after,
.dkBottomIcon.rights::after {
    content: "";
    position: absolute;
    left: 11px;
    top: 12px;
    width: 10px;
    height: 6px;
    border-left: 2.4px solid currentColor;
    border-bottom: 2.4px solid currentColor;
    transform: rotate(-45deg)
}

.dkQrFake {
    position: relative;
    width: 92px;
    height: 92px;
    flex: 0 0 92px;
    border: 1px solid #e3d9d2;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(30, 20, 15, .04);
    overflow: hidden
}

.dkQrFake::before {
    content: "";
    position: absolute;
    inset: 9px;
    background: linear-gradient(90deg, #111 10px, transparent 10px 18px, #111 18px 26px, transparent 26px 40px, #111 40px 48px, transparent 48px), linear-gradient(#111 10px, transparent 10px 18px, #111 18px 26px, transparent 26px 40px, #111 40px 48px, transparent 48px);
    background-size: 48px 48px;
    opacity: .92
}

.dkQrFake::after {
    content: "";
    position: absolute;
    left: 31px;
    top: 31px;
    width: 30px;
    height: 30px;
    border-radius: 7px;
    background: #fff;
    border: 1px solid #efded6
}

.dkQrFake span {
    position: absolute;
    left: 37px;
    top: 37px;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    background: #d71920;
    z-index: 2
}

.dkQrFake span::after {
    content: "★";
    position: absolute;
    inset: 0;
    color: #ffe37c;
    font-size: 11px;
    line-height: 18px;
    text-align: center
}

@media (max-width:1460px) {

    .dkHeader .dkHeaderWrap,
    .dkFooter .wrap {
        padding-left: 32px;
        padding-right: 32px
    }

    .dkBrand {
        min-width: 260px
    }

    .dkLogoMark {
        width: 68px;
        flex-basis: 68px
    }

    .dkLogoMark svg {
        width: 68px
    }

    .dkBrandText .brandName {
        font-size: 28px
    }

    .dkBrandText .brandSlogan {
        font-size: 13px
    }

    .dkTopbar {
        gap: 18px
    }

    .dkNav {
        gap: 22px
    }

    .dkNav .navLink {
        font-size: 18px
    }

    .dkHeaderSearch {
        width: 342px;
        min-width: 342px
    }

    .dkVipBtn {
        min-width: 128px;
        font-size: 16px;
        padding: 0 18px
    }

    .dkFooterMain {
        grid-template-columns: 1.25fr .85fr 1.15fr 1fr
    }

    .dkFooterCol {
        padding-left: 36px
    }

    .dkFooterLogoText strong {
        font-size: 25px
    }

    .dkFooterIntro {
        font-size: 16px
    }

    .dkFooterCol h3 {
        font-size: 24px
    }

    .dkFooterCol a {
        font-size: 18px
    }

    .dkFooterBottomGrid {
        grid-template-columns: 1fr 1fr
    }

    .dkFooterQrWrap {
        border-left: 0;
        margin-top: 14px
    }
}

@media (max-width:1020px) {
    .siteHeader.dkHeader {
        height: auto
    }

    .dkTopbar {
        height: auto;
        min-height: 88px;
        padding: 10px 0;
        flex-wrap: wrap
    }

    .dkBrand {
        min-width: auto
    }

    .dkHeaderDivider {
        display: none
    }

    .dkNav {
        order: 3;
        width: 100%;
        overflow-x: auto;
        padding-bottom: 7px
    }

    .dkRightTools {
        margin-left: auto
    }

    .dkHeaderSearch {
        width: 280px;
        min-width: 240px
    }

    .dkFooterMain {
        grid-template-columns: 1fr 1fr;
        row-gap: 38px
    }

    .dkFooterCol:nth-child(2) {
        border-left: 0;
        padding-left: 0
    }

    .dkFooterBottomGrid {
        grid-template-columns: 1fr
    }

    .dkFooterContact,
    .dkFooterQrWrap {
        border-left: 0;
        border-top: 1px solid #eee6df;
        padding: 18px 0;
        min-height: auto
    }

    .dkFooterContact:first-child {
        border-top: 0
    }

    .dkTrustList {
        max-width: 100%
    }
}

@media (max-width:640px) {

    .dkHeader .dkHeaderWrap,
    .dkFooter .wrap {
        padding-left: 18px;
        padding-right: 18px
    }

    .dkBrandText .brandName {
        font-size: 24px
    }

    .dkLogoMark {
        width: 60px;
        flex-basis: 60px
    }

    .dkLogoMark svg {
        width: 60px
    }

    .dkNav {
        gap: 18px
    }

    .dkNav .navLink {
        font-size: 16px;
        height: 42px
    }

    .dkRightTools {
        width: 100%;
        gap: 12px
    }

    .dkHeaderSearch {
        flex: 1;
        width: auto;
        min-width: 0
    }

    .dkVipBtn {
        height: 48px
    }

    .dkFooterMain {
        grid-template-columns: 1fr
    }

    .dkFooterCol {
        border-left: 0;
        padding-left: 0;
        border-top: 1px solid #eee6df;
        padding-top: 28px
    }

    .dkTrustList {
        grid-template-columns: repeat(2, 1fr)
    }

    .dkFooterLogoText strong {
        font-size: 22px
    }

    .dkFooterIntro {
        font-size: 15px
    }

    .dkFooterCol h3 {
        font-size: 22px;
        margin-bottom: 18px
    }

    .dkFooterCol a {
        font-size: 16px
    }

    .dkFooterContact b,
    .dkFooterQrWrap b {
        font-size: 16px
    }

    .dkFooterContact em,
    .dkFooterQrWrap em {
        font-size: 14px
    }
}

.siteHeader.dkHeader {
    height: 82px !important
}

.dkTopbar {
    height: 82px !important;
    gap: 24px !important
}

.dkBrandText .brandName {
    font-size: 32px !important
}

.dkBrandText .brandSlogan {
    font-size: 13px !important
}

.dkLogoMark {
    width: 76px !important;
    height: 62px !important;
    flex-basis: 76px !important
}

.dkLogoMark svg {
    width: 76px !important;
    height: 62px !important
}

.dkHeaderDivider {
    height: 48px !important
}

.dkNav {
    gap: 30px !important
}

.dkNav .navLink {
    height: 54px !important;
    font-size: 20px !important
}

.dkNav .navLink.active::after {
    bottom: 3px !important;
    width: 42px !important;
    height: 4px !important
}

.dkRightTools {
    gap: 22px !important
}

.dkHeaderSearch {
    width: 410px !important;
    min-width: 410px !important;
    max-width: 410px !important;
    height: 52px !important
}

.dkHeaderSearch .searchInput {
    height: 52px !important;
    font-size: 15px !important;
    padding-left: 58px !important
}

.dkHeaderSearch .dkSearchIcon {
    width: 22px !important;
    height: 22px !important;
    left: 21px !important;
    border-width: 2.5px !important
}

.dkHeaderSearch .searchBtn {
    height: 36px !important;
    top: 8px !important;
    min-width: 66px !important;
    font-size: 16px !important
}

.dkHeaderSearch .searchBtn span {
    font-size: 16px !important
}

.dkVipBtn {
    height: 52px !important;
    min-width: 146px !important;
    font-size: 18px !important;
    padding: 0 22px !important
}

.dkVipBtn::before {
    font-size: 20px !important
}

.dkFooterMain {
    padding-top: 42px !important;
    padding-bottom: 36px !important
}

.dkFooterLogoText strong {
    font-size: 28px !important
}

.dkFooterLogoText em {
    font-size: 14px !important
}

.dkFooterIntro {
    font-size: 16px !important
}

.dkTrustItem b {
    font-size: 15px !important
}

.dkTrustItem em {
    font-size: 12px !important
}

.dkFooterCol h3 {
    font-size: 25px !important
}

.dkFooterCol a {
    font-size: 18px !important
}

.dkFooterCol a i {
    font-size: 25px !important
}

.dkFooterBottomGrid {
    padding-top: 20px !important;
    padding-bottom: 20px !important
}

.dkFooterContact b,
.dkFooterQrWrap b {
    font-size: 16px !important
}

.dkFooterContact em,
.dkFooterQrWrap em {
    font-size: 14px !important
}

@media (max-width:1460px) {
    .siteHeader.dkHeader {
        height: 76px !important
    }

    .dkTopbar {
        height: 76px !important;
        gap: 16px !important
    }

    .dkBrandText .brandName {
        font-size: 26px !important
    }

    .dkBrandText .brandSlogan {
        font-size: 11px !important
    }

    .dkLogoMark {
        width: 64px !important;
        height: 56px !important;
        flex-basis: 64px !important
    }

    .dkLogoMark svg {
        width: 64px !important;
        height: 56px !important
    }

    .dkNav {
        gap: 20px !important
    }

    .dkNav .navLink {
        font-size: 16px !important;
        height: 46px !important
    }

    .dkHeaderSearch {
        width: 320px !important;
        min-width: 320px !important;
        max-width: 320px !important;
        height: 46px !important
    }

    .dkHeaderSearch .searchInput {
        height: 46px !important;
        font-size: 14px !important
    }

    .dkHeaderSearch .searchBtn {
        height: 32px !important;
        min-width: 58px !important;
        font-size: 14px !important
    }

    .dkHeaderSearch .searchBtn span {
        font-size: 14px !important
    }

    .dkVipBtn {
        height: 46px !important;
        min-width: 120px !important;
        font-size: 14px !important
    }

    .dkFooterLogoText strong {
        font-size: 22px !important
    }

    .dkFooterIntro {
        font-size: 13px !important
    }

    .dkFooterCol h3 {
        font-size: 21px !important
    }

    .dkFooterCol a {
        font-size: 15px !important
    }
}

@media (max-width:1020px) {
    .siteHeader.dkHeader {
        height: auto !important
    }

    .dkTopbar {
        height: auto !important;
        min-height: 76px !important
    }
}

@media (max-width:640px) {
    .dkBrandText .brandName {
        font-size: 22px !important
    }

    .dkBrandText .brandSlogan {
        font-size: 11px !important
    }

    .dkNav .navLink {
        font-size: 14px !important;
        height: 38px !important
    }

    .dkFooterLogoText strong {
        font-size: 19px !important
    }

    .dkFooterIntro {
        font-size: 12px !important
    }

    .dkFooterCol h3 {
        font-size: 19px !important
    }

    .dkFooterCol a {
        font-size: 13px !important
    }

    .dkFooterContact b,
    .dkFooterQrWrap b {
        font-size: 13px !important
    }

    .dkFooterContact em,
    .dkFooterQrWrap em {
        font-size: 11px !important
    }
}

.dkFooter {
    margin-top: 14px !important
}

.dkFooter .wrap {
    padding-left: 44px !important;
    padding-right: 44px !important
}

.dkFooterMain {
    grid-template-columns: 1.32fr .82fr 1.12fr .95fr !important;
    padding-top: 16px !important;
    padding-bottom: 12px !important
}

.dkFooterBrand,
.dkFooterCol {
    min-width: 0 !important
}

.dkFooterCol {
    padding-left: 28px !important;
    border-left: 1px solid #eee4dd !important
}

.dkFooterLogo {
    gap: 8px !important
}

.dkFooterLogoMark {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    border-radius: 7px !important;
    box-shadow: 0 4px 10px rgba(190, 0, 0, .08) !important
}

.dkFooterLogoMark svg {
    width: 34px !important;
    height: 34px !important
}

.dkFooterLogoText {
    gap: 2px !important
}

.dkFooterLogoText strong {
    font-size: 14px !important;
    letter-spacing: 0 !important;
    line-height: 1.05 !important
}

.dkFooterLogoText em {
    font-size: 8px !important;
    line-height: 1.1 !important
}

.dkFooterIntro {
    max-width: 360px !important;
    margin: 8px 0 0 !important;
    font-size: 8px !important;
    line-height: 1.55 !important;
    font-weight: 500 !important
}

.dkTrustList {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 6px !important;
    max-width: 360px !important;
    margin-top: 10px !important
}

.dkTrustItem b {
    margin-top: 2px !important;
    font-size: 8px !important;
    line-height: 1.1 !important
}

.dkTrustItem em {
    margin-top: 1px !important;
    font-size: 8px !important;
    line-height: 1.1 !important
}

.dkTrustIcon {
    width: 18px !important;
    height: 18px !important;
    transform: scale(.48) !important;
    transform-origin: center !important;
    margin-bottom: -7px !important
}

.dkFooterCol h3 {
    margin: 0 0 8px !important;
    font-size: 12px !important;
    line-height: 1.05 !important
}

.dkFooterCol a {
    min-height: 18px !important;
    gap: 6px !important;
    font-size: 8px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important
}

.dkFooterCol a+a {
    margin-top: 1px !important
}

.dkFooterCol a i {
    font-size: 11px !important;
    line-height: 1 !important
}

.dkLinkIcon {
    flex: 0 0 14px !important;
    width: 14px !important;
    height: 14px !important;
    font-size: 8px !important;
    transform: scale(.55) !important;
    transform-origin: center !important
}

.dkLinkIcon.ppt {
    width: 14px !important;
    height: 14px !important;
    font-size: 8px !important;
    border-radius: 3px !important
}

.dkFooterBottomGrid {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    grid-template-columns: 1.08fr 1.08fr 1.32fr 1.22fr .9fr !important
}

.dkFooterContact,
.dkFooterQrWrap {
    min-height: 34px !important;
    gap: 6px !important;
    padding: 0 10px !important
}

.dkFooterContact p,
.dkFooterQrWrap p {
    gap: 2px !important;
    line-height: 1.05 !important
}

.dkFooterContact b,
.dkFooterQrWrap b {
    font-size: 8px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important
}

.dkFooterContact em,
.dkFooterQrWrap em {
    font-size: 8px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important
}

.dkBottomIcon {
    flex: 0 0 14px !important;
    width: 14px !important;
    height: 14px !important;
    transform: scale(.58) !important;
    transform-origin: center !important
}

.dkQrFake {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    border-radius: 5px !important
}

.dkQrFake::before {
    inset: 5px !important;
    background-size: 24px 24px !important
}

.dkQrFake::after {
    left: 14px !important;
    top: 14px !important;
    width: 14px !important;
    height: 14px !important;
    border-radius: 4px !important
}

.dkQrFake span {
    left: 17px !important;
    top: 17px !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 2px !important
}

.dkQrFake span::after {
    font-size: 6px !important;
    line-height: 8px !important
}

@media (max-width:1460px) {
    .dkFooter .wrap {
        padding-left: 24px !important;
        padding-right: 24px !important
    }

    .dkFooterMain {
        padding-top: 14px !important;
        padding-bottom: 10px !important
    }

    .dkFooterCol {
        padding-left: 20px !important
    }

    .dkFooterLogoText strong {
        font-size: 13px !important
    }

    .dkFooterCol h3 {
        font-size: 11px !important;
        margin-bottom: 7px !important
    }

    .dkFooterCol a,
    .dkFooterIntro,
    .dkTrustItem b,
    .dkTrustItem em,
    .dkFooterContact b,
    .dkFooterQrWrap b,
    .dkFooterContact em,
    .dkFooterQrWrap em {
        font-size: 8px !important
    }

    .dkFooterBottomGrid {
        padding-top: 6px !important;
        padding-bottom: 6px !important
    }
}

@media (max-width:1020px) {
    .dkFooterMain {
        grid-template-columns: 1fr 1fr !important;
        row-gap: 14px !important
    }

    .dkFooterCol:nth-child(2) {
        border-left: 0 !important;
        padding-left: 0 !important
    }

    .dkFooterBottomGrid {
        grid-template-columns: 1fr !important
    }

    .dkFooterContact,
    .dkFooterQrWrap {
        border-left: 0 !important;
        border-top: 1px solid #eee6df !important;
        padding: 6px 0 !important;
        min-height: auto !important
    }

    .dkFooterContact:first-child {
        border-top: 0 !important
    }
}

@media (max-width:640px) {
    .dkFooter .wrap {
        padding-left: 14px !important;
        padding-right: 14px !important
    }

    .dkFooterMain {
        grid-template-columns: 1fr !important;
        padding-top: 12px !important;
        padding-bottom: 10px !important
    }

    .dkFooterCol {
        border-left: 0 !important;
        padding-left: 0 !important;
        border-top: 1px solid #eee6df !important;
        padding-top: 10px !important
    }

    .dkTrustList {
        grid-template-columns: repeat(4, 1fr) !important
    }

    .dkFooterLogoText strong {
        font-size: 13px !important
    }

    .dkFooterCol h3 {
        font-size: 11px !important;
        margin-bottom: 6px !important
    }

    .dkFooterCol a {
        min-height: 17px !important
    }
}

.dkFooter {
    margin-top: 18px !important;
    background: #fff !important;
    border-top: 1px solid #eee6df !important;
    box-shadow: 0 -4px 18px rgba(30, 20, 15, .025) !important
}

.dkFooter .wrap {
    padding-left: 42px !important;
    padding-right: 42px !important
}

.dkFooterMain {
    grid-template-columns: 1.25fr .86fr 1.08fr .95fr !important;
    column-gap: 0 !important;
    padding-top: 28px !important;
    padding-bottom: 24px !important;
    align-items: start !important
}

.dkFooterBrand,
.dkFooterCol {
    min-width: 0 !important
}

.dkFooterCol {
    padding-left: 34px !important;
    border-left: 1px solid #eee4dd !important
}

.dkFooterLogo {
    gap: 10px !important;
    align-items: center !important
}

.dkFooterLogoMark {
    width: 48px !important;
    height: 48px !important;
    flex: 0 0 48px !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 14px rgba(190, 0, 0, .10) !important
}

.dkFooterLogoMark svg {
    width: 48px !important;
    height: 48px !important
}

.dkFooterLogoText {
    gap: 3px !important
}

.dkFooterLogoText strong {
    font-size: 22px !important;
    line-height: 1.15 !important;
    letter-spacing: .1px !important;
    font-weight: 1000 !important
}

.dkFooterLogoText em {
    font-size: 12px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: #77716c !important
}

.dkFooterIntro {
    max-width: 430px !important;
    margin: 14px 0 0 !important;
    font-size: 13px !important;
    line-height: 1.75 !important;
    font-weight: 500 !important;
    color: #34302d !important
}

.dkTrustList {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
    max-width: 430px !important;
    margin-top: 18px !important
}

.dkTrustIcon {
    width: 28px !important;
    height: 28px !important;
    transform: scale(.76) !important;
    transform-origin: center !important;
    margin: 0 auto 2px !important
}

.dkTrustItem b {
    margin-top: 4px !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 900 !important
}

.dkTrustItem em {
    margin-top: 2px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
    color: #77716c !important
}

.dkFooterCol h3 {
    margin: 0 0 16px !important;
    font-size: 19px !important;
    line-height: 1.15 !important;
    font-weight: 1000 !important;
    color: #b30000 !important;
    letter-spacing: .1px !important
}

.dkFooterCol a {
    min-height: 30px !important;
    gap: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.28 !important;
    color: #25211e !important
}

.dkFooterCol a+a {
    margin-top: 5px !important
}

.dkFooterCol a:hover {
    color: #b30000 !important
}

.dkFooterCol a i {
    font-size: 17px !important;
    line-height: 1 !important;
    color: #555 !important
}

.dkFooterCol a strong {
    font-weight: 1000 !important
}

.dkLinkIcon {
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 12px !important;
    transform: scale(.78) !important;
    transform-origin: center !important
}

.dkLinkIcon.ppt {
    width: 20px !important;
    height: 20px !important;
    font-size: 12px !important;
    border-radius: 4px !important;
    transform: none !important
}

.dkFooterBottomGrid {
    padding-top: 14px !important;
    padding-bottom: 16px !important;
    grid-template-columns: 1.08fr 1.08fr 1.32fr 1.22fr .9fr !important;
    align-items: center !important
}

.dkFooterContact,
.dkFooterQrWrap {
    min-height: 52px !important;
    gap: 10px !important;
    padding: 0 16px !important;
    border-left: 1px solid #eee6df !important
}

.dkFooterContact:first-child {
    border-left: 0 !important;
    padding-left: 0 !important
}

.dkFooterContact p,
.dkFooterQrWrap p {
    gap: 4px !important;
    line-height: 1.2 !important
}

.dkFooterContact b,
.dkFooterQrWrap b {
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    color: #222 !important
}

.dkFooterContact em,
.dkFooterQrWrap em {
    font-size: 11px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    color: #777 !important
}

.dkBottomIcon {
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 20px !important;
    transform: scale(.78) !important;
    transform-origin: center !important
}

.dkQrFake {
    width: 62px !important;
    height: 62px !important;
    flex: 0 0 62px !important;
    border-radius: 7px !important
}

.dkQrFake::before {
    inset: 7px !important;
    background-size: 36px 36px !important
}

.dkQrFake::after {
    left: 21px !important;
    top: 21px !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 5px !important
}

.dkQrFake span {
    left: 25px !important;
    top: 25px !important;
    width: 12px !important;
    height: 12px !important;
    border-radius: 3px !important
}

.dkQrFake span::after {
    font-size: 8px !important;
    line-height: 12px !important
}

@media (max-width:1460px) {
    .dkFooter .wrap {
        padding-left: 28px !important;
        padding-right: 28px !important
    }

    .dkFooterMain {
        grid-template-columns: 1.2fr .85fr 1.06fr .95fr !important;
        padding-top: 24px !important;
        padding-bottom: 20px !important
    }

    .dkFooterCol {
        padding-left: 26px !important
    }

    .dkFooterLogoMark {
        width: 42px !important;
        height: 42px !important;
        flex-basis: 42px !important
    }

    .dkFooterLogoMark svg {
        width: 42px !important;
        height: 42px !important
    }

    .dkFooterLogoText strong {
        font-size: 19px !important
    }

    .dkFooterLogoText em {
        font-size: 11px !important
    }

    .dkFooterIntro {
        font-size: 12px !important;
        line-height: 1.68 !important;
        max-width: 380px !important
    }

    .dkTrustList {
        gap: 8px !important;
        margin-top: 14px !important;
        max-width: 380px !important
    }

    .dkTrustIcon {
        width: 24px !important;
        height: 24px !important;
        transform: scale(.68) !important;
        margin-bottom: 0 !important
    }

    .dkTrustItem b {
        font-size: 11px !important
    }

    .dkTrustItem em {
        font-size: 10px !important
    }

    .dkFooterCol h3 {
        font-size: 17px !important;
        margin-bottom: 13px !important
    }

    .dkFooterCol a {
        font-size: 13px !important;
        min-height: 27px !important;
        gap: 8px !important
    }

    .dkFooterBottomGrid {
        padding-top: 12px !important;
        padding-bottom: 14px !important
    }

    .dkFooterContact,
    .dkFooterQrWrap {
        min-height: 48px !important;
        padding: 0 12px !important;
        gap: 8px !important
    }

    .dkFooterContact b,
    .dkFooterQrWrap b {
        font-size: 12px !important
    }

    .dkFooterContact em,
    .dkFooterQrWrap em {
        font-size: 10px !important
    }

    .dkQrFake {
        width: 56px !important;
        height: 56px !important;
        flex-basis: 56px !important
    }
}

@media (max-width:1020px) {
    .dkFooterMain {
        grid-template-columns: 1fr 1fr !important;
        row-gap: 20px !important;
        padding-top: 22px !important;
        padding-bottom: 18px !important
    }

    .dkFooterCol:nth-child(2) {
        border-left: 0 !important;
        padding-left: 0 !important
    }

    .dkFooterBottomGrid {
        grid-template-columns: 1fr !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important
    }

    .dkFooterContact,
    .dkFooterQrWrap {
        border-left: 0 !important;
        border-top: 1px solid #eee6df !important;
        padding: 9px 0 !important;
        min-height: auto !important
    }

    .dkFooterContact:first-child {
        border-top: 0 !important
    }

    .dkTrustList {
        max-width: 100% !important
    }
}

@media (max-width:640px) {
    .dkFooter .wrap {
        padding-left: 16px !important;
        padding-right: 16px !important
    }

    .dkFooterMain {
        grid-template-columns: 1fr !important;
        padding-top: 20px !important;
        padding-bottom: 16px !important;
        row-gap: 14px !important
    }

    .dkFooterCol {
        border-left: 0 !important;
        padding-left: 0 !important;
        border-top: 1px solid #eee6df !important;
        padding-top: 14px !important
    }

    .dkTrustList {
        grid-template-columns: repeat(4, 1fr) !important
    }

    .dkFooterLogoText strong {
        font-size: 18px !important
    }

    .dkFooterLogoText em {
        font-size: 11px !important
    }

    .dkFooterIntro {
        font-size: 12px !important
    }

    .dkFooterCol h3 {
        font-size: 16px !important;
        margin-bottom: 10px !important
    }

    .dkFooterCol a {
        font-size: 13px !important;
        min-height: 26px !important
    }

    .dkFooterContact b,
    .dkFooterQrWrap b {
        font-size: 12px !important
    }

    .dkFooterContact em,
    .dkFooterQrWrap em {
        font-size: 10px !important
    }
}

.siteHeader.dkHeader {
    height: 66px !important;
    overflow: hidden !important
}

.siteHeader.dkHeader::after {
    bottom: -74px !important;
    height: 136px !important;
    width: 432px !important;
    opacity: .72 !important
}

.dkHeader .dkHeaderWrap {
    padding-left: 56px !important;
    padding-right: 56px !important
}

.dkTopbar {
    height: 66px !important;
    min-height: 66px !important;
    gap: 19px !important;
    padding: 0 !important;
    align-items: center !important
}

.dkBrand {
    min-width: 250px !important;
    gap: 11px !important
}

.dkLogoMark {
    width: 61px !important;
    height: 50px !important;
    flex: 0 0 61px !important
}

.dkLogoMark svg {
    width: 61px !important;
    height: 50px !important
}

.dkBrandText {
    gap: 3px !important
}

.dkBrandText .brandName {
    font-size: 26px !important;
    line-height: 1 !important
}

.dkBrandText .brandSlogan {
    font-size: 10px !important;
    line-height: 1.05 !important;
    letter-spacing: .25px !important
}

.dkHeaderDivider {
    height: 38px !important
}

.dkNav {
    gap: 24px !important
}

.dkNav .navLink {
    height: 43px !important;
    font-size: 16px !important;
    line-height: 1 !important
}

.dkNav .navLink.active::after {
    bottom: 2px !important;
    width: 34px !important;
    height: 3px !important
}

.dkRightTools {
    gap: 18px !important
}

.dkHeaderSearch {
    width: 328px !important;
    min-width: 328px !important;
    max-width: 328px !important;
    height: 42px !important
}

.dkHeaderSearch .dkSearchIcon {
    width: 18px !important;
    height: 18px !important;
    left: 17px !important;
    border-width: 2px !important
}

.dkHeaderSearch .dkSearchIcon::after {
    width: 8px !important;
    height: 2px !important;
    right: -6px !important
}

.dkHeaderSearch .searchInput {
    height: 42px !important;
    border-radius: 19px !important;
    padding: 0 72px 0 49px !important;
    font-size: 12px !important;
    line-height: 42px !important
}

.dkHeaderSearch .searchBtn {
    top: 6px !important;
    right: 6px !important;
    height: 30px !important;
    min-width: 54px !important;
    padding: 0 10px !important;
    border-radius: 14px !important;
    font-size: 13px !important
}

.dkHeaderSearch .searchBtn span {
    font-size: 13px !important
}

.dkVipBtn {
    height: 42px !important;
    min-width: 117px !important;
    padding: 0 18px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    gap: 8px !important
}

.dkVipBtn::before {
    font-size: 16px !important
}

.dkFooterLogo,
.dkFooterCol a,
.dkFooterContact,
.dkFooterQrWrap {
    align-items: center !important
}

.dkTrustList {
    align-items: start !important
}

.dkTrustItem {
    display: grid !important;
    grid-template-rows: auto auto auto !important;
    justify-items: center !important;
    align-items: start !important;
    row-gap: 2px !important
}

.dkTrustIcon {
    width: 28px !important;
    height: 28px !important;
    flex: 0 0 28px !important;
    margin: 0 auto 3px !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(215, 25, 32, .08) !important;
    color: #d71920 !important;
    font-style: normal !important
}

.dkTrustIcon::before,
.dkTrustIcon::after {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    clip-path: none !important;
    transform: none !important;
    background: transparent !important;
    color: currentColor !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 1000 !important
}

.dkTrustIcon.shield::before {
    content: "✓" !important
}

.dkTrustIcon.cloud::before {
    content: "↓" !important
}

.dkTrustIcon.refresh::before {
    content: "↻" !important
}

.dkTrustIcon.service::before {
    content: "服" !important;
    font-size: 12px !important
}

.dkLinkIcon {
    position: relative !important;
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    margin: 0 !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
    background: rgba(215, 25, 32, .08) !important;
    color: #d71920 !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    text-align: center !important
}

.dkLinkIcon::before,
.dkLinkIcon::after {
    position: static !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: auto !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    box-shadow: none !important;
    transform: none !important;
    background: transparent !important;
    color: currentColor !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 1000 !important
}

.dkLinkIcon.ppt {
    background: #d71920 !important;
    color: #fff !important;
    border-radius: 5px !important;
    font-size: 12px !important
}

.dkLinkIcon.doc::before,
.dkLinkIcon.file::before {
    content: "文" !important
}

.dkLinkIcon.topic::before {
    content: "题" !important
}

.dkLinkIcon.edit::before {
    content: "定" !important
}

.dkLinkIcon.folder::before {
    content: "库" !important
}

.dkLinkIcon.coop::before {
    content: "合" !important
}

.dkLinkIcon.paper::before {
    content: "稿" !important
}

.dkLinkIcon.group::before {
    content: "培" !important
}

.dkLinkIcon.shield2::before {
    content: "盾" !important;
    font-size: 11px !important
}

.dkLinkIcon.warn::before {
    content: "!" !important
}

.dkLinkIcon.privacy::before {
    content: "私" !important
}

.dkFooterCol a span:not(.dkLinkIcon) {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 22px !important
}

.dkFooterCol a i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 22px !important;
    line-height: 1 !important
}

.dkBottomIcon {
    position: relative !important;
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    margin: 0 !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(215, 25, 32, .08) !important;
    color: #d71920 !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    text-align: center !important
}

.dkBottomIcon::before,
.dkBottomIcon::after {
    position: static !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: auto !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    box-shadow: none !important;
    transform: none !important;
    background: transparent !important;
    color: currentColor !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 1000 !important
}

.dkBottomIcon.phone::before {
    content: "☎" !important;
    font-size: 13px !important
}

.dkBottomIcon.wechat::before {
    content: "微" !important
}

.dkBottomIcon.record::before {
    content: "备" !important
}

.dkBottomIcon.rights::before {
    content: "权" !important
}

.dkFooterContact p,
.dkFooterQrWrap p {
    justify-content: center !important;
    min-width: 0 !important
}

.dkFooterQrWrap {
    align-items: center !important
}

@media (max-width:1460px) {
    .siteHeader.dkHeader {
        height: 61px !important
    }

    .dkHeader .dkHeaderWrap {
        padding-left: 26px !important;
        padding-right: 26px !important
    }

    .dkTopbar {
        height: 61px !important;
        min-height: 61px !important;
        gap: 13px !important
    }

    .dkBrand {
        min-width: 208px !important;
        gap: 9px !important
    }

    .dkLogoMark {
        width: 51px !important;
        height: 45px !important;
        flex-basis: 51px !important
    }

    .dkLogoMark svg {
        width: 51px !important;
        height: 45px !important
    }

    .dkBrandText .brandName {
        font-size: 21px !important
    }

    .dkBrandText .brandSlogan {
        font-size: 9px !important
    }

    .dkHeaderDivider {
        height: 34px !important
    }

    .dkNav {
        gap: 16px !important
    }

    .dkNav .navLink {
        font-size: 13px !important;
        height: 37px !important
    }

    .dkHeaderSearch {
        width: 256px !important;
        min-width: 256px !important;
        max-width: 256px !important;
        height: 37px !important
    }

    .dkHeaderSearch .dkSearchIcon {
        width: 16px !important;
        height: 16px !important;
        left: 15px !important
    }

    .dkHeaderSearch .searchInput {
        height: 37px !important;
        font-size: 11px !important;
        padding: 0 62px 0 43px !important
    }

    .dkHeaderSearch .searchBtn {
        height: 26px !important;
        min-width: 46px !important;
        top: 5px !important;
        right: 5px !important;
        font-size: 11px !important
    }

    .dkHeaderSearch .searchBtn span {
        font-size: 11px !important
    }

    .dkVipBtn {
        height: 37px !important;
        min-width: 96px !important;
        font-size: 12px !important;
        padding: 0 13px !important
    }
}

@media (max-width:1020px) {
    .siteHeader.dkHeader {
        height: auto !important;
        overflow: visible !important
    }

    .dkTopbar {
        height: auto !important;
        min-height: 61px !important;
        padding: 7px 0 !important;
        flex-wrap: wrap !important
    }

    .dkNav {
        order: 3;
        width: 100%;
        overflow-x: auto;
        padding-bottom: 5px !important
    }

    .dkHeaderSearch {
        width: 260px !important;
        min-width: 220px !important;
        max-width: 260px !important
    }
}

@media (max-width:640px) {
    .dkBrandText .brandName {
        font-size: 19px !important
    }

    .dkBrandText .brandSlogan {
        font-size: 9px !important
    }

    .dkLogoMark {
        width: 48px !important;
        height: 40px !important;
        flex-basis: 48px !important
    }

    .dkLogoMark svg {
        width: 48px !important;
        height: 40px !important
    }

    .dkNav .navLink {
        font-size: 12px !important;
        height: 34px !important
    }

    .dkRightTools {
        width: 100%;
        gap: 10px !important
    }

    .dkHeaderSearch {
        flex: 1;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important
    }

    .dkVipBtn {
        height: 36px !important;
        min-width: 92px !important;
        font-size: 12px !important
    }
}

@media (min-width:1021px) {
    .siteHeader.dkHeader {
        height: 66px !important;
        overflow: hidden !important
    }

    .dkHeader .dkHeaderWrap {
        max-width: 1560px !important;
        margin: 0 auto !important;
        padding-left: 40px !important;
        padding-right: 40px !important
    }

    .dkTopbar {
        height: 66px !important;
        min-height: 66px !important;
        display: grid !important;
        grid-template-columns: max-content 1px minmax(420px, 1fr) max-content !important;
        column-gap: clamp(26px, 2.1vw, 42px) !important;
        row-gap: 0 !important;
        align-items: center !important;
        padding: 0 !important
    }

    .dkBrand {
        min-width: 252px !important;
        width: auto !important;
        gap: 12px !important;
        justify-content: flex-start !important
    }

    .dkLogoMark,
    .dkLogoMark svg {
        width: 61px !important;
        height: 50px !important
    }

    .dkLogoMark {
        flex: 0 0 61px !important
    }

    .dkBrandText .brandName {
        font-size: 26px !important;
        line-height: 1 !important
    }

    .dkBrandText .brandSlogan {
        font-size: 10px !important;
        line-height: 1.05 !important
    }

    .dkHeaderDivider {
        display: block !important;
        height: 34px !important;
        width: 1px !important;
        margin: 0 !important
    }

    .dkNav {
        min-width: 420px !important;
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0 !important;
        overflow: visible !important;
        padding: 0 4px !important
    }

    .dkNav .navItem {
        flex: 0 0 auto !important
    }

    .dkNav .navLink {
        height: 38px !important;
        padding: 0 6px !important;
        font-size: 15px !important;
        line-height: 1 !important;
        letter-spacing: .2px !important;
        white-space: nowrap !important
    }

    .dkNav .navLink.active::after {
        bottom: 1px !important;
        width: 32px !important;
        height: 3px !important
    }

    .dkRightTools {
        margin-left: 0 !important;
        min-width: 430px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 18px !important;
        flex-wrap: nowrap !important
    }

    .dkHeaderSearch {
        width: 300px !important;
        min-width: 300px !important;
        max-width: 300px !important;
        height: 38px !important;
        flex: 0 0 300px !important
    }

    .dkHeaderSearch .dkSearchIcon {
        width: 16px !important;
        height: 16px !important;
        left: 15px !important;
        border-width: 2px !important
    }

    .dkHeaderSearch .dkSearchIcon::after {
        width: 7px !important;
        height: 2px !important;
        right: -5px !important
    }

    .dkHeaderSearch .searchInput {
        height: 38px !important;
        border-radius: 17px !important;
        padding: 0 63px 0 43px !important;
        font-size: 12px !important;
        line-height: 38px !important
    }

    .dkHeaderSearch .searchBtn {
        top: 5px !important;
        right: 5px !important;
        height: 28px !important;
        min-width: 50px !important;
        padding: 0 9px !important;
        border-radius: 13px !important;
        font-size: 12px !important
    }

    .dkHeaderSearch .searchBtn span {
        font-size: 12px !important
    }

    .dkVipBtn {
        height: 38px !important;
        min-width: 108px !important;
        padding: 0 15px !important;
        border-radius: 10px !important;
        font-size: 13px !important;
        gap: 7px !important;
        flex: 0 0 auto !important
    }

    .dkVipBtn::before {
        font-size: 15px !important
    }
}

@media (min-width:1461px) {
    .siteHeader.dkHeader {
        height: 68px !important
    }

    .dkHeader .dkHeaderWrap {
        max-width: 1640px !important;
        padding-left: 56px !important;
        padding-right: 56px !important
    }

    .dkTopbar {
        height: 68px !important;
        min-height: 68px !important;
        grid-template-columns: max-content 1px minmax(520px, 1fr) max-content !important;
        column-gap: 38px !important
    }

    .dkBrand {
        min-width: 270px !important;
        gap: 12px !important
    }

    .dkHeaderDivider {
        height: 36px !important
    }

    .dkNav {
        min-width: 520px !important;
        padding: 0 8px !important
    }

    .dkNav .navLink {
        font-size: 16px !important;
        height: 40px !important;
        padding: 0 8px !important
    }

    .dkRightTools {
        min-width: 470px !important;
        gap: 20px !important
    }

    .dkHeaderSearch {
        width: 334px !important;
        min-width: 334px !important;
        max-width: 334px !important;
        flex-basis: 334px !important;
        height: 40px !important
    }

    .dkHeaderSearch .searchInput {
        height: 40px !important;
        line-height: 40px !important;
        font-size: 12px !important
    }

    .dkHeaderSearch .searchBtn {
        height: 30px !important;
        min-width: 54px !important;
        font-size: 13px !important
    }

    .dkHeaderSearch .searchBtn span {
        font-size: 13px !important
    }

    .dkVipBtn {
        height: 40px !important;
        min-width: 112px !important;
        font-size: 13px !important
    }
}

@media (min-width:1021px) and (max-width:1260px) {
    .siteHeader.dkHeader {
        height: 62px !important
    }

    .dkHeader .dkHeaderWrap {
        padding-left: 24px !important;
        padding-right: 24px !important
    }

    .dkTopbar {
        height: 62px !important;
        min-height: 62px !important;
        grid-template-columns: max-content 1px minmax(350px, 1fr) max-content !important;
        column-gap: 20px !important
    }

    .dkBrand {
        min-width: 214px !important;
        gap: 9px !important
    }

    .dkLogoMark,
    .dkLogoMark svg {
        width: 50px !important;
        height: 42px !important
    }

    .dkLogoMark {
        flex-basis: 50px !important
    }

    .dkBrandText .brandName {
        font-size: 21px !important
    }

    .dkBrandText .brandSlogan {
        font-size: 9px !important
    }

    .dkHeaderDivider {
        height: 30px !important
    }

    .dkNav {
        min-width: 350px !important;
        padding: 0 !important
    }

    .dkNav .navLink {
        font-size: 13px !important;
        height: 34px !important;
        padding: 0 4px !important
    }

    .dkRightTools {
        min-width: 336px !important;
        gap: 14px !important
    }

    .dkHeaderSearch {
        width: 230px !important;
        min-width: 230px !important;
        max-width: 230px !important;
        flex-basis: 230px !important;
        height: 36px !important
    }

    .dkHeaderSearch .searchInput {
        height: 36px !important;
        line-height: 36px !important;
        font-size: 11px !important;
        padding: 0 56px 0 39px !important
    }

    .dkHeaderSearch .dkSearchIcon {
        width: 15px !important;
        height: 15px !important;
        left: 14px !important
    }

    .dkHeaderSearch .searchBtn {
        height: 26px !important;
        min-width: 45px !important;
        top: 5px !important;
        right: 5px !important;
        font-size: 11px !important
    }

    .dkHeaderSearch .searchBtn span {
        font-size: 11px !important
    }

    .dkVipBtn {
        height: 36px !important;
        min-width: 92px !important;
        font-size: 12px !important;
        padding: 0 12px !important
    }
}

@media (max-width:1020px) {
    .dkTopbar {
        gap: 14px !important
    }

    .dkNav {
        justify-content: flex-start !important;
        gap: 22px !important;
        padding-left: 2px !important;
        padding-right: 2px !important
    }
}

:root {
    --dk-final-red: #c40000;
    --dk-final-red2: #e40012;
    --dk-final-red3: #9d0000;
    --dk-final-gold: #ffd36b;
    --dk-final-bg: #fbf7f3;
    --dk-final-line: #eee2d9;
    --dk-final-text: #2b2b2b;
    --dk-final-muted: #777
}

html,
body {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    background: radial-gradient(700px 320px at 6% 8%, rgba(196, 0, 0, .055), transparent 60%), radial-gradient(580px 260px at 95% 95%, rgba(230, 64, 0, .06), transparent 58%), linear-gradient(180deg, #fffaf6 0%, #fbf7f3 58%, #fff 100%) !important;
    color: var(--dk-final-text) !important
}

.wrap,
main.wrap,
.siteHeader.dkHeader .wrap,
.dkFooter .wrap {
    width: 1320px !important;
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important
}

.siteHeader.dkHeader {
    height: 74px !important;
    min-height: 74px !important;
    overflow: visible !important;
    background: radial-gradient(280px 90px at 94% 52%, rgba(255, 199, 73, .34), transparent 62%), linear-gradient(90deg, #a90000 0%, #cf0000 48%, #b30000 100%) !important;
    box-shadow: 0 6px 18px rgba(152, 0, 0, .18) !important;
    border-bottom: 0 !important
}

.siteHeader.dkHeader:before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 21px !important;
    background: linear-gradient(90deg, rgba(255, 185, 60, .28), rgba(255, 255, 255, 0) 40%, rgba(255, 185, 60, .18)) !important;
    clip-path: polygon(0 70%, 20% 25%, 43% 74%, 72% 28%, 100% 68%, 100% 100%, 0 100%) !important;
    opacity: .75 !important;
    pointer-events: none !important
}

.siteHeader.dkHeader:after {
    content: "" !important;
    position: absolute !important;
    right: 24px !important;
    top: -42px !important;
    width: 260px !important;
    height: 170px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255, 210, 90, .18) !important;
    box-shadow: 0 0 0 12px rgba(255, 210, 90, .04), 0 0 0 28px rgba(255, 210, 90, .035), 0 0 0 52px rgba(255, 210, 90, .025) !important;
    opacity: 1 !important;
    pointer-events: none !important
}

.dkTopbar {
    height: 74px !important;
    min-height: 74px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 34px !important;
    overflow: visible !important
}

.dkBrand {
    width: 232px !important;
    min-width: 232px !important;
    flex: 0 0 232px !important;
    gap: 12px !important;
    color: #fff !important
}

.dkLogoMark {
    width: 48px !important;
    height: 48px !important;
    flex: 0 0 48px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #fff8de 0%, #ffd983 100%) !important;
    display: grid !important;
    place-items: center !important;
    filter: none !important;
    box-shadow: 0 8px 18px rgba(96, 0, 0, .18), inset 0 0 0 2px rgba(255, 255, 255, .45) !important;
    overflow: hidden !important
}

.dkLogoMark svg {
    width: 42px !important;
    height: 42px !important
}

.dkLogoPage,
.dkLogoLine,
.dkLogoArc {
    display: none !important
}

.dkLogoStar {
    fill: #d80000 !important;
    stroke: none !important
}

.dkBrandText {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important
}

.dkBrandText .brandName {
    color: #fff !important;
    font-size: 27px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .04em !important
}

.dkBrandText .brandSlogan {
    color: #fff1cf !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    margin-top: 6px !important;
    letter-spacing: .02em !important
}

.dkHeaderDivider {
    width: 1px !important;
    height: 34px !important;
    background: rgba(255, 255, 255, .18) !important;
    margin-left: 8px !important;
    flex: 0 0 1px !important
}

.dkNav {
    height: 74px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 56px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 0 !important
}

.dkNav .navLink {
    height: 74px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    letter-spacing: .01em !important;
    position: relative !important;
    white-space: nowrap !important;
    display: flex !important;
    align-items: center !important
}

.dkNav .navLink:after {
    display: none !important
}

.dkNav .navLink.active:before,
.dkNav .navItem.open>.navLink:before {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: 10px !important;
    width: 58px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #ffe074, #fff1b8) !important;
    box-shadow: 0 0 12px rgba(255, 223, 85, .75) !important
}

.dkNav .caret {
    display: none !important
}

.rightTools.dkRightTools,
.dkRightTools {
    margin-left: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 26px !important;
    flex: 0 0 auto !important;
    flex-wrap: nowrap !important
}

.dkHeaderSearch {
    width: 216px !important;
    min-width: 216px !important;
    max-width: 216px !important;
    height: 36px !important;
    padding: 0 12px 0 18px !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 0 !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .4), 0 6px 14px rgba(86, 0, 0, .1) !important;
    gap: 8px !important;
    position: relative !important;
    overflow: hidden !important
}

.dkHeaderSearch .dkSearchIcon {
    display: none !important
}

.dkHeaderSearch .searchInput {
    height: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 13px !important;
    color: #7f7f7f !important;
    font-weight: 600 !important;
    min-width: 0 !important
}

.dkHeaderSearch .searchBtn {
    width: 20px !important;
    min-width: 20px !important;
    height: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--dk-final-red) !important;
    border-radius: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: static !important;
    font-size: 0 !important
}

.dkHeaderSearch .searchBtn span:first-child {
    display: inline !important;
    font-size: 16px !important;
    line-height: 1 !important
}

.dkHeaderSearch .searchBtn span:last-child {
    display: none !important
}

.dkVipBtn {
    height: 38px !important;
    min-width: 110px !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, #ffeaa7 0%, #ffc95c 100%) !important;
    color: #9d2200 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    box-shadow: 0 7px 16px rgba(85, 0, 0, .16), inset 0 0 0 1px rgba(255, 255, 255, .55) !important
}

.breadcrumb {
    height: 34px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 12px !important;
    color: #777 !important;
    font-weight: 600 !important
}

.breadcrumb a:first-child {
    color: #C40000 !important
}

.page {
    padding: 0 0 0 !important
}

#page-channel .filterPanelClean,
#page-search .filterPanelClean {
    width: 1320px !important;
    max-width: 1320px !important;
    height: 200px !important;
    min-height: 200px !important;
    border-radius: 14px !important;
    border: 1px solid var(--dk-final-line) !important;
    background: #fff !important;
    box-shadow: 0 10px 30px rgba(128, 35, 0, .08) !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important
}

#page-channel .filterPanelClean .panelHd,
#page-search .filterPanelClean .panelHd {
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 15px !important;
    border-bottom: 1px solid #f0e4dc !important;
    align-items: center !important
}

#page-channel .filterPanelClean h2,
#page-search .filterPanelClean h2 {
    font-size: 17px !important;
    font-weight: 900 !important;
    color: #333 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important
}

#page-channel .filterPanelClean h2:before,
#page-search .filterPanelClean h2:before {
    content: "▾" !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 5px !important;
    background: linear-gradient(135deg, #E60012, #b70000) !important;
    display: grid !important;
    place-items: center !important;
    color: #fff !important;
    font-size: 13px !important;
    box-shadow: 0 5px 10px rgba(198, 0, 0, .16) !important;
    flex: 0 0 auto !important
}

.filterSummary,
.filterIntro,
#page-channel .row-channel-topic,
#page-search .row-search-suggest {
    display: none !important
}

#page-channel .filterPanelClean .panelBd,
#page-search .filterPanelClean .panelBd {
    height: 160px !important;
    padding: 8px 29px 10px 32px !important;
    overflow: hidden !important
}

.filterRowsClean {
    margin-top: 0 !important;
    display: grid !important;
    grid-template-rows: repeat(5, 28px) !important;
    row-gap: 3px !important;
    gap: 3px !important
}

.filterRowClean {
    display: grid !important;
    grid-template-columns: 90px 1fr !important;
    align-items: center !important;
    gap: 0 !important;
    height: 28px !important;
    padding: 0 !important;
    min-width: 0 !important;
    overflow: hidden !important
}

.filterLabelClean {
    width: 90px !important;
    flex: 0 0 90px !important;
    padding: 0 !important;
    font-size: 13px !important;
    color: #333 !important;
    font-weight: 800 !important;
    letter-spacing: .02em !important;
    line-height: 28px !important
}

.filterLinksClean {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 18px !important;
    overflow: hidden !important;
    white-space: nowrap !important
}

.filterLinkClean {
    height: 22px !important;
    min-height: 22px !important;
    min-width: 54px !important;
    padding: 0 16px !important;
    border-radius: 999px !important;
    border: 1px solid #e8e2de !important;
    background: #fff !important;
    color: #646464 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    transform: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important
}

.filterLinkClean.active,
.filterLinkClean.is-active {
    min-width: 52px !important;
    background: linear-gradient(180deg, #f9151d 0%, #cf0000 100%) !important;
    color: #fff !important;
    border-color: #d90000 !important;
    box-shadow: 0 5px 10px rgba(210, 0, 0, .16) !important;
    font-weight: 800 !important
}

#page-channel>.panel:not(.filterPanelClean),
#page-search>.panel:not(.filterPanelClean) {
    width: 1320px !important;
    max-width: 1320px !important;
    border-radius: 14px !important;
    border: 1px solid var(--dk-final-line) !important;
    background: #fff !important;
    box-shadow: 0 10px 30px rgba(128, 35, 0, .08) !important;
    overflow: hidden !important;
    margin-top: 12px !important;
    padding-bottom: 8px !important
}

.filterResultHead {
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 15px !important;
    border-bottom: 1px solid #f0e4dc !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important
}

.filterResultHead h2 {
    margin: 0 !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    color: #333 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important
}

.filterResultHead h2:before {
    content: "♟" !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 5px !important;
    background: linear-gradient(135deg, #E60012, #b70000) !important;
    display: grid !important;
    place-items: center !important;
    color: #fff !important;
    font-size: 13px !important;
    box-shadow: 0 5px 10px rgba(198, 0, 0, .16) !important;
    flex: 0 0 auto !important
}

.filterResultHead .resultsCount {
    display: none !important
}

.filterResultTools {
    gap: 10px !important
}

.sortInline {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important
}

.sortInline:before {
    content: "排序：" !important;
    color: #2d2d2d !important;
    font-size: 13px !important;
    font-weight: 800 !important
}

.sortLink,
.sortInline a,
.sortInline button {
    height: 28px !important;
    padding: 0 16px !important;
    border-radius: 999px !important;
    border: 1px solid #e8e2de !important;
    color: #555 !important;
    background: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important
}

.sortLink.active,
.sortInline .active,
.sortInline .is-active {
    color: #C40000 !important;
    background: #fff2ee !important;
    border-color: #f2cfc5 !important
}

#page-channel>.panel:not(.filterPanelClean) .panelBd,
#page-search>.panel:not(.filterPanelClean) .panelBd {
    padding: 10px 14px 0 !important
}

.resourceGrid5,
.mediaGrid.resourceGrid5 {
    display: grid !important;
    grid-template-columns: repeat(5, 240px) !important;
    gap: 20px !important;
    justify-content: space-between !important;
    align-items: start !important
}

.mediaCard.resourceCard,
.resourceCard {
    width: 240px !important;
    height: 370px !important;
    border: 1px solid #eadfd8 !important;
    border-radius: 12px !important;
    background: #fff !important;
    overflow: hidden !important;
    box-shadow: 0 8px 20px rgba(140, 55, 0, .055) !important;
    transform: none !important
}

.resourceCard .thumb,
.mediaCard.resourceCard .thumb {
    width: 100% !important;
    height: 320px !important;
    min-height: 320px !important;
    aspect-ratio: 3/4 !important;
    border-bottom: 1px solid #f0e1d8 !important;
    background: #f7eee7 !important;
    display: block !important;
    overflow: hidden !important
}

.resourceCard .thumbImg,
.mediaCard.resourceCard .thumbImg {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important
}

.resourceCard .mediaTitle,
.mediaCard.resourceCard .mediaTitle {
    height: 50px !important;
    min-height: 50px !important;
    padding: 8px 10px 0 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    text-align: center !important;
    color: #333 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.45 !important
}

.resourceCard .metaRow,
.mediaCard.resourceCard .metaRow,
.thumbBadgeRow,
.thumbShade,
.thumbCaption {
    display: none !important
}

.pager {
    display: none !important
}

.dkFooter {
    height: 260px !important;
    min-height: 260px !important;
    margin-top: 10px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, #fffaf6 100%) !important;
    border-top: 1px solid #efe2d9 !important;
    overflow: hidden !important;
    position: relative !important
}

.dkFooter:after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    bottom: 44px !important;
    width: 360px !important;
    height: 156px !important;
    background: radial-gradient(180px 72px at 72% 64%, rgba(206, 65, 16, .12), transparent 62%), linear-gradient(160deg, transparent 10%, rgba(216, 78, 30, .06) 10% 36%, transparent 36% 100%) !important;
    pointer-events: none !important
}

.dkFooterMain {
    height: 176px !important;
    display: grid !important;
    grid-template-columns: 420px 1fr 1fr 1fr !important;
    gap: 58px !important;
    padding-top: 17px !important;
    padding-bottom: 12px !important;
    position: relative !important;
    z-index: 1 !important;
    align-items: start !important
}

.dkFooterLogo {
    gap: 12px !important
}

.dkFooterLogoMark {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    border-radius: 9px !important;
    box-shadow: 0 8px 16px rgba(210, 0, 0, .14) !important
}

.dkFooterLogoMark svg {
    width: 40px !important;
    height: 40px !important
}

.dkFooterLogoText strong {
    font-size: 17px !important;
    color: #d40000 !important;
    line-height: 1.1 !important
}

.dkFooterLogoText em {
    display: none !important
}

.dkFooterIntro {
    max-width: 420px !important;
    margin: 8px 0 0 !important;
    color: #555 !important;
    font-size: 13px !important;
    line-height: 1.85 !important
}

.dkTrustList {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 8px !important;
    max-width: 420px !important;
    margin-top: 12px !important
}

.dkTrustItem {
    text-align: center !important;
    font-size: 12px !important;
    color: #444 !important
}

.dkTrustIcon {
    width: 28px !important;
    height: 28px !important;
    margin: 0 auto 6px !important;
    transform: none !important;
    background: #fff !important;
    border: 1px solid #f0e1da !important;
    border-radius: 50% !important
}

.dkTrustItem b {
    font-size: 12px !important;
    margin: 0 !important;
    color: #444 !important
}

.dkTrustItem em {
    font-size: 12px !important;
    margin: 2px 0 0 !important;
    color: #777 !important
}

.dkFooterCol {
    border-left: 1px solid #f0e3db !important;
    padding-left: 54px !important;
    min-width: 0 !important
}

.dkFooterCol h3 {
    margin: 0 0 9px !important;
    color: #d40000 !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 900 !important
}

.dkFooterCol a {
    min-height: 24px !important;
    height: 24px !important;
    gap: 9px !important;
    color: #666 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 24px !important;
    margin: 0 !important;
    padding: 0 !important
}

.dkFooterCol a+a {
    margin-top: 0 !important
}

.dkFooterCol a i {
    display: none !important
}

.dkLinkIcon {
    width: 14px !important;
    height: 14px !important;
    flex: 0 0 14px !important;
    transform: none !important;
    font-size: 11px !important;
    color: #e00012 !important;
    background: transparent !important;
    border: 0 !important
}

.dkFooterBottom {
    height: 84px !important;
    min-height: 84px !important;
    border-top: 1px solid #efe2d9 !important;
    position: relative !important;
    z-index: 1 !important;
    background: transparent !important
}

.dkFooterBottomGrid {
    height: 84px !important;
    display: grid !important;
    grid-template-columns: 255px 255px 280px 220px 1fr !important;
    align-items: center !important;
    gap: 18px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important
}

.dkFooterContact,
.dkFooterQrWrap {
    min-height: 46px !important;
    height: 46px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    border-right: 1px solid #efe2d9 !important;
    border-left: 0 !important;
    padding: 0 18px 0 0 !important;
    margin: 0 !important
}

.dkFooterQrWrap {
    justify-self: end !important;
    border-right: 0 !important;
    padding-right: 0 !important
}

.dkBottomIcon {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    transform: none !important;
    background: #fff3f0 !important;
    border-radius: 50% !important
}

.dkFooterContact p,
.dkFooterQrWrap p {
    gap: 3px !important;
    margin: 0 !important
}

.dkFooterContact b,
.dkFooterQrWrap b {
    display: block !important;
    font-size: 13px !important;
    color: #333 !important;
    line-height: 1.25 !important
}

.dkFooterContact em,
.dkFooterQrWrap em {
    display: block !important;
    font-size: 12px !important;
    color: #777 !important;
    line-height: 1.35 !important
}

.dkQrFake {
    width: 56px !important;
    height: 56px !important;
    flex: 0 0 56px !important;
    border-radius: 6px !important
}

@media (max-width:1380px) {

    .wrap,
    main.wrap,
    .siteHeader.dkHeader .wrap,
    .dkFooter .wrap,
    #page-channel .filterPanelClean,
    #page-search .filterPanelClean,
    #page-channel>.panel:not(.filterPanelClean),
    #page-search>.panel:not(.filterPanelClean) {
        width: calc(100vw - 48px) !important;
        max-width: calc(100vw - 48px) !important
    }

    .dkNav {
        gap: 42px !important
    }

    .resourceGrid5,
    .mediaGrid.resourceGrid5 {
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 16px !important
    }

    .resourceCard,
    .mediaCard.resourceCard {
        width: 100% !important;
        height: auto !important
    }

    .resourceCard .thumb,
    .mediaCard.resourceCard .thumb {
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 3/4 !important
    }

    .dkFooterMain {
        gap: 38px !important
    }

    .dkFooterCol {
        padding-left: 38px !important
    }
}

.dkFooter {
    height: 260px !important;
    min-height: 260px !important;
    margin-top: 10px !important;
    overflow: hidden !important;
    background: linear-gradient(180deg, #fff 0%, #fffaf6 100%) !important;
    border-top: 1px solid #efe2d9 !important
}

.dkFooter:after {
    bottom: 42px !important;
    opacity: .75 !important
}

.dkFooterMain {
    height: 174px !important;
    display: grid !important;
    grid-template-columns: 460px 1fr 1.06fr 1fr !important;
    gap: 0 !important;
    padding-top: 16px !important;
    padding-bottom: 12px !important;
    align-items: start !important
}

.dkFooterBrand {
    min-width: 0 !important;
    overflow: hidden !important
}

.dkFooterLogo {
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important
}

.dkFooterLogoMark {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    margin: 0 !important;
    border-radius: 10px !important
}

.dkFooterLogoMark svg {
    width: 40px !important;
    height: 40px !important;
    display: block !important
}

.dkFooterLogoText strong {
    font-size: 17px !important;
    line-height: 1 !important;
    color: #d40000 !important;
    font-weight: 900 !important
}

.dkFooterLogoText em {
    display: none !important
}

.dkFooterIntro {
    max-width: 430px !important;
    margin: 8px 0 0 !important;
    color: #555 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    min-height: 40px !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important
}

.dkTrustList {
    width: 420px !important;
    height: 48px !important;
    margin: 10px 0 0 !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 8px !important;
    overflow: hidden !important
}

.dkTrustItem {
    height: 48px !important;
    text-align: center !important;
    color: #555 !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    overflow: hidden !important
}

.dkTrustIcon {
    width: 22px !important;
    height: 22px !important;
    margin: 0 auto 4px !important;
    font-size: 12px !important;
    line-height: 22px !important;
    transform: none !important;
    border-radius: 50% !important
}

.dkTrustItem b {
    font-size: 11px !important;
    line-height: 1.15 !important;
    margin: 0 !important
}

.dkTrustItem em {
    font-size: 11px !important;
    line-height: 1.15 !important;
    margin: 1px 0 0 !important
}

.dkFooterCol {
    height: 146px !important;
    border-left: 1px solid #f0e3db !important;
    padding-left: 52px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    overflow: hidden !important;
    min-width: 0 !important
}

.dkFooterCol h3 {
    height: 18px !important;
    margin: 0 0 8px !important;
    color: #d40000 !important;
    font-size: 15px !important;
    line-height: 18px !important;
    font-weight: 900 !important
}

.dkFooterCol a {
    min-height: 24px !important;
    height: 24px !important;
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    color: #666 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    max-width: 100% !important
}

.dkFooterCol a span:last-of-type {
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

.dkFooterCol a i {
    display: none !important
}

.dkLinkIcon {
    width: 14px !important;
    height: 14px !important;
    flex: 0 0 14px !important;
    font-size: 11px !important;
    line-height: 14px !important;
    transform: none !important;
    color: #e00012 !important;
    background: transparent !important;
    border: 0 !important
}

.dkFooterBottom {
    height: 86px !important;
    min-height: 86px !important;
    border-top: 1px solid #efe2d9 !important;
    background: rgba(255, 255, 255, .55) !important
}

.dkFooterBottomGrid {
    height: 86px !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) 214px !important;
    gap: 0 !important;
    align-items: stretch !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important
}

.dkFooterContact,
.dkFooterQrWrap {
    height: 86px !important;
    min-height: 86px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    border-right: 0 !important;
    border-left: 1px solid #efe2d9 !important;
    padding: 0 22px !important;
    margin: 0 !important;
    overflow: hidden !important
}

.dkFooterContact:first-child {
    border-left: 0 !important;
    padding-left: 0 !important
}

.dkFooterQrWrap {
    justify-content: flex-end !important;
    justify-self: stretch !important;
    padding: 0 0 0 22px !important;
    border-right: 0 !important
}

.dkBottomIcon {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    margin: 0 !important;
    display: grid !important;
    place-items: center !important;
    transform: none !important;
    border-radius: 50% !important
}

.dkFooterContact p,
.dkFooterQrWrap p {
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    gap: 0 !important;
    line-height: 1.2 !important
}

.dkFooterContact b,
.dkFooterQrWrap b {
    display: block !important;
    font-size: 13px !important;
    color: #333 !important;
    line-height: 18px !important;
    font-weight: 900 !important;
    white-space: nowrap !important
}

.dkFooterContact em,
.dkFooterQrWrap em {
    display: block !important;
    margin-top: 2px !important;
    font-size: 12px !important;
    color: #777 !important;
    line-height: 16px !important;
    white-space: nowrap !important
}

.dkQrFake {
    width: 56px !important;
    height: 56px !important;
    flex: 0 0 56px !important;
    margin: 0 !important
}

.dkFooterBrand {
    height: 146px !important;
    display: grid !important;
    grid-template-rows: 40px 36px 42px !important;
    row-gap: 8px !important;
    align-content: start !important;
    overflow: hidden !important
}

.dkFooterLogo {
    grid-row: 1 !important;
    height: 40px !important;
    margin: 0 !important
}

.dkFooterIntro {
    grid-row: 2 !important;
    height: 36px !important;
    min-height: 0 !important;
    max-height: 36px !important;
    margin: 0 !important;
    line-height: 18px !important;
    -webkit-line-clamp: 2 !important
}

.dkTrustList {
    grid-row: 3 !important;
    height: 42px !important;
    margin: 0 !important;
    align-items: start !important
}

.dkTrustItem {
    height: 42px !important;
    font-size: 10px !important;
    line-height: 11px !important
}

.dkTrustIcon {
    width: 20px !important;
    height: 20px !important;
    line-height: 20px !important;
    margin: 0 auto 3px !important;
    font-size: 11px !important
}

.dkTrustItem b {
    display: block !important;
    font-size: 10px !important;
    line-height: 11px !important
}

.dkTrustItem em {
    display: block !important;
    font-size: 10px !important;
    line-height: 11px !important;
    margin: 0 !important
}

:root {
    --dk-final-red: #C40000;
    --dk-final-red-dark: #b70000;
    --dk-final-gold: #f7c96a;
    --dk-final-bg: #fff8f5;
    --dk-final-border: #f0dad2;
    --dk-final-text: #111827;
    --dk-final-muted: #666666;
    --dk-final-shadow: 0 8px 24px rgba(128, 35, 20, .06)
}

body {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    background: #fff8f5 !important;
    color: var(--dk-final-text) !important
}

.siteHeader {
    height: 74px !important;
    min-height: 74px !important;
    background: radial-gradient(360px 120px at 100% 50%, rgba(255, 204, 74, .22), transparent 64%), linear-gradient(90deg, #b90000 0%, #C40000 48%, #c20000 100%) !important;
    box-shadow: 0 8px 24px rgba(180, 0, 0, .18) !important;
    border-bottom: none !important
}

.siteHeader .wrap {
    max-width: 1320px !important;
    width: 1320px !important;
    height: 74px !important;
    padding: 0 !important
}

.topbar {
    height: 74px !important;
    padding: 0 !important;
    gap: 34px !important;
    align-items: center !important
}

.brand {
    gap: 12px !important;
    min-width: 230px !important
}

.brandMark {
    width: 52px !important;
    height: 52px !important;
    border-radius: 999px !important;
    border: 2px solid rgba(255, 230, 160, .82) !important;
    background: linear-gradient(135deg, #fff5cb, #f3bd4a) !important;
    color: #c40000 !important;
    font-size: 24px !important;
    box-shadow: 0 8px 18px rgba(80, 0, 0, .18) !important
}

.brandText strong {
    font-size: 26px !important;
    line-height: 1.05 !important;
    letter-spacing: .5px !important;
    color: #fff !important
}

.brandText em {
    display: block !important;
    margin-top: 3px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    color: #ffe8a8 !important;
    font-weight: 700 !important
}

.nav {
    flex: 1 !important;
    justify-content: center !important;
    gap: 44px !important;
    overflow: visible !important;
    padding: 0 !important
}

.navLink {
    height: 74px !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    position: relative !important
}

.navLink.active:after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 13px !important;
    width: 36px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: #ffd766 !important;
    transform: translateX(-50%) !important
}

.navLink.active {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important
}

.caret,
.dropdownMenu {
    display: none !important
}

.rightTools {
    gap: 18px !important;
    margin-left: 0 !important;
    flex-wrap: nowrap !important
}

.search {
    width: 250px !important;
    min-width: 250px !important;
    max-width: 250px !important;
    height: 40px !important;
    background: #fff !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, .78) !important;
    box-shadow: 0 8px 18px rgba(84, 0, 0, .12) !important;
    overflow: hidden !important;
    gap: 0 !important
}

.searchInput {
    height: 40px !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 999px 0 0 999px !important;
    padding: 0 14px !important;
    font-size: 13px !important
}

.searchBtn {
    height: 40px !important;
    min-width: 48px !important;
    width: 48px !important;
    padding: 0 !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 999px 999px 0 !important;
    background: #fff !important;
    color: #C40000 !important
}

.searchBtn span {
    font-size: 0 !important
}

.searchBtn:before {
    content: "🔍";
    font-size: 14px !important
}

.dkVipBtn {
    height: 40px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ffe7a3, #f6c35c) !important;
    color: #9b2b00 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    border: 1px solid rgba(255, 231, 163, .72) !important;
    box-shadow: 0 8px 18px rgba(91, 0, 0, .12) !important
}

main.wrap {
    max-width: 1320px !important;
    width: 1320px !important;
    padding: 0 !important
}

.breadcrumb {
    margin: 16px 0 12px !important;
    font-size: 13px !important;
    color: #666666 !important;
    line-height: 1.2 !important
}

.breadcrumb a {
    color: #666666 !important;
    font-weight: 600 !important
}

.breadcrumb .cur,
.breadcrumb span:last-child {
    color: #C40000 !important;
    font-weight: 800 !important
}

#page-resource {
    padding: 0 0 0 !important
}

#page-resource .resourceShell {
    max-width: 1320px !important;
    width: 1320px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important
}

#page-resource .resourceLayout {
    display: grid !important;
    grid-template-columns: minmax(0, 930px) 300px !important;
    gap: 24px !important;
    align-items: start !important
}

#page-resource .resourceMainCol,
#page-resource .resourceSideCol {
    min-width: 0 !important
}

#page-resource .resourceSideCol {
    display: grid !important;
    gap: 16px !important
}

#page-resource .resourceTopBar {
    display: block !important;
    padding: 22px 24px 20px !important;
    margin: 0 0 3px !important;
    background: #fff !important;
    border: 1px solid var(--dk-final-border) !important;
    border-radius: 16px !important;
    box-shadow: var(--dk-final-shadow) !important
}

#page-resource .resourceTopHead {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #f1ded6 !important
}

#page-resource .resourceTitleBox {
    min-width: 0 !important;
    flex: 1 1 auto !important
}

#page-resource .resourceTitleBox h1 {
    margin: 0 !important;
    font-size: 28px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    color: #111827 !important;
    letter-spacing: -.2px !important
}

#page-resource .resourceTopTags {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    flex: 0 0 auto !important
}

#page-resource .resourceMetaPill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    border: 1px solid #eaded7 !important;
    background: #f7f2ef !important;
    color: #7d7068 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    white-space: nowrap !important
}

#page-resource .resourceTopInfo {
    display: flex !important;
    align-items: center !important;
    gap: 30px !important;
    flex-wrap: wrap !important;
    padding-top: 14px !important;
    color: #666666 !important
}

#page-resource .resourceInfoItem {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    color: #666666 !important;
    font-weight: 500 !important;
    white-space: nowrap !important
}

#page-resource .resourceInfoItem i {
    font-style: normal !important;
    color: #9aa0a6 !important;
    font-size: 15px !important;
    line-height: 1 !important
}

#page-resource .resourceInfoItem em {
    font-style: normal !important
}

#page-resource .resourceInfoItem.is-format {
    color: #E60012 !important;
    font-weight: 800 !important
}

#page-resource .resourceInfoItem.is-format i {
    color: #E60012 !important
}

#page-resource .resourcePreviewCard,
#page-resource .resourceArticle,
#page-resource .resourceInternalLinks {
    background: #fff !important;
    border: 1px solid var(--dk-final-border) !important;
    border-radius: 16px !important;
    box-shadow: var(--dk-final-shadow) !important
}

#page-resource .resourcePreviewCard {
    padding: 18px 20px !important;
    margin-top: 0 !important
}

#page-resource .resourcePreviewIntro {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 24px !important;
    margin-bottom: 18px !important
}

#page-resource .resourcePreviewIntro h3 {
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    color: #111827 !important;
    font-weight: 800 !important
}

#page-resource .resourcePreviewIntro h3:before {
    content: "" !important;
    width: 5px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: #E60012 !important;
    display: inline-block !important
}

#page-resource .resourcePreviewIntro p {
    margin: 0 !important;
    max-width: 520px !important;
    color: #735f57 !important;
    font-size: 14px !important;
    line-height: 1.8 !important
}

#page-resource .resourcePreviewHeroWrap {
    border: 1px solid #f0dad2 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #fff8f5 !important
}

#page-resource #resHeroImage {
    width: 100% !important;
    aspect-ratio: 16/9 !important;
    object-fit: cover !important;
    display: block !important
}

#page-resource .resourcePreviewGrid,
#page-resource .resourcePreviewBadge {
    display: none !important
}

#page-resource .resourceArticle {
    margin-top: 16px !important;
    padding: 0 !important;
    overflow: hidden !important
}

#page-resource .resourceArticleBlock {
    padding: 18px 22px !important;
    margin: 0 !important;
    border-top: 1px solid #f2e0d8 !important
}

#page-resource .resourceArticleBlock:first-child {
    border-top: none !important
}

#page-resource .resourceArticleBlock h2 {
    margin: 0 0 12px !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    color: #111827 !important;
    font-weight: 800 !important
}

#page-resource .resourceArticleBlock h3 {
    margin: 16px 0 8px !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: #111827 !important;
    font-weight: 800 !important
}

#page-resource .resourceArticleBlock h3:first-of-type {
    margin-top: 0 !important
}

#page-resource .resourceArticleBlock p,
#page-resource .resourceArticleBlock li {
    color: #2f343b !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
    font-weight: 400 !important
}

#page-resource .resourceArticleBlock p {
    margin: 0 0 9px !important
}

#page-resource .resourceArticleBlock ul {
    margin: 0 0 9px !important;
    padding-left: 18px !important;
    display: block !important
}

#page-resource .resourceDownloadNoteGrid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important
}

#page-resource .resourceFaqAccordion {
    display: grid !important;
    gap: 8px !important
}

#page-resource .resourceFaqRow {
    border: 1px solid #f0dad2 !important;
    border-radius: 9px !important;
    background: #fff !important;
    overflow: hidden !important
}

#page-resource .resourceFaqRow summary {
    min-height: 34px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 12px !important;
    cursor: pointer !important;
    list-style: none !important
}

#page-resource .resourceFaqRow summary::-webkit-details-marker {
    display: none !important
}

#page-resource .resourceFaqRow summary b {
    color: #E60012 !important;
    font-size: 14px !important;
    font-weight: 800 !important
}

#page-resource .resourceFaqRow summary span {
    flex: 1 !important;
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important
}

#page-resource .resourceFaqRow summary i {
    font-style: normal !important;
    color: #666666 !important;
    font-size: 14px !important
}

#page-resource .resourceFaqAnswer {
    padding: 0 12px 10px 42px !important;
    color: #666666 !important;
    font-size: 12px !important;
    line-height: 1.65 !important
}

#page-resource .resourcePrevNext {
    display: none !important
}

#page-resource .resourceInternalLinks {
    margin-top: 16px !important;
    padding: 14px 18px !important
}

#page-resource .resourceInnerLinkPanel h2 {
    margin: 0 0 8px !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    color: #111827 !important;
    font-weight: 800 !important
}

#page-resource .resourceInnerLinkPanel p {
    margin: 0 !important;
    color: #2f343b !important;
    font-size: 13px !important;
    line-height: 1.8 !important
}

#page-resource .resourceInnerLinkPanel a {
    color: #333 !important;
    font-weight: 600 !important
}

#page-resource .resourceInnerLinkPanel a:hover {
    color: #C40000 !important
}

#page-resource .resourceActionCard,
#page-resource .resourceFactsCard,
#page-resource .resourceNoticeCard,
#page-resource .resourceAssistCard {
    background: #fff !important;
    border: 1px solid var(--dk-final-border) !important;
    border-radius: 16px !important;
    box-shadow: var(--dk-final-shadow) !important
}

#page-resource .resourceActionCard {
    padding: 18px 20px !important
}

#page-resource .resourceActionCard h3,
#page-resource .resourceFactsHead,
#page-resource .resourceNoticeHead h4 {
    margin: 0 0 14px !important;
    color: #111827 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important
}

#page-resource .resourceActionBtn {
    width: 100% !important;
    height: 46px !important;
    border-radius: 9px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    cursor: pointer !important
}

#page-resource .resourceActionBtn.primary {
    border: none !important;
    background: linear-gradient(180deg, #E60012 0%, #c60000 100%) !important;
    color: #fff !important;
    box-shadow: 0 8px 18px rgba(214, 0, 0, .18) !important
}

#page-resource .resourceActionBtn.primary:before {
    content: "⬇";
    margin-right: 8px
}

#page-resource .resourceActionBtn.ghost {
    margin-top: 12px !important;
    background: #fff !important;
    border: 1px solid #E60012 !important;
    color: #E60012 !important
}

#page-resource .resourceActionBtn.ghost:before {
    content: "☆";
    margin-right: 8px
}

#page-resource .resourceFactsCard {
    padding: 18px 20px !important
}

#page-resource .resourceFactList {
    display: grid !important;
    gap: 11px !important
}

#page-resource .resourceFactRow {
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: center !important;
    font-size: 13px !important;
    line-height: 1.35 !important
}

#page-resource .resourceFactRow span {
    color: #666666 !important;
    font-weight: 500 !important
}

#page-resource .resourceFactRow strong {
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-align: left !important
}

#page-resource .resourceFactLink {
    color: #111827 !important;
    font-weight: 700 !important
}

#page-resource .resourceFactLink:hover {
    color: #C40000 !important
}

#page-resource .resourceNoticeCard {
    padding: 18px 20px !important
}

#page-resource .resourceNoticeHead {
    display: block !important;
    margin: 0 !important
}

#page-resource .resourceNoticeHead h4:before {
    content: "🛡";
    margin-right: 8px;
    color: #E60012
}

#page-resource .resourceNoticeBadge {
    display: none !important
}

#page-resource .resourceNoticeBody p {
    margin: 0 0 10px !important;
    color: #666666 !important;
    font-size: 13px !important;
    line-height: 1.85 !important
}

#page-resource .resourceNoticeBody p:last-child {
    margin-bottom: 0 !important
}

#page-resource .resourceAssistCard {
    display: block !important;
    padding: 18px 20px !important;
    background: linear-gradient(135deg, #fff 0%, #fff0ed 100%) !important;
    color: #C40000 !important
}

#page-resource .resourceAssistIcon {
    display: inline-flex !important;
    width: 30px !important;
    height: 30px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    background: #E60012 !important;
    color: #fff !important;
    font-size: 16px !important;
    margin-bottom: 8px !important
}

#page-resource .resourceAssistText {
    display: block !important;
    color: #C40000 !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    font-weight: 800 !important
}

#page-resource .resourceAssistText b {
    display: block !important;
    margin-bottom: 6px !important;
    font-size: 16px !important
}

#page-resource .resourceAssistText em {
    display: block !important;
    color: #5e4b45 !important;
    font-style: normal !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.7 !important
}

#page-resource .resourceAssistArrow {
    margin-top: 14px !important;
    height: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border: 1px solid #efb8ae !important;
    border-radius: 9px !important;
    padding: 0 14px !important;
    color: #C40000 !important;
    font-size: 13px !important;
    font-weight: 800 !important
}

#page-resource .resourceAssistArrow:after {
    content: "›";
    font-size: 18px
}

.dkFooter {
    height: 260px !important;
    min-height: 260px !important;
    margin-top: 24px !important;
    background: linear-gradient(180deg, #fff 0%, #fffaf6 100%) !important;
    border-top: 1px solid #efe2d9 !important;
    overflow: hidden !important;
    position: relative !important
}

.dkFooter:after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    bottom: 44px !important;
    width: 420px !important;
    height: 160px !important;
    background: radial-gradient(220px 70px at 70% 70%, rgba(214, 0, 0, .10), transparent 65%), linear-gradient(160deg, transparent 15%, rgba(214, 0, 0, .05) 15% 42%, transparent 42%) !important;
    pointer-events: none !important
}

.dkFooterMain {
    max-width: 1320px !important;
    width: 1320px !important;
    height: 176px !important;
    padding: 20px 0 12px !important;
    display: grid !important;
    grid-template-columns: 360px 1fr 1fr 1fr !important;
    gap: 58px !important;
    align-items: start !important;
    position: relative !important;
    z-index: 1 !important
}

.dkFooterLogoMark {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important
}

.dkFooterLogoText strong {
    font-size: 18px !important;
    line-height: 1.2 !important;
    color: #C40000 !important
}

.dkFooterLogoText em,
.dkFooterIntro,
.dkFooterCol a,
.dkTrustItem em {
    font-size: 12px !important
}

.dkFooterIntro {
    margin-top: 10px !important;
    line-height: 1.75 !important;
    color: #6b5b55 !important
}

.dkFooterCol h3 {
    margin: 0 0 10px !important;
    color: #C40000 !important;
    font-size: 16px !important;
    font-weight: 800 !important
}

.dkFooterCol a {
    min-height: 22px !important;
    line-height: 22px !important;
    color: #3b3330 !important;
    font-weight: 600 !important
}

.dkFooterBottom {
    max-width: 1320px !important;
    width: 1320px !important;
    height: 84px !important;
    padding: 10px 0 !important
}

.dkFooterContact,
.dkFooterCopyright,
.dkFooterQrText {
    font-size: 12px !important
}

@media (max-width:1360px) {

    .siteHeader .wrap,
    main.wrap,
    .dkFooterMain,
    .dkFooterBottom {
        width: calc(100vw - 48px) !important;
        max-width: 1320px !important
    }

    #page-resource .resourceShell {
        width: 100% !important
    }

    #page-resource .resourceLayout {
        grid-template-columns: minmax(0, 1fr) 300px !important
    }
}

footer.dkFooterRef {
    height: auto !important;
    min-height: 0 !important;
    margin: 18px 0 0 !important;
    padding: 0 0 14px !important;
    background: #fffdfa !important;
    border-top: 1px solid #f2e4dc !important;
    box-shadow: none !important;
    overflow: visible !important;
    position: relative !important;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

footer.dkFooterRef:before,
footer.dkFooterRef:after {
    display: none !important;
    content: none !important
}

footer.dkFooterRef * {
    box-sizing: border-box !important
}

footer.dkFooterRef a {
    text-decoration: none !important
}

.dkFooterRefCard {
    width: 1320px !important;
    max-width: 1320px !important;
    height: 142px !important;
    margin: 0 auto !important;
    padding: 20px 22px 18px !important;
    display: grid !important;
    grid-template-columns: 360px 132px 160px 160px 1fr !important;
    align-items: start !important;
    column-gap: 0 !important;
    background: rgba(255, 255, 255, .98) !important;
    border: 1px solid #f0dfd8 !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 26px rgba(120, 40, 20, .05) !important
}

.dkFooterRefBrand,
.dkFooterRefCol,
.dkFooterRefContact {
    min-width: 0 !important
}

.dkFooterRefCol,
.dkFooterRefContact {
    height: 104px !important;
    border-left: 1px solid #f0dfd8 !important;
    padding-left: 24px !important
}

.dkFooterRefLogo {
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    color: #d40000 !important
}

.dkFooterRefLogoMark {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    color: #fff8c8 !important;
    font-size: 20px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    background: linear-gradient(135deg, #E60012 0%, #b90000 100%) !important;
    box-shadow: 0 8px 18px rgba(214, 0, 0, .16) !important
}

.dkFooterRefLogoText {
    display: grid !important;
    gap: 4px !important;
    line-height: 1 !important
}

.dkFooterRefLogoText strong {
    display: block !important;
    color: #d00000 !important;
    font-size: 18px !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    letter-spacing: .01em !important;
    white-space: nowrap !important
}

.dkFooterRefLogoText em {
    display: block !important;
    font-style: normal !important;
    color: #6d605b !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    font-weight: 600 !important;
    white-space: nowrap !important
}

.dkFooterRefQuick {
    margin-top: 17px !important;
    width: 304px !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 14px !important
}

.dkFooterRefQuick a {
    display: grid !important;
    justify-items: center !important;
    gap: 6px !important;
    color: #3f3835 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 600 !important
}

.dkFooterRefQuick span {
    width: 28px !important;
    height: 28px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 9px !important;
    color: #e00012 !important;
    font-size: 14px !important;
    line-height: 1 !important;
    background: #fff5f3 !important;
    border: 1px solid #ffd9d4 !important
}

.dkFooterRefQuick em {
    font-style: normal !important;
    white-space: nowrap !important
}

.dkFooterRefCol h3,
.dkFooterRefContact h3 {
    margin: 0 0 9px !important;
    color: #d00000 !important;
    font-size: 15px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    white-space: nowrap !important
}

.dkFooterRefCol a {
    display: block !important;
    height: 18px !important;
    line-height: 18px !important;
    color: #5e5551 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

.dkFooterRefCol a+a {
    margin-top: 2px !important
}

.dkFooterRefCol a:hover {
    color: #d00000 !important
}

.dkFooterRefContact {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 76px 94px !important;
    column-gap: 16px !important;
    align-items: start !important;
    padding-right: 8px !important
}

.dkFooterRefContactText p {
    margin: 0 !important;
    height: 20px !important;
    line-height: 20px !important;
    color: #5b514d !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    white-space: nowrap !important
}

.dkFooterRefContactText b {
    color: #534943 !important;
    font-weight: 800 !important
}

.dkFooterRefQr {
    width: 72px !important;
    height: 72px !important;
    margin-top: 2px !important;
    border-radius: 8px !important;
    border: 1px solid #e8d9d2 !important;
    background: linear-gradient(90deg, #111 7px, transparent 7px 13px, #111 13px 20px, transparent 20px), linear-gradient(#111 7px, transparent 7px 13px, #111 13px 20px, transparent 20px), repeating-linear-gradient(90deg, #111 0 4px, #fff 4px 8px), repeating-linear-gradient(0deg, #111 0 4px, #fff 4px 8px) !important;
    background-size: 24px 24px, 24px 24px, 72px 72px, 72px 72px !important;
    background-position: 6px 6px, 42px 42px, 0 0, 0 0 !important;
    background-blend-mode: normal, normal, normal, normal !important;
    background-color: #fff !important;
    position: relative !important;
    overflow: hidden !important
}

.dkFooterRefQr:before,
.dkFooterRefQr:after {
    content: "" !important;
    position: absolute !important;
    width: 18px !important;
    height: 18px !important;
    border: 5px solid #111 !important;
    background: #fff !important
}

.dkFooterRefQr:before {
    left: 6px !important;
    top: 6px !important
}

.dkFooterRefQr:after {
    right: 6px !important;
    top: 6px !important
}

.dkFooterRefQr i {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 20px !important;
    height: 20px !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 5px !important;
    background: #e00012 !important;
    box-shadow: 0 0 0 3px #fff !important
}

.dkFooterRefQrText {
    margin: 9px 0 0 !important;
    color: #5d534f !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    white-space: nowrap !important
}

.dkFooterRefCopyright {
    width: 1320px !important;
    max-width: 1320px !important;
    height: 34px !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    color: #77706c !important;
    font-size: 12px !important;
    line-height: 34px !important;
    font-weight: 500 !important;
    white-space: nowrap !important
}

.dkFooterRefCopyright span {
    color: #d8c8bf !important
}

@media (max-width:1360px) {

    .dkFooterRefCard,
    .dkFooterRefCopyright {
        width: calc(100vw - 48px) !important;
        max-width: 1320px !important
    }

    .dkFooterRefCard {
        grid-template-columns: 340px 120px 150px 150px 1fr !important
    }

    .dkFooterRefCol,
    .dkFooterRefContact {
        padding-left: 20px !important
    }
}

@media (max-width:980px) {
    footer.dkFooterRef {
        padding-bottom: 18px !important
    }

    .dkFooterRefCard {
        height: auto !important;
        grid-template-columns: 1fr 1fr !important;
        row-gap: 18px !important;
        padding: 18px !important
    }

    .dkFooterRefBrand {
        grid-column: 1/-1 !important
    }

    .dkFooterRefCol,
    .dkFooterRefContact {
        height: auto !important;
        border-left: 0 !important;
        border-top: 1px solid #f0dfd8 !important;
        padding: 16px 0 0 !important
    }

    .dkFooterRefContact {
        grid-column: 1/-1 !important;
        grid-template-columns: 1fr 72px 92px !important
    }

    .dkFooterRefCopyright {
        height: auto !important;
        line-height: 1.7 !important;
        flex-wrap: wrap !important;
        gap: 8px 12px !important;
        padding-top: 8px !important
    }
}

@media (max-width:560px) {
    .dkFooterRefCard {
        grid-template-columns: 1fr !important;
        width: calc(100vw - 28px) !important
    }

    .dkFooterRefCopyright {
        width: calc(100vw - 28px) !important
    }

    .dkFooterRefQuick {
        width: 100% !important;
        gap: 8px !important
    }

    .dkFooterRefContact {
        grid-template-columns: 1fr !important;
        gap: 10px !important
    }

    .dkFooterRefQrText {
        margin-top: 0 !important
    }
}

@media (min-width:1021px) {
    #page-home .home2 {
        gap: 26px !important
    }

    #page-home .home2-section[aria-label="按资料类型查找"],
    #page-home .home2-section[aria-label="按使用场景查找"] {
        gap: 14px !important
    }

    #page-home .home2-section[aria-label="按资料类型查找"] .home2-heading,
    #page-home .home2-section[aria-label="按使用场景查找"] .home2-heading {
        font-size: 24px !important;
        line-height: 1.2 !important;
        letter-spacing: .01em !important
    }

    #page-home .home2-type-grid {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 24px !important
    }

    #page-home .home2-type-card {
        min-height: 104px !important;
        padding: 20px 22px !important;
        border-radius: 14px !important;
        gap: 20px !important;
        background: #fff !important;
        border: 1px solid #ebe7e4 !important;
        box-shadow: 0 9px 24px rgba(33, 28, 24, .045) !important;
        overflow: hidden !important
    }

    #page-home .home2-type-card>span:last-child,
    #page-home .home2-scene-card>span:last-child {
        min-width: 0 !important;
        display: block !important
    }

    #page-home .home2-type-icon {
        width: 56px !important;
        height: 56px !important;
        flex: 0 0 56px !important;
        font-size: 25px !important;
        border-radius: 50% !important;
        box-shadow: 0 10px 20px rgba(0, 0, 0, .08) !important
    }

    #page-home .home2-type-title {
        display: block !important;
        font-size: 22px !important;
        line-height: 1.15 !important;
        color: #191919 !important;
        font-weight: 1000 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important
    }

    #page-home .home2-type-sub {
        display: block !important;
        margin-top: 9px !important;
        font-size: 15px !important;
        line-height: 1.2 !important;
        color: #8d8d8d !important;
        font-style: normal !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important
    }

    #page-home .home2-scene-grid {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 24px !important
    }

    #page-home .home2-scene-card {
        min-height: 96px !important;
        padding: 20px 22px !important;
        border-radius: 14px !important;
        gap: 18px !important;
        background: #fff !important;
        border: 1px solid #ebe7e4 !important;
        box-shadow: 0 9px 24px rgba(33, 28, 24, .045) !important;
        overflow: hidden !important
    }

    #page-home .home2-scene-icon {
        width: 52px !important;
        height: 52px !important;
        flex: 0 0 52px !important;
        border-radius: 12px !important;
        background: transparent !important;
        color: #e00012 !important;
        box-shadow: none !important;
        font-size: 34px !important;
        line-height: 1 !important
    }

    #page-home .home2-scene-title {
        display: block !important;
        font-size: 20px !important;
        line-height: 1.18 !important;
        color: #1a1a1a !important;
        font-weight: 1000 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important
    }

    #page-home .home2-scene-sub {
        display: block !important;
        margin-top: 8px !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
        color: #8b8b8b !important;
        font-style: normal !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important
    }
}

@media (max-width:1200px) {
    #page-home .home2-type-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 16px !important
    }

    #page-home .home2-scene-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important
    }
}

@media (max-width:640px) {

    #page-home .home2-type-grid,
    #page-home .home2-scene-grid {
        grid-template-columns: 1fr !important
    }

    #page-home .home2-type-card,
    #page-home .home2-scene-card {
        min-height: 86px !important;
        padding: 16px !important
    }
}

footer.dkFooterRef {
    margin-top: 22px !important;
    padding-bottom: 12px !important;
    overflow: hidden !important
}

.dkFooterRefCard {
    width: 1320px !important;
    max-width: calc(100vw - 48px) !important;
    height: 148px !important;
    padding: 18px 20px 16px !important;
    grid-template-columns: 340px 138px 166px 166px minmax(0, 1fr) !important;
    align-items: start !important;
    overflow: hidden !important
}

.dkFooterRefBrand,
.dkFooterRefCol,
.dkFooterRefContact {
    min-width: 0 !important;
    overflow: hidden !important
}

.dkFooterRefCol,
.dkFooterRefContact {
    height: 112px !important;
    padding-left: 22px !important
}

.dkFooterRefLogoText strong {
    font-size: 18px !important;
    max-width: 270px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

.dkFooterRefLogoText em {
    max-width: 270px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

.dkFooterRefQuick {
    width: 292px !important;
    gap: 10px !important;
    margin-top: 15px !important
}

.dkFooterRefQuick a {
    min-width: 0 !important;
    font-size: 11px !important
}

.dkFooterRefQuick em {
    max-width: 58px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

.dkFooterRefCol h3,
.dkFooterRefContact h3 {
    margin-bottom: 8px !important;
    font-size: 15px !important
}

.dkFooterRefCol a {
    height: 18px !important;
    line-height: 18px !important;
    font-size: 11.5px !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important
}

.dkFooterRefCol a+a {
    margin-top: 1px !important
}

.dkFooterRefContact {
    grid-template-columns: minmax(0, 1fr) 72px 88px !important;
    column-gap: 12px !important;
    padding-right: 0 !important
}

.dkFooterRefContactText {
    min-width: 0 !important;
    overflow: hidden !important
}

.dkFooterRefContactText p {
    height: 20px !important;
    line-height: 20px !important;
    font-size: 11.5px !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important
}

.dkFooterRefQr {
    width: 70px !important;
    height: 70px !important;
    margin-top: 0 !important
}

.dkFooterRefQrText {
    margin-top: 5px !important;
    font-size: 11.5px !important;
    line-height: 1.42 !important;
    max-width: 88px !important;
    overflow: hidden !important
}

.dkFooterRefCopyright {
    width: 1320px !important;
    max-width: calc(100vw - 48px) !important;
    min-height: 32px !important;
    height: auto !important;
    line-height: 1.7 !important;
    padding-top: 8px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    row-gap: 2px !important;
    overflow: hidden !important;
    text-align: center !important
}

@media (max-width:1360px) {
    .dkFooterRefCard {
        grid-template-columns: 310px 120px 148px 148px minmax(0, 1fr) !important;
        padding-left: 18px !important;
        padding-right: 18px !important
    }

    .dkFooterRefCol,
    .dkFooterRefContact {
        padding-left: 18px !important
    }

    .dkFooterRefContact {
        grid-template-columns: minmax(0, 1fr) 68px 82px !important;
        column-gap: 10px !important
    }
}

@media (max-width:980px) {
    .dkFooterRefCard {
        height: auto !important;
        overflow: visible !important;
        grid-template-columns: 1fr 1fr !important
    }

    .dkFooterRefCol,
    .dkFooterRefContact {
        height: auto !important;
        overflow: visible !important
    }

    .dkFooterRefContact {
        grid-template-columns: 1fr 72px 90px !important
    }
}

@media (max-width:560px) {
    .dkFooterRefCard {
        max-width: calc(100vw - 28px) !important;
        grid-template-columns: 1fr !important
    }

    .dkFooterRefContact {
        grid-template-columns: 1fr !important
    }

    .dkFooterRefCopyright {
        max-width: calc(100vw - 28px) !important
    }
}

@media (min-width:1021px) {
    #page-home .home2-section[aria-label="为什么选择党课帮"] {
        gap: 18px !important;
        margin-top: 2px !important
    }

    #page-home .home2-section[aria-label="为什么选择党课帮"] .home2-heading,
    #page-home .home2-section[aria-label="常见问题"] .home2-heading {
        font-size: 28px !important;
        line-height: 1.18 !important;
        letter-spacing: .01em !important
    }

    #page-home .home2-reason-grid {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 26px !important
    }

    #page-home .home2-reason-card {
        min-height: 130px !important;
        padding: 24px 28px !important;
        border-radius: 14px !important;
        display: flex !important;
        align-items: center !important;
        gap: 22px !important;
        background: #fff !important;
        border: 1px solid #ebe7e4 !important;
        box-shadow: 0 10px 26px rgba(33, 28, 24, .045) !important;
        overflow: hidden !important
    }

    #page-home .home2-reason-card>span:last-child {
        min-width: 0 !important;
        display: block !important
    }

    #page-home .home2-reason-icon {
        width: 74px !important;
        height: 74px !important;
        flex: 0 0 74px !important;
        border-radius: 50% !important;
        display: grid !important;
        place-items: center !important;
        color: #fff !important;
        background: linear-gradient(135deg, #ff4a3d 0%, #df0000 100%) !important;
        box-shadow: 0 12px 24px rgba(220, 24, 24, .16) !important;
        font-size: 34px !important;
        line-height: 1 !important;
        font-weight: 1000 !important
    }

    #page-home .home2-reason-card:nth-child(2) .home2-reason-icon {
        position: relative !important;
        border-radius: 0 !important;
        clip-path: polygon(50% 0, 88% 16%, 82% 68%, 50% 100%, 18% 68%, 12% 16%) !important;
        background: #e00012 !important;
        color: #e00012 !important;
        box-shadow: none !important
    }

    #page-home .home2-reason-card:nth-child(2) .home2-reason-icon::before {
        content: "";
        position: absolute;
        inset: 5px;
        background: #fff;
        clip-path: inherit
    }

    #page-home .home2-reason-card:nth-child(2) .home2-reason-icon {
        text-shadow: 0 0 0 #e00012
    }

    #page-home .home2-reason-title {
        display: block !important;
        color: #1b1b1b !important;
        font-size: 21px !important;
        line-height: 1.22 !important;
        font-weight: 1000 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important
    }

    #page-home .home2-reason-sub {
        display: block !important;
        margin-top: 10px !important;
        color: #737373 !important;
        font-size: 15px !important;
        line-height: 1.75 !important;
        font-style: normal !important;
        font-weight: 700 !important
    }

    #page-home .home2-section[aria-label="常见问题"] {
        gap: 18px !important;
        margin-top: 8px !important
    }

    #page-home .home2-faq-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 24px 38px !important
    }

    #page-home details.home2-faq-item {
        display: block !important;
        min-height: auto !important;
        padding: 0 !important;
        border-radius: 999px !important;
        background: #fff !important;
        border: 1px solid #e4e1df !important;
        box-shadow: 0 8px 18px rgba(33, 28, 24, .035) !important;
        color: #1e1e1e !important;
        font-size: 16px !important;
        font-weight: 900 !important;
        overflow: hidden !important
    }

    #page-home details.home2-faq-item[open] {
        border-radius: 20px !important;
        box-shadow: 0 12px 26px rgba(33, 28, 24, .06) !important
    }

    #page-home details.home2-faq-item summary {
        list-style: none !important;
        min-height: 56px !important;
        padding: 0 24px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 18px !important;
        cursor: pointer !important;
        user-select: none !important
    }

    #page-home details.home2-faq-item summary::-webkit-details-marker {
        display: none !important
    }

    #page-home details.home2-faq-item strong {
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        color: #222 !important;
        font-size: 17px !important;
        line-height: 1.35 !important;
        font-weight: 1000 !important
    }

    #page-home details.home2-faq-item strong span {
        color: #e0251b !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
        font-size: 18px !important;
        font-weight: 1000 !important
    }

    #page-home details.home2-faq-item em {
        flex: 0 0 auto !important;
        color: #777 !important;
        font-style: normal !important;
        font-size: 16px !important;
        font-weight: 1000 !important;
        transition: transform .18s ease !important
    }

    #page-home details.home2-faq-item[open] em {
        transform: rotate(180deg) !important
    }

    #page-home details.home2-faq-item p {
        margin: 0 !important;
        padding: 0 24px 18px 62px !important;
        color: #666 !important;
        font-size: 14px !important;
        line-height: 1.75 !important;
        font-weight: 600 !important
    }
}

@media (max-width:1200px) {
    #page-home .home2-reason-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px !important
    }

    #page-home .home2-faq-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important
    }
}

@media (max-width:640px) {
    #page-home .home2-reason-grid {
        grid-template-columns: 1fr !important
    }

    #page-home .home2-reason-card {
        min-height: 104px !important;
        padding: 18px !important
    }

    #page-home .home2-reason-icon {
        width: 58px !important;
        height: 58px !important;
        flex-basis: 58px !important;
        font-size: 26px !important
    }

    #page-home details.home2-faq-item strong {
        font-size: 15px !important
    }

    #page-home details.home2-faq-item p {
        padding: 0 18px 16px 50px !important
    }
}

#page-home,
#page-home .home2,
#page-home .home2 * {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-home .home2-title {
    font-size: 40px !important;
    line-height: 1.16 !important;
    font-weight: 1000 !important;
    letter-spacing: .02em !important
}

#page-home .home2-subtitle {
    font-size: 14px !important;
    line-height: 1.75 !important;
    font-weight: 500 !important
}

#page-home .home2-heading {
    font-size: 24px !important;
    line-height: 1.24 !important;
    font-weight: 1000 !important;
    letter-spacing: .01em !important
}

#page-home .home2-more,
#page-home .home2-hot-label,
#page-home .home2-hot a,
#page-home .home2-latest-date,
#page-home .home2-latest-badge,
#page-home .home2-card-tags span {
    font-size: 13px !important;
    line-height: 1.35 !important
}

#page-home .home2-type-title,
#page-home .home2-scene-title,
#page-home .home2-reason-title {
    font-size: 18px !important;
    line-height: 1.28 !important;
    font-weight: 1000 !important;
    letter-spacing: 0 !important
}

#page-home .home2-type-sub,
#page-home .home2-scene-sub,
#page-home .home2-reason-sub,
#page-home .home2-info p {
    font-size: 14px !important;
    line-height: 1.72 !important;
    font-weight: 600 !important
}

#page-home .home2-card-title {
    font-size: 14px !important;
    line-height: 1.45 !important;
    font-weight: 900 !important
}

#page-home .home2-topic-title,
#page-home .home2-latest-title {
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important
}

#page-home .home2-section[aria-label="常见问题"] {
    gap: 18px !important;
    margin-top: 4px !important
}

#page-home .home2-section[aria-label="常见问题"] .home2-heading {
    margin: 0 !important;
    color: #111 !important;
    font-size: 24px !important;
    line-height: 1.24 !important;
    font-weight: 1000 !important
}

#page-home .home2-faq-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(3, auto) !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(0, 1fr) !important;
    column-gap: 68px !important;
    row-gap: 14px !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 0 !important
}

#page-home details.home2-faq-item {
    display: block !important;
    width: 100% !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border: 1px solid #e9e6e3 !important;
    border-radius: 999px !important;
    box-shadow: 0 2px 8px rgba(31, 35, 40, .025) !important;
    overflow: hidden !important;
    color: #222222 !important
}

#page-home details.home2-faq-item[open] {
    border-radius: 18px !important;
    box-shadow: 0 8px 20px rgba(31, 35, 40, .045) !important
}

#page-home details.home2-faq-item summary {
    list-style: none !important;
    min-height: 50px !important;
    height: 50px !important;
    padding: 0 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    cursor: pointer !important;
    user-select: none !important;
    outline: none !important
}

#page-home details.home2-faq-item summary::-webkit-details-marker {
    display: none !important
}

#page-home details.home2-faq-item strong {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
    color: #242424 !important;
    font-size: 16px !important;
    line-height: 1.32 !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

#page-home details.home2-faq-item strong span {
    flex: 0 0 auto !important;
    margin: 0 !important;
    color: #222 !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 900 !important
}

#page-home details.home2-faq-item em {
    flex: 0 0 auto !important;
    width: 18px !important;
    height: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    color: #4b5563 !important;
    font-style: normal !important;
    font-size: 18px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    transform: translateY(-1px) !important;
    transition: transform .18s ease !important
}

#page-home details.home2-faq-item[open] em {
    transform: translateY(-1px) rotate(180deg) !important
}

#page-home details.home2-faq-item p {
    margin: 0 !important;
    padding: 0 24px 17px 58px !important;
    color: #666 !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
    font-weight: 500 !important;
    text-align: left !important
}

@media (max-width:1020px) {
    #page-home .home2-title {
        font-size: 32px !important
    }

    #page-home .home2-heading {
        font-size: 22px !important
    }

    #page-home .home2-faq-grid {
        grid-template-columns: 1fr !important;
        grid-template-rows: none !important;
        grid-auto-flow: row !important;
        gap: 12px !important
    }
}

@media (max-width:640px) {
    #page-home .home2-title {
        font-size: 28px !important
    }

    #page-home .home2-type-title,
    #page-home .home2-scene-title,
    #page-home .home2-reason-title {
        font-size: 16px !important
    }

    #page-home details.home2-faq-item summary {
        padding: 0 18px !important
    }

    #page-home details.home2-faq-item strong {
        font-size: 15px !important;
        gap: 9px !important
    }

    #page-home details.home2-faq-item strong span {
        font-size: 15px !important
    }

    #page-home details.home2-faq-item p {
        padding: 0 18px 15px 44px !important
    }
}

#page-resource,
#page-resource * {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-resource {
    font-size: 14px !important;
    color: #222222 !important
}

#page-resource .resourceTitleBox h1,
#page-resource #resTitle {
    margin: 0 !important;
    color: #111827 !important;
    font-size: 28px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important;
    letter-spacing: -.2px !important
}

#page-resource .resourcePreviewIntro h3,
#page-resource .resourceArticleBlock h2,
#page-resource .resourceActionCard h3,
#page-resource .resourceFactsHead,
#page-resource .resourceNoticeHead h4,
#page-resource .resourceInnerLinkPanel h2,
#page-resource .resourceRelatedHead h2,
#page-resource .resourceTopicNavHead h3,
#page-resource .resourceLinkModuleHead h3 {
    color: #111827 !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important
}

#page-resource .resourceArticleBlock h3,
#page-resource .resourceAssistText b,
#page-resource .resourceRelatedCardTitle,
#page-resource .resourceGuessTitle,
#page-resource .resourceTextLink,
#page-resource .resourceTopicNavLabel {
    color: #111827 !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important
}

#page-resource .resourceArticleBlock p,
#page-resource .resourceArticleBlock li,
#page-resource .resourcePreviewIntro p,
#page-resource .resourceInnerLinkPanel p,
#page-resource .resourceRelatedHead span,
#page-resource .resourceNoticeBody p,
#page-resource .resourceAssistText em,
#page-resource .resourceInfoItem,
#page-resource .resourceFactRow,
#page-resource .resourceFactRow span,
#page-resource .resourceFactRow strong,
#page-resource .resourceFactLink,
#page-resource .resourceMetaPill,
#page-resource .resourceFaqRow summary span,
#page-resource .resourceFaqAnswer,
#page-resource .resourceTopicTag,
#page-resource .resourceTextLink small {
    font-size: 14px !important;
    line-height: 1.8 !important;
    letter-spacing: 0 !important
}

#page-resource .resourceArticleBlock p {
    margin: 0 0 10px !important
}

#page-resource .resourceArticleBlock ul {
    margin: 0 0 10px !important;
    padding-left: 20px !important
}

#page-resource .resourceArticleBlock li {
    margin: 0 0 4px !important
}

#page-resource .resourceMetaPill {
    height: 28px !important;
    padding: 0 13px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    white-space: nowrap !important
}

#page-resource .resourceInfoItem {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1.4 !important;
    color: #666666 !important
}

#page-resource .resourceInfoItem em,
#page-resource .resourceInfoItem i {
    font-size: 14px !important;
    line-height: 1.4 !important
}

#page-resource .resourceFaqRow summary {
    min-height: 38px !important;
    padding: 0 14px !important
}

#page-resource .resourceFaqRow summary b {
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 900 !important;
    color: #E60012 !important
}

#page-resource .resourceFaqRow summary span {
    font-weight: 800 !important;
    color: #111827 !important
}

#page-resource .resourceFaqRow summary i {
    font-size: 14px !important;
    line-height: 1 !important
}

#page-resource .resourceFaqAnswer {
    padding: 0 14px 12px 44px !important;
    color: #666666 !important
}

#page-resource .resourceFactRow {
    grid-template-columns: 78px minmax(0, 1fr) !important;
    align-items: start !important
}

#page-resource .resourceFactRow span {
    color: #666666 !important;
    font-weight: 500 !important
}

#page-resource .resourceFactRow strong,
#page-resource .resourceFactLink {
    color: #111827 !important;
    font-weight: 700 !important;
    overflow: hidden;
}

@media (max-width:760px) {

    #page-resource .resourceTitleBox h1,
    #page-resource #resTitle {
        font-size: 24px !important;
        line-height: 1.38 !important
    }

    #page-resource .resourcePreviewIntro h3,
    #page-resource .resourceArticleBlock h2,
    #page-resource .resourceActionCard h3,
    #page-resource .resourceFactsHead,
    #page-resource .resourceNoticeHead h4,
    #page-resource .resourceInnerLinkPanel h2,
    #page-resource .resourceRelatedHead h2,
    #page-resource .resourceTopicNavHead h3,
    #page-resource .resourceLinkModuleHead h3 {
        font-size: 17px !important
    }

    #page-resource .resourceArticleBlock h3,
    #page-resource .resourceAssistText b,
    #page-resource .resourceRelatedCardTitle,
    #page-resource .resourceGuessTitle,
    #page-resource .resourceTextLink,
    #page-resource .resourceTopicNavLabel {
        font-size: 15px !important
    }
}

#page-resource .resourceTopBar {
    margin: 0 0 16px !important
}

#page-resource .resourcePreviewCard {
    margin-top: 0 !important
}

#page-resource .resourceArticle {
    margin-top: 16px !important
}

#page-resource .resourceInternalLinks {
    margin-top: 16px !important
}

#page-resource .resourcePreviewCard {
    padding: 20px 22px !important
}

#page-resource .resourcePreviewIntro {
    margin: 0 0 18px !important
}

#page-resource .resourcePreviewIntro h3 {
    margin: 0 !important
}

@media (max-width:760px) {
    #page-resource .resourceTopBar {
        margin: 0 0 14px !important
    }

    #page-resource .resourceArticle,
    #page-resource .resourceInternalLinks {
        margin-top: 14px !important
    }

    #page-resource .resourcePreviewCard {
        padding: 18px !important
    }
}

#page-resource .resourceLayout {
    align-items: start !important
}

#page-resource .resourceSideCol {
    position: relative !important;
    top: auto !important;
    align-self: start !important;
    z-index: auto !important;
    display: grid !important;
    gap: 16px !important;
    max-height: none !important;
    overflow: visible !important;
    padding-right: 0 !important;
    overscroll-behavior: auto !important
}

#page-resource .resourceSideCol::-webkit-scrollbar {
    width: auto !important
}

#page-resource .resourceSideCol::-webkit-scrollbar-thumb,
#page-resource .resourceSideCol::-webkit-scrollbar-track {
    background: initial !important;
    border-radius: 0 !important
}

#page-resource .resourceActionCard {
    position: sticky !important;
    top: 92px !important;
    z-index: 20 !important;
    align-self: start !important;
    background: #fff !important;
    border-color: #f0d8d2 !important;
    box-shadow: 0 18px 38px rgba(184, 35, 35, .10) !important
}

#page-resource .resourceFactsCard,
#page-resource .resourceNoticeCard,
#page-resource .resourceAssistCard {
    position: static !important;
    top: auto !important;
    z-index: auto !important
}

@media (max-width:980px) {
    #page-resource .resourceActionCard {
        position: static !important;
        top: auto !important;
        z-index: auto !important
    }
}

#page-resource .resourceSideCol {
    overflow: visible !important
}

#page-resource .resourceActionCard {
    position: relative !important;
    top: auto !important;
    z-index: 30 !important
}

#page-resource .resourceActionSpacer {
    display: none;
    height: 0;
    min-height: 0;
    pointer-events: none
}

#page-resource .resourceActionCard.dk-download-free-floating {
    position: fixed !important;
    top: 92px !important;
    left: var(--dk-download-float-left, auto) !important;
    width: var(--dk-download-float-width, 320px) !important;
    z-index: 79 !important;
    margin: 0 !important;
    transform: translateZ(0);
    box-shadow: 0 22px 46px rgba(184, 35, 35, .16) !important
}

#page-resource .resourceActionSpacer.dk-download-spacer-visible {
    display: block !important;
    height: var(--dk-download-float-height, 0px) !important
}

@media (max-width:980px) {

    #page-resource .resourceActionCard,
    #page-resource .resourceActionCard.dk-download-free-floating {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: auto !important;
        z-index: auto !important;
        margin: 0 !important;
        transform: none !important
    }

    #page-resource .resourceActionSpacer,
    #page-resource .resourceActionSpacer.dk-download-spacer-visible {
        display: none !important;
        height: 0 !important
    }
}

footer.dkFooterRef {
    margin-top: 24px !important;
    padding: 0 0 16px !important;
    background: #fffdfa !important;
    overflow: visible !important
}

footer.dkFooterRef .dkFooterRefCard {
    width: 1320px !important;
    max-width: calc(100vw - 48px) !important;
    height: auto !important;
    min-height: 182px !important;
    margin: 0 auto !important;
    padding: 24px 28px 22px !important;
    display: grid !important;
    grid-template-columns: 360px 150px 180px 180px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 0 !important;
    overflow: visible !important;
    border: 1px solid #f0dfd8 !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .98) !important
}

footer.dkFooterRef .dkFooterRefBrand,
footer.dkFooterRef .dkFooterRefCol,
footer.dkFooterRef .dkFooterRefContact {
    min-width: 0 !important;
    overflow: visible !important
}

footer.dkFooterRef .dkFooterRefCol,
footer.dkFooterRef .dkFooterRefContact {
    height: auto !important;
    min-height: 136px !important;
    border-left: 1px solid #f0dfd8 !important;
    padding-left: 28px !important;
    padding-bottom: 2px !important
}

footer.dkFooterRef .dkFooterRefCol h3,
footer.dkFooterRef .dkFooterRefContact h3 {
    margin: 0 0 10px !important;
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 900 !important;
    color: #d00000 !important;
    white-space: nowrap !important
}

footer.dkFooterRef .dkFooterRefCol a {
    display: block !important;
    height: 20px !important;
    line-height: 20px !important;
    margin: 0 !important;
    color: #5e5551 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

footer.dkFooterRef .dkFooterRefCol a+a {
    margin-top: 2px !important
}

footer.dkFooterRef .dkFooterRefLogoText strong {
    max-width: 286px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important
}

footer.dkFooterRef .dkFooterRefLogoText em {
    max-width: 286px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important
}

footer.dkFooterRef .dkFooterRefQuick {
    width: 312px !important;
    margin-top: 18px !important;
    gap: 12px !important
}

footer.dkFooterRef .dkFooterRefQuick a {
    min-width: 0 !important;
    font-size: 12px !important
}

footer.dkFooterRef .dkFooterRefQuick em {
    display: block !important;
    max-width: 64px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-style: normal !important
}

footer.dkFooterRef .dkFooterRefContact {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 76px 104px !important;
    column-gap: 16px !important;
    align-items: start !important;
    padding-right: 0 !important
}

footer.dkFooterRef .dkFooterRefContactText {
    min-width: 0 !important;
    overflow: visible !important
}

footer.dkFooterRef .dkFooterRefContactText p {
    display: block !important;
    height: 22px !important;
    line-height: 22px !important;
    margin: 0 !important;
    color: #5b514d !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

footer.dkFooterRef .dkFooterRefQr {
    width: 76px !important;
    height: 76px !important;
    margin-top: 0 !important;
    flex: 0 0 76px !important
}

footer.dkFooterRef .dkFooterRefQrText {
    margin: 5px 0 0 !important;
    max-width: 104px !important;
    color: #5d534f !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    white-space: normal !important;
    overflow: visible !important
}

footer.dkFooterRef .dkFooterRefCopyright {
    width: 1320px !important;
    max-width: calc(100vw - 48px) !important;
    height: auto !important;
    min-height: 30px !important;
    margin: 8px auto 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
    color: #77706c !important;
    font-size: 12px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
    white-space: normal !important;
    text-align: center !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 1 !important
}

footer.dkFooterRef .dkFooterRefCopyright span {
    color: #d8c8bf !important
}

footer.dkFooterRef .dkFooterRefCopyright a {
    color: #77706c !important;
    font-weight: 700 !important;
    text-decoration: none !important
}

footer.dkFooterRef .dkFooterRefCopyright a:hover {
    color: #c40000 !important
}

@media (max-width:1360px) {
    footer.dkFooterRef .dkFooterRefCard {
        grid-template-columns: 330px 132px 164px 164px minmax(0, 1fr) !important;
        padding-left: 24px !important;
        padding-right: 24px !important
    }

    footer.dkFooterRef .dkFooterRefCol,
    footer.dkFooterRef .dkFooterRefContact {
        padding-left: 22px !important
    }

    footer.dkFooterRef .dkFooterRefContact {
        grid-template-columns: minmax(0, 1fr) 72px 96px !important;
        column-gap: 12px !important
    }

    footer.dkFooterRef .dkFooterRefQuick {
        width: 292px !important;
        gap: 10px !important
    }
}

@media (max-width:980px) {
    footer.dkFooterRef .dkFooterRefCard {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
        grid-template-columns: 1fr 1fr !important;
        row-gap: 22px !important
    }

    footer.dkFooterRef .dkFooterRefCol,
    footer.dkFooterRef .dkFooterRefContact {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important
    }

    footer.dkFooterRef .dkFooterRefContact {
        grid-template-columns: 1fr 76px 104px !important
    }
}

@media (max-width:560px) {
    footer.dkFooterRef .dkFooterRefCard {
        max-width: calc(100vw - 28px) !important;
        grid-template-columns: 1fr !important;
        padding: 22px 18px !important
    }

    footer.dkFooterRef .dkFooterRefCol,
    footer.dkFooterRef .dkFooterRefContact {
        border-left: 0 !important;
        border-top: 1px solid #f0dfd8 !important;
        padding-left: 0 !important;
        padding-top: 16px !important
    }

    footer.dkFooterRef .dkFooterRefContact {
        grid-template-columns: 1fr !important
    }

    footer.dkFooterRef .dkFooterRefCopyright {
        max-width: calc(100vw - 28px) !important
    }
}

#page-specials {
    padding: 12px 0 28px !important;
    background: transparent !important
}

#page-specials .specialLibraryPage {
    display: grid;
    gap: 14px;
    color: #222222
}

#page-specials .specialLibraryHeroV3,
#page-specials .specialPanel,
#page-specials .specialStatsStrip {
    border: 1px solid #f0ded8;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(168, 62, 45, .045)
}

#page-specials .specialLibraryHeroV3 {
    position: relative;
    overflow: hidden;
    min-height: 206px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 430px;
    gap: 22px;
    align-items: center;
    padding: 26px 34px 24px;
    background: linear-gradient(105deg, #fff 0%, #fff8f6 58%, #fff0ec 100%)
}

#page-specials .specialLibraryHeroV3:before {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -70px;
    width: 420px;
    height: 180px;
    border-radius: 60% 40% 0 0;
    background: linear-gradient(135deg, rgba(218, 28, 28, .15), rgba(255, 112, 72, .10));
    transform: rotate(-8deg)
}

#page-specials .specialHeroCopy {
    position: relative;
    z-index: 2;
    min-width: 0
}

#page-specials .specialHeroTitle {
    margin: 0 0 10px;
    font-size: 34px;
    line-height: 1.12;
    font-weight: 1000;
    letter-spacing: -.5px;
    color: #111827
}

#page-specials .specialHeroTitle span {
    color: #d90000
}

#page-specials .specialHeroDesc {
    margin: 0;
    max-width: 760px;
    color: #3f3f46;
    font-size: 14px;
    line-height: 1.78;
    font-weight: 500
}

#page-specials .specialHeroSearch {
    width: 620px;
    max-width: 100%;
    height: 42px;
    display: flex;
    align-items: center;
    margin-top: 16px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #efd8d2;
    background: #fff
}

#page-specials .specialHeroSearch input {
    flex: 1;
    height: 100%;
    border: 0;
    outline: 0;
    padding: 0 16px;
    font-size: 13px;
    color: #333;
    background: #fff
}

#page-specials .specialHeroSearch button {
    width: 88px;
    height: 100%;
    border: 0;
    cursor: pointer;
    background: #d90000;
    color: #fff;
    font-size: 14px;
    font-weight: 900
}

#page-specials .specialHotWords {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    margin-top: 12px;
    color: #333;
    font-size: 12px
}

#page-specials .specialHotWords b {
    color: #E60012;
    font-weight: 900
}

#page-specials .specialHotWords a {
    color: #333;
    font-weight: 700;
    white-space: nowrap
}

#page-specials .specialHotWords a:hover {
    color: #d90000
}

#page-specials .specialHeroArt {
    position: relative;
    z-index: 1;
    min-height: 150px;
    height: 100%
}

#page-specials .specialBookShape {
    position: absolute;
    right: 34px;
    top: 10px;
    width: 170px;
    height: 128px;
    border-radius: 26px 26px 10px 10px;
    background: linear-gradient(135deg, #f34732, #df1515);
    box-shadow: 0 18px 34px rgba(211, 20, 20, .18)
}

#page-specials .specialBookShape:before {
    content: "★";
    position: absolute;
    top: 28px;
    left: 58px;
    color: #ffd877;
    font-size: 42px;
    line-height: 1
}

#page-specials .specialFloatCard {
    position: absolute;
    bottom: 8px;
    width: 86px;
    height: 74px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid #f2d9d4;
    box-shadow: 0 12px 26px rgba(164, 50, 36, .10);
    color: #E60012
}

#page-specials .specialFloatCard span {
    font-size: 24px;
    line-height: 1
}

#page-specials .specialFloatCard b {
    font-size: 12px;
    color: #333;
    font-weight: 900
}

#page-specials .specialFloatCard1 {
    right: 222px
}

#page-specials .specialFloatCard2 {
    right: 124px;
    bottom: 18px
}

#page-specials .specialFloatCard3 {
    right: 26px
}

#page-specials .specialStatsStrip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 0;
    overflow: hidden
}

#page-specials .specialStatItem {
    min-height: 68px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 28px;
    border-right: 1px solid #f1e1dd;
    background: #fff
}

#page-specials .specialStatItem:last-child {
    border-right: 0
}

#page-specials .specialStatIcon {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: #fff4ef;
    font-size: 20px
}

#page-specials .specialStatItem b {
    display: block;
    color: #E60012;
    font-size: 20px;
    line-height: 1.1;
    font-weight: 1000
}

#page-specials .specialStatItem em {
    display: block;
    margin-top: 3px;
    color: #5f6368;
    font-size: 12px;
    font-style: normal;
    font-weight: 700
}

#page-specials .specialPanel {
    padding: 14px 16px
}

#page-specials .specialPanelHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px
}

#page-specials .specialPanelHead h2 {
    margin: 0;
    color: #111827;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 1000
}

#page-specials .specialPanelHead a {
    color: #a11a1a;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap
}

#page-specials .specialPanelHead.compact {
    margin-bottom: 12px
}

#page-specials .specialHotNav {
    display: grid;
    grid-template-columns: repeat(11, minmax(0, 1fr));
    gap: 8px
}

#page-specials .specialHotCard {
    min-height: 76px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 8px 6px;
    border-radius: 8px;
    border: 1px solid #f1e2de;
    background: #fff;
    text-align: center;
    transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease
}

#page-specials .specialHotCard:hover {
    transform: translateY(-2px);
    border-color: #f0bdb3;
    box-shadow: 0 8px 18px rgba(200, 48, 32, .08)
}

#page-specials .specialHotCard span {
    font-size: 24px;
    line-height: 1;
    color: #E60012
}

#page-specials .specialHotCard b {
    color: #222;
    font-size: 12px;
    line-height: 1.25;
    font-weight: 900;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-specials .specialHotCard em {
    font-style: normal;
    color: #777;
    font-size: 11px;
    line-height: 1
}

#page-specials .specialCategoryColumns {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    border: 1px solid #f1e2de;
    border-radius: 8px;
    overflow: hidden;
    background: #fff
}

#page-specials .specialCatCol {
    min-height: 210px;
    padding: 15px 20px 14px;
    border-right: 1px solid #f1e2de
}

#page-specials .specialCatCol:last-child {
    border-right: 0
}

#page-specials .specialCatCol h3 {
    margin: 0 0 10px;
    color: #222;
    font-size: 14px;
    font-weight: 1000
}

#page-specials .specialCatCol h3 span {
    color: #d90000
}

#page-specials .specialCatCol a {
    display: block;
    width: max-content;
    max-width: 100%;
    color: #222222;
    font-size: 12px;
    line-height: 1.75;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-specials .specialCatCol a:hover {
    color: #d90000
}

#page-specials .specialCatCol .specialCatMore {
    margin-top: 6px;
    color: #E60012;
    font-weight: 900
}

#page-specials .specialBrowseHead {
    align-items: flex-start
}

#page-specials .specialBrowseHead p {
    margin: 4px 0 0;
    color: #777;
    font-size: 12px;
    line-height: 1.6
}

#page-specials .specialBrowseControls {
    display: flex;
    gap: 8px;
    align-items: center;
    flex: 0 0 auto
}

#page-specials .specialBrowseControls span {
    display: inline-flex;
    align-items: center;
    height: 30px;
    padding: 0 12px;
    border-radius: 6px;
    border: 1px solid #f1e2de;
    color: #555;
    background: #fff;
    font-size: 12px;
    font-weight: 800
}

#page-specials .specialBrowseGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px
}

#page-specials .specialBrowseCard {
    min-height: 116px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 15px 16px;
    border: 1px solid #f1e2de;
    border-radius: 8px;
    background: #fff;
    transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease
}

#page-specials .specialBrowseCard:hover {
    transform: translateY(-2px);
    border-color: #f0bdb3;
    box-shadow: 0 8px 18px rgba(200, 48, 32, .08)
}

#page-specials .specialBrowseIcon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: #fff5f1;
    color: #E60012;
    font-size: 24px
}

#page-specials .specialBrowseText {
    min-width: 0;
    flex: 1
}

#page-specials .specialBrowseText h3 {
    margin: 0;
    color: #182033;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 1000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-specials .specialBrowseText p {
    margin: 5px 0 8px;
    min-height: 34px;
    color: #5f6673;
    font-size: 12px;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

#page-specials .specialBrowseTags {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    margin-bottom: 8px
}

#page-specials .specialBrowseTags em {
    display: inline-flex;
    align-items: center;
    height: 20px;
    padding: 0 7px;
    border-radius: 4px;
    background: #f5f8ff;
    color: #45608a;
    font-size: 11px;
    font-style: normal;
    font-weight: 800
}

#page-specials .specialBrowseMeta {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    color: #666666;
    font-size: 11px;
    line-height: 1.3;
    font-weight: 700
}

#page-specials .specialRecentGrid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px
}

#page-specials .specialRecentCard {
    min-height: 76px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    grid-template-areas: "badge title"
        "badge desc"
        "badge date";
    align-content: center;
    column-gap: 10px;
    padding: 12px 14px;
    border: 1px solid #f1e2de;
    border-radius: 8px;
    background: #fff;
    overflow: hidden
}

#page-specials .specialRecentCard span {
    grid-area: badge;
    align-self: start;
    justify-self: start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 22px;
    min-width: 38px;
    padding: 0 7px;
    border-radius: 5px;
    background: #f21b1b;
    color: #fff;
    font-size: 11px;
    line-height: 1;
    font-weight: 1000
}

#page-specials .specialRecentCard b {
    grid-area: title;
    display: block;
    min-width: 0;
    color: #222;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 1000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-specials .specialRecentCard em,
#page-specials .specialRecentCard small {
    display: block;
    min-width: 0;
    margin-top: 3px;
    color: #666;
    font-size: 11px;
    line-height: 1.35;
    font-style: normal;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-specials .specialRecentCard em {
    grid-area: desc
}

#page-specials .specialRecentCard small {
    grid-area: date
}

#page-specials .specialBottomGrid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    gap: 14px
}

#page-specials .specialIntroPanel h2,
#page-specials .specialFaqPanel h2 {
    margin: 0 0 12px;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 1000;
    color: #111827
}

#page-specials .specialIntroPanel p {
    margin: 0 0 10px;
    color: #333;
    font-size: 13px;
    line-height: 1.85
}

#page-specials .specialIntroPanel p:last-child {
    margin-bottom: 0
}

#page-specials .specialFaqList {
    display: grid;
    gap: 7px
}

#page-specials .specialFaqList details {
    border-bottom: 1px solid #f1e2de;
    padding: 0
}

#page-specials .specialFaqList details:last-child {
    border-bottom: 0
}

#page-specials .specialFaqList summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    min-height: 28px;
    color: #222;
    font-size: 13px;
    font-weight: 900
}

#page-specials .specialFaqList summary::-webkit-details-marker {
    display: none
}

#page-specials .specialFaqList summary:after {
    content: '⌄';
    color: #555;
    font-size: 13px
}

#page-specials .specialFaqList details[open] summary:after {
    transform: rotate(180deg)
}

#page-specials .specialFaqList p {
    margin: 2px 0 8px;
    color: #666;
    font-size: 12px;
    line-height: 1.65
}

#page-specials .pager {
    margin: 12px 0 0 !important
}

@media (max-width:1320px) {
    #page-specials .specialHotNav {
        grid-template-columns: repeat(6, minmax(0, 1fr))
    }

    #page-specials .specialCategoryColumns {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    #page-specials .specialCatCol:nth-child(3n) {
        border-right: 0
    }

    #page-specials .specialCatCol:nth-child(n+4) {
        border-top: 1px solid #f1e2de
    }

    #page-specials .specialBrowseGrid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

@media (max-width:1020px) {
    #page-specials .specialLibraryHeroV3 {
        grid-template-columns: 1fr
    }

    #page-specials .specialHeroArt {
        display: none
    }

    #page-specials .specialStatsStrip {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-specials .specialStatItem:nth-child(2) {
        border-right: 0
    }

    #page-specials .specialStatItem:nth-child(n+3) {
        border-top: 1px solid #f1e2de
    }

    #page-specials .specialBrowseGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-specials .specialRecentGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-specials .specialBottomGrid {
        grid-template-columns: 1fr
    }
}

@media (max-width:680px) {
    #page-specials .specialLibraryHeroV3 {
        padding: 22px 18px
    }

    #page-specials .specialHeroTitle {
        font-size: 28px
    }

    #page-specials .specialHeroSearch {
        height: auto;
        display: grid;
        border-radius: 8px;
        overflow: hidden
    }

    #page-specials .specialHeroSearch input {
        height: 42px
    }

    #page-specials .specialHeroSearch button {
        width: 100%;
        height: 40px
    }

    #page-specials .specialHotNav {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-specials .specialCategoryColumns {
        grid-template-columns: 1fr
    }

    #page-specials .specialCatCol {
        border-right: 0 !important;
        border-top: 1px solid #f1e2de
    }

    #page-specials .specialCatCol:first-child {
        border-top: 0
    }

    #page-specials .specialBrowseGrid,
    #page-specials .specialRecentGrid,
    #page-specials .specialStatsStrip {
        grid-template-columns: 1fr
    }

    #page-specials .specialStatItem {
        border-right: 0 !important;
        border-top: 1px solid #f1e2de
    }

    #page-specials .specialStatItem:first-child {
        border-top: 0
    }
}

#page-special .topicBottomGrid {
    display: grid;
    grid-template-columns: 360px minmax(0, 1fr);
    gap: 22px;
    margin-top: 24px;
    align-items: stretch
}

#page-special .topicMemberCard {
    position: relative;
    overflow: hidden;
    min-height: 330px;
    border: 1px solid #f3c77c;
    border-radius: 20px;
    padding: 30px 28px 28px;
    background: radial-gradient(220px 160px at 78% 3%, rgba(255, 212, 132, .45), transparent 64%), radial-gradient(210px 160px at 0% 100%, rgba(255, 238, 204, .72), transparent 64%), linear-gradient(140deg, #fff8eb 0%, #fffdf8 52%, #fff4dc 100%);
    box-shadow: 0 18px 42px rgba(174, 91, 12, .12)
}

#page-special .topicMemberCard:before {
    content: "";
    position: absolute;
    left: -20px;
    right: -22px;
    bottom: -34px;
    height: 98px;
    background: linear-gradient(135deg, rgba(225, 37, 34, .16), rgba(255, 176, 60, .36));
    border-radius: 55% 45% 0 0 / 76% 80% 0 0;
    transform: rotate(-3deg);
    pointer-events: none
}

#page-special .topicMemberCard:after {
    content: "";
    position: absolute;
    right: 18px;
    bottom: 22px;
    width: 116px;
    height: 58px;
    opacity: .22;
    background: linear-gradient(180deg, transparent 0 58%, #d99745 59% 63%, transparent 64%), linear-gradient(90deg, transparent 0 20%, #d99745 21% 24%, transparent 25% 45%, #d99745 46% 49%, transparent 50% 70%, #d99745 71% 74%, transparent 75%);
    clip-path: polygon(0 100%, 14% 72%, 30% 82%, 48% 52%, 66% 82%, 82% 68%, 100% 100%);
    pointer-events: none
}

#page-special .topicMemberCard>* {
    position: relative;
    z-index: 1
}

#page-special .topicMemberIcon {
    width: 62px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: #ee9b08;
    font-size: 38px;
    line-height: 1;
    text-shadow: 0 10px 22px rgba(225, 139, 0, .22);
    margin-bottom: 16px
}

#page-special .topicMemberCard h3 {
    margin: 0 0 26px;
    color: #9b1616;
    font-size: 21px;
    line-height: 1.5;
    font-weight: 1000;
    letter-spacing: .1px
}

#page-special .topicMemberCard ul {
    margin: 0 0 28px;
    padding: 0;
    list-style: none;
    color: #5f5044;
    font-size: 16px;
    line-height: 1.95;
    font-weight: 850
}

#page-special .topicMemberCard li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 8px
}

#page-special .topicMemberCard li:before {
    content: "✓";
    width: 20px;
    height: 20px;
    margin: 0;
    flex: 0 0 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #e99408;
    color: #fff;
    font-size: 13px;
    font-weight: 1000;
    box-shadow: 0 6px 12px rgba(233, 148, 8, .18)
}

#page-special .topicMemberBtn {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 58px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(180deg, #ed1c24 0%, #d20c12 100%);
    color: #fff;
    cursor: pointer;
    font-size: 20px;
    font-weight: 1000;
    letter-spacing: .2px;
    box-shadow: 0 18px 34px rgba(210, 12, 18, .26)
}

#page-special .topicMemberBtn:hover {
    filter: brightness(1.03);
    transform: translateY(-1px)
}

#page-special .topicInternalPanel {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important
}

#page-special .topicInternalPanel .panelBd {
    height: 100%;
    padding: 0 !important
}

#page-special .topicInternalPreview {
    height: 100%;
    min-height: 330px;
    padding: 30px 32px 28px;
    border: 1px solid #eee1d7;
    border-radius: 20px;
    background: linear-gradient(180deg, #fff 0%, #fffdfb 100%);
    box-shadow: 0 18px 42px rgba(34, 24, 18, .08)
}

#page-special .topicLinkHubHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 0 0 22px
}

#page-special .topicLinkHubHead h3 {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0;
    color: #7f1717;
    font-size: 27px;
    line-height: 1.15;
    font-weight: 1000;
    letter-spacing: .2px
}

#page-special .topicLinkHubHead h3:before {
    content: "★";
    width: 34px;
    height: 46px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 7px;
    border-radius: 5px 5px 2px 2px;
    background: linear-gradient(180deg, #e93a29 0%, #b81214 100%);
    color: #ffd88a;
    font-size: 14px;
    box-shadow: 0 10px 18px rgba(184, 18, 20, .18);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 82%, 0 100%)
}

#page-special .topicLinkHubHead span {
    color: #8a817a;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 900;
    white-space: nowrap
}

#page-special .topicLinkGroup {
    display: grid;
    grid-template-columns: 116px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    min-height: 70px;
    padding: 10px 0
}

#page-special .topicLinkGroup+.topicLinkGroup {
    margin-top: 0;
    padding-top: 18px;
    border-top: 1px dashed #eadfd6
}

#page-special .topicLinkGroupLabel {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 44px;
    color: #c51616;
    font-size: 19px;
    font-weight: 1000;
    white-space: nowrap;
    letter-spacing: .2px
}

#page-special .topicLinkGroupLabel:before {
    display: none !important
}

#page-special .topicLinkGroupLabel:after {
    content: "";
    width: 1px;
    height: 24px;
    margin-left: auto;
    background: #e4d9d0;
    flex: 0 0 1px
}

#page-special .topicTagList {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    min-width: 0
}

#page-special .topicInternalTag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 16px;
    border: 1px solid #e8ddd5;
    background: #fff;
    color: #554941;
    font-size: 16px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
    box-shadow: 0 5px 12px rgba(34, 24, 18, .035);
    transition: .14s transform, .14s border-color, .14s background, .14s color, .14s box-shadow
}

#page-special .topicInternalTag:hover {
    transform: translateY(-1px);
    border-color: #e8b6ae;
    background: #fff8f7;
    color: #d71920;
    box-shadow: 0 9px 18px rgba(215, 25, 32, .08)
}

#page-special .topicInternalTag.is-upper {
    color: #5d5149;
    border-color: #e5dad1;
    background: #fffdfb
}

#page-special .topicInternalTag.is-related {
    color: #c51616;
    border-color: #f0cfc9;
    background: #fff8f7
}

#page-special .topicInternalTag.is-type {
    color: #604d3f;
    border-color: #e7d9ce;
    background: #fffdf9
}

#page-special .topicInternalTagCount {
    margin-left: 12px;
    padding-left: 0;
    border-left: 0;
    color: #77706a;
    font-size: 15px;
    font-weight: 800
}

#page-special .topicInternalEmpty {
    color: #9a928d;
    font-size: 14px;
    font-weight: 850;
    line-height: 40px
}

@media (max-width:1120px) {
    #page-special .topicBottomGrid {
        grid-template-columns: 1fr;
        gap: 16px
    }

    #page-special .topicMemberCard,
    #page-special .topicInternalPreview {
        min-height: auto
    }
}

@media (max-width:760px) {
    #page-special .topicMemberCard {
        padding: 24px 22px
    }

    #page-special .topicInternalPreview {
        padding: 24px 22px
    }

    #page-special .topicLinkHubHead {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px
    }

    #page-special .topicLinkHubHead h3 {
        font-size: 23px
    }

    #page-special .topicLinkGroup {
        grid-template-columns: 1fr;
        gap: 10px;
        min-height: auto;
        padding: 14px 0
    }

    #page-special .topicLinkGroupLabel:after {
        display: none
    }

    #page-special .topicInternalTag {
        font-size: 14px;
        min-height: 36px;
        padding: 0 14px;
        border-radius: 13px
    }
}

#page-special .topicBottomGrid {
    grid-template-columns: 320px minmax(0, 1fr) !important;
    gap: 18px !important;
    margin-top: 18px !important;
    align-items: stretch !important
}

#page-special .topicMemberCard {
    min-height: 260px !important;
    padding: 22px 24px 20px !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 28px rgba(174, 91, 12, .10) !important
}

#page-special .topicMemberCard:before {
    height: 76px !important;
    bottom: -28px !important
}

#page-special .topicMemberCard:after {
    width: 94px !important;
    height: 48px !important;
    right: 14px !important;
    bottom: 18px !important
}

#page-special .topicMemberIcon {
    width: 42px !important;
    height: 34px !important;
    font-size: 28px !important;
    margin-bottom: 12px !important
}

#page-special .topicMemberCard h3 {
    margin: 0 0 18px !important;
    font-size: 18px !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important
}

#page-special .topicMemberCard ul {
    margin: 0 0 22px !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
    font-weight: 800 !important
}

#page-special .topicMemberCard li {
    gap: 10px !important;
    margin: 0 0 6px !important
}

#page-special .topicMemberCard li:before {
    width: 18px !important;
    height: 18px !important;
    flex-basis: 18px !important;
    font-size: 12px !important
}

#page-special .topicMemberBtn {
    height: 48px !important;
    font-size: 16px !important;
    box-shadow: 0 12px 24px rgba(210, 12, 18, .22) !important
}

#page-special .topicInternalPreview {
    min-height: 260px !important;
    padding: 22px 28px 20px !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 28px rgba(34, 24, 18, .065) !important
}

#page-special .topicLinkHubHead {
    margin: 0 0 16px !important;
    gap: 14px !important
}

#page-special .topicLinkHubHead h3 {
    gap: 12px !important;
    font-size: 22px !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important
}

#page-special .topicLinkHubHead h3:before {
    width: 28px !important;
    height: 38px !important;
    flex-basis: 28px !important;
    padding-bottom: 6px !important;
    font-size: 12px !important
}

#page-special .topicLinkHubHead span {
    font-size: 14px !important;
    font-weight: 850 !important
}

#page-special .topicLinkGroup {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 14px !important;
    min-height: 52px !important;
    padding: 8px 0 !important
}

#page-special .topicLinkGroup+.topicLinkGroup {
    padding-top: 14px !important
}

#page-special .topicLinkGroupLabel {
    min-height: 36px !important;
    font-size: 16px !important;
    letter-spacing: 0 !important
}

#page-special .topicLinkGroupLabel:after {
    height: 20px !important
}

#page-special .topicTagList {
    gap: 9px !important
}

#page-special .topicInternalTag {
    min-height: 34px !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    box-shadow: 0 4px 10px rgba(34, 24, 18, .025) !important
}

#page-special .topicInternalTagCount {
    margin-left: 8px !important;
    font-size: 13px !important;
    font-weight: 800 !important
}

#page-special .topicInternalEmpty {
    font-size: 13px !important;
    line-height: 34px !important
}

@media (max-width:1120px) {
    #page-special .topicBottomGrid {
        grid-template-columns: 1fr !important;
        gap: 14px !important
    }

    #page-special .topicMemberCard,
    #page-special .topicInternalPreview {
        min-height: auto !important
    }
}

@media (max-width:760px) {
    #page-special .topicBottomGrid {
        margin-top: 16px !important
    }

    #page-special .topicMemberCard {
        padding: 20px 18px !important
    }

    #page-special .topicInternalPreview {
        padding: 20px 18px !important
    }

    #page-special .topicLinkHubHead {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 8px !important
    }

    #page-special .topicLinkHubHead h3 {
        font-size: 20px !important
    }

    #page-special .topicLinkGroup {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        min-height: auto !important;
        padding: 12px 0 !important
    }

    #page-special .topicLinkGroupLabel:after {
        display: none !important
    }

    #page-special .topicInternalTag {
        font-size: 13px !important;
        min-height: 32px !important;
        padding: 0 12px !important;
        border-radius: 12px !important
    }
}

#page-resource,
#page-resource * {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-resource .resourceTitleBox h1,
#page-resource #resTitle {
    font-size: 28px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important;
    letter-spacing: -.2px !important
}

#page-resource .resourcePreviewIntro h3,
#page-resource .resourceArticleBlock h2,
#page-resource .resourceActionCard h3,
#page-resource .resourceFactsHead,
#page-resource .resourceNoticeHead h4,
#page-resource .resourceInnerLinkPanel h2,
#page-resource .resourceRelatedHead h2,
#page-resource .resourceTopicNavHead h3,
#page-resource .resourceLinkModuleHead h3 {
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 900 !important
}

#page-resource .resourceArticleBlock h3,
#page-resource .resourceAssistText b,
#page-resource .resourceGuessTitle,
#page-resource .resourceTextLink,
#page-resource .resourceTopicNavLabel,
#page-resource .resourceRelatedItem b {
    font-size: 16px !important;
    line-height: 1.55 !important;
    font-weight: 800 !important
}

#page-resource .resourceArticleBlock p,
#page-resource .resourceArticleBlock li,
#page-resource .resourcePreviewIntro p,
#page-resource .resourceInnerLinkPanel p,
#page-resource .resourceRelatedHead span,
#page-resource .resourceNoticeBody p,
#page-resource .resourceAssistText em,
#page-resource .resourceInfoItem,
#page-resource .resourceFactRow,
#page-resource .resourceFactRow span,
#page-resource .resourceFactRow strong,
#page-resource .resourceFactLink,
#page-resource .resourceMetaPill,
#page-resource .resourceFaqRow summary span,
#page-resource .resourceFaqAnswer,
#page-resource .resourceTopicTag,
#page-resource .resourceTextLink small {
    font-size: 14px !important;
    line-height: 1.75 !important
}

#page-resource .resourceRelatedItem span {
    display: none !important
}

#page-resource .resourceRelatedGrid {
    row-gap: 18px !important;
    column-gap: 64px !important
}

#page-resource .resourceRelatedItem {
    padding-left: 22px !important;
    min-height: 26px !important
}

#page-resource .resourceRelatedItem b {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    color: #111827 !important
}

#page-resource .resourceRelatedItem:before {
    top: 1px !important;
    font-size: 21px !important;
    line-height: 1.2 !important
}

@media (max-width:760px) {

    #page-resource .resourceTitleBox h1,
    #page-resource #resTitle {
        font-size: 24px !important
    }

    #page-resource .resourcePreviewIntro h3,
    #page-resource .resourceArticleBlock h2,
    #page-resource .resourceActionCard h3,
    #page-resource .resourceFactsHead,
    #page-resource .resourceNoticeHead h4,
    #page-resource .resourceInnerLinkPanel h2,
    #page-resource .resourceRelatedHead h2,
    #page-resource .resourceTopicNavHead h3,
    #page-resource .resourceLinkModuleHead h3 {
        font-size: 17px !important
    }

    #page-resource .resourceArticleBlock h3,
    #page-resource .resourceAssistText b,
    #page-resource .resourceGuessTitle,
    #page-resource .resourceTextLink,
    #page-resource .resourceTopicNavLabel,
    #page-resource .resourceRelatedItem b {
        font-size: 15px !important
    }
}

#page-resource .resourceFactTopics {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 4px 8px !important;
    min-width: 0 !important
}

#page-resource .resourceFactTopicLink {
    display: inline-flex !important;
    align-items: center !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    font-weight: 700 !important;
    color: #111827 !important
}

#page-resource .resourceFactTopicLink:not(:last-child)::after {
    content: "、";
    color: #666666;
    font-weight: 500
}

@media (max-width:760px) {
    #page-resource .resourceFactTopicLink {
        white-space: normal !important
    }
}

footer.dkFooterRef .dkFooterRefContactText p.dkFooterRefServiceTime {
    height: auto !important;
    min-height: 38px !important;
    line-height: 1.45 !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 4px !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    margin-top: 0 !important
}

footer.dkFooterRef .dkFooterRefContactText p.dkFooterRefServiceTime b {
    flex: 0 0 auto !important;
    line-height: 20px !important
}

footer.dkFooterRef .dkFooterRefContactText p.dkFooterRefServiceTime span {
    display: block !important;
    min-width: 0 !important;
    line-height: 20px !important;
    white-space: normal !important
}

footer.dkFooterRef .dkFooterRefContactText p.dkFooterRefServiceTime+* {
    margin-top: 0 !important
}

@media (max-width:1360px) {
    footer.dkFooterRef .dkFooterRefContactText p.dkFooterRefServiceTime {
        min-height: 40px !important
    }
}

.dkHeaderSearch .dkSearchIcon {
    display: none !important
}

.dkHeaderSearch .searchBtn span:first-child,
.dkHeaderSearch .searchBtn span[aria-hidden="true"] {
    display: none !important;
    font-size: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important
}

.dkHeaderSearch .searchBtn:before {
    content: "🔍" !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    line-height: 1 !important
}

#page-account {
    padding: 0 0 22px !important
}

#page-account .accountCenterShell {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    gap: 20px
}

#page-account .accountTopGrid {
    display: grid;
    grid-template-columns: minmax(0, 1.72fr) minmax(360px, .96fr);
    gap: 20px;
    align-items: stretch
}

#page-account .accountMainGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 20px;
    align-items: start
}

#page-account .accountCard {
    background: #fff;
    border: 1px solid #efd9d2;
    border-radius: 18px;
    box-shadow: 0 14px 38px rgba(168, 0, 0, .06);
    overflow: hidden
}

#page-account .accountOverview,
#page-account .accountQuick,
#page-account .accountResourcePanel,
#page-account .accountHelpCard {
    padding: 24px 28px
}

#page-account .accountCardTitle,
#page-account .accountResourceHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px
}

#page-account .accountCardTitle {
    justify-content: flex-start
}

#page-account .accountCard h2,
#page-account .accountResourceHead h2 {
    margin: 0;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 900;
    color: #071527;
    letter-spacing: -.2px
}

#page-account .accountTitleIcon {
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: #E60012;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    flex: 0 0 auto
}

#page-account .accountStateChip {
    margin-left: auto;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    color: #7b8794;
    font-weight: 800
}

#page-account .accountOverviewBody {
    margin-top: 24px;
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 30px;
    align-items: center
}

#page-account .accountUserBox {
    display: flex;
    align-items: center;
    gap: 18px
}

#page-account .accountAvatar {
    width: 74px;
    height: 74px;
    border-radius: 50%;
    background: radial-gradient(circle at 50% 36%, #ffaaa4 0 18%, transparent 19%), radial-gradient(circle at 50% 84%, #ff8f88 0 32%, transparent 33%), linear-gradient(180deg, #ffe9e8, #ffd7d4);
    box-shadow: inset 0 0 0 10px rgba(255, 255, 255, .45);
    flex: 0 0 auto
}

#page-account .accountUserText {
    display: grid;
    gap: 5px
}

#page-account .accountUserText span,
#page-account .accountStat span {
    font-size: 13px;
    color: #7b8794;
    font-weight: 700
}

#page-account .accountUserText strong {
    font-size: 19px;
    line-height: 1.2;
    color: #071527;
    font-weight: 900
}

#page-account .accountUserText em {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0 10px;
    border-radius: 6px;
    background: #fff1ed;
    color: #d71920;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    border: 1px solid #ffd8cd
}

#page-account .accountStats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    border-left: 1px solid #eadbd6
}

#page-account .accountStat {
    min-height: 62px;
    display: grid;
    place-items: center;
    text-align: center;
    gap: 8px;
    padding: 0 20px;
    border-right: 1px solid #eadbd6
}

#page-account .accountStat:last-child {
    border-right: none
}

#page-account .accountStat strong {
    color: #071527;
    font-size: 28px;
    line-height: 1;
    font-weight: 950
}

#page-account .accountStatusHidden {
    display: none !important
}

#page-account .accountActionRow {
    margin-top: 26px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 24px
}

#page-account .accountPrimaryBtn,
#page-account .accountOutlineBtn,
#page-account .accountServiceBtn {
    height: 50px;
    border-radius: 8px;
    border: 1px solid #eadbd6;
    cursor: pointer;
    font-size: 16px;
    font-weight: 900;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    transition: .16s transform, .16s box-shadow, .16s border-color
}

#page-account .accountPrimaryBtn {
    background: linear-gradient(180deg, #E60012, #c90000);
    color: #fff;
    border-color: #d9000d;
    box-shadow: 0 12px 24px rgba(215, 0, 14, .12)
}

#page-account .accountOutlineBtn {
    background: #fff;
    color: #071527
}

#page-account .accountPrimaryBtn:hover,
#page-account .accountOutlineBtn:hover,
#page-account .accountServiceBtn:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(168, 0, 0, .10)
}

#page-account .accountQuick h2,
#page-account .accountHelpCard h2 {
    margin: 0 0 20px
}

#page-account .accountQuickGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px
}

#page-account .accountQuickGrid button {
    height: 88px;
    border: 1px solid #eadbd6;
    border-radius: 10px;
    background: linear-gradient(180deg, #fff, #fffafa);
    cursor: pointer;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 8px;
    color: #071527;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-account .accountQuickGrid span {
    color: #df1919;
    font-size: 32px;
    line-height: 1;
    font-weight: 900
}

#page-account .accountQuickGrid em {
    font-size: 15px;
    line-height: 1;
    font-style: normal;
    font-weight: 900
}

#page-account .accountServiceBtn {
    margin-top: 16px;
    width: 100%;
    height: 52px;
    background: #fff;
    color: #071527
}

#page-account .accountResourcePanel {
    min-height: 288px
}

#page-account .accountTabs {
    display: flex;
    align-items: center;
    gap: 34px;
    flex-wrap: wrap;
    border-bottom: 1px solid #e9ded9;
    padding: 0 0 0 0
}

#page-account .accountTabs .tabBtn {
    position: relative;
    border: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    color: #4b5563;
    padding: 0 0 18px !important;
    font-size: 16px;
    line-height: 1;
    font-weight: 800;
    box-shadow: none !important
}

#page-account .accountTabs .tabBtn.active {
    color: #d9000d !important
}

#page-account .accountTabs .tabBtn.active:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 3px;
    border-radius: 999px;
    background: #E60012
}

#page-account .accountTabPanels {
    padding: 26px 0 0
}

#page-account .accountList {
    min-height: 145px
}

#page-account .accountEmpty {
    min-height: 145px;
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    align-items: center;
    justify-content: center;
    column-gap: 36px;
    max-width: 760px;
    margin: 0 auto
}

#page-account .accountEmptyIcon {
    width: 150px;
    height: 112px;
    justify-self: end;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .55), rgba(255, 255, 255, 0)), radial-gradient(circle at 34% 20%, rgba(236, 0, 18, .16) 0 8px, transparent 9px), radial-gradient(circle at 80% 34%, rgba(236, 0, 18, .12) 0 11px, transparent 12px), linear-gradient(180deg, #fff1f0, #ffd9d4);
    position: relative;
    box-shadow: 0 18px 34px rgba(215, 0, 14, .08)
}

#page-account .accountEmptyIcon:before {
    content: "";
    position: absolute;
    left: 35px;
    top: 22px;
    width: 62px;
    height: 76px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 0 0 1px #ffd3cd inset
}

#page-account .accountEmptyIcon:after {
    content: "";
    position: absolute;
    left: 55px;
    bottom: 16px;
    width: 88px;
    height: 45px;
    border-radius: 14px 14px 18px 18px;
    background: linear-gradient(180deg, #ffb7b0, #ff8d84);
    box-shadow: 0 8px 18px rgba(215, 0, 14, .10)
}

#page-account .accountEmptyText {
    font-size: 15px;
    color: #536070;
    line-height: 1.8
}

#page-account .accountEmptyBtn {
    margin-top: 14px;
    min-width: 130px;
    height: 38px;
    padding: 0 20px;
    border: 1px solid #E60012;
    border-radius: 6px;
    background: #fff;
    color: #E60012;
    font-size: 15px;
    font-weight: 900;
    cursor: pointer;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-account .accountList .listItem {
    border-radius: 12px;
    background: #fffafa;
    border-color: #eadbd6;
    padding: 14px 16px
}

#page-account .accountList .listTitle {
    font-size: 16px;
    line-height: 1.45;
    font-weight: 900
}

#page-account .accountList .listMeta {
    font-size: 13px;
    line-height: 1.65
}

#page-account .accountHelpCard {
    min-height: 260px
}

#page-account .accountHelpCard h2 {
    font-size: 21px
}

#page-account .accountHelpCard p {
    margin: 0 0 16px;
    font-size: 16px;
    line-height: 1.75;
    color: #071527;
    font-weight: 700
}

#page-account .accountQrMock {
    width: 92px;
    height: 92px;
    border-radius: 8px;
    background: linear-gradient(90deg, #111 10px, transparent 10px 18px, #111 18px 28px, transparent 28px 36px, #111 36px 44px, transparent 44px 52px, #111 52px 62px, transparent 62px), linear-gradient(#111 10px, transparent 10px 18px, #111 18px 28px, transparent 28px 36px, #111 36px 44px, transparent 44px 52px, #111 52px 62px, transparent 62px), #111;
    background-size: 28px 28px, 28px 28px, 100% 100%;
    position: relative;
    margin: 6px 0 18px;
    overflow: hidden
}

#page-account .accountQrMock:before,
#page-account .accountQrMock:after {
    content: "";
    position: absolute;
    width: 26px;
    height: 26px;
    background: #fff;
    border: 8px solid #fff;
    box-shadow: inset 0 0 0 10px #111
}

#page-account .accountQrMock:before {
    left: 8px;
    top: 8px
}

#page-account .accountQrMock:after {
    right: 8px;
    top: 8px
}

#page-account .accountQrMock span {
    position: absolute;
    left: 35px;
    top: 35px;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: #E60012;
    border: 4px solid #fff
}

#page-account .accountWechatBtn {
    width: 100%;
    height: 48px;
    border-radius: 8px
}

#page-account .accountHelpTime {
    margin-top: 12px;
    text-align: center;
    color: #8a6f65;
    font-size: 13px;
    line-height: 1.5
}

@media (max-width:1200px) {

    #page-account .accountTopGrid,
    #page-account .accountMainGrid {
        grid-template-columns: 1fr
    }

    #page-account .accountOverviewBody {
        grid-template-columns: 1fr
    }

    #page-account .accountStats {
        border-left: none;
        border-top: 1px solid #eadbd6;
        padding-top: 18px
    }
}

@media (max-width:760px) {

    #page-account .accountOverview,
    #page-account .accountQuick,
    #page-account .accountResourcePanel,
    #page-account .accountHelpCard {
        padding: 18px
    }

    #page-account .accountQuickGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    #page-account .accountStats {
        grid-template-columns: 1fr
    }

    #page-account .accountStat {
        border-right: none;
        border-bottom: 1px solid #eadbd6
    }

    #page-account .accountStat:last-child {
        border-bottom: none
    }

    #page-account .accountActionRow {
        grid-template-columns: 1fr;
        gap: 12px
    }

    #page-account .accountEmpty {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 18px
    }

    #page-account .accountEmptyIcon {
        justify-self: center
    }
}

#page-search .mediaGrid.resourceGrid5,
#page-channel .mediaGrid.resourceGrid5 {
    display: grid !important;
    grid-template-columns: repeat(5, 240px) !important;
    gap: 20px !important;
    justify-content: space-between !important;
    align-items: start !important
}

#page-search #searchPager,
#page-channel #channelPager {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    margin: 24px 0 4px !important;
    padding: 0 !important
}

#page-search #searchPager:empty,
#page-channel #channelPager:empty {
    display: none !important
}

#page-search #searchPager .pageBtn,
#page-channel #channelPager .pageBtn {
    min-width: 38px !important;
    height: 36px !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    border: 1px solid #ead8d1 !important;
    background: #fff !important;
    color: #3a3a3a !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    box-shadow: 0 8px 20px rgba(120, 40, 0, .045) !important
}

#page-search #searchPager .pageBtn.active,
#page-channel #channelPager .pageBtn.active {
    background: #E60012 !important;
    border-color: #E60012 !important;
    color: #fff !important
}

#page-search #searchPager .pageBtn.nextPage,
#page-channel #channelPager .pageBtn.nextPage,
#page-search #searchPager .pageBtn.prevPage,
#page-channel #channelPager .pageBtn.prevPage {
    min-width: 76px !important
}

#page-search #searchPager .pageBtn.disabled,
#page-channel #channelPager .pageBtn.disabled {
    opacity: .45 !important;
    cursor: not-allowed !important;
    box-shadow: none !important
}

@media (max-width:1320px) {

    #page-search .mediaGrid.resourceGrid5,
    #page-channel .mediaGrid.resourceGrid5 {
        grid-template-columns: repeat(4, 240px) !important;
        justify-content: center !important
    }
}

@media (max-width:1060px) {

    #page-search .mediaGrid.resourceGrid5,
    #page-channel .mediaGrid.resourceGrid5 {
        grid-template-columns: repeat(3, 240px) !important
    }
}

@media (max-width:780px) {

    #page-search .mediaGrid.resourceGrid5,
    #page-channel .mediaGrid.resourceGrid5 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    #page-search .mediaCard.resourceCard,
    #page-channel .mediaCard.resourceCard,
    #page-search .resourceCard,
    #page-channel .resourceCard {
        width: 100% !important
    }
}

@media (max-width:520px) {

    #page-search .mediaGrid.resourceGrid5,
    #page-channel .mediaGrid.resourceGrid5 {
        grid-template-columns: 1fr !important
    }
}

#page-copyright {
    padding: 0 0 22px
}

#page-copyright .dkCopyrightPage {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 22px;
    align-items: start
}

#page-copyright .dkCopyrightArticle,
#page-copyright .dkCopyrightSideCard {
    background: #fff;
    border: 1px solid rgba(196, 30, 58, .14);
    border-radius: 18px;
    box-shadow: 0 14px 38px rgba(91, 24, 24, .06)
}

#page-copyright .dkCopyrightArticle {
    padding: 28px 30px 24px
}

#page-copyright .dkCopyrightArticle h1 {
    margin: 0;
    font-size: 28px;
    line-height: 1.25;
    font-weight: 1000;
    color: #071426;
    letter-spacing: .2px
}

#page-copyright .dkCopyrightLead {
    margin: 12px 0 16px;
    color: #5f6b7a;
    font-size: 14px;
    line-height: 1.9
}

#page-copyright .dkCopyrightAlert {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 12px;
    border: 1px solid rgba(224, 32, 32, .18);
    background: linear-gradient(90deg, rgba(224, 32, 32, .08), rgba(255, 244, 238, .75));
    color: #d90016;
    font-size: 14px;
    font-weight: 900
}

#page-copyright .dkCopyrightAlert::before {
    content: "!";
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #e02020;
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    flex: 0 0 auto
}

#page-copyright .dkCopyrightRuleList {
    margin-top: 18px;
    display: grid;
    gap: 0
}

#page-copyright .dkCopyrightRule {
    display: grid;
    grid-template-columns: 52px 170px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    padding: 18px 0;
    border-bottom: 1px dashed rgba(196, 30, 58, .14)
}

#page-copyright .dkCopyrightRule:last-child {
    border-bottom: none
}

#page-copyright .dkCopyrightRuleIcon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #e53935, #C40000);
    color: #fff;
    font-size: 22px;
    box-shadow: 0 10px 18px rgba(207, 23, 23, .16)
}

#page-copyright .dkCopyrightRule h2 {
    margin: 7px 0 0;
    font-size: 18px;
    line-height: 1.45;
    font-weight: 1000;
    color: #C40000
}

#page-copyright .dkCopyrightRule ul {
    margin: 0;
    padding-left: 18px;
    color: #586474;
    font-size: 13px;
    line-height: 1.9
}

#page-copyright .dkCopyrightFaqBox {
    margin-top: 20px;
    padding: 16px 18px;
    border: 1px solid rgba(196, 30, 58, .14);
    border-radius: 14px;
    background: linear-gradient(180deg, #fff, #fff9f5)
}

#page-copyright .dkCopyrightFaqBox h2 {
    margin: 0 0 12px;
    font-size: 16px;
    line-height: 1.4;
    color: #071426;
    font-weight: 1000
}

#page-copyright .dkCopyrightFaqGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px
}

#page-copyright .dkCopyrightFaqItem {
    min-height: 80px;
    padding: 12px 14px;
    border: 1px solid rgba(196, 30, 58, .12);
    border-radius: 12px;
    background: #fff
}

#page-copyright .dkCopyrightFaqItem strong {
    display: block;
    margin-bottom: 6px;
    color: #d90016;
    font-size: 13px;
    font-weight: 1000
}

#page-copyright .dkCopyrightFaqItem p {
    margin: 0;
    color: #5f6b7a;
    font-size: 12.5px;
    line-height: 1.65
}

#page-copyright .dkCopyrightSide {
    display: grid;
    gap: 16px
}

#page-copyright .dkCopyrightSideCard {
    padding: 22px 20px
}

#page-copyright .dkCopyrightSideCard h2 {
    margin: 0 0 16px;
    color: #071426;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 1000
}

#page-copyright .dkCopyrightEntryGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px
}

#page-copyright .dkCopyrightEntry {
    height: 82px;
    border: 1px solid rgba(196, 30, 58, .14);
    border-radius: 12px;
    background: linear-gradient(180deg, #fff, #fffaf8);
    display: grid;
    place-items: center;
    gap: 6px;
    color: #071426;
    font-size: 13px;
    font-weight: 1000;
    text-align: center
}

#page-copyright .dkCopyrightEntry span {
    color: #d90016;
    font-size: 26px;
    line-height: 1
}

#page-copyright .dkCopyrightComplaint {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 16px;
    align-items: center
}

#page-copyright .dkCopyrightQr {
    width: 96px;
    height: 96px;
    border-radius: 12px;
    background: linear-gradient(90deg, #111 12px, transparent 12px) 0 0/24px 24px, linear-gradient(#111 12px, transparent 12px) 0 0/24px 24px, #fff;
    position: relative;
    overflow: hidden;
    border: 6px solid #111
}

#page-copyright .dkCopyrightQr::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 30px;
    height: 30px;
    transform: translate(-50%, -50%);
    border-radius: 8px;
    background: #e02020;
    box-shadow: 0 0 0 8px #fff
}

#page-copyright .dkCopyrightContactText {
    color: #5f6b7a;
    font-size: 13px;
    line-height: 1.9;
    word-break: break-all
}

#page-copyright .dkCopyrightContactText b {
    color: #071426;
    font-weight: 900
}

#page-copyright .dkCopyrightRedBtn {
    margin-top: 14px;
    width: 100%;
    height: 42px;
    border: none;
    border-radius: 10px;
    background: linear-gradient(90deg, #d90016, #e84135);
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: 0 10px 22px rgba(217, 0, 22, .16)
}

#page-copyright .dkCopyrightTipList {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 12px;
    color: #596576;
    font-size: 13px;
    line-height: 1.8
}

#page-copyright .dkCopyrightTipList li {
    position: relative;
    padding-left: 18px
}

#page-copyright .dkCopyrightTipList li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .72em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d90016
}

@media (max-width:1100px) {
    #page-copyright .dkCopyrightPage {
        grid-template-columns: 1fr
    }

    #page-copyright .dkCopyrightRule {
        grid-template-columns: 48px 150px minmax(0, 1fr)
    }
}

@media (max-width:720px) {
    #page-copyright .dkCopyrightArticle {
        padding: 22px 18px
    }

    #page-copyright .dkCopyrightRule {
        grid-template-columns: 44px 1fr;
        gap: 12px
    }

    #page-copyright .dkCopyrightRule ul {
        grid-column: 1 / -1
    }

    #page-copyright .dkCopyrightFaqGrid {
        grid-template-columns: 1fr
    }

    #page-copyright .dkCopyrightEntryGrid {
        grid-template-columns: 1fr 1fr
    }
}

#page-download-rules,
#page-agreement,
#page-privacy,
#page-disclaimer {
    padding: 0 0 22px
}

.dkLegalPage {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 22px;
    align-items: start
}

.dkLegalArticle,
.dkLegalSideCard {
    background: #fff;
    border: 1px solid rgba(196, 30, 58, .14);
    border-radius: 18px;
    box-shadow: 0 14px 38px rgba(91, 24, 24, .06)
}

.dkLegalArticle {
    padding: 28px 30px 24px
}

.dkLegalArticle h1 {
    margin: 0;
    font-size: 28px;
    line-height: 1.25;
    font-weight: 1000;
    color: #071426;
    letter-spacing: .2px
}

.dkLegalLead {
    margin: 12px 0 16px;
    color: #5f6b7a;
    font-size: 14px;
    line-height: 1.85
}

.dkLegalAlert {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 16px 0 20px;
    padding: 13px 16px;
    border-radius: 12px;
    border: 1px solid rgba(217, 0, 22, .18);
    background: linear-gradient(90deg, rgba(217, 0, 22, .08), rgba(255, 246, 241, .88));
    color: #d90016;
    font-size: 14px;
    line-height: 1.65;
    font-weight: 900
}

.dkLegalAlert::before {
    content: "!";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #e00012;
    color: #fff;
    font-weight: 1000;
    flex: 0 0 22px;
    margin-top: 1px
}

.dkLegalRuleList {
    display: grid;
    gap: 0
}

.dkLegalRule {
    display: grid;
    grid-template-columns: 48px 168px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    padding: 18px 0;
    border-bottom: 1px dashed rgba(196, 30, 58, .16)
}

.dkLegalRule:last-child {
    border-bottom: none
}

.dkLegalRuleIcon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #e62b2b, #f06a57);
    color: #fff;
    font-weight: 1000;
    box-shadow: 0 10px 18px rgba(217, 0, 22, .12)
}

.dkLegalRule h2 {
    margin: 7px 0 0;
    color: #d90016;
    font-size: 17px;
    line-height: 1.45;
    font-weight: 1000
}

.dkLegalRule ul {
    margin: 0;
    padding: 0 0 0 18px;
    color: #46515f;
    font-size: 14px;
    line-height: 1.85
}

.dkLegalRule li {
    margin: 0 0 4px
}

.dkLegalSide {
    display: grid;
    gap: 18px
}

.dkLegalSideCard {
    padding: 20px
}

.dkLegalSideCard h2 {
    margin: 0 0 14px;
    color: #071426;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 1000
}

.dkLegalEntryGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px
}

.dkLegalEntry {
    min-height: 74px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid rgba(196, 30, 58, .14);
    border-radius: 14px;
    background: #fffaf8;
    color: #071426;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 900;
    text-align: center
}

.dkLegalEntry span {
    color: #d90016;
    font-size: 22px;
    line-height: 1
}

.dkLegalEntry:hover {
    border-color: rgba(217, 0, 22, .28);
    background: #fff4f1;
    color: #d90016
}

.dkLegalContact {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 14px;
    align-items: center
}

.dkLegalQr {
    width: 86px;
    height: 86px;
    border-radius: 12px;
    background: #1b1b1b;
    background-image: linear-gradient(90deg, rgba(255, 255, 255, .85) 10px, transparent 10px), linear-gradient(rgba(255, 255, 255, .85) 10px, transparent 10px);
    background-size: 24px 24px;
    position: relative;
    overflow: hidden
}

.dkLegalQr::after {
    content: "";
    position: absolute;
    left: 31px;
    top: 31px;
    width: 24px;
    height: 24px;
    border-radius: 7px;
    background: #e00012;
    box-shadow: 0 0 0 7px #fff
}

.dkLegalContactText {
    color: #4b5563;
    font-size: 14px;
    line-height: 1.85;
    font-weight: 700
}

.dkLegalContactText b {
    color: #111827
}

.dkLegalRedBtn {
    margin-top: 14px;
    width: 100%;
    height: 42px;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    background: linear-gradient(90deg, #d90016, #e43b3b);
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    box-shadow: 0 12px 22px rgba(217, 0, 22, .14)
}

.dkLegalTipList {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px
}

.dkLegalTipList li {
    position: relative;
    padding-left: 18px;
    color: #46515f;
    font-size: 14px;
    line-height: 1.75
}

.dkLegalTipList li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .78em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d90016
}

.dkLegalFaqBox {
    margin-top: 20px;
    border: 1px solid rgba(196, 30, 58, .14);
    border-radius: 14px;
    background: #fffaf7;
    padding: 16px
}

.dkLegalFaqBox h2 {
    margin: 0 0 12px;
    font-size: 17px;
    font-weight: 1000;
    color: #071426
}

.dkLegalFaqGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px
}

.dkLegalFaqItem {
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid rgba(196, 30, 58, .12);
    background: #fff
}

.dkLegalFaqItem strong {
    display: block;
    color: #d90016;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 1000
}

.dkLegalFaqItem p {
    margin: 6px 0 0;
    color: #5f6b7a;
    font-size: 13px;
    line-height: 1.7
}

@media (max-width:1100px) {
    .dkLegalPage {
        grid-template-columns: 1fr
    }

    .dkLegalRule {
        grid-template-columns: 48px 150px minmax(0, 1fr)
    }
}

@media (max-width:720px) {
    .dkLegalArticle {
        padding: 22px 18px
    }

    .dkLegalRule {
        grid-template-columns: 44px 1fr;
        gap: 12px
    }

    .dkLegalRule ul {
        grid-column: 1 / -1
    }

    .dkLegalFaqGrid {
        grid-template-columns: 1fr
    }

    .dkLegalEntryGrid {
        grid-template-columns: 1fr 1fr
    }
}

#page-search .searchEmptyV2 {
    grid-column: 1 / -1;
    min-height: 330px;
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    align-items: center;
    gap: 36px;
    padding: 34px 70px 36px;
    border-radius: 0;
    background: linear-gradient(180deg, #fff 0%, #fffafa 100%)
}

#page-search .searchEmptyV2Illo {
    position: relative;
    width: 240px;
    height: 210px;
    margin: 0 auto
}

#page-search .searchEmptyDoc {
    position: absolute;
    left: 56px;
    top: 30px;
    width: 118px;
    height: 142px;
    border-radius: 12px;
    background: linear-gradient(180deg, #fff5f3, #ffeceb);
    border: 7px solid rgba(234, 60, 60, .16);
    box-shadow: 0 16px 40px rgba(220, 0, 0, .08)
}

#page-search .searchEmptyDoc:before,
#page-search .searchEmptyDoc:after {
    content: "";
    position: absolute;
    left: 26px;
    right: 22px;
    height: 10px;
    border-radius: 999px;
    background: rgba(234, 60, 60, .16)
}

#page-search .searchEmptyDoc:before {
    top: 38px
}

#page-search .searchEmptyDoc:after {
    top: 68px;
    width: 52px;
    right: auto
}

#page-search .searchEmptyDots {
    position: absolute;
    right: 38px;
    top: 22px;
    width: 74px;
    height: 36px;
    border-radius: 999px;
    background: #fff2f1;
    border: 1px solid #f5d7d4
}

#page-search .searchEmptyDots:before {
    content: "•••";
    position: absolute;
    left: 17px;
    top: 1px;
    letter-spacing: 6px;
    color: #efaaa3;
    font-size: 24px;
    line-height: 30px
}

#page-search .searchEmptyFolder {
    position: absolute;
    left: 24px;
    bottom: 23px;
    width: 108px;
    height: 58px;
    border-radius: 10px 14px 14px 14px;
    background: linear-gradient(180deg, #ffd992, #ffb14b);
    opacity: .88
}

#page-search .searchEmptyFolder:before {
    content: "";
    position: absolute;
    left: 0;
    top: -17px;
    width: 46px;
    height: 24px;
    border-radius: 10px 10px 0 0;
    background: #ffd992
}

#page-search .searchEmptyGlass {
    position: absolute;
    right: 34px;
    bottom: 32px;
    width: 78px;
    height: 78px;
    border: 8px solid rgba(40, 48, 55, .72);
    border-radius: 50%;
    background: rgba(255, 255, 255, .25);
    box-shadow: 0 8px 22px rgba(0, 0, 0, .09)
}

#page-search .searchEmptyGlass:after {
    content: "";
    position: absolute;
    right: -42px;
    bottom: -34px;
    width: 64px;
    height: 14px;
    border-radius: 999px;
    background: #E60012;
    transform: rotate(46deg);
    box-shadow: 0 6px 14px rgba(230, 0, 18, .18)
}

#page-search .searchEmptyV2Body h3 {
    margin: 0;
    color: #061426;
    font-size: 28px;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .2px
}

#page-search .searchEmptyV2Body h3 strong {
    color: #d7000f;
    font-weight: 900
}

#page-search .searchEmptyV2Body p {
    margin: 8px 0 18px;
    color: #5f6b7a;
    font-size: 15px;
    line-height: 1.7
}

#page-search .searchEmptySuggests {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    padding: 14px 18px;
    border-radius: 12px;
    background: linear-gradient(90deg, #fff4f2, #fff8f6);
    border: 1px solid #f6e1dd
}

#page-search .searchEmptySuggests span {
    color: #E60012;
    font-size: 14px;
    font-weight: 900;
    white-space: nowrap
}

#page-search .searchEmptySuggests a {
    min-width: 96px;
    height: 34px;
    padding: 0 18px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #ead9d4;
    color: #333;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700
}

#page-search .searchEmptyOps {
    margin-top: 14px;
    display: grid;
    grid-template-columns: 145px repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: 0;
    border: 1px solid #f1dcd8;
    border-radius: 12px;
    background: #fffaf9;
    overflow: hidden
}

#page-search .searchEmptyOps div {
    min-height: 56px;
    padding: 12px 18px;
    display: flex;
    align-items: center;
    color: #697586;
    font-size: 14px;
    line-height: 1.45;
    border-right: 1px solid #f1dcd8
}

#page-search .searchEmptyOps div:last-child {
    border-right: none
}

#page-search .searchEmptyOps b {
    color: #d7000f;
    font-size: 14px;
    white-space: nowrap
}

#page-search .searchEmptyActions {
    margin-top: 22px;
    display: flex;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap
}

#page-search .searchEmptyActions a {
    height: 52px;
    min-width: 180px;
    padding: 0 24px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 900
}

#page-search .searchEmptyPrimary {
    color: #fff;
    background: linear-gradient(135deg, #d7000f, #e5443e);
    box-shadow: 0 10px 24px rgba(215, 0, 15, .18)
}

#page-search .searchEmptyGhost {
    color: #061426;
    background: #fff;
    border: 1px solid #d8d8d8
}

@media (max-width:980px) {
    #page-search .searchEmptyV2 {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 28px 24px;
        text-align: center
    }

    #page-search .searchEmptyOps {
        grid-template-columns: 1fr
    }

    #page-search .searchEmptyOps div {
        border-right: none;
        border-bottom: 1px solid #f1dcd8;
        justify-content: center
    }

    #page-search .searchEmptyOps div:last-child {
        border-bottom: none
    }
}

#page-custom {
    padding: 0 0 22px
}

#page-custom .customPageShell {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    gap: 12px
}

#page-custom .customTopGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 12px;
    align-items: stretch
}

#page-custom .customHero,
#page-custom .customSideCard,
#page-custom .customServiceBox,
#page-custom .customFormBox,
#page-custom .customFaqBox {
    background: #fff;
    border: 1px solid #ead7cf;
    border-radius: 12px;
    box-shadow: 0 10px 28px rgba(120, 38, 20, .05)
}

#page-custom .customHero {
    position: relative;
    min-height: 148px;
    padding: 28px 330px 24px 30px;
    overflow: hidden
}

#page-custom .customHero::after {
    content: "";
    position: absolute;
    right: 22px;
    top: 14px;
    width: 292px;
    height: 128px;
    background: radial-gradient(circle at 45% 26%, rgba(229, 0, 18, .13), transparent 36%), linear-gradient(135deg, rgba(229, 0, 18, .06), rgba(255, 210, 190, .36));
    border-radius: 12px;
    opacity: .9
}

#page-custom .customHeroArt {
    position: absolute;
    right: 44px;
    top: 26px;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 14px;
    color: #e30012
}

#page-custom .customClipboard {
    width: 104px;
    height: 104px;
    border-radius: 16px;
    border: 4px solid rgba(226, 0, 18, .2);
    background: linear-gradient(180deg, #fff, #fff3f0);
    box-shadow: 0 12px 28px rgba(226, 0, 18, .12);
    position: relative
}

#page-custom .customClipboard::before {
    content: "";
    position: absolute;
    left: 31px;
    top: -12px;
    width: 42px;
    height: 24px;
    border-radius: 10px 10px 5px 5px;
    background: #f38a7e
}

#page-custom .customClipboard span {
    position: absolute;
    left: 22px;
    right: 22px;
    height: 7px;
    border-radius: 999px;
    background: #ef6c61
}

#page-custom .customClipboard span:nth-child(1) {
    top: 32px
}

#page-custom .customClipboard span:nth-child(2) {
    top: 53px;
    width: 45px
}

#page-custom .customClipboard span:nth-child(3) {
    top: 74px;
    width: 54px
}

#page-custom .customPptIcon {
    width: 62px;
    height: 48px;
    border-radius: 8px;
    background: linear-gradient(135deg, #e30012, #ff7666);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
    transform: rotate(7deg);
    box-shadow: 0 10px 20px rgba(226, 0, 18, .18)
}

#page-custom .customHero h1 {
    position: relative;
    z-index: 2;
    margin: 0;
    font-size: 26px;
    line-height: 1.35;
    font-weight: 1000;
    color: #0b1b2f
}

#page-custom .customHero p {
    position: relative;
    z-index: 2;
    margin: 10px 0 0;
    max-width: 680px;
    color: #5b6675;
    font-size: 14px;
    line-height: 1.75
}

#page-custom .customHeroActions {
    position: relative;
    z-index: 2;
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 18px
}

#page-custom .customPrimaryBtn,
#page-custom .customGhostBtn,
#page-custom .customResetBtn,
#page-custom .customContactBtn {
    height: 42px;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 32px;
    border: 1px solid #ead7cf;
    font-weight: 900;
    font-size: 14px;
    cursor: pointer;
    transition: .15s ease
}

#page-custom .customPrimaryBtn,
#page-custom .customContactBtn {
    border-color: #d90012;
    background: linear-gradient(180deg, #E60012, #c90010);
    color: #fff;
    box-shadow: 0 8px 18px rgba(226, 0, 18, .16)
}

#page-custom .customGhostBtn,
#page-custom .customResetBtn {
    background: #fff;
    color: #152238
}

#page-custom .customPrimaryBtn:hover,
#page-custom .customContactBtn:hover {
    filter: brightness(1.03);
    transform: translateY(-1px)
}

#page-custom .customGhostBtn:hover,
#page-custom .customResetBtn:hover {
    border-color: #e30012;
    color: #e30012
}

#page-custom .customSideCard {
    padding: 16px 18px
}

#page-custom .customSideTitle {
    margin: 0 0 12px;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 1000;
    color: #0b1b2f
}

#page-custom .customFlowList {
    display: grid;
    gap: 8px
}

#page-custom .customFlowItem {
    display: grid;
    grid-template-columns: 24px 1fr;
    gap: 8px;
    align-items: flex-start;
    color: #5b6675;
    font-size: 12px;
    line-height: 1.5
}

#page-custom .customFlowNum {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e30012;
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    box-shadow: 0 4px 10px rgba(226, 0, 18, .18)
}

#page-custom .customFlowItem strong {
    color: #172033;
    margin-right: 8px
}

#page-custom .customMainGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 12px;
    align-items: start
}

#page-custom .customLeftStack,
#page-custom .customRightStack {
    display: grid;
    gap: 12px
}

#page-custom .customSectionTitle {
    margin: 0 0 12px;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 1000;
    color: #0b1b2f
}

#page-custom .customServiceBox,
#page-custom .customFormBox,
#page-custom .customFaqBox {
    padding: 16px
}

#page-custom .customServiceGrid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px
}

#page-custom .customServiceCard {
    position: relative;
    min-height: 84px;
    padding: 14px 10px 12px;
    border: 1px solid #eadfd9;
    border-radius: 8px;
    background: #fff;
    text-align: center;
    color: #4d5663;
    cursor: pointer;
    user-select: none;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease
}

#page-custom .customServiceCard:hover,
#page-custom .customServiceCard:focus-visible {
    border-color: #e30012;
    box-shadow: 0 8px 22px rgba(227, 0, 18, .08);
    outline: none;
    transform: translateY(-1px)
}

#page-custom .customServiceCard.active {
    border-color: #e30012;
    box-shadow: 0 0 0 2px rgba(226, 0, 18, .05) inset
}

#page-custom .customServiceIcon {
    width: 30px;
    height: 30px;
    margin: 0 auto 8px;
    border-radius: 10px;
    background: #fff5f3;
    color: #e30012;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 1000
}

#page-custom .customServiceCard strong {
    display: block;
    font-size: 13px;
    line-height: 1.35;
    color: #172033
}

#page-custom .customServiceCard span {
    display: block;
    margin-top: 4px;
    font-size: 11px;
    color: #77808d;
    line-height: 1.3
}

#page-custom .customRecommendTag {
    position: absolute;
    right: 0;
    top: 0;
    transform: translate(6px, -6px);
    height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: #ff6b5e;
    color: #fff;
    display: flex;
    align-items: center;
    font-size: 11px;
    font-weight: 900
}

#page-custom .customFormRows {
    display: grid;
    gap: 10px
}

#page-custom .customFormRow {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 12px;
    align-items: center
}

#page-custom .customFormRow.customTextareaRow {
    align-items: start
}

#page-custom .customFormLabel {
    font-size: 13px;
    font-weight: 900;
    color: #172033
}

#page-custom .customFormLabel.required::before {
    content: "*";
    color: #e30012;
    margin-right: 5px
}

#page-custom .customInputWrap {
    position: relative
}

#page-custom .customInput,
#page-custom .customSelect,
#page-custom .customTextarea {
    width: 100%;
    border: 1px solid #eadfd9;
    background: #fff;
    color: #152238;
    border-radius: 7px;
    outline: none;
    font-size: 13px;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    transition: .15s ease
}

#page-custom .customInput,
#page-custom .customSelect {
    height: 34px;
    padding: 0 12px
}

#page-custom .customTextarea {
    min-height: 86px;
    padding: 11px 12px;
    resize: vertical;
    line-height: 1.65
}

#page-custom .customInput:focus,
#page-custom .customSelect:focus,
#page-custom .customTextarea:focus {
    border-color: #e30012;
    box-shadow: 0 0 0 3px rgba(226, 0, 18, .08)
}

#page-custom .customCounter,
#page-custom .customSuffix {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #98a1ad;
    font-size: 11px
}

#page-custom .customTextareaRow .customCounter {
    top: auto;
    bottom: 8px;
    transform: none
}

#page-custom .customChipGroup,
#page-custom .customCheckGroup {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    align-items: center
}

#page-custom .customChoice {
    height: 30px;
    padding: 0 18px;
    border-radius: 7px;
    border: 1px solid #eadfd9;
    background: #fff;
    color: #4d5663;
    font-weight: 800;
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

#page-custom .customChoice:hover {
    border-color: #e30012;
    color: #e30012
}

#page-custom .customCheck {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #4d5663;
    font-weight: 800
}

#page-custom .customCheck input {
    accent-color: #e30012
}

#page-custom .customUploadBox {
    border: 1px dashed #c7b9b2;
    border-radius: 7px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #5b6675;
    background: #fff;
    font-size: 12px;
    text-align: center
}

#page-custom .customUploadBox strong {
    color: #172033
}

#page-custom .customUploadIcon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid #d8c9c2;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #e30012;
    font-weight: 1000
}

#page-custom .customContactGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px
}

#page-custom .customAgreement {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: 132px;
    color: #5b6675;
    font-size: 12px
}

#page-custom .customAgreement input {
    accent-color: #e30012
}

#page-custom .customBtnRow {
    display: grid;
    grid-template-columns: 200px 200px;
    gap: 16px;
    margin-left: 132px;
    margin-top: 2px
}

#page-custom .customRightStack .customSideCard {
    padding: 16px
}

#page-custom .customPriceList {
    display: grid;
    gap: 0;
    border-top: 1px solid #efe2dc
}

#page-custom .customPriceItem {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 9px 0;
    border-bottom: 1px solid #efe2dc;
    font-size: 12px;
    color: #4d5663
}

#page-custom .customPriceItem strong {
    color: #172033;
    font-weight: 900
}

#page-custom .customSideNote {
    margin: 10px 0 0;
    color: #75808d;
    font-size: 11px;
    line-height: 1.7
}

#page-custom .customConsultBox {
    display: grid;
    grid-template-columns: 90px 1fr;
    gap: 12px;
    align-items: center
}

#page-custom .customMiniQr {
    width: 86px;
    height: 86px;
    border-radius: 8px;
    background: linear-gradient(90deg, #111 8px, transparent 8px) 0 0/16px 16px, linear-gradient(#111 8px, transparent 8px) 0 0/16px 16px, #fff;
    border: 6px solid #fff;
    box-shadow: 0 0 0 1px #ddd inset;
    position: relative
}

#page-custom .customMiniQr::after {
    content: "";
    position: absolute;
    left: 28px;
    top: 28px;
    width: 26px;
    height: 26px;
    border-radius: 7px;
    background: #e30012;
    border: 5px solid #fff
}

#page-custom .customConsultText {
    display: grid;
    gap: 6px;
    color: #4d5663;
    font-size: 12px;
    line-height: 1.5
}

#page-custom .customConsultText b {
    color: #172033
}

#page-custom .customContactBtn {
    width: 100%;
    margin-top: 12px;
    height: 38px
}

#page-custom .customTipsList {
    margin: 0;
    padding: 0 0 0 18px;
    color: #4d5663;
    font-size: 12px;
    line-height: 2
}

#page-custom .customTipsList li::marker {
    color: #e30012
}

#page-custom .customFaqBox {
    padding: 12px 14px
}

#page-custom .customFaqGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px
}

#page-custom .customFaqItem {
    border: 1px solid #eadfd9;
    border-radius: 7px;
    background: #fff;
    padding: 10px 14px;
    min-height: 42px
}

#page-custom .customFaqItem summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #172033;
    font-size: 13px;
    font-weight: 900
}

#page-custom .customFaqItem summary::-webkit-details-marker {
    display: none
}

#page-custom .customFaqItem summary::after {
    content: "⌄";
    color: #7b8794
}

#page-custom .customFaqItem[open] summary::after {
    transform: rotate(180deg)
}

#page-custom .customFaqItem p {
    margin: 8px 0 0;
    color: #657180;
    font-size: 12px;
    line-height: 1.7
}

@media (max-width:1100px) {

    #page-custom .customTopGrid,
    #page-custom .customMainGrid {
        grid-template-columns: 1fr
    }

    #page-custom .customHero {
        padding-right: 30px
    }

    #page-custom .customHeroArt {
        display: none
    }

    #page-custom .customServiceGrid {
        grid-template-columns: repeat(3, 1fr)
    }

    #page-custom .customFaqGrid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:720px) {
    #page-custom .customFormRow {
        grid-template-columns: 1fr;
        gap: 6px
    }

    #page-custom .customAgreement,
    #page-custom .customBtnRow {
        margin-left: 0
    }

    #page-custom .customBtnRow {
        grid-template-columns: 1fr
    }

    #page-custom .customServiceGrid {
        grid-template-columns: repeat(2, 1fr)
    }

    #page-custom .customContactGrid {
        grid-template-columns: 1fr
    }

    #page-custom .customFaqGrid {
        grid-template-columns: 1fr
    }
}

#page-vip {
    padding: 14px 0 34px;
    background: linear-gradient(180deg, #fff 0%, #fff7f2 100%)
}

#page-vip .vipPageShell {
    width: min(1320px, calc(100% - 48px));
    margin: 0 auto
}

#page-vip .vipPageGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 410px;
    gap: 14px;
    align-items: start
}

#page-vip .vipPageMain,
#page-vip .vipPageSide {
    display: grid;
    gap: 12px
}

#page-vip .vipHeroCard,
#page-vip .vipBlock,
#page-vip .vipPayPanel,
#page-vip .vipServicePanel {
    border: 1px solid #ead9d2;
    border-radius: 16px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 12px 34px rgba(155, 54, 33, .08);
    overflow: hidden
}

#page-vip .vipHeroCard {
    min-height: 206px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    align-items: center;
    position: relative;
    padding: 28px 34px;
    background: linear-gradient(105deg, #fff8f2 0%, #fff 55%, #fff3ec 100%)
}

#page-vip .vipHeroCopy {
    position: relative;
    z-index: 2
}

#page-vip .vipHeroCopy h1 {
    margin: 0;
    max-width: 760px;
    color: #b40008;
    font-size: 28px;
    line-height: 1.35;
    font-weight: 1000;
    letter-spacing: .1px
}

#page-vip .vipHeroCopy p {
    margin: 16px 0 0;
    max-width: 680px;
    color: #3b4758;
    font-size: 15px;
    line-height: 1.9;
    font-weight: 700
}

#page-vip .vipHeroActions {
    margin-top: 24px;
    display: flex;
    gap: 18px;
    flex-wrap: wrap
}

#page-vip .vipPrimaryAction,
#page-vip .vipGhostAction {
    height: 46px;
    min-width: 170px;
    padding: 0 28px;
    border-radius: 999px;
    border: 1px solid #E60012;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 1000;
    cursor: pointer;
    transition: .15s ease
}

#page-vip .vipPrimaryAction {
    color: #fff;
    background: linear-gradient(180deg, #E60012, #c90010);
    box-shadow: 0 10px 20px rgba(215, 0, 18, .18)
}

#page-vip .vipGhostAction {
    color: #c90010;
    background: #fff
}

#page-vip .vipGhostAction:hover,
#page-vip .vipPrimaryAction:hover {
    transform: translateY(-1px);
    filter: brightness(1.02)
}

#page-vip .vipGhostAction.full {
    width: 100%;
    min-width: 0;
    border-radius: 10px;
    margin-top: 14px
}

#page-vip .vipHeroArt {
    position: relative;
    height: 170px;
    min-width: 300px
}

#page-vip .vipArtCloud {
    position: absolute;
    right: 10px;
    bottom: 0;
    width: 250px;
    height: 110px;
    border-radius: 70px 70px 22px 22px;
    background: linear-gradient(180deg, #ffe9d7, #ffcab1);
    opacity: .85
}

#page-vip .vipArtFile,
#page-vip .vipArtFolder,
#page-vip .vipArtCrown,
#page-vip .vipArtDownload {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
    box-shadow: 0 12px 24px rgba(193, 28, 20, .14)
}

#page-vip .vipArtFile {
    width: 58px;
    height: 70px;
    border-radius: 10px;
    background: #fff;
    color: #E60012;
    border: 1px solid #ffd0c4
}

#page-vip .vipArtFile.ppt {
    right: 152px;
    bottom: 38px;
    transform: rotate(-4deg)
}

#page-vip .vipArtFile.word {
    right: 84px;
    bottom: 42px;
    color: #2f76d6;
    transform: rotate(5deg)
}

#page-vip .vipArtFolder {
    right: 4px;
    bottom: 22px;
    width: 126px;
    height: 86px;
    border-radius: 15px;
    background: linear-gradient(135deg, #ef322f, #c90010);
    color: #fff;
    transform: rotate(-4deg)
}

#page-vip .vipArtCrown {
    right: 120px;
    bottom: 8px;
    width: 82px;
    height: 60px;
    border-radius: 18px;
    background: linear-gradient(180deg, #ffd98a, #f3a51c);
    color: #fff;
    font-size: 34px
}

#page-vip .vipArtDownload {
    right: 50px;
    bottom: 0;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #fff;
    color: #E60012;
    font-size: 28px
}

#page-vip .vipBlock {
    padding: 16px 18px
}

#page-vip .vipBlockTitle {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px
}

#page-vip .vipBlockTitle h2 {
    margin: 0;
    color: #b40008;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 1000
}

#page-vip .vipStep {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 22px;
    background: #d40000;
    color: #fff;
    font-size: 12px;
    font-weight: 1000
}

#page-vip #vipInfo {
    margin-left: auto;
    max-width: 360px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    background: #fff7f3;
    color: #9b1111;
    border-color: #f0d8d1
}

#page-vip .vipPlansView {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px
}

#page-vip .vipPlanOption {
    position: relative;
    min-height: 128px;
    border: 1px solid #eadbd5;
    border-radius: 12px;
    background: #fff;
    cursor: pointer;
    padding: 18px 16px 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: .15s ease
}

#page-vip .vipPlanOption:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(160, 45, 32, .10)
}

#page-vip .vipPlanOption.active {
    border: 2px solid #E60012;
    box-shadow: 0 12px 28px rgba(214, 0, 18, .10)
}

#page-vip .vipPlanBadge {
    position: absolute;
    right: -2px;
    top: -2px;
    height: 26px;
    padding: 0 11px;
    border-radius: 0 10px 0 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #e85050;
    font-size: 12px;
    font-weight: 1000
}

#page-vip .vipPlanName {
    font-size: 16px;
    color: #2b2725;
    font-weight: 900;
    line-height: 1.35
}

#page-vip .vipPlanPrice {
    margin-top: 7px;
    font-size: 30px;
    color: #d00000;
    font-weight: 1000;
    line-height: 1
}

#page-vip .vipPlanDesc {
    margin-top: 8px;
    padding: 3px 16px;
    border-radius: 999px;
    color: #8b5d15;
    background: #fff1d8;
    font-size: 12px;
    font-weight: 900
}

#page-vip .vipPlanSub {
    margin-top: 8px;
    color: #7b7470;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5
}

#page-vip .vipBenefitPeople {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    gap: 20px
}

#page-vip .vipRightsGrid,
#page-vip .vipPeopleGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px
}

#page-vip .vipRightsGrid div,
#page-vip .vipPeopleGrid div {
    min-height: 52px;
    border: 1px solid #eee0db;
    border-radius: 10px;
    background: #fffdfb;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    font-size: 13px;
    line-height: 1.4;
    color: #253348;
    font-weight: 800
}

#page-vip .vipRightsGrid span,
#page-vip .vipPeopleGrid span {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 28px;
    background: #fff0ed;
    color: #E60012;
    font-size: 12px;
    font-weight: 1000
}

#page-vip .vipRuleFaqRow {
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    gap: 12px
}

#page-vip .vipRulesList {
    margin: 0;
    padding-left: 20px;
    display: grid;
    gap: 7px;
    color: #3b4758;
    font-size: 13px;
    line-height: 1.65;
    font-weight: 700
}

#page-vip .vipFaqGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px
}

#page-vip .vipFaqGrid details {
    border: 1px solid #eadfd9;
    border-radius: 8px;
    background: #fff;
    padding: 9px 12px
}

#page-vip .vipFaqGrid summary {
    cursor: pointer;
    font-size: 13px;
    color: #263248;
    font-weight: 900;
    list-style: none
}

#page-vip .vipFaqGrid summary::-webkit-details-marker {
    display: none
}

#page-vip .vipFaqGrid summary:after {
    content: '⌄';
    float: right;
    color: #666666
}

#page-vip .vipFaqGrid details[open] summary:after {
    content: '⌃'
}

#page-vip .vipFaqGrid p {
    margin: 8px 0 0;
    color: #667085;
    font-size: 12px;
    line-height: 1.65
}

#page-vip .vipPayPanel {
    border-color: #E60012
}

#page-vip .vipPayPanelHd {
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #d90010, #f13a2d);
    font-size: 20px;
    font-weight: 1000
}

#page-vip .vipPayPanelBody {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 18px;
    padding: 20px 22px 14px;
    align-items: center
}

#page-vip .vipPayQrBox {
    position: relative;
    width: 176px;
    height: 176px;
    border-radius: 12px;
    border: 1px solid #f0ded8;
    background: #fff;
    display: grid;
    place-items: center;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .08)
}

#page-vip .vipPayQrFake,
#page-vip .vipMiniQr {
    background: linear-gradient(90deg, #111 25%, transparent 25%, transparent 50%, #111 50%, #111 75%, transparent 75%) 0 0/18px 18px, linear-gradient(#111 25%, transparent 25%, transparent 50%, #111 50%, #111 75%, transparent 75%) 0 0/18px 18px
}

#page-vip .vipPayQrFake {
    width: 154px;
    height: 154px;
    border-radius: 8px;
    opacity: .9
}

#page-vip .vipPayQrBox span {
    position: absolute;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #37b24d;
    border: 6px solid #fff;
    font-size: 30px;
    font-weight: 1000
}

#page-vip .vipPayCopy h2 {
    margin: 0 0 16px;
    color: #c90010;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 1000
}

#page-vip .vipPayCopy ul {
    margin: 0;
    padding: 0;
    display: grid;
    gap: 12px;
    list-style: none;
    color: #364152;
    font-size: 15px;
    font-weight: 800
}

#page-vip .vipPayCopy li:before {
    content: '✓';
    color: #45b36b;
    margin-right: 10px;
    font-weight: 1000
}

#page-vip .vipRecommendLine {
    margin: 0 22px 10px;
    min-height: 50px;
    border: 1px solid #f3b34e;
    border-radius: 8px;
    background: linear-gradient(90deg, #fff8e8, #fff);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 18px;
    color: #2d2926;
    font-size: 16px;
    font-weight: 1000
}

#page-vip .vipRecommendLine em {
    font-style: normal;
    color: #e94b1b;
    background: #fff0dd;
    border-radius: 999px;
    padding: 2px 8px;
    font-size: 12px;
    margin-left: 8px
}

#page-vip .vipRecommendLine strong {
    color: #e00012;
    font-size: 27px
}

#page-vip .vipPayNote {
    margin: 0 0 16px;
    text-align: center;
    color: #8c7c72;
    font-size: 12px;
    font-weight: 700
}

#page-vip .vipServicePanel {
    padding: 18px 20px
}

#page-vip .vipServicePanel h2 {
    margin: 0 0 14px;
    color: #b40008;
    font-size: 17px;
    font-weight: 1000
}

#page-vip .vipServiceGrid {
    display: grid;
    grid-template-columns: 116px 1fr;
    gap: 18px;
    align-items: center
}

#page-vip .vipMiniQr {
    width: 108px;
    height: 108px;
    border-radius: 8px;
    opacity: .88;
    background-size: 14px 14px
}

#page-vip .vipServiceText {
    display: grid;
    gap: 8px;
    color: #6b5f59;
    font-size: 13px;
    font-weight: 700
}

#page-vip .vipServiceText strong {
    color: #d40000;
    font-size: 16px
}

#page-vip .vipServiceText em {
    font-style: normal;
    line-height: 1.6
}

@media (max-width:1180px) {
    #page-vip .vipPageGrid {
        grid-template-columns: 1fr
    }

    #page-vip .vipPageSide {
        grid-template-columns: 1fr 1fr
    }
}

@media (max-width:860px) {
    #page-vip .vipPageShell {
        width: min(100% - 28px, 1320px)
    }

    #page-vip .vipHeroCard {
        grid-template-columns: 1fr;
        padding: 22px
    }

    #page-vip .vipHeroArt {
        display: none
    }

    #page-vip .vipPlansView,
    #page-vip .vipBenefitPeople,
    #page-vip .vipRuleFaqRow,
    #page-vip .vipPageSide {
        grid-template-columns: 1fr
    }

    #page-vip .vipRightsGrid,
    #page-vip .vipPeopleGrid,
    #page-vip .vipFaqGrid {
        grid-template-columns: 1fr
    }

    #page-vip .vipPayPanelBody {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center
    }
}

#page-vip {
    --vip-red: #d90010;
    --vip-red-dark: #bd000b;
    --vip-red-soft: #fff3f0;
    --vip-gold: #f4b23b;
    --vip-line: #ecd9d2;
    --vip-text: #00142c;
    --vip-muted: #5c6573;
    padding: 14px 0 30px;
    background: linear-gradient(180deg, #ffffff 0%, #fafafa 56%, #fff7f2 100%);
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    color: var(--vip-text)
}

#page-vip * {
    box-sizing: border-box
}

#page-vip .vipPageShell {
    width: min(1320px, calc(100vw - 48px));
    margin: 0 auto
}

#page-vip .vipPageGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 410px;
    grid-template-areas: "hero pay"
        "plans pay"
        "benefit service"
        "rules rules";
    gap: 14px;
    align-items: stretch
}

#page-vip .vipPageMain,
#page-vip .vipPageSide {
    display: contents !important
}

#page-vip .vipHeroCard {
    grid-area: hero
}

#page-vip .vipPlanBlock {
    grid-area: plans
}

#page-vip .vipBenefitPeople {
    grid-area: benefit
}

#page-vip .vipPayPanel {
    grid-area: pay
}

#page-vip .vipServicePanel {
    grid-area: service
}

#page-vip .vipRuleFaqRow {
    grid-area: rules
}

#page-vip .vipHeroCard,
#page-vip .vipBlock,
#page-vip .vipPayPanel,
#page-vip .vipServicePanel {
    border: 1px solid var(--vip-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(148, 54, 31, .07);
    overflow: hidden
}

#page-vip .vipHeroCard {
    min-height: 206px;
    padding: 28px 34px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 350px;
    align-items: center;
    gap: 20px;
    position: relative;
    background: radial-gradient(260px 160px at 86% 46%, rgba(255, 205, 150, .46), transparent 70%), linear-gradient(105deg, #fff8f1 0%, #ffffff 58%, #fff0e8 100%)
}

#page-vip .vipHeroCopy {
    position: relative;
    z-index: 2;
    min-width: 0
}

#page-vip .vipHeroCopy h1 {
    margin: 0;
    color: #b40008;
    font-size: 28px;
    line-height: 1.36;
    font-weight: 1000;
    letter-spacing: .1px
}

#page-vip .vipHeroCopy p {
    margin: 15px 0 0;
    max-width: 720px;
    color: #374151;
    font-size: 15px;
    line-height: 1.9;
    font-weight: 700
}

#page-vip .vipHeroActions {
    margin-top: 22px;
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap
}

#page-vip .vipPrimaryAction,
#page-vip .vipGhostAction {
    height: 46px;
    min-width: 178px;
    padding: 0 28px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 15px;
    line-height: 1;
    font-weight: 1000;
    cursor: pointer;
    transition: transform .15s ease, filter .15s ease, box-shadow .15s ease
}

#page-vip .vipPrimaryAction {
    border: 0;
    color: #fff;
    background: linear-gradient(180deg, #E60012 0%, #c90010 100%);
    box-shadow: 0 10px 22px rgba(214, 0, 18, .20)
}

#page-vip .vipGhostAction {
    border: 1px solid #E60012;
    color: #c90010;
    background: #fff
}

#page-vip .vipPrimaryAction:hover,
#page-vip .vipGhostAction:hover {
    transform: translateY(-1px);
    filter: brightness(1.02)
}

#page-vip .vipGhostAction.full {
    width: 100%;
    min-width: 0;
    margin-top: 14px;
    border-radius: 10px
}

#page-vip .vipHeroArt {
    position: relative;
    width: 350px;
    height: 172px;
    justify-self: end
}

#page-vip .vipArtCloud {
    position: absolute;
    right: 0;
    bottom: -4px;
    width: 276px;
    height: 120px;
    border-radius: 80px 80px 22px 22px;
    background: linear-gradient(180deg, #ffe9d8, #ffc5a7);
    opacity: .92
}

#page-vip .vipArtFile,
#page-vip .vipArtFolder,
#page-vip .vipArtCrown,
#page-vip .vipArtDownload {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
    box-shadow: 0 12px 24px rgba(189, 33, 23, .15)
}

#page-vip .vipArtFile {
    width: 58px;
    height: 70px;
    border-radius: 10px;
    background: #fff;
    color: #E60012;
    border: 1px solid #ffd2c4
}

#page-vip .vipArtFile.ppt {
    right: 164px;
    bottom: 42px;
    transform: rotate(-4deg)
}

#page-vip .vipArtFile.word {
    right: 94px;
    bottom: 45px;
    color: #2f76d6;
    transform: rotate(5deg)
}

#page-vip .vipArtFolder {
    right: 5px;
    bottom: 22px;
    width: 136px;
    height: 88px;
    border-radius: 15px;
    background: linear-gradient(135deg, #ef332f, #c90010);
    color: #fff;
    transform: rotate(-4deg)
}

#page-vip .vipArtCrown {
    right: 135px;
    bottom: 6px;
    width: 84px;
    height: 62px;
    border-radius: 18px;
    background: linear-gradient(180deg, #ffd98a, #f0a314);
    color: #fff;
    font-size: 34px
}

#page-vip .vipArtDownload {
    right: 56px;
    bottom: 0;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #fff;
    color: #E60012;
    font-size: 28px
}

#page-vip .vipPayPanel {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    border-color: #E60012;
    min-height: 360px
}

#page-vip .vipPayPanelHd {
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #d90010 0%, #ef332f 100%);
    font-size: 20px;
    line-height: 1;
    font-weight: 1000
}

#page-vip .vipPayPanelBody {
    flex: 1;
    display: grid;
    grid-template-columns: 184px minmax(0, 1fr);
    align-items: center;
    gap: 20px;
    padding: 20px 24px 14px
}

#page-vip .vipPayQrBox {
    position: relative;
    width: 176px;
    height: 176px;
    border: 1px solid #f0ded8;
    border-radius: 12px;
    background: #fff;
    display: grid;
    place-items: center;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .08)
}

#page-vip .vipPayQrFake,
#page-vip .vipMiniQr {
    background: linear-gradient(90deg, #111 25%, transparent 25%, transparent 50%, #111 50%, #111 75%, transparent 75%) 0 0/18px 18px, linear-gradient(#111 25%, transparent 25%, transparent 50%, #111 50%, #111 75%, transparent 75%) 0 0/18px 18px
}

#page-vip .vipPayQrFake {
    width: 154px;
    height: 154px;
    border-radius: 8px;
    opacity: .9
}

#page-vip .vipPayQrBox span {
    position: absolute;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #37b24d;
    border: 6px solid #fff;
    font-size: 30px;
    font-weight: 1000
}

#page-vip .vipPayCopy h2 {
    margin: 0 0 16px;
    color: #c90010;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 1000
}

#page-vip .vipPayCopy ul {
    margin: 0;
    padding: 0;
    display: grid;
    gap: 12px;
    list-style: none;
    color: #364152;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 800
}

#page-vip .vipPayCopy li:before {
    content: '✓';
    color: #45b36b;
    margin-right: 10px;
    font-weight: 1000
}

#page-vip .vipRecommendLine {
    margin: 0 24px 10px;
    min-height: 50px;
    border: 1px solid #f3b34e;
    border-radius: 8px;
    background: linear-gradient(90deg, #fff8e8, #fff);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 18px;
    color: #2d2926;
    font-size: 16px;
    font-weight: 1000
}

#page-vip .vipRecommendLine em {
    font-style: normal;
    color: #e94b1b;
    background: #fff0dd;
    border-radius: 999px;
    padding: 2px 8px;
    font-size: 12px;
    margin-left: 8px
}

#page-vip .vipRecommendLine strong {
    color: #e00012;
    font-size: 27px;
    line-height: 1
}

#page-vip .vipPayNote {
    margin: 0 0 14px;
    text-align: center;
    color: #8c7c72;
    font-size: 12px;
    font-weight: 700
}

#page-vip .vipBlock {
    padding: 16px 18px
}

#page-vip .vipBlockTitle {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px
}

#page-vip .vipBlockTitle h2 {
    margin: 0;
    color: #b40008;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 1000
}

#page-vip .vipStep {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 22px;
    background: #d40000;
    color: #fff;
    font-size: 12px;
    font-weight: 1000
}

#page-vip #vipInfo {
    display: none !important
}

#page-vip .vipPlansView {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px
}

#page-vip .vipPlanOption {
    position: relative;
    min-height: 128px;
    padding: 18px 16px 14px;
    border: 1px solid #eadbd5;
    border-radius: 12px;
    background: #fff;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease
}

#page-vip .vipPlanOption:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(160, 45, 32, .10)
}

#page-vip .vipPlanOption.active {
    border: 2px solid #E60012;
    box-shadow: 0 12px 28px rgba(214, 0, 18, .10)
}

#page-vip .vipPlanBadge {
    position: absolute;
    right: -2px;
    top: -2px;
    height: 26px;
    padding: 0 11px;
    border-radius: 0 10px 0 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #e85050;
    font-size: 12px;
    font-weight: 1000
}

#page-vip .vipPlanName {
    font-size: 16px;
    color: #2b2725;
    font-weight: 900;
    line-height: 1.35
}

#page-vip .vipPlanPrice {
    margin-top: 7px;
    font-size: 30px;
    color: #d00000;
    font-weight: 1000;
    line-height: 1
}

#page-vip .vipPlanDesc {
    margin-top: 8px;
    padding: 3px 16px;
    border-radius: 999px;
    color: #8b5d15;
    background: #fff1d8;
    font-size: 12px;
    font-weight: 900
}

#page-vip .vipPlanSub {
    margin-top: 8px;
    color: #7b7470;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5
}

#page-vip .vipBenefitPeople {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    gap: 18px;
    padding: 14px 18px
}

#page-vip .vipPeopleCol {
    border-left: 1px solid #eadfd9;
    padding-left: 20px
}

#page-vip .vipRightsGrid,
#page-vip .vipPeopleGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px
}

#page-vip .vipRightsGrid div,
#page-vip .vipPeopleGrid div {
    min-height: 52px;
    border: 1px solid #eee0db;
    border-radius: 10px;
    background: #fffdfb;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    color: #253348;
    font-size: 13px;
    line-height: 1.38;
    font-weight: 800
}

#page-vip .vipRightsGrid span,
#page-vip .vipPeopleGrid span {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 28px;
    background: #fff0ed;
    color: #E60012;
    font-size: 12px;
    font-weight: 1000
}

#page-vip .vipServicePanel {
    padding: 18px 20px
}

#page-vip .vipServicePanel h2 {
    margin: 0 0 14px;
    color: #b40008;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 1000
}

#page-vip .vipServiceGrid {
    display: grid;
    grid-template-columns: 116px minmax(0, 1fr);
    gap: 18px;
    align-items: center
}

#page-vip .vipMiniQr {
    width: 108px;
    height: 108px;
    border-radius: 8px;
    opacity: .88;
    background-size: 14px 14px
}

#page-vip .vipServiceText {
    display: grid;
    gap: 8px;
    color: #6b5f59;
    font-size: 13px;
    font-weight: 700
}

#page-vip .vipServiceText strong {
    color: #d40000;
    font-size: 16px
}

#page-vip .vipServiceText em {
    font-style: normal;
    line-height: 1.6
}

#page-vip .vipRuleFaqRow {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    gap: 14px
}

#page-vip .vipRulesList {
    margin: 0;
    padding-left: 22px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px 26px;
    color: #3b4758;
    font-size: 13px;
    line-height: 1.65;
    font-weight: 700
}

#page-vip .vipFaqGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 12px
}

#page-vip .vipFaqGrid details {
    border: 1px solid #eadfd9;
    border-radius: 8px;
    background: #fff;
    padding: 9px 12px
}

#page-vip .vipFaqGrid summary {
    cursor: pointer;
    color: #263248;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 900;
    list-style: none
}

#page-vip .vipFaqGrid summary::-webkit-details-marker {
    display: none
}

#page-vip .vipFaqGrid summary:after {
    content: '⌄';
    float: right;
    color: #666666
}

#page-vip .vipFaqGrid details[open] summary:after {
    content: '⌃'
}

#page-vip .vipFaqGrid p {
    margin: 8px 0 0;
    color: #667085;
    font-size: 12px;
    line-height: 1.65
}

@media (max-width:1180px) {
    #page-vip .vipPageGrid {
        grid-template-columns: 1fr;
        grid-template-areas: "hero" "pay" "plans" "benefit" "service" "rules"
    }

    #page-vip .vipPayPanel {
        min-height: auto
    }
}

@media (max-width:860px) {
    #page-vip .vipPageShell {
        width: min(100% - 28px, 1320px)
    }

    #page-vip .vipHeroCard {
        grid-template-columns: 1fr;
        padding: 22px
    }

    #page-vip .vipHeroArt {
        display: none
    }

    #page-vip .vipPlansView,
    #page-vip .vipBenefitPeople,
    #page-vip .vipRuleFaqRow {
        grid-template-columns: 1fr
    }

    #page-vip .vipPeopleCol {
        border-left: 0;
        padding-left: 0;
        border-top: 1px solid #eadfd9;
        padding-top: 14px
    }

    #page-vip .vipRightsGrid,
    #page-vip .vipPeopleGrid,
    #page-vip .vipRulesList,
    #page-vip .vipFaqGrid {
        grid-template-columns: 1fr
    }

    #page-vip .vipPayPanelBody {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center
    }
}

#page-channel {
    padding-top: 0 !important
}

#page-channel .panel {
    box-shadow: none
}

#page-channel .channelPreviewPageV6 {
    display: grid;
    gap: 12px;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    color: #071527
}

#page-channel .channelHeroV6 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    gap: 24px;
    align-items: stretch;
    padding: 0 0 12px
}

#page-channel .channelHeroCopyV6 {
    min-height: 142px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

#page-channel .channelHeroCopyV6 h1 {
    margin: 0 0 10px;
    font-size: 34px;
    line-height: 1.16;
    font-weight: 950;
    letter-spacing: -.6px;
    color: #071527
}

#page-channel .channelHeroCopyV6 p {
    margin: 0;
    max-width: 720px;
    font-size: 14px;
    line-height: 1.9;
    color: #566273
}

#page-channel .channelHeroCountV6 {
    margin-top: 12px;
    font-size: 14px;
    color: #666666;
    font-weight: 700
}

#page-channel .channelHeroCountV6 b {
    color: #E60012;
    font-size: 18px;
    font-weight: 950
}

#page-channel .channelHeroBannerV6 {
    position: relative;
    overflow: hidden;
    min-height: 142px;
    border: 1px solid #ffd8c7;
    border-radius: 10px;
    background: linear-gradient(135deg, #fff7ef 0%, #ffe9d5 48%, #fff9f3 100%);
    box-shadow: 0 8px 24px rgba(230, 0, 18, .06);
    display: flex;
    align-items: center;
    padding: 26px 28px
}

#page-channel .channelHeroBannerV6:before {
    content: "";
    position: absolute;
    right: -40px;
    bottom: -48px;
    width: 260px;
    height: 110px;
    border-radius: 50% 50% 0 0;
    background: linear-gradient(135deg, #E60012, #ff8066);
    opacity: .72
}

#page-channel .channelHeroBannerV6:after {
    content: "";
    position: absolute;
    right: 34px;
    top: 24px;
    width: 86px;
    height: 78px;
    background: linear-gradient(135deg, #c90000, #ff4e36);
    clip-path: polygon(0 24%, 100% 0, 100% 76%, 0 100%);
    opacity: .9;
    transform: rotate(-5deg)
}

#page-channel .channelBannerTextV6 {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 8px
}

#page-channel .channelBannerTextV6 strong {
    font-size: 24px;
    line-height: 1.2;
    color: #E60012;
    font-weight: 950
}

#page-channel .channelBannerTextV6 span {
    font-size: 14px;
    color: #E60012;
    font-weight: 800
}

#page-channel .channelBannerTextV6 em {
    justify-self: start;
    margin-top: 4px;
    padding: 10px 22px;
    border-radius: 999px;
    background: #E60012;
    color: #fff;
    font-style: normal;
    font-size: 13px;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(230, 0, 18, .18)
}

#page-channel .channelHotNavV6 {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    padding: 0 0 8px;
    border-bottom: 1px solid #f0e2dc
}

#page-channel .channelHotLabelV6 {
    color: #E60012;
    font-weight: 950;
    font-size: 15px;
    display: inline-flex;
    align-items: center;
    gap: 7px
}

#page-channel .channelHotLabelV6:before {
    content: "🔥";
    font-size: 16px
}

#page-channel .channelHotNavV6 a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    padding: 0 16px;
    border: 1px solid #e7ded7;
    border-radius: 7px;
    background: #fff;
    color: #566273;
    font-size: 13px;
    font-weight: 800;
    box-shadow: 0 3px 10px rgba(15, 23, 42, .025)
}

#page-channel .channelHotNavV6 a:after {
    content: "›";
    color: #666666;
    font-weight: 900
}

#page-channel .channelResultPanelV6 {
    padding: 16px 16px 20px;
    border: 1px solid #eadfd8;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(24, 28, 34, .04)
}

#page-channel .channelResultTabsV6 {
    display: flex;
    align-items: center;
    gap: 42px;
    height: 38px;
    border-bottom: 1px solid #eee2dc;
    margin-bottom: 14px
}

#page-channel .channelSortTabV6 {
    position: relative;
    height: 38px;
    border: none;
    background: transparent;
    color: #263445;
    font-size: 15px;
    font-weight: 900;
    cursor: pointer;
    padding: 0 3px;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-channel .channelSortTabV6.is-active {
    color: #E60012
}

#page-channel .channelSortTabV6.is-active:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 3px;
    border-radius: 999px;
    background: #E60012
}

#page-channel .channelFilterBarV6 {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr)) 76px;
    gap: 12px;
    align-items: end;
    padding: 0 0 14px
}

#page-channel .channelFilterBarV6 label {
    display: grid;
    gap: 6px;
    min-width: 0
}

#page-channel .channelFilterBarV6 label span {
    font-size: 12px;
    color: #566273;
    font-weight: 850;
    white-space: nowrap
}

#page-channel .channelSelectV6 {
    width: 100%;
    height: 36px;
    border: 1px solid #e5dcd5;
    border-radius: 6px;
    background: #fff;
    color: #263445;
    font-size: 13px;
    font-weight: 700;
    padding: 0 12px;
    outline: none;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-channel .channelSelectV6:focus {
    border-color: #E60012;
    box-shadow: 0 0 0 3px rgba(230, 0, 18, .08)
}

#page-channel .channelResetBtnV6 {
    height: 36px;
    border: 1px solid #e5dcd5;
    border-radius: 6px;
    background: #fff;
    color: #566273;
    font-size: 13px;
    font-weight: 850;
    cursor: pointer;
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important
}

#page-channel .channelResultMetaV6 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 26px;
    margin-bottom: 10px;
    color: #8a6d60;
    font-size: 13px;
    font-weight: 800
}

#page-channel #channelSortLinks {
    display: none !important
}

#page-channel .channelResourceGridV6 {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 18px !important
}

#page-channel .channelResourceGridV6 .resourceCard {
    display: block;
    overflow: hidden;
    border: 1px solid #E8DED7 !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .035) !important;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease
}

#page-channel .channelResourceGridV6 .resourceCard:hover {
    transform: translateY(-2px);
    border-color: #ffb7a8 !important;
    box-shadow: 0 10px 26px rgba(230, 0, 18, .08) !important
}

#page-channel .channelResourceGridV6 .resourceCard .thumb {
    aspect-ratio: 16/9 !important;
    height: auto !important;
    background: #fff !important;
    border-bottom: 1px solid #f2e6df !important;
    padding: 0 !important;
    display: block !important
}

#page-channel .channelResourceGridV6 .resourceCard .thumbImg {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important
}

#page-channel .channelResourceGridV6 .resourceCard .mediaTitle {
    display: block !important;
    min-height: 42px !important;
    padding: 8px 10px 4px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 850 !important;
    color: #071527 !important;
    text-align: left !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important
}

#page-channel .channelResourceGridV6 .resourceCard .metaRow {
    display: block !important;
    padding: 0 10px 10px !important;
    font-size: 11px !important;
    color: #667085 !important;
    line-height: 1.6 !important
}

#page-channel .channelCardTagsV6 {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin: 1px 0 6px
}

#page-channel .channelCardTagV6 {
    display: inline-flex;
    align-items: center;
    height: 20px;
    padding: 0 6px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 900;
    background: #fff4f3;
    color: #E60012;
    border: 1px solid #ffd3cd
}

#page-channel .channelCardTagV6.blue {
    color: #2870c8;
    background: #f2f7ff;
    border-color: #d6e8ff
}

#page-channel .channelCardTagV6.green {
    color: #1f9254;
    background: #f0fff6;
    border-color: #ccefdc
}

#page-channel .channelCardTagV6.gold {
    color: #b36b00;
    background: #fff8eb;
    border-color: #ffe0ad
}

#page-channel .channelCardMetaGridV6 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3px 6px;
    margin-bottom: 7px
}

#page-channel .channelCardMetaGridV6 span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-channel .channelCardActionV6 {
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #E60012;
    border-radius: 5px;
    color: #E60012;
    font-size: 12px;
    font-weight: 950;
    background: #fff
}

#page-channel .channelPagerV6 {
    padding-top: 6px
}

#page-channel .channelBottomInfoV6 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 2px
}

#page-channel .channelInfoCardV6,
#page-channel .channelFaqCardV6 {
    border: 1px solid #eadfd8;
    border-radius: 10px;
    background: #fff;
    padding: 18px 20px;
    box-shadow: 0 4px 16px rgba(24, 28, 34, .035)
}

#page-channel .channelInfoCardV6 h2,
#page-channel .channelFaqCardV6 h2 {
    margin: 0 0 12px;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 950;
    color: #071527
}

#page-channel .channelInfoLineV6 {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 8px 0;
    border-bottom: 1px solid #f1e7e1
}

#page-channel .channelInfoLineV6:last-child {
    border-bottom: none
}

#page-channel .channelInfoLineV6 b {
    color: #E60012;
    font-size: 13px;
    font-weight: 950
}

#page-channel .channelInfoLineV6 span {
    color: #566273;
    font-size: 13px;
    line-height: 1.75
}

#page-channel .channelFaqCardV6 details {
    border-bottom: 1px solid #f1e7e1;
    padding: 9px 0
}

#page-channel .channelFaqCardV6 details:last-child {
    border-bottom: none
}

#page-channel .channelFaqCardV6 summary {
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #263445;
    font-size: 13px;
    font-weight: 850
}

#page-channel .channelFaqCardV6 summary::-webkit-details-marker {
    display: none
}

#page-channel .channelFaqCardV6 summary:after {
    content: "⌄";
    font-weight: 900;
    color: #666666
}

#page-channel .channelFaqCardV6 details[open] summary:after {
    transform: rotate(180deg)
}

#page-channel .channelFaqCardV6 p {
    margin: 8px 0 0;
    color: #667085;
    font-size: 12px;
    line-height: 1.7
}

#page-channel .channelHiddenFiltersV6 {
    display: none !important
}

#page-channel .channelEmptyV6 {
    grid-column: 1/-1;
    min-height: 260px;
    border: 1px dashed #f1c7bf;
    border-radius: 10px;
    background: #fff8f6;
    display: grid;
    place-items: center;
    text-align: center;
    padding: 32px;
    color: #7b8794
}

#page-channel .channelEmptyV6 h3 {
    margin: 0 0 8px;
    color: #071527;
    font-size: 22px
}

@media (max-width:1200px) {
    #page-channel .channelHeroV6 {
        grid-template-columns: 1fr
    }

    #page-channel .channelFilterBarV6 {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    #page-channel .channelResourceGridV6 {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important
    }
}

@media (max-width:820px) {
    #page-channel .channelFilterBarV6 {
        grid-template-columns: 1fr 1fr
    }

    #page-channel .channelResourceGridV6 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    #page-channel .channelBottomInfoV6 {
        grid-template-columns: 1fr
    }
}

#page-search.searchRefPage {
    padding: 18px 0 32px;
    background: linear-gradient(180deg, #fff 0%, #fff9f6 58%, #fff 100%)
}

#page-search .searchRefShell {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 12px
}

#page-search .searchRefBread {
    height: 32px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: #666666;
    font-weight: 800;
    margin-bottom: 8px
}

#page-search .searchRefBread a {
    color: #1f2937;
    font-weight: 900
}

#page-search .searchRefBread strong {
    color: #1f2937;
    font-weight: 900
}

#page-search .searchRefLayout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 282px;
    gap: 28px;
    align-items: start
}

#page-search .searchRefMain {
    min-width: 0
}

#page-search .searchRefBar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 96px;
    height: 48px;
    border: 2px solid #d90000;
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
    margin: 0 0 14px
}

#page-search .searchRefBar input {
    border: 0;
    outline: none;
    padding: 0 18px;
    font-size: 17px;
    font-weight: 800;
    color: #111827;
    background: #fff
}

#page-search .searchRefBar input::placeholder {
    color: #9ca3af;
    font-weight: 600
}

#page-search .searchRefBar button {
    border: 0;
    cursor: pointer;
    background: linear-gradient(180deg, #d80000, #c10000);
    color: #fff;
    font-size: 16px;
    font-weight: 1000;
    letter-spacing: .5px
}

#page-search .searchRefFilterLine {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px
}

#page-search .searchRefFilterBox {
    position: relative;
    height: 40px;
    border: 1px solid #e6e2dc;
    border-radius: 5px;
    background: #fff;
    display: flex;
    align-items: center;
    padding: 0 12px;
    gap: 10px;
    z-index: 5
}

#page-search .searchRefFilterBox:after {
    content: "⌄";
    margin-left: auto;
    color: #475569;
    font-size: 14px;
    transform: translateY(-1px)
}

#page-search .searchRefFilterName {
    color: #111827;
    font-size: 14px;
    font-weight: 900;
    white-space: nowrap
}

#page-search .searchRefFilterBox .filterLinksClean {
    min-width: 0;
    flex: 1;
    display: flex;
    align-items: center
}

#page-search .searchRefFilterBox .filterLinkClean {
    display: none;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    color: #475569 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-search .searchRefFilterBox .filterLinkClean.active,
#page-search .searchRefFilterBox .filterLinksClean .filterLinkClean:first-child {
    display: inline-flex
}

#page-search .searchRefFilterBox:hover {
    z-index: 20;
    border-color: #d90000
}

#page-search .searchRefFilterBox:hover .filterLinksClean {
    position: absolute;
    left: -1px;
    right: -1px;
    top: 39px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    padding: 6px;
    border: 1px solid #eadbd5;
    border-radius: 0 0 8px 8px;
    background: #fff;
    box-shadow: 0 12px 26px rgba(120, 20, 20, .12);
    max-height: 230px;
    overflow: auto
}

#page-search .searchRefFilterBox:hover .filterLinkClean {
    display: flex !important;
    width: 100%;
    height: 32px;
    align-items: center;
    padding: 0 8px !important;
    border-radius: 6px !important
}

#page-search .searchRefFilterBox:hover .filterLinkClean.active,
#page-search .searchRefFilterBox:hover .filterLinkClean:hover {
    background: #fff3f1 !important;
    color: #d00000 !important
}

#page-search .searchRefResultBox {
    border: 1px solid #eadbd5;
    background: #fff;
    border-radius: 6px;
    overflow: hidden
}

#page-search .searchRefSortLine {
    height: 52px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #eee6e0
}

#page-search .searchRefSortTabs {
    display: flex;
    align-items: center;
    gap: 48px;
    min-width: 0
}

#page-search .searchRefSortTabs .sortInlineLabel {
    display: none
}

#page-search .searchRefSortTabs .filterLinkClean {
    position: relative;
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    height: 52px;
    display: flex;
    align-items: center;
    color: #4b5563 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    border-radius: 0 !important
}

#page-search .searchRefSortTabs .filterLinkClean.active {
    color: #d00000 !important
}

#page-search .searchRefSortTabs .filterLinkClean.active:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: #d00000
}

#page-search .searchRefCount {
    color: #4b5563;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap
}

#page-search .searchRefCount strong {
    color: #d00000;
    font-weight: 1000
}

#page-search .searchRefSelected {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding: 8px 16px;
    border-bottom: 1px solid #eee6e0;
    color: #4b5563;
    font-size: 14px;
    font-weight: 800
}

#page-search .searchRefChip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 30px;
    padding: 0 10px;
    border: 1px solid #eadbd5;
    border-radius: 4px;
    background: #fffafa;
    color: #4b5563;
    font-weight: 800
}

#page-search .searchRefChip a {
    color: #666666;
    font-weight: 1000
}

#page-search .searchRefClear {
    color: #111827;
    font-weight: 900;
    text-decoration: underline
}

#page-search .searchRefResultList {
    display: grid
}

#page-search .searchRefItem {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr) 128px;
    gap: 18px;
    padding: 14px 16px;
    border-bottom: 1px solid #eee6e0;
    background: #fff
}

#page-search .searchRefItem:last-child {
    border-bottom: 0
}

#page-search .searchRefThumb {
    display: block;
    width: 180px;
    height: 86px;
    border-radius: 4px;
    overflow: hidden;
    border: 1px solid #f1ded8;
    background: #fff7f3
}

#page-search .searchRefThumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover
}

#page-search .searchRefItemTitle {
    display: block;
    color: #111827;
    font-size: 17px;
    line-height: 1.25;
    font-weight: 1000;
    margin: 0 0 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-search .searchRefItemDesc {
    margin: 0 0 8px;
    color: #4b5563;
    font-size: 13px;
    line-height: 1.55;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-search .searchRefTagRow {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 6px
}

#page-search .searchRefTag {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 7px;
    border-radius: 3px;
    background: #fff3f1;
    color: #d00000;
    font-size: 12px;
    font-weight: 900
}

#page-search .searchRefTag.blue {
    background: #eef6ff;
    color: #2878c9
}

#page-search .searchRefTag.gray {
    background: #f6f7f9;
    color: #475569
}

#page-search .searchRefMeta {
    display: flex;
    align-items: center;
    gap: 18px;
    color: #666666;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-search .searchRefActions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px
}

#page-search .searchRefDownload,
#page-search .searchRefCollect {
    height: 34px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 1000
}

#page-search .searchRefDownload {
    border: 1px solid #ef4444;
    color: #d00000;
    background: #fff
}

#page-search .searchRefCollect {
    border: 1px solid #d9dfe8;
    color: #374151;
    background: #fff
}

#page-search .searchRefPager {
    min-height: 56px;
    border-top: 1px solid #eee6e0;
    margin: 0;
    padding: 10px 12px
}

#page-search .searchRefPager .pageBtn {
    min-width: 32px;
    height: 30px;
    border-radius: 4px;
    font-size: 13px
}

#page-search .searchRefPager .pageBtn.active {
    background: #d00000;
    border-color: #d00000
}

#page-search .searchRefPager:after {
    content: "20条/页";
    color: #4b5563;
    font-size: 13px;
    font-weight: 800;
    margin-left: 10px
}

#page-search .searchRefSide {
    display: grid;
    gap: 14px
}

#page-search .searchRefSideCard,
#page-search .searchRefNeedCard {
    background: #fff;
    border: 1px solid #eadbd5;
    border-radius: 6px;
    padding: 16px
}

#page-search .searchRefSideHd {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px
}

#page-search .searchRefSideHd h3,
#page-search .searchRefNeedCard h3 {
    margin: 0;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 1000;
    color: #111827
}

#page-search .searchRefSideHd a {
    color: #666666;
    font-size: 13px;
    font-weight: 800
}

#page-search .searchRefHotList {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 7px
}

#page-search .searchRefHotList li {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) 44px;
    gap: 8px;
    align-items: center;
    font-size: 13px;
    color: #374151;
    font-weight: 800
}

#page-search .searchRefHotList span {
    width: 20px;
    height: 18px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #e5e7eb;
    color: #374151;
    font-size: 12px;
    font-weight: 1000
}

#page-search .searchRefHotList li:nth-child(1) span {
    background: #d00000;
    color: #fff
}

#page-search .searchRefHotList li:nth-child(2) span {
    background: #ff8a00;
    color: #fff
}

#page-search .searchRefHotList li:nth-child(3) span {
    background: #f5b027;
    color: #fff
}

#page-search .searchRefHotList a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-search .searchRefHotList b {
    color: #d00000;
    text-align: right;
    font-size: 12px
}

#page-search .searchRefTopicList {
    display: grid;
    gap: 10px
}

#page-search .searchRefTopicList a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #374151;
    font-size: 13px;
    font-weight: 900
}

#page-search .searchRefTopicList span {
    color: #666666;
    font-size: 12px;
    white-space: nowrap
}

#page-search .searchRefNeedCard {
    background: linear-gradient(180deg, #fff3f1, #fff)
}

#page-search .searchRefNeedCard h3 {
    color: #d00000
}

#page-search .searchRefNeedCard p {
    color: #4b5563;
    font-size: 13px;
    line-height: 1.7;
    font-weight: 700;
    margin: 8px 0 14px
}

#page-search .searchRefNeedPrimary,
#page-search .searchRefNeedGhost {
    width: 100%;
    height: 40px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 1000;
    cursor: pointer
}

#page-search .searchRefNeedPrimary {
    color: #fff;
    background: linear-gradient(180deg, #d80000, #c10000);
    border: 1px solid #c10000;
    margin-bottom: 10px
}

#page-search .searchRefNeedGhost {
    color: #111827;
    background: #fff;
    border: 1px solid #ef4444
}

#page-search .searchEmptyV2 {
    border: 0;
    box-shadow: none;
    border-radius: 0;
    margin: 0
}

@media(max-width:1100px) {
    #page-search .searchRefLayout {
        grid-template-columns: 1fr
    }

    #page-search .searchRefSide {
        grid-template-columns: repeat(3, 1fr)
    }

    #page-search .searchRefFilterLine {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(max-width:760px) {
    #page-search .searchRefBar {
        grid-template-columns: 1fr 78px
    }

    #page-search .searchRefFilterLine {
        grid-template-columns: 1fr
    }

    #page-search .searchRefItem {
        grid-template-columns: 120px 1fr
    }

    #page-search .searchRefThumb {
        width: 120px;
        height: 74px
    }

    #page-search .searchRefActions {
        grid-column: 1/-1;
        flex-direction: row
    }

    #page-search .searchRefSide {
        grid-template-columns: 1fr
    }
}

#page-search .searchRefResultBox {
    overflow: visible
}

#page-search .searchRefResultList {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    padding: 16px;
    background: #fff
}

#page-search .searchRefItem {
    position: relative;
    display: flex !important;
    flex-direction: column;
    gap: 0;
    padding: 0 !important;
    min-width: 0;
    min-height: 370px;
    border: 1px solid #eadbd5 !important;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 22px rgba(120, 20, 20, .05);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease
}

#page-search .searchRefItem:hover {
    transform: translateY(-2px);
    border-color: #f0b8aa !important;
    box-shadow: 0 16px 34px rgba(120, 20, 20, .10)
}

#page-search .searchRefItem:before {
    content: "精选";
    position: absolute;
    left: 10px;
    top: 10px;
    z-index: 3;
    min-width: 40px;
    height: 24px;
    padding: 0 8px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d00000;
    background: rgba(255, 244, 242, .96);
    border: 1px solid rgba(239, 68, 68, .18);
    font-size: 12px;
    font-weight: 1000;
    box-shadow: 0 8px 18px rgba(120, 20, 20, .10)
}

#page-search .searchRefItem:nth-child(2):before,
#page-search .searchRefItem:nth-child(7):before {
    content: "热销"
}

#page-search .searchRefItem:nth-child(3):before,
#page-search .searchRefItem:nth-child(8):before {
    content: "新品"
}

#page-search .searchRefItem:nth-child(4):before,
#page-search .searchRefItem:nth-child(9):before {
    content: "推荐"
}

#page-search .searchRefItem:nth-child(5):before,
#page-search .searchRefItem:nth-child(10):before {
    content: "高质"
}

#page-search .searchRefThumb {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 4;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff6f2;
    overflow: hidden;
    display: block
}

#page-search .searchRefThumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .28s ease
}

#page-search .searchRefItem:hover .searchRefThumb img {
    transform: scale(1.035)
}

#page-search .searchRefItemBody {
    padding: 10px 12px 12px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    flex: 1
}

#page-search .searchRefItemTitle {
    margin: 0 0 8px !important;
    color: #111827;
    font-size: 15px !important;
    line-height: 1.45 !important;
    font-weight: 1000;
    white-space: normal !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 43px
}

#page-search .searchRefItemDesc {
    display: none !important
}

#page-search .searchRefTagRow {
    margin: 0 0 8px !important;
    gap: 6px;
    display: flex;
    flex-wrap: wrap
}

#page-search .searchRefTag {
    height: 20px;
    padding: 0 6px;
    font-size: 11px;
    border-radius: 4px
}

#page-search .searchRefTag.gray:nth-child(n+4) {
    display: none
}

#page-search .searchRefMeta {
    margin-top: auto;
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 4px 10px;
    white-space: normal !important;
    overflow: visible !important;
    color: #666666;
    font-size: 11px !important;
    line-height: 1.5
}

#page-search .searchRefMeta span:nth-child(4) {
    display: none
}

#page-search .searchRefActions {
    display: none !important
}

#page-search .searchEmptyV2 {
    grid-column: 1 / -1
}

#page-search .searchRefPager:after {
    content: "20条/页"
}

@media(max-width:1200px) {
    #page-search .searchRefResultList {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }
}

@media(max-width:900px) {
    #page-search .searchRefResultList {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

@media(max-width:640px) {
    #page-search .searchRefResultList {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        padding: 12px
    }

    #page-search .searchRefItem {
        min-height: auto
    }
}

#page-search.searchRefPage .searchRefLayout {
    grid-template-columns: minmax(0, 1fr) 238px;
    gap: 18px
}

#page-search.searchRefPage .searchRefMain {
    min-width: 0
}

#page-search.searchRefPage .searchRefResultBox {
    overflow: visible
}

#page-search.searchRefPage .searchRefResultList {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    padding: 16px !important;
    background: #fff
}

#page-search.searchRefPage .searchRefItem {
    display: block !important;
    min-height: auto !important;
    padding: 0 !important;
    border: 1px solid #E8DED7 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .035) !important;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease
}

#page-search.searchRefPage .searchRefItem:hover {
    transform: translateY(-2px);
    border-color: #ffb7a8 !important;
    box-shadow: 0 10px 26px rgba(230, 0, 18, .08) !important
}

#page-search.searchRefPage .searchRefItem:before {
    left: 8px;
    top: 8px;
    height: 22px;
    min-width: 38px;
    padding: 0 7px;
    font-size: 11px;
    border-radius: 999px
}

#page-search.searchRefPage .searchRefThumb {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-bottom: 1px solid #f2e6df !important;
    background: #fff6f2 !important;
    overflow: hidden !important;
    display: block !important
}

#page-search.searchRefPage .searchRefThumb img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important
}

#page-search.searchRefPage .searchRefItemBody {
    padding: 8px 10px 10px !important;
    min-width: 0
}

#page-search.searchRefPage .searchRefItemTitle {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 42px !important;
    margin: 0 0 6px !important;
    color: #071527 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 850 !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: clip !important
}

#page-search.searchRefPage .searchRefItemDesc {
    display: none !important
}

#page-search.searchRefPage .searchRefTagRow {
    display: flex !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
    margin: 1px 0 6px !important
}

#page-search.searchRefPage .searchRefTag {
    height: 20px !important;
    padding: 0 6px !important;
    border-radius: 4px !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    border: 1px solid #ffd3cd;
    background: #fff4f3;
    color: #E60012
}

#page-search.searchRefPage .searchRefTag.blue {
    color: #2870c8;
    background: #f2f7ff;
    border-color: #d6e8ff
}

#page-search.searchRefPage .searchRefTag.gray {
    color: #667085;
    background: #f8fafc;
    border-color: #e5e7eb
}

#page-search.searchRefPage .searchRefTag.gray:nth-child(n+4) {
    display: none !important
}

#page-search.searchRefPage .searchRefMeta {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3px 6px !important;
    margin: 0 !important;
    color: #667085 !important;
    font-size: 11px !important;
    line-height: 1.6 !important;
    white-space: normal !important;
    overflow: visible !important
}

#page-search.searchRefPage .searchRefMeta span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#page-search.searchRefPage .searchRefMeta span:nth-child(4) {
    display: none !important
}

#page-search.searchRefPage .searchRefActions {
    display: none !important
}

#page-search.searchRefPage .searchRefSide {
    gap: 12px
}

#page-search.searchRefPage .searchRefSideCard,
#page-search.searchRefPage .searchRefNeedCard {
    padding: 12px
}

#page-search.searchRefPage .searchRefSideHd {
    margin-bottom: 8px
}

#page-search.searchRefPage .searchRefSideHd h3,
#page-search.searchRefPage .searchRefNeedCard h3 {
    font-size: 16px
}

#page-search.searchRefPage .searchRefHotList {
    gap: 5px
}

#page-search.searchRefPage .searchRefHotList li {
    grid-template-columns: 20px minmax(0, 1fr) 36px;
    gap: 6px;
    font-size: 12px
}

#page-search.searchRefPage .searchRefHotList span {
    width: 18px;
    height: 17px;
    font-size: 11px
}

#page-search.searchRefPage .searchRefTopicList {
    gap: 8px
}

#page-search.searchRefPage .searchRefTopicList a {
    font-size: 12px
}

#page-search.searchRefPage .searchRefTopicList span {
    font-size: 11px
}

#page-search.searchRefPage .searchRefNeedCard p {
    font-size: 12px;
    margin: 6px 0 12px
}

@media(max-width:1100px) {
    #page-search.searchRefPage .searchRefLayout {
        grid-template-columns: 1fr
    }

    #page-search.searchRefPage .searchRefSide {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media(max-width:900px) {
    #page-search.searchRefPage .searchRefResultList {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }
}

@media(max-width:640px) {
    #page-search.searchRefPage .searchRefResultList {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        padding: 12px !important
    }

    #page-search.searchRefPage .searchRefSide {
        grid-template-columns: 1fr
    }
}

#page-search.searchRefPage .searchRefResultBox {
    overflow: visible !important
}

#page-search.searchRefPage .searchRefResultList {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    padding: 16px !important;
    background: #fff !important
}

#page-search.searchRefPage .searchRefItem {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 1px solid #eadfd8 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(120, 20, 20, .055) !important;
    transform: none !important
}

#page-search.searchRefPage .searchRefItem:hover {
    transform: translateY(-2px) !important;
    border-color: #efb5a8 !important;
    box-shadow: 0 16px 32px rgba(120, 20, 20, .10) !important
}

#page-search.searchRefPage .searchRefItem:before {
    content: "精选";
    position: absolute !important;
    left: 10px !important;
    top: 10px !important;
    z-index: 3 !important;
    width: auto !important;
    min-width: 44px !important;
    height: 26px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #C40000 !important;
    background: rgba(255, 243, 240, .96) !important;
    border: 1px solid rgba(226, 56, 48, .18) !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    box-shadow: 0 8px 18px rgba(120, 20, 20, .10) !important
}

#page-search.searchRefPage .searchRefItem:nth-child(2):before,
#page-search.searchRefPage .searchRefItem:nth-child(7):before {
    content: "热销" !important
}

#page-search.searchRefPage .searchRefItem:nth-child(3):before,
#page-search.searchRefPage .searchRefItem:nth-child(8):before {
    content: "新品" !important
}

#page-search.searchRefPage .searchRefItem:nth-child(4):before,
#page-search.searchRefPage .searchRefItem:nth-child(9):before {
    content: "推荐" !important
}

#page-search.searchRefPage .searchRefItem:nth-child(5):before,
#page-search.searchRefPage .searchRefItem:nth-child(10):before {
    content: "高质" !important
}

#page-search.searchRefPage .searchRefThumb {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 4 !important;
    border: 0 !important;
    border-bottom: 1px solid #f0e3dc !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: #fff7f3 !important
}

#page-search.searchRefPage .searchRefThumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    transform: none !important;
    transition: transform .28s ease !important
}

#page-search.searchRefPage .searchRefItem:hover .searchRefThumb img {
    transform: scale(1.025) !important
}

#page-search.searchRefPage .searchRefItemBody {
    flex: 0 0 auto !important;
    min-height: 70px !important;
    padding: 13px 14px 14px !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    background: #fff !important
}

#page-search.searchRefPage .searchRefItemTitle {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    width: 100% !important;
    min-height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #071527 !important;
    font-size: 16px !important;
    line-height: 1.42 !important;
    font-weight: 1000 !important;
    text-align: left !important;
    white-space: normal !important;
    text-overflow: clip !important
}

#page-search.searchRefPage .searchRefItemDesc,
#page-search.searchRefPage .searchRefTagRow,
#page-search.searchRefPage .searchRefMeta,
#page-search.searchRefPage .searchRefActions {
    display: none !important
}

#page-search.searchRefPage .searchEmptyV2 {
    grid-column: 1 / -1 !important
}

@media(max-width:900px) {
    #page-search.searchRefPage .searchRefResultList {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important
    }
}

@media(max-width:640px) {
    #page-search.searchRefPage .searchRefResultList {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        padding: 12px !important
    }

    #page-search.searchRefPage .searchRefItemBody {
        min-height: 58px !important;
        padding: 10px 10px 12px !important
    }

    #page-search.searchRefPage .searchRefItemTitle {
        font-size: 14px !important
    }
}

@media (min-width:1021px) {
    html {
        scroll-padding-top: 90px !important
    }

    body {
        padding-top: 74px !important
    }

    .siteHeader.dkHeader {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: 74px !important;
        min-height: 74px !important;
        z-index: 99999 !important;
        overflow: visible !important;
        transform: translateZ(0) !important;
        will-change: transform !important;
        contain: none !important;
        backface-visibility: hidden !important
    }

    .siteHeader.dkHeader .dkHeaderWrap,
    .siteHeader.dkHeader .dkTopbar,
    .siteHeader.dkHeader .dkNav,
    .siteHeader.dkHeader .dkRightTools {
        position: relative !important;
        z-index: 2 !important
    }
}

@media (max-width:1020px) {
    html {
        scroll-padding-top: 96px !important
    }

    .siteHeader.dkHeader {
        position: sticky !important;
        top: 0 !important;
        z-index: 99999 !important;
        overflow: visible !important;
        transform: translateZ(0) !important;
        will-change: transform !important
    }
}

@media (min-width:1101px) {
    #page-search.searchRefPage .searchRefLayout {
        align-items: start !important;
        overflow: visible !important
    }

    #page-search.searchRefPage .searchRefMain,
    #page-search.searchRefPage .searchRefResultBox {
        overflow: visible !important
    }

    #page-search.searchRefPage .searchRefSide {
        position: sticky !important;
        top: 94px !important;
        align-self: start !important;
        z-index: 18 !important;
        display: grid !important;
        gap: 12px !important;
        max-height: calc(100vh - 112px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding-right: 2px !important;
        scrollbar-width: thin;
        scrollbar-color: rgba(214, 0, 0, .35) transparent
    }

    #page-search.searchRefPage .searchRefSide::-webkit-scrollbar {
        width: 6px
    }

    #page-search.searchRefPage .searchRefSide::-webkit-scrollbar-thumb {
        background: rgba(214, 0, 0, .28);
        border-radius: 999px
    }

    #page-search.searchRefPage .searchRefSideCard,
    #page-search.searchRefPage .searchRefNeedCard {
        flex: 0 0 auto
    }
}

@media (max-width:1100px) {
    #page-search.searchRefPage .searchRefSide {
        position: static !important;
        max-height: none !important;
        overflow: visible !important
    }
}

#page-search.searchRefPage .searchRefItemBody {
    min-height: 92px !important;
    padding: 11px 10px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    background: #fff !important
}

#page-search.searchRefPage .searchRefItemTitle {
    width: 100% !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #071527 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important;
    text-align: center !important;
    letter-spacing: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    white-space: normal !important;
    text-overflow: clip !important
}

#page-search.searchRefPage .searchRefTagRow {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    margin: 9px 0 0 !important;
    padding: 0 !important
}

#page-search.searchRefPage .searchRefTag {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 25px !important;
    padding: 0 9px !important;
    border-radius: 6px !important;
    border: 1px solid #ffc9c3 !important;
    background: #fff8f6 !important;
    color: #E60012 !important;
    font-size: 0 !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    box-shadow: none !important;
    white-space: nowrap !important
}

#page-search.searchRefPage .searchRefTag::before {
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    color: #E60012 !important
}

#page-search.searchRefPage .searchRefTag:nth-child(1)::before {
    content: "PPT+讲稿"
}

#page-search.searchRefPage .searchRefTag:nth-child(2)::before {
    content: "可下载"
}

#page-search.searchRefPage .searchRefTag:nth-child(3)::before {
    content: "含配套"
}

#page-search.searchRefPage .searchRefTag:nth-child(n+4) {
    display: none !important
}

#page-search.searchRefPage .searchRefItemDesc,
#page-search.searchRefPage .searchRefMeta,
#page-search.searchRefPage .searchRefActions {
    display: none !important
}

@media(max-width:640px) {
    #page-search.searchRefPage .searchRefItemBody {
        min-height: 82px !important;
        padding: 9px 8px 10px !important
    }

    #page-search.searchRefPage .searchRefItemTitle {
        font-size: 13px !important;
        min-height: 36px !important
    }

    #page-search.searchRefPage .searchRefTagRow {
        gap: 5px !important
    }

    #page-search.searchRefPage .searchRefTag {
        height: 22px !important;
        padding: 0 6px !important
    }

    #page-search.searchRefPage .searchRefTag::before {
        font-size: 11px !important
    }
}

:root {
    --bg: #F8F4F1 !important;
    --panel: #FFFFFF !important;
    --panel2: #FBF7F4 !important;
    --text: #222222 !important;
    --muted: #666666 !important;
    --weak: #999999 !important;
    --line: #E8DED7 !important;
    --shadow: 0 8px 22px rgba(80, 45, 32, .06) !important;
    --red: #C40000 !important;
    --red2: #E60012 !important;
    --red3: #A80000 !important;
    --gold: #F4C55A !important;
    --gold2: #FFD978 !important;
    --radius: 14px !important;
    --dk-red: #C40000 !important;
    --dk-red-deep: #A80000 !important;
    --dk-red-soft: #FFF4F2 !important;
    --dk-gold: #F4C55A !important;
    --dk-border: #E8DED7 !important;
    --dk-bg: #F8F4F1 !important;
    --dk-text: #222222 !important;
    --dk-muted: #666666 !important
}

html {
    scroll-padding-top: 84px
}

body {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
    background: linear-gradient(180deg, #FBF8F5 0%, #F8F4F1 52%, #F7F3EF 100%) !important;
    color: #222222 !important;
    -webkit-font-smoothing: antialiased
}

.wrap {
    max-width: 1320px !important
}

.siteHeader,
.siteHeader.dkHeader {
    background: linear-gradient(90deg, #A80000 0%, #C40000 50%, #A80000 100%) !important;
    box-shadow: 0 8px 22px rgba(168, 0, 0, .12) !important;
    border-bottom: 1px solid rgba(244, 197, 90, .18) !important
}

.dkHeaderWrap,
.topbar,
.dkTopbar {
    min-height: 74px !important
}

.brand,
.dkBrand {
    color: #fff !important
}

.navLink,
.dkNavLink {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #fff !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important
}

.navLink.active,
.dkNavLink.active {
    color: #fff !important;
    background: transparent !important
}

.navLink.active:after,
.dkNavLink.active:after {
    background: #F4C55A !important;
    box-shadow: 0 2px 8px rgba(244, 197, 90, .42) !important
}

.searchInput,
.dkSearchInput,
input[type="search"] {
    background: #fff !important;
    border: 1px solid rgba(232, 222, 215, .95) !important;
    color: #222 !important;
    box-shadow: none !important
}

.searchInput::placeholder,
.dkSearchInput::placeholder {
    color: #999 !important
}

.btn.primary,
.dkMemberBtn,
.dkLoginBtn,
.vipBtn,
.memberBtn {
    background: linear-gradient(180deg, #FFD978 0%, #F4C55A 100%) !important;
    color: #6B3400 !important;
    border-color: rgba(244, 197, 90, .55) !important;
    box-shadow: none !important
}

.btn.brand,
.btn.red,
.searchBtn,
.homeSearchBtn,
.searchRefSearchBtn,
.pageBtn.active,
.dkRedBtn,
.downloadBtn,
.vipPrimaryBtn {
    background: #C40000 !important;
    color: #fff !important;
    border-color: #C40000 !important;
    box-shadow: 0 8px 18px rgba(196, 0, 0, .12) !important
}

.btn.brand:hover,
.btn.red:hover,
.searchBtn:hover,
.homeSearchBtn:hover,
.searchRefSearchBtn:hover,
.dkRedBtn:hover,
.downloadBtn:hover {
    background: #A80000 !important;
    border-color: #A80000 !important;
    filter: none !important
}

.panel,
.mediaCard,
.resourceCard,
.listItem,
.iconItem,
.memberCard,
.noteBox,
.searchRefBox,
.searchRefSideCard,
.channelSection,
.channelCard,
.topicPanel,
.accountCard,
.legalPageCard,
.dkFooterRefMain,
.dkFooterRef {
    background: #fff !important;
    border: 1px solid #E8DED7 !important;
    box-shadow: 0 8px 22px rgba(80, 45, 32, .045) !important
}

.panel,
.searchRefBox,
.searchRefSideCard,
.channelSection,
.topicPanel,
.accountCard,
.legalPageCard {
    border-radius: 14px !important
}

.mediaCard,
.resourceCard,
.channelCard {
    border-radius: 12px !important;
    overflow: hidden
}

.panelHd,
.panelBd,
.searchRefHead,
.channelFilterBar {
    border-color: #E8DED7 !important
}

.muted,
.metaRow,
.footerNote,
.dkFooterRefDesc,
.dkFooterRefLink,
.dkFooterRefServiceTime {
    color: #666 !important
}

h1,
h2,
h3,
h4,
.panelHd h2,
.channelTitle,
.searchRefTitle {
    color: #222 !important;
    font-weight: 700 !important
}

.chip,
.pill,
.tabBtn,
.pageBtn,
.searchRefSelect,
.select {
    background: #fff !important;
    border: 1px solid #E8DED7 !important;
    color: #666 !important;
    box-shadow: none !important
}

.chip.red,
.pill.red,
.tabBtn.active,
.searchRefSortBtn.active,
.filterBtn.active,
.channelHotTag.active {
    background: #FFF4F2 !important;
    border-color: rgba(196, 0, 0, .24) !important;
    color: #C40000 !important
}

.thumbBadge,
.badge,
.tagHot,
.searchRefCoverBadge {
    background: #C40000 !important;
    color: #fff !important
}

.thumbBadge.light {
    background: #fff !important;
    color: #C40000 !important;
    border: 1px solid rgba(196, 0, 0, .20) !important
}

.resourceCard:hover,
.mediaCard:hover,
.channelCard:hover,
.searchRefItem:hover {
    transform: translateY(-2px);
    border-color: rgba(196, 0, 0, .22) !important;
    box-shadow: 0 12px 26px rgba(80, 45, 32, .08) !important
}

a:hover {
    color: #C40000
}

footer,
footer.dkFooterRef {
    background: #fff !important;
    border-top: 1px solid #E8DED7 !important;
    color: #222 !important
}

.dkFooterRefTitle,
.footerTitle {
    color: #C40000 !important;
    font-size: 16px !important;
    font-weight: 700 !important
}

.dkFooterRefBottom,
.copyright {
    border-color: #E8DED7 !important;
    color: #666 !important
}

.dkFooterRefIcon,
.footerIcon,
.icon {
    color: #C40000 !important;
    background: #FFF4F2 !important;
    border-color: rgba(196, 0, 0, .16) !important
}

.breadcrumb {
    color: #666 !important
}

.breadcrumb a {
    color: #C40000 !important
}

.breadcrumb .cur {
    color: #222 !important
}

.page,
.dkPage {
    background: transparent !important
}

.home2,
.pv-home,
.searchRefPage,
.channelPage {
    background: transparent !important
}

.searchRefTag,
.channelTag,
.resourceMetaTag {
    border-radius: 999px !important;
    background: #FFF4F2 !important;
    color: #C40000 !important;
    border: 1px solid rgba(196, 0, 0, .16) !important
}

.searchRefItemMeta,
.channelMeta,
.cardMeta {
    color: #666 !important
}

.searchRefItemTitle,
.channelCardTitle,
.resourceCard .mediaTitle {
    color: #222 !important;
    font-weight: 600 !important
}

.searchRefSideRankNum {
    background: #F1E7DF !important;
    color: #666 !important
}

.searchRefSideRankItem:nth-child(-n+3) .searchRefSideRankNum {
    background: #C40000 !important;
    color: #fff !important
}

.searchRefSideRankCount {
    color: #C40000 !important
}

.searchRefEmpty,
.emptyState {
    background: #fff !important;
    border-color: #E8DED7 !important
}

.faqItem,
.faqRow,
.accordionItem {
    border-color: #E8DED7 !important;
    background: #fff !important
}

.faqItem.active,
.accordionItem.active {
    background: #FFFDFC !important
}

.resourceCard img,
.mediaCard img,
.channelCard img,
.searchRefItem img {
    filter: saturate(.94) contrast(.98)
}

@media(max-width:1020px) {
    .wrap {
        padding-left: 16px !important;
        padding-right: 16px !important
    }

    .navLink,
    .dkNavLink {
        font-size: 14px !important
    }

    .dkHeaderWrap,
    .topbar,
    .dkTopbar {
        min-height: 64px !important
    }
}

/* ===== 搜索结果页最终版：固定列表视图 ===== */
#page-search.searchRefPage .searchRefLayout {
    grid-template-columns: minmax(0, 1fr) 280px !important;
    gap: 18px !important;
    align-items: start !important
}

#page-search.searchRefPage .searchRefFilterLine {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-bottom: 12px !important;
    padding: 12px !important;
    background: #fff !important;
    border: 1px solid var(--line) !important;
    border-radius: 14px !important;
    box-shadow: none !important
}

#page-search.searchRefPage .searchRefFilterBox {
    min-width: 0 !important;
    background: #fff !important;
    border: 1px solid #E8DED7 !important;
    border-radius: 10px !important;
    padding: 9px 10px !important
}

#page-search.searchRefPage .filterLinksClean {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 24px !important;
    overflow: hidden !important
}

#page-search.searchRefPage .filterLinkClean {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 24px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    color: #666 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    white-space: nowrap !important
}

#page-search.searchRefPage .filterLinkClean.active {
    background: #C40000 !important;
    border-color: #C40000 !important;
    color: #fff !important
}

#page-search.searchRefPage .searchQuickFilterLine {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin: 0 0 12px !important;
    padding: 11px 14px !important;
    background: #fff !important;
    border: 1px solid var(--line) !important;
    border-radius: 14px !important
}

#page-search.searchRefPage .searchQuickLabel {
    color: #666;
    font-size: 13px;
    font-weight: 700;
    margin-right: 2px
}

#page-search.searchRefPage .searchQuickChip {
    display: inline-flex;
    align-items: center;
    height: 28px;
    padding: 0 13px;
    border-radius: 999px;
    border: 1px solid #E8DED7;
    background: #FFF;
    color: #333;
    font-size: 12px;
    font-weight: 700
}

#page-search.searchRefPage .searchQuickChip.active,
#page-search.searchRefPage .searchQuickChip:hover {
    border-color: #C40000;
    background: #FFF4F2;
    color: #C40000
}

#page-search.searchRefPage .searchRefSortLine {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid var(--line) !important;
    background: #fff !important
}

#page-search.searchRefPage .searchRefSortTabs {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important
}

#page-search.searchRefPage .sortInlineLabel {
    color: #666 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-right: 2px !important
}

#page-search.searchRefPage .searchRefCount {
    flex: 0 0 auto !important;
    color: #666 !important;
    font-size: 13px !important;
    white-space: nowrap !important
}

#page-search.searchRefPage .searchRefCount strong {
    color: #C40000 !important
}

#page-search.searchRefPage .searchRefSelected {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    padding: 10px 16px !important;
    background: #FFF !important;
    border-bottom: 1px solid #F0E7E1 !important;
    color: #666 !important;
    font-size: 12px !important
}

#page-search.searchRefPage .searchRefChip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    height: 26px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: #F8F4F1 !important;
    border: 1px solid #E8DED7 !important;
    color: #555 !important;
    font-size: 12px !important;
    font-weight: 600 !important
}

#page-search.searchRefPage .searchRefClear {
    color: #C40000 !important;
    font-weight: 700 !important
}

#page-search.searchRefPage .searchRefResultBox {
    background: #fff !important;
    border: 1px solid var(--line) !important;
    border-radius: 14px !important;
    overflow: visible !important;
    box-shadow: 0 8px 24px rgba(60, 30, 20, .04) !important
}

#page-search.searchRefPage .searchRefResultList {
    background: #fff !important;
    padding: 14px 16px !important
}

#page-search.searchRefPage .searchRefResultList.is-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important
}

#page-search.searchRefPage .searchRefResultList.is-card {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important
}

#page-search.searchRefPage .searchRefItem {
    position: relative !important;
    background: #fff !important;
    border: 1px solid #E8DED7 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    overflow: hidden !important;
    min-height: 0 !important;
    transform: none !important
}

#page-search.searchRefPage .searchRefItem:before {
    display: none !important;
    content: none !important
}

#page-search.searchRefPage .searchRefItem:hover {
    border-color: #D8B9AD !important;
    box-shadow: 0 8px 22px rgba(60, 30, 20, .07) !important;
    transform: translateY(-1px) !important
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
    display: grid !important;
    grid-template-columns: 188px minmax(0, 1fr) 142px !important;
    gap: 16px !important;
    align-items: center !important;
    padding: 12px !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefItem {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important
}

#page-search.searchRefPage .searchRefThumb {
    display: block !important;
    overflow: hidden !important;
    background: #FFF4F2 !important;
    border: 1px solid #F0E4DE !important;
    border-radius: 10px !important;
    flex: 0 0 auto !important
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
    width: 188px !important;
    height: 136px !important;
    aspect-ratio: auto !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefThumb {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3/4 !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-bottom: 1px solid #F0E4DE !important
}

#page-search.searchRefPage .searchRefThumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
    transition: transform .25s ease !important
}

#page-search.searchRefPage .searchRefItem:hover .searchRefThumb img {
    transform: scale(1.018) !important
}

#page-search.searchRefPage .searchRefItemBody {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefItemBody {
    padding: 12px 12px 8px !important;
    justify-content: flex-start !important
}

#page-search.searchRefPage .searchRefItemTitle {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    margin: 0 !important;
    color: #222 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    text-align: left !important;
    min-height: 0 !important;
    white-space: normal !important;
    text-overflow: clip !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefItemTitle {
    text-align: center !important;
    font-size: 14px !important;
    min-height: 40px !important
}

#page-search.searchRefPage .searchRefItemDesc {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    margin: 0 !important;
    color: #666 !important;
    font-size: 13px !important;
    line-height: 1.65 !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefItemDesc {
    display: none !important
}

#page-search.searchRefPage .searchRefTagRow {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: flex-start !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefTagRow {
    justify-content: center !important;
    margin-top: 2px !important
}

#page-search.searchRefPage .searchRefTag {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 24px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    border: 1px solid #F0D8D0 !important;
    background: #FFF8F6 !important;
    color: #C40000 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    white-space: nowrap !important
}

#page-search.searchRefPage .searchRefTag::before {
    display: none !important;
    content: none !important
}

#page-search.searchRefPage .searchRefTag.green {
    color: #168A51 !important;
    background: #F1FBF6 !important;
    border-color: #CFEBDD !important
}

#page-search.searchRefPage .searchRefTag.gold {
    color: #B16C00 !important;
    background: #FFF7E5 !important;
    border-color: #F3D9A7 !important
}

#page-search.searchRefPage .searchRefMeta {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #666 !important;
    font-size: 12px !important;
    line-height: 1.5 !important
}

#page-search.searchRefPage .searchRefMeta span {
    display: inline-flex !important;
    align-items: center !important;
    color: #666 !important;
    white-space: nowrap !important
}

#page-search.searchRefPage .searchRefMeta span+span:before {
    content: "·";
    margin: 0 7px;
    color: #B8AAA2
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefMeta {
    justify-content: center !important;
    font-size: 11px !important;
    margin-top: 2px !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefMeta span:nth-child(n+4) {
    display: none !important
}

#page-search.searchRefPage .searchRefActions {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    align-items: stretch !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefActions {
    padding: 0 12px 12px !important;
    margin-top: auto !important
}

#page-search.searchRefPage .searchRefDownload,
#page-search.searchRefPage .searchRefCollect {
    height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    border: 1px solid #C40000 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: nowrap !important
}

#page-search.searchRefPage .searchRefDownload {
    background: #C40000 !important;
    color: #fff !important
}

#page-search.searchRefPage .searchRefCollect {
    background: #fff !important;
    color: #C40000 !important
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefCollect {
    display: none !important
}

#page-search.searchRefPage .searchRefSide {
    display: grid !important;
    gap: 12px !important
}

#page-search.searchRefPage .searchRefNeedGhost {
    display: none !important
}

#page-search.searchRefPage .searchRefSideCard,
#page-search.searchRefPage .searchRefNeedCard {
    border: 1px solid var(--line) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: none !important;
    padding: 14px !important
}

#page-search.searchRefPage .searchRefNeedCard {
    background: #FFF7F6 !important
}

#page-search.searchRefPage .searchRefNeedPrimary {
    height: 38px !important;
    border-radius: 8px !important;
    background: #C40000 !important;
    color: #fff !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important
}

@media(max-width:1200px) {
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 160px minmax(0, 1fr) !important
    }

    #page-search.searchRefPage .searchRefActions {
        grid-column: 1/-1 !important;
        flex-direction: row !important
    }

    #page-search.searchRefPage .searchRefLayout {
        grid-template-columns: 1fr !important
    }

    #page-search.searchRefPage .searchRefSide {
        position: static !important;
        max-height: none !important;
        overflow: visible !important
    }
}

@media(max-width:900px) {
    #page-search.searchRefPage .searchRefFilterLine {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    #page-search.searchRefPage .searchRefResultList.is-card {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 1fr !important
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16/9 !important
    }

    #page-search.searchRefPage .searchRefSortLine {
        flex-wrap: wrap !important
    }
}

@media(max-width:560px) {
    #page-search.searchRefPage .searchRefFilterLine {
        grid-template-columns: 1fr !important
    }

    #page-search.searchRefPage .searchRefResultList.is-card {
        grid-template-columns: 1fr !important
    }
}


/* ===== 搜索页精修：20条分页 / 关键词高亮 / 层级拉开 / 按钮降噪 ===== */
#page-search.searchRefPage .searchRefSortTabs .filterLinkClean:first-of-type {
    min-width: 82px !important
}

#page-search.searchRefPage .searchRefResultList {
    padding: 16px !important
}

#page-search.searchRefPage .searchRefResultList.is-list {
    gap: 14px !important
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
    grid-template-columns: 172px minmax(0, 1fr) 126px !important;
    gap: 18px !important;
    align-items: start !important;
    padding: 14px !important;
    border-color: #E8DED7 !important;
    border-radius: 14px !important;
    background: #fff !important
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
    width: 172px !important;
    height: 124px !important;
    border-radius: 12px !important;
    background: #FFF8F2 !important
}

#page-search.searchRefPage .searchRefItemBody {
    justify-content: flex-start !important;
    gap: 9px !important;
    padding-top: 1px !important
}

#page-search.searchRefPage .searchRefItemTitle {
    font-size: 16px !important;
    line-height: 1.42 !important;
    font-weight: 700 !important;
    color: #222 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    min-height: auto !important
}

#page-search.searchRefPage .searchRefItemDesc {
    font-size: 13.5px !important;
    line-height: 1.72 !important;
    color: #666 !important;
    margin: 0 !important;
    max-width: 760px !important
}

#page-search.searchRefPage .searchRefTagRow {
    gap: 7px !important;
    margin-top: 1px !important
}

#page-search.searchRefPage .searchRefTag {
    height: 24px !important;
    padding: 0 9px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #A80000 !important;
    background: #FFF8F6 !important;
    border-color: #EAD3CA !important
}

#page-search.searchRefPage .searchRefTag.green {
    color: #247A50 !important;
    background: #F5FBF7 !important;
    border-color: #D9EDDF !important
}

#page-search.searchRefPage .searchRefTag.gold {
    color: #8A5A00 !important;
    background: #FFF9EC !important;
    border-color: #ECD9AA !important
}

#page-search.searchRefPage .searchRefMeta {
    margin-top: 2px !important;
    padding-top: 8px !important;
    border-top: 1px dashed #EFE3DC !important;
    font-size: 12px !important;
    color: #777 !important;
    line-height: 1.55 !important
}

#page-search.searchRefPage .searchRefMeta span {
    color: #777 !important;
    font-weight: 400 !important
}

#page-search.searchRefPage .searchRefActions {
    align-self: stretch !important;
    justify-content: flex-start !important;
    padding-top: 3px !important;
    gap: 8px !important
}

#page-search.searchRefPage .searchRefDownload,
#page-search.searchRefPage .searchRefCollect {
    height: 32px !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    transition: background .16s ease, border-color .16s ease, color .16s ease !important
}

#page-search.searchRefPage .searchRefDownload {
    background: #FFF4F2 !important;
    color: #A80000 !important;
    border-color: #E4C5BA !important
}

#page-search.searchRefPage .searchRefDownload:hover {
    background: #C40000 !important;
    color: #fff !important;
    border-color: #C40000 !important
}

#page-search.searchRefPage .searchRefCollect {
    background: #fff !important;
    color: #666 !important;
    border-color: #E8DED7 !important
}

#page-search.searchRefPage .searchRefCollect:hover {
    background: #F8F4F1 !important;
    color: #A80000 !important;
    border-color: #D9C7BC !important
}

#page-search.searchRefPage .searchRefHighlight {
    display: inline !important;
    padding: 0 2px !important;
    border-radius: 3px !important;
    background: linear-gradient(180deg, transparent 45%, rgba(244, 197, 90, .42) 45%) !important;
    color: #A80000 !important;
    font-weight: 700 !important
}

#page-search.searchRefPage .searchRefSide>.searchRefSideCard:nth-of-type(n+3) {
    display: none !important
}

#page-search.searchRefPage .searchRefSide>.searchRefNeedCard~.searchRefNeedCard {
    display: none !important
}

#page-search.searchRefPage .searchRefSide> :not(.searchRefSideCard):not(.searchRefNeedCard) {
    display: none !important
}

#page-search.searchRefPage .searchRefNeedCard h3 {
    font-size: 16px !important;
    color: #A80000 !important;
    margin: 0 0 8px !important
}

#page-search.searchRefPage .searchRefNeedPrimary {
    background: #FFF4F2 !important;
    color: #A80000 !important;
    border: 1px solid #E4C5BA !important;
    border-radius: 8px !important;
    box-shadow: none !important
}

#page-search.searchRefPage .searchRefNeedPrimary:hover {
    background: #C40000 !important;
    color: #fff !important;
    border-color: #C40000 !important
}

#page-search.searchRefPage .filterLinkClean.active {
    background: #A80000 !important;
    border-color: #A80000 !important;
    color: #fff !important
}

@media(max-width:1200px) {
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 150px minmax(0, 1fr) !important
    }

    #page-search.searchRefPage .searchRefActions {
        grid-column: 1/-1 !important;
        flex-direction: row !important;
        padding-top: 0 !important
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
        width: 150px !important;
        height: 108px !important
    }
}

@media(max-width:760px) {
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 1fr !important
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16/9 !important
    }

    #page-search.searchRefPage .searchRefItemTitle {
        font-size: 15px !important
    }

    .searchRefActions {
        grid-column: auto !important
    }
}



/* ===== Search page final tuning: hierarchy labels and quiet buttons ===== */
#page-search.searchRefPage .searchRefMeta {
    gap: 9px 15px !important;
    padding-top: 10px !important;
    border-top: 1px dashed #E8DED7 !important;
}

#page-search.searchRefPage .searchRefMeta span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    color: #777 !important;
    white-space: nowrap !important;
}

#page-search.searchRefPage .searchRefMeta span+span:before {
    display: none !important;
    content: none !important;
}

#page-search.searchRefPage .searchRefMeta em {
    font-style: normal !important;
    color: #999 !important;
    font-weight: 500 !important;
}

#page-search.searchRefPage .searchRefMeta b {
    font-weight: 600 !important;
    color: #444 !important;
}

#page-search.searchRefPage .searchRefDownload {
    background: #FFF4F2 !important;
    color: #A80000 !important;
    border-color: #E4C5BA !important;
}

#page-search.searchRefPage .searchRefDownload:hover {
    background: #FCEAE6 !important;
    color: #A80000 !important;
    border-color: #D9B8AE !important;
}

#page-search.searchRefPage .searchRefCollect {
    background: #fff !important;
    color: #666 !important;
    border-color: #E8DED7 !important;
}

#page-search.searchRefPage .searchRefCollect:hover {
    background: #F8F4F1 !important;
    color: #444 !important;
    border-color: #D9C7BC !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefMeta span:nth-child(n+5) {
    display: none !important;
}

#page-search.searchRefPage .searchRefSide>section:nth-child(n+4) {
    display: none !important;
}


/* ===== 搜索页最终修正：仅保留列表视图；列表缩略图 16:9 ===== */
#page-search.searchRefPage .searchRefViewSwitch {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

#page-search.searchRefPage .searchRefResultList {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}

#page-search.searchRefPage .searchRefResultList.is-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem,
#page-search.searchRefPage .searchRefResultList.is-card .searchRefItem {
    display: grid !important;
    grid-template-columns: 172px minmax(0, 1fr) 126px !important;
    gap: 18px !important;
    align-items: start !important;
    padding: 14px !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb,
#page-search.searchRefPage .searchRefResultList.is-card .searchRefThumb {
    width: 172px !important;
    height: auto !important;
    aspect-ratio: 16/9 !important;
    border-radius: 12px !important;
    border: 1px solid #F0E4DE !important;
    overflow: hidden !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb img,
#page-search.searchRefPage .searchRefResultList.is-card .searchRefThumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefItemBody {
    padding: 0 !important;
    justify-content: flex-start !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefItemTitle {
    text-align: left !important;
    font-size: 16px !important;
    min-height: auto !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefItemDesc {
    display: -webkit-box !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefTagRow {
    justify-content: flex-start !important;
    margin-top: 1px !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefMeta {
    justify-content: flex-start !important;
    font-size: 12px !important;
    margin-top: 2px !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefMeta span:nth-child(n+4) {
    display: inline-flex !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefActions {
    padding: 3px 0 0 !important;
    margin: 0 !important;
}

#page-search.searchRefPage .searchRefResultList.is-card .searchRefCollect {
    display: inline-flex !important;
}

@media(max-width:1200px) {

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem,
    #page-search.searchRefPage .searchRefResultList.is-card .searchRefItem {
        grid-template-columns: 150px minmax(0, 1fr) !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb,
    #page-search.searchRefPage .searchRefResultList.is-card .searchRefThumb {
        width: 150px !important;
        height: auto !important;
        aspect-ratio: 16/9 !important;
    }
}

@media(max-width:760px) {

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem,
    #page-search.searchRefPage .searchRefResultList.is-card .searchRefItem {
        grid-template-columns: 1fr !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb,
    #page-search.searchRefPage .searchRefResultList.is-card .searchRefThumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16/9 !important;
    }
}


/* 搜索结果列表：使用上传的16:9资料预览图 */
#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
    aspect-ratio: 16/9 !important;
    overflow: hidden !important;
    background: #fff8f3 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}


/* ===== 搜索页列表按钮最终修正：白底红字 + 收藏资源 ===== */
#page-search.searchRefPage .searchRefResultList .searchRefActions {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 8px !important;
    padding-top: 3px !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefDownload,
#page-search.searchRefPage .searchRefResultList .searchRefCollect {
    height: 32px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
    transition: background .16s ease, border-color .16s ease, color .16s ease !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefDownload {
    background: #fff !important;
    color: #A80000 !important;
    border: 1px solid #C40000 !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefDownload:hover {
    background: #FFF4F2 !important;
    color: #A80000 !important;
    border-color: #A80000 !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefDownloadIcon {
    width: 16px !important;
    height: 16px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    color: #A80000 !important;
    border: 1px solid #F1CFC7 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefCollect {
    background: #fff !important;
    color: #4B5563 !important;
    border: 1px solid #E8DED7 !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefCollect:hover {
    background: #F8F4F1 !important;
    color: #A80000 !important;
    border-color: #D9C7BC !important;
}

@media(max-width:1200px) {
    #page-search.searchRefPage .searchRefResultList .searchRefActions {
        grid-column: 1/-1 !important;
        flex-direction: row !important;
        padding-top: 0 !important;
    }

    #page-search.searchRefPage .searchRefResultList .searchRefDownload,
    #page-search.searchRefPage .searchRefResultList .searchRefCollect {
        flex: 1 1 0 !important;
    }
}



/* ===== 首页 › 搜索：资源列表板块按参考图重做（仅搜索页生效） ===== */
#page-search.searchRefPage .searchRefResultList {
    display: grid !important;
    gap: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border-top: 1px solid #EFE6E0 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list {
    grid-template-columns: 1fr !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
    display: grid !important;
    grid-template-columns: 252px minmax(0, 1fr) 132px !important;
    column-gap: 26px !important;
    align-items: start !important;
    padding: 22px 18px !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #EFE6E0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem:last-child {
    border-bottom: 0 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem:hover {
    background: #FFFCFA !important;
    box-shadow: none !important;
    border-color: #EFE6E0 !important;
    transform: none !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
    width: 252px !important;
    height: auto !important;
    aspect-ratio: 16/9 !important;
    display: block !important;
    border: 0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #FFF6F2 !important;
    box-shadow: none !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem:hover .searchRefThumb img {
    transform: none !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItemBody {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 9px !important;
    padding: 2px 0 0 !important;
    min-width: 0 !important;
    background: transparent !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItemTitle {
    margin: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    color: #222 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    white-space: normal !important;
}

#page-search.searchRefPage .searchRefHighlight {
    padding: 0 !important;
    background: transparent !important;
    color: #C40000 !important;
    font-weight: 800 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefItemDesc {
    margin: 0 !important;
    max-width: 820px !important;
    color: #666 !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
    overflow: hidden !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefTagRow {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefTag {
    height: 26px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid #F0D8D0 !important;
    background: #FFF7F5 !important;
    color: #C40000 !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefTag.green {
    color: #C40000 !important;
    background: #FFF7F5 !important;
    border-color: #F0D8D0 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefTag.gold {
    color: #B46B00 !important;
    background: #FFF8EC !important;
    border-color: #F0DFC1 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    flex-wrap: wrap !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    color: #999 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    white-space: normal !important;
    overflow: visible !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta span {
    display: inline-flex !important;
    align-items: center !important;
    color: #999 !important;
    white-space: nowrap !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta span+span::before {
    content: "|" !important;
    margin: 0 11px !important;
    color: #E5DAD4 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta em {
    display: inline !important;
    margin: 0 4px 0 0 !important;
    color: #999 !important;
    font-style: normal !important;
    font-weight: 400 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta b {
    display: inline !important;
    color: #444 !important;
    font-weight: 600 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefActions {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 4px 0 0 !important;
    margin: 0 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefDownload,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefCollect {
    width: 128px !important;
    height: 38px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefDownload {
    background: #fff !important;
    color: #C40000 !important;
    border: 1px solid #EC8E8E !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefDownload:hover {
    background: #FFF6F4 !important;
    border-color: #C40000 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefDownloadIcon {
    width: 15px !important;
    height: 15px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    color: #C40000 !important;
    border: 1px solid #F1CFC7 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefCollect {
    background: #fff !important;
    color: #4B5563 !important;
    border: 1px solid #E7DFDA !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefCollect:hover {
    color: #A80000 !important;
    background: #FFFCFA !important;
    border-color: #D8C8C0 !important;
}

@media(max-width:1200px) {
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 220px minmax(0, 1fr) !important;
        row-gap: 12px !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
        width: 220px !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefActions {
        grid-column: 1 / -1 !important;
        flex-direction: row !important;
        padding-top: 0 !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefDownload,
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefCollect {
        width: auto !important;
        flex: 1 1 0 !important;
    }
}

@media(max-width:760px) {
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 1fr !important;
        padding: 16px !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
        width: 100% !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItemTitle {
        font-size: 16px !important;
        -webkit-line-clamp: 2 !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItemDesc {
        -webkit-line-clamp: 2 !important;
    }
}


/* ===== 搜索结果页资源卡片信息行间距修正：仅作用于 首页 › 搜索结果 ===== */
#page-search.searchRefPage .searchRefResultList.is-list .searchRefItemBody {
    gap: 12px !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta {
    margin: 8px 0 0 !important;
    padding: 10px 14px 11px !important;
    min-height: 42px !important;
    align-items: center !important;
    gap: 6px 0 !important;
    line-height: 1.7 !important;
    box-sizing: border-box !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta span {
    min-height: 22px !important;
    align-items: center !important;
    letter-spacing: .15px !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta span+span::before {
    margin: 0 16px !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta em {
    margin-right: 6px !important;
}

#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta b {
    letter-spacing: .2px !important;
}

@media(max-width:760px) {
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItemBody {
        gap: 10px !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta {
        margin-top: 7px !important;
        padding: 8px 10px 9px !important;
        min-height: 38px !important;
    }

    #page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta span+span::before {
        margin: 0 10px !important;
    }
}


/* 内容页功能区扩展：资源简介 / 资源亮点 / 适用对象 / 适用场景 / 讲稿预览 / 下载说明 / FAQ */
#page-resource .resourceArticleLead {
    margin: 0 0 12px !important;
    color: #2f343b !important;
    font-size: 14px !important;
    line-height: 1.85 !important;
    font-weight: 400 !important
}

#page-resource .resourceInfoPillRow {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin: 12px 0 0 !important
}

#page-resource .resourceInfoPill {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: #fff6f2 !important;
    border: 1px solid #f0dad2 !important;
    color: #A80000 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important
}

#page-resource .resourceFeatureGrid,
#page-resource .resourceAudienceGrid,
#page-resource .resourceSceneGrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 10px !important
}

#page-resource .resourceFeatureItem,
#page-resource .resourceAudienceItem,
#page-resource .resourceSceneItem {
    border: 1px solid #f0dad2 !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, #fff, #fff8f5) !important;
    padding: 12px 13px !important;
    min-height: 88px !important
}

#page-resource .resourceFeatureItem b,
#page-resource .resourceAudienceItem b,
#page-resource .resourceSceneItem b {
    display: block !important;
    margin: 0 0 6px !important;
    color: #A80000 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important
}

#page-resource .resourceFeatureItem p,
#page-resource .resourceAudienceItem p,
#page-resource .resourceSceneItem p {
    margin: 0 !important;
    color: #2f343b !important;
    font-size: 13px !important;
    line-height: 1.7 !important
}

#page-resource .resourceScriptNotice {
    margin: 0 0 12px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    background: #fff8ef !important;
    border: 1px dashed #efd1b6 !important;
    color: #6a3d00 !important;
    font-size: 13px !important;
    line-height: 1.75 !important;
    font-weight: 600 !important
}

#page-resource .resourceScriptPreviewBox {
    display: grid !important;
    gap: 10px !important;
    margin-top: 10px !important
}

#page-resource .resourceScriptStep {
    border: 1px solid #f0dad2 !important;
    border-radius: 12px !important;
    background: #fff !important;
    padding: 12px 14px !important
}

#page-resource .resourceScriptStep h3 {
    margin: 0 0 6px !important;
    color: #111827 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    font-weight: 900 !important
}

#page-resource .resourceScriptStep p {
    margin: 0 !important;
    color: #2f343b !important;
    font-size: 13px !important;
    line-height: 1.8 !important
}

#page-resource .resourceDownloadNoteGrid ul {
    margin: 0 !important
}

@media (max-width:760px) {

    #page-resource .resourceFeatureGrid,
    #page-resource .resourceAudienceGrid,
    #page-resource .resourceSceneGrid,
    #page-resource .resourceDownloadNoteGrid {
        grid-template-columns: 1fr !important
    }
}


/* ===== 专题页 SEO 正文布局优化：全宽简介 + 左右结构 ===== */
#page-special .topicSeoIntroPanel {
    margin-top: 18px;
    border-radius: 16px;
    border: 1px solid #eee3dc;
    background: #fff;
    box-shadow: 0 12px 30px rgba(34, 24, 18, .055);
    overflow: hidden !important
}

#page-special .topicSeoIntroFull {
    padding: 24px 30px 26px;
    position: relative;
    background: linear-gradient(180deg, #fff 0%, #fffdfb 100%)
}

#page-special .topicSeoIntroFull:before {
    content: "";
    position: absolute;
    left: 0;
    top: 24px;
    width: 5px;
    height: 25px;
    border-radius: 0 999px 999px 0;
    background: #d71920
}

#page-special .topicSeoIntroFull .topicIntroTitle {
    margin: 0 0 14px;
    padding-left: 0;
    font-size: 22px;
    line-height: 1.25;
    color: #17110e;
    font-weight: 1000;
    letter-spacing: .1px
}

#page-special .topicSeoIntroFull .topicIntroCopy {
    max-width: none
}

#page-special .topicSeoIntroFull .topicIntroCopy p {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 2;
    color: #3f3832;
    text-align: left
}

#page-special .topicSeoIntroFull .topicIntroCopy p:last-child {
    margin-bottom: 0
}

#page-special .topicInfoFaqPanel {
    margin-top: 14px;
    border-radius: 16px;
    border: 1px solid #eee3dc;
    background: #fff;
    box-shadow: 0 12px 30px rgba(34, 24, 18, .05);
    overflow: hidden !important
}

#page-special .topicInfoFaqLayout {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) 520px;
    gap: 0;
    align-items: stretch
}

#page-special .topicUseInfoBlock {
    min-width: 0;
    padding: 24px 30px 26px;
    border-right: 1px solid #eee6df;
    background: linear-gradient(180deg, #fff 0%, #fffdfb 100%)
}

#page-special .topicUseInfoSection {
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    column-gap: 18px;
    row-gap: 8px;
    align-items: flex-start;
    padding: 0 0 18px;
    margin: 0 0 18px;
    border-bottom: 1px dashed #eaded7
}

#page-special .topicUseInfoSection:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0
}

#page-special .topicUseInfoTitle {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    color: #17110e;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 1000;
    white-space: nowrap
}

#page-special .topicUseInfoTitle:before {
    content: "";
    width: 22px;
    height: 22px;
    border-radius: 7px;
    background: #fff1ee;
    border: 1px solid #f0d7d0;
    box-shadow: inset 0 0 0 5px rgba(215, 25, 32, .06);
    flex: 0 0 22px
}

#page-special .topicUseInfoBody {
    min-width: 0;
    color: #514942;
    font-size: 13px;
    line-height: 1.85
}

#page-special .topicUsePills {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 0 0 8px
}

#page-special .topicUsePill {
    height: 28px;
    display: inline-flex;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid #efd8d2;
    background: #fff8f6;
    color: #9b1616;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap
}

#page-special .topicUseDesc {
    margin: 0;
    color: #5f554e;
    font-size: 13px;
    line-height: 1.85
}

#page-special .topicUseList {
    margin: 0;
    padding: 0;
    display: grid;
    gap: 6px;
    list-style: none;
    color: #514942;
    font-size: 13px;
    line-height: 1.75;
    font-weight: 750
}

#page-special .topicUseList li {
    position: relative;
    padding-left: 15px
}

#page-special .topicUseList li:before {
    content: "";
    position: absolute;
    left: 0;
    top: .78em;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: #d71920;
    box-shadow: 0 0 0 3px rgba(215, 25, 32, .08)
}

#page-special .topicFaqBlockV2 {
    min-width: 0;
    border-left: 0 !important;
    padding: 24px 30px 26px !important;
    background: #fff
}

#page-special .topicFaqBlockV2 .topicFaqTitle {
    margin: 0 0 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 22px;
    line-height: 1.25;
    color: #17110e;
    font-weight: 1000
}

#page-special .topicFaqBlockV2 .topicFaqTitle:before {
    content: "?";
    width: 24px;
    height: 24px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff1ee;
    border: 1px solid #f0d7d0;
    color: #d71920;
    font-size: 14px;
    font-weight: 1000
}

#page-special .topicFaqBlockV2 .topicFaqGrid {
    gap: 10px
}

#page-special .topicFaqBlockV2 .topicFaqItem {
    border-color: #eee3dc;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 6px 14px rgba(34, 24, 18, .025)
}

#page-special .topicFaqBlockV2 .topicFaqItem summary {
    min-height: 44px;
    padding: 0 14px;
    font-size: 13px
}

#page-special .topicFaqBlockV2 .topicFaqAnswer {
    font-size: 13px;
    line-height: 1.8;
    color: #5f554e
}

@media (max-width:1120px) {
    #page-special .topicInfoFaqLayout {
        grid-template-columns: 1fr
    }

    #page-special .topicUseInfoBlock {
        border-right: 0;
        border-bottom: 1px solid #eee6df
    }

    #page-special .topicFaqBlockV2 {
        padding-top: 22px !important
    }
}

@media (max-width:680px) {

    #page-special .topicSeoIntroFull,
    #page-special .topicUseInfoBlock,
    #page-special .topicFaqBlockV2 {
        padding: 20px 18px !important
    }

    #page-special .topicUseInfoSection {
        grid-template-columns: 1fr;
        gap: 10px
    }

    #page-special .topicUseInfoTitle {
        white-space: normal
    }
}


/* ===== 专题页适用说明：参考图纯文字排版 ===== */
#page-special .topicUseInfoBlock {
    padding: 36px 44px 38px !important;
    background: #fff !important;
    border-right: 1px solid #eee6df !important;
}

#page-special .topicUseInfoSection {
    display: grid !important;
    grid-template-columns: 150px minmax(0, 1fr) !important;
    column-gap: 34px !important;
    align-items: start !important;
    padding: 0 !important;
    margin: 0 0 38px !important;
    border-bottom: 0 !important;
}

#page-special .topicUseInfoSection:last-child {
    margin-bottom: 0 !important;
}

#page-special .topicUseInfoTitle {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111827 !important;
    font-size: 26px !important;
    line-height: 1.28 !important;
    font-weight: 1000 !important;
    letter-spacing: -.3px !important;
    white-space: nowrap !important;
}

#page-special .topicUseInfoTitle:before {
    display: none !important;
    content: none !important;
}

#page-special .topicUseInfoBody {
    min-width: 0 !important;
    color: #1f2937 !important;
    font-size: 18px !important;
    line-height: 2.04 !important;
}

#page-special .topicUseInfoText {
    display: grid !important;
    gap: 12px !important;
    margin: 0 !important;
}

#page-special .topicUseInfoText p {
    margin: 0 !important;
    color: #1f2937 !important;
    font-size: 18px !important;
    line-height: 2.04 !important;
    font-weight: 500 !important;
}

@media (max-width:1120px) {
    #page-special .topicUseInfoBlock {
        border-right: 0 !important;
        border-bottom: 1px solid #eee6df !important;
        padding: 32px 36px !important;
    }

    #page-special .topicUseInfoSection {
        grid-template-columns: 138px minmax(0, 1fr) !important;
        column-gap: 28px !important;
    }

    #page-special .topicUseInfoTitle {
        font-size: 24px !important;
    }

    #page-special .topicUseInfoText p {
        font-size: 17px !important;
        line-height: 1.95 !important;
    }
}

@media (max-width:680px) {
    #page-special .topicUseInfoBlock {
        padding: 24px 20px !important;
    }

    #page-special .topicUseInfoSection {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-bottom: 28px !important;
    }

    #page-special .topicUseInfoTitle {
        font-size: 22px !important;
        white-space: normal !important;
    }

    #page-special .topicUseInfoText {
        gap: 8px !important;
    }

    #page-special .topicUseInfoText p {
        font-size: 15px !important;
        line-height: 1.9 !important;
    }
}



/* ===== 专题页适用说明：纯文字排版字号修正（与专题页整体字号统一） ===== */
#page-special .topicUseInfoBlock {
    padding: 26px 32px 28px !important;
    background: #fff !important;
    border-right: 1px solid #eee6df !important;
}

#page-special .topicUseInfoSection {
    display: grid !important;
    grid-template-columns: 112px minmax(0, 1fr) !important;
    column-gap: 22px !important;
    align-items: start !important;
    padding: 0 !important;
    margin: 0 0 24px !important;
    border-bottom: 0 !important;
}

#page-special .topicUseInfoSection:last-child {
    margin-bottom: 0 !important;
}

#page-special .topicUseInfoTitle {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111827 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.2px !important;
    white-space: nowrap !important;
}

#page-special .topicUseInfoTitle:before {
    display: none !important;
    content: none !important;
}

#page-special .topicUseInfoBody {
    min-width: 0 !important;
    color: #1f2937 !important;
    font-size: 14px !important;
    line-height: 1.92 !important;
}

#page-special .topicUseInfoText {
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
}

#page-special .topicUseInfoText p {
    margin: 0 !important;
    color: #1f2937 !important;
    font-size: 14px !important;
    line-height: 1.92 !important;
    font-weight: 500 !important;
}

@media (max-width:1120px) {
    #page-special .topicUseInfoBlock {
        border-right: 0 !important;
        border-bottom: 1px solid #eee6df !important;
        padding: 24px 28px !important;
    }

    #page-special .topicUseInfoSection {
        grid-template-columns: 108px minmax(0, 1fr) !important;
        column-gap: 20px !important;
        margin-bottom: 22px !important;
    }

    #page-special .topicUseInfoTitle {
        font-size: 17px !important;
    }

    #page-special .topicUseInfoText p {
        font-size: 14px !important;
        line-height: 1.9 !important;
    }
}

@media (max-width:680px) {
    #page-special .topicUseInfoBlock {
        padding: 20px 18px !important;
    }

    #page-special .topicUseInfoSection {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin-bottom: 20px !important;
    }

    #page-special .topicUseInfoTitle {
        font-size: 16px !important;
        white-space: normal !important;
    }

    #page-special .topicUseInfoText {
        gap: 6px !important;
    }

    #page-special .topicUseInfoText p {
        font-size: 13px !important;
        line-height: 1.85 !important;
    }
}



/* ===== 专题页适用说明：三段文字区增加分割线（仅作用于专题页） ===== */
#page-special .topicUseInfoSection {
    padding: 0 0 20px !important;
    margin: 0 0 20px !important;
    border-bottom: 1px solid #EEE2DC !important;
}

#page-special .topicUseInfoSection:last-child {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    border-bottom: 0 !important;
}

@media (max-width:680px) {
    #page-special .topicUseInfoSection {
        padding-bottom: 18px !important;
        margin-bottom: 18px !important;
    }
}



/* ===== 搜索页参考图重设计：仅作用于 #page-search ===== */
#page-search.searchRefModernV5 {
    padding: 28px 0 44px !important;
    background: linear-gradient(180deg, #fff 0%, #fff8f4 46%, #fff 100%) !important;
}

#page-search.searchRefModernV5 .searchRefShell {
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 0 16px !important;
}

#page-search.searchRefModernV5 .searchRefBread {
    height: 34px !important;
    margin: 0 0 12px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #7a625a !important;
}

#page-search.searchRefModernV5 .searchRefBread a {
    color: #C40000 !important;
    font-weight: 900 !important;
}

#page-search.searchRefModernV5 .searchRefBread span {
    color: #ccb8b0 !important;
}

#page-search.searchRefModernV5 .searchRefBread strong {
    color: #1f2937 !important;
    font-weight: 900 !important;
}

#page-search.searchRefModernV5 .searchRefLayout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 24px !important;
    align-items: start !important;
}

#page-search.searchRefModernV5 .searchRefMain {
    min-width: 0 !important;
}

#page-search.searchRefModernV5 .searchRefBar {
    height: 60px !important;
    margin: 0 0 18px !important;
    display: grid !important;
    grid-template-columns: 150px minmax(0, 1fr) 118px !important;
    border: 1.5px solid #D90000 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(120, 20, 20, .05) !important;
}

#page-search.searchRefModernV5 .searchRefTypeSelect {
    border: 0 !important;
    border-right: 1px solid #EFE2DC !important;
    background: #fff !important;
    color: #121826 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: default !important;
}

#page-search.searchRefModernV5 .searchRefTypeSelect span {
    color: #C40000 !important;
    font-size: 15px !important;
    transform: translateY(1px) !important;
}

#page-search.searchRefModernV5 .searchRefBar input {
    height: 100% !important;
    border: 0 !important;
    outline: none !important;
    background: #fff !important;
    padding: 0 26px !important;
    color: #1f2937 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}

#page-search.searchRefModernV5 .searchRefBar input::placeholder {
    color: #A7AEB8 !important;
    font-weight: 500 !important;
}

#page-search.searchRefModernV5 .searchRefSubmit,
#page-search.searchRefModernV5 .searchRefBar button[type="submit"] {
    border: 0 !important;
    background: linear-gradient(180deg, #E10000, #C70000) !important;
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 1000 !important;
    letter-spacing: .8px !important;
    cursor: pointer !important;
}

#page-search.searchRefModernV5 .searchRefSubmit:hover {
    filter: brightness(1.03) !important;
}

#page-search.searchRefModernV5 .searchRefFilterLine {
    display: grid !important;
    grid-template-columns: 1.05fr 1.05fr 1.05fr .9fr !important;
    gap: 0 !important;
    align-items: center !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    height: 64px !important;
    border: 1px solid #EFE3DC !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(20, 24, 32, .05) !important;
    overflow: visible !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox {
    position: relative !important;
    z-index: 5 !important;
    height: 64px !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 0 24px !important;
    border: 0 !important;
    border-right: 1px solid #EFE3DC !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox:last-of-type {
    border-right: 0 !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox:after {
    content: "⌄" !important;
    margin-left: auto !important;
    color: #354052 !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

#page-search.searchRefModernV5 .searchRefFilterName {
    flex: 0 0 auto !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    color: #1f2937 !important;
    white-space: nowrap !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox .filterLinksClean {
    min-width: 0 !important;
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox .filterLinkClean {
    display: none !important;
    height: auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #1f2937 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox .filterLinkClean.active,
#page-search.searchRefModernV5 .searchRefFilterBox .filterLinksClean .filterLinkClean:first-child {
    display: inline-flex !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox:hover {
    z-index: 30 !important;
    background: #fff !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox:hover .filterLinksClean {
    position: absolute !important;
    left: -1px !important;
    right: -1px !important;
    top: 63px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2px !important;
    padding: 8px !important;
    border: 1px solid #EFE3DC !important;
    border-radius: 0 0 10px 10px !important;
    background: #fff !important;
    box-shadow: 0 16px 32px rgba(120, 20, 20, .12) !important;
    max-height: 260px !important;
    overflow: auto !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox:hover .filterLinkClean {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    height: 34px !important;
    padding: 0 10px !important;
    border-radius: 7px !important;
    color: #4b5563 !important;
    font-size: 14px !important;
}

#page-search.searchRefModernV5 .searchRefFilterBox:hover .filterLinkClean.active,
#page-search.searchRefModernV5 .searchRefFilterBox:hover .filterLinkClean:hover {
    background: #FFF2EF !important;
    color: #C40000 !important;
}

#page-search.searchRefModernV5 .searchQuickFilterLine {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#page-search.searchRefModernV5 .searchQuickLabel {
    display: none !important;
}

#page-search.searchRefModernV5 .searchQuickChip {
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 0 16px !important;
    border-radius: 8px !important;
    border: 1px solid #EFE3DC !important;
    background: #fff !important;
    box-shadow: 0 9px 22px rgba(20, 24, 32, .05) !important;
    color: #1f2937 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

#page-search.searchRefModernV5 .searchQuickChip:before {
    width: 22px !important;
    height: 22px !important;
    border-radius: 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 13px !important;
    color: #fff !important;
    background: #E64A35 !important;
    font-weight: 1000 !important;
}

#page-search.searchRefModernV5 .searchQuickChip:nth-of-type(1):before {
    content: "文" !important;
    background: #E64A35 !important;
}

#page-search.searchRefModernV5 .searchQuickChip:nth-of-type(2):before {
    content: "会" !important;
    background: #F29E28 !important;
}

#page-search.searchRefModernV5 .searchQuickChip:nth-of-type(3):before {
    content: "26" !important;
    background: #F15D42 !important;
    font-size: 10px !important;
}

#page-search.searchRefModernV5 .searchQuickChip:nth-of-type(4):before {
    content: "改" !important;
    background: #438CFF !important;
}

#page-search.searchRefModernV5 .searchQuickChip.active {
    border-color: #F0B9AD !important;
    background: #FFF7F4 !important;
    color: #C40000 !important;
}

#page-search.searchRefModernV5 .searchRefNotice {
    height: auto !important;
    min-height: 38px !important;
    margin: 0 0 16px !important;
    padding: 10px 18px 10px 48px !important;
    border: 1px solid #F5DFC3 !important;
    border-radius: 6px !important;
    background: #FFF7EB !important;
    color: #79512A !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    position: relative !important;
}

#page-search.searchRefModernV5 .searchRefNotice:before {
    content: "✓" !important;
    position: absolute !important;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    background: #F5A623 !important;
    color: #fff !important;
    display: grid !important;
    place-items: center !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
}

#page-search.searchRefModernV5 .searchRefResultBox {
    overflow: hidden !important;
    border: 1px solid #EFE3DC !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(20, 24, 32, .06) !important;
}

#page-search.searchRefModernV5 .searchRefSortLine {
    height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 24px !important;
    border-bottom: 1px solid #EFE3DC !important;
    background: #fff !important;
}

#page-search.searchRefModernV5 .searchRefSortTabs {
    display: flex !important;
    align-items: center !important;
    gap: 30px !important;
    height: 100% !important;
}

#page-search.searchRefModernV5 .searchRefSortTabs .sortInlineLabel {
    display: none !important;
}

#page-search.searchRefModernV5 .searchRefSortTabs .filterLinkClean {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #334155 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

#page-search.searchRefModernV5 .searchRefSortTabs .filterLinkClean.active {
    color: #C40000 !important;
}

#page-search.searchRefModernV5 .searchRefSortTabs .filterLinkClean.active:after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 3px !important;
    border-radius: 3px 3px 0 0 !important;
    background: #C40000 !important;
}

#page-search.searchRefModernV5 .searchRefCount {
    margin-left: auto !important;
    color: #64748b !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

#page-search.searchRefModernV5 .searchRefCount strong {
    color: #C40000 !important;
    font-size: 17px !important;
    margin: 0 2px !important;
}

#page-search.searchRefModernV5 .searchRefSelected {
    display: none !important;
}

#page-search.searchRefModernV5 .searchRefResultList {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 0 24px !important;
    background: #fff !important;
}

#page-search.searchRefModernV5 .searchRefItem {
    display: grid !important;
    grid-template-columns: 300px minmax(0, 1fr) 136px !important;
    gap: 24px !important;
    align-items: center !important;
    min-height: 0 !important;
    padding: 24px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #EFE3DC !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    overflow: visible !important;
    transform: none !important;
}

#page-search.searchRefModernV5 .searchRefItem:last-child {
    border-bottom: 0 !important;
}

#page-search.searchRefModernV5 .searchRefItem:before {
    display: none !important;
    content: none !important;
}

#page-search.searchRefModernV5 .searchRefItem:hover {
    transform: none !important;
    border-color: #EFE3DC !important;
    box-shadow: none !important;
}

#page-search.searchRefModernV5 .searchRefThumb {
    display: block !important;
    width: 300px !important;
    height: 150px !important;
    aspect-ratio: auto !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #FFF2ED !important;
    overflow: hidden !important;
}

#page-search.searchRefModernV5 .searchRefThumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
    filter: saturate(.98) contrast(1) !important;
}

#page-search.searchRefModernV5 .searchRefItemBody {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 0 !important;
    min-width: 0 !important;
    background: transparent !important;
}

#page-search.searchRefModernV5 .searchRefItemTitle {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
    overflow: hidden !important;
    margin: 0 !important;
    color: #1f2937 !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 1000 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-decoration: none !important;
    min-height: auto !important;
}

#page-search.searchRefModernV5 .searchRefItemDesc {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    margin: 0 !important;
    color: #4b5563 !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
    max-width: 100% !important;
}

#page-search.searchRefModernV5 .searchRefTagRow {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
    padding: 0 !important;
}

#page-search.searchRefModernV5 .searchRefTag {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 28px !important;
    padding: 0 12px !important;
    border-radius: 4px !important;
    border: 1px solid #F1C9BF !important;
    background: #FFF4F1 !important;
    color: #C40000 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    white-space: nowrap !important;
}

#page-search.searchRefModernV5 .searchRefTag.green {
    border-color: #CAE8D6 !important;
    background: #F1FBF5 !important;
    color: #168A51 !important;
}

#page-search.searchRefModernV5 .searchRefTag.gold {
    border-color: #F1D5A8 !important;
    background: #FFF8EA !important;
    color: #C06A00 !important;
}

#page-search.searchRefModernV5 .searchRefMeta {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    flex-wrap: wrap !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    color: #7B8794 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
    white-space: normal !important;
    overflow: visible !important;
}

#page-search.searchRefModernV5 .searchRefMeta span {
    display: inline-flex !important;
    align-items: center !important;
    color: #7B8794 !important;
    white-space: nowrap !important;
}

#page-search.searchRefModernV5 .searchRefMeta span+span:before {
    content: "|" !important;
    margin: 0 12px !important;
    color: #D4C8C0 !important;
}

#page-search.searchRefModernV5 .searchRefMeta em {
    display: none !important;
}

#page-search.searchRefModernV5 .searchRefMeta b {
    font-weight: 700 !important;
    color: #7B8794 !important;
}

#page-search.searchRefModernV5 .searchRefActions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 0 0 24px !important;
    border-left: 1px solid #EFE3DC !important;
}

#page-search.searchRefModernV5 .searchRefDownload,
#page-search.searchRefModernV5 .searchRefCollect {
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    font-weight: 1000 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

#page-search.searchRefModernV5 .searchRefDownload {
    border: 1px solid #C40000 !important;
    background: #C40000 !important;
    color: #fff !important;
    box-shadow: 0 8px 18px rgba(196, 0, 0, .18) !important;
}

#page-search.searchRefModernV5 .searchRefDownloadIcon {
    font-size: 18px !important;
    margin-right: 5px !important;
}

#page-search.searchRefModernV5 .searchRefCollect {
    height: 42px !important;
    border: 0 !important;
    background: #fff !important;
    color: #475569 !important;
    font-size: 14px !important;
    gap: 6px !important;
}

#page-search.searchRefModernV5 .searchRefCollect:before {
    content: "☆" !important;
    font-size: 24px !important;
    color: #7B8794 !important;
}

#page-search.searchRefModernV5 .searchRefPager {
    border-top: 1px solid #EFE3DC !important;
    margin: 0 !important;
    padding: 14px 20px !important;
    min-height: 58px !important;
    background: #fff !important;
}

#page-search.searchRefModernV5 .searchRefSide {
    display: grid !important;
    gap: 20px !important;
    position: sticky !important;
    top: 98px !important;
    align-self: start !important;
}

#page-search.searchRefModernV5 .searchRefSideCard,
#page-search.searchRefModernV5 .searchRefNeedCard {
    border: 1px solid #EFE3DC !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 12px 26px rgba(20, 24, 32, .06) !important;
    padding: 22px !important;
    overflow: hidden !important;
}

#page-search.searchRefModernV5 .searchRefSideHd {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 18px !important;
}

#page-search.searchRefModernV5 .searchRefSideHd h3,
#page-search.searchRefModernV5 .searchRefNeedCard h3 {
    margin: 0 !important;
    color: #1f2937 !important;
    font-size: 21px !important;
    line-height: 1.2 !important;
    font-weight: 1000 !important;
}

#page-search.searchRefModernV5 .searchRefSideHd a {
    color: #64748b !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

#page-search.searchRefModernV5 .searchRefTopicList {
    display: grid !important;
    gap: 14px !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 34px !important;
    color: #334155 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:before {
    content: "" !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 7px !important;
    background: #F0453A !important;
    box-shadow: 0 6px 12px rgba(20, 24, 32, .08) !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:nth-child(2):before {
    background: #F59E0B !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:nth-child(3):before {
    background: #F7B731 !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:nth-child(4):before {
    background: #40C67A !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:nth-child(5):before {
    background: #438CFF !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:nth-child(6):before {
    background: #7C4DFF !important;
}

#page-search.searchRefModernV5 .searchRefTopicList span {
    color: #64748b !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

#page-search.searchRefModernV5 .searchRefNeedCard {
    position: relative !important;
    background: linear-gradient(135deg, #FFF3F1 0%, #fff 72%) !important;
    padding: 24px !important;
}

#page-search.searchRefModernV5 .searchRefNeedCard:after {
    content: "" !important;
    position: absolute !important;
    right: 22px !important;
    top: 28px !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #FFE4E0, #FFF1EA) !important;
    opacity: .95 !important;
}

#page-search.searchRefModernV5 .searchRefNeedCard h3 {
    position: relative !important;
    z-index: 1 !important;
    color: #C40000 !important;
    font-size: 23px !important;
    margin-bottom: 12px !important;
}

#page-search.searchRefModernV5 .searchRefNeedCard p {
    position: relative !important;
    z-index: 1 !important;
    margin: 0 0 18px !important;
    color: #475569 !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
    font-weight: 700 !important;
}

#page-search.searchRefModernV5 .searchRefNeedPrimary {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #C40000 !important;
    border-radius: 6px !important;
    background: linear-gradient(180deg, #E10000, #C40000) !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 1000 !important;
    text-decoration: none !important;
    box-shadow: 0 10px 22px rgba(196, 0, 0, .16) !important;
}

#page-search.searchRefModernV5 .searchRefHotList {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px 16px !important;
}

#page-search.searchRefModernV5 .searchRefHotList li {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) auto !important;
    gap: 8px !important;
    align-items: center !important;
    color: #334155 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    min-width: 0 !important;
}

#page-search.searchRefModernV5 .searchRefHotList span {
    width: 22px !important;
    height: 22px !important;
    border-radius: 5px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #E5E7EB !important;
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
}

#page-search.searchRefModernV5 .searchRefHotList li:nth-child(1) span {
    background: #D90000 !important;
    color: #fff !important;
}

#page-search.searchRefModernV5 .searchRefHotList li:nth-child(2) span {
    background: #FF8A00 !important;
    color: #fff !important;
}

#page-search.searchRefModernV5 .searchRefHotList li:nth-child(3) span {
    background: #F5B027 !important;
    color: #fff !important;
}

#page-search.searchRefModernV5 .searchRefHotList a {
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-decoration: none !important;
    color: #334155 !important;
}

#page-search.searchRefModernV5 .searchRefHotList b {
    color: #64748b !important;
    text-align: right !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

@media(max-width:1200px) {
    #page-search.searchRefModernV5 .searchRefLayout {
        grid-template-columns: 1fr !important
    }

    #page-search.searchRefModernV5 .searchRefSide {
        position: static !important;
        grid-template-columns: 1fr !important
    }

    #page-search.searchRefModernV5 .searchRefItem {
        grid-template-columns: 240px minmax(0, 1fr) 128px !important
    }

    #page-search.searchRefModernV5 .searchRefThumb {
        width: 240px !important;
        height: 135px !important
    }
}

@media(max-width:820px) {
    #page-search.searchRefModernV5 .searchRefBar {
        grid-template-columns: 1fr 88px !important
    }

    #page-search.searchRefModernV5 .searchRefTypeSelect {
        display: none !important
    }

    #page-search.searchRefModernV5 .searchRefFilterLine {
        height: auto !important;
        grid-template-columns: 1fr 1fr !important
    }

    #page-search.searchRefModernV5 .searchRefFilterBox {
        height: 54px !important;
        border-bottom: 1px solid #EFE3DC !important
    }

    #page-search.searchRefModernV5 .searchQuickFilterLine {
        grid-template-columns: 1fr 1fr !important
    }

    #page-search.searchRefModernV5 .searchRefItem {
        grid-template-columns: 1fr !important;
        gap: 14px !important
    }

    #page-search.searchRefModernV5 .searchRefThumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16/9 !important
    }

    #page-search.searchRefModernV5 .searchRefActions {
        border-left: 0 !important;
        padding-left: 0 !important;
        flex-direction: row !important
    }

    #page-search.searchRefModernV5 .searchRefHotList {
        grid-template-columns: 1fr !important
    }
}

@media(max-width:540px) {
    #page-search.searchRefModernV5 .searchRefShell {
        padding: 0 12px !important
    }

    #page-search.searchRefModernV5 .searchQuickFilterLine,
    #page-search.searchRefModernV5 .searchRefFilterLine {
        grid-template-columns: 1fr !important
    }

    #page-search.searchRefModernV5 .searchRefSortLine {
        height: auto !important;
        padding: 14px !important;
        align-items: flex-start !important;
        flex-direction: column !important
    }

    #page-search.searchRefModernV5 .searchRefResultList {
        padding: 0 14px !important
    }

    #page-search.searchRefModernV5 .searchRefItem {
        padding: 18px 0 !important
    }

    #page-search.searchRefModernV5 .searchRefActions {
        flex-direction: column !important
    }
}

#page-search.searchRefModernV5 .searchRefMoreFilter {
    border-right: 0 !important;
}


/* ===== 搜索页二次修正：仅作用于 #page-search，根据标注图删除右侧专题色块，并为资源信息行增加分隔线 ===== */
#page-search.searchRefModernV5 .searchRefTopicList {
    gap: 0 !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 14px !important;
    min-height: 38px !important;
    padding: 8px 0 !important;
    border-bottom: 1px solid #F1E7E1 !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:last-child {
    border-bottom: 0 !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:before {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    box-shadow: none !important;
}

#page-search.searchRefModernV5 .searchRefTopicList a:nth-child(n):before {
    display: none !important;
    content: none !important;
    background: none !important;
}

#page-search.searchRefModernV5 .searchRefMeta {
    width: 100% !important;
    max-width: 100% !important;
    margin: 4px 0 0 !important;
    padding-top: 10px !important;
    border-top: 1px solid #EFE3DC !important;
}

#page-search.searchRefModernV5 .searchRefMeta span+span:before {
    content: "|" !important;
    margin: 0 12px !important;
    color: #D8CCC5 !important;
}

#page-search.searchRefModernV5 .searchRefItemBody {
    gap: 10px !important;
}

#page-search.searchRefModernV5 .searchRefItemDesc {
    margin-bottom: 0 !important;
}

#page-search.searchRefModernV5 .searchRefTagRow {
    margin-top: 1px !important;
}



/* ===== 搜索页右侧需求卡片终版：仅作用于 #page-search，参考标注图重做“没有找到合适资料？”板块 ===== */
#page-search.searchRefPage.searchRefModernV5 .searchRefSide {
    gap: 20px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefSide>.searchRefHotCard {
    display: block !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard {
    display: block !important;
    position: relative !important;
    overflow: hidden !important;
    min-height: 196px !important;
    padding: 30px 30px 28px !important;
    border: 1px solid #F3D3CE !important;
    border-radius: 18px !important;
    background:
        radial-gradient(160px 110px at 94% 20%, rgba(255, 214, 208, .72), transparent 64%),
        linear-gradient(135deg, #FFF5F3 0%, #FFFFFF 74%) !important;
    box-shadow: 0 16px 36px rgba(102, 42, 24, .06) !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard:before {
    content: "" !important;
    position: absolute !important;
    right: 34px !important;
    top: 42px !important;
    width: 54px !important;
    height: 58px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, rgba(255, 205, 200, .78), rgba(255, 238, 232, .88)) !important;
    transform: rotate(-8deg) !important;
    opacity: .72 !important;
    box-shadow: inset 0 0 0 1px rgba(196, 0, 0, .06) !important;
    z-index: 0 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard:after {
    content: "✎" !important;
    position: absolute !important;
    right: 48px !important;
    top: 52px !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(196, 0, 0, .28) !important;
    font-size: 32px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    opacity: 1 !important;
    z-index: 0 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard h3 {
    position: relative !important;
    z-index: 1 !important;
    margin: 0 0 14px !important;
    max-width: 260px !important;
    color: #D60000 !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    font-weight: 1000 !important;
    letter-spacing: .1px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard p {
    position: relative !important;
    z-index: 1 !important;
    max-width: 300px !important;
    margin: 0 0 22px !important;
    color: #566273 !important;
    font-size: 15px !important;
    line-height: 1.82 !important;
    font-weight: 700 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedPrimary {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    height: 52px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: linear-gradient(180deg, #E60012 0%, #C40000 100%) !important;
    color: #fff !important;
    font-size: 17px !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    letter-spacing: .2px !important;
    text-decoration: none !important;
    box-shadow: 0 12px 24px rgba(196, 0, 0, .16) !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedPrimary:hover {
    background: linear-gradient(180deg, #C40000 0%, #A80000 100%) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefHotCard {
    margin-top: 0 !important;
}


/* ===== 专题页：资料说明 / FAQ / 专题链路导航参考图重设计（最终覆盖，仅作用于专题页） ===== */
#page-special .topicInfoFaqPanel {
    margin-top: 18px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#page-special .topicInfoFaqLayout {
    display: block !important;
}

#page-special .topicUseInfoBlock {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#page-special .topicUseExplainHead {
    margin: 0 0 12px !important;
}

#page-special .topicUseExplainHead h2 {
    margin: 0 !important;
    color: #141414 !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.2px !important;
}

#page-special .topicUseExplainGrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px 24px !important;
}

#page-special .topicUseExplainCard {
    min-height: 178px !important;
    display: grid !important;
    grid-template-columns: 88px minmax(0, 1fr) !important;
    gap: 20px !important;
    align-items: center !important;
    padding: 22px 24px !important;
    border: 1px solid #f0ded7 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(81, 43, 27, .035) !important;
}

#page-special .topicUseExplainIcon {
    width: 74px !important;
    height: 74px !important;
    display: grid !important;
    place-items: center !important;
}

#page-special .topicUseExplainIcon svg {
    width: 74px !important;
    height: 74px !important;
    display: block !important;
    fill: currentColor !important;
}

#page-special .topicUseExplainIcon svg .stroke {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 7 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

#page-special .topicUseExplainCard.is-audience .topicUseExplainIcon {
    color: #e60012 !important;
}

#page-special .topicUseExplainCard.is-type .topicUseExplainIcon {
    color: #ff951f !important;
}

#page-special .topicUseExplainCard.is-download .topicUseExplainIcon {
    color: #2287d8 !important;
}

#page-special .topicUseExplainText h3 {
    margin: 0 0 7px !important;
    color: #1b1716 !important;
    font-size: 18px !important;
    line-height: 1.38 !important;
    font-weight: 1000 !important;
}

#page-special .topicUseExplainText p {
    margin: 0 !important;
    color: #5b5350 !important;
    font-size: 13px !important;
    line-height: 1.82 !important;
    font-weight: 650 !important;
    text-align: left !important;
}

#page-special .topicFaqBlockV2 {
    margin-top: 26px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#page-special .topicFaqBlockV2 .topicFaqTitle {
    margin: 0 0 12px !important;
    display: block !important;
    color: #141414 !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.2px !important;
}

#page-special .topicFaqBlockV2 .topicFaqTitle:before {
    display: none !important;
    content: none !important;
}

#page-special .topicFaqBlockV2 .topicFaqGrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 24px !important;
}

#page-special .topicFaqBlockV2 .topicFaqItem.topicFaqStatic {
    min-height: 90px !important;
    padding: 18px 22px !important;
    border: 1px solid #f0ded7 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(81, 43, 27, .03) !important;

    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 10px !important;
}

#page-special .topicFaqQuestion {

}

#page-special .topicFaqQuestion b {
    color: #e60012 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: .3px !important;
}

#page-special .topicFaqAnswer h3 {
    color: #1f1b1a !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    font-weight: 1000 !important;
    display: block;
    height: 35px;
    margin: 0;
}

#page-special .topicFaqBlockV2 .topicFaqAnswer {
    color: #6c625d !important;
    font-size: 13px !important;
    line-height: 1.75 !important;
    font-weight: 600 !important;
}

#page-special .topicFaqBlockV2 .topicFaqAnswer a {
    color: #c40000 !important;
    font-weight: 900 !important;
}

#page-special .topicBottomGrid {
    margin-top: 22px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    align-items: stretch !important;
}

#page-special .topicInternalPanel {
    order: 1 !important;
    width: 100% !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#page-special .topicInternalPanel .panelBd {
    padding: 0 !important;
}

#page-special .topicInternalPreviewV3 {
    display: block !important;
}

#page-special .topicInternalSectionTitle {
    margin: 0 0 12px !important;
    color: #141414 !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.2px !important;
}

#page-special .topicInternalCardGridV3 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

#page-special .topicInternalCardV3 {
    min-height: 150px !important;
    padding: 20px 22px 18px !important;
    border: 1px solid #f0ded7 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(81, 43, 27, .03) !important;
}

#page-special .topicInternalCardV3 h3 {
    margin: 0 0 13px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #e60012 !important;
    font-size: 17px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
}

#page-special .topicInternalCardV3 h3 span {
    width: 24px !important;
    height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 4px !important;
    background: #e60012 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 1000 !important;
    flex: 0 0 24px !important;
}

#page-special .topicInternalPlainList {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px 28px !important;
}

#page-special .topicInternalCardV3 .topicInternalPlainList,
#page-special .topicInternalPlainList.is-two-col {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#page-special .topicInternalPlainLink {
    display: block !important;
    color: #554c47 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    font-weight: 750 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#page-special .topicInternalPlainLink:hover {
    color: #c40000 !important;
}

#page-special .topicInternalEmpty {
    color: #8b817b !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
}

#page-special .topicMemberCard {
    order: 2 !important;
    width: 100% !important;
    min-height: 108px !important;
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr) auto !important;
    grid-template-areas: "icon copy button" "icon perks button" !important;
    column-gap: 28px !important;
    row-gap: 10px !important;
    align-items: center !important;
    padding: 18px 32px !important;
    border: 1px solid #f0ded7 !important;
    border-radius: 14px !important;
    background: linear-gradient(90deg, #fff 0%, #fff8f4 68%, #fff 100%) !important;
    box-shadow: 0 10px 26px rgba(81, 43, 27, .035) !important;
    overflow: hidden !important;
}

#page-special .topicMemberIcon {
    grid-area: icon !important;
    width: 160px !important;
    height: 70px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px 999px 22px 22px !important;
    background: linear-gradient(180deg, #ffd36d, #f49f1f) !important;
    color: #fff !important;
    font-size: 48px !important;
    line-height: 1 !important;
    box-shadow: 0 10px 22px rgba(244, 159, 31, .20) !important;
}

#page-special .topicMemberCard h3 {
    grid-area: copy !important;
    margin: 0 !important;
    color: #1f1b1a !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
}

#page-special .topicMemberCard ul {
    grid-area: perks !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 18px 28px !important;
    list-style: none !important;
}

#page-special .topicMemberCard li {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #7b6c64 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 850 !important;
}

#page-special .topicMemberCard li:before {
    content: "◎" !important;
    color: #f39b16 !important;
    font-weight: 1000 !important;
}

#page-special .topicMemberBtn {
    grid-area: button !important;
    width: 190px !important;
    height: 44px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #e60012, #c40000) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 1000 !important;
    box-shadow: 0 12px 22px rgba(196, 0, 0, .18) !important;
}

@media (max-width:1180px) {

    #page-special .topicUseExplainGrid,
    #page-special .topicInternalCardGridV3 {
        grid-template-columns: 1fr !important;
    }

    #page-special .topicMemberCard {
        grid-template-columns: 150px minmax(0, 1fr) !important;
        grid-template-areas: "icon copy" "icon perks" "button button" !important;
    }

    #page-special .topicMemberBtn {
        width: 240px !important;
        justify-self: center !important;
    }
}

@media (max-width:760px) {

    #page-special .topicUseExplainGrid,
    #page-special .topicFaqBlockV2 .topicFaqGrid,
    #page-special .topicInternalCardGridV3 {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    #page-special .topicUseExplainCard {
        grid-template-columns: 64px minmax(0, 1fr) !important;
        padding: 18px !important;
        min-height: auto !important;
        gap: 14px !important;
    }

    #page-special .topicUseExplainIcon,
    #page-special .topicUseExplainIcon svg {
        width: 58px !important;
        height: 58px !important;
    }

    #page-special .topicFaqBlockV2 .topicFaqItem.topicFaqStatic {
        padding: 16px 18px !important;
    }

    #page-special .topicFaqQuestion {
        grid-template-columns: 36px 1fr !important;
    }


    #page-special .topicMemberCard {
        grid-template-columns: 1fr !important;
        grid-template-areas: "icon" "copy" "perks" "button" !important;
        text-align: center !important;
        padding: 20px !important;
    }

    #page-special .topicMemberIcon {
        justify-self: center !important;
        width: 136px !important;
    }

    #page-special .topicMemberCard ul {
        justify-content: center !important;
    }
}











/* 搜索页右侧“没有找到合适资料？”卡片最终样式：只作用于搜索页面 */
#page-search.searchRefPage.searchRefModernV5 .searchRefSide {
    gap: 20px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefSide>section.searchRefNeedCard {
    display: block !important;
    position: relative !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 204px !important;
    margin: 0 !important;
    padding: 28px 28px 26px !important;
    border: 1px solid #F4D8D3 !important;
    border-radius: 18px !important;
    background:
        radial-gradient(150px 105px at 92% 24%, rgba(255, 213, 207, .70), rgba(255, 213, 207, 0) 68%),
        linear-gradient(135deg, #FFF4F2 0%, #FFF8F6 52%, #FFFFFF 100%) !important;
    box-shadow: 0 14px 34px rgba(116, 44, 28, .07) !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefSide>section.searchRefNeedCard::before,
#page-search.searchRefPage.searchRefModernV5 .searchRefSide>section.searchRefNeedCard::after {
    content: none !important;
    display: none !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCopy {
    position: relative !important;
    z-index: 2 !important;
    max-width: 245px !important;
    min-width: 0 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard h3 {
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: #E60012 !important;
    font-size: 22px !important;
    line-height: 1.28 !important;
    font-weight: 1000 !important;
    letter-spacing: .1px !important;
    white-space: nowrap !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard p {
    margin: 0 0 22px !important;
    padding: 0 !important;
    max-width: 232px !important;
    color: #566273 !important;
    font-size: 14px !important;
    line-height: 1.82 !important;
    font-weight: 700 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedIcon {
    position: absolute !important;
    right: 30px !important;
    top: 43px !important;
    z-index: 1 !important;
    display: block !important;
    width: 68px !important;
    height: 70px !important;
    border-radius: 17px !important;
    background: linear-gradient(135deg, rgba(255, 205, 199, .76), rgba(255, 240, 235, .96)) !important;
    box-shadow: inset 0 0 0 1px rgba(196, 0, 0, .045), 0 10px 20px rgba(196, 0, 0, .04) !important;
    transform: rotate(-7deg) !important;
    opacity: .94 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedIcon::before {
    content: "" !important;
    position: absolute !important;
    left: 19px !important;
    top: 34px !important;
    width: 34px !important;
    height: 8px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, rgba(196, 0, 0, .30), rgba(246, 116, 72, .30), rgba(244, 197, 90, .62)) !important;
    transform: rotate(-38deg) !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedIcon::after {
    content: "" !important;
    position: absolute !important;
    right: 12px !important;
    top: 18px !important;
    width: 11px !important;
    height: 11px !important;
    border-radius: 3px !important;
    background: rgba(255, 255, 255, .62) !important;
    transform: rotate(12deg) !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedPrimary {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 50px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: linear-gradient(180deg, #E60012 0%, #C40000 100%) !important;
    box-shadow: 0 10px 22px rgba(196, 0, 0, .16) !important;
    color: #fff !important;
    font-size: 17px !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    letter-spacing: .2px !important;
    text-align: center !important;
    text-decoration: none !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefNeedPrimary:hover {
    background: linear-gradient(180deg, #D60000 0%, #A80000 100%) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
}

@media(max-width:540px) {
    #page-search.searchRefPage.searchRefModernV5 .searchRefSide>section.searchRefNeedCard {
        min-height: 190px !important;
        padding: 24px 22px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefNeedCard h3 {
        font-size: 21px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefNeedIcon {
        right: 22px !important;
        width: 58px !important;
        height: 60px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefNeedPrimary {
        height: 48px !important;
        font-size: 15px !important;
    }
}





/* 搜索页结果卡片：付费标签统一为“会员可下载” */
#page-search.searchRefPage .searchRefResultList .searchRefTag.gold,
#page-search.searchRefModernV5 .searchRefResultList .searchRefTag.gold {
    white-space: nowrap !important;
    max-width: none !important;
    width: auto !important;
    min-width: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    letter-spacing: 0 !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefMeta b,
#page-search.searchRefModernV5 .searchRefResultList .searchRefMeta b {
    white-space: nowrap !important;
}

#page-search.searchRefPage .searchRefResultList .searchRefMeta,
#page-search.searchRefModernV5 .searchRefResultList .searchRefMeta {
    row-gap: 6px !important;
}








/* 搜索页结果卡片终版微调：删除状态栏后，重新拉开卡片纵向间距；仅作用于搜索页面 */
#page-search.searchRefPage.searchRefModernV5 .searchRefResultList {
    padding: 0 28px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefItem {
    padding: 30px 0 !important;
    gap: 28px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefItemBody {
    gap: 12px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefMeta {
    margin-top: 6px !important;
    padding-top: 12px !important;
    border-top: 1px solid #EFE3DC !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefMeta span[data-search-status],
#page-search.searchRefPage.searchRefModernV5 .searchRefMeta span.is-status {
    display: none !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefActions {
    padding-left: 28px !important;
}

@media(max-width:820px) {
    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList {
        padding: 0 18px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefItem {
        padding: 24px 0 !important;
        gap: 16px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefActions {
        padding-left: 0 !important;
    }
}







/* 搜索页结果卡片：删除“比例/格式/更新日期/下载”元信息后，收紧卡片高度并重新平衡图文按钮尺寸 */
#page-search.searchRefPage .searchRefResultList.is-list .searchRefMeta {
    display: none !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list,
#page-search.searchRefPage .searchRefResultList.is-list {
    padding: 0 28px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefItem,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
    display: grid !important;
    grid-template-columns: 320px minmax(0, 1fr) 160px !important;
    gap: 28px !important;
    align-items: center !important;
    min-height: 226px !important;
    padding: 24px 0 !important;
    border-bottom: 1px solid #E8DED7 !important;
    background: #fff !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefThumb,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
    width: 320px !important;
    height: 180px !important;
    flex: 0 0 320px !important;
    border-radius: 12px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefThumb img,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefItemBody,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefItemBody {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-height: 180px !important;
    padding: 0 !important;
    gap: 0 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefItemTitle,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefItemTitle {
    margin: 0 0 14px !important;
    font-size: 22px !important;
    line-height: 1.38 !important;
    font-weight: 1000 !important;
    color: #111827 !important;
    white-space: normal !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefItemDesc,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefItemDesc {
    margin: 0 0 16px !important;
    color: #4B5563 !important;
    font-size: 15px !important;
    line-height: 1.72 !important;
    font-weight: 400 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefTagRow,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefTagRow {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefTag,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefTag {
    height: 30px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    line-height: 30px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefActions,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefActions {
    align-self: center !important;
    justify-content: center !important;
    width: 160px !important;
    padding-left: 24px !important;
    gap: 14px !important;
}

#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefDownload,
#page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefCollect,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefDownload,
#page-search.searchRefPage .searchRefResultList.is-list .searchRefCollect {
    width: 150px !important;
    height: 50px !important;
    border-radius: 10px !important;
    font-size: 15px !important;
}

@media(max-width:1200px) {

    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefItem,
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 280px minmax(0, 1fr) !important;
        gap: 22px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefThumb,
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
        width: 280px !important;
        height: 158px !important;
        flex-basis: 280px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefActions,
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefActions {
        grid-column: 1 / -1 !important;
        width: auto !important;
        padding-left: 0 !important;
        justify-content: flex-start !important;
        flex-direction: row !important;
    }
}

@media(max-width:760px) {

    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list,
    #page-search.searchRefPage .searchRefResultList.is-list {
        padding: 0 18px !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefItem,
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItem {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
        min-height: 0 !important;
        padding: 18px 0 !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefThumb,
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefThumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16/9 !important;
        flex-basis: auto !important;
    }

    #page-search.searchRefPage.searchRefModernV5 .searchRefResultList.is-list .searchRefItemBody,
    #page-search.searchRefPage .searchRefResultList.is-list .searchRefItemBody {
        min-height: 0 !important;
    }
}






/* 内容页内容区折叠样式：仅作用于资源内容页，不影响搜索页、专题页和其他页面 */
#page-resource .resourceArticle {
    background: #fff !important;
    border: 1px solid var(--dk-final-border, #E8DED7) !important;
    border-radius: 16px !important;
    box-shadow: var(--dk-final-shadow, 0 14px 32px rgba(20, 26, 38, .06)) !important;
    overflow: hidden !important;
    display: block !important;
}

#page-resource .resourceArticle .resourceAccordionBlock {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 1px solid #F0E3DC !important;
    background: #fff !important;
}

#page-resource .resourceArticle .resourceAccordionBlock:first-child {
    border-top: 0 !important;
}

#page-resource .resourceAccordionSummary {
    min-height: 62px !important;
    padding: 0 22px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    cursor: pointer !important;
    list-style: none !important;
    user-select: none !important;
    background: linear-gradient(180deg, #fff 0%, #fffaf8 100%) !important;
    transition: background .16s ease, color .16s ease !important;
}

#page-resource .resourceAccordionSummary::-webkit-details-marker {
    display: none !important;
}

#page-resource .resourceAccordionSummary h2 {
    position: relative !important;
    margin: 0 !important;
    padding: 0 0 0 14px !important;
    color: #111827 !important;
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 900 !important;
    letter-spacing: .1px !important;
}

#page-resource .resourceAccordionSummary h2:before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    width: 4px !important;
    height: 18px !important;
    border-radius: 999px !important;
    background: #C40000 !important;
    transform: translateY(-50%) !important;
}

#page-resource .resourceAccordionSummary:hover {
    background: linear-gradient(180deg, #fff7f4 0%, #fff 100%) !important;
}

#page-resource .resourceAccordionState {
    width: 30px !important;
    height: 30px !important;
    border-radius: 999px !important;
    border: 1px solid #EED8D0 !important;
    background: #fff !important;
    color: #A80000 !important;
    flex: 0 0 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 6px 14px rgba(168, 0, 0, .05) !important;
}

#page-resource .resourceAccordionState:before {
    content: "+" !important;
    font-size: 18px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    transform: translateY(-1px) !important;
}

#page-resource .resourceAccordionBlock[open] .resourceAccordionState {
    background: #C40000 !important;
    border-color: #C40000 !important;
    color: #fff !important;
}

#page-resource .resourceAccordionBlock[open] .resourceAccordionState:before {
    content: "−" !important;
}

#page-resource .resourceAccordionContent {
    padding: 0 22px 22px !important;
    background: #fff !important;
    animation: resourceAccordionFade .16s ease both !important;
}

#page-resource .resourceAccordionContent:before {
    content: "" !important;
    display: block !important;
    height: 1px !important;
    margin: 0 0 18px !important;
    background: #F1E5DE !important;
}

#page-resource .resourceAccordionBlock:not([open]) .resourceAccordionContent {
    display: none !important;
}

#page-resource .resourceAccordionContent .resourceFeatureGrid,
#page-resource .resourceAccordionContent .resourceAudienceGrid,
#page-resource .resourceAccordionContent .resourceSceneGrid,
#page-resource .resourceAccordionContent .resourceScriptPreviewBox {
    margin-top: 0 !important;
}

#page-resource .resourceAccordionContent .resourceInfoPillRow {
    margin-top: 14px !important;
}

#page-resource .resourceAccordionContent .resourceScriptNotice {
    margin-top: 0 !important;
}

#page-resource .resourceAccordionContent .resourceDownloadNoteGrid {
    margin-top: 0 !important;
}

#page-resource .resourceAccordionContent .resourceFaqAccordion {
    margin-top: 0 !important;
}

@keyframes resourceAccordionFade {
    from {
        opacity: .65;
        transform: translateY(-3px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@media (max-width:760px) {
    #page-resource .resourceAccordionSummary {
        min-height: 56px !important;
        padding: 0 18px !important;
    }

    #page-resource .resourceAccordionSummary h2 {
        font-size: 17px !important;
    }

    #page-resource .resourceAccordionContent {
        padding: 0 18px 20px !important;
    }

    #page-resource .resourceAccordionState {
        width: 28px !important;
        height: 28px !important;
        flex-basis: 28px !important;
    }
}










/* 专题页：将“专题简介”标题统一为“资料说明 / 常见问题 / 专题内链导航”的标题样式，仅作用于专题页 */
#page-special .topicSeoIntroPanel {
    margin-top: 18px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#page-special .topicSeoIntroFull {
    padding: 0 !important;
    position: relative !important;
    background: transparent !important;
}

#page-special .topicSeoIntroFull:before {
    display: none !important;
    content: none !important;
}

#page-special .topicSeoIntroFull .topicIntroTitle {
    margin: 0 0 12px !important;
    padding: 0 !important;
    display: block !important;
    color: #141414 !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.2px !important;
}

#page-special .topicSeoIntroFull .topicIntroCopy {
    max-width: none !important;
    padding: 20px 24px 20px !important;
    border: 1px solid #f0ded7 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(81, 43, 27, .03) !important;
}

#page-special .topicSeoIntroFull .topicIntroCopy p {
    margin: 0 0 10px !important;
    color: #514942 !important;
    font-size: 13px !important;
    line-height: 1.9 !important;
    font-weight: 650 !important;
    text-align: left !important;
}

#page-special .topicSeoIntroFull .topicIntroCopy p:last-child {
    margin-bottom: 0 !important;
}

@media (max-width:760px) {
    #page-special .topicSeoIntroFull .topicIntroTitle {
        font-size: 20px !important;
    }

    #page-special .topicSeoIntroFull .topicIntroCopy {
        padding: 18px !important;
    }
}








/* 专题页 SEO 长文与内链：仅作用于专题页 */
#page-special .topicIntroCopy a,
#page-special .topicUseExplainText a,
#page-special .topicFaqAnswer a {
    color: #c40000 !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    border-bottom: 1px dashed rgba(196, 0, 0, .28) !important;
    padding-bottom: 1px !important;
}

#page-special .topicIntroCopy a:hover,
#page-special .topicUseExplainText a:hover,
#page-special .topicFaqAnswer a:hover {
    color: #a80000 !important;
    border-bottom-color: rgba(168, 0, 0, .55) !important;
}

#page-special .topicSeoIntroFull .topicIntroCopy p {
    margin-bottom: 12px !important;
    line-height: 1.95 !important;
}

#page-special .topicUseExplainText p {
    line-height: 1.88 !important;
}

#page-special .topicFaqBlockV2 .topicFaqAnswer {
    line-height: 1.9 !important;
}

@media (max-width:1180px) {
    #page-special .topicUseExplainCard {
        align-items: flex-start !important;
    }
}

















/* 专题页：专题内链导航三组链接列表增加分割线（仅作用于专题页） */
#page-special .topicInternalCardV3 .topicInternalPlainList,
#page-special .topicInternalPlainList.is-two-col {
    position: relative !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 34px !important;
    row-gap: 0 !important;
    padding-top: 2px !important;
}

#page-special .topicInternalCardV3 .topicInternalPlainList::before,
#page-special .topicInternalPlainList.is-two-col::before {
    content: "" !important;
    position: absolute !important;
    top: 2px !important;
    bottom: 2px !important;
    left: 50% !important;
    width: 1px !important;
    background: linear-gradient(180deg, transparent 0%, #efe1da 12%, #efe1da 88%, transparent 100%) !important;
    transform: translateX(-.5px) !important;
    pointer-events: none !important;
}

#page-special .topicInternalCardV3 .topicInternalPlainList a {
    min-height: 32px !important;
    display: flex !important;
    align-items: center !important;
    padding: 7px 0 8px !important;
    border-bottom: 1px solid #f2e8e2 !important;
    color: #554c47 !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 750 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#page-special .topicInternalCardV3 .topicInternalPlainLink:nth-last-child(1),
#page-special .topicInternalCardV3 .topicInternalPlainLink:nth-last-child(2) {
    border-bottom-color: transparent !important;
}

#page-special .topicInternalCardV3 .topicInternalPlainLink:hover {
    color: #c40000 !important;
    border-bottom-color: #edd1c8 !important;
}

@media (max-width:760px) {

    #page-special .topicInternalCardV3 .topicInternalPlainList,
    #page-special .topicInternalPlainList.is-two-col {
        grid-template-columns: 1fr !important;
        column-gap: 0 !important;
    }

    #page-special .topicInternalCardV3 .topicInternalPlainList::before,
    #page-special .topicInternalPlainList.is-two-col::before {
        display: none !important;
    }

    #page-special .topicInternalCardV3 .topicInternalPlainLink:nth-last-child(2) {
        border-bottom-color: #f2e8e2 !important;
    }
}


/* ===== 内容页参考图版式 V2：资源简介 / 讲稿预览 / 资料说明 / FAQ ===== */
#page-resource .resourceArticle {
    margin-top: 14px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#page-resource .resourceRefLayout {
    display: grid !important;
    gap: 14px !important;
}

#page-resource .resourceRefPanel {
    background: #fff !important;
    border: 1px solid #F0E2DB !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(120, 34, 18, .035) !important;
    overflow: hidden !important;
}

#page-resource .resourceRefFullPanel {
    padding: 18px 20px 18px !important;
}

#page-resource .resourceRefHead,
#page-resource .resourceRefFaqHead {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 10px !important;
}

#page-resource .resourceRefHead h2,
#page-resource .resourceRefFaqHead h2,
#page-resource .resourceRefSectionTitle h2,
#page-resource .resourceRefInfoText h2 {
    margin: 0 !important;
    color: #121826 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.1px !important;
}

#page-resource .resourceRefIcon {
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 26px !important;
    background: #E60012 !important;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 1 !important;
    box-shadow: 0 8px 15px rgba(214, 0, 18, .18) !important;
}

#page-resource .resourceRefIconBook {
    font-size: 11px !important;
}

#page-resource .resourceRefIconScript {
    background: #E60012 !important;
}

#page-resource .resourceRefCopy p,
#page-resource .resourceRefInfoText p {
    margin: 0 !important;
    color: #3f4650 !important;
    font-size: 13px !important;
    line-height: 1.95 !important;
    font-weight: 500 !important;
    text-align: left !important;
}

#page-resource .resourceRefCopy p+p {
    margin-top: 6px !important;
}

#page-resource .resourceRefMaterialBlock {
    display: grid !important;
    gap: 12px !important;
}

#page-resource .resourceRefSectionTitle {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 2px 0 0 !important;
}

#page-resource .resourceRefSectionIcon {
    width: 4px !important;
    height: 18px !important;
    border-radius: 999px !important;
    background: #E60012 !important;
    box-shadow: 0 6px 12px rgba(214, 0, 18, .16) !important;
    flex: 0 0 4px !important;
}

#page-resource .resourceRefInfoGrid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

#page-resource .resourceRefInfoCard {
    min-height: 168px !important;
    padding: 20px 22px !important;
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 20px !important;
    background: #fff !important;
    border: 1px solid #F0E2DB !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(120, 34, 18, .035) !important;
}

#page-resource .resourceRefBigIcon {
    width: 70px !important;
    height: 70px !important;
    border-radius: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    font-size: 34px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    justify-self: center !important;
    flex: 0 0 70px !important;
}

#page-resource .resourceRefIconRed {
    background: linear-gradient(180deg, #F20A18 0%, #D60000 100%) !important;
    box-shadow: 0 10px 18px rgba(214, 0, 0, .15) !important;
}

#page-resource .resourceRefIconOrange {
    background: linear-gradient(180deg, #FFA126 0%, #FF8A00 100%) !important;
    box-shadow: 0 10px 18px rgba(255, 138, 0, .16) !important;
}

#page-resource .resourceRefIconBlue {
    background: linear-gradient(180deg, #2E9BEF 0%, #1680D8 100%) !important;
    box-shadow: 0 10px 18px rgba(22, 128, 216, .16) !important;
}

#page-resource .resourceRefInfoText h2 {
    margin-bottom: 8px !important;
}

#page-resource .resourceRefInfoText p {
    line-height: 1.9 !important;
}

#page-resource .resourceRefFaqPanel {
    margin-top: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

#page-resource .resourceRefFaqHead {
    padding: 0 !important;
    margin: 0 0 10px !important;
}

#page-resource .resourceRefFaqIcon {
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #E60012 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
}

#page-resource .resourceRefFaqGrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 12px !important;
}

#page-resource .resourceRefFaqItem {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: flex-start !important;
    min-height: 88px !important;
    padding: 14px 16px !important;
    border-radius: 12px !important;
    border: 1px solid #F0E2DB !important;
    background: #fff !important;
    box-shadow: 0 7px 18px rgba(120, 34, 18, .03) !important;
}

#page-resource .resourceRefFaqNo {
    width: 38px !important;
    height: 38px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 2px !important;
    background: #E60012 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

#page-resource .resourceRefFaqBody h3 {
    margin: 0 0 6px !important;
    color: #121826 !important;
    font-size: 13.5px !important;
    line-height: 1.45 !important;
    font-weight: 1000 !important;
}

#page-resource .resourceRefFaqBody p {
    margin: 0 !important;
    color: #5a626c !important;
    font-size: 12px !important;
    line-height: 1.7 !important;
    font-weight: 500 !important;
}

@media (max-width:1180px) {
    #page-resource .resourceRefInfoGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width:960px) {

    #page-resource .resourceRefInfoGrid,
    #page-resource .resourceRefFaqGrid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width:640px) {
    #page-resource .resourceRefFullPanel {
        padding: 15px 14px !important;
    }

    #page-resource .resourceRefInfoCard {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        text-align: left !important;
        padding: 16px 14px !important;
        min-height: auto !important;
    }

    #page-resource .resourceRefBigIcon {
        justify-self: flex-start !important;
        width: 54px !important;
        height: 54px !important;
        font-size: 26px !important;
        border-radius: 15px !important;
    }

    #page-resource .resourceRefFaqItem {
        grid-template-columns: 42px minmax(0, 1fr) !important;
        padding: 12px !important;
    }

    #page-resource .resourceRefHead h2,
    #page-resource .resourceRefFaqHead h2,
    #page-resource .resourceRefSectionTitle h2,
    #page-resource .resourceRefInfoText h2 {
        font-size: 16px !important;
    }

    #page-resource .resourceRefCopy p,
    #page-resource .resourceRefInfoText p {
        font-size: 12.5px !important;
        line-height: 1.85 !important;
    }
}


/* ===== 内容页参考图版式 V3：统一标题样式、删除说明卡片大图标、优化 FAQ 编号 ===== */
#page-resource .resourceRefLayout {
    gap: 16px !important;
}

#page-resource .resourceRefFullPanel {
    padding: 20px 24px 22px !important;
}

#page-resource .resourceRefPanelTitle,
#page-resource .resourceRefFaqTitleLine {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 13px !important;
}

#page-resource .resourceRefPanelTitle h2,
#page-resource .resourceRefFaqTitleLine h2,
#page-resource .resourceRefSectionTitle h2 {
    margin: 0 !important;
    color: #071426 !important;
    font-size: 20px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.2px !important;
}

#page-resource .resourceRefSectionIcon {
    width: 5px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: #E60012 !important;
    box-shadow: 0 6px 12px rgba(214, 0, 18, .16) !important;
    flex: 0 0 5px !important;
}

#page-resource .resourceRefIcon,
#page-resource .resourceRefFaqIcon,
#page-resource .resourceRefBigIcon {
    display: none !important;
}

#page-resource .resourceRefMaterialBlock {
    gap: 13px !important;
}

#page-resource .resourceRefInfoGrid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
}

#page-resource .resourceRefInfoCard {
    min-height: 205px !important;
    display: block !important;
    grid-template-columns: 1fr !important;
    padding: 24px 30px !important;
    background: #fff !important;
    border: 1px solid #F0E2DB !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(120, 34, 18, .035) !important;
}

#page-resource .resourceRefInfoText {
    display: block !important;
    width: 100% !important;
}

#page-resource .resourceRefInfoText h2 {
    margin: 0 0 13px !important;
    text-align: center !important;
    color: #071426 !important;
    font-size: 19px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
}

#page-resource .resourceRefInfoText p {
    margin: 0 !important;
    color: #1f2937 !important;
    font-size: 13.5px !important;
    line-height: 1.95 !important;
    font-weight: 500 !important;
    text-align: left !important;
}

#page-resource .resourceRefCopy p {
    color: #172033 !important;
    font-size: 14px !important;
    line-height: 2.05 !important;
}

#page-resource .resourceRefFaqPanel {
    margin-top: 2px !important;
}

#page-resource .resourceRefFaqGrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 16px !important;
}

#page-resource .resourceRefFaqItem {
    display: grid !important;
    grid-template-columns: 50px minmax(0, 1fr) !important;
    gap: 12px !important;
    min-height: 96px !important;
    padding: 16px 18px !important;
    border-radius: 12px !important;
    border: 1px solid #F0E2DB !important;
    background: #fff !important;
    box-shadow: 0 7px 18px rgba(120, 34, 18, .03) !important;
}

#page-resource .resourceRefFaqNo {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #E60012 !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    font-weight: 1000 !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
}

#page-resource .resourceRefFaqBody h3 {
    margin: 0 0 7px !important;
    color: #071426 !important;
    font-size: 14.5px !important;
    line-height: 1.45 !important;
    font-weight: 1000 !important;
}

#page-resource .resourceRefFaqBody{
    margin: 0 !important;
    color: #4b5563 !important;
    font-size: 12.5px !important;
    line-height: 1.8 !important;
}

@media (max-width:1180px) {
    #page-resource .resourceRefInfoGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width:960px) {

    #page-resource .resourceRefInfoGrid,
    #page-resource .resourceRefFaqGrid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width:640px) {
    #page-resource .resourceRefFullPanel {
        padding: 16px 15px 18px !important;
    }

    #page-resource .resourceRefInfoCard {
        min-height: auto !important;
        padding: 18px 16px !important;
    }

    #page-resource .resourceRefInfoText h2 {
        text-align: left !important;
        font-size: 17px !important;
    }

    #page-resource .resourceRefFaqItem {
        grid-template-columns: 42px minmax(0, 1fr) !important;
        padding: 13px 14px !important;
    }

    #page-resource .resourceRefPanelTitle h2,
    #page-resource .resourceRefFaqTitleLine h2,
    #page-resource .resourceRefSectionTitle h2 {
        font-size: 18px !important;
    }
}


/* 内容页 V4：资源简介、讲稿预览标题外置，统一参考“资料说明”标题样式 */
#page-resource .resourceRefSingleBlock {
    display: grid !important;
    gap: 10px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#page-resource .resourceRefSingleBlock>.resourceRefPanelTitle {
    margin: 0 !important;
    padding: 0 !important;
}

#page-resource .resourceRefSingleBlock>.resourceRefPanelTitle h2 {
    margin: 0 !important;
    color: #071426 !important;
    font-size: 20px !important;
    line-height: 1.35 !important;
    font-weight: 1000 !important;
    letter-spacing: -.2px !important;
}

#page-resource .resourceRefSingleBlock>.resourceRefPanelTitle .resourceRefSectionIcon {
    display: inline-block !important;
    width: 5px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: #E60012 !important;
    box-shadow: 0 6px 12px rgba(214, 0, 18, .16) !important;
    flex: 0 0 5px !important;
}

#page-resource .resourceRefSingleBlock>.resourceRefPanel {
    margin: 0 !important;
    background: #fff !important;
    border: 1px solid #F0E2DB !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(120, 34, 18, .035) !important;
}

#page-resource .resourceRefIntroPanel.resourceRefSingleBlock,
#page-resource .resourceRefScriptPanel.resourceRefSingleBlock {
    padding: 0 !important;
}

/* 内容页 V5：资料说明删除“资料类型”，四个说明卡片固定 2×2 展示 */
#page-resource .resourceRefMaterialBlock .resourceRefInfoGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

#page-resource .resourceRefMaterialBlock .resourceRefInfoCard {
    min-height: 188px !important;
    padding: 24px 30px !important;
}

@media (max-width:960px) {
    #page-resource .resourceRefMaterialBlock .resourceRefInfoGrid {
        grid-template-columns: 1fr !important;
    }
}

/* 全站字体统一：微软雅黑 */
html,
body,
body * {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
}

button,
input,
select,
textarea {
    font-family: "Microsoft YaHei", "微软雅黑", Arial, sans-serif !important;
}