返回 AiToEarn
videoInfo.module.scss
根目录 / project / aitoearn-electron / src / views / task / components / videoInfo.module.scss
1 .taskInfoModal {
2 :global {
3 .ant-modal-content {
4 padding: 0;
5 overflow: hidden;
6 border-radius: 8px;
7 }
8
9 .ant-modal-body {
10 padding: 0;
11 }
12
13 .ant-modal-close {
14 color: #999;
15
16 &:hover {
17 color: #333;
18 }
19 }
20 }
21 }
22
23 .taskInfoContainer {
24 display: flex;
25 flex-direction: column;
26 }
27
28 .taskInfoHeader {
29 padding: 20px 24px;
30 background-color: #f9f9f9;
31 border-bottom: 1px solid #f0f0f0;
32 display: flex;
33 align-items: center;
34 flex-wrap: wrap;
35 gap: 12px;
36 }
37
38 .taskTitle {
39 font-size: 20px;
40 font-weight: 500;
41 color: #333;
42 margin: 0;
43 display: flex;
44 align-items: center;
45 flex-wrap: wrap;
46 }
47
48 .taskId {
49 font-size: 14px;
50 color: #999;
51 font-weight: normal;
52 margin-left: 12px;
53 display: flex;
54 align-items: center;
55 }
56
57 .copyIcon {
58 margin-left: 4px;
59 cursor: pointer;
60 color: #1890ff;
61
62 &:hover {
63 color: #40a9ff;
64 }
65 }
66
67 .taskTag {
68 font-size: 12px;
69 }
70
71 .taskInfoContent {
72 padding: 24px;
73 flex: 1;
74 }
75
76 .videoContainer {
77 display: flex;
78 flex-direction: column;
79 align-items: center;
80 }
81
82 .taskImageContainer {
83 width: 100%;
84 height: 240px;
85 background-color: #000;
86 border-radius: 8px;
87 overflow: hidden;
88 display: flex;
89 align-items: center;
90 justify-content: center;
91 position: relative;
92 }
93
94 .taskImage {
95 width: 100%;
96 height: 100%;
97 object-fit: cover;
98 }
99
100 .videoOverlay {
101 position: absolute;
102 top: 0;
103 left: 0;
104 right: 0;
105 bottom: 0;
106 background-color: rgba(0, 0, 0, 0.3);
107 display: flex;
108 align-items: center;
109 justify-content: center;
110 transition: background-color 0.2s;
111
112 &:hover {
113 background-color: rgba(0, 0, 0, 0.5);
114 }
115 }
116
117 .playIcon {
118 font-size: 48px;
119 color: #fff;
120 opacity: 0.8;
121 transition: opacity 0.2s, transform 0.2s;
122
123 &:hover {
124 opacity: 1;
125 transform: scale(1.1);
126 }
127 }
128
129 .videoCaption {
130 margin-top: 8px;
131 color: #666;
132 font-size: 14px;
133 }
134
135 .taskDetails {
136 display: flex;
137 flex-direction: column;
138 gap: 16px;
139 height: 100%;
140 }
141
142 .taskDetail {
143 display: flex;
144 align-items: center;
145 font-size: 14px;
146 }
147
148 .detailIcon {
149 margin-right: 8px;
150 color: #999;
151 font-size: 16px;
152 }
153
154 .detailLabel {
155 color: #666;
156 margin-right: 8px;
157 min-width: 70px;
158 }
159
160 .detailValue {
161 color: #333;
162 font-weight: 500;
163 }
164
165 .sectionTitle {
166 font-size: 16px;
167 font-weight: 500;
168 color: #333;
169 margin-bottom: 16px;
170 }
171
172 .taskDescription {
173 margin-bottom: 24px;
174 }
175
176 .descriptionContent {
177 color: #666;
178 line-height: 1.6;
179
180 p {
181 margin-bottom: 12px;
182 }
183
184 img {
185 max-width: 100%;
186 border-radius: 4px;
187 margin: 8px 0;
188 }
189 }
190
191 .videoDetails {
192 margin-bottom: 24px;
193 }
194
195 .videoInfo {
196 display: flex;
197 flex-direction: column;
198 gap: 12px;
199 }
200
201 .videoInfoItem {
202 display: flex;
203 align-items: flex-start;
204 }
205
206 .videoInfoLabel {
207 color: #666;
208 margin-right: 8px;
209 min-width: 70px;
210 }
211
212 .videoInfoValue {
213 color: #333;
214 flex: 1;
215 }
216
217 .taskInfoFooter {
218 padding: 16px 24px;
219 background-color: #f9f9f9;
220 border-top: 1px solid #f0f0f0;
221 display: flex;
222 justify-content: space-between;
223 align-items: center;
224 }
225
226 .taskStatus {
227 display: flex;
228 align-items: center;
229 }
230
231 .statusLabel {
232 color: #666;
233 margin-right: 8px;
234 }
235
236 .taskActions {
237 display: flex;
238 gap: 12px;
239 }
240
241 .cancelButton {
242 min-width: 80px;
243 }
244
245 .applyButton {
246 min-width: 100px;
247
248 &:hover {
249 background-color: #9559d1 !important;
250 border-color: #9559d1 !important;
251 }
252 }
253
254 .noDataContainer {
255 padding: 40px;
256 text-align: center;
257 color: #999;
258 font-size: 16px;
259 }
259 lines Plain Text