MediaWiki:Common.css: Difference between revisions
Apply westeros dark theme (automated) |
Apply westeros dark theme (automated) |
||
| Line 146: | Line 146: | ||
[class*="vector-toc"]::after, | [class*="vector-toc"]::after, | ||
[class*="vector-pinnable"]::before, | [class*="vector-pinnable"]::before, | ||
[class*="vector-pinnable"]::after { | [class*="vector-pinnable"]::after, | ||
[class*="vector-sticky"]::before, | |||
[class*="vector-sticky"]::after { | |||
background: none !important; | background: none !important; | ||
background-image: none !important; | background-image: none !important; | ||
} | |||
/* The actual culprit (found via computed-style inspection): | |||
* .vector-sticky-pinned-container::after has a hardcoded white fade-out | |||
* gradient (linear-gradient(rgba(255,255,255,0), rgb(255,255,255))) that | |||
* doesn't match "vector-toc"/"vector-pinnable" wildcards above. */ | |||
.vector-sticky-pinned-container { | |||
background: #1c1815 !important; | |||
} | } | ||
Revision as of 19:10, 11 July 2026
/* MediaWiki:Common.css — pushed by ops/wiki/scripts/apply_wiki_skin.sh
* Forces a dark theme + Georgia serif styling matching guide.westeros.live,
* regardless of the reader's OS/browser color-scheme preference (Vector's
* skin.json "night mode" is a per-user opt-in toggle, not a server-wide
* default in 1.42 — a full Common.css override is the reliable way to make
* every visitor see the same dark, in-universe look).
* Palette source of truth: web/guide-site/index.html. Keep both in sync if
* the guide site's colors ever change.
*/
:root {
color-scheme: dark;
}
body,
.skin-vector,
.mw-page-container {
background: #14110f !important;
color: #e8ddc8 !important;
font-family: Georgia, 'Times New Roman', serif !important;
}
#content,
.vector-body,
.mw-body,
.vector-menu-content,
.vector-page-toolbar,
.vector-sitenotice-container {
background: #14110f !important;
color: #e8ddc8 !important;
border-color: #3a3128 !important;
}
.mw-body {
border: 1px solid #3a3128 !important;
}
.vector-header-container,
.vector-header,
.vector-pinnable-header,
.vector-menu-heading,
#p-logo-text,
.vector-sticky-pinned-container {
background: #1c1815 !important;
color: #e8ddc8 !important;
}
h1, h2, h3, h4, h5, h6,
.mw-first-heading,
.vector-menu-heading-label {
color: #c9a24b !important;
border-color: #3a3128 !important;
}
a, a:visited {
color: #c9a24b !important;
}
a:hover {
color: #e8ddc8 !important;
}
.mw-editsection a { color: #a89a7d !important; }
pre, code, .mw-code {
background: #1c1815 !important;
color: #e8ddc8 !important;
border: 1px solid #3a3128 !important;
}
table, .wikitable {
background: #1c1815 !important;
color: #e8ddc8 !important;
border-color: #3a3128 !important;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background: #1c1815 !important;
color: #c9a24b !important;
border-color: #3a3128 !important;
}
.wikitable > tr > td,
.wikitable > * > tr > td {
border-color: #3a3128 !important;
}
input, textarea, select, .cdx-text-input__input {
background: #1c1815 !important;
color: #e8ddc8 !important;
border-color: #3a3128 !important;
}
.vector-menu-tabs,
.vector-menu-dropdown,
.vector-dropdown-content {
background: #1c1815 !important;
color: #e8ddc8 !important;
}
.mw-footer, #footer {
background: #14110f !important;
color: #a89a7d !important;
border-color: #3a3128 !important;
}
/* Table of contents (Vector 2022) + any other pinnable/Codex chrome —
* attribute-wildcard so new sub-elements in these components are covered
* without having to enumerate every exact class name. */
[class*="vector-toc"],
[class*="vector-pinnable"],
[class*="vector-pinned-container"],
[class*="vector-dropdown"] {
background: #1c1815 !important;
color: #e8ddc8 !important;
border-color: #3a3128 !important;
}
[class*="vector-toc"] a,
[class*="vector-pinnable"] a {
color: #e8ddc8 !important;
}
[class*="vector-toc"] a:hover,
[class*="vector-pinnable"] a:hover {
color: #c9a24b !important;
}
button, .cdx-button, .mw-ui-button, [class*="cdx-"] {
background: #1c1815 !important;
color: #e8ddc8 !important;
border-color: #3a3128 !important;
}
/* Higher-specificity re-declarations: some Codex/Vector component CSS is
* loaded after this stylesheet with equal specificity + !important, which
* wins on source order alone — `html body` prefixes beat that regardless
* of load order. Also kills the white scroll-fade gradient overlay Vector
* draws at the bottom/edges of a scrollable TOC. */
html body button,
html body .cdx-button,
html body [class*="vector-toc"],
html body [class*="vector-pinnable"],
html body [class*="vector-pinned-container"] {
background: #1c1815 !important;
color: #e8ddc8 !important;
border-color: #3a3128 !important;
}
[class*="vector-toc"]::before,
[class*="vector-toc"]::after,
[class*="vector-pinnable"]::before,
[class*="vector-pinnable"]::after,
[class*="vector-sticky"]::before,
[class*="vector-sticky"]::after {
background: none !important;
background-image: none !important;
}
/* The actual culprit (found via computed-style inspection):
* .vector-sticky-pinned-container::after has a hardcoded white fade-out
* gradient (linear-gradient(rgba(255,255,255,0), rgb(255,255,255))) that
* doesn't match "vector-toc"/"vector-pinnable" wildcards above. */
.vector-sticky-pinned-container {
background: #1c1815 !important;
}