feat: unify trading workspace visual system

This commit is contained in:
leefer
2026-08-06 02:48:46 +08:00
parent b3a21d05b7
commit bd97ba1829
25 changed files with 803 additions and 800 deletions
+73 -61
View File
@@ -16,25 +16,25 @@
--line-strong: var(--border-strong);
--surface-muted: #f8fafc;
--surface-muted: var(--surface-subtle);
border-radius: 8px;
border-radius: 0;
color: rgb(31, 41, 55);
color: var(--text-primary);
--action: #1769c2;
--action: var(--primary);
--action-hover: #10569f;
--action-hover: var(--primary-hover);
--action-soft: #eaf2fb;
--action-soft: var(--surface-selected);
--border: #dfe4e9;
--border: var(--color-border);
--border-strong: #cbd3dc;
--border-strong: var(--color-border-strong);
border-color: var(--border);
border-color: transparent;
background: var(--surface);
background: transparent;
}
.auction-phase-notice > div {
@@ -378,7 +378,7 @@
}
.auction-table tbody tr:hover td {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.auction-stock-cell {
@@ -488,7 +488,7 @@
padding-left: 4px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(180, 83, 9);
@@ -548,7 +548,7 @@
border-bottom-color: rgb(232, 237, 241);
background: rgb(244, 247, 249);
background: var(--table-header);
}
.auction-phase-notice {
@@ -566,7 +566,7 @@
border: 0px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
border-radius: 5px;
}
@@ -652,13 +652,13 @@
margin-left: auto;
padding: 14px 16px 18px;
padding: var(--page-pad-y) 0 18px;
}
.auction-page-head-v2 {
min-width: 0px;
min-height: 62px;
min-height: 40px;
display: flex;
@@ -718,13 +718,15 @@
gap: 7px;
padding: 6px 10px;
padding: 0 0 0 12px;
border: 1px solid var(--r2-line);
border: 0;
border-radius: 7px;
border-left: 1px solid var(--r2-line);
background: rgb(255, 255, 255);
border-radius: 0;
background: transparent;
color: var(--r2-sub);
@@ -778,21 +780,21 @@
}
.auction-phase-notice-v2[data-phase="selection"] {
border-color: rgb(242, 214, 164);
border-color: var(--warning-color);
background: rgb(255, 250, 241);
background: transparent;
}
.auction-phase-notice-v2[data-phase="selection"] .auction-phase-marker {
background: rgb(217, 119, 6);
background: var(--warning-color);
animation: 1.8s ease-in-out 0s infinite normal none running auction-pulse;
}
.auction-phase-notice-v2[data-phase="finalized"] {
border-color: rgb(207, 224, 215);
border-color: var(--market-down);
background: rgb(244, 251, 247);
background: transparent;
}
.auction-phase-notice-v2[data-phase="finalized"] .auction-phase-marker {
@@ -831,25 +833,27 @@
}
.auction-summary-v2 {
min-width: 390px;
min-width: 348px;
display: grid;
grid-template-columns: repeat(4, minmax(82px, 1fr));
border: 1px solid var(--r2-line);
border: 0;
border-radius: 9px;
border-left: 1px solid var(--r2-line-soft);
background: rgb(255, 255, 255);
border-radius: 0;
box-shadow: var(--r2-shadow);
background: var(--surface);
box-shadow: none;
}
.auction-summary-v2 > div {
min-width: 0px;
min-height: 48px;
min-height: 44px;
display: grid;
@@ -908,9 +912,9 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
color: var(--text-primary);
font-size: 12px;
@@ -953,9 +957,9 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
box-shadow: var(--card-shadow);
}
.auction-primary-card {
@@ -965,9 +969,9 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
box-shadow: var(--card-shadow);
min-height: 0px;
@@ -1073,7 +1077,7 @@
justify-content: space-between;
background: rgb(250, 251, 252);
background: var(--surface-subtle);
}
.auction-expectation-v2,
@@ -1128,13 +1132,13 @@
}
.auction-filter-segments button.active {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
font-weight: 600;
box-shadow: rgba(0, 0, 0, 0.08) 0px 1px 2px;
box-shadow: var(--shadow-xs);
}
.auction-search-v2 {
@@ -1154,7 +1158,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
}
.auction-search-v2 .lucide {
@@ -1182,7 +1186,7 @@
.auction-search-v2:focus-within {
border-color: var(--r2-blue-line);
box-shadow: rgba(37, 99, 235, 0.08) 0px 0px 0px 2px;
box-shadow: 0 0 0 2px var(--focus-ring);
}
.auction-export-button:focus-visible,
@@ -1227,7 +1231,7 @@
height: 35px;
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-sub);
@@ -1279,7 +1283,7 @@
}
.auction-table-v2 tbody tr:hover td {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.auction-stock-cell-v2 {
@@ -1349,7 +1353,7 @@
border-radius: 3px;
background: rgb(240, 242, 245);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -1361,7 +1365,7 @@
.auction-source-tags-v2 b:nth-child(n+2) {
background: var(--r2-blue-soft);
color: rgb(70, 100, 160);
color: var(--r2-blue);
}
#auctionView .auction-core-tags {
@@ -1397,7 +1401,7 @@
}
#auctionView .auction-score {
color: rgb(49, 95, 123);
color: var(--r2-blue);
font-weight: 750;
}
@@ -1431,9 +1435,9 @@
}
#auctionView .auction-expectation.matched {
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: rgb(75, 85, 99);
color: var(--text-secondary);
}
#auctionView .auction-expectation.below {
@@ -1541,7 +1545,7 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -1619,15 +1623,15 @@
}
#auctionView .auction-theme-status.strong {
background: rgb(219, 231, 255);
background: var(--r2-blue-soft);
color: rgb(40, 88, 188);
color: var(--r2-blue);
}
#auctionView .auction-theme-status.steady {
background: rgb(233, 240, 255);
background: var(--r2-blue-soft);
color: rgb(70, 100, 160);
color: var(--r2-blue);
}
#auctionView .auction-theme-status.mixed {
@@ -1637,7 +1641,7 @@
}
#auctionView .auction-theme-status.weak {
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
}
@@ -1707,7 +1711,7 @@
background: var(--r2-blue-soft);
color: rgb(70, 100, 160);
color: var(--r2-blue);
font-size: 10px;
}
@@ -1873,7 +1877,7 @@
padding-left: 3px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(217, 119, 6);
@@ -2102,7 +2106,7 @@
@media (min-width: 721px) and (max-height: 900px) {
.redesigned-auction-view {
padding: 10px 12px 12px;
padding: 10px 0 12px;
}
.auction-page-head-v2 {
@@ -2250,7 +2254,7 @@
background: var(--surface);
}
:root[data-theme="dark"] #auctionView :is(.auction-phase-notice-v2, .auction-export-button, .auction-refresh-button, .auction-filter-segments, .auction-table-v2 thead th) {
:root[data-theme="dark"] #auctionView :is(.auction-export-button, .auction-refresh-button, .auction-filter-segments, .auction-table-v2 thead th) {
border-color: var(--border);
background: var(--surface-muted);
@@ -2258,16 +2262,24 @@
color: var(--text-secondary);
}
:root[data-theme="dark"] #auctionView .auction-phase-notice-v2 {
border-left-color: var(--border);
background: transparent;
color: var(--text-secondary);
}
:root[data-theme="dark"] #auctionView .auction-phase-notice-v2[data-phase="selection"] {
border-color: var(--warning-line);
background: var(--warning-soft);
background: transparent;
}
:root[data-theme="dark"] #auctionView .auction-phase-notice-v2[data-phase="finalized"] {
border-color: var(--market-down-soft);
background: var(--market-down-soft);
background: transparent;
}
:root[data-theme="dark"] #auctionView :is(.auction-filter-segments button.active, .auction-source-tags-v2 b) {
+21 -21
View File
@@ -68,7 +68,7 @@
.dragon-filter.active {
background: var(--blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
.trader-operations {
@@ -130,7 +130,7 @@
}
.unclassified-heading:hover {
background: rgb(241, 246, 248);
background: var(--surface-hover);
}
.unclassified-heading h3 {
@@ -492,7 +492,7 @@
background: var(--card-accent);
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-family: STKaiti, KaiTi, serif;
@@ -859,7 +859,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -885,7 +885,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
}
@@ -897,7 +897,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -913,7 +913,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -999,7 +999,7 @@
border-radius: 8px;
background: rgb(244, 245, 247);
background: var(--surface-muted);
}
.dragon-view-tabs-v2 button {
@@ -1021,7 +1021,7 @@
}
.dragon-view-tabs-v2 button.active {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
@@ -1077,7 +1077,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1145,7 +1145,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1195,7 +1195,7 @@
border-radius: 7px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
}
.dragon-filter-v2 {
@@ -1223,7 +1223,7 @@
}
.dragon-filter-v2.active {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-blue);
@@ -1307,7 +1307,7 @@
border-radius: var(--r2-radius);
background: rgb(248, 249, 251);
background: var(--surface-subtle);
box-shadow: var(--r2-shadow);
}
@@ -1327,7 +1327,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
}
.dragon-stage-heading-v2 > div {
@@ -1381,7 +1381,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1435,11 +1435,11 @@
z-index: 2;
background: rgb(250, 251, 252);
background: var(--surface-subtle);
}
#dragonView .dragon-operation-table tbody tr:hover {
background: rgb(247, 249, 252);
background: var(--table-hover);
}
#dragonView .dragon-unclassified-v2 {
@@ -1451,7 +1451,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1459,7 +1459,7 @@
#dragonView .dragon-unclassified-v2 .unclassified-heading {
border-bottom-color: var(--r2-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
}
.dragon-empty-state-v2 {
@@ -1479,7 +1479,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
+5 -5
View File
@@ -770,7 +770,7 @@ body[data-active-view="heavenView"] .workspace-view {
border-radius: 50%;
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-size: 12px;
}
@@ -5129,7 +5129,7 @@ body[data-active-view="heavenView"] .workspace-view {
background: rgb(154, 91, 69);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
#heavenHeartPanel .button:disabled {
@@ -6083,7 +6083,7 @@ body[data-active-view="heavenView"] .workspace-view {
.heaven-reading-history-item.active,
.heaven-reading-history-item:hover {
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: rgb(154, 91, 69) 3px 0px inset;
}
@@ -6343,13 +6343,13 @@ body[data-active-view="heavenView"] .workspace-view {
border-color: var(--blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
.btn.primary:hover {
background: var(--blue-d);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
.phase-pick .pp.on {
+8 -8
View File
@@ -380,7 +380,7 @@
border-radius: 8px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
}
.ladder-sort-segment button {
@@ -394,7 +394,7 @@
}
.ladder-sort-segment button.active {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
@@ -422,7 +422,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -532,7 +532,7 @@
border-radius: 8px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
@@ -742,7 +742,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -774,7 +774,7 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -874,7 +874,7 @@
border-radius: 4px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
}
.market-ladder-pyramid-row > i b {
@@ -954,7 +954,7 @@
border-radius: 4px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
}
.market-ladder-rate-list > div > i b {
+9 -9
View File
@@ -791,21 +791,21 @@
}
:is(.global-search-dialog, .stock-dialog, .settings-dialog:not(.heaven-reading-dialog)) {
--dialog-line: #e1e6ec;
--dialog-line: var(--border);
--dialog-line-strong: #cfd7e1;
--dialog-line-strong: var(--border-strong);
--dialog-muted: #f7f9fb;
--dialog-muted: var(--surface-subtle);
--dialog-ink: #1f2937;
--dialog-ink: var(--text-primary);
--dialog-sub: #687586;
--dialog-sub: var(--text-secondary);
border: 1px solid var(--dialog-line-strong);
border-radius: 10px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--dialog-ink);
@@ -1026,7 +1026,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
grid-template-columns: repeat(4, minmax(0px, 1fr));
}
@@ -1040,7 +1040,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
grid-template-columns: repeat(3, minmax(0px, 1fr));
}
@@ -1060,7 +1060,7 @@
border-bottom: 1px solid var(--dialog-line);
background: rgb(255, 255, 255);
background: var(--surface);
}
.stock-dialog .moneyflow-grid > div:last-child {
+104 -80
View File
@@ -605,7 +605,7 @@
@media (max-width: 900px) {
body[data-active-view="mentorView"] .workspace-view {
padding: 10px 10px 84px;
padding: 10px 0 84px;
}
}
@@ -624,7 +624,7 @@ body[data-active-view="mentorView"] .workspace-view {
box-shadow: none;
padding: 14px 16px 24px;
padding: var(--page-pad-y) 0 24px;
}
.mentor-page-controls .mentor-evidence-filters {
@@ -720,35 +720,35 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView {
--mentor-blue: #2563eb;
--mentor-blue: var(--action);
--mentor-blue-dark: #1d4ed8;
--mentor-blue-dark: var(--action-hover);
--mentor-blue-soft: #eff4ff;
--mentor-blue-soft: var(--action-soft);
--mentor-blue-line: #c7d8fb;
--mentor-blue-line: var(--color-action-line);
--mentor-line: #e5e7eb;
--mentor-line: var(--border);
--mentor-line-soft: #eef0f3;
--mentor-line-soft: var(--border-subtle);
--mentor-ink: #1f2937;
--mentor-ink: var(--text-primary);
--mentor-sub: #6b7280;
--mentor-sub: var(--text-secondary);
--mentor-faint: #9ca3af;
--mentor-faint: var(--text-tertiary);
color: var(--mentor-ink);
}
#mentorView .mentor-page-header {
min-height: 42px;
min-height: 36px;
display: flex;
align-items: center;
gap: 18px;
gap: var(--space-12);
margin-bottom: 12px;
@@ -774,9 +774,9 @@ body[data-active-view="mentorView"] .overview-strip {
color: var(--mentor-ink);
font-size: 18px;
font-size: var(--font-size-page-title);
font-weight: 760;
font-weight: var(--font-weight-bold);
letter-spacing: 0px;
}
@@ -786,7 +786,7 @@ body[data-active-view="mentorView"] .overview-strip {
color: var(--mentor-faint);
font-size: 11.5px;
font-size: var(--font-size-caption);
text-overflow: ellipsis;
@@ -818,7 +818,7 @@ body[data-active-view="mentorView"] .overview-strip {
border-radius: 8px;
background: rgb(238, 240, 243);
background: var(--surface-muted);
}
#mentorView .mentor-evidence-filters button {
@@ -872,13 +872,13 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-evidence-filters button.active {
background: rgb(255, 255, 255);
background: var(--control-surface);
color: var(--mentor-ink);
font-weight: 650;
font-weight: var(--font-weight-semibold);
box-shadow: rgba(16, 24, 40, 0.09) 0px 1px 2px;
box-shadow: var(--shadow-xs);
}
#mentorView .mentor-evidence-filters button[data-mentor-grade="A"] {
@@ -894,7 +894,7 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-evidence-filters button:focus-visible {
outline: rgba(37, 99, 235, 0.35) solid 2px;
outline: var(--action) solid 2px;
outline-offset: 1px;
}
@@ -968,11 +968,11 @@ body[data-active-view="mentorView"] .overview-strip {
border: 1px solid var(--mentor-line);
border-radius: 10px;
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: rgba(16, 24, 40, 0.05) 0px 1px 2px;
box-shadow: var(--card-shadow);
position: relative;
@@ -1004,15 +1004,15 @@ body[data-active-view="mentorView"] .overview-strip {
padding: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
}
#mentorView .mentor-directory-heading {
border-bottom: 1px solid var(--mentor-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
min-height: 48px;
min-height: 44px;
display: flex;
@@ -1148,7 +1148,7 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-search-field {
height: 34px;
height: var(--control-height);
display: grid;
@@ -1164,17 +1164,17 @@ body[data-active-view="mentorView"] .overview-strip {
border: 1px solid var(--mentor-line);
border-radius: 7px;
border-radius: var(--radius-md);
background: rgb(255, 255, 255);
background: var(--control-surface);
color: var(--mentor-faint);
}
#mentorView .mentor-search-field:focus-within {
border-color: var(--mentor-blue-line);
border-color: var(--mentor-blue);
box-shadow: rgba(37, 99, 235, 0.08) 0px 0px 0px 2px;
box-shadow: 0 0 0 3px var(--focus-ring);
}
#mentorView .mentor-search-field .lucide {
@@ -1260,7 +1260,7 @@ body[data-active-view="mentorView"] .overview-strip {
#mentorView .mentor-option {
width: 100%;
min-height: 82px;
min-height: 70px;
display: grid;
@@ -1286,21 +1286,21 @@ body[data-active-view="mentorView"] .overview-strip {
border-radius: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--mentor-ink);
box-shadow: none;
transition: background-color 150ms, box-shadow 150ms;
transition: background-color var(--motion-fast), box-shadow var(--motion-fast);
}
#mentorView .mentor-option:hover {
background: rgb(248, 250, 255);
background: var(--surface-hover);
}
#mentorView .mentor-option.active {
background: var(--mentor-blue-soft);
background: var(--surface-selected);
box-shadow: inset 2px 0 0 var(--mentor-blue);
}
@@ -1318,11 +1318,11 @@ body[data-active-view="mentorView"] .overview-strip {
#mentorView .mentor-option-main {
min-width: 0px;
min-height: 81px;
min-height: 69px;
display: block;
padding: 10px 7px 9px 14px;
padding: 9px 7px 8px 14px;
border: 0px;
@@ -1342,7 +1342,7 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-option-main:focus-visible {
outline: rgba(37, 99, 235, 0.42) solid 2px;
outline: var(--action) solid 2px;
outline-offset: -3px;
}
@@ -1504,7 +1504,7 @@ body[data-active-view="mentorView"] .overview-strip {
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--mentor-sub);
@@ -1560,7 +1560,7 @@ body[data-active-view="mentorView"] .overview-strip {
#mentorView .mentor-badge.quality {
border-color: transparent;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--mentor-faint);
}
@@ -1704,11 +1704,11 @@ body[data-active-view="mentorView"] .overview-strip {
border: 1px solid var(--mentor-line);
border-radius: 10px;
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: rgba(16, 24, 40, 0.05) 0px 1px 2px;
box-shadow: var(--card-shadow);
height: 100%;
@@ -1720,9 +1720,9 @@ body[data-active-view="mentorView"] .overview-strip {
#mentorView .mentor-chat-header {
border-bottom: 1px solid var(--mentor-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
min-height: 69px;
min-height: 64px;
display: flex;
@@ -1870,9 +1870,9 @@ body[data-active-view="mentorView"] .overview-strip {
overflow-y: auto;
padding: 18px;
padding: 20px 24px;
background: rgb(251, 252, 253);
background: var(--surface);
scrollbar-color: rgb(215, 220, 228) transparent;
@@ -1910,9 +1910,9 @@ body[data-active-view="mentorView"] .overview-strip {
border-radius: 8px;
background: rgb(243, 246, 251);
background: var(--action-soft);
color: rgb(100, 130, 183);
color: var(--action);
}
#mentorView .mentor-empty-mark .lucide {
@@ -1924,7 +1924,7 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-empty-state strong {
color: rgb(75, 85, 99);
color: var(--text-primary);
font-size: 13px;
@@ -1944,33 +1944,45 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-message {
width: fit-content;
width: min(100%, 900px);
max-width: min(84%, 820px);
max-width: 100%;
margin: 0px 0px 12px;
margin: 0px 0px 18px;
padding: 10px 12px;
padding: 2px 8px 18px 16px;
border: 1px solid var(--mentor-line);
border: 0px;
border-radius: 8px;
border-bottom: 1px solid var(--mentor-line-soft);
background: rgb(255, 255, 255);
border-left: 2px solid var(--mentor-blue);
box-shadow: rgba(16, 24, 40, 0.024) 0px 1px 1px;
border-radius: 0px;
background: transparent;
box-shadow: none;
}
#mentorView .mentor-message.user {
width: fit-content;
max-width: min(72%, 680px);
margin-left: auto;
border-color: var(--mentor-blue-line);
padding: 9px 12px;
border: 1px solid var(--mentor-blue-line);
border-radius: var(--radius-md);
background: var(--mentor-blue-soft);
}
#mentorView .mentor-message.assistant {
border-left: 2px solid var(--mentor-blue);
margin-right: auto;
}
#mentorView .mentor-message-label {
@@ -1988,11 +2000,11 @@ body[data-active-view="mentorView"] .overview-strip {
overflow-wrap: anywhere;
color: rgb(55, 65, 81);
color: var(--text-primary);
font-size: 13px;
line-height: 1.62;
line-height: 1.72;
white-space: normal;
}
@@ -2082,7 +2094,7 @@ body[data-active-view="mentorView"] .overview-strip {
border-top: 1px solid var(--mentor-line-soft);
background: rgb(255, 255, 255);
background: var(--surface-subtle);
scrollbar-width: none;
}
@@ -2110,9 +2122,9 @@ body[data-active-view="mentorView"] .overview-strip {
border: 1px solid var(--mentor-line);
border-radius: 14px;
border-radius: var(--radius-md);
background: rgb(255, 255, 255);
background: var(--control-surface);
color: var(--mentor-sub);
@@ -2144,11 +2156,11 @@ body[data-active-view="mentorView"] .overview-strip {
gap: 8px;
padding: 8px 14px;
padding: 9px 14px;
border-top: 1px solid var(--mentor-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
}
#mentorView .mentor-chat-form textarea {
@@ -2168,11 +2180,11 @@ body[data-active-view="mentorView"] .overview-strip {
border: 1px solid var(--mentor-line);
border-radius: 8px;
border-radius: var(--radius-md);
outline: 0px;
background: rgb(255, 255, 255);
background: var(--control-surface);
color: var(--mentor-ink);
@@ -2204,9 +2216,9 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-chat-form textarea:focus {
border-color: var(--mentor-blue-line);
border-color: var(--mentor-blue);
box-shadow: rgba(37, 99, 235, 0.08) 0px 0px 0px 2px;
box-shadow: 0 0 0 3px var(--focus-ring);
}
#mentorView .mentor-chat-form .button {
@@ -2230,7 +2242,7 @@ body[data-active-view="mentorView"] .overview-strip {
background: var(--mentor-blue);
color: rgb(255, 255, 255);
color: var(--on-action);
font-size: 12.5px;
}
@@ -2252,7 +2264,7 @@ body[data-active-view="mentorView"] .overview-strip {
padding: 0px 14px 8px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--mentor-faint);
@@ -2263,7 +2275,7 @@ body[data-active-view="mentorView"] .overview-strip {
@media (min-width: 721px) and (max-width: 1100px) {
#mentorView .mentor-layout {
grid-template-columns: 292px minmax(0px, 1fr);
grid-template-columns: 272px minmax(0px, 1fr);
}
#mentorView .mentor-directory-title > span {
@@ -2365,7 +2377,7 @@ body[data-active-view="mentorView"] .overview-strip {
border: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--mentor-ink);
@@ -2509,6 +2521,14 @@ body[data-active-view="mentorView"] .overview-strip {
border-radius: 9px;
}
#mentorView .chat-box {
height: 100%;
min-height: 0px;
overflow: hidden;
}
#mentorView .mentor-chat-header {
min-height: 68px;
@@ -2535,6 +2555,10 @@ body[data-active-view="mentorView"] .overview-strip {
}
#mentorView .mentor-messages {
flex: 1 1 0%;
min-height: 0px;
padding: 12px 10px;
}
@@ -2747,13 +2771,13 @@ body[data-active-view="mentorView"] .overview-strip {
}
:root[data-theme="dark"] #mentorView :is(.mentor-messages, .mentor-empty-mark) {
background: var(--surface-muted);
background: var(--surface);
}
:root[data-theme="dark"] #mentorView .mentor-message {
border-color: var(--line-soft);
border-color: var(--border-subtle);
background: var(--surface-subtle);
background: transparent;
box-shadow: none;
}
+40 -40
View File
@@ -24,7 +24,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
vertical-align: middle;
}
@@ -54,7 +54,7 @@
padding-block: 8px;
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-sub);
@@ -64,13 +64,13 @@
}
.redesigned-pool-view .data-table th[data-sort]:hover {
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-blue);
}
.redesigned-pool-view .data-table tbody tr:hover td {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.redesigned-pool-view .data-table .row-number {
@@ -127,7 +127,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
vertical-align: middle;
}
@@ -157,7 +157,7 @@
padding-block: 8px;
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-sub);
@@ -199,7 +199,7 @@
}
.redesigned-broken-view .data-table tbody tr:hover td {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.redesigned-broken-view .data-table .row-number {
@@ -255,7 +255,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
vertical-align: middle;
}
@@ -285,7 +285,7 @@
padding-block: 8px;
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-sub);
@@ -327,7 +327,7 @@
}
.redesigned-down-view .data-table tbody tr:hover td {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.redesigned-down-view .data-table .row-number {
@@ -375,7 +375,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
vertical-align: middle;
}
@@ -405,7 +405,7 @@
padding-block: 8px;
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-sub);
@@ -447,7 +447,7 @@
}
.redesigned-yesterday-view .data-table tbody tr:hover td {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.redesigned-yesterday-view .data-table .row-number {
@@ -635,7 +635,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -667,7 +667,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
}
@@ -743,7 +743,7 @@
#limitPool .table-frame {
border-radius: 10px;
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--shadow-xs);
}
@@ -755,7 +755,7 @@
border-radius: 10px;
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--shadow-xs);
@@ -813,7 +813,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
}
.pool-search-field .lucide {
@@ -873,7 +873,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -917,7 +917,7 @@
}
.pool-state-tag.broken {
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: rgb(107, 114, 128);
}
@@ -947,7 +947,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -981,7 +981,7 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -1233,7 +1233,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
@@ -1263,7 +1263,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1377,7 +1377,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
@@ -1407,7 +1407,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1493,7 +1493,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
@@ -1519,7 +1519,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1547,7 +1547,7 @@
border-radius: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
@@ -1559,7 +1559,7 @@
}
.yesterday-summary-cell:hover {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.yesterday-summary-cell.active {
@@ -1678,7 +1678,7 @@
.yesterday-outcome-tag.fail {
border: 1px solid var(--r2-line);
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: rgb(75, 85, 99);
}
@@ -1800,7 +1800,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1854,7 +1854,7 @@
.performance-status-tag.is-neutral {
border-color: var(--r2-line);
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: rgb(75, 85, 99);
}
@@ -1918,7 +1918,7 @@
border-radius: 3px;
background: rgb(240, 242, 245);
background: var(--surface-muted);
}
.performance-stage-track i {
@@ -1954,7 +1954,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-faint);
@@ -1980,7 +1980,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1990,7 +1990,7 @@
padding: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
}
.performance-panel-head {
@@ -2024,7 +2024,7 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -2066,7 +2066,7 @@
border-radius: 6px;
background: rgb(240, 242, 245);
background: var(--surface-muted);
}
.performance-width-bar i {
@@ -2305,7 +2305,7 @@
font-size: 12.5px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
+7 -7
View File
@@ -40,7 +40,7 @@
:where(#popularityView) #popularitySummary {
margin-bottom: 12px;
background: rgb(255, 255, 255);
background: var(--surface);
}
#popularityView .data-table {
@@ -148,7 +148,7 @@
border-radius: 8px;
background: rgb(244, 245, 247);
background: var(--surface-muted);
}
.popularity-source-tabs-v2 button {
@@ -174,7 +174,7 @@
}
.popularity-source-tabs-v2 button.active {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
@@ -308,7 +308,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -489,7 +489,7 @@
}
.popularity-table-v2 tbody tr:hover {
background: rgb(247, 249, 252);
background: var(--table-hover);
}
.popularity-rank-v2 {
@@ -587,7 +587,7 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -792,7 +792,7 @@
}
.hot3 .hc {
background: rgb(255, 255, 255);
background: var(--surface);
border: 1px solid var(--line);
+38 -38
View File
@@ -176,7 +176,7 @@
@media (max-width: 900px) {
body[data-active-view="reviewWorkspaceView"] .workspace-view {
padding: 10px 10px 84px;
padding: 10px 0 84px;
}
.review-workspace .notes-history-section,
@@ -200,7 +200,7 @@ body[data-active-view="reviewWorkspaceView"] .workspace-view {
box-shadow: none;
padding: 14px 16px 24px;
padding: var(--page-pad-y) 0 24px;
}
.review-workspace .workspace-section + .workspace-section {
@@ -234,7 +234,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
}
.review-workspace .workspace-section {
background: rgb(255, 255, 255);
background: var(--surface);
border: 1px solid var(--border);
@@ -326,23 +326,23 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
}
#reviewWorkspaceView {
--review-blue: #2563eb;
--review-blue: var(--action);
--review-blue-dark: #1d4ed8;
--review-blue-dark: var(--action-hover);
--review-blue-soft: #eff4ff;
--review-blue-soft: var(--action-soft);
--review-blue-line: #c7d8fb;
--review-blue-line: var(--color-action-line);
--review-line: #e5e7eb;
--review-line: var(--border);
--review-line-soft: #eef0f3;
--review-line-soft: var(--border-subtle);
--review-ink: #1f2937;
--review-ink: var(--text-primary);
--review-sub: #6b7280;
--review-sub: var(--text-secondary);
--review-faint: #9ca3af;
--review-faint: var(--text-tertiary);
color: var(--review-ink);
}
@@ -400,7 +400,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
@@ -467,7 +467,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 10px;
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: rgba(16, 24, 40, 0.05) 0px 1px 2px;
}
@@ -503,7 +503,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--review-sub);
@@ -521,7 +521,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-bottom: 1px solid var(--review-line-soft);
background: rgb(250, 251, 252);
background: var(--surface-subtle);
color: var(--review-faint);
@@ -547,7 +547,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
}
#reviewWorkspaceView .data-table tbody tr:hover {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
#reviewWorkspaceView .stock-cell {
@@ -625,7 +625,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
}
#reviewWorkspaceView .table-action.down:hover {
background: rgb(245, 246, 248);
background: var(--surface-hover);
color: rgb(209, 67, 67);
}
@@ -683,7 +683,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
background: var(--review-blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-size: 11.5px;
}
@@ -715,7 +715,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-bottom: 1px solid var(--review-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
}
#reviewWorkspaceView .trade-log-summary:empty {
@@ -799,7 +799,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 5px;
background: rgb(248, 249, 251);
background: var(--surface-subtle);
color: var(--review-sub);
@@ -821,7 +821,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 5px;
background: rgb(248, 249, 251);
background: var(--surface-subtle);
color: var(--review-sub);
@@ -947,7 +947,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 6px;
background: rgb(248, 249, 251);
background: var(--surface-subtle);
color: var(--review-sub);
@@ -961,7 +961,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
padding: 14px 16px 16px;
background: rgb(255, 255, 255);
background: var(--surface);
}
#reviewWorkspaceView .journal-form .form-field:nth-of-type(2) textarea {
@@ -973,11 +973,11 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
#reviewWorkspaceView .journal-form textarea:focus {
border-color: var(--review-blue-line);
box-shadow: rgba(37, 99, 235, 0.08) 0px 0px 0px 2px;
box-shadow: 0 0 0 2px var(--focus-ring);
}
#reviewWorkspaceView .journal-form textarea::placeholder {
color: rgb(166, 173, 183);
color: var(--review-faint);
}
#reviewWorkspaceView .journal-form .dialog-actions {
@@ -1005,7 +1005,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
background: var(--review-blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-size: 12px;
}
@@ -1035,7 +1035,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
overflow-y: auto;
background: rgb(255, 255, 255);
background: var(--surface);
}
#reviewWorkspaceView .note-row {
@@ -1273,7 +1273,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-bottom: 1px solid var(--review-line-soft);
background: rgb(255, 255, 255);
background: var(--surface);
min-height: 48px;
@@ -1418,7 +1418,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
outline: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--review-ink);
@@ -1470,7 +1470,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
outline: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--review-ink);
@@ -1565,7 +1565,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 8px;
background: rgb(255, 255, 255);
background: var(--surface);
}
.watchlist-search-control:focus-within {
@@ -1649,7 +1649,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-image: none;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(31, 41, 55);
@@ -1657,7 +1657,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
}
.watchlist-search-results button:hover {
background: rgb(245, 248, 255);
background: var(--surface-selected);
}
.watchlist-search-results button > span {
@@ -1713,7 +1713,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
border-radius: 8px;
background: rgb(247, 249, 254);
background: var(--surface-subtle);
}
.watchlist-selection[hidden] {
@@ -1869,7 +1869,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
}
#reviewWorkspaceView .journal-form .form-field > span {
color: rgb(55, 65, 81);
color: var(--review-sub);
font-size: 12px;
@@ -1937,7 +1937,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
padding: 18px 20px 20px;
background: rgb(250, 251, 252);
background: var(--surface-subtle);
}
.trade-log-dialog .trade-log-form-grid {
@@ -1992,7 +1992,7 @@ body[data-active-view="reviewWorkspaceView"] .overview-strip {
padding: 5px 10px;
background: rgb(255, 255, 255);
background: var(--surface);
}
.search .ico {
+17 -17
View File
@@ -89,7 +89,7 @@
border-radius: 4px;
background: rgb(255, 255, 255);
background: var(--surface);
}
.rotation-legend span {
@@ -225,7 +225,7 @@
border-radius: 8px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
}
.rotation-order-control button {
@@ -247,7 +247,7 @@
}
.rotation-order-control button.active {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
@@ -280,7 +280,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
@@ -303,7 +303,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -315,7 +315,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
@@ -379,7 +379,7 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -579,7 +579,7 @@
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
@@ -623,7 +623,7 @@
border-radius: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: none;
}
@@ -639,7 +639,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(248, 250, 252);
background: var(--table-header);
}
#rotationView .rotation-day > header time {
@@ -681,7 +681,7 @@
background: var(--r2-blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-size: 9px;
@@ -757,19 +757,19 @@
#rotationView .rotation-rank.rank-1 {
background: rgb(224, 69, 54);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
#rotationView .rotation-rank.rank-2 {
background: rgb(240, 113, 79);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
#rotationView .rotation-rank.rank-3 {
background: rgb(245, 166, 35);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
#rotationView .rotation-sector-chip strong {
@@ -837,7 +837,7 @@
background: var(--r2-ink);
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-size: 10.5px;
@@ -870,7 +870,7 @@
border-bottom: 1px solid var(--r2-line);
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-sub);
@@ -966,7 +966,7 @@
}
#rotationView .trend-flat {
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
}
File diff suppressed because it is too large Load Diff
+5 -9
View File
@@ -55,15 +55,6 @@
</div>
</section>
</div>
<div class="screener-runbar runbar">
<div class="screener-run-actions">
<button id="screenerExportButton" class="button" type="button">导出 CSV</button>
</div>
<div class="screener-pipeline-status" aria-live="polite">
<span>因子 <strong id="factorTaskStatus">等待检查</strong></span>
<span>编译 <strong id="compilerStatus">本地模板编译</strong></span>
</div>
</div>
<div data-screener-results-slot="smart"></div>
</div>
<div class="curated-screener-panel" data-screener-panel="curated" hidden>
@@ -150,12 +141,17 @@
<div class="section-toolbar result-toolbar">
<div class="section-title-group"><h2 id="screenerResultTitle">候选结果</h2><span id="screenerResultCount" class="count-badge">0 只</span><span id="screenerResultSource" class="screener-result-source" hidden></span></div>
<div class="screener-result-tools">
<div class="screener-pipeline-status" aria-live="polite">
<span>因子 <strong id="factorTaskStatus">等待检查</strong></span>
<span>编译 <strong id="compilerStatus">本地模板编译</strong></span>
</div>
<div class="segmented screener-archive-tabs" role="tablist" aria-label="候选结果范围">
<button class="segment active" type="button" role="tab" aria-selected="true" data-screener-archive-view="latest">最新候选</button>
<button class="segment" type="button" role="tab" aria-selected="false" data-screener-archive-view="active">持续有效</button>
<button class="segment" type="button" role="tab" aria-selected="false" data-screener-archive-view="history">入选历史</button>
</div>
<span id="screenerDisclaimer" class="section-subtitle">历史统计不代表未来收益</span>
<button id="screenerExportButton" class="button" type="button"><i data-lucide="download"></i>导出 CSV</button>
</div>
</div>
<div id="screenerBatchNotice" class="screener-batch-notice" hidden></div>
+19 -19
View File
@@ -240,11 +240,11 @@
}
.sentiment-history-table .sentiment-history-groups .group-ladder {
background: rgb(244, 245, 239);
background: var(--warning-soft);
}
.sentiment-history-table .sentiment-history-groups .group-risk {
background: rgb(248, 238, 238);
background: var(--market-up-soft);
}
.sentiment-history-table .sentiment-history-groups .group-feedback {
@@ -258,7 +258,7 @@
z-index: 5;
background: rgb(247, 249, 250);
background: var(--table-header);
color: rgb(57, 74, 86);
@@ -298,7 +298,7 @@
z-index: 7;
background: rgb(247, 249, 250);
background: var(--table-header);
}
.sentiment-history-table .sentiment-history-columns th:nth-child(2) {
@@ -310,19 +310,19 @@
z-index: 7;
background: rgb(247, 249, 250);
background: var(--table-header);
}
.sentiment-history-table tbody tr:nth-child(2n) td {
background: rgb(250, 251, 252);
background: var(--surface-subtle);
}
.sentiment-history-table tbody tr:hover td {
background: rgb(241, 246, 249);
background: var(--table-hover);
}
.sentiment-history-table tbody tr.latest-row td {
background: rgb(242, 247, 253);
background: var(--table-selected);
font-weight: 650;
}
@@ -495,7 +495,7 @@
border-radius: 50%;
background: conic-gradient(var(--coral) calc(var(--score) * 1%), #e5eaee 0);
background: conic-gradient(var(--coral) calc(var(--score) * 1%), var(--border) 0);
position: relative;
@@ -810,7 +810,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -838,7 +838,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -854,7 +854,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -973,7 +973,7 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -1021,7 +1021,7 @@
background: var(--r2-ink);
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-size: 11px;
@@ -1243,7 +1243,7 @@
border-radius: 5px;
background: rgb(240, 242, 245);
background: var(--surface-muted);
}
.redesigned-sentiment-view .sentiment-component-item:nth-child(n) .sentiment-component-track i,
@@ -1280,7 +1280,7 @@
border-radius: var(--r2-radius) var(--r2-radius) 0 0;
background: rgb(255, 255, 255);
background: var(--surface);
}
.redesigned-sentiment-view .sentiment-detail-toolbar h2 {
@@ -1298,7 +1298,7 @@
border-radius: 0 0 var(--r2-radius) var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -1317,7 +1317,7 @@
}
.redesigned-sentiment-view .sentiment-history-table thead th {
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--r2-sub);
@@ -1327,7 +1327,7 @@
}
.redesigned-sentiment-view .sentiment-history-groups th {
background: rgb(243, 245, 247);
background: var(--table-header);
}
@media (max-width: 1180px) {
+22 -22
View File
@@ -245,7 +245,7 @@
border-radius: var(--card-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--card-shadow);
@@ -313,7 +313,7 @@
font-size: 11px;
font-weight: 650;
font-weight: var(--font-weight-semibold);
white-space: nowrap;
}
@@ -341,11 +341,11 @@
padding: 0px 10px;
border: 1px solid rgb(216, 221, 229);
border: 1px solid var(--control-border);
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-faint);
@@ -353,9 +353,9 @@
}
.theme-search-v2:focus-within {
border-color: rgb(150, 181, 242);
border-color: var(--action);
box-shadow: rgba(37, 99, 235, 0.09) 0px 0px 0px 3px;
box-shadow: 0 0 0 3px var(--focus-ring);
}
.theme-search-v2 .lucide {
@@ -417,7 +417,7 @@
border-radius: var(--r2-radius);
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: var(--r2-shadow);
}
@@ -451,7 +451,7 @@
font-size: 19px;
font-weight: 750;
font-weight: var(--font-weight-bold);
font-variant-numeric: tabular-nums;
}
@@ -549,13 +549,13 @@
border-radius: 5px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
font-size: 10.5px;
font-weight: 650;
font-weight: var(--font-weight-semibold);
}
.theme-directory-labels-v2 {
@@ -571,7 +571,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(250, 251, 252);
background: var(--surface-subtle);
color: var(--r2-faint);
@@ -651,7 +651,7 @@
}
.theme-directory-item-v2:hover {
background: rgb(247, 249, 252);
background: var(--surface-hover);
}
.theme-directory-item-v2.active {
@@ -685,7 +685,7 @@
.theme-directory-item-v2:nth-child(-n+3) .theme-rank-v2 {
color: var(--r2-amber);
font-weight: 750;
font-weight: var(--font-weight-bold);
}
.theme-directory-copy-v2 {
@@ -703,7 +703,7 @@
font-size: 13px;
font-weight: 650;
font-weight: var(--font-weight-semibold);
text-overflow: ellipsis;
@@ -848,7 +848,7 @@
font-size: 18px;
font-weight: 750;
font-weight: var(--font-weight-bold);
text-overflow: ellipsis;
@@ -862,7 +862,7 @@
border-radius: 4px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: var(--r2-sub);
@@ -888,7 +888,7 @@
.theme-change-v2 strong {
font-size: 22px;
font-weight: 750;
font-weight: var(--font-weight-bold);
font-variant-numeric: tabular-nums;
}
@@ -902,7 +902,7 @@
border-bottom: 1px solid var(--r2-line-soft);
background: rgb(252, 252, 253);
background: var(--table-header);
}
.theme-detail-metrics-v2 > div {
@@ -1034,7 +1034,7 @@
border-bottom-color: var(--r2-line);
background: rgb(250, 251, 252);
background: var(--surface-subtle);
color: var(--r2-sub);
@@ -1054,17 +1054,17 @@
}
.theme-members-table-v2 tbody tr:hover {
background: rgb(247, 249, 252);
background: var(--table-hover);
}
.theme-members-table-v2 .stock-name {
color: var(--r2-ink);
font-weight: 650;
font-weight: var(--font-weight-semibold);
}
.theme-members-table-v2 .stock-code {
color: rgb(64, 85, 115);
color: var(--action);
}
@media (min-width: 1181px) {
+5 -5
View File
@@ -315,7 +315,7 @@
border-radius: 4px;
background: rgb(255, 255, 255);
background: var(--surface);
}
.membership-expiry {
@@ -729,7 +729,7 @@ button.account-role-badge:focus-visible {
.vip-role-badge.is-nonmember b {
background: rgb(135, 147, 158);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
.vip-role-badge b {
@@ -1216,7 +1216,7 @@ button.account-role-badge:focus-visible {
background: rgb(37, 99, 235);
color: rgb(255, 255, 255);
color: var(--text-inverse);
box-shadow: none;
@@ -1401,7 +1401,7 @@ button.account-role-badge:focus-visible {
border-radius: 7px;
background: rgb(248, 250, 252);
background: var(--table-header);
}
.account-settings-dialog .membership-status-grid span {
@@ -1439,7 +1439,7 @@ button.account-role-badge:focus-visible {
}
.account-settings-dialog .membership-comparison-head {
background: rgb(245, 247, 249);
background: var(--table-header);
}
.account-settings-dialog .membership-topup-row {
+6 -6
View File
@@ -54,7 +54,7 @@ html {
color: var(--r2-ink);
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
font-family: inherit;
font-size: 13px;
}
@@ -80,7 +80,7 @@ body {
color: var(--ink);
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
font-family: inherit;
font-size: 13px;
@@ -98,7 +98,7 @@ time {
}
[tabindex]:focus-visible {
outline: rgba(8, 127, 174, 0.48) solid 2px;
outline: var(--action) solid 2px;
outline-offset: 2px;
}
@@ -110,17 +110,17 @@ dialog {
border: 1px solid var(--border);
border-radius: 9px;
border-radius: var(--radius-lg);
background: var(--surface);
color: var(--text);
box-shadow: var(--shadow);
box-shadow: var(--shadow-float);
}
dialog::backdrop {
background: rgba(27, 38, 49, 0.48);
background: var(--backdrop);
backdrop-filter: blur(2px);
}
+30 -28
View File
@@ -201,13 +201,13 @@
}
.card {
background: var(--card);
background: var(--card-bg);
border: 1px solid var(--line);
border: 1px solid var(--card-border);
border-radius: var(--radius);
border-radius: var(--card-radius);
box-shadow: var(--shadow);
box-shadow: var(--card-shadow);
}
.card-h {
@@ -219,19 +219,21 @@
padding: 11px 14px;
border-bottom: 1px solid var(--line-soft);
border-bottom: 1px solid var(--border-subtle);
}
.card-h h3 {
font-size: 14px;
color: var(--text-primary);
font-weight: 700;
font-size: var(--font-size-card-title);
font-weight: var(--font-weight-bold);
}
.card-h .sub {
font-size: 11px;
font-size: var(--font-size-caption);
color: var(--faint);
color: var(--text-tertiary);
}
.card-h .right {
@@ -285,11 +287,11 @@
}
.tag.neu {
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: rgb(75, 85, 99);
color: var(--text-secondary);
border-color: rgb(229, 231, 235);
border-color: var(--border);
}
.tag.red {
@@ -313,7 +315,7 @@
.tag.b3 {
background: var(--blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
.field {
@@ -335,9 +337,9 @@
.src {
display: inline-block;
background: rgb(243, 244, 246);
background: var(--surface-muted);
color: rgb(107, 114, 128);
color: var(--text-secondary);
border-radius: 4px;
@@ -435,7 +437,7 @@
background: var(--up-soft);
border: 1px solid rgb(245, 207, 201);
border: 1px solid var(--up);
border-radius: 10px;
@@ -467,7 +469,7 @@
.phase-info .sum {
font-size: 12.5px;
color: rgb(55, 65, 81);
color: var(--text-primary);
line-height: 1.7;
}
@@ -651,19 +653,19 @@
}
.tier.t4 .lab {
background: linear-gradient(90deg, rgb(253, 241, 239), rgb(255, 255, 255));
background: var(--up-soft);
}
.tier.t3 .lab {
background: linear-gradient(90deg, rgb(253, 246, 236), rgb(255, 255, 255));
background: var(--warning-soft);
}
.tier.t2 .lab {
background: linear-gradient(90deg, rgb(236, 247, 241), rgb(255, 255, 255));
background: var(--down-soft);
}
.tier.t1 .lab {
background: linear-gradient(90deg, rgb(238, 244, 253), rgb(255, 255, 255));
background: var(--action-soft);
}
.tier.gap .cards {
@@ -797,7 +799,7 @@
height: 8px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
border-radius: 4px;
@@ -875,7 +877,7 @@
height: 9px;
background: rgb(240, 242, 245);
background: var(--surface-muted);
border-radius: 5px;
@@ -887,7 +889,7 @@
height: 100%;
background: linear-gradient(90deg,#93b4f5,var(--blue));
background: var(--blue);
border-radius: 5px;
}
@@ -913,7 +915,7 @@
}
.perf-card {
background: rgb(255, 255, 255);
background: var(--surface);
border: 1px solid var(--line);
@@ -939,7 +941,7 @@
.perf-card .bar {
height: 6px;
background: rgb(240, 242, 245);
background: var(--surface-muted);
border-radius: 3px;
@@ -973,7 +975,7 @@
}
.width-bar .dn {
background: rgb(22, 163, 74);
background: var(--down);
}
.width-legend {
@@ -1011,7 +1013,7 @@
}
.model:hover {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.model .r1 {
+23 -23
View File
@@ -87,7 +87,7 @@ textarea:focus-visible {
}
.sidebar-collapse-button:hover {
background: rgb(241, 244, 247);
background: var(--control-hover);
color: var(--text-primary);
}
@@ -203,7 +203,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
.icon-button:hover {
border-color: rgb(148, 181, 216);
background: rgb(248, 251, 255);
background: var(--surface-selected);
color: var(--action-hover);
@@ -454,7 +454,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
min-height: var(--control-height);
border-color: var(--border-strong);
border-color: var(--control-border);
border-radius: var(--radius-md);
@@ -462,13 +462,13 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
padding: 0px 12px;
background: var(--surface-raised);
background: var(--control-surface);
color: var(--xb-gray-700);
color: var(--text-primary);
font-size: 12px;
font-size: var(--font-size-label);
font-weight: 620;
font-weight: var(--font-weight-semibold);
transition: border-color var(--duration-fast), color var(--duration-fast), background var(--duration-fast), transform var(--duration-fast);
}
@@ -476,17 +476,17 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
.button:hover {
box-shadow: none;
border-color: rgb(184, 199, 232);
border-color: var(--color-action-line);
color: var(--primary);
background: var(--xb-gray-25);
background: var(--control-hover);
}
.button:active {
box-shadow: none;
transform: translateY(1px);
transform: scale(.98);
}
.button.primary {
@@ -494,7 +494,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
background: var(--primary);
color: rgb(255, 255, 255);
color: var(--on-action);
}
.button.primary:hover {
@@ -502,7 +502,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
background: var(--primary-hover);
color: rgb(255, 255, 255);
color: var(--on-action);
}
.form-field input {
@@ -520,7 +520,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
border-radius: var(--radius-md);
background: var(--surface-raised);
background: var(--control-surface);
box-shadow: none;
}
@@ -531,7 +531,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
border-radius: var(--radius-md);
background: var(--surface-raised);
background: var(--control-surface);
box-shadow: none;
}
@@ -579,7 +579,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
border-radius: var(--radius-md);
background: var(--surface-raised);
background: var(--control-surface);
box-shadow: none;
}
@@ -588,9 +588,9 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
.form-field select:focus,
.form-field textarea:focus,
.search-field:focus-within {
border-color: rgb(142, 172, 239);
border-color: var(--action);
box-shadow: rgba(53, 106, 230, 0.1) 0px 0px 0px 3px;
box-shadow: 0 0 0 3px var(--focus-ring);
}
@media (max-width: 720px) {
@@ -682,7 +682,7 @@ body.sidebar-collapsed .sidebar-collapse-button .lucide {
border-radius: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-sub);
@@ -714,7 +714,7 @@ body.sidebar-collapsed .sidebar-collapse-button {
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(75, 85, 99);
@@ -732,7 +732,7 @@ body.sidebar-collapsed .sidebar-collapse-button {
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--surface);
color: rgb(55, 65, 81);
@@ -748,7 +748,7 @@ body.sidebar-collapsed .sidebar-collapse-button {
background: var(--r2-blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
@media (max-width: 1023px) and (min-width: 721px) {
@@ -830,7 +830,7 @@ textarea {
}
.seg button.on {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--ink);
@@ -922,7 +922,7 @@ textarea {
.method button.on {
background: var(--blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
}
.factor input[type="range"] {
+4 -4
View File
@@ -40,7 +40,7 @@
border-radius: 7px;
background: rgb(250, 251, 252);
background: var(--surface-subtle);
}
@keyframes overlay-enter {
@@ -266,7 +266,7 @@
background: var(--market-up);
color: rgb(255, 255, 255);
color: var(--text-inverse);
font-size: 9px;
@@ -977,7 +977,7 @@
border-radius: 7px;
background: rgb(250, 251, 252);
background: var(--surface-subtle);
}
.global-search-empty {
@@ -1193,7 +1193,7 @@
bottom: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
z-index: 95;
+1 -5
View File
@@ -132,7 +132,7 @@
background: rgb(33, 49, 60);
color: rgb(255, 255, 255);
color: var(--text-inverse);
box-shadow: var(--shadow);
@@ -364,14 +364,10 @@
@keyframes stage18-dialog-enter {
0% {
opacity: 0;
transform: translateY(7px) scale(0.992);
}
100% {
opacity: 1;
transform: translateY(0px) scale(1);
}
}
@@ -114,7 +114,7 @@
border-radius: 8px;
background: rgb(243, 244, 246);
background: var(--surface-muted);
}
.redesigned-page-head .segment {
@@ -134,7 +134,7 @@
}
.redesigned-page-head .segment.active {
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--r2-ink);
@@ -204,7 +204,7 @@
.seg {
display: inline-flex;
background: rgb(243, 244, 246);
background: var(--surface-muted);
border-radius: 8px;
+20 -20
View File
@@ -6,7 +6,7 @@
}
.data-table th[data-sort]:hover {
background: rgb(227, 237, 242);
background: var(--surface-hover);
color: var(--blue-dark);
}
@@ -76,7 +76,7 @@
}
.data-table:not(#limitTable) th[data-auto-sort]:hover {
background: rgb(227, 237, 242);
background: var(--surface-hover);
color: var(--action-hover);
}
@@ -110,7 +110,7 @@
}
.data-table td {
background: var(--surface);
background: transparent;
text-align: left;
@@ -120,7 +120,7 @@
border-right: 0px;
border-bottom: 1px solid rgb(232, 237, 241);
border-bottom: 1px solid var(--border-subtle);
line-height: 1.4;
}
@@ -138,23 +138,23 @@
border-right: 0px;
border-bottom: 1px solid rgb(232, 237, 241);
border-bottom: 1px solid var(--border);
line-height: 1.4;
height: 38px;
background: rgb(244, 247, 249);
background: var(--table-header);
color: rgb(82, 98, 115);
color: var(--text-secondary);
font-size: 11.5px;
font-size: var(--font-size-label);
font-weight: 700;
font-weight: var(--font-weight-semibold);
}
.data-table tbody tr.selected td {
background: rgb(237, 245, 255);
background: var(--table-selected);
}
@media (max-width: 720px) {
@@ -188,13 +188,13 @@
white-space: nowrap;
color: rgb(38, 51, 64);
color: var(--text-primary);
width: 100%;
border-collapse: collapse;
font-size: 12.5px;
font-size: var(--font-size-table);
}
.data-table tbody tr:last-child td {
@@ -208,7 +208,7 @@
}
.data-table tbody tr:hover td {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.data-table .stock-name {
@@ -246,25 +246,25 @@
border-bottom: 1px solid var(--border);
background: var(--surface-subtle);
background: var(--table-header);
color: var(--text-secondary);
font-weight: 650;
font-weight: var(--font-weight-semibold);
white-space: nowrap;
height: 36px;
font-size: 11.5px;
font-size: var(--font-size-label);
}
.data-table tbody td {
padding: 6px 11px;
border-bottom: 1px solid rgb(237, 240, 244);
border-bottom: 1px solid var(--border-subtle);
color: var(--xb-gray-700);
color: var(--text-primary);
height: 41px;
}
@@ -294,7 +294,7 @@
top: 0px;
background: rgb(248, 250, 252);
background: var(--table-header);
color: var(--sub);
@@ -346,7 +346,7 @@
}
.tbl tbody tr:hover {
background: rgb(248, 250, 255);
background: var(--table-hover);
}
.tbl.compact tbody td {
+74 -49
View File
@@ -848,7 +848,7 @@ body.sidebar-collapsed .app-main {
.header-actions > .icon-button:hover {
border-color: transparent;
background: rgb(241, 243, 246);
background: var(--control-hover);
color: var(--primary);
}
@@ -880,7 +880,7 @@ body.sidebar-collapsed .app-main {
text-align: left;
color: rgb(75, 85, 101);
color: var(--text-secondary);
transition: color var(--duration-fast), background var(--duration-fast);
@@ -906,13 +906,13 @@ body.sidebar-collapsed .app-main {
stroke-width: 1.75;
color: rgb(136, 147, 164);
color: var(--text-tertiary);
}
.module-tab.active {
border: 0px;
background: var(--xb-blue-50);
background: var(--surface-selected);
color: var(--primary);
@@ -920,7 +920,7 @@ body.sidebar-collapsed .app-main {
position: relative;
font-weight: 650;
font-weight: var(--font-weight-semibold);
}
.module-tab.active::before {
@@ -1053,17 +1053,17 @@ body.sidebar-collapsed .app-main {
width: 100%;
height: 108px;
height: var(--mobile-header-height);
min-height: 108px;
min-height: var(--mobile-header-height);
position: relative;
display: flex;
align-items: flex-start;
align-items: center;
padding: 8px 10px 0px;
padding: var(--mobile-shell-pad) 10px;
}
.brand-mark {
@@ -1075,25 +1075,29 @@ body.sidebar-collapsed .app-main {
.header-actions {
grid-area: 1 / 2;
position: absolute;
position: static;
inset: 56px 10px auto;
inset: auto;
display: flex;
justify-content: space-between;
justify-content: flex-start;
gap: 6px;
gap: var(--space-4);
}
.header-date-group {
gap: 1px;
height: 42px;
height: 36px;
min-width: 0px;
flex: 1 1 0%;
flex: 1 1 auto;
}
.header-date-group > .icon-button {
display: none;
}
.header-date-group .date-input {
@@ -1101,17 +1105,17 @@ body.sidebar-collapsed .app-main {
font-size: 11.5px;
width: 104px;
width: 100%;
flex: 1 1 0%;
}
.header-actions > .icon-button {
width: 40px;
width: 36px;
min-width: 40px;
min-width: 36px;
min-height: 42px;
min-height: 36px;
}
.module-nav {
@@ -1354,7 +1358,7 @@ body.sidebar-collapsed {
background: var(--r2-blue);
color: rgb(255, 255, 255);
color: var(--on-action);
font-size: 14px;
@@ -1450,7 +1454,7 @@ body.sidebar-collapsed .module-nav .nav-group + .nav-group {
background: transparent;
color: rgb(55, 65, 81);
color: var(--text-secondary);
font-size: 13px;
@@ -1470,7 +1474,7 @@ body.sidebar-collapsed .module-nav .nav-group + .nav-group {
}
.module-nav .module-tab:hover {
background: rgb(246, 247, 249);
background: var(--surface-hover);
color: var(--r2-ink);
}
@@ -1492,11 +1496,11 @@ body.sidebar-collapsed .module-nav .nav-group + .nav-group {
}
.module-nav .module-tab.active::before {
display: none;
display: block;
}
.module-nav .module-tab.mobile-active::before {
display: none;
display: block;
}
body.sidebar-collapsed .module-nav {
@@ -1518,7 +1522,7 @@ body.sidebar-collapsed .module-nav {
border-right: 1px solid var(--r2-line);
background: rgb(255, 255, 255);
background: var(--surface);
width: 64px;
@@ -1566,7 +1570,7 @@ body.sidebar-collapsed .module-nav .module-tab {
background: transparent;
color: rgb(55, 65, 81);
color: var(--text-secondary);
font-size: 13px;
@@ -1632,7 +1636,7 @@ body.sidebar-collapsed .module-nav .module-tab {
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--control-surface);
}
.header-date-group .date-input {
@@ -1666,9 +1670,9 @@ body.sidebar-collapsed .module-nav .module-tab {
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--control-surface);
color: rgb(75, 85, 99);
color: var(--text-secondary);
box-shadow: none;
}
@@ -1684,9 +1688,9 @@ body.sidebar-collapsed .module-nav .module-tab {
border-radius: 7px;
background: rgb(255, 255, 255);
background: var(--control-surface);
color: rgb(75, 85, 99);
color: var(--text-secondary);
box-shadow: none;
@@ -1726,7 +1730,7 @@ body.sidebar-collapsed .module-nav .module-tab {
margin: 0px;
padding: 0px 16px 14px;
padding: 0 var(--page-pad-x) var(--page-pad-y);
overflow: auto;
}
@@ -1738,9 +1742,9 @@ body.sidebar-collapsed .module-nav .module-tab {
grid-template-columns: minmax(178px, 1.15fr) repeat(5, minmax(68px, 0.52fr)) minmax(168px, 0.9fr) 92px;
height: 32px;
height: var(--summary-height);
min-height: 34px;
min-height: var(--summary-height);
display: flex;
@@ -1764,7 +1768,7 @@ body.sidebar-collapsed .module-nav .module-tab {
border-radius: 0px;
background: rgb(255, 255, 255);
background: var(--surface);
box-shadow: none;
}
@@ -1832,7 +1836,7 @@ body.sidebar-collapsed .module-nav .module-tab {
}
.overview-strip .full .cell {
background: rgb(255, 255, 255);
background: var(--surface);
padding: 10px 16px;
}
@@ -1954,7 +1958,7 @@ body.sidebar-collapsed .module-nav .module-tab {
max-width: none;
margin: 14px 0px 0px;
margin: 0;
border-width: 0px;
@@ -1962,15 +1966,15 @@ body.sidebar-collapsed .module-nav .module-tab {
border-image: none;
padding: 14px 16px 24px;
padding: var(--page-pad-y) 0 24px;
border-color: var(--r2-line);
border-color: transparent;
border-radius: var(--r2-radius);
border-radius: 0;
background: rgb(255, 255, 255);
background: transparent;
box-shadow: var(--r2-shadow);
box-shadow: none;
}
.status-bar {
@@ -2006,7 +2010,7 @@ body.sidebar-collapsed .module-nav .module-tab {
border-top: 1px solid var(--line);
background: rgb(255, 255, 255);
background: var(--surface);
color: var(--faint);
@@ -2109,9 +2113,9 @@ body.sidebar-collapsed .status-bar {
.workspace-view:is(#auctionView, #themeLibraryView, #popularityView, #dragonView) {
width: auto;
margin: 14px 0px 0px;
margin: 0;
padding: 14px 16px 22px;
padding: var(--page-pad-y) var(--page-pad-x) 22px;
overflow: visible;
@@ -2152,7 +2156,7 @@ body.sidebar-collapsed .status-bar {
width: var(--sidebar-width);
background: rgb(255, 255, 255);
background: var(--surface);
border-right: 1px solid var(--line);
@@ -2184,7 +2188,7 @@ body.sidebar-collapsed .status-bar {
background: var(--blue);
color: rgb(255, 255, 255);
color: var(--text-inverse);
display: flex;
@@ -2282,7 +2286,7 @@ body.sidebar-collapsed .status-bar {
z-index: 50;
background: rgb(255, 255, 255);
background: var(--surface);
border-bottom: 1px solid var(--line);
@@ -2481,7 +2485,17 @@ body.sidebar-collapsed .status-bar {
}
.header-command-group {
position: absolute;
position: fixed;
top: calc(var(--mobile-header-height) + var(--space-4));
right: var(--mobile-shell-pad);
display: none;
}
.header-command-group.is-open {
display: flex;
}
.module-nav {
@@ -2620,6 +2634,11 @@ body.sidebar-collapsed .status-bar {
display: inline;
}
.module-nav .module-tab.active::before,
.module-nav .module-tab.mobile-active::before {
display: none;
}
.module-nav .module-tab.mobile-primary-tab .nav-label-desktop {
display: none;
}
@@ -2664,6 +2683,12 @@ body.sidebar-collapsed .status-bar {
padding-inline: var(--mobile-shell-pad);
overflow-x: auto;
scrollbar-width: none;
}
.overview-strip::-webkit-scrollbar {
display: none;
}
.overview-strip .row {
+73 -28
View File
@@ -14,38 +14,38 @@
--color-white: #ffffff;
--color-gray-25: #fcfcfd;
--color-gray-50: #f8f9fb;
--color-gray-100: #f2f4f7;
--color-gray-200: #e5e8ee;
--color-gray-300: #d4d9e2;
--color-gray-500: #697386;
--color-gray-700: #344054;
--color-gray-900: #172033;
--color-shell-canvas: #f1f4f6;
--color-gray-100: #f3f4f6;
--color-gray-200: #e5e7eb;
--color-gray-300: #d1d5db;
--color-gray-500: #6b7280;
--color-gray-700: #374151;
--color-gray-900: #1f2937;
--color-shell-canvas: #f4f5f7;
--color-page-canvas: #f4f5f7;
--color-surface-muted: #f6f8fa;
--color-surface-muted: #f3f4f6;
--color-surface-subtle: #f8fafc;
--color-border: #e5e7eb;
--color-border-strong: #d1d5db;
--color-text-primary: #1f2937;
--color-text-secondary: #6b7280;
--color-text-tertiary: #9ca3af;
--color-action-base: #1769c2;
--color-action-base-hover: #10569f;
--color-action-base-soft: #eaf2fb;
--color-action-base: #2563eb;
--color-action-base-hover: #1d4ed8;
--color-action-base-soft: #eff4ff;
--color-action: #2563eb;
--color-action-hover: #1d4ed8;
--color-action-soft: #eff4ff;
--color-action-line: #c7d8fb;
--color-market-up-base: #d33f49;
--color-market-up-base-soft: #fff0f1;
--color-market-up-base: #e04536;
--color-market-up-base-soft: #fdecea;
--color-market-up: #e04536;
--color-market-up-soft: #fdecea;
--color-market-down-base: #07805b;
--color-market-down-base-soft: #eaf7f2;
--color-market-down-base: #16a34a;
--color-market-down-base-soft: #e9f7ee;
--color-market-down: #16a34a;
--color-market-down-soft: #e9f7ee;
--color-warning-base: #aa6800;
--color-warning-base-soft: #fff6e5;
--color-warning-base: #b45309;
--color-warning-base-soft: #fdf3e3;
--color-warning: #b45309;
--color-warning-soft: #fdf3e3;
@@ -55,16 +55,16 @@
--size-control: 32px;
--size-sidebar: 200px;
--size-topbar: 46px;
--size-summary: 34px;
--size-summary: 36px;
--size-statusbar: 30px;
--size-page-pad-y: 14px;
--size-page-pad-x: 16px;
--size-card-gap: 12px;
--elevation-card: 0 1px 2px rgba(16, 24, 40, .05);
--elevation-soft: 0 1px 2px rgba(22, 34, 46, .04), 0 5px 18px rgba(22, 34, 46, .035);
--elevation-soft: 0 1px 2px rgba(16, 24, 40, .05);
--elevation-raised: 0 4px 14px rgba(16, 24, 40, .06);
--elevation-float: 0 14px 38px rgba(16, 24, 40, .14);
--elevation-float: 0 12px 32px rgba(0, 0, 0, .18);
--motion-instant: 100ms;
--motion-fast: 140ms;
--motion-medium: 200ms;
@@ -79,12 +79,18 @@
--surface-subtle: var(--color-surface-subtle);
--surface-canvas: var(--color-page-canvas);
--surface-raised: var(--color-white);
--surface-selected: #eef4ff;
--surface-sunken: #eef0f3;
--surface-hover: #f8faff;
--surface-selected: #eff4ff;
--surface-overlay: var(--color-white);
--border: var(--color-border);
--border-strong: var(--color-border-strong);
--border-subtle: #eef0f3;
--text-primary: var(--color-text-primary);
--text-secondary: var(--color-text-secondary);
--text-tertiary: var(--color-text-tertiary);
--text-inverse: #ffffff;
--on-action: #ffffff;
--action: var(--color-action-base);
--action-hover: var(--color-action-base-hover);
--action-soft: var(--color-action-base-soft);
@@ -94,6 +100,14 @@
--market-down-soft: var(--color-market-down-base-soft);
--warning-color: var(--color-warning-base);
--warning-soft: var(--color-warning-base-soft);
--control-surface: var(--surface-raised);
--control-hover: var(--surface-hover);
--control-border: var(--border-strong);
--table-header: var(--surface-subtle);
--table-hover: #f8faff;
--table-selected: var(--surface-selected);
--focus-ring: rgba(37, 99, 235, .16);
--backdrop: rgba(17, 24, 39, .48);
--primary: var(--color-action);
--primary-hover: var(--color-action-hover);
--danger: var(--color-market-up);
@@ -116,6 +130,25 @@
--duration-fast: 150ms;
--duration-normal: 220ms;
--font-size-aux: 10.5px;
--font-size-caption: 11px;
--font-size-label: 12px;
--font-size-table: 12.5px;
--font-size-body: 13px;
--font-size-card-title: 14px;
--font-size-page-title: 17px;
--font-size-metric: 22px;
--font-weight-regular: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--space-4: 4px;
--space-8: 8px;
--space-12: 12px;
--space-16: 16px;
--space-24: 24px;
--sidebar-width: var(--size-sidebar);
--topbar-height: var(--size-topbar);
--summary-height: var(--size-summary);
@@ -146,8 +179,7 @@
--mobile-shell-pad: 8px;
--mobile-page-pad: 10px;
--mobile-min-width: 320px;
--space-4: 4px;
--font-aux: 10.5px;
--font-aux: var(--font-size-aux);
--dragon-profile-list-width: 340px;
--dragon-profile-detail-min-height: 460px;
@@ -216,7 +248,7 @@
--sub: var(--text-secondary);
--faint: var(--text-tertiary);
--line: var(--border);
--line-soft: #eef0f3;
--line-soft: var(--border-subtle);
--line-strong: var(--border-strong);
--text: var(--text-primary);
--text-muted: var(--text-secondary);
@@ -253,7 +285,7 @@
--r2-sub: var(--text-secondary);
--r2-faint: var(--text-tertiary);
--r2-line: var(--border);
--r2-line-soft: #eef0f3;
--r2-line-soft: var(--border-subtle);
--r2-bg: var(--surface-canvas);
--r2-card: var(--surface-raised);
--r2-radius: var(--size-radius-lg);
@@ -271,12 +303,17 @@
--surface-subtle: #24282d;
--surface-canvas: var(--canvas);
--surface-raised: var(--surface);
--surface-sunken: #16191c;
--surface-hover: #24282d;
--surface-selected: #23364a;
--surface-overlay: #24282d;
--border: #343a40;
--border-strong: #474f57;
--border-subtle: #2a2f34;
--text-primary: #e8eaed;
--text-secondary: #adb5bd;
--text-tertiary: #7f8993;
--text-inverse: #ffffff;
--action: #6ca8e8;
--action-hover: #8bbcf0;
--action-soft: #23364a;
@@ -286,6 +323,14 @@
--market-down-soft: #1d382f;
--warning-color: #e2ad58;
--warning-soft: #3d3220;
--control-surface: #202428;
--control-hover: #2a2f34;
--control-border: #474f57;
--table-header: #202428;
--table-hover: #242f39;
--table-selected: #23364a;
--focus-ring: rgba(108, 168, 232, .22);
--backdrop: rgba(0, 0, 0, .66);
--primary: var(--action);
--primary-hover: var(--action-hover);
--danger: var(--market-up);
@@ -319,7 +364,7 @@
--sub: var(--text-secondary);
--faint: var(--text-tertiary);
--line: var(--border);
--line-soft: #2a2f34;
--line-soft: var(--border-subtle);
--line-strong: var(--border-strong);
--text: var(--text-primary);
--text-muted: var(--text-secondary);
@@ -352,7 +397,7 @@
--r2-sub: var(--text-secondary);
--r2-faint: var(--text-tertiary);
--r2-line: var(--border);
--r2-line-soft: #2a2f34;
--r2-line-soft: var(--border-subtle);
--r2-bg: var(--canvas);
--r2-card: var(--surface);
--r2-shadow: var(--shadow-soft);
@@ -384,7 +429,7 @@
--warning-line: #6d5a38;
--warning-line-strong: #66502d;
--control-shadow: 0 1px 3px rgba(0, 0, 0, .3);
--dialog-backdrop: rgba(0, 0, 0, .62);
--dialog-backdrop: var(--backdrop);
--ladder-level-1: #2d2426;
--ladder-level-2: #2b2822;
--ladder-level-3: #252a2d;