:root {
  --hc-primary: #2563eb;
  --hc-primary-hover: #1d4ed8;
  --hc-primary-soft: #eff6ff;
  --hc-bg: #f6f8fb;
  --hc-surface: #ffffff;
  --hc-border: #e2e8f0;
  --hc-border-strong: #cbd5e1;
  --hc-text: #0f172a;
  --hc-text-muted: #64748b;
  --hc-text-soft: #94a3b8;
  --hc-success: #16a34a;
  --hc-success-soft: #ecfdf3;
  --hc-warning: #d97706;
  --hc-warning-soft: #fff7ed;
  --hc-danger: #dc2626;
  --hc-danger-soft: #fef2f2;
  --hc-violet: #7c3aed;
  --hc-violet-soft: #f5f3ff;
  --hc-radius: 8px;
  --hc-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 5px 18px rgba(15, 23, 42, .04);
  --hc-sidebar: 232px;
  --hc-topbar: 64px;
  --hc-font: Inter, "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;
}
* { box-sizing: border-box; }
html { min-width: 320px; background: var(--hc-bg); }
body { margin: 0; color: var(--hc-text); background: var(--hc-bg); font-family: var(--hc-font); font-size: 14px; letter-spacing: 0; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; letter-spacing: 0; }
button, a, input, textarea, select { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
[hidden] { display: none !important; }
