@custom-variant dark (&:is(.dark *)); /* .dark { --background: oklch(0.145 0 0); --foreground: oklch(0.985 0 0); --card: oklch(0.205 0 0); --card-foreground: oklch(0.985 0 0); --popover: oklch(0.205 0 0); --popover-foreground: oklch(0.985 0 0); --primary: oklch(0.922 0 0); --primary-foreground: oklch(0.205 0 0); --secondary: oklch(0.269 0 0); --secondary-foreground: oklch(0.985 0 0); --muted: oklch(0.269 0 0); --muted-foreground: oklch(0.708 0 0); --accent: oklch(0.269 0 0); --accent-foreground: oklch(0.985 0 0); --destructive: oklch(0.704 0.191 22.216); --border: oklch(1 0 0 / 10%); --input: oklch(1 0 0 / 15%); --ring: oklch(0.556 0 0); --chart-1: oklch(0.488 0.243 264.376); --chart-2: oklch(0.696 0.17 162.48); --chart-3: oklch(0.769 0.188 70.08); --chart-4: oklch(0.627 0.265 303.9); --chart-5: oklch(0.645 0.246 16.439); --sidebar: oklch(0.205 0 0); --sidebar-foreground: oklch(0.985 0 0); --sidebar-primary: oklch(0.488 0.243 264.376); --sidebar-primary-foreground: oklch(0.985 0 0); --sidebar-accent: oklch(0.269 0 0); --sidebar-accent-foreground: oklch(0.985 0 0); --sidebar-border: oklch(1 0 0 / 10%); --sidebar-ring: oklch(0.556 0 0); } */ :root { /* 颜色 */ --glo-color-orange-0: #ffecde; --glo-color-orange-10: #ffd7b8; --glo-color-orange-20: #ffbf8f; --glo-color-orange-30: #ffa264; --glo-color-orange-40: #fd8239; --glo-color-orange-50: #f25e0f; --glo-color-orange-60: #d04500; --glo-color-orange-70: #a83400; --glo-color-orange-80: #7b2300; --glo-color-orange-90: #4d1400; --glo-color-yellow-0: #fff8de; --glo-color-yellow-10: #ffefb3; --glo-color-yellow-20: #ffe386; --glo-color-yellow-30: #fcd258; --glo-color-yellow-40: #f3bc2a; --glo-color-yellow-50: #e6a100; --glo-color-yellow-60: #c78800; --glo-color-yellow-70: #a26b00; --glo-color-yellow-80: #784d00; --glo-color-yellow-90: #4d2f00; --glo-color-grass-0: #f8ffde; --glo-color-grass-10: #edfcb8; --glo-color-grass-20: #e0f68f; --glo-color-grass-30: #cfed67; --glo-color-grass-40: #bae041; --glo-color-grass-50: #a0cd1e; --glo-color-grass-60: #82b500; --glo-color-grass-70: #689600; --glo-color-grass-80: #4b7200; --glo-color-grass-90: #304d00; --glo-color-green-0: #deffe7; --glo-color-green-10: #b9fccd; --glo-color-green-20: #94f7b1; --glo-color-green-30: #6fee96; --glo-color-green-40: #4ae27b; --glo-color-green-50: #28d061; --glo-color-green-60: #0bb84a; --glo-color-green-70: #00983c; --glo-color-green-80: #007331; --glo-color-green-90: #004d22; --glo-color-mint-0: #defff8; --glo-color-mint-10: #b6fbed; --glo-color-mint-20: #8df3e2; --glo-color-mint-30: #65e9d5; --glo-color-mint-40: #3fdac4; --glo-color-mint-50: #1dc7b0; --glo-color-mint-60: #00ad96; --glo-color-mint-70: #009182; --glo-color-mint-80: #006f67; --glo-color-mint-90: #004d49; --glo-color-sky-0: #deecff; --glo-color-sky-10: #b5d2fd; --glo-color-sky-20: #8cb5f9; --glo-color-sky-30: #6296f2; --glo-color-sky-40: #3a76e6; --glo-color-sky-50: #1e58d2; --glo-color-sky-60: #063bb8; --glo-color-sky-70: #002a98; --glo-color-sky-80: #001e73; --glo-color-sky-90: #00134d; --glo-color-blue-0: #dee0ff; --glo-color-blue-10: #bcbeff; --glo-color-blue-20: #9797ff; --glo-color-blue-30: #7370ff; --glo-color-blue-40: #4e48ff; --glo-color-blue-50: #3126e6; --glo-color-blue-60: #180ac7; --glo-color-blue-70: #0f00a2; --glo-color-blue-80: #0d0078; --glo-color-blue-90: #09004d; --glo-color-violet-0: #e4deff; --glo-color-violet-10: #c7b7fd; --glo-color-violet-20: #aa90f9; --glo-color-violet-30: #8d68f2; --glo-color-violet-40: #7b47ff; --glo-color-violet-50: #5923d2; --glo-color-violet-60: #4309b8; --glo-color-violet-70: #340098; --glo-color-violet-80: #290073; --glo-color-violet-90: #1c004d; --glo-color-purple-0: #fbdeff; --glo-color-purple-10: #f2b7fd; --glo-color-purple-20: #e690f9; --glo-color-purple-30: #d668f2; --glo-color-purple-40: #c241e6; --glo-color-purple-50: #a823d2; --glo-color-purple-60: #8a09b8; --glo-color-purple-70: #6e0098; --glo-color-purple-80: #520073; --glo-color-purple-90: #36004d; --glo-color-magenta-0: #fbdeff; --glo-color-magenta-10: #fdb6d3; --glo-color-magenta-20: #f98dbc; --glo-color-magenta-30: #f264a4; --glo-color-magenta-40: #e63c8b; --glo-color-magenta-50: #d21f77; --glo-color-magenta-60: #b80761; --glo-color-magenta-70: #980050; --glo-color-magenta-80: #73003e; --glo-color-magenta-90: #4d002a; --glo-color-red-0: #ffdede; --glo-color-red-10: #ffbcbc; --glo-color-red-20: #ff9696; --glo-color-red-30: #f97372; --glo-color-red-40: #ef4e4d; --glo-color-red-50: #e12a2a; --glo-color-red-60: #c2110e; --glo-color-red-70: #a00700; --glo-color-red-80: #770800; --glo-color-red-90: #4d0600; --glo-color-grey-0: #e8e4eb; --glo-color-grey-10: #d4d0d8; --glo-color-grey-20: #aaa3b1; --glo-color-grey-30: #958e9e; --glo-color-grey-40: #847d8b; --glo-color-grey-50: #706a78; --glo-color-grey-60: #5c5565; --glo-color-grey-70: #484151; --glo-color-grey-80: #352e3e; --glo-color-grey-90: #282233; --glo-color-grey-100: #211a2b; --glo-color-white: #ffffff; --glo-color-black: #000000; /* 透明度 */ --glo-transparent-t0: 0; --glo-transparent-t2: 0.02; --glo-transparent-t4: 0.04; --glo-transparent-t6: 0.06; --glo-transparent-t8: 0.08; --glo-transparent-t12: 0.12; --glo-transparent-t15: 0.15; --glo-transparent-t20: 0.2; --glo-transparent-t25: 0.25; --glo-transparent-t30: 0.3; --glo-transparent-t45: 0.45; --glo-transparent-t65: 0.65; --glo-transparent-t85: 0.85; /* 渐变方向 */ --glo-deg-ltr: to right; --glo-deg-ttb: to bottom; --glo-deg-lttrb: to bottom right; /* 字体 */ --glo-font-family-sys: var(--font-poppins); --glo-font-family-numDisplay: var(--font-display-num); --glo-font-family-num: var(--font-poppins); --glo-font-family-display: var(--font-oleo-script-swash-caps); --glo-font-style-italic: Italic; --glo-font-size-64: 64px; --glo-font-size-48: 48px; --glo-font-size-36: 36px; --glo-font-size-24: 24px; --glo-font-size-20: 20px; --glo-font-size-18: 18px; --glo-font-size-16: 16px; --glo-font-size-14: 14px; --glo-font-size-12: 12px; --glo-font-weight-regular: 400; --glo-font-weight-medium: 500; --glo-font-weight-semibold: 600; --glo-font-weight-bold: 700; --glo-font-lineheight-size64: 80px; --glo-font-lineheight-size48: 56px; --glo-font-lineheight-size36: 48px; --glo-font-lineheight-size24: 28px; --glo-font-lineheight-size20: 24px; --glo-font-lineheight-size18: 24px; --glo-font-lineheight-size16: 24px; --glo-font-lineheight-size14: 20px; --glo-font-lineheight-size12: 20px; --glo-font-lineheight-size0: 1; /* 比例 */ --glo-radio-1-1: 1: 1; --glo-radio-4-3: 4: 3; --glo-radio-3-2: 3: 2; --glo-radio-2-1: 2: 1; --glo-radio-16-9: 16: 9; /* 圆角 */ --glo-radius-4: 4px; --glo-radius-8: 8px; --glo-radius-12: 12px; --glo-radius-16: 16px; --glo-radius-24: 24px; --glo-radius-round: 0.5; /* 边框 */ --glo-border-1: 1px; --glo-border-2: 2px; --glo-border-4: 4px; /* 间距 */ --glo-spacing-4: 4px; --glo-spacing-8: 8px; --glo-spacing-12: 12px; --glo-spacing-16: 16px; --glo-spacing-24: 24px; --glo-spacing-32: 32px; --glo-spacing-48: 48px; --glo-spacing-64: 64px; --glo-spacing-80: 80px; --glo-spacing-128: 128px; /* 断点 */ --breackpoint-xs: <768px; --breackpoint-s: ≥768px; --breackpoint-m: ≥1024px; --breackpoint-l: ≥1280px; --breackpoint-xl: ≥1536; --radius: 0.625rem; --card: oklch(1 0 0); --card-foreground: oklch(0.145 0 0); --popover: oklch(1 0 0); --popover-foreground: oklch(0.145 0 0); --primary: oklch(0.205 0 0); --primary-foreground: oklch(0.985 0 0); --secondary: oklch(0.97 0 0); --secondary-foreground: oklch(0.205 0 0); --muted: oklch(0.97 0 0); --muted-foreground: oklch(0.556 0 0); --accent: oklch(0.97 0 0); --accent-foreground: oklch(0.205 0 0); --destructive: oklch(0.577 0.245 27.325); --border: oklch(0.922 0 0); --input: oklch(0.922 0 0); --ring: oklch(0.708 0 0); --chart-1: oklch(0.646 0.222 41.116); --chart-2: oklch(0.6 0.118 184.704); --chart-3: oklch(0.398 0.07 227.392); --chart-4: oklch(0.828 0.189 84.429); --chart-5: oklch(0.769 0.188 70.08); --sidebar: oklch(0.985 0 0); --sidebar-foreground: oklch(0.145 0 0); --sidebar-primary: oklch(0.205 0 0); --sidebar-primary-foreground: oklch(0.985 0 0); --sidebar-accent: oklch(0.97 0 0); --sidebar-accent-foreground: oklch(0.205 0 0); --sidebar-border: oklch(0.922 0 0); --sidebar-ring: oklch(0.708 0 0); --background: oklch(1 0 0); --foreground: oklch(0.145 0 0); } @theme inline { /* Web System Tokens */ /* Primary */ --color-primary-normal: var(--glo-color-magenta-50); --color-primary-hover: var(--glo-color-magenta-40); --color-primary-press: var(--glo-color-magenta-60); --color-primary-disabled: var(--color-surface-nest-disabled); --color-primary-variant-normal: var(--glo-color-magenta-40); --color-primary-variant-hover: var(--glo-color-magenta-30); --color-primary-variant-press: var(--glo-color-magenta-50); --color-primary-variant-disabled: var(--color-surface-nest-disabled); --color-primary-gradient-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-magenta-30), var(--glo-color-purple-40) ); --color-primary-gradient-hover: linear-gradient( var(--glo-deg-ltr), var(--glo-color-magenta-20), var(--glo-color-purple-30) ); --color-primary-gradient-press: linear-gradient( var(--glo-deg-ltr), var(--glo-color-magenta-40), var(--glo-color-purple-50) ); --color-primary-gradient-disabled: var(--color-surface-nest-disabled); --color-primary-onpic-normal: rgba(123, 71, 255, 0.85); --color-primary-onpic-hover: rgba(141, 104, 242, 0.85); --color-primary-onpic-press: rgba(89, 35, 210, 0.85); /* Important */ --color-important-normal: var(--glo-color-red-50); --color-important-hover: var(--glo-color-red-40); --color-important-press: var(--glo-color-red-60); --color-important-disabled: var(--color-surface-nest-disabled); --color-important-variant-normal: var(--glo-color-red-40); --color-important-variant-hover: var(--glo-color-red-30); --color-important-variant-press: var(--glo-color-red-50); --color-important-variant-disabled: rgba(188, 190, 255, 0.25); --color-important-gradient-normal: sha; --color-important-gradient-hover: linear-gradient( var(--glo-deg-ltr), var(--glo-color-orange-40), var(--glo-color-red-40) ); --color-important-gradient-press: linear-gradient( var(--glo-deg-ltr), var(--glo-color-orange-60), var(--glo-color-red-60) ); --color-important-gradient-disabled: var(--color-surface-nest-disabled); --color-important-onpic-normal: rgba(225, 42, 42, 0.85); /* Positive */ --color-positive-normal: var(--glo-color-mint-60); --color-positive-hover: var(--glo-color-mint-50); --color-positive-press: var(--glo-color-mint-70); --color-positive-disabled: var(--color-surface-nest-disabled); --color-positive-variant-normal: var(--glo-color-mint-40); --color-positive-variant-hover: var(--glo-color-mint-30); --color-positive-variant-press: var(--glo-color-mint-50); --color-positive-variant-disabled: rgba(188, 190, 255, 0.25); --color-positive-gradient-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-green-40), var(--glo-color-mint-60) ); --color-positive-gradient-hover: linear-gradient( var(--glo-deg-ltr), var(--glo-color-green-40), var(--glo-color-mint-50) ); --color-positive-gradient-press: ; --color-positive-gradient-disabled: var(--color-surface-nest-disabled); --color-positive-onpic-normal: rgba(29, 199, 176, 0.85); /* Warning */ --color-warning-normal: var(--glo-color-orange-50); --color-warning-hover: var(--glo-color-orange-40); --color-warning-press: var(--glo-color-orange-60); --color-warning-disabled: var(--color-surface-nest-disabled); --color-warning-variant-normal: var(--glo-color-orange-40); --color-warning-variant-hover: var(--glo-color-orange-30); --color-warning-variant-press: var(--glo-color-orange-50); --color-warning-variant-disabled: rgba(188, 190, 255, 0.25); --color-warning-gradient-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-yellow-40), var(--glo-color-orange-50) ); --color-warning-gradient-hover: linear-gradient( var(--glo-deg-ltr), var(--glo-color-yellow-30), var(--glo-color-orange-40) ); --color-warning-gradient-press: linear-gradient( var(--glo-deg-ltr), var(--glo-color-yellow-50), var(--glo-color-orange-60) ); --color-warning-gradient-disabled: var(--color-surface-nest-disabled); --color-warning-onpic-normal: rgba(242, 94, 15, 0.85); /* Emphasis */ --color-emphasis-normal: var(--glo-color-blue-40); --color-emphasis-hover: var(--glo-color-blue-30); --color-emphasis-press: var(--glo-color-blue-50); --color-emphasis-disabled: var(--color-surface-nest-disabled); --color-emphasis-variant-normal: var(--glo-color-blue-30); --color-emphasis-variant-hover: var(--glo-color-blue-20); --color-emphasis-variant-press: var(--glo-color-blue-40); --color-emphasis-variant-disabled: rgba(188, 190, 255, 0.25); --color-emphasis-gradient-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-sky-30), var(--glo-color-blue-40) ); --color-emphasis-gradient-hover: linear-gradient( var(--glo-deg-ltr), var(--glo-color-sky-20), var(--glo-color-blue-30) ); --color-emphasis-gradient-press: linear-gradient( var(--glo-deg-ltr), var(--glo-color-sky-40), var(--glo-color-blue-50) ); --color-emphasis-gradient-disabled: var(--color-surface-nest-disabled); --color-emphasis-onpic-normal: rgba(78, 72, 255, 0.85); /* Background */ --color-background-default: var(--glo-color-grey-100); --color-background-specialmap: var(--glo-color-grey-100); --color-background-district: rgba(0, 0, 0, 0.3); /* Surface */ --color-surface-base-normal: var(--glo-color-grey-80); --color-surface-base-hover: var(--glo-color-grey-70); --color-surface-base-press: var(--glo-color-grey-90); --color-surface-base-disabled: var(--glo-color-grey-90); --color-surface-base-specialmap-normal: var(--glo-color-grey-80); --color-surface-base-specialmap-hover: var(--glo-color-grey-70); --color-surface-base-specialmap-press: rgba(53, 46, 62, 0.3); --color-surface-base-specialmap-disabled: rgba(255, 255, 255, 0.08); --color-surface-float-normal: var(--glo-color-grey-70); --color-surface-float-hover: var(--glo-color-grey-60); --color-surface-float-press: var(--glo-color-grey-80); --color-surface-float-disabled: var(--glo-color-grey-80); --color-surface-top-normal: rgba(0, 0, 0, 0.65); --color-surface-top-hover: rgba(0, 0, 0, 0.45); --color-surface-top-press: rgba(0, 0, 0, 0.85); --color-surface-top-disabled: rgba(0, 0, 0, 0.3); --color-surface-district-normal: rgba(251, 222, 255, 0.04); --color-surface-district-hover: rgba(251, 222, 255, 0.12); --color-surface-district-press: rgba(0, 0, 0, 0.25); --color-surface-district-disabled: rgba(0, 0, 0, 0.25); --color-surface-nest-normal: rgba(251, 222, 255, 0.08); --color-surface-nest-hover: rgba(251, 222, 255, 0.12); --color-surface-nest-press: rgba(251, 222, 255, 0.04); --color-surface-nest-disabled: rgba(251, 222, 255, 0.04); --color-surface-element-normal: var(--color-surface-nest-normal); --color-surface-element-hover: var(--color-surface-nest-hover); --color-surface-element-press: var(--color-surface-nest-press); --color-surface-element-disabled: var(--color-surface-nest-disabled); --color-surface-element-dark-normal: rgba(0, 0, 0, 0.65); --color-surface-element-dark-hover: rgba(0, 0, 0, 0.45); --color-surface-element-dark-press: rgba(0, 0, 0, 0.85); --color-surface-element-dark-disabled: rgba(0, 0, 0, 0.45); --color-surface-element-light-normal: rgba(255, 255, 255, 0.15); --color-surface-element-light-hover: rgba(255, 255, 255, 0.25); --color-surface-element-light-press: rgba(255, 255, 255, 0.08); --color-surface-element-light-disabled: rgba(255, 255, 255, 0.08); --color-surface-white-normal: var(--glo-color-white); --color-surface-white-hover: rgba(255, 255, 255, 0.85); --color-surface-white-press: rgba(255, 255, 255, 0.65); --color-surface-white-disabled: rgba(255, 255, 255, 0.45); --color-surface-black-normal: var(--glo-color-black); /* Outline */ --color-outline-normal: rgba(251, 222, 255, 0.2); --color-outline-hover: rgba(251, 222, 255, 0.3); --color-outline-press: rgba(251, 222, 255, 0.08); --color-outline-disabled: var(--color-surface-element-disabled); /* Overlay */ --color-overlay-primary: rgba(123, 71, 255, 0.3); --color-overlay-gradient: linear-gradient( var(--glo-deg-ttb), var(--glo-color-black) var(--glo-transparent-t0), var(--glo-color-black) var(--glo-transparent-t100) ); --color-overlay-dark: rgba(0, 0, 0, 0.65); --color-overlay-background: linear-gradient( var(--glo-deg-ttb), var(--color-background-default) var(--glo-transparent-t0), var(--color-background-default) var(--glo-transparent-t100) ); --color-overlay-base: linear-gradient( var(--glo-deg-ttb), var(--color-surface-base-normal) var(--glo-transparent-t100), var(--color-surface-base-normal) var(--glo-transparent-t0) ); /* Context */ --color-context-subscribe-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-purple-50), var(--glo-color-violet-50) ); --color-context-subscribe-hover: linear-gradient( var(--glo-deg-ltr), var(--glo-color-purple-30), var(--glo-color-violet-30) ); --color-context-subscribe-press: linear-gradient( var(--glo-deg-ltr), var(--glo-color-purple-70), var(--glo-color-violet-70) ); --color-context-subscribe-disabled: var(--color-surface-nest-disabled); --color-context-legends-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-yellow-20), var(--glo-color-yellow-60) ); --color-context-legends-hover: linear-gradient( var(--glo-deg-ltr), var(--glo-color-yellow-10), var(--glo-color-yellow-40) ); --color-context-legends-press: linear-gradient( var(--glo-deg-ltr), var(--glo-color-yellow-60), var(--glo-color-yellow-90) ); --color-context-legends-disabled: var(--color-surface-nest-disabled); --color-context-legends-variant-normal: var(--glo-color-yellow-20); --color-context-legends-variant-hover: var(--glo-color-yellow-10); --color-context-legends-variant-press: var(--glo-color-yellow-40); --color-context-legends-variant-disabled: var(--color-surface-nest-disabled); --color-context-vip-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-sky-20) 0%, var(--glo-color-violet-40) 60%, var(--glo-color-purple-30) 100% ); --color-context-recharge-normal: linear-gradient( var(--glo-deg-ltr), var(--glo-color-yellow-0), var(--glo-color-yellow-70) ); /* Text & Icon */ --color-txt-primary-normal: var(--glo-color-white); --color-txt-primary-hover: var(--glo-color-magenta-30); --color-txt-primary-press: var(--glo-color-magenta-40); --color-txt-primary-disabled: var(--color-txt-disabled); --color-txt-primary-specialmap-normal: var(--glo-color-white); --color-txt-primary-specialmap-hover: rgba(255, 255, 255, 0.85); --color-txt-primary-specialmap-press: rgba(255, 255, 255, 0.65); --color-txt-primary-specialmap-disable: rgba(255, 255, 255, 0.45); --color-txt-secondary-normal: var(--glo-color-grey-30); --color-txt-secondary-hover: var(--glo-color-magenta-30); --color-txt-secondary-press: var(--glo-color-magenta-40); --color-txt-secondary-disabled: var(--color-txt-disabled); --color-txt-tertiary-normal: var(--glo-color-grey-40); --color-txt-tertiary-hover: var(--glo-color-grey-30); --color-txt-tertiary: var(--glo-color-grey-50); --color-txt-tertiary-disabled: var(--color-txt-disabled); --color-txt-grass: var(--glo-color-grass-40); --color-txt-disabled: var(--glo-color-grey-50); /* Visual style */ --shadow-s: @SHA: var(--glo-color-black), var(--glo-transparent-t45), 0&0, 4; --shadow-m: @SHA: var(--glo-color-black), var(--glo-transparent-t45), 0&0, 8; --shadow-l: @SHA: var(--glo-color-black), var(--glo-transparent-t45), 0&0, 16; --radius-xs: var(--glo-radius-4); --radius-sm: var(--glo-radius-8); --radius-m: var(--glo-radius-12); --radius-lg: var(--glo-radius-16); --radius-xl: var(--glo-radius-24); --radius-round: var(--glo-radius-round); --radius-pill: var(--glo-radius-round); --border-divider: var(--glo-border-1); --border-s: var(--glo-border-1); --border-m: var(--glo-border-2); --border-l: var(--glo-border-4); --color-sidebar-ring: var(--sidebar-ring); --color-sidebar-border: var(--sidebar-border); --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); --color-sidebar-accent: var(--sidebar-accent); --color-sidebar-primary-foreground: var(--sidebar-primary-foreground); --color-sidebar-primary: var(--sidebar-primary); --color-sidebar-foreground: var(--sidebar-foreground); --color-sidebar: var(--sidebar); --color-chart-5: var(--chart-5); --color-chart-4: var(--chart-4); --color-chart-3: var(--chart-3); --color-chart-2: var(--chart-2); --color-chart-1: var(--chart-1); --color-ring: var(--ring); --color-input: var(--input); --color-border: var(--border); --color-destructive: var(--destructive); --color-accent-foreground: var(--accent-foreground); --color-accent: var(--accent); --color-muted-foreground: var(--muted-foreground); --color-muted: var(--muted); --color-secondary-foreground: var(--secondary-foreground); --color-secondary: var(--secondary); --color-primary-foreground: var(--primary-foreground); --color-primary: var(--primary); --color-popover-foreground: var(--popover-foreground); --color-popover: var(--popover); --color-card-foreground: var(--card-foreground); --color-card: var(--card); --color-foreground: var(--foreground); --color-background: var(--background); --color-gradient-secondary-normal: linear-gradient( 90deg, var(--glo-color-red-20) 0%, var(--glo-color-violet-20) 50%, var(--glo-color-mint-20) 100% ); } /* Typography 工具类 */ @utility txt-display-xl { font-family: var(--font-oleo-script-swash-caps); font-size: var(--glo-font-size-64); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size64); } @utility txt-display-l { font-family: var(--font-oleo-script-swash-caps); font-size: var(--glo-font-size-48); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size48); } @utility txt-display-m { font-family: var(--font-oleo-script-swash-caps); font-size: var(--glo-font-size-24); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size24); } @utility txt-display-s { font-family: var(--font-oleo-script-swash-caps); font-size: var(--glo-font-size-16); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size16); } @utility txt-headline-l { font-family: var(--font-poppins); font-size: var(--glo-font-size-48); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size48); } @utility txt-headline-m { font-family: var(--font-poppins); font-size: var(--glo-font-size-36); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size36); } @utility txt-headline-s { font-family: var(--font-poppins); font-size: var(--glo-font-size-24); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size24); } @utility txt-title-l { font-family: var(--font-poppins); font-size: var(--glo-font-size-24); font-weight: var(--glo-font-weight-semibold); line-height: var(--glo-font-lineheight-size24); } @utility txt-title-m { font-family: var(--font-poppins); font-size: var(--glo-font-size-20); font-weight: var(--glo-font-weight-semibold); line-height: var(--glo-font-lineheight-size20); } @utility txt-title-s { font-family: var(--font-poppins); font-size: var(--glo-font-size-16); font-weight: var(--glo-font-weight-semibold); line-height: var(--glo-font-lineheight-size16); } @utility txt-bodySemibold-l { font-family: var(--font-poppins); font-size: var(--glo-font-size-16); font-weight: var(--glo-font-weight-semibold); line-height: var(--glo-font-lineheight-size16); } @utility txt-bodySemibold-m { font-family: var(--font-poppins); font-size: var(--glo-font-size-14); font-weight: var(--glo-font-weight-semibold); line-height: var(--glo-font-lineheight-size14); } @utility txt-bodySemibold-s { font-family: var(--font-poppins); font-size: var(--glo-font-size-12); font-weight: var(--glo-font-weight-semibold); line-height: var(--glo-font-lineheight-size12); } @utility txt-body-l { font-family: var(--font-poppins); font-size: var(--glo-font-size-16); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size16); } @utility txt-body-m { font-family: var(--font-poppins); font-size: var(--glo-font-size-14); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size14); } @utility txt-body-s { font-family: var(--font-poppins); font-size: var(--glo-font-size-12); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size12); } @utility txt-bodyItalic-l { font-family: var(--font-poppins); font-size: var(--glo-font-size-16); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size16); font-style: italic; } @utility txt-label-l { font-family: var(--font-poppins); font-size: var(--glo-font-size-16); font-weight: var(--glo-font-weight-medium); line-height: var(--glo-font-lineheight-size16); } @utility txt-label-m { font-family: var(--font-poppins); font-size: var(--glo-font-size-14); font-weight: var(--glo-font-weight-medium); line-height: var(--glo-font-lineheight-size14); } @utility txt-label-s { font-family: var(--font-poppins); font-size: var(--glo-font-size-12); font-weight: var(--glo-font-weight-medium); line-height: var(--glo-font-lineheight-size12); } @utility txt-numDisplay-xl { font-family: var(--font-display-num); font-size: var(--glo-font-size-64); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size64); } @utility txt-numDisplay-l { font-family: var(--font-display-num); font-size: var(--glo-font-size-48); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size48); } @utility txt-numDisplay-m { font-family: var(--font-display-num); font-size: var(--glo-font-size-36); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size36); } @utility txt-numDisplay-s { font-family: var(--font-display-num); font-size: var(--glo-font-size-24); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size24); } @utility txt-numMonotype-xl { font-family: var(--font-poppins); font-size: var(--glo-font-size-24); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size24); } @utility txt-numMonotype-l { font-family: var(--font-poppins); font-size: var(--glo-font-size-20); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size20); } @utility txt-numMonotype-m { font-family: var(--font-poppins); font-size: var(--glo-font-size-16); font-weight: var(--glo-font-weight-bold); line-height: var(--glo-font-lineheight-size16); } @utility txt-numMonotype-s { font-family: var(--font-poppins); font-size: var(--glo-font-size-14); font-weight: var(--glo-font-weight-medium); line-height: var(--glo-font-lineheight-size14); } @utility txt-numMonotype-xs { font-family: var(--font-poppins); font-size: var(--glo-font-size-12); font-weight: var(--glo-font-weight-regular); line-height: var(--glo-font-lineheight-size12); } @utility bg-primary-gradient-normal { background: var(--color-primary-gradient-normal); } @utility bg-primary-gradient-hover { background: var(--color-primary-gradient-hover); } @utility bg-primary-gradient-press { background: var(--color-primary-gradient-press); } @utility bg-primary-gradient-disabled { background: var(--color-primary-gradient-disabled); } @utility bg-gradient-secondary-normal { background: var(--color-gradient-secondary-normal); } @utility bg-important-gradient-normal { background: var(--color-important-gradient-normal); } @utility bg-important-gradient-hover { background: var(--color-important-gradient-hover); } @utility bg-important-gradient-press { background: var(--color-important-gradient-press); } @utility bg-important-gradient-disabled { background: var(--color-important-gradient-disabled); } @utility bg-positive-gradient-normal { background: var(--color-positive-gradient-normal); } @utility bg-positive-gradient-hover { background: var(--color-positive-gradient-hover); } @utility bg-positive-gradient-press { background: var(--color-positive-gradient-press); } @utility bg-positive-gradient-disabled { background: var(--color-positive-gradient-disabled); } @utility bg-warning-gradient-normal { background: var(--color-warning-gradient-normal); } @utility bg-warning-gradient-hover { background: var(--color-warning-gradient-hover); } @utility bg-warning-gradient-press { background: var(--color-warning-gradient-press); } @utility bg-warning-gradient-disabled { background: var(--color-warning-gradient-disabled); } @utility bg-emphasis-gradient-normal { background: var(--color-emphasis-gradient-normal); } @utility bg-emphasis-gradient-hover { background: var(--color-emphasis-gradient-hover); } @utility bg-emphasis-gradient-press { background: var(--color-emphasis-gradient-press); } @utility bg-emphasis-gradient-disabled { background: var(--color-emphasis-gradient-disabled); } @utility bg-overlay-gradient { background: var(--color-overlay-gradient); } /* @utility bg-overlay-background { background: var(--color-overlay-background) !important; } */ @utility bg-overlay-base { background: var(--color-overlay-base); } @utility bg-context-subscribe-normal { background: var(--color-context-subscribe-normal); } @utility bg-context-subscribe-hover { background: var(--color-context-subscribe-hover); } @utility bg-context-subscribe-press { background: var(--color-context-subscribe-press); } @utility bg-context-subscribe-disabled { background: var(--color-context-subscribe-disabled); } @utility bg-context-legends-normal { background: var(--color-context-legends-normal); } @utility bg-context-legends-hover { background: var(--color-context-legends-hover); } @utility bg-context-legends-press { background: var(--color-context-legends-press); } @utility bg-context-legends-disabled { background: var(--color-context-legends-disabled); } @utility bg-context-vip-normal { background: var(--color-context-vip-normal); } @utility bg-context-recharge-normal { background: var(--color-context-recharge-normal); } /* Line clamp utilities */ @utility line-clamp-1 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; } @utility line-clamp-2 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } @utility line-clamp-3 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }