srcdev-nuxt-components 9.3.6 → 9.3.8

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 (126) hide show
  1. package/.claude/hooks/check-component-update.sh +30 -1
  2. package/.claude/skills/components/accordian-core.md +7 -7
  3. package/.claude/skills/components/breadcrumb.md +49 -0
  4. package/.claude/skills/components/content-docs.md +2 -1
  5. package/.claude/skills/components/expanding-panel.md +5 -5
  6. package/.claude/skills/components/navigation-items.md +1 -0
  7. package/.claude/skills/components/responsive-header.md +1 -0
  8. package/.claude/skills/components/service-detail.md +156 -0
  9. package/.claude/skills/components/services-card-grid.md +9 -9
  10. package/.claude/skills/components/services-card.md +82 -30
  11. package/.claude/skills/index.md +3 -1
  12. package/.claude/skills/qa-panel.md +2 -2
  13. package/.vscode/srcdev-component-breadcrumb.code-snippets +14 -0
  14. package/.vscode/srcdev-component-service-detail.code-snippets +49 -0
  15. package/.vscode/srcdev-component-services-card.code-snippets +108 -0
  16. package/app/components/01.atoms/content-wrappers/docs-pages/ContentDocs.vue +22 -16
  17. package/app/components/01.atoms/navigation/breadcrumb/Breadcrumb.vue +94 -0
  18. package/app/components/01.atoms/navigation/breadcrumb/CONSUMER-STYLING.md +32 -0
  19. package/app/components/01.atoms/navigation/breadcrumb/stories/Breadcrumb.stories.ts +87 -0
  20. package/app/components/01.atoms/navigation/breadcrumb/tests/Breadcrumb.spec.ts +87 -0
  21. package/app/components/01.atoms/navigation/breadcrumb/tests/__snapshots__/Breadcrumb.spec.ts.snap +13 -0
  22. package/app/components/02.molecules/expandable/accordian/AccordianCore.vue +5 -1
  23. package/app/components/02.molecules/expandable/accordian/tests/AccordianCore.spec.ts +22 -14
  24. package/app/components/02.molecules/expandable/accordian/tests/__snapshots__/AccordianCore.spec.ts.snap +42 -28
  25. package/app/components/02.molecules/expandable/expanding-panel/CONSUMER-STYLING.md +8 -10
  26. package/app/components/02.molecules/expandable/expanding-panel/ExpandingPanel.vue +15 -47
  27. package/app/components/02.molecules/expandable/expanding-panel/tests/__snapshots__/ExpandingPanel.spec.ts.snap +4 -12
  28. package/app/components/03.organisms/responsive-header/NavigationItems.vue +91 -4
  29. package/app/components/03.organisms/responsive-header/ResponsiveHeader.vue +5 -1
  30. package/app/components/03.organisms/responsive-header/tests/NavigationItems.spec.ts +2 -2
  31. package/app/components/03.organisms/responsive-header/tests/__snapshots__/NavigationItems.spec.ts.snap +13 -13
  32. package/app/components/03.organisms/responsive-header/tests/__snapshots__/ResponsiveHeader.spec.ts.snap +13 -13
  33. package/app/components/03.organisms/services/service-detail/CONSUMER-STYLING.md +181 -0
  34. package/app/components/03.organisms/services/service-detail/ServiceDetail.vue +480 -0
  35. package/app/components/03.organisms/services/service-detail/stories/ServiceDetail.stories.ts +282 -0
  36. package/app/components/03.organisms/services/service-detail/tests/ServiceDetail.spec.ts +270 -0
  37. package/app/components/03.organisms/services/service-detail/tests/__snapshots__/ServiceDetail.spec.ts.snap +99 -0
  38. package/app/components/03.organisms/services/services-card/CONSUMER-STYLING.md +129 -0
  39. package/app/components/03.organisms/services/services-card/ServicesCard.vue +153 -39
  40. package/app/components/03.organisms/services/services-card/stories/ServicesCard.stories.ts +65 -0
  41. package/app/components/03.organisms/services/services-card/tests/ServicesCard.spec.ts +82 -0
  42. package/app/components/03.organisms/services/services-card/tests/__snapshots__/ServicesCard.spec.ts.snap +13 -5
  43. package/app/components/03.organisms/services/services-grids/ServicesCardGrid.vue +3 -7
  44. package/app/components/03.organisms/services/services-grids/stories/ServicesCardGrid.stories.ts +126 -2
  45. package/app/components/03.organisms/services/services-grids/stories/ServicesSectionGrid.stories.ts +6 -0
  46. package/app/components/03.organisms/services/services-grids/tests/__snapshots__/ServicesCardGrid.spec.ts.snap +51 -27
  47. package/app/components/03.organisms/services/services-section/ServicesSection.vue +19 -0
  48. package/app/components/03.organisms/services/services-section/tests/__snapshots__/ServicesSection.spec.ts.snap +8 -8
  49. package/app/types/components/breadcrumb.ts +4 -0
  50. package/app/types/components/index.ts +1 -0
  51. package/package.json +2 -2
  52. package/app/pages/auto-grid.vue +0 -328
  53. package/app/pages/banner-video.vue +0 -238
  54. package/app/pages/forms/examples/buttons/index.vue +0 -259
  55. package/app/pages/forms/examples/material/checkbox-radio-panels.vue +0 -244
  56. package/app/pages/forms/examples/material/cssbattle.vue +0 -60
  57. package/app/pages/forms/examples/material/text-fields.vue +0 -910
  58. package/app/pages/grid-stack.vue +0 -252
  59. package/app/pages/index.vue +0 -127
  60. package/app/pages/page-hero-highlights.vue +0 -204
  61. package/app/pages/samaritan.vue +0 -327
  62. package/app/pages/typography/hero-text.vue +0 -97
  63. package/app/pages/typography/index.vue +0 -39
  64. package/app/pages/typography/page-body.vue +0 -171
  65. package/app/pages/typography/page-heading.vue +0 -76
  66. package/app/pages/typography/page-link.vue +0 -103
  67. package/app/pages/ui/accordian.vue +0 -211
  68. package/app/pages/ui/anchor-scroll-tab-navigation.vue +0 -191
  69. package/app/pages/ui/anchor-scroll.vue +0 -367
  70. package/app/pages/ui/animated-svg-text.vue +0 -85
  71. package/app/pages/ui/block-decorators.vue +0 -142
  72. package/app/pages/ui/card-core.vue +0 -82
  73. package/app/pages/ui/carousel-basic.vue +0 -292
  74. package/app/pages/ui/carousel-flip.vue +0 -449
  75. package/app/pages/ui/carousel-infinite.vue +0 -260
  76. package/app/pages/ui/clipped-panels.vue +0 -101
  77. package/app/pages/ui/contact-section.vue +0 -323
  78. package/app/pages/ui/container-glow.vue +0 -106
  79. package/app/pages/ui/content-width.vue +0 -126
  80. package/app/pages/ui/deep-expanding-menu.vue +0 -138
  81. package/app/pages/ui/display-avatar.vue +0 -253
  82. package/app/pages/ui/display-banner.vue +0 -78
  83. package/app/pages/ui/display-chip.vue +0 -367
  84. package/app/pages/ui/display-details.vue +0 -171
  85. package/app/pages/ui/display-dialog.vue +0 -344
  86. package/app/pages/ui/display-pill.vue +0 -396
  87. package/app/pages/ui/display-prompt.vue +0 -284
  88. package/app/pages/ui/display-toast.vue +0 -311
  89. package/app/pages/ui/expanding-panel.vue +0 -326
  90. package/app/pages/ui/glowing-border.vue +0 -111
  91. package/app/pages/ui/layout-content-docs.vue +0 -72
  92. package/app/pages/ui/layout-grid-a.vue +0 -96
  93. package/app/pages/ui/layout-grid-b.vue +0 -132
  94. package/app/pages/ui/magnetic-navigation.vue +0 -50
  95. package/app/pages/ui/marquee-scroller.vue +0 -99
  96. package/app/pages/ui/mask-element.vue +0 -104
  97. package/app/pages/ui/masonry-columns.vue +0 -55
  98. package/app/pages/ui/masonry-grid-ordered-experiment.vue +0 -79
  99. package/app/pages/ui/masonry-grid-ordered.vue +0 -56
  100. package/app/pages/ui/masonry-grid-sorted.vue +0 -55
  101. package/app/pages/ui/masonry-grid.vue +0 -55
  102. package/app/pages/ui/navigation/navigation-horizontal.vue +0 -484
  103. package/app/pages/ui/navigation/site-navigation/about.vue +0 -36
  104. package/app/pages/ui/navigation/site-navigation/contact.vue +0 -39
  105. package/app/pages/ui/navigation/site-navigation/index.vue +0 -38
  106. package/app/pages/ui/navigation/site-navigation/portfolio.vue +0 -43
  107. package/app/pages/ui/navigation/site-navigation/services.vue +0 -42
  108. package/app/pages/ui/navigation/tab-navigation.vue +0 -493
  109. package/app/pages/ui/page-row.vue +0 -127
  110. package/app/pages/ui/price-list.vue +0 -65
  111. package/app/pages/ui/profile-section.vue +0 -142
  112. package/app/pages/ui/qr-code/[componentName].vue +0 -218
  113. package/app/pages/ui/rotating-carousel.vue +0 -154
  114. package/app/pages/ui/scroll-reveal-image.vue +0 -483
  115. package/app/pages/ui/section-parallax.vue +0 -54
  116. package/app/pages/ui/services/colour-finder.vue +0 -43
  117. package/app/pages/ui/services/services-cards.vue +0 -57
  118. package/app/pages/ui/services/services-section/[slug].vue +0 -61
  119. package/app/pages/ui/services/services-sections-compact.vue +0 -64
  120. package/app/pages/ui/settings.vue +0 -54
  121. package/app/pages/ui/simple-grid.vue +0 -55
  122. package/app/pages/ui/slider-gallery.vue +0 -261
  123. package/app/pages/ui/tabs-y.vue +0 -107
  124. package/app/pages/ui/tabs.vue +0 -189
  125. package/app/pages/ui/tooltips.vue +0 -104
  126. package/app/pages/ui/wipe-away-vertical.vue +0 -129
@@ -1,142 +0,0 @@
1
- <template>
2
- <div>
3
- <NuxtLayout name="default">
4
- <template #layout-content>
5
- <PageRow tag="div" variant="full" :style-class-passthrough="['mbe-20']">
6
- <h2 class="page-heading-2">Block Decorators</h2>
7
- </PageRow>
8
- <PageRow tag="div" variant="full" :style-class-passthrough="['mbe-20']">
9
- <h3 class="page-heading-3">Configuration options</h3>
10
- <p class="page-body-normal">
11
- Use the select drop down to adjust the shadow, inner shadow, and border strength.
12
- </p>
13
- <p class="page-body-normal">
14
- NOTE: These are visual decorators only and can be confugured in the UiBlockDecorated component decorator
15
- stylesheet.
16
- </p>
17
- <div class="select-controls">
18
- <div class="select-group">
19
- <label for="shadow-strength">Shadow Strength</label>
20
- <select id="shadow-strength" v-model="shadowStrength">
21
- <option value="0">No shadow</option>
22
- <option value="1">Shadow 1</option>
23
- <option value="2">Shadow 2</option>
24
- <option value="3">Shadow 3</option>
25
- <option value="4">Shadow 4</option>
26
- <option value="5">Shadow 5</option>
27
- <option value="6">Shadow 6</option>
28
- </select>
29
- </div>
30
- <div class="select-group">
31
- <label for="inner-shadow-strength">Inner Shadow Strength</label>
32
- <select id="inner-shadow-strength" v-model="innerShadowStrength">
33
- <option value="0">No inner shadow</option>
34
- <option value="1">Inner Shadow 1</option>
35
- <option value="2">Inner Shadow 2</option>
36
- <option value="3">Inner Shadow 3</option>
37
- <option value="4">Inner Shadow 4</option>
38
- </select>
39
- </div>
40
- <div class="select-group">
41
- <label for="border-strength">Border Strength</label>
42
- <select id="border-strength" v-model="borderStrength">
43
- <option value="0">No border</option>
44
- <option value="1">Border 1</option>
45
- <option value="2">Border 2</option>
46
- <option value="3">Border 3</option>
47
- <option value="4">Border 4</option>
48
- <option value="5">Border 5</option>
49
- <option value="6">Border 6</option>
50
- </select>
51
- </div>
52
- </div>
53
- </PageRow>
54
- <PageRow tag="div" variant="full" :style-class-passthrough="['mbe-20']">
55
- <UiBlockDecorated
56
- tag="div"
57
- :shadow-strength
58
- :inner-shadow-strength
59
- :border-strength
60
- :style-class-passthrough="['demo-element']"
61
- >
62
- <p class="page-body-normal">1</p>
63
- </UiBlockDecorated>
64
- </PageRow>
65
- </template>
66
- </NuxtLayout>
67
- </div>
68
- </template>
69
-
70
- <script setup lang="ts">
71
- definePageMeta({
72
- layout: false,
73
- });
74
-
75
- useHead({
76
- title: "Block Decorators",
77
- meta: [
78
- {
79
- name: "description",
80
- content: "Block Decorators Meta description content",
81
- },
82
- ],
83
- bodyAttrs: {
84
- class: "block-decorators-page",
85
- },
86
- });
87
-
88
- const shadowStrength = ref(3);
89
- const innerShadowStrength = ref(4);
90
- const borderStrength = ref(0);
91
- </script>
92
-
93
- <style lang="css">
94
- .block-decorators-page {
95
- /* CSS styles */
96
-
97
- .select-controls {
98
- display: flex;
99
- flex-wrap: wrap;
100
- gap: 2.5rem;
101
- margin-block: 1.5rem;
102
- }
103
-
104
- .select-group {
105
- display: flex;
106
- flex-direction: column;
107
- gap: 1.5rem;
108
- }
109
-
110
- .select-group label {
111
- font-weight: 500;
112
- font-size: var(--step-4);
113
- color: inherit;
114
- }
115
-
116
- .select-group select {
117
- padding: 0.5rem 0.75rem;
118
- border: 1px solid #e5e7eb;
119
- border-radius: 0.375rem;
120
- /* background-color: white; */
121
- font-size: var(--step-4);
122
- min-width: 200px;
123
- }
124
-
125
- .select-group select:focus {
126
- outline: none;
127
- border-color: #3b82f6;
128
- box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
129
- }
130
-
131
- .demo-element {
132
- aspect-ratio: 1 / 1;
133
- width: 20rem;
134
- display: grid;
135
- place-content: center;
136
-
137
- /* box-shadow: var(--shadow-6); */
138
-
139
- /* background-color: light-dark(#2526271a, #d2d9e0d1); */
140
- }
141
- }
142
- </style>
@@ -1,82 +0,0 @@
1
- <template>
2
- <div>
3
- <NuxtLayout name="default">
4
- <template #layout-content>
5
- <PageRow tag="div" variant="full" :style-class-passthrough="['mbe-20']">
6
- <h1 class="page-heading-1">CardCore Component</h1>
7
- <form class="mb-12">
8
- <div>
9
- <label for="variant" class="form-label mie-12">Variant:</label>
10
- <select id="variant" v-model="cardCoreVariant" class="form-select">
11
- <option value="solid">Solid</option>
12
- <option value="subtle">Subtle</option>
13
- <option value="soft">Soft</option>
14
- <option value="outline">Outline</option>
15
- </select>
16
- </div>
17
- <div>
18
- <label for="hasDividers" class="form-label mie-12">Has Dividers:</label>
19
- <input type="checkbox" id="hasDividers" v-model="hasDividers" class="form-checkbox" />
20
- </div>
21
- <div>
22
- <label for="noOutline" class="form-label mie-12">No Outline:</label>
23
- <input type="checkbox" id="noOutline" v-model="noOutline" class="form-checkbox" />
24
- </div>
25
- </form>
26
- </PageRow>
27
-
28
- <PageRow tag="div" variant="inset-content" :style-class-passthrough="['mbe-20']">
29
- <CardCore :variant="cardCoreVariant" :has-dividers="hasDividers" :no-outline="noOutline">
30
- <template #header>
31
- <h2 class="page-heading-2">CardCore Header</h2>
32
- </template>
33
- <template #content>
34
- <h3 class="page-heading-3">CardCore Content</h3>
35
- <p class="page-body-normal">This is default slot content for the CardCore component.</p>
36
- <p class="page-body-normal">As it's a slot, any html content can be placed here.</p>
37
- </template>
38
- <template #footer>
39
- <p class="page-body-small">CardCore Footer</p>
40
- </template>
41
- </CardCore>
42
- </PageRow>
43
- </template>
44
- </NuxtLayout>
45
- </div>
46
- </template>
47
-
48
- <script setup lang="ts">
49
- definePageMeta({
50
- layout: false,
51
- });
52
-
53
- useHead({
54
- title: "CardCore Component",
55
- meta: [
56
- {
57
- name: "description",
58
- content: "CardCore Component description content",
59
- },
60
- ],
61
- bodyAttrs: {
62
- class: "card-core-page",
63
- },
64
- });
65
-
66
- const cardCoreVariant = ref("solid");
67
- const hasDividers = ref(false);
68
- const noOutline = ref(false);
69
- </script>
70
-
71
- <style lang="css">
72
- .card-core-page {
73
- form {
74
- display: flex;
75
- gap: 2rem;
76
- flex-wrap: wrap;
77
- margin-bottom: 2rem;
78
- }
79
- .card-core {
80
- }
81
- }
82
- </style>
@@ -1,292 +0,0 @@
1
- <template>
2
- <div>
3
- <NuxtLayout name="default">
4
- <template #layout-content>
5
- <PageRow tag="div" variant="content" :style-class-passthrough="['mbe-20']">
6
- <h1 class="page-heading-2">Carousel (Basic)</h1>
7
- </PageRow>
8
-
9
- <PageRow tag="div" variant="popout" :style-class-passthrough="['mbe-20']">
10
- <CarouselBasic
11
- v-if="carouselStatus === 'success'"
12
- :carousel-data-ids
13
- :allow-carousel-overflow="true"
14
- :return-to-start="true"
15
- :style-class-passthrough="['carousel-basic-demo', 'mbe-20']"
16
- >
17
- <template v-for="(item, index) in carouselData?.items" #[item.id]>
18
- <div class="case-study-item">
19
- <h3>{{ index }}</h3>
20
- <p>{{ item.alt }}</p>
21
- </div>
22
- </template>
23
- </CarouselBasic>
24
- </PageRow>
25
- </template>
26
- </NuxtLayout>
27
- </div>
28
- </template>
29
-
30
- <script setup lang="ts">
31
- import type { ICarouselBasic } from "~/types/components";
32
-
33
- definePageMeta({
34
- layout: false,
35
- });
36
-
37
- useHead({
38
- title: "Carousel (Basic)",
39
- meta: [{ name: "description", content: "Examples of Carousel (Basic)" }],
40
- bodyAttrs: {
41
- class: "carousel-basic-example-page",
42
- },
43
- });
44
-
45
- const {
46
- data: carouselData,
47
- execute: carouselExecute,
48
- status: carouselStatus, // See v-if on CarouselBasic
49
- error: carouselError,
50
- } = await useFetch<ICarouselBasic>("/api/carousel", {
51
- immediate: true,
52
- });
53
-
54
- const carouselDataStatic = {
55
- items: [
56
- {
57
- id: 1,
58
- url: "/images/spotlights/v2/dining-out.webp",
59
- alt: "Dining out",
60
- },
61
- {
62
- id: 2,
63
- url: "/images/spotlights/v2/beer-gardens.webp",
64
- alt: "Entertaining the kids",
65
- },
66
- {
67
- id: 3,
68
- url: "/images/spotlights/v2/will-it-rain.webp",
69
- alt: "Will it rain?",
70
- },
71
- {
72
- id: 4,
73
- url: "/images/spotlights/v2/nightlife.webp",
74
- alt: "Nightlife",
75
- },
76
- {
77
- id: 5,
78
- url: "/images/spotlights/v2/got-toothache-2.webp",
79
- alt: "Dental Services",
80
- },
81
- {
82
- id: 6,
83
- url: "/images/spotlights/v2/days-out.webp",
84
- alt: "Days Out",
85
- },
86
- ],
87
- total: 6,
88
- skip: 0,
89
- limit: 4,
90
- };
91
-
92
- const carouselDataIds = computed(() => {
93
- return carouselData.value?.items.map((item) => item.id) || [];
94
- // return carouselData?.items.map((item) => item.id) || [];
95
- });
96
- </script>
97
-
98
- <style lang="css">
99
- @property --glow-deg {
100
- syntax: "<angle>";
101
- inherits: true;
102
- initial-value: -90deg;
103
- }
104
-
105
- @keyframes glow {
106
- 100% {
107
- --glow-deg: 270deg;
108
- }
109
- }
110
-
111
- .carousel-basic-demo {
112
- &.carousel-basic {
113
- /* Var used in calcs */
114
- --_carousel-item-track-gap: 10px;
115
-
116
- .timeline-container {
117
- padding-block: 10px;
118
- padding-inline: 10px;
119
- outline: 1px solid light-dark(#00000090, #f00ff090);
120
-
121
- .timeline-item {
122
- max-inline-size: 800px;
123
-
124
- color: light-dark(#aaa, #333);
125
- padding-block: 10px;
126
- border-radius: 4px;
127
- outline: 1px solid light-dark(#00000090, #f00ff090);
128
-
129
- &::before {
130
- content: "";
131
- position: absolute;
132
- height: 2px;
133
- background-color: #fff;
134
- left: 70px;
135
- right: 0;
136
- }
137
-
138
- .count {
139
- font-size: 1.2rem;
140
- border-radius: 8px;
141
- color: light-dark(#fff, #000);
142
- background-color: light-dark(#000, #fff);
143
- padding-block: 6px;
144
- padding-inline: 12px;
145
- }
146
- }
147
- }
148
-
149
- .item-container {
150
- padding-block: 10px;
151
- padding-inline: 10px;
152
- outline: 1px solid light-dark(#00000090, #f00ff090);
153
-
154
- .item {
155
- max-inline-size: 800px;
156
-
157
- background-color: light-dark(#f00, #00f);
158
-
159
- &:nth-child(odd) {
160
- background-color: light-dark(#00f, #f00);
161
- }
162
-
163
- .case-study-item {
164
- flex-direction: column;
165
- align-items: center;
166
- justify-content: center;
167
-
168
- aspect-ratio: 4 / 3;
169
- inline-size: 100%;
170
-
171
- color: light-dark(#aaa, #333);
172
- padding-block: 10px;
173
- padding-inline: 10px;
174
- border-radius: 4px;
175
- outline: 1px solid light-dark(#00000090, #f00ff090);
176
- }
177
- }
178
- }
179
-
180
- .controls-container {
181
- gap: 20px;
182
-
183
- .markers-container {
184
- .markers-list {
185
- .markers-item {
186
- line-height: 3px;
187
-
188
- &.active {
189
- background-color: light-dark(#f00, #0f0);
190
- }
191
-
192
- .btn-marker {
193
- width: 22px;
194
- height: 3px;
195
- background-color: lightgray;
196
- line-height: 3px;
197
-
198
- &.active {
199
- background-color: red;
200
- }
201
-
202
- &:focus-visible {
203
- outline: 1px solid light-dark(#000, #fff);
204
- }
205
- }
206
- }
207
- }
208
- }
209
-
210
- .buttons-container {
211
- display: flex;
212
- align-items: center;
213
- justify-content: end;
214
- gap: 20px;
215
-
216
- .btn-action {
217
- --gradient-glow-dark:
218
- var(--slate-07), var(--slate-05), var(--slate-08), var(--slate-06), var(--slate-07), var(--slate-08),
219
- var(--slate-07);
220
- --gradient-glow-light: var(--slate-04), var(--slate-06), var(--slate-00), var(--slate-06), var(--slate-04);
221
-
222
- padding-block: 10px;
223
- padding-inline: 10px;
224
- border-radius: 100%;
225
- /* background-color: light-dark(#000, #fff); */
226
- /* color: light-dark(#fff, #000); */
227
-
228
- border: 3px solid transparent;
229
- background:
230
- linear-gradient(var(--surface, canvas) 0 0) padding-box,
231
- conic-gradient(from var(--glow-deg), var(--gradient-glow-dark)) border-box;
232
- outline: 1px solid light-dark(var(--slate-09), var(--slate-07));
233
-
234
- position: relative;
235
- isolation: isolate;
236
-
237
- animation: glow 10s infinite linear;
238
- animation-play-state: paused;
239
- transition: outline-color 0.3s ease;
240
-
241
- &::before,
242
- &::after {
243
- content: "";
244
- position: absolute;
245
- border-radius: inherit;
246
- }
247
-
248
- &::before {
249
- z-index: -1;
250
- background: var(--surface, canvas);
251
- inset: 0.5rem;
252
- scale: 1.2 1;
253
- transform-origin: right;
254
- filter: blur(var(--glow-size, 0.5rem));
255
- }
256
-
257
- &::after {
258
- z-index: -2;
259
- inset: -1.5rem;
260
- background: conic-gradient(from var(--glow-deg), var(--gradient-glow-dark));
261
- filter: blur(var(--glow-size, 1rem));
262
- opacity: var(--glow-intensity, 0.125);
263
- }
264
-
265
- &:hover {
266
- animation-play-state: running;
267
- outline-color: light-dark(var(--slate-09), var(--slate-04));
268
- }
269
-
270
- .arrows-icon {
271
- width: 24px;
272
- height: 24px;
273
-
274
- /* &:hover {
275
- background-color: light-dark(#0009, #fff9);
276
- }
277
-
278
- &:active,
279
- &.active {
280
- background-color: light-dark(#0009, #fff9);
281
- }
282
-
283
- &:focus-visible {
284
- outline: 1px solid light-dark(#0f0, #f0f);
285
- } */
286
- }
287
- }
288
- }
289
- }
290
- }
291
- }
292
- </style>