:root {
  --ink: #1a2332;
  --ink-soft: #3d4a5c;
  --muted: #6b7789;
  --line: #d5dbe6;
  --paper: #f7f5f1;
  --card: #ffffff;
  --steel: #2f5d8c;
  --steel-deep: #1e3f63;
  --accent: #c45c26;
  --accent-soft: #f3e4db;
  --ok: #2a6b4f;
  --warn: #a15c12;
  --risk: #9b2c2c;
  --shadow: 0 12px 40px rgba(26, 35, 50, 0.08);
  --font-sans: "IBM Plex Sans JP", "Hiragino Sans", "Noto Sans JP", sans-serif;
  --font-display: "Shippori Mincho", "Hiragino Mincho ProN", serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;
}

* {
  box-sizing: border-box;
}

html {
  color: var(--ink);
  background: var(--paper);
  font-family: var(--font-sans);
  line-height: 1.55;
}

body {
  margin: 0;
}

a {
  color: var(--steel);
}

button,
.btn {
  font: inherit;
  cursor: pointer;
}
