/* ============================================================
   X1 DESIGN SYSTEM · reset.css
   ============================================================ */

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

html { font-size: 16px; -webkit-text-size-adjust: 100%; }

body {
  font-family: var(--x1-font-family);
  font-size: var(--x1-font-size-base);
  line-height: 1.5;
  color: var(--x1-text-1);
  background-color: var(--x1-bg-0);
  background-image:
    radial-gradient(1200px 600px at 75% -10%, rgba(59,130,246,0.08), transparent 60%),
    radial-gradient(900px 500px at 0% 100%, rgba(22,199,132,0.04), transparent 50%);
  background-attachment: fixed;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1,h2,h3,h4,h5,h6 { font-weight: 600; line-height: 1.3; }

a { color: inherit; text-decoration: none; }
a:hover { color: var(--x1-link); }

ul,ol { list-style: none; }

img, svg { display: block; max-width: 100%; }

button { font-family: inherit; font-size: inherit; border: none; background: none; color: inherit; cursor: pointer; }
input, select, textarea { font-family: inherit; font-size: inherit; color: inherit; }
input:focus, select:focus, textarea:focus { outline: none; }

table { border-collapse: collapse; width: 100%; }

::placeholder { color: var(--x1-text-4); }

/* 数字统一用等宽数字字体 */
.num { font-family: var(--x1-font-num); font-variant-numeric: tabular-nums; letter-spacing: 0.01em; }

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