/* 静室 CSS：01-tokens.css。职责边界见 governance/CSS_ARCHITECTURE_AND_TOKENS_20260814.md。 */
@layer tokens {
  @font-face {
    font-family:"静室宋体";
    src:url("../fonts/jingshi-serif-sc-regular.woff2") format("woff2");
    font-style:normal;
    font-weight:400;
    font-display:optional
  }
  @font-face {
    font-family:"静室宋体";
    src:url("../fonts/jingshi-serif-sc-semibold.woff2") format("woff2");
    font-style:normal;
    font-weight:600;
    font-display:optional
  }
  /* 连续正文字与馆首编辑字分工；文件由本地开源源字形子集化生成。 */
  @font-face {
    font-family:"静室文楷";
    src:url("../fonts/jingshi-prose-sc-regular.woff2") format("woff2");
    font-style:normal;
    font-weight:400;
    font-display:optional
  }
  :root {
    --color-day-paper:#f8f7f3;
    --color-day-paper-deep:#f0eee7;
    --color-day-ink:#252a27;
    --color-day-ink-soft:#4f5752;
    --color-day-muted:#656d66;
    --color-day-rule:#dfddd5;
    --color-day-rule-strong:#bbbcb4;
    --color-day-accent:#315c66;
    --color-day-accent-soft:#cbd9dc;
    /* 分类色彩家族：同一低饱和视觉重量；不作为按钮、背景、正文或普通链接色。 */
    /* 七个真实分类：HSL 饱和度 30%、明度 29%；相邻色相间隔至少 40°。 */
    --color-day-category-culture:#346060;
    --color-day-category-growth:#605134;
    --color-day-category-relation:#603437;
    --color-day-category-care:#603455;
    --color-day-category-society:#343f60;
    --color-day-category-work:#466034;
    --color-day-category-thought:#4a3460;
    --color-day-category-material:#59677a;
    --color-day-category-history:#7e5544;
    --color-day-category-ethics:#4d6660;
    --color-day-category-open:#75633d;
    --color-day-category-archive:#665b70;
    --color-day-category-notes:#7b5060;
    --color-night-paper:#1b1e1c;
    --color-night-paper-deep:#242824;
    --color-night-ink:#e8e7df;
    --color-night-ink-soft:#c5c8c0;
    --color-night-muted:#a5aaa3;
    --color-night-rule:#414640;
    --color-night-rule-strong:#676d65;
    --color-night-accent:#9ac1ca;
    --color-night-accent-soft:#39515a;
    /* 深色模式沿用同一七色相：HSL 饱和度 34%、明度 72%。 */
    --color-night-category-culture:#9fd0d0;
    --color-night-category-growth:#d0c09f;
    --color-night-category-relation:#d09fa3;
    --color-night-category-care:#d09fc4;
    --color-night-category-society:#9fabd0;
    --color-night-category-work:#b4d09f;
    --color-night-category-thought:#b89fd0;
    --color-night-category-material:#aec0d6;
    --color-night-category-history:#d4aa93;
    --color-night-category-ethics:#a5c7bd;
    --color-night-category-open:#d2bd83;
    --color-night-category-archive:#beb5d1;
    --color-night-category-notes:#d0aab9;
    --font-family-reading:"静室宋体","Iowan Old Style","Palatino Linotype","Noto Serif CJK SC","Songti SC","STSong",serif;
    --font-family-prose:"静室文楷","静室宋体","Noto Serif CJK SC","Songti SC","STSong",serif;
    --font-family-ui:Inter,"Noto Sans CJK SC","PingFang SC","Microsoft YaHei",sans-serif;
    --font-family-mono:ui-monospace,monospace;
    --font-reading:var(--font-family-reading);
    --font-prose:var(--font-family-prose);
    --font-ui:var(--font-family-ui);
    --font-mono:var(--font-family-mono);
    --font-size-base:16px;
    --font-scale-ratio:1.25;
    --font-size--3:calc(var(--font-size-base)/1.953125);
    --font-size--2:calc(var(--font-size-base)/1.5625);
    --font-size--1:calc(var(--font-size-base)/1.25);
    --font-size-0:var(--font-size-base);
    --font-size-1:calc(var(--font-size-base)*1.25);
    --font-size-2:calc(var(--font-size-base)*1.5625);
    --font-size-3:calc(var(--font-size-base)*1.953125);
    --font-size-4:calc(var(--font-size-base)*2.44140625);
    --font-size-5:calc(var(--font-size-base)*3.0517578125);
    --font-size-6:calc(var(--font-size-base)*3.8146972656);
    --font-size-reading:19px;
    --font-size-prose:20px;
    --line-height-prose:1.9;
    --font-size-reading-step-1:1.25em;
    --font-size-reading-step-2:1.5625em;
    --font-size-reading-step-3:1.953125em;
    --container-wide:1240px;
    --container-feature:920px;
    --container-reading:720px;
    --gutter:clamp(20px,3vw,40px);
    /* 网格契约：容器定义横向边界；沟槽只表达模块之间的结构关系。 */
    --grid-gap-compact:var(--space-3);
    --grid-gap-standard:var(--space-5);
    --grid-gap-spacious:var(--space-7);
    --grid-columns-feature:minmax(0,7fr) minmax(0,5fr);
    /* 每日编辑首版：同一版心内的主文、次线与栏目群共享列线。 */
    --grid-columns-editorial:repeat(12,minmax(0,1fr));
    --grid-columns-editorial-tablet:repeat(8,minmax(0,1fr));
    --grid-columns-index:72px minmax(0,1fr) auto;
    /* 布局只走四点/八点节奏；1–3px 仅留给明确的光学校正。 */
    --space-optical-1:1px;
    --space-optical-2:2px;
    --space-optical-3:3px;
    --space-1:4px;
    --space-2:8px;
    --space-3:12px;
    --space-4:16px;
    --space-5:24px;
    --space-6:32px;
    --space-7:48px;
    --space-8:64px;
    --space-9:96px;
    --space-10:128px;
    --radius-pill:999px;
    --space-page-start:clamp(88px,11vw,160px);
    --space-page-end:clamp(80px,10vw,144px);
    --space-section:clamp(64px,8vw,112px);
    --space-hero-end:clamp(48px,6vw,88px);
    --space-reading-end:clamp(80px,9vw,120px);
    --stroke-hairline:1px;
    --stroke-focus:2px;
    /* 统一出版系统：开始、目录、寻找与随机进入的阅读页共享这些语义令牌。 */
    --publication-page-width:840px;
    --publication-reading-width:720px;
    --publication-page-gutter:var(--gutter);
    --publication-masthead-rule:2px;
    --publication-rule:var(--stroke-hairline);
    --publication-index-column:72px;
    --publication-action-column:112px;
    --publication-mobile-index-column:32px;
    --publication-mobile-action-column:22px;
    --publication-display:clamp(56px,5vw,64px);
    /* 仅开始页首屏使用 display；其余读者端功能页使用受控标题。 */
    --publication-function-title:clamp(28px,3vw,32px);
    --publication-h1:clamp(40px,4vw,48px);
    --publication-h2:24px;
    --publication-body:16px;
    --publication-meta:13px;
    --publication-kicker:12px;
    --publication-leading-display:1.15;
    --publication-leading-heading:1.2;
    --publication-leading-title:1.4;
    --publication-leading-body:1.7;
    --publication-leading-meta:1.5;
    --publication-space-1:var(--space-1);
    --publication-space-2:var(--space-2);
    --publication-space-3:var(--space-4);
    --publication-space-4:var(--space-5);
    --publication-space-5:var(--space-6);
    --publication-space-6:var(--space-7);
    --publication-space-7:var(--space-8);
    --publication-space-8:var(--space-9);
    --publication-paper:var(--surface-canvas);
    --publication-ink:var(--text-primary);
    --publication-ink-muted:var(--text-muted);
    --publication-rule-color:var(--border-subtle);
    --publication-accent:var(--action-primary);
    --publication-radius:0;
    --publication-shadow:none;
    --publication-hover-duration:var(--motion-disclosure);
    --publication-hover-lift:var(--motion-lift-subtle);
    --z-sidenote:2;
    --z-reading-progress:90;
    --z-skip-link:100;
    /* 运动只确认既有状态：短、可预测，并可由基础层统一降级。 */
    --motion-easing:cubic-bezier(0.2,0,0.38,0.9);
    --motion-state:220ms;
    --motion-disclosure:240ms;
    --motion-progress:220ms;
    --motion-lift-subtle:translateY(-2px);
    /* 兼容旧规则；新增样式必须使用表达意图的令牌。 */
    --motion-fast:var(--motion-state);
    --status-error:#a44338;
    --status-warning:#8b6e35;
    --print-paper:#fff;
    --print-ink:#000;
    --print-secondary:#222;
    --print-muted:#444;
    --print-rule:#aaa;
    --print-rule-strong:#999;
    --print-kicker:#333;
    --print-code:#111;
    --print-link:#555;
    --surface-canvas:var(--color-day-paper);
    --surface-subtle:var(--color-day-paper-deep);
    --text-primary:var(--color-day-ink);
    --text-secondary:var(--color-day-ink-soft);
    --text-muted:var(--color-day-muted);
    --border-subtle:var(--color-day-rule);
    --border-strong:var(--color-day-rule-strong);
    /* 常规交互走中性色；低饱和 teal 仅保留为“文化与日常”的分类锚点。 */
    --action-primary:var(--color-day-ink);
    --action-subtle:var(--color-day-paper-deep);
    --focus-ring:var(--color-day-ink);
    --category-culture:var(--color-day-category-culture);
    --category-growth:var(--color-day-category-growth);
    --category-relation:var(--color-day-category-relation);
    --category-care:var(--color-day-category-care);
    --category-society:var(--color-day-category-society);
    --category-work:var(--color-day-category-work);
    --category-thought:var(--color-day-category-thought);
    --category-material:var(--color-day-category-material);
    --category-history:var(--color-day-category-history);
    --category-ethics:var(--color-day-category-ethics);
    --category-open:var(--color-day-category-open);
    --category-archive:var(--color-day-category-archive);
    --category-notes:var(--color-day-category-notes);
    /* 笔记本温度：低饱和暖色系，用于点缀、hover 与便签底色。
       不进入正文与标题颜色；排版资产保持原有冷墨色。 */
    --color-warm:#c96f4a;
    --color-warm-soft:#f2d9cb;
    --color-warm-hover:#b85a35;
    --color-pencil:#d4a574;
    --color-pink-soft:#f5d5cc;
  }
  html[data-theme="night"] {
    --surface-canvas:var(--color-night-paper);
    --surface-subtle:var(--color-night-paper-deep);
    --text-primary:var(--color-night-ink);
    --text-secondary:var(--color-night-ink-soft);
    --text-muted:var(--color-night-muted);
    --border-subtle:var(--color-night-rule);
    --border-strong:var(--color-night-rule-strong);
    --action-primary:var(--color-night-ink);
    --action-subtle:var(--color-night-paper-deep);
    --focus-ring:var(--color-night-ink);
    --category-culture:var(--color-night-category-culture);
    --category-growth:var(--color-night-category-growth);
    --category-relation:var(--color-night-category-relation);
    --category-care:var(--color-night-category-care);
    --category-society:var(--color-night-category-society);
    --category-work:var(--color-night-category-work);
    --category-thought:var(--color-night-category-thought);
    --category-material:var(--color-night-category-material);
    --category-history:var(--color-night-category-history);
    --category-ethics:var(--color-night-category-ethics);
    --category-open:var(--color-night-category-open);
    --category-archive:var(--color-night-category-archive);
    --category-notes:var(--color-night-category-notes);
    --color-warm:#e8a585;
    --color-warm-soft:#4a3528;
    --color-warm-hover:#f5b89a;
    --color-pencil:#c9a572;
    --color-pink-soft:#3d2a22
  }
}
