补齐缺失文件

This commit is contained in:
chuzhongzai 2026-07-11 15:15:55 +08:00
parent 826b080da0
commit 1542369770

175
src/styles/theme.css Normal file
View File

@ -0,0 +1,175 @@
/* ========== CSS Custom Properties ========== */
:root {
--bg-body: #f0f2f5;
--bg-surface: #ffffff;
--bg-card: #ffffff;
--bg-hover: #f5f7fa;
--text-primary: #1d2129;
--text-secondary: #86909c;
--text-disabled: #c9cdd4;
--border-color: #e5e6eb;
--border-radius: 8px;
--border-radius-sm: 4px;
--shadow-card: 0 1px 4px rgba(0, 0, 0, 0.08);
--shadow-elevated: 0 4px 16px rgba(0, 0, 0, 0.12);
--transition-fast: 0.2s ease;
--transition-normal: 0.3s ease;
}
html.dark {
--bg-body: #1a1a2e;
--bg-surface: #16213e;
--bg-card: #1a1a2e;
--bg-hover: #1f2b47;
--text-primary: #e5e6eb;
--text-secondary: #8b95a5;
--text-disabled: #4e5969;
--border-color: #2c3e50;
--shadow-card: 0 1px 4px rgba(0, 0, 0, 0.3);
--shadow-elevated: 0 4px 16px rgba(0, 0, 0, 0.4);
}
/* ========== Global Base ========== */
body {
margin: 0;
padding: 0;
background-color: var(--bg-body);
color: var(--text-primary);
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-size: 16px;
transition: background-color var(--transition-normal), color var(--transition-normal);
}
#app {
min-height: 100vh;
background-color: var(--bg-body);
transition: background-color var(--transition-normal);
}
/* ========== Auth Screen ========== */
.auth-container {
position: fixed;
inset: 0;
z-index: 1000;
display: flex;
justify-content: center;
align-items: center;
background: var(--bg-body);
}
.auth-card {
background: var(--bg-surface);
border-radius: 16px;
box-shadow: var(--shadow-elevated);
padding: 56px 48px 44px;
width: 440px;
max-width: 90vw;
text-align: center;
}
.auth-card h1 {
margin: 0 0 8px;
font-size: 32px;
font-weight: 700;
color: var(--text-primary);
}
.auth-card .auth-subtitle {
margin: 0 0 36px;
font-size: 15px;
color: var(--text-secondary);
}
.auth-card .auth-form {
display: flex;
flex-direction: column;
gap: 18px;
}
.auth-card .auth-btn {
width: 100%;
font-size: 15px;
padding: 12px 0;
}
/* ========== Dashboard Grid ========== */
.dashboard {
padding: 24px;
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 16px;
height: 100%;
overflow: hidden;
box-sizing: border-box;
}
.control-card {
background: var(--bg-card);
border-radius: var(--border-radius);
box-shadow: var(--shadow-card);
padding: 24px;
transition: box-shadow var(--transition-fast);
align-self: start;
}
.control-card:hover {
box-shadow: var(--shadow-elevated);
}
.card-wide {
grid-column: 1 / -1;
}
.control-card h3 {
margin: 0 0 16px;
font-size: 13px;
font-weight: 600;
color: var(--text-secondary);
text-transform: uppercase;
letter-spacing: 0.5px;
}
.control-card .card-row {
display: flex;
flex-wrap: wrap;
gap: 12px;
align-items: center;
}
.control-card .usage-text {
font-size: 15px;
color: var(--text-primary);
line-height: 1.6;
}
.control-card .thumbnail-body {
text-align: center;
}
.control-card .gallery-name {
margin: 0 0 12px;
font-size: 14px;
color: var(--text-secondary);
word-break: break-all;
}
/* ========== Element Plus Overrides ========== */
/* increase default button/input text size */
.el-button--small {
font-size: 13px;
}
.el-select {
font-size: 13px;
}
.el-input__inner {
font-size: 14px;
}
.el-table {
font-size: 14px;
}