/* Generated from installed HDS tokens, Divider and legal presentation styles. */
:root {
  --hds-font-font-family-ping-fang-sc: "PingFang SC";
  --hds-num-space-8: 8px;
  --hds-semantic-text-disabled: var(--hds-color-light-gray-5);
  --hds-color-light-gray-5: #a5adb6;
  --hds-font-font-size-12: 12px;
  --hds-font-font-weight-400: 400;
  --hds-font-line-height-20: 20px;
  --hds-num-space-80: 80px;
  --hds-semantic-bg-0: var(--hds-color-light-neutral-1);
  --hds-color-light-neutral-1: #ffffff;
  --hds-semantic-text-secondary: var(--hds-color-light-gray-8);
  --hds-color-light-gray-8: #4a5463;
  --hds-font-font-size-14: 14px;
  --hds-font-line-height-22: 22px;
  --hds-semantic-text-inverse-1: var(--hds-color-light-neutral-1);
  --hds-semantic-component-2-def: var(--hds-color-light-neutral-10);
  --hds-color-light-neutral-10: #000000;
  --hds-num-space-24: 24px;
  --hds-num-space-40: 40px;
  --hds-num-space-16: 16px;
  --hds-semantic-text-primary: var(--hds-color-light-gray-10);
  --hds-color-light-gray-10: #191d24;
  --hds-font-font-size-40: 40px;
  --hds-font-font-weight-600: 600;
  --hds-font-line-height-48: 48px;
  --hds-semantic-text-tertiary: var(--hds-color-light-gray-7);
  --hds-color-light-gray-7: #697482;
  --hds-num-space-32: 32px;
  --hds-font-font-size-20: 20px;
  --hds-font-line-height-28: 28px;
  --hds-font-font-size-16: 16px;
  --hds-font-line-height-24: 24px;
  --hds-num-line-weight-05: 0.5px;
  --hds-semantic-line-2: var(--hds-color-light-gray-3);
  --hds-color-light-gray-3: #dde0e4;
  --hds-semantic-brand-color-1: var(--hds-color-light-brand-6);
  --hds-color-light-brand-6: #4d32fb;
  --hds-semantic-brand-hover-1: var(--hds-color-light-brand-5);
  --hds-color-light-brand-5: #6e69fc;
  --hds-num-space-2: 2px;
  --hds-font-font-size-24: 24px;
  --hds-font-font-size-32: 32px;
  --hds-font-line-height-40: 40px;
}
/* Website typography policy. Keep system sans-serif fallbacks and vendor primitives consistent.
   A more specific root selector also keeps lazy-loaded HDS/Element Plus CSS
   from replacing these application-level semantic aliases. */
html:root {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  --site-font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    "Helvetica Neue", Arial,
    var(--hds-font-font-family-ping-fang-sc, "PingFang SC"), "Hiragino Sans GB",
    "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC",
    "Source Han Sans SC", sans-serif;
  --site-font-family-numeric: var(--site-font-family-sans);
  --site-font-family-mono: ui-monospace, "SFMono-Regular", "Cascadia Code",
    "Segoe UI Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    var(--site-font-family-sans), monospace;
  /* Temporary text wordmark, pending the approved SVG brand asset. */
  --site-font-family-wordmark: Arial, var(--site-font-family-sans);

  /* Semantic integration boundary; do not overwrite HDS primitive font tokens. */
  --hds-font-family-sans: var(--site-font-family-sans);
  --hds-font-family-mono: var(--site-font-family-mono);
  --el-font-family: var(--site-font-family-sans);
}

.hds-divider[data-v-ebab5772]{align-items:center;gap:var(--hds-num-space-8);width:100%;margin:0;display:flex}.hds-divider[data-v-ebab5772]:before,.hds-divider--with-text[data-v-ebab5772]:after{content:"";min-width:0;height:var(--hds-divider-weight);background:var(--hds-divider-color);flex:1 1 0;display:block}.hds-divider--with-text[data-v-ebab5772]:before{flex-grow:var(--hds-divider-leading-share)}.hds-divider--with-text[data-v-ebab5772]:after{flex-grow:var(--hds-divider-trailing-share)}.hds-divider--text-start[data-v-ebab5772]:before,.hds-divider--text-end[data-v-ebab5772]:after{display:none}.hds-divider--dashed[data-v-ebab5772]:before,.hds-divider--dashed[data-v-ebab5772]:after{background:repeating-linear-gradient(to right, var(--hds-divider-color) 0 2px, transparent 2px 4px)}.hds-divider__text[data-v-ebab5772]{min-width:0;color:var(--hds-semantic-text-disabled);font-family:var(--hds-font-family-sans);font-size:var(--hds-font-font-size-12);font-weight:var(--hds-font-font-weight-400);line-height:var(--hds-font-line-height-20);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;overflow:hidden}
/* Standalone legal pages; all typography, color and spacing use installed HDS tokens. */
* { box-sizing: border-box; }
html { color-scheme: light; }
body.legal-page {
  margin: 0;
  padding-block: var(--hds-num-space-80);
  background: var(--hds-semantic-bg-0);
  color: var(--hds-semantic-text-secondary);
  font-family: var(--site-font-family-sans);
  font-size: var(--hds-font-font-size-14);
  font-weight: var(--hds-font-font-weight-400);
  line-height: var(--hds-font-line-height-22);
  letter-spacing: 0;
}
.legal-page ::selection { color: var(--hds-semantic-text-inverse-1); background: var(--hds-semantic-component-2-def); }
.legal-document { width: min(800px, calc(100% - 2 * var(--hds-num-space-24))); margin-inline: auto; }
.legal-header { display: flex; flex-direction: column; gap: var(--hds-num-space-40); }
.legal-intro { display: flex; flex-direction: column; align-items: center; gap: var(--hds-num-space-16); }
.legal-title {
  margin: 0;
  color: var(--hds-semantic-text-primary);
  font-size: var(--hds-font-font-size-40);
  font-weight: var(--hds-font-font-weight-600);
  line-height: var(--hds-font-line-height-48);
  text-align: center;
  overflow-wrap: normal;
  word-break: keep-all;
}
.legal-meta { display: flex; flex-wrap: wrap; justify-content: center; column-gap: var(--hds-num-space-24); row-gap: var(--hds-num-space-8); margin: 0; font-size: var(--hds-font-font-size-12); line-height: var(--hds-font-line-height-20); }
.legal-meta > div { display: flex; align-items: baseline; gap: var(--hds-num-space-8); }
.legal-meta dt { color: var(--hds-semantic-text-tertiary); }
.legal-meta dd { margin: 0; color: var(--hds-semantic-text-secondary); }
.legal-body { display: flow-root; margin-top: var(--hds-num-space-40); overflow-wrap: anywhere; }
.legal-body :is(p,h1,h2,h3,h4,h5,h6,ol,ul) { margin: 0; }
.legal-body p { text-align: justify; }
.legal-body p + p { margin-top: var(--hds-num-space-16); }
.legal-body :is(h1,h2) {
  margin-top: var(--hds-num-space-32);
  margin-bottom: var(--hds-num-space-16);
  color: var(--hds-semantic-text-primary);
  font-size: var(--hds-font-font-size-20);
  font-weight: var(--hds-font-font-weight-600);
  line-height: var(--hds-font-line-height-28);
}
.legal-body :is(h3,h4,h5,h6) { margin-block: var(--hds-num-space-24) var(--hds-num-space-16); color: var(--hds-semantic-text-primary); font-size: var(--hds-font-font-size-16); font-weight: var(--hds-font-font-weight-600); line-height: var(--hds-font-line-height-24); }
.legal-body > :first-child { margin-top: 0; }
.legal-body :is(strong,b) { font-weight: var(--hds-font-font-weight-600); color: var(--hds-semantic-text-primary); }
.legal-body :is(ol,ul) { margin-block: var(--hds-num-space-16); padding-inline-start: var(--hds-num-space-24); }
.legal-body li + li { margin-top: var(--hds-num-space-8); }
.legal-body li > :is(ol,ul) { margin-block: var(--hds-num-space-8) 0; }
.legal-body hr { margin-block: var(--hds-num-space-24); border: 0; border-top: var(--hds-num-line-weight-05) solid var(--hds-semantic-line-2); }
.legal-body a[href] { color: var(--hds-semantic-brand-color-1); text-decoration: none; }
.legal-body a[href]:is(:hover,:focus-visible) { color: var(--hds-semantic-brand-hover-1); text-decoration: underline; text-underline-offset: var(--hds-num-space-2); }
@media (max-width: 767px) {
  body.legal-page { padding-top: var(--hds-num-space-40); }
  .legal-title { font-size: clamp(var(--hds-font-font-size-24), 8.8vw, var(--hds-font-font-size-32)); line-height: var(--hds-font-line-height-40); white-space: nowrap; }
}
