|
1 | 1 | /** |
2 | 2 | * @fileoverview Job Statistics Component Styles |
3 | 3 | * |
4 | | - * Modern, professional job statistics display with enhanced readability |
5 | | - * and visual hierarchy. Optimized for grid-based layouts with dynamic sizing. |
6 | | - * |
7 | | - * Key features: |
8 | | - * - Flexible height that adapts to grid item size |
9 | | - * - Enhanced typography with proper visual hierarchy |
10 | | - * - Modern card-based panel header |
11 | | - * - Smooth scrolling with refined scrollbar styling |
12 | | - * - Consistent with unified design language |
| 4 | + * Compact pill-based presentation matching the Additional Info component to |
| 5 | + * deliver a cohesive layout with reduced vertical space usage. |
13 | 6 | */ |
14 | 7 |
|
15 | 8 | .component-job-stats { |
16 | | - border-top: 1px solid var(--border-color-light); |
17 | 9 | display: flex; |
18 | 10 | flex-direction: column; |
19 | 11 | height: 100%; |
20 | 12 | min-height: 0; |
21 | | - flex: 1 1 auto; |
| 13 | + background: transparent; |
| 14 | +} |
| 15 | + |
| 16 | +.component-job-stats .job-stats-container { |
| 17 | + display: flex; |
| 18 | + flex-direction: column; |
| 19 | + height: 100%; |
| 20 | + min-height: 0; |
22 | 21 | overflow: hidden; |
23 | 22 | background: transparent; |
24 | 23 | } |
|
37 | 36 | } |
38 | 37 |
|
39 | 38 | .component-job-stats .panel-content { |
40 | | - padding: 16px 14px 18px; |
41 | | - flex: 1 1 auto; |
42 | | - overflow: auto; |
| 39 | + padding: 10px 8px; |
| 40 | + flex: 1; |
43 | 41 | display: flex; |
44 | 42 | flex-direction: column; |
45 | | - gap: 12px; |
46 | | - min-height: 0; |
| 43 | + justify-content: center; |
| 44 | + gap: 6px; |
| 45 | + min-width: 200px; |
| 46 | + font-family: 'Segoe UI', -apple-system, BlinkMacSystemFont, sans-serif; |
| 47 | + overflow: auto; |
47 | 48 | } |
48 | 49 |
|
49 | | -.component-job-stats .info-row { |
| 50 | +.component-job-stats .info-display-row { |
50 | 51 | display: flex; |
51 | | - justify-content: space-between; |
52 | 52 | align-items: center; |
53 | | - gap: 12px; |
54 | | - flex-wrap: wrap; |
55 | | - padding: 8px 0; |
56 | | - border-bottom: 1px solid rgba(255, 255, 255, 0.03); |
| 53 | + justify-content: space-between; |
| 54 | + padding: 8px 10px; |
| 55 | + background: linear-gradient(135deg, rgba(45, 45, 45, 0.8) 0%, rgba(35, 35, 35, 0.9) 100%); |
| 56 | + border-radius: 6px; |
| 57 | + border: 1px solid var(--border-color); |
| 58 | + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03), var(--shadow-sm); |
| 59 | + transition: all var(--transition-normal); |
| 60 | + min-height: 36px; |
| 61 | + width: 100%; |
| 62 | + backdrop-filter: blur(8px); |
57 | 63 | } |
58 | 64 |
|
59 | | -.component-job-stats .info-row:last-child { |
60 | | - border-bottom: none; |
| 65 | +.component-job-stats .info-display-row:hover { |
| 66 | + border-color: var(--border-color-light); |
| 67 | + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), var(--shadow-md); |
| 68 | + background: linear-gradient(135deg, rgba(50, 50, 50, 0.85) 0%, rgba(40, 40, 40, 0.95) 100%); |
| 69 | + transform: translateY(-1px); |
61 | 70 | } |
62 | 71 |
|
63 | 72 | .component-job-stats .info-label { |
64 | | - font-size: clamp(11px, 1.4vw, 13px); |
65 | | - font-weight: 600; |
| 73 | + font-size: 11px; |
| 74 | + font-weight: 700; |
66 | 75 | color: var(--text-color-secondary); |
67 | 76 | letter-spacing: 0.5px; |
68 | 77 | text-transform: uppercase; |
| 78 | + min-width: 70px; |
| 79 | + flex-shrink: 0; |
69 | 80 | } |
70 | 81 |
|
71 | 82 | .component-job-stats .info-value { |
72 | | - font-size: clamp(14px, 1.6vw, 16px); |
| 83 | + font-size: 14px; |
73 | 84 | font-weight: 700; |
74 | 85 | color: var(--text-color); |
75 | | - word-break: break-word; |
| 86 | + font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', sans-serif; |
| 87 | + letter-spacing: 0.2px; |
76 | 88 | text-align: right; |
77 | | - transition: color var(--transition-normal); |
| 89 | + flex-grow: 1; |
| 90 | + margin-left: 8px; |
| 91 | + transition: color var(--transition-normal), text-shadow var(--transition-normal); |
78 | 92 | } |
79 | 93 |
|
80 | | -.component-job-stats .info-row:hover .info-value { |
| 94 | +.component-job-stats .info-value:hover { |
81 | 95 | color: var(--accent-color); |
| 96 | + text-shadow: 0 0 12px rgba(66, 133, 244, 0.3); |
82 | 97 | } |
83 | 98 |
|
84 | | -@media (max-width: 900px) { |
85 | | - .component-job-stats .info-row { |
86 | | - align-items: flex-start; |
| 99 | +@media (max-width: 768px) { |
| 100 | + .component-job-stats .panel-content { |
| 101 | + padding: 12px 8px; |
| 102 | + gap: 8px; |
| 103 | + } |
| 104 | + |
| 105 | + .component-job-stats .info-label { |
| 106 | + font-size: 10px; |
| 107 | + min-width: 60px; |
87 | 108 | } |
88 | 109 |
|
89 | 110 | .component-job-stats .info-value { |
90 | | - width: 100%; |
| 111 | + font-size: 13px; |
91 | 112 | } |
92 | 113 | } |
93 | 114 |
|
94 | | -@media (max-height: 600px) { |
95 | | - .component-job-stats .panel-content { |
96 | | - padding: 8px 10px 12px; |
97 | | - gap: 8px; |
| 115 | +@media (prefers-contrast: high) { |
| 116 | + .component-job-stats .info-display-row { |
| 117 | + border-color: var(--border-color-light); |
| 118 | + } |
| 119 | +} |
| 120 | + |
| 121 | +@media (prefers-reduced-motion: reduce) { |
| 122 | + .component-job-stats .info-display-row, |
| 123 | + .component-job-stats .info-value { |
| 124 | + transition: none; |
98 | 125 | } |
99 | 126 | } |
0 commit comments