@mjsz-vbr-elements/shared 2.32.0 → 2.33.1

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 (61) hide show
  1. package/assets/css/base/borders.css +8 -0
  2. package/assets/css/base/color.primary.css +17 -0
  3. package/assets/css/base/color.secondary.css +11 -0
  4. package/assets/css/base/ease.css +30 -0
  5. package/assets/css/base/font.css +22 -0
  6. package/assets/css/base/shadow.css +49 -0
  7. package/assets/css/base/sizes.css +21 -0
  8. package/assets/css/components/accordion.css +86 -0
  9. package/assets/css/components/avatar.css +29 -0
  10. package/assets/css/components/badge.css +54 -0
  11. package/assets/css/components/card.css +22 -0
  12. package/assets/css/components/countdown.css +190 -0
  13. package/assets/css/components/definition-list.css +69 -0
  14. package/assets/css/components/double-bar.css +78 -0
  15. package/assets/css/components/error-notice.css +26 -0
  16. package/assets/css/components/floating-content.css +74 -0
  17. package/assets/css/components/form-field.css +74 -0
  18. package/assets/css/components/game-center-game-data.css +91 -0
  19. package/assets/css/components/game-center-timeline.css +665 -0
  20. package/assets/css/components/game-center.css +275 -0
  21. package/assets/css/components/game-item.css +35 -0
  22. package/assets/css/components/games-timeline.css +280 -0
  23. package/assets/css/components/hero.css +51 -0
  24. package/assets/css/components/icon-button.css +30 -0
  25. package/assets/css/components/list.css +138 -0
  26. package/assets/css/components/loading-indicator.css +8 -0
  27. package/assets/css/components/paginator.css +63 -0
  28. package/assets/css/components/playoffs.css +81 -0
  29. package/assets/css/components/progress.css +67 -0
  30. package/assets/css/components/responsive-table.css +13 -0
  31. package/assets/css/components/standings-selector.css +79 -0
  32. package/assets/css/components/table.css +205 -0
  33. package/assets/css/components/tabs.css +111 -0
  34. package/assets/css/components/timezone-selector.css +19 -0
  35. package/assets/css/components/top-list.css +97 -0
  36. package/assets/css/components/typography.css +41 -0
  37. package/assets/css/core/normalize.css +94 -0
  38. package/assets/css/core/utils.css +174 -0
  39. package/assets/css/core.css +22 -0
  40. package/assets/css/theme.css +63 -0
  41. package/dist/icons/index.js +414 -3
  42. package/package.json +8 -9
  43. package/dist/icons/IconArrowDown.js +0 -18
  44. package/dist/icons/IconArrowUp.js +0 -18
  45. package/dist/icons/IconBroadcast.js +0 -39
  46. package/dist/icons/IconChange.js +0 -19
  47. package/dist/icons/IconHockeyPuck.js +0 -19
  48. package/dist/icons/IconLaunch.js +0 -18
  49. package/dist/icons/IconLeft.js +0 -20
  50. package/dist/icons/IconMenu.js +0 -18
  51. package/dist/icons/IconMore.js +0 -34
  52. package/dist/icons/IconRight.js +0 -20
  53. package/dist/icons/IconSheet.js +0 -28
  54. package/dist/icons/IconSort.js +0 -24
  55. package/dist/icons/IconSortAsc.js +0 -24
  56. package/dist/icons/IconSortDesc.js +0 -24
  57. package/dist/icons/IconStar.js +0 -23
  58. package/dist/icons/IconTimer.js +0 -19
  59. package/dist/icons/IconWarning.js +0 -32
  60. package/dist/icons/IconWhistle.js +0 -15
  61. package/dist/icons/IconYoutube.js +0 -21
@@ -0,0 +1,138 @@
1
+ @layer components.variables {
2
+ :where(:host) {
3
+ --mvw-list-item-font-size: var(--font-size-400);
4
+ --mvw-list-item-color: light-dark(var(--mvw-color-primary-500), var(--mvw-color-primary-200));
5
+ --mvw-list-item-hover-color: light-dark(var(--mvw-color-primary-800), var(--mvw-color-primary-50));
6
+ --mvw-list-item-hover-bg-color: light-dark(var(--mvw-color-primary-50), var(--mvw-color-primary-900));
7
+ --mvw-list-item-selected-color: light-dark(var(--mvw-color-secondary-700), var(--mvw-color-secondary-300));
8
+ }
9
+ }
10
+ @layer components {
11
+ :where(.list) {
12
+ list-style: none;
13
+ margin: 0;
14
+ padding: var(--size-4);
15
+
16
+ @media (pointer: coarse) {
17
+ &,
18
+ * {
19
+ user-select: none;
20
+ }
21
+ }
22
+
23
+ :where(li, option, [role='group'] > label) {
24
+ align-items: center;
25
+ /* background: var(--_bg-color) var(--ripple, none); */
26
+ display: flex;
27
+ /* font-size: var(--font-size-sm); */
28
+ gap: var(--size-4);
29
+ isolation: isolate;
30
+ min-block-size: 40px;
31
+ /* padding: var(--size-4) var(--size-6); */
32
+ position: relative;
33
+
34
+ &::before {
35
+ display: none; /* removing checkmark from option */
36
+ }
37
+
38
+ * {
39
+ font-size: inherit;
40
+ }
41
+
42
+ /* Clickable list item */
43
+ &:has(> a, > button, > label) {
44
+ background: transparent;
45
+ display: block;
46
+ min-block-size: auto;
47
+ padding: 0;
48
+ }
49
+
50
+ /* Select option */
51
+ /* &:where(option) {
52
+ align-items: center;
53
+ background-color: var(--_bg-color);
54
+ color: inherit;
55
+ cursor: pointer;
56
+ display: flex;
57
+ gap: var(--size-8);
58
+ inline-size: 100%;
59
+ margin: 0;
60
+ min-block-size: 40px;
61
+ padding: var(--size-4) var(--size-8);
62
+ text-align: start;
63
+ text-decoration: none;
64
+ z-index: 0;
65
+
66
+ &:hover {
67
+ background-color: light-dark(var(--gray-2), var(--gray-14));
68
+ }
69
+
70
+ &:checked {
71
+ background-color: oklch(from var(--primary) l c h / 30%);
72
+ }
73
+ } */
74
+
75
+ & > a,
76
+ & > button,
77
+ & > label {
78
+ align-items: center;
79
+ color: var(--mvw-list-item-color);
80
+ cursor: pointer;
81
+ display: flex;
82
+ gap: var(--size-8);
83
+ inline-size: 100%;
84
+ margin: 0;
85
+ outline-offset: -1px;
86
+ font-size: var(--mvw-list-item-font-size);
87
+ padding: var(--size-4) var(--size-6);
88
+ text-align: start;
89
+ text-decoration: none;
90
+ border-radius: var(--radius-2);
91
+ z-index: 0;
92
+
93
+ &:focus,
94
+ &:focus-visible,
95
+ &:hover {
96
+ color: var(--mvw-list-item-hover-color);
97
+ background-color: var(--mvw-list-item-hover-bg-color);
98
+ }
99
+
100
+ &[aria-selected='true'] {
101
+ color: var(--mvw-list-item-selected-color);
102
+ }
103
+
104
+ /* Text */
105
+ .text {
106
+ flex: 1;
107
+ line-height: 1.6;
108
+
109
+ :where(h1, h2, h3, h4, h5, h6, p, span) {
110
+ color: inherit;
111
+ font-weight: 400;
112
+ }
113
+
114
+ p + p {
115
+ font-size: var(--font-size-100);
116
+ }
117
+ }
118
+
119
+ /* Leading content */
120
+ .start {
121
+ align-self: center;
122
+ align-items: center;
123
+ display: grid;
124
+ z-index: 1;
125
+
126
+ /* &:has(svg) {
127
+ max-inline-size: calc(var(--mvw-list-item-font-size) - 10px);
128
+ } */
129
+
130
+ svg {
131
+ /* padding-block-start: 0.125rem; */
132
+ inline-size: var(--mvw-list-item-font-size);
133
+ }
134
+ }
135
+ }
136
+ }
137
+ }
138
+ }
@@ -0,0 +1,8 @@
1
+ @layer components {
2
+ :where(.loading-indicator) {
3
+ padding: var(--size-16);
4
+ font-weight: 600;
5
+ color: var(--mvw-loading-indicator-text-color, var(--mvw-text-toned));
6
+ text-align: center;
7
+ }
8
+ }
@@ -0,0 +1,63 @@
1
+ @layer components.variables {
2
+ :where(:host) {
3
+ --mvw-paginator-color: light-dark(var(--mvw-color-primary-500), var(--mvw-color-primary-400));
4
+ --mvw-paginator-bg-color: light-dark(var(--mvw-color-white), var(--mvw-color-primary-950));
5
+ --mvw-paginator-hover-color: light-dark(var(--mvw-color-primary-700), var(--mvw-color-primary-300));
6
+ --mvw-paginator-hover-bg-color: light-dark(var(--mvw-color-primary-100), var(--mvw-color-primary-900));
7
+ --mvw-paginator-border-color: light-dark(var(--mvw-color-primary-100), var(--mvw-color-primary-700));
8
+ --mvw-paginator-active-color: light-dark(var(--mvw-color-white), var(--mvw-color-black));
9
+ --mvw-paginator-active-bg-color: light-dark(var(--mvw-color-primary-900), var(--mvw-color-primary-50));
10
+ --mvw-paginator-disabled-color: light-dark(var(--mvw-color-primary-200), var(--mvw-color-primary-600));
11
+ }
12
+ }
13
+
14
+ @layer components {
15
+ :where(.paginator) {
16
+ display: flex;
17
+ flex-direction: row;
18
+ list-style-type: none;
19
+ margin: 10px 0;
20
+ padding: 0;
21
+
22
+ button,
23
+ div {
24
+ display: flex;
25
+ align-items: center;
26
+ justify-content: center;
27
+ padding: var(--size-6) var(--size-12); /* 6px 12px; */
28
+ text-decoration: none;
29
+ cursor: pointer;
30
+ color: var(--mvw-paginator-color);
31
+ border: 1px solid var(--mvw-paginator-border-color);
32
+ background-color: var(--mvw-paginator-bg-color);
33
+ margin-left: -1px;
34
+
35
+ .icon {
36
+ width: var(--size-16);
37
+ height: var(--size-16);
38
+ margin: 0 -4px;
39
+ max-inline-size: var(--size-16);
40
+ }
41
+
42
+ &:hover:not(&.is-disabled, &.is-active) {
43
+ color: var(--mvw-paginator-hover-color);
44
+ background-color: var(--mvw-paginator-hover-bg-color);
45
+ }
46
+
47
+ &:disabled,
48
+ &.is-disabled {
49
+ color: var(--mvw-paginator-disabled-color);
50
+ background-color: var(--mvw-paginator-bg-color);
51
+ pointer-events: none;
52
+ cursor: default;
53
+ }
54
+
55
+ &.is-active {
56
+ color: var(--mvw-paginator-active-color);
57
+ background-color: var(--mvw-paginator-active-bg-color);
58
+ border-color: var(--mvw-paginator-active-bg-color);
59
+ cursor: default;
60
+ }
61
+ }
62
+ }
63
+ }
@@ -0,0 +1,81 @@
1
+ @layer components.variables {
2
+ :where(:host) {
3
+ --mvw-playoffs-header-bg: light-dark(var(--mvw-color-primary-800), var(--mvw-color-primary-300));
4
+ --mvw-playoffs-header-color: light-dark(var(--mvw-color-primary-100), var(--mvw-color-primary-800));
5
+ --mvw-playoffs-header-size: var(--font-size-500);
6
+ --mvw-playoffs-details-bg: light-dark(var(--mvw-color-primary-100), var(--mvw-color-primary-800));
7
+ }
8
+ }
9
+
10
+ @layer components {
11
+ :where(.playoffs) {
12
+ --_logo-size: 70px;
13
+
14
+ .section-title {
15
+ padding: var(--size-8);
16
+ text-align: center;
17
+ font-size: var(--mvw-playoffs-header-size);
18
+ font-weight: 700;
19
+ color: var(--mvw-playoffs-header-color);
20
+ background-color: var(--mvw-playoffs-header-bg);
21
+ }
22
+
23
+ .section-details {
24
+ display: grid;
25
+ align-items: center;
26
+ justify-items: center;
27
+ gap: var(--size-16);
28
+ padding: var(--size-16);
29
+ background-color: var(--mvw-playoffs-details-bg);
30
+
31
+ @media (width > 576px) {
32
+ grid-template-columns:
33
+ 1fr fit-content(var(--_logo-size)) fit-content(var(--_logo-size)) fit-content(var(--_logo-size))
34
+ 1fr;
35
+ }
36
+
37
+ .is-result {
38
+ font-size: var(--mvw-playoffs-reasult-size, calc(var(--font-size-500) * 4));
39
+ font-weight: 700;
40
+ text-align: center;
41
+ color: var(--mvw-text-highlighted);
42
+ }
43
+
44
+ .is-team-name {
45
+ font-size: var(--font-size-700);
46
+ font-weight: 700;
47
+ color: var(--mvw-text-highlighted);
48
+ }
49
+ }
50
+
51
+ .table-grid {
52
+ display: grid;
53
+ grid-template-columns:
54
+ 70px 160px 60px minmax(160px, 1fr) minmax(40px, 60px) 5ch minmax(160px, 1fr)
55
+ minmax(180px, 1.2fr);
56
+ color: var(--mvw-table-color);
57
+
58
+ &:nth-child(odd) > div {
59
+ background-color: var(
60
+ --mvw-table-stripped-bg-color,
61
+ light-dark(var(--mvw-color-primary-50), var(--mvw-color-primary-900))
62
+ );
63
+ }
64
+
65
+ &:hover > div {
66
+ background-color: var(
67
+ --mvw-table-hover-bg-color,
68
+ light-dark(var(--mvw-color-secondary-100), var(--mvw-color-secondary-400))
69
+ );
70
+ }
71
+
72
+ &.is-optional {
73
+ opacity: 0.5;
74
+ }
75
+
76
+ > div {
77
+ padding: var(--size-8);
78
+ }
79
+ }
80
+ }
81
+ }
@@ -0,0 +1,67 @@
1
+ @layer components.variables {
2
+ :where(:host) {
3
+ --mvw-progress-height: 10px;
4
+ --mvw-progress-border-radius: 5px;
5
+ --mvw-progress-bg-color: light-dark(var(--mvw-color-primary-50), var(--mvw-color-primary-900));
6
+ --mvw-progress-bar-color: var(--mvw-color-live);
7
+ --mvw-progress-bar-stripe-color: rgba(from var(--mvw-color-white) r g b / 20%);
8
+ --mvw-progress-bar-stripe-angle: 45deg;
9
+ }
10
+ }
11
+
12
+ @layer components {
13
+ :where(.progress) {
14
+ display: flex;
15
+ height: var(--mvw-progress-height, 10px);
16
+ overflow: hidden;
17
+ /* font-size: var(--font-size-50); */
18
+ background-color: var(--mvw-progress-bg-color);
19
+ border-radius: var(--mvw-progress-border-radius);
20
+
21
+ .progress-bar {
22
+ display: flex;
23
+ flex-direction: column;
24
+ justify-content: center;
25
+ overflow: hidden;
26
+ width: 100%;
27
+ color: var(--mvw-color-white);
28
+ text-align: center;
29
+ white-space: nowrap;
30
+ background-color: var(--mvw-progress-bar-color);
31
+ transition: width 1s ease;
32
+ }
33
+
34
+ .progress-bar-stripped {
35
+ --color: var(--mvw-progress-bar-stripe-color);
36
+ --angle: var(--mvw-progress-bar-stripe-angle);
37
+
38
+ background-image: linear-gradient(
39
+ var(--angle),
40
+ var(--color) 25%,
41
+ transparent 25%,
42
+ transparent 50%,
43
+ var(--color) 50%,
44
+ var(--color) 75%,
45
+ transparent 75%,
46
+ transparent
47
+ );
48
+
49
+ background-size: var(--mvw-progress-height) var(--mvw-progress-height);
50
+ background-repeat: repeat;
51
+ }
52
+
53
+ .progress-bar-animated {
54
+ animation: 1s linear infinite progress-bar-stripes;
55
+
56
+ @media (prefers-reduced-motion: reduce) {
57
+ animation: none;
58
+ }
59
+ }
60
+ }
61
+
62
+ @keyframes progress-bar-stripes {
63
+ 0% {
64
+ background-position-x: var(--mvw-progress-height);
65
+ }
66
+ }
67
+ }
@@ -0,0 +1,13 @@
1
+ @layer components {
2
+ :where(.table-responsive) {
3
+ container-name: table-wrapper;
4
+ container-type: inline-size;
5
+
6
+ width: 100%;
7
+ overflow-x: auto;
8
+
9
+ :where(table) {
10
+ width: 100%;
11
+ }
12
+ }
13
+ }
@@ -0,0 +1,79 @@
1
+ @layer components.variables {
2
+ :where(:host) {
3
+ --mvw-standings-selector-title-size: var(--font-size-500);
4
+ --mvw-standings-selector-title-color: light-dark(var(--mvw-color-primary-700), var(--mvw-color-primary-300));
5
+ --mvw-standings-selector-title-transform: none;
6
+ --mvw-standings-selector-title-padding: 0 0.625em 0.5625em;
7
+ --mvw-standings-selector-title-bg-color: transparent;
8
+
9
+ --mvw-standings-selector-section-title-bg: light-dark(var(--mvw-color-primary-50), var(--mvw-color-primary-900));
10
+ --mvw-standings-selector-section-title-size: var(--font-size-400);
11
+ --mvw-standings-selector-section-title-color: light-dark(
12
+ var(--mvw-color-primary-700),
13
+ var(--mvw-color-primary-300)
14
+ );
15
+ --mvw-standings-selector-section-title-padding: var(--size-8);
16
+ --mvw-standings-selector-section-logo-size: 30px;
17
+ }
18
+ }
19
+
20
+ @layer components {
21
+ :where(.standings-selector) {
22
+ .standings-selector-title {
23
+ display: grid;
24
+ grid-template-columns: 1fr auto;
25
+ align-items: center;
26
+ padding: var(--mvw-standings-selector-title-padding);
27
+ text-transform: var(--mvw-standings-selector-title-transform);
28
+ font-size: var(--mvw-standings-selector-title-size);
29
+ color: var(--mvw-standings-selector-title-color);
30
+ background: var(--mvw-standings-selector-title-bg-color);
31
+ }
32
+
33
+ .is-title-text {
34
+ svg {
35
+ height: 16px;
36
+ vertical-align: middle;
37
+ }
38
+ }
39
+
40
+ :where(.playoffs) {
41
+ ul {
42
+ display: grid;
43
+ grid-template-columns:
44
+ minmax(0, 1fr) var(--mvw-standings-selector-section-logo-size) auto var(
45
+ --mvw-standings-selector-section-logo-size
46
+ )
47
+ minmax(0, 1fr);
48
+ gap: 12px;
49
+ align-items: center;
50
+ list-style: none;
51
+ margin: 0;
52
+ padding: 0;
53
+ }
54
+
55
+ li {
56
+ padding-block: 8px;
57
+
58
+ &:first-of-type {
59
+ text-align: end;
60
+ }
61
+ }
62
+
63
+ img {
64
+ display: block;
65
+ width: 100%;
66
+ aspect-ratio: 1;
67
+ }
68
+
69
+ .section-title {
70
+ padding: var(--mvw-standings-selector-section-title-padding);
71
+ color: var(--mvw-standings-selector-section-title-color);
72
+ background-color: var(--mvw-standings-selector-section-title-bg);
73
+ font-size: var(--mvw-standings-selector-section-title-size);
74
+ font-weight: 700;
75
+ text-align: center;
76
+ }
77
+ }
78
+ }
79
+ }
@@ -0,0 +1,205 @@
1
+ @layer components.variables {
2
+ :where(:host) {
3
+ /* Table */
4
+ --mvw-table-header-font-size: var(--font-size-200);
5
+ --mvw-table-default-column-width: 40px;
6
+ --mvw-table-default-bg-color: light-dark(var(--mvw-color-white), var(--mvw-color-primary-900));
7
+ --mvw-table-color: light-dark(var(--mvw-color-primary-800), var(--mvw-color-primary-200));
8
+ --mvw-table-neutral-color: light-dark(var(--mvw-color-primary-300), var(--mvw-color-primary-700));
9
+ --mvw-table-header-bg-color: light-dark(var(--mvw-color-primary-800), var(--mvw-color-primary-200));
10
+ --mvw-table-header-color: light-dark(var(--mvw-color-primary-200), var(--mvw-color-primary-800));
11
+ --mvw-table-header-hover-bg-color: light-dark(var(--mvw-color-primary-700), var(--mvw-color-primary-300));
12
+ --mvw-table-header-active-bg-color: light-dark(var(--mvw-color-primary-700), var(--mvw-color-primary-300));
13
+ --mvw-table-header-active-color: light-dark(var(--mvw-color-white), var(--mvw-color-primary-900));
14
+ --mvw-table-hover-color: light-dark(var(--mvw-color-primary-900), var(--mvw-color-white));
15
+ --mvw-table-hover-bg-color: light-dark(var(--mvw-color-secondary-100), var(--mvw-color-primary-950));
16
+ --mvw-table-active-color: light-dark(var(--mvw-color-secondary-900), var(--mvw-color-secondary-100));
17
+ --mvw-table-active-bg-color: light-dark(var(--mvw-color-secondary-200), var(--mvw-color-secondary-800));
18
+ --mvw-table-active-even-bg-color: light-dark(var(--mvw-color-secondary-300), var(--mvw-color-secondary-700));
19
+ --mvw-table-active-hover-color: light-dark(var(--mvw-color-secondary-900), var(--mvw-color-secondary-100));
20
+ --mvw-table-active-hover-bg-color: light-dark(var(--mvw-color-secondary-400), var(--mvw-color-secondary-500));
21
+ --mvw-table-portrait-border-color: light-dark(var(--mvw-color-primary-100), var(--mvw-color-primary-900));
22
+ --mvw-table-portrait-bg-color: light-dark(var(--mvw-color-primary-50), var(--mvw-color-primary-900));
23
+ --mvw-table-stripped-bg-color: light-dark(
24
+ hsl(from var(--mvw-color-primary-50) h s calc(l + 3)),
25
+ hsl(from var(--mvw-color-primary-900) h s calc(l + 2))
26
+ );
27
+ --mvw-table-label-color: light-dark(var(--mvw-color-primary-500), var(--mvw-color-primary-400));
28
+ --mvw-table-label-bg-color: light-dark(var(--mvw-color-primary-50), var(--mvw-color-primary-900));
29
+ --mvw-table-cell-logo-size: 20px;
30
+ --mvw-table-cell-portrait-size: 26px;
31
+ --mvw-table-caption-color: light-dark(var(--mvw-color-primary-400), var(--mvw-color-primary-600));
32
+ --mvw-table-caption-font-size: var(--font-size-200);
33
+ }
34
+ }
35
+
36
+ @layer components {
37
+ :where(.table) {
38
+ border-collapse: collapse;
39
+ max-inline-size: 100%;
40
+ position: relative;
41
+ color: var(--mvw-table-color);
42
+ background-color: var(--mvw-table-default-bg-color);
43
+
44
+ /* Rows */
45
+ tr {
46
+ background-color: var(--surface-default);
47
+ border-top: 1px solid var(--border-color);
48
+
49
+ &:hover {
50
+ background-color: oklch(from var(--surface-filled) l c h / 75%);
51
+ }
52
+
53
+ &:nth-child(even) {
54
+ background: var(--mvw-table-stripped-bg-color);
55
+
56
+ td.is-active {
57
+ background-color: var(--mvw-table-active-even-bg-color);
58
+ }
59
+ }
60
+
61
+ &.is-highlighted {
62
+ color: var(--mvw-color-error);
63
+ }
64
+ &.is-optional {
65
+ opacity: 0.5;
66
+ }
67
+ }
68
+
69
+ /* Cells */
70
+ :is(th, td) {
71
+ padding: var(--size-8);
72
+ white-space: nowrap;
73
+ text-align: center;
74
+ }
75
+
76
+ th {
77
+ background: var(--mvw-table-header-bg-color);
78
+ color: var(--mvw-table-header-color);
79
+ font-size: var(--mvw-table-header-font-size);
80
+ font-weight: 700;
81
+ text-align: center;
82
+ width: var(--mvw-table-default-column-width);
83
+
84
+ &:focus-visible,
85
+ &:hover {
86
+ background-color: var(--mvw-table-header-hover-bg-color);
87
+ outline: none;
88
+ }
89
+
90
+ &.is-sortable {
91
+ position: relative;
92
+ cursor: pointer;
93
+
94
+ .is-icon-sort {
95
+ opacity: 0.5;
96
+ }
97
+ }
98
+
99
+ &.is-active {
100
+ background-color: var(--mvw-table-header-active-bg-color);
101
+ color: var(--mvw-table-header-active-color);
102
+
103
+ .is-icon-sort {
104
+ opacity: 1;
105
+ }
106
+ }
107
+
108
+ &.is-has-image,
109
+ &.has-avatar {
110
+ width: 0;
111
+ }
112
+
113
+ .is-icon-sort {
114
+ width: var(--size-12);
115
+ height: var(--size-12);
116
+ margin-inline-start: var(--size-4);
117
+ }
118
+ }
119
+
120
+ td {
121
+ &.is-active {
122
+ font-weight: 700;
123
+ color: var(--mvw-table-active-color);
124
+ background: var(--mvw-table-active-bg-color);
125
+ }
126
+
127
+ &.has-avatar {
128
+ .avatar {
129
+ --_width: var(--mvw-table-cell-portrait-size);
130
+ }
131
+ }
132
+
133
+ &[data-value='0'],
134
+ &.is-zero {
135
+ color: var(--mvw-text-faded);
136
+ }
137
+
138
+ &.is-possible-empty:empty:before {
139
+ content: '0';
140
+ color: var(--mvw-text-faded);
141
+ }
142
+
143
+ &.is-horizontal-content {
144
+ display: inline-flex;
145
+ align-items: center;
146
+ }
147
+
148
+ /* &:has(.is-logo-image) {
149
+ padding-inline-end: 0;
150
+ } */
151
+
152
+ .is-logo-image {
153
+ display: inline-block;
154
+ vertical-align: middle;
155
+ width: var(--mvw-table-cell-logo-size);
156
+ height: var(--mvw-table-cell-logo-size);
157
+ max-inline-size: fit-content;
158
+ }
159
+
160
+ .is-duplicated {
161
+ color: var(--mvw-table-neutral-color);
162
+ }
163
+
164
+ .is-team-name-long {
165
+ display: inline-block;
166
+ }
167
+
168
+ .is-team-name-short {
169
+ display: none;
170
+ }
171
+
172
+ @container table-wrapper (max-width: 768px) {
173
+ .is-team-name-long {
174
+ display: none;
175
+ }
176
+ .is-team-name-short {
177
+ display: inline-block;
178
+ }
179
+ }
180
+ }
181
+
182
+ /* Caption */
183
+ caption {
184
+ caption-side: bottom;
185
+ color: var(--mvw-table-caption-color);
186
+ font-size: var(--mvw-table-caption-font-size, 0.75rem);
187
+ padding: var(--size-12) 0;
188
+ text-align: start;
189
+ }
190
+
191
+ /* Body */
192
+ tbody {
193
+ tr:focus-within,
194
+ tr:hover {
195
+ color: var(--mvw-table-hover-color);
196
+ background-color: var(--mvw-table-hover-bg-color);
197
+
198
+ td.is-active {
199
+ color: var(--mvw-table-active-hover-color);
200
+ background-color: var(--mvw-table-active-hover-bg-color);
201
+ }
202
+ }
203
+ }
204
+ }
205
+ }