@astrojs/starlight 0.33.2 → 0.34.0

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 (85) hide show
  1. package/CHANGELOG.md +98 -0
  2. package/components/AnchorHeading.astro +53 -0
  3. package/components/Banner.astro +14 -12
  4. package/components/ContentNotice.astro +13 -11
  5. package/components/ContentPanel.astro +17 -15
  6. package/components/EditLink.astro +10 -8
  7. package/components/Footer.astro +30 -28
  8. package/components/Header.astro +54 -51
  9. package/components/Hero.astro +60 -58
  10. package/components/MobileMenuFooter.astro +19 -16
  11. package/components/MobileMenuToggle.astro +41 -37
  12. package/components/MobileTableOfContents.astro +71 -69
  13. package/components/Page.astro +8 -8
  14. package/components/PageFrame.astro +61 -57
  15. package/components/PageSidebar.astro +33 -31
  16. package/components/PageTitle.astro +8 -6
  17. package/components/Pagination.astro +38 -36
  18. package/components/Search.astro +277 -272
  19. package/components/Select.astro +50 -46
  20. package/components/SidebarPersister.astro +4 -2
  21. package/components/SidebarSublist.astro +78 -76
  22. package/components/SiteTitle.astro +17 -15
  23. package/components/SkipLink.astro +17 -15
  24. package/components/SocialIcons.astro +9 -7
  25. package/components/TableOfContents/TableOfContentsList.astro +49 -47
  26. package/components/TwoColumnContent.astro +32 -30
  27. package/index.ts +11 -4
  28. package/integrations/expressive-code/index.ts +2 -0
  29. package/integrations/heading-links.ts +104 -0
  30. package/integrations/virtual-user-config.ts +9 -0
  31. package/package.json +8 -3
  32. package/schemas/head.ts +2 -2
  33. package/schemas/i18n.ts +2 -0
  34. package/style/anchor-links.css +125 -0
  35. package/style/asides.css +46 -44
  36. package/style/layers.css +1 -0
  37. package/style/markdown.css +195 -189
  38. package/style/print.css +30 -35
  39. package/style/props.css +180 -178
  40. package/style/reset.css +42 -40
  41. package/style/util.css +51 -49
  42. package/translations/ar.json +2 -1
  43. package/translations/ca.json +2 -1
  44. package/translations/cs.json +2 -1
  45. package/translations/da.json +2 -1
  46. package/translations/de.json +2 -1
  47. package/translations/en.json +2 -1
  48. package/translations/es.json +2 -1
  49. package/translations/fa.json +2 -1
  50. package/translations/fr.json +2 -1
  51. package/translations/gl.json +2 -1
  52. package/translations/he.json +2 -1
  53. package/translations/hi.json +2 -1
  54. package/translations/id.json +2 -1
  55. package/translations/it.json +2 -1
  56. package/translations/ja.json +2 -1
  57. package/translations/ko.json +2 -1
  58. package/translations/lv.json +2 -1
  59. package/translations/nb.json +2 -1
  60. package/translations/nl.json +2 -1
  61. package/translations/pl.json +2 -1
  62. package/translations/pt.json +2 -1
  63. package/translations/ro.json +2 -1
  64. package/translations/ru.json +2 -1
  65. package/translations/sk.json +2 -1
  66. package/translations/sv.json +2 -1
  67. package/translations/tr.json +2 -1
  68. package/translations/uk.json +2 -1
  69. package/translations/vi.json +2 -1
  70. package/translations/zh-CN.json +2 -1
  71. package/translations/zh-TW.json +2 -1
  72. package/user-components/Badge.astro +118 -116
  73. package/user-components/Card.astro +44 -42
  74. package/user-components/CardGrid.astro +20 -18
  75. package/user-components/FileTree.astro +105 -103
  76. package/user-components/Icon.astro +7 -5
  77. package/user-components/LinkButton.astro +43 -41
  78. package/user-components/LinkCard.astro +45 -43
  79. package/user-components/Steps.astro +65 -61
  80. package/user-components/Tabs.astro +35 -33
  81. package/utils/head.ts +12 -4
  82. package/utils/starlight-page.ts +16 -19
  83. package/utils/user-config.ts +14 -0
  84. package/virtual-internal.d.ts +2 -0
  85. package/style/shiki.css +0 -13
package/style/props.css CHANGED
@@ -1,184 +1,186 @@
1
- :root,
2
- ::backdrop {
3
- /* Colors (dark mode) */
4
- --sl-color-white: hsl(0, 0%, 100%); /* “white” */
5
- --sl-color-gray-1: hsl(224, 20%, 94%);
6
- --sl-color-gray-2: hsl(224, 6%, 77%);
7
- --sl-color-gray-3: hsl(224, 6%, 56%);
8
- --sl-color-gray-4: hsl(224, 7%, 36%);
9
- --sl-color-gray-5: hsl(224, 10%, 23%);
10
- --sl-color-gray-6: hsl(224, 14%, 16%);
11
- --sl-color-black: hsl(224, 10%, 10%);
12
-
13
- --sl-hue-orange: 41;
14
- --sl-color-orange-low: hsl(var(--sl-hue-orange), 39%, 22%);
15
- --sl-color-orange: hsl(var(--sl-hue-orange), 82%, 63%);
16
- --sl-color-orange-high: hsl(var(--sl-hue-orange), 82%, 87%);
17
- --sl-hue-green: 101;
18
- --sl-color-green-low: hsl(var(--sl-hue-green), 39%, 22%);
19
- --sl-color-green: hsl(var(--sl-hue-green), 82%, 63%);
20
- --sl-color-green-high: hsl(var(--sl-hue-green), 82%, 80%);
21
- --sl-hue-blue: 234;
22
- --sl-color-blue-low: hsl(var(--sl-hue-blue), 54%, 20%);
23
- --sl-color-blue: hsl(var(--sl-hue-blue), 100%, 60%);
24
- --sl-color-blue-high: hsl(var(--sl-hue-blue), 100%, 87%);
25
- --sl-hue-purple: 281;
26
- --sl-color-purple-low: hsl(var(--sl-hue-purple), 39%, 22%);
27
- --sl-color-purple: hsl(var(--sl-hue-purple), 82%, 63%);
28
- --sl-color-purple-high: hsl(var(--sl-hue-purple), 82%, 89%);
29
- --sl-hue-red: 339;
30
- --sl-color-red-low: hsl(var(--sl-hue-red), 39%, 22%);
31
- --sl-color-red: hsl(var(--sl-hue-red), 82%, 63%);
32
- --sl-color-red-high: hsl(var(--sl-hue-red), 82%, 87%);
33
-
34
- --sl-color-accent-low: hsl(224, 54%, 20%);
35
- --sl-color-accent: hsl(224, 100%, 60%);
36
- --sl-color-accent-high: hsl(224, 100%, 85%);
37
-
38
- --sl-color-text: var(--sl-color-gray-2);
39
- --sl-color-text-accent: var(--sl-color-accent-high);
40
- --sl-color-text-invert: var(--sl-color-accent-low);
41
- --sl-color-bg: var(--sl-color-black);
42
- --sl-color-bg-nav: var(--sl-color-gray-6);
43
- --sl-color-bg-sidebar: var(--sl-color-gray-6);
44
- --sl-color-bg-inline-code: var(--sl-color-gray-5);
45
- --sl-color-bg-accent: var(--sl-color-accent-high);
46
- --sl-color-hairline-light: var(--sl-color-gray-5);
47
- --sl-color-hairline: var(--sl-color-gray-6);
48
- --sl-color-hairline-shade: var(--sl-color-black);
49
-
50
- --sl-color-backdrop-overlay: hsla(223, 13%, 10%, 0.66);
51
-
52
- /* Shadows (dark mode) */
53
- --sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, 0.12), 0px 2px 1px hsla(0, 0%, 0%, 0.24);
54
- --sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, 0.08), 0px 5px 2px hsla(0, 0%, 0%, 0.08),
55
- 0px 3px 2px hsla(0, 0%, 0%, 0.12), 0px 1px 1px hsla(0, 0%, 0%, 0.15);
56
- --sl-shadow-lg: 0px 25px 7px hsla(0, 0%, 0%, 0.03), 0px 16px 6px hsla(0, 0%, 0%, 0.1),
57
- 0px 9px 5px hsla(223, 13%, 10%, 0.33), 0px 4px 4px hsla(0, 0%, 0%, 0.75),
58
- 0px 4px 2px hsla(0, 0%, 0%, 0.25);
59
-
60
- /* Text size and line height */
61
- --sl-text-2xs: 0.75rem; /* 12px */
62
- --sl-text-xs: 0.8125rem; /* 13px */
63
- --sl-text-sm: 0.875rem; /* 14px */
64
- --sl-text-base: 1rem; /* 16px */
65
- --sl-text-lg: 1.125rem; /* 18px */
66
- --sl-text-xl: 1.25rem; /* 20px */
67
- --sl-text-2xl: 1.5rem; /* 24px */
68
- --sl-text-3xl: 1.8125rem; /* 29px */
69
- --sl-text-4xl: 2.1875rem; /* 35px */
70
- --sl-text-5xl: 2.625rem; /* 42px */
71
- --sl-text-6xl: 4rem; /* 64px */
72
-
73
- --sl-text-body: var(--sl-text-base);
74
- --sl-text-body-sm: var(--sl-text-xs);
75
- --sl-text-code: var(--sl-text-sm);
76
- --sl-text-code-sm: var(--sl-text-xs);
77
- --sl-text-h1: var(--sl-text-4xl);
78
- --sl-text-h2: var(--sl-text-3xl);
79
- --sl-text-h3: var(--sl-text-2xl);
80
- --sl-text-h4: var(--sl-text-xl);
81
- --sl-text-h5: var(--sl-text-lg);
82
-
83
- --sl-line-height: 1.75;
84
- --sl-line-height-headings: 1.2;
85
-
86
- --sl-font-system: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
87
- 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
88
- 'Segoe UI Symbol', 'Noto Color Emoji';
89
- --sl-font-system-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',
90
- 'Courier New', monospace;
91
- --__sl-font: var(--sl-font, var(--sl-font-system)), var(--sl-font-system);
92
- --__sl-font-mono: var(--sl-font-mono, var(--sl-font-system-mono)), var(--sl-font-system-mono);
93
-
94
- /** Key layout values */
95
- --sl-nav-height: 3.5rem;
96
- --sl-nav-pad-x: 1rem;
97
- --sl-nav-pad-y: 0.75rem;
98
- --sl-mobile-toc-height: 3rem;
99
- --sl-sidebar-width: 18.75rem;
100
- --sl-sidebar-pad-x: 1rem;
101
- --sl-content-width: 45rem;
102
- --sl-content-pad-x: 1rem;
103
- --sl-menu-button-size: 2rem;
104
- --sl-nav-gap: var(--sl-content-pad-x);
105
- /* Offset required to show outline inside an element instead of round the outside */
106
- --sl-outline-offset-inside: -0.1875rem;
107
-
108
- /* Global z-index values */
109
- --sl-z-index-toc: 4;
110
- --sl-z-index-menu: 5;
111
- --sl-z-index-navbar: 10;
112
- --sl-z-index-skiplink: 20;
113
- }
1
+ @layer starlight.base {
2
+ :root,
3
+ ::backdrop {
4
+ /* Colors (dark mode) */
5
+ --sl-color-white: hsl(0, 0%, 100%); /* “white” */
6
+ --sl-color-gray-1: hsl(224, 20%, 94%);
7
+ --sl-color-gray-2: hsl(224, 6%, 77%);
8
+ --sl-color-gray-3: hsl(224, 6%, 56%);
9
+ --sl-color-gray-4: hsl(224, 7%, 36%);
10
+ --sl-color-gray-5: hsl(224, 10%, 23%);
11
+ --sl-color-gray-6: hsl(224, 14%, 16%);
12
+ --sl-color-black: hsl(224, 10%, 10%);
13
+
14
+ --sl-hue-orange: 41;
15
+ --sl-color-orange-low: hsl(var(--sl-hue-orange), 39%, 22%);
16
+ --sl-color-orange: hsl(var(--sl-hue-orange), 82%, 63%);
17
+ --sl-color-orange-high: hsl(var(--sl-hue-orange), 82%, 87%);
18
+ --sl-hue-green: 101;
19
+ --sl-color-green-low: hsl(var(--sl-hue-green), 39%, 22%);
20
+ --sl-color-green: hsl(var(--sl-hue-green), 82%, 63%);
21
+ --sl-color-green-high: hsl(var(--sl-hue-green), 82%, 80%);
22
+ --sl-hue-blue: 234;
23
+ --sl-color-blue-low: hsl(var(--sl-hue-blue), 54%, 20%);
24
+ --sl-color-blue: hsl(var(--sl-hue-blue), 100%, 60%);
25
+ --sl-color-blue-high: hsl(var(--sl-hue-blue), 100%, 87%);
26
+ --sl-hue-purple: 281;
27
+ --sl-color-purple-low: hsl(var(--sl-hue-purple), 39%, 22%);
28
+ --sl-color-purple: hsl(var(--sl-hue-purple), 82%, 63%);
29
+ --sl-color-purple-high: hsl(var(--sl-hue-purple), 82%, 89%);
30
+ --sl-hue-red: 339;
31
+ --sl-color-red-low: hsl(var(--sl-hue-red), 39%, 22%);
32
+ --sl-color-red: hsl(var(--sl-hue-red), 82%, 63%);
33
+ --sl-color-red-high: hsl(var(--sl-hue-red), 82%, 87%);
34
+
35
+ --sl-color-accent-low: hsl(224, 54%, 20%);
36
+ --sl-color-accent: hsl(224, 100%, 60%);
37
+ --sl-color-accent-high: hsl(224, 100%, 85%);
38
+
39
+ --sl-color-text: var(--sl-color-gray-2);
40
+ --sl-color-text-accent: var(--sl-color-accent-high);
41
+ --sl-color-text-invert: var(--sl-color-accent-low);
42
+ --sl-color-bg: var(--sl-color-black);
43
+ --sl-color-bg-nav: var(--sl-color-gray-6);
44
+ --sl-color-bg-sidebar: var(--sl-color-gray-6);
45
+ --sl-color-bg-inline-code: var(--sl-color-gray-5);
46
+ --sl-color-bg-accent: var(--sl-color-accent-high);
47
+ --sl-color-hairline-light: var(--sl-color-gray-5);
48
+ --sl-color-hairline: var(--sl-color-gray-6);
49
+ --sl-color-hairline-shade: var(--sl-color-black);
50
+
51
+ --sl-color-backdrop-overlay: hsla(223, 13%, 10%, 0.66);
52
+
53
+ /* Shadows (dark mode) */
54
+ --sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, 0.12), 0px 2px 1px hsla(0, 0%, 0%, 0.24);
55
+ --sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, 0.08), 0px 5px 2px hsla(0, 0%, 0%, 0.08),
56
+ 0px 3px 2px hsla(0, 0%, 0%, 0.12), 0px 1px 1px hsla(0, 0%, 0%, 0.15);
57
+ --sl-shadow-lg: 0px 25px 7px hsla(0, 0%, 0%, 0.03), 0px 16px 6px hsla(0, 0%, 0%, 0.1),
58
+ 0px 9px 5px hsla(223, 13%, 10%, 0.33), 0px 4px 4px hsla(0, 0%, 0%, 0.75),
59
+ 0px 4px 2px hsla(0, 0%, 0%, 0.25);
60
+
61
+ /* Text size and line height */
62
+ --sl-text-2xs: 0.75rem; /* 12px */
63
+ --sl-text-xs: 0.8125rem; /* 13px */
64
+ --sl-text-sm: 0.875rem; /* 14px */
65
+ --sl-text-base: 1rem; /* 16px */
66
+ --sl-text-lg: 1.125rem; /* 18px */
67
+ --sl-text-xl: 1.25rem; /* 20px */
68
+ --sl-text-2xl: 1.5rem; /* 24px */
69
+ --sl-text-3xl: 1.8125rem; /* 29px */
70
+ --sl-text-4xl: 2.1875rem; /* 35px */
71
+ --sl-text-5xl: 2.625rem; /* 42px */
72
+ --sl-text-6xl: 4rem; /* 64px */
73
+
74
+ --sl-text-body: var(--sl-text-base);
75
+ --sl-text-body-sm: var(--sl-text-xs);
76
+ --sl-text-code: var(--sl-text-sm);
77
+ --sl-text-code-sm: var(--sl-text-xs);
78
+ --sl-text-h1: var(--sl-text-4xl);
79
+ --sl-text-h2: var(--sl-text-3xl);
80
+ --sl-text-h3: var(--sl-text-2xl);
81
+ --sl-text-h4: var(--sl-text-xl);
82
+ --sl-text-h5: var(--sl-text-lg);
83
+
84
+ --sl-line-height: 1.75;
85
+ --sl-line-height-headings: 1.2;
86
+
87
+ --sl-font-system: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
88
+ Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji',
89
+ 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
90
+ --sl-font-system-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',
91
+ 'Courier New', monospace;
92
+ --__sl-font: var(--sl-font, var(--sl-font-system)), var(--sl-font-system);
93
+ --__sl-font-mono: var(--sl-font-mono, var(--sl-font-system-mono)), var(--sl-font-system-mono);
94
+
95
+ /** Key layout values */
96
+ --sl-nav-height: 3.5rem;
97
+ --sl-nav-pad-x: 1rem;
98
+ --sl-nav-pad-y: 0.75rem;
99
+ --sl-mobile-toc-height: 3rem;
100
+ --sl-sidebar-width: 18.75rem;
101
+ --sl-sidebar-pad-x: 1rem;
102
+ --sl-content-width: 45rem;
103
+ --sl-content-pad-x: 1rem;
104
+ --sl-menu-button-size: 2rem;
105
+ --sl-nav-gap: var(--sl-content-pad-x);
106
+ /* Offset required to show outline inside an element instead of round the outside */
107
+ --sl-outline-offset-inside: -0.1875rem;
108
+
109
+ /* Global z-index values */
110
+ --sl-z-index-toc: 4;
111
+ --sl-z-index-menu: 5;
112
+ --sl-z-index-navbar: 10;
113
+ --sl-z-index-skiplink: 20;
114
+ }
114
115
 
115
- :root[data-theme='light'],
116
- [data-theme='light'] ::backdrop {
117
- /* Colours (light mode) */
118
- --sl-color-white: hsl(224, 10%, 10%);
119
- --sl-color-gray-1: hsl(224, 14%, 16%);
120
- --sl-color-gray-2: hsl(224, 10%, 23%);
121
- --sl-color-gray-3: hsl(224, 7%, 36%);
122
- --sl-color-gray-4: hsl(224, 6%, 56%);
123
- --sl-color-gray-5: hsl(224, 6%, 77%);
124
- --sl-color-gray-6: hsl(224, 20%, 94%);
125
- --sl-color-gray-7: hsl(224, 19%, 97%);
126
- --sl-color-black: hsl(0, 0%, 100%);
127
-
128
- --sl-color-orange-high: hsl(var(--sl-hue-orange), 80%, 25%);
129
- --sl-color-orange: hsl(var(--sl-hue-orange), 90%, 60%);
130
- --sl-color-orange-low: hsl(var(--sl-hue-orange), 90%, 88%);
131
- --sl-color-green-high: hsl(var(--sl-hue-green), 80%, 22%);
132
- --sl-color-green: hsl(var(--sl-hue-green), 90%, 46%);
133
- --sl-color-green-low: hsl(var(--sl-hue-green), 85%, 90%);
134
- --sl-color-blue-high: hsl(var(--sl-hue-blue), 80%, 30%);
135
- --sl-color-blue: hsl(var(--sl-hue-blue), 90%, 60%);
136
- --sl-color-blue-low: hsl(var(--sl-hue-blue), 88%, 90%);
137
- --sl-color-purple-high: hsl(var(--sl-hue-purple), 90%, 30%);
138
- --sl-color-purple: hsl(var(--sl-hue-purple), 90%, 60%);
139
- --sl-color-purple-low: hsl(var(--sl-hue-purple), 80%, 90%);
140
- --sl-color-red-high: hsl(var(--sl-hue-red), 80%, 30%);
141
- --sl-color-red: hsl(var(--sl-hue-red), 90%, 60%);
142
- --sl-color-red-low: hsl(var(--sl-hue-red), 80%, 90%);
143
-
144
- --sl-color-accent-high: hsl(234, 80%, 30%);
145
- --sl-color-accent: hsl(234, 90%, 60%);
146
- --sl-color-accent-low: hsl(234, 88%, 90%);
147
-
148
- --sl-color-text-accent: var(--sl-color-accent);
149
- --sl-color-text-invert: var(--sl-color-black);
150
- --sl-color-bg-nav: var(--sl-color-gray-7);
151
- --sl-color-bg-sidebar: var(--sl-color-bg);
152
- --sl-color-bg-inline-code: var(--sl-color-gray-6);
153
- --sl-color-bg-accent: var(--sl-color-accent);
154
- --sl-color-hairline-light: var(--sl-color-gray-6);
155
- --sl-color-hairline-shade: var(--sl-color-gray-6);
156
-
157
- --sl-color-backdrop-overlay: hsla(225, 9%, 36%, 0.66);
158
-
159
- /* Shadows (light mode) */
160
- --sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, 0.06), 0px 2px 1px hsla(0, 0%, 0%, 0.06);
161
- --sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, 0.03), 0px 5px 2px hsla(0, 0%, 0%, 0.03),
162
- 0px 3px 2px hsla(0, 0%, 0%, 0.06), 0px 1px 1px hsla(0, 0%, 0%, 0.06);
163
- --sl-shadow-lg: 0px 25px 7px rgba(0, 0, 0, 0.01), 0px 16px 6px hsla(0, 0%, 0%, 0.03),
164
- 0px 9px 5px hsla(223, 13%, 10%, 0.08), 0px 4px 4px hsla(0, 0%, 0%, 0.16),
165
- 0px 4px 2px hsla(0, 0%, 0%, 0.04);
166
- }
116
+ :root[data-theme='light'],
117
+ [data-theme='light'] ::backdrop {
118
+ /* Colours (light mode) */
119
+ --sl-color-white: hsl(224, 10%, 10%);
120
+ --sl-color-gray-1: hsl(224, 14%, 16%);
121
+ --sl-color-gray-2: hsl(224, 10%, 23%);
122
+ --sl-color-gray-3: hsl(224, 7%, 36%);
123
+ --sl-color-gray-4: hsl(224, 6%, 56%);
124
+ --sl-color-gray-5: hsl(224, 6%, 77%);
125
+ --sl-color-gray-6: hsl(224, 20%, 94%);
126
+ --sl-color-gray-7: hsl(224, 19%, 97%);
127
+ --sl-color-black: hsl(0, 0%, 100%);
128
+
129
+ --sl-color-orange-high: hsl(var(--sl-hue-orange), 80%, 25%);
130
+ --sl-color-orange: hsl(var(--sl-hue-orange), 90%, 60%);
131
+ --sl-color-orange-low: hsl(var(--sl-hue-orange), 90%, 88%);
132
+ --sl-color-green-high: hsl(var(--sl-hue-green), 80%, 22%);
133
+ --sl-color-green: hsl(var(--sl-hue-green), 90%, 46%);
134
+ --sl-color-green-low: hsl(var(--sl-hue-green), 85%, 90%);
135
+ --sl-color-blue-high: hsl(var(--sl-hue-blue), 80%, 30%);
136
+ --sl-color-blue: hsl(var(--sl-hue-blue), 90%, 60%);
137
+ --sl-color-blue-low: hsl(var(--sl-hue-blue), 88%, 90%);
138
+ --sl-color-purple-high: hsl(var(--sl-hue-purple), 90%, 30%);
139
+ --sl-color-purple: hsl(var(--sl-hue-purple), 90%, 60%);
140
+ --sl-color-purple-low: hsl(var(--sl-hue-purple), 80%, 90%);
141
+ --sl-color-red-high: hsl(var(--sl-hue-red), 80%, 30%);
142
+ --sl-color-red: hsl(var(--sl-hue-red), 90%, 60%);
143
+ --sl-color-red-low: hsl(var(--sl-hue-red), 80%, 90%);
144
+
145
+ --sl-color-accent-high: hsl(234, 80%, 30%);
146
+ --sl-color-accent: hsl(234, 90%, 60%);
147
+ --sl-color-accent-low: hsl(234, 88%, 90%);
148
+
149
+ --sl-color-text-accent: var(--sl-color-accent);
150
+ --sl-color-text-invert: var(--sl-color-black);
151
+ --sl-color-bg-nav: var(--sl-color-gray-7);
152
+ --sl-color-bg-sidebar: var(--sl-color-bg);
153
+ --sl-color-bg-inline-code: var(--sl-color-gray-6);
154
+ --sl-color-bg-accent: var(--sl-color-accent);
155
+ --sl-color-hairline-light: var(--sl-color-gray-6);
156
+ --sl-color-hairline-shade: var(--sl-color-gray-6);
157
+
158
+ --sl-color-backdrop-overlay: hsla(225, 9%, 36%, 0.66);
159
+
160
+ /* Shadows (light mode) */
161
+ --sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, 0.06), 0px 2px 1px hsla(0, 0%, 0%, 0.06);
162
+ --sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, 0.03), 0px 5px 2px hsla(0, 0%, 0%, 0.03),
163
+ 0px 3px 2px hsla(0, 0%, 0%, 0.06), 0px 1px 1px hsla(0, 0%, 0%, 0.06);
164
+ --sl-shadow-lg: 0px 25px 7px rgba(0, 0, 0, 0.01), 0px 16px 6px hsla(0, 0%, 0%, 0.03),
165
+ 0px 9px 5px hsla(223, 13%, 10%, 0.08), 0px 4px 4px hsla(0, 0%, 0%, 0.16),
166
+ 0px 4px 2px hsla(0, 0%, 0%, 0.04);
167
+ }
167
168
 
168
- @media (min-width: 50em) {
169
- :root {
170
- --sl-nav-height: 4rem;
171
- --sl-nav-pad-x: 1.5rem;
172
- --sl-text-h1: var(--sl-text-5xl);
173
- --sl-text-h2: var(--sl-text-4xl);
174
- --sl-text-h3: var(--sl-text-3xl);
175
- --sl-text-h4: var(--sl-text-2xl);
169
+ @media (min-width: 50em) {
170
+ :root {
171
+ --sl-nav-height: 4rem;
172
+ --sl-nav-pad-x: 1.5rem;
173
+ --sl-text-h1: var(--sl-text-5xl);
174
+ --sl-text-h2: var(--sl-text-4xl);
175
+ --sl-text-h3: var(--sl-text-3xl);
176
+ --sl-text-h4: var(--sl-text-2xl);
177
+ }
176
178
  }
177
- }
178
179
 
179
- @media (min-width: 72rem) {
180
- :root {
181
- --sl-content-pad-x: 1.5rem;
182
- --sl-mobile-toc-height: 0rem;
180
+ @media (min-width: 72rem) {
181
+ :root {
182
+ --sl-content-pad-x: 1.5rem;
183
+ --sl-mobile-toc-height: 0rem;
184
+ }
183
185
  }
184
186
  }
package/style/reset.css CHANGED
@@ -1,48 +1,50 @@
1
- *,
2
- *::before,
3
- *::after {
4
- box-sizing: border-box;
5
- }
1
+ @layer starlight.reset {
2
+ *,
3
+ *::before,
4
+ *::after {
5
+ box-sizing: border-box;
6
+ }
6
7
 
7
- * {
8
- margin: 0;
9
- }
8
+ * {
9
+ margin: 0;
10
+ }
10
11
 
11
- html {
12
- color-scheme: dark;
13
- accent-color: var(--sl-color-accent);
14
- }
12
+ html {
13
+ color-scheme: dark;
14
+ accent-color: var(--sl-color-accent);
15
+ }
15
16
 
16
- html[data-theme='light'] {
17
- color-scheme: light;
18
- }
17
+ html[data-theme='light'] {
18
+ color-scheme: light;
19
+ }
19
20
 
20
- body {
21
- font-family: var(--__sl-font);
22
- line-height: var(--sl-line-height);
23
- -webkit-font-smoothing: antialiased;
24
- color: var(--sl-color-text);
25
- background-color: var(--sl-color-bg);
26
- }
21
+ body {
22
+ font-family: var(--__sl-font);
23
+ line-height: var(--sl-line-height);
24
+ -webkit-font-smoothing: antialiased;
25
+ color: var(--sl-color-text);
26
+ background-color: var(--sl-color-bg);
27
+ }
27
28
 
28
- input,
29
- button,
30
- textarea,
31
- select {
32
- font: inherit;
33
- }
29
+ input,
30
+ button,
31
+ textarea,
32
+ select {
33
+ font: inherit;
34
+ }
34
35
 
35
- p,
36
- h1,
37
- h2,
38
- h3,
39
- h4,
40
- h5,
41
- h6,
42
- code {
43
- overflow-wrap: anywhere;
44
- }
36
+ p,
37
+ h1,
38
+ h2,
39
+ h3,
40
+ h4,
41
+ h5,
42
+ h6,
43
+ code {
44
+ overflow-wrap: anywhere;
45
+ }
45
46
 
46
- code {
47
- font-family: var(--__sl-font-mono);
47
+ code {
48
+ font-family: var(--__sl-font-mono);
49
+ }
48
50
  }
package/style/util.css CHANGED
@@ -1,61 +1,63 @@
1
- .sr-only {
2
- position: absolute;
3
- width: 1px;
4
- height: 1px;
5
- padding: 0;
6
- margin: -1px;
7
- overflow: hidden;
8
- clip: rect(0, 0, 0, 0);
9
- white-space: nowrap;
10
- border-width: 0;
11
- }
1
+ @layer starlight.utils {
2
+ .sr-only {
3
+ position: absolute;
4
+ width: 1px;
5
+ height: 1px;
6
+ padding: 0;
7
+ margin: -1px;
8
+ overflow: hidden;
9
+ clip: rect(0, 0, 0, 0);
10
+ white-space: nowrap;
11
+ border-width: 0;
12
+ }
12
13
 
13
- .sl-hidden {
14
- display: none;
15
- }
16
- .sl-flex {
17
- display: flex;
18
- }
19
- .sl-block {
20
- display: block;
21
- }
22
- @media (min-width: 50rem) {
23
- .md\:sl-hidden {
14
+ .sl-hidden {
24
15
  display: none;
25
16
  }
26
- .md\:sl-flex {
17
+ .sl-flex {
27
18
  display: flex;
28
19
  }
29
- .md\:sl-block {
20
+ .sl-block {
30
21
  display: block;
31
22
  }
32
- }
33
- @media (min-width: 72rem) {
34
- .lg\:sl-hidden {
35
- display: none;
23
+ @media (min-width: 50rem) {
24
+ .md\:sl-hidden {
25
+ display: none;
26
+ }
27
+ .md\:sl-flex {
28
+ display: flex;
29
+ }
30
+ .md\:sl-block {
31
+ display: block;
32
+ }
36
33
  }
37
- .lg\:sl-flex {
38
- display: flex;
34
+ @media (min-width: 72rem) {
35
+ .lg\:sl-hidden {
36
+ display: none;
37
+ }
38
+ .lg\:sl-flex {
39
+ display: flex;
40
+ }
41
+ .lg\:sl-block {
42
+ display: block;
43
+ }
39
44
  }
40
- .lg\:sl-block {
41
- display: block;
45
+ [data-theme='light'] .light\:sl-hidden {
46
+ display: none;
47
+ }
48
+ [data-theme='dark'] .dark\:sl-hidden {
49
+ display: none;
42
50
  }
43
- }
44
- [data-theme='light'] .light\:sl-hidden {
45
- display: none;
46
- }
47
- [data-theme='dark'] .dark\:sl-hidden {
48
- display: none;
49
- }
50
-
51
- /*
52
- Flip an element around the y-axis when in an RTL context.
53
- Primarily useful for things where we can’t rely on writing direction like icons.
54
-
55
- <Icon name="right-arrow" class="rtl:flip" />
56
51
 
57
- In a LTR context: → In a RTL context: ←
58
- */
59
- [dir='rtl'] .rtl\:flip:not(:where([dir='rtl'] [dir='ltr'] *)) {
60
- transform: matrix(-1, 0, 0, 1, 0, 0);
52
+ /**
53
+ * Flip an element around the y-axis when in an RTL context.
54
+ * Primarily useful for things where we can’t rely on writing direction like icons.
55
+ *
56
+ * <Icon name="right-arrow" class="rtl:flip" />
57
+ *
58
+ * In a LTR context: → In a RTL context: ←
59
+ */
60
+ [dir='rtl'] .rtl\:flip:not(:where([dir='rtl'] [dir='ltr'] *)) {
61
+ transform: matrix(-1, 0, 0, 1, 0, 0);
62
+ }
61
63
  }
@@ -25,5 +25,6 @@
25
25
  "aside.caution": "تنبيه",
26
26
  "aside.danger": "تحذير",
27
27
  "fileTree.directory": "Directory",
28
- "builtWithStarlight.label": "طوِّر بواسطة Starlight"
28
+ "builtWithStarlight.label": "طوِّر بواسطة Starlight",
29
+ "heading.anchorLabel": "Section titled “{{title}}”"
29
30
  }
@@ -38,5 +38,6 @@
38
38
  "pagefind.one_result": "[COUNT] resultat per a: [SEARCH_TERM]",
39
39
  "pagefind.alt_search": "Cap resultat per a [SEARCH_TERM]. Mostrant resultats per a: [DIFFERENT_TERM]",
40
40
  "pagefind.search_suggestion": "Cap resultat per a [SEARCH_TERM]. Prova alguna d’aquestes cerques:",
41
- "pagefind.searching": "Cercant [SEARCH_TERM]..."
41
+ "pagefind.searching": "Cercant [SEARCH_TERM]...",
42
+ "heading.anchorLabel": "Section titled “{{title}}”"
42
43
  }
@@ -38,5 +38,6 @@
38
38
  "pagefind.one_result": "[COUNT] výsledek pro: [SEARCH_TERM]",
39
39
  "pagefind.alt_search": "Žádné výsledky pro [SEARCH_TERM]. Namísto toho zobrazuji výsledky pro: [DIFFERENT_TERM]",
40
40
  "pagefind.search_suggestion": "Žádný výsledek pro [SEARCH_TERM]. Zkus nějaké z těchto hledání:",
41
- "pagefind.searching": "Hledám [SEARCH_TERM]..."
41
+ "pagefind.searching": "Hledám [SEARCH_TERM]...",
42
+ "heading.anchorLabel": "Section titled “{{title}}”"
42
43
  }
@@ -25,5 +25,6 @@
25
25
  "aside.caution": "Caution",
26
26
  "aside.danger": "Danger",
27
27
  "fileTree.directory": "Directory",
28
- "builtWithStarlight.label": "Built with Starlight"
28
+ "builtWithStarlight.label": "Built with Starlight",
29
+ "heading.anchorLabel": "Section titled “{{title}}”"
29
30
  }
@@ -25,5 +25,6 @@
25
25
  "aside.caution": "Achtung",
26
26
  "aside.danger": "Gefahr",
27
27
  "fileTree.directory": "Directory",
28
- "builtWithStarlight.label": "Erstellt mit Starlight"
28
+ "builtWithStarlight.label": "Erstellt mit Starlight",
29
+ "heading.anchorLabel": "Abschnitt betitelt „{{title}}“"
29
30
  }
@@ -25,5 +25,6 @@
25
25
  "aside.caution": "Caution",
26
26
  "aside.danger": "Danger",
27
27
  "fileTree.directory": "Directory",
28
- "builtWithStarlight.label": "Built with Starlight"
28
+ "builtWithStarlight.label": "Built with Starlight",
29
+ "heading.anchorLabel": "Section titled “{{title}}”"
29
30
  }
@@ -38,5 +38,6 @@
38
38
  "pagefind.one_result": "[COUNT] resultado para: [SEARCH_TERM]",
39
39
  "pagefind.alt_search": "Ningún resultado para [SEARCH_TERM]. Mostrando resultados para: [DIFFERENT_TERM]",
40
40
  "pagefind.search_suggestion": "Ningún resultado para [SEARCH_TERM]. Prueba alguna de estas búsquedas:",
41
- "pagefind.searching": "Buscando [SEARCH_TERM]..."
41
+ "pagefind.searching": "Buscando [SEARCH_TERM]...",
42
+ "heading.anchorLabel": "Sección titulada «{{title}}»"
42
43
  }
@@ -25,5 +25,6 @@
25
25
  "aside.caution": "احتیاط",
26
26
  "aside.danger": "خطر",
27
27
  "fileTree.directory": "فهرست",
28
- "builtWithStarlight.label": "Built with Starlight"
28
+ "builtWithStarlight.label": "Built with Starlight",
29
+ "heading.anchorLabel": "Section titled “{{title}}”"
29
30
  }