:root {
  --brand: #1f5ae0;
  --brand-soft: #ebf0fe;
  --ink: #111a26;
  --text: #4c5a68;
  --muted: #7e8c99;
  --line: #dde3e9;
  --page: #f6f7f9;
  --card: #ffffff;
  --success: #0e9e8f;
  --warning: #b4740e;
  --danger: #c94141;
  --font-ui: "Microsoft YaHei", "Noto Sans SC", "PingFang SC", system-ui, sans-serif;
  --font-mono: "Cascadia Mono", "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
}

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

html,
body {
  margin: 0;
  min-height: 100%;
}

body {
  color: var(--ink);
  background: var(--page);
  font-family: var(--font-ui);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

a {
  color: inherit;
}

::selection {
  background: #1f5ae033;
}
