/* base.css —— 重置与元素级样式。视觉值一律 var(--…)，由 tools/check_css.py 执法。 */

* { margin: 0; padding: 0; box-sizing: border-box; }

/* hidden 属性永远生效：元素一旦有带 display 的类，浏览器默认的 [hidden]{display:none} 会被盖掉 */
[hidden] { display: none !important; }

body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: var(--fs-base);
  line-height: var(--lh-base);
  -webkit-font-smoothing: antialiased;
}

/* 数值一律等宽：比例字体的数字会随内容跳宽 */
.mono { font-family: var(--font-mono); line-height: var(--lh-tight); }

h1 { font-size: var(--fs-xl);   font-weight: var(--fw-semibold); }
h2 { font-size: var(--fs-lg);   font-weight: var(--fw-medium); }

a { color: inherit; text-decoration: none; }

button, input, select {
  font-family: inherit;
  font-size: var(--fs-base);
  color: var(--text);
}

/* 焦点描边：品牌青细圈（D092）。:focus-visible —— 鼠标点击不画圈，键盘走位才画 */
:focus { outline: none; }
:focus-visible {
  outline: var(--space-hair) solid var(--accent);
  outline-offset: var(--space-hair);
}

::-webkit-scrollbar { width: var(--space-3); height: var(--space-3); }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--border); border-radius: var(--radius-sm); }
::-webkit-scrollbar-thumb:hover { background: var(--bg-hover); }

/* 动效：设置里选 Reduced，或系统开了「减少动态效果」，过渡和动画一律关掉 */
:root[data-motion="reduced"] *, :root[data-motion="reduced"] *::before, :root[data-motion="reduced"] *::after {
  transition: none !important;
  animation: none !important;
}
@media (prefers-reduced-motion: reduce) {
  :root[data-motion="system"] *, :root[data-motion="system"] *::before, :root[data-motion="system"] *::after {
    transition: none !important;
    animation: none !important;
  }
}
