@salesmind-ai/design-system 0.5.0 → 0.7.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 (257) hide show
  1. package/README.md +2 -0
  2. package/dist/Anton-Regular-MLEXVTB2.woff2 +0 -0
  3. package/dist/admin/index.cjs +5 -61
  4. package/dist/admin/index.css +0 -3918
  5. package/dist/admin/index.css.map +1 -1
  6. package/dist/admin/index.d.cts +1 -422
  7. package/dist/admin/index.d.ts +1 -422
  8. package/dist/admin/index.js +1 -5
  9. package/dist/blog/index.cjs +13 -34
  10. package/dist/blog/index.css +0 -579
  11. package/dist/blog/index.css.map +1 -1
  12. package/dist/blog/index.d.cts +1 -54
  13. package/dist/blog/index.d.ts +1 -54
  14. package/dist/blog/index.js +5 -6
  15. package/dist/charts/index.cjs +0 -46
  16. package/dist/charts/index.d.cts +1 -452
  17. package/dist/charts/index.d.ts +1 -452
  18. package/dist/charts/index.js +1 -3
  19. package/dist/{chunk-HDVAMYSG.js → chunk-27Y5ESMM.js} +7 -2
  20. package/dist/chunk-27Y5ESMM.js.map +1 -0
  21. package/dist/{chunk-YTYDQBVY.cjs → chunk-2VVRZBUR.cjs} +4 -4
  22. package/dist/{chunk-GQELL2MF.cjs → chunk-3NS6X2R4.cjs} +20 -203
  23. package/dist/chunk-3NS6X2R4.cjs.map +1 -0
  24. package/dist/{chunk-XEX2AEZK.cjs → chunk-65DTHLVX.cjs} +66 -186
  25. package/dist/chunk-65DTHLVX.cjs.map +1 -0
  26. package/dist/{chunk-QALDZ7WQ.js → chunk-6BUS7RMS.js} +21 -198
  27. package/dist/chunk-6BUS7RMS.js.map +1 -0
  28. package/dist/{chunk-BJZ2DKS5.cjs → chunk-6QIQCUYC.cjs} +11 -10
  29. package/dist/chunk-6QIQCUYC.cjs.map +1 -0
  30. package/dist/{chunk-H2Y6BSTL.cjs → chunk-7EUR3AKV.cjs} +1 -1
  31. package/dist/chunk-7EUR3AKV.cjs.map +1 -0
  32. package/dist/{chunk-VFJZQQZU.js → chunk-AMNY5TS3.js} +11 -10
  33. package/dist/chunk-AMNY5TS3.js.map +1 -0
  34. package/dist/{chunk-YJ6C3EKW.js → chunk-CLXLQCNQ.js} +52 -168
  35. package/dist/chunk-CLXLQCNQ.js.map +1 -0
  36. package/dist/{chunk-H2KQ3WSH.cjs → chunk-CVLD5RQK.cjs} +12 -14
  37. package/dist/chunk-CVLD5RQK.cjs.map +1 -0
  38. package/dist/chunk-EPD4ZEPY.cjs +344 -0
  39. package/dist/chunk-EPD4ZEPY.cjs.map +1 -0
  40. package/dist/chunk-FXYOSA4E.cjs +118 -0
  41. package/dist/chunk-FXYOSA4E.cjs.map +1 -0
  42. package/dist/{chunk-ECXBTUH6.cjs → chunk-GPHQGLR5.cjs} +27 -204
  43. package/dist/chunk-GPHQGLR5.cjs.map +1 -0
  44. package/dist/{chunk-Y26OHHMX.js → chunk-HHQ6J7B6.js} +513 -888
  45. package/dist/chunk-HHQ6J7B6.js.map +1 -0
  46. package/dist/chunk-JPUJWI7F.cjs +73 -0
  47. package/dist/chunk-JPUJWI7F.cjs.map +1 -0
  48. package/dist/{chunk-6UNG76Y2.js → chunk-K526GN7P.js} +2 -2
  49. package/dist/{chunk-SICKWUWB.js → chunk-KJHPOB3J.js} +1 -1
  50. package/dist/chunk-KJHPOB3J.js.map +1 -0
  51. package/dist/chunk-KXVFFEGD.js +60 -0
  52. package/dist/chunk-KXVFFEGD.js.map +1 -0
  53. package/dist/chunk-LQB7QLD3.js +288 -0
  54. package/dist/chunk-LQB7QLD3.js.map +1 -0
  55. package/dist/chunk-LUD52ZJF.cjs +726 -0
  56. package/dist/chunk-LUD52ZJF.cjs.map +1 -0
  57. package/dist/{chunk-7UZ5DETZ.js → chunk-MBAG654R.js} +4 -216
  58. package/dist/chunk-MBAG654R.js.map +1 -0
  59. package/dist/chunk-OMP6FAZ6.cjs +183 -0
  60. package/dist/chunk-OMP6FAZ6.cjs.map +1 -0
  61. package/dist/{chunk-WYH4TKS5.js → chunk-PBYRTNQ5.js} +6 -8
  62. package/dist/chunk-PBYRTNQ5.js.map +1 -0
  63. package/dist/chunk-PYREXCZK.js +679 -0
  64. package/dist/chunk-PYREXCZK.js.map +1 -0
  65. package/dist/{chunk-6D22TFLA.cjs → chunk-R3ZECV5P.cjs} +9 -4
  66. package/dist/chunk-R3ZECV5P.cjs.map +1 -0
  67. package/dist/{chunk-P5BOFE5A.js → chunk-RSLA2FJN.js} +28 -183
  68. package/dist/chunk-RSLA2FJN.js.map +1 -0
  69. package/dist/chunk-S46SKHMD.js +173 -0
  70. package/dist/chunk-S46SKHMD.js.map +1 -0
  71. package/dist/chunk-SFXTB7JL.js +190 -0
  72. package/dist/chunk-SFXTB7JL.js.map +1 -0
  73. package/dist/chunk-SGYXYMKZ.cjs +214 -0
  74. package/dist/chunk-SGYXYMKZ.cjs.map +1 -0
  75. package/dist/chunk-UGKYP6F3.cjs +296 -0
  76. package/dist/chunk-UGKYP6F3.cjs.map +1 -0
  77. package/dist/chunk-WB6XDNU7.js +115 -0
  78. package/dist/chunk-WB6XDNU7.js.map +1 -0
  79. package/dist/{chunk-LTPTW2US.cjs → chunk-WE4QIIVN.cjs} +592 -974
  80. package/dist/chunk-WE4QIIVN.cjs.map +1 -0
  81. package/dist/core/index.cjs +144 -626
  82. package/dist/core/index.css +178 -3567
  83. package/dist/core/index.css.map +1 -1
  84. package/dist/core/index.d.cts +940 -902
  85. package/dist/core/index.d.ts +940 -902
  86. package/dist/core/index.js +6 -12
  87. package/dist/i18n/index.cjs +54 -49
  88. package/dist/i18n/index.d.cts +46 -11
  89. package/dist/i18n/index.d.ts +46 -11
  90. package/dist/i18n/index.js +2 -1
  91. package/dist/index-BJ8rBqrO.d.cts +1100 -0
  92. package/dist/index-BxMqCbqE.d.ts +1100 -0
  93. package/dist/index.cjs +507 -1001
  94. package/dist/index.cjs.map +1 -1
  95. package/dist/index.css +6057 -16713
  96. package/dist/index.css.map +1 -1
  97. package/dist/index.d.cts +306 -21
  98. package/dist/index.d.ts +306 -21
  99. package/dist/index.js +274 -39
  100. package/dist/index.js.map +1 -1
  101. package/dist/marketing/index.cjs +33 -76
  102. package/dist/marketing/index.css +1896 -3234
  103. package/dist/marketing/index.css.map +1 -1
  104. package/dist/marketing/index.d.cts +3 -1351
  105. package/dist/marketing/index.d.ts +3 -1351
  106. package/dist/marketing/index.js +5 -8
  107. package/dist/motion/index.cjs +3 -20
  108. package/dist/motion/index.css +0 -580
  109. package/dist/motion/index.css.map +1 -1
  110. package/dist/motion/index.d.cts +1 -37
  111. package/dist/motion/index.d.ts +1 -37
  112. package/dist/motion/index.js +1 -2
  113. package/dist/nav/index.cjs +10 -35
  114. package/dist/nav/index.css +28 -580
  115. package/dist/nav/index.css.map +1 -1
  116. package/dist/nav/index.d.cts +2 -60
  117. package/dist/nav/index.d.ts +2 -60
  118. package/dist/nav/index.js +1 -2
  119. package/dist/report/index.cjs +1166 -175
  120. package/dist/report/index.cjs.map +1 -1
  121. package/dist/report/index.d.cts +208 -5
  122. package/dist/report/index.d.ts +208 -5
  123. package/dist/report/index.js +1141 -3
  124. package/dist/report/index.js.map +1 -1
  125. package/dist/sections/index.cjs +8 -10
  126. package/dist/sections/index.cjs.map +1 -1
  127. package/dist/sections/index.css +0 -206
  128. package/dist/sections/index.css.map +1 -1
  129. package/dist/sections/index.js +2 -4
  130. package/dist/sections/index.js.map +1 -1
  131. package/dist/social-media/index.cjs +4 -0
  132. package/dist/social-media/index.cjs.map +1 -0
  133. package/dist/social-media/index.d.cts +2 -0
  134. package/dist/social-media/index.d.ts +2 -0
  135. package/dist/social-media/index.js +3 -0
  136. package/dist/social-media/index.js.map +1 -0
  137. package/dist/social-proof/index.cjs +4 -36
  138. package/dist/social-proof/index.css +3 -1106
  139. package/dist/social-proof/index.css.map +1 -1
  140. package/dist/social-proof/index.d.cts +26 -171
  141. package/dist/social-proof/index.d.ts +26 -171
  142. package/dist/social-proof/index.js +1 -5
  143. package/dist/styles/styles.css +657 -2990
  144. package/dist/theme/index.cjs +12 -16
  145. package/dist/theme/index.css +1 -245
  146. package/dist/theme/index.css.map +1 -1
  147. package/dist/theme/index.d.cts +4 -1
  148. package/dist/theme/index.d.ts +4 -1
  149. package/dist/theme/index.js +2 -2
  150. package/dist/web/client/index.cjs +10 -10
  151. package/dist/web/client/index.css +118 -0
  152. package/dist/web/client/index.css.map +1 -1
  153. package/dist/web/client/index.js +2 -2
  154. package/dist/web/index.cjs +10 -10
  155. package/dist/web/index.css +118 -0
  156. package/dist/web/index.css.map +1 -1
  157. package/dist/web/index.js +2 -2
  158. package/package.json +10 -4
  159. package/dist/AppearancePanel-UT57J69V.d.cts +0 -51
  160. package/dist/AppearancePanel-UT57J69V.d.ts +0 -51
  161. package/dist/ExportMenu-A2TLFiVv.d.cts +0 -311
  162. package/dist/ExportMenu-C8qck5AT.d.ts +0 -311
  163. package/dist/Select-BdZmK0Lt.d.cts +0 -66
  164. package/dist/Select-BdZmK0Lt.d.ts +0 -66
  165. package/dist/chart-types-BGVVO-zl.d.cts +0 -208
  166. package/dist/chart-types-BGVVO-zl.d.ts +0 -208
  167. package/dist/charts/index.css +0 -1167
  168. package/dist/charts/index.css.map +0 -1
  169. package/dist/chunk-3BAQDW3V.cjs +0 -1207
  170. package/dist/chunk-3BAQDW3V.cjs.map +0 -1
  171. package/dist/chunk-3NKRFUAR.js +0 -37
  172. package/dist/chunk-3NKRFUAR.js.map +0 -1
  173. package/dist/chunk-3TGSIILM.cjs +0 -201
  174. package/dist/chunk-3TGSIILM.cjs.map +0 -1
  175. package/dist/chunk-4GM5BGBN.cjs +0 -801
  176. package/dist/chunk-4GM5BGBN.cjs.map +0 -1
  177. package/dist/chunk-5LA3T22E.cjs +0 -562
  178. package/dist/chunk-5LA3T22E.cjs.map +0 -1
  179. package/dist/chunk-5SN66B2X.js +0 -2542
  180. package/dist/chunk-5SN66B2X.js.map +0 -1
  181. package/dist/chunk-6D22TFLA.cjs.map +0 -1
  182. package/dist/chunk-6H4DSTXR.js +0 -786
  183. package/dist/chunk-6H4DSTXR.js.map +0 -1
  184. package/dist/chunk-6HKQ5ILL.cjs +0 -1624
  185. package/dist/chunk-6HKQ5ILL.cjs.map +0 -1
  186. package/dist/chunk-7PX2AZ6Y.js +0 -39
  187. package/dist/chunk-7PX2AZ6Y.js.map +0 -1
  188. package/dist/chunk-7UZ5DETZ.js.map +0 -1
  189. package/dist/chunk-B6AVAX4F.js +0 -1415
  190. package/dist/chunk-B6AVAX4F.js.map +0 -1
  191. package/dist/chunk-BJZ2DKS5.cjs.map +0 -1
  192. package/dist/chunk-BUTQSDQH.js +0 -200
  193. package/dist/chunk-BUTQSDQH.js.map +0 -1
  194. package/dist/chunk-C2BCDNAV.js +0 -24
  195. package/dist/chunk-C2BCDNAV.js.map +0 -1
  196. package/dist/chunk-CJ2MKVAF.cjs +0 -46
  197. package/dist/chunk-CJ2MKVAF.cjs.map +0 -1
  198. package/dist/chunk-E7D6EKJ4.cjs +0 -44
  199. package/dist/chunk-E7D6EKJ4.cjs.map +0 -1
  200. package/dist/chunk-ECXBTUH6.cjs.map +0 -1
  201. package/dist/chunk-FAFAP4L5.js +0 -183
  202. package/dist/chunk-FAFAP4L5.js.map +0 -1
  203. package/dist/chunk-G2XGBO5V.cjs +0 -2565
  204. package/dist/chunk-G2XGBO5V.cjs.map +0 -1
  205. package/dist/chunk-GQELL2MF.cjs.map +0 -1
  206. package/dist/chunk-H2KQ3WSH.cjs.map +0 -1
  207. package/dist/chunk-H2Y6BSTL.cjs.map +0 -1
  208. package/dist/chunk-HCZW5AJN.cjs +0 -234
  209. package/dist/chunk-HCZW5AJN.cjs.map +0 -1
  210. package/dist/chunk-HDVAMYSG.js.map +0 -1
  211. package/dist/chunk-HN4PHABT.js +0 -126
  212. package/dist/chunk-HN4PHABT.js.map +0 -1
  213. package/dist/chunk-LTPTW2US.cjs.map +0 -1
  214. package/dist/chunk-MDB2WCRQ.cjs +0 -137
  215. package/dist/chunk-MDB2WCRQ.cjs.map +0 -1
  216. package/dist/chunk-MQRB634A.cjs +0 -34
  217. package/dist/chunk-MQRB634A.cjs.map +0 -1
  218. package/dist/chunk-NN3TUHIH.js +0 -28
  219. package/dist/chunk-NN3TUHIH.js.map +0 -1
  220. package/dist/chunk-OWS2KAXZ.js +0 -701
  221. package/dist/chunk-OWS2KAXZ.js.map +0 -1
  222. package/dist/chunk-P5BOFE5A.js.map +0 -1
  223. package/dist/chunk-PUPSK3DI.cjs +0 -216
  224. package/dist/chunk-PUPSK3DI.cjs.map +0 -1
  225. package/dist/chunk-Q2MFGYTE.cjs +0 -1449
  226. package/dist/chunk-Q2MFGYTE.cjs.map +0 -1
  227. package/dist/chunk-Q75DBVDY.cjs +0 -68
  228. package/dist/chunk-Q75DBVDY.cjs.map +0 -1
  229. package/dist/chunk-QALDZ7WQ.js.map +0 -1
  230. package/dist/chunk-QWE2RNCS.js +0 -1195
  231. package/dist/chunk-QWE2RNCS.js.map +0 -1
  232. package/dist/chunk-RQUFZAZ7.js +0 -1608
  233. package/dist/chunk-RQUFZAZ7.js.map +0 -1
  234. package/dist/chunk-SICKWUWB.js.map +0 -1
  235. package/dist/chunk-TCFC7XTB.js +0 -212
  236. package/dist/chunk-TCFC7XTB.js.map +0 -1
  237. package/dist/chunk-UTVXGAQP.cjs +0 -2437
  238. package/dist/chunk-UTVXGAQP.cjs.map +0 -1
  239. package/dist/chunk-UVEMY3FQ.cjs +0 -717
  240. package/dist/chunk-UVEMY3FQ.cjs.map +0 -1
  241. package/dist/chunk-VFJZQQZU.js.map +0 -1
  242. package/dist/chunk-WH7PYHZY.cjs +0 -35
  243. package/dist/chunk-WH7PYHZY.cjs.map +0 -1
  244. package/dist/chunk-WYH4TKS5.js.map +0 -1
  245. package/dist/chunk-XEX2AEZK.cjs.map +0 -1
  246. package/dist/chunk-XPTVHPCN.js +0 -2320
  247. package/dist/chunk-XPTVHPCN.js.map +0 -1
  248. package/dist/chunk-XWPDRMZG.js +0 -62
  249. package/dist/chunk-XWPDRMZG.js.map +0 -1
  250. package/dist/chunk-Y26OHHMX.js.map +0 -1
  251. package/dist/chunk-YJ6C3EKW.js.map +0 -1
  252. package/dist/motion-C651Ry6d.d.cts +0 -832
  253. package/dist/motion-C651Ry6d.d.ts +0 -832
  254. package/dist/report/index.css +0 -1239
  255. package/dist/report/index.css.map +0 -1
  256. /package/dist/{chunk-6UNG76Y2.js.map → chunk-2VVRZBUR.cjs.map} +0 -0
  257. /package/dist/{chunk-YTYDQBVY.cjs.map → chunk-K526GN7P.js.map} +0 -0
@@ -183,154 +183,6 @@
183
183
  }
184
184
  }
185
185
 
186
- /* src/components/FloatingTabBar/FloatingTabBar.css */
187
- .ds-floating-tab-bar {
188
- position: fixed;
189
- left: 50%;
190
- transform: translateX(-50%);
191
- display: flex;
192
- align-items: center;
193
- gap: var(--space-1);
194
- padding: var(--space-2);
195
- z-index: var(--z-ornament);
196
- background: var(--glass-base-hover);
197
- backdrop-filter: var(--glass-backdrop);
198
- -webkit-backdrop-filter: var(--glass-backdrop);
199
- border-radius: var(--radius-card);
200
- box-shadow: var(--glass-shadow-elevated-combined);
201
- }
202
- .ds-floating-tab-bar::before {
203
- content: "";
204
- position: absolute;
205
- inset: 0;
206
- border-radius: inherit;
207
- padding: var(--space-px);
208
- background:
209
- linear-gradient(
210
- 180deg,
211
- var(--rim-light-hover-top) 0%,
212
- var(--rim-light-top) 100%);
213
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
214
- mask-composite: exclude;
215
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
216
- -webkit-mask-composite: xor;
217
- pointer-events: none;
218
- }
219
- .ds-floating-tab-bar--top {
220
- top: var(--float-distance);
221
- }
222
- .ds-floating-tab-bar--bottom {
223
- bottom: var(--float-distance);
224
- }
225
- .ds-tab-item {
226
- position: relative;
227
- display: flex;
228
- flex-direction: column;
229
- align-items: center;
230
- justify-content: center;
231
- gap: var(--space-1);
232
- padding: var(--space-2) var(--space-4);
233
- min-width: 64px;
234
- border: none;
235
- border-radius: var(--radius-button);
236
- background: transparent;
237
- color: var(--text-tertiary);
238
- font-family: var(--font-family);
239
- font-size: var(--font-size-xs);
240
- font-weight: var(--font-weight-medium);
241
- cursor: pointer;
242
- transition:
243
- background var(--transition-glass),
244
- color var(--transition-glass),
245
- box-shadow var(--transition-glass),
246
- transform var(--transition-glass);
247
- }
248
- .ds-tab-item::before {
249
- content: "";
250
- position: absolute;
251
- inset: 0;
252
- border-radius: inherit;
253
- padding: var(--space-px);
254
- background:
255
- linear-gradient(
256
- 180deg,
257
- var(--rim-light-top) 0%,
258
- var(--rim-light-bottom) 100%);
259
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
260
- mask-composite: exclude;
261
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
262
- -webkit-mask-composite: xor;
263
- pointer-events: none;
264
- opacity: 0;
265
- transition: opacity var(--transition-glass);
266
- }
267
- .ds-tab-item:hover {
268
- background: var(--glass-base);
269
- color: var(--text-secondary);
270
- }
271
- .ds-tab-item:hover::before {
272
- opacity: 1;
273
- }
274
- .ds-tab-item:focus-visible {
275
- outline: none;
276
- box-shadow: var(--focus-ring);
277
- }
278
- .ds-tab-item--active {
279
- background: rgba(var(--brand-pink-rgb), 0.2);
280
- color: var(--text-primary);
281
- box-shadow: var(--glass-shadow-inner), 0 0 24px rgba(var(--brand-pink-rgb), 0.15);
282
- }
283
- .ds-tab-item--active::before {
284
- opacity: 1;
285
- background:
286
- linear-gradient(
287
- 180deg,
288
- rgba(var(--brand-pink-rgb), 0.4) 0%,
289
- rgba(var(--brand-pink-rgb), 0.1) 100%);
290
- }
291
- .ds-tab-item--active:hover {
292
- background: rgba(var(--brand-pink-rgb), 0.25);
293
- }
294
- .ds-tab-item__icon {
295
- display: flex;
296
- align-items: center;
297
- justify-content: center;
298
- width: 1.5rem;
299
- height: 1.5rem;
300
- }
301
- .ds-tab-item__icon svg {
302
- width: 100%;
303
- height: 100%;
304
- }
305
- .ds-tab-item__label {
306
- white-space: nowrap;
307
- }
308
- .ds-floating-tab-bar--compact .ds-tab-item {
309
- padding: var(--space-3);
310
- min-width: auto;
311
- }
312
- .ds-floating-tab-bar--compact .ds-tab-item__label {
313
- display: none;
314
- }
315
- @media (prefers-contrast: more) {
316
- .ds-floating-tab-bar {
317
- background: var(--hc-surface);
318
- border: 1px solid var(--hc-border);
319
- }
320
- .ds-floating-tab-bar::before {
321
- display: none;
322
- }
323
- .ds-tab-item--active {
324
- background: rgba(var(--brand-pink-rgb), 0.4);
325
- border: 1px solid rgba(var(--brand-pink-rgb), 0.6);
326
- }
327
- }
328
- @supports not (backdrop-filter: blur(1px)) {
329
- .ds-floating-tab-bar {
330
- background: var(--fallback-surface);
331
- }
332
- }
333
-
334
186
  /* src/components/Shell/Shell.css */
335
187
  .ds-shell {
336
188
  position: relative;
@@ -372,3774 +224,4 @@
372
224
  padding-bottom: calc(var(--float-distance) + env(safe-area-inset-bottom, 0px));
373
225
  }
374
226
  }
375
-
376
- /* src/components/DataTable/DataTable.css */
377
- .ds-data-table-container {
378
- width: 100%;
379
- overflow: auto;
380
- border-radius: var(--radius-card);
381
- border: 1px solid var(--rim-light-bottom);
382
- background: var(--glass-base);
383
- backdrop-filter: var(--glass-backdrop);
384
- }
385
- .ds-data-table {
386
- width: 100%;
387
- border-collapse: separate;
388
- border-spacing: 0;
389
- font-family: var(--font-family);
390
- font-size: var(--font-size-sm);
391
- color: var(--text-primary);
392
- }
393
- .ds-data-table__head {
394
- padding: var(--space-3) var(--space-4);
395
- text-align: left;
396
- font-weight: var(--font-weight-medium);
397
- color: var(--text-secondary);
398
- border-bottom: 1px solid var(--rim-light-bottom);
399
- background: var(--glass-base-hover);
400
- white-space: nowrap;
401
- }
402
- .ds-data-table__row {
403
- transition: background var(--transition-fast);
404
- }
405
- .ds-data-table__row:hover {
406
- background: var(--glass-base-hover);
407
- }
408
- .ds-data-table__row:last-child .ds-data-table__cell {
409
- border-bottom: none;
410
- }
411
- .ds-data-table__cell {
412
- padding: var(--space-3) var(--space-4);
413
- border-bottom: 1px solid var(--rim-light-bottom);
414
- vertical-align: middle;
415
- }
416
-
417
- /* src/components/Button/Button.css */
418
- .ds-button {
419
- position: relative;
420
- display: inline-flex;
421
- align-items: center;
422
- justify-content: center;
423
- gap: var(--space-2);
424
- border: none;
425
- cursor: pointer;
426
- font-family: var(--font-family);
427
- font-weight: var(--font-weight-medium);
428
- border-radius: var(--radius-button);
429
- color: var(--text-primary);
430
- outline: none;
431
- white-space: nowrap;
432
- hyphens: none;
433
- word-break: normal;
434
- overflow-wrap: normal;
435
- backdrop-filter: blur(12px) saturate(140%);
436
- -webkit-backdrop-filter: blur(12px) saturate(140%);
437
- transition:
438
- background var(--transition-glass),
439
- box-shadow var(--transition-glass),
440
- transform var(--transition-glass);
441
- }
442
- .ds-button::before {
443
- content: "";
444
- position: absolute;
445
- inset: 0;
446
- border-radius: inherit;
447
- padding: var(--space-px);
448
- background:
449
- linear-gradient(
450
- 180deg,
451
- var(--rim-light-top) 0%,
452
- var(--rim-light-bottom) 100%);
453
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
454
- mask-composite: exclude;
455
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
456
- -webkit-mask-composite: xor;
457
- pointer-events: none;
458
- transition: background var(--transition-glass);
459
- }
460
- .ds-button:focus-visible {
461
- box-shadow: var(--focus-ring);
462
- }
463
- .ds-button:disabled {
464
- opacity: 0.4;
465
- cursor: not-allowed;
466
- transform: none !important;
467
- }
468
- .ds-button--primary {
469
- background: var(--btn-primary-bg);
470
- color: var(--btn-primary-text, #ffffff);
471
- box-shadow:
472
- var(--shadow-interactive-rest),
473
- var(--glass-shadow-inner),
474
- var(--btn-primary-glow);
475
- backdrop-filter: none;
476
- -webkit-backdrop-filter: none;
477
- }
478
- .ds-button--primary::before {
479
- background:
480
- linear-gradient(
481
- 180deg,
482
- var(--glass-highlight-strong) 0%,
483
- rgba(var(--brand-pink-rgb), 0.2) 100%);
484
- }
485
- .ds-button--primary:hover:not(:disabled) {
486
- background: var(--btn-primary-bg-hover);
487
- box-shadow:
488
- var(--shadow-interactive-hover),
489
- var(--glass-shadow-inner),
490
- var(--btn-primary-glow-hover);
491
- transform: translateY(-1px);
492
- }
493
- .ds-button--primary:hover:not(:disabled)::before {
494
- background:
495
- linear-gradient(
496
- 180deg,
497
- var(--glass-highlight-bright) 0%,
498
- rgba(var(--brand-pink-rgb), 0.25) 100%);
499
- }
500
- .ds-button--primary:active:not(:disabled) {
501
- transform: translateY(0);
502
- box-shadow:
503
- var(--shadow-interactive-active),
504
- var(--glass-shadow-inner),
505
- var(--btn-primary-glow);
506
- }
507
- .ds-button--secondary {
508
- background: var(--btn-secondary-bg);
509
- box-shadow: var(--shadow-interactive-rest-subtle), var(--glass-shadow-inner);
510
- }
511
- .ds-button--secondary:hover:not(:disabled) {
512
- background: var(--btn-secondary-bg-hover);
513
- box-shadow: var(--shadow-interactive-hover-subtle), var(--glass-shadow-inner);
514
- transform: translateY(-1px);
515
- }
516
- .ds-button--secondary:hover:not(:disabled)::before {
517
- background:
518
- linear-gradient(
519
- 180deg,
520
- var(--rim-light-hover-top) 0%,
521
- var(--rim-light-hover-bottom) 100%);
522
- }
523
- .ds-button--secondary:active:not(:disabled) {
524
- transform: translateY(0);
525
- background: var(--glass-base-active);
526
- }
527
- .ds-button--outline {
528
- background: transparent;
529
- box-shadow: none;
530
- backdrop-filter: none;
531
- -webkit-backdrop-filter: none;
532
- color: var(--text-secondary);
533
- transition:
534
- background var(--transition-glass),
535
- color var(--transition-glass),
536
- box-shadow var(--transition-glass),
537
- transform var(--transition-glass);
538
- }
539
- .ds-button--outline::before {
540
- background:
541
- linear-gradient(
542
- 180deg,
543
- var(--outline-rim-top) 0%,
544
- var(--outline-rim-bottom) 100%);
545
- }
546
- .ds-button--outline:hover:not(:disabled) {
547
- background: rgba(var(--brand-pink-rgb), 0.05);
548
- color: var(--text-primary);
549
- backdrop-filter: blur(12px) saturate(140%);
550
- -webkit-backdrop-filter: blur(12px) saturate(140%);
551
- box-shadow:
552
- var(--shadow-interactive-rest-light),
553
- var(--glass-shadow-inner),
554
- 0 0 16px rgba(var(--brand-pink-rgb), 0.1);
555
- transform: translateY(-1px);
556
- }
557
- .ds-button--outline:hover:not(:disabled)::before {
558
- background:
559
- linear-gradient(
560
- 180deg,
561
- rgba(var(--brand-pink-rgb), 0.3) 0%,
562
- rgba(var(--brand-pink-rgb), 0.1) 100%);
563
- }
564
- .ds-button--outline:active:not(:disabled) {
565
- transform: translateY(0);
566
- background: rgba(var(--brand-pink-rgb), 0.1);
567
- }
568
- .ds-button--ghost {
569
- background: transparent;
570
- box-shadow: none;
571
- backdrop-filter: none;
572
- -webkit-backdrop-filter: none;
573
- color: var(--text-secondary);
574
- }
575
- .ds-button--ghost::before {
576
- display: none;
577
- }
578
- .ds-button--ghost:hover:not(:disabled) {
579
- background: var(--interactive-hover-bg);
580
- color: var(--text-primary);
581
- }
582
- .ds-button--ghost:active:not(:disabled) {
583
- background: var(--interactive-active-bg);
584
- }
585
- .ds-button--link {
586
- background: transparent;
587
- box-shadow: none;
588
- backdrop-filter: none;
589
- -webkit-backdrop-filter: none;
590
- color: var(--brand-pink);
591
- text-underline-offset: 4px;
592
- height: auto;
593
- padding: 0;
594
- }
595
- .ds-button--link::before {
596
- display: none;
597
- }
598
- .ds-button--link:hover:not(:disabled) {
599
- text-decoration: underline;
600
- }
601
- .ds-button--link:active:not(:disabled) {
602
- opacity: 0.8;
603
- }
604
- .ds-button--destructive {
605
- background: var(--btn-destructive-bg, rgba(var(--status-error-rgb, 239, 68, 68), 0.6));
606
- color: var(--btn-destructive-text, #ffffff);
607
- box-shadow:
608
- var(--shadow-interactive-rest),
609
- var(--glass-shadow-inner),
610
- 0 0 20px rgba(var(--status-error-rgb, 239, 68, 68), 0.15);
611
- backdrop-filter: none;
612
- -webkit-backdrop-filter: none;
613
- }
614
- .ds-button--destructive::before {
615
- background:
616
- linear-gradient(
617
- 180deg,
618
- var(--glass-highlight-medium) 0%,
619
- rgba(var(--status-error-rgb, 239, 68, 68), 0.15) 100%);
620
- }
621
- .ds-button--destructive:hover:not(:disabled) {
622
- background: var(--btn-destructive-bg-hover, rgba(var(--status-error-rgb, 239, 68, 68), 0.75));
623
- box-shadow:
624
- var(--shadow-interactive-hover),
625
- var(--glass-shadow-inner),
626
- 0 0 24px rgba(var(--status-error-rgb, 239, 68, 68), 0.25);
627
- transform: translateY(-1px);
628
- }
629
- .ds-button--destructive:hover:not(:disabled)::before {
630
- background:
631
- linear-gradient(
632
- 180deg,
633
- var(--glass-highlight-strong) 0%,
634
- rgba(var(--status-error-rgb, 239, 68, 68), 0.2) 100%);
635
- }
636
- .ds-button--destructive:active:not(:disabled) {
637
- transform: translateY(0);
638
- background: var(--btn-destructive-bg-active, rgba(var(--status-error-rgb, 239, 68, 68), 0.85));
639
- }
640
- .ds-button--sm {
641
- font-size: var(--font-size-sm);
642
- padding: var(--space-2) var(--space-4);
643
- height: 2rem;
644
- }
645
- .ds-button--md {
646
- font-size: var(--font-size-base);
647
- padding: var(--space-2) var(--space-5);
648
- height: 2.5rem;
649
- }
650
- .ds-button--lg {
651
- font-size: var(--font-size-lg);
652
- padding: var(--space-3) var(--space-6);
653
- height: 3rem;
654
- }
655
- .ds-button--icon {
656
- padding: 0;
657
- aspect-ratio: 1;
658
- }
659
- .ds-button--icon.ds-button--sm {
660
- width: 2rem;
661
- }
662
- .ds-button--icon.ds-button--md {
663
- width: 2.5rem;
664
- }
665
- .ds-button--icon.ds-button--lg {
666
- width: 3rem;
667
- }
668
- @media (prefers-contrast: more) {
669
- .ds-button {
670
- border: 1px solid var(--hc-border);
671
- }
672
- .ds-button::before {
673
- display: none;
674
- }
675
- .ds-button--primary {
676
- background: rgba(var(--brand-pink-rgb), 0.8);
677
- }
678
- .ds-button--secondary {
679
- background: var(--hc-surface-subtle);
680
- }
681
- .ds-button--ghost {
682
- border-color: transparent;
683
- }
684
- .ds-button--ghost:hover:not(:disabled) {
685
- border-color: var(--hc-border-subtle);
686
- }
687
- .ds-button--link {
688
- border: none;
689
- text-decoration: underline;
690
- }
691
- .ds-button--destructive {
692
- background: rgba(var(--status-error-rgb, 239, 68, 68), 0.85);
693
- }
694
- }
695
- @supports not (backdrop-filter: blur(1px)) {
696
- .ds-button--primary {
697
- background: rgba(var(--brand-pink-rgb), 0.85);
698
- }
699
- .ds-button--secondary {
700
- background: var(--fallback-surface);
701
- }
702
- }
703
- :root[data-theme=light] .ds-button--primary::before,
704
- :root[data-theme=light-contrast] .ds-button--primary::before {
705
- background:
706
- linear-gradient(
707
- 180deg,
708
- var(--glass-highlight-light) 0%,
709
- rgba(var(--brand-pink-rgb), 0.08) 100%);
710
- }
711
- :root[data-theme=light] .ds-button--primary:hover:not(:disabled)::before,
712
- :root[data-theme=light-contrast] .ds-button--primary:hover:not(:disabled)::before {
713
- background:
714
- linear-gradient(
715
- 180deg,
716
- var(--glass-highlight-medium) 0%,
717
- rgba(var(--brand-pink-rgb), 0.1) 100%);
718
- }
719
- :root[data-theme=light] .ds-button--destructive::before,
720
- :root[data-theme=light-contrast] .ds-button--destructive::before {
721
- background:
722
- linear-gradient(
723
- 180deg,
724
- var(--glass-highlight-light) 0%,
725
- rgba(var(--status-error-rgb, 239, 68, 68), 0.06) 100%);
726
- }
727
- :root[data-theme=light] .ds-button--destructive:hover:not(:disabled)::before,
728
- :root[data-theme=light-contrast] .ds-button--destructive:hover:not(:disabled)::before {
729
- background:
730
- linear-gradient(
731
- 180deg,
732
- var(--glass-highlight-light) 0%,
733
- rgba(var(--status-error-rgb, 239, 68, 68), 0.08) 100%);
734
- }
735
- .ds-button--loading {
736
- position: relative;
737
- cursor: not-allowed;
738
- opacity: 0.8;
739
- }
740
- .ds-button__spinner {
741
- position: absolute;
742
- top: 50%;
743
- left: 50%;
744
- transform: translate(-50%, -50%);
745
- animation: ds-button-spin 1s linear infinite;
746
- }
747
- .ds-button__content {
748
- display: inline-flex;
749
- align-items: center;
750
- justify-content: center;
751
- gap: inherit;
752
- visibility: visible;
753
- }
754
- .ds-button__content--hidden {
755
- visibility: hidden;
756
- }
757
- @keyframes ds-button-spin {
758
- from {
759
- transform: translate(-50%, -50%) rotate(0deg);
760
- }
761
- to {
762
- transform: translate(-50%, -50%) rotate(360deg);
763
- }
764
- }
765
-
766
- /* src/components/TextField/TextField.css */
767
- .ds-textfield {
768
- display: flex;
769
- flex-direction: column;
770
- gap: var(--space-2);
771
- }
772
- .ds-textfield__label {
773
- font-family: var(--font-family);
774
- font-size: var(--font-size-sm);
775
- font-weight: var(--font-weight-medium);
776
- color: var(--text-secondary);
777
- transition: color var(--transition-base);
778
- }
779
- .ds-textfield:focus-within .ds-textfield__label {
780
- color: var(--text-primary);
781
- }
782
- .ds-textfield__input {
783
- position: relative;
784
- font-family: var(--font-family);
785
- font-size: var(--font-size-base);
786
- padding: var(--space-3) var(--space-4);
787
- border: none;
788
- border-radius: var(--radius-button);
789
- color: var(--text-primary);
790
- outline: none;
791
- width: 100%;
792
- box-sizing: border-box;
793
- background: var(--glass-base-active);
794
- backdrop-filter: blur(20px) saturate(140%);
795
- -webkit-backdrop-filter: blur(20px) saturate(140%);
796
- box-shadow: var(--shadow-md), var(--shadow-inset-border-subtle);
797
- transition: background var(--transition-glass), box-shadow var(--transition-glass);
798
- }
799
- .ds-textfield__input::before {
800
- content: "";
801
- position: absolute;
802
- inset: 0;
803
- border-radius: inherit;
804
- padding: var(--space-px);
805
- background:
806
- linear-gradient(
807
- 180deg,
808
- var(--rim-light-top) 0%,
809
- var(--rim-light-bottom) 100%);
810
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
811
- mask-composite: exclude;
812
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
813
- -webkit-mask-composite: xor;
814
- pointer-events: none;
815
- }
816
- .ds-textfield__input-wrapper {
817
- position: relative;
818
- }
819
- .ds-textfield__input-wrapper::before {
820
- content: "";
821
- position: absolute;
822
- inset: 0;
823
- border-radius: var(--radius-button);
824
- padding: var(--space-px);
825
- background:
826
- linear-gradient(
827
- 180deg,
828
- var(--rim-light-top) 0%,
829
- var(--rim-light-bottom) 100%);
830
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
831
- mask-composite: exclude;
832
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
833
- -webkit-mask-composite: xor;
834
- pointer-events: none;
835
- transition: background var(--transition-glass);
836
- }
837
- .ds-textfield__input::placeholder {
838
- color: var(--text-tertiary);
839
- }
840
- .ds-textfield__input:hover:not(:disabled):not(:focus) {
841
- background: var(--glass-base-hover);
842
- }
843
- .ds-textfield__input-wrapper:hover:not(:has(:disabled)):not(:has(:focus))::before {
844
- background:
845
- linear-gradient(
846
- 180deg,
847
- var(--rim-light-hover-top) 0%,
848
- var(--rim-light-hover-bottom) 100%);
849
- }
850
- .ds-textfield__input:focus {
851
- background: var(--glass-base-hover);
852
- box-shadow:
853
- var(--shadow-lg),
854
- var(--glass-shadow-inner),
855
- 0 0 0 2px rgba(var(--brand-pink-rgb), 0.3);
856
- }
857
- .ds-textfield__input-wrapper:has(:focus)::before {
858
- background:
859
- linear-gradient(
860
- 180deg,
861
- rgba(var(--brand-pink-rgb), 0.4) 0%,
862
- rgba(var(--brand-pink-rgb), 0.1) 100%);
863
- }
864
- .ds-textfield__input:disabled {
865
- opacity: 0.4;
866
- cursor: not-allowed;
867
- }
868
- .ds-textfield__input--adorned {
869
- padding-right: var(--space-12);
870
- }
871
- .ds-textfield__adornment {
872
- position: absolute;
873
- right: var(--space-2);
874
- top: 50%;
875
- transform: translateY(-50%);
876
- display: flex;
877
- align-items: center;
878
- justify-content: center;
879
- z-index: 2;
880
- }
881
- .ds-textfield__input--error {
882
- box-shadow:
883
- var(--shadow-md),
884
- var(--shadow-inset-border-error),
885
- 0 0 0 1px rgba(var(--status-error-rgb), 0.5);
886
- }
887
- .ds-textfield__input-wrapper:has(.ds-textfield__input--error)::before {
888
- background:
889
- linear-gradient(
890
- 180deg,
891
- rgba(var(--status-error-rgb), 0.4) 0%,
892
- rgba(var(--status-error-rgb), 0.1) 100%);
893
- }
894
- .ds-textfield__input--error:focus {
895
- box-shadow:
896
- var(--shadow-lg),
897
- var(--glass-shadow-inner),
898
- 0 0 0 2px rgba(var(--status-error-rgb), 0.4);
899
- }
900
- .ds-textfield__helper {
901
- font-family: var(--font-family);
902
- font-size: var(--font-size-xs);
903
- color: var(--text-tertiary);
904
- }
905
- .ds-textfield__helper--error {
906
- color: var(--status-error);
907
- }
908
- @media (prefers-contrast: more) {
909
- .ds-textfield__input {
910
- background: var(--hc-surface-input);
911
- border: 1px solid var(--hc-border);
912
- }
913
- .ds-textfield__input-wrapper::before {
914
- display: none;
915
- }
916
- .ds-textfield__input:focus {
917
- border-color: var(--brand-pink);
918
- }
919
- .ds-textfield__input--error {
920
- border-color: var(--status-error);
921
- }
922
- }
923
- @supports not (backdrop-filter: blur(1px)) {
924
- .ds-textfield__input {
925
- background: var(--fallback-surface);
926
- }
927
- }
928
-
929
- /* src/components/Checkbox/Checkbox.css */
930
- .ds-checkbox-wrapper {
931
- display: flex;
932
- align-items: center;
933
- gap: var(--space-3);
934
- }
935
- .ds-checkbox {
936
- all: unset;
937
- position: relative;
938
- width: 1.25rem;
939
- height: 1.25rem;
940
- border-radius: var(--radius-badge);
941
- display: flex;
942
- align-items: center;
943
- justify-content: center;
944
- cursor: pointer;
945
- flex-shrink: 0;
946
- background: var(--glass-base);
947
- backdrop-filter: blur(12px) saturate(140%);
948
- -webkit-backdrop-filter: blur(12px) saturate(140%);
949
- box-shadow: var(--shadow-sm), var(--shadow-inset-border-error);
950
- transition:
951
- background var(--transition-glass),
952
- box-shadow var(--transition-glass),
953
- transform var(--transition-glass);
954
- }
955
- .ds-checkbox::before {
956
- content: "";
957
- position: absolute;
958
- inset: 0;
959
- border-radius: inherit;
960
- padding: var(--space-px);
961
- background:
962
- linear-gradient(
963
- 180deg,
964
- var(--rim-light-top) 0%,
965
- var(--rim-light-bottom) 100%);
966
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
967
- mask-composite: exclude;
968
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
969
- -webkit-mask-composite: xor;
970
- pointer-events: none;
971
- transition: background var(--transition-glass);
972
- }
973
- .ds-checkbox:hover:not([disabled]) {
974
- background: var(--glass-base-hover);
975
- transform: translateY(-1px);
976
- box-shadow: var(--shadow-md), var(--glass-shadow-inner);
977
- }
978
- .ds-checkbox:hover:not([disabled])::before {
979
- background:
980
- linear-gradient(
981
- 180deg,
982
- var(--rim-light-hover-top) 0%,
983
- var(--rim-light-hover-bottom) 100%);
984
- }
985
- .ds-checkbox:focus-visible {
986
- box-shadow: var(--focus-ring);
987
- }
988
- .ds-checkbox[data-state=checked] {
989
- background: var(--btn-primary-bg);
990
- box-shadow:
991
- var(--shadow-sm),
992
- var(--glass-shadow-inner),
993
- var(--btn-primary-glow);
994
- }
995
- .ds-checkbox[data-state=checked]::before {
996
- background:
997
- linear-gradient(
998
- 180deg,
999
- var(--glass-highlight-strong) 0%,
1000
- rgba(var(--brand-pink-rgb), 0.2) 100%);
1001
- }
1002
- .ds-checkbox[data-state=checked]:hover:not([disabled]) {
1003
- background: var(--btn-primary-bg-hover);
1004
- box-shadow:
1005
- var(--shadow-md),
1006
- var(--glass-highlight-medium),
1007
- var(--btn-primary-glow-hover);
1008
- }
1009
- .ds-checkbox[disabled] {
1010
- opacity: 0.4;
1011
- cursor: not-allowed;
1012
- transform: none !important;
1013
- }
1014
- .ds-checkbox__indicator {
1015
- display: flex;
1016
- align-items: center;
1017
- justify-content: center;
1018
- width: 100%;
1019
- height: 100%;
1020
- color: var(--text-primary);
1021
- position: relative;
1022
- z-index: 1;
1023
- }
1024
- .ds-checkbox__icon {
1025
- width: 0.75rem;
1026
- height: 0.75rem;
1027
- animation: ds-checkbox-check-in 0.15s ease-out;
1028
- }
1029
- @keyframes ds-checkbox-check-in {
1030
- from {
1031
- opacity: 0;
1032
- transform: scale(0.8);
1033
- }
1034
- to {
1035
- opacity: 1;
1036
- transform: scale(1);
1037
- }
1038
- }
1039
- .ds-checkbox__label {
1040
- font-family: var(--font-family);
1041
- font-size: var(--font-size-base);
1042
- color: var(--text-primary);
1043
- cursor: pointer;
1044
- user-select: none;
1045
- line-height: var(--line-height-normal);
1046
- }
1047
- .ds-checkbox[disabled] + .ds-checkbox__label,
1048
- .ds-checkbox-wrapper:has(.ds-checkbox[disabled]) .ds-checkbox__label {
1049
- opacity: 0.4;
1050
- cursor: not-allowed;
1051
- }
1052
- @media (prefers-contrast: more) {
1053
- .ds-checkbox {
1054
- background: var(--hc-surface-input);
1055
- border: 1px solid var(--hc-border-strong);
1056
- }
1057
- .ds-checkbox::before {
1058
- display: none;
1059
- }
1060
- .ds-checkbox[data-state=checked] {
1061
- background: rgba(var(--brand-pink-rgb), 0.8);
1062
- border-color: var(--brand-pink);
1063
- }
1064
- }
1065
- @media (prefers-reduced-motion: reduce) {
1066
- .ds-checkbox__icon {
1067
- animation: none;
1068
- }
1069
- }
1070
-
1071
- /* src/components/Login/Login.css */
1072
- .ds-login {
1073
- position: relative;
1074
- display: flex;
1075
- flex-direction: column;
1076
- align-items: center;
1077
- justify-content: center;
1078
- width: 100%;
1079
- padding: var(--space-6);
1080
- }
1081
- .ds-login__accent {
1082
- position: absolute;
1083
- border-radius: 50%;
1084
- filter: blur(80px);
1085
- opacity: 0.5;
1086
- pointer-events: none;
1087
- animation: ds-login-float 20s ease-in-out infinite;
1088
- }
1089
- .ds-login__accent--1 {
1090
- width: 400px;
1091
- height: 400px;
1092
- background:
1093
- radial-gradient(
1094
- circle,
1095
- rgba(var(--accent-rgb), 0.4) 0%,
1096
- transparent 70%);
1097
- top: -100px;
1098
- right: -100px;
1099
- animation-delay: 0s;
1100
- }
1101
- .ds-login__accent--2 {
1102
- width: 300px;
1103
- height: 300px;
1104
- background:
1105
- radial-gradient(
1106
- circle,
1107
- rgba(var(--accent2-rgb), 0.3) 0%,
1108
- transparent 70%);
1109
- bottom: -50px;
1110
- left: -50px;
1111
- animation-delay: -10s;
1112
- }
1113
- @keyframes ds-login-float {
1114
- 0%, 100% {
1115
- transform: translate(0, 0) scale(1);
1116
- }
1117
- 25% {
1118
- transform: translate(20px, -30px) scale(1.05);
1119
- }
1120
- 50% {
1121
- transform: translate(-10px, 20px) scale(0.95);
1122
- }
1123
- 75% {
1124
- transform: translate(-30px, -10px) scale(1.02);
1125
- }
1126
- }
1127
- .ds-login__card {
1128
- position: relative;
1129
- width: 100%;
1130
- max-width: 420px;
1131
- padding: var(--space-8);
1132
- border-radius: var(--radius-panel);
1133
- background: var(--glass-base);
1134
- backdrop-filter: var(--glass-backdrop);
1135
- -webkit-backdrop-filter: var(--glass-backdrop);
1136
- box-shadow: var(--glass-shadow-elevated-combined);
1137
- animation: ds-login-card-enter 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
1138
- opacity: 0;
1139
- transform: translateY(20px);
1140
- }
1141
- .ds-login__card::before {
1142
- content: "";
1143
- position: absolute;
1144
- inset: 0;
1145
- border-radius: inherit;
1146
- padding: 1px;
1147
- background:
1148
- linear-gradient(
1149
- 180deg,
1150
- var(--rim-light-hover-top) 0%,
1151
- var(--rim-light-bottom) 100%);
1152
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1153
- mask-composite: exclude;
1154
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1155
- -webkit-mask-composite: xor;
1156
- pointer-events: none;
1157
- }
1158
- @keyframes ds-login-card-enter {
1159
- to {
1160
- opacity: 1;
1161
- transform: translateY(0);
1162
- }
1163
- }
1164
- .ds-login__header {
1165
- text-align: center;
1166
- margin-bottom: var(--space-6);
1167
- }
1168
- .ds-login__logo {
1169
- display: flex;
1170
- justify-content: center;
1171
- margin-bottom: var(--space-4);
1172
- animation: ds-login-fade-in 0.5s ease-out 0.1s forwards;
1173
- opacity: 0;
1174
- }
1175
- .ds-login__logo--default {
1176
- display: flex;
1177
- }
1178
- .ds-login__logo-icon {
1179
- width: 56px;
1180
- height: 56px;
1181
- animation: ds-login-logo-pulse 3s ease-in-out infinite;
1182
- }
1183
- .ds-login__logo-icon svg {
1184
- width: 100%;
1185
- height: 100%;
1186
- filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb), 0.3));
1187
- }
1188
- @keyframes ds-login-logo-pulse {
1189
- 0%, 100% {
1190
- transform: scale(1);
1191
- filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb), 0.3));
1192
- }
1193
- 50% {
1194
- transform: scale(1.05);
1195
- filter: drop-shadow(0 6px 20px rgba(var(--accent-rgb), 0.5));
1196
- }
1197
- }
1198
- .ds-login__title {
1199
- font-family: var(--font-family);
1200
- font-size: var(--font-size-2xl);
1201
- font-weight: var(--font-weight-bold);
1202
- color: var(--text-primary);
1203
- margin: 0 0 var(--space-2);
1204
- animation: ds-login-fade-in 0.5s ease-out 0.2s forwards;
1205
- opacity: 0;
1206
- }
1207
- .ds-login__tagline {
1208
- font-family: var(--font-family);
1209
- font-size: var(--font-size-2xl);
1210
- font-weight: var(--font-weight-bold);
1211
- color: var(--text-primary);
1212
- margin: 0 0 var(--space-2);
1213
- line-height: var(--line-height-normal);
1214
- animation: ds-login-fade-in 0.5s ease-out 0.3s forwards;
1215
- opacity: 0;
1216
- }
1217
- @keyframes ds-login-fade-in {
1218
- to {
1219
- opacity: 1;
1220
- }
1221
- }
1222
- .ds-login__error {
1223
- display: flex;
1224
- align-items: center;
1225
- gap: var(--space-2);
1226
- padding: var(--space-3) var(--space-4);
1227
- margin-bottom: var(--space-4);
1228
- border-radius: var(--radius-button);
1229
- background: rgba(var(--status-error-rgb), 0.1);
1230
- border: 1px solid rgba(var(--status-error-rgb), 0.3);
1231
- color: var(--status-error);
1232
- font-size: var(--font-size-sm);
1233
- animation: ds-login-error-enter 0.4s ease-out;
1234
- }
1235
- @keyframes ds-login-error-enter {
1236
- 0% {
1237
- opacity: 0;
1238
- transform: translateX(-10px);
1239
- }
1240
- 50% {
1241
- transform: translateX(5px);
1242
- }
1243
- 100% {
1244
- opacity: 1;
1245
- transform: translateX(0);
1246
- }
1247
- }
1248
- .ds-login__social {
1249
- margin-bottom: var(--space-4);
1250
- animation: ds-login-fade-in 0.5s ease-out 0.4s forwards;
1251
- opacity: 0;
1252
- }
1253
- .ds-login__social-btn {
1254
- display: flex;
1255
- align-items: center;
1256
- justify-content: center;
1257
- gap: var(--space-3);
1258
- width: 100%;
1259
- padding: var(--space-3) var(--space-4);
1260
- margin-bottom: var(--space-3);
1261
- border: none;
1262
- border-radius: var(--radius-button);
1263
- background: var(--glass-base);
1264
- color: var(--text-primary);
1265
- font-family: var(--font-family);
1266
- font-size: var(--font-size-base);
1267
- font-weight: var(--font-weight-medium);
1268
- cursor: pointer;
1269
- position: relative;
1270
- transition:
1271
- background var(--transition-glass),
1272
- transform var(--transition-glass),
1273
- box-shadow var(--transition-glass);
1274
- }
1275
- .ds-login__social-btn::before {
1276
- content: "";
1277
- position: absolute;
1278
- inset: 0;
1279
- border-radius: inherit;
1280
- padding: 1px;
1281
- background:
1282
- linear-gradient(
1283
- 180deg,
1284
- var(--rim-light-top) 0%,
1285
- var(--rim-light-bottom) 100%);
1286
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1287
- mask-composite: exclude;
1288
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1289
- -webkit-mask-composite: xor;
1290
- pointer-events: none;
1291
- transition: background var(--transition-glass);
1292
- }
1293
- .ds-login__social-btn:hover:not(:disabled) {
1294
- background: var(--glass-base-hover);
1295
- transform: translateY(-2px);
1296
- box-shadow: var(--shadow-lg);
1297
- }
1298
- .ds-login__social-btn:hover:not(:disabled)::before {
1299
- background:
1300
- linear-gradient(
1301
- 180deg,
1302
- var(--rim-light-hover-top) 0%,
1303
- var(--rim-light-hover-bottom) 100%);
1304
- }
1305
- .ds-login__social-btn:disabled {
1306
- opacity: 0.5;
1307
- cursor: not-allowed;
1308
- }
1309
- .ds-login__divider {
1310
- display: flex;
1311
- align-items: center;
1312
- gap: var(--space-4);
1313
- margin: var(--space-4) 0;
1314
- color: var(--text-tertiary);
1315
- font-size: var(--font-size-sm);
1316
- }
1317
- .ds-login__divider::before,
1318
- .ds-login__divider::after {
1319
- content: "";
1320
- flex: 1;
1321
- height: 1px;
1322
- background:
1323
- linear-gradient(
1324
- 90deg,
1325
- transparent 0%,
1326
- var(--rim-light-top) 50%,
1327
- transparent 100%);
1328
- }
1329
- .ds-login__form {
1330
- animation: ds-login-fade-in 0.5s ease-out 0.5s forwards;
1331
- opacity: 0;
1332
- }
1333
- .ds-login__field {
1334
- margin-bottom: var(--space-4);
1335
- }
1336
- .ds-login__password-toggle {
1337
- position: static;
1338
- transform: none;
1339
- padding: var(--space-2);
1340
- border: none;
1341
- background: transparent;
1342
- color: var(--text-tertiary);
1343
- cursor: pointer;
1344
- border-radius: var(--radius-badge);
1345
- display: flex;
1346
- align-items: center;
1347
- justify-content: center;
1348
- transition: color var(--transition-glass), background var(--transition-glass);
1349
- }
1350
- .ds-login__password-toggle:hover {
1351
- color: var(--text-primary);
1352
- background: var(--glass-base-hover);
1353
- }
1354
- .ds-login__options {
1355
- display: flex;
1356
- align-items: center;
1357
- justify-content: space-between;
1358
- margin-bottom: var(--space-6);
1359
- flex-wrap: wrap;
1360
- gap: var(--space-2);
1361
- }
1362
- .ds-login__link {
1363
- padding: 0;
1364
- border: none;
1365
- background: transparent;
1366
- color: var(--text-secondary);
1367
- font-family: var(--font-family);
1368
- font-size: var(--font-size-sm);
1369
- cursor: pointer;
1370
- transition: color var(--transition-glass);
1371
- }
1372
- .ds-login__link:hover:not(:disabled) {
1373
- color: var(--text-primary);
1374
- }
1375
- .ds-login__link--accent {
1376
- color: rgb(var(--accent-rgb));
1377
- font-weight: var(--font-weight-medium);
1378
- }
1379
- .ds-login__link--accent:hover:not(:disabled) {
1380
- color: rgb(var(--accent-rgb));
1381
- text-decoration: underline;
1382
- }
1383
- .ds-login__link:disabled {
1384
- opacity: 0.5;
1385
- cursor: not-allowed;
1386
- }
1387
- .ds-login__submit {
1388
- width: 100%;
1389
- }
1390
- .ds-login__spinner {
1391
- display: inline-block;
1392
- width: 20px;
1393
- height: 20px;
1394
- border: 2px solid var(--hc-border);
1395
- border-top-color: var(--hc-control-knob);
1396
- border-radius: 50%;
1397
- animation: ds-login-spin 0.8s linear infinite;
1398
- }
1399
- @keyframes ds-login-spin {
1400
- to {
1401
- transform: rotate(360deg);
1402
- }
1403
- }
1404
- .ds-login__footer {
1405
- display: flex;
1406
- align-items: center;
1407
- justify-content: center;
1408
- gap: var(--space-2);
1409
- margin-top: var(--space-6);
1410
- padding-top: var(--space-6);
1411
- border-top: 1px solid var(--rim-light-bottom);
1412
- font-size: var(--font-size-sm);
1413
- color: var(--text-tertiary);
1414
- animation: ds-login-fade-in 0.5s ease-out 0.6s forwards;
1415
- opacity: 0;
1416
- }
1417
- @media (max-width: 480px) {
1418
- .ds-login {
1419
- padding: var(--space-4);
1420
- }
1421
- .ds-login__card {
1422
- padding: var(--space-6);
1423
- border-radius: var(--radius-card);
1424
- }
1425
- .ds-login__accent--1 {
1426
- width: 200px;
1427
- height: 200px;
1428
- top: -50px;
1429
- right: -50px;
1430
- }
1431
- .ds-login__accent--2 {
1432
- width: 150px;
1433
- height: 150px;
1434
- bottom: -30px;
1435
- left: -30px;
1436
- }
1437
- .ds-login__options {
1438
- flex-direction: column;
1439
- align-items: flex-start;
1440
- gap: var(--space-3);
1441
- }
1442
- }
1443
- @media (prefers-reduced-motion: reduce) {
1444
- .ds-login__card,
1445
- .ds-login__logo,
1446
- .ds-login__title,
1447
- .ds-login__tagline,
1448
- .ds-login__social,
1449
- .ds-login__form,
1450
- .ds-login__footer,
1451
- .ds-login__trust {
1452
- animation: none;
1453
- opacity: 1;
1454
- }
1455
- .ds-login__accent {
1456
- animation: none;
1457
- }
1458
- .ds-login__logo-icon {
1459
- animation: none;
1460
- }
1461
- .ds-login__spinner {
1462
- animation-duration: 1.5s;
1463
- }
1464
- }
1465
- @media (prefers-contrast: more) {
1466
- .ds-login__card {
1467
- border: 1px solid var(--hc-border);
1468
- }
1469
- .ds-login__social-btn {
1470
- border: 1px solid var(--hc-border-subtle);
1471
- }
1472
- .ds-login__social-btn::before {
1473
- display: none;
1474
- }
1475
- }
1476
-
1477
- /* src/components/Signup/Signup.css */
1478
- .ds-signup {
1479
- position: relative;
1480
- display: flex;
1481
- flex-direction: column;
1482
- align-items: center;
1483
- justify-content: center;
1484
- width: 100%;
1485
- padding: var(--space-6) var(--space-4);
1486
- box-sizing: border-box;
1487
- }
1488
- .ds-signup__accent {
1489
- position: absolute;
1490
- border-radius: 50%;
1491
- filter: blur(80px);
1492
- opacity: 0.5;
1493
- pointer-events: none;
1494
- animation: ds-signup-float 20s ease-in-out infinite;
1495
- }
1496
- .ds-signup__accent--1 {
1497
- width: 400px;
1498
- height: 400px;
1499
- background:
1500
- radial-gradient(
1501
- circle,
1502
- rgba(var(--accent-rgb), 0.4) 0%,
1503
- transparent 70%);
1504
- top: -100px;
1505
- right: -100px;
1506
- animation-delay: 0s;
1507
- }
1508
- .ds-signup__accent--2 {
1509
- width: 300px;
1510
- height: 300px;
1511
- background:
1512
- radial-gradient(
1513
- circle,
1514
- rgba(var(--accent2-rgb), 0.3) 0%,
1515
- transparent 70%);
1516
- bottom: -50px;
1517
- left: -50px;
1518
- animation-delay: -10s;
1519
- }
1520
- @keyframes ds-signup-float {
1521
- 0%, 100% {
1522
- transform: translate(0, 0) scale(1);
1523
- }
1524
- 25% {
1525
- transform: translate(20px, -30px) scale(1.05);
1526
- }
1527
- 50% {
1528
- transform: translate(-10px, 20px) scale(0.95);
1529
- }
1530
- 75% {
1531
- transform: translate(-30px, -10px) scale(1.02);
1532
- }
1533
- }
1534
- .ds-signup__card {
1535
- position: relative;
1536
- width: 100%;
1537
- max-width: 420px;
1538
- padding: var(--space-8);
1539
- border-radius: var(--radius-panel);
1540
- background: var(--glass-base);
1541
- backdrop-filter: var(--glass-backdrop);
1542
- -webkit-backdrop-filter: var(--glass-backdrop);
1543
- box-shadow: var(--glass-shadow-elevated-combined);
1544
- animation: ds-signup-card-enter 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
1545
- opacity: 0;
1546
- transform: translateY(20px);
1547
- }
1548
- .ds-signup__card::before {
1549
- content: "";
1550
- position: absolute;
1551
- inset: 0;
1552
- border-radius: inherit;
1553
- padding: 1px;
1554
- background:
1555
- linear-gradient(
1556
- 180deg,
1557
- var(--rim-light-hover-top) 0%,
1558
- var(--rim-light-bottom) 100%);
1559
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1560
- mask-composite: exclude;
1561
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1562
- -webkit-mask-composite: xor;
1563
- pointer-events: none;
1564
- }
1565
- @keyframes ds-signup-card-enter {
1566
- to {
1567
- opacity: 1;
1568
- transform: translateY(0);
1569
- }
1570
- }
1571
- .ds-signup__card--success {
1572
- text-align: center;
1573
- }
1574
- .ds-signup__success-icon {
1575
- width: 64px;
1576
- height: 64px;
1577
- margin: 0 auto var(--space-6);
1578
- animation: ds-signup-success-icon 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
1579
- }
1580
- .ds-signup__success-icon svg {
1581
- width: 100%;
1582
- height: 100%;
1583
- }
1584
- @keyframes ds-signup-success-icon {
1585
- 0% {
1586
- transform: scale(0);
1587
- opacity: 0;
1588
- }
1589
- 50% {
1590
- transform: scale(1.2);
1591
- }
1592
- 100% {
1593
- transform: scale(1);
1594
- opacity: 1;
1595
- }
1596
- }
1597
- .ds-signup__success-title {
1598
- font-family: var(--font-family);
1599
- font-size: var(--font-size-2xl);
1600
- font-weight: var(--font-weight-bold);
1601
- color: var(--text-primary);
1602
- margin: 0 0 var(--space-2);
1603
- }
1604
- .ds-signup__success-message {
1605
- font-family: var(--font-family);
1606
- font-size: var(--font-size-base);
1607
- color: var(--text-secondary);
1608
- margin: 0 0 var(--space-6);
1609
- line-height: var(--line-height-normal);
1610
- }
1611
- .ds-signup__success-btn {
1612
- width: 100%;
1613
- }
1614
- .ds-signup__header {
1615
- text-align: center;
1616
- margin-bottom: var(--space-6);
1617
- }
1618
- .ds-signup__logo {
1619
- display: flex;
1620
- justify-content: center;
1621
- margin-bottom: var(--space-4);
1622
- animation: ds-signup-fade-in 0.5s ease-out 0.1s forwards;
1623
- opacity: 0;
1624
- }
1625
- .ds-signup__logo-icon {
1626
- width: 56px;
1627
- height: 56px;
1628
- animation: ds-signup-logo-pulse 3s ease-in-out infinite;
1629
- }
1630
- .ds-signup__logo-icon svg {
1631
- width: 100%;
1632
- height: 100%;
1633
- filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb), 0.3));
1634
- }
1635
- @keyframes ds-signup-logo-pulse {
1636
- 0%, 100% {
1637
- transform: scale(1);
1638
- filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb), 0.3));
1639
- }
1640
- 50% {
1641
- transform: scale(1.05);
1642
- filter: drop-shadow(0 6px 20px rgba(var(--accent-rgb), 0.5));
1643
- }
1644
- }
1645
- .ds-signup__title {
1646
- font-family: var(--font-family);
1647
- font-size: var(--font-size-2xl);
1648
- font-weight: var(--font-weight-bold);
1649
- color: var(--text-primary);
1650
- margin: 0 0 var(--space-2);
1651
- animation: ds-signup-fade-in 0.5s ease-out 0.2s forwards;
1652
- opacity: 0;
1653
- }
1654
- .ds-signup__tagline {
1655
- font-family: var(--font-family);
1656
- font-size: var(--font-size-sm);
1657
- color: var(--text-secondary);
1658
- margin: 0;
1659
- line-height: var(--line-height-normal);
1660
- animation: ds-signup-fade-in 0.5s ease-out 0.3s forwards;
1661
- opacity: 0;
1662
- }
1663
- @keyframes ds-signup-fade-in {
1664
- to {
1665
- opacity: 1;
1666
- }
1667
- }
1668
- .ds-signup__error {
1669
- display: flex;
1670
- align-items: center;
1671
- gap: var(--space-2);
1672
- padding: var(--space-3) var(--space-4);
1673
- margin-bottom: var(--space-4);
1674
- border-radius: var(--radius-button);
1675
- background: rgba(var(--status-error-rgb), 0.1);
1676
- border: 1px solid rgba(var(--status-error-rgb), 0.3);
1677
- color: var(--status-error);
1678
- font-size: var(--font-size-sm);
1679
- animation: ds-signup-error-enter 0.4s ease-out;
1680
- }
1681
- @keyframes ds-signup-error-enter {
1682
- 0% {
1683
- opacity: 0;
1684
- transform: translateX(-10px);
1685
- }
1686
- 50% {
1687
- transform: translateX(5px);
1688
- }
1689
- 100% {
1690
- opacity: 1;
1691
- transform: translateX(0);
1692
- }
1693
- }
1694
- .ds-signup__social {
1695
- margin-bottom: var(--space-4);
1696
- animation: ds-signup-fade-in 0.5s ease-out 0.4s forwards;
1697
- opacity: 0;
1698
- }
1699
- .ds-signup__social-btn {
1700
- display: flex;
1701
- align-items: center;
1702
- justify-content: center;
1703
- gap: var(--space-3);
1704
- width: 100%;
1705
- padding: var(--space-3) var(--space-4);
1706
- margin-bottom: var(--space-3);
1707
- border: none;
1708
- border-radius: var(--radius-button);
1709
- background: var(--glass-base);
1710
- color: var(--text-primary);
1711
- font-family: var(--font-family);
1712
- font-size: var(--font-size-base);
1713
- font-weight: var(--font-weight-medium);
1714
- cursor: pointer;
1715
- position: relative;
1716
- transition:
1717
- background var(--transition-glass),
1718
- transform var(--transition-glass),
1719
- box-shadow var(--transition-glass);
1720
- }
1721
- .ds-signup__social-btn::before {
1722
- content: "";
1723
- position: absolute;
1724
- inset: 0;
1725
- border-radius: inherit;
1726
- padding: 1px;
1727
- background:
1728
- linear-gradient(
1729
- 180deg,
1730
- var(--rim-light-top) 0%,
1731
- var(--rim-light-bottom) 100%);
1732
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1733
- mask-composite: exclude;
1734
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
1735
- -webkit-mask-composite: xor;
1736
- pointer-events: none;
1737
- transition: background var(--transition-glass);
1738
- }
1739
- .ds-signup__social-btn:hover:not(:disabled) {
1740
- background: var(--glass-base-hover);
1741
- transform: translateY(-2px);
1742
- box-shadow: var(--shadow-lg);
1743
- }
1744
- .ds-signup__social-btn:disabled {
1745
- opacity: 0.5;
1746
- cursor: not-allowed;
1747
- }
1748
- .ds-signup__divider {
1749
- display: flex;
1750
- align-items: center;
1751
- gap: var(--space-4);
1752
- margin: var(--space-4) 0;
1753
- color: var(--text-tertiary);
1754
- font-size: var(--font-size-sm);
1755
- }
1756
- .ds-signup__divider::before,
1757
- .ds-signup__divider::after {
1758
- content: "";
1759
- flex: 1;
1760
- height: 1px;
1761
- background:
1762
- linear-gradient(
1763
- 90deg,
1764
- transparent 0%,
1765
- var(--rim-light-top) 50%,
1766
- transparent 100%);
1767
- }
1768
- .ds-signup__form {
1769
- animation: ds-signup-fade-in 0.5s ease-out 0.5s forwards;
1770
- opacity: 0;
1771
- }
1772
- .ds-signup__field {
1773
- margin-bottom: var(--space-4);
1774
- }
1775
- .ds-signup__phone-container {
1776
- display: flex;
1777
- align-items: center;
1778
- position: relative;
1779
- width: 100%;
1780
- }
1781
- .ds-signup__phone-container.ds-textfield__input {
1782
- display: flex;
1783
- align-items: center;
1784
- position: relative;
1785
- width: 100%;
1786
- padding: 0;
1787
- overflow: hidden;
1788
- }
1789
- .ds-signup__flag-select-wrapper {
1790
- position: relative;
1791
- display: flex;
1792
- align-items: center;
1793
- align-self: stretch;
1794
- }
1795
- .ds-signup__flag-select-native {
1796
- position: absolute;
1797
- inset: 0;
1798
- width: 100%;
1799
- height: 100%;
1800
- opacity: 0;
1801
- cursor: pointer;
1802
- z-index: 2;
1803
- }
1804
- .ds-signup__flag-display {
1805
- display: flex;
1806
- align-items: center;
1807
- gap: var(--space-2);
1808
- padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
1809
- height: 100%;
1810
- background: transparent;
1811
- color: var(--text-primary);
1812
- border-right: 1px solid var(--border-subtle);
1813
- pointer-events: none;
1814
- }
1815
- .ds-signup__flag-icon {
1816
- font-size: var(--font-size-lg);
1817
- line-height: 1;
1818
- }
1819
- .ds-signup__phone-input-native {
1820
- flex-grow: 1;
1821
- border: none !important;
1822
- background: transparent !important;
1823
- border-radius: 0 !important;
1824
- box-shadow: none !important;
1825
- padding: var(--space-3) var(--space-4) var(--space-3) var(--space-3) !important;
1826
- color: inherit;
1827
- font-family: inherit;
1828
- font-size: inherit;
1829
- outline: none;
1830
- }
1831
- .ds-signup__phone-input-native:focus {
1832
- outline: none;
1833
- border-color: transparent !important;
1834
- box-shadow: none !important;
1835
- }
1836
- .ds-signup__phone-container:disabled,
1837
- .ds-signup__phone-input-native:disabled {
1838
- opacity: 0.5;
1839
- cursor: not-allowed;
1840
- }
1841
- .ds-signup__password-wrapper {
1842
- position: relative;
1843
- }
1844
- .ds-signup__password-wrapper .ds-textfield__input {
1845
- padding-right: var(--space-12);
1846
- }
1847
- .ds-signup__password-toggle {
1848
- position: absolute;
1849
- right: var(--space-3);
1850
- top: 60%;
1851
- transform: translateY(calc(-50% + 10px));
1852
- padding: var(--space-2);
1853
- border: none;
1854
- background: transparent;
1855
- color: var(--text-tertiary);
1856
- cursor: pointer;
1857
- border-radius: var(--radius-badge);
1858
- transition: color var(--transition-glass), background var(--transition-glass);
1859
- }
1860
- .ds-signup__password-toggle:hover {
1861
- color: var(--text-primary);
1862
- background: var(--glass-base-hover);
1863
- }
1864
- .ds-signup__strength {
1865
- display: flex;
1866
- align-items: center;
1867
- gap: var(--space-3);
1868
- margin-top: var(--space-2);
1869
- }
1870
- .ds-signup__strength-bar {
1871
- display: flex;
1872
- gap: var(--space-1);
1873
- flex: 1;
1874
- }
1875
- .ds-signup__strength-segment {
1876
- height: 4px;
1877
- flex: 1;
1878
- border-radius: 2px;
1879
- background: var(--glass-base-hover);
1880
- transition: background-color var(--transition-fast);
1881
- }
1882
- .ds-signup__strength-segment--active {
1883
- background: var(--status-success);
1884
- }
1885
- .ds-signup__strength-label {
1886
- font-family: var(--font-family);
1887
- font-size: var(--font-size-xs);
1888
- font-weight: var(--font-weight-medium);
1889
- white-space: nowrap;
1890
- transition: color var(--transition-fast);
1891
- }
1892
- .ds-signup__terms {
1893
- display: flex;
1894
- align-items: flex-start;
1895
- gap: var(--space-2);
1896
- margin-bottom: var(--space-6);
1897
- }
1898
- .ds-signup__terms-text {
1899
- font-family: var(--font-family);
1900
- font-size: var(--font-size-sm);
1901
- color: var(--text-secondary);
1902
- line-height: var(--line-height-normal);
1903
- }
1904
- .ds-signup__link {
1905
- padding: 0;
1906
- border: none;
1907
- background: transparent;
1908
- color: rgb(var(--accent-rgb));
1909
- font-family: var(--font-family);
1910
- font-size: inherit;
1911
- font-weight: var(--font-weight-medium);
1912
- cursor: pointer;
1913
- transition: color var(--transition-glass);
1914
- }
1915
- .ds-signup__link:hover:not(:disabled) {
1916
- text-decoration: underline;
1917
- }
1918
- .ds-signup__link:disabled {
1919
- opacity: 0.5;
1920
- cursor: not-allowed;
1921
- }
1922
- .ds-signup__link--accent {
1923
- color: rgb(var(--accent-rgb));
1924
- }
1925
- .ds-signup__submit {
1926
- width: 100%;
1927
- }
1928
- .ds-signup__spinner {
1929
- display: inline-block;
1930
- width: 20px;
1931
- height: 20px;
1932
- border: 2px solid var(--hc-border);
1933
- border-top-color: var(--hc-control-knob);
1934
- border-radius: 50%;
1935
- animation: ds-signup-spin 0.8s linear infinite;
1936
- }
1937
- @keyframes ds-signup-spin {
1938
- to {
1939
- transform: rotate(360deg);
1940
- }
1941
- }
1942
- .ds-signup__footer {
1943
- display: flex;
1944
- align-items: center;
1945
- justify-content: center;
1946
- gap: var(--space-2);
1947
- margin-top: var(--space-6);
1948
- padding-top: var(--space-6);
1949
- border-top: 1px solid var(--rim-light-bottom);
1950
- font-size: var(--font-size-sm);
1951
- color: var(--text-tertiary);
1952
- animation: ds-signup-fade-in 0.5s ease-out 0.6s forwards;
1953
- opacity: 0;
1954
- }
1955
- @media (max-width: 480px) {
1956
- .ds-signup {
1957
- padding: var(--space-4);
1958
- }
1959
- .ds-signup__card {
1960
- padding: var(--space-6);
1961
- border-radius: var(--radius-card);
1962
- }
1963
- .ds-signup__accent--1 {
1964
- width: 200px;
1965
- height: 200px;
1966
- top: -50px;
1967
- right: -50px;
1968
- }
1969
- .ds-signup__accent--2 {
1970
- width: 150px;
1971
- height: 150px;
1972
- bottom: -30px;
1973
- left: -30px;
1974
- }
1975
- }
1976
- @media (prefers-reduced-motion: reduce) {
1977
- .ds-signup__card,
1978
- .ds-signup__logo,
1979
- .ds-signup__title,
1980
- .ds-signup__tagline,
1981
- .ds-signup__social,
1982
- .ds-signup__form,
1983
- .ds-signup__footer,
1984
- .ds-signup__trust,
1985
- .ds-signup__success-icon {
1986
- animation: none;
1987
- opacity: 1;
1988
- }
1989
- .ds-signup__accent {
1990
- animation: none;
1991
- }
1992
- .ds-signup__logo-icon {
1993
- animation: none;
1994
- }
1995
- .ds-signup__spinner {
1996
- animation-duration: 1.5s;
1997
- }
1998
- }
1999
- @media (prefers-contrast: more) {
2000
- .ds-signup__card {
2001
- border: 1px solid var(--hc-border);
2002
- }
2003
- .ds-signup__social-btn {
2004
- border: 1px solid var(--hc-border-subtle);
2005
- }
2006
- .ds-signup__social-btn::before {
2007
- display: none;
2008
- }
2009
- }
2010
-
2011
- /* src/components/ForgotPassword/ForgotPassword.css */
2012
- .ds-forgot {
2013
- position: relative;
2014
- display: flex;
2015
- flex-direction: column;
2016
- align-items: center;
2017
- justify-content: center;
2018
- padding: var(--space-6);
2019
- }
2020
- .ds-forgot__accent {
2021
- position: absolute;
2022
- border-radius: 50%;
2023
- filter: blur(80px);
2024
- opacity: 0.5;
2025
- pointer-events: none;
2026
- animation: ds-forgot-float 20s ease-in-out infinite;
2027
- }
2028
- .ds-forgot__accent--1 {
2029
- width: 400px;
2030
- height: 400px;
2031
- background:
2032
- radial-gradient(
2033
- circle,
2034
- rgba(var(--accent-rgb), 0.4) 0%,
2035
- transparent 70%);
2036
- top: -100px;
2037
- right: -100px;
2038
- animation-delay: 0s;
2039
- }
2040
- .ds-forgot__accent--2 {
2041
- width: 300px;
2042
- height: 300px;
2043
- background:
2044
- radial-gradient(
2045
- circle,
2046
- rgba(var(--accent2-rgb), 0.3) 0%,
2047
- transparent 70%);
2048
- bottom: -50px;
2049
- left: -50px;
2050
- animation-delay: -10s;
2051
- }
2052
- @keyframes ds-forgot-float {
2053
- 0%, 100% {
2054
- transform: translate(0, 0) scale(1);
2055
- }
2056
- 25% {
2057
- transform: translate(20px, -30px) scale(1.05);
2058
- }
2059
- 50% {
2060
- transform: translate(-10px, 20px) scale(0.95);
2061
- }
2062
- 75% {
2063
- transform: translate(-30px, -10px) scale(1.02);
2064
- }
2065
- }
2066
- .ds-forgot__card {
2067
- position: relative;
2068
- width: 100%;
2069
- max-width: 400px;
2070
- padding: var(--space-8);
2071
- border-radius: var(--radius-panel);
2072
- background: var(--glass-base);
2073
- backdrop-filter: var(--glass-backdrop);
2074
- -webkit-backdrop-filter: var(--glass-backdrop);
2075
- box-shadow: var(--glass-shadow-elevated-combined);
2076
- animation: ds-forgot-card-enter 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
2077
- opacity: 0;
2078
- transform: translateY(20px);
2079
- }
2080
- .ds-forgot__card::before {
2081
- content: "";
2082
- position: absolute;
2083
- inset: 0;
2084
- border-radius: inherit;
2085
- padding: 1px;
2086
- background:
2087
- linear-gradient(
2088
- 180deg,
2089
- var(--rim-light-hover-top) 0%,
2090
- var(--rim-light-bottom) 100%);
2091
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
2092
- mask-composite: exclude;
2093
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
2094
- -webkit-mask-composite: xor;
2095
- pointer-events: none;
2096
- }
2097
- .ds-forgot__card--centered {
2098
- text-align: center;
2099
- }
2100
- @keyframes ds-forgot-card-enter {
2101
- to {
2102
- opacity: 1;
2103
- transform: translateY(0);
2104
- }
2105
- }
2106
- .ds-forgot__header {
2107
- text-align: center;
2108
- margin-bottom: var(--space-6);
2109
- }
2110
- .ds-forgot__logo {
2111
- display: flex;
2112
- justify-content: center;
2113
- margin-bottom: var(--space-4);
2114
- animation: ds-forgot-fade-in 0.5s ease-out 0.1s forwards;
2115
- opacity: 0;
2116
- }
2117
- .ds-forgot__logo-icon {
2118
- width: 56px;
2119
- height: 56px;
2120
- }
2121
- .ds-forgot__logo-icon svg {
2122
- width: 100%;
2123
- height: 100%;
2124
- filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb), 0.3));
2125
- }
2126
- .ds-forgot__title {
2127
- font-family: var(--font-family);
2128
- font-size: var(--font-size-2xl);
2129
- font-weight: var(--font-weight-bold);
2130
- color: var(--text-primary);
2131
- margin: 0 0 var(--space-2);
2132
- animation: ds-forgot-fade-in 0.5s ease-out 0.2s forwards;
2133
- opacity: 0;
2134
- }
2135
- .ds-forgot__tagline {
2136
- font-family: var(--font-family);
2137
- font-size: var(--font-size-sm);
2138
- color: var(--text-secondary);
2139
- margin: 0;
2140
- line-height: var(--line-height-normal);
2141
- animation: ds-forgot-fade-in 0.5s ease-out 0.3s forwards;
2142
- opacity: 0;
2143
- }
2144
- .ds-forgot__tagline strong {
2145
- color: var(--text-primary);
2146
- }
2147
- @keyframes ds-forgot-fade-in {
2148
- to {
2149
- opacity: 1;
2150
- }
2151
- }
2152
- .ds-forgot__success-icon {
2153
- width: 64px;
2154
- height: 64px;
2155
- margin: 0 auto var(--space-6);
2156
- animation: ds-forgot-success-icon 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
2157
- }
2158
- .ds-forgot__success-icon svg {
2159
- width: 100%;
2160
- height: 100%;
2161
- }
2162
- @keyframes ds-forgot-success-icon {
2163
- 0% {
2164
- transform: scale(0);
2165
- opacity: 0;
2166
- }
2167
- 50% {
2168
- transform: scale(1.2);
2169
- }
2170
- 100% {
2171
- transform: scale(1);
2172
- opacity: 1;
2173
- }
2174
- }
2175
- .ds-forgot__error {
2176
- display: flex;
2177
- align-items: center;
2178
- gap: var(--space-2);
2179
- padding: var(--space-3) var(--space-4);
2180
- margin-bottom: var(--space-4);
2181
- border-radius: var(--radius-button);
2182
- background: rgba(var(--status-error-rgb), 0.1);
2183
- border: 1px solid rgba(var(--status-error-rgb), 0.3);
2184
- color: var(--status-error);
2185
- font-size: var(--font-size-sm);
2186
- animation: ds-forgot-error-enter 0.4s ease-out;
2187
- }
2188
- @keyframes ds-forgot-error-enter {
2189
- 0% {
2190
- opacity: 0;
2191
- transform: translateX(-10px);
2192
- }
2193
- 50% {
2194
- transform: translateX(5px);
2195
- }
2196
- 100% {
2197
- opacity: 1;
2198
- transform: translateX(0);
2199
- }
2200
- }
2201
- .ds-forgot__form {
2202
- animation: ds-forgot-fade-in 0.5s ease-out 0.4s forwards;
2203
- opacity: 0;
2204
- }
2205
- .ds-forgot__field {
2206
- margin-bottom: var(--space-4);
2207
- }
2208
- .ds-forgot__password-wrapper {
2209
- position: relative;
2210
- }
2211
- .ds-forgot__password-wrapper .ds-textfield__input {
2212
- padding-right: var(--space-12);
2213
- }
2214
- .ds-forgot__password-toggle {
2215
- position: absolute;
2216
- right: var(--space-3);
2217
- top: 60%;
2218
- transform: translateY(calc(-50% + 10px));
2219
- padding: var(--space-2);
2220
- border: none;
2221
- background: transparent;
2222
- color: var(--text-tertiary);
2223
- cursor: pointer;
2224
- border-radius: var(--radius-badge);
2225
- transition: color var(--transition-glass), background var(--transition-glass);
2226
- }
2227
- .ds-forgot__password-toggle:hover {
2228
- color: var(--text-primary);
2229
- background: var(--glass-base-hover);
2230
- }
2231
- .ds-forgot__submit {
2232
- width: 100%;
2233
- margin-top: var(--space-2);
2234
- }
2235
- .ds-forgot__spinner {
2236
- display: inline-block;
2237
- width: 20px;
2238
- height: 20px;
2239
- border: 2px solid var(--hc-border);
2240
- border-top-color: white;
2241
- border-radius: 50%;
2242
- animation: ds-forgot-spin 0.8s linear infinite;
2243
- }
2244
- @keyframes ds-forgot-spin {
2245
- to {
2246
- transform: rotate(360deg);
2247
- }
2248
- }
2249
- .ds-forgot__hint {
2250
- margin-top: var(--space-6);
2251
- font-family: var(--font-family);
2252
- font-size: var(--font-size-sm);
2253
- color: var(--text-tertiary);
2254
- }
2255
- .ds-forgot__link {
2256
- padding: 0;
2257
- border: none;
2258
- background: transparent;
2259
- color: rgb(var(--accent-rgb));
2260
- font-family: var(--font-family);
2261
- font-size: inherit;
2262
- font-weight: var(--font-weight-medium);
2263
- cursor: pointer;
2264
- transition: color var(--transition-glass);
2265
- margin-left: var(--space-1);
2266
- }
2267
- .ds-forgot__link:hover:not(:disabled) {
2268
- text-decoration: underline;
2269
- }
2270
- .ds-forgot__link:disabled {
2271
- opacity: 0.5;
2272
- cursor: not-allowed;
2273
- }
2274
- .ds-forgot__footer {
2275
- display: flex;
2276
- justify-content: center;
2277
- margin-top: var(--space-6);
2278
- padding-top: var(--space-6);
2279
- border-top: 1px solid var(--rim-light-bottom);
2280
- animation: ds-forgot-fade-in 0.5s ease-out 0.5s forwards;
2281
- opacity: 0;
2282
- }
2283
- .ds-forgot__back {
2284
- display: flex;
2285
- align-items: center;
2286
- gap: var(--space-2);
2287
- padding: var(--space-2) var(--space-3);
2288
- border: none;
2289
- border-radius: var(--radius-button);
2290
- background: transparent;
2291
- color: var(--text-secondary);
2292
- font-family: var(--font-family);
2293
- font-size: var(--font-size-sm);
2294
- font-weight: var(--font-weight-medium);
2295
- cursor: pointer;
2296
- transition: color var(--transition-glass), background var(--transition-glass);
2297
- }
2298
- .ds-forgot__back:hover:not(:disabled) {
2299
- color: var(--text-primary);
2300
- background: var(--glass-base-hover);
2301
- }
2302
- .ds-forgot__back:disabled {
2303
- opacity: 0.5;
2304
- cursor: not-allowed;
2305
- }
2306
- @media (max-width: 480px) {
2307
- .ds-forgot {
2308
- padding: var(--space-4);
2309
- }
2310
- .ds-forgot__card {
2311
- padding: var(--space-6);
2312
- border-radius: var(--radius-card);
2313
- }
2314
- .ds-forgot__accent--1 {
2315
- width: 200px;
2316
- height: 200px;
2317
- top: -50px;
2318
- right: -50px;
2319
- }
2320
- .ds-forgot__accent--2 {
2321
- width: 150px;
2322
- height: 150px;
2323
- bottom: -30px;
2324
- left: -30px;
2325
- }
2326
- }
2327
- @media (prefers-reduced-motion: reduce) {
2328
- .ds-forgot__card,
2329
- .ds-forgot__logo,
2330
- .ds-forgot__title,
2331
- .ds-forgot__tagline,
2332
- .ds-forgot__form,
2333
- .ds-forgot__footer,
2334
- .ds-forgot__success-icon {
2335
- animation: none;
2336
- opacity: 1;
2337
- }
2338
- .ds-forgot__accent {
2339
- animation: none;
2340
- }
2341
- .ds-forgot__spinner {
2342
- animation-duration: 1.5s;
2343
- }
2344
- }
2345
- @media (prefers-contrast: more) {
2346
- .ds-forgot__card {
2347
- border: 1px solid var(--hc-border);
2348
- }
2349
- }
2350
-
2351
- /* src/components/ChangeEmail/ChangeEmail.css */
2352
- .ds-change-email {
2353
- position: relative;
2354
- display: flex;
2355
- flex-direction: column;
2356
- align-items: center;
2357
- justify-content: center;
2358
- width: 100%;
2359
- padding: var(--space-6);
2360
- box-sizing: border-box;
2361
- }
2362
- .void__content .ds-change-email {
2363
- min-height: auto;
2364
- flex: 1;
2365
- }
2366
- .ds-change-email__accent {
2367
- position: absolute;
2368
- border-radius: 50%;
2369
- filter: blur(80px);
2370
- opacity: 0.5;
2371
- pointer-events: none;
2372
- animation: ds-change-email-float 20s ease-in-out infinite;
2373
- }
2374
- .ds-change-email__accent--1 {
2375
- width: 400px;
2376
- height: 400px;
2377
- background:
2378
- radial-gradient(
2379
- circle,
2380
- rgba(var(--accent-rgb), 0.4) 0%,
2381
- transparent 70%);
2382
- top: -100px;
2383
- right: -100px;
2384
- animation-delay: 0s;
2385
- }
2386
- .ds-change-email__accent--2 {
2387
- width: 300px;
2388
- height: 300px;
2389
- background:
2390
- radial-gradient(
2391
- circle,
2392
- rgba(var(--accent2-rgb), 0.3) 0%,
2393
- transparent 70%);
2394
- bottom: -50px;
2395
- left: -50px;
2396
- animation-delay: -10s;
2397
- }
2398
- .ds-change-email__container {
2399
- position: relative;
2400
- width: 100%;
2401
- max-width: 420px;
2402
- display: flex;
2403
- flex-direction: column;
2404
- align-items: center;
2405
- }
2406
- @keyframes ds-change-email-float {
2407
- 0%, 100% {
2408
- transform: translate(0, 0) scale(1);
2409
- }
2410
- 25% {
2411
- transform: translate(20px, -30px) scale(1.05);
2412
- }
2413
- 50% {
2414
- transform: translate(-10px, 20px) scale(0.95);
2415
- }
2416
- 75% {
2417
- transform: translate(-30px, -10px) scale(1.02);
2418
- }
2419
- }
2420
- .ds-change-email__card {
2421
- position: relative;
2422
- width: 100%;
2423
- max-width: 420px;
2424
- padding: var(--space-8);
2425
- border-radius: var(--radius-panel);
2426
- background: var(--glass-base);
2427
- backdrop-filter: var(--glass-backdrop);
2428
- -webkit-backdrop-filter: var(--glass-backdrop);
2429
- box-shadow: var(--glass-shadow-elevated-combined);
2430
- animation: ds-change-email-card-enter 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
2431
- opacity: 0;
2432
- transform: translateY(20px);
2433
- }
2434
- .ds-change-email__card::before {
2435
- content: "";
2436
- position: absolute;
2437
- inset: 0;
2438
- border-radius: inherit;
2439
- padding: 1px;
2440
- background:
2441
- linear-gradient(
2442
- 180deg,
2443
- var(--rim-light-hover-top) 0%,
2444
- var(--rim-light-bottom) 100%);
2445
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
2446
- mask-composite: exclude;
2447
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
2448
- -webkit-mask-composite: xor;
2449
- pointer-events: none;
2450
- }
2451
- @keyframes ds-change-email-card-enter {
2452
- to {
2453
- opacity: 1;
2454
- transform: translateY(0);
2455
- }
2456
- }
2457
- .ds-change-email__header {
2458
- text-align: center;
2459
- margin-bottom: var(--space-6);
2460
- }
2461
- .ds-change-email__logo {
2462
- display: flex;
2463
- justify-content: center;
2464
- margin-bottom: var(--space-4);
2465
- animation: ds-change-email-fade-in 0.5s ease-out 0.1s forwards;
2466
- opacity: 0;
2467
- }
2468
- .ds-change-email__logo--default {
2469
- }
2470
- .ds-change-email__logo-icon {
2471
- width: 56px;
2472
- height: 56px;
2473
- animation: ds-change-email-logo-pulse 3s ease-in-out infinite;
2474
- }
2475
- .ds-change-email__logo-icon svg {
2476
- width: 100%;
2477
- height: 100%;
2478
- filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb), 0.3));
2479
- }
2480
- @keyframes ds-change-email-logo-pulse {
2481
- 0%, 100% {
2482
- transform: scale(1);
2483
- filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb), 0.3));
2484
- }
2485
- 50% {
2486
- transform: scale(1.05);
2487
- filter: drop-shadow(0 6px 20px rgba(var(--accent-rgb), 0.5));
2488
- }
2489
- }
2490
- .ds-change-email__title {
2491
- font-family: var(--font-family);
2492
- font-size: var(--font-size-2xl);
2493
- font-weight: var(--font-weight-bold);
2494
- color: var(--text-primary);
2495
- margin: 0 0 var(--space-2);
2496
- animation: ds-change-email-fade-in 0.5s ease-out 0.2s forwards;
2497
- opacity: 0;
2498
- }
2499
- .ds-change-email__tagline {
2500
- font-family: var(--font-family);
2501
- font-size: var(--font-size-sm);
2502
- color: var(--text-secondary);
2503
- margin: 0;
2504
- line-height: var(--line-height-normal);
2505
- animation: ds-change-email-fade-in 0.5s ease-out 0.3s forwards;
2506
- opacity: 0;
2507
- }
2508
- @keyframes ds-change-email-fade-in {
2509
- to {
2510
- opacity: 1;
2511
- }
2512
- }
2513
- .ds-change-email__error {
2514
- display: flex;
2515
- align-items: center;
2516
- gap: var(--space-2);
2517
- padding: var(--space-3) var(--space-4);
2518
- margin-bottom: var(--space-4);
2519
- border-radius: var(--radius-button);
2520
- background: rgba(var(--status-error-rgb), 0.1);
2521
- border: 1px solid rgba(var(--status-error-rgb), 0.3);
2522
- color: var(--status-error);
2523
- font-size: var(--font-size-sm);
2524
- animation: ds-change-email-error-enter 0.4s ease-out;
2525
- }
2526
- @keyframes ds-change-email-error-enter {
2527
- 0% {
2528
- opacity: 0;
2529
- transform: translateX(-10px);
2530
- }
2531
- 50% {
2532
- transform: translateX(5px);
2533
- }
2534
- 100% {
2535
- opacity: 1;
2536
- transform: translateX(0);
2537
- }
2538
- }
2539
- .ds-change-email__social {
2540
- margin-bottom: var(--space-4);
2541
- animation: ds-change-email-fade-in 0.5s ease-out 0.4s forwards;
2542
- opacity: 0;
2543
- }
2544
- .ds-change-email__social-btn {
2545
- display: flex;
2546
- align-items: center;
2547
- justify-content: center;
2548
- gap: var(--space-3);
2549
- width: 100%;
2550
- padding: var(--space-3) var(--space-4);
2551
- margin-bottom: var(--space-3);
2552
- border: none;
2553
- border-radius: var(--radius-button);
2554
- background: var(--glass-base);
2555
- color: var(--text-primary);
2556
- font-family: var(--font-family);
2557
- font-size: var(--font-size-base);
2558
- font-weight: var(--font-weight-medium);
2559
- cursor: pointer;
2560
- position: relative;
2561
- transition:
2562
- background var(--transition-glass),
2563
- transform var(--transition-glass),
2564
- box-shadow var(--transition-glass);
2565
- }
2566
- .ds-change-email__social-btn::before {
2567
- content: "";
2568
- position: absolute;
2569
- inset: 0;
2570
- border-radius: inherit;
2571
- padding: 1px;
2572
- background:
2573
- linear-gradient(
2574
- 180deg,
2575
- var(--rim-light-top) 0%,
2576
- var(--rim-light-bottom) 100%);
2577
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
2578
- mask-composite: exclude;
2579
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
2580
- -webkit-mask-composite: xor;
2581
- pointer-events: none;
2582
- transition: background var(--transition-glass);
2583
- }
2584
- .ds-change-email__social-btn:hover:not(:disabled) {
2585
- background: var(--glass-base-hover);
2586
- transform: translateY(-2px);
2587
- box-shadow: 0 8px 24px var(--shadow-color-heavy, rgba(0, 0, 0, 0.2));
2588
- }
2589
- .ds-change-email__social-btn:hover:not(:disabled)::before {
2590
- background:
2591
- linear-gradient(
2592
- 180deg,
2593
- var(--rim-light-hover-top) 0%,
2594
- var(--rim-light-hover-bottom) 100%);
2595
- }
2596
- .ds-change-email__social-btn:disabled {
2597
- opacity: 0.5;
2598
- cursor: not-allowed;
2599
- }
2600
- .ds-change-email__divider {
2601
- display: flex;
2602
- align-items: center;
2603
- gap: var(--space-4);
2604
- margin: var(--space-4) 0;
2605
- color: var(--text-tertiary);
2606
- font-family: var(--font-family);
2607
- font-size: var(--font-size-sm);
2608
- }
2609
- .ds-change-email__divider::before,
2610
- .ds-change-email__divider::after {
2611
- content: "";
2612
- flex: 1;
2613
- height: 1px;
2614
- background:
2615
- linear-gradient(
2616
- 90deg,
2617
- transparent 0%,
2618
- var(--rim-light-top) 50%,
2619
- transparent 100%);
2620
- }
2621
- .ds-change-email__form {
2622
- animation: ds-change-email-fade-in 0.5s ease-out 0.5s forwards;
2623
- opacity: 0;
2624
- }
2625
- .ds-change-email__field {
2626
- margin-bottom: var(--space-4);
2627
- }
2628
- .ds-change-email__password-toggle {
2629
- position: static;
2630
- transform: none;
2631
- padding: var(--space-2);
2632
- border: none;
2633
- background: transparent;
2634
- color: var(--text-tertiary);
2635
- cursor: pointer;
2636
- border-radius: var(--radius-badge);
2637
- display: flex;
2638
- align-items: center;
2639
- justify-content: center;
2640
- transition: color var(--transition-glass), background var(--transition-glass);
2641
- }
2642
- .ds-change-email__password-toggle:hover {
2643
- color: var(--text-primary);
2644
- background: var(--glass-base-hover);
2645
- }
2646
- .ds-change-email__options {
2647
- display: flex;
2648
- align-items: center;
2649
- justify-content: space-between;
2650
- margin-bottom: var(--space-6);
2651
- flex-wrap: wrap;
2652
- gap: var(--space-2);
2653
- }
2654
- .ds-change-email__link {
2655
- padding: 0;
2656
- border: none;
2657
- background: transparent;
2658
- color: var(--text-secondary);
2659
- font-family: var(--font-family);
2660
- font-size: var(--font-size-sm);
2661
- cursor: pointer;
2662
- transition: color var(--transition-glass);
2663
- }
2664
- .ds-change-email__link:hover:not(:disabled) {
2665
- color: var(--text-primary);
2666
- }
2667
- .ds-change-email__link--accent {
2668
- color: rgb(var(--accent-rgb));
2669
- font-weight: var(--font-weight-medium);
2670
- }
2671
- .ds-change-email__link--accent:hover:not(:disabled) {
2672
- color: rgb(var(--accent-rgb));
2673
- text-decoration: underline;
2674
- }
2675
- .ds-change-email__link:disabled {
2676
- opacity: 0.5;
2677
- cursor: not-allowed;
2678
- }
2679
- .ds-change-email__submit {
2680
- width: 100%;
2681
- }
2682
- .ds-change-email__spinner {
2683
- display: inline-block;
2684
- width: 20px;
2685
- height: 20px;
2686
- border: 2px solid var(--border-subtle, rgba(255, 255, 255, 0.3));
2687
- border-top-color: var(--text-primary, white);
2688
- border-radius: 50%;
2689
- animation: ds-change-email-spin 0.8s linear infinite;
2690
- }
2691
- @keyframes ds-change-email-spin {
2692
- to {
2693
- transform: rotate(360deg);
2694
- }
2695
- }
2696
- .ds-change-email__footer {
2697
- display: flex;
2698
- align-items: center;
2699
- justify-content: center;
2700
- gap: var(--space-2);
2701
- margin-top: var(--space-6);
2702
- padding-top: var(--space-6);
2703
- border-top: 1px solid var(--rim-light-bottom);
2704
- font-family: var(--font-family);
2705
- font-size: var(--font-size-sm);
2706
- color: var(--text-tertiary);
2707
- animation: ds-change-email-fade-in 0.5s ease-out 0.6s forwards;
2708
- opacity: 0;
2709
- }
2710
- .ds-change-email__trust {
2711
- padding-top: var(--space-6);
2712
- padding-bottom: var(--space-2);
2713
- text-align: center;
2714
- font-family: var(--font-family);
2715
- font-size: var(--font-size-xs);
2716
- color: var(--text-tertiary);
2717
- animation: ds-change-email-fade-in 0.5s ease-out 0.7s forwards;
2718
- opacity: 0;
2719
- }
2720
- @media (max-width: 480px) {
2721
- .ds-change-email {
2722
- padding: var(--space-4);
2723
- }
2724
- .ds-change-email__card {
2725
- padding: var(--space-6);
2726
- border-radius: var(--radius-card);
2727
- }
2728
- .ds-change-email__accent--1 {
2729
- width: 200px;
2730
- height: 200px;
2731
- top: -50px;
2732
- right: -50px;
2733
- }
2734
- .ds-change-email__accent--2 {
2735
- width: 150px;
2736
- height: 150px;
2737
- bottom: -30px;
2738
- left: -30px;
2739
- }
2740
- .ds-change-email__options {
2741
- flex-direction: column;
2742
- align-items: flex-start;
2743
- gap: var(--space-3);
2744
- }
2745
- }
2746
- @media (prefers-reduced-motion: reduce) {
2747
- .ds-change-email__card,
2748
- .ds-change-email__logo,
2749
- .ds-change-email__title,
2750
- .ds-change-email__tagline,
2751
- .ds-change-email__social,
2752
- .ds-change-email__form,
2753
- .ds-change-email__footer,
2754
- .ds-change-email__trust {
2755
- animation: none;
2756
- opacity: 1;
2757
- }
2758
- .ds-change-email__accent {
2759
- animation: none;
2760
- }
2761
- .ds-change-email__logo-icon {
2762
- animation: none;
2763
- }
2764
- .ds-change-email__spinner {
2765
- animation-duration: 1.5s;
2766
- }
2767
- }
2768
- @media (prefers-contrast: more) {
2769
- .ds-change-email__card {
2770
- border: 1px solid var(--hc-border);
2771
- }
2772
- .ds-change-email__social-btn {
2773
- border: 1px solid var(--hc-border-subtle);
2774
- }
2775
- .ds-change-email__social-btn::before {
2776
- display: none;
2777
- }
2778
- }
2779
-
2780
- /* src/components/LeadProfileView/LeadProfileView.css */
2781
- .ds-lead-profile {
2782
- display: flex;
2783
- flex-direction: column;
2784
- gap: var(--space-8);
2785
- width: 100%;
2786
- max-width: 900px;
2787
- margin: 0 auto;
2788
- padding: var(--space-6);
2789
- color: var(--text-primary);
2790
- font-family: var(--font-family);
2791
- }
2792
- .ds-lead-profile__zone {
2793
- display: flex;
2794
- flex-direction: column;
2795
- gap: var(--space-6);
2796
- animation: ds-zone-enter var(--transition-slow) ease-out;
2797
- animation-fill-mode: both;
2798
- }
2799
- .ds-lead-profile__zone--identity {
2800
- animation-delay: 0ms;
2801
- }
2802
- .ds-lead-profile__zone--intelligence {
2803
- animation-delay: 100ms;
2804
- }
2805
- .ds-lead-profile__zone--deep-dive {
2806
- animation-delay: 200ms;
2807
- }
2808
- @keyframes ds-zone-enter {
2809
- from {
2810
- opacity: 0;
2811
- transform: translateY(16px);
2812
- }
2813
- to {
2814
- opacity: 1;
2815
- transform: translateY(0);
2816
- }
2817
- }
2818
- .ds-lead-profile__card,
2819
- .ds-lead-intelligence__card,
2820
- .ds-deep-dive__card,
2821
- .ds-mbti,
2822
- .ds-behavioral {
2823
- background: var(--glass-base);
2824
- backdrop-filter: var(--glass-backdrop);
2825
- border: 1px solid var(--rim-light-bottom);
2826
- border-top-color: var(--rim-light-top);
2827
- border-radius: var(--radius-card);
2828
- padding: var(--space-6);
2829
- box-shadow: var(--glass-shadow-combined);
2830
- transition:
2831
- transform var(--transition-base),
2832
- box-shadow var(--transition-base),
2833
- background var(--transition-base);
2834
- }
2835
- .ds-lead-profile__card:hover,
2836
- .ds-lead-intelligence__card:hover,
2837
- .ds-deep-dive__card:hover {
2838
- transform: translateY(-2px);
2839
- background: var(--glass-base-hover);
2840
- box-shadow: var(--glass-shadow-elevated-combined);
2841
- }
2842
- .ds-lead-empty {
2843
- display: flex;
2844
- flex-direction: column;
2845
- align-items: center;
2846
- justify-content: center;
2847
- text-align: center;
2848
- padding: var(--space-16) var(--space-6);
2849
- min-height: 500px;
2850
- animation: ds-empty-enter 600ms ease-out;
2851
- }
2852
- @keyframes ds-empty-enter {
2853
- from {
2854
- opacity: 0;
2855
- transform: scale(0.95);
2856
- }
2857
- to {
2858
- opacity: 1;
2859
- transform: scale(1);
2860
- }
2861
- }
2862
- .ds-lead-empty__avatar-container {
2863
- position: relative;
2864
- margin-bottom: var(--space-8);
2865
- }
2866
- .ds-lead-empty__avatar {
2867
- width: 120px;
2868
- height: 120px;
2869
- border-radius: 50%;
2870
- background:
2871
- linear-gradient(
2872
- 135deg,
2873
- rgba(var(--accent-rgb), 0.1) 0%,
2874
- rgba(var(--accent2-rgb), 0.1) 100%);
2875
- display: flex;
2876
- align-items: center;
2877
- justify-content: center;
2878
- position: relative;
2879
- overflow: hidden;
2880
- }
2881
- .ds-lead-empty__avatar-pulse {
2882
- position: absolute;
2883
- inset: -10px;
2884
- border-radius: 50%;
2885
- background:
2886
- radial-gradient(
2887
- circle,
2888
- rgba(var(--accent-rgb), 0.2) 0%,
2889
- transparent 70%);
2890
- animation: ds-pulse 3s ease-in-out infinite;
2891
- }
2892
- @keyframes ds-pulse {
2893
- 0%, 100% {
2894
- transform: scale(1);
2895
- opacity: 0.5;
2896
- }
2897
- 50% {
2898
- transform: scale(1.1);
2899
- opacity: 0.8;
2900
- }
2901
- }
2902
- .ds-lead-empty__avatar-icon {
2903
- color: rgba(var(--accent-rgb), 0.6);
2904
- z-index: 1;
2905
- }
2906
- .ds-lead-empty__content {
2907
- max-width: 400px;
2908
- margin-bottom: var(--space-8);
2909
- }
2910
- .ds-lead-empty__title {
2911
- font-size: var(--font-size-2xl);
2912
- font-weight: var(--font-weight-semibold);
2913
- color: var(--text-primary);
2914
- margin: 0 0 var(--space-3);
2915
- letter-spacing: var(--letter-spacing-slightly-tight);
2916
- }
2917
- .ds-lead-empty__description {
2918
- font-size: var(--font-size-base);
2919
- color: var(--text-secondary);
2920
- line-height: var(--line-height-relaxed);
2921
- margin: 0;
2922
- }
2923
- .ds-lead-empty__action {
2924
- margin-bottom: var(--space-8);
2925
- }
2926
- .ds-lead-empty__trust {
2927
- display: flex;
2928
- gap: var(--space-6);
2929
- flex-wrap: wrap;
2930
- justify-content: center;
2931
- }
2932
- .ds-lead-empty__trust-item {
2933
- display: flex;
2934
- align-items: center;
2935
- gap: var(--space-2);
2936
- font-size: var(--font-size-xs);
2937
- color: var(--text-tertiary);
2938
- }
2939
- .ds-lead-empty__trust-dot {
2940
- width: 6px;
2941
- height: 6px;
2942
- border-radius: 50%;
2943
- background: var(--status-success);
2944
- opacity: 0.7;
2945
- }
2946
- .ds-lead-loading {
2947
- display: flex;
2948
- flex-direction: column;
2949
- align-items: center;
2950
- padding: var(--space-16) var(--space-6);
2951
- min-height: 500px;
2952
- animation: ds-loading-enter 400ms ease-out;
2953
- }
2954
- @keyframes ds-loading-enter {
2955
- from {
2956
- opacity: 0;
2957
- }
2958
- to {
2959
- opacity: 1;
2960
- }
2961
- }
2962
- .ds-lead-loading__progress {
2963
- width: 100%;
2964
- max-width: 400px;
2965
- margin-bottom: var(--space-10);
2966
- }
2967
- .ds-lead-loading__progress-bar {
2968
- height: 4px;
2969
- background: var(--surface-alpha-2);
2970
- border-radius: var(--radius-pill);
2971
- overflow: hidden;
2972
- margin-bottom: var(--space-2);
2973
- }
2974
- .ds-lead-loading__progress-fill {
2975
- height: 100%;
2976
- background:
2977
- linear-gradient(
2978
- 90deg,
2979
- rgb(var(--accent-rgb)),
2980
- rgb(var(--accent2-rgb)));
2981
- border-radius: var(--radius-pill);
2982
- transition: width 500ms ease-out;
2983
- }
2984
- .ds-lead-loading__progress-text {
2985
- font-size: var(--font-size-sm);
2986
- color: var(--text-secondary);
2987
- text-align: center;
2988
- display: block;
2989
- }
2990
- .ds-lead-loading__stages {
2991
- display: flex;
2992
- flex-direction: column;
2993
- gap: var(--space-4);
2994
- width: 100%;
2995
- max-width: 320px;
2996
- margin-bottom: var(--space-10);
2997
- }
2998
- .ds-lead-loading__stage {
2999
- display: flex;
3000
- align-items: center;
3001
- gap: var(--space-3);
3002
- padding: var(--space-3) var(--space-4);
3003
- border-radius: var(--radius-button);
3004
- background: var(--glass-base-hover);
3005
- position: relative;
3006
- animation: ds-stage-enter 400ms ease-out;
3007
- animation-fill-mode: both;
3008
- animation-delay: calc(var(--stage-index) * 100ms);
3009
- }
3010
- @keyframes ds-stage-enter {
3011
- from {
3012
- opacity: 0;
3013
- transform: translateX(-10px);
3014
- }
3015
- to {
3016
- opacity: 1;
3017
- transform: translateX(0);
3018
- }
3019
- }
3020
- .ds-lead-loading__stage--pending {
3021
- opacity: 0.4;
3022
- }
3023
- .ds-lead-loading__stage--active {
3024
- background: rgba(var(--accent-rgb), 0.1);
3025
- border: 1px solid rgba(var(--accent-rgb), 0.2);
3026
- }
3027
- .ds-lead-loading__stage--completed {
3028
- opacity: 0.6;
3029
- }
3030
- .ds-lead-loading__stage--completed .ds-lead-loading__stage-icon {
3031
- color: var(--status-success);
3032
- }
3033
- .ds-lead-loading__stage-icon {
3034
- width: 24px;
3035
- height: 24px;
3036
- display: flex;
3037
- align-items: center;
3038
- justify-content: center;
3039
- color: var(--text-tertiary);
3040
- }
3041
- .ds-lead-loading__stage--active .ds-lead-loading__stage-icon {
3042
- color: rgb(var(--accent-rgb));
3043
- }
3044
- .ds-lead-loading__stage-label {
3045
- flex: 1;
3046
- font-size: var(--font-size-sm);
3047
- color: var(--text-secondary);
3048
- }
3049
- .ds-lead-loading__stage--active .ds-lead-loading__stage-label {
3050
- color: var(--text-primary);
3051
- font-weight: var(--font-weight-medium);
3052
- }
3053
- .ds-lead-loading__stage-pulse {
3054
- width: 8px;
3055
- height: 8px;
3056
- border-radius: 50%;
3057
- background: rgb(var(--accent-rgb));
3058
- animation: ds-pulse-small 1.5s ease-in-out infinite;
3059
- }
3060
- @keyframes ds-pulse-small {
3061
- 0%, 100% {
3062
- opacity: 1;
3063
- transform: scale(1);
3064
- }
3065
- 50% {
3066
- opacity: 0.5;
3067
- transform: scale(0.8);
3068
- }
3069
- }
3070
- .ds-lead-loading__footer {
3071
- text-align: center;
3072
- }
3073
- .ds-lead-loading__time {
3074
- font-size: var(--font-size-sm);
3075
- color: var(--text-secondary);
3076
- margin: 0 0 var(--space-1);
3077
- }
3078
- .ds-lead-loading__message {
3079
- font-size: var(--font-size-xs);
3080
- color: var(--text-tertiary);
3081
- margin: 0;
3082
- }
3083
- .ds-lead-identity {
3084
- display: flex;
3085
- gap: var(--space-6);
3086
- align-items: flex-start;
3087
- background: var(--glass-base);
3088
- backdrop-filter: var(--glass-backdrop);
3089
- border: 1px solid var(--rim-light-bottom);
3090
- border-top-color: var(--rim-light-top);
3091
- border-radius: var(--radius-card);
3092
- padding: var(--space-6);
3093
- box-shadow: var(--glass-shadow-combined);
3094
- }
3095
- .ds-lead-identity__avatar-wrapper {
3096
- position: relative;
3097
- flex-shrink: 0;
3098
- }
3099
- .ds-lead-identity__avatar {
3100
- width: 100px;
3101
- height: 100px;
3102
- border-radius: 50%;
3103
- object-fit: cover;
3104
- border: 3px solid var(--rim-light-top);
3105
- box-shadow: var(--shadow-inset-border-subtle), var(--shadow-interactive-rest);
3106
- }
3107
- .ds-lead-identity__verified-badge {
3108
- position: absolute;
3109
- bottom: 2px;
3110
- right: 2px;
3111
- width: 24px;
3112
- height: 24px;
3113
- border-radius: 50%;
3114
- background: var(--status-success);
3115
- color: var(--hc-control-knob);
3116
- display: flex;
3117
- align-items: center;
3118
- justify-content: center;
3119
- border: 2px solid var(--void-base);
3120
- }
3121
- .ds-lead-identity__content {
3122
- flex: 1;
3123
- min-width: 0;
3124
- display: flex;
3125
- flex-direction: column;
3126
- gap: var(--space-2);
3127
- }
3128
- .ds-lead-identity__name-row {
3129
- display: flex;
3130
- align-items: center;
3131
- gap: var(--space-3);
3132
- flex-wrap: wrap;
3133
- }
3134
- .ds-lead-identity__name {
3135
- font-size: var(--font-size-2xl);
3136
- font-weight: var(--font-weight-bold);
3137
- color: var(--text-primary);
3138
- letter-spacing: var(--letter-spacing-tight);
3139
- margin: 0;
3140
- line-height: 1.2;
3141
- }
3142
- .ds-lead-identity__badges {
3143
- display: flex;
3144
- gap: var(--space-2);
3145
- }
3146
- .ds-lead-identity__badge {
3147
- width: 28px;
3148
- height: 28px;
3149
- border-radius: 50%;
3150
- display: flex;
3151
- align-items: center;
3152
- justify-content: center;
3153
- background: var(--glass-highlight-subtle);
3154
- color: var(--text-secondary);
3155
- transition: all var(--transition-fast);
3156
- text-decoration: none;
3157
- }
3158
- .ds-lead-identity__badge:hover {
3159
- background: var(--glass-highlight-light);
3160
- color: var(--text-primary);
3161
- }
3162
- .ds-lead-identity__badge--linkedin:hover {
3163
- background: var(--social-linkedin-hover-bg);
3164
- color: var(--social-linkedin);
3165
- }
3166
- .ds-lead-identity__badge--verified {
3167
- background: rgba(var(--status-success-rgb, 34, 197, 94), 0.15);
3168
- color: var(--status-success);
3169
- }
3170
- .ds-lead-identity__role {
3171
- display: flex;
3172
- align-items: center;
3173
- gap: var(--space-2);
3174
- flex-wrap: wrap;
3175
- font-size: var(--font-size-base);
3176
- }
3177
- .ds-lead-identity__role-title {
3178
- color: var(--text-primary);
3179
- font-weight: var(--font-weight-medium);
3180
- }
3181
- .ds-lead-identity__role-separator {
3182
- color: var(--text-tertiary);
3183
- }
3184
- .ds-lead-identity__company {
3185
- color: var(--text-secondary);
3186
- display: flex;
3187
- align-items: center;
3188
- gap: var(--space-2);
3189
- }
3190
- .ds-lead-identity__company-logo {
3191
- width: 20px;
3192
- height: 20px;
3193
- border-radius: 4px;
3194
- object-fit: contain;
3195
- }
3196
- .ds-lead-identity__meta {
3197
- display: flex;
3198
- align-items: center;
3199
- gap: var(--space-4);
3200
- color: var(--text-tertiary);
3201
- font-size: var(--font-size-sm);
3202
- flex-wrap: wrap;
3203
- }
3204
- .ds-lead-identity__meta-item {
3205
- display: flex;
3206
- align-items: center;
3207
- gap: var(--space-1);
3208
- }
3209
- .ds-lead-identity__actions {
3210
- display: flex;
3211
- align-items: center;
3212
- gap: var(--space-4);
3213
- margin-top: var(--space-2);
3214
- flex-wrap: wrap;
3215
- }
3216
- .ds-lead-identity__contact {
3217
- display: inline-flex;
3218
- align-items: center;
3219
- gap: var(--space-2);
3220
- padding: var(--space-2) var(--space-3);
3221
- border-radius: var(--radius-button);
3222
- background: var(--surface-alpha-1);
3223
- font-size: var(--font-size-sm);
3224
- color: var(--text-secondary);
3225
- text-decoration: none;
3226
- transition: all var(--transition-fast);
3227
- }
3228
- .ds-lead-identity__contact:hover {
3229
- background: var(--surface-alpha-2);
3230
- color: var(--text-primary);
3231
- }
3232
- .ds-lead-identity__contact--verified {
3233
- border: 1px solid rgba(var(--status-success-rgb, 34, 197, 94), 0.3);
3234
- }
3235
- .ds-lead-identity__contact--risky {
3236
- border: 1px solid rgba(var(--status-warning-rgb, 234, 179, 8), 0.3);
3237
- }
3238
- .ds-lead-identity__contact-email {
3239
- max-width: 200px;
3240
- overflow: hidden;
3241
- text-overflow: ellipsis;
3242
- white-space: nowrap;
3243
- }
3244
- .ds-lead-identity__contact-status {
3245
- font-size: var(--font-size-xs);
3246
- padding: var(--space-0-5) var(--space-2);
3247
- border-radius: var(--radius-badge);
3248
- background: rgba(var(--status-success-rgb, 34, 197, 94), 0.15);
3249
- color: var(--status-success);
3250
- }
3251
- .ds-lead-identity__contact--risky .ds-lead-identity__contact-status {
3252
- background: rgba(var(--status-warning-rgb, 234, 179, 8), 0.15);
3253
- color: var(--status-warning);
3254
- }
3255
- .ds-lead-identity__freshness {
3256
- display: flex;
3257
- align-items: center;
3258
- gap: var(--space-1);
3259
- font-size: var(--font-size-xs);
3260
- color: var(--text-tertiary);
3261
- }
3262
- .ds-lead-identity__confidence {
3263
- display: flex;
3264
- align-items: center;
3265
- gap: var(--space-3);
3266
- margin-top: var(--space-2);
3267
- }
3268
- .ds-lead-identity__confidence-bar {
3269
- flex: 1;
3270
- max-width: 120px;
3271
- height: 4px;
3272
- background: var(--surface-alpha-2);
3273
- border-radius: var(--radius-pill);
3274
- overflow: hidden;
3275
- }
3276
- .ds-lead-identity__confidence-fill {
3277
- height: 100%;
3278
- background: var(--status-success);
3279
- border-radius: var(--radius-pill);
3280
- transition: width var(--transition-slow);
3281
- }
3282
- .ds-lead-identity__confidence-label {
3283
- font-size: var(--font-size-xs);
3284
- color: var(--text-tertiary);
3285
- }
3286
- .ds-lead-intelligence {
3287
- display: flex;
3288
- flex-direction: column;
3289
- gap: var(--space-4);
3290
- }
3291
- .ds-lead-intelligence__grid {
3292
- display: grid;
3293
- grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
3294
- gap: var(--space-4);
3295
- }
3296
- .ds-lead-intelligence__card {
3297
- background: var(--glass-base);
3298
- backdrop-filter: var(--glass-backdrop);
3299
- border: 1px solid var(--rim-light-bottom);
3300
- border-top-color: var(--rim-light-top);
3301
- border-radius: var(--radius-card);
3302
- padding: var(--space-5);
3303
- box-shadow: var(--glass-shadow-combined);
3304
- }
3305
- .ds-lead-intelligence__card-header {
3306
- display: flex;
3307
- align-items: center;
3308
- gap: var(--space-2);
3309
- margin-bottom: var(--space-4);
3310
- color: var(--text-secondary);
3311
- }
3312
- .ds-lead-intelligence__card-title {
3313
- font-size: var(--font-size-xs);
3314
- text-transform: uppercase;
3315
- letter-spacing: var(--letter-spacing-wide);
3316
- font-weight: var(--font-weight-semibold);
3317
- }
3318
- .ds-lead-intelligence__narrative {
3319
- font-size: var(--font-size-base);
3320
- line-height: var(--line-height-relaxed);
3321
- color: var(--text-primary);
3322
- margin: 0;
3323
- }
3324
- .ds-lead-intelligence__mbti-badge {
3325
- display: inline-flex;
3326
- align-items: center;
3327
- gap: var(--space-2);
3328
- margin-top: var(--space-4);
3329
- padding: var(--space-2) var(--space-3);
3330
- background:
3331
- linear-gradient(
3332
- 135deg,
3333
- rgba(var(--accent-rgb), 0.15) 0%,
3334
- rgba(var(--accent2-rgb), 0.15) 100%);
3335
- border-radius: var(--radius-button);
3336
- border: 1px solid rgba(var(--accent-rgb), 0.2);
3337
- }
3338
- .ds-lead-intelligence__mbti-type {
3339
- font-size: var(--font-size-lg);
3340
- font-weight: var(--font-weight-bold);
3341
- color: var(--text-primary);
3342
- letter-spacing: var(--letter-spacing-wide);
3343
- }
3344
- .ds-lead-intelligence__mbti-label {
3345
- font-size: var(--font-size-xs);
3346
- color: var(--text-tertiary);
3347
- }
3348
- .ds-lead-intelligence__tips {
3349
- display: flex;
3350
- flex-direction: column;
3351
- gap: var(--space-3);
3352
- }
3353
- .ds-lead-intelligence__tip {
3354
- display: flex;
3355
- gap: var(--space-3);
3356
- padding: var(--space-3);
3357
- background: var(--glass-base);
3358
- border-radius: var(--radius-button);
3359
- border-left: 3px solid transparent;
3360
- }
3361
- .ds-lead-intelligence__tip--do {
3362
- border-left-color: var(--status-success);
3363
- }
3364
- .ds-lead-intelligence__tip--dont {
3365
- border-left-color: var(--status-error);
3366
- }
3367
- .ds-lead-intelligence__tip--insight {
3368
- border-left-color: var(--status-info);
3369
- }
3370
- .ds-lead-intelligence__tip-icon {
3371
- flex-shrink: 0;
3372
- width: 20px;
3373
- height: 20px;
3374
- display: flex;
3375
- align-items: center;
3376
- justify-content: center;
3377
- color: var(--text-tertiary);
3378
- }
3379
- .ds-lead-intelligence__tip--do .ds-lead-intelligence__tip-icon {
3380
- color: var(--status-success);
3381
- }
3382
- .ds-lead-intelligence__tip--dont .ds-lead-intelligence__tip-icon {
3383
- color: var(--status-error);
3384
- }
3385
- .ds-lead-intelligence__tip--insight .ds-lead-intelligence__tip-icon {
3386
- color: var(--status-info);
3387
- }
3388
- .ds-lead-intelligence__tip-content {
3389
- flex: 1;
3390
- }
3391
- .ds-lead-intelligence__tip-text {
3392
- font-size: var(--font-size-sm);
3393
- color: var(--text-primary);
3394
- display: block;
3395
- }
3396
- .ds-lead-intelligence__tip-detail {
3397
- font-size: var(--font-size-xs);
3398
- color: var(--text-tertiary);
3399
- display: block;
3400
- margin-top: var(--space-1);
3401
- }
3402
- .ds-lead-intelligence__card--locked {
3403
- position: relative;
3404
- overflow: hidden;
3405
- }
3406
- .ds-lead-intelligence__locked-content {
3407
- display: flex;
3408
- flex-direction: column;
3409
- align-items: center;
3410
- justify-content: center;
3411
- padding: var(--space-8) var(--space-4);
3412
- text-align: center;
3413
- min-height: 150px;
3414
- }
3415
- .ds-lead-intelligence__locked-icon {
3416
- color: var(--text-tertiary);
3417
- margin-bottom: var(--space-3);
3418
- opacity: 0.5;
3419
- }
3420
- .ds-lead-intelligence__locked-text {
3421
- font-size: var(--font-size-sm);
3422
- color: var(--text-tertiary);
3423
- margin: 0;
3424
- }
3425
- .ds-lead-intelligence__locked-shimmer {
3426
- position: absolute;
3427
- inset: 0;
3428
- background:
3429
- linear-gradient(
3430
- 90deg,
3431
- transparent 0%,
3432
- var(--glass-base-hover) 50%,
3433
- transparent 100%);
3434
- animation: ds-shimmer 2s infinite;
3435
- }
3436
- @keyframes ds-shimmer {
3437
- 0% {
3438
- transform: translateX(-100%);
3439
- }
3440
- 100% {
3441
- transform: translateX(100%);
3442
- }
3443
- }
3444
- .ds-mbti {
3445
- background: var(--glass-base);
3446
- backdrop-filter: var(--glass-backdrop);
3447
- border: 1px solid var(--rim-light-bottom);
3448
- border-top-color: var(--rim-light-top);
3449
- border-radius: var(--radius-card);
3450
- padding: var(--space-5);
3451
- box-shadow: var(--glass-shadow-combined);
3452
- }
3453
- .ds-mbti__header {
3454
- display: flex;
3455
- align-items: center;
3456
- justify-content: space-between;
3457
- margin-bottom: var(--space-5);
3458
- }
3459
- .ds-mbti__title {
3460
- font-size: var(--font-size-xs);
3461
- text-transform: uppercase;
3462
- letter-spacing: var(--letter-spacing-wide);
3463
- font-weight: var(--font-weight-semibold);
3464
- color: var(--text-secondary);
3465
- margin: 0;
3466
- }
3467
- .ds-mbti__type-badge {
3468
- font-size: var(--font-size-sm);
3469
- font-weight: var(--font-weight-bold);
3470
- padding: var(--space-1) var(--space-3);
3471
- background:
3472
- linear-gradient(
3473
- 135deg,
3474
- rgba(var(--accent-rgb), 0.2) 0%,
3475
- rgba(var(--accent2-rgb), 0.2) 100%);
3476
- border-radius: var(--radius-badge);
3477
- color: var(--text-primary);
3478
- letter-spacing: var(--letter-spacing-widest);
3479
- }
3480
- .ds-mbti__dimensions {
3481
- display: flex;
3482
- flex-direction: column;
3483
- gap: var(--space-5);
3484
- }
3485
- .ds-mbti__row {
3486
- display: grid;
3487
- grid-template-columns: 100px 1fr 100px auto;
3488
- gap: var(--space-3);
3489
- align-items: center;
3490
- position: relative;
3491
- padding: var(--space-2);
3492
- margin: calc(var(--space-2) * -1);
3493
- border-radius: var(--radius-button);
3494
- transition: background var(--transition-fast);
3495
- }
3496
- .ds-mbti__row--hovered {
3497
- background: var(--glass-base-hover);
3498
- }
3499
- .ds-mbti__label {
3500
- display: flex;
3501
- flex-direction: column;
3502
- gap: var(--space-0-5);
3503
- }
3504
- .ds-mbti__label--left {
3505
- text-align: right;
3506
- align-items: flex-end;
3507
- }
3508
- .ds-mbti__label--right {
3509
- text-align: left;
3510
- align-items: flex-start;
3511
- }
3512
- .ds-mbti__label-text {
3513
- font-size: var(--font-size-sm);
3514
- color: var(--text-tertiary);
3515
- transition: color var(--transition-fast);
3516
- }
3517
- .ds-mbti__label--active .ds-mbti__label-text {
3518
- color: var(--text-primary);
3519
- font-weight: var(--font-weight-medium);
3520
- }
3521
- .ds-mbti__label-strength {
3522
- font-size: var(--font-size-xs);
3523
- color: var(--text-tertiary);
3524
- opacity: 0.7;
3525
- }
3526
- .ds-mbti__track-container {
3527
- position: relative;
3528
- display: flex;
3529
- flex-direction: column;
3530
- gap: var(--space-1);
3531
- }
3532
- .ds-mbti__track {
3533
- height: 8px;
3534
- background: var(--glass-highlight-subtle);
3535
- border-radius: var(--radius-pill);
3536
- position: relative;
3537
- overflow: visible;
3538
- }
3539
- .ds-mbti__track-center {
3540
- position: absolute;
3541
- left: 50%;
3542
- top: -2px;
3543
- bottom: -2px;
3544
- width: 2px;
3545
- background: var(--glass-highlight-medium);
3546
- transform: translateX(-50%);
3547
- }
3548
- .ds-mbti__track-fill {
3549
- position: absolute;
3550
- top: 0;
3551
- bottom: 0;
3552
- border-radius: var(--radius-pill);
3553
- transition: all 800ms cubic-bezier(0.2, 0.8, 0.2, 1);
3554
- }
3555
- .ds-mbti__row--purple .ds-mbti__track-fill {
3556
- background:
3557
- linear-gradient(
3558
- 90deg,
3559
- var(--data-purple),
3560
- var(--data-purple-light));
3561
- box-shadow: 0 0 12px var(--data-purple-glow);
3562
- }
3563
- .ds-mbti__row--yellow .ds-mbti__track-fill {
3564
- background:
3565
- linear-gradient(
3566
- 90deg,
3567
- var(--data-yellow),
3568
- var(--data-yellow-light));
3569
- box-shadow: 0 0 12px var(--data-yellow-glow);
3570
- }
3571
- .ds-mbti__row--pink .ds-mbti__track-fill {
3572
- background:
3573
- linear-gradient(
3574
- 90deg,
3575
- var(--data-pink),
3576
- var(--data-pink-light));
3577
- box-shadow: 0 0 12px var(--data-pink-glow);
3578
- }
3579
- .ds-mbti__row--blue .ds-mbti__track-fill {
3580
- background:
3581
- linear-gradient(
3582
- 90deg,
3583
- var(--data-blue),
3584
- var(--data-blue-light));
3585
- box-shadow: 0 0 12px var(--data-blue-glow);
3586
- }
3587
- .ds-mbti__thumb {
3588
- position: absolute;
3589
- top: 50%;
3590
- width: 16px;
3591
- height: 16px;
3592
- transform: translate(-50%, -50%);
3593
- z-index: 2;
3594
- transition: left 800ms cubic-bezier(0.2, 0.8, 0.2, 1);
3595
- }
3596
- .ds-mbti__thumb::before {
3597
- content: "";
3598
- position: absolute;
3599
- inset: 0;
3600
- background: var(--hc-control-knob);
3601
- border-radius: 50%;
3602
- box-shadow: var(--shadow-sm), 0 0 0 2px var(--glass-highlight-bright);
3603
- }
3604
- .ds-mbti__thumb-glow {
3605
- position: absolute;
3606
- inset: -4px;
3607
- border-radius: 50%;
3608
- background:
3609
- radial-gradient(
3610
- circle,
3611
- var(--glass-highlight-strong) 0%,
3612
- transparent 70%);
3613
- opacity: 0;
3614
- transition: opacity var(--transition-fast);
3615
- }
3616
- .ds-mbti__row:hover .ds-mbti__thumb-glow {
3617
- opacity: 1;
3618
- }
3619
- .ds-mbti__dimension-label {
3620
- font-size: var(--font-size-xs);
3621
- color: var(--text-tertiary);
3622
- text-align: center;
3623
- }
3624
- .ds-mbti__info-button {
3625
- width: 24px;
3626
- height: 24px;
3627
- display: flex;
3628
- align-items: center;
3629
- justify-content: center;
3630
- background: none;
3631
- border: none;
3632
- color: var(--text-tertiary);
3633
- cursor: pointer;
3634
- border-radius: 50%;
3635
- transition: all var(--transition-fast);
3636
- opacity: 0;
3637
- }
3638
- .ds-mbti__row:hover .ds-mbti__info-button {
3639
- opacity: 1;
3640
- }
3641
- .ds-mbti__info-button:hover {
3642
- background: var(--surface-alpha-2);
3643
- color: var(--text-secondary);
3644
- }
3645
- .ds-mbti__tooltip {
3646
- position: absolute;
3647
- top: calc(100% + var(--space-2));
3648
- left: 50%;
3649
- transform: translateX(-50%);
3650
- width: 320px;
3651
- padding: var(--space-4);
3652
- background: var(--glass-base);
3653
- backdrop-filter: blur(20px);
3654
- border: 1px solid var(--rim-light-top);
3655
- border-radius: var(--radius-card);
3656
- box-shadow: var(--glass-shadow-elevated-combined);
3657
- z-index: var(--z-tooltip);
3658
- animation: ds-tooltip-enter 200ms ease-out;
3659
- }
3660
- @keyframes ds-tooltip-enter {
3661
- from {
3662
- opacity: 0;
3663
- transform: translateX(-50%) translateY(-4px);
3664
- }
3665
- to {
3666
- opacity: 1;
3667
- transform: translateX(-50%) translateY(0);
3668
- }
3669
- }
3670
- .ds-mbti__tooltip-description {
3671
- font-size: var(--font-size-sm);
3672
- color: var(--text-secondary);
3673
- margin: 0 0 var(--space-3);
3674
- }
3675
- .ds-mbti__tooltip-traits {
3676
- display: flex;
3677
- flex-direction: column;
3678
- gap: var(--space-2);
3679
- }
3680
- .ds-mbti__tooltip-trait {
3681
- font-size: var(--font-size-xs);
3682
- color: var(--text-tertiary);
3683
- line-height: var(--line-height-relaxed);
3684
- }
3685
- .ds-mbti__tooltip-trait strong {
3686
- color: var(--text-secondary);
3687
- }
3688
- .ds-mbti--locked .ds-mbti__header {
3689
- opacity: 0.6;
3690
- }
3691
- .ds-mbti__locked-badge {
3692
- display: flex;
3693
- align-items: center;
3694
- gap: var(--space-2);
3695
- font-size: var(--font-size-xs);
3696
- color: var(--text-tertiary);
3697
- }
3698
- .ds-mbti__locked-content {
3699
- display: flex;
3700
- flex-direction: column;
3701
- gap: var(--space-4);
3702
- }
3703
- .ds-mbti__row--locked {
3704
- display: flex;
3705
- align-items: center;
3706
- gap: var(--space-3);
3707
- }
3708
- .ds-mbti__label--skeleton {
3709
- width: 80px;
3710
- height: 14px;
3711
- background: var(--surface-alpha-1);
3712
- border-radius: var(--radius-badge);
3713
- }
3714
- .ds-mbti__track--skeleton {
3715
- flex: 1;
3716
- height: 8px;
3717
- background: var(--surface-alpha-1);
3718
- border-radius: var(--radius-pill);
3719
- position: relative;
3720
- overflow: hidden;
3721
- }
3722
- .ds-mbti__skeleton-shimmer {
3723
- position: absolute;
3724
- inset: 0;
3725
- background:
3726
- linear-gradient(
3727
- 90deg,
3728
- transparent 0%,
3729
- var(--surface-alpha-1) 50%,
3730
- transparent 100%);
3731
- animation: ds-shimmer 2s infinite;
3732
- }
3733
- .ds-behavioral {
3734
- background: var(--glass-base);
3735
- backdrop-filter: var(--glass-backdrop);
3736
- border: 1px solid var(--rim-light-bottom);
3737
- border-top-color: var(--rim-light-top);
3738
- border-radius: var(--radius-card);
3739
- padding: var(--space-5);
3740
- box-shadow: var(--glass-shadow-combined);
3741
- }
3742
- .ds-behavioral__header {
3743
- display: flex;
3744
- align-items: center;
3745
- justify-content: space-between;
3746
- margin-bottom: var(--space-4);
3747
- }
3748
- .ds-behavioral__title {
3749
- font-size: var(--font-size-xs);
3750
- text-transform: uppercase;
3751
- letter-spacing: var(--letter-spacing-wide);
3752
- font-weight: var(--font-weight-semibold);
3753
- color: var(--text-secondary);
3754
- margin: 0;
3755
- }
3756
- .ds-behavioral__locked-badge {
3757
- display: flex;
3758
- align-items: center;
3759
- gap: var(--space-2);
3760
- font-size: var(--font-size-xs);
3761
- color: var(--text-tertiary);
3762
- }
3763
- .ds-behavioral__grid {
3764
- display: grid;
3765
- grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
3766
- gap: var(--space-4);
3767
- }
3768
- .ds-behavioral__item {
3769
- display: flex;
3770
- gap: var(--space-3);
3771
- padding: var(--space-3);
3772
- background: var(--glass-base);
3773
- border-radius: var(--radius-button);
3774
- }
3775
- .ds-behavioral__item-icon {
3776
- width: 36px;
3777
- height: 36px;
3778
- display: flex;
3779
- align-items: center;
3780
- justify-content: center;
3781
- background: rgba(var(--accent-rgb), 0.1);
3782
- border-radius: var(--radius-button);
3783
- color: rgb(var(--accent-rgb));
3784
- flex-shrink: 0;
3785
- }
3786
- .ds-behavioral__item-content {
3787
- flex: 1;
3788
- min-width: 0;
3789
- }
3790
- .ds-behavioral__item-label {
3791
- font-size: var(--font-size-xs);
3792
- color: var(--text-tertiary);
3793
- display: block;
3794
- margin-bottom: var(--space-0-5);
3795
- }
3796
- .ds-behavioral__item-value {
3797
- font-size: var(--font-size-sm);
3798
- font-weight: var(--font-weight-medium);
3799
- color: var(--text-primary);
3800
- display: block;
3801
- margin-bottom: var(--space-0-5);
3802
- }
3803
- .ds-behavioral__item-description {
3804
- font-size: var(--font-size-xs);
3805
- color: var(--text-tertiary);
3806
- display: block;
3807
- line-height: var(--line-height-normal);
3808
- }
3809
- .ds-behavioral__risk-meter {
3810
- margin-top: var(--space-1);
3811
- }
3812
- .ds-behavioral__risk-track {
3813
- height: 6px;
3814
- background: var(--surface-alpha-2);
3815
- border-radius: var(--radius-pill);
3816
- overflow: hidden;
3817
- margin-bottom: var(--space-1);
3818
- }
3819
- .ds-behavioral__risk-fill {
3820
- height: 100%;
3821
- border-radius: var(--radius-pill);
3822
- transition: width var(--transition-slow);
3823
- }
3824
- .ds-behavioral__risk-fill--low {
3825
- background: var(--status-info);
3826
- }
3827
- .ds-behavioral__risk-fill--medium {
3828
- background: var(--status-warning);
3829
- }
3830
- .ds-behavioral__risk-fill--high {
3831
- background: var(--status-error);
3832
- }
3833
- .ds-behavioral__risk-label {
3834
- font-size: var(--font-size-xs);
3835
- color: var(--text-tertiary);
3836
- }
3837
- .ds-behavioral__item--skeleton {
3838
- height: 80px;
3839
- background: var(--glass-base);
3840
- position: relative;
3841
- overflow: hidden;
3842
- }
3843
- .ds-behavioral__item-shimmer {
3844
- position: absolute;
3845
- inset: 0;
3846
- background:
3847
- linear-gradient(
3848
- 90deg,
3849
- transparent 0%,
3850
- var(--glass-base-hover) 50%,
3851
- transparent 100%);
3852
- animation: ds-shimmer 2s infinite;
3853
- }
3854
- .ds-deep-dive {
3855
- border-top: 1px solid var(--rim-light-bottom);
3856
- padding-top: var(--space-2);
3857
- }
3858
- .ds-deep-dive__trigger {
3859
- width: 100%;
3860
- display: flex;
3861
- align-items: center;
3862
- justify-content: space-between;
3863
- padding: var(--space-4) var(--space-2);
3864
- background: none;
3865
- border: none;
3866
- color: var(--text-secondary);
3867
- font-size: var(--font-size-sm);
3868
- font-family: var(--font-family);
3869
- cursor: pointer;
3870
- border-radius: var(--radius-button);
3871
- transition: all var(--transition-fast);
3872
- }
3873
- .ds-deep-dive__trigger:hover {
3874
- background: var(--glass-base-hover);
3875
- color: var(--text-primary);
3876
- }
3877
- .ds-deep-dive__trigger-text {
3878
- font-weight: var(--font-weight-medium);
3879
- }
3880
- .ds-deep-dive__trigger-icon {
3881
- color: var(--text-tertiary);
3882
- transition: transform var(--transition-base);
3883
- }
3884
- .ds-deep-dive--expanded .ds-deep-dive__trigger-icon {
3885
- transform: rotate(180deg);
3886
- }
3887
- .ds-deep-dive__content {
3888
- padding: var(--space-4) 0;
3889
- animation: ds-expand-enter 300ms ease-out;
3890
- }
3891
- @keyframes ds-expand-enter {
3892
- from {
3893
- opacity: 0;
3894
- transform: translateY(-8px);
3895
- }
3896
- to {
3897
- opacity: 1;
3898
- transform: translateY(0);
3899
- }
3900
- }
3901
- .ds-deep-dive__grid {
3902
- display: grid;
3903
- grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
3904
- gap: var(--space-4);
3905
- }
3906
- .ds-deep-dive__card {
3907
- background: var(--glass-base);
3908
- backdrop-filter: var(--glass-backdrop);
3909
- border: 1px solid var(--rim-light-bottom);
3910
- border-top-color: var(--rim-light-top);
3911
- border-radius: var(--radius-card);
3912
- padding: var(--space-5);
3913
- box-shadow: var(--glass-shadow-combined);
3914
- }
3915
- .ds-deep-dive__card--wide {
3916
- grid-column: 1 / -1;
3917
- }
3918
- .ds-deep-dive__card--insights {
3919
- display: flex;
3920
- flex-direction: column;
3921
- gap: var(--space-5);
3922
- }
3923
- .ds-deep-dive__section {
3924
- display: flex;
3925
- flex-direction: column;
3926
- gap: var(--space-3);
3927
- }
3928
- .ds-deep-dive__section-header {
3929
- display: flex;
3930
- align-items: center;
3931
- gap: var(--space-2);
3932
- color: var(--text-secondary);
3933
- }
3934
- .ds-deep-dive__section-header--success {
3935
- color: var(--status-success);
3936
- }
3937
- .ds-deep-dive__section-header--warning {
3938
- color: var(--status-warning);
3939
- }
3940
- .ds-deep-dive__section-title {
3941
- font-size: var(--font-size-xs);
3942
- text-transform: uppercase;
3943
- letter-spacing: var(--letter-spacing-wide);
3944
- font-weight: var(--font-weight-semibold);
3945
- margin: 0;
3946
- }
3947
- .ds-deep-dive__list {
3948
- list-style: none;
3949
- padding: 0;
3950
- margin: 0;
3951
- display: flex;
3952
- flex-direction: column;
3953
- gap: var(--space-2);
3954
- }
3955
- .ds-deep-dive__list-item {
3956
- font-size: var(--font-size-sm);
3957
- color: var(--text-secondary);
3958
- padding-left: var(--space-4);
3959
- position: relative;
3960
- }
3961
- .ds-deep-dive__list-item::before {
3962
- content: "";
3963
- position: absolute;
3964
- left: 0;
3965
- top: 8px;
3966
- width: 6px;
3967
- height: 6px;
3968
- border-radius: 50%;
3969
- background: var(--text-tertiary);
3970
- }
3971
- .ds-deep-dive__section-header--success + .ds-deep-dive__list .ds-deep-dive__list-item::before {
3972
- background: var(--status-success);
3973
- }
3974
- .ds-deep-dive__section-header--warning + .ds-deep-dive__list .ds-deep-dive__list-item::before {
3975
- background: var(--status-warning);
3976
- }
3977
- .ds-deep-dive__timeline {
3978
- display: flex;
3979
- flex-direction: column;
3980
- gap: var(--space-4);
3981
- }
3982
- .ds-deep-dive__timeline-item {
3983
- display: flex;
3984
- gap: var(--space-3);
3985
- position: relative;
3986
- }
3987
- .ds-deep-dive__timeline-item:not(:last-child)::after {
3988
- content: "";
3989
- position: absolute;
3990
- left: 19px;
3991
- top: 44px;
3992
- bottom: -16px;
3993
- width: 2px;
3994
- background: var(--surface-alpha-2);
3995
- }
3996
- .ds-deep-dive__timeline-item--current::after {
3997
- background:
3998
- linear-gradient(
3999
- 180deg,
4000
- rgba(var(--accent-rgb), 0.5) 0%,
4001
- var(--surface-alpha-2) 100%);
4002
- }
4003
- .ds-deep-dive__timeline-icon {
4004
- width: 40px;
4005
- height: 40px;
4006
- display: flex;
4007
- align-items: center;
4008
- justify-content: center;
4009
- background: var(--surface-alpha-1);
4010
- border-radius: var(--radius-button);
4011
- color: var(--text-tertiary);
4012
- flex-shrink: 0;
4013
- }
4014
- .ds-deep-dive__timeline-item--current .ds-deep-dive__timeline-icon {
4015
- background: rgba(var(--accent-rgb), 0.15);
4016
- color: rgb(var(--accent-rgb));
4017
- }
4018
- .ds-deep-dive__timeline-logo {
4019
- width: 40px;
4020
- height: 40px;
4021
- border-radius: var(--radius-button);
4022
- object-fit: contain;
4023
- background: var(--hc-control-knob);
4024
- flex-shrink: 0;
4025
- }
4026
- .ds-deep-dive__timeline-content {
4027
- flex: 1;
4028
- min-width: 0;
4029
- }
4030
- .ds-deep-dive__timeline-title {
4031
- font-size: var(--font-size-sm);
4032
- font-weight: var(--font-weight-semibold);
4033
- color: var(--text-primary);
4034
- margin: 0 0 var(--space-0-5);
4035
- }
4036
- .ds-deep-dive__timeline-subtitle {
4037
- font-size: var(--font-size-sm);
4038
- color: var(--text-secondary);
4039
- margin: 0;
4040
- }
4041
- .ds-deep-dive__timeline-date {
4042
- font-size: var(--font-size-xs);
4043
- color: var(--text-tertiary);
4044
- display: flex;
4045
- align-items: center;
4046
- gap: var(--space-2);
4047
- margin-top: var(--space-0-5);
4048
- }
4049
- .ds-deep-dive__current-badge {
4050
- display: inline-flex;
4051
- padding: var(--space-0-5) var(--space-2);
4052
- background: rgba(var(--accent-rgb), 0.15);
4053
- color: rgb(var(--accent-rgb));
4054
- border-radius: var(--radius-badge);
4055
- font-size: var(--font-size-xs);
4056
- font-weight: var(--font-weight-medium);
4057
- }
4058
- .ds-deep-dive__narrative {
4059
- font-size: var(--font-size-sm);
4060
- line-height: var(--line-height-relaxed);
4061
- color: var(--text-secondary);
4062
- margin: 0;
4063
- }
4064
- .ds-lead-profile__partial-notice {
4065
- padding: var(--space-4);
4066
- background: rgba(var(--accent-rgb), 0.05);
4067
- border: 1px solid rgba(var(--accent-rgb), 0.15);
4068
- border-radius: var(--radius-card);
4069
- text-align: center;
4070
- }
4071
- .ds-lead-profile__partial-notice-content {
4072
- display: flex;
4073
- flex-direction: column;
4074
- align-items: center;
4075
- gap: var(--space-3);
4076
- }
4077
- .ds-lead-profile__partial-notice-text {
4078
- font-size: var(--font-size-sm);
4079
- color: var(--text-secondary);
4080
- }
4081
- .ds-lead-profile__partial-notice-progress {
4082
- width: 200px;
4083
- height: 4px;
4084
- background: var(--surface-alpha-2);
4085
- border-radius: var(--radius-pill);
4086
- overflow: hidden;
4087
- }
4088
- .ds-lead-profile__partial-notice-bar {
4089
- height: 100%;
4090
- width: 60%;
4091
- background:
4092
- linear-gradient(
4093
- 90deg,
4094
- rgb(var(--accent-rgb)),
4095
- rgb(var(--accent2-rgb)));
4096
- border-radius: var(--radius-pill);
4097
- animation: ds-partial-progress 2s ease-in-out infinite;
4098
- }
4099
- @keyframes ds-partial-progress {
4100
- 0%, 100% {
4101
- transform: translateX(-20%);
4102
- }
4103
- 50% {
4104
- transform: translateX(20%);
4105
- }
4106
- }
4107
- @media (max-width: 640px) {
4108
- .ds-lead-profile {
4109
- padding: var(--space-4);
4110
- gap: var(--space-6);
4111
- }
4112
- .ds-lead-identity {
4113
- flex-direction: column;
4114
- align-items: center;
4115
- text-align: center;
4116
- }
4117
- .ds-lead-identity__content {
4118
- align-items: center;
4119
- }
4120
- .ds-lead-identity__name-row {
4121
- justify-content: center;
4122
- }
4123
- .ds-lead-identity__meta {
4124
- justify-content: center;
4125
- }
4126
- .ds-lead-identity__actions {
4127
- justify-content: center;
4128
- }
4129
- .ds-lead-intelligence__grid {
4130
- grid-template-columns: 1fr;
4131
- }
4132
- .ds-mbti__row {
4133
- grid-template-columns: 70px 1fr 70px auto;
4134
- }
4135
- .ds-mbti__label-text {
4136
- font-size: var(--font-size-xs);
4137
- }
4138
- .ds-behavioral__grid {
4139
- grid-template-columns: 1fr;
4140
- }
4141
- .ds-deep-dive__grid {
4142
- grid-template-columns: 1fr;
4143
- }
4144
- }
4145
227
  /*# sourceMappingURL=index.css.map */