Add files via upload

This commit is contained in:
公明
2026-06-01 17:35:41 +08:00
committed by GitHub
parent 25464a68e6
commit be59ddcab6
4 changed files with 134 additions and 23 deletions
+121 -20
View File
@@ -9,6 +9,10 @@
--secondary-color: #2d2d2d;
--accent-color: #0066ff;
--accent-hover: #0052cc;
--brand-core: #141824;
--brand-ai-start: #0066ff;
--brand-ai-end: #7c3aed;
--brand-gradient: linear-gradient(135deg, var(--brand-ai-start) 0%, var(--brand-ai-end) 100%);
--bg-primary: #ffffff;
--bg-secondary: #f8f9fa;
--bg-tertiary: #f1f3f5;
@@ -125,11 +129,19 @@ body {
color: var(--text-primary);
}
.main-sidebar-header .logo span {
.main-sidebar-header .logo span,
.main-sidebar-header .brand-wordmark {
font-size: 1.25rem;
font-weight: 600;
letter-spacing: -0.3px;
color: var(--text-primary);
font-weight: 700;
letter-spacing: -0.04em;
color: var(--brand-core);
}
.main-sidebar-header .brand-wordmark__ai {
background: var(--brand-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.main-sidebar-nav {
@@ -592,37 +604,89 @@ header {
.logo {
display: flex;
align-items: center;
gap: 12px;
gap: 10px;
}
.logo svg {
color: var(--accent-color);
}
.logo h1 {
/* 品牌字标:CyberStrike + AI 渐变 */
.brand-wordmark {
display: inline-flex;
align-items: baseline;
margin: 0;
font-size: 1.375rem;
font-weight: 700;
letter-spacing: -0.04em;
line-height: 1;
white-space: nowrap;
}
.brand-wordmark--lg {
font-size: 1.5rem;
font-weight: 600;
letter-spacing: -0.5px;
}
.brand-wordmark--sm {
font-size: 1.25rem;
}
.brand-wordmark__core {
color: var(--brand-core);
}
.brand-wordmark__ai {
background: var(--brand-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
font-weight: 800;
}
.brand-logo {
width: 36px;
height: 36px;
border-radius: 10px;
box-shadow: 0 2px 10px rgba(0, 102, 255, 0.18);
flex-shrink: 0;
object-fit: cover;
}
.logo h1,
.logo .brand-wordmark {
font-size: 1.375rem;
}
.header-logo-link {
cursor: pointer;
transition: opacity 0.2s ease;
transition: transform 0.2s ease, opacity 0.2s ease;
}
.header-logo-link:hover {
opacity: 0.85;
opacity: 1;
transform: translateY(-1px);
}
.header-logo-link:hover .brand-logo {
box-shadow: 0 4px 14px rgba(0, 102, 255, 0.28);
}
.version-badge {
display: inline-block;
margin-left: 6px;
font-size: 0.6875rem;
font-weight: 400;
color: var(--text-muted);
letter-spacing: 0.02em;
vertical-align: 0.35em;
display: inline-flex;
align-items: center;
margin-left: 4px;
padding: 3px 9px;
font-size: 0.625rem;
font-weight: 600;
font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
color: var(--brand-ai-start);
background: linear-gradient(135deg, rgba(0, 102, 255, 0.08) 0%, rgba(124, 58, 237, 0.08) 100%);
border: 1px solid rgba(0, 102, 255, 0.22);
border-radius: 999px;
letter-spacing: 0.04em;
vertical-align: middle;
user-select: none;
line-height: 1.4;
}
.header-right {
@@ -3091,10 +3155,36 @@ header {
.login-brand {
padding: 32px 28px 24px;
text-align: center;
background: linear-gradient(180deg, rgba(0, 102, 255, 0.06) 0%, transparent 100%);
background: linear-gradient(180deg, rgba(0, 102, 255, 0.07) 0%, rgba(124, 58, 237, 0.04) 50%, transparent 100%);
border-bottom: 1px solid var(--border-color);
}
.login-brand-logo {
width: 56px;
height: 56px;
margin: 0 auto 16px;
border-radius: 14px;
box-shadow: 0 6px 20px rgba(0, 102, 255, 0.2);
object-fit: cover;
}
.login-title {
margin: 0;
display: flex;
flex-wrap: wrap;
align-items: baseline;
justify-content: center;
gap: 0.35em;
font-size: 1.25rem;
font-weight: 500;
color: var(--text-secondary);
letter-spacing: -0.01em;
}
.login-title .brand-wordmark {
font-size: 1.375rem;
}
.login-brand h2 {
margin: 0;
font-size: 1.375rem;
@@ -3530,8 +3620,19 @@ header {
flex-shrink: 0;
}
.logo h1 {
font-size: 1.25rem;
.logo h1,
.logo .brand-wordmark {
font-size: 1.2rem;
}
.brand-logo {
width: 32px;
height: 32px;
}
.version-badge {
padding: 2px 7px;
font-size: 0.5625rem;
}
.header-subtitle {
+1
View File
@@ -48,6 +48,7 @@
},
"login": {
"title": "Sign in to CyberStrikeAI",
"titlePrefix": "Sign in to",
"subtitle": "Enter the access password from config",
"passwordLabel": "Password",
"passwordPlaceholder": "Enter password",
+1
View File
@@ -48,6 +48,7 @@
},
"login": {
"title": "登录 CyberStrikeAI",
"titlePrefix": "登录",
"subtitle": "请输入配置中的访问密码",
"passwordLabel": "密码",
"passwordPlaceholder": "输入登录密码",
+11 -3
View File
@@ -14,7 +14,13 @@
<div id="login-overlay" class="login-overlay" style="display: none;">
<div class="login-card">
<div class="login-brand">
<h2 data-i18n="login.title">登录 CyberStrikeAI</h2>
<img src="/static/logo.png" alt="" class="login-brand-logo" width="56" height="56">
<h2 class="login-title">
<span data-i18n="login.titlePrefix">登录</span>
<span class="brand-wordmark brand-wordmark--sm" aria-label="CyberStrikeAI">
<span class="brand-wordmark__core">CyberStrike</span><span class="brand-wordmark__ai">AI</span>
</span>
</h2>
<p class="login-subtitle" data-i18n="login.subtitle">请输入配置中的访问密码</p>
</div>
<form id="login-form" class="login-form">
@@ -34,8 +40,10 @@
<header>
<div class="header-content">
<div class="logo header-logo-link" onclick="switchPage('dashboard')" role="button" data-i18n="header.backToDashboard" data-i18n-attr="title" data-i18n-skip-text="true" title="返回仪表盘">
<img src="/static/logo.png" alt="CyberStrikeAI Logo" style="width: 32px; height: 32px; margin-right: 8px;">
<h1>CyberStrikeAI</h1>
<img src="/static/logo.png" alt="CyberStrikeAI Logo" class="brand-logo" width="36" height="36">
<h1 class="brand-wordmark brand-wordmark--lg">
<span class="brand-wordmark__core">CyberStrike</span><span class="brand-wordmark__ai">AI</span>
</h1>
<span class="version-badge" data-i18n="header.version" data-i18n-attr="title" data-i18n-skip-text="true" title="当前版本">{{.Version}}</span>
</div>
<div class="header-right">