body:has(.category-page) { background: #f3f5ed; color: #10271c; }
body:has(.category-page) #mainNavbar, body:has(.category-page) .music-player { display: none !important; }
body:has(.category-page) .page-container { animation: none; width: 100%; }
body:has(.category-page) .main-content { padding: 0 !important; }
body:has(.category-page) .footer { background: #f3f5ed; border: 0; margin-left: calc(clamp(112px, 9.375vw, 142px) + 25px); padding: 18px 20px 30px 0; }
.category-page { margin-left: calc(clamp(112px, 9.375vw, 142px) + 25px); padding: 30px 20px 0 0; }
.category-topbar { align-items: center; display: flex; font-size: 12px; font-weight: 800; justify-content: space-between; letter-spacing: .09em; margin-bottom: 14px; text-transform: uppercase; }.category-topbar a { color: #10271c; margin-left: 20px; text-decoration: none; }.category-topbar a:last-child { border-bottom: 1px solid #10271c; padding-bottom: 4px; }
.category-hero { align-items: flex-end; background: #1f6137 var(--category-hero) center / cover; border-radius: clamp(22px, 2.6vw, 50px); color: #fff; display: flex; height: min(480px, 45vw); min-height: 360px; overflow: hidden; padding: clamp(26px, 4vw, 70px); position: relative; }.category-hero::before { background: linear-gradient(90deg, rgba(8,36,21,.9), rgba(10,46,28,.28)); content: ''; inset: 0; position: absolute; }.category-hero__shade { background-image: radial-gradient(rgba(255,255,255,.2) .5px, transparent .8px); background-size: 4px 4px; inset: 0; opacity: .2; position: absolute; }.category-hero > div:last-child { position: relative; }.category-hero p, .category-catalog__head p, .category-recent__head p { color: #d7ef8d; font-size: 11px; font-weight: 800; letter-spacing: .13em; margin: 0 0 18px; }.category-hero h1 { font-size: clamp(52px, 6.8vw, 108px); letter-spacing: -.09em; line-height: .86; margin: 0; }.category-hero em { color: #d7ef8d; font-family: Georgia, serif; font-weight: 400; }.category-hero span { display: block; font-size: 16px; margin-top: 20px; max-width: 380px; }
.category-catalog { padding: clamp(65px, 9vw, 145px) clamp(0px, 2.5vw, 42px); }.category-catalog__head { align-items: end; display: flex; justify-content: space-between; margin-bottom: 38px; }.category-catalog__head p, .category-recent__head p { color: #2e7d32; }.category-catalog__head h2, .category-recent__head h2 { font-size: clamp(38px, 4.5vw, 75px); letter-spacing: -.08em; line-height: .92; margin: 0; }.category-catalog__head > span { font-size: 13px; font-weight: 700; padding-bottom: 5px; }
.category-grid { display: grid; gap: clamp(12px, 1.55vw, 26px); grid-template-columns: repeat(3, 1fr); }.category-card { background: #e0edd4; border-radius: clamp(20px, 2.2vw, 38px); color: #10271c; display: flex; flex-direction: column; min-height: 510px; overflow: hidden; position: relative; text-decoration: none; transition: transform .45s cubic-bezier(.2,.8,.2,1); }.category-card:nth-child(3n+2) { background: #b8dba8; }.category-card:nth-child(3n) { background: #d9e9ba; }.category-card:hover { transform: translateY(-9px); }.category-card__image { background: var(--category-image) center / cover; height: 158px; opacity: .78; }.category-card__body { display: flex; flex: 1; flex-direction: column; padding: 20px 22px 18px; }.category-card__top { align-items: center; display: flex; font-family: Georgia, serif; font-size: 12px; justify-content: space-between; }.category-card__top i { font-family: 'bootstrap-icons'; font-size: 19px; }.category-card h3 { font-size: clamp(26px, 2.2vw, 38px); letter-spacing: -.07em; line-height: 1; margin: 25px 0 12px; }.category-card__body > p { font-size: 14px; line-height: 1.45; margin: 0; opacity: .72; }.category-card__meta { align-items: baseline; display: flex; gap: 5px; margin-top: auto; padding-top: 20px; }.category-card__meta b { font-size: 30px; letter-spacing: -.06em; }.category-card__meta span { font-size: 12px; font-weight: 700; }.category-card__meta small { border: 1px solid rgba(16,39,28,.45); border-radius: 20px; font-size: 10px; font-weight: 800; margin-left: auto; padding: 4px 7px; }.category-card__latest { background: rgba(255,255,255,.56); border-top: 1px solid rgba(16,39,28,.2); display: flex; flex-direction: column; gap: 5px; min-height: 88px; padding: 13px 22px 15px; }.category-card__latest span { font-size: 10px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }.category-card__latest strong { font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.category-card__latest small { font-size: 11px; opacity: .7; }
.category-recent { background: #164c2d; border-radius: clamp(22px, 2.6vw, 50px); color: #fff; margin-bottom: 12px; padding: clamp(28px, 4.5vw, 78px); }.category-recent__head { align-items: end; display: grid; grid-template-columns: 1fr 1fr auto; margin-bottom: 35px; }.category-recent__head p { grid-column: 1 / -1; }.category-recent__head h2 { font-size: clamp(38px, 4.5vw, 72px); }.category-recent__head a { border-bottom: 1px solid rgba(255,255,255,.7); color: #fff; font-size: 13px; font-weight: 700; padding-bottom: 6px; text-decoration: none; }.category-recent__grid { display: grid; gap: 14px; grid-template-columns: repeat(4, 1fr); }.category-topic { background: #ecf2e4; border-radius: 20px; color: #10271c; display: flex; flex-direction: column; min-height: 315px; overflow: hidden; padding-bottom: 18px; position: relative; text-decoration: none; }.category-topic__image { background: #b9d8a9 var(--topic-image) center / cover; display: block; height: 145px; }.category-topic__type, .category-topic strong, .category-topic small { margin-left: 17px; margin-right: 42px; }.category-topic__type { font-size: 10px; font-weight: 800; letter-spacing: .09em; margin-top: 16px; text-transform: uppercase; }.category-topic strong { font-size: 20px; letter-spacing: -.05em; line-height: 1.05; margin-top: 10px; }.category-topic small { font-size: 11px; margin-top: auto; opacity: .7; padding-top: 12px; }.category-topic > i { bottom: 17px; font-size: 19px; position: absolute; right: 17px; }.category-empty, .category-error { background: #e0edd4; border-radius: 20px; font-size: 16px; padding: 40px; }
@media (max-width: 1023px) { body:has(.category-page) .footer { margin-left: 0; padding: 18px 20px 30px; }.category-page { margin-left: 0; padding: 0 10px; }.category-topbar { display: none; }.category-hero { border-radius: 0 0 30px 30px; height: 380px; }.category-grid { grid-template-columns: repeat(2, 1fr); }.category-recent__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) { body:has(.category-page) { padding-bottom: 74px; } body:has(.category-page) .footer { padding: 18px 16px 96px; }.category-rail { display: none !important; }.category-page { padding-top: 62px; }.category-hero { align-items: flex-end; height: calc(55svh - 62px); min-height: 315px; padding: 28px 22px; }.category-hero h1 { font-size: 53px; }.category-hero span { font-size: 14px; margin-top: 15px; }.category-catalog { padding: 54px 0; }.category-catalog__head { align-items: start; flex-direction: column; gap: 14px; margin-bottom: 25px; padding: 0 10px; }.category-catalog__head h2 { font-size: 37px; }.category-grid { gap: 12px; grid-template-columns: 1fr; }.category-card { border-radius: 22px; min-height: 0; }.category-card__image { height: 118px; }.category-card__body { min-height: 188px; padding: 17px 18px; }.category-card h3 { font-size: 28px; margin: 17px 0 8px; }.category-card__body > p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }.category-card__latest { min-height: 78px; padding: 11px 18px; }.category-recent { border-radius: 22px; margin: 0; padding: 28px 18px; }.category-recent__head { display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 24px; }.category-recent__head p { flex-basis: 100%; margin-bottom: 0; }.category-recent__head h2 { font-size: 37px; }.category-recent__head a { margin-left: auto; }.category-recent__grid { display: flex; gap: 11px; margin-right: -18px; overflow-x: auto; padding-right: 18px; scrollbar-width: none; }.category-recent__grid::-webkit-scrollbar { display: none; }.category-topic { flex: 0 0 76vw; min-height: 300px; } }

/* 分类识别系统：每个入口保持固定色彩与图标，避免分类卡重复使用同一组图片。 */
.category-hero { justify-content: space-between; }
.category-hero__content { position: relative; }
.category-hero__stats { align-items: stretch; display: flex; gap: 1px; list-style: none; margin: 0; padding: 0; position: relative; }
.category-hero__stats li { backdrop-filter: blur(10px); background: rgba(255, 255, 255, .12); display: flex; flex-direction: column; min-width: 108px; padding: 16px 18px; }
.category-hero__stats strong { color: #d7ef8d; font-size: 28px; letter-spacing: -.06em; line-height: 1; }
.category-hero__stats span { color: rgba(255, 255, 255, .78); font-size: 10px; font-weight: 800; letter-spacing: .08em; margin-top: 7px; text-transform: uppercase; }
.category-card { box-shadow: 0 16px 32px rgba(16, 39, 28, .05); }
.category-card:hover { box-shadow: 0 23px 42px rgba(16, 39, 28, .15); }
.category-card__image { align-items: center; background: var(--category-tone, #d0e5c5); display: flex; height: 150px; justify-content: center; opacity: 1; overflow: hidden; position: relative; }
.category-card__image::after { border: 1px solid rgba(16, 39, 28, .18); border-radius: 50%; content: ''; height: 150px; position: absolute; right: -35px; top: -52px; width: 150px; }
.category-card__image i { color: #153c25; font-size: 47px; position: relative; z-index: 1; }
.category-card__image span { color: rgba(16, 39, 28, .58); font-family: Georgia, serif; font-size: 13px; left: 20px; position: absolute; top: 18px; }
.category-card--tone-1 { --category-tone: #bdddb4; }.category-card--tone-2 { --category-tone: #dce5a7; }.category-card--tone-3 { --category-tone: #afd9c5; }.category-card--tone-4 { --category-tone: #d7d1a8; }.category-card--tone-5 { --category-tone: #c4dfcf; }.category-card--tone-6 { --category-tone: #e0d5b4; }
.category-card__top > span { color: #477553; font-family: Inter, "PingFang SC", sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.category-card__latest { background: rgba(255, 255, 255, .69); }

@media (max-width: 767px) {
    .category-hero { height: calc(46svh - 62px); min-height: 270px; padding: 25px 20px 18px; }
    .category-hero__stats { gap: 1px; margin-left: 12px; }
    .category-hero__stats li { box-sizing: border-box; min-width: 54px; padding: 10px 6px; }
    .category-hero__stats strong { font-size: 20px; }
    .category-hero__stats span { font-size: 8px; letter-spacing: .02em; margin-top: 5px; }
    .category-hero__content { max-width: 160px; }
    .category-hero h1 { font-size: 44px; }
    .category-hero span { font-size: 12px; max-width: 190px; }
    .category-card__image { height: 102px; }
    .category-card__image i { font-size: 36px; }
    .category-card__image::after { height: 110px; right: -24px; top: -36px; width: 110px; }
}
