/* 静室 CSS：23-digital-catalog-reframe.css。以现代档案的记录密度替代编辑型内容展示。 */
@layer pages {
  :root {
    --catalog-page-width:1120px;
    --catalog-index-width:72px;
    --catalog-meta-width:150px;
  }

  .masthead,
  .page-shell,
  .site-footer {
    max-width:calc(var(--catalog-page-width) + (var(--publication-page-gutter) * 2));
  }

  .page-shell { min-height:calc(100vh - 160px); }

  .site-footer {
    box-shadow:none;
    font-size:var(--publication-meta);
  }

  .publication-page,
  .library-intro,
  .archive-hero,
  .search-hero,
  .collection-hero,
  .collection-section,
  .library-controls,
  .archive-layout,
  .search-form,
  .search-results-head,
  .search-prompt,
  .marks-hero,
  .marks-toolbar,
  .catalog-directory,
  .library-list,
  .search-results,
  .archive-entries ol,
  .collection-list,
  .marks-list {
    max-width:var(--catalog-page-width);
  }

  .library-intro,
  .archive-hero,
  .search-hero,
  .collection-hero,
  .marks-hero {
    margin-inline:auto;
    padding-block:var(--publication-space-4) var(--publication-space-2);
    border-bottom:var(--publication-rule) solid var(--publication-rule-color);
  }

  .functional-intro h1,
  .collection-hero h1,
  .library-intro h1,
  .archive-hero h1,
  .search-hero h1,
  .marks-hero h1 {
    max-width:26ch;
    margin:var(--publication-space-1) 0 0;
    font:600 clamp(1.35rem,2vw,1.75rem)/1.25 var(--font-ui);
    letter-spacing:-.022em;
    text-wrap:pretty;
  }

  .functional-intro>p:last-child,
  .functional-intro div>p:last-child,
  .collection-hero div>p:last-child {
    max-width:62ch;
    margin-top:var(--publication-space-1);
    font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui);
  }

  .library-controls,
  .search-results-head,
  .marks-toolbar,
  .collection-section,
  .library-topography,
  .collection-topography {
    margin-inline:auto;
    padding-block:var(--publication-space-2);
    border:0;
    border-bottom:var(--publication-rule) solid var(--publication-rule-color);
    background:transparent;
    box-shadow:none!important;
  }

  .library-controls .section-kicker,
  .marks-toolbar .section-kicker { margin:0; }

  .library-list,
  .search-results,
  .archive-entries ol,
  .collection-list,
  .marks-list {
    margin-inline:auto;
    border-top:0;
  }

  .library-entry,
  .search-result,
  .archive-entries li,
  .collection-entry,
  .mark-row {
    display:grid;
    grid-template-columns:var(--catalog-index-width) minmax(0,1fr) var(--catalog-meta-width)!important;
    gap:var(--publication-space-3);
    align-items:start;
    min-height:0;
    margin:0;
    padding-block:var(--publication-space-3);
    border:0;
    border-bottom:var(--publication-rule) solid var(--publication-rule-color);
    border-radius:0;
    background:transparent!important;
    box-shadow:none!important;
    transition:color var(--publication-hover-duration) var(--motion-easing),opacity var(--publication-hover-duration) var(--motion-easing),transform var(--publication-hover-duration) var(--motion-easing);
  }

  .library-entry:hover,
  .library-entry:focus-within,
  .search-result:hover,
  .search-result:focus-within,
  .archive-entries li:hover,
  .archive-entries li:focus-within,
  .collection-entry:hover,
  .collection-entry:focus-within,
  .mark-row:hover,
  .mark-row:focus-within {
    background:transparent!important;
    box-shadow:none!important;
    opacity:.94;
    transform:translateX(2px);
  }

  .entry-index,
  .search-result>span,
  .mark-row>span {
    grid-column:1;
    margin:0;
    color:var(--publication-ink-muted);
    font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-mono);
    font-variant-numeric:tabular-nums;
    letter-spacing:.02em;
  }

  .catalog-record-content {
    grid-column:2;
    min-width:0;
  }

  .library-entry h2,
  .search-result h2,
  .collection-entry h2,
  .mark-row h2,
  .archive-entries li div>a {
    max-width:44ch;
    margin:0;
    color:var(--publication-ink);
    font:500 clamp(1.02rem,.96rem + .24vw,1.16rem)/1.38 var(--font-ui);
    letter-spacing:-.012em;
    text-wrap:pretty;
  }

  .library-entry h2 a,
  .search-result h2 a,
  .collection-entry h2 a,
  .mark-row h2 a,
  .archive-entries li div>a {
    color:inherit;
    text-decoration-color:transparent;
    text-underline-offset:.17em;
  }

  .library-entry h2 a:hover,
  .library-entry h2 a:focus-visible,
  .search-result h2 a:hover,
  .search-result h2 a:focus-visible,
  .collection-entry h2 a:hover,
  .collection-entry h2 a:focus-visible,
  .mark-row h2 a:hover,
  .mark-row h2 a:focus-visible,
  .archive-entries li div>a:hover,
  .archive-entries li div>a:focus-visible {
    color:var(--publication-accent);
    text-decoration-color:currentColor;
  }

  .entry-excerpt,
  .core-summary,
  .search-result .search-snippet,
  .collection-entry .core-summary,
  .mark-row .core-summary {
    display:-webkit-box;
    overflow:hidden;
    max-width:66ch;
    margin:var(--publication-space-1) 0 0;
    color:var(--text-secondary);
    font:400 .9rem/1.5 var(--font-reading);
    -webkit-box-orient:vertical;
    -webkit-line-clamp:1;
  }

  .catalog-record-meta,
  .library-entry .post-kicker,
  .search-result .catalog-record-meta,
  .collection-entry .catalog-record-meta,
  .mark-row .catalog-record-meta {
    display:flex;
    flex-wrap:wrap;
    grid-column:3;
    gap:0 var(--publication-space-1);
    justify-content:flex-end;
    margin:0;
    color:var(--publication-ink-muted);
    font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui);
    letter-spacing:0;
    text-align:right;
  }

  .catalog-record-meta a { color:inherit; text-decoration-color:transparent; }
  .catalog-record-meta a:hover,
  .catalog-record-meta a:focus-visible { color:var(--publication-accent); text-decoration-color:currentColor; }

  .catalog-record-meta span::before,
  .catalog-record-meta time::before {
    margin-right:var(--publication-space-1);
    color:var(--publication-ink-muted);
    content:"·";
  }

  .entry-arrow,
  .publication-entry-action,
  .library-hall-entry-action,
  .search-result>a:last-child,
  .archive-entries li>i,
  .collection-entry>.entry-arrow,
  .mark-row>a:last-child { display:none!important; }

  .search-result .search-context-link {
    display:inline;
    grid-column:auto;
    margin:var(--publication-space-1) 0 0;
    color:var(--publication-accent);
    font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui);
    text-decoration:underline;
    text-underline-offset:.17em;
  }

  .search-result .search-context-link span { display:none; }

  .functional-paths.library-paths,
  .search-trails {
    max-width:var(--catalog-page-width);
    margin-inline:auto;
    border-top:0;
    border-bottom:var(--publication-rule) solid var(--publication-rule-color);
    box-shadow:none!important;
  }

  .functional-paths.library-paths {
    margin-bottom:0;
    padding-block:var(--publication-space-2);
  }

  .search-trails {
    display:flex;
    flex-wrap:wrap;
    gap:var(--publication-space-2) var(--publication-space-3);
    margin-top:var(--publication-space-2);
    padding-block:var(--publication-space-2);
  }

  .search-trails>span,
  .search-trails a {
    display:inline;
    min-height:0;
    padding:0;
    border:0;
    color:var(--publication-ink-muted);
    font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui);
    box-shadow:none!important;
  }

  .search-trails a { color:var(--publication-ink); }
  .search-trails a:hover,
  .search-trails a:focus-visible { color:var(--publication-accent); }

  .search-form {
    margin-top:var(--publication-space-2);
    padding-block:var(--publication-space-2);
  }

  .search-form input {
    padding-block:var(--publication-space-2);
    font:500 clamp(1.04rem,1vw,1.16rem)/1.45 var(--font-ui);
  }

  .search-results-head { margin-top:var(--publication-space-2); }
  .search-results-head h2 { margin:var(--publication-space-1) 0 0; font-size:1.1rem; }

  .search-prompt {
    margin-block:var(--publication-space-3);
    padding-block:var(--publication-space-2);
    border-top:0;
  }

  .archive-layout { display:block; }

  .year-index {
    margin:0 0 var(--publication-space-2);
    padding-bottom:var(--publication-space-2);
  }

  .archive-entries header {
    padding-block:var(--publication-space-2);
    border-bottom:var(--publication-rule) solid var(--publication-rule-color);
  }

  .archive-entries header h2 { margin:var(--publication-space-1) 0 0; font-size:1.12rem; }

  .catalog-directory {
    margin-inline:auto;
    padding-block:var(--publication-space-4) var(--publication-space-6);
  }

  .catalog-directory-head {
    display:flex;
    align-items:baseline;
    gap:var(--publication-space-3);
    max-width:none;
    padding-bottom:var(--publication-space-2);
    border-bottom:var(--publication-rule) solid var(--publication-rule-color);
  }

  .catalog-directory-head h1 {
    margin:0;
    font:600 clamp(1.4rem,2vw,1.75rem)/1.25 var(--font-ui);
    letter-spacing:-.022em;
  }

  .catalog-directory-head .eyebrow { margin:0; order:2; }

  .catalog-view-switch {
    display:flex;
    flex-wrap:wrap;
    gap:var(--publication-space-3);
    margin-block:var(--publication-space-2) var(--publication-space-3);
    border:0;
  }

  .catalog-view-switch a,
  .catalog-view-switch a+a {
    display:inline;
    min-height:0;
    padding:0;
    border:0;
    color:var(--publication-ink-muted);
    font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui);
    transition:color var(--publication-hover-duration) var(--motion-easing);
  }

  .catalog-view-switch a+a::before {
    margin-right:var(--publication-space-3);
    color:var(--publication-ink-muted);
    content:"·";
  }

  .catalog-view-switch a[aria-current="page"],
  .catalog-view-switch a:hover,
  .catalog-view-switch a:focus-visible { color:var(--publication-ink); transform:none; }

  .catalog-directory-section>header {
    padding-block:var(--publication-space-2);
  }

  .catalog-directory-section h2 {
    margin:0;
    font:500 1rem/1.4 var(--font-ui);
    letter-spacing:-.01em;
  }

  .catalog-directory-list { border-top:0; }

  .catalog-directory-list a {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:var(--publication-space-3);
    min-height:0;
    padding-block:var(--publication-space-2);
    border:0;
    border-bottom:var(--publication-rule) solid var(--publication-rule-color);
    border-radius:0;
    background:transparent;
    box-shadow:none!important;
    transition:color var(--publication-hover-duration) var(--motion-easing);
  }

  .catalog-directory-list a:hover,
  .catalog-directory-list a:focus-visible { color:var(--publication-accent); transform:none; }

  .catalog-directory-list span {
    color:inherit;
    font:500 1rem/1.4 var(--font-ui);
    letter-spacing:-.01em;
  }

  .catalog-directory-list strong {
    color:var(--publication-ink-muted);
    font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui);
  }

  .catalog-directory-list i,
  .catalog-view-switch i { display:none; }

  .catalog-older-archives {
    margin-top:var(--publication-space-3);
    padding-top:var(--publication-space-2);
  }

  .collection-list .collection-entry,
  .collection-work-list .collection-entry {
    grid-template-columns:var(--catalog-index-width) minmax(0,1fr) var(--catalog-meta-width)!important;
    padding-block:var(--publication-space-3);
    border-radius:0;
    background:transparent!important;
    box-shadow:none!important;
  }

  .collection-list .entry-index { display:block; }

  .marks-list { border-top:0; }
  .mark-row form { margin-top:var(--publication-space-1); }
  .mark-row .text-button { min-height:0; padding:0; font-size:var(--publication-meta); }

  @media (max-width:760px) {
    :root { --catalog-index-width:64px; }

    .page-shell { padding-inline:var(--publication-page-gutter); }

    .library-intro,
    .archive-hero,
    .search-hero,
    .collection-hero,
    .marks-hero { padding-block:var(--publication-space-3) var(--publication-space-2); }

    .functional-intro h1,
    .collection-hero h1,
    .library-intro h1,
    .archive-hero h1,
    .search-hero h1,
    .marks-hero h1 { font-size:1.42rem; }

    .library-entry,
    .search-result,
    .archive-entries li,
    .collection-entry,
    .mark-row,
    .collection-list .collection-entry,
    .collection-work-list .collection-entry {
      grid-template-columns:var(--catalog-index-width) minmax(0,1fr)!important;
      gap:var(--publication-space-2);
      padding-block:var(--publication-space-3);
    }

    .catalog-record-meta,
    .library-entry .post-kicker,
    .search-result .catalog-record-meta,
    .collection-entry .catalog-record-meta,
    .mark-row .catalog-record-meta {
      grid-column:2;
      justify-content:flex-start;
      margin-top:var(--publication-space-1);
      text-align:left;
    }

    .library-entry h2,
    .search-result h2,
    .collection-entry h2,
    .mark-row h2 { font-size:1rem; }

    .entry-excerpt,
    .core-summary,
    .search-result .search-snippet,
    .collection-entry .core-summary,
    .mark-row .core-summary {
      font-size:.86rem;
      -webkit-line-clamp:2;
    }

    .catalog-directory { padding-block:var(--publication-space-3) var(--publication-space-5); }
    .catalog-directory-head { gap:var(--publication-space-2); }
    .catalog-directory-head h1 { font-size:1.42rem; }
    .catalog-view-switch { display:flex; margin-block:var(--publication-space-2); }
    .catalog-view-switch a,
    .catalog-view-switch a+a { padding:0; border:0; }
    .catalog-view-switch a+a::before { display:inline; }
    .catalog-directory-list a { padding-block:var(--publication-space-3); }

    .search-trails { display:grid; gap:var(--publication-space-2); }
    .search-trails>span { grid-column:1 / -1; }
  }

  /* v8：所有出现分类清单的地方共用“重点在前、长尾可展开”的目录语法。 */
  .catalog-more-categories,.search-more-categories { margin-top:var(--publication-space-2); border-top:var(--publication-rule) solid var(--publication-rule-color); }
  .catalog-more-categories summary,.search-more-categories summary,.library-hall-more-categories summary { display:flex; justify-content:space-between; align-items:baseline; gap:var(--publication-space-2); padding-block:var(--publication-space-3); color:var(--publication-ink-muted); cursor:pointer; font:500 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui); list-style:none; }
  .catalog-more-categories summary::-webkit-details-marker,.search-more-categories summary::-webkit-details-marker,.library-hall-more-categories summary::-webkit-details-marker { display:none; }
  .catalog-more-categories summary::marker,.search-more-categories summary::marker,.library-hall-more-categories summary::marker { content:""; }
  .catalog-more-categories summary::before,.search-more-categories summary::before,.library-hall-more-categories summary::before { display:none; content:none; }
  .catalog-more-categories summary::after,.search-more-categories summary::after,.library-hall-more-categories summary::after { color:var(--publication-ink-muted); content:"展开"; font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui); }
  .catalog-more-categories[open] summary::after,.search-more-categories[open] summary::after,.library-hall-more-categories[open] summary::after { content:"收起"; }
  .catalog-more-categories summary small,.search-more-categories summary span,.library-hall-more-categories summary span { color:var(--publication-ink-muted); font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui); }
  .search-topic-entry { margin-top:var(--publication-space-3); padding-top:var(--publication-space-2); border-top:var(--publication-rule) solid var(--publication-rule-color); }
  .search-topic-entry>p { margin:0 0 var(--publication-space-2); color:var(--publication-ink-muted); font:400 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui); }
  .empty-state-links { display:flex; flex-wrap:wrap; gap:var(--publication-space-2) var(--publication-space-3); margin-top:var(--publication-space-4); }
  .empty-state-links a { color:var(--publication-accent); font:500 var(--publication-meta)/var(--publication-leading-meta) var(--font-ui); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
  .empty-state-links a.button { text-decoration:none; }
  .empty-state-links span { color:var(--publication-ink-muted); }

  /* 分类色彩只识别馆藏坐标：普通链接、按钮、正文和背景绝不继承这些颜色。 */
  .category-link,.category-label { --category-ink:var(--category-culture); color:var(--category-ink)!important; text-decoration-color:transparent!important; text-underline-offset:.16em; }
  .category-link[data-category-color="growth"],.category-label[data-category-color="growth"] { --category-ink:var(--category-growth); }
  .category-link[data-category-color="relation"],.category-label[data-category-color="relation"] { --category-ink:var(--category-relation); }
  .category-link[data-category-color="care"],.category-label[data-category-color="care"] { --category-ink:var(--category-care); }
  .category-link[data-category-color="society"],.category-label[data-category-color="society"] { --category-ink:var(--category-society); }
  .category-link[data-category-color="work"],.category-label[data-category-color="work"] { --category-ink:var(--category-work); }
  .category-link[data-category-color="thought"],.category-label[data-category-color="thought"] { --category-ink:var(--category-thought); }
  .category-link[data-category-color="material"],.category-label[data-category-color="material"] { --category-ink:var(--category-material); }
  .category-link[data-category-color="history"],.category-label[data-category-color="history"] { --category-ink:var(--category-history); }
  .category-link[data-category-color="ethics"],.category-label[data-category-color="ethics"] { --category-ink:var(--category-ethics); }
  .category-link[data-category-color="open"],.category-label[data-category-color="open"] { --category-ink:var(--category-open); }
  .category-link[data-category-color="archive"],.category-label[data-category-color="archive"] { --category-ink:var(--category-archive); }
  .category-link[data-category-color="notes"],.category-label[data-category-color="notes"] { --category-ink:var(--category-notes); }
  .category-link:hover,.category-link:focus-visible { color:var(--category-ink)!important; text-decoration-color:currentColor!important; }
  .catalog-record-meta .category-link::before,.frontpage-headline-meta .category-link::before,.frontpage-secondary-category .category-link::before,.frontpage-brief-category .category-link::before,.search-trails .category-link::before,.annotation-index-list .category-link::before { display:inline-block; width:2px; height:.78em; margin:0 .42em 0 0; background:currentColor; content:""; vertical-align:-.07em; }
  .catalog-directory-list .category-link,.library-hall-category-list .category-link { box-shadow:inset 2px 0 0 currentColor!important; padding-left:calc(var(--publication-space-2) + 2px); }
  .library-hall-category-list .category-link strong { color:inherit; }
  .library-hall-category-list .category-link small { color:var(--publication-ink-muted); }

  @media (max-width:760px) {
    .empty-state-links { align-items:flex-start; flex-direction:column; gap:var(--publication-space-2); }
    .search-more-categories .search-trails { margin-top:var(--publication-space-1); }
  }
  @media (prefers-reduced-motion:reduce) {
    .library-entry,
    .search-result,
    .archive-entries li,
    .collection-entry,
    .mark-row,
    .catalog-view-switch a,
    .catalog-directory-list a { transition-duration:1ms; }
    .library-entry:hover,.library-entry:focus-within,.search-result:hover,.search-result:focus-within,.archive-entries li:hover,.archive-entries li:focus-within,.collection-entry:hover,.collection-entry:focus-within,.mark-row:hover,.mark-row:focus-within { opacity:1; transform:none; }
  }
}
