/* ==========================================================================
   Dezhou-001 · 平原放映（重置 + 基础排版）
   --------------------------------------------------------------------------
   设计语系：帆布底 / 橄榄墨 / 麦金放映光 / 砖红片盘章 / 无衬线标题 / 银幕硬边框。
   ⚠️ 与基线 Dezhou-000 的分界（改样式前先看这几条，避免不知不觉「长回宣纸宋体」）：
     · 底色是**晒过的帆布**（偏绿灰的暖米色，不是宣纸白）
     · 主色是**橄榄绿**，麦金只做评分与光束，砖红只做片盘章
     · 标题一律**无衬线展示字**（--fx-display），编号用等宽（--fx-mono）
     · 圆角最大 6px，卡片允许硬投影；靠 1px 线与金属扣件分面
   ========================================================================== */

*, *::before, *::after { box-sizing: border-box; }

html {
    min-width: 320px;
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
    scroll-padding-top: var(--fx-anchor-offset, 80px);
}

body {
    margin: 0;
    background-color: var(--fx-paper);
    /* 帆布经纬：极淡的双向细纹，远看是纸感，近看才见织纹 */
    background-image:
        repeating-linear-gradient(0deg, rgba(32, 37, 28, .018) 0 1px, transparent 1px 4px),
        repeating-linear-gradient(90deg, rgba(250, 245, 231, .05) 0 1px, transparent 1px 4px);
    color: var(--fx-ink);
    font: var(--fx-fs-base)/var(--fx-lh) var(--fx-body);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5 {
    margin: 0;
    font-family: var(--fx-display);
    font-weight: 700;
    line-height: var(--fx-lh-tight);
    letter-spacing: -.012em;
    color: var(--fx-ink);
}
h1 { font-size: var(--fx-fs-h1); }
h2 { font-size: var(--fx-fs-lg); }
h3 { font-size: var(--fx-fs-md); }
h4 { font-size: var(--fx-fs-base); }
p, dl, dd, figure, blockquote { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
img, svg, video { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { background: none; border: 0; padding: 0; cursor: pointer; }
table { border-collapse: collapse; width: 100%; }
details > summary { list-style: none; }
details > summary::-webkit-details-marker { display: none; }
::selection { background: var(--fx-accent-soft); color: var(--fx-ink); }

/* 键盘可达性：只在键盘导航时出焦点环（鼠标点击不出，保证「纸面」干净） */
:focus-visible {
    outline: 2px solid var(--fx-accent);
    outline-offset: 2px;
    border-radius: var(--fx-r-xs);
}

/* 视觉隐藏但保留语义（页头 h1 / 表格说明等） */
.fx-sr-only {
    position: absolute;
    width: 1px; height: 1px;
    margin: -1px; padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

/* 图片/区块的骨架底色：加载期间不该是刺眼的纯白 */
.fx-ph { background: var(--fx-surface-3); }
