/* ==========================================================================
   双座留灯 模板 · foundation（重置 + 设计令牌 + 基础排版）
   --------------------------------------------------------------------------
   设计语系：熄灯影厅 / 深场座椅墨绿 / 廊灯杏主色 / 苔绿点缀 / 全无衬线 / 座椅靠背圆角。
   ⚠️ 与站内其它模板的分界线（改样式前先看这几条，避免不知不觉「长回现款」）：
     · 底色是**深色暖绿**（座椅绒），不是冷白，也不是纯黑
     · 主色只有**廊灯杏**一种，**苔绿**只用于「当前态 / 过道轨 / 主行动」
     · 标题与正文**同一个无衬线字族**，靠字重与字号分层，不换衬线
     · 圆角中号偏软（4–16px），卡片顶部是座椅靠背弧，不做糖果风大圆角
     · 版面密度是身份：板块间距 14–18px，卡片间隙 8–9px
   ========================================================================== */

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

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

body {
    margin: 0;
    background: var(--lz-paper);
    color: var(--lz-ink);
    font: var(--lz-fs-base)/var(--lz-lh) var(--lz-sans);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5 { margin: 0; font-weight: 700; line-height: var(--lz-lh-tight); color: var(--lz-ink); }
h1 { font-size: var(--lz-fs-h1); }
h2 { font-size: var(--lz-fs-xl); }
h3 { font-size: var(--lz-fs-md); }
h4 { font-size: var(--lz-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(--lz-navy-s); color: var(--lz-ink); }

/* 数字一律等宽，行式榜单与统计条才不会左右抖 */
strong, b, em, i, .lz-num, .lz-card__score, .lz-resultbar b {
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
}

/* 键盘可达性：只给键盘导航出焦点环 */
:focus-visible {
    outline: 2px solid var(--lz-orange);
    outline-offset: 2px;
    border-radius: var(--lz-r-xs);
}

/* 视觉隐藏但保留语义（页头 h1 / 列表说明） */
.lz-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;
}

/* 图片骨架底色：加载期间不刺眼 */
.lz-ph { background: var(--lz-surface-3); }
