/* ============================================
   base.css — 重置样式、CSS 变量、字体
   ============================================ */

:root {
  /* 背景色 */
  --bg-deep: #0a0a12;
  --bg-mid: #12121e;
  --bg-panel: #161626;
  --bg-elevated: #1c1c30;

  /* 文字色 */
  --text-primary: #f5f7fa;
  --text-secondary: #a8aebf;
  --text-muted: #6b7186;

  /* 强调色 */
  --accent: #00d4ff;
  --accent-soft: #4dc9ff;
  --accent-glow: rgba(0, 212, 255, 0.45);

  /* 判定色系 */
  --judge-just: #5ef2ff;   /* 青/白 */
  --judge-rush: #ffd84d;   /* 黄 */
  --judge-cool: #8f7bff;   /* 蓝/紫 */
  --judge-miss: #ff5470;   /* 红/灰 */

  /* 难度色 */
  --diff-easy: #4dff9c;
  --diff-normal: #4dc9ff;
  --diff-hard: #ff6b9d;
  --diff-extra: #b06bff;   /* 紫色 */

  /* 边框 */
  --border: #26263a;
  --border-light: #32324a;

  /* 字体 */
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  --font-mono: "SF Mono", "Cascadia Code", "JetBrains Mono", Consolas, "Courier New", monospace;

  /* 尺寸 */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;

  /* 过渡 */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* 重置 */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  height: 100%;
  width: 100%;
  overflow: hidden;
}

body {
  font-family: var(--font-sans);
  background: radial-gradient(120% 120% at 50% 0%, #141426 0%, var(--bg-deep) 55%);
  color: var(--text-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  user-select: none;
  -webkit-user-select: none;
}

button {
  font-family: inherit;
  cursor: pointer;
  border: none;
  background: none;
  color: inherit;
}

input[type="range"] {
  cursor: pointer;
}

a {
  color: var(--accent);
  text-decoration: none;
}

/* 数字统一用等宽 */
.mono {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}

/* 滚动条 */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: #2c2c42;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #3a3a56;
}

/* 通用隐藏 */
.hidden {
  display: none !important;
}
