+ {t('直连官方的')}
+
+
+ {t('企业级接口网关')}
+
+
+ + {t('还有更多低价渠道,稳定流畅,只需要将BaseUrl替换为:')} +
++ {t('Subscription Plans')} +
+ {pricingNoticeConfig.enabled && ( +`, ``, ``, `` are typed monospace by
- * Tailwind preflight (specificity wins over body inheritance).
- * - `.font-mono` and `.tabular-nums` utilities declare their own
- * font-family / font-variant-numeric on the element itself.
- * 3. Headings adopt the Anthropic display setting (medium weight, slight
- * negative tracking).
- *
- * All keyed off `[data-theme-font='serif']` so they apply to any preset
- * paired with the serif font — not just Anthropic. */
-[data-theme-font='serif'] {
- font-feature-settings:
- 'kern' 1,
- 'liga' 1,
- 'calt' 1,
- 'tnum' 1;
-}
-
-/* Heading tuning — applies to tags and the shadcn title slots so
- * card/sheet/dialog titles read with the same authoritative voice as
- * page headers. */
-[data-theme-font='serif'] :is(h1, h2, h3, h4, h5, h6),
-[data-theme-font='serif'] [data-slot='sheet-title'],
-[data-theme-font='serif'] [data-slot='dialog-title'],
-[data-theme-font='serif'] [data-slot='alert-dialog-title'],
-[data-theme-font='serif'] [data-slot='drawer-title'],
-[data-theme-font='serif'] [data-slot='card-title'] {
- font-weight: 500;
- letter-spacing: -0.012em;
-}
-
-/* Larger displays earn tighter tracking, matching Copernicus/Tiempos
- * editorial display setting (~ -0.02em at 30px+). */
-[data-theme-font='serif'] h1,
-[data-theme-font='serif'] .text-3xl,
-[data-theme-font='serif'] .text-4xl,
-[data-theme-font='serif'] .text-5xl {
- letter-spacing: -0.02em;
-}
-
/* ── Border radius ────────────────────────────────────────────────────── */
[data-theme-radius='none'] {
--radius: 0rem;
@@ -687,7 +352,7 @@ For commercial licensing, please contact support@quantumnous.com
}
/* ── Density scale ────────────────────────────────────────────────────── */
-/* `sm` = compact UI; `lg` = comfortable; `xl` = extra readable. Default keeps Tailwind defaults. */
+/* `sm` = compact UI; `lg` = comfortable. Default (no attribute) keeps Tailwind defaults. */
[data-theme-scale='sm'] {
--text-xs: 0.7rem;
--text-sm: 0.78rem;
@@ -708,16 +373,6 @@ For commercial licensing, please contact support@quantumnous.com
--text-3xl: 2rem;
--spacing: 0.28rem;
}
-[data-theme-scale='xl'] {
- --text-xs: 0.9rem;
- --text-sm: 1rem;
- --text-base: 1.125rem;
- --text-lg: 1.25rem;
- --text-xl: 1.45rem;
- --text-2xl: 1.75rem;
- --text-3xl: 2.15rem;
- --spacing: 0.3rem;
-}
/* ── Content layout ───────────────────────────────────────────────────── */
/* `centered` clamps inset content to a comfortable reading width on large screens.
diff --git a/web/default/src/styles/theme.css b/web/default/src/styles/theme.css
index 8a2d174baa36..cae7e2221df2 100644
--- a/web/default/src/styles/theme.css
+++ b/web/default/src/styles/theme.css
@@ -20,19 +20,6 @@ For commercial licensing, please contact support@quantumnous.com
@theme inline {
--font-sans: 'Public Sans', sans-serif;
- /* Editorial serif token — the body face used by the `serif` font axis
- * and by presets that opt in (currently Anthropic). Lora carries only
- * Latin glyphs, so the stack walks through CJK serifs (Noto / Source Han
- * / Songti / SimSun) before the generic `serif` fallback. Without these
- * explicit CJK fonts the browser's generic-serif pick on Windows is
- * non-deterministic at small sizes and often appears sans-like. */
- --font-serif:
- 'Lora Variable', 'Lora', 'Source Serif Pro', 'Source Serif 4',
- 'Noto Serif SC', 'Noto Serif TC', 'Noto Serif JP', 'Noto Serif KR',
- 'Source Han Serif SC', 'Source Han Serif TC', 'Source Han Serif',
- 'Songti SC', 'STSong', 'STSongti-SC-Regular', 'PingFang SC', 'SimSun',
- 'NSimSun', '宋体', 'FangSong', '仿宋', 'KaiTi', '楷体', Georgia,
- 'Times New Roman', Cambria, 'Liberation Serif', serif;
--font-inter:
-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu',
'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
@@ -91,29 +78,23 @@ For commercial licensing, please contact support@quantumnous.com
}
:root {
- --radius: 1rem;
+ --radius: 0.85rem;
--app-header-height: 3rem;
- /* Static build-channel fallback consumed when JS hasn't booted yet. */
- --app-rev: '2k6e8r7p';
- /* Currently active body font. The font axis swaps this between
- * `--font-sans` and `--font-serif` via `[data-theme-font='...']` blocks
- * in theme-presets.css. Default mirrors `--font-sans` so behavior is
- * identical when no font preference is set. */
--font-body: var(--font-sans);
- --background: oklch(1 0 0);
- --foreground: oklch(0.145 0 0);
- --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.13 0 0);
- --primary-foreground: oklch(0.985 0 0);
- --secondary: oklch(0.95 0 0);
- --secondary-foreground: oklch(0.145 0 0);
- --muted: oklch(0.97 0 0);
- --muted-foreground: oklch(0.49 0 0);
- --accent: oklch(0.95 0 0);
- --accent-foreground: oklch(0.145 0 0);
+ --background: oklch(0.985 0.008 78);
+ --foreground: oklch(0.285 0.018 48);
+ --card: oklch(0.995 0.006 78);
+ --card-foreground: oklch(0.285 0.018 48);
+ --popover: oklch(0.995 0.006 78);
+ --popover-foreground: oklch(0.285 0.018 48);
+ --primary: oklch(0.46 0.07 43);
+ --primary-foreground: oklch(0.985 0.004 80);
+ --secondary: oklch(0.944 0.015 70);
+ --secondary-foreground: oklch(0.33 0.018 46);
+ --muted: oklch(0.957 0.012 74);
+ --muted-foreground: oklch(0.5 0.015 52);
+ --accent: oklch(0.938 0.021 58);
+ --accent-foreground: oklch(0.33 0.018 46);
--destructive: oklch(0.577 0.245 27.325);
--destructive-foreground: oklch(0.985 0 0);
--success: oklch(0.596 0.145 163.225);
@@ -122,26 +103,26 @@ For commercial licensing, please contact support@quantumnous.com
--warning-foreground: oklch(0.145 0 0);
--info: oklch(0.588 0.158 241.966);
--info-foreground: oklch(0.985 0 0);
- --neutral: oklch(0.708 0 0);
- --neutral-foreground: oklch(0.145 0 0);
- --border: oklch(0.93 0 0);
- --input: oklch(0.93 0 0);
- --ring: oklch(0.708 0 0);
+ --neutral: oklch(0.68 0.01 54);
+ --neutral-foreground: oklch(0.285 0.018 48);
+ --border: oklch(0.905 0.015 68);
+ --input: oklch(0.89 0.015 68);
+ --ring: oklch(0.59 0.04 50);
--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.975 0 0);
- --sidebar-foreground: oklch(0.145 0 0);
- --sidebar-primary: oklch(0.13 0 0);
- --sidebar-primary-foreground: oklch(0.985 0 0);
- --sidebar-accent: oklch(0.92 0 0);
- --sidebar-accent-foreground: oklch(0.145 0 0);
- --sidebar-border: oklch(0.93 0 0);
- --sidebar-ring: oklch(0.708 0 0);
- --skeleton-base: oklch(0.97 0 0);
- --skeleton-highlight: oklch(0.985 0 0);
+ --sidebar: oklch(0.968 0.012 74);
+ --sidebar-foreground: oklch(0.29 0.018 48);
+ --sidebar-primary: oklch(0.5 0.07 43);
+ --sidebar-primary-foreground: oklch(0.985 0.004 80);
+ --sidebar-accent: oklch(0.928 0.022 62);
+ --sidebar-accent-foreground: oklch(0.31 0.018 46);
+ --sidebar-border: oklch(0.9 0.016 68);
+ --sidebar-ring: oklch(0.59 0.04 50);
+ --skeleton-base: oklch(0.95 0.01 72);
+ --skeleton-highlight: oklch(0.985 0.005 76);
--table-row: var(--background);
--table-header: color-mix(
in oklch,
@@ -171,20 +152,20 @@ For commercial licensing, please contact support@quantumnous.com
}
.dark {
- /* OpenAI-like dark mode with a crisp charcoal canvas. */
- --background: oklch(0.235 0 0);
+ /* OpenAI-like dark mode: nearly black chrome, readable raised surfaces. */
+ --background: oklch(0.185 0 0);
--foreground: oklch(0.965 0 0);
- --card: oklch(0.285 0 0);
+ --card: oklch(0.235 0 0);
--card-foreground: oklch(0.965 0 0);
- --popover: oklch(0.305 0 0);
+ --popover: oklch(0.255 0 0);
--popover-foreground: oklch(0.965 0 0);
--primary: oklch(0.965 0 0);
- --primary-foreground: oklch(0.155 0 0);
- --secondary: oklch(0.335 0 0);
+ --primary-foreground: oklch(0.145 0 0);
+ --secondary: oklch(0.285 0 0);
--secondary-foreground: oklch(0.965 0 0);
- --muted: oklch(0.305 0 0);
- --muted-foreground: oklch(0.78 0 0);
- --accent: oklch(0.365 0 0);
+ --muted: oklch(0.255 0 0);
+ --muted-foreground: oklch(0.76 0 0);
+ --accent: oklch(0.325 0 0);
--accent-foreground: oklch(0.985 0 0);
--destructive: oklch(0.704 0.191 22.216);
--destructive-foreground: oklch(0.985 0 0);
@@ -195,25 +176,25 @@ For commercial licensing, please contact support@quantumnous.com
--info: oklch(0.68 0.17 237.323);
--info-foreground: oklch(0.145 0 0);
--neutral: oklch(0.76 0 0);
- --neutral-foreground: oklch(0.155 0 0);
- --border: oklch(1 0 0 / 10%);
- --input: oklch(1 0 0 / 17%);
+ --neutral-foreground: oklch(0.145 0 0);
+ --border: oklch(1 0 0 / 9%);
+ --input: oklch(1 0 0 / 16%);
--ring: oklch(0.68 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.225 0 0);
+ --sidebar: oklch(0.115 0 0);
--sidebar-foreground: oklch(0.95 0 0);
--sidebar-primary: oklch(0.965 0 0);
- --sidebar-primary-foreground: oklch(0.155 0 0);
- --sidebar-accent: oklch(0.355 0 0);
+ --sidebar-primary-foreground: oklch(0.145 0 0);
+ --sidebar-accent: oklch(0.31 0 0);
--sidebar-accent-foreground: oklch(0.985 0 0);
- --sidebar-border: oklch(1 0 0 / 11%);
+ --sidebar-border: oklch(1 0 0 / 10%);
--sidebar-ring: oklch(0.68 0 0);
- --skeleton-base: oklch(0.335 0 0);
- --skeleton-highlight: oklch(0.44 0 0);
+ --skeleton-base: oklch(0.285 0 0);
+ --skeleton-highlight: oklch(0.39 0 0);
--table-row: var(--background);
--table-header: color-mix(in oklch, var(--foreground) 6%, var(--background));
--table-header-hover: color-mix(