/*
 * mmkat.com 东方文化门户视觉系统
 * 东方古典典藏杂志：宣纸底、玄墨字、朱砂点睛、雅金分隔、竹青辅助。
 */

:root {
    --paper: #F7F5EF;
    --paper-soft: #FBF9F4;
    --paper-deep: #EFE9DE;
    --surface: #FFFDFC;
    --ink: #1F2421;
    --ink-soft: #343A36;
    --muted: #686D68;
    --muted-light: #8A8E88;
    --line: #E8E1D6;
    --line-strong: #D8CDBD;
    --cinnabar: #A63A2A;
    --cinnabar-dark: #843025;
    --cinnabar-soft: #F7EAE5;
    --gold: #C5A059;
    --gold-dark: #8D6C33;
    --gold-soft: #F4EEDC;
    --jade: #3A6351;
    --jade-dark: #284C3D;
    --purple: #65527B;
    --container: 1240px;
    --serif: "Noto Serif SC", "Source Han Serif CN", "Source Han Serif SC", "Songti SC", "STSong", "SimSun", serif;
    --sans: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --shadow: 0 10px 32px rgba(44, 30, 20, .065);
    --shadow-soft: 0 4px 20px rgba(44, 30, 20, .04);
    --radius-lg: 18px;
    --radius-md: 14px;
    --radius-sm: 8px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    overflow-x: hidden;
    color: var(--ink);
    background:
        radial-gradient(circle at 8% 5%, rgba(197,160,89,.055), transparent 28rem),
        var(--paper);
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }
[hidden] { display: none !important; }

.container {
    width: 100%;
    max-width: var(--container);
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
}

.eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--gold-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.eyebrow::before {
    content: "";
    width: 22px;
    height: 1px;
    background: currentColor;
}

.button {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: 7px;
    font-weight: 700;
    cursor: pointer;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease, color .2s ease;
}
.button:hover { transform: translateY(-1px); }
.button-primary { color: #fff; background: var(--ink); border-color: var(--ink); }
.button-quiet { color: var(--ink); background: transparent; border-color: var(--line-strong); }
.text-button {
    border: 0;
    padding: 8px 10px;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
}
.text-button:hover { color: var(--cinnabar); }

/* Header */
.utility-bar {
    min-height: 30px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--line);
    background: #F0ECE3;
    color: #77756F;
    font-size: 11px;
    letter-spacing: .04em;
}
.utility-inner,
.utility-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
.utility-links a:hover { color: var(--cinnabar); }
.site-header {
    position: relative;
    z-index: 30;
    border-bottom: 1px solid var(--line);
    background: rgba(247,245,239,.965);
    backdrop-filter: blur(12px);
}
.header-main {
    min-height: 78px;
    display: grid;
    grid-template-columns: 230px minmax(260px, 520px) 1fr;
    align-items: center;
    gap: 26px;
}
.brand {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 11px;
}
.brand-mark {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 9px 9px 9px 2px;
    background: var(--ink);
    color: #F6EEDC;
    box-shadow: inset 0 0 0 1px rgba(197,160,89,.15);
    font: 700 21px/1 var(--serif);
}
.brand-copy { display: grid; line-height: 1.1; }
/* 首页把站名渲染成 <h1 class="brand-title">，其余页面仍是 <strong>。
   两者共用同一条声明，且 .brand-copy 是 grid 容器、两种标签都会被块级化，
   故渲染完全等价；只需额外清掉 h1 的 UA 默认外边距（本表没有全局标签 reset）。 */
.brand-copy strong,
.brand-copy .brand-title {
    margin: 0;
    color: var(--ink);
    font: 700 21px/1.1 var(--serif);
    letter-spacing: .08em;
}
.brand-copy small {
    margin-top: 5px;
    color: var(--muted-light);
    font-size: 9px;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.global-search,
.side-search {
    display: flex;
    overflow: hidden;
    border: 1px solid var(--line-strong);
    border-radius: 7px;
    background: rgba(255,255,255,.68);
    transition: border-color .2s ease, box-shadow .2s ease;
}
.global-search { height: 42px; }
.global-search:focus-within,
.side-search:focus-within {
    border-color: rgba(58,99,81,.7);
    box-shadow: 0 0 0 3px rgba(58,99,81,.08);
}
.global-search input,
.side-search input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    padding: 0 14px;
    color: var(--ink);
    background: transparent;
}
.global-search input::placeholder,
.side-search input::placeholder { color: #9A978F; }
.global-search button,
.side-search button {
    flex: 0 0 auto;
    border: 0;
    border-left: 1px solid var(--line);
    padding: 0 16px;
    background: transparent;
    color: var(--ink-soft);
    font-weight: 700;
    cursor: pointer;
}
.global-search button:hover,
.side-search button:hover { color: var(--cinnabar); }
.account-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
}
.menu-toggle {
    width: 40px;
    height: 40px;
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    padding: 0 10px;
    border: 1px solid var(--line-strong);
    border-radius: 7px;
    background: transparent;
    cursor: pointer;
}
.menu-toggle span { width: 100%; height: 1px; background: var(--ink); }
.channel-nav {
    border-top: 1px solid rgba(232,225,214,.7);
    border-bottom: 1px solid var(--line);
    background: rgba(255,253,249,.72);
}
.channel-nav-inner {
    min-height: 43px;
    display: flex;
    align-items: center;
}
.channel-link {
    position: relative;
    padding: 11px 18px;
    color: #4E544F;
    font: 600 13px/1.5 var(--serif);
    letter-spacing: .04em;
    transition: color .2s ease;
}
.channel-link::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 5px;
    height: 1px;
    background: var(--cinnabar);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .2s ease;
}
.channel-link:hover { color: var(--cinnabar); }
.channel-link:hover::after { transform: scaleX(1); }
.hot-strip {
    background: #ECE7DC;
    color: #6F706A;
    font-size: 11px;
}
.hot-strip-inner {
    min-height: 30px;
    display: flex;
    align-items: center;
    gap: 18px;
    overflow: hidden;
    white-space: nowrap;
}
.hot-strip strong { color: var(--cinnabar); }
.hot-strip a:hover { color: var(--ink); }

/* Shared section language */
.portal-main { padding-bottom: 8px; }
.section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 20px;
}
.section-heading.compact { align-items: center; }
.section-heading h2 {
    margin: 5px 0 0;
    color: var(--ink);
    font: 700 clamp(25px, 2.5vw, 32px)/1.25 var(--serif);
    letter-spacing: .02em;
}
.section-heading > p {
    max-width: 510px;
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.75;
}

/* Hero */
.hero-section { padding-top: 28px; padding-bottom: 18px; }
.hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 7.4fr) minmax(320px, 4.6fr);
    gap: 20px;
    align-items: stretch;
}
.hero-card {
    position: relative;
    height: 448px;
    min-width: 0;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    padding: 42px 44px;
    border: 1px solid rgba(31,36,33,.12);
    border-radius: var(--radius-lg);
    background-color: #D8D1C5;
    background-size: cover;
    background-position: center;
    box-shadow: var(--shadow-soft);
}
.hero-scrim {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(18,24,21,.90) 0%, rgba(24,30,27,.72) 44%, rgba(24,30,27,.28) 72%, rgba(24,30,27,.10) 100%),
        linear-gradient(0deg, rgba(15,20,18,.28), transparent 55%);
}
.hero-content {
    position: relative;
    z-index: 1;
    max-width: 600px;
    color: #fff;
}
.hero-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 13px;
    color: #E8D3A2;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .14em;
}
.hero-label::before { content: ""; width: 24px; height: 1px; background: var(--gold); }
/* .hero-headline 是首屏头条降级后的 <h2>（H1 让给页头站名），样式与原 h1 完全一致 */
.hero-content h1,
.hero-content .hero-headline {
    max-width: 570px;
    margin: 0 0 14px;
    color: #FFFEFA;
    font: 700 clamp(29px, 3vw, 36px)/1.35 var(--serif);
    letter-spacing: .015em;
    text-wrap: balance;
}
.hero-content p {
    max-width: 550px;
    margin: 0 0 12px;
    color: rgba(255,255,255,.82);
    font-size: 14px;
    line-height: 1.75;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.hero-meta {
    display: flex;
    gap: 14px;
    margin-bottom: 19px;
    color: rgba(255,255,255,.62);
    font-size: 11px;
}
.hero-btn {
    min-height: 40px;
    padding: 0 17px;
    color: #F8ECD0;
    border-color: rgba(197,160,89,.78);
    background: rgba(16,20,18,.26);
    backdrop-filter: blur(5px);
}
.hero-btn:hover { color: #fff; border-color: #E4C37C; background: rgba(166,58,42,.74); }

.focus-stack {
    height: 448px;
    min-width: 0;
    display: grid;
    grid-template-rows: auto minmax(0,1fr) minmax(0,1fr);
    gap: 11px;
}
.focus-heading {
    min-height: 56px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding: 2px 4px 8px;
    border-bottom: 1px solid var(--line-strong);
}
.focus-heading h2 { margin: 2px 0 0; font: 700 22px/1.2 var(--serif); }
.focus-heading time { color: var(--muted-light); font-size: 11px; }
.focus-card {
    min-height: 0;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px 15px 15px 17px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background: rgba(255,255,255,.78);
    box-shadow: 0 3px 16px rgba(44,30,20,.025);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.focus-card:hover {
    transform: translateY(-2px);
    border-color: #D8CCB8;
    box-shadow: var(--shadow-soft);
}
.focus-body { flex: 1; min-width: 0; }
.focus-meta { display: flex; align-items: center; gap: 9px; margin-bottom: 6px; }
.focus-index { color: var(--gold-dark); font: 700 13px/1 var(--serif); }
.article-channel { color: var(--jade); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.focus-card h3 {
    margin: 0 0 6px;
    font: 700 17px/1.45 var(--serif);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.focus-card h3 a:hover { color: var(--cinnabar); }
.focus-card p {
    margin: 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.focus-read { display: block; margin-top: 6px; color: var(--gold-dark); font-size: 10.5px; }
.focus-thumb-wrap {
    width: 124px;
    height: 92px;
    flex: 0 0 124px;
    overflow: hidden;
    border-radius: 8px;
    background: var(--paper-deep);
}
.focus-thumb,
.feed-thumb,
.category-thumb {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    transition: transform .35s ease;
}
.focus-card:hover .focus-thumb,
.feed-item:hover .feed-thumb,
.category-article:hover .category-thumb { transform: scale(1.045); }

/* Product matrix */
.matrix-section { padding-top: 38px; padding-bottom: 34px; }
.product-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.product-card {
    position: relative;
    min-height: 244px;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #E4DDD1;
    border-radius: var(--radius-md);
    background: #fff;
    box-shadow: var(--shadow-soft);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.product-card:hover {
    transform: translateY(-4px);
    border-color: #D9CDB9;
    box-shadow: 0 12px 34px rgba(44,30,20,.08);
}
.product-art-layer {
    position: absolute;
    inset: 0 0 0 34%;
    background-size: cover;
    background-position: center;
    opacity: .82;
    transition: transform .35s ease;
}
.product-card:hover .product-art-layer { transform: scale(1.035); }
.product-scrim-layer {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(255,255,255,.995) 0%, rgba(255,255,255,.96) 42%, rgba(255,255,255,.62) 67%, rgba(255,255,255,.24) 100%);
}
.product-card-body {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 23px 24px;
}
.product-topline { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.product-meta { color: var(--muted-light); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.product-symbol {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    flex: 0 0 34px;
    border: 1px solid currentColor;
    border-radius: 2px;
    color: var(--cinnabar);
    font: 700 16px/1 var(--serif);
    transform: rotate(-2deg);
}
.product-card h3 { margin: 20px 0 5px; font: 700 28px/1.2 var(--serif); letter-spacing: .06em; }
.product-card p { margin: 0; color: var(--muted); font-size: 13px; }
.product-action {
    width: fit-content;
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid rgba(197,160,89,.38);
    color: var(--jade-dark);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
}
.product-action b { margin-left: 5px; color: var(--gold-dark); }
.product-cinnabar .product-symbol { color: var(--cinnabar); }
.product-jade .product-symbol { color: var(--jade); }
.product-purple .product-symbol { color: var(--purple); }

/* Editorial feed + sidebar */
.content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 308px;
    gap: 30px;
    align-items: start;
    padding-top: 28px;
    padding-bottom: 56px;
}
.feed-panel { min-width: 0; }
.live-dot { display: inline-flex; align-items: center; gap: 7px; color: var(--muted-light); font-size: 11px; }
.live-dot i { width: 6px; height: 6px; border-radius: 50%; background: var(--jade); box-shadow: 0 0 0 4px rgba(58,99,81,.08); }
.feed-tabs {
    display: flex;
    gap: 7px;
    padding: 0 0 14px;
    overflow-x: auto;
    scrollbar-width: none;
}
.feed-tabs::-webkit-scrollbar { display: none; }
.feed-tab {
    flex: 0 0 auto;
    min-height: 31px;
    padding: 0 13px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: rgba(255,255,255,.45);
    color: var(--muted);
    font-size: 11px;
    cursor: pointer;
}
.feed-tab:hover { color: var(--cinnabar); border-color: #D8CDBD; }
.feed-tab.active { color: #fff; border-color: var(--ink); background: var(--ink); }
.feed-list { display: grid; gap: 12px; }
.feed-item,
.category-article {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 24px;
    align-items: center;
    padding: 21px 22px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: rgba(255,255,255,.78);
    box-shadow: 0 3px 15px rgba(44,30,20,.025);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.feed-item:hover,
.category-article:hover {
    transform: translateY(-2px);
    border-color: #D9CDBD;
    box-shadow: var(--shadow-soft);
}
.feed-copy,
.category-article-body { min-width: 0; }
.feed-meta,
.category-article-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 12px;
    margin-bottom: 8px;
    color: var(--muted-light);
    font-size: 10.5px;
}
.feed-category {
    padding: 2px 7px;
    border: 1px solid rgba(166,58,42,.18);
    border-radius: 3px;
    background: var(--cinnabar-soft);
    color: var(--cinnabar-dark);
    font-weight: 800;
}
.feed-copy h3,
.category-article h2 {
    margin: 0 0 7px;
    color: var(--ink);
    font: 700 21px/1.42 var(--serif);
    letter-spacing: .01em;
}
.feed-copy h3 a:hover,
.category-article h2 a:hover { color: var(--cinnabar); }
.feed-copy p,
.category-article p {
    margin: 0;
    color: #676D68;
    font-size: 13px;
    line-height: 1.68;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.feed-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 14px;
    margin-top: 12px;
    color: var(--muted-light);
    font-size: 10.5px;
}
.feed-footer a,
.read-more { margin-left: auto; color: var(--gold-dark); font-weight: 800; }
.feed-footer a:hover,
.read-more:hover { color: var(--cinnabar); }
.feed-thumb-wrap,
.category-thumb-wrap {
    width: 220px !important;
    height: 140px !important;
    min-width: 220px;
    max-width: 220px;
    overflow: hidden;
    align-self: center;
    border-radius: 8px;
    background: var(--paper-deep);
}
.view-channel {
    display: block;
    margin-top: 6px;
    padding: 13px 16px;
    border: 1px dashed var(--line-strong);
    border-radius: 9px;
    color: var(--gold-dark);
    text-align: center;
    font: 700 12px/1.4 var(--serif);
}
.view-channel:hover { border-color: var(--gold); color: var(--cinnabar); }
.sidebar {
    min-width: 0;
    display: grid;
    gap: 14px;
    position: sticky;
    top: 18px;
}
.side-card {
    overflow: hidden;
    padding: 19px 18px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: rgba(255,255,255,.72);
    box-shadow: 0 3px 16px rgba(44,30,20,.024);
}
.side-title {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 13px;
    padding-bottom: 11px;
    border-bottom: 1px solid var(--line);
}
.side-title span { color: var(--gold-dark); font-size: 9px; font-weight: 800; letter-spacing: .13em; }
.side-title h3 { margin: 2px 0 0; font: 700 17px/1.3 var(--serif); }
.side-title b { color: var(--muted-light); font-size: 9px; font-weight: 600; }
.rank-list { margin: 0; padding: 0; list-style: none; }
.rank-list li {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr);
    gap: 8px;
    padding: 10px 0;
    border-bottom: 1px solid var(--line);
}
.rank-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.rank-list > li > span { color: var(--gold-dark); font: 700 14px/1.45 var(--serif); }
.rank-list a { display: block; font: 600 13px/1.5 var(--serif); }
.rank-list a:hover { color: var(--cinnabar); }
.rank-list small { display: block; margin-top: 4px; color: var(--muted-light); font-size: 9.5px; }
.classics-list { display: grid; gap: 8px; }
.classics-list a {
    display: grid;
    grid-template-columns: 44px minmax(0,1fr);
    align-items: center;
    gap: 11px;
    padding: 10px 0;
    border-bottom: 1px solid var(--line);
}
.classics-list a:last-child { border-bottom: 0; }
.classics-list strong {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line-strong);
    background: var(--paper-soft);
    color: var(--cinnabar-dark);
    font: 700 14px/1 var(--serif);
}
.classics-list span { color: var(--muted); font-size: 11px; line-height: 1.5; }
.classics-list a:hover strong { border-color: var(--gold); }
.side-search { height: 38px; margin-bottom: 12px; }
.side-search input { font-size: 11px; }
.side-search button { padding: 0 12px; font-size: 11px; }
.tag-cloud { display: flex; flex-wrap: wrap; gap: 6px; }
.tag-cloud span,
.tag-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 8px;
    border: 1px solid var(--line);
    border-radius: 5px;
    background: var(--paper-soft);
    color: #626862;
    font-size: 10px;
}
.tag-cloud em { color: var(--gold-dark); font-style: normal; }
.archive-quote {
    margin: 15px 0 5px;
    padding: 12px 0 0;
    border-top: 1px solid var(--line);
    color: var(--ink-soft);
    font: 600 13px/1.75 var(--serif);
}
.archive-quote-source { color: var(--muted-light); font-size: 9.5px; }

/* Category */
.page-shell { padding-top: 24px; padding-bottom: 12px; }
.breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0 0 18px;
    color: var(--muted-light);
    font-size: 11px;
}
.breadcrumb a:hover { color: var(--cinnabar); }
.bc-sep { color: #B3AB9E; }
.bc-curr { color: var(--muted); }
.category-intro {
    position: relative;
    min-height: 228px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    overflow: hidden;
    padding: 34px 42px;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background:
        linear-gradient(105deg, rgba(255,255,255,.94), rgba(249,245,236,.80)),
        radial-gradient(circle at 84% 25%, rgba(197,160,89,.12), transparent 17rem);
    box-shadow: var(--shadow-soft);
}
.category-intro::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: var(--cinnabar);
}
.category-intro-copy { position: relative; z-index: 1; max-width: 730px; }
.category-intro h1 { margin: 8px 0 10px; font: 700 38px/1.25 var(--serif); letter-spacing: .06em; }
.category-intro p { max-width: 700px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.category-stats { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 17px; color: var(--muted-light); font-size: 10.5px; }
.category-stats strong { color: var(--cinnabar-dark); font: 700 18px/1 var(--serif); }
.category-seal {
    position: relative;
    z-index: 1;
    width: 94px;
    height: 94px;
    flex: 0 0 94px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(166,58,42,.34);
    outline: 1px solid rgba(166,58,42,.13);
    outline-offset: 5px;
    background: rgba(166,58,42,.055);
    color: var(--cinnabar-dark);
    transform: rotate(-2deg);
}
.category-seal span { font: 700 39px/1 var(--serif); }
.category-seal small { position: absolute; right: 4px; bottom: 4px; font-size: 8px; letter-spacing: .16em; }
.subcategory-tabs-wrap {
    margin-top: 18px;
    padding: 10px;
    overflow: visible;
    border: 1px solid #E4DCCF;
    border-radius: 10px;
    background: #F6F1E7;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
}
.subcategory-tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
    min-width: 0;
}
.subcategory-tab {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 14px;
    border: 1px solid #E4D9C8;
    border-radius: 999px;
    background: rgba(255,255,255,.92);
    color: #59615A;
    box-shadow: 0 3px 10px rgba(72,56,34,.04);
    font: 700 11px/1 var(--serif);
    white-space: nowrap;
    transition: transform .18s ease, border-color .18s ease, color .18s ease, background .18s ease, box-shadow .18s ease;
}
.subcategory-tab:hover {
    transform: translateY(-1px);
    border-color: #C8A55D;
    color: var(--cinnabar-dark);
    box-shadow: 0 6px 16px rgba(72,56,34,.07);
}
.subcategory-tab.active {
    border-color: rgba(166,58,42,.58);
    background: linear-gradient(180deg, #FFF9F2, #F7E7DE);
    color: var(--cinnabar-dark);
    box-shadow: inset 0 0 0 1px rgba(197,160,89,.24), 0 4px 12px rgba(110,61,43,.06);
}
.category-layout { padding-top: 34px; }
.page-count { color: var(--muted-light); font-size: 11px; }
.category-list { display: grid; gap: 12px; }
.pagination { display: flex; justify-content: center; gap: 7px; margin-top: 24px; }
.pagination a {
    width: 35px;
    height: 35px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 5px;
    background: rgba(255,255,255,.62);
    color: var(--muted);
    font-size: 11px;
}
.pagination a:hover { border-color: var(--gold); color: var(--cinnabar); }
.pagination a.active { border-color: var(--ink); background: var(--ink); color: #fff; }

/* Article */
.article-shell { max-width: 920px; padding-top: 26px; padding-bottom: 50px; }
.article-breadcrumb { max-width: 820px; margin-left: auto; margin-right: auto; }
.article-main { width: 100%; max-width: 820px; margin: 0 auto; }
.article-header {
    padding: 12px 0 27px;
    border-bottom: 1px solid var(--line-strong);
    text-align: center;
}
.article-header-top { display: flex; justify-content: center; align-items: center; gap: 10px; }
.category-badge,
.study-label {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 9px;
    border-radius: 3px;
    font-size: 10px;
    letter-spacing: .08em;
}
.category-badge { border: 1px solid rgba(166,58,42,.22); background: var(--cinnabar-soft); color: var(--cinnabar-dark); font-weight: 800; }
.study-label { border: 1px solid var(--line); color: var(--muted-light); }
.article-title {
    max-width: 780px;
    margin: 18px auto 14px;
    color: var(--ink);
    font: 700 clamp(30px, 4.2vw, 42px)/1.36 var(--serif);
    letter-spacing: .02em;
    text-wrap: balance;
}
.article-deck {
    max-width: 720px;
    margin: 0 auto;
    color: #626963;
    font: 400 15px/1.8 var(--serif);
}
.article-meta {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px 15px;
    margin-top: 17px;
    color: var(--muted-light);
    font-size: 10.5px;
}
.article-feature-figure {
    margin: 25px 0 28px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--shadow-soft);
}
.article-feature-img {
    width: 100% !important;
    height: min(50vw, 420px) !important;
    max-width: 100%;
    max-height: 420px;
    object-fit: cover !important;
}
.article-feature-caption {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 13px;
    border-top: 1px solid var(--line);
    background: #F4F0E8;
    color: var(--muted-light);
    font-size: 10px;
}
.caption-tag { padding: 2px 6px; border: 1px solid #D8C39A; color: var(--gold-dark); font-weight: 800; }
.article-content {
    color: #303631;
    font-family: var(--serif);
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: .012em;
}
.article-content > *:first-child { margin-top: 0; }
.article-content p { margin: 0 0 1.35em; }
.article-content h2 {
    margin: 2.2em 0 .8em;
    padding-left: 13px;
    border-left: 3px solid var(--cinnabar);
    color: var(--ink);
    font: 700 25px/1.45 var(--serif);
}
.article-content h3 { margin: 1.9em 0 .65em; color: var(--ink); font: 700 20px/1.5 var(--serif); }
.article-content h4 { margin: 1.6em 0 .6em; color: var(--ink); font: 700 17px/1.5 var(--serif); }
.article-content blockquote {
    margin: 1.8em 0;
    padding: 15px 18px;
    border-left: 3px solid var(--cinnabar);
    background: #F5F0E7;
    color: #4F5650;
    font-size: .95em;
}
.article-content ul,
.article-content ol { margin: 1.1em 0 1.5em; padding-left: 1.5em; }
.article-content li { margin: .4em 0; }
.article-content img {
    width: auto;
    max-width: 100% !important;
    height: auto !important;
    margin: 1.7em auto;
    border-radius: 8px;
}
.article-content table { width: 100%; margin: 1.6em 0; border-collapse: collapse; font-family: var(--sans); font-size: 14px; }
.article-content th,
.article-content td { padding: 10px 12px; border: 1px solid var(--line); text-align: left; }
.article-content th { background: #F2EEE6; }
.article-content hr { margin: 2.2em 0; border: 0; border-top: 1px solid var(--line-strong); }
.article-content pre { max-width: 100%; overflow: auto; padding: 14px; border-radius: 7px; background: #252A27; color: #F4F1E9; font: 13px/1.65 Consolas, monospace; }
.article-content code { font-family: Consolas, monospace; }
.article-cta {
    margin: 34px 0;
    padding: 21px 22px;
    border: 1px solid #E0D6C6;
    border-left: 3px solid var(--gold);
    border-radius: 9px;
    background: linear-gradient(105deg, #FBF8F1, #FFFDF9);
}
.cta-top-tag { display: block; margin-bottom: 14px; color: var(--gold-dark); font-size: 10px; font-weight: 800; letter-spacing: .11em; }
.cta-body { display: flex; align-items: center; gap: 15px; }
.cta-badge {
    min-width: 64px;
    height: 48px;
    display: grid;
    place-items: center;
    padding: 0 9px;
    border: 1px solid var(--line-strong);
    background: #fff;
    color: var(--cinnabar-dark);
    font: 700 14px/1 var(--serif);
}
.cta-copy { min-width: 0; }
.cta-copy h3 { margin: 0 0 5px; font: 700 18px/1.4 var(--serif); }
.cta-copy p { margin: 0; color: var(--muted); font-size: 12px; }
.cta-action-row { display: flex; align-items: center; gap: 14px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--line); }
.cta-btn { display: inline-flex; padding: 8px 14px; border-radius: 4px; background: var(--ink); color: #fff; font-size: 11px; font-weight: 800; }
.cta-btn:hover { background: var(--cinnabar-dark); }
.cta-hint { color: var(--muted-light); font-size: 9.5px; }
.article-tags-wrap { display: flex; align-items: flex-start; gap: 12px; padding: 18px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.tags-label { flex: 0 0 auto; padding-top: 5px; color: var(--gold-dark); font-size: 10px; font-weight: 800; }
.tags-list { display: flex; flex-wrap: wrap; gap: 6px; }
.tag-pill:hover { color: var(--cinnabar); border-color: #D7B9AD; }
.adjacent-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 24px 0 4px; }
.adjacent-card { min-width: 0; padding: 15px 16px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.58); }
.adjacent-next { text-align: right; }
.adjacent-direction { display: block; margin-bottom: 5px; color: var(--gold-dark); font-size: 9.5px; font-weight: 800; letter-spacing: .08em; }
.adjacent-card a { display: block; font: 600 13px/1.5 var(--serif); }
.adjacent-card a:hover { color: var(--cinnabar); }
.adjacent-card em { color: var(--muted-light); font-size: 11px; font-style: normal; }
.related-section { padding-top: 38px; }
.related-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.related-card {
    min-width: 0;
    min-height: 178px;
    display: flex;
    flex-direction: column;
    padding: 17px 18px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: rgba(255,255,255,.66);
    transition: transform .2s ease, border-color .2s ease;
}
.related-card:hover { transform: translateY(-2px); border-color: #D8C9B4; }
.related-card time { color: var(--muted-light); font-size: 9.5px; }
.related-card h3 { margin: 7px 0 6px; font: 700 16px/1.45 var(--serif); }
.related-card p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.related-arrow { margin-top: auto; padding-top: 10px; color: var(--gold-dark); font-size: 10px; font-weight: 800; }

/* Footer */
.site-footer {
    margin-top: 12px;
    border-top: 1px solid #E2D9CB;
    background: #F4EFE6;
    color: #5C645C;
}
.footer-crest-line { height: 3px; background: linear-gradient(90deg, var(--cinnabar), var(--gold), var(--jade)); }
.footer-inner { padding-top: 34px; padding-bottom: 20px; }
.footer-top-row {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(470px,1.2fr);
    gap: 42px;
    padding-bottom: 28px;
    border-bottom: 1px solid #E5DED2;
}
.brand-footer .brand-mark { border: 1px solid #D9CEBB; background: #EEE3C9; color: #1F2421; }
.brand-footer .brand-copy strong { color: #1F2421; font-family: var(--serif); }
.brand-footer .brand-copy small { color: #7A827A; }
.brand-mission { max-width: 510px; margin: 13px 0 0; color: #5C645C; font-size: 11px; line-height: 1.8; }
.footer-matrix-callout {
    padding: 16px;
    border: 1px solid #E4DCD0;
    border-radius: 8px;
    background: rgba(255,255,255,.65);
    box-shadow: 0 8px 24px rgba(88,72,48,.035);
}
.matrix-callout-header { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.matrix-badge { color: #7B6331; font: 700 12px/1.4 var(--serif); }
.matrix-sub { color: #858C84; font-size: 9px; }
.matrix-quick-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.matrix-quick-card {
    min-width: 0;
    display: grid;
    grid-template-columns: 31px minmax(0,1fr) auto;
    align-items: center;
    gap: 8px;
    padding: 10px;
    border: 1px solid #EAE3D5;
    border-radius: 6px;
    background: #FFFFFF;
    box-shadow: 0 2px 8px rgba(68,56,38,.025);
    transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.matrix-quick-card:hover {
    transform: translateY(-2px);
    border-color: #D7C69D;
    background: #FFFDF9;
    box-shadow: 0 7px 18px rgba(68,56,38,.08);
}
.matrix-icon { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid #D8C59E; background: #FBF7EF; color: #9A7636; font: 700 12px/1 var(--serif); }
.matrix-card-jade .matrix-icon { border-color: #AFC2B5; background: #F3F7F2; color: #557565; }
.matrix-card-cinnabar .matrix-icon { border-color: #D8B5AC; background: #FBF3F0; color: #A63A2A; }
.matrix-card-purple .matrix-icon { border-color: #B9C7B1; background: #F2F6EF; color: #637C59; }
.matrix-card-text { min-width: 0; display: grid; }
.matrix-card-text strong { color: #252C28; font: 600 12px/1.3 var(--serif); }
.matrix-card-text small { overflow: hidden; color: #8A9089; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.matrix-arrow { color: #A1844A; font-size: 11px; }
.footer-links-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 34px; padding: 24px 0; border-bottom: 1px solid #E5DED2; }
.footer-col-title { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.footer-col-title h4 { margin: 0; color: #2B332E; font: 600 13px/1.4 var(--serif); }
.col-dot { width: 5px; height: 5px; border-radius: 50%; background: #C5A059; }
.footer-chips-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
.footer-chip { padding: 7px 9px; border: 1px solid #E5DED2; border-radius: 4px; background: rgba(255,255,255,.82); color: #4A524C; font-size: 9.5px; text-align: center; }
.footer-chip:hover { color: #A63A2A; border-color: #C5A059; background: #FFFDF8; }
.footer-compliance-card { margin: 20px 0; padding: 14px 16px; border-left: 3px solid #C5A059; border-radius: 4px; background: rgba(197,160,89,.08); }
.compliance-header { display: flex; align-items: center; gap: 10px; margin-bottom: 6px; }
.compliance-badge { color: #967434; font-size: 9px; font-weight: 800; }
.compliance-header strong { color: #343C36; font: 600 11px/1.4 var(--serif); }
.footer-compliance-card p { margin: 0; color: #636B63; font-size: 9.5px; line-height: 1.7; }
.footer-compliance-card p strong { color: #303832; }
.footer-bottom-bar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-top: 14px; border-top: 1px solid #E5DED2; color: #7A827A; font-size: 9px; }
.footer-entity-info,
.footer-copy-text { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.icp-link:hover,
.gongan-link:hover { color: #A63A2A; }
.icp-badge,
.gongan-badge { margin-right: 3px; color: #9A7C43; }
.version-tag { padding: 1px 5px; border: 1px solid #DDD5C7; border-radius: 3px; background: #FFF; color: #7A827A; }

/* Modal, toast, back-to-top */
.account-modal {
    position: fixed;
    inset: 0;
    z-index: 100;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(20,24,21,.55);
    backdrop-filter: blur(5px);
}
.account-modal-panel {
    position: relative;
    width: min(100%, 430px);
    padding: 30px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface);
    box-shadow: 0 24px 70px rgba(20,18,14,.2);
}
.account-modal-panel h2 { margin: 9px 0 7px; font: 700 24px/1.35 var(--serif); }
.account-modal-panel p { margin: 0 0 18px; color: var(--muted); font-size: 13px; }
.modal-close {
    position: absolute;
    right: 12px;
    top: 12px;
    width: 31px;
    height: 31px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: var(--paper-deep);
    cursor: pointer;
}
.toast {
    position: fixed;
    left: 50%;
    bottom: 24px;
    z-index: 120;
    max-width: calc(100% - 32px);
    padding: 9px 13px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 6px;
    background: #202622;
    color: #fff;
    font-size: 11px;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 12px);
    transition: opacity .2s ease, transform .2s ease;
}
.toast.show { opacity: 1; transform: translate(-50%,0); }
.back-top {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 40;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid #D7C9B5;
    border-radius: 50%;
    background: rgba(255,253,249,.96);
    color: #5E332B;
    box-shadow: var(--shadow-soft);
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: all .2s ease;
}
.back-top.show { opacity: 1; visibility: visible; transform: translateY(0); }
.back-top:hover { border-color: #C5A059; background: #FFF8EE; color: #A63A2A; }

@media (max-width: 1020px) {
    .header-main { grid-template-columns: 210px minmax(220px,1fr) auto; gap: 16px; }
    .hero-grid { grid-template-columns: minmax(0,1.55fr) minmax(300px,.85fr); }
    .hero-card { padding: 34px; }
    .focus-thumb-wrap { width: 106px; flex-basis: 106px; height: 82px; }
    .content-grid { grid-template-columns: minmax(0,1fr) 280px; gap: 22px; }
    .feed-item { grid-template-columns: minmax(0,1fr) 190px; gap: 18px; }
    .category-article { grid-template-columns: minmax(0,1fr) 220px; gap: 18px; }
    .feed-thumb-wrap { width: 190px !important; min-width: 190px; max-width: 190px; height: 124px !important; }
    .category-thumb-wrap { width: 220px !important; min-width: 220px; max-width: 220px; height: 140px !important; }
    .footer-top-row { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
    .hero-grid { grid-template-columns: 1fr; }
    .hero-card { height: 400px; }
    .focus-stack { height: auto; grid-template-rows: auto; }
    .focus-card { min-height: 132px; }
    .content-grid { grid-template-columns: 1fr; }
    .sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .archive-search-card { grid-column: 1 / -1; }
}

@media (max-width: 768px) {
    .container { padding-left: 16px; padding-right: 16px; }
    .utility-bar { display: none; }
    .site-header { background: rgba(247,245,239,.985); }
    .header-main {
        min-height: 65px;
        grid-template-columns: minmax(0,1fr) auto;
        gap: 10px;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .brand-mark { width: 36px; height: 36px; font-size: 18px; }
    .brand-copy strong { font-size: 18px; }
    .brand-copy small { font-size: 8px; }
    .account-actions .text-button,
    .account-actions .button-quiet { display: none; }
    .menu-toggle { display: flex; }
    .global-search { grid-column: 1 / -1; grid-row: 2; height: 39px; }
    .channel-nav {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 35;
        border-top: 1px solid var(--line);
        background: #F8F5EE;
        box-shadow: 0 16px 30px rgba(31,36,33,.12);
    }
    .channel-nav.open { display: block; }
    .channel-nav-inner { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; padding-top: 12px; padding-bottom: 12px; }
    .channel-link { padding: 9px 10px; border: 1px solid var(--line); background: rgba(255,255,255,.62); text-align: center; }
    .channel-link::after { display: none; }
    .hot-strip { display: none; }

    .hero-section { padding-top: 14px; padding-bottom: 12px; }
    .hero-card {
        height: 310px;
        padding: 23px 20px;
        border-radius: 13px;
        background-position: center;
    }
    .hero-scrim { background: linear-gradient(0deg, rgba(18,24,21,.92) 0%, rgba(18,24,21,.65) 52%, rgba(18,24,21,.18) 100%); }
    .hero-content h1,
    .hero-content .hero-headline { font-size: 22px; line-height: 1.4; margin-bottom: 10px; }
    .hero-content p { font-size: 12px; -webkit-line-clamp: 2; }
    .hero-label { margin-bottom: 8px; font-size: 9.5px; }
    .hero-meta { margin-bottom: 14px; font-size: 9.5px; }
    .hero-btn { min-height: 36px; padding: 0 13px; font-size: 11px; }
    .focus-heading { min-height: 50px; }
    .focus-heading h2 { font-size: 19px; }
    .focus-card { min-height: 118px; padding: 13px; }
    .focus-card h3 { font-size: 15px; }
    .focus-card p { display: none; }
    .focus-thumb-wrap { width: 92px; height: 70px; flex-basis: 92px; }

    .matrix-section { padding-top: 25px; padding-bottom: 22px; }
    .section-heading { display: block; margin-bottom: 14px; }
    .section-heading h2 { font-size: 22px; }
    .section-heading > p { margin-top: 7px; font-size: 11.5px; }
    .product-grid { grid-template-columns: 1fr; gap: 10px; }
    .product-card { min-height: 190px; }
    .product-card-body { padding: 18px 19px; }
    .product-card h3 { margin-top: 13px; font-size: 23px; }
    .product-art-layer { inset: 0 0 0 20%; }

    .content-grid { padding-top: 20px; padding-bottom: 38px; }
    .feed-tabs { padding-bottom: 10px; }
    .feed-item {
        grid-template-columns: minmax(0,1fr) 100px;
        gap: 12px;
        padding: 14px;
        border-radius: 10px;
    }
    .category-article {
        grid-template-columns: minmax(0,1fr) 94px;
        gap: 12px;
        padding: 14px;
        border-radius: 10px;
    }
    .feed-thumb-wrap {
        width: 100px !important;
        min-width: 100px;
        max-width: 100px;
        height: 76px !important;
        border-radius: 6px;
    }
    .category-thumb-wrap {
        width: 94px !important;
        min-width: 94px;
        max-width: 94px;
        height: 72px !important;
        border-radius: 6px;
    }
    .feed-copy h3,
    .category-article h2 { margin-bottom: 4px; font-size: 15.5px; line-height: 1.45; }
    .feed-copy p,
    .category-article p { font-size: 11px; line-height: 1.55; -webkit-line-clamp: 2; }
    .feed-meta,
    .category-article-meta { gap: 5px 8px; margin-bottom: 5px; font-size: 9px; }
    .feed-meta > :last-child,
    .category-article-meta > :last-child { display: none; }
    .feed-category { padding: 1px 5px; }
    .feed-footer { margin-top: 7px; gap: 8px; font-size: 9px; }
    .feed-footer > span:first-child { display: none; }
    .feed-footer a { margin-left: 0; }
    .sidebar { grid-template-columns: 1fr; }
    .archive-search-card { grid-column: auto; }
    .side-card { padding: 16px; }

    .page-shell { padding-top: 15px; }
    .breadcrumb { margin-bottom: 12px; }
    .category-intro { min-height: auto; padding: 24px 20px; gap: 18px; border-radius: 12px; }
    .category-intro h1 { font-size: 27px; }
    .category-intro p { font-size: 12px; }
    .category-seal { width: 68px; height: 68px; flex-basis: 68px; }
    .category-seal span { font-size: 28px; }
    .subcategory-tabs-wrap { padding: 9px; }
    .subcategory-tabs { gap: 7px 8px; }
    .subcategory-tab { min-height: 38px; padding: 0 12px; }
    .category-layout { padding-top: 24px; }

    .article-shell { padding-top: 16px; padding-bottom: 34px; }
    .article-header { padding-top: 6px; padding-bottom: 20px; }
    .article-title { margin-top: 13px; font-size: 24px; line-height: 1.45; }
    .article-deck { font-size: 13px; line-height: 1.75; }
    .article-meta { margin-top: 13px; font-size: 9.5px; }
    .article-feature-figure { margin: 18px 0 22px; border-radius: 8px; }
    .article-feature-img { height: 210px !important; max-height: 210px; }
    .article-feature-caption { padding: 8px 10px; font-size: 9px; }
    .article-content { font-size: 16px; line-height: 1.9; }
    .article-content h2 { margin-top: 1.9em; font-size: 20px; }
    .article-content h3 { font-size: 18px; }
    .article-content blockquote { margin: 1.45em 0; padding: 12px 14px; }
    .article-cta { margin: 26px 0; padding: 17px 16px; }
    .cta-body { align-items: flex-start; gap: 11px; }
    .cta-badge { min-width: 54px; height: 42px; font-size: 12px; }
    .cta-copy h3 { font-size: 16px; }
    .cta-copy p { font-size: 11px; }
    .cta-action-row { flex-direction: column; align-items: flex-start; }
    .article-tags-wrap { display: block; }
    .tags-list { margin-top: 8px; }
    .adjacent-nav { grid-template-columns: 1fr; }
    .adjacent-next { text-align: left; }
    .related-grid { grid-template-columns: 1fr; }

    .site-footer { margin-top: 0; }
    .footer-inner { padding-top: 26px; }
    .footer-top-row { gap: 20px; padding-bottom: 20px; }
    .footer-matrix-callout { padding: 13px; }
    .matrix-callout-header { display: block; }
    .matrix-sub { display: block; margin-top: 3px; }
    .matrix-quick-grid { grid-template-columns: 1fr; }
    .footer-links-row { grid-template-columns: 1fr; gap: 18px; padding: 20px 0; }
    .footer-chips-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .footer-chip { padding: 7px 4px; font-size: 8.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .footer-bottom-bar { flex-direction: column; align-items: center; text-align: center; }
    .footer-entity-info,
    .footer-copy-text { justify-content: center; }
    .back-top { right: 14px; bottom: 14px; width: 36px; height: 36px; }
}

@media (max-width: 430px) {
    .container { padding-left: 12px; padding-right: 12px; }
    .brand-copy small { display: none; }
    .hero-card { height: 292px; padding: 20px 16px; }
    .hero-content h1,
    .hero-content .hero-headline { font-size: 20px; }
    .hero-content p { font-size: 11.5px; }
    .focus-thumb-wrap { width: 86px; height: 66px; flex-basis: 86px; }
    .feed-item,
    .category-article { grid-template-columns: minmax(0,1fr) 94px; padding: 12px; gap: 10px; }
    .feed-thumb-wrap,
    .category-thumb-wrap { width: 94px !important; min-width: 94px; max-width: 94px; height: 72px !important; }
    .feed-copy p,
    .category-article p { -webkit-line-clamp: 1; }
    .category-seal { display: none; }
    .footer-chips-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }
}

/* ==========================================================================
   第二阶段：Pillar Page 知识专题中心、网状内链与 E-E-A-T 信任中心
   ========================================================================== */

/* 1. Pillar Page 知识专题中心展板 */
.pillar-knowledge-card {
    margin-bottom: 24px;
    padding: 24px 28px;
    border: 1px solid #E2D7C3;
    border-radius: 10px;
    background: linear-gradient(180deg, #FBF9F4 0%, #F5EFE4 100%);
    box-shadow: 0 10px 30px rgba(68,56,38,.04);
    position: relative;
}
.pillar-header { margin-bottom: 20px; }
.pillar-badge-group { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.pillar-tag {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 4px;
    background: var(--jade-dark, #2D4C3A);
    color: #FFFFFF;
    font: 700 9px/1.2 var(--sans);
    letter-spacing: .08em;
}
.pillar-status { color: var(--gold-dark, #8A6D3B); font-size: 11px; font-weight: 600; }
.pillar-header h2 { margin: 6px 0 10px; font: 700 24px/1.35 var(--serif); color: #1F2421; }
.pillar-lead { margin: 0; color: #4A524A; font-size: 13.5px; line-height: 1.8; text-align: justify; }

.pillar-body-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    padding: 18px 0;
    border-top: 1px dashed #DDD2BE;
    border-bottom: 1px dashed #DDD2BE;
}
.pillar-sub-title { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; }
.pillar-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--cinnabar, #9B3B2B); }
.pillar-sub-title h3 { margin: 0; font: 700 14px/1.4 var(--serif); color: #2B332D; }

.pillar-concepts-wrap { display: flex; flex-wrap: wrap; gap: 8px; }
.pillar-concept-chip {
    padding: 4px 10px;
    border: 1px solid #DFD5C2;
    border-radius: 20px;
    background: #FFFFFF;
    color: #434B44;
    font-size: 11.5px;
    font-weight: 500;
}
.pillar-editions-list { list-style: none; margin: 0; padding: 0; }
.pillar-editions-list li { margin-bottom: 7px; font-size: 12px; color: #4B544C; display: flex; align-items: center; gap: 6px; }

.pillar-pathway-box { padding-top: 18px; }
.pillar-steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.pillar-step-card {
    padding: 12px 14px;
    border: 1px solid #E5DBCB;
    border-radius: 6px;
    background: rgba(255,255,255,.7);
}
.step-badge {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 3px;
    background: #EDE4D3;
    color: #634F29;
    font: 700 10px/1.3 var(--serif);
    margin-bottom: 6px;
}
.pillar-step-card p { margin: 0; font-size: 11px; line-height: 1.6; color: #525C54; }
.pillar-compact-notice { padding: 10px; text-align: center; color: #7B857D; font-size: 11.5px; }

/* Pillar / Article FAQ：瓷白底、朱砂问、玉绿答 */
.pillar-faq-section,
.article-faq-card {
    margin-top: 22px;
    padding: 22px 24px;
    border: 1px solid #E2DCD2;
    border-radius: 9px;
    background: #FAF8F3;
}
.article-faq-card { margin: 28px 0 24px; }
.faq-section-head { margin-bottom: 16px; }
.faq-section-head h2,
.faq-section-head h3 {
    margin: 6px 0 7px;
    font: 700 18px/1.45 var(--serif);
    color: #25302A;
}
.faq-section-head p {
    margin: 0;
    color: #667068;
    font-size: 11.5px;
    line-height: 1.7;
}
.faq-list { display: grid; gap: 12px; }
.faq-item {
    padding: 15px 16px;
    border: 1px solid #E2DCD2;
    border-radius: 7px;
    background: rgba(255,255,255,.66);
}
.faq-q,
.faq-a {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr);
    gap: 10px;
    align-items: start;
}
.faq-q {
    margin: 0;
    color: #313A34;
    font: 700 14px/1.65 var(--serif);
}
.faq-a { margin-top: 9px; }
.faq-a p {
    margin: 0;
    color: #4E5951;
    font-size: 12.5px;
    line-height: 1.8;
}
.faq-mark {
    width: 24px;
    height: 24px;
    display: inline-grid;
    place-items: center;
    border-radius: 50%;
    font: 800 11px/1 var(--serif);
}
.faq-mark-q {
    background: rgba(168,77,63,.10);
    color: #A84D3F;
    border: 1px solid rgba(168,77,63,.28);
}
.faq-mark-a {
    background: rgba(39,107,93,.10);
    color: #276B5D;
    border: 1px solid rgba(39,107,93,.28);
}

/* 2. 正文内的微雕语义实体内链 */
.semantic-autolink {
    color: #2D4C3A;
    text-decoration: underline;
    text-decoration-style: dashed;
    text-underline-offset: 3px;
    font-weight: 600;
    transition: color .2s ease;
}
.semantic-autolink:hover {
    color: var(--cinnabar, #9B3B2B);
    text-decoration-style: solid;
}

/* 3. 专题 Hub 回溯卡片 */
.pillar-hub-return-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin: 28px 0;
    padding: 18px 22px;
    border: 1px solid #DFD2BC;
    border-left: 4px solid var(--jade-dark, #2D4C3A);
    border-radius: 6px;
    background: #FAF7F0;
}
.hub-tag { font: 700 9.5px/1.2 var(--sans); color: #78643C; letter-spacing: .08em; display: block; margin-bottom: 4px; }
.pillar-hub-info h3 { margin: 0 0 6px; font: 700 17px/1.4 var(--serif); color: #1E2420; }
.pillar-hub-info p { margin: 0; color: #545E56; font-size: 12px; line-height: 1.6; max-width: 640px; }
.hub-btn {
    flex-shrink: 0;
    padding: 8px 16px;
    border-radius: 4px;
    background: var(--jade-dark, #2D4C3A);
    color: #FFFFFF;
    font-size: 11.5px;
    font-weight: 600;
    text-decoration: none;
    transition: background .2s ease;
}
.hub-btn:hover { background: #1F3628; color: #FFFFFF; }

/* 4. 网状拓扑多维关联区块 */
.mesh-network-section { margin-top: 36px; padding-top: 24px; border-top: 1px solid #E5DCCE; }
.mesh-cross-block { margin-top: 28px; }
.cross-card { background: #FBF7EE; border-color: #E2D7C5; }
.cross-cat-badge { font: 700 10.5px/1.2 var(--serif); color: var(--cinnabar, #9B3B2B); display: inline-block; margin-bottom: 4px; }

/* 5. E-E-A-T 独立信任中心页面 */
.trust-shell { padding-top: 16px; }
.trust-hero {
    margin-bottom: 24px;
    padding: 32px 36px;
    border: 1px solid #DFD5C2;
    border-radius: 8px;
    background: linear-gradient(180deg, #FAF7F0 0%, #F4ECE0 100%);
}
.trust-hero h1 { margin: 8px 0 14px; font: 700 28px/1.3 var(--serif); color: #1B211D; }
.trust-lead { margin: 0; font-size: 14.5px; line-height: 1.85; color: #3E4740; text-align: justify; }

.trust-card {
    margin-bottom: 24px;
    padding: 24px 28px;
    border: 1px solid #E2D9CB;
    border-radius: 8px;
    background: #FFFFFF;
    box-shadow: 0 4px 16px rgba(68,56,38,.02);
}
.trust-card h2 { margin: 0 0 16px; font: 700 18px/1.4 var(--serif); color: #1D231F; padding-bottom: 8px; border-bottom: 1px solid #EFE8DC; }
.trust-card p { margin: 0 0 12px; font-size: 13px; line-height: 1.8; color: #434C44; text-align: justify; }
.trust-stream-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }
.trust-stream-item { padding: 14px; border: 1px solid #E8E0D2; border-radius: 6px; background: #FAF7F0; }
.stream-badge { display: inline-block; padding: 2px 6px; border-radius: 3px; background: #E7DDCA; color: #594723; font: 700 9.5px/1.3 var(--serif); margin-bottom: 6px; }
.trust-stream-item h3 { margin: 0 0 6px; font: 700 15px/1.4 var(--serif); color: #222924; }
.trust-stream-item p { margin: 0; font-size: 11.5px; line-height: 1.6; color: #59635A; }

.matrix-features-list { display: flex; flex-direction: column; gap: 10px; margin-top: 14px; }
.matrix-feat-row { padding: 12px 14px; border: 1px solid #E7DFCFA0; border-radius: 6px; background: #FAF8F2; display: flex; flex-direction: column; gap: 4px; }
.matrix-feat-row strong { color: #28302A; font-family: var(--serif); font-size: 13.5px; }
.matrix-feat-row span { font-size: 11.5px; color: #586359; line-height: 1.5; }

.compliance-highlight { border-left: 4px solid var(--cinnabar, #9B3B2B); background: #FCFAF5; }

.hierarchy-list { display: flex; flex-direction: column; gap: 14px; margin-top: 14px; }
.hierarchy-item { padding: 14px; border: 1px solid #E3D9C7; border-radius: 6px; background: #FAF7F0; }
.h-rank { display: inline-block; font: 700 12px/1.3 var(--serif); color: #7B3E2C; margin-bottom: 6px; }
.hierarchy-item p { margin: 0; font-size: 12px; line-height: 1.7; color: #4A544B; }

.ai-policy-box { padding: 16px; border: 1px solid #D5E0D5; border-radius: 6px; background: #F4F8F4; margin: 12px 0; }
.ai-policy-box ul, .compliance-rules-list { margin: 10px 0 0 18px; padding: 0; font-size: 12px; color: #434D44; line-height: 1.8; }
.feedback-channel { padding: 14px; border: 1px dashed #D3C7B2; border-radius: 6px; background: #FAF7F0; margin-top: 12px; font-size: 12px; color: #4A544C; line-height: 1.7; }
.feedback-channel code { background: #EAE2D2; padding: 2px 6px; border-radius: 3px; color: #7B3E2C; font-weight: 600; }

.author-team-card {
    margin-bottom: 22px;
    padding: 22px 26px;
    border: 1px solid #E2D9CA;
    border-radius: 8px;
    background: #FFFFFF;
    box-shadow: 0 4px 14px rgba(68,56,38,.02);
}
.author-badge-row { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.team-seal {
    width: 44px;
    height: 44px;
    border-radius: 6px;
    background: var(--cinnabar, #9B3B2B);
    color: #FFFFFF;
    font: 700 22px/44px var(--serif);
    text-align: center;
    box-shadow: 0 4px 10px rgba(155,59,43,.2);
}
.author-badge-row h2 { margin: 0 0 2px; font: 700 18px/1.35 var(--serif); color: #1D231E; }
.author-badge-row small { color: #788279; font-size: 11px; }
.team-desc { margin: 0 0 14px; font-size: 12.5px; line-height: 1.75; color: #454E46; }
.team-meta-box {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 10px 14px;
    border-radius: 4px;
    background: #F9F6EE;
    font-size: 11.5px;
    color: #555F56;
}

.trust-nav-links { list-style: none; margin: 0; padding: 0; }
.trust-nav-links li { margin-bottom: 8px; }
.trust-nav-links a {
    display: block;
    padding: 10px 14px;
    border: 1px solid #E2D7C5;
    border-radius: 6px;
    background: #FAF7F0;
    color: #384239;
    font: 600 12.5px/1.3 var(--serif);
    transition: all .2s ease;
}
.trust-nav-links a.active, .trust-nav-links a:hover {
    background: var(--jade-dark, #2D4C3A);
    color: #FFFFFF;
    border-color: var(--jade-dark, #2D4C3A);
}
.trust-badge-box { display: flex; flex-direction: column; gap: 8px; }
.t-badge { padding: 8px 12px; border-radius: 4px; background: #FAF7F1; border: 1px solid #E6DDD0; font-size: 11.5px; color: #4D564E; font-weight: 500; }

@media (max-width: 768px) {
    .pillar-body-grid { grid-template-columns: 1fr; }
    .pillar-steps-grid { grid-template-columns: 1fr; }
    .pillar-hub-return-card { flex-direction: column; align-items: flex-start; }
    .pillar-faq-section,
    .article-faq-card { padding: 17px 15px; }
    .faq-item { padding: 13px 12px; }
    .faq-q,
    .faq-a { grid-template-columns: 25px minmax(0,1fr); gap: 8px; }
    .faq-section-head h2,
    .faq-section-head h3 { font-size: 17px; }
    .trust-stream-grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   第三阶段：转化组件体系、全站检索界面、全终端阅读微调
   --------------------------------------------------------------------------
   三条产品线共用一套「主题令牌」：
     jade     = 天机策（排盘测算，主推）
     cinnabar = 清名阁（生辰起名）
     purple   = 人纪堂（经方医理）
   组件只写一遍，靠 --accent 系列变量换色，避免三倍重复与色值漂移。
   ========================================================================== */

/* 默认令牌必须写在三套主题之前：同特异度下后写的主题类才能覆盖默认值 */
.channel-action-bar, .divine-card, .inline-cta,
.header-tool-chip, .mobile-cta-bar, .intent-card, .article-cta {
    --accent: var(--jade);
    --accent-dark: var(--jade-dark);
    --accent-deep: #1E3B2F;
    --accent-soft: #F0F5F1;
    --accent-line: rgba(58,99,81,.30);
    --accent-glow: rgba(58,99,81,.10);
}
.channel-action-jade, .divine-card-jade, .inline-cta-jade,
.header-tool-jade, .mobile-cta-jade, .intent-card-jade, .cta-jade {
    --accent: var(--jade);
    --accent-dark: var(--jade-dark);
    --accent-deep: #1E3B2F;
    --accent-soft: #F0F5F1;
    --accent-line: rgba(58,99,81,.30);
    --accent-glow: rgba(58,99,81,.10);
}
.channel-action-cinnabar, .divine-card-cinnabar, .inline-cta-cinnabar,
.header-tool-cinnabar, .mobile-cta-cinnabar, .intent-card-cinnabar, .cta-cinnabar {
    --accent: var(--cinnabar);
    --accent-dark: var(--cinnabar-dark);
    --accent-deep: #6B261D;
    --accent-soft: #FAF1ED;
    --accent-line: rgba(166,58,42,.28);
    --accent-glow: rgba(166,58,42,.09);
}
.channel-action-purple, .divine-card-purple, .inline-cta-purple,
.header-tool-purple, .mobile-cta-purple, .intent-card-purple, .cta-purple {
    --accent: var(--purple);
    --accent-dark: #4E3F61;
    --accent-deep: #3B3049;
    --accent-soft: #F4F1F7;
    --accent-line: rgba(101,82,123,.28);
    --accent-glow: rgba(101,82,123,.09);
}

/* ---------- 1. 可达性基础 ---------- */
.skip-link {
    position: absolute;
    left: 12px;
    top: -60px;
    z-index: 200;
    padding: 9px 16px;
    border-radius: 0 0 7px 7px;
    background: var(--ink);
    color: #F6EEDC;
    font-size: 12px;
    font-weight: 700;
    transition: top .18s ease;
}
.skip-link:focus { top: 0; }
a:focus-visible,
button:focus-visible,
input:focus-visible,
[tabindex]:focus-visible {
    outline: 2px solid var(--jade);
    outline-offset: 2px;
    border-radius: 3px;
}
.text-link { color: var(--gold-dark); font-size: 12px; font-weight: 700; letter-spacing: .03em; }
.text-link:hover { color: var(--cinnabar); }
.trust-main-col,
.pillar-col { min-width: 0; }

/* 标签云在本阶段由 span 升级为可检索链接，需补齐链接态 */
.tag-cloud a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 8px;
    border: 1px solid var(--line);
    border-radius: 5px;
    background: var(--paper-soft);
    color: #626862;
    font-size: 10px;
    transition: color .18s ease, border-color .18s ease, background .18s ease;
}
.tag-cloud a:hover { color: var(--cinnabar); border-color: #D8C39A; background: #FFFDF8; }

/* ---------- 2. 页头常驻排盘入口 ---------- */
.header-divine-entry {
    height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0 14px 0 10px;
    border: 1px solid rgba(197,160,89,.55);
    border-radius: 7px;
    background: linear-gradient(135deg, #2F5443 0%, #3A6351 54%, #47705C 100%);
    color: #F7EFDC;
    box-shadow: 0 4px 14px rgba(40,76,61,.18), inset 0 1px 0 rgba(255,255,255,.10);
    white-space: nowrap;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.header-divine-entry:hover {
    transform: translateY(-1px);
    border-color: #E0C079;
    box-shadow: 0 8px 20px rgba(40,76,61,.26), inset 0 1px 0 rgba(255,255,255,.14);
}
.header-divine-icon {
    width: 25px;
    height: 25px;
    flex: 0 0 25px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(246,238,220,.34);
    border-radius: 50%;
    color: #F1DCA8;
    font-size: 13px;
    line-height: 1;
}
.header-divine-copy { display: grid; line-height: 1.15; }
.header-divine-copy strong { font: 700 13px/1.2 var(--serif); letter-spacing: .06em; }
.header-divine-copy small { margin-top: 2px; color: rgba(241,220,168,.86); font-size: 8.5px; letter-spacing: .08em; }

.channel-link-divine {
    margin-left: auto;
    color: var(--jade-dark);
    font-weight: 800;
}
.channel-link-divine::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    margin-right: 6px;
    border-radius: 50%;
    background: var(--gold);
    vertical-align: middle;
}
.channel-link-divine::after { background: var(--jade); }
.channel-link-divine:hover { color: var(--jade); }

.hot-strip-cta {
    margin-left: auto;
    padding-left: 16px;
    border-left: 1px solid rgba(120,110,92,.22);
    color: var(--jade-dark);
    font-weight: 800;
    white-space: nowrap;
}
.hot-strip-cta:hover { color: var(--cinnabar) !important; }

/* ---------- 3. 频道页：顶部工具条 ---------- */
.channel-action-bar {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    overflow: hidden;
    margin-top: 14px;
    padding: 20px 24px;
    border: 1px solid var(--accent-line);
    border-radius: var(--radius-md);
    background:
        radial-gradient(circle at 96% 12%, var(--accent-glow), transparent 16rem),
        linear-gradient(100deg, var(--accent-soft) 0%, #FFFDF9 62%);
    box-shadow: 0 6px 20px rgba(44,30,20,.045);
}
.channel-action-bar::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, var(--accent), var(--gold));
}
.channel-action-copy { min-width: 0; }
.channel-action-kicker {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--accent-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .13em;
}
.channel-action-kicker::before { content: "◈"; color: var(--gold-dark); font-size: 9px; }
.channel-action-title {
    margin: 7px 0 5px;
    color: var(--ink);
    font: 700 20px/1.4 var(--serif);
    letter-spacing: .02em;
}
.channel-action-desc { max-width: 560px; margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.7; }
.channel-action-side {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 11px;
}
.channel-action-chips { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; max-width: 330px; }
.channel-action-chip {
    padding: 6px 11px;
    border: 1px solid var(--accent-line);
    border-radius: 999px;
    background: rgba(255,255,255,.9);
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.channel-action-chip:hover {
    transform: translateY(-1px);
    background: #fff;
    box-shadow: 0 5px 13px var(--accent-glow);
}
.channel-action-go {
    min-height: 40px;
    padding: 0 20px;
    border-color: var(--accent-dark);
    background: var(--accent-dark);
    color: #fff;
    font-size: 13px;
    letter-spacing: .03em;
}
.channel-action-go:hover { background: var(--accent); border-color: var(--accent); color: #fff; }

/* ---------- 4. 频道页：侧栏排盘卡 ---------- */
.divine-card {
    position: relative;
    border-color: var(--accent-line);
    background:
        radial-gradient(circle at 88% 6%, var(--accent-glow), transparent 11rem),
        linear-gradient(180deg, var(--accent-soft) 0%, rgba(255,255,255,.88) 58%);
    box-shadow: 0 8px 24px rgba(44,30,20,.055);
}
.divine-card-seal {
    position: absolute;
    right: 14px;
    top: 13px;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid var(--accent-line);
    outline: 1px solid var(--accent-glow);
    outline-offset: 3px;
    color: var(--accent-dark);
    font: 700 19px/1 var(--serif);
    opacity: .82;
    transform: rotate(-3deg);
}
.divine-card-kicker {
    display: block;
    padding-right: 56px;
    color: var(--accent-dark);
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .1em;
}
.divine-card-title {
    margin: 8px 0 6px;
    padding-right: 52px;
    color: var(--ink);
    font: 700 17px/1.42 var(--serif);
}
.divine-card-desc { margin: 0 0 12px; color: var(--muted); font-size: 11.5px; line-height: 1.68; }
.divine-card-list { margin: 0 0 13px; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.divine-card-list li { border-bottom: 1px solid var(--line); }
.divine-card-list a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 2px;
    color: #4A524C;
    font: 600 12px/1.45 var(--serif);
    transition: color .18s ease, padding-left .18s ease;
}
.divine-card-list a span { color: var(--gold-dark); font-size: 9px; }
.divine-card-list a:hover { padding-left: 5px; color: var(--accent-dark); }
.divine-card-go {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    border-radius: 6px;
    background: var(--accent-dark);
    color: #fff;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: .04em;
    transition: background .2s ease, box-shadow .2s ease;
}
.divine-card-go:hover { background: var(--accent); box-shadow: 0 7px 18px var(--accent-glow); }
.divine-card-note { margin: 9px 0 0; color: var(--muted-light); font-size: 9px; line-height: 1.55; text-align: center; }

/* ---------- 5. 分页：上一页 / 下一页 / 省略号 ---------- */
.pagination { flex-wrap: wrap; align-items: center; }
.page-step { width: auto !important; padding: 0 13px; font-weight: 700; white-space: nowrap; }
.page-gap { display: grid; place-items: center; width: 22px; height: 35px; color: var(--muted-light); font-size: 11px; }

/* ---------- 6. 文章页：标题旁工具入口 ---------- */
.header-tool-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 26px;
    padding: 0 11px;
    border: 1px solid var(--accent-line);
    border-radius: 999px;
    background: rgba(255,255,255,.82);
    color: var(--accent-dark);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .04em;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.header-tool-chip:hover { transform: translateY(-1px); background: #fff; box-shadow: 0 5px 14px var(--accent-glow); }
.header-tool-dot {
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 0 0 var(--accent-glow);
    animation: toolPulse 2.6s ease-out infinite;
}
@keyframes toolPulse {
    0% { box-shadow: 0 0 0 0 var(--accent-glow); }
    70% { box-shadow: 0 0 0 7px transparent; }
    100% { box-shadow: 0 0 0 0 transparent; }
}

/* ---------- 7. 文章页：正文中段转化钩子 ---------- */
.inline-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin: 2.1em 0;
    padding: 19px 22px;
    border: 1px solid var(--accent-line);
    border-left: 3px solid var(--accent);
    border-radius: 9px;
    background: linear-gradient(100deg, var(--accent-soft) 0%, #FFFDF9 68%);
    font-family: var(--sans);
}
.inline-cta-body { min-width: 0; }
.inline-cta-kicker {
    margin: 0 0 6px !important;
    color: var(--accent-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
    line-height: 1.4;
}
.inline-cta-title {
    margin: 0 0 5px !important;
    color: var(--ink);
    font: 700 17px/1.45 var(--serif);
    letter-spacing: .02em;
}
.inline-cta-desc { margin: 0 !important; color: var(--muted); font-size: 12.5px; line-height: 1.7; }
.inline-cta-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 11px; }
.inline-cta-chip {
    padding: 5px 10px;
    border: 1px solid var(--accent-line);
    border-radius: 999px;
    background: rgba(255,255,255,.9);
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.5;
    white-space: nowrap;
    transition: transform .18s ease, box-shadow .18s ease;
}
.inline-cta-chip:hover { transform: translateY(-1px); box-shadow: 0 5px 13px var(--accent-glow); }
.inline-cta-go {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0 20px;
    border-radius: 6px;
    background: var(--accent-dark);
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .04em;
    white-space: nowrap;
    transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.inline-cta-go:hover { transform: translateY(-1px); background: var(--accent); box-shadow: 0 8px 20px var(--accent-glow); }

/* ---------- 8. 文章页：底部主转化卡与主题化 ---------- */
.article-cta.cta-jade,
.article-cta.cta-cinnabar,
.article-cta.cta-purple {
    border-left-color: var(--accent);
    background: linear-gradient(105deg, var(--accent-soft), #FFFDF9 64%);
}
.cta-jade .cta-badge,
.cta-cinnabar .cta-badge,
.cta-purple .cta-badge { border-color: var(--accent-line); color: var(--accent-dark); }
.cta-jade .cta-top-tag,
.cta-cinnabar .cta-top-tag,
.cta-purple .cta-top-tag { color: var(--accent-dark); }
.cta-chip-row { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 15px; }
.cta-chip {
    padding: 6px 11px;
    border: 1px solid var(--accent-line, var(--line-strong));
    border-radius: 999px;
    background: rgba(255,255,255,.86);
    color: var(--accent-dark, var(--ink-soft));
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.cta-chip:hover { transform: translateY(-1px); background: #fff; box-shadow: 0 5px 13px var(--accent-glow, rgba(44,30,20,.06)); }
.cta-btn-jade,
.cta-btn-cinnabar,
.cta-btn-purple { min-height: 34px; padding: 0 16px; align-items: center; background: var(--accent-dark); }
.cta-btn-jade:hover,
.cta-btn-cinnabar:hover,
.cta-btn-purple:hover { background: var(--accent); }

/* ---------- 9. 移动端底部转化条（仅窄屏出现） ---------- */
.mobile-cta-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    display: none;
    align-items: center;
    gap: 11px;
    padding: 9px 12px calc(9px + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid rgba(197,160,89,.4);
    background: linear-gradient(180deg, var(--accent-dark), var(--accent-deep));
    box-shadow: 0 -8px 24px rgba(20,26,22,.18);
    color: #F5EEDD;
}
.mobile-cta-copy { flex: 1; min-width: 0; display: grid; line-height: 1.25; }
.mobile-cta-copy strong { font: 700 13px/1.3 var(--serif); letter-spacing: .05em; }
.mobile-cta-copy small {
    margin-top: 2px;
    overflow: hidden;
    color: rgba(241,224,186,.82);
    font-size: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.mobile-cta-go {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 16px;
    border-radius: 6px;
    background: var(--gold);
    color: #2A2118;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: .04em;
    white-space: nowrap;
}
.mobile-cta-go:hover { background: #D8B570; }
.mobile-cta-close {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(245,238,221,.26);
    border-radius: 50%;
    background: transparent;
    color: rgba(245,238,221,.72);
    font-size: 15px;
    line-height: 1;
    cursor: pointer;
}
.mobile-cta-close:hover { color: #fff; border-color: rgba(245,238,221,.55); }

/* ---------- 10. 首页产品矩阵：天机策主推位 ---------- */
.product-grid { grid-template-columns: minmax(0,1.62fr) minmax(0,1fr) minmax(0,1fr); }
.product-card-lead {
    min-height: 288px;
    border-color: rgba(197,160,89,.52);
    box-shadow: 0 12px 32px rgba(44,30,20,.07);
}
.product-card-lead::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 2;
    width: 3px;
    background: linear-gradient(180deg, var(--jade), var(--gold));
}
.product-card-lead:hover { border-color: rgba(197,160,89,.78); box-shadow: 0 16px 42px rgba(44,30,20,.11); }
.product-card-lead .product-art-layer { inset: 0 0 0 42%; }
.product-card-lead .product-meta { color: var(--gold-dark); }
.product-lead-desc {
    max-width: 380px;
    margin: 9px 0 0 !important;
    color: var(--muted) !important;
    font-size: 12.5px !important;
    line-height: 1.7;
}
.product-stretch::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: inherit;
}
.product-chip-row {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 13px;
}
/* 芯片配色跟随所属专馆：一套组件三种主题，只换令牌不复制样式。
   默认值必须写在三条主题规则之前——同特异度下后写的才能覆盖前面的。 */
.product-card { --chip: var(--jade-dark); --chip-line: rgba(58,99,81,.26); --chip-glow: rgba(58,99,81,.12); }
.product-cinnabar { --chip: var(--cinnabar); --chip-line: rgba(166,58,42,.26); --chip-glow: rgba(166,58,42,.12); }
.product-purple { --chip: #4E3F61; --chip-line: rgba(101,82,123,.26); --chip-glow: rgba(101,82,123,.12); }
.product-chip {
    padding: 5px 10px;
    border: 1px solid var(--chip-line);
    border-radius: 999px;
    background: rgba(255,255,255,.9);
    color: var(--chip);
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.product-chip:hover { transform: translateY(-1px); background: #fff; box-shadow: 0 5px 13px var(--chip-glow); }

/* ---------- 11. 首页：易理命学直通长廊 ---------- */
.divine-rail {
    margin-top: 6px;
    padding-top: 30px;
    padding-bottom: 32px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background:
        radial-gradient(circle at 92% 0%, rgba(58,99,81,.055), transparent 22rem),
        linear-gradient(180deg, rgba(240,245,241,.5), rgba(255,253,249,0));
}
.divine-rail-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 34px;
    margin-bottom: 20px;
}
.divine-rail-head h2 { margin: 5px 0 7px; color: var(--ink); font: 700 clamp(23px, 2.3vw, 29px)/1.28 var(--serif); letter-spacing: .02em; }
.divine-rail-head p { max-width: 560px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.divine-rail-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 16px; }
.divine-rail-actions .button-primary {
    border-color: var(--jade-dark);
    background: var(--jade-dark);
    letter-spacing: .04em;
}
.divine-rail-actions .button-primary:hover { border-color: var(--jade); background: var(--jade); }
.divine-rail-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.divine-rail-card {
    position: relative;
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: 16px 17px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: rgba(255,255,255,.82);
    box-shadow: 0 3px 15px rgba(44,30,20,.025);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.divine-rail-card:hover {
    transform: translateY(-3px);
    border-color: rgba(58,99,81,.34);
    box-shadow: 0 12px 28px rgba(44,30,20,.075);
}
.divine-rail-cat { color: var(--jade); font-size: 10px; font-weight: 800; letter-spacing: .05em; }
.divine-rail-card h3 {
    margin: 8px 0 6px;
    color: var(--ink);
    font: 700 16px/1.48 var(--serif);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.divine-rail-card:hover h3 { color: var(--cinnabar); }
.divine-rail-card p {
    margin: 0;
    color: var(--muted);
    font-size: 11.5px;
    line-height: 1.62;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.divine-rail-card small { margin-top: auto; padding-top: 11px; color: var(--muted-light); font-size: 9.5px; }

/* ---------- 12. 全站检索页 ---------- */
.search-hero {
    position: relative;
    overflow: hidden;
    padding: 30px 34px 26px;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background:
        radial-gradient(circle at 88% 16%, rgba(197,160,89,.11), transparent 17rem),
        linear-gradient(105deg, rgba(255,255,255,.94), rgba(249,245,236,.82));
    box-shadow: var(--shadow-soft);
}
.search-hero::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, var(--cinnabar), var(--gold));
}
.search-hero h1 { margin: 9px 0 8px; color: var(--ink); font: 700 clamp(25px, 2.6vw, 32px)/1.3 var(--serif); letter-spacing: .03em; }
.search-hero-meta { max-width: 640px; margin: 0 0 18px; color: var(--muted); font-size: 12.5px; line-height: 1.75; }
.search-hero-meta strong { color: var(--cinnabar-dark); font: 700 17px/1 var(--serif); }
.search-hero-form {
    max-width: 620px;
    height: 46px;
    display: flex;
    overflow: hidden;
    border: 1px solid var(--line-strong);
    border-radius: 8px;
    background: rgba(255,255,255,.9);
    transition: border-color .2s ease, box-shadow .2s ease;
}
.search-hero-form:focus-within { border-color: rgba(58,99,81,.7); box-shadow: 0 0 0 3px rgba(58,99,81,.08); }
.search-hero-form input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    padding: 0 16px;
    color: var(--ink);
    background: transparent;
    font-size: 14px;
}
.search-hero-form input::placeholder { color: #9A978F; }
.search-hero-form .button { align-self: stretch; min-height: 0; border-radius: 0; padding: 0 26px; }
.search-hero-form .button:hover { transform: none; background: var(--cinnabar-dark); border-color: var(--cinnabar-dark); }
.search-hot-words {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-top: 14px;
    color: var(--muted-light);
    font-size: 10.5px;
}
.search-hot-words span { margin-right: 3px; font-weight: 700; letter-spacing: .06em; }
.search-hot-words a {
    padding: 4px 10px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: rgba(255,255,255,.72);
    color: #5B625C;
    font-size: 10.5px;
    transition: color .18s ease, border-color .18s ease, background .18s ease;
}
.search-hot-words a:hover { color: var(--cinnabar); border-color: #D8C39A; background: #FFFDF8; }

.intent-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 20px;
    overflow: hidden;
    margin-top: 16px;
    padding: 20px 24px;
    border: 1px solid rgba(197,160,89,.42);
    border-radius: var(--radius-md);
    background: linear-gradient(105deg, var(--accent-dark) 0%, var(--accent-deep) 78%);
    color: #F4EEDF;
    box-shadow: 0 10px 28px rgba(30,44,36,.16);
}
.intent-card-seal {
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(241,220,168,.46);
    outline: 1px solid rgba(241,220,168,.2);
    outline-offset: 4px;
    color: #F1DCA8;
    font: 700 26px/1 var(--serif);
    transform: rotate(-3deg);
}
.intent-card-body { flex: 1; min-width: 0; }
.intent-card-kicker { display: block; color: rgba(241,220,168,.88); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.intent-card-title { margin: 7px 0 5px; color: #FFFDF6; font: 700 20px/1.4 var(--serif); letter-spacing: .02em; }
.intent-card-desc { margin: 0; color: rgba(244,238,223,.8); font-size: 12.5px; line-height: 1.7; }
.intent-card-go {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0 22px;
    border-radius: 6px;
    background: var(--gold);
    color: #2A2118;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .04em;
    white-space: nowrap;
    transition: transform .2s ease, background .2s ease;
}
.intent-card-go:hover { transform: translateY(-1px); background: #DCBB76; }

.search-empty {
    padding: 40px 26px;
    border: 1px dashed var(--line-strong);
    border-radius: var(--radius-md);
    background: rgba(255,255,255,.55);
    text-align: center;
}
.search-empty-title { margin: 0 0 8px; color: var(--ink); font: 700 18px/1.5 var(--serif); }
.search-empty p { margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.75; }
.search-suggest-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 11px; margin-top: 14px; }
.search-suggest-item {
    min-width: 0;
    display: grid;
    gap: 5px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: rgba(255,255,255,.78);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.search-suggest-item:hover { transform: translateY(-2px); border-color: #D9CDBD; box-shadow: var(--shadow-soft); }
.search-suggest-item .feed-category { justify-self: start; }
.search-suggest-item strong { color: var(--ink); font: 700 14px/1.5 var(--serif); }
.search-suggest-item small { color: var(--muted-light); font-size: 9.5px; }

/* ---------- 13. 404 页 ---------- */
.not-found { max-width: 720px; padding-top: 66px; padding-bottom: 76px; text-align: center; }
.not-found h1 { margin: 12px 0 10px; color: var(--ink); font: 700 clamp(26px, 3vw, 34px)/1.35 var(--serif); letter-spacing: .04em; }
.not-found > p { margin: 0 auto 22px; max-width: 520px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.not-found-search {
    max-width: 470px;
    height: 44px;
    display: flex;
    overflow: hidden;
    margin: 0 auto;
    border: 1px solid var(--line-strong);
    border-radius: 8px;
    background: rgba(255,255,255,.9);
}
.not-found-search:focus-within { border-color: rgba(58,99,81,.7); box-shadow: 0 0 0 3px rgba(58,99,81,.08); }
.not-found-search input { min-width: 0; width: 100%; border: 0; outline: 0; padding: 0 15px; background: transparent; color: var(--ink); }
.not-found-search .button { align-self: stretch; min-height: 0; border-radius: 0; padding: 0 20px; }
.not-found-search .button:hover { transform: none; background: var(--cinnabar-dark); border-color: var(--cinnabar-dark); }
.not-found-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin: 20px 0 0 !important; }
.not-found-links a {
    padding: 7px 15px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: rgba(255,255,255,.72);
    color: #5B625C;
    font-size: 11.5px;
    transition: color .18s ease, border-color .18s ease;
}
.not-found-links a:hover { color: var(--cinnabar); border-color: #D8C39A; }

/* ---------- 14. 页脚矩阵：天机策主推位 ---------- */
.matrix-quick-grid { grid-template-columns: minmax(0,1.34fr) minmax(0,1fr) minmax(0,1fr); }
.matrix-card-lead { border-color: #D7C69D; background: linear-gradient(100deg, #FFFDF7, #FFFFFF 62%); }
.matrix-card-lead .matrix-card-text strong { font-size: 13px; }

/* ---------- 15. 古籍引文与表格的阅读质量 ---------- */
.article-content blockquote {
    position: relative;
    border-left-width: 3px;
    border-radius: 0 7px 7px 0;
    background: linear-gradient(100deg, #F6F1E7, #FBF8F1);
}
.article-content blockquote::before {
    content: "「";
    position: absolute;
    right: 11px;
    top: 4px;
    color: rgba(166,58,42,.14);
    font: 700 34px/1 var(--serif);
    pointer-events: none;
}
.article-content blockquote > *:last-child { margin-bottom: 0; }
.article-content table th,
.article-content table td { vertical-align: top; }
.article-content table tbody tr:nth-child(even) { background: rgba(244,240,232,.5); }

/* ---------- 16. 响应式 ---------- */
@media (max-width: 1020px) {
    .product-grid { grid-template-columns: minmax(0,1.45fr) minmax(0,1fr) minmax(0,1fr); gap: 14px; }
    .product-card-lead .product-art-layer { inset: 0 0 0 48%; }
    .divine-rail-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .channel-action-chips { max-width: 260px; }
    .matrix-quick-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

@media (max-width: 820px) {
    /* 侧栏在此断点变双列，排盘卡必须独占整行，避免主转化位被挤成半栏 */
    .divine-card { grid-column: 1 / -1; }
    .channel-action-bar { flex-direction: column; align-items: stretch; gap: 16px; }
    .channel-action-side { align-items: stretch; }
    .channel-action-chips { justify-content: flex-start; max-width: none; }
    .channel-action-go { justify-content: center; }
    .inline-cta { flex-direction: column; align-items: stretch; gap: 14px; }
    .inline-cta-go { justify-content: center; }
    .intent-card { flex-wrap: wrap; }
    .intent-card-go { width: 100%; justify-content: center; }
}

@media (max-width: 768px) {
    .product-grid { grid-template-columns: 1fr; gap: 10px; }
    .product-card-lead { min-height: 214px; }
    .product-card-lead .product-art-layer { inset: 0 0 0 24%; }
    .product-lead-desc { max-width: none; font-size: 11.5px !important; }
    .product-chip-row { margin-top: 11px; }
    .product-chip { padding: 4px 9px; font-size: 10.5px; }

    .header-divine-entry { height: 38px; padding: 0 10px; gap: 7px; }
    .header-divine-copy small { display: none; }
    .header-divine-copy strong { font-size: 12px; }
    .channel-link-divine {
        grid-column: 1 / -1;
        margin-left: 0;
        border-color: rgba(58,99,81,.34) !important;
        background: rgba(240,245,241,.9) !important;
        color: var(--jade-dark);
    }

    .channel-action-bar { margin-top: 12px; padding: 16px 15px; border-radius: 11px; }
    .channel-action-title { font-size: 17px; }
    .channel-action-desc { font-size: 11.5px; }
    .channel-action-chip { padding: 5px 10px; font-size: 10.5px; }
    .channel-action-go { min-height: 42px; }

    .divine-card { grid-column: 1 / -1; }
    .divine-card-seal { width: 34px; height: 34px; font-size: 17px; }
    .divine-card-title { font-size: 16px; }

    .pagination { gap: 5px; }
    .page-step { padding: 0 10px; font-size: 10.5px; }

    .header-tool-chip { min-height: 24px; padding: 0 9px; font-size: 9.5px; }
    .inline-cta { margin: 1.7em 0; padding: 15px 15px; border-radius: 8px; }
    .inline-cta-title { font-size: 15.5px; }
    .inline-cta-desc { font-size: 11.5px; }
    .inline-cta-chip { padding: 4px 9px; font-size: 10.5px; }
    .inline-cta-go { min-height: 40px; font-size: 12.5px; }
    .cta-chip-row { margin-top: 12px; gap: 6px; }
    .cta-chip { padding: 5px 9px; font-size: 10.5px; }

    .mobile-cta-bar { display: flex; }
    body.has-mobile-cta { padding-bottom: 62px; }
    body.has-mobile-cta .back-top { bottom: 72px; }

    .divine-rail { padding-top: 22px; padding-bottom: 24px; }
    .divine-rail-head { display: block; margin-bottom: 14px; }
    .divine-rail-head h2 { font-size: 21px; }
    .divine-rail-head p { font-size: 11.5px; }
    .divine-rail-actions { margin-top: 13px; gap: 12px; }
    .divine-rail-actions .button-primary { flex: 1; min-height: 42px; }
    .divine-rail-grid { grid-template-columns: 1fr; gap: 10px; }
    .divine-rail-card { padding: 13px 14px; border-radius: 9px; }
    .divine-rail-card h3 { font-size: 15px; }
    .divine-rail-card p { -webkit-line-clamp: 2; font-size: 11px; }

    .search-hero { padding: 22px 17px 20px; border-radius: 12px; }
    .search-hero h1 { font-size: 22px; }
    .search-hero-meta { font-size: 11.5px; }
    .search-hero-form { height: 43px; }
    .search-hero-form .button { padding: 0 18px; }
    .intent-card { gap: 14px; padding: 16px 15px; border-radius: 11px; }
    .intent-card-seal { flex-basis: 44px; width: 44px; height: 44px; font-size: 21px; }
    .intent-card-title { font-size: 17px; }
    .intent-card-desc { font-size: 11.5px; }
    .search-empty { padding: 30px 18px; }
    .search-suggest-grid { grid-template-columns: 1fr; }

    .not-found { padding-top: 40px; padding-bottom: 48px; }
    .not-found-links a { padding: 6px 12px; font-size: 11px; }

    .matrix-quick-grid { grid-template-columns: 1fr; }

    /* 古籍表格在窄屏改为横向滚动，避免十神/干支表挤成竖条 */
    .article-content table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; font-size: 13px; }
    .article-content th,
    .article-content td { padding: 8px 10px; white-space: nowrap; }
    .article-content blockquote { border-radius: 0 6px 6px 0; }
    .article-content blockquote::before { font-size: 27px; right: 8px; }
}

@media (max-width: 430px) {
    .header-divine-entry { padding: 0 9px; }
    .header-divine-copy { display: none; }
    .header-divine-icon { width: 22px; height: 22px; flex-basis: 22px; }
    .channel-action-chips .channel-action-chip:nth-child(n+4) { display: none; }
    /* 文案区实测仍有 191px 可用宽度，而「天机策」对陌生访客是无意义品牌词，
       真正的钩子是「查我的日主旺衰」这类意图短句，故小屏保留副标题，
       靠上面已有的 nowrap + ellipsis 自然截断，而不是整条隐藏。 */
    .mobile-cta-copy strong { font-size: 12px; }
    .mobile-cta-copy small { font-size: 9.5px; }
    .search-hot-words a:nth-child(n+6) { display: none; }
}
