/* ═══════════════════════════════════════════════════════════
   苏河汇 · 基础层：reset / body / 栅格 / 响应式 / 打印
   ═══════════════════════════════════════════════════════════ */

* { margin: 0; padding: 0; box-sizing: border-box; }
body { background: var(--bg); color: var(--fg); font-family: var(--font-sans); line-height: 1.5; -webkit-font-smoothing: antialiased; }

/* ── 页面主区（全站统一 1240 栅格，审计页基准）── */
main { max-width: 1240px; margin: 0 auto; padding: 24px 24px 80px; }

/* ── 响应式 + 打印（全站公共；页面私有覆盖项写在各自 pages/*.css）── */
@media (max-width: 768px) {
  .topbar { padding: 10px 16px; }
  main { padding: 16px; }
  .drawer { width: 100%; }
}
@media print {
  .topbar, .btn, .drawer-overlay { display: none; }
  body { background: #fff; }
  main { padding: 16px; max-width: 100%; }
  /* 暗色主题打印须回亮色（浅字白纸不可读）——颜色 token 亮色值全量重放，
     与 tokens.css :root 保持同步（test_style_lint print 奇偶校验守护） */
  :root, [data-theme="dark"] {
    --fg: #1a1a1a; --fg2: #6b6b6b; --fg3: #b0b0b0;
    --bg: #fafaf8; --surface: #fff; --line: #e8e8e4;
    --green: #10b981; --amber: #f59e0b; --blue: #3b82f6; --red: #ef4444;
    --success-bg: #ecfdf5; --success-text: #059669; --success-line: #a7f3d0;
    --danger-bg: #fef2f2; --danger-text: #dc2626; --danger-line: #fecaca;
    --warn-bg: #fffbeb; --warn-text: #d97706;
    --yellow: #ca8a04; --yellow-bg: #fefce8;
    --info-bg: #eff6ff; --info-text: #2563eb; --info-line: #bfdbfe;
    --sys-side: #1a56db; --emp-side: #0e7490; --audit-accent: #8e44ad;
    --fill: #f0f0ea; --fill-soft: #f5f5f0; --fill-hover: #f6f6f2; --bg-subtle: #fafaf7;
    --fg-hover: #333; --line-strong: #ccc;
    --danger-strong: #b91c1c; --warn-deep: #92400e; --info-deep: #1e40af;
    --warn-bg-deep: #fef3c7; --warn-line: #fde68a;
    --both-bad: #7c3aed; --both-bad-bg: #faf5ff; --both-bad-line: #e9d5ff;
    --fg-invert: #fff; --overlay: none; --overlay-strong: none; --overlay-loading: none;
    --shadow-panel: none;
  }
}
