#983/#984 amber 金暖白设计语言:globals.css 主色令牌 indigo->amber + 3处硬编码色修正
This commit is contained in:
1 parent
8f57956904
commit
6f192a89cf
4 files changed
+69
-69
No files matched your search
@@ -18,7 +18,7 @@ import type { MarketApp } from '@/api/client';
|
|||||||
|
|
||||||
export function AppServices() {
|
export function AppServices() {
|
||||||
const { data: rawApps, isLoading } = useMyApps();
|
const { data: rawApps, isLoading } = useMyApps();
|
||||||
const apps: MarketApp[] = Array.isArray(rawApps) ? rawApps : (rawApps?.data ?? rawApps?.items ?? []);
|
const apps: MarketApp[] = Array.isArray(rawApps) ? rawApps : (((rawApps as any)?.data ?? (rawApps as any)?.items) ?? []);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="space-y-6">
|
<div className="space-y-6">
|
||||||
@@ -52,11 +52,11 @@ export function AppServices() {
|
|||||||
<Card key={app.id} className="hover:shadow-md transition-shadow">
|
<Card key={app.id} className="hover:shadow-md transition-shadow">
|
||||||
<CardContent className="p-5">
|
<CardContent className="p-5">
|
||||||
<div className="flex items-start justify-between mb-3">
|
<div className="flex items-start justify-between mb-3">
|
||||||
<div className="w-10 h-10 rounded-lg bg-blue-50 flex items-center justify-center">
|
<div className="w-10 h-10 rounded-lg bg-primary/10 flex items-center justify-center">
|
||||||
{app.type === 'standalone' ? (
|
{app.type === 'standalone' ? (
|
||||||
<Globe size={20} className="text-blue-600" />
|
<Globe size={20} className="text-primary" />
|
||||||
) : (
|
) : (
|
||||||
<Monitor size={20} className="text-purple-600" />
|
<Monitor size={20} className="text-primary" />
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
<div className="flex items-center gap-2">
|
<div className="flex items-center gap-2">
|
||||||
|
|||||||
@@ -140,8 +140,8 @@ export function KnowledgePage() {
|
|||||||
<Card key={kb.id} className="hover:shadow-md transition-shadow">
|
<Card key={kb.id} className="hover:shadow-md transition-shadow">
|
||||||
<CardContent className="p-5">
|
<CardContent className="p-5">
|
||||||
<div className="flex items-start justify-between mb-3">
|
<div className="flex items-start justify-between mb-3">
|
||||||
<div className="w-10 h-10 rounded-lg bg-blue-50 flex items-center justify-center">
|
<div className="w-10 h-10 rounded-lg bg-primary/10 flex items-center justify-center">
|
||||||
<Database size={20} className="text-blue-600" />
|
<Database size={20} className="text-primary" />
|
||||||
</div>
|
</div>
|
||||||
<Badge variant={kb.status === 'active' ? 'success' : 'secondary'}>
|
<Badge variant={kb.status === 'active' ? 'success' : 'secondary'}>
|
||||||
{kb.status === 'active' ? '运行中' : kb.status === 'building' ? '构建中' : '异常'}
|
{kb.status === 'active' ? '运行中' : kb.status === 'building' ? '构建中' : '异常'}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ export function LoginPage() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="min-h-screen bg-gradient-to-br from-slate-50 to-slate-100 dark:from-slate-950 dark:to-slate-900 flex items-center justify-center p-4">
|
<div className="min-h-screen bg-gradient-to-br from-amber-50 via-orange-50 to-amber-100/60 dark:from-[#1C1814] dark:via-[#221C15] dark:to-[#2A2118] flex items-center justify-center p-4">
|
||||||
<div className="w-full max-w-md">
|
<div className="w-full max-w-md">
|
||||||
{/* Logo */}
|
{/* Logo */}
|
||||||
<div className="text-center mb-8">
|
<div className="text-center mb-8">
|
||||||
|
|||||||
@@ -50,41 +50,41 @@
|
|||||||
|
|
||||||
:root {
|
:root {
|
||||||
/* --- Tailwind shadcn/ui 变量 --- */
|
/* --- Tailwind shadcn/ui 变量 --- */
|
||||||
--background: #F8F9FB;
|
--background: #FFFBF5;
|
||||||
--foreground: #101214;
|
--foreground: #2A2018;
|
||||||
--card: #FFFFFF;
|
--card: #FFFFFF;
|
||||||
--card-foreground: #101214;
|
--card-foreground: #2A2018;
|
||||||
--primary: #5B5FED;
|
--primary: #D97706;
|
||||||
--primary-foreground: #FFFFFF;
|
--primary-foreground: #FFFFFF;
|
||||||
--secondary: #F1F3F7;
|
--secondary: #F7F1E8;
|
||||||
--secondary-foreground: #101214;
|
--secondary-foreground: #2A2018;
|
||||||
--muted: #F1F3F7;
|
--muted: #F7F1E8;
|
||||||
--muted-foreground: #8B919E;
|
--muted-foreground: #9A8B76;
|
||||||
--accent: #5B5FED;
|
--accent: #D97706;
|
||||||
--accent-foreground: #FFFFFF;
|
--accent-foreground: #FFFFFF;
|
||||||
--destructive: #D9383A;
|
--destructive: #D9383A;
|
||||||
--destructive-foreground: #FFFFFF;
|
--destructive-foreground: #FFFFFF;
|
||||||
--border: #E3E6EB;
|
--border: #ECE3D6;
|
||||||
--input: #E3E6EB;
|
--input: #ECE3D6;
|
||||||
--ring: #5B5FED;
|
--ring: #D97706;
|
||||||
|
|
||||||
/* --- 旧版变量 (兼容旧页面) --- */
|
/* --- 旧版变量 (兼容旧页面) --- */
|
||||||
--color-bg-primary: #F8F9FB;
|
--color-bg-primary: #FFFBF5;
|
||||||
--color-bg-secondary: #FFFFFF;
|
--color-bg-secondary: #FFFFFF;
|
||||||
--color-bg-tertiary: #F1F3F7;
|
--color-bg-tertiary: #F7F1E8;
|
||||||
--color-bg-hover: #EBEEF3;
|
--color-bg-hover: #F2E9DB;
|
||||||
--color-bg-active: #E3E7F0;
|
--color-bg-active: #F0E4D0;
|
||||||
|
|
||||||
--color-text-primary: #101214;
|
--color-text-primary: #2A2018;
|
||||||
--color-text-secondary: #545A65;
|
--color-text-secondary: #6B5D49;
|
||||||
--color-text-tertiary: #8B919E;
|
--color-text-tertiary: #9A8B76;
|
||||||
--color-text-disabled: #BFC4CE;
|
--color-text-disabled: #C4B8A4;
|
||||||
--color-text-inverse: #FFFFFF;
|
--color-text-inverse: #FFFFFF;
|
||||||
|
|
||||||
--color-accent: #5B5FED;
|
--color-accent: #D97706;
|
||||||
--color-accent-hover: #4A4ECC;
|
--color-accent-hover: #B45309;
|
||||||
--color-accent-light: #EEEDFF;
|
--color-accent-light: #FEF3C7;
|
||||||
--color-accent-subtle: #F6F5FF;
|
--color-accent-subtle: #FFFBEB;
|
||||||
|
|
||||||
--color-success: #219B5E;
|
--color-success: #219B5E;
|
||||||
--color-success-light: #E6F7EE;
|
--color-success-light: #E6F7EE;
|
||||||
@@ -99,9 +99,9 @@
|
|||||||
--color-border-light: #EEF0F4;
|
--color-border-light: #EEF0F4;
|
||||||
--color-border-hover: #CDD2DA;
|
--color-border-hover: #CDD2DA;
|
||||||
|
|
||||||
--color-sidebar-bg: #F5F6F9;
|
--color-sidebar-bg: #FBF7F0;
|
||||||
--color-sidebar-hover: #EAECF2;
|
--color-sidebar-hover: #F4ECDD;
|
||||||
--color-sidebar-active: #E1E3F0;
|
--color-sidebar-active: #F0E4D0;
|
||||||
|
|
||||||
/* --- 阴影 --- */
|
/* --- 阴影 --- */
|
||||||
--shadow-xs: 0 1px 2px rgba(0,0,0,0.04);
|
--shadow-xs: 0 1px 2px rgba(0,0,0,0.04);
|
||||||
@@ -147,43 +147,43 @@
|
|||||||
/* ═══════════════════════════════════════════════════════════════════════════ */
|
/* ═══════════════════════════════════════════════════════════════════════════ */
|
||||||
|
|
||||||
.dark, [data-theme="dark"] {
|
.dark, [data-theme="dark"] {
|
||||||
--background: #0f172a;
|
--background: #1C1814;
|
||||||
--foreground: #f8fafc;
|
--foreground: #F5EFE6;
|
||||||
--card: #1e293b;
|
--card: #272019;
|
||||||
--card-foreground: #f8fafc;
|
--card-foreground: #F5EFE6;
|
||||||
--primary: #818cf8;
|
--primary: #F59E0B;
|
||||||
--primary-foreground: #0f172a;
|
--primary-foreground: #1C1814;
|
||||||
--secondary: #1e293b;
|
--secondary: #2E281F;
|
||||||
--secondary-foreground: #f8fafc;
|
--secondary-foreground: #F5EFE6;
|
||||||
--muted: #1e293b;
|
--muted: #2E281F;
|
||||||
--muted-foreground: #94a3b8;
|
--muted-foreground: #A9967E;
|
||||||
--accent: #818cf8;
|
--accent: #F59E0B;
|
||||||
--accent-foreground: #0f172a;
|
--accent-foreground: #1C1814;
|
||||||
--destructive: #f87171;
|
--destructive: #f87171;
|
||||||
--destructive-foreground: #0f172a;
|
--destructive-foreground: #1C1814;
|
||||||
--border: #334155;
|
--border: #3D352A;
|
||||||
--input: #334155;
|
--input: #3D352A;
|
||||||
--ring: #818cf8;
|
--ring: #F59E0B;
|
||||||
|
|
||||||
/* 旧版变量暗色 */
|
/* 旧版变量暗色 */
|
||||||
--color-bg-primary: #0f172a;
|
--color-bg-primary: #1C1814;
|
||||||
--color-bg-secondary: #1e293b;
|
--color-bg-secondary: #272019;
|
||||||
--color-bg-tertiary: #1e293b;
|
--color-bg-tertiary: #2E281F;
|
||||||
--color-bg-hover: #334155;
|
--color-bg-hover: #3D352A;
|
||||||
--color-bg-active: #475569;
|
--color-bg-active: #4D4334;
|
||||||
--color-text-primary: #f8fafc;
|
--color-text-primary: #F5EFE6;
|
||||||
--color-text-secondary: #cbd5e1;
|
--color-text-secondary: #D6C7B3;
|
||||||
--color-text-tertiary: #94a3b8;
|
--color-text-tertiary: #A9967E;
|
||||||
--color-text-disabled: #475569;
|
--color-text-disabled: #5C5240;
|
||||||
--color-accent: #818cf8;
|
--color-accent: #F59E0B;
|
||||||
--color-accent-hover: #a5b4fc;
|
--color-accent-hover: #FBBF24;
|
||||||
--color-accent-light: rgba(129,140,248,0.15);
|
--color-accent-light: rgba(245,158,11,0.15);
|
||||||
--color-border: #334155;
|
--color-border: #3D352A;
|
||||||
--color-border-light: #1e293b;
|
--color-border-light: #272019;
|
||||||
--color-border-hover: #475569;
|
--color-border-hover: #4D4334;
|
||||||
--color-sidebar-bg: #1e293b;
|
--color-sidebar-bg: #272019;
|
||||||
--color-sidebar-hover: #334155;
|
--color-sidebar-hover: #3D352A;
|
||||||
--color-sidebar-active: #475569;
|
--color-sidebar-active: #4D4334;
|
||||||
|
|
||||||
--shadow-xs: 0 1px 2px rgba(0,0,0,0.2);
|
--shadow-xs: 0 1px 2px rgba(0,0,0,0.2);
|
||||||
--shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
|
--shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
|
||||||
@@ -369,7 +369,7 @@ input, textarea, select {
|
|||||||
|
|
||||||
.input:focus {
|
.input:focus {
|
||||||
border-color: var(--primary);
|
border-color: var(--primary);
|
||||||
box-shadow: 0 0 0 3px rgba(91,95,237,0.1);
|
box-shadow: 0 0 0 3px rgba(217,119,6,0.1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ═══════════════════════════════════════════════════════════════════════════ */
|
/* ═══════════════════════════════════════════════════════════════════════════ */
|
||||||
|
|||||||
Reference in new issue
Block a user