ministerchief commited on
Commit
f959dc9
Β·
verified Β·
1 Parent(s): ab40614

Update static/style.css

Browse files
Files changed (1) hide show
  1. static/style.css +95 -94
static/style.css CHANGED
@@ -8,36 +8,36 @@
8
  }
9
 
10
  :root {
11
- --bg: linear-gradient(135deg, #f6f4ff 0%, #f4f6fb 40%, #f8f5ef 100%);
12
- --surface: rgba(255, 255, 255, 0.92);
13
- --surface-strong: #ffffff;
14
- --surface2: #f8f8fc;
15
- --border: rgba(91, 82, 196, 0.10);
16
- --border-strong: rgba(91, 82, 196, 0.22);
17
- --text-primary: #17171c;
18
- --text-secondary: #666779;
19
- --text-muted: #9698a8;
20
- --accent: #5b52c4;
21
- --accent-2: #7c73ea;
22
- --accent-light: #efedff;
23
- --accent-soft: rgba(91, 82, 196, 0.12);
24
- --accent-text: #3f3796;
25
- --danger: #e24b4a;
26
- --danger-light: #fef0f0;
27
- --danger-text: #a32d2d;
28
- --success: #1ea672;
29
- --success-light: #e5f8f0;
30
- --success-text: #0b6c4f;
31
- --amber: #c8841e;
32
- --amber-light: #fff3de;
33
- --amber-text: #714200;
34
  --radius-sm: 8px;
35
  --radius-md: 12px;
36
  --radius-lg: 18px;
37
  --radius-xl: 26px;
38
- --shadow-sm: 0 6px 18px rgba(31, 35, 70, 0.06);
39
- --shadow: 0 14px 40px rgba(31, 35, 70, 0.08);
40
- --shadow-lg: 0 24px 70px rgba(31, 35, 70, 0.14);
41
  --max-width: 760px;
42
  }
43
 
@@ -63,25 +63,24 @@ body::before,
63
  body::after {
64
  content: "";
65
  position: fixed;
66
- inset: auto;
67
  width: 280px;
68
  height: 280px;
69
  border-radius: 50%;
70
- filter: blur(80px);
71
  pointer-events: none;
72
  z-index: -1;
73
  }
74
 
75
  body::before {
76
- top: -60px;
77
- left: -80px;
78
- background: rgba(124, 115, 234, 0.18);
79
  }
80
 
81
  body::after {
82
- right: -80px;
83
- bottom: -80px;
84
- background: rgba(91, 82, 196, 0.14);
85
  }
86
 
87
  /* ── Header ─────────────────────────────────────────────── */
@@ -93,7 +92,7 @@ header {
93
 
94
  #three-header {
95
  margin-bottom: 0.4rem !important;
96
- filter: drop-shadow(0 14px 28px rgba(91, 82, 196, 0.18));
97
  }
98
 
99
  .logo-wrap {
@@ -102,9 +101,9 @@ header {
102
  justify-content: center;
103
  width: 62px;
104
  height: 62px;
105
- background: linear-gradient(135deg, #f2f0ff 0%, #ebe8ff 100%);
106
  border-radius: var(--radius-lg);
107
- border: 1px solid rgba(91, 82, 196, 0.15);
108
  margin-bottom: 1rem;
109
  box-shadow: var(--shadow-sm);
110
  }
@@ -139,8 +138,8 @@ main {
139
 
140
  .card {
141
  background: var(--surface);
142
- backdrop-filter: blur(16px);
143
- -webkit-backdrop-filter: blur(16px);
144
  border-radius: var(--radius-xl);
145
  border: 1px solid var(--border);
146
  box-shadow: var(--shadow-lg);
@@ -154,19 +153,19 @@ main {
154
  position: absolute;
155
  inset: 0 0 auto 0;
156
  height: 1px;
157
- background: linear-gradient(90deg, transparent, rgba(124, 115, 234, 0.35), transparent);
158
  }
159
 
160
  /* ── Drop zone ───────────────────────────────────────────── */
161
  #drop-zone {
162
- border: 2px dashed rgba(91, 82, 196, 0.24);
163
  border-radius: calc(var(--radius-lg) + 2px);
164
  padding: 3.2rem 2rem;
165
  text-align: center;
166
  cursor: pointer;
167
  transition: 0.25s ease;
168
  background:
169
- radial-gradient(circle at top, rgba(124, 115, 234, 0.08), transparent 45%),
170
  var(--surface2);
171
  position: relative;
172
  overflow: hidden;
@@ -176,7 +175,7 @@ main {
176
  content: "";
177
  position: absolute;
178
  inset: 0;
179
- background: linear-gradient(135deg, rgba(124, 115, 234, 0.04), rgba(255, 255, 255, 0));
180
  pointer-events: none;
181
  }
182
 
@@ -184,10 +183,10 @@ main {
184
  #drop-zone.drag-over {
185
  border-color: var(--accent);
186
  background:
187
- radial-gradient(circle at top, rgba(124, 115, 234, 0.14), transparent 45%),
188
- #f4f2ff;
189
  transform: translateY(-2px);
190
- box-shadow: 0 12px 32px rgba(91, 82, 196, 0.10);
191
  }
192
 
193
  #drop-zone input[type="file"] {
@@ -203,13 +202,13 @@ main {
203
  width: 56px;
204
  height: 56px;
205
  margin: 0 auto 1rem;
206
- background: linear-gradient(135deg, #f0efff 0%, #e6e3ff 100%);
207
  border-radius: 16px;
208
  display: flex;
209
  align-items: center;
210
  justify-content: center;
211
- border: 1px solid rgba(91, 82, 196, 0.16);
212
- box-shadow: 0 10px 24px rgba(91, 82, 196, 0.10);
213
  }
214
 
215
  .drop-icon svg {
@@ -241,8 +240,8 @@ main {
241
  padding: 6px 12px;
242
  border-radius: 999px;
243
  margin-top: 0.95rem;
244
- border: 1px solid rgba(200, 132, 30, 0.18);
245
- box-shadow: 0 6px 16px rgba(200, 132, 30, 0.08);
246
  }
247
 
248
  /* ── Counter bar ─────────────────────────────────────────── */
@@ -253,9 +252,9 @@ main {
253
  gap: 12px;
254
  margin-top: 1.25rem;
255
  padding: 0.8rem 1rem;
256
- background: rgba(248, 248, 252, 0.92);
257
  border-radius: var(--radius-md);
258
- border: 1px solid rgba(91, 82, 196, 0.10);
259
  font-size: 13px;
260
  color: var(--text-secondary);
261
  box-shadow: var(--shadow-sm);
@@ -277,17 +276,17 @@ main {
277
  background: var(--success);
278
  display: inline-block;
279
  margin-right: 6px;
280
- box-shadow: 0 0 0 4px rgba(30, 166, 114, 0.12);
281
  }
282
 
283
  .count-dot.warn {
284
  background: var(--amber);
285
- box-shadow: 0 0 0 4px rgba(200, 132, 30, 0.12);
286
  }
287
 
288
  .count-dot.danger {
289
  background: var(--danger);
290
- box-shadow: 0 0 0 4px rgba(226, 75, 74, 0.12);
291
  }
292
 
293
  /* ── Image preview grid ──────────────────────────────────── */
@@ -303,16 +302,16 @@ main {
303
  aspect-ratio: 1;
304
  border-radius: 18px;
305
  overflow: hidden;
306
- border: 1px solid rgba(91, 82, 196, 0.10);
307
- background: linear-gradient(180deg, #fbfbff 0%, #f4f4fa 100%);
308
- box-shadow: 0 12px 28px rgba(31, 35, 70, 0.08);
309
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
310
  }
311
 
312
  .preview-item:hover {
313
  transform: translateY(-4px);
314
- box-shadow: 0 18px 36px rgba(31, 35, 70, 0.12);
315
- border-color: rgba(91, 82, 196, 0.22);
316
  }
317
 
318
  .preview-item img {
@@ -327,7 +326,7 @@ main {
327
  position: absolute;
328
  inset: auto 0 0 0;
329
  height: 40%;
330
- background: linear-gradient(to top, rgba(0, 0, 0, 0.18), transparent);
331
  pointer-events: none;
332
  }
333
 
@@ -338,9 +337,9 @@ main {
338
  width: 28px;
339
  height: 28px;
340
  border-radius: 50%;
341
- background: rgba(19, 19, 25, 0.72);
342
  backdrop-filter: blur(8px);
343
- border: 1px solid rgba(255, 255, 255, 0.14);
344
  cursor: pointer;
345
  display: flex;
346
  align-items: center;
@@ -355,7 +354,7 @@ main {
355
  }
356
 
357
  .preview-item .remove-btn:hover {
358
- background: rgba(226, 75, 74, 0.92);
359
  transform: scale(1.05);
360
  }
361
 
@@ -369,7 +368,7 @@ main {
369
  position: absolute;
370
  bottom: 8px;
371
  left: 8px;
372
- background: rgba(19, 19, 25, 0.66);
373
  backdrop-filter: blur(8px);
374
  color: #fff;
375
  font-size: 11px;
@@ -400,7 +399,7 @@ button {
400
 
401
  button:focus-visible,
402
  #drop-zone:focus-within {
403
- box-shadow: 0 0 0 4px rgba(91, 82, 196, 0.14);
404
  }
405
 
406
  button:active {
@@ -416,12 +415,12 @@ button:active {
416
  align-items: center;
417
  justify-content: center;
418
  gap: 8px;
419
- box-shadow: 0 14px 26px rgba(91, 82, 196, 0.22);
420
  }
421
 
422
  .btn-primary:hover {
423
  transform: translateY(-1px);
424
- box-shadow: 0 18px 34px rgba(91, 82, 196, 0.28);
425
  }
426
 
427
  .btn-primary:disabled {
@@ -432,16 +431,16 @@ button:active {
432
  }
433
 
434
  .btn-ghost {
435
- background: rgba(255, 255, 255, 0.75);
436
  color: var(--text-secondary);
437
- border-color: rgba(91, 82, 196, 0.12);
438
  backdrop-filter: blur(8px);
439
  }
440
 
441
  .btn-ghost:hover {
442
- background: #fff;
443
  color: var(--text-primary);
444
- border-color: rgba(91, 82, 196, 0.20);
445
  }
446
 
447
  /* ── Toast ───────────────────────────────────────────────── */
@@ -450,7 +449,7 @@ button:active {
450
  bottom: 1.6rem;
451
  left: 50%;
452
  transform: translateX(-50%) translateY(16px);
453
- background: rgba(23, 23, 28, 0.92);
454
  backdrop-filter: blur(14px);
455
  color: #fff;
456
  font-size: 13px;
@@ -462,7 +461,8 @@ button:active {
462
  transition: opacity 0.25s ease, transform 0.25s ease;
463
  white-space: nowrap;
464
  z-index: 200;
465
- box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18);
 
466
  }
467
 
468
  #toast.show {
@@ -475,7 +475,7 @@ button:active {
475
  display: none;
476
  position: fixed;
477
  inset: 0;
478
- background: rgba(10, 11, 20, 0.52);
479
  backdrop-filter: blur(8px);
480
  z-index: 100;
481
  align-items: center;
@@ -488,11 +488,11 @@ button:active {
488
  }
489
 
490
  #premium-dialog {
491
- background: rgba(255, 255, 255, 0.96);
492
  backdrop-filter: blur(16px);
493
  border-radius: 28px;
494
- border: 1px solid rgba(91, 82, 196, 0.12);
495
- box-shadow: 0 30px 70px rgba(17, 20, 38, 0.22);
496
  padding: 2rem;
497
  max-width: 430px;
498
  width: 100%;
@@ -515,13 +515,13 @@ button:active {
515
  width: 68px;
516
  height: 68px;
517
  border-radius: 20px;
518
- background: linear-gradient(135deg, #fff5df 0%, #ffe7b8 100%);
519
  display: flex;
520
  align-items: center;
521
  justify-content: center;
522
  margin: 0 auto 1.25rem;
523
- border: 1px solid rgba(200, 132, 30, 0.18);
524
- box-shadow: 0 12px 24px rgba(200, 132, 30, 0.12);
525
  }
526
 
527
  .dialog-icon svg {
@@ -534,6 +534,7 @@ button:active {
534
  font-weight: 800;
535
  margin-bottom: 0.5rem;
536
  letter-spacing: -0.02em;
 
537
  }
538
 
539
  #premium-dialog p {
@@ -547,8 +548,8 @@ button:active {
547
  list-style: none;
548
  text-align: left;
549
  margin-bottom: 1.7rem;
550
- background: #fafaff;
551
- border: 1px solid rgba(91, 82, 196, 0.08);
552
  border-radius: 18px;
553
  padding: 0.85rem 1rem;
554
  }
@@ -563,7 +564,7 @@ button:active {
563
  }
564
 
565
  .perks li + li {
566
- border-top: 1px dashed rgba(91, 82, 196, 0.10);
567
  }
568
 
569
  .perk-check {
@@ -590,24 +591,24 @@ button:active {
590
  }
591
 
592
  .btn-upgrade {
593
- background: linear-gradient(135deg, #5b52c4 0%, #857cf0 100%);
594
  color: #fff;
595
  border: none;
596
  padding: 13px;
597
  font-size: 15px;
598
  border-radius: 14px;
599
  width: 100%;
600
- box-shadow: 0 14px 26px rgba(91, 82, 196, 0.22);
601
  }
602
 
603
  .btn-upgrade:hover {
604
  transform: translateY(-1px);
605
- opacity: 0.96;
606
  }
607
 
608
  .btn-close-dialog {
609
- background: rgba(255, 255, 255, 0.82);
610
- border: 1px solid rgba(91, 82, 196, 0.14);
611
  color: var(--text-secondary);
612
  padding: 11px;
613
  width: 100%;
@@ -615,7 +616,7 @@ button:active {
615
  }
616
 
617
  .btn-close-dialog:hover {
618
- background: #fff;
619
  color: var(--text-primary);
620
  }
621
 
@@ -623,7 +624,7 @@ button:active {
623
  #loading-bar {
624
  display: none;
625
  height: 4px;
626
- background: rgba(255, 255, 255, 0.26);
627
  border-radius: 999px;
628
  overflow: hidden;
629
  width: 120px;
@@ -658,12 +659,12 @@ button:active {
658
  }
659
 
660
  ::-webkit-scrollbar-thumb {
661
- background: rgba(91, 82, 196, 0.20);
662
  border-radius: 999px;
663
  }
664
 
665
  ::-webkit-scrollbar-track {
666
- background: rgba(91, 82, 196, 0.05);
667
  }
668
 
669
  /* ── Responsive ──────────────────────────────────────────── */
 
8
  }
9
 
10
  :root {
11
+ --bg: linear-gradient(135deg, #050505 0%, #0c0c0f 45%, #111117 100%);
12
+ --surface: rgba(20, 20, 24, 0.92);
13
+ --surface-strong: #18181d;
14
+ --surface2: #101015;
15
+ --border: rgba(255, 255, 255, 0.08);
16
+ --border-strong: rgba(255, 255, 255, 0.14);
17
+ --text-primary: #f5f5f7;
18
+ --text-secondary: #b3b3bd;
19
+ --text-muted: #8a8a96;
20
+ --accent: #7c6cff;
21
+ --accent-2: #9b8cff;
22
+ --accent-light: rgba(124, 108, 255, 0.14);
23
+ --accent-soft: rgba(124, 108, 255, 0.08);
24
+ --accent-text: #d7d1ff;
25
+ --danger: #ff5c5c;
26
+ --danger-light: rgba(255, 92, 92, 0.14);
27
+ --danger-text: #ffd2d2;
28
+ --success: #26c281;
29
+ --success-light: rgba(38, 194, 129, 0.14);
30
+ --success-text: #c9f5e2;
31
+ --amber: #f2b94b;
32
+ --amber-light: rgba(242, 185, 75, 0.14);
33
+ --amber-text: #ffe9bb;
34
  --radius-sm: 8px;
35
  --radius-md: 12px;
36
  --radius-lg: 18px;
37
  --radius-xl: 26px;
38
+ --shadow-sm: 0 6px 18px rgba(0, 0, 0, 0.28);
39
+ --shadow: 0 14px 40px rgba(0, 0, 0, 0.34);
40
+ --shadow-lg: 0 24px 70px rgba(0, 0, 0, 0.45);
41
  --max-width: 760px;
42
  }
43
 
 
63
  body::after {
64
  content: "";
65
  position: fixed;
 
66
  width: 280px;
67
  height: 280px;
68
  border-radius: 50%;
69
+ filter: blur(90px);
70
  pointer-events: none;
71
  z-index: -1;
72
  }
73
 
74
  body::before {
75
+ top: -70px;
76
+ left: -90px;
77
+ background: rgba(124, 108, 255, 0.14);
78
  }
79
 
80
  body::after {
81
+ right: -70px;
82
+ bottom: -70px;
83
+ background: rgba(64, 64, 255, 0.09);
84
  }
85
 
86
  /* ── Header ─────────────────────────────────────────────── */
 
92
 
93
  #three-header {
94
  margin-bottom: 0.4rem !important;
95
+ filter: drop-shadow(0 16px 34px rgba(124, 108, 255, 0.18));
96
  }
97
 
98
  .logo-wrap {
 
101
  justify-content: center;
102
  width: 62px;
103
  height: 62px;
104
+ background: linear-gradient(135deg, #181824 0%, #202033 100%);
105
  border-radius: var(--radius-lg);
106
+ border: 1px solid rgba(124, 108, 255, 0.18);
107
  margin-bottom: 1rem;
108
  box-shadow: var(--shadow-sm);
109
  }
 
138
 
139
  .card {
140
  background: var(--surface);
141
+ backdrop-filter: blur(18px);
142
+ -webkit-backdrop-filter: blur(18px);
143
  border-radius: var(--radius-xl);
144
  border: 1px solid var(--border);
145
  box-shadow: var(--shadow-lg);
 
153
  position: absolute;
154
  inset: 0 0 auto 0;
155
  height: 1px;
156
+ background: linear-gradient(90deg, transparent, rgba(124, 108, 255, 0.5), transparent);
157
  }
158
 
159
  /* ── Drop zone ───────────────────────────────────────────── */
160
  #drop-zone {
161
+ border: 2px dashed rgba(124, 108, 255, 0.24);
162
  border-radius: calc(var(--radius-lg) + 2px);
163
  padding: 3.2rem 2rem;
164
  text-align: center;
165
  cursor: pointer;
166
  transition: 0.25s ease;
167
  background:
168
+ radial-gradient(circle at top, rgba(124, 108, 255, 0.09), transparent 45%),
169
  var(--surface2);
170
  position: relative;
171
  overflow: hidden;
 
175
  content: "";
176
  position: absolute;
177
  inset: 0;
178
+ background: linear-gradient(135deg, rgba(124, 108, 255, 0.05), rgba(255, 255, 255, 0));
179
  pointer-events: none;
180
  }
181
 
 
183
  #drop-zone.drag-over {
184
  border-color: var(--accent);
185
  background:
186
+ radial-gradient(circle at top, rgba(124, 108, 255, 0.15), transparent 45%),
187
+ #12121a;
188
  transform: translateY(-2px);
189
+ box-shadow: 0 16px 36px rgba(124, 108, 255, 0.12);
190
  }
191
 
192
  #drop-zone input[type="file"] {
 
202
  width: 56px;
203
  height: 56px;
204
  margin: 0 auto 1rem;
205
+ background: linear-gradient(135deg, #171722 0%, #232338 100%);
206
  border-radius: 16px;
207
  display: flex;
208
  align-items: center;
209
  justify-content: center;
210
+ border: 1px solid rgba(124, 108, 255, 0.16);
211
+ box-shadow: 0 10px 24px rgba(124, 108, 255, 0.08);
212
  }
213
 
214
  .drop-icon svg {
 
240
  padding: 6px 12px;
241
  border-radius: 999px;
242
  margin-top: 0.95rem;
243
+ border: 1px solid rgba(242, 185, 75, 0.18);
244
+ box-shadow: 0 6px 16px rgba(242, 185, 75, 0.08);
245
  }
246
 
247
  /* ── Counter bar ─────────────────────────────────────────── */
 
252
  gap: 12px;
253
  margin-top: 1.25rem;
254
  padding: 0.8rem 1rem;
255
+ background: rgba(255, 255, 255, 0.03);
256
  border-radius: var(--radius-md);
257
+ border: 1px solid rgba(255, 255, 255, 0.06);
258
  font-size: 13px;
259
  color: var(--text-secondary);
260
  box-shadow: var(--shadow-sm);
 
276
  background: var(--success);
277
  display: inline-block;
278
  margin-right: 6px;
279
+ box-shadow: 0 0 0 4px rgba(38, 194, 129, 0.12);
280
  }
281
 
282
  .count-dot.warn {
283
  background: var(--amber);
284
+ box-shadow: 0 0 0 4px rgba(242, 185, 75, 0.12);
285
  }
286
 
287
  .count-dot.danger {
288
  background: var(--danger);
289
+ box-shadow: 0 0 0 4px rgba(255, 92, 92, 0.12);
290
  }
291
 
292
  /* ── Image preview grid ──────────────────────────────────── */
 
302
  aspect-ratio: 1;
303
  border-radius: 18px;
304
  overflow: hidden;
305
+ border: 1px solid rgba(255, 255, 255, 0.07);
306
+ background: linear-gradient(180deg, #14141a 0%, #0f0f14 100%);
307
+ box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28);
308
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
309
  }
310
 
311
  .preview-item:hover {
312
  transform: translateY(-4px);
313
+ box-shadow: 0 20px 36px rgba(0, 0, 0, 0.34);
314
+ border-color: rgba(124, 108, 255, 0.20);
315
  }
316
 
317
  .preview-item img {
 
326
  position: absolute;
327
  inset: auto 0 0 0;
328
  height: 40%;
329
+ background: linear-gradient(to top, rgba(0, 0, 0, 0.32), transparent);
330
  pointer-events: none;
331
  }
332
 
 
337
  width: 28px;
338
  height: 28px;
339
  border-radius: 50%;
340
+ background: rgba(12, 12, 16, 0.82);
341
  backdrop-filter: blur(8px);
342
+ border: 1px solid rgba(255, 255, 255, 0.10);
343
  cursor: pointer;
344
  display: flex;
345
  align-items: center;
 
354
  }
355
 
356
  .preview-item .remove-btn:hover {
357
+ background: rgba(255, 92, 92, 0.92);
358
  transform: scale(1.05);
359
  }
360
 
 
368
  position: absolute;
369
  bottom: 8px;
370
  left: 8px;
371
+ background: rgba(12, 12, 16, 0.72);
372
  backdrop-filter: blur(8px);
373
  color: #fff;
374
  font-size: 11px;
 
399
 
400
  button:focus-visible,
401
  #drop-zone:focus-within {
402
+ box-shadow: 0 0 0 4px rgba(124, 108, 255, 0.16);
403
  }
404
 
405
  button:active {
 
415
  align-items: center;
416
  justify-content: center;
417
  gap: 8px;
418
+ box-shadow: 0 14px 26px rgba(124, 108, 255, 0.20);
419
  }
420
 
421
  .btn-primary:hover {
422
  transform: translateY(-1px);
423
+ box-shadow: 0 18px 34px rgba(124, 108, 255, 0.25);
424
  }
425
 
426
  .btn-primary:disabled {
 
431
  }
432
 
433
  .btn-ghost {
434
+ background: rgba(255, 255, 255, 0.03);
435
  color: var(--text-secondary);
436
+ border-color: rgba(255, 255, 255, 0.08);
437
  backdrop-filter: blur(8px);
438
  }
439
 
440
  .btn-ghost:hover {
441
+ background: rgba(255, 255, 255, 0.06);
442
  color: var(--text-primary);
443
+ border-color: rgba(124, 108, 255, 0.18);
444
  }
445
 
446
  /* ── Toast ───────────────────────────────────────────────── */
 
449
  bottom: 1.6rem;
450
  left: 50%;
451
  transform: translateX(-50%) translateY(16px);
452
+ background: rgba(17, 17, 22, 0.92);
453
  backdrop-filter: blur(14px);
454
  color: #fff;
455
  font-size: 13px;
 
461
  transition: opacity 0.25s ease, transform 0.25s ease;
462
  white-space: nowrap;
463
  z-index: 200;
464
+ box-shadow: 0 14px 32px rgba(0, 0, 0, 0.30);
465
+ border: 1px solid rgba(255, 255, 255, 0.06);
466
  }
467
 
468
  #toast.show {
 
475
  display: none;
476
  position: fixed;
477
  inset: 0;
478
+ background: rgba(3, 3, 6, 0.72);
479
  backdrop-filter: blur(8px);
480
  z-index: 100;
481
  align-items: center;
 
488
  }
489
 
490
  #premium-dialog {
491
+ background: rgba(20, 20, 25, 0.96);
492
  backdrop-filter: blur(16px);
493
  border-radius: 28px;
494
+ border: 1px solid rgba(255, 255, 255, 0.08);
495
+ box-shadow: 0 30px 70px rgba(0, 0, 0, 0.48);
496
  padding: 2rem;
497
  max-width: 430px;
498
  width: 100%;
 
515
  width: 68px;
516
  height: 68px;
517
  border-radius: 20px;
518
+ background: linear-gradient(135deg, #2d2410 0%, #3f3114 100%);
519
  display: flex;
520
  align-items: center;
521
  justify-content: center;
522
  margin: 0 auto 1.25rem;
523
+ border: 1px solid rgba(242, 185, 75, 0.18);
524
+ box-shadow: 0 12px 24px rgba(242, 185, 75, 0.08);
525
  }
526
 
527
  .dialog-icon svg {
 
534
  font-weight: 800;
535
  margin-bottom: 0.5rem;
536
  letter-spacing: -0.02em;
537
+ color: var(--text-primary);
538
  }
539
 
540
  #premium-dialog p {
 
548
  list-style: none;
549
  text-align: left;
550
  margin-bottom: 1.7rem;
551
+ background: rgba(255, 255, 255, 0.03);
552
+ border: 1px solid rgba(255, 255, 255, 0.06);
553
  border-radius: 18px;
554
  padding: 0.85rem 1rem;
555
  }
 
564
  }
565
 
566
  .perks li + li {
567
+ border-top: 1px dashed rgba(255, 255, 255, 0.08);
568
  }
569
 
570
  .perk-check {
 
591
  }
592
 
593
  .btn-upgrade {
594
+ background: linear-gradient(135deg, #7c6cff 0%, #9b8cff 100%);
595
  color: #fff;
596
  border: none;
597
  padding: 13px;
598
  font-size: 15px;
599
  border-radius: 14px;
600
  width: 100%;
601
+ box-shadow: 0 14px 26px rgba(124, 108, 255, 0.18);
602
  }
603
 
604
  .btn-upgrade:hover {
605
  transform: translateY(-1px);
606
+ opacity: 0.97;
607
  }
608
 
609
  .btn-close-dialog {
610
+ background: rgba(255, 255, 255, 0.03);
611
+ border: 1px solid rgba(255, 255, 255, 0.08);
612
  color: var(--text-secondary);
613
  padding: 11px;
614
  width: 100%;
 
616
  }
617
 
618
  .btn-close-dialog:hover {
619
+ background: rgba(255, 255, 255, 0.06);
620
  color: var(--text-primary);
621
  }
622
 
 
624
  #loading-bar {
625
  display: none;
626
  height: 4px;
627
+ background: rgba(255, 255, 255, 0.18);
628
  border-radius: 999px;
629
  overflow: hidden;
630
  width: 120px;
 
659
  }
660
 
661
  ::-webkit-scrollbar-thumb {
662
+ background: rgba(124, 108, 255, 0.22);
663
  border-radius: 999px;
664
  }
665
 
666
  ::-webkit-scrollbar-track {
667
+ background: rgba(255, 255, 255, 0.03);
668
  }
669
 
670
  /* ── Responsive ──────────────────────────────────────────── */