/* ==========================================================================
   Atlas 模板 · reset（重置 + 基础排版）
   --------------------------------------------------------------------------
   设计语系：牧草纸底 / 松墨绿主色 / 牛铃铜点缀 / 全无衬线 / 耳标式不对称圆角 / 高信息密度。
   ⚠️ 与站内其它模板的分界线（改样式前先看这几条，避免不知不觉「长回现款」）：
     · 底色是**偏青的牧草纸白**（不是冷调灰蓝，也不是暖米白）
     · 主色只有**松墨绿**一种，**牛铃铜**只用于「当前态 / 强调数字」，不做整块渐变
     · 标题与正文**同一个无衬线字族**，数字等宽；层级靠字重与字号
     · 圆角走耳标式不对称（上圆下削），分面靠 1px 线，阴影只在悬浮时出现
     · 版面密度是身份：板块间距 14px，卡片间隙 8px
   ========================================================================== */

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

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

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

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

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

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

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

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