PluginProbe
AI Builder – Generate pages, blocks, images & translate with AI / trunk
AI Builder – Generate pages, blocks, images & translate with AI vtrunk
2.7.10 2.7.9 2.7.8 2.0.8 2.0.9 2.1.0 2.1.1 2.1.10 2.1.11 2.1.12 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.3.10 All 122 releases
ai-builder / assets / css / credits.css

credits.css in AI Builder – Generate pages, blocks, images & translate with AI trunk, at assets/css/credits.css

622 lines 10.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* Credits Page Styles */
2 .ai-credits-container {
3 max-width: 1200px;
4 margin: 0 auto;
5 padding: 40px 20px;
6 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
7 }
8
9 .ai-credits-header {
10 text-align: center;
11 margin-bottom: 40px;
12 }
13
14 .ai-credits-header h1 {
15 color: #1a1a1a;
16 font-size: 36px;
17 font-weight: 700;
18 margin: 0 0 12px 0;
19 }
20
21 .ai-credits-header p {
22 color: #666;
23 font-size: 18px;
24 margin: 0;
25 }
26
27 /* Status Section */
28 .ai-status-section {
29 display: grid;
30 grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
31 gap: 24px;
32 margin-bottom: 48px;
33 }
34
35 .ai-status-card {
36 background: #ffffff;
37 border: 1px solid #e1e5e9;
38 border-radius: 16px;
39 padding: 32px;
40 box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
41 transition: all 0.3s ease;
42 display: flex;
43 align-items: center;
44 gap: 20px;
45 }
46
47 .ai-status-card:hover {
48 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
49 transform: translateY(-4px);
50 }
51
52 .ai-status-icon {
53 width: 64px;
54 height: 64px;
55 background: linear-gradient(135deg, #007cba 0%, #005a87 100%);
56 border-radius: 16px;
57 display: flex;
58 align-items: center;
59 justify-content: center;
60 color: white;
61 flex-shrink: 0;
62 }
63
64 .ai-status-content h3 {
65 margin: 0 0 8px 0;
66 font-size: 18px;
67 font-weight: 600;
68 color: #1a1a1a;
69 }
70
71 .ai-credits-display {
72 display: flex;
73 align-items: baseline;
74 gap: 8px;
75 }
76
77 .credits-number {
78 font-size: 32px;
79 font-weight: 700;
80 color: #007cba;
81 }
82
83 .credits-label {
84 font-size: 16px;
85 color: #666;
86 font-weight: 500;
87 }
88
89 .ai-plan-display {
90 display: flex;
91 align-items: center;
92 }
93
94 .ai-price-credit {
95 display: block;
96 font-size: 14px;
97 color: #666;
98 margin-top: 4px;
99 }
100
101 .plan-badge {
102 display: inline-flex;
103 align-items: center;
104 padding: 8px 16px;
105 border-radius: 24px;
106 font-size: 14px;
107 font-weight: 600;
108 text-transform: capitalize;
109 }
110
111 .plan-badge.basic {
112 background: #e8f5e8;
113 color: #2d5a2d;
114 }
115
116 .plan-badge.essential {
117 background: #d1ecf1;
118 color: #0c5460;
119 }
120
121 .plan-badge.premium {
122 background: #fff3cd;
123 color: #856404;
124 }
125
126 .plan-badge.creator {
127 background: #f8d7da;
128 color: #721c24;
129 }
130
131 .plan-badge.pro {
132 background: #d1ecf1;
133 color: #0c5460;
134 }
135
136 /* Sections */
137 .ai-section {
138 margin-bottom: 48px;
139 }
140
141 .ai-section-header {
142 text-align: center;
143 margin-bottom: 32px;
144 }
145
146 .ai-section-header h2 {
147 color: #1a1a1a;
148 font-size: 28px;
149 font-weight: 600;
150 margin: 0 0 8px 0;
151 }
152
153 .ai-section-header p {
154 color: #666;
155 font-size: 16px;
156 margin: 0;
157 }
158
159 /* Action Cards */
160 .ai-subscription-actions,
161 .ai-credit-actions,
162 .ai-account-actions {
163 display: grid;
164 grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
165 gap: 24px;
166 }
167
168 .ai-action-card {
169 background: #ffffff;
170 border: 1px solid #e1e5e9;
171 border-radius: 16px;
172 padding: 32px;
173 box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
174 transition: all 0.3s ease;
175 text-align: center;
176 }
177
178 .ai-action-card:hover {
179 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
180 transform: translateY(-4px);
181 }
182
183 .ai-action-icon {
184 width: 64px;
185 height: 64px;
186 background: linear-gradient(135deg, #007cba 0%, #005a87 100%);
187 border-radius: 16px;
188 display: flex;
189 align-items: center;
190 justify-content: center;
191 color: white;
192 margin: 0 auto 24px auto;
193 }
194
195 .ai-action-content h3 {
196 margin: 0 0 12px 0;
197 font-size: 20px;
198 font-weight: 600;
199 color: #1a1a1a;
200 }
201
202 .ai-action-content p {
203 color: #666;
204 font-size: 14px;
205 line-height: 1.6;
206 margin: 0 0 24px 0;
207 }
208
209 /* Buttons */
210 .ai-primary-btn {
211 background: linear-gradient(135deg, #007cba 0%, #005a87 100%);
212 color: white;
213 border: none;
214 padding: 14px 28px;
215 border-radius: 12px;
216 font-size: 16px;
217 font-weight: 600;
218 cursor: pointer;
219 transition: all 0.3s ease;
220 display: inline-flex;
221 align-items: center;
222 gap: 8px;
223 text-decoration: none;
224 min-width: 160px;
225 justify-content: center;
226 }
227
228 .ai-primary-btn:hover {
229 transform: translateY(-2px);
230 box-shadow: 0 8px 25px rgba(0, 124, 186, 0.3);
231 }
232
233 .ai-cancel-subscription-btn {
234 background: transparent;
235 color: #042637;
236 border: none;
237 padding: 12px 20px;
238 border-radius: 8px;
239 font-size: 14px;
240 font-weight: 600;
241 cursor: pointer;
242 transition: all 0.3s ease;
243 display: flex;
244 align-items: center;
245 gap: 8px;
246 width: 100%;
247 justify-content: center;
248 }
249
250 .ai-cancel-subscription-btn:hover {
251 transform: translateY(-2px);
252 }
253
254 .ai-secondary-btn {
255 background: transparent;
256 color: #007cba;
257 border: 2px solid #007cba;
258 padding: 14px 28px;
259 border-radius: 12px;
260 font-size: 16px;
261 font-weight: 600;
262 cursor: pointer;
263 transition: all 0.3s ease;
264 display: inline-flex;
265 align-items: center;
266 gap: 8px;
267 text-decoration: none;
268 min-width: 160px;
269 justify-content: center;
270 }
271
272 .ai-secondary-btn:hover {
273 background: #007cba;
274 color: white;
275 transform: translateY(-2px);
276 box-shadow: 0 8px 25px rgba(0, 124, 186, 0.3);
277 }
278
279 .ai-danger-btn {
280 background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
281 color: white;
282 border: none;
283 padding: 14px 28px;
284 border-radius: 12px;
285 font-size: 16px;
286 font-weight: 600;
287 cursor: pointer;
288 transition: all 0.3s ease;
289 display: inline-flex;
290 align-items: center;
291 gap: 8px;
292 text-decoration: none;
293 min-width: 160px;
294 justify-content: center;
295 }
296
297 .ai-danger-btn:hover {
298 transform: translateY(-2px);
299 box-shadow: 0 8px 25px rgba(220, 53, 69, 0.3);
300 }
301
302 .ai-primary-btn:disabled,
303 .ai-secondary-btn:disabled,
304 .ai-danger-btn:disabled {
305 opacity: 0.6;
306 cursor: not-allowed;
307 transform: none;
308 box-shadow: none;
309 }
310
311 /* Loading */
312 .ai-loading {
313 display: inline-block;
314 width: 16px;
315 height: 16px;
316 border: 2px solid rgba(255, 255, 255, 0.3);
317 border-radius: 50%;
318 border-top-color: #fff;
319 animation: spin 1s ease-in-out infinite;
320 }
321
322 @keyframes spin {
323 to {
324 transform: rotate(360deg);
325 }
326 }
327
328 /* Messages */
329 .ai-message {
330 padding: 16px 24px;
331 border-radius: 12px;
332 margin: 24px 0;
333 font-size: 14px;
334 text-align: center;
335 font-weight: 500;
336 }
337
338 .ai-message.success {
339 background: #d4edda;
340 color: #155724;
341 border: 1px solid #c3e6cb;
342 }
343
344 .ai-message.error {
345 background: #f8d7da;
346 color: #721c24;
347 border: 1px solid #f5c6cb;
348 }
349
350 .ai-message.info {
351 background: #d1ecf1;
352 color: #0c5460;
353 border: 1px solid #bee5eb;
354 }
355
356 /* Modal */
357 .ai-modal {
358 position: fixed;
359 top: 0;
360 left: 0;
361 width: 100%;
362 height: 100%;
363 background: rgba(0, 0, 0, 0.5);
364 display: flex;
365 align-items: center;
366 justify-content: center;
367 z-index: 1000;
368 backdrop-filter: blur(4px);
369 }
370
371 .ai-modal-content {
372 background: white;
373 border-radius: 16px;
374 max-width: 500px;
375 width: 90%;
376 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
377 animation: modalSlideIn 0.3s ease-out;
378 }
379
380 @keyframes modalSlideIn {
381 from {
382 opacity: 0;
383 transform: translateY(-20px) scale(0.95);
384 }
385
386 to {
387 opacity: 1;
388 transform: translateY(0) scale(1);
389 }
390 }
391
392 .ai-modal-header {
393 padding: 24px 32px 0 32px;
394 display: flex;
395 justify-content: space-between;
396 align-items: center;
397 }
398
399 .ai-modal-header h3 {
400 margin: 0;
401 font-size: 20px;
402 font-weight: 600;
403 color: #1a1a1a;
404 }
405
406 .ai-modal-close {
407 background: none;
408 border: none;
409 font-size: 24px;
410 color: #666;
411 cursor: pointer;
412 padding: 0;
413 width: 32px;
414 height: 32px;
415 display: flex;
416 align-items: center;
417 justify-content: center;
418 border-radius: 50%;
419 transition: all 0.2s ease;
420 }
421
422 .ai-modal-close:hover {
423 background: #f8f9fa;
424 color: #1a1a1a;
425 }
426
427 .ai-modal-body {
428 padding: 24px 32px;
429 }
430
431 .ai-modal-body p {
432 margin: 0;
433 color: #666;
434 line-height: 1.6;
435 }
436
437 .ai-modal-footer {
438 padding: 0 32px 24px 32px;
439 display: flex;
440 gap: 12px;
441 justify-content: flex-end;
442 }
443
444 /* Animation */
445 .ai-fade-in {
446 animation: fadeIn 0.5s ease-in;
447 }
448
449 @keyframes fadeIn {
450 from {
451 opacity: 0;
452 transform: translateY(20px);
453 }
454
455 to {
456 opacity: 1;
457 transform: translateY(0);
458 }
459 }
460
461 /* Responsive Design */
462 @media (max-width: 768px) {
463 .ai-credits-container {
464 padding: 20px 16px;
465 }
466
467 .ai-credits-header h1 {
468 font-size: 28px;
469 }
470
471 .ai-credits-header p {
472 font-size: 16px;
473 }
474
475 .ai-status-section {
476 grid-template-columns: 1fr;
477 gap: 16px;
478 }
479
480 .ai-status-card {
481 padding: 24px;
482 flex-direction: column;
483 text-align: center;
484 }
485
486 .ai-status-icon {
487 width: 56px;
488 height: 56px;
489 }
490
491 .ai-subscription-actions,
492 .ai-credit-actions,
493 .ai-account-actions {
494 grid-template-columns: 1fr;
495 gap: 16px;
496 }
497
498 .ai-action-card {
499 padding: 24px;
500 }
501
502 .ai-modal-content {
503 width: 95%;
504 margin: 20px;
505 }
506
507 .ai-modal-header,
508 .ai-modal-body,
509 .ai-modal-footer {
510 padding-left: 24px;
511 padding-right: 24px;
512 }
513
514 .ai-modal-footer {
515 flex-direction: column;
516 }
517
518 .ai-primary-btn,
519 .ai-secondary-btn,
520 .ai-danger-btn {
521 width: 100%;
522 min-width: auto;
523 }
524 }
525
526 @media (max-width: 480px) {
527 .ai-credits-header h1 {
528 font-size: 24px;
529 }
530
531 .ai-section-header h2 {
532 font-size: 24px;
533 }
534
535 .credits-number {
536 font-size: 28px;
537 }
538
539 .ai-status-card,
540 .ai-action-card {
541 padding: 20px;
542 }
543 }
544
545 /* État désactivé pour la section Buy Credits */
546 .ai-disabled {
547 opacity: 0.6;
548 pointer-events: none;
549 position: relative;
550 }
551
552 .ai-disabled .ai-action-icon {
553 opacity: 0.5;
554 }
555
556 .ai-disabled .ai-action-content h3,
557 .ai-disabled .ai-action-content p {
558 color: #999;
559 }
560
561 /* Message d'avertissement pour abonnement requis */
562 .ai-subscription-required {
563 display: flex;
564 align-items: flex-start;
565 background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
566 border: 1px solid #ffeaa7;
567 border-radius: 8px;
568 padding: 1rem;
569 margin: 1rem 0;
570 gap: 0.75rem;
571 }
572
573 .ai-warning-icon {
574 color: #856404;
575 flex-shrink: 0;
576 margin-top: 2px;
577 }
578
579 .ai-warning-content {
580 flex: 1;
581 }
582
583 .ai-warning-content strong {
584 display: block;
585 color: #5a4a00;
586 font-weight: 600;
587 margin-bottom: 0.25rem;
588 font-size: 0.95rem;
589 }
590
591 .ai-warning-content p {
592 color: #856404;
593 margin: 0;
594 font-size: 0.9rem;
595 line-height: 1.4;
596 }
597
598 /* Bouton désactivé */
599 .ai-primary-btn:disabled {
600 opacity: 0.5;
601 cursor: not-allowed;
602 background: #ccc;
603 color: #666;
604 }
605
606 .ai-primary-btn:disabled:hover {
607 transform: none;
608 box-shadow: none;
609 }
610
611 /* Responsive pour le message d'avertissement */
612 @media (max-width: 768px) {
613 .ai-subscription-required {
614 flex-direction: column;
615 text-align: center;
616 gap: 0.5rem;
617 }
618
619 .ai-warning-icon {
620 margin-top: 0;
621 }
622 }