feat: prepare 2.2.0 with UI and execution fixes
Add dark theme, richer Markdown and readable plugin results. Improve Android input evidence, response integrity and diagnostics. Unify lifecycle, guidance receipts and evidence sources across clients. Keep direct action dispatch without an added AI quota approval layer. Align version metadata at 2.2.0 and bundle Helper 1.2.2. Validation: 3063 backend tests before the version bump; 44 after. Frontend: 317 tests and production build passed.
This commit is contained in:
1 parent
83bcfd54d5
commit
fac4ccb760
146 files changed
+5689
-2033
No files matched your search
+124
-124
@@ -15,9 +15,9 @@
|
||||
*/
|
||||
|
||||
$border-color: rgba(0, 0, 0, 0.08);
|
||||
$text-primary: #1f1f1f;
|
||||
$text-secondary: #71717a;
|
||||
$text-muted: #a1a1aa;
|
||||
$text-primary: var(--app-text-strong, #1f1f1f);
|
||||
$text-secondary: var(--app-text-muted, #71717a);
|
||||
$text-muted: var(--app-text-faint, #a1a1aa);
|
||||
|
||||
:host {
|
||||
display: flex;
|
||||
@@ -32,7 +32,7 @@ $text-muted: #a1a1aa;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: 100%;
|
||||
background: #ffffff;
|
||||
background: var(--app-surface, #ffffff);
|
||||
box-sizing: border-box;
|
||||
|
||||
.chat-header {
|
||||
@@ -43,23 +43,23 @@ $text-muted: #a1a1aa;
|
||||
height: 60px;
|
||||
padding: 0 20px;
|
||||
border-bottom: 1px solid $border-color;
|
||||
background: #ffffff;
|
||||
background: var(--app-surface, #ffffff);
|
||||
box-sizing: border-box;
|
||||
|
||||
.tab-selector-bar {
|
||||
display: flex;
|
||||
height: 36px;
|
||||
box-sizing: border-box;
|
||||
background: rgba(241, 245, 249, 0.72);
|
||||
background: rgb(var(--app-surface-soft-rgb, 241 245 249) / 0.72);
|
||||
backdrop-filter: blur(16px) saturate(180%);
|
||||
-webkit-backdrop-filter: blur(16px) saturate(180%);
|
||||
border: 1px solid rgba(226, 232, 240, 0.85);
|
||||
border: 1px solid rgb(var(--app-border-rgb, 226 232 240) / 0.85);
|
||||
border-radius: 18px;
|
||||
padding: 3px;
|
||||
gap: 3px;
|
||||
align-items: center;
|
||||
flex-shrink: 0;
|
||||
box-shadow: 0 2px 8px -1px rgba(15, 23, 42, 0.04), inset 0 1px 1px rgba(255, 255, 255, 0.8);
|
||||
box-shadow: 0 2px 8px -1px rgba(15, 23, 42, 0.04), inset 0 1px 1px rgb(var(--app-highlight-rgb, 255 255 255) / 0.8);
|
||||
|
||||
.tab-selector-btn {
|
||||
display: inline-flex;
|
||||
@@ -74,7 +74,7 @@ $text-muted: #a1a1aa;
|
||||
border-radius: 15px;
|
||||
font-size: 13px;
|
||||
font-weight: 600;
|
||||
color: #64748b;
|
||||
color: var(--app-text-muted, #64748b);
|
||||
cursor: pointer;
|
||||
line-height: 1;
|
||||
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
@@ -90,13 +90,13 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&:hover:not(.active) {
|
||||
color: #0f172a;
|
||||
background: rgba(255, 255, 255, 0.7);
|
||||
color: var(--app-text-strong, #0f172a);
|
||||
background: rgb(var(--app-surface-rgb, 255 255 255) / 0.7);
|
||||
}
|
||||
|
||||
&.active {
|
||||
background: #ffffff;
|
||||
color: #2563eb;
|
||||
background: var(--app-surface, #ffffff);
|
||||
color: var(--app-primary-text, #2563eb);
|
||||
font-weight: 700;
|
||||
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.02);
|
||||
}
|
||||
@@ -116,7 +116,7 @@ $text-muted: #a1a1aa;
|
||||
background: linear-gradient(135deg, rgba(37, 99, 235, 0.92), rgba(26, 115, 232, 0.85));
|
||||
backdrop-filter: blur(14px) saturate(180%);
|
||||
-webkit-backdrop-filter: blur(14px) saturate(180%);
|
||||
border: 1px solid rgba(255, 255, 255, 0.35);
|
||||
border: 1px solid rgb(var(--app-border-rgb, 255 255 255) / 0.35);
|
||||
border-radius: 16px;
|
||||
font-size: 13.5px;
|
||||
font-weight: 600;
|
||||
@@ -127,7 +127,7 @@ $text-muted: #a1a1aa;
|
||||
gap: 5px;
|
||||
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
margin-right: 8px;
|
||||
box-shadow: 0 4px 14px rgba(37, 99, 235, 0.3), inset 0 1px 1px rgba(255, 255, 255, 0.45);
|
||||
box-shadow: 0 4px 14px rgba(37, 99, 235, 0.3), inset 0 1px 1px rgb(var(--app-highlight-rgb, 255 255 255) / 0.45);
|
||||
|
||||
.material-symbols-outlined {
|
||||
font-size: 16px;
|
||||
@@ -136,8 +136,8 @@ $text-muted: #a1a1aa;
|
||||
|
||||
&:hover {
|
||||
background: linear-gradient(135deg, rgba(37, 99, 235, 1), rgba(26, 115, 232, 0.95));
|
||||
border-color: rgba(255, 255, 255, 0.6);
|
||||
box-shadow: 0 6px 18px rgba(37, 99, 235, 0.42), inset 0 1px 1px rgba(255, 255, 255, 0.6);
|
||||
border-color: rgb(var(--app-border-rgb, 255 255 255) / 0.6);
|
||||
box-shadow: 0 6px 18px rgba(37, 99, 235, 0.42), inset 0 1px 1px rgb(var(--app-highlight-rgb, 255 255 255) / 0.6);
|
||||
transform: translateY(-0.5px);
|
||||
}
|
||||
|
||||
@@ -151,17 +151,17 @@ $text-muted: #a1a1aa;
|
||||
height: 32px;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
background: rgba(255, 255, 255, 0.72);
|
||||
background: rgb(var(--app-surface-rgb, 255 255 255) / 0.72);
|
||||
backdrop-filter: blur(16px) saturate(180%);
|
||||
-webkit-backdrop-filter: blur(16px) saturate(180%);
|
||||
border: 1px solid rgba(203, 213, 225, 0.85);
|
||||
border: 1px solid rgb(var(--app-border-control-rgb, 203 213 225) / 0.85);
|
||||
border-radius: 50%;
|
||||
color: #64748b;
|
||||
color: var(--app-text-muted, #64748b);
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
box-shadow: 0 2px 6px -1px rgba(15, 23, 42, 0.04), inset 0 1px 1px rgba(255, 255, 255, 0.9);
|
||||
box-shadow: 0 2px 6px -1px rgba(15, 23, 42, 0.04), inset 0 1px 1px rgb(var(--app-highlight-rgb, 255 255 255) / 0.9);
|
||||
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
|
||||
.material-symbols-outlined {
|
||||
@@ -170,9 +170,9 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&:hover:not(:disabled) {
|
||||
background: #fef2f2;
|
||||
color: #ef4444;
|
||||
border-color: #fca5a5;
|
||||
background: var(--app-error-soft, #fef2f2);
|
||||
color: var(--app-error-text, #ef4444);
|
||||
border-color: var(--app-error-border, #fca5a5);
|
||||
box-shadow: 0 3px 10px rgba(239, 68, 68, 0.15);
|
||||
transform: scale(1.05);
|
||||
}
|
||||
@@ -192,7 +192,7 @@ $text-muted: #a1a1aa;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 8px;
|
||||
background: #ffffff;
|
||||
background: var(--app-surface, #ffffff);
|
||||
|
||||
&::-webkit-scrollbar {
|
||||
width: 5px;
|
||||
@@ -205,7 +205,7 @@ $text-muted: #a1a1aa;
|
||||
.queue-section-header {
|
||||
font-size: 11.5px;
|
||||
font-weight: 700;
|
||||
color: #475569;
|
||||
color: var(--app-text-secondary, #475569);
|
||||
margin: 6px 0 2px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@@ -221,18 +221,18 @@ $text-muted: #a1a1aa;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background: #f1f5f9;
|
||||
border: 1px dashed #cbd5e1;
|
||||
background: var(--app-surface-soft, #f1f5f9);
|
||||
border: 1px dashed var(--app-border-control, #cbd5e1);
|
||||
border-radius: 8px;
|
||||
padding: 12px;
|
||||
color: #64748b;
|
||||
color: var(--app-text-muted, #64748b);
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.history-section {
|
||||
margin-top: 12px;
|
||||
border-top: 1px solid rgba(226, 232, 240, 0.8);
|
||||
border-top: 1px solid rgb(var(--app-border-rgb, 226 232 240) / 0.8);
|
||||
padding-top: 12px;
|
||||
|
||||
&[open] .history-summary {
|
||||
@@ -242,7 +242,7 @@ $text-muted: #a1a1aa;
|
||||
.history-summary {
|
||||
font-size: 11.5px;
|
||||
font-weight: 700;
|
||||
color: #475569;
|
||||
color: var(--app-text-secondary, #475569);
|
||||
cursor: pointer;
|
||||
outline: none;
|
||||
user-select: none;
|
||||
@@ -265,8 +265,8 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background: #f1f5f9;
|
||||
color: #1e293b;
|
||||
background: var(--app-surface-soft, #f1f5f9);
|
||||
color: var(--app-text-control, #1e293b);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -278,8 +278,8 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
.task-card {
|
||||
background: #ffffff;
|
||||
border: 1px solid rgba(226, 232, 240, 0.8);
|
||||
background: var(--app-surface, #ffffff);
|
||||
border: 1px solid rgb(var(--app-border-rgb, 226 232 240) / 0.8);
|
||||
border-radius: 10px;
|
||||
padding: 10px 12px;
|
||||
display: flex;
|
||||
@@ -292,7 +292,7 @@ $text-muted: #a1a1aa;
|
||||
|
||||
&:hover {
|
||||
transform: translateY(-1px);
|
||||
border-color: rgba(203, 213, 225, 1);
|
||||
border-color: rgb(var(--app-border-control-rgb, 203 213 225) / 1);
|
||||
box-shadow: 0 3px 8px rgba(148, 163, 184, 0.08);
|
||||
|
||||
.task-card-header .task-card-header-actions {
|
||||
@@ -314,7 +314,7 @@ $text-muted: #a1a1aa;
|
||||
&.selected {
|
||||
border-color: #3b82f6;
|
||||
box-shadow: 0 0 0 1px #3b82f6, 0 4px 12px rgba(59, 130, 246, 0.08);
|
||||
background: #ffffff;
|
||||
background: var(--app-surface, #ffffff);
|
||||
}
|
||||
|
||||
&.running {
|
||||
@@ -336,7 +336,7 @@ $text-muted: #a1a1aa;
|
||||
min-width: 0;
|
||||
|
||||
.task-status-group { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; min-width: 0; }
|
||||
.task-origin-badge { display: inline-flex; align-items: center; box-sizing: border-box; height: 20px; padding: 0 6px; border: 1px solid #e2e8f0; border-radius: 5px; background: #f8fafc; color: #64748b; font-size: 11px; line-height: 14px; white-space: nowrap; }
|
||||
.task-origin-badge { display: inline-flex; align-items: center; box-sizing: border-box; height: 20px; padding: 0 6px; border: 1px solid var(--app-border, #e2e8f0); border-radius: 5px; background: var(--app-surface-soft, #f8fafc); color: var(--app-text-muted, #64748b); font-size: 11px; line-height: 14px; white-space: nowrap; }
|
||||
|
||||
.task-badge {
|
||||
flex-shrink: 0;
|
||||
@@ -350,9 +350,9 @@ $text-muted: #a1a1aa;
|
||||
padding: 0 5px;
|
||||
border-radius: 4px;
|
||||
letter-spacing: 0.05em;
|
||||
border: 1px solid #e2e8f0;
|
||||
background: #fafafa;
|
||||
color: #64748b;
|
||||
border: 1px solid var(--app-border, #e2e8f0);
|
||||
background: var(--app-surface-soft, #fafafa);
|
||||
color: var(--app-text-muted, #64748b);
|
||||
|
||||
&::before {
|
||||
content: '';
|
||||
@@ -364,48 +364,48 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&.running {
|
||||
background: #fafafa;
|
||||
color: #1f1f1f;
|
||||
border-color: #1f1f1f;
|
||||
background: var(--app-surface-soft, #fafafa);
|
||||
color: var(--app-text-strong, #1f1f1f);
|
||||
border-color: var(--app-border-control, #1f1f1f);
|
||||
&::before {
|
||||
background-color: #1f1f1f;
|
||||
animation: pulse-black-dot-small 1.5s infinite ease-in-out;
|
||||
}
|
||||
}
|
||||
&.paused {
|
||||
background: #fff7ed;
|
||||
color: #c2410c;
|
||||
border-color: #fdba74;
|
||||
background: var(--app-warning-soft, #fff7ed);
|
||||
color: var(--app-warning-text, #c2410c);
|
||||
border-color: var(--app-warning-border, #fdba74);
|
||||
&::before { background-color: #f97316; }
|
||||
}
|
||||
&.completed {
|
||||
background: #fafafa;
|
||||
color: #1f1f1f;
|
||||
border-color: #e2e8f0;
|
||||
background: var(--app-surface-soft, #fafafa);
|
||||
color: var(--app-text-strong, #1f1f1f);
|
||||
border-color: var(--app-border, #e2e8f0);
|
||||
&::before {
|
||||
background-color: #1f1f1f;
|
||||
}
|
||||
}
|
||||
&.pending {
|
||||
background: #fafafa;
|
||||
color: #64748b;
|
||||
border-color: #e2e8f0;
|
||||
background: var(--app-surface-soft, #fafafa);
|
||||
color: var(--app-text-muted, #64748b);
|
||||
border-color: var(--app-border, #e2e8f0);
|
||||
&::before {
|
||||
background-color: #94a3b8;
|
||||
}
|
||||
}
|
||||
&.failed {
|
||||
background: #fafafa;
|
||||
color: #ef4444;
|
||||
border-color: #fee2e2;
|
||||
background: var(--app-surface-soft, #fafafa);
|
||||
color: var(--app-error-text, #ef4444);
|
||||
border-color: var(--app-error-border, #fee2e2);
|
||||
&::before {
|
||||
background-color: #ef4444;
|
||||
}
|
||||
}
|
||||
&.cancelled {
|
||||
background: #fafafa;
|
||||
color: #d97706;
|
||||
border-color: #fef3c7;
|
||||
background: var(--app-surface-soft, #fafafa);
|
||||
color: var(--app-warning-text, #d97706);
|
||||
border-color: var(--app-warning-border, #fef3c7);
|
||||
&::before {
|
||||
background-color: #f59e0b;
|
||||
}
|
||||
@@ -433,7 +433,7 @@ $text-muted: #a1a1aa;
|
||||
min-width: 0;
|
||||
flex-shrink: 1;
|
||||
font-size: 11px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
line-height: 1;
|
||||
cursor: default;
|
||||
transition: color 0.15s ease, opacity 0.15s ease;
|
||||
@@ -443,7 +443,7 @@ $text-muted: #a1a1aa;
|
||||
width: 12.5px;
|
||||
height: 12.5px;
|
||||
line-height: 12.5px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
opacity: 0.75;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
@@ -458,9 +458,9 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: #64748b;
|
||||
color: var(--app-text-muted, #64748b);
|
||||
.device-icon {
|
||||
color: #64748b;
|
||||
color: var(--app-text-muted, #64748b);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
@@ -477,7 +477,7 @@ $text-muted: #a1a1aa;
|
||||
|
||||
.task-time {
|
||||
font-size: 11.5px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
white-space: nowrap;
|
||||
flex-shrink: 0;
|
||||
line-height: 1;
|
||||
@@ -495,7 +495,7 @@ $text-muted: #a1a1aa;
|
||||
border: none;
|
||||
background: transparent;
|
||||
border-radius: 4px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
cursor: pointer;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
@@ -510,8 +510,8 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&:hover:not(:disabled) {
|
||||
color: #ef4444;
|
||||
background: #fee2e2;
|
||||
color: var(--app-error-text, #ef4444);
|
||||
background: var(--app-error-soft, #fee2e2);
|
||||
}
|
||||
|
||||
&:disabled {
|
||||
@@ -531,7 +531,7 @@ $text-muted: #a1a1aa;
|
||||
border: none;
|
||||
background: transparent;
|
||||
border-radius: 4px;
|
||||
color: #ef4444;
|
||||
color: var(--app-error-text, #ef4444);
|
||||
cursor: pointer;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
@@ -546,8 +546,8 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&:hover:not(:disabled) {
|
||||
color: #dc2626;
|
||||
background: #fee2e2;
|
||||
color: var(--app-error-text, #dc2626);
|
||||
background: var(--app-error-soft, #fee2e2);
|
||||
transform: translateY(-50%) scale(1.1);
|
||||
}
|
||||
|
||||
@@ -572,7 +572,7 @@ $text-muted: #a1a1aa;
|
||||
.task-goal {
|
||||
font-size: 12.5px;
|
||||
font-weight: 500;
|
||||
color: #1e293b;
|
||||
color: var(--app-text-control, #1e293b);
|
||||
line-height: 1.4;
|
||||
word-break: break-word;
|
||||
display: -webkit-box;
|
||||
@@ -587,15 +587,15 @@ $text-muted: #a1a1aa;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
gap: 12px;
|
||||
border-top: 1px solid rgba(241, 245, 249, 0.8);
|
||||
border-top: 1px solid rgb(var(--app-border-rgb, 241 245 249) / 0.8);
|
||||
padding-top: 6px;
|
||||
font-size: 11.5px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
|
||||
.task-id {
|
||||
font-family: 'Fira Code', 'Roboto Mono', Consolas, monospace;
|
||||
font-size: 11px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
@@ -604,14 +604,14 @@ $text-muted: #a1a1aa;
|
||||
transition: color 0.15s ease;
|
||||
|
||||
&:hover {
|
||||
color: #475569;
|
||||
color: var(--app-text-secondary, #475569);
|
||||
}
|
||||
}
|
||||
|
||||
.task-date {
|
||||
flex-shrink: 0;
|
||||
font-size: 11px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -635,7 +635,7 @@ $text-muted: #a1a1aa;
|
||||
.selector-title {
|
||||
font-size: 11px;
|
||||
font-weight: 700;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
letter-spacing: 0.05em;
|
||||
}
|
||||
|
||||
@@ -649,12 +649,12 @@ $text-muted: #a1a1aa;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
padding: 6px 12px;
|
||||
border: 1px solid #e2e8f0;
|
||||
background: #ffffff;
|
||||
border: 1px solid var(--app-border, #e2e8f0);
|
||||
background: var(--app-surface, #ffffff);
|
||||
border-radius: 20px;
|
||||
font-size: 13px;
|
||||
font-weight: 500;
|
||||
color: #475569;
|
||||
color: var(--app-text-secondary, #475569);
|
||||
cursor: pointer;
|
||||
transition: all 0.15s ease;
|
||||
|
||||
@@ -663,15 +663,15 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background: #f8fafc;
|
||||
border-color: #cbd5e1;
|
||||
color: #1e293b;
|
||||
background: var(--app-surface-soft, #f8fafc);
|
||||
border-color: var(--app-border-control, #cbd5e1);
|
||||
color: var(--app-text-control, #1e293b);
|
||||
}
|
||||
|
||||
&.active {
|
||||
background: #eff6ff;
|
||||
border-color: #bfdbfe;
|
||||
color: #1d4ed8;
|
||||
background: var(--app-primary-soft, #eff6ff);
|
||||
border-color: var(--app-primary-border, #bfdbfe);
|
||||
color: var(--app-primary-text, #1d4ed8);
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
@@ -694,8 +694,8 @@ $text-muted: #a1a1aa;
|
||||
width: 52px;
|
||||
height: 52px;
|
||||
border-radius: 50%;
|
||||
background: #f1f5f9;
|
||||
border: 1px solid #e2e8f0;
|
||||
background: var(--app-surface-soft, #f1f5f9);
|
||||
border: 1px solid var(--app-border, #e2e8f0);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
@@ -704,7 +704,7 @@ $text-muted: #a1a1aa;
|
||||
|
||||
.material-symbols-outlined {
|
||||
font-size: 26px;
|
||||
color: #94a3b8;
|
||||
color: var(--app-text-faint, #94a3b8);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -712,14 +712,14 @@ $text-muted: #a1a1aa;
|
||||
font-family: 'Google Sans', 'Google Sans Text', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
font-size: 14px;
|
||||
font-weight: 600;
|
||||
color: #1e293b;
|
||||
color: var(--app-text-control, #1e293b);
|
||||
margin: 0 0 6px 0;
|
||||
}
|
||||
|
||||
.empty-notes-subtitle {
|
||||
font-family: 'Google Sans', 'Google Sans Text', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
font-size: 12.5px;
|
||||
color: #64748b;
|
||||
color: var(--app-text-muted, #64748b);
|
||||
line-height: 1.5;
|
||||
max-width: 240px;
|
||||
margin: 0;
|
||||
@@ -736,7 +736,7 @@ $text-muted: #a1a1aa;
|
||||
.note-title {
|
||||
font-size: 14px;
|
||||
font-weight: 700;
|
||||
color: #1f1f1f;
|
||||
color: var(--app-text-strong, #1f1f1f);
|
||||
margin-top: 0;
|
||||
margin-bottom: 20px;
|
||||
font-family: 'Google Sans', 'Google Sans Text', 'Inter', sans-serif;
|
||||
@@ -744,8 +744,8 @@ $text-muted: #a1a1aa;
|
||||
|
||||
.code-segment {
|
||||
font-family: 'Fira Code', 'Roboto Mono', Consolas, monospace;
|
||||
background-color: #f1f3f4;
|
||||
color: #1967d2;
|
||||
background-color: var(--app-info-soft, #f1f3f4);
|
||||
color: var(--app-primary-text, #1967d2);
|
||||
padding: 2px 6px;
|
||||
border-radius: 4px;
|
||||
font-size: 14px;
|
||||
@@ -756,8 +756,8 @@ $text-muted: #a1a1aa;
|
||||
|
||||
.checked {
|
||||
.code-segment {
|
||||
color: #a1a1aa;
|
||||
background-color: #f8f9fa;
|
||||
color: var(--app-text-faint, #a1a1aa);
|
||||
background-color: var(--app-surface-soft, #f8f9fa);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -778,7 +778,7 @@ $text-muted: #a1a1aa;
|
||||
opacity: 0.7;
|
||||
}
|
||||
.milestone-text {
|
||||
color: #a1a1aa;
|
||||
color: var(--app-text-faint, #a1a1aa);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -795,11 +795,11 @@ $text-muted: #a1a1aa;
|
||||
font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
|
||||
|
||||
&.checked {
|
||||
color: #1a73e8;
|
||||
color: var(--app-primary-text, #1a73e8);
|
||||
}
|
||||
|
||||
&.progress {
|
||||
color: #1a73e8;
|
||||
color: var(--app-primary-text, #1a73e8);
|
||||
}
|
||||
|
||||
&.unchecked {
|
||||
@@ -809,7 +809,7 @@ $text-muted: #a1a1aa;
|
||||
|
||||
.milestone-text {
|
||||
font-family: 'Google Sans', 'Google Sans Text', 'Inter', sans-serif;
|
||||
color: #1f1f1f;
|
||||
color: var(--app-text-strong, #1f1f1f);
|
||||
font-size: 14px;
|
||||
line-height: 1.8;
|
||||
font-weight: 400;
|
||||
@@ -839,7 +839,7 @@ $text-muted: #a1a1aa;
|
||||
align-items: flex-start;
|
||||
gap: 10px;
|
||||
font-family: 'Google Sans', 'Google Sans Text', 'Inter', sans-serif;
|
||||
color: #1f1f1f;
|
||||
color: var(--app-text-strong, #1f1f1f);
|
||||
font-size: 14px;
|
||||
line-height: 1.8;
|
||||
|
||||
@@ -848,7 +848,7 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&.checked {
|
||||
color: #a1a1aa;
|
||||
color: var(--app-text-faint, #a1a1aa);
|
||||
|
||||
.check-icon.checked {
|
||||
opacity: 0.7;
|
||||
@@ -862,11 +862,11 @@ $text-muted: #a1a1aa;
|
||||
font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
|
||||
|
||||
&.checked {
|
||||
color: #1a73e8;
|
||||
color: var(--app-primary-text, #1a73e8);
|
||||
}
|
||||
|
||||
&.progress {
|
||||
color: #1a73e8;
|
||||
color: var(--app-primary-text, #1a73e8);
|
||||
}
|
||||
|
||||
&.unchecked {
|
||||
@@ -875,7 +875,7 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
.bullet {
|
||||
color: #9ca3af;
|
||||
color: var(--app-text-faint, #9ca3af);
|
||||
font-weight: bold;
|
||||
user-select: none;
|
||||
padding-left: 2px;
|
||||
@@ -907,8 +907,8 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
.verification-card {
|
||||
background: #f8fafc;
|
||||
border: 1px solid #e2e8f0;
|
||||
background: var(--app-surface-soft, #f8fafc);
|
||||
border: 1px solid var(--app-border, #e2e8f0);
|
||||
border-radius: 6px;
|
||||
padding: 8px 12px;
|
||||
display: flex;
|
||||
@@ -931,10 +931,10 @@ $text-muted: #a1a1aa;
|
||||
line-height: 1;
|
||||
letter-spacing: 0.6px;
|
||||
text-transform: uppercase;
|
||||
color: #64748b;
|
||||
color: var(--app-text-muted, #64748b);
|
||||
|
||||
&.assert {
|
||||
color: #0284c7;
|
||||
color: var(--app-info-text, #0284c7);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -943,35 +943,35 @@ $text-muted: #a1a1aa;
|
||||
font-family: inherit;
|
||||
font-size: 13.5px;
|
||||
line-height: 1.6;
|
||||
color: #334155;
|
||||
color: var(--app-text-control, #334155);
|
||||
word-break: break-word;
|
||||
|
||||
.bold-segment {
|
||||
font-weight: 600;
|
||||
color: #1e293b;
|
||||
color: var(--app-text-control, #1e293b);
|
||||
}
|
||||
|
||||
.code-segment {
|
||||
font-family: 'Fira Code', 'Roboto Mono', Consolas, monospace;
|
||||
font-size: 12px;
|
||||
background: #f1f5f9;
|
||||
color: #0f172a;
|
||||
background: var(--app-surface-soft, #f1f5f9);
|
||||
color: var(--app-text-strong, #0f172a);
|
||||
padding: 1.5px 6px;
|
||||
border-radius: 4px;
|
||||
border: 1px solid #e2e8f0;
|
||||
border: 1px solid var(--app-border, #e2e8f0);
|
||||
}
|
||||
}
|
||||
|
||||
&.finding {
|
||||
background: #fffbeb;
|
||||
border-color: #fef3c7;
|
||||
background: var(--app-warning-soft, #fffbeb);
|
||||
border-color: var(--app-warning-border, #fef3c7);
|
||||
|
||||
.card-header .card-tag {
|
||||
color: #b45309;
|
||||
color: var(--app-warning-text, #b45309);
|
||||
}
|
||||
|
||||
.card-body {
|
||||
color: #92400e;
|
||||
color: var(--app-warning-text, #92400e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -988,7 +988,7 @@ $text-muted: #a1a1aa;
|
||||
margin-bottom: 14px;
|
||||
min-height: 22px;
|
||||
font-family: 'Google Sans', 'Google Sans Text', 'Inter', sans-serif;
|
||||
color: #1f1f1f;
|
||||
color: var(--app-text-strong, #1f1f1f);
|
||||
font-size: 14px;
|
||||
line-height: 1.6;
|
||||
|
||||
@@ -1001,7 +1001,7 @@ $text-muted: #a1a1aa;
|
||||
font-weight: 700;
|
||||
margin-top: 24px;
|
||||
margin-bottom: 12px;
|
||||
border-bottom: 1px solid #e5e7eb;
|
||||
border-bottom: 1px solid var(--app-border, #e5e7eb);
|
||||
padding-bottom: 6px;
|
||||
}
|
||||
|
||||
@@ -1020,17 +1020,17 @@ $text-muted: #a1a1aa;
|
||||
}
|
||||
|
||||
&.checked {
|
||||
color: #a1a1aa;
|
||||
color: var(--app-text-faint, #a1a1aa);
|
||||
|
||||
.check-icon {
|
||||
color: #1a73e8;
|
||||
color: var(--app-primary-text, #1a73e8);
|
||||
opacity: 0.7;
|
||||
}
|
||||
}
|
||||
|
||||
&.progress {
|
||||
.check-icon {
|
||||
color: #1a73e8;
|
||||
color: var(--app-primary-text, #1a73e8);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1042,7 +1042,7 @@ $text-muted: #a1a1aa;
|
||||
|
||||
&.list-item {
|
||||
.bullet {
|
||||
color: #9ca3af;
|
||||
color: var(--app-text-faint, #9ca3af);
|
||||
font-weight: bold;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user