MediaWiki:Gadget-dark-mode.css
/* WikimediaUI Dark Mode
*
* Wikimedia Design Team 2019-2021
* Original authors:
* - Volker E. – User:Volker_E._(WMF)
* - Alex Hollender
* - MusikAnimal
* - Carolyn Li-Madeo
* - Jdlrobson
*
* Original at https://en.wikipedia.org/wiki/User:Volker_E._(WMF)/dark-mode.css
* Version for Gadget CSS skin override usage only.
* Basically removed of all interaction element styles and
* set to `html` instead of JS injected `.client-dark-mode` class.
*
* Last updated: 2021-04-20
*
*/
/** To prevent 'jumping' effect within #p-personal in Vector/Monobook. Overrides  **/
body.skin-vector-legacy :not(#pt-darkmode) + #pt-watchlist::before,
body.skin-monobook :not(#pt-darkmode) + #pt-watchlist::before {
content: "Light mode";
}
@media screen {
/* set height for monobook and timeless, because the filter in FF needs dimensions to get it to apply */
html {
height: 100%;
}
/* Filter needs to reside on `html`, see https://phabricator.wikimedia.org/T2214257 */
html,
/* All other selectors have `filter` double-applied to turn back to “normal" by inheritance */
html img,
html video,
html ogvjs,
html svg,
html iframe,
html .mw-no-invert,
html td .diffchange,
html .mwe-math-element,
html .wvui-typeahead-suggestion__thumbnail,
html .skin-minerva .mw-notification-visible .mw-notification-content,
/* Extensions */
html .cdx-menu-item__thumbnail, /* T311835 */
html .cx-slitem__image,
html .mw-mmv-overlay,
html .mw-mmv-pre-image,
html .media-viewer .image img,
html .media-viewer .mw-file-description img,
html .mw-kartographer-map,
html .mw-kartographer-mapDialog-map,
html .list-thumb,
html .ext-related-articles-card-list .ext-related-articles-card-thumb {
filter: invert( 1 ) hue-rotate( 180deg );
}
/* Reset overrides, needed where double application above isn't working. */
/* Vector modern */
html .skin-vector .mw-logo-wordmark,
html .skin-vector .mw-logo-tagline,
html .skin-timeless .mw-wiki-title > img,
html .wvui-icon svg {
filter: none;
}
/* Backgrounds */
html table,
html table.ambox-content,
html table.toccolours,
html .mw-notification,
html .mwe-popups,
html .infobox,
html .toc,
html .thumbinner,
html figure[typeof~='mw:File/Thumb'],
html figure[typeof~='mw:File/Frame'],
html figure[typeof~='mw:File/Thumb'] > figcaption,
html figure[typeof~='mw:File/Frame'] > figcaption,
html .wikitable,
html .cbnnr-main,
html .cx-callout,
html .overlay.media-viewer,
html #simpleSearch,
html #simpleSearch #searchInput,
html #siteNotice #centralNotice .cnotice {
background-color: #ddd;
}
/* Borders */
html body,
html h1,
html h2,
html h3,
html h4,
html h5,
html h6,
html table.ambox-content,
html table.toccolours,
html .mw-notification,
html .infobox,
html .toc,
html .thumbinner,
html figure[typeof~='mw:File/Thumb'],
html figure[typeof~='mw:File/Frame'],
html figure[typeof~='mw:File/Thumb'] > figcaption,
html figure[typeof~='mw:File/Frame'] > figcaption,
html #mw-head,
html #mw-panel,
/* Vector 2022 uses a transparent border for margin collapsing
(T312822) so don't apply this rule there */
.skin-vector-legacy #content.mw-body,
html #simpleSearch,
html #simpleSearch #searchInput,
html #siteNotice #centralNotice .cnotice {
border-color: ;
}
/* Links */
/* Links: normal */
html a,
html .vector-menu-tabs li a,
/* Backwards compatible VectorTabs, deprecated in MW v1.35. */
html .vectorTabs li a,
html .toctogglelabel,
html .mw-parser-output a.external,
html .mw-parser-output a.extiw,
html .mw-parser-output a.extiw:active,
html #mw-panel .portal .body li a {
/* color: #69f; Proposal below for level AA conformance, see also https://phabricator.wikimedia.org/T233266
`#36c` is transformed by :root `filter` to be closer to chosen `#69f`. */
color: #36c;
}
/* Links: visited */
html a:visited,
html .mw-parser-output a.extiw:visited,
html #mw-panel .portal .body li a:visited {
/* color: ; Proposal below uses to-be-standardized color from https://phabricator.wikimedia.org/T213778 */
color: ;
}
/* Links: red */
html a.new,
html .vector-menu-tabs li.new a,
html .vectorTabs li.new a {
color: ;
}
/* ::: Special Element Treatments ::: */
/* Image thumbnails */
html .thumbimage,
html figure[typeof~='mw:File/Thumb'] > *:first-child > *:first-child:not( .mw-broken-media ),
html figure[typeof~='mw:File/Frame'] > *:first-child > *:first-child:not( .mw-broken-media ) {
border: 0;
}
/* Content image (thumbnail) SVGs */
/* `*not( .mbox-image )` exception doesn't work for unclear reasons */
html .image img[ src*='svg' ],
html .mw-file-description img[ src*='svg' ],
html img[ src*='Wiktionary-logo'] {
background-color: #fff;
border-radius: 1px;
}
/* Dealing with false positives from selector above */
html .mw-echo-ui-notificationItemWidget-icon img[ src*='svg' ],
html .mbox-image .image img[ src*='svg' ],
html .mbox-image .mw-file-description img[ src*='svg' ],
/* Emoji generated by Template:Emoji */
html .emoji .image img,
html .emoji .mw-file-description img,
/* Vote symbols on Talk pages */
html .image img[ alt^="Symbol" ],
html .mw-file-description img[ alt^="Symbol" ] {
background-color: transparent;
}
/* Page previews */
html .mwe-popups {
box-shadow: 0 30px 90px -20px rgba( 0, 0, 0, 0.3 ), 0 0 1px #000;
}
html .mwe-popups.flipped-y:after,
html .mwe-popups.flipped-x-y:after {
border-top: 11px solid #ddd;
}
html .mwe-popups.mwe-popups-no-image-pointer:after {
border-bottom: 11px solid #ddd;
}
/* Contributions menu */
html .cx-callout-1:after {
border-bottom-color: #ddd;
}
/* Mobile Wikipedia logo mobile header */
html .branding-box img {
filter: brightness( 0 );
}
}
@-moz-document url-prefix() {
body {
background: #000;
}
}
@-moz-document url-prefix() {
@supports (overflow-clip-margin: 1px) {
body {
background: #fff;
}
}
}