|
|
@@ -57,7 +57,7 @@
|
|
|
|
|
|
body {
|
|
|
font-family: var(--font-sans);
|
|
|
- background: var(--terminal-bg);
|
|
|
+ background: linear-gradient(180deg, #E8EDF2 0%, #F5F7FA 100%);
|
|
|
color: var(--terminal-fg);
|
|
|
height: 100vh;
|
|
|
overflow: hidden;
|
|
|
@@ -71,14 +71,16 @@ body {
|
|
|
background: var(--terminal-bg);
|
|
|
}
|
|
|
|
|
|
-/* 顶部导航栏 */
|
|
|
+/* 顶部导航栏 — 毛玻璃 */
|
|
|
.top-nav {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: space-between;
|
|
|
padding: 12px 20px;
|
|
|
- background: #FFFFFF;
|
|
|
- border-bottom: 1px solid var(--terminal-border);
|
|
|
+ background: rgba(255,255,255,0.85);
|
|
|
+ backdrop-filter: blur(20px);
|
|
|
+ -webkit-backdrop-filter: blur(20px);
|
|
|
+ border-bottom: 1px solid rgba(0,0,0,0.06);
|
|
|
min-height: 56px;
|
|
|
}
|
|
|
|
|
|
@@ -162,8 +164,8 @@ body {
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
overflow: hidden;
|
|
|
- background: var(--terminal-bg);
|
|
|
- padding: 16px 20px;
|
|
|
+ background: transparent;
|
|
|
+ padding: 12px 16px;
|
|
|
position: relative;
|
|
|
}
|
|
|
|
|
|
@@ -233,18 +235,23 @@ body {
|
|
|
flex: 1;
|
|
|
}
|
|
|
|
|
|
-/* 结果输出 */
|
|
|
+/* 结果输出 — 卡片化 */
|
|
|
.result-line {
|
|
|
display: flex;
|
|
|
gap: 8px;
|
|
|
- padding: 12px 16px;
|
|
|
- margin: 8px 0 8px 0;
|
|
|
+ padding: 14px 18px;
|
|
|
+ margin: 10px 0;
|
|
|
background: #FFFFFF;
|
|
|
- border-left: 3px solid var(--success-color);
|
|
|
- border-radius: 4px;
|
|
|
+ border-left: 4px solid var(--success-color);
|
|
|
+ border-radius: 12px;
|
|
|
color: var(--terminal-fg);
|
|
|
word-break: break-word;
|
|
|
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
|
|
+ box-shadow: 0 2px 12px rgba(0,0,0,0.06), 0 1px 3px rgba(0,0,0,0.04);
|
|
|
+ animation: cardIn 0.25s cubic-bezier(0.16,1,0.3,1);
|
|
|
+}
|
|
|
+@keyframes cardIn {
|
|
|
+ from { opacity: 0; transform: translateY(8px) scale(0.98); }
|
|
|
+ to { opacity: 1; transform: translateY(0) scale(1); }
|
|
|
}
|
|
|
|
|
|
.result-prompt {
|
|
|
@@ -256,15 +263,17 @@ body {
|
|
|
|
|
|
.result-text {
|
|
|
flex: 1;
|
|
|
+ font-variant-numeric: tabular-nums;
|
|
|
+ letter-spacing: 0.01em;
|
|
|
}
|
|
|
|
|
|
/* 错误输出 */
|
|
|
.error-line {
|
|
|
padding: 12px 16px;
|
|
|
- margin: 8px 0 8px 0;
|
|
|
+ margin: 10px 0;
|
|
|
background: var(--error-light);
|
|
|
- border-left: 3px solid var(--error-color);
|
|
|
- border-radius: 4px;
|
|
|
+ border-left: 4px solid var(--error-color);
|
|
|
+ border-radius: 12px;
|
|
|
color: var(--error-color);
|
|
|
word-break: break-word;
|
|
|
}
|
|
|
@@ -272,10 +281,10 @@ body {
|
|
|
/* 信息输出 */
|
|
|
.info-line {
|
|
|
padding: 12px 16px;
|
|
|
- margin: 8px 0 8px 0;
|
|
|
+ margin: 10px 0;
|
|
|
background: var(--primary-light);
|
|
|
- border-left: 3px solid var(--primary-color);
|
|
|
- border-radius: 4px;
|
|
|
+ border-left: 4px solid var(--primary-color);
|
|
|
+ border-radius: 12px;
|
|
|
color: var(--primary-dark);
|
|
|
word-break: break-word;
|
|
|
white-space: pre-wrap;
|
|
|
@@ -359,22 +368,23 @@ body {
|
|
|
background: #2E7D32;
|
|
|
}
|
|
|
|
|
|
-/* 终端输入行 */
|
|
|
+/* 终端输入行 — 胶囊形 */
|
|
|
.terminal-input-line {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
gap: 12px;
|
|
|
- padding: 12px 16px;
|
|
|
+ padding: 10px 10px 10px 18px;
|
|
|
background: #FFFFFF;
|
|
|
- border: 2px solid var(--terminal-border);
|
|
|
- border-radius: 8px;
|
|
|
- margin-top: 16px;
|
|
|
- transition: border-color 0.2s;
|
|
|
+ border: 1.5px solid rgba(0,0,0,0.08);
|
|
|
+ border-radius: 28px;
|
|
|
+ margin-top: 12px;
|
|
|
+ box-shadow: 0 4px 20px rgba(0,0,0,0.06), 0 1px 3px rgba(0,0,0,0.04);
|
|
|
+ transition: all 0.25s cubic-bezier(0.16,1,0.3,1);
|
|
|
}
|
|
|
-
|
|
|
.terminal-input-line:focus-within {
|
|
|
border-color: var(--primary-color);
|
|
|
- box-shadow: 0 0 0 3px rgba(25, 118, 210, 0.1);
|
|
|
+ box-shadow: 0 4px 24px rgba(25,118,210,0.15), 0 1px 3px rgba(25,118,210,0.08);
|
|
|
+ transform: translateY(-1px);
|
|
|
}
|
|
|
|
|
|
.terminal-prompt {
|
|
|
@@ -495,22 +505,18 @@ body {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: flex-start;
|
|
|
- padding: 12px 20px;
|
|
|
- background: #FFFFFF;
|
|
|
- border-top: 1px solid var(--terminal-border);
|
|
|
+ padding: 10px 20px;
|
|
|
+ background: rgba(255,255,255,0.85);
|
|
|
+ backdrop-filter: blur(20px);
|
|
|
+ -webkit-backdrop-filter: blur(20px);
|
|
|
+ border-top: 1px solid rgba(0,0,0,0.04);
|
|
|
gap: 8px;
|
|
|
overflow-x: auto;
|
|
|
}
|
|
|
|
|
|
-.mdc-elevation--z2 {
|
|
|
- box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2),
|
|
|
- 0 2px 2px 0 rgba(0, 0, 0, 0.14),
|
|
|
- 0 1px 5px 0 rgba(0, 0, 0, 0.12);
|
|
|
-}
|
|
|
-
|
|
|
.shortcuts-group {
|
|
|
display: flex;
|
|
|
- gap: 8px;
|
|
|
+ gap: 6px;
|
|
|
flex-shrink: 0;
|
|
|
}
|
|
|
|
|
|
@@ -519,25 +525,24 @@ body {
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
min-width: 36px;
|
|
|
- height: 36px;
|
|
|
- padding: 0 12px;
|
|
|
- border: 1px solid var(--terminal-border);
|
|
|
- border-radius: 6px;
|
|
|
- background: #FAFAFA;
|
|
|
- color: var(--terminal-fg);
|
|
|
+ height: 34px;
|
|
|
+ padding: 0 14px;
|
|
|
+ border: none;
|
|
|
+ border-radius: 17px;
|
|
|
+ background: rgba(0,0,0,0.04);
|
|
|
+ color: #546E7A;
|
|
|
font-family: var(--font-mono);
|
|
|
font-size: 14px;
|
|
|
font-weight: 500;
|
|
|
cursor: pointer;
|
|
|
- transition: all 0.2s;
|
|
|
+ transition: all 0.2s cubic-bezier(0.16,1,0.3,1);
|
|
|
}
|
|
|
-
|
|
|
.shortcut-btn:hover {
|
|
|
- background: var(--primary-light);
|
|
|
- border-color: var(--primary-color);
|
|
|
- color: var(--primary-dark);
|
|
|
+ background: var(--primary-color);
|
|
|
+ color: #FFFFFF;
|
|
|
+ transform: translateY(-1px);
|
|
|
+ box-shadow: 0 4px 12px rgba(25,118,210,0.25);
|
|
|
}
|
|
|
-
|
|
|
.shortcut-btn:active {
|
|
|
transform: scale(0.95);
|
|
|
}
|