:root {
  --color-primary: #2563eb;
  --color-primary-dark: #1d4ed8;
  --color-bg: #0b1220;
  --color-card: #ffffff;
  --color-text: #1e293b;
  --color-muted: #64748b;
  --color-border: #e2e8f0;
  --color-danger: #dc2626;
  --color-danger-bg: #fef2f2;
  --radius: 16px;
  --shadow: 0 24px 64px rgba(2, 6, 23, 0.38);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  height: 100%;
  background: #ffffff;
}

html {
  -webkit-overflow-scrolling: touch;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei",
    "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  color: var(--color-text);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

button {
  font-family: inherit;
}

input {
  font-family: inherit;
}

/* 禁止拖拽图片与按钮、禁止移动端双击放大 */
img {
  -webkit-user-drag: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

button,
a,
label {
  -webkit-user-drag: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

input,
textarea {
  touch-action: manipulation;
}

html,
body {
  touch-action: manipulation;
}

* {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}
/* 通用隐藏（配合 CSP：页面内联 style 会被安全策略拦截，用类控制显示/隐藏） */
.is-hidden { display: none !important; }
