Reduce duplicate scan terminal decision copy and chrome
Removed the scan KPI bar, trimmed redundant decision-card content, and shortened the primary reason text so the city analysis cards read like concise signals instead of repeating the same state across sections. Constraint: Keep existing city decision logic and data flow unchanged while simplifying the UI Rejected: Rework the full card layout or mobile card flow | larger surface area than requested Confidence: high Scope-risk: narrow Reversibility: clean Directive: Keep hero, decision band, and market line responsibilities separate to avoid duplicate copy returning Tested: frontend npm run build Not-tested: Manual visual QA in browser across desktop/mobile breakpoints
This commit is contained in:
@@ -247,97 +247,6 @@
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
/* KPI Bar */
|
||||
.root :global(.scan-kpi-bar) {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(5, 1fr);
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-card) {
|
||||
background: rgba(13, 17, 23, 0.6);
|
||||
border: 1px solid rgba(255, 255, 255, 0.05);
|
||||
border-radius: 12px;
|
||||
padding: 16px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-card:hover) {
|
||||
background: rgba(255, 255, 255, 0.04);
|
||||
border-color: rgba(0, 224, 164, 0.3);
|
||||
transform: translateY(-2px);
|
||||
box-shadow: 0 8px 16px -8px rgba(0, 0, 0, 0.5);
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-card::after) {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 2px;
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
transparent,
|
||||
rgba(0, 224, 164, 0.5),
|
||||
transparent
|
||||
);
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s;
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-card:hover::after) {
|
||||
transform: translateX(100%);
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-green) {
|
||||
border-top: 2px solid rgba(0, 224, 164, 0.4);
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-purple) {
|
||||
border-top: 2px solid rgba(123, 97, 255, 0.4);
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-header) {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-icon) {
|
||||
color: var(--text-muted);
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-label) {
|
||||
font-size: 11px;
|
||||
font-weight: 500;
|
||||
color: var(--text-muted);
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.06em;
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-value) {
|
||||
font-size: 22px;
|
||||
font-weight: 800;
|
||||
color: var(--text-primary);
|
||||
font-variant-numeric: tabular-nums;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-green .scan-kpi-value) {
|
||||
color: #4DA3FF;
|
||||
}
|
||||
|
||||
.root :global(.scan-kpi-delta) {
|
||||
font-size: 11px;
|
||||
color: var(--text-muted);
|
||||
}
|
||||
|
||||
/* View Tabs */
|
||||
.root :global(.scan-view-tabs) {
|
||||
display: flex;
|
||||
|
||||
Reference in New Issue
Block a user