返回 AiToEarn
popTask.module.scss
根目录 / project / aitoearn-electron / src / views / task / popTask.module.scss
1 .popTaskContainer {
2 padding: 16px;
3 background-color: #fff;
4 border-radius: 8px;
5 min-height: 100%;
6 }
7
8 .taskList {
9 display: flex;
10 flex-direction: column;
11 gap: 16px;
12 }
13
14 .taskCard {
15 border-radius: 8px;
16 overflow: hidden;
17 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
18 transition: transform 0.2s, box-shadow 0.2s;
19
20 &:hover {
21 transform: translateY(-3px);
22 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
23 }
24 }
25
26 .taskCardContent {
27 display: flex;
28 align-items: stretch;
29 }
30
31 .taskImageContainer {
32 width: 120px;
33 height: 120px;
34 flex-shrink: 0;
35 display: flex;
36 align-items: center;
37 justify-content: center;
38 background-color: #f5f5f5;
39 border-radius: 4px;
40 overflow: hidden;
41 margin: 16px;
42 }
43
44 .taskImage {
45 width: 100%;
46 height: 100%;
47 object-fit: cover;
48 }
49
50 .taskInfo {
51 flex: 1;
52 padding: 16px 0;
53 display: flex;
54 flex-direction: column;
55 text-align: left;
56 }
57
58 .taskHeader {
59 display: flex;
60 align-items: center;
61 margin-bottom: 8px;
62 }
63
64 .taskTitle {
65 font-size: 18px;
66 font-weight: 500;
67 color: #333;
68 margin: 0 12px 0 0;
69 display: flex;
70 align-items: center;
71 flex-wrap: wrap;
72 }
73
74 .taskId {
75 font-size: 12px;
76 color: #999;
77 font-weight: normal;
78 margin-left: 8px;
79 display: flex;
80 align-items: center;
81 }
82
83 .copyIcon {
84 margin-left: 4px;
85 cursor: pointer;
86 color: #1890ff;
87
88 &:hover {
89 color: #40a9ff;
90 }
91 }
92
93 .taskTag {
94 font-size: 12px;
95 }
96
97 .taskDescription {
98 color: #666;
99 font-size: 14px;
100 margin-bottom: 12px;
101 display: -webkit-box;
102 -webkit-line-clamp: 2;
103 -webkit-box-orient: vertical;
104 overflow: hidden;
105 text-align: left;
106
107 p {
108 margin-bottom: 0;
109 }
110 }
111
112 .taskDetails {
113 display: flex;
114 gap: 24px;
115 margin-bottom: 12px;
116 }
117
118 .taskDetail {
119 display: flex;
120 align-items: center;
121 font-size: 13px;
122 color: #666;
123 }
124
125 .detailIcon {
126 margin-right: 4px;
127 color: #999;
128 }
129
130 .detailLabel {
131 margin-right: 4px;
132 }
133
134 .detailValue {
135 color: #333;
136 }
137
138 .taskRequirement {
139 font-size: 13px;
140 color: #666;
141 text-align: left;
142 }
143
144 .requirementLabel {
145 margin-right: 4px;
146 }
147
148 .requirementValue {
149 color: #333;
150 }
151
152 .taskAction {
153 width: 160px;
154 flex-shrink: 0;
155 display: flex;
156 flex-direction: column;
157 align-items: center;
158 justify-content: center;
159 padding: 16px;
160 border-left: 1px solid #f0f0f0;
161 }
162
163 .taskStatus {
164 margin-bottom: 12px;
165 }
166
167 .taskReward {
168 display: flex;
169 flex-direction: column;
170 align-items: center;
171 margin-bottom: 16px;
172 }
173
174 .rewardLabel {
175 font-size: 12px;
176 color: #999;
177 margin-bottom: 4px;
178 }
179
180 .rewardValue {
181 font-size: 24px;
182 font-weight: 500;
183 color: #ff4d4f;
184 }
185
186 .viewButton {
187 width: 100%;
188 background-color: #a66ae4;
189 border-color: #a66ae4;
190
191 &:hover {
192 background-color: #73d13d;
193 border-color: #73d13d;
194 }
195 }
196
197 .loadingContainer {
198 display: flex;
199 justify-content: center;
200 padding: 32px 0;
201 }
202
203 .loadMoreContainer {
204 display: flex;
205 justify-content: center;
206 margin-top: 16px;
207 margin-bottom: 16px;
208
209 button {
210 padding: 0 32px;
211 }
212 }
212 lines Plain Text