11import styled from 'styled-components' ;
22import { BaseCard as CommonCard } from '@app/components/common/BaseCard/BaseCard' ;
3- const borderRad = '.5rem ' ;
3+ const borderRad = '12px ' ;
44export const TablesWrapper = styled . div `
55 margin-top: 1.875rem;
66
7+ /* Main table styling with glass morphism and 3D effects */
8+ .ant-table-wrapper {
9+ background: linear-gradient(135deg,
10+ rgba(0, 191, 255, 0.08) 0%,
11+ rgba(0, 255, 255, 0.04) 100%);
12+ backdrop-filter: blur(20px);
13+ -webkit-backdrop-filter: blur(20px);
14+ border-radius: 16px;
15+ padding: 2px;
16+ box-shadow:
17+ 0 20px 40px rgba(0, 191, 255, 0.15),
18+ 0 10px 20px rgba(0, 255, 255, 0.1),
19+ inset 0 2px 4px rgba(0, 255, 255, 0.2),
20+ inset 0 -2px 4px rgba(0, 191, 255, 0.1);
21+ transform: translateZ(0);
22+ transform-style: preserve-3d;
23+ }
24+
25+ /* Table header with 3D effect */
26+ .ant-table-thead > tr > th {
27+ background: linear-gradient(135deg,
28+ rgba(0, 191, 255, 0.15) 0%,
29+ rgba(0, 255, 255, 0.1) 100%);
30+ border-bottom: 2px solid rgba(0, 255, 255, 0.3);
31+ color: rgba(0, 255, 255, 1);
32+ font-weight: 600;
33+ text-shadow:
34+ 0 0 20px rgba(0, 255, 255, 0.5),
35+ 0 2px 4px rgba(0, 0, 0, 0.3);
36+ position: relative;
37+
38+ &::after {
39+ content: '';
40+ position: absolute;
41+ bottom: -2px;
42+ left: 0;
43+ right: 0;
44+ height: 1px;
45+ background: linear-gradient(90deg,
46+ transparent 0%,
47+ rgba(0, 255, 255, 0.8) 50%,
48+ transparent 100%);
49+ }
50+ }
51+
52+ /* Table row hover effect - highlight only */
753 .ant-table-row {
8- transition: all 0.3s ease;
54+ transition: background 0.3s ease;
955
1056 &:hover {
11- background: rgba(0, 191, 255, 0.05) !important;
57+ background: linear-gradient(135deg,
58+ rgba(0, 191, 255, 0.12) 0%,
59+ rgba(0, 255, 255, 0.08) 100%) !important;
1260 }
1361
1462 &.expanded-row {
15- background: rgba(0, 191, 255, 0.08) !important;
63+ background: linear-gradient(135deg,
64+ rgba(0, 191, 255, 0.15) 0%,
65+ rgba(0, 255, 255, 0.1) 100%) !important;
1666
1767 td {
18- border-bottom: 1px solid rgba(0, 191 , 255, 0.2 ) !important;
68+ border-bottom: 2px solid rgba(0, 255 , 255, 0.3 ) !important;
1969 }
2070 }
2171 }
2272
73+ /* Table cells with depth */
74+ .ant-table-tbody > tr > td {
75+ border-bottom: 1px solid rgba(0, 191, 255, 0.1);
76+ transition: all 0.3s ease;
77+ position: relative;
78+
79+ &:first-child {
80+ font-weight: 500;
81+ color: rgba(0, 255, 255, 0.95);
82+ }
83+ }
84+
85+ /* Expanded row container with glass effect */
2386 .ant-table-expanded-row {
2487 background: transparent !important;
2588
@@ -31,27 +94,50 @@ export const TablesWrapper = styled.div`
3194 padding: 0 !important;
3295 background: transparent !important;
3396 background-color: transparent !important;
34- border-bottom: 1px solid rgba(0, 191, 255, 0.2) !important;
97+ border-bottom: 2px solid rgba(0, 255, 255, 0.2) !important;
98+ box-shadow: 0 4px 8px rgba(0, 191, 255, 0.1);
3599 }
36100
37101 .ant-table-expanded-row-fixed {
38102 background: transparent !important;
39103 }
40104 }
41105
106+ /* Cursor and interaction */
42107 .ant-table-tbody > tr {
43108 cursor: pointer;
44109 }
45110
111+ /* Expand icons with glow effect */
46112 .anticon-caret-down,
47113 .anticon-caret-right {
48- color: rgba(0, 191 , 255, 1);
114+ color: rgba(0, 255 , 255, 1);
49115 font-size: 14px;
50- transition: transform 0.3s ease;
116+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
117+ filter: drop-shadow(0 0 6px rgba(0, 255, 255, 0.8));
51118 }
52119
53120 .anticon-caret-down {
54- filter: drop-shadow(0 0 4px rgba(0, 191, 255, 0.8));
121+ transform: rotateX(0deg);
122+ filter: drop-shadow(0 0 8px rgba(0, 255, 255, 1));
123+ }
124+
125+ .anticon-caret-right:hover {
126+ transform: scale(1.2);
127+ filter: drop-shadow(0 0 12px rgba(0, 255, 255, 1));
128+ }
129+
130+ /* Sorting arrows with 3D effect */
131+ .ant-table-column-sorters {
132+ .anticon {
133+ color: rgba(0, 255, 255, 0.6);
134+ transition: all 0.3s ease;
135+
136+ &.active {
137+ color: rgba(0, 255, 255, 1);
138+ filter: drop-shadow(0 0 8px rgba(0, 255, 255, 1));
139+ }
140+ }
55141 }
56142
57143 /* Ensure chart backgrounds are transparent */
@@ -79,36 +165,103 @@ export const TablesWrapper = styled.div`
79165
80166export const Card = styled ( CommonCard ) `
81167 margin-bottom: 2rem;
168+ background: linear-gradient(135deg,
169+ rgba(0, 10, 20, 0.95) 0%,
170+ rgba(0, 20, 40, 0.9) 100%);
171+ backdrop-filter: blur(30px);
172+ -webkit-backdrop-filter: blur(30px);
173+ border: 1px solid rgba(0, 255, 255, 0.2);
174+ border-radius: 16px;
175+ box-shadow:
176+ 0 24px 48px rgba(0, 191, 255, 0.2),
177+ 0 12px 24px rgba(0, 255, 255, 0.15),
178+ inset 0 2px 4px rgba(0, 255, 255, 0.3),
179+ inset 0 -2px 4px rgba(0, 191, 255, 0.2);
180+ transform: translateZ(0);
181+ transform-style: preserve-3d;
182+ position: relative;
183+ overflow: visible;
184+
185+ &::before {
186+ content: '';
187+ position: absolute;
188+ top: -1px;
189+ left: -1px;
190+ right: -1px;
191+ bottom: -1px;
192+ background: linear-gradient(135deg,
193+ rgba(0, 255, 255, 0.4) 0%,
194+ transparent 30%,
195+ transparent 70%,
196+ rgba(0, 191, 255, 0.4) 100%);
197+ border-radius: 16px;
198+ opacity: 0.6;
199+ z-index: -1;
200+ }
201+
202+ .ant-card-head {
203+ border-bottom: 2px solid rgba(0, 255, 255, 0.2);
204+ background: linear-gradient(135deg,
205+ rgba(0, 191, 255, 0.08) 0%,
206+ rgba(0, 255, 255, 0.04) 100%);
207+
208+ .ant-card-head-title {
209+ color: rgba(0, 255, 255, 1);
210+ text-shadow:
211+ 0 0 20px rgba(0, 255, 255, 0.6),
212+ 0 2px 4px rgba(0, 0, 0, 0.4);
213+ font-weight: 600;
214+ font-size: 1.2rem;
215+ }
216+ }
217+
82218 .table-mobile > div.ant-card-head-title {
83219 padding-bottom: 0.3rem !important;
84220 }
221+
85222 .ant-card-body {
86- padding: 0 .8rem 0.8rem 0.8rem ;
223+ padding: 1.2rem ;
87224 width: 100%;
225+ background: transparent;
88226 }
227+
89228 .ant-card-head-title {
90229 padding: 0;
91230 margin: 1rem 0rem 1rem 0rem;
92231 }
232+
93233 .ant-table-tbody > tr > td {
94- padding: 0.8rem;
234+ padding: 1rem;
235+ transition: all 0.3s ease;
95236 }
96237
97238 div.ant-table.ant-table-bordered,
98239 div.ant-table-container,
99240 .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table {
100241 border-radius: ${ borderRad } ;
242+ border: 1px solid rgba(0, 255, 255, 0.15);
243+ overflow: hidden;
101244 }
102- .ant-table-container table > thead > tr:first-child th:first-child {
103- border-top-left-radius: ${ borderRad } ;
104- }
105- .ant-table-container table > thead > tr:first-child th:last-child {
106- border-top-right-radius: ${ borderRad } ;
107- }
108- .ant-table-container table > tbody > tr:last-child td:last-child {
109- border-bottom-right-radius: ${ borderRad } ;
110- }
111- .ant-table-container table > tbody > tr:last-child td:first-child {
112- border-bottom-left-radius: ${ borderRad } ;
245+
246+ .ant-table-container {
247+ box-shadow:
248+ inset 0 2px 4px rgba(0, 255, 255, 0.1),
249+ inset 0 -2px 4px rgba(0, 191, 255, 0.05);
250+
251+ table > thead > tr:first-child th:first-child {
252+ border-top-left-radius: ${ borderRad } ;
253+ }
254+
255+ table > thead > tr:first-child th:last-child {
256+ border-top-right-radius: ${ borderRad } ;
257+ }
258+
259+ table > tbody > tr:last-child td:last-child {
260+ border-bottom-right-radius: ${ borderRad } ;
261+ }
262+
263+ table > tbody > tr:last-child td:first-child {
264+ border-bottom-left-radius: ${ borderRad } ;
265+ }
113266 }
114267` ;
0 commit comments