blob: 6d544c930ddb5e22ac566cffbb858bef3862bb9a [file] [log] [blame]
DREW5b1883e2025-06-07 10:41:32 +08001/* RequestDetail.css - 个性化版本 */
Akane121765b61a72025-05-17 13:52:25 +08002.request-detail-container {
DREW5b1883e2025-06-07 10:41:32 +08003 max-width: 800px;
4 margin: 0 auto;
5 padding: 20px;
6 font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
7}
8
9/* 返回按钮 - 渐变风格 */
10.back-button {
11 display: inline-flex;
12 align-items: center;
13 gap: 8px;
14 padding: 8px 16px;
15 background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
16 color: white;
17 border: none;
18 border-radius: 6px;
19 font-weight: 600;
20 cursor: pointer;
21 transition: all 0.3s;
22 margin-bottom: 25px;
23 box-shadow: 0 2px 8px rgba(30, 60, 114, 0.2);
24}
25
26.back-button:hover {
27 transform: translateY(-2px);
28 box-shadow: 0 4px 12px rgba(30, 60, 114, 0.3);
29}
30
31.back-button::before {
32 content: "←";
33}
34
35/* 求种帖子卡片 - 3D悬浮效果 */
36.request-post {
37 background: white;
38 border-radius: 12px;
39 padding: 25px;
40 margin-bottom: 30px;
41 box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
42 transition: transform 0.3s, box-shadow 0.3s;
43 position: relative;
44 overflow: hidden;
45}
46
47.request-post:hover {
48 transform: translateY(-5px);
49 box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12);
50}
51
52/* 帖子头部 - 圆形头像+渐变背景 */
53.post-header {
54 display: flex;
55 align-items: center;
56 margin-bottom: 20px;
57 position: relative;
58}
59
60.post-avatar {
61 width: 50px;
62 height: 50px;
63 border-radius: 50%;
64 margin-right: 15px;
65 object-fit: cover;
66 border: 3px solid rgba(30, 60, 114, 0.2);
67 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
68 color: white;
69 display: flex;
70 align-items: center;
71 justify-content: center;
72 font-weight: bold;
73 font-size: 20px;
74}
75
76.post-meta {
77 flex: 1;
78}
79
80.post-author {
81 font-weight: 700;
82 color: #1e3c72;
83 font-size: 18px;
84}
85
86.post-date {
87 color: #666;
88 font-size: 14px;
89 margin-top: 3px;
90}
91
92/* 帖子标题 - 渐变文字 */
93.post-title {
94 font-size: 28px;
95 margin: 0 0 20px;
96 background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
97 -webkit-background-clip: text;
98 -webkit-text-fill-color: transparent;
99 font-weight: 800;
100}
101
102/* 帖子内容 - 更好的阅读体验 */
103.post-content {
104 line-height: 1.8;
105 color: #333;
106 font-size: 16px;
107 margin-bottom: 25px;
108}
109
110.post-content p {
111 margin-bottom: 15px;
112}
113
114/* 图片容器 - 圆角+阴影 */
115.post-image-container {
116 margin: 20px 0;
117 border-radius: 8px;
118 overflow: hidden;
119 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
120 transition: transform 0.3s;
121}
122
123.post-image-container:hover {
124 transform: scale(1.02);
125}
126
127.post-image {
128 width: 100%;
129 height: auto;
130 max-height: 500px;
131 object-fit: contain;
132 display: block;
133}
134
135/* 帖子操作按钮 - 悬浮效果 */
136.post-actions {
137 display: flex;
138 gap: 15px;
139 margin-top: 25px;
140}
141
142.like-button, .favorite-button {
143 padding: 10px 20px;
144 border: none;
145 border-radius: 6px;
146 font-weight: 600;
147 cursor: pointer;
148 transition: all 0.3s;
149 display: flex;
150 align-items: center;
151 gap: 8px;
152}
153
154.like-button {
155 background: linear-gradient(135deg, #f6f7f9 0%, #e9ebee 100%);
156 color: #666;
157}
158
159.like-button:hover {
160 background: linear-gradient(135deg, #ebedf0 0%, #d8dadf 100%);
161 transform: translateY(-2px);
162 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
163}
164
165.like-button.liked {
166 background: linear-gradient(135deg, #e6f7ff 0%, #bae7ff 100%);
167 color: #1890ff;
168}
169
170.favorite-button {
171 background: linear-gradient(135deg, #fff7e6 0%, #ffe7ba 100%);
172 color: #fa8c16;
173}
174
175.favorite-button:hover {
176 background: linear-gradient(135deg, #ffefd1 0%, #ffd591 100%);
177 transform: translateY(-2px);
178 box-shadow: 0 4px 8px rgba(250, 140, 22, 0.2);
179}
180
181.favorite-button.favorited {
182 background: linear-gradient(135deg, #fa8c16 0%, #ffc53d 100%);
183 color: white;
184}
185
186/* 评论区域 */
187.comments-section {
188 background: white;
189 border-radius: 12px;
190 padding: 25px;
191 box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
192}
193
194.comments-section h2 {
195 font-size: 22px;
196 color: #1e3c72;
197 margin-bottom: 20px;
198 padding-bottom: 10px;
199 border-bottom: 2px solid #f0f2f5;
200}
201
202/* 评论表单 - 现代设计 */
203.comment-form {
204 margin-bottom: 30px;
205}
206
207.comment-form textarea {
208 width: 100%;
209 padding: 15px;
210 border: 2px solid #f0f2f5;
211 border-radius: 8px;
212 resize: vertical;
213 min-height: 100px;
214 margin-bottom: 15px;
215 font-size: 15px;
216 transition: all 0.3s;
217}
218
219.comment-form textarea:focus {
220 border-color: #1e3c72;
221 box-shadow: 0 0 0 3px rgba(30, 60, 114, 0.2);
222 outline: none;
223}
224
225.form-actions {
226 display: flex;
227 gap: 15px;
228}
229
230.submit-comment {
231 padding: 12px 24px;
232 background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
233 color: white;
234 border: none;
235 border-radius: 6px;
236 font-weight: 600;
237 cursor: pointer;
238 transition: all 0.3s;
239}
240
241.submit-comment:hover {
242 transform: translateY(-2px);
243 box-shadow: 0 4px 12px rgba(30, 60, 114, 0.3);
244}
245
246.submit-torrent {
247 padding: 12px 24px;
248 background: linear-gradient(135deg, #52c41a 0%, #a0d911 100%);
249 color: white;
250 border: none;
251 border-radius: 6px;
252 font-weight: 600;
253 cursor: pointer;
254 transition: all 0.3s;
255}
256
257.submit-torrent:hover {
258 transform: translateY(-2px);
259 box-shadow: 0 4px 12px rgba(82, 196, 26, 0.3);
260}
261
262/* 评论列表 - 卡片式设计 */
263.comment-list {
264 margin-top: 25px;
265}
266
267.comment-item {
268 display: flex;
269 padding: 20px;
270 margin-bottom: 20px;
271 background: #f9fafc;
272 border-radius: 10px;
273 transition: all 0.3s;
274}
275
276.comment-item:hover {
277 background: #f0f4f8;
278 transform: translateX(5px);
279}
280
281.comment-avatar {
282 width: 50px;
283 height: 50px;
284 border-radius: 50%;
285 margin-right: 15px;
286 object-fit: cover;
287 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
288 color: white;
289 display: flex;
290 align-items: center;
291 justify-content: center;
292 font-weight: bold;
293 font-size: 20px;
294 flex-shrink: 0;
295}
296
297.comment-content {
298 flex-grow: 1;
299}
300
301.comment-header {
302 display: flex;
303 justify-content: space-between;
304 align-items: center;
305 margin-bottom: 10px;
306}
307
308.comment-author {
309 font-weight: 700;
310 color: #1e3c72;
311}
312
313.comment-date {
314 color: #888;
315 font-size: 13px;
316}
317
318.comment-text {
319 line-height: 1.7;
320 color: #333;
321 margin-bottom: 15px;
322}
323
324/* 种子评论特殊样式 */
325.torrent-comment {
326 display: flex;
327 align-items: center;
328 padding: 15px;
329 background: linear-gradient(135deg, #e6f7ff 0%, #bae7ff 100%);
330 border-radius: 8px;
331 margin-bottom: 15px;
332 transition: all 0.3s;
333}
334
335.torrent-comment:hover {
336 background: linear-gradient(135deg, #d0e8ff 0%, #a0d0ff 100%);
337}
338
339.torrent-title {
340 color: #1e3c72;
341 font-weight: 600;
342 flex-grow: 1;
343}
344
345.torrent-size {
346 color: #666;
347 font-size: 14px;
348 margin: 0 15px;
349}
350
351.download-torrent {
352 padding: 8px 16px;
353 background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
354 color: white;
355 border: none;
356 border-radius: 6px;
357 font-weight: 600;
358 cursor: pointer;
359 transition: all 0.3s;
360}
361
362.download-torrent:hover {
363 transform: translateY(-2px);
364 box-shadow: 0 4px 12px rgba(30, 60, 114, 0.3);
365}
366
367.comment-like {
368 background: none;
369 border: none;
370 color: #666;
371 cursor: pointer;
372 font-size: 14px;
373 padding: 5px 10px;
374 border-radius: 4px;
375 transition: all 0.3s;
376 display: flex;
377 align-items: center;
378 gap: 5px;
379}
380
381.comment-like:hover {
382 color: #1e3c72;
383 background: rgba(30, 60, 114, 0.1);
384}
385
386/* 响应式设计 */
387@media (max-width: 768px) {
388 .request-detail-container {
389 padding: 15px;
Akane121765b61a72025-05-17 13:52:25 +0800390 }
391
392 .post-title {
DREW5b1883e2025-06-07 10:41:32 +0800393 font-size: 24px;
Akane121765b61a72025-05-17 13:52:25 +0800394 }
395
396 .post-actions {
DREW5b1883e2025-06-07 10:41:32 +0800397 flex-direction: column;
Akane121765b61a72025-05-17 13:52:25 +0800398 }
399
DREW5b1883e2025-06-07 10:41:32 +0800400 .comment-item, .torrent-comment {
401 flex-direction: column;
Akane121765b61a72025-05-17 13:52:25 +0800402 }
403
404 .comment-avatar {
DREW5b1883e2025-06-07 10:41:32 +0800405 margin-bottom: 15px;
Akane121765b61a72025-05-17 13:52:25 +0800406 }
407
408 .torrent-comment {
DREW5b1883e2025-06-07 10:41:32 +0800409 align-items: flex-start;
Akane121765b61a72025-05-17 13:52:25 +0800410 }
411
412 .torrent-size {
DREW5b1883e2025-06-07 10:41:32 +0800413 margin: 10px 0;
Akane121765b61a72025-05-17 13:52:25 +0800414 }
DREW5b1883e2025-06-07 10:41:32 +0800415}
416
417/* 动画效果 */
418@keyframes fadeIn {
419 from { opacity: 0; transform: translateY(10px); }
420 to { opacity: 1; transform: translateY(0); }
421}
422
423.request-post, .comments-section {
424 animation: fadeIn 0.5s ease-out forwards;
425}