Skip to content

Commit 48b042b

Browse files
kaci8claude
andcommitted
Refactor DocSearch styles to use specificity over !important
- Replace !important with higher-specificity selectors (body prefix, html[data-theme='dark']:root for variables) - Fix modal inner elements clipping by restoring overflow: hidden on DocSearch-Modal - Fix search bar visibility on non-docs pages using body .DocSearch-Button selector - Add algolia-site-verification meta tag - Simplify html[data-theme='dark'], html selector to just html Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 51f30d1 commit 48b042b

1 file changed

Lines changed: 88 additions & 87 deletions

File tree

src/css/custom.css

Lines changed: 88 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -134,111 +134,112 @@
134134
/* Hide Download button in nav when already on downloads page, legacy-policy pages, or mobile */
135135
html:has(.downloads-hero) .navbar-download-btn,
136136
html.plugin-id-legacy-policies .navbar-download-btn {
137-
display: none !important;
137+
display: none;
138138
}
139139

140140
@media (max-width: 996px) {
141141
html.docs-doc-page:not(.plugin-id-legacy-policies) .navbar-download-btn {
142-
display: none !important;
142+
display: none;
143143
}
144144
}
145145

146146
/* Hide search bar on non-docs pages */
147-
.DocSearch-Button { display: none !important; }
148-
html.docs-doc-page:not(.plugin-id-legacy-policies) .DocSearch-Button { display: flex !important; }
147+
body .DocSearch-Button { display: none; }
148+
html.docs-doc-page:not(.plugin-id-legacy-policies) body .DocSearch-Button { display: flex; }
149149

150150
/* DocSearch button styling */
151-
.DocSearch-Button {
152-
font-family: var(--font-family) !important;
153-
font-size: 0.875rem !important;
154-
background-color: var(--color-bg-card) !important;
155-
color: var(--color-text-secondary) !important;
156-
border: 1px solid var(--color-border) !important;
157-
border-radius: var(--radius-lg) !important;
158-
padding: 8px 16px !important;
159-
height: auto !important;
160-
width: auto !important;
161-
transition: border-color 0.2s, color 0.2s !important;
162-
gap: 8px !important;
151+
body .DocSearch-Button {
152+
font-family: var(--font-family);
153+
font-size: 0.875rem;
154+
background-color: var(--color-bg-card);
155+
color: var(--color-text-secondary);
156+
border: 1px solid var(--color-border);
157+
border-radius: var(--radius-lg);
158+
padding: 8px 16px;
159+
height: auto;
160+
width: auto;
161+
transition: border-color 0.2s, color 0.2s;
162+
gap: 8px;
163163
}
164164

165-
.DocSearch-Button:hover {
166-
border-color: var(--color-primary) !important;
167-
color: var(--color-text) !important;
168-
background-color: var(--color-bg-card) !important;
169-
box-shadow: none !important;
165+
body .DocSearch-Button:hover {
166+
border-color: var(--color-primary);
167+
color: var(--color-text);
168+
background-color: var(--color-bg-card);
169+
box-shadow: none;
170170
}
171171

172-
.DocSearch-Button-Placeholder {
173-
font-family: var(--font-family) !important;
174-
font-size: 0.875rem !important;
175-
color: inherit !important;
172+
body .DocSearch-Button-Placeholder {
173+
font-family: var(--font-family);
174+
font-size: 0.875rem;
175+
color: inherit;
176176
}
177177

178-
.DocSearch-Search-Icon {
179-
color: inherit !important;
180-
width: 14px !important;
181-
height: 14px !important;
178+
body .DocSearch-Search-Icon {
179+
color: inherit;
180+
width: 14px;
181+
height: 14px;
182182
}
183183

184-
.DocSearch-Button-Keys {
185-
display: flex !important;
186-
gap: 2px !important;
184+
body .DocSearch-Button-Keys {
185+
display: flex;
186+
gap: 2px;
187187
}
188188

189-
.DocSearch-Button-Key {
190-
font-family: var(--font-family) !important;
191-
font-size: 0.75rem !important;
192-
background-color: var(--color-bg-alt) !important;
193-
color: var(--color-text-muted) !important;
194-
border: 1px solid var(--color-border-light) !important;
195-
border-radius: var(--radius-sm) !important;
196-
padding: 2px 4px !important;
197-
box-shadow: none !important;
189+
body .DocSearch-Button-Key {
190+
font-family: var(--font-family);
191+
font-size: 0.75rem;
192+
background-color: var(--color-bg-alt);
193+
color: var(--color-text-muted);
194+
border: 1px solid var(--color-border-light);
195+
border-radius: var(--radius-sm);
196+
padding: 2px 4px;
197+
box-shadow: none;
198198
}
199199

200-
/* DocSearch modal theme */
201-
html {
200+
/* DocSearch modal theme — higher specificity than DocSearch's html[data-theme='dark'] */
201+
html[data-theme='dark']:root {
202202
--docsearch-primary-color: var(--color-primary);
203-
--docsearch-highlight-color: var(--color-primary) !important;
203+
--docsearch-highlight-color: var(--color-primary);
204204
--docsearch-text-color: var(--color-text);
205-
--docsearch-secondary-text-color: var(--color-text-secondary) !important;
205+
--docsearch-secondary-text-color: var(--color-text-secondary);
206206
--docsearch-muted-color: var(--color-text-muted);
207207
--docsearch-icon-color: var(--color-text-secondary);
208208
--docsearch-focus-color: var(--color-primary);
209-
--docsearch-subtle-color: var(--color-border) !important;
210-
--docsearch-background-color: var(--color-bg-card) !important;
211-
--docsearch-modal-background: var(--color-bg) !important;
209+
--docsearch-subtle-color: var(--color-border);
210+
--docsearch-background-color: var(--color-bg-card);
211+
--docsearch-modal-background: var(--color-bg);
212212
--docsearch-modal-shadow: 0 8px 32px rgba(0, 0, 0, 0.6);
213213
--docsearch-searchbox-background: var(--color-bg-card);
214214
--docsearch-searchbox-focus-background: var(--color-bg-card);
215215
--docsearch-hit-color: var(--color-text);
216-
--docsearch-hit-background: var(--color-bg-card) !important;
217-
--docsearch-dropdown-menu-item-hover-background: var(--color-bg-card-active) !important;
216+
--docsearch-hit-background: var(--color-bg-card);
217+
--docsearch-dropdown-menu-item-hover-background: var(--color-bg-card-active);
218218
--docsearch-hit-highlight-color: rgba(168, 85, 247, 0.15);
219219
--docsearch-hit-shadow: none;
220-
--docsearch-key-background: #0a0a0a;
220+
--docsearch-key-background: var(--color-bg);
221221
--docsearch-key-color: var(--color-text-muted);
222-
--docsearch-container-background: rgba(0, 0, 0, 0.75) !important;
223-
--docsearch-footer-background: #111111;
222+
--docsearch-container-background: rgba(0, 0, 0, 0.75);
223+
--docsearch-footer-background: var(--color-bg-alt);
224224
--docsearch-footer-shadow: inset 0 1px 0 var(--color-border);
225225
--docsearch-logo-color: var(--color-text-secondary);
226226
--docsearch-error-color: #ef5350;
227227
--docsearch-border-radius: var(--radius-lg);
228228
}
229229

230230
/* DocSearch modal border */
231-
.DocSearch-Container {
232-
overflow: visible !important;
231+
body .DocSearch-Container {
232+
overflow: visible;
233233
}
234234

235-
.DocSearch-Modal {
236-
border-radius: var(--radius-lg) !important;
237-
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6) !important;
238-
position: relative !important;
235+
body .DocSearch-Modal {
236+
border-radius: var(--radius-lg);
237+
overflow: hidden;
238+
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6);
239+
position: relative;
239240
}
240241

241-
.DocSearch-Modal::before {
242+
body .DocSearch-Modal::before {
242243
content: '';
243244
position: absolute;
244245
inset: 0;
@@ -249,47 +250,47 @@ html {
249250
}
250251

251252
/* DocSearch modal font */
252-
.DocSearch-Modal,
253-
.DocSearch-Form,
254-
.DocSearch-Input,
255-
.DocSearch-Hit-title,
256-
.DocSearch-Hit-path,
257-
.DocSearch-Label,
258-
.DocSearch-Help,
259-
.DocSearch-Footer {
260-
font-family: var(--font-family) !important;
253+
body .DocSearch-Modal,
254+
body .DocSearch-Form,
255+
body .DocSearch-Input,
256+
body .DocSearch-Hit-title,
257+
body .DocSearch-Hit-path,
258+
body .DocSearch-Label,
259+
body .DocSearch-Help,
260+
body .DocSearch-Footer {
261+
font-family: var(--font-family);
261262
}
262263

263-
.DocSearch-Hit[aria-selected='true'] a {
264-
background-color: var(--color-bg-card-active) !important;
265-
border-color: var(--color-primary) !important;
264+
body .DocSearch-Hit[aria-selected='true'] a {
265+
background-color: var(--color-bg-card-active);
266+
border-color: var(--color-primary);
266267
}
267268

268-
.DocSearch-Hit a {
269-
border: 1px solid transparent !important;
270-
border-radius: var(--radius-md) !important;
269+
body .DocSearch-Hit a {
270+
border: 1px solid transparent;
271+
border-radius: var(--radius-md);
271272
}
272273

273-
.DocSearch-Input {
274-
color: var(--color-text) !important;
274+
body .DocSearch-Input {
275+
color: var(--color-text);
275276
}
276277

277-
.DocSearch-MagnifierLabel,
278-
.DocSearch-Reset {
279-
color: var(--color-text-secondary) !important;
278+
body .DocSearch-MagnifierLabel,
279+
body .DocSearch-Reset {
280+
color: var(--color-text-secondary);
280281
}
281282

282-
.DocSearch-Hit-highlight {
283-
color: var(--color-primary) !important;
284-
text-decoration: none !important;
283+
body .DocSearch-Hit-highlight {
284+
color: var(--color-primary);
285+
text-decoration: none;
285286
}
286287

287-
.DocSearch-Hit[aria-selected='true'] .DocSearch-Hit-icon {
288-
color: var(--color-primary) !important;
288+
body .DocSearch-Hit[aria-selected='true'] .DocSearch-Hit-icon {
289+
color: var(--color-primary);
289290
}
290291

291-
.DocSearch-Hit[aria-selected='true'] mark {
292-
color: var(--color-primary) !important;
292+
body .DocSearch-Hit[aria-selected='true'] mark {
293+
color: var(--color-primary);
293294
}
294295

295296
/* Force dark background on main content wrapper */

0 commit comments

Comments
 (0)