@dataengineeringformachinelearning/viking-ui 4.0.3 → 4.0.5

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 (246) hide show
  1. package/README.md +35 -11
  2. package/dist/README.md +35 -11
  3. package/dist/design-tokens.css +300 -85
  4. package/dist/fesm2022/dataengineeringformachinelearning-viking-ui.mjs +135 -70
  5. package/dist/fesm2022/dataengineeringformachinelearning-viking-ui.mjs.map +1 -1
  6. package/dist/icons.js +306 -0
  7. package/dist/package.json +24 -5
  8. package/{src/lib/site-drakkar/site-drakkar.config.ts → dist/site-drakkar.js} +64 -130
  9. package/dist/src/tokens/viking-tokens.json +9 -7
  10. package/dist/types/dataengineeringformachinelearning-viking-ui.d.ts +98 -4
  11. package/dist/viking-components.css +161 -70
  12. package/dist/viking-tokens.json +9 -7
  13. package/dist/viking-ui-elements.js +45 -33
  14. package/dist/viking-ui.css +1 -1
  15. package/dist/web-components.js +46 -36
  16. package/package.json +30 -8
  17. package/dist/scripts/build-web-components.mjs +0 -37
  18. package/dist/src/web/badge/viking-badge-wc.ts +0 -116
  19. package/dist/src/web/button/viking-button-wc.ts +0 -165
  20. package/dist/src/web/callout/viking-callout-wc.ts +0 -105
  21. package/dist/src/web/card/viking-card-wc.ts +0 -70
  22. package/dist/src/web/core/base.ts +0 -56
  23. package/dist/src/web/core/dom.ts +0 -53
  24. package/dist/src/web/core/icons-inline.ts +0 -44
  25. package/dist/src/web/core/styles.ts +0 -1261
  26. package/dist/src/web/core/types.ts +0 -19
  27. package/dist/src/web/field/viking-field-wc.ts +0 -154
  28. package/dist/src/web/index.ts +0 -73
  29. package/dist/src/web/input/viking-input-wc.ts +0 -211
  30. package/dist/src/web/modal/viking-modal-wc.ts +0 -187
  31. package/dist/src/web/search-palette/viking-search-palette-wc.ts +0 -494
  32. package/dist/src/web/select/viking-select-wc.ts +0 -218
  33. package/dist/src/web/suite-header/viking-suite-header-wc.ts +0 -729
  34. package/dist/src/web/suite-search-palette/viking-suite-search-palette-wc.ts +0 -234
  35. package/dist/src/web/theme-toggle/viking-theme-toggle-wc.ts +0 -139
  36. package/dist/src/web/types.ts +0 -37
  37. package/dist/src/web/web-components.spec.ts +0 -297
  38. package/src/assets/drakkar-favicon.svg +0 -17
  39. package/src/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
  40. package/src/assets/fonts/inter/InterVariable.woff2 +0 -0
  41. package/src/core/brand/deml-lockup.svg +0 -5
  42. package/src/core/brand/deml-mark-compact.svg +0 -4
  43. package/src/core/brand/deml-mark-filled.svg +0 -3
  44. package/src/core/brand/deml-mark-outline.svg +0 -4
  45. package/src/core/brand-icons.ts +0 -62
  46. package/src/core/icons.spec.ts +0 -52
  47. package/src/core/icons.ts +0 -206
  48. package/src/core/integration-brand-icons.ts +0 -77
  49. package/src/core/lucide-paths.generated.ts +0 -130
  50. package/src/core/types.ts +0 -85
  51. package/src/core/uid.ts +0 -7
  52. package/src/elements/button/viking-button.ts +0 -201
  53. package/src/elements/card/viking-card.ts +0 -60
  54. package/src/elements/core/dom.ts +0 -33
  55. package/src/elements/core/styles.ts +0 -28
  56. package/src/elements/modal/viking-modal.ts +0 -154
  57. package/src/index.ts +0 -1
  58. package/src/lib/accordion/accordion.ts +0 -126
  59. package/src/lib/app-header/app-header.scss +0 -274
  60. package/src/lib/app-header/app-header.ts +0 -43
  61. package/src/lib/app-sidebar/app-sidebar.scss +0 -415
  62. package/src/lib/app-sidebar/app-sidebar.ts +0 -29
  63. package/src/lib/auth-panel/auth-panel.spec.ts +0 -132
  64. package/src/lib/auth-panel/auth-panel.ts +0 -228
  65. package/src/lib/autocomplete/autocomplete.ts +0 -223
  66. package/src/lib/avatar/avatar.ts +0 -126
  67. package/src/lib/badge/badge.ts +0 -182
  68. package/src/lib/bar/bar.ts +0 -31
  69. package/src/lib/brand/brand.ts +0 -60
  70. package/src/lib/breadcrumbs/breadcrumbs.ts +0 -81
  71. package/src/lib/button/button-group.ts +0 -40
  72. package/src/lib/button/button.scss +0 -119
  73. package/src/lib/button/button.ts +0 -98
  74. package/src/lib/calendar/calendar.ts +0 -253
  75. package/src/lib/callout/callout.ts +0 -211
  76. package/src/lib/card/card-title.spec.ts +0 -27
  77. package/src/lib/card/card-title.ts +0 -50
  78. package/src/lib/card/card.ts +0 -198
  79. package/src/lib/carousel/carousel.ts +0 -206
  80. package/src/lib/chart/chart-zoom.spec.ts +0 -65
  81. package/src/lib/chart/chart-zoom.ts +0 -71
  82. package/src/lib/chart/chart.ts +0 -1257
  83. package/src/lib/chart-card-header/chart-card-header.ts +0 -80
  84. package/src/lib/chart-empty-state/chart-empty-state.ts +0 -146
  85. package/src/lib/chart-panel/chart-panel.ts +0 -133
  86. package/src/lib/checkbox/checkbox.ts +0 -139
  87. package/src/lib/color-picker/color-picker.ts +0 -148
  88. package/src/lib/command/command.ts +0 -260
  89. package/src/lib/composer/composer.ts +0 -180
  90. package/src/lib/confirm-dialog/confirm-dialog.ts +0 -163
  91. package/src/lib/confirm-dialog/dialog.service.ts +0 -79
  92. package/src/lib/context/context.ts +0 -75
  93. package/src/lib/core/brand-icons.ts +0 -62
  94. package/src/lib/core/cva.ts +0 -33
  95. package/src/lib/core/icons.ts +0 -206
  96. package/src/lib/core/integration-brand-icons.ts +0 -77
  97. package/src/lib/core/lucide-paths.generated.ts +0 -130
  98. package/src/lib/date-picker/date-picker.ts +0 -139
  99. package/src/lib/dropdown/dropdown.ts +0 -188
  100. package/src/lib/editor/editor.ts +0 -170
  101. package/src/lib/empty-state/empty-state.ts +0 -100
  102. package/src/lib/fab/fab.ts +0 -76
  103. package/src/lib/field/field.ts +0 -111
  104. package/src/lib/file-upload/file-upload.ts +0 -208
  105. package/src/lib/footer/footer.scss +0 -155
  106. package/src/lib/footer/footer.ts +0 -28
  107. package/src/lib/form-section/form-section.ts +0 -200
  108. package/src/lib/forms.spec.ts +0 -92
  109. package/src/lib/gauge-arc/gauge-arc.ts +0 -85
  110. package/src/lib/hud-panel/hud-panel.ts +0 -27
  111. package/src/lib/icon/icon.ts +0 -284
  112. package/src/lib/icon-badge/icon-badge.ts +0 -87
  113. package/src/lib/icon-heading/icon-heading.spec.ts +0 -32
  114. package/src/lib/icon-heading/icon-heading.ts +0 -38
  115. package/src/lib/icon-text/icon-text.ts +0 -120
  116. package/src/lib/input/input.ts +0 -119
  117. package/src/lib/kanban/kanban.ts +0 -211
  118. package/src/lib/kbd/kbd.ts +0 -32
  119. package/src/lib/label/label.ts +0 -39
  120. package/src/lib/loading-overlay/loading-overlay.ts +0 -80
  121. package/src/lib/menubar/menubar.ts +0 -77
  122. package/src/lib/metric-card/metric-card.ts +0 -33
  123. package/src/lib/modal/modal.ts +0 -207
  124. package/src/lib/native-select/native-select.ts +0 -124
  125. package/src/lib/navbar/navbar.ts +0 -124
  126. package/src/lib/navigation-menu/navigation-menu.ts +0 -116
  127. package/src/lib/otp-input/otp-input.ts +0 -164
  128. package/src/lib/page-back-link/page-back-link.ts +0 -74
  129. package/src/lib/page-header/page-header.ts +0 -70
  130. package/src/lib/pagination/pagination.ts +0 -157
  131. package/src/lib/pillbox/pillbox.ts +0 -157
  132. package/src/lib/popover/popover.ts +0 -92
  133. package/src/lib/profile/profile.ts +0 -73
  134. package/src/lib/progress/progress.ts +0 -123
  135. package/src/lib/radio/radio.ts +0 -132
  136. package/src/lib/ring-gauge/ring-gauge.ts +0 -75
  137. package/src/lib/scroll-area/scroll-area.ts +0 -57
  138. package/src/lib/search-palette/search-palette.scss +0 -288
  139. package/src/lib/search-palette/search-palette.ts +0 -114
  140. package/src/lib/select/select.ts +0 -292
  141. package/src/lib/separator/separator.ts +0 -59
  142. package/src/lib/sheet/sheet.ts +0 -192
  143. package/src/lib/sidebar-nav/sidebar-nav.scss +0 -218
  144. package/src/lib/sidebar-nav/sidebar-nav.ts +0 -158
  145. package/src/lib/site-drakkar/site-footer.ts +0 -129
  146. package/src/lib/site-drakkar/site-navbar.scss +0 -2
  147. package/src/lib/site-drakkar/site-navbar.ts +0 -277
  148. package/src/lib/site-drakkar/suite-search-items.spec.ts +0 -61
  149. package/src/lib/site-drakkar/suite-search-items.ts +0 -246
  150. package/src/lib/skeleton/skeleton.ts +0 -51
  151. package/src/lib/slider/slider.ts +0 -133
  152. package/src/lib/spinner/spinner.ts +0 -75
  153. package/src/lib/status-metric-row/status-metric-row.ts +0 -74
  154. package/src/lib/suite-search-palette/suite-search-palette.ts +0 -95
  155. package/src/lib/switch/switch.ts +0 -131
  156. package/src/lib/table/table.ts +0 -137
  157. package/src/lib/tabs/tab-panel.ts +0 -61
  158. package/src/lib/tabs/tab.ts +0 -107
  159. package/src/lib/tabs/tabs.ts +0 -109
  160. package/src/lib/textarea/textarea.ts +0 -103
  161. package/src/lib/theme-toggle/theme-toggle.spec.ts +0 -40
  162. package/src/lib/theme-toggle/theme-toggle.ts +0 -39
  163. package/src/lib/time-picker/time-picker.ts +0 -197
  164. package/src/lib/timeline/timeline.ts +0 -152
  165. package/src/lib/toast/toast.ts +0 -196
  166. package/src/lib/toggle/toggle-group.ts +0 -60
  167. package/src/lib/toggle/toggle.ts +0 -101
  168. package/src/lib/tooltip/tooltip.ts +0 -119
  169. package/src/lib/typography/heading.ts +0 -52
  170. package/src/lib/typography/text.ts +0 -51
  171. package/src/lib/uptime-bar/uptime-bar.ts +0 -55
  172. package/src/lib/verification-code-field/verification-code-field.ts +0 -149
  173. package/src/lib/whitepaper-cta/whitepaper-cta.scss +0 -130
  174. package/src/lib/whitepaper-cta/whitepaper-cta.ts +0 -78
  175. package/src/lib/wizard/wizard.ts +0 -80
  176. package/src/public-api.ts +0 -172
  177. package/src/styles/_buttons.scss +0 -386
  178. package/src/styles/_component-primitives.scss +0 -183
  179. package/src/styles/_drakkar-buttons.scss +0 -85
  180. package/src/styles/_fonts.scss +0 -22
  181. package/src/styles/_forms.scss +0 -66
  182. package/src/styles/_input.scss +0 -106
  183. package/src/styles/_layout-enforcement.scss +0 -229
  184. package/src/styles/_layout-rhythm.scss +0 -158
  185. package/src/styles/_legacy-aliases.scss +0 -212
  186. package/src/styles/_series-colors.scss +0 -24
  187. package/src/styles/_static-primitives.scss +0 -857
  188. package/src/styles/_typography.scss +0 -87
  189. package/src/styles/_variables.scss +0 -527
  190. package/src/styles/components/a11y.scss +0 -90
  191. package/src/styles/components/badges.scss +0 -102
  192. package/src/styles/components/extracted-utilities.scss +0 -459
  193. package/src/styles/components/footer.scss +0 -155
  194. package/src/styles/components/icon-heading.scss +0 -47
  195. package/src/styles/components/icon-inline.scss +0 -101
  196. package/src/styles/components/layout.scss +0 -59
  197. package/src/styles/components/utilities.scss +0 -131
  198. package/src/styles/components/viking-inspired.scss +0 -204
  199. package/src/styles/components/whitepaper-cta.scss +0 -130
  200. package/src/styles/components-bundle.scss +0 -9
  201. package/src/styles/components.scss +0 -442
  202. package/src/styles/deml-components.scss +0 -10
  203. package/src/styles/index.scss +0 -8
  204. package/src/styles/layout-shell.scss +0 -111
  205. package/src/styles/page-shell.scss +0 -859
  206. package/src/styles/static-navbar.scss +0 -1215
  207. package/src/styles/surfaces/backend.scss +0 -154
  208. package/src/styles/surfaces/docs-global.scss +0 -73
  209. package/src/styles/surfaces/docs-shell.scss +0 -437
  210. package/src/styles/surfaces/docs-showcase.scss +0 -1153
  211. package/src/styles/surfaces/marketing-cta.scss +0 -62
  212. package/src/styles/surfaces/marketing-docs-bento.scss +0 -67
  213. package/src/styles/surfaces/marketing-global.scss +0 -748
  214. package/src/styles/surfaces/marketing-landing.scss +0 -1526
  215. package/src/styles/surfaces/marketing-publication.scss +0 -535
  216. package/src/styles/surfaces/marketing-theme.scss +0 -14
  217. package/src/styles/surfaces/swagger-ui.scss +0 -922
  218. package/src/styles/tokens-export.scss +0 -18
  219. package/src/styles/tokens.scss +0 -5
  220. package/src/styles/viking-ui-bundle.scss +0 -23
  221. package/src/styles/viking-ui.scss +0 -270
  222. package/src/tokens/series-presets.ts +0 -15
  223. package/src/tokens/tailwind.preset.js +0 -209
  224. package/src/tokens/viking-tokens.json +0 -318
  225. package/src/viking-ui.spec.ts +0 -416
  226. package/src/web/badge/viking-badge-wc.ts +0 -116
  227. package/src/web/button/viking-button-wc.ts +0 -165
  228. package/src/web/callout/viking-callout-wc.ts +0 -105
  229. package/src/web/card/viking-card-wc.ts +0 -70
  230. package/src/web/core/base.ts +0 -56
  231. package/src/web/core/dom.ts +0 -53
  232. package/src/web/core/icons-inline.ts +0 -44
  233. package/src/web/core/styles.ts +0 -1261
  234. package/src/web/core/types.ts +0 -19
  235. package/src/web/field/viking-field-wc.ts +0 -154
  236. package/src/web/index.ts +0 -73
  237. package/src/web/input/viking-input-wc.ts +0 -211
  238. package/src/web/modal/viking-modal-wc.ts +0 -187
  239. package/src/web/search-palette/viking-search-palette-wc.ts +0 -494
  240. package/src/web/select/viking-select-wc.ts +0 -218
  241. package/src/web/suite-header/viking-suite-header-wc.ts +0 -729
  242. package/src/web/suite-search-palette/viking-suite-search-palette-wc.ts +0 -234
  243. package/src/web/theme-toggle/viking-theme-toggle-wc.ts +0 -139
  244. package/src/web/types.ts +0 -37
  245. package/src/web/web-components.spec.ts +0 -297
  246. package/src/web-components/index.ts +0 -1
@@ -1,90 +0,0 @@
1
- // Accessibility — WCAG 2.x / Section 508 oriented utilities.
2
-
3
- .sr-only,
4
- .visually-hidden {
5
- position: absolute !important;
6
- width: 0 !important;
7
- height: 0 !important;
8
- padding: 0 !important;
9
- margin: -1px !important;
10
- overflow: hidden !important;
11
- clip: rect(0, 0, 0, 0) !important;
12
- white-space: nowrap !important;
13
- border: 0 !important;
14
- }
15
-
16
- // Skip link: clipped when idle, visible only on keyboard focus (never shown to sighted users).
17
- .skip-link {
18
- position: absolute;
19
- top: 0;
20
- left: var(--space-2, 16px);
21
- z-index: 10000;
22
- padding: var(--space-1, 8px) var(--space-2, 16px);
23
- border-radius: var(--border-radius-sm, 8px);
24
- background-color: var(--black, var(--viking-black)) !important;
25
- color: var(--white, var(--viking-white-pure)) !important;
26
- text-decoration: none;
27
- font-weight: 600;
28
- font-size: max(16px, var(--base-font-size, 16px));
29
- line-height: 1.4;
30
- clip: rect(0 0 0 0);
31
- clip-path: inset(50%);
32
- width: 1px;
33
- height: 1px;
34
- overflow: hidden;
35
- white-space: nowrap;
36
- border: 0;
37
- }
38
-
39
- .skip-link:focus,
40
- .skip-link:focus-visible {
41
- clip: auto;
42
- clip-path: none;
43
- width: auto;
44
- height: auto;
45
- overflow: visible;
46
- white-space: normal;
47
- outline: var(--focus-ring-width, 3px) solid var(--focus-ring-color, var(--viking-accent));
48
- outline-offset: var(--focus-ring-offset, 2px);
49
- }
50
-
51
- a:focus-visible,
52
- button:focus-visible,
53
- input:focus-visible,
54
- textarea:focus-visible,
55
- select:focus-visible,
56
- [role='button']:focus-visible,
57
- [role='tab']:focus-visible,
58
- [tabindex]:not([tabindex='-1']):focus-visible {
59
- outline: var(--focus-ring-width) solid var(--focus-ring-color) !important;
60
- outline-offset: var(--focus-ring-offset) !important;
61
- }
62
-
63
- // Viking shells own the focus ring on the control border — not the inner native input.
64
- .viking-input-shell input:focus,
65
- .viking-input-shell input:focus-visible,
66
- .viking-textarea-shell textarea:focus,
67
- .viking-textarea-shell textarea:focus-visible {
68
- outline: none !important;
69
- }
70
-
71
- @media (prefers-reduced-motion: reduce) {
72
- *,
73
- ::before,
74
- ::after {
75
- animation-duration: 0.01ms !important;
76
- animation-iteration-count: 1 !important;
77
- transition-duration: 0.01ms !important;
78
- scroll-behavior: auto !important;
79
- }
80
- }
81
-
82
- @media (forced-colors: active) {
83
- a:focus-visible,
84
- button:focus-visible,
85
- input:focus-visible,
86
- textarea:focus-visible,
87
- select:focus-visible {
88
- outline: 3px solid CanvasText !important;
89
- }
90
- }
@@ -1,102 +0,0 @@
1
- // Unified status chips / pills / badges — use .status-badge-premium + semantic modifier.
2
-
3
- .status-badge-premium {
4
- display: inline-flex;
5
- align-items: center;
6
- gap: var(--space-1);
7
- padding: var(--space-1) var(--space-2);
8
- border-radius: var(--border-radius-xl);
9
- font-weight: 600;
10
- font-size: 1rem;
11
- line-height: 1.2;
12
- letter-spacing: 0.03em;
13
- text-transform: capitalize;
14
- border: 1px solid transparent;
15
- white-space: nowrap;
16
- text-decoration: none;
17
-
18
- .status-dot,
19
- .status-dot-greenblue {
20
- width: var(--space-1);
21
- height: var(--space-1);
22
- border-radius: 50%;
23
- flex-shrink: 0;
24
- background-color: currentColor;
25
- }
26
-
27
- &.operational,
28
- &.resolved,
29
- &.success,
30
- &.low,
31
- &.compliant {
32
- background: color-mix(in srgb, var(--color-success) 8%, transparent);
33
- color: var(--color-success);
34
- border-color: color-mix(in srgb, var(--color-success) 15%, transparent);
35
- }
36
-
37
- &.degraded,
38
- &.warning,
39
- &.medium,
40
- &.investigating,
41
- &.identified {
42
- background: color-mix(in srgb, var(--color-warning) 8%, transparent);
43
- color: var(--color-warning);
44
- border-color: color-mix(in srgb, var(--color-warning) 15%, transparent);
45
- }
46
-
47
- &.outage,
48
- &.critical,
49
- &.high,
50
- &.error {
51
- background: color-mix(in srgb, var(--color-error) 8%, transparent);
52
- color: var(--color-error);
53
- border-color: color-mix(in srgb, var(--color-error) 15%, transparent);
54
- }
55
-
56
- &.info,
57
- &.neutral {
58
- background: color-mix(in srgb, var(--color-info) 10%, transparent);
59
- color: var(--color-info);
60
- border-color: color-mix(in srgb, var(--color-info) 15%, transparent);
61
- }
62
-
63
- &.primary {
64
- background: color-mix(in srgb, var(--color-primary) 12%, transparent);
65
- color: var(--color-primary-container);
66
- border-color: color-mix(in srgb, var(--color-primary) 20%, transparent);
67
- }
68
-
69
- html[data-theme='light'] &.primary {
70
- color: var(--color-primary);
71
- }
72
-
73
- &--compact {
74
- padding: 8px 12px;
75
- font-size: var(--ui-font-size, 14px);
76
- }
77
-
78
- &.pro-verified {
79
- background: color-mix(in srgb, var(--viking-gold-500) 14%, transparent);
80
- color: var(--viking-gold-500);
81
- border-color: color-mix(in srgb, var(--viking-gold-500) 28%, transparent);
82
- text-transform: none;
83
- letter-spacing: 0.02em;
84
-
85
- mat-icon,
86
- .material-icons,
87
- viking-icon,
88
- viking-app-icon {
89
- font-size: var(--viking-icon-size-md, var(--base-font-size));
90
- width: var(--viking-icon-size-md, var(--base-font-size));
91
- height: var(--viking-icon-size-md, var(--base-font-size));
92
- line-height: var(--viking-icon-size-md, var(--base-font-size));
93
- flex-shrink: 0;
94
- }
95
- }
96
-
97
- html[data-theme='light'] &.pro-verified {
98
- color: var(--viking-crimson-500);
99
- border-color: color-mix(in srgb, var(--viking-crimson-500) 28%, transparent);
100
- background: color-mix(in srgb, var(--viking-crimson-500) 10%, transparent);
101
- }
102
- }
@@ -1,459 +0,0 @@
1
- // Legacy extracted utility classes (hash-suffixed). Prefer semantic .u-* utilities in utilities.scss.
2
- // THEME.md palette only — no decorative gradients on surfaces.
3
-
4
- .u-style-e24d2c {
5
- color: var(--white);
6
- background-color: var(--black);
7
- }
8
-
9
- .u-style-328aaa {
10
- margin: var(--space-2) var(--space-2) 0;
11
- }
12
-
13
- .u-style-ef4080 {
14
- overflow-y: auto;
15
- }
16
-
17
- .u-style-be70d9,
18
- .u-style-199b6f {
19
- width: 100%;
20
- }
21
-
22
- .u-style-541ffc {
23
- justify-content: center;
24
- }
25
-
26
- .u-style-9150aa {
27
- justify-content: flex-start;
28
- }
29
-
30
- .u-style-ab0dc9,
31
- .u-style-17e119 {
32
- display: flex;
33
- justify-content: center;
34
- gap: var(--space-1);
35
- font-size: 1rem;
36
- color: var(--text-muted);
37
- margin-bottom: var(--space-3);
38
- }
39
-
40
- .u-style-87f7f1 {
41
- max-width: 500px;
42
- margin-left: auto;
43
- margin-right: auto;
44
- }
45
-
46
- .u-style-318da3,
47
- .u-style-2b2c9a {
48
- display: flex;
49
- justify-content: space-between;
50
- font-size: 1rem;
51
- font-weight: 600;
52
- color: var(--text-muted);
53
- margin-bottom: var(--space-1);
54
- }
55
-
56
- .u-style-c3f737 {
57
- color: var(--color-primary-container);
58
- }
59
-
60
- .u-style-f48aaf,
61
- .u-style-cf687c {
62
- width: 100%;
63
- height: var(--space-1);
64
- background-color: var(--hover-color);
65
- border: 1px solid var(--border);
66
- border-radius: var(--border-radius-sm);
67
- overflow: hidden;
68
- position: relative;
69
- }
70
-
71
- .u-style-43b1d2,
72
- .u-style-f9a078 {
73
- position: absolute;
74
- left: 0;
75
- top: 0;
76
- bottom: 0;
77
- width: var(--progress, 0%);
78
- background-color: var(--color-primary);
79
- transition: width 0.3s ease-out;
80
- }
81
-
82
- .u-style-a1eb91,
83
- .u-style-9c7405 {
84
- display: flex;
85
- justify-content: center;
86
- align-items: center;
87
- padding: var(--space-5) 0;
88
- animation: fade-in 0.8s ease-out;
89
- }
90
-
91
- .u-style-5e9329,
92
- .u-style-54df94 {
93
- width: 100%;
94
- max-width: 460px;
95
- aspect-ratio: 3 / 4.2;
96
- background-color: var(--card-bg);
97
- border: 1px solid var(--border);
98
- border-radius: var(--space-1) var(--space-2) var(--space-2) var(--space-1);
99
- box-shadow: var(--shadow-md);
100
- position: relative;
101
- overflow: hidden;
102
- display: flex;
103
- flex-direction: column;
104
- align-items: center;
105
- justify-content: center;
106
- transition: transform 0.3s ease;
107
- }
108
-
109
- .u-style-5f0fbc,
110
- .u-style-bdb450 {
111
- position: absolute;
112
- left: 0;
113
- top: 0;
114
- bottom: 0;
115
- width: 28px;
116
- background-color: color-mix(in srgb, var(--black) 50%, transparent);
117
- z-index: 10;
118
- border-right: 1px solid color-mix(in srgb, var(--black) 20%, transparent);
119
- }
120
-
121
- .u-style-604391,
122
- .u-style-34ef33 {
123
- position: absolute;
124
- left: 28px;
125
- top: 0;
126
- bottom: 0;
127
- width: 4px;
128
- background-color: color-mix(in srgb, var(--black) 10%, transparent);
129
- z-index: 9;
130
- }
131
-
132
- .u-style-81c40e,
133
- .u-style-ec5da2 {
134
- display: flex;
135
- flex-direction: column;
136
- align-items: center;
137
- padding: var(--space-6) var(--space-4) var(--space-5) var(--space-6);
138
- height: 100%;
139
- width: 100%;
140
- text-align: center;
141
- background-color: var(--card-bg);
142
- }
143
-
144
- .u-style-ea280e,
145
- .u-style-10c394 {
146
- margin-bottom: auto;
147
- letter-spacing: 0.15em;
148
- font-size: 1rem;
149
- font-weight: 700;
150
- color: var(--text-muted);
151
- text-transform: uppercase;
152
- }
153
-
154
- .u-style-b166d9,
155
- .u-style-5c1531 {
156
- font-size: 160px;
157
- height: 160px;
158
- width: 160px;
159
- color: var(--color-primary);
160
- filter: drop-shadow(0 var(--space-1) var(--space-2) color-mix(in srgb, var(--black) 20%, transparent));
161
- margin: var(--space-4) 0;
162
- }
163
-
164
- .u-style-59eab0,
165
- .u-style-c46697 {
166
- font-size: 2.25rem;
167
- font-weight: 800;
168
- line-height: 1.15;
169
- margin-bottom: var(--space-2);
170
- letter-spacing: -0.02em;
171
- }
172
-
173
- .u-style-547d55,
174
- .u-style-85912f {
175
- font-size: 1rem;
176
- color: var(--text-muted);
177
- font-weight: 500;
178
- font-style: italic;
179
- }
180
-
181
- .u-style-5440df,
182
- .u-style-fe3035 {
183
- margin-top: auto;
184
- padding-top: var(--space-4);
185
- border-top: 1px solid var(--border);
186
- width: 100%;
187
- display: flex;
188
- justify-content: space-between;
189
- align-items: center;
190
- }
191
-
192
- .u-style-018404 {
193
- font-size: 1rem;
194
- font-weight: 600;
195
- color: var(--text-color);
196
- }
197
-
198
- .u-style-29066b,
199
- .u-style-19122e {
200
- font-size: 1rem;
201
- font-weight: 700;
202
- color: var(--color-primary);
203
- letter-spacing: 0.1em;
204
- }
205
-
206
- .u-style-fef210 {
207
- margin-top: var(--space-6);
208
- }
209
-
210
- .u-style-7bafc4 {
211
- margin-bottom: var(--space-3);
212
- max-width: 320px;
213
- }
214
-
215
- .u-style-324768 {
216
- letter-spacing: -0.02em;
217
- font-weight: bold;
218
- }
219
-
220
- .u-style-1e3398 {
221
- margin-top: var(--space-2);
222
- margin-bottom: var(--space-1);
223
- display: flex;
224
- gap: var(--space-1);
225
- flex-wrap: wrap;
226
- align-items: center;
227
- }
228
-
229
- .u-style-bd64a0 {
230
- color: var(--text-muted);
231
- font-size: 1rem;
232
- font-weight: 600;
233
- text-transform: uppercase;
234
- letter-spacing: 0.05em;
235
- margin-right: var(--space-1);
236
- }
237
-
238
- .u-style-c120b8 {
239
- background: var(--color-surface);
240
- border: 1px solid var(--border);
241
- color: var(--text-color);
242
- padding: 2px var(--space-2);
243
- border-radius: var(--viking-radius-pill, 999px);
244
- text-transform: capitalize;
245
- font-size: 1rem;
246
- font-weight: 500;
247
- }
248
-
249
- .u-style-019b32 {
250
- position: relative;
251
- }
252
-
253
- .u-style-2aad06 {
254
- height: 360px !important;
255
- width: 100%;
256
- display: block;
257
- border-radius: var(--border-radius-md);
258
- }
259
-
260
- .u-style-c5a969 {
261
- word-break: break-all;
262
- }
263
-
264
- .u-style-ab4518 {
265
- border-color: var(--color-primary);
266
- background-color: color-mix(in srgb, var(--color-primary) 8%, transparent);
267
- }
268
-
269
- .u-style-fa919b {
270
- color: var(--color-primary);
271
- }
272
-
273
- .u-style-4d3ef5,
274
- .u-style-58adc5 {
275
- display: inline-flex;
276
- align-items: center;
277
- gap: var(--space-1);
278
- background: var(--viking-surface);
279
- border: 1px solid var(--border);
280
- padding: var(--space-1) var(--space-2);
281
- border-radius: var(--border-radius-pill);
282
- margin-bottom: var(--space-3);
283
- box-shadow: var(--shadow-sm);
284
- }
285
-
286
- .u-style-b94f9d,
287
- .u-style-486a44 {
288
- font-size: var(--base-font-size);
289
- font-weight: 600;
290
- letter-spacing: 0.05em;
291
- color: var(--text-color);
292
- text-transform: uppercase;
293
- }
294
-
295
- .u-style-7f7d6d {
296
- color: var(--text-muted);
297
- line-height: 1.6;
298
- margin: 0;
299
- font-size: 1.05rem;
300
- }
301
-
302
- .u-style-efd290 {
303
- color: var(--text-muted);
304
- line-height: 1.6;
305
- margin: 0;
306
- }
307
-
308
- .u-style-5ab468 {
309
- margin-top: auto;
310
- }
311
-
312
- .u-style-490bad,
313
- .u-style-358aff {
314
- color: var(--text-color);
315
- line-height: 1.8;
316
- margin: 0;
317
- padding-left: var(--space-2);
318
- display: flex;
319
- flex-direction: column;
320
- gap: var(--space-1);
321
- }
322
-
323
- .u-style-3010d8 {
324
- color: var(--color-error);
325
- }
326
-
327
- .u-style-92147e,
328
- .u-style-363cdb {
329
- display: flex;
330
- align-items: center;
331
- justify-content: center;
332
- gap: var(--space-1);
333
- flex-wrap: wrap;
334
- }
335
-
336
- .u-style-fbce95 {
337
- border-bottom: none;
338
- }
339
-
340
- .u-style-d37906 {
341
- height: var(--space-2);
342
- }
343
-
344
- .u-style-59d8eb,
345
- .u-style-315c1f {
346
- font-size: var(--base-font-size);
347
- width: var(--base-font-size);
348
- height: var(--base-font-size);
349
- }
350
-
351
- .u-style-315c1f {
352
- color: var(--text-muted);
353
- }
354
-
355
- .u-style-69556e,
356
- .u-style-e3ae3d {
357
- display: flex;
358
- flex-direction: row;
359
- align-items: center;
360
- gap: var(--space-1);
361
- justify-content: center;
362
- flex-wrap: wrap;
363
- }
364
-
365
- .u-style-685a53 {
366
- width: 100%;
367
- padding: var(--space-1);
368
- border-radius: var(--border-radius-sm);
369
- background: var(--viking-surface);
370
- color: var(--text-color);
371
- border: 1px solid var(--border);
372
- }
373
-
374
- .u-style-8f2b4f {
375
- vertical-align: middle;
376
- margin-right: var(--space-1);
377
- }
378
-
379
- .u-style-224b51 {
380
- display: none;
381
- }
382
-
383
- .u-style-315505 {
384
- margin-bottom: var(--space-3);
385
- display: flex;
386
- flex-direction: column;
387
- gap: var(--space-2);
388
- border: 1px solid var(--color-primary);
389
- background: color-mix(in srgb, var(--color-primary) 5%, transparent);
390
- padding: var(--space-2);
391
- border-radius: var(--border-radius-md);
392
- }
393
-
394
- .u-style-0f195f {
395
- display: flex;
396
- align-items: flex-start;
397
- gap: var(--space-2);
398
- }
399
-
400
- .u-style-6784e6 {
401
- color: var(--color-primary);
402
- font-size: var(--space-3);
403
- width: var(--space-3);
404
- height: var(--space-3);
405
- }
406
-
407
- .u-style-04b067 {
408
- color: var(--text-color);
409
- }
410
-
411
- .u-style-39bd7e {
412
- color: var(--text-muted);
413
- display: block;
414
- margin-top: var(--space-1);
415
- }
416
-
417
- .u-style-197c13 {
418
- border-top: 1px solid var(--border);
419
- padding-top: var(--space-2);
420
- }
421
-
422
- .u-style-4d9a87 {
423
- margin: 0 0 var(--space-2) 0;
424
- color: var(--text-color);
425
- font-size: 1.1rem;
426
- font-weight: 600;
427
- }
428
-
429
- .u-style-bb5495 {
430
- display: flex;
431
- flex-direction: column;
432
- gap: var(--space-2);
433
- }
434
-
435
- .u-style-eb2b00 {
436
- display: flex;
437
- gap: var(--space-2);
438
- flex-wrap: wrap;
439
- }
440
-
441
- .u-style-a7e5d2 {
442
- flex: 1;
443
- min-width: 200px;
444
- }
445
-
446
- .u-style-a1ae42 {
447
- align-self: flex-start;
448
- }
449
-
450
- .mode-tag,
451
- .logs-title,
452
- .section-tag,
453
- .hud-subtitle,
454
- .hud-select,
455
- .stat-unit,
456
- .chart-custom-title,
457
- .chart-custom-trend {
458
- font-size: max(16px, var(--base-font-size, 16px));
459
- }