Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
43a2261
fix(docs-next): extract legacy fragment header into template metadata
dancormier Apr 14, 2026
eb0e1ed
fix(docs-next): match legacy badges by text label, not URL domain
dancormier Apr 15, 2026
6237de4
fix(docs-next): only extract proper figma.com URLs for Figma buttons
dancormier Apr 15, 2026
061b188
fix(docs-next): fix duplicate descriptions and Figma URLs in legacy p…
dancormier Apr 15, 2026
d161862
feat(docs-next): remove stacks-docs build dependency
dancormier Apr 15, 2026
c29b7f8
chore: revert stacks-docs changes — out of scope for this branch
dancormier Apr 15, 2026
34effaf
chore(docs-next): remove unused legacy assets
dancormier Apr 15, 2026
8a590b5
feat(docs-next): convert 38 legacy fragment pages to mdsvex
dancormier Apr 15, 2026
327a70c
feat(docs-next): add ClassTable component + convert activity-indicato…
dancormier Apr 15, 2026
bdea068
fix(docs-next): rename ClassTable prop rows→classes and fix tabindex …
dancormier Apr 15, 2026
eb42fea
fix(docs-next): restore full activity-indicator examples with correct…
dancormier Apr 15, 2026
99fd9ac
fix(docs-next): remove IconShieldXSm — not in public stacks-icons pac…
dancormier Apr 15, 2026
ef9600a
fix(docs-next): remove remaining IconShieldXSm from variations block
dancormier Apr 15, 2026
48f51e5
feat(docs-next): add Example component and style example containers
dancormier Apr 15, 2026
fa2ad8b
fix(docs-next): use bc-black-225 for Example container border
dancormier Apr 15, 2026
d8851c0
fix(docs-next): restore original prose text under Default heading
dancormier Apr 15, 2026
83e3dc0
fix(docs-next): restore original Default code block verbatim
dancormier Apr 15, 2026
dc7cee6
feat(docs-next): restore heading anchor icons on all mdsvex pages
dancormier Apr 15, 2026
e607e53
feat(docs-next): replace copy-to-markdown button with copy-link icon …
dancormier Apr 15, 2026
4c6a600
fix(docs-next): use s-btn__link and smaller icon for breadcrumb copy …
dancormier Apr 15, 2026
c52c5cb
fix(docs-next): use Button component and atomic classes for breadcrum…
dancormier Apr 15, 2026
3eb575c
fix(docs-next): clean up breadcrumb layout with flex + gap
dancormier Apr 15, 2026
f799f34
fix(docs-next): add d-inline-flex to breadcrumb copy button
dancormier Apr 15, 2026
824eb90
fix(docs-next): restore IconShieldXSm from stacks-icons-legacy
dancormier Apr 15, 2026
a55ae8c
fix(docs-next): hide Contents sidebar on smaller viewports instead of…
dancormier Apr 15, 2026
9647616
fix(docs-next): allow .doc flex item to shrink to prevent horizontal …
dancormier Apr 15, 2026
a5f4e97
refactor(docs-next): replace all flex--item* classes with explicit ut…
dancormier Apr 15, 2026
231acdc
fix(docs-next): cap article at wmx12 to constrain content width
dancormier Apr 15, 2026
ccc281c
fix(docs-next): use wmx9 on .doc to cap content column at 960px
dancormier Apr 15, 2026
1d0d485
feat(docs-next): convert avatars page to mdsvex
dancormier Apr 15, 2026
ec2d864
fix(docs-next): limit activity avatar examples to 16px and 24px
dancormier Apr 15, 2026
91ae4b6
fix(docs-next): use explicit bg classes and team-avatar.png in Stack …
dancormier Apr 15, 2026
1c16b34
fix(docs-next): update Stack Internal table headings to Default color…
dancormier Apr 15, 2026
c3c88a1
fix(docs-next): allow overflow to be visible on Example container
dancormier Apr 15, 2026
52bc1ee
fix(docs-next): rename Stack Internal column heading Default color → …
dancormier Apr 15, 2026
dad1426
fix(docs-next): use Button link variant for Edit/Figma/Svelte action …
dancormier Apr 15, 2026
a6c137a
fix(docs-next): increase action button gap to g16 and apply fs-caption
dancormier Apr 15, 2026
b67153c
fix(docs-next): use Link component for Edit/Figma/Svelte action buttons
dancormier Apr 15, 2026
dfd4820
fix(docs-next): fix TOC active item highlighting accuracy
dancormier Apr 15, 2026
044e591
feat(docs-next): convert badges page to mdsvex
dancormier Apr 15, 2026
9c650bf
feat(docs-next): add collapsible Show all classes button to ClassTable
dancormier Apr 15, 2026
6f49c40
fix(docs-next): remove wmx5 from description, replace gs* with g* in …
dancormier Apr 15, 2026
096829d
feat(docs-next): refactor ClassTable with v-truncate-fade and flexibl…
dancormier Apr 15, 2026
04b40e7
fix(docs-next): make ClassTable expandable opt-in (default false)
dancormier Apr 15, 2026
551dc35
feat(docs-next): convert banners page to mdsvex
dancormier Apr 15, 2026
c13e710
feat(docs-next): extract BannerDemo component for banners interactive…
dancormier Apr 15, 2026
53afb43
feat(docs-next): scope Stack Sans Text to nav and branded UI, not bod…
dancormier Apr 15, 2026
64a8bb5
feat(docs-next): apply ff-stack-sans-headline to nav/TOC; orange → th…
dancormier Apr 15, 2026
6e049cc
fix(docs-next): add custom theme color palette so theme toggle works
dancormier Apr 15, 2026
667c158
fix(docs-next): add ps-relative to static banner examples to prevent …
dancormier Apr 15, 2026
adc3094
fix(docs-next): fix banners page structure and example content
dancormier Apr 15, 2026
61b7b8f
fix(docs-next): remove Last updated date from all docs pages
dancormier Apr 15, 2026
53caa57
fix(docs-next): only hide Last updated on /system pages; restore it o…
dancormier Apr 15, 2026
ef57cc0
Merge remote-tracking branch 'origin/main' into STACKS-843/legacy-hea…
dancormier Apr 15, 2026
6aa52cc
fix(docs-next): remove explicit font-weight from body — inherits from…
dancormier Apr 15, 2026
008ec16
feat(docs-next): Stack Sans Text for docs UI, system font inside exam…
dancormier Apr 15, 2026
5dc3326
fix(docs-next): body font-weight 300; reset to initial inside Example…
dancormier Apr 15, 2026
3beacbf
fix(docs-next): fix banner example layout and add bg-black-100 to dem…
dancormier Apr 15, 2026
6fbe24a
Revert "fix(docs-next): fix banner example layout and add bg-black-10…
dancormier Apr 15, 2026
3f5ddca
fix(docs-next): add is-pinned to static banner examples; bg-black-100…
dancormier Apr 15, 2026
e89b45f
feat(docs-next): use Notice Svelte component for banner examples
dancormier Apr 15, 2026
51c0216
Revert "feat(docs-next): use Notice Svelte component for banner examp…
dancormier Apr 15, 2026
5981092
feat(docs-next): create BannerExample component for banner static exa…
dancormier Apr 15, 2026
d09bb1f
fix(docs-next): default BannerDemo to warning + important + pinned
dancormier Apr 15, 2026
ff5c305
feat(docs-next): use Select and Checkbox Svelte components in BannerDemo
dancormier Apr 15, 2026
3d06a97
fix(docs-next): restore original JavaScript section on banners page
dancormier Apr 15, 2026
39eb77f
fix(docs-next): restore original table content in banners JavaScript …
dancormier Apr 15, 2026
74e1b48
feat(docs-next): convert bling page to mdsvex
dancormier Apr 15, 2026
26eae9c
fix(docs-next): restore bling example tables and add Figma link
dancormier Apr 15, 2026
0623401
feat(docs-next): add ExampleTable component; use in bling page
dancormier Apr 15, 2026
a39ea19
feat(docs-next): add Classes section, Sizes note, fix figma URL on bu…
dancormier Apr 15, 2026
64b108a
fix(docs-next): wrap Notice content in span to prevent flex layout is…
dancormier Apr 15, 2026
10a8f4d
feat(docs-next): wrap all button example tables in Example containers
dancormier Apr 15, 2026
2e54097
feat(docs-next): wrap ordering examples in Example; convert additiona…
dancormier Apr 15, 2026
fe0bdea
fix(docs-next): use native Google SVG colors in Social example
dancormier Apr 15, 2026
4125419
fix(docs-next): add mb16 to Sizes notice
dancormier Apr 15, 2026
82e129a
fix(docs-next): escape curly braces in code-blocks pre elements
dancormier Apr 15, 2026
b1fea7a
feat(docs-next): convert code-blocks page to mdsvex
dancormier Apr 15, 2026
29409ab
fix(docs-next): restore search button, add figma+code to code-blocks
dancormier Apr 15, 2026
8df63b9
fix(docs-next): fix search button styling and remove disabled state
dancormier Apr 15, 2026
46a16d0
fix(docs-next): use Link for search button; fix mb128 forehead on ima…
dancormier Apr 15, 2026
48011b7
fix(docs-next): add spacing around nav header and above navigation list
dancormier Apr 15, 2026
effce6d
feat(docs-next): add editor page with live StacksEditor demos
dancormier Apr 15, 2026
6e76fff
fix(docs-next): fc-brand on logo, restore pt16 px24 padding on nav he…
dancormier Apr 15, 2026
7d5d94d
fix(docs-next): double top padding on nav header to pt32
dancormier Apr 15, 2026
1265fe3
feat(docs-next): convert empty-states page to mdsvex
dancormier Apr 15, 2026
0000a40
refactor(docs-next): replace .doc X descendant selectors with individ…
dancormier Apr 15, 2026
560d6a7
fix(docs-next): keep --brand-color-* tokens, remove duplicate utility…
dancormier Apr 15, 2026
cb60920
fix(docs-next): add wmx4 p48 to all EmptyState examples
dancormier Apr 15, 2026
14605de
revert(docs-next): restore Search.svelte to its original state
dancormier Apr 15, 2026
ac10d5b
fix(docs-next): use actual markdown content for editor tables example
dancormier Apr 15, 2026
833a4fb
feat(docs-next): convert links page to mdsvex
dancormier Apr 15, 2026
ecc56e0
fix(docs-next): replace docs-card with s-card in anchor examples; mat…
dancormier Apr 15, 2026
c4087f8
fix(docs-next): add .docs-card CSS; use it (not s-card) in anchor exa…
dancormier Apr 15, 2026
f6805d7
fix(docs-next): remove docs-card from code blocks; keep in Examples only
dancormier Apr 15, 2026
0ce7023
docs(docs-next): add TODO for s-anchors styling within s-prose
dancormier Apr 15, 2026
9914328
refactor(docs-next): remove docs-p class
dancormier Apr 15, 2026
ffdb6d7
fix(docs-next): use HTML code tags in links description (rendered via…
dancormier Apr 15, 2026
7bc8f2c
feat(docs-next): convert loader page to mdsvex
dancormier Apr 15, 2026
17fe981
fix(docs-next): add parent column to ClassTable; use it in loader.md
dancormier Apr 15, 2026
b256bec
fix(docs-next): add parent column to avatars/banners/buttons class ta…
dancormier Apr 15, 2026
d3a4d91
fix(docs-next): constrain description/definition column to s-table--c…
dancormier Apr 15, 2026
adf9211
fix(docs-next): render N/A in fc-black-400 in ClassTable
dancormier Apr 15, 2026
a52c01c
fix(docs-next): N/A color fc-black-400 → fc-black-350
dancormier Apr 15, 2026
e40fe06
fix(docs-next): render class names as inline code in ClassTable columns
dancormier Apr 15, 2026
8447edd
feat(docs-next): convert menus page to mdsvex
dancormier Apr 15, 2026
d440dcb
fix(docs-next): restore navigation link in menus examples intro
dancormier Apr 15, 2026
79bf0e8
fix(docs-next): restore popover and card links in menus Basic section…
dancormier Apr 15, 2026
5cb514b
feat(docs-next): add docs-copy class to all p elements via rehype plugin
dancormier Apr 15, 2026
fc50f58
fix(docs-next): add color: inherit to .docs-copy a:not([class])
dancormier Apr 15, 2026
c6baa06
fix(docs-next): apply color: inherit to .docs-copy .docs-link
dancormier Apr 16, 2026
591d0ad
fix(docs-next): add ws1 to Basic examples, ws2 to all other menu exam…
dancormier Apr 16, 2026
16b800c
feat(docs-next): convert modals page to mdsvex
dancormier Apr 16, 2026
05404da
chore(docs-next): delete 53 unused legacy fragment files
dancormier Apr 16, 2026
90aa205
fix(docs-next): use ClassTable for all modals tables; fix examples se…
dancormier Apr 16, 2026
95d4d9b
fix(docs-next): propagate positioning to s-modal--dialog for inline e…
dancormier Apr 16, 2026
d2e9ae0
Revert "fix(docs-next): propagate positioning to s-modal--dialog for …
dancormier Apr 16, 2026
35b4ff7
fix(docs-next): inline modal examples — no p16, ps-absolute z-base mn…
dancormier Apr 16, 2026
d8e160c
fix(docs-next): use raw HTML for inline modal examples so ps-absolute…
dancormier Apr 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions packages/stacks-docs-next/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,4 @@ Thumbs.db
vite.config.js.timestamp-*
vite.config.ts.timestamp-*

/static/docs
/static/legacy
/static/docs
5 changes: 3 additions & 2 deletions packages/stacks-docs-next/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@
"type": "module",
"scripts": {
"dev": "vite dev",
"predev": "node scripts/copy-legacy.mjs",
"prebuild": "npm run build -w @stackoverflow/stacks && npm run build -w @stackoverflow/stacks-svelte && npm run build -w @stackoverflow/stacks-docs && node scripts/copy-legacy.mjs",
"prebuild": "npm run build -w @stackoverflow/stacks && npm run build -w @stackoverflow/stacks-svelte",
"build": "bash netlify-setup.sh && npm run init-private-content && vite build",
"preview": "vite preview",
"prepare": "svelte-kit sync || echo ''",
Expand All @@ -28,7 +27,9 @@
"@docsearch/js": "^4.3.2",
"@hbsnow/rehype-sectionize": "^1.0.7",
"@stackoverflow/stacks": "*",
"@stackoverflow/stacks-editor": "*",
"@stackoverflow/stacks-icons": "*",
"@stackoverflow/stacks-icons-legacy": "*",
"@stackoverflow/stacks-svelte": "*",
"@stefanprobst/rehype-extract-toc": "^3.0.0",
"better-auth": "^1.4.7",
Expand Down
40 changes: 0 additions & 40 deletions packages/stacks-docs-next/scripts/copy-legacy.mjs

This file was deleted.

248 changes: 134 additions & 114 deletions packages/stacks-docs-next/src/app.css
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
@import "@stackoverflow/stacks/dist/css/stacks.css";

/* Brand color tokens — used by brand docs components.
The utility classes (.bg-brand-*, .fc-brand-*) are already provided by Stacks CSS. */
:root {
--brand-color-orange: #ff5e00;
--brand-color-orange-medium: #6e1527;
Expand Down Expand Up @@ -31,78 +33,55 @@
--brand-color-gray-200: #dee0e3;
}

/* Add to Stacks classic eventually */

.bg-brand-orange {
background: var(--brand-color-orange);
}
.fc-brand-orange {
color: var(--brand-color-orange) !important;
}
.bg-brand-orange-medium {
background: var(--brand-color-orange-medium);
}
.bg-brand-orange-dark {
background: var(--brand-color-orange-dark);
}

.bg-brand-white {
background: var(--brand-color-white);
}
.bg-brand-black {
background: var(--brand-color-black);
}
.bg-brand-off-white {
background: var(--brand-color-off-white);
}

.bg-brand-beige {
background: var(--brand-color-beige);
}

.bg-brand-blue {
background: var(--brand-color-blue);
}
.bg-brand-blue-light {
background: var(--brand-color-blue-light);
}
.bg-brand-blue-dark {
background: var(--brand-color-blue-dark);
}

.bg-brand-purple {
background: var(--brand-color-purple);
}
.bg-brand-purple-dark {
background: var(--brand-color-purple-dark);
}

.bg-brand-pink {
background: var(--brand-color-pink);
}
.bg-brand-pink-dark {
background: var(--brand-color-pink-dark);
}

.bg-brand-green {
background: var(--brand-color-green);
}
.bg-brand-green-dark {
background: var(--brand-color-green-dark);
}

.bg-brand-yellow {
background: var(--brand-color-yellow);
}
.bg-brand-yellow-dark {
background: var(--brand-color-yellow-dark);
}

.bg-brand-gray {
background: var(--brand-color-gray);
}
.bg-brand-gray-200 {
background: var(--brand-color-gray-200);
/* Custom theme color palette — activates when body has theme-custom + themed classes.
Primary: teal (h:170 s:37% l:48%), Secondary: purple (h:260 s:29% l:55%).
Matches the custom theme defined in stacks-docs. */
body.theme-custom.themed {
--theme-base-primary-color-h: 170;
--theme-base-primary-color-s: 37%;
--theme-base-primary-color-l: 48%;
--theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9)));
--theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75)));
--theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5)));
--theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l));
--theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3)));
--theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6)));
--theme-primary-custom: var(--theme-primary-custom-400);
--theme-base-secondary-color-h: 260;
--theme-base-secondary-color-s: 29%;
--theme-base-secondary-color-l: 55%;
--theme-secondary-custom-100: hsl(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), calc(var(--theme-base-secondary-color-l) + ((100% - var(--theme-base-secondary-color-l)) * .9)));
--theme-secondary-custom-200: hsl(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), calc(var(--theme-base-secondary-color-l) + ((100% - var(--theme-base-secondary-color-l)) * .75)));
--theme-secondary-custom-300: hsl(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), calc(var(--theme-base-secondary-color-l) + ((100% - var(--theme-base-secondary-color-l)) * .5)));
--theme-secondary-custom-400: hsl(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), var(--theme-base-secondary-color-l));
--theme-secondary-custom-500: hsl(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), calc(var(--theme-base-secondary-color-l) + (var(--theme-base-secondary-color-l) * -.3)));
--theme-secondary-custom-600: hsl(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), calc(var(--theme-base-secondary-color-l) + (var(--theme-base-secondary-color-l) * -.6)));
--theme-secondary-custom: var(--theme-secondary-custom-400);
--theme-secondary-custom-focus-ring: hsla(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), var(--theme-base-secondary-color-l), 0.15);
--theme-secondary-custom-translucent: hsla(var(--theme-base-secondary-color-h), var(--theme-base-secondary-color-s), var(--theme-base-secondary-color-l), 0.15);
/* Dark mode variants */
--theme-dark-primary-color-h: 170;
--theme-dark-primary-color-s: 50%;
--theme-dark-primary-color-l: 60%;
--theme-dark-primary-custom-100: hsl(var(--theme-dark-primary-color-h), calc(var(--theme-dark-primary-color-s) + (var(--theme-dark-primary-color-s) * -.6)), calc(var(--theme-dark-primary-color-l) + (var(--theme-dark-primary-color-l) * -.7)));
--theme-dark-primary-custom-200: hsl(var(--theme-dark-primary-color-h), calc(var(--theme-dark-primary-color-s) + (var(--theme-dark-primary-color-s) * -.4)), calc(var(--theme-dark-primary-color-l) + (var(--theme-dark-primary-color-l) * -.5)));
--theme-dark-primary-custom-300: hsl(var(--theme-dark-primary-color-h), calc(var(--theme-dark-primary-color-s) + (var(--theme-dark-primary-color-s) * -.3)), calc(var(--theme-dark-primary-color-l) + (var(--theme-dark-primary-color-l) * -.2)));
--theme-dark-primary-custom-400: hsl(var(--theme-dark-primary-color-h), var(--theme-dark-primary-color-s), var(--theme-dark-primary-color-l));
--theme-dark-primary-custom-500: hsl(var(--theme-dark-primary-color-h), var(--theme-dark-primary-color-s), calc(var(--theme-dark-primary-color-l) + ((100% - var(--theme-dark-primary-color-l)) * .5)));
--theme-dark-primary-custom-600: hsl(var(--theme-dark-primary-color-h), var(--theme-dark-primary-color-s), calc(var(--theme-dark-primary-color-l) + ((100% - var(--theme-dark-primary-color-l)) * .8)));
--theme-dark-primary-custom: var(--theme-dark-primary-custom-400);
--theme-dark-secondary-color-h: 260;
--theme-dark-secondary-color-s: 70%;
--theme-dark-secondary-color-l: 70%;
--theme-dark-secondary-custom-100: hsl(var(--theme-dark-secondary-color-h), calc(var(--theme-dark-secondary-color-s) + (var(--theme-dark-secondary-color-s) * -.6)), calc(var(--theme-dark-secondary-color-l) + (var(--theme-dark-secondary-color-l) * -.7)));
--theme-dark-secondary-custom-200: hsl(var(--theme-dark-secondary-color-h), calc(var(--theme-dark-secondary-color-s) + (var(--theme-dark-secondary-color-s) * -.4)), calc(var(--theme-dark-secondary-color-l) + (var(--theme-dark-secondary-color-l) * -.5)));
--theme-dark-secondary-custom-300: hsl(var(--theme-dark-secondary-color-h), calc(var(--theme-dark-secondary-color-s) + (var(--theme-dark-secondary-color-s) * -.3)), calc(var(--theme-dark-secondary-color-l) + (var(--theme-dark-secondary-color-l) * -.2)));
--theme-dark-secondary-custom-400: hsl(var(--theme-dark-secondary-color-h), var(--theme-dark-secondary-color-s), var(--theme-dark-secondary-color-l));
--theme-dark-secondary-custom-500: hsl(var(--theme-dark-secondary-color-h), var(--theme-dark-secondary-color-s), calc(var(--theme-dark-secondary-color-l) + ((100% - var(--theme-dark-secondary-color-l)) * .5)));
--theme-dark-secondary-custom-600: hsl(var(--theme-dark-secondary-color-h), var(--theme-dark-secondary-color-s), calc(var(--theme-dark-secondary-color-l) + ((100% - var(--theme-dark-secondary-color-l)) * .8)));
--theme-dark-secondary-custom: var(--theme-dark-secondary-custom-400);
--theme-dark-secondary-custom-focus-ring: hsla(var(--theme-dark-secondary-color-h), var(--theme-dark-secondary-color-s), var(--theme-dark-secondary-color-l), 0.25);
--theme-dark-secondary-custom-translucent: hsla(var(--theme-dark-secondary-color-h), var(--theme-dark-secondary-color-s), var(--theme-dark-secondary-color-l), 0.25);
}

/* Override Stacks defaults */
Expand Down Expand Up @@ -131,10 +110,6 @@ body {
src: url("/fonts/IBMPlexMono-Regular.woff2") format("woff2");
}

.ff-stack-sans {
font-family: "Stack Sans Text";
font-weight: 400;
}
.ff-stack-sans-headline,
.ff-stack-sans-headline-notch {
font-family: "Stack Sans Headline";
Expand Down Expand Up @@ -202,79 +177,117 @@ footer {
}
}

/* Document styles */

.doc h1 a,
.doc h2 a,
.doc h3 a,
.doc h4 a,
.doc h5 a {
/* Prose paragraph styling — applied to all p elements by the addDocClasses rehype plugin */
.docs-copy {
color: var(--black-500);
font-size: var(--fs-body2);
line-height: 1.5;
margin-bottom: var(--su16);
margin-top: 0;
}
.docs-copy a:not([class]),
.docs-copy .s-link {
text-decoration: underline;
}
.docs-copy .docs-link {
color: inherit;
}
.docs-copy code {
font-size: 0.875em;
}
.docs-copy strong {
color: var(--black-600);
}

/* Document styles — individual classes applied by the addDocClasses rehype plugin */

/* Links and SVGs inside headings */
.docs-heading .docs-link,
.docs-heading .docs-heading-anchor {
color: inherit !important;
text-decoration: none;
}
.doc h1 svg,
.doc h2 svg,
.doc h3 svg,
.doc h4 svg,
.doc h5 svg {
.docs-heading svg {
vertical-align: middle;
margin-right: 4px;
}
.doc img,
.doc iframe {

/* Heading flex layout (heading text + anchor icon side-by-side) */
.docs-heading {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 8px;
}

/* Heading anchor icon appended by rehype-autolink-headings */
.docs-heading-anchor {
flex-shrink: 0;
color: var(--black-300);
line-height: 1;
margin-bottom: 2px;
}
.docs-heading-anchor:hover {
color: var(--black-600);
}

/* Heading-specific overrides */
.docs-h2 {
font-size: var(--_pr-h1-fs);
}
.docs-h4 {
color: var(--black-400);
}

/* Images and iframes */
.docs-img,
.docs-iframe {
width: 100%;
height: auto;
display: block;
}
.doc iframe {
.docs-iframe {
aspect-ratio: 16 / 9.675;
}
.doc .doc__grid {

/* Grid layout helper */
.docs-grid {
margin: 12px 0;
}
.doc .doc__grid:not(.doc__grid + .doc__grid):not(:has(+ .doc__grid)) {
.docs-grid:not(.docs-grid + .docs-grid):not(:has(+ .docs-grid)) {
margin: 32px 0;
}
.doc section {

/* Sections generated by rehype-sectionize */
.docs-section {
border-top: 1px solid var(--black-150);
position: relative;
padding: 20px 0;
margin: 20px 0;
}
.doc h1 a,
.doc h2 a,
.doc h3 a,
.doc h4 a {
color: inherit !important;
}
.doc section[data-heading-rank] {
.docs-section[data-heading-rank] {
margin-top: 32px;
}
.doc section[data-heading-rank="2"] > p {
.docs-section[data-heading-rank="2"] > .docs-p {
color: var(--fc-medium);
}
.doc section > section {
.docs-section > .docs-section {
border-top: 0;
padding: 0;
margin: 0;
}
.doc p:not(:has(img)),
.doc li {

/* Prose elements */
.docs-li {
max-width: 800px;
}
.doc ul li {
.docs-ul > .docs-li {
list-style-type: square;
}
.doc nav ul li {
.docs-nav .docs-li {
list-style: none;
}
.doc h2 {
font-size: var(--_pr-h1-fs);
}
.doc h4 {
color: var(--black-400);
}
.doc a {
.docs-link {
font-weight: 500;
}

Expand Down Expand Up @@ -340,6 +353,13 @@ footer {
border-color: var(--black-300);
}

/* Docs card — used in example containers to simulate a card-like context */
.docs-card {
border: var(--su1) solid var(--black-225);
border-radius: var(--su4);
padding: var(--su16);
}

/* Agolia Docsearch */

.DocSearch-Container {
Expand Down
Loading
Loading