astro-component-kit 0.4.0 → 0.4.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.
- package/README.md +105 -27
- package/package.json +16 -3
- package/src/components/index.ts +2 -0
- package/src/components/lib/Galaxy3D.astro +249 -137
- package/src/components/lib/app/AppSidebar.astro +249 -0
- package/src/components/lib/app/AppTopbar.astro +284 -0
- package/src/components/lib/app/ArrivalsBoard.astro +176 -0
- package/src/components/lib/app/AuthCard.astro +213 -0
- package/src/components/lib/app/DataTable.astro +346 -0
- package/src/components/lib/app/GuestProfileCard.astro +133 -0
- package/src/components/lib/app/HousekeepingBoard.astro +189 -0
- package/src/components/lib/app/PageHeader.astro +157 -0
- package/src/components/lib/app/PlanUsageCard.astro +112 -0
- package/src/components/lib/app/RoomRack.astro +207 -0
- package/src/components/lib/app/SettingsSection.astro +96 -0
- package/src/components/lib/app/SwitchRow.astro +71 -0
- package/src/components/lib/app/TeamMembers.astro +190 -0
- package/src/components/lib/app/app-icons.ts +52 -0
- package/src/components/lib/app/index.ts +19 -0
- package/src/components/lib/charts/AreaChart.astro +4 -4
- package/src/components/lib/charts/BarChart.astro +3 -3
- package/src/components/lib/charts/ChartFrame.astro +10 -10
- package/src/components/lib/charts/DonutChart.astro +2 -2
- package/src/components/lib/charts/DumbbellChart.astro +1 -1
- package/src/components/lib/charts/ForecastLineChart.astro +1 -1
- package/src/components/lib/charts/GaugeChart.astro +1 -1
- package/src/components/lib/charts/HeatmapChart.astro +1 -1
- package/src/components/lib/charts/HorizontalBarChart.astro +2 -2
- package/src/components/lib/charts/KpiStatTile.astro +4 -4
- package/src/components/lib/charts/LinearProgressGauge.astro +4 -4
- package/src/components/lib/charts/MetricDeltaTable.astro +3 -3
- package/src/components/lib/charts/RadarMetricChart.astro +4 -4
- package/src/components/lib/charts/RadialBarChart.astro +1 -1
- package/src/components/lib/charts/RetentionCohortTable.astro +2 -2
- package/src/components/lib/charts/TreemapChart.astro +1 -1
- package/src/components/lib/ecommerce/CartDrawer.astro +483 -0
- package/src/components/lib/ecommerce/CartPageList.astro +290 -0
- package/src/components/lib/ecommerce/CartToast.astro +276 -0
- package/src/components/lib/ecommerce/CategoryTiles.astro +143 -0
- package/src/components/lib/ecommerce/CheckoutForm.astro +423 -0
- package/src/components/lib/ecommerce/CountdownBanner.astro +230 -0
- package/src/components/lib/ecommerce/FilterBar.astro +278 -0
- package/src/components/lib/ecommerce/FilterSidebar.astro +405 -0
- package/src/components/lib/ecommerce/LiveActivityToast.astro +213 -0
- package/src/components/lib/ecommerce/OrderSummary.astro +295 -0
- package/src/components/lib/ecommerce/ProductBuyBox.astro +247 -0
- package/src/components/lib/ecommerce/ProductCardMinimal.astro +229 -0
- package/src/components/lib/ecommerce/ProductGallery.astro +145 -0
- package/src/components/lib/ecommerce/ProductGrid.astro +118 -0
- package/src/components/lib/ecommerce/ProductMedia.astro +113 -0
- package/src/components/lib/ecommerce/ProductRating.astro +78 -0
- package/src/components/lib/ecommerce/ProductToolbar.astro +93 -0
- package/src/components/lib/ecommerce/PromoBar.astro +145 -0
- package/src/components/lib/ecommerce/StockIndicator.astro +127 -0
- package/src/components/lib/ecommerce/StoreHeader.astro +446 -0
- package/src/components/lib/ecommerce/StoreHero.astro +260 -0
- package/src/components/lib/ecommerce/StoreProductCard.astro +307 -0
- package/src/components/lib/ecommerce/TrustBadges.astro +101 -0
- package/src/components/lib/ecommerce/VariantPicker.astro +145 -0
- package/src/components/lib/ecommerce/cart-store.ts +151 -0
- package/src/components/lib/ecommerce/catalog-filter.ts +62 -0
- package/src/components/lib/ecommerce/index.ts +34 -0
- package/src/components/lib/ecommerce/product-icons.ts +28 -0
- package/src/components/lib/ecommerce/types.ts +70 -0
- package/src/components/lib/forms/AnimatedInput.astro +4 -2
- package/src/components/lib/forms/CustomRadioGroup.astro +3 -1
- package/src/components/lib/index.ts +2 -0
- package/src/components/lib/layout/BentoGrid3.astro +6 -4
- package/src/components/lib/layout/CenterFixedBox.astro +2 -2
- package/src/components/lib/layout/CenteredContainer.astro +4 -2
- package/src/components/lib/layout/ClusterHorizontal.astro +2 -2
- package/src/components/lib/layout/FeatureHero.astro +4 -2
- package/src/components/lib/layout/FooterCenteredMinimal.astro +4 -2
- package/src/components/lib/layout/FullBleedSection.astro +2 -2
- package/src/components/lib/layout/GalleryGrid4.astro +2 -2
- package/src/components/lib/layout/HolyGrailGrid.astro +11 -9
- package/src/components/lib/layout/LandingSectionSplit.astro +5 -3
- package/src/components/lib/layout/MasonryGrid.astro +2 -2
- package/src/components/lib/layout/MinimalFooterGrid.astro +1 -1
- package/src/components/lib/layout/ScrollSnapSection.astro +1 -1
- package/src/components/lib/layout/SidebarLayoutWrapper.astro +4 -2
- package/src/components/lib/layout/SplitScreenLayout.astro +3 -3
- package/src/components/lib/layout/StepLayoutVertical.astro +1 -1
- package/src/components/lib/layout/StickySidebarWrapper.astro +4 -2
- package/src/components/lib/sections/AgencyContactBrief.astro +194 -0
- package/src/components/lib/sections/AgencyFooterCta.astro +94 -0
- package/src/components/lib/sections/AgencyHeader.astro +161 -0
- package/src/components/lib/sections/AgencyHeroKinetic.astro +172 -0
- package/src/components/lib/sections/AgencyServicesList.astro +113 -0
- package/src/components/lib/sections/AgencyTeamGrid.astro +111 -0
- package/src/components/lib/sections/AgencyWorkGrid.astro +147 -0
- package/src/components/lib/sections/BlogGridSection.astro +9 -7
- package/src/components/lib/sections/ButtonsShowcase.astro +20 -18
- package/src/components/lib/sections/CardsShowcase.astro +28 -26
- package/src/components/lib/sections/CareersOpenings.astro +10 -8
- package/src/components/lib/sections/ChangelogSection.astro +14 -7
- package/src/components/lib/sections/ContactGlassForm.astro +10 -8
- package/src/components/lib/sections/ContactSplitMap.astro +11 -9
- package/src/components/lib/sections/CtaAppDownload.astro +13 -11
- package/src/components/lib/sections/CtaGlowBanner.astro +12 -10
- package/src/components/lib/sections/CtaNewsletterSection.astro +13 -11
- package/src/components/lib/sections/CtaSplitImage.astro +13 -11
- package/src/components/lib/sections/DataShowcase.astro +23 -21
- package/src/components/lib/sections/FaqAccordionSection.astro +8 -8
- package/src/components/lib/sections/FaqTwoColumn.astro +9 -7
- package/src/components/lib/sections/FeatureAlternatingRows.astro +10 -8
- package/src/components/lib/sections/FeatureBentoGrid.astro +13 -11
- package/src/components/lib/sections/FeatureIconGrid.astro +6 -6
- package/src/components/lib/sections/FeatureTabsShowcase.astro +13 -11
- package/src/components/lib/sections/FeatureTimelineFlow.astro +8 -6
- package/src/components/lib/sections/FeedbackShowcase.astro +15 -13
- package/src/components/lib/sections/FooterMegaSection.astro +13 -11
- package/src/components/lib/sections/FormsShowcase.astro +22 -20
- package/src/components/lib/sections/HeroDashboardPreview.astro +11 -9
- package/src/components/lib/sections/HeroGlass.astro +22 -20
- package/src/components/lib/sections/HeroGradient.astro +15 -13
- package/src/components/lib/sections/HeroMinimalCentered.astro +10 -10
- package/src/components/lib/sections/HeroShowcaseSplit.astro +18 -16
- package/src/components/lib/sections/HeroSplit.astro +13 -11
- package/src/components/lib/sections/HeroTerminal.astro +14 -12
- package/src/components/lib/sections/HeroWaitlist.astro +10 -8
- package/src/components/lib/sections/HowItWorksSteps.astro +12 -10
- package/src/components/lib/sections/IntegrationsGrid.astro +7 -7
- package/src/components/lib/sections/LayoutShowcase.astro +21 -19
- package/src/components/lib/sections/LogoCloudSection.astro +4 -4
- package/src/components/lib/sections/LogoWallGrid.astro +6 -4
- package/src/components/lib/sections/NavigationShowcase.astro +15 -13
- package/src/components/lib/sections/OverlaysShowcase.astro +21 -19
- package/src/components/lib/sections/PricingComparisonMatrix.astro +15 -13
- package/src/components/lib/sections/PricingSinglePlan.astro +13 -11
- package/src/components/lib/sections/PricingTierCards.astro +11 -9
- package/src/components/lib/sections/PricingToggleCards.astro +13 -13
- package/src/components/lib/sections/ShopCategoryHero.astro +103 -0
- package/src/components/lib/sections/ShopCollectionMosaic.astro +131 -0
- package/src/components/lib/sections/ShopFooterWordmark.astro +100 -0
- package/src/components/lib/sections/ShopHeaderEditorial.astro +396 -0
- package/src/components/lib/sections/ShopHeroEditorial.astro +151 -0
- package/src/components/lib/sections/ShopLookbook.astro +250 -0
- package/src/components/lib/sections/ShopNewsletterEditorial.astro +128 -0
- package/src/components/lib/sections/ShopProductRail.astro +150 -0
- package/src/components/lib/sections/ShopReviewsEditorial.astro +133 -0
- package/src/components/lib/sections/ShopValuesMarquee.astro +91 -0
- package/src/components/lib/sections/StatsCounterBand.astro +9 -7
- package/src/components/lib/sections/StatsDashboardSection.astro +4 -2
- package/src/components/lib/sections/StatsMetricShowcase.astro +9 -7
- package/src/components/lib/sections/TeamGridSection.astro +12 -10
- package/src/components/lib/sections/TestimonialCarousel.astro +10 -8
- package/src/components/lib/sections/TestimonialFeatured.astro +7 -5
- package/src/components/lib/sections/TestimonialGridSection.astro +7 -7
- package/src/components/lib/sections/TestimonialWallGlass.astro +11 -9
- package/src/components/lib/sections/TypographyShowcase.astro +10 -8
- package/src/components/lib/sections/index.ts +10 -0
- package/src/components/lib/templates/ecommerce/StoreCategoryPage.astro +160 -0
- package/src/components/lib/templates/ecommerce/StoreCheckoutPage.astro +98 -0
- package/src/components/lib/templates/ecommerce/StoreHomePage.astro +191 -0
- package/src/components/lib/templates/ecommerce/StoreLayout.astro +169 -0
- package/src/components/lib/templates/ecommerce/StoreProductPage.astro +165 -0
- package/src/components/lib/templates/ecommerce/data.ts +187 -0
- package/src/components/lib/templates/ecommerce/index.ts +14 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialBagPage.astro +52 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialCheckoutPage.astro +123 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialHomePage.astro +102 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialLayout.astro +216 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialProductPage.astro +205 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialShopPage.astro +112 -0
- package/src/components/lib/templates/ecommerce-editorial/data.ts +125 -0
- package/src/components/lib/templates/ecommerce-editorial/index.ts +16 -0
- package/src/components/lib/templates/saas-hotel/AppLayout.astro +83 -0
- package/src/components/lib/templates/saas-hotel/DashboardPage.astro +66 -0
- package/src/components/lib/templates/saas-hotel/GuestsPage.astro +65 -0
- package/src/components/lib/templates/saas-hotel/LandingPage.astro +213 -0
- package/src/components/lib/templates/saas-hotel/ReportsPage.astro +63 -0
- package/src/components/lib/templates/saas-hotel/ReservationsPage.astro +49 -0
- package/src/components/lib/templates/saas-hotel/RoomsPage.astro +48 -0
- package/src/components/lib/templates/saas-hotel/SettingsPage.astro +115 -0
- package/src/components/lib/templates/saas-hotel/SignInPage.astro +50 -0
- package/src/components/lib/templates/saas-hotel/data.ts +229 -0
- package/src/components/lib/templates/saas-hotel/index.ts +19 -0
- package/src/components/lib/templates/saas-hotel/lobby-theme.css +90 -0
- package/src/styles/global.css +95 -0
|
@@ -49,6 +49,7 @@ const {
|
|
|
49
49
|
const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
50
50
|
---
|
|
51
51
|
|
|
52
|
+
<div class="cq-hero-terminal-cq">
|
|
52
53
|
<section class={`ht ht--${variant} ht--${size} ${className}`} aria-labelledby={id}>
|
|
53
54
|
<div class="ht__inner">
|
|
54
55
|
<div class="ht__copy">
|
|
@@ -87,7 +88,7 @@ const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
87
88
|
</div>
|
|
88
89
|
</div>
|
|
89
90
|
</section>
|
|
90
|
-
|
|
91
|
+
</div>
|
|
91
92
|
<script>
|
|
92
93
|
document.querySelectorAll<HTMLButtonElement>('.ht__copy-btn').forEach((btn) => {
|
|
93
94
|
btn.addEventListener('click', async () => {
|
|
@@ -108,6 +109,7 @@ const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
108
109
|
</script>
|
|
109
110
|
|
|
110
111
|
<style>
|
|
112
|
+
.cq-hero-terminal-cq { container-type: inline-size; }
|
|
111
113
|
.ht {
|
|
112
114
|
--ht-py: 5.5rem;
|
|
113
115
|
padding: var(--ht-py) var(--sp-6, 1.5rem);
|
|
@@ -147,8 +149,8 @@ const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
147
149
|
max-width: 520px;
|
|
148
150
|
padding: 0.4rem 0.4rem 0.4rem 1rem;
|
|
149
151
|
border-radius: var(--r-md, 12px);
|
|
150
|
-
border: 1px solid var(--c-border,
|
|
151
|
-
background:
|
|
152
|
+
border: 1px solid var(--c-border, rgb(var(--ink-rgb, 255 255 255) / 0.08));
|
|
153
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.025);
|
|
152
154
|
margin-bottom: 1.5rem;
|
|
153
155
|
position: relative;
|
|
154
156
|
}
|
|
@@ -170,12 +172,12 @@ const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
170
172
|
flex-shrink: 0;
|
|
171
173
|
border: 0;
|
|
172
174
|
border-radius: var(--r-sm, 8px);
|
|
173
|
-
background:
|
|
175
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.05);
|
|
174
176
|
color: var(--c-text-2, #a3a3a3);
|
|
175
177
|
cursor: pointer;
|
|
176
178
|
transition: background 0.2s ease, color 0.2s ease;
|
|
177
179
|
}
|
|
178
|
-
.ht__copy-btn:hover { background:
|
|
180
|
+
.ht__copy-btn:hover { background: rgb(var(--ink-rgb, 255 255 255) / 0.1); color: var(--c-text-1, #fff); }
|
|
179
181
|
.ht__copy-btn:focus-visible, .ht__btn:focus-visible { outline: 2px solid var(--c-primary-light, #d4a017); outline-offset: 2px; }
|
|
180
182
|
.ht__icon-ok { display: none; color: var(--chart-pos, #34c38f); }
|
|
181
183
|
.ht__copy-btn.is-copied .ht__icon-copy { display: none; }
|
|
@@ -189,18 +191,18 @@ const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
189
191
|
padding: 0 1.5rem;
|
|
190
192
|
border-radius: var(--r-md, 12px);
|
|
191
193
|
background: var(--c-text-1, #fff);
|
|
192
|
-
color: #0a0a0a;
|
|
194
|
+
color: var(--c-on-primary, #0a0a0a);
|
|
193
195
|
font-weight: 650;
|
|
194
196
|
text-decoration: none;
|
|
195
197
|
transition: transform 0.2s ease;
|
|
196
198
|
}
|
|
197
|
-
.ht__btn:hover { transform: translateY(-1px); color: #0a0a0a; }
|
|
199
|
+
.ht__btn:hover { transform: translateY(-1px); color: var(--c-on-primary, #0a0a0a); }
|
|
198
200
|
|
|
199
201
|
.ht__terminal {
|
|
200
202
|
border-radius: var(--r-lg, 20px);
|
|
201
|
-
border: 1px solid
|
|
203
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.09);
|
|
202
204
|
background: #0b0b0d;
|
|
203
|
-
box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.8), 0 0 0 1px
|
|
205
|
+
box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.8), 0 0 0 1px rgb(var(--ink-rgb, 255 255 255) / 0.02) inset;
|
|
204
206
|
overflow: hidden;
|
|
205
207
|
}
|
|
206
208
|
.ht--glass .ht__terminal { background: rgba(14, 14, 18, 0.6); backdrop-filter: blur(18px); }
|
|
@@ -210,9 +212,9 @@ const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
210
212
|
align-items: center;
|
|
211
213
|
gap: 0.45rem;
|
|
212
214
|
padding: 0.85rem 1rem;
|
|
213
|
-
border-bottom: 1px solid
|
|
215
|
+
border-bottom: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.06);
|
|
214
216
|
}
|
|
215
|
-
.ht__bar span { width: 11px; height: 11px; border-radius: 50%; background:
|
|
217
|
+
.ht__bar span { width: 11px; height: 11px; border-radius: 50%; background: rgb(var(--ink-rgb, 255 255 255) / 0.12); }
|
|
216
218
|
.ht__bar p { margin: 0 auto; font-size: 0.75rem; color: var(--c-text-3, #737373); font-family: var(--font-mono, monospace); transform: translateX(-1.5rem); }
|
|
217
219
|
.ht__lines {
|
|
218
220
|
list-style: none;
|
|
@@ -241,7 +243,7 @@ const id = `ht-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
241
243
|
.ht__caret { width: 8px; height: 1.1em; align-self: center; background: var(--c-text-1, #fff); animation: ht-blink 1s steps(1) infinite; }
|
|
242
244
|
@keyframes ht-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
|
|
243
245
|
@keyframes ht-blink { 50% { opacity: 0; } }
|
|
244
|
-
@
|
|
246
|
+
@container (max-width: 900px) {
|
|
245
247
|
.ht__inner { grid-template-columns: minmax(0, 1fr); gap: 3rem; }
|
|
246
248
|
}
|
|
247
249
|
@media (prefers-reduced-motion: reduce) {
|
|
@@ -45,6 +45,7 @@ const initials = ['AK', 'MR', 'JS', 'LP', 'TW'];
|
|
|
45
45
|
const hues = ['var(--chart-1, #3987e5)', 'var(--chart-2, #d95926)', 'var(--chart-3, #199e70)', 'var(--chart-5, #d55181)', 'var(--chart-7, #9085e9)'];
|
|
46
46
|
---
|
|
47
47
|
|
|
48
|
+
<div class="cq-hero-waitlist-cq">
|
|
48
49
|
<section class={`hw hw--${variant} hw--${size} ${className}`} aria-labelledby={id}>
|
|
49
50
|
<div class="hw__aurora" aria-hidden="true"><span></span><span></span><span></span></div>
|
|
50
51
|
<div class="hw__inner">
|
|
@@ -70,7 +71,7 @@ const hues = ['var(--chart-1, #3987e5)', 'var(--chart-2, #d95926)', 'var(--chart
|
|
|
70
71
|
</div>
|
|
71
72
|
</div>
|
|
72
73
|
</section>
|
|
73
|
-
|
|
74
|
+
</div>
|
|
74
75
|
<script>
|
|
75
76
|
document.querySelectorAll<HTMLFormElement>('.hw__form').forEach((form) => {
|
|
76
77
|
const input = form.querySelector<HTMLInputElement>('input[type="email"]');
|
|
@@ -99,6 +100,7 @@ const hues = ['var(--chart-1, #3987e5)', 'var(--chart-2, #d95926)', 'var(--chart
|
|
|
99
100
|
</script>
|
|
100
101
|
|
|
101
102
|
<style>
|
|
103
|
+
.cq-hero-waitlist-cq { container-type: inline-size; }
|
|
102
104
|
.hw {
|
|
103
105
|
--hw-py: 6rem;
|
|
104
106
|
position: relative;
|
|
@@ -133,8 +135,8 @@ const hues = ['var(--chart-1, #3987e5)', 'var(--chart-2, #d95926)', 'var(--chart
|
|
|
133
135
|
gap: 0.55rem;
|
|
134
136
|
padding: 0.4rem 0.9rem;
|
|
135
137
|
border-radius: var(--r-full, 999px);
|
|
136
|
-
background:
|
|
137
|
-
border: 1px solid
|
|
138
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.05);
|
|
139
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.09);
|
|
138
140
|
font-size: 0.8125rem;
|
|
139
141
|
color: var(--c-text-1, #fff);
|
|
140
142
|
}
|
|
@@ -157,12 +159,12 @@ const hues = ['var(--chart-1, #3987e5)', 'var(--chart-2, #d95926)', 'var(--chart
|
|
|
157
159
|
margin: 0 auto;
|
|
158
160
|
padding: 0.4rem;
|
|
159
161
|
border-radius: var(--r-lg, 16px);
|
|
160
|
-
background:
|
|
161
|
-
border: 1px solid
|
|
162
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.04);
|
|
163
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.1);
|
|
162
164
|
backdrop-filter: blur(12px);
|
|
163
165
|
transition: border-color 0.2s ease;
|
|
164
166
|
}
|
|
165
|
-
.hw__form:focus-within { border-color:
|
|
167
|
+
.hw__form:focus-within { border-color: rgb(var(--ink-rgb, 255 255 255) / 0.28); }
|
|
166
168
|
.hw__input {
|
|
167
169
|
flex: 1;
|
|
168
170
|
min-width: 0;
|
|
@@ -186,7 +188,7 @@ const hues = ['var(--chart-1, #3987e5)', 'var(--chart-2, #d95926)', 'var(--chart
|
|
|
186
188
|
border: 0;
|
|
187
189
|
border-radius: var(--r-md, 12px);
|
|
188
190
|
background: var(--c-text-1, #fff);
|
|
189
|
-
color: #0a0a0a;
|
|
191
|
+
color: var(--c-on-primary, #0a0a0a);
|
|
190
192
|
font-weight: 650;
|
|
191
193
|
font-size: 0.9375rem;
|
|
192
194
|
font-family: inherit;
|
|
@@ -218,7 +220,7 @@ const hues = ['var(--chart-1, #3987e5)', 'var(--chart-2, #d95926)', 'var(--chart
|
|
|
218
220
|
}
|
|
219
221
|
.hw__avatars span:first-child { margin-left: 0; }
|
|
220
222
|
.hw__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
|
|
221
|
-
@
|
|
223
|
+
@container (max-width: 520px) {
|
|
222
224
|
.hw__form { flex-direction: column; }
|
|
223
225
|
.hw__btn { justify-content: center; }
|
|
224
226
|
.hw__proof { flex-direction: column; }
|
|
@@ -40,6 +40,7 @@ const {
|
|
|
40
40
|
const id = `hiw-${Math.random().toString(36).slice(2, 8)}`;
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
+
<div class="cq-how-it-works-steps-cq">
|
|
43
44
|
<section class={`hiw hiw--${variant} hiw--${size} ${className}`} aria-labelledby={id} style={`--hiw-n:${steps.length}`}>
|
|
44
45
|
<div class="hiw__inner">
|
|
45
46
|
<header class="hiw__head">
|
|
@@ -70,8 +71,9 @@ const id = `hiw-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
70
71
|
)}
|
|
71
72
|
</div>
|
|
72
73
|
</section>
|
|
73
|
-
|
|
74
|
+
</div>
|
|
74
75
|
<style>
|
|
76
|
+
.cq-how-it-works-steps-cq { container-type: inline-size; }
|
|
75
77
|
.hiw {
|
|
76
78
|
--hiw-py: 5.5rem;
|
|
77
79
|
padding: var(--hiw-py) var(--sp-6, 1.5rem);
|
|
@@ -99,7 +101,7 @@ const id = `hiw-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
99
101
|
left: calc(100% / var(--hiw-n) / 2);
|
|
100
102
|
right: calc(100% / var(--hiw-n) / 2);
|
|
101
103
|
height: 1px;
|
|
102
|
-
background: linear-gradient(90deg,
|
|
104
|
+
background: linear-gradient(90deg, color-mix(in srgb, var(--c-primary-light, #d4a017) 60%, transparent), rgb(var(--ink-rgb, 255 255 255) / 0.1));
|
|
103
105
|
}
|
|
104
106
|
.hiw--cards .hiw__steps::before { display: none; }
|
|
105
107
|
.hiw__step {
|
|
@@ -116,8 +118,8 @@ const id = `hiw-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
116
118
|
text-align: left;
|
|
117
119
|
padding: 1.5rem;
|
|
118
120
|
border-radius: var(--r-lg, 20px);
|
|
119
|
-
background:
|
|
120
|
-
border: 1px solid var(--c-border,
|
|
121
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.025);
|
|
122
|
+
border: 1px solid var(--c-border, rgb(var(--ink-rgb, 255 255 255) / 0.07));
|
|
121
123
|
}
|
|
122
124
|
@keyframes hiw-in { from { opacity: 0; transform: translateY(10px); } }
|
|
123
125
|
.hiw__marker {
|
|
@@ -130,7 +132,7 @@ const id = `hiw-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
130
132
|
margin-bottom: 1.25rem;
|
|
131
133
|
border-radius: 50%;
|
|
132
134
|
background: var(--c-bg-1, #0a0a0a);
|
|
133
|
-
border: 1px solid
|
|
135
|
+
border: 1px solid color-mix(in srgb, var(--c-primary-light, #d4a017) 45%, transparent);
|
|
134
136
|
color: var(--c-primary-light, #d4a017);
|
|
135
137
|
font-family: var(--font-mono, monospace);
|
|
136
138
|
font-size: 0.875rem;
|
|
@@ -147,7 +149,7 @@ const id = `hiw-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
147
149
|
margin-top: 0.85rem;
|
|
148
150
|
padding: 0.2rem 0.6rem;
|
|
149
151
|
border-radius: var(--r-full, 999px);
|
|
150
|
-
background:
|
|
152
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.05);
|
|
151
153
|
font-size: 0.75rem;
|
|
152
154
|
color: var(--c-text-2, #a3a3a3);
|
|
153
155
|
}
|
|
@@ -160,16 +162,16 @@ const id = `hiw-${Math.random().toString(36).slice(2, 8)}`;
|
|
|
160
162
|
padding: 0 1.5rem;
|
|
161
163
|
border-radius: var(--r-md, 12px);
|
|
162
164
|
background: var(--c-primary-light, #d4a017);
|
|
163
|
-
color: #0a0a0a;
|
|
165
|
+
color: var(--c-on-primary, #0a0a0a);
|
|
164
166
|
font-weight: 650;
|
|
165
167
|
text-decoration: none;
|
|
166
168
|
transition: background 0.2s ease;
|
|
167
169
|
}
|
|
168
|
-
.hiw__cta a:hover { background: var(--c-accent, #fef3c7); color: #0a0a0a; }
|
|
170
|
+
.hiw__cta a:hover { background: var(--c-accent, #fef3c7); color: var(--c-on-primary, #0a0a0a); }
|
|
169
171
|
.hiw__cta a:focus-visible { outline: 2px solid var(--c-primary-light, #d4a017); outline-offset: 3px; }
|
|
170
|
-
@
|
|
172
|
+
@container (max-width: 820px) {
|
|
171
173
|
.hiw__steps { grid-template-columns: 1fr; gap: 1.75rem; }
|
|
172
|
-
.hiw__steps::before { top: 24px; bottom: 24px; left: 24px; right: auto; width: 1px; height: auto; background: linear-gradient(180deg,
|
|
174
|
+
.hiw__steps::before { top: 24px; bottom: 24px; left: 24px; right: auto; width: 1px; height: auto; background: linear-gradient(180deg, color-mix(in srgb, var(--c-primary-light, #d4a017) 60%, transparent), rgb(var(--ink-rgb, 255 255 255) / 0.1)); }
|
|
173
175
|
.hiw__step { flex-direction: row; align-items: flex-start; text-align: left; gap: 1.25rem; }
|
|
174
176
|
.hiw__marker { flex-shrink: 0; margin-bottom: 0; }
|
|
175
177
|
.hiw--dots .hiw__marker { margin: 16px 16px 0; }
|
|
@@ -114,7 +114,7 @@ const statusLabel = { available: 'Available', beta: 'Beta', soon: 'Coming soon'
|
|
|
114
114
|
min-height: 40px;
|
|
115
115
|
padding: 0 1rem;
|
|
116
116
|
border-radius: var(--r-full, 999px);
|
|
117
|
-
border: 1px solid
|
|
117
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.1);
|
|
118
118
|
background: transparent;
|
|
119
119
|
color: var(--c-text-2, #a3a3a3);
|
|
120
120
|
font: inherit;
|
|
@@ -123,8 +123,8 @@ const statusLabel = { available: 'Available', beta: 'Beta', soon: 'Coming soon'
|
|
|
123
123
|
cursor: pointer;
|
|
124
124
|
transition: all 0.2s ease;
|
|
125
125
|
}
|
|
126
|
-
.ig__chip:hover { color: var(--c-text-1, #fff); border-color:
|
|
127
|
-
.ig__chip[aria-pressed='true'] { background: var(--c-text-1, #fff); color: #0a0a0a; border-color: transparent; }
|
|
126
|
+
.ig__chip:hover { color: var(--c-text-1, #fff); border-color: rgb(var(--ink-rgb, 255 255 255) / 0.25); }
|
|
127
|
+
.ig__chip[aria-pressed='true'] { background: var(--c-text-1, #fff); color: var(--c-on-primary, #0a0a0a); border-color: transparent; }
|
|
128
128
|
.ig__chip:focus-visible { outline: 2px solid var(--c-primary-light, #d4a017); outline-offset: 2px; }
|
|
129
129
|
.ig__count { margin: 1rem 0 1.5rem; text-align: center; font-size: 0.8125rem; color: var(--c-text-3, #8a8a8a); }
|
|
130
130
|
.ig__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
|
|
@@ -136,11 +136,11 @@ const statusLabel = { available: 'Available', beta: 'Beta', soon: 'Coming soon'
|
|
|
136
136
|
transition: border-color 0.2s ease, transform 0.2s ease;
|
|
137
137
|
}
|
|
138
138
|
.ig__tile[hidden] { display: none; }
|
|
139
|
-
.ig--card .ig__tile { background:
|
|
140
|
-
.ig--outline .ig__tile { border: 1px solid
|
|
139
|
+
.ig--card .ig__tile { background: rgb(var(--ink-rgb, 255 255 255) / 0.025); border: 1px solid var(--c-border, rgb(var(--ink-rgb, 255 255 255) / 0.07)); }
|
|
140
|
+
.ig--outline .ig__tile { border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.12); }
|
|
141
141
|
.ig--compact .ig__tile { padding: 0.75rem; }
|
|
142
142
|
.ig--compact .ig__desc { display: none; }
|
|
143
|
-
.ig__tile:hover { border-color:
|
|
143
|
+
.ig__tile:hover { border-color: rgb(var(--ink-rgb, 255 255 255) / 0.2); transform: translateY(-2px); }
|
|
144
144
|
.ig__logo {
|
|
145
145
|
display: grid;
|
|
146
146
|
place-items: center;
|
|
@@ -160,7 +160,7 @@ const statusLabel = { available: 'Available', beta: 'Beta', soon: 'Coming soon'
|
|
|
160
160
|
.ig__status { font-size: 0.6875rem; font-weight: 650; padding: 0.15rem 0.5rem; border-radius: var(--r-full, 999px); white-space: nowrap; }
|
|
161
161
|
.ig__status--available { background: rgba(52, 195, 143, 0.14); color: #7ee2b8; }
|
|
162
162
|
.ig__status--beta { background: rgba(201, 133, 0, 0.16); color: #f2c66a; }
|
|
163
|
-
.ig__status--soon { background:
|
|
163
|
+
.ig__status--soon { background: rgb(var(--ink-rgb, 255 255 255) / 0.06); color: var(--c-text-2, #a3a3a3); }
|
|
164
164
|
.ig__desc { margin: 0.35rem 0 0.6rem; font-size: 0.875rem; line-height: 1.5; color: var(--c-text-2, #a3a3a3); }
|
|
165
165
|
.ig__cat { font-size: 0.75rem; color: var(--c-text-3, #8a8a8a); }
|
|
166
166
|
@media (prefers-reduced-motion: reduce) { .ig__tile, .ig__chip { transition: none; } }
|
|
@@ -8,6 +8,7 @@ interface Props {
|
|
|
8
8
|
const { title = "Layout", subtitle = "Grids, containers, and structural sections." } = Astro.props;
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
+
<div class="cq-layout-showcase-cq">
|
|
11
12
|
<section class="layout-showcase">
|
|
12
13
|
<div class="container">
|
|
13
14
|
<div class="showcase-header">
|
|
@@ -82,8 +83,9 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
82
83
|
</div>
|
|
83
84
|
</div>
|
|
84
85
|
</section>
|
|
85
|
-
|
|
86
|
+
</div>
|
|
86
87
|
<style>
|
|
88
|
+
.cq-layout-showcase-cq { container-type: inline-size; }
|
|
87
89
|
.layout-showcase {
|
|
88
90
|
padding: var(--sp-16) 0;
|
|
89
91
|
position: relative;
|
|
@@ -100,8 +102,8 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
100
102
|
text-transform: uppercase;
|
|
101
103
|
letter-spacing: 0.1em;
|
|
102
104
|
color: var(--c-primary-light);
|
|
103
|
-
background:
|
|
104
|
-
border: 1px solid
|
|
105
|
+
background: color-mix(in srgb, var(--c-primary, #b8860b) 10%, transparent);
|
|
106
|
+
border: 1px solid color-mix(in srgb, var(--c-primary, #b8860b) 25%, transparent);
|
|
105
107
|
border-radius: var(--r-full);
|
|
106
108
|
margin-bottom: var(--sp-4);
|
|
107
109
|
}
|
|
@@ -123,7 +125,7 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
123
125
|
padding: var(--sp-12);
|
|
124
126
|
background: rgba(10, 10, 10, 0.6);
|
|
125
127
|
backdrop-filter: blur(20px);
|
|
126
|
-
border: 1px solid
|
|
128
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.08);
|
|
127
129
|
border-radius: var(--r-xl);
|
|
128
130
|
margin-bottom: var(--sp-6);
|
|
129
131
|
box-shadow: 0 20px 60px rgba(0,0,0,0.4);
|
|
@@ -159,8 +161,8 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
159
161
|
gap: var(--sp-3);
|
|
160
162
|
}
|
|
161
163
|
.bento-item {
|
|
162
|
-
background:
|
|
163
|
-
border: 1px solid
|
|
164
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.04);
|
|
165
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.08);
|
|
164
166
|
border-radius: var(--r-md);
|
|
165
167
|
min-height: 80px;
|
|
166
168
|
display: flex;
|
|
@@ -173,7 +175,7 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
173
175
|
content: '';
|
|
174
176
|
position: absolute;
|
|
175
177
|
inset: 0;
|
|
176
|
-
background: linear-gradient(135deg,
|
|
178
|
+
background: linear-gradient(135deg, color-mix(in srgb, var(--c-primary, #b8860b) 5%, transparent), transparent);
|
|
177
179
|
pointer-events: none;
|
|
178
180
|
}
|
|
179
181
|
.bento-item--wide {
|
|
@@ -200,8 +202,8 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
200
202
|
}
|
|
201
203
|
.split-screen__left,
|
|
202
204
|
.split-screen__right {
|
|
203
|
-
background:
|
|
204
|
-
border: 1px solid
|
|
205
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.04);
|
|
206
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.08);
|
|
205
207
|
border-radius: var(--r-md);
|
|
206
208
|
display: flex;
|
|
207
209
|
align-items: center;
|
|
@@ -213,7 +215,7 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
213
215
|
content: '';
|
|
214
216
|
position: absolute;
|
|
215
217
|
inset: 0;
|
|
216
|
-
background: linear-gradient(135deg,
|
|
218
|
+
background: linear-gradient(135deg, color-mix(in srgb, var(--c-primary, #b8860b) 5%, transparent), transparent);
|
|
217
219
|
pointer-events: none;
|
|
218
220
|
}
|
|
219
221
|
.split-screen__right::before {
|
|
@@ -232,8 +234,8 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
232
234
|
|
|
233
235
|
/* Footer Mockup */
|
|
234
236
|
.footer-mockup {
|
|
235
|
-
background:
|
|
236
|
-
border: 1px solid
|
|
237
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.04);
|
|
238
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.08);
|
|
237
239
|
border-radius: var(--r-md);
|
|
238
240
|
overflow: hidden;
|
|
239
241
|
}
|
|
@@ -244,8 +246,8 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
244
246
|
padding: var(--sp-4);
|
|
245
247
|
}
|
|
246
248
|
.footer-mockup__brand {
|
|
247
|
-
background:
|
|
248
|
-
border: 1px solid
|
|
249
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.03);
|
|
250
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.06);
|
|
249
251
|
border-radius: var(--r-sm);
|
|
250
252
|
min-height: 60px;
|
|
251
253
|
display: flex;
|
|
@@ -258,8 +260,8 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
258
260
|
gap: var(--sp-3);
|
|
259
261
|
}
|
|
260
262
|
.footer-mockup__col {
|
|
261
|
-
background:
|
|
262
|
-
border: 1px solid
|
|
263
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.03);
|
|
264
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.06);
|
|
263
265
|
border-radius: var(--r-sm);
|
|
264
266
|
min-height: 60px;
|
|
265
267
|
display: flex;
|
|
@@ -267,7 +269,7 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
267
269
|
justify-content: center;
|
|
268
270
|
}
|
|
269
271
|
.footer-mockup__bottom {
|
|
270
|
-
border-top: 1px solid
|
|
272
|
+
border-top: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.06);
|
|
271
273
|
padding: var(--sp-3) var(--sp-4);
|
|
272
274
|
display: flex;
|
|
273
275
|
align-items: center;
|
|
@@ -283,7 +285,7 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
283
285
|
.usage-code {
|
|
284
286
|
text-align: center;
|
|
285
287
|
padding: var(--sp-4);
|
|
286
|
-
background:
|
|
288
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.02);
|
|
287
289
|
border-radius: var(--r-md);
|
|
288
290
|
}
|
|
289
291
|
.usage-code code {
|
|
@@ -292,7 +294,7 @@ const { title = "Layout", subtitle = "Grids, containers, and structural sections
|
|
|
292
294
|
color: var(--c-primary-light);
|
|
293
295
|
}
|
|
294
296
|
|
|
295
|
-
@
|
|
297
|
+
@container (max-width: 640px) {
|
|
296
298
|
.preview-stage { padding: var(--sp-8) var(--sp-4); }
|
|
297
299
|
.bento-grid {
|
|
298
300
|
grid-template-columns: 1fr 1fr;
|
|
@@ -72,9 +72,9 @@ const {
|
|
|
72
72
|
align-items: center;
|
|
73
73
|
gap: 10px;
|
|
74
74
|
padding: 0.65rem 1.4rem;
|
|
75
|
-
background:
|
|
75
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.02);
|
|
76
76
|
backdrop-filter: blur(12px);
|
|
77
|
-
border: 1px solid
|
|
77
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.06);
|
|
78
78
|
border-radius: var(--r-full, 9999px);
|
|
79
79
|
color: var(--c-text-2, #a3a3a3);
|
|
80
80
|
font-size: 0.88rem;
|
|
@@ -84,8 +84,8 @@ const {
|
|
|
84
84
|
|
|
85
85
|
.logo-badge:hover {
|
|
86
86
|
color: var(--c-text-1, #ffffff);
|
|
87
|
-
background:
|
|
88
|
-
border-color:
|
|
87
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.06);
|
|
88
|
+
border-color: color-mix(in srgb, var(--c-primary, #b8860b) 40%, transparent);
|
|
89
89
|
transform: translateY(-2px);
|
|
90
90
|
}
|
|
91
91
|
|
|
@@ -42,6 +42,7 @@ const glyphs = [
|
|
|
42
42
|
];
|
|
43
43
|
---
|
|
44
44
|
|
|
45
|
+
<div class="cq-logo-wall-grid-cq">
|
|
45
46
|
<section class={`lwg lwg--${variant} lwg--${size} ${className}`} aria-labelledby={id} style={`--lwg-cols:${columns}`}>
|
|
46
47
|
<div class="lwg__inner">
|
|
47
48
|
<h2 id={id} class="lwg__title">{title}</h2>
|
|
@@ -64,8 +65,9 @@ const glyphs = [
|
|
|
64
65
|
</ul>
|
|
65
66
|
</div>
|
|
66
67
|
</section>
|
|
67
|
-
|
|
68
|
+
</div>
|
|
68
69
|
<style>
|
|
70
|
+
.cq-logo-wall-grid-cq { container-type: inline-size; }
|
|
69
71
|
.lwg {
|
|
70
72
|
--lwg-py: 4.5rem;
|
|
71
73
|
padding: var(--lwg-py) var(--sp-6, 1.5rem);
|
|
@@ -76,10 +78,10 @@ const glyphs = [
|
|
|
76
78
|
.lwg__inner { max-width: 1120px; margin: 0 auto; }
|
|
77
79
|
.lwg__title { margin: 0 auto 2.5rem; max-width: 560px; text-align: center; font-size: 1rem; font-weight: 550; line-height: 1.5; color: var(--c-text-2, #a3a3a3); text-wrap: balance; }
|
|
78
80
|
.lwg__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--lwg-cols), minmax(0, 1fr)); }
|
|
79
|
-
.lwg--divided .lwg__grid { gap: 1px; background:
|
|
81
|
+
.lwg--divided .lwg__grid { gap: 1px; background: rgb(var(--ink-rgb, 255 255 255) / 0.07); border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.07); border-radius: var(--r-lg, 20px); overflow: hidden; }
|
|
80
82
|
.lwg--cards .lwg__grid { gap: 0.75rem; }
|
|
81
83
|
.lwg__cell { display: grid; place-items: center; min-height: 112px; padding: 1.25rem; background: var(--c-bg, #050505); }
|
|
82
|
-
.lwg--cards .lwg__cell { border-radius: var(--r-md, 14px); background:
|
|
84
|
+
.lwg--cards .lwg__cell { border-radius: var(--r-md, 14px); background: rgb(var(--ink-rgb, 255 255 255) / 0.025); border: 1px solid var(--c-border, rgb(var(--ink-rgb, 255 255 255) / 0.07)); }
|
|
83
85
|
.lwg--plain .lwg__cell { background: transparent; }
|
|
84
86
|
.lwg__word { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 1.25rem; font-weight: 750; letter-spacing: -0.03em; color: var(--c-text-2, #a3a3a3); transition: color 0.25s ease; }
|
|
85
87
|
.lwg__cell:hover .lwg__word { color: var(--c-text-1, #fff); }
|
|
@@ -87,5 +89,5 @@ const glyphs = [
|
|
|
87
89
|
.lwg__cell:hover img { opacity: 1; filter: none; }
|
|
88
90
|
.lwg__link { display: grid; place-items: center; width: 100%; height: 100%; min-height: 44px; text-decoration: none; border-radius: 8px; }
|
|
89
91
|
.lwg__link:focus-visible { outline: 2px solid var(--c-primary-light, #d4a017); outline-offset: 2px; }
|
|
90
|
-
@
|
|
92
|
+
@container (max-width: 760px) { .lwg__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
|
|
91
93
|
</style>
|
|
@@ -8,6 +8,7 @@ interface Props {
|
|
|
8
8
|
const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigation patterns." } = Astro.props;
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
+
<div class="cq-navigation-showcase-cq">
|
|
11
12
|
<section class="navigation-showcase">
|
|
12
13
|
<div class="container">
|
|
13
14
|
<div class="showcase-header">
|
|
@@ -62,8 +63,9 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
62
63
|
</div>
|
|
63
64
|
</div>
|
|
64
65
|
</section>
|
|
65
|
-
|
|
66
|
+
</div>
|
|
66
67
|
<style>
|
|
68
|
+
.cq-navigation-showcase-cq { container-type: inline-size; }
|
|
67
69
|
.navigation-showcase {
|
|
68
70
|
padding: var(--sp-16) 0;
|
|
69
71
|
position: relative;
|
|
@@ -80,8 +82,8 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
80
82
|
text-transform: uppercase;
|
|
81
83
|
letter-spacing: 0.1em;
|
|
82
84
|
color: var(--c-primary-light);
|
|
83
|
-
background:
|
|
84
|
-
border: 1px solid
|
|
85
|
+
background: color-mix(in srgb, var(--c-primary, #b8860b) 10%, transparent);
|
|
86
|
+
border: 1px solid color-mix(in srgb, var(--c-primary, #b8860b) 25%, transparent);
|
|
85
87
|
border-radius: var(--r-full);
|
|
86
88
|
margin-bottom: var(--sp-4);
|
|
87
89
|
}
|
|
@@ -103,7 +105,7 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
103
105
|
padding: var(--sp-12);
|
|
104
106
|
background: rgba(10, 10, 10, 0.6);
|
|
105
107
|
backdrop-filter: blur(20px);
|
|
106
|
-
border: 1px solid
|
|
108
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.08);
|
|
107
109
|
border-radius: var(--r-xl);
|
|
108
110
|
margin-bottom: var(--sp-6);
|
|
109
111
|
box-shadow: 0 20px 60px rgba(0,0,0,0.4);
|
|
@@ -127,8 +129,8 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
127
129
|
align-items: center;
|
|
128
130
|
justify-content: space-between;
|
|
129
131
|
padding: 0.85rem 1.5rem;
|
|
130
|
-
background:
|
|
131
|
-
border: 1px solid
|
|
132
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.04);
|
|
133
|
+
border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.08);
|
|
132
134
|
border-radius: var(--r-lg);
|
|
133
135
|
backdrop-filter: blur(10px);
|
|
134
136
|
}
|
|
@@ -166,16 +168,16 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
166
168
|
font-weight: 600;
|
|
167
169
|
font-family: var(--font-sans);
|
|
168
170
|
background: linear-gradient(135deg, var(--c-primary-light), var(--c-primary));
|
|
169
|
-
color: #0a0a0a;
|
|
171
|
+
color: var(--c-on-primary, #0a0a0a);
|
|
170
172
|
border: none;
|
|
171
173
|
border-radius: var(--r-md);
|
|
172
174
|
cursor: pointer;
|
|
173
|
-
box-shadow: 0 4px 16px
|
|
175
|
+
box-shadow: 0 4px 16px color-mix(in srgb, var(--c-primary, #b8860b) 25%, transparent);
|
|
174
176
|
transition: all 0.25s ease;
|
|
175
177
|
}
|
|
176
178
|
.navbar-mock__cta:hover {
|
|
177
179
|
transform: translateY(-1px);
|
|
178
|
-
box-shadow: 0 6px 24px
|
|
180
|
+
box-shadow: 0 6px 24px color-mix(in srgb, var(--c-primary, #b8860b) 35%, transparent);
|
|
179
181
|
}
|
|
180
182
|
|
|
181
183
|
/* Tabs Mockup */
|
|
@@ -185,7 +187,7 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
185
187
|
align-items: flex-end;
|
|
186
188
|
gap: var(--sp-6);
|
|
187
189
|
padding: 0 var(--sp-2);
|
|
188
|
-
border-bottom: 2px solid
|
|
190
|
+
border-bottom: 2px solid rgb(var(--ink-rgb, 255 255 255) / 0.08);
|
|
189
191
|
}
|
|
190
192
|
.tabs-mock__tab {
|
|
191
193
|
padding: 0.7rem 0.5rem;
|
|
@@ -245,7 +247,7 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
245
247
|
.usage-code {
|
|
246
248
|
text-align: center;
|
|
247
249
|
padding: var(--sp-4);
|
|
248
|
-
background:
|
|
250
|
+
background: rgb(var(--ink-rgb, 255 255 255) / 0.02);
|
|
249
251
|
border-radius: var(--r-md);
|
|
250
252
|
}
|
|
251
253
|
.usage-code code {
|
|
@@ -254,7 +256,7 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
254
256
|
color: var(--c-primary-light);
|
|
255
257
|
}
|
|
256
258
|
|
|
257
|
-
@
|
|
259
|
+
@container (max-width: 768px) {
|
|
258
260
|
.navbar-mock {
|
|
259
261
|
flex-direction: column;
|
|
260
262
|
gap: var(--sp-4);
|
|
@@ -273,7 +275,7 @@ const { title = "Navigation", subtitle = "Navbars, tabs, breadcrumbs and navigat
|
|
|
273
275
|
.preview-stage { padding: var(--sp-8) var(--sp-4); }
|
|
274
276
|
}
|
|
275
277
|
|
|
276
|
-
@
|
|
278
|
+
@container (max-width: 480px) {
|
|
277
279
|
.navbar-mock__links {
|
|
278
280
|
display: none;
|
|
279
281
|
}
|