@autenticar-me/vue 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/dist/components/AuthSwitcher.vue.d.ts +2 -2
  2. package/dist/components/AuthSwitcher.vue.d.ts.map +1 -0
  3. package/dist/components/Buttons/SignInButton.vue.d.ts +2 -2
  4. package/dist/components/Buttons/SignInButton.vue.d.ts.map +1 -0
  5. package/dist/components/Buttons/SignOutButton.vue.d.ts +2 -2
  6. package/dist/components/Buttons/SignOutButton.vue.d.ts.map +1 -0
  7. package/dist/components/Buttons/SignUpButton.vue.d.ts +2 -2
  8. package/dist/components/Buttons/SignUpButton.vue.d.ts.map +1 -0
  9. package/dist/components/Layout/SignedIn.vue.d.ts +12 -7
  10. package/dist/components/Layout/SignedIn.vue.d.ts.map +1 -0
  11. package/dist/components/Layout/SignedOut.vue.d.ts +12 -7
  12. package/dist/components/Layout/SignedOut.vue.d.ts.map +1 -0
  13. package/dist/components/Modals/Modal.vue.d.ts +15 -10
  14. package/dist/components/Modals/Modal.vue.d.ts.map +1 -0
  15. package/dist/components/Modals/SignInModal.vue.d.ts +4 -4
  16. package/dist/components/Modals/SignInModal.vue.d.ts.map +1 -0
  17. package/dist/components/Modals/SignUpModal.vue.d.ts +4 -4
  18. package/dist/components/Modals/SignUpModal.vue.d.ts.map +1 -0
  19. package/dist/components/Notification.vue.d.ts +3 -3
  20. package/dist/components/Notification.vue.d.ts.map +1 -0
  21. package/dist/components/SignIn.vue.d.ts +7 -4
  22. package/dist/components/SignIn.vue.d.ts.map +1 -0
  23. package/dist/components/SignUp.vue.d.ts +7 -4
  24. package/dist/components/SignUp.vue.d.ts.map +1 -0
  25. package/dist/components/UserProfile.vue.d.ts +4 -2
  26. package/dist/components/UserProfile.vue.d.ts.map +1 -0
  27. package/dist/composables/useAtm.d.ts +5 -4
  28. package/dist/composables/useAtm.d.ts.map +1 -0
  29. package/dist/composables/useAtmClient.d.ts +2 -1
  30. package/dist/composables/useAtmClient.d.ts.map +1 -0
  31. package/dist/composables/useAuth.d.ts +3 -2
  32. package/dist/composables/useAuth.d.ts.map +1 -0
  33. package/dist/index.cjs +2270 -0
  34. package/dist/index.cjs.map +1 -0
  35. package/dist/index.d.ts +18 -16
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +2269 -31
  38. package/dist/index.js.map +1 -0
  39. package/dist/plugin.d.ts +2 -1
  40. package/dist/plugin.d.ts.map +1 -0
  41. package/dist/types/configurations.type.d.ts +10 -0
  42. package/dist/types/configurations.type.d.ts.map +1 -0
  43. package/dist/types/session.type.d.ts +1 -0
  44. package/dist/types/session.type.d.ts.map +1 -0
  45. package/dist/types/user-attribute.type.d.ts +1 -0
  46. package/dist/types/user-attribute.type.d.ts.map +1 -0
  47. package/dist/types/user.type.d.ts +2 -1
  48. package/dist/types/user.type.d.ts.map +1 -0
  49. package/dist/utils/device.d.ts +2 -1
  50. package/dist/utils/device.d.ts.map +1 -0
  51. package/dist/utils/fetch-configurations.d.ts +3 -2
  52. package/dist/utils/fetch-configurations.d.ts.map +1 -0
  53. package/dist/utils/fetch-user.d.ts +3 -2
  54. package/dist/utils/fetch-user.d.ts.map +1 -0
  55. package/dist/utils/tokens.d.ts +1 -0
  56. package/dist/utils/tokens.d.ts.map +1 -0
  57. package/dist/vue.css +1761 -0
  58. package/package.json +29 -5
  59. package/.claude/settings.local.json +0 -7
  60. package/dist/components/AuthSwitcher.vue.js +0 -76
  61. package/dist/components/Buttons/SignInButton.vue.js +0 -110
  62. package/dist/components/Buttons/SignOutButton.vue.js +0 -68
  63. package/dist/components/Buttons/SignUpButton.vue.js +0 -86
  64. package/dist/components/Layout/SignedIn.vue.js +0 -54
  65. package/dist/components/Layout/SignedOut.vue.js +0 -54
  66. package/dist/components/Modals/Modal.vue.js +0 -133
  67. package/dist/components/Modals/SignInModal.vue.js +0 -149
  68. package/dist/components/Modals/SignUpModal.vue.js +0 -165
  69. package/dist/components/Notification.vue.js +0 -95
  70. package/dist/components/SignIn.vue.js +0 -485
  71. package/dist/components/SignUp.vue.js +0 -339
  72. package/dist/components/UserProfile.vue.js +0 -916
  73. package/dist/composables/useAtm.js +0 -11
  74. package/dist/composables/useAtmClient.js +0 -8
  75. package/dist/composables/useAuth.js +0 -38
  76. package/dist/plugin.js +0 -33
  77. package/dist/types/configurations.type.js +0 -2
  78. package/dist/types/session.type.js +0 -2
  79. package/dist/types/user-attribute.type.js +0 -2
  80. package/dist/types/user.type.js +0 -2
  81. package/dist/utils/device.js +0 -46
  82. package/dist/utils/fetch-configurations.js +0 -45
  83. package/dist/utils/fetch-user.js +0 -36
  84. package/dist/utils/tokens.js +0 -46
package/dist/vue.css ADDED
@@ -0,0 +1,1761 @@
1
+
2
+ .atm-overlay[data-v-c347df44] {
3
+ position: fixed;
4
+ inset: 0;
5
+ z-index: 99999;
6
+ display: flex;
7
+ align-items: center;
8
+ justify-content: center;
9
+ background-color: rgba(0, 0, 0, 0.5);
10
+ backdrop-filter: blur(4px);
11
+ overflow-y: auto;
12
+ padding: 1.5rem 0;
13
+ }
14
+ .atm-container[data-v-c347df44] {
15
+ padding: 0 1.5rem;
16
+ width: 100%;
17
+ margin: auto;
18
+ }
19
+ .atm-fade-layer[data-v-c347df44] {
20
+ position: fixed;
21
+ inset: 0;
22
+ transition: opacity 0.2s ease;
23
+ pointer-events: none;
24
+ }
25
+ .atm-fade-bg[data-v-c347df44] {
26
+ position: absolute;
27
+ inset: 0;
28
+ opacity: 0.75;
29
+ }
30
+ .atm-modal[data-v-c347df44] {
31
+ position: relative;
32
+ display: inline-block;
33
+ vertical-align: bottom;
34
+ background-color: #ffffff;
35
+ border-radius: 0.5rem;
36
+ text-align: left;
37
+ box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
38
+ transform: translate(0);
39
+ transition: all 0.2s ease-in-out;
40
+ max-width: 32rem;
41
+ width: 100%;
42
+ max-height: calc(100vh - 3rem);
43
+ display: flex;
44
+ flex-direction: column;
45
+ }
46
+ .atm-close-button[data-v-c347df44] {
47
+ position: absolute;
48
+ top: 1rem;
49
+ right: 1rem;
50
+ color: #9ca3af;
51
+ background: transparent;
52
+ border: none;
53
+ cursor: pointer;
54
+ padding: 0.25rem;
55
+ display: flex;
56
+ align-items: center;
57
+ justify-content: center;
58
+ z-index: 10;
59
+ }
60
+ .atm-close-button[data-v-c347df44]:hover {
61
+ color: #4b5563;
62
+ }
63
+ .atm-icon[data-v-c347df44] {
64
+ width: 1.5rem;
65
+ height: 1.5rem;
66
+ }
67
+ .atm-modal-content[data-v-c347df44] {
68
+ padding: 1.25rem;
69
+ overflow-y: auto;
70
+ flex: 1;
71
+ min-height: 0;
72
+ }
73
+ .atm-modal-title[data-v-c347df44] {
74
+ font-size: 1.125rem;
75
+ font-weight: 500;
76
+ color: #111827;
77
+ margin: 0;
78
+ margin-bottom: 0.75rem;
79
+ }
80
+ @media (max-width: 768px) {
81
+ .atm-overlay[data-v-c347df44] {
82
+ padding: 1rem 0;
83
+ }
84
+ .atm-container[data-v-c347df44] {
85
+ padding: 0 1rem;
86
+ }
87
+ .atm-modal[data-v-c347df44] {
88
+ border-radius: 0.375rem;
89
+ max-height: calc(100vh - 2rem);
90
+ }
91
+ .atm-modal-content[data-v-c347df44] {
92
+ padding: 1rem;
93
+ }
94
+ .atm-modal-title[data-v-c347df44] {
95
+ font-size: 1rem;
96
+ margin-bottom: 0.75rem;
97
+ }
98
+ .atm-close-button[data-v-c347df44] {
99
+ top: 0.75rem;
100
+ right: 0.75rem;
101
+ }
102
+ .atm-icon[data-v-c347df44] {
103
+ width: 1.25rem;
104
+ height: 1.25rem;
105
+ }
106
+ }
107
+ @media (max-width: 480px) {
108
+ .atm-overlay[data-v-c347df44] {
109
+ padding: 0.5rem 0;
110
+ }
111
+ .atm-container[data-v-c347df44] {
112
+ padding: 0 0.5rem;
113
+ }
114
+ .atm-modal[data-v-c347df44] {
115
+ border-radius: 0.25rem;
116
+ max-width: 100%;
117
+ max-height: calc(100vh - 1rem);
118
+ }
119
+ .atm-modal-content[data-v-c347df44] {
120
+ padding: 0.875rem;
121
+ }
122
+ .atm-modal-title[data-v-c347df44] {
123
+ font-size: 0.9375rem;
124
+ margin-bottom: 0.625rem;
125
+ }
126
+ .atm-close-button[data-v-c347df44] {
127
+ top: 0.5rem;
128
+ right: 0.5rem;
129
+ }
130
+ }
131
+ @media (max-width: 360px) {
132
+ .atm-overlay[data-v-c347df44] {
133
+ padding: 0.25rem 0;
134
+ }
135
+ .atm-container[data-v-c347df44] {
136
+ padding: 0 0.25rem;
137
+ }
138
+ .atm-modal[data-v-c347df44] {
139
+ max-height: calc(100vh - 0.5rem);
140
+ }
141
+ .atm-modal-content[data-v-c347df44] {
142
+ padding: 0.75rem;
143
+ }
144
+ .atm-modal-title[data-v-c347df44] {
145
+ font-size: 0.875rem;
146
+ margin-bottom: 0.5rem;
147
+ }
148
+ }
149
+
150
+ .atm-login-container[data-v-69af412a] {
151
+ background: #ffffff;
152
+ border-radius: 8px;
153
+ font-family: 'Segoe UI', system-ui, sans-serif;
154
+ text-align: center;
155
+ }
156
+ .atm-logo-container[data-v-69af412a] {
157
+ margin-bottom: 12px;
158
+ }
159
+ .atm-logo-placeholder[data-v-69af412a] {
160
+ width: 44px;
161
+ height: 44px;
162
+ margin: 0 auto;
163
+ display: flex;
164
+ align-items: center;
165
+ justify-content: center;
166
+ background: #f0f0f0;
167
+ border-radius: 50%;
168
+ color: #888;
169
+ font-size: 11px;
170
+ }
171
+ .atm-logo-image[data-v-69af412a] {
172
+ max-width: 44px;
173
+ max-height: 44px;
174
+ margin: 0 auto;
175
+ display: block;
176
+ border-radius: 4px;
177
+ object-fit: contain;
178
+ }
179
+ .atm-project-name[data-v-69af412a] {
180
+ margin: 0 0 4px 0;
181
+ font-size: 18px;
182
+ color: var(--e2d4c99e);
183
+ font-weight: 600;
184
+ }
185
+ .atm-welcome-text[data-v-69af412a] {
186
+ margin: 0 0 16px 0;
187
+ font-size: 14px;
188
+ color: #666;
189
+ }
190
+ .atm-form-group[data-v-69af412a] {
191
+ margin-bottom: 12px;
192
+ text-align: left;
193
+ }
194
+ .atm-input-label[data-v-69af412a] {
195
+ display: block;
196
+ margin-bottom: 4px;
197
+ font-size: 13px;
198
+ color: #555;
199
+ font-weight: 500;
200
+ }
201
+ .atm-input-field[data-v-69af412a] {
202
+ width: 100%;
203
+ padding: 8px 10px;
204
+ border: 1px solid #ddd;
205
+ border-radius: 6px;
206
+ font-size: 14px;
207
+ box-sizing: border-box;
208
+ transition: border-color 0.2s;
209
+ }
210
+ .atm-input-field[data-v-69af412a]:focus {
211
+ outline: none;
212
+ border-color: var(--e2d4c99e);
213
+ box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.1);
214
+ }
215
+ .atm-input-field[data-v-69af412a]:disabled {
216
+ background-color: #f5f5f5;
217
+ cursor: not-allowed;
218
+ }
219
+ .atm-field-error[data-v-69af412a] {
220
+ color: #dc3545;
221
+ font-size: 12px;
222
+ margin-top: 4px;
223
+ text-align: left;
224
+ }
225
+ .atm-alternative-options[data-v-69af412a] {
226
+ margin-top: 8px;
227
+ text-align: center;
228
+ }
229
+ .atm-forgot-password-link[data-v-69af412a] {
230
+ font-size: 12px;
231
+ background: none;
232
+ border: none;
233
+ color: var(--v182122ff);
234
+ cursor: pointer;
235
+ text-decoration: none;
236
+ padding: 0;
237
+ font-family: inherit;
238
+ }
239
+ .atm-forgot-password-link[data-v-69af412a]:hover:not(:disabled) {
240
+ text-decoration: underline;
241
+ }
242
+ .atm-forgot-password-link[data-v-69af412a]:disabled {
243
+ opacity: 0.5;
244
+ cursor: not-allowed;
245
+ }
246
+ .atm-strategy-choice[data-v-69af412a] {
247
+ text-align: center;
248
+ margin-bottom: 12px;
249
+ }
250
+ .atm-strategy-title[data-v-69af412a] {
251
+ font-size: 14px;
252
+ color: #666;
253
+ margin-bottom: 12px;
254
+ }
255
+ .atm-strategy-buttons[data-v-69af412a] {
256
+ display: flex;
257
+ flex-direction: column;
258
+ gap: 8px;
259
+ }
260
+ .atm-strategy-button[data-v-69af412a] {
261
+ width: 100%;
262
+ padding: 10px;
263
+ background: #f8f9fa;
264
+ color: #333;
265
+ border: 1px solid #ddd;
266
+ border-radius: 6px;
267
+ font-size: 14px;
268
+ cursor: pointer;
269
+ transition: all 0.2s;
270
+ }
271
+ .atm-strategy-button[data-v-69af412a]:hover:not(:disabled) {
272
+ background: #e9ecef;
273
+ border-color: var(--e2d4c99e);
274
+ }
275
+ .atm-strategy-button[data-v-69af412a]:disabled {
276
+ opacity: 0.5;
277
+ cursor: not-allowed;
278
+ }
279
+ .atm-email-link-text[data-v-69af412a] {
280
+ font-size: 14px;
281
+ color: #666;
282
+ margin: 0;
283
+ text-align: center;
284
+ }
285
+ .atm-login-button[data-v-69af412a] {
286
+ width: 100%;
287
+ padding: 10px;
288
+ margin-top: 4px;
289
+ background: var(--e2d4c99e);
290
+ color: #fff;
291
+ border: none;
292
+ border-radius: 6px;
293
+ font-size: 14px;
294
+ font-weight: 500;
295
+ cursor: pointer;
296
+ transition: all 0.2s;
297
+ min-height: 42px;
298
+ display: flex;
299
+ align-items: center;
300
+ justify-content: center;
301
+ }
302
+ .atm-login-button[data-v-69af412a]:hover:not(:disabled) {
303
+ opacity: 0.9;
304
+ transform: translateY(-1px);
305
+ }
306
+ .atm-login-button[data-v-69af412a]:disabled {
307
+ opacity: 0.8;
308
+ cursor: not-allowed;
309
+ transform: none;
310
+ }
311
+ .button-spinner[data-v-69af412a] {
312
+ display: inline-flex;
313
+ align-items: center;
314
+ gap: 8px;
315
+ color: #fff;
316
+ font-weight: 500;
317
+ }
318
+ .spinner-svg[data-v-69af412a] {
319
+ animation: spin-69af412a 1s linear infinite;
320
+ width: 18px;
321
+ height: 18px;
322
+ stroke: #fff;
323
+ }
324
+ .spinner-circle[data-v-69af412a] {
325
+ stroke-dasharray: 90, 150;
326
+ stroke-linecap: round;
327
+ }
328
+ @keyframes spin-69af412a {
329
+ 0% {
330
+ transform: rotate(0deg);
331
+ }
332
+ 100% {
333
+ transform: rotate(360deg);
334
+ }
335
+ }
336
+ .atm-footer-links[data-v-69af412a] {
337
+ margin-top: 16px;
338
+ font-size: 13px;
339
+ }
340
+ .atm-signup-text[data-v-69af412a] {
341
+ color: #666;
342
+ margin-bottom: 6px;
343
+ }
344
+ .atm-signup-link[data-v-69af412a] {
345
+ color: var(--v182122ff);
346
+ text-decoration: none;
347
+ cursor: pointer;
348
+ }
349
+ .atm-signup-link[data-v-69af412a]:hover {
350
+ text-decoration: underline;
351
+ }
352
+ .atm-powered-by[data-v-69af412a] {
353
+ color: #999;
354
+ font-size: 11px;
355
+ margin: 0;
356
+ }
357
+ @media (max-width: 768px) {
358
+ .atm-project-name[data-v-69af412a] {
359
+ font-size: 17px;
360
+ }
361
+ .atm-welcome-text[data-v-69af412a] {
362
+ font-size: 13px;
363
+ margin-bottom: 14px;
364
+ }
365
+ .atm-form-group[data-v-69af412a] {
366
+ margin-bottom: 10px;
367
+ }
368
+ .atm-input-label[data-v-69af412a] {
369
+ font-size: 12px;
370
+ margin-bottom: 4px;
371
+ }
372
+ .atm-input-field[data-v-69af412a] {
373
+ padding: 8px 10px;
374
+ font-size: 13px;
375
+ }
376
+ .atm-login-button[data-v-69af412a] {
377
+ font-size: 13px;
378
+ padding: 9px;
379
+ min-height: 40px;
380
+ }
381
+ .atm-strategy-button[data-v-69af412a] {
382
+ padding: 9px;
383
+ font-size: 13px;
384
+ }
385
+ .atm-footer-links[data-v-69af412a] {
386
+ margin-top: 14px;
387
+ font-size: 12px;
388
+ }
389
+ }
390
+ @media (max-width: 480px) {
391
+ .atm-logo-placeholder[data-v-69af412a] {
392
+ width: 40px;
393
+ height: 40px;
394
+ font-size: 10px;
395
+ }
396
+ .atm-logo-image[data-v-69af412a] {
397
+ max-width: 40px;
398
+ max-height: 40px;
399
+ }
400
+ .atm-project-name[data-v-69af412a] {
401
+ font-size: 16px;
402
+ margin-bottom: 4px;
403
+ }
404
+ .atm-welcome-text[data-v-69af412a] {
405
+ font-size: 12px;
406
+ margin-bottom: 12px;
407
+ }
408
+ .atm-form-group[data-v-69af412a] {
409
+ margin-bottom: 10px;
410
+ }
411
+ .atm-input-label[data-v-69af412a] {
412
+ font-size: 12px;
413
+ margin-bottom: 3px;
414
+ }
415
+ .atm-input-field[data-v-69af412a] {
416
+ padding: 7px 9px;
417
+ font-size: 13px;
418
+ }
419
+ .atm-login-button[data-v-69af412a] {
420
+ font-size: 13px;
421
+ padding: 9px;
422
+ min-height: 38px;
423
+ }
424
+ .atm-forgot-password-link[data-v-69af412a] {
425
+ font-size: 11px;
426
+ }
427
+ .atm-strategy-title[data-v-69af412a] {
428
+ font-size: 13px;
429
+ margin-bottom: 10px;
430
+ }
431
+ .atm-strategy-button[data-v-69af412a] {
432
+ padding: 9px;
433
+ font-size: 13px;
434
+ }
435
+ .atm-email-link-text[data-v-69af412a] {
436
+ font-size: 13px;
437
+ }
438
+ .atm-footer-links[data-v-69af412a] {
439
+ margin-top: 12px;
440
+ font-size: 12px;
441
+ }
442
+ .atm-powered-by[data-v-69af412a] {
443
+ font-size: 10px;
444
+ }
445
+ .spinner-svg[data-v-69af412a] {
446
+ width: 16px;
447
+ height: 16px;
448
+ }
449
+ .button-spinner[data-v-69af412a] {
450
+ gap: 6px;
451
+ }
452
+ }
453
+ @media (max-width: 360px) {
454
+ .atm-logo-placeholder[data-v-69af412a] {
455
+ width: 36px;
456
+ height: 36px;
457
+ font-size: 9px;
458
+ }
459
+ .atm-logo-image[data-v-69af412a] {
460
+ max-width: 36px;
461
+ max-height: 36px;
462
+ }
463
+ .atm-project-name[data-v-69af412a] {
464
+ font-size: 15px;
465
+ margin-bottom: 3px;
466
+ }
467
+ .atm-welcome-text[data-v-69af412a] {
468
+ font-size: 11px;
469
+ margin-bottom: 10px;
470
+ }
471
+ .atm-form-group[data-v-69af412a] {
472
+ margin-bottom: 8px;
473
+ }
474
+ .atm-input-label[data-v-69af412a] {
475
+ font-size: 11px;
476
+ margin-bottom: 3px;
477
+ }
478
+ .atm-input-field[data-v-69af412a] {
479
+ padding: 6px 8px;
480
+ font-size: 12px;
481
+ }
482
+ .atm-login-button[data-v-69af412a] {
483
+ font-size: 12px;
484
+ padding: 8px;
485
+ min-height: 36px;
486
+ }
487
+ .atm-strategy-button[data-v-69af412a] {
488
+ padding: 8px;
489
+ font-size: 12px;
490
+ }
491
+ .atm-footer-links[data-v-69af412a] {
492
+ margin-top: 10px;
493
+ font-size: 11px;
494
+ }
495
+ .spinner-svg[data-v-69af412a] {
496
+ width: 14px;
497
+ height: 14px;
498
+ }
499
+ }
500
+
501
+ .atm-notification-container[data-v-f5e47084] {
502
+ font-family: Arial, Helvetica, sans-serif;
503
+ position: fixed;
504
+ top: 20px;
505
+ right: 20px;
506
+ z-index: 99999;
507
+ pointer-events: none;
508
+ }
509
+ .atm-notification[data-v-f5e47084] {
510
+ padding: 12px 16px;
511
+ border-radius: 6px;
512
+ font-size: 14px;
513
+ font-weight: 500;
514
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
515
+ min-width: 250px;
516
+ max-width: 350px;
517
+ pointer-events: auto;
518
+ }
519
+ .atm-notification--error[data-v-f5e47084] {
520
+ background: #ff3333;
521
+ color: #FFF;
522
+ }
523
+ .atm-notification--success[data-v-f5e47084] {
524
+ background: #00a622;
525
+ color: #FFF;
526
+ }
527
+ .atm-notification--warning[data-v-f5e47084] {
528
+ background: #ffa500;
529
+ color: #FFF;
530
+ }
531
+ .atm-notification-enter-active[data-v-f5e47084] {
532
+ transition: all 0.3s ease-out;
533
+ }
534
+ .atm-notification-leave-active[data-v-f5e47084] {
535
+ transition: all 0.3s ease-in;
536
+ }
537
+ .atm-notification-enter-from[data-v-f5e47084] {
538
+ transform: translateX(100%);
539
+ opacity: 0;
540
+ }
541
+ .atm-notification-leave-to[data-v-f5e47084] {
542
+ transform: translateX(100%);
543
+ opacity: 0;
544
+ }
545
+ @media (max-width: 768px) {
546
+ .atm-notification-container[data-v-f5e47084] {
547
+ top: 16px;
548
+ right: 16px;
549
+ left: 16px;
550
+ }
551
+ .atm-notification[data-v-f5e47084] {
552
+ min-width: auto;
553
+ max-width: 100%;
554
+ padding: 11px 14px;
555
+ font-size: 13px;
556
+ }
557
+ }
558
+ @media (max-width: 480px) {
559
+ .atm-notification-container[data-v-f5e47084] {
560
+ top: 12px;
561
+ right: 12px;
562
+ left: 12px;
563
+ }
564
+ .atm-notification[data-v-f5e47084] {
565
+ padding: 10px 12px;
566
+ font-size: 12px;
567
+ border-radius: 5px;
568
+ }
569
+ }
570
+ @media (max-width: 360px) {
571
+ .atm-notification-container[data-v-f5e47084] {
572
+ top: 10px;
573
+ right: 10px;
574
+ left: 10px;
575
+ }
576
+ .atm-notification[data-v-f5e47084] {
577
+ padding: 9px 11px;
578
+ font-size: 11px;
579
+ border-radius: 4px;
580
+ }
581
+ }
582
+
583
+ .atm-signup-container[data-v-de716df2] {
584
+ width: 100%;
585
+ border-radius: 8px;
586
+ font-family: 'Segoe UI', system-ui, sans-serif;
587
+ text-align: center;
588
+ }
589
+ .atm-logo-container[data-v-de716df2] {
590
+ margin-bottom: 12px;
591
+ }
592
+ .atm-logo-placeholder[data-v-de716df2] {
593
+ width: 44px;
594
+ height: 44px;
595
+ margin: 0 auto;
596
+ display: flex;
597
+ align-items: center;
598
+ justify-content: center;
599
+ background: #f0f0f0;
600
+ border-radius: 50%;
601
+ color: #888;
602
+ font-size: 11px;
603
+ }
604
+ .atm-logo-image[data-v-de716df2] {
605
+ max-width: 44px;
606
+ max-height: 44px;
607
+ margin: 0 auto;
608
+ display: block;
609
+ border-radius: 4px;
610
+ object-fit: contain;
611
+ }
612
+ .atm-project-name[data-v-de716df2] {
613
+ margin: 0 0 4px 0;
614
+ font-size: 18px;
615
+ color: var(--v8c008960);
616
+ font-weight: 600;
617
+ }
618
+ .atm-welcome-text[data-v-de716df2] {
619
+ margin: 0 0 16px 0;
620
+ font-size: 14px;
621
+ color: #666;
622
+ }
623
+ .atm-form-group[data-v-de716df2] {
624
+ margin-bottom: 12px;
625
+ text-align: left;
626
+ }
627
+ .atm-input-label[data-v-de716df2] {
628
+ display: block;
629
+ margin-bottom: 4px;
630
+ font-size: 13px;
631
+ color: #555;
632
+ font-weight: 500;
633
+ }
634
+ .atm-input-field[data-v-de716df2] {
635
+ width: 100%;
636
+ padding: 8px 10px;
637
+ border: 1px solid #ddd;
638
+ border-radius: 6px;
639
+ font-size: 14px;
640
+ box-sizing: border-box;
641
+ transition: border-color 0.2s;
642
+ }
643
+ .atm-input-field[data-v-de716df2]:focus {
644
+ outline: none;
645
+ border-color: var(--v8c008960);
646
+ box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.1);
647
+ }
648
+ .atm-input-field[data-v-de716df2]:disabled {
649
+ background-color: #f5f5f5;
650
+ cursor: not-allowed;
651
+ }
652
+ .atm-field-error[data-v-de716df2] {
653
+ color: #dc3545;
654
+ font-size: 12px;
655
+ margin-top: 4px;
656
+ text-align: left;
657
+ }
658
+ .atm-signup-button[data-v-de716df2] {
659
+ width: 100%;
660
+ padding: 10px;
661
+ margin-top: 4px;
662
+ background: var(--v8c008960);
663
+ color: #fff;
664
+ border: none;
665
+ border-radius: 6px;
666
+ font-size: 14px;
667
+ font-weight: 500;
668
+ cursor: pointer;
669
+ transition: all 0.2s;
670
+ min-height: 42px;
671
+ display: flex;
672
+ align-items: center;
673
+ justify-content: center;
674
+ }
675
+ .atm-signup-button[data-v-de716df2]:hover:not(:disabled) {
676
+ opacity: 0.9;
677
+ transform: translateY(-1px);
678
+ }
679
+ .atm-signup-button[data-v-de716df2]:disabled {
680
+ opacity: 0.8;
681
+ cursor: not-allowed;
682
+ transform: none;
683
+ }
684
+ .button-spinner[data-v-de716df2] {
685
+ display: inline-flex;
686
+ align-items: center;
687
+ gap: 8px;
688
+ color: #fff;
689
+ font-weight: 500;
690
+ }
691
+ .spinner-svg[data-v-de716df2] {
692
+ animation: spin-de716df2 1s linear infinite;
693
+ width: 18px;
694
+ height: 18px;
695
+ stroke: #fff;
696
+ }
697
+ .spinner-circle[data-v-de716df2] {
698
+ stroke-dasharray: 90, 150;
699
+ stroke-linecap: round;
700
+ }
701
+ @keyframes spin-de716df2 {
702
+ 0% {
703
+ transform: rotate(0deg);
704
+ }
705
+ 100% {
706
+ transform: rotate(360deg);
707
+ }
708
+ }
709
+ .atm-footer-links[data-v-de716df2] {
710
+ margin-top: 16px;
711
+ font-size: 13px;
712
+ }
713
+ .atm-login-text[data-v-de716df2] {
714
+ color: #666;
715
+ margin-bottom: 6px;
716
+ }
717
+ .atm-login-link[data-v-de716df2] {
718
+ color: var(--v1183b75e);
719
+ text-decoration: none;
720
+ cursor: pointer;
721
+ transition: opacity 0.2s;
722
+ }
723
+ .atm-login-link[data-v-de716df2]:hover:not(.disabled-link) {
724
+ text-decoration: underline;
725
+ }
726
+ .atm-login-link.disabled-link[data-v-de716df2] {
727
+ opacity: 0.5;
728
+ cursor: not-allowed;
729
+ pointer-events: none;
730
+ }
731
+ .atm-powered-by[data-v-de716df2] {
732
+ color: #999;
733
+ font-size: 11px;
734
+ margin: 0;
735
+ }
736
+ @media (max-width: 768px) {
737
+ .atm-project-name[data-v-de716df2] {
738
+ font-size: 17px;
739
+ }
740
+ .atm-welcome-text[data-v-de716df2] {
741
+ font-size: 13px;
742
+ margin-bottom: 14px;
743
+ }
744
+ .atm-form-group[data-v-de716df2] {
745
+ margin-bottom: 10px;
746
+ }
747
+ .atm-input-label[data-v-de716df2] {
748
+ font-size: 12px;
749
+ margin-bottom: 4px;
750
+ }
751
+ .atm-input-field[data-v-de716df2] {
752
+ padding: 8px 10px;
753
+ font-size: 13px;
754
+ }
755
+ .atm-signup-button[data-v-de716df2] {
756
+ font-size: 13px;
757
+ padding: 9px;
758
+ min-height: 40px;
759
+ }
760
+ .atm-footer-links[data-v-de716df2] {
761
+ margin-top: 14px;
762
+ font-size: 12px;
763
+ }
764
+ }
765
+ @media (max-width: 480px) {
766
+ .atm-logo-placeholder[data-v-de716df2] {
767
+ width: 40px;
768
+ height: 40px;
769
+ font-size: 10px;
770
+ }
771
+ .atm-logo-image[data-v-de716df2] {
772
+ max-width: 40px;
773
+ max-height: 40px;
774
+ }
775
+ .atm-project-name[data-v-de716df2] {
776
+ font-size: 16px;
777
+ margin-bottom: 4px;
778
+ }
779
+ .atm-welcome-text[data-v-de716df2] {
780
+ font-size: 12px;
781
+ margin-bottom: 12px;
782
+ }
783
+ .atm-form-group[data-v-de716df2] {
784
+ margin-bottom: 10px;
785
+ }
786
+ .atm-input-label[data-v-de716df2] {
787
+ font-size: 12px;
788
+ margin-bottom: 3px;
789
+ }
790
+ .atm-input-field[data-v-de716df2] {
791
+ padding: 7px 9px;
792
+ font-size: 13px;
793
+ }
794
+ .atm-signup-button[data-v-de716df2] {
795
+ font-size: 13px;
796
+ padding: 9px;
797
+ min-height: 38px;
798
+ }
799
+ .atm-footer-links[data-v-de716df2] {
800
+ margin-top: 12px;
801
+ font-size: 12px;
802
+ }
803
+ .atm-powered-by[data-v-de716df2] {
804
+ font-size: 10px;
805
+ }
806
+ .spinner-svg[data-v-de716df2] {
807
+ width: 16px;
808
+ height: 16px;
809
+ }
810
+ .button-spinner[data-v-de716df2] {
811
+ gap: 6px;
812
+ }
813
+ }
814
+ @media (max-width: 360px) {
815
+ .atm-logo-placeholder[data-v-de716df2] {
816
+ width: 36px;
817
+ height: 36px;
818
+ font-size: 9px;
819
+ }
820
+ .atm-logo-image[data-v-de716df2] {
821
+ max-width: 36px;
822
+ max-height: 36px;
823
+ }
824
+ .atm-project-name[data-v-de716df2] {
825
+ font-size: 15px;
826
+ margin-bottom: 3px;
827
+ }
828
+ .atm-welcome-text[data-v-de716df2] {
829
+ font-size: 11px;
830
+ margin-bottom: 10px;
831
+ }
832
+ .atm-form-group[data-v-de716df2] {
833
+ margin-bottom: 8px;
834
+ }
835
+ .atm-input-label[data-v-de716df2] {
836
+ font-size: 11px;
837
+ margin-bottom: 3px;
838
+ }
839
+ .atm-input-field[data-v-de716df2] {
840
+ padding: 6px 8px;
841
+ font-size: 12px;
842
+ }
843
+ .atm-signup-button[data-v-de716df2] {
844
+ font-size: 12px;
845
+ padding: 8px;
846
+ min-height: 36px;
847
+ }
848
+ .atm-footer-links[data-v-de716df2] {
849
+ margin-top: 10px;
850
+ font-size: 11px;
851
+ }
852
+ .spinner-svg[data-v-de716df2] {
853
+ width: 14px;
854
+ height: 14px;
855
+ }
856
+ }
857
+
858
+ .atm-signin-btn[data-v-4139c6d0] {
859
+ padding: 12px;
860
+ margin-top: 8px;
861
+ background: var(--v0f0ded3a);
862
+ color: #FFF;
863
+ border: none;
864
+ border-radius: 6px;
865
+ font-size: 14px;
866
+ font-weight: 500;
867
+ cursor: pointer;
868
+ transition: background 0.2s;
869
+ min-height: 44px;
870
+ }
871
+ .atm-signin-btn[data-v-4139c6d0]:hover {
872
+ opacity: 0.9;
873
+ }
874
+ @media (max-width: 768px) {
875
+ .atm-signin-btn[data-v-4139c6d0] {
876
+ padding: 11px;
877
+ font-size: 13px;
878
+ min-height: 42px;
879
+ }
880
+ }
881
+ @media (max-width: 480px) {
882
+ .atm-signin-btn[data-v-4139c6d0] {
883
+ padding: 10px;
884
+ font-size: 13px;
885
+ min-height: 40px;
886
+ }
887
+ }
888
+ @media (max-width: 360px) {
889
+ .atm-signin-btn[data-v-4139c6d0] {
890
+ padding: 9px;
891
+ font-size: 12px;
892
+ min-height: 38px;
893
+ }
894
+ }
895
+
896
+ .atm-signup-btn[data-v-959aa7ef] {
897
+ padding: 12px;
898
+ margin-top: 8px;
899
+ background: var(--v1112fbaa);
900
+ color: #FFF;
901
+ border: none;
902
+ border-radius: 6px;
903
+ font-size: 14px;
904
+ font-weight: 500;
905
+ cursor: pointer;
906
+ transition: background 0.2s;
907
+ min-height: 44px;
908
+ }
909
+ .atm-signup-btn[data-v-959aa7ef]:hover {
910
+ opacity: 0.9;
911
+ }
912
+ @media (max-width: 768px) {
913
+ .atm-signup-btn[data-v-959aa7ef] {
914
+ padding: 11px;
915
+ font-size: 13px;
916
+ min-height: 42px;
917
+ }
918
+ }
919
+ @media (max-width: 480px) {
920
+ .atm-signup-btn[data-v-959aa7ef] {
921
+ padding: 10px;
922
+ font-size: 13px;
923
+ min-height: 40px;
924
+ }
925
+ }
926
+ @media (max-width: 360px) {
927
+ .atm-signup-btn[data-v-959aa7ef] {
928
+ padding: 9px;
929
+ font-size: 12px;
930
+ min-height: 38px;
931
+ }
932
+ }
933
+
934
+ .atm-profile-container {
935
+ position: relative;
936
+ display: inline-block;
937
+ font-family: 'Segoe UI', system-ui, sans-serif;
938
+ }
939
+ .atm-profile-button {
940
+ display: flex;
941
+ align-items: center;
942
+ gap: 8px;
943
+ background: none;
944
+ border: none;
945
+ cursor: pointer;
946
+ padding: 8px 12px;
947
+ border-radius: 6px;
948
+ transition: background 0.2s;
949
+ }
950
+ .atm-profile-button:hover {
951
+ background: #f0f0f0;
952
+ }
953
+ .atm-profile-avatar {
954
+ width: 32px;
955
+ height: 32px;
956
+ border-radius: 50%;
957
+ background-color: var(--v1982ae74);
958
+ color: white;
959
+ display: flex;
960
+ align-items: center;
961
+ justify-content: center;
962
+ font-size: 12px;
963
+ font-weight: 500;
964
+ }
965
+ .atm-profile-avatar.large {
966
+ width: 48px;
967
+ height: 48px;
968
+ font-size: 16px;
969
+ }
970
+ .atm-profile-avatar-img {
971
+ width: 100%;
972
+ height: 100%;
973
+ object-fit: cover;
974
+ border-radius: 50%;
975
+ }
976
+ .atm-profile-name {
977
+ font-size: 14px;
978
+ color: #333;
979
+ font-weight: 500;
980
+ }
981
+ .atm-profile-arrow {
982
+ width: 16px;
983
+ height: 16px;
984
+ transition: transform 0.2s;
985
+ }
986
+ .atm-rotate {
987
+ transform: rotate(180deg);
988
+ }
989
+ .atm-profile-menu {
990
+ position: absolute;
991
+ top: 100%;
992
+ left: 0;
993
+ width: 280px;
994
+ background: white;
995
+ border-radius: 8px;
996
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
997
+ z-index: 1000;
998
+ overflow: hidden;
999
+ margin-top: 4px;
1000
+ }
1001
+ .atm-profile-info {
1002
+ display: flex;
1003
+ gap: 12px;
1004
+ padding: 16px;
1005
+ border-bottom: 1px solid #f0f0f0;
1006
+ }
1007
+ .atm-profile-details {
1008
+ flex: 1;
1009
+ min-width: 0;
1010
+ }
1011
+ .atm-profile-fullname {
1012
+ margin: 0;
1013
+ font-size: 14px;
1014
+ font-weight: 600;
1015
+ color: #333;
1016
+ white-space: nowrap;
1017
+ overflow: hidden;
1018
+ text-overflow: ellipsis;
1019
+ }
1020
+ .atm-profile-email {
1021
+ margin: 4px 0 0;
1022
+ font-size: 13px;
1023
+ color: #666;
1024
+ white-space: nowrap;
1025
+ overflow: hidden;
1026
+ text-overflow: ellipsis;
1027
+ }
1028
+ .atm-profile-options {
1029
+ padding: 8px 0;
1030
+ }
1031
+ .atm-profile-option {
1032
+ display: flex;
1033
+ align-items: center;
1034
+ width: 100%;
1035
+ padding: 10px 16px;
1036
+ background: none;
1037
+ border: none;
1038
+ text-align: left;
1039
+ cursor: pointer;
1040
+ font-size: 14px;
1041
+ color: #333;
1042
+ gap: 10px;
1043
+ transition: background 0.2s;
1044
+ }
1045
+ .atm-profile-option:hover {
1046
+ background: #f5f5f5;
1047
+ }
1048
+ .atm-profile-icon {
1049
+ width: 18px;
1050
+ height: 18px;
1051
+ color: #666;
1052
+ }
1053
+ .atm-fade-enter-active,
1054
+ .atm-fade-leave-active {
1055
+ transition: opacity 0.2s, transform 0.2s;
1056
+ }
1057
+ .atm-fade-enter-from,
1058
+ .atm-fade-leave-to {
1059
+ opacity: 0;
1060
+ transform: translateY(-10px);
1061
+ }
1062
+ .atm-profile-modal {
1063
+ position: fixed;
1064
+ top: 0;
1065
+ left: 0;
1066
+ width: 100%;
1067
+ height: 100%;
1068
+ z-index: 9999;
1069
+ display: flex;
1070
+ justify-content: center;
1071
+ align-items: center;
1072
+ overflow-y: auto;
1073
+ padding: 1.5rem;
1074
+ }
1075
+ .atm-profile-overlay {
1076
+ position: fixed;
1077
+ top: 0;
1078
+ left: 0;
1079
+ width: 100%;
1080
+ height: 100%;
1081
+ background: rgba(0, 0, 0, 0.5);
1082
+ pointer-events: none;
1083
+ }
1084
+ .atm-profile-content {
1085
+ position: relative;
1086
+ width: 100%;
1087
+ max-width: 450px;
1088
+ background: white;
1089
+ border-radius: 12px;
1090
+ box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
1091
+ z-index: 1;
1092
+ max-height: calc(100vh - 3rem);
1093
+ display: flex;
1094
+ flex-direction: column;
1095
+ margin: auto;
1096
+ }
1097
+ .atm-profile-header {
1098
+ padding: 16px;
1099
+ border-bottom: 1px solid #f0f0f0;
1100
+ display: flex;
1101
+ align-items: center;
1102
+ }
1103
+ .atm-profile-close {
1104
+ background: none;
1105
+ border: none;
1106
+ font-size: 24px;
1107
+ cursor: pointer;
1108
+ padding: 8px;
1109
+ margin-right: 12px;
1110
+ color: #666;
1111
+ }
1112
+ .atm-profile-title {
1113
+ margin: 0;
1114
+ font-size: 18px;
1115
+ font-weight: 600;
1116
+ color: #333;
1117
+ }
1118
+ .atm-profile-tabs {
1119
+ display: flex;
1120
+ border-bottom: 1px solid #f0f0f0;
1121
+ background: #f8f9fa;
1122
+ }
1123
+ .atm-tab {
1124
+ flex: 1;
1125
+ display: flex;
1126
+ align-items: center;
1127
+ justify-content: center;
1128
+ gap: 6px;
1129
+ padding: 12px 16px;
1130
+ background: none;
1131
+ border: none;
1132
+ cursor: pointer;
1133
+ font-size: 14px;
1134
+ font-weight: 500;
1135
+ color: #666;
1136
+ transition: all 0.2s;
1137
+ }
1138
+ .atm-tab:hover {
1139
+ background: #e9ecef;
1140
+ }
1141
+ .atm-tab-active {
1142
+ color: var(--v1982ae74) !important;
1143
+ background: white;
1144
+ border-bottom: 2px solid var(--v1982ae74);
1145
+ }
1146
+ .atm-tab-icon {
1147
+ width: 16px;
1148
+ height: 16px;
1149
+ }
1150
+ .atm-profile-body {
1151
+ padding: 24px;
1152
+ text-align: center;
1153
+ overflow-y: auto;
1154
+ flex: 1;
1155
+ min-height: 0;
1156
+ }
1157
+ .atm-profile-avatar-large {
1158
+ width: 80px;
1159
+ height: 80px;
1160
+ border-radius: 50%;
1161
+ background-color: var(--v1982ae74);
1162
+ color: white;
1163
+ display: flex;
1164
+ align-items: center;
1165
+ justify-content: center;
1166
+ font-size: 24px;
1167
+ font-weight: 600;
1168
+ margin: 0 auto 20px;
1169
+ }
1170
+ .atm-profile-info-grid {
1171
+ width: 100%;
1172
+ text-align: left;
1173
+ margin-top: 20px;
1174
+ }
1175
+ .atm-profile-info-row {
1176
+ display: flex;
1177
+ flex-direction: column;
1178
+ margin-bottom: 16px;
1179
+ }
1180
+ .atm-profile-info-label {
1181
+ font-size: 13px;
1182
+ color: #666;
1183
+ margin-bottom: 4px;
1184
+ }
1185
+ .atm-profile-info-value {
1186
+ font-size: 16px;
1187
+ color: #333;
1188
+ font-weight: 500;
1189
+ }
1190
+ .atm-profile-edit-form {
1191
+ width: 100%;
1192
+ text-align: left;
1193
+ margin-top: 20px;
1194
+ }
1195
+ .atm-form-group {
1196
+ margin-bottom: 16px;
1197
+ }
1198
+ .atm-input-label {
1199
+ display: block;
1200
+ margin-bottom: 6px;
1201
+ font-size: 13px;
1202
+ color: #555;
1203
+ font-weight: 500;
1204
+ }
1205
+ .atm-input-field {
1206
+ width: 100%;
1207
+ padding: 10px 12px;
1208
+ border: 1px solid #ddd;
1209
+ border-radius: 6px;
1210
+ font-size: 14px;
1211
+ box-sizing: border-box;
1212
+ transition: border-color 0.2s;
1213
+ }
1214
+ .atm-input-field:focus {
1215
+ outline: none;
1216
+ border-color: var(--v1982ae74);
1217
+ box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.1);
1218
+ }
1219
+ .atm-form-actions {
1220
+ display: flex;
1221
+ gap: 12px;
1222
+ margin-top: 24px;
1223
+ }
1224
+ .atm-save-btn,
1225
+ .atm-edit-profile-btn,
1226
+ .atm-reset-password-btn,
1227
+ .atm-add-email-btn {
1228
+ display: flex;
1229
+ align-items: center;
1230
+ gap: 8px;
1231
+ padding: 12px;
1232
+ background: var(--v1982ae74);
1233
+ color: #FFF;
1234
+ border: none;
1235
+ border-radius: 6px;
1236
+ font-size: 14px;
1237
+ font-weight: 500;
1238
+ cursor: pointer;
1239
+ transition: opacity 0.2s;
1240
+ justify-content: center;
1241
+ }
1242
+ .atm-save-btn:hover,
1243
+ .atm-edit-profile-btn:hover,
1244
+ .atm-reset-password-btn:hover,
1245
+ .atm-add-email-btn:hover {
1246
+ opacity: 0.9;
1247
+ }
1248
+ .atm-cancel-btn {
1249
+ display: flex;
1250
+ align-items: center;
1251
+ gap: 8px;
1252
+ flex: 1;
1253
+ padding: 12px;
1254
+ background: #f8f9fa;
1255
+ color: #666;
1256
+ border: 1px solid #ddd;
1257
+ border-radius: 6px;
1258
+ font-size: 14px;
1259
+ font-weight: 500;
1260
+ cursor: pointer;
1261
+ transition: all 0.2s;
1262
+ justify-content: center;
1263
+ }
1264
+ .atm-cancel-btn:hover {
1265
+ background: #e9ecef;
1266
+ }
1267
+ .atm-btn-icon {
1268
+ width: 16px;
1269
+ height: 16px;
1270
+ }
1271
+ .atm-email-add-section {
1272
+ margin-bottom: 24px;
1273
+ text-align: left;
1274
+ }
1275
+ .atm-email-list {
1276
+ display: flex;
1277
+ flex-direction: column;
1278
+ gap: 12px;
1279
+ text-align: left;
1280
+ }
1281
+ .atm-email-item {
1282
+ display: flex;
1283
+ justify-content: space-between;
1284
+ align-items: center;
1285
+ padding: 12px;
1286
+ background: #f8f9fa;
1287
+ border-radius: 6px;
1288
+ border: 1px solid #e9ecef;
1289
+ }
1290
+ .atm-email-info {
1291
+ display: flex;
1292
+ flex-direction: column;
1293
+ gap: 8px;
1294
+ flex: 1;
1295
+ }
1296
+ .atm-email-address {
1297
+ display: flex;
1298
+ align-items: center;
1299
+ gap: 8px;
1300
+ }
1301
+ .atm-email-icon {
1302
+ width: 16px;
1303
+ height: 16px;
1304
+ color: var(--c7d31cfc);
1305
+ }
1306
+ .atm-email-badges {
1307
+ display: flex;
1308
+ gap: 6px;
1309
+ flex-wrap: wrap;
1310
+ }
1311
+ .atm-badge {
1312
+ display: flex;
1313
+ align-items: center;
1314
+ gap: 4px;
1315
+ padding: 2px 8px;
1316
+ font-size: 11px;
1317
+ font-weight: 500;
1318
+ border-radius: 12px;
1319
+ text-transform: uppercase;
1320
+ }
1321
+ .atm-badge-icon {
1322
+ width: 12px;
1323
+ height: 12px;
1324
+ }
1325
+ .atm-badge-primary {
1326
+ background: #e3f2fd;
1327
+ color: #1976d2;
1328
+ }
1329
+ .atm-badge-verified {
1330
+ background: #e8f5e8;
1331
+ color: #2e7d32;
1332
+ }
1333
+ .atm-badge-unverified {
1334
+ background: #fff3e0;
1335
+ color: #f57c00;
1336
+ }
1337
+ .atm-email-actions {
1338
+ display: flex;
1339
+ flex-direction: column;
1340
+ gap: 4px;
1341
+ }
1342
+ .atm-verify-btn {
1343
+ display: flex;
1344
+ align-items: center;
1345
+ gap: 4px;
1346
+ padding: 6px 12px;
1347
+ background: var(--v1982ae74);
1348
+ color: white;
1349
+ border: none;
1350
+ border-radius: 4px;
1351
+ font-size: 12px;
1352
+ font-weight: 500;
1353
+ cursor: pointer;
1354
+ transition: opacity 0.2s;
1355
+ }
1356
+ .atm-verify-btn:hover {
1357
+ opacity: 0.9;
1358
+ }
1359
+ .atm-delete-btn {
1360
+ display: flex;
1361
+ align-items: center;
1362
+ gap: 4px;
1363
+ padding: 6px 12px;
1364
+ background: #dc3545;
1365
+ color: white;
1366
+ border: none;
1367
+ border-radius: 4px;
1368
+ font-size: 12px;
1369
+ font-weight: 500;
1370
+ cursor: pointer;
1371
+ transition: opacity 0.2s;
1372
+ }
1373
+ .atm-delete-btn:hover {
1374
+ opacity: 0.9;
1375
+ }
1376
+ .atm-password-section {
1377
+ text-align: left;
1378
+ }
1379
+ .atm-sessions-section {
1380
+ text-align: left;
1381
+ }
1382
+ .atm-sessions-info {
1383
+ margin-bottom: 20px;
1384
+ }
1385
+ .atm-sessions-description {
1386
+ margin: 0;
1387
+ font-size: 14px;
1388
+ color: #666;
1389
+ line-height: 1.5;
1390
+ }
1391
+ .atm-sessions-list {
1392
+ display: flex;
1393
+ flex-direction: column;
1394
+ gap: 12px;
1395
+ }
1396
+ .atm-session-item {
1397
+ display: flex;
1398
+ justify-content: space-between;
1399
+ align-items: center;
1400
+ padding: 16px;
1401
+ background: #f8f9fa;
1402
+ border-radius: 8px;
1403
+ border: 1px solid #e9ecef;
1404
+ gap: 16px;
1405
+ }
1406
+ .atm-session-header {
1407
+ display: flex;
1408
+ gap: 12px;
1409
+ align-items: flex-start;
1410
+ }
1411
+ .atm-session-icon {
1412
+ width: 24px;
1413
+ height: 24px;
1414
+ color: var(--c7d31cfc);
1415
+ flex-shrink: 0;
1416
+ }
1417
+ .atm-session-details {
1418
+ flex: 1;
1419
+ min-width: 0;
1420
+ }
1421
+ .atm-session-title {
1422
+ display: flex;
1423
+ align-items: center;
1424
+ gap: 8px;
1425
+ margin-bottom: 4px;
1426
+ font-size: 15px;
1427
+ font-weight: 600;
1428
+ color: #333;
1429
+ }
1430
+ .atm-session-device-info {
1431
+ font-size: 13px;
1432
+ color: #666;
1433
+ margin-bottom: 8px;
1434
+ }
1435
+ .atm-badge-current {
1436
+ background: #d1f4e0;
1437
+ color: #0f9d58;
1438
+ }
1439
+ .atm-session-timestamps {
1440
+ display: flex;
1441
+ flex-direction: column;
1442
+ gap: 4px;
1443
+ }
1444
+ .atm-session-timestamp {
1445
+ display: flex;
1446
+ gap: 6px;
1447
+ font-size: 13px;
1448
+ color: #666;
1449
+ }
1450
+ .atm-timestamp-label {
1451
+ font-weight: 500;
1452
+ color: #555;
1453
+ }
1454
+ .atm-session-actions {
1455
+ display: flex;
1456
+ flex-direction: column;
1457
+ gap: 8px;
1458
+ }
1459
+ .atm-close-session-btn {
1460
+ display: flex;
1461
+ align-items: center;
1462
+ gap: 6px;
1463
+ padding: 8px 14px;
1464
+ background: #dc3545;
1465
+ color: white;
1466
+ border: none;
1467
+ border-radius: 6px;
1468
+ font-size: 13px;
1469
+ font-weight: 500;
1470
+ cursor: pointer;
1471
+ transition: opacity 0.2s;
1472
+ white-space: nowrap;
1473
+ }
1474
+ .atm-close-session-btn:hover {
1475
+ opacity: 0.9;
1476
+ }
1477
+ @media (max-width: 768px) {
1478
+ .atm-profile-button {
1479
+ padding: 6px 10px;
1480
+ gap: 6px;
1481
+ }
1482
+ .atm-profile-name {
1483
+ font-size: 13px;
1484
+ }
1485
+ .atm-profile-menu {
1486
+ width: 260px;
1487
+ }
1488
+ .atm-profile-modal {
1489
+ padding: 1rem;
1490
+ }
1491
+ .atm-profile-content {
1492
+ max-width: 90%;
1493
+ max-height: calc(100vh - 2rem);
1494
+ }
1495
+ .atm-profile-header {
1496
+ padding: 14px;
1497
+ }
1498
+ .atm-profile-title {
1499
+ font-size: 16px;
1500
+ }
1501
+ .atm-profile-body {
1502
+ padding: 20px;
1503
+ }
1504
+ .atm-tab {
1505
+ padding: 10px 12px;
1506
+ font-size: 13px;
1507
+ gap: 4px;
1508
+ }
1509
+ .atm-tab-icon {
1510
+ width: 14px;
1511
+ height: 14px;
1512
+ }
1513
+ .atm-profile-avatar-large {
1514
+ width: 70px;
1515
+ height: 70px;
1516
+ font-size: 22px;
1517
+ }
1518
+ .atm-email-item {
1519
+ flex-direction: column;
1520
+ gap: 12px;
1521
+ align-items: flex-start;
1522
+ }
1523
+ .atm-email-actions {
1524
+ flex-direction: row;
1525
+ width: 100%;
1526
+ }
1527
+ .atm-verify-btn,
1528
+ .atm-delete-btn {
1529
+ flex: 1;
1530
+ justify-content: center;
1531
+ }
1532
+ .atm-session-item {
1533
+ flex-direction: column;
1534
+ align-items: flex-start;
1535
+ }
1536
+ .atm-session-actions {
1537
+ width: 100%;
1538
+ }
1539
+ .atm-close-session-btn {
1540
+ width: 100%;
1541
+ justify-content: center;
1542
+ }
1543
+ }
1544
+ @media (max-width: 480px) {
1545
+ .atm-profile-button {
1546
+ padding: 4px 8px;
1547
+ gap: 4px;
1548
+ }
1549
+ .atm-profile-avatar {
1550
+ width: 28px;
1551
+ height: 28px;
1552
+ font-size: 11px;
1553
+ }
1554
+ .atm-profile-avatar.large {
1555
+ width: 40px;
1556
+ height: 40px;
1557
+ font-size: 14px;
1558
+ }
1559
+ .atm-profile-name {
1560
+ font-size: 12px;
1561
+ }
1562
+ .atm-profile-arrow {
1563
+ width: 14px;
1564
+ height: 14px;
1565
+ }
1566
+ .atm-profile-menu {
1567
+ width: calc(100vw - 20px);
1568
+ max-width: 240px;
1569
+ }
1570
+ .atm-profile-info {
1571
+ padding: 12px;
1572
+ gap: 10px;
1573
+ }
1574
+ .atm-profile-fullname {
1575
+ font-size: 13px;
1576
+ }
1577
+ .atm-profile-email {
1578
+ font-size: 12px;
1579
+ }
1580
+ .atm-profile-option {
1581
+ padding: 8px 12px;
1582
+ font-size: 13px;
1583
+ gap: 8px;
1584
+ }
1585
+ .atm-profile-icon {
1586
+ width: 16px;
1587
+ height: 16px;
1588
+ }
1589
+ .atm-profile-modal {
1590
+ padding: 0.5rem;
1591
+ }
1592
+ .atm-profile-content {
1593
+ max-width: 95%;
1594
+ max-height: calc(100vh - 1rem);
1595
+ }
1596
+ .atm-profile-header {
1597
+ padding: 12px;
1598
+ }
1599
+ .atm-profile-close {
1600
+ font-size: 20px;
1601
+ padding: 4px;
1602
+ margin-right: 8px;
1603
+ }
1604
+ .atm-profile-title {
1605
+ font-size: 15px;
1606
+ }
1607
+ .atm-profile-body {
1608
+ padding: 16px;
1609
+ }
1610
+ .atm-tab {
1611
+ padding: 8px 8px;
1612
+ font-size: 12px;
1613
+ gap: 3px;
1614
+ }
1615
+ .atm-tab-icon {
1616
+ width: 13px;
1617
+ height: 13px;
1618
+ }
1619
+ .atm-profile-avatar-large {
1620
+ width: 60px;
1621
+ height: 60px;
1622
+ font-size: 20px;
1623
+ margin-bottom: 16px;
1624
+ }
1625
+ .atm-profile-info-label {
1626
+ font-size: 12px;
1627
+ }
1628
+ .atm-profile-info-value {
1629
+ font-size: 14px;
1630
+ }
1631
+ .atm-input-label {
1632
+ font-size: 12px;
1633
+ }
1634
+ .atm-input-field {
1635
+ padding: 8px 10px;
1636
+ font-size: 13px;
1637
+ }
1638
+ .atm-form-actions {
1639
+ flex-direction: column;
1640
+ gap: 8px;
1641
+ }
1642
+ .atm-save-btn,
1643
+ .atm-cancel-btn,
1644
+ .atm-edit-profile-btn,
1645
+ .atm-reset-password-btn {
1646
+ width: 100%;
1647
+ padding: 10px;
1648
+ font-size: 13px;
1649
+ }
1650
+ .atm-email-item {
1651
+ padding: 10px;
1652
+ }
1653
+ .atm-email-address {
1654
+ font-size: 13px;
1655
+ }
1656
+ .atm-badge {
1657
+ font-size: 10px;
1658
+ padding: 2px 6px;
1659
+ }
1660
+ }
1661
+ @media (max-width: 360px) {
1662
+ .atm-profile-button {
1663
+ padding: 4px 6px;
1664
+ }
1665
+ .atm-profile-avatar {
1666
+ width: 26px;
1667
+ height: 26px;
1668
+ font-size: 10px;
1669
+ }
1670
+ .atm-profile-name {
1671
+ display: none;
1672
+ }
1673
+ .atm-profile-menu {
1674
+ width: calc(100vw - 16px);
1675
+ max-width: 220px;
1676
+ }
1677
+ .atm-profile-modal {
1678
+ padding: 0.25rem;
1679
+ }
1680
+ .atm-profile-content {
1681
+ max-width: 98%;
1682
+ max-height: calc(100vh - 0.5rem);
1683
+ }
1684
+ .atm-profile-body {
1685
+ padding: 12px;
1686
+ }
1687
+ .atm-tab {
1688
+ padding: 8px 6px;
1689
+ font-size: 11px;
1690
+ flex-direction: column;
1691
+ gap: 2px;
1692
+ }
1693
+ .atm-profile-avatar-large {
1694
+ width: 50px;
1695
+ height: 50px;
1696
+ font-size: 18px;
1697
+ }
1698
+ .atm-email-item {
1699
+ padding: 8px;
1700
+ }
1701
+ }
1702
+
1703
+ .atm-auth-buttons[data-v-0c63ecb8] {
1704
+ display: flex;
1705
+ flex-wrap: wrap;
1706
+ gap: 16px;
1707
+ }
1708
+ @media (max-width: 768px) {
1709
+ .atm-auth-buttons[data-v-0c63ecb8] {
1710
+ gap: 14px;
1711
+ }
1712
+ }
1713
+ @media (max-width: 480px) {
1714
+ .atm-auth-buttons[data-v-0c63ecb8] {
1715
+ gap: 12px;
1716
+ flex-direction: column;
1717
+ }
1718
+ }
1719
+ @media (max-width: 360px) {
1720
+ .atm-auth-buttons[data-v-0c63ecb8] {
1721
+ gap: 10px;
1722
+ }
1723
+ }
1724
+
1725
+ .atm-logout-btn[data-v-7157f989] {
1726
+ padding: 12px;
1727
+ margin-top: 8px;
1728
+ background: var(--v2ec0f896);
1729
+ color: #FFF;
1730
+ border: none;
1731
+ border-radius: 6px;
1732
+ font-size: 14px;
1733
+ font-weight: 500;
1734
+ cursor: pointer;
1735
+ transition: opacity 0.2s;
1736
+ min-height: 44px;
1737
+ }
1738
+ .atm-logout-btn[data-v-7157f989]:hover {
1739
+ opacity: 0.9;
1740
+ }
1741
+ @media (max-width: 768px) {
1742
+ .atm-logout-btn[data-v-7157f989] {
1743
+ padding: 11px;
1744
+ font-size: 13px;
1745
+ min-height: 42px;
1746
+ }
1747
+ }
1748
+ @media (max-width: 480px) {
1749
+ .atm-logout-btn[data-v-7157f989] {
1750
+ padding: 10px;
1751
+ font-size: 13px;
1752
+ min-height: 40px;
1753
+ }
1754
+ }
1755
+ @media (max-width: 360px) {
1756
+ .atm-logout-btn[data-v-7157f989] {
1757
+ padding: 9px;
1758
+ font-size: 12px;
1759
+ min-height: 38px;
1760
+ }
1761
+ }