:root {
  /* Vidda 品牌色取自官方 G11/V11 详情图：蓝紫主色、冷调银灰底、渐变数字 */
  --ink: #15161d;
  --ink-2: #5c5f6e;
  --ink-3: #8b8e9c;
  --line: rgba(30, 32, 60, .1);
  --bg: #f7f8fc;
  --bg-2: #eef0f7;
  --card: #ffffff;
  --dark: #07080d;
  --dark-2: #12131b;
  --dark-ink: #f2f3f8;
  --dark-ink-2: #a3a6b6;
  --accent: #5b3cf0;
  --accent-on-dark: #a597ff;
  --brand-grad: linear-gradient(100deg, #4d7cff 0%, #6a4cf5 55%, #8e5cff 100%);
  --radius-l: 2rem;
  --radius-m: 1.25rem;
  --pad: 4rem;
  --nav-h: 4.5rem;
  --ease: cubic-bezier(.25, .1, .25, 1);
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --font: "HarmonyOS Sans SC", "MiSans", "Noto Sans CJK SC", "Noto Sans SC", "Source Han Sans SC",
          "PingFang SC", "Microsoft YaHei", sans-serif;
}
html {
  font-size: min(calc(100vw / 120), calc(100vh / 67.5));
  background: var(--dark);
  color: var(--ink);
  -webkit-text-size-adjust: 100%;
}
@media (orientation: portrait) {
html { font-size: min(calc(100vw / 67.5), calc(100vh / 100)); }
:root { --pad: 3rem; }
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; overflow: hidden; overscroll-behavior: none; }
body {
  font-family: var(--font);
  font-size: 1.5rem;
  line-height: 1.5;
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}
img { display: block; max-width: 100%; -webkit-user-drag: none; user-drag: none; pointer-events: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; touch-action: manipulation; }
button:focus-visible { outline: .25rem solid var(--accent); outline-offset: .25rem; }
[hidden] { display: none !important; }
input[type=range].big { -webkit-appearance: none; appearance: none; width: 100%; height: 5rem; background: transparent; touch-action: none; }
input[type=range].big::-webkit-slider-runnable-track { height: .75rem; border-radius: 1rem; background: linear-gradient(90deg, #5ee0c8 var(--p, 0%), rgba(255,255,255,.2) var(--p, 0%)); }
input[type=range].big::-webkit-slider-thumb { -webkit-appearance: none; width: 4.5rem; height: 4.5rem; border-radius: 50%; background: #fff; margin-top: -1.875rem; box-shadow: 0 .25rem 1rem rgba(0,0,0,.4); }
input[type=range].big::-moz-range-track { height: .75rem; border-radius: 1rem; background: rgba(255,255,255,.2); }
input[type=range].big::-moz-range-progress { height: .75rem; border-radius: 1rem; background: #5ee0c8; }
input[type=range].big::-moz-range-thumb { width: 4.5rem; height: 4.5rem; border-radius: 50%; background: #fff; border: 0; }
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
