:root { --paper:#f5f0e5; --paper-light:#fcfaf4; --ink:#25221e; --ink-soft:#656057; --line:#d7cdbc; --vermilion:#8e3028; --vermilion-deep:#6e211c; --gold:#a47b47; --gold-pale:#e4d4b8; --shadow:0 14px 35px rgba(54,42,28,.09); }
/* 全站检索：复用原有卡片，独立分组与原地返回。 */
.unified-search[hidden] { display:none; }
.unified-search { min-width:0; margin:28px 0 42px; }
.search-results-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:22px 0; border-block:1px solid var(--line); }
.search-results-heading > div { min-width:0; }
.search-results-heading h2,.search-empty { overflow-wrap:anywhere; }
.search-results-heading p[role="status"] { margin:10px 0 0; color:var(--ink-soft); }
.search-result-group { min-width:0; margin-top:28px; }
.search-result-group > h3 { margin:0 0 14px; color:var(--vermilion); overflow-wrap:anywhere; }
.search-result-group > h3 span { font-size:.8rem; font-weight:normal; }
.search-result-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.search-result { min-width:0; display:flex; flex-direction:column; overflow-wrap:anywhere; }
.search-result > article { flex:1; min-width:0; min-height:0; }
.search-result-meta { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:7px; font-size:.72rem; color:var(--ink-soft); }
.search-result-meta span { padding:2px 7px; background:#eee7da; }
.search-action { min-height:44px; max-width:100%; padding:8px 14px; border:1px solid var(--line); border-radius:4px; background:var(--paper-light); color:var(--vermilion); white-space:normal; overflow-wrap:anywhere; }
.search-action:focus-visible,.search-box button:focus-visible { outline:3px solid var(--vermilion); outline-offset:2px; }
.search-empty { padding:26px 18px; margin-top:20px; border:1px dashed var(--line); color:var(--ink-soft); }
.search-empty p:last-child { margin-bottom:0; }
@media (max-width:560px) {
  .search-results-heading { flex-direction:column; gap:12px; }
  .search-result-grid { grid-template-columns:1fr; }
  .search-result-group > h3 { font-size:1.05rem; }
  .search-box { min-width:0; }
  .search-box button { flex:none; min-height:40px; }
  .unified-search .section-toggle { min-height:44px; max-width:100%; white-space:normal; }
}
/* Research Hubs：复用现有卡片，只补充详情容器与窄屏约束。 */
.hub-detail[hidden], .section-toggle[hidden] { display:none; }
.hub-detail { min-width:0; margin:0 0 42px; padding:28px 30px; border-top:3px solid var(--gold); background:rgba(252,250,244,.7); }
.hub-heading { margin:22px 0 26px; }
.hub-heading h2 { margin:6px 0 12px; overflow-wrap:anywhere; }
.hub-heading > p:not(.section-kicker) { margin-bottom:8px; color:var(--ink-soft); }
.hub-subtitle { font-family:Georgia,serif; font-size:.85rem; }
.hub-back { max-width:100%; min-height:44px; padding:7px 14px; border:1px solid var(--line); border-radius:4px; color:var(--vermilion); background:var(--paper-light); white-space:normal; }
.hub-back:focus-visible { outline:3px solid var(--vermilion); outline-offset:2px; }
.hub-section { min-width:0; padding:22px 0; border-top:1px solid var(--line); }
.hub-section > h3 { margin:0 0 16px; color:var(--vermilion); font-size:1.08rem; }
.hub-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.hub-empty { margin:0; padding:20px; border:1px dashed var(--line); color:var(--ink-soft); font-size:.86rem; }
.hub-detail .site-card,.hub-detail .update-card { min-height:0; }
.classic-paper-card { display:flex; flex-direction:column; gap:10px; }
.classic-paper-card h4 { margin:0; font-size:1.05rem; line-height:1.5; overflow-wrap:anywhere; }
.classic-paper-card p { margin:0; }
.paper-citation-part { display:inline-block; max-width:100%; vertical-align:top; }
.papers-controls { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.papers-controls .section-toggle { margin:0; }
.classic-paper-actions { display:flex; flex-wrap:wrap; align-items:flex-end; gap:8px 12px; margin-top:auto; }
.classic-paper-link { font-size:.83rem; }
.research-topic-card { min-width:0; overflow-wrap:anywhere; }
.research-topic-card .topic-button { min-height:44px; max-width:100%; text-align:left; }
@media (max-width:560px) {
  .hub-detail { padding:20px 14px; }
  .hub-grid { grid-template-columns:1fr; }
  .hub-heading,.hub-section,.hub-empty { overflow-wrap:anywhere; }
  .hub-section { padding:20px 0; }
}
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); background-color:var(--paper); background-image:radial-gradient(rgba(84,61,36,.045) .8px,transparent .8px); background-size:10px 10px; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; line-height:1.7; } a { color:inherit; text-decoration:none; } button,input { font:inherit; } button { cursor:pointer; }
.hero { min-height:410px; color:#fbf4e7; background:linear-gradient(125deg,rgba(22,21,19,.94),rgba(45,37,29,.93)),repeating-linear-gradient(90deg,transparent 0 38px,rgba(232,216,179,.055) 39px 40px); position:relative; overflow:hidden; }.hero::after { content:"古 文 字"; position:absolute; right:-26px; bottom:-105px; color:rgba(232,216,179,.055); font-size:clamp(120px,22vw,260px); font-weight:700; letter-spacing:.14em; pointer-events:none; }.site-nav,.hero-content,.page-shell { width:min(1140px,calc(100% - 40px)); margin:0 auto; }.site-nav { display:flex; justify-content:space-between; align-items:center; padding:22px 0; font-size:.9rem; }.site-nav > a:last-child { color:#e4cda3; border-bottom:1px solid transparent; }.site-nav > a:last-child:hover { border-color:#e4cda3; }.brand { font-size:1.1rem; font-weight:700; letter-spacing:.08em; }.brand span { color:#cf9a59; margin-right:.3rem; }.hero-content { position:relative; z-index:1; padding:59px 0 78px; }.eyebrow,.section-kicker { margin:0; color:var(--vermilion); font-family:Georgia,serif; font-size:.7rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }.hero .eyebrow { color:#d9af70; } h1,h2,h3,p { margin-top:0; } h1 { margin:4px 0 0; font-size:clamp(2.55rem,6vw,4.5rem); line-height:1.25; letter-spacing:.12em; }.english-name { margin:0; color:#d8cbb5; font-family:Georgia,serif; font-size:1rem; letter-spacing:.09em; }.intro { max-width:650px; margin:25px 0 0; color:#e7dfd0; font-size:1.06rem; }.seal-line { display:flex; align-items:center; gap:12px; margin-top:28px; color:#d9af70; font-size:.78rem; letter-spacing:.25em; }.seal-line i { display:block; width:27px; height:1px; background:rgba(217,175,112,.65); }
.page-shell { padding:58px 0 70px; }.search-panel { margin-bottom:32px; display:flex; justify-content:space-between; align-items:end; gap:30px; } h2 { margin-bottom:0; font-size:clamp(1.38rem,3vw,1.85rem); line-height:1.35; letter-spacing:.04em; }.search-box { width:min(430px,100%); display:flex; align-items:center; gap:10px; padding:7px 10px 7px 17px; background:var(--paper-light); border:1px solid var(--line); border-radius:4px; box-shadow:var(--shadow); }.search-box:focus-within { border-color:var(--vermilion); box-shadow:0 0 0 3px rgba(142,48,40,.12); }.search-box span { font-family:sans-serif; font-size:1.65rem; line-height:1; transform:rotate(-20deg); }.search-box input { min-width:0; flex:1; border:0; outline:0; background:transparent; color:var(--ink); font-size:.93rem; }.search-box input::placeholder { color:#948c80; }.search-box button { padding:5px 8px; border:0; border-radius:2px; color:var(--ink-soft); background:#ebe3d4; font-size:.76rem; }.search-box button:hover { color:#fff; background:var(--vermilion); }
.filters { margin:27px 0 42px; padding:20px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.filter-list,.research-tags { display:flex; flex-wrap:wrap; gap:10px; }.filter-button,.research-tag { padding:7px 13px; border:1px solid #cbc0af; border-radius:999px; color:#49443c; background:transparent; font-size:.82rem; transition:.2s ease; }.filter-button:hover,.filter-button.is-active { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }
.core-section { position:relative; margin:0 -18px 54px; padding:34px 38px 38px; border:1px solid #c9b18e; background:linear-gradient(135deg,rgba(250,246,235,.96),rgba(236,225,204,.92)); box-shadow:var(--shadow); }.core-section::before { content:"汉"; position:absolute; right:35px; top:13px; color:rgba(142,48,40,.06); font-size:8rem; font-weight:700; line-height:1; pointer-events:none; }.core-heading,.section-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; position:relative; z-index:1; }.core-heading { margin-bottom:17px; }.core-heading .section-kicker { color:var(--vermilion); }.core-heading > p { max-width:510px; margin:0; color:var(--ink-soft); font-size:.87rem; text-align:right; }.research-tags-wrap { position:relative; z-index:1; display:flex; align-items:flex-start; gap:14px; padding:16px 0 23px; border-top:1px solid rgba(164,123,71,.35); }.tag-label { flex:none; padding-top:6px; color:#806542; font-size:.74rem; letter-spacing:.08em; }.research-tags { gap:7px; }.research-tag { padding:4px 9px; border-color:#cdbb9e; color:#755c41; background:rgba(255,253,246,.5); font-size:.72rem; }.research-tag:hover,.research-tag.is-active { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }.core-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.core-card { display:flex; flex-direction:column; min-height:310px; padding:25px; border:1px solid #cdb99a; background:rgba(255,253,247,.85); box-shadow:0 5px 16px rgba(54,42,28,.07); transition:transform .2s,box-shadow .2s; }.core-card:hover { transform:translateY(-4px); box-shadow:0 16px 28px rgba(54,42,28,.13); }.core-meta { display:flex; justify-content:space-between; gap:12px; }.core-label,.category-badge { display:inline-block; padding:3px 8px; color:var(--vermilion); border:1px solid #d9b7ac; background:#fbf2ed; font-size:.7rem; line-height:1.4; }.core-card .institution { margin:12px 0 0; color:#806542; font-size:.76rem; }.core-card h3 { margin:6px 0 5px; font-size:1.27rem; line-height:1.42; }.core-subtitle { margin:0 0 10px; color:#716554; font-size:.8rem; }.description { color:var(--ink-soft); font-size:.86rem; line-height:1.75; }.core-card .description { margin:0 0 14px; }.keywords { display:flex; flex-wrap:wrap; gap:6px; margin:auto 0 17px; }.keyword { padding:2px 7px; color:#6d5a47; background:#eee7da; font-size:.7rem; }.visit-button { font-size:.83rem; letter-spacing:.05em; }.core-empty { position:relative; z-index:1; margin:0; padding:22px; border:1px dashed #bdad97; text-align:center; color:var(--ink-soft); font-size:.9rem; }
.section-heading { margin-bottom:19px; }.section-heading > p { margin:0; color:var(--ink-soft); font-size:.82rem; text-align:right; }.common-section { margin-bottom:54px; }.common-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.common-card { display:block; min-height:130px; padding:20px; border-left:4px solid var(--gold); background:rgba(252,250,244,.8); box-shadow:0 5px 16px rgba(54,42,28,.05); transition:transform .2s,box-shadow .2s; }.common-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); }.common-card span { color:var(--vermilion); font-size:.72rem; letter-spacing:.08em; }.common-card h3 { margin:6px 0 0; font-size:1.04rem; }
.common-card > p { margin:5px 0 0; color:var(--ink-soft); font-family:Georgia,serif; font-size:.75rem; line-height:1.4; }
@media (max-width:900px) { .common-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .common-grid { grid-template-columns:1fr; } }
.site-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }.site-card { display:flex; flex-direction:column; min-height:300px; padding:23px; border:1px solid #ded5c7; background:rgba(252,250,244,.88); box-shadow:0 5px 14px rgba(54,42,28,.04); transition:transform .2s,box-shadow .2s,border-color .2s; }.site-card:hover { transform:translateY(-4px); border-color:#bba78e; box-shadow:var(--shadow); }.site-card h3 { margin:12px 0 6px; font-size:1.13rem; line-height:1.45; }.site-card .institution { margin:0 0 10px; color:#806542; font-size:.75rem; }.site-card .description { margin:0 0 14px; }.empty-state { padding:60px 20px; border:1px dashed #bdad97; text-align:center; color:var(--ink-soft); }.empty-state span { color:var(--gold); font-size:2rem; }.empty-state h3 { margin:5px 0; color:var(--ink); }.empty-state p { margin:0; font-size:.9rem; }.guide { margin-top:70px; padding:30px 34px; border-top:3px solid var(--vermilion); background:#eae1d2; }.guide h2 { margin-top:3px; }.guide ol { margin:18px 0 0; padding-left:1.5rem; }.guide li { margin:7px 0; color:#514b43; font-size:.91rem; } footer { display:flex; justify-content:space-between; gap:18px; padding:20px max(20px,calc((100% - 1140px)/2)); color:#dcd1c1; background:#292721; font-size:.74rem; } footer p { margin:0; }
.core-card.priority-core { border-top:4px solid var(--vermilion); background:linear-gradient(145deg,#fffdf7,#f4ead9); }.priority-label { display:inline-block; padding:3px 8px; color:#fff9ed; border:1px solid var(--vermilion); background:var(--vermilion); font-size:.7rem; line-height:1.4; }.fit-for { margin:0 0 15px; padding:9px 11px; color:#514437; border-left:2px solid var(--gold); background:rgba(228,212,184,.34); font-size:.78rem; line-height:1.65; }.fit-for strong { color:var(--vermilion); }.research-path { position:relative; z-index:1; margin-top:26px; padding-top:22px; border-top:1px solid rgba(164,123,71,.35); }.path-heading { display:flex; align-items:baseline; gap:12px; }.path-heading h3 { margin:0; font-size:1rem; }.path-steps { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:14px; }.path-steps span { padding:6px 9px; color:#5a4d3c; border:1px solid #d4c5ad; background:rgba(255,253,247,.62); font-size:.75rem; }.path-steps i { color:var(--vermilion); font-style:normal; font-size:.9rem; }
@media (max-width:760px) { .path-heading { align-items:start; flex-direction:column; gap:2px; }.path-steps { align-items:stretch; flex-direction:column; }.path-steps i { height:13px; text-align:center; } }
.updates-section { margin:0 0 54px; padding:31px 32px 34px; border-top:3px solid var(--gold); background:rgba(252,250,244,.62); box-shadow:0 6px 20px rgba(54,42,28,.045); }.updates-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; }.updates-heading > p { max-width:430px; margin:0; color:var(--ink-soft); font-size:.85rem; text-align:right; }.update-filters { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; padding:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.update-filter { padding:5px 11px; border:1px solid #cfc2ae; border-radius:999px; color:#594f43; background:transparent; font-size:.75rem; transition:.2s ease; }.update-filter:hover,.update-filter.is-active { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }.updates-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; }.update-card { display:flex; flex-direction:column; min-height:282px; padding:21px; border:1px solid #ddd2c0; background:var(--paper-light); box-shadow:0 4px 12px rgba(54,42,28,.04); }.update-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }.update-type,.example-label { display:inline-block; padding:3px 8px; font-size:.69rem; line-height:1.4; }.update-type { color:var(--vermilion); border:1px solid #d9b7ac; background:#fbf2ed; }.example-label { color:#78674f; background:#eee4d4; }.update-card h3 { margin:13px 0 13px; font-size:1.02rem; line-height:1.5; }.update-meta { margin:0 0 12px; color:#7c7368; font-size:.73rem; line-height:1.7; }.update-summary { margin:0 0 15px; color:var(--ink-soft); font-size:.83rem; }.update-link { margin-top:auto; font-size:.83rem; }.update-empty { margin:0; padding:28px; border:1px dashed #bdad97; text-align:center; color:var(--ink-soft); font-size:.86rem; }
.latest-update-date { margin:6px 0 0; color:#817565; font-size:.7rem; letter-spacing:.04em; }
.update-filter-groups { margin:22px 0; padding:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.update-filter-group { display:grid; grid-template-columns:70px minmax(0,1fr); align-items:start; gap:12px; }.update-filter-group + .update-filter-group { margin-top:11px; padding-top:11px; border-top:1px dashed #d8cdbd; }.update-filter-label { padding-top:5px; color:#806542; font-size:.72rem; letter-spacing:.08em; }.update-filter-groups .update-filters,.update-object-filters { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; border:0; }.update-object-filter { padding:4px 9px; border:1px solid #d4c5ad; border-radius:999px; color:#6d5a47; background:rgba(255,253,247,.58); font-size:.69rem; transition:.2s ease; }.update-object-filter:hover,.update-object-filter.is-active { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }.update-object-list { display:flex; flex-wrap:wrap; gap:6px; margin:-2px 0 12px; }.update-object-list span { padding:2px 7px; color:#755c41; background:#eee7da; font-size:.68rem; }
.update-filter-group[hidden] { display:none; }
@media (max-width:760px) { .updates-section { margin-bottom:45px; padding:26px 20px; }.updates-heading { align-items:start; flex-direction:column; }.updates-heading > p { text-align:left; }.update-filter-group { grid-template-columns:1fr; gap:7px; }.update-filter-label { padding-top:0; }.updates-grid { grid-template-columns:1fr; }.update-card { min-height:0; } }

/* V0.5：折叠入口与紧凑节奏 */
.section-toggle { display:block; margin:16px auto 0; padding:7px 16px; border:1px solid #c9b18e; border-radius:999px; color:#6d4f35; background:rgba(255,253,247,.72); font-size:.78rem; }
.section-toggle:hover { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }
.research-topics-panel { margin:4px 0 18px; padding:12px 0 2px; border-top:1px solid rgba(164,123,71,.28); }
.research-topics-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:9px; }
.topic-reset { padding:3px 9px; border:1px solid #d4c5ad; border-radius:999px; color:#755c41; background:transparent; font-size:.68rem; }
.topic-reset:hover { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }
.research-topics-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.research-topics-empty { grid-column:1/-1; margin:0; padding:28px 20px; border:1px dashed #bdad97; color:var(--ink-soft); text-align:center; font-size:.86rem; }
.research-topic-card { padding:13px 14px; border:1px solid #d8c9b2; background:rgba(255,253,247,.7); }
.research-topic-card.is-active { border-color:var(--vermilion); box-shadow:0 0 0 2px rgba(142,48,40,.08); }
.topic-label { color:var(--vermilion); font-size:.65rem; letter-spacing:.08em; }
.research-topic-card h3 { margin:4px 0 1px; font-size:.96rem; line-height:1.4; }
.topic-subtitle { margin:0 0 5px; color:#8a7963; font-family:Georgia,serif; font-size:.66rem; }
.topic-description { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.7em; margin:0 0 6px; color:var(--ink-soft); font-size:.72rem; line-height:1.45; }
.topic-count { margin:0 0 8px; color:#806542; font-size:.69rem; }
.topic-button { padding:0; border:0; color:var(--vermilion); background:transparent; font-size:.73rem; }
.topic-button:hover { color:var(--vermilion-deep); text-decoration:underline; }
.core-section { margin-bottom:42px; padding-top:28px; padding-bottom:30px; }
.core-card { min-height:270px; padding:20px; }
.core-card .description { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; line-height:1.65; margin-bottom:9px; }
.keywords { gap:5px; margin-bottom:11px; }
.research-tags-wrap { padding-top:12px; padding-bottom:17px; }
.research-path { margin-top:20px; padding-top:17px; }
.updates-section { margin-bottom:42px; padding-top:27px; padding-bottom:29px; }
.common-section { margin-bottom:42px; }
.common-card { min-height:112px; padding:15px 18px; }
.site-card { min-height:270px; padding:20px; }
.site-grid { gap:15px; }
@media (max-width:760px) { .core-section { margin-bottom:36px; padding:23px 20px 25px; }.updates-section { margin-bottom:36px; }.common-section { margin-bottom:36px; } }
@media (max-width:900px) { .research-topics-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .research-topics-grid { grid-template-columns:1fr; } }

/* V0.9：关于、日期说明与发布前的小屏适配 */
.date-note { margin:5px 0 0; color:#978a79; font-size:.68rem; line-height:1.5; }
.update-labels { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:5px; }
.historical-label { display:inline-block; padding:3px 8px; color:#806542; border:1px solid #d8c7aa; background:#f0e6d5; font-size:.68rem; line-height:1.4; }
.about-site { display:grid; grid-template-columns:1.15fr .85fr; gap:28px; margin-top:42px; padding:27px 30px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(252,250,244,.48); }
.about-block h2 { margin:3px 0 12px; font-size:1.25rem; }
.about-block p { margin:0 0 8px; color:var(--ink-soft); font-size:.82rem; line-height:1.7; }
.about-block ul { margin:0; padding-left:1.2rem; color:var(--ink-soft); font-size:.82rem; }
.about-block li { margin:4px 0; }
footer { flex-wrap:wrap; align-items:center; }
footer p:last-child { color:#cdbda8; }
@media (max-width:760px) {
  .about-site { grid-template-columns:1fr; gap:22px; margin-top:34px; padding:22px 20px; }
  footer { align-items:flex-start; flex-direction:column; gap:5px; }
}
@media (max-width:430px) {
  .site-nav,.hero-content,.page-shell { width:calc(100% - 28px); }
  .site-nav { align-items:flex-start; gap:12px; padding:16px 0; font-size:.78rem; }
  .brand { max-width:75%; font-size:.95rem; line-height:1.4; }
  .hero-content { padding:42px 0 58px; }
  h1 { font-size:clamp(2.05rem,11vw,2.8rem); letter-spacing:.07em; overflow-wrap:anywhere; }
  .english-name { font-size:.82rem; line-height:1.45; }
  .intro { margin-top:17px; font-size:.92rem; }
  .search-panel { align-items:stretch; gap:16px; }
  .search-box { width:100%; padding-left:12px; }
  .filters { margin-bottom:30px; padding:15px 0; }
  .filter-list { gap:7px; }
  .filter-button { padding:6px 9px; font-size:.74rem; }
  .core-section { margin-left:0; margin-right:0; }
  .core-heading > p, .section-heading > p { text-align:left; }
  .core-heading,.section-heading { align-items:flex-start; flex-direction:column; gap:8px; }
  .update-top { align-items:flex-start; }
  .updates-section { padding-left:14px; padding-right:14px; }
  .update-card { padding:17px; }
  .update-filter, .update-object-filter { padding:6px 9px; }
  .section-toggle { min-height:40px; padding:8px 18px; }
}

/* V1.2：Hero 门类入口与简洁访问说明 */
.seal-line button { flex:none; min-width:36px; min-height:44px; padding:4px 6px; border:1px solid transparent; border-radius:3px; background:transparent; color:inherit; font:inherit; font-size:1rem; letter-spacing:0; cursor:pointer; }
.seal-line button:hover { background:rgba(217,175,112,.08); }
.seal-line button.is-active { border-color:rgba(217,175,112,.65); background:rgba(217,175,112,.1); }
.seal-line button:focus-visible { outline:2px solid #d9af70; outline-offset:3px; }
.return-home { display:inline-flex; align-items:center; min-height:38px; margin-top:17px; padding:5px 13px; border:1px solid rgba(217,175,112,.65); border-radius:999px; color:#e4cda3; background:rgba(217,175,112,.08); font-size:.8rem; }
.return-home[hidden] { display:none; }
.return-home:hover { color:#fff9ed; border-color:#d9af70; background:rgba(217,175,112,.18); }
.return-home:focus-visible { outline:2px solid #d9af70; outline-offset:3px; }
.access-note { align-self:flex-start; margin:0 0 12px; padding:3px 8px; border:1px solid #d4c5ad; border-radius:4px; color:#755c41; background:#eee7da; font-size:.72rem; }
.genre-empty { padding:24px; border:1px dashed #bdad97; color:var(--ink-soft); text-align:center; }
.resource-tags { display:flex; flex-wrap:wrap; gap:6px; margin:0 0 11px; }
.resource-tags span,.resource-group-label { display:inline-block; padding:2px 7px; color:#755c41; background:#eee7da; font-size:.68rem; line-height:1.4; }
.resource-group-label { margin:8px 0 0; color:var(--vermilion); border:1px solid #d9b7ac; background:#fbf2ed; }
.genre-structure[hidden] { display:none; }
.genre-structure { margin:0 0 18px; }
.genre-resource-group { padding:16px 0 18px; border-top:1px solid rgba(164,123,71,.3); }
.genre-resource-group:last-child { border-bottom:1px solid rgba(164,123,71,.3); }
.genre-resource-group h3 { margin:0 0 9px; color:var(--vermilion); font-size:1rem; }
.genre-group-note { margin:0; color:var(--ink-soft); font-size:.8rem; }
.genre-group-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
@media (max-width:430px) { .seal-line { gap:4px; }.seal-line i { width:12px; }.return-home { margin-top:14px; min-height:40px; } }

/* V1.2：精选核心工具书 / 基础书目 */
.bibliography-section { margin:0 0 42px; padding:27px 0 4px; border-top:1px solid var(--line); }
.bibliography-section[hidden] { display:none; }
.bibliography-heading { align-items:flex-end; }
.bibliography-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.bibliography-card { min-width:0; padding:18px; border:1px solid #d8cdbc; border-top:3px solid var(--gold); background:rgba(252,250,244,.82); box-shadow:0 5px 14px rgba(54,42,28,.04); overflow-wrap:anywhere; }
.bibliography-meta { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.bibliography-type,.bibliography-level { display:inline-block; padding:2px 7px; color:var(--vermilion); border:1px solid #d9b7ac; background:#fbf2ed; font-size:.68rem; line-height:1.4; }
.bibliography-level { color:#755c41; border-color:#d4c5ad; background:#eee7da; }
.bibliography-card h3 { margin:9px 0 5px; font-size:1.05rem; line-height:1.5; }
.bibliography-author { margin:0 0 10px; color:#806542; font-size:.75rem; line-height:1.55; }
.bibliography-tags { display:flex; flex-wrap:wrap; gap:5px; margin:0 0 10px; }
.bibliography-tags span { padding:2px 7px; color:#6d5a47; background:#eee7da; font-size:.68rem; }
.bibliography-note { margin:0 0 9px; color:var(--ink-soft); font-size:.76rem; line-height:1.6; }
.bibliography-publication { margin:0; padding-top:8px; border-top:1px dashed #d8cdbc; color:#8a7963; font-size:.68rem; }
.bibliography-isbn { margin:6px 0 0; color:var(--ink-soft); font-size:.8125rem; }
.bibliography-volumes { margin-top:12px; font-size:.875rem; }
.bibliography-volumes summary { cursor:pointer; min-height:44px; padding:10px 0; color:var(--vermilion); }
.bibliography-volumes ul { margin:0; padding-left:1.2em; }
.bibliography-volumes li + li { margin-top:6px; }
.bibliography-volumes small { display:block; color:var(--ink-soft); }
.bibliography-link { margin-top:14px; }
.bibliography-empty { margin:0; padding:24px; border:1px dashed #bdad97; color:var(--ink-soft); text-align:center; font-size:.86rem; }
@media (max-width:900px) { .bibliography-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .bibliography-section { margin-bottom:36px; padding-top:23px; }.bibliography-grid { grid-template-columns:1fr; }.bibliography-heading { align-items:flex-start; flex-direction:column; gap:8px; }.bibliography-heading > p { text-align:left; }.bibliography-card { padding:16px; } }

/* V1.1D：栏目导航、筛选结果优先与综合资源保底 */
.filter-button:focus-visible,.research-tag:focus-visible,.update-filter:focus-visible,.update-object-filter:focus-visible,.update-view-tab:focus-visible,.topic-button:focus-visible,.section-toggle:focus-visible,.update-filter-status button:focus-visible,.resource-filter-status button:focus-visible,.common-card:focus-visible { outline:3px solid var(--vermilion); outline-offset:2px; }
.category-feedback { margin:12px 2px 0; color:#806542; font-size:.76rem; }
.update-view-tabs { display:flex; gap:8px; margin:20px 0 4px; padding-bottom:13px; border-bottom:1px solid var(--line); }
.update-view-tab { min-width:112px; min-height:39px; padding:7px 16px; border:1px solid #c9b18e; color:#684c35; background:rgba(255,253,247,.7); font-size:.8rem; }
.update-view-tab:hover,.update-view-tab.is-active { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }
.update-view-panel[hidden] { display:none; }
.update-filter-status { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:-2px 0 18px; padding:12px 14px; border-left:3px solid var(--vermilion); background:#eee4d4; }
.update-filter-status[hidden] { display:none; }
.update-filter-status p { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; margin:0; color:#5f5548; font-size:.8rem; }
.update-filter-status strong { color:var(--vermilion); font-size:.86rem; }
.update-filter-actions { display:flex; flex:0 1 auto; min-width:0; flex-wrap:wrap; gap:7px; }
.update-filter-status button { flex:none; min-height:36px; padding:5px 13px; border:1px solid #bda98d; border-radius:999px; color:#684c35; background:#fffaf0; font-size:.75rem; }
.update-filter-status button:hover { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }
.updates-section.has-active-filter .updates-grid { padding-bottom:20px; border-bottom:1px solid rgba(164,123,71,.3); }
.research-topics-panel { margin-top:15px; }
.research-topics-heading > div { min-width:0; }
.research-topics-heading .update-filter-label { display:block; padding:0; color:var(--vermilion); font-size:.77rem; font-weight:700; }
.research-topics-heading p { margin:2px 0 0; color:#8a7963; font-size:.68rem; }
.match-label { display:inline-block; padding:3px 8px; color:#fff9ed; border:1px solid var(--vermilion); background:var(--vermilion); font-size:.68rem; line-height:1.4; }
.core-card.matches-direction { border-color:#b87863; box-shadow:0 0 0 2px rgba(142,48,40,.07),0 8px 20px rgba(54,42,28,.08); }
.core-empty { margin:0 0 18px; padding:12px 14px; border-style:solid; border-color:#d4c5ad; background:rgba(255,253,247,.58); text-align:left; }
.resource-filter-status { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:0 0 18px; padding:11px 14px; border-left:3px solid var(--gold); background:rgba(238,228,212,.64); }
.resource-filter-status[hidden] { display:none; }
.resource-filter-status p { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; margin:0; color:#5f5548; font-size:.8rem; }
.resource-filter-status strong { color:var(--vermilion); }
.resource-filter-status.is-empty { padding:16px; border:1px dashed #bdad97; border-left:3px solid var(--vermilion); background:rgba(252,250,244,.72); }
.resource-filter-status button { flex:none; min-height:36px; padding:5px 13px; border:1px solid #bda98d; border-radius:999px; color:#684c35; background:#fffaf0; font-size:.75rem; }
.resource-filter-status button:hover { color:#fff9ed; border-color:var(--vermilion); background:var(--vermilion); }
.common-action { width:100%; border:0; font:inherit; text-align:left; cursor:pointer; }
.wechat-card[hidden] { display:none; }
.core-card,.site-card,.common-card,.update-card { min-width:0; overflow-wrap:anywhere; }

@media (max-width:900px) {
  .site-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .search-panel { align-items:stretch; flex-direction:column; }
  .core-grid,.site-grid { grid-template-columns:1fr; }
  .genre-group-cards { grid-template-columns:1fr; }
  .research-tags-wrap { flex-direction:column; gap:9px; }
  .tag-label { padding-top:0; }
  .research-tags-wrap .section-toggle { margin:4px 0 0; }
}
@media (max-width:560px) {
  .update-filter-status,.resource-filter-status { align-items:flex-start; flex-direction:column; }
  .update-filter-status button,.resource-filter-status button { min-width:112px; min-height:42px; }
  .resource-filter-status button { width:100%; }
  .update-filter-actions { width:100%; }
  .update-filter-actions button { flex:1; }
  .update-view-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .update-view-tab { min-width:0; min-height:44px; }
  .research-topics-heading { align-items:flex-start; flex-direction:column; gap:8px; }
  .filter-list,.research-tags,.update-filters,.update-object-filters { max-width:100%; }
}
@media (max-width:430px) {
  .filter-button { min-height:38px; }
  .category-feedback { line-height:1.55; }
  .update-filter-status { margin-bottom:14px; padding:11px 12px; }
  .research-topics-panel { margin-top:18px; }
}

/* 第一轮 UI/UX：可访问性、阅读字号与内容优先的窄屏节奏。 */
a:focus-visible,button:focus-visible,input:focus-visible { outline:3px solid var(--vermilion); outline-offset:3px; }
.hero a:focus-visible,.hero button:focus-visible { outline-color:#d9af70; }
.search-box input:focus-visible { outline:2px solid var(--vermilion); outline-offset:2px; }
.date-note,.latest-update-date,.bibliography-publication,.topic-subtitle,.research-topics-heading p { color:#756553; }
.date-note,.latest-update-date,.bibliography-publication { font-size:.8125rem; line-height:1.6; }
.search-box input::placeholder { color:#756b5e; opacity:1; }
.topic-description { font-size:.875rem; line-height:1.65; min-height:3.3em; }
.topic-count { font-size:.8125rem; }
.bibliography-author,.bibliography-note,.update-meta,.institution { font-size:.875rem; line-height:1.65; }
.core-card .institution,.site-card .institution { font-size:.875rem; }
.update-meta { color:#706456; }
.hub-section.hub-section-empty { padding:12px 0; }
.hub-section-empty > h3 { margin-bottom:5px; }
.hub-section-empty .hub-empty { padding:0; border:0; font-size:.875rem; line-height:1.65; }
/* 搜索只调整展示密度，不截断题名或改变结果集合。 */
.unified-search .search-result-grid { gap:12px; }
.unified-search .search-result > article { min-height:0; padding:14px 16px; }
.unified-search .search-result-meta { margin-bottom:4px; }
.unified-search .search-result-meta span:first-child,.unified-search .research-topic-card .topic-label,.unified-search .topic-subtitle { display:none; }
.unified-search .site-card h3,.unified-search .update-card h3 { margin:7px 0; }
.unified-search .description,.unified-search .update-summary { font-size:.875rem; margin-bottom:9px; }
.unified-search .keywords,.unified-search .resource-tags,.unified-search .bibliography-tags { display:none; }
.unified-search .topic-description { min-height:0; margin-bottom:6px; }
.unified-search .topic-count,.unified-search .bibliography-author,.unified-search .update-meta { margin-bottom:6px; }
.unified-search .visit-button,.unified-search .update-link { align-self:flex-start; }
.unified-search .classic-paper-link,.unified-search .topic-button { min-height:44px; }
@media (max-width:430px) {
  .hero { min-height:0; }
  .site-nav { padding:13px 0; }
  .hero-content { padding:22px 0 28px; }
  .hero .eyebrow { font-size:.625rem; line-height:1.5; letter-spacing:.1em; }
  .intro { margin-top:12px; }
  .seal-line { margin-top:16px; }
  .page-shell { padding-top:33px; }
  .search-panel { gap:12px; margin-bottom:24px; }
  .filters { margin:18px 0 22px; padding:10px 0; }
  .filter-list { gap:6px; }
  .category-feedback { margin-top:8px; }
  .updates-section { padding-top:18px; padding-bottom:20px; }
  .updates-heading { gap:10px; }
  .updates-heading .section-kicker { font-size:.625rem; line-height:1.5; letter-spacing:.1em; }
  .updates-heading > p { font-size:.875rem; }
  .update-view-tabs { margin-top:12px; padding-bottom:8px; }
  .update-filter-groups { margin:10px 0 14px; padding:8px 0; }
  .update-filter-group { gap:4px; }
  .update-filter-group + .update-filter-group { margin-top:8px; padding-top:8px; }
  .update-filters,.update-object-filters { gap:6px; }
  .update-filter,.update-object-filter { padding:4px 8px; min-height:32px; font-size:.75rem; }
  .update-filter-label { font-size:.75rem; }
  .unified-search { margin-top:18px; }
  .search-results-heading { padding:14px 0; }
  .search-result-group { margin-top:20px; }
  .unified-search .search-result > article { padding:12px 14px; }
}

/* 首页按需展开，公众号复用书目卡片与模块样式。 */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
summary.path-heading { display:list-item; min-height:44px; padding:10px 0; color:var(--vermilion); cursor:pointer; font-size:1rem; }
summary.path-heading:focus-visible { outline:3px solid var(--vermilion); outline-offset:3px; }
.section-toggle { min-height:44px; max-width:100%; white-space:normal; }

/* 门户首页只承载动态、专题与推荐；完整内容由总览进入。 */
.topics-section,.featured-section,.navigation-overview { min-width:0; margin:0 0 36px; }
#hanPageIntro { margin:-8px 0 20px; color:var(--ink-soft); }
.han-section-links { display:flex; flex-wrap:wrap; gap:8px 18px; }
.han-section-links a { display:inline-flex; align-items:center; min-height:44px; color:var(--vermilion); }
.han-section-links a:focus-visible { outline:3px solid var(--vermilion); outline-offset:2px; }
.topics-section[hidden],.featured-section[hidden],.navigation-overview[hidden],.module-header[hidden],.guide[hidden],.resources-section[hidden] { display:none; }
.portal-topics { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.portal-topic { padding:0; border:0; background:none; }
.portal-topic .topic-button { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; min-height:60px; height:100%; margin:0; padding:12px; border:1px solid var(--line); color:var(--ink); background:var(--paper-light); font-size:.875rem; line-height:1.5; text-align:left; }
.portal-topic .topic-button span:first-child { min-width:0; overflow-wrap:anywhere; }
.portal-topic .topic-button span:last-child { flex:none; color:var(--vermilion); }
.portal-topic .topic-button:hover { border-color:var(--gold); background:#f4ead9; }
.featured-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.core-card.featured-card { min-height:0; padding:16px; border:1px solid #ded5c7; background:rgba(252,250,244,.88); box-shadow:0 5px 14px rgba(54,42,28,.04); }
.core-card.featured-card h3 { margin:10px 0 6px; font-size:1.05rem; line-height:1.5; }
.core-card.featured-card .institution { margin:0 0 8px; }
.core-card.featured-card .description { display:block; margin:0 0 12px; font-size:.875rem; line-height:1.65; }
.featured-card .category-badge { align-self:flex-start; }
.featured-card .visit-button { margin-top:auto; }
.overview-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.overview-list li { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:12px; min-width:0; padding:10px 0; border-bottom:1px solid var(--line); }
.overview-list li > span { min-width:0; font-size:1rem; overflow-wrap:anywhere; }
.overview-list small { color:var(--ink-soft); font-size:.8125rem; }
.overview-list button { grid-column:3; min-width:64px; }
.overview-list button:disabled { color:var(--ink-soft); cursor:default; opacity:.65; }
.module-header { margin:0 0 20px; }
.library-tools { margin:0 0 22px; border-bottom:1px solid var(--line); }
.library-tools > summary { min-height:44px; padding:10px 0; color:var(--vermilion); cursor:pointer; }
.library-tools > summary:focus-visible { outline:3px solid var(--vermilion); outline-offset:3px; }
.library-tools .research-tags-wrap { border-top:0; }
.guide { margin-top:0; }
@media (max-width:900px) {
  .portal-topics,.featured-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:430px) {
  .core-card.featured-card { padding:12px; }
  .core-card.featured-card h3 { font-size:.95rem; }
  .core-card.featured-card .institution,.core-card.featured-card .description { font-size:.8125rem; }
  .overview-list li { gap:8px; }
  .overview-list li > span { font-size:.9375rem; }
  .overview-list button { min-width:56px; padding:8px 12px; }
}

/* 外链共用一个视觉组件；各模块只维护各自的布局间距。 */
:is(.visit-button,.update-link,.classic-paper-link) {
  display:inline-flex; align-items:center; justify-content:center; align-self:flex-start;
  max-width:100%; min-height:44px; padding:8px 12px; border:1px solid #cdbb9e;
  border-radius:4px; color:var(--vermilion); background:rgba(252,250,244,.7);
  font-size:.83rem; line-height:1.55; letter-spacing:.03em; text-align:center; text-decoration:none;
  white-space:normal; overflow-wrap:anywhere; transition:background .2s,border-color .2s,color .2s;
}
:is(.visit-button,.update-link,.classic-paper-link):hover {
  color:var(--vermilion-deep); border-color:var(--vermilion); background:#eee4d4;
}
:is(.visit-button,.update-link,.classic-paper-link):focus-visible {
  outline:3px solid var(--vermilion); outline-offset:3px;
}
:is(.visit-button,.update-link,.classic-paper-link):is(.is-disabled,.is-todo,[aria-disabled="true"],:disabled) {
  color:var(--ink-soft); border-color:#d7cdbc; background:#eee7da; opacity:.65;
  cursor:not-allowed; pointer-events:none;
}
.periodical-grid { grid-template-columns:minmax(0,1fr); }
/* Hero 删除说明后收紧留白，保留站名与甲金石简帛装饰。 */
.hero { min-height:0; }
.english-name + .seal-line { margin-top:20px; }
#literatureSection { padding-top:0; border-top:0; margin-bottom:36px; }
@media (max-width:430px) { .english-name + .seal-line { margin-top:12px; } }
.periodical-record { min-width:0; border:1px solid var(--line); background:var(--paper-light); }
.periodical-record > .site-card { min-height:0; border:0; box-shadow:none; }
.periodical-papers { min-width:0; margin:0 20px 20px; border-top:1px solid var(--line); }
.periodical-papers summary { min-height:44px; padding:12px 0; color:var(--vermilion); cursor:pointer; overflow-wrap:anywhere; }
@media (max-width:560px) { .periodical-papers { margin:0 16px 16px; } }

/* 两个独立筛选维度复用原有按钮与配色。 */
.resource-facet-row { display:flex; align-items:flex-start; gap:14px; min-width:0; }
.resource-facet-row + .resource-facet-row { margin-top:16px; }
.resource-facet-row > .filter-list,.resource-facet-row > .research-tags { flex:1; min-width:0; }
@media (max-width:600px) {
  .resource-facet-row { flex-direction:column; gap:8px; }
  .resource-facet-row > .filter-list,.resource-facet-row > .research-tags { width:100%; }
}
