Jump to content

MediaWiki:Common.css

From the Vrienden Universe, a fictional wiki

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/*
 * This is the CSS common to all desktop skins on Vrienden Universe.
 * Styling inside .mw-parser-output should generally use TemplateStyles.
 */
/* Reset italic styling set by user agent */
cite,
dfn {
	font-style: inherit;
}

/* Straight quote marks for <q> */
q {
	quotes: '"' '"' "'" "'";
}

/* Avoid collision of blockquote with floating elements by swapping margin and padding */
blockquote {
	overflow: hidden;
	margin: 1em 0;
	padding: 0 40px;
}

/* Consistent size for <small>, <sub> and <sup> */
small {
	font-size: 85%;
}

.mw-body-content sub,
.mw-body-content sup {
	font-size: 80%;
}

/* Same spacing for indented and unindented paragraphs on talk pages */
.ns-talk .mw-body-content dd {
	margin-top: 0.4em;
	margin-bottom: 0.4em;
}

/* Reduce page jumps by hiding collapsed/dismissed content */
.client-js .collapsible:not( .mw-made-collapsible).collapsed > tbody > tr:not(:first-child),

/* Avoid FOUC/reflows on collapsed elements. */
/* This copies MediaWiki's solution for T42812 to apply to innercollapse/outercollapse (T325115). */
/* TODO: Use :is() selector at some reasonable future when support is good for Most Clients */
/* Reference: https://gerrit.wikimedia.org/g/mediawiki/core/+/ecda06cb2aef55b77c4b4d7ecda492d634419ead/resources/src/jquery/jquery.makeCollapsible.styles.less#75 */
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) > p,
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) > table,
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) > thead + tbody,
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) tr:not( :first-child ),
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) .mw-collapsible-content,

/* Hide charinsert base for those not using the gadget */
#editpage-specialchars {
	display: none;
}

/* Different margin on references */
.references {
	margin-bottom: 0.5em;
}

/* Cite customizations */
span[ rel="mw:referencedBy" ] {
	counter-reset: mw-ref-linkback 0;
}

span[ rel='mw:referencedBy' ] > a::before {
	content: counter( mw-ref-linkback, lower-alpha );
	font-size: 80%;
	font-weight: bold;
	font-style: italic;
}

a[ rel="mw:referencedBy" ]::before {
	font-weight: bold;
	content: "^";
}

span[ rel="mw:referencedBy" ]::before {
	content: "^ ";
}

/* Styling for jQuery makeCollapsible, matching that of collapseButton */
.mw-parser-output .mw-collapsible-toggle:not(.mw-ui-button) {
	font-weight: normal;
	padding-right: 0.2em;
	padding-left: 0.2em;
}

.mw-collapsible-leftside-toggle .mw-collapsible-toggle {
	/* @noflip */
	float: left;
}

/* Lists in wikitable data cells are always left-aligned */
.wikitable td ul,
.wikitable td ol,
.wikitable td dl {
	/* @noflip */
	text-align: left;
}

/* Change the external link icon to a PDF icon for all PDF files */
.mw-parser-output a[href$=".pdf"].external,
.mw-parser-output a[href*=".pdf?"].external,
.mw-parser-output a[href*=".pdf#"].external,
.mw-parser-output a[href$=".PDF"].external,
.mw-parser-output a[href*=".PDF?"].external,
.mw-parser-output a[href*=".PDF#"].external {
	background: url("//upload.wikimedia.org/wikipedia/commons/4/4d/Icon_pdf_file.png") no-repeat right;
	/* @noflip */
	padding: 8px 18px 8px 0;
}

/* System messages styled similarly to fmbox */
/* for .mw-warning-with-logexcerpt, behavior of this line differs between
 * the edit-protected notice and the special:Contribs for blocked users
 * The latter has specificity of 3 classes so we have to triple up here.
 */
.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt.mw-warning-with-logexcerpt,
div.mw-lag-warn-high,
div.mw-cascadeprotectedwarning,
div#mw-protect-cascadeon {
	clear: both;
	margin: 0.2em 0;
	border: 1px solid #bb7070;
	background-color: var(--background-color-error-subtle, #ffdbdb);
	padding: 0.25em 0.9em;
	box-sizing: border-box;
}

/* default colors for partial block message */
/* gotta get over the hump introduced by the triple class above */
.mw-contributions-blocked-notice-partial .mw-warning-with-logexcerpt.mw-warning-with-logexcerpt {
	border-color: var(--border-color-warning, #ab7f2a);
	background-color: var(--background-color-warning-subtle, #fef6e7);
}

/* Minimum thumb width */
@media (min-width: 640px) {
	figure[typeof~='mw:File/Thumb'],
	figure[typeof~='mw:File/Frame'],
	.thumbinner {
		min-width: 100px;
	}
}

/* Prevent floating boxes from overlapping any category listings,
   file histories, edit previews, and edit [Show changes] views. */
#mw-subcategories,
#mw-pages,
#mw-category-media,
#filehistory,
#wikiPreview,
#wikiDiff {
	clear: both;
}

/* Hide stuff meant for accounts with special permissions. Made visible again in
   [[MediaWiki:Group-checkuser.css]], [[MediaWiki:Group-sysop.css]], [[MediaWiki:Group-abusefilter.css]],
   [[MediaWiki:Group-abusefilter-helper.css]], [[MediaWiki:Group-patroller.css]],
   [[MediaWiki:Group-templateeditor.css]], [[MediaWiki:Group-extendedmover.css]],
   [[MediaWiki:Group-extendedconfirmed.css]], [[Mediawiki:Group-autoconfirmed.css]], and [[MediaWiki:Group-user.css]] */
.checkuser-show,
.sysop-show,
.abusefilter-show,
.abusefilter-helper-show,
.patroller-show,
.templateeditor-show,
.extendedmover-show,
.extendedconfirmed-show,
.autoconfirmed-show,
.user-show {
	display: none;
}

/* Hide the redlink generated by {{Editnotice}},
   this overrides the ".sysop-show { display: none; }" above that applies
   to the same link as well. See [[phab:T45013]]

   Hide the images in editnotices to keep them readable in VE view.
   Long term, editnotices should become a core feature so that they can be designed responsive. */
.ve-ui-mwNoticesPopupTool-item .editnotice-redlink,
.ve-ui-mwNoticesPopupTool-item .mbox-image,
.ve-ui-mwNoticesPopupTool-item .mbox-imageright {
	display: none !important;
}

/* Remove bullets when there are multiple edit page warnings */
ul.permissions-errors {
	margin: 0;
}

ul.permissions-errors > li {
	list-style: none;
}

/* larger inline math */
span.mwe-math-mathml-inline {
	font-size: 118%;
}

/* Make <math display="block"> be left aligned with one space indent for 
 * compatibility with style conventions
 */
.mwe-math-fallback-image-display,
.mwe-math-mathml-display {
	margin-left: 1.6em !important;
	margin-top: 0.6em;
	margin-bottom: 0.6em;
}

.mwe-math-mathml-display math {
	display: inline;
}

@media screen {
	/* Put a chequered background behind images, only visible if they have transparency,
	 * except on main, user, and portal namespaces
	 */
	body:not(.ns-0):not(.ns-2):not(.ns-100) .gallerybox .thumb img {
		background: #fff url(//upload.wikimedia.org/wikipedia/commons/5/5d/Checker-16x16.png) repeat;
	}

	/* Display "the site subtitle" in skins that support it,
	   do not apply to print mode */
	#siteSub {
		display: block;
	}
	
	/* Make the list of references smaller
	 * Keep in sync with Template:Refbegin/styles.css
	 * And Template:Reflist/styles.css
	 */
	.references {
		font-size: 90%;
	}
}

/* Hide FlaggedRevs notice UI when there are no pending changes */
.flaggedrevs_draft_synced,
.flaggedrevs_stable_synced,
/* "Temporary" to remove links in sidebar T255381 */
#t-upload,
/* Hide broken download box on Special:Book pending T285400 */
.mw-special-Book #coll-downloadbox {
	display: none;
}

/*
 * BELOW HERE THERE BE SOONTOBE TEMPLATESTYLES THINGS;
 * SEE [[MediaWiki talk:Common.css/to do]]
 * CSS is separated by component (which is why media queries are not joined)
 */

/* Infoboxes */
.infobox {
	border: 1px solid var(--border-color-base, #a2a9b1);
	color: var(--color-base, #202122);
	background-color: var(--background-color-neutral-subtle, #f8f9fa);
	padding: 0.2em;
	font-size: 88%;
	line-height: 1.5em;
	border-spacing: 3px;
	margin: 0.5em 0;
}

/* Ensure nothing inside forces black text */
.infobox * {
	color: inherit;
}

/* Links inside infobox follow theme colors */
.infobox a:link,
.infobox a:visited {
	color: var(--color-progressive, #36c);
}

.infobox a.new:link,
.infobox a.new:visited {
	color: var(--color-destructive, #d33);
}

@media (max-width: 640px) {
	.infobox {
		width: 100%;
	}
    
	.infobox .nowrap {
		white-space: normal;
	}
}

@media (min-width: 640px) {
	.infobox {
		/* @noflip */
		margin-left: 1em;
		/* @noflip */
		float: right;
		/* @noflip */
		clear: right;
		width: 22em;
	}
}

.infobox-header,
.infobox-label,
.infobox-above,
.infobox-full-data,
.infobox-data,
.infobox-below,
.infobox-subheader,
.infobox-image,
.infobox-navbar,
/* Remove element selector when every .infobox thing is using the standard module/templates  */
.infobox th,
.infobox td {
	vertical-align: top;
}

.infobox-label,
.infobox-data,
/* Remove element selector when every .infobox thing is using the standard module/templates  */
.infobox th,
.infobox td {
	/* @noflip */
	text-align: left;
}

/* Keep infobox values starting near the middle, Wikipedia-style. */
.infobox .infobox-label {
	width: 40%;
}

/* Remove .infobox when element selectors above are removed */
.infobox .infobox-above,
.infobox .infobox-title,
/* Remove element selector when every .infobox thing is using the standard module/templates  */
.infobox caption {
	font-size: 125%;
	font-weight: bold;
	text-align: center;
}

.infobox-title,
/* Remove element selector when every .infobox thing is using the standard module/templates  */
.infobox caption {
	padding: 0.2em;
}

/* Remove .infobox when element selectors above are removed */
.infobox .infobox-header,
.infobox .infobox-subheader,
.infobox .infobox-image,
.infobox .infobox-full-data,
.infobox .infobox-below {
	text-align: center;
}

/* Remove .infobox when element selectors above are removed */
.infobox .infobox-navbar {
	/* @noflip */
	text-align: right;
}

/* Normal font styling for wikitable row headers with scope="row" tag */
.wikitable.plainrowheaders th[scope=row],
.wikitable.plainrowheaders th[scope=rowgroup] {
	font-weight: normal;
	/* @noflip */
	text-align: left;
}

/* Remove underlines from certain links */
.nounderlines a,
.IPA a:link,
.IPA a:visited {
	text-decoration: none !important;
}

/* Prevent line breaks in silly places where desired (nowrap)
   and links when we don't want them to (nowraplinks a) */
.nowrap,
.nowraplinks a {
	white-space: nowrap;
}

/* But allow wrapping where desired: */
.wrap,
.wraplinks a {
	white-space: normal;
}

/* texhtml class for inline math (based on generic times-serif class) */
/* remove spans when this is TemplateStyled */
span.texhtml {
	font-family: "Nimbus Roman No9 L", "Times New Roman", Times, serif;
	font-size: 118%;
	line-height: 1;
	/* Force tabular and lining display for texhtml */
	font-variant-numeric: lining-nums tabular-nums;
	font-kerning: none;
}

span.texhtml span.texhtml {
	font-size: 100%;
}

@media (min-width: 640px) {
	span.texhtml {
		white-space: nowrap;
	}
}

/* Prevent flags in tables from collapsing: Fix for T116318
 * TODO: Remove when [[phab:T368469]] merges [[phab:T367463]] for the other skins
 */
@media (max-width: 640px) {
	.flagicon a > img,
	.flagicon noscript > img {
		max-width: none !important;
	}
}

@media screen {
	.nochecker .gallerybox .thumb img {
		background-image: none;
	}
}

/* Hide maintenance / tracking categories */
.mw-hidden-cats {
	display: none;
}

/* Override inline hard-coded header backgrounds in infoboxes */
.infobox td.infobox-above,
.infobox th.infobox-above,
.infobox td.infobox-title,
.infobox th.infobox-title,
.infobox caption,
.infobox th[colspan] {
  background: var(--background-color-progressive-subtle, #eaf3ff) ;
  color: var(--color-base, #202122) ;
}

/* Ensure ALL infobox cells remain readable */
.infobox td,
.infobox th {
  color: var(--color-base, #202122) ;
  border-color: var(--border-color-base, #a2a9b1);
}
/*
 * Put anything you mean to be a sitewide addition above the TemplateStyles
 * comment above.
 */
/* Dark mode fixes for navboxes and similar boxes */
@media screen {
    /* User-selected Dark mode */
    html.skin-theme-clientpref-night .navbox,
    html.skin-theme-clientpref-night .navbox-subgroup,
    html.skin-theme-clientpref-night .navbox th,
    html.skin-theme-clientpref-night .navbox td {
        background-color: #1e1e1e ;  /* dark main body */
        color: #d0d0d0 ;
        border-color: #444 ;
    }

    /* Match infobox header color but darkened for dark mode (titles, above/below rows) */
    html.skin-theme-clientpref-night .navbox-title,
    html.skin-theme-clientpref-night .navbox-abovebelow,
    html.skin-theme-clientpref-night .navbox th[scope="col"],          /* column headers */
    html.skin-theme-clientpref-night .navbox .navbox-title,            /* nested titles */
    html.skin-theme-clientpref-night .navbox .navbox-group {           /* left-side group labels, often "side ones" */
        background-color: #1B223D ;  /* darkened blue-gray variant of #eaf3ff */
        color: #e0f0ff ;             /* very light blue-white text for contrast */
        border-color: #3a506b ;      /* subtle border to match */
    }

    /* If your navbox uses .navbox-group for left-side labels, this targets them specifically */
    html.skin-theme-clientpref-night .navbox .navbox-group {
        background-color: #1B223D ;
        font-weight: bold;
    }

    /* Alternating rows stay dark */
    html.skin-theme-clientpref-night .navbox-odd,
    html.skin-theme-clientpref-night .navbox-even {
        background-color: #252525 ;
    }

    /* Links inside navbox */
    html.skin-theme-clientpref-night .navbox a:not(.new):not(.mw-selflink) {
        color: #88ccff ;
    }

    /* For Automatic/OS dark preference */
    @media (prefers-color-scheme: dark) {
        html.skin-theme-clientpref-os .navbox,
        html.skin-theme-clientpref-os .navbox-subgroup,
        html.skin-theme-clientpref-os .navbox th,
        html.skin-theme-clientpref-os .navbox td {
            background-color: #1e1e1e ;
            color: #d0d0d0 ;
            border-color: #444 ;
        }
        html.skin-theme-clientpref-os .navbox-title,
        html.skin-theme-clientpref-os .navbox-abovebelow,
        html.skin-theme-clientpref-os .navbox th[scope="col"],
        html.skin-theme-clientpref-os .navbox .navbox-title,
        html.skin-theme-clientpref-os .navbox .navbox-group {
            background-color: #1B223D ;
            color: #e0f0ff ;
            border-color: #3a506b ;
        }
        html.skin-theme-clientpref-os .navbox .navbox-group {
            background-color: #1B223D ;
        }
        html.skin-theme-clientpref-os .navbox-odd,
        html.skin-theme-clientpref-os .navbox-even {
            background-color: #252525 ;
        }
    }
}

/*
 * Vrienden Universe "Paap" color theme.
 *
 * Paap builds on Vector 2022's night mode. The accompanying Common.js code
 * keeps skin-theme-clientpref-night active, then adds vu-theme-paap.
 */
html.vu-theme-paap {
	color-scheme: dark;
	--background-color-base: #170d24;
	--background-color-neutral: #241338;
	--background-color-neutral-subtle: #211330;
	--background-color-interactive: #2a1742;
	--background-color-interactive-subtle: #241338;
	--background-color-progressive-subtle: #351d53;
	--border-color-base: #604379;
	--border-color-subtle: #422d59;
	--color-base: #ffffff;
	--color-subtle: #d8cedf;
	--color-progressive: #79bff2;
	--color-destructive: #ef7180;
}

html.vu-theme-paap,
html.vu-theme-paap body,
html.vu-theme-paap .mw-page-container,
html.vu-theme-paap .mw-body,
html.vu-theme-paap .vector-header-container,
html.vu-theme-paap .vector-column-start,
html.vu-theme-paap .vector-column-end {
	background-color: #170d24;
	color: #ffffff;
}

html.vu-theme-paap .vector-dropdown-content,
html.vu-theme-paap .vector-menu-content,
html.vu-theme-paap .mw-portlet,
html.vu-theme-paap .cdx-menu,
html.vu-theme-paap .oo-ui-popupWidget-popup {
	background-color: #211330;
	color: #ffffff;
	border-color: #422d59;
}

/* Slightly darker than the existing dark-theme blue (#88ccff). */
html.vu-theme-paap body a:not(.new):not(.mw-selflink):link,
html.vu-theme-paap body a:not(.new):not(.mw-selflink):visited {
	color: #79bff2;
}

/* Darker than the existing dark-theme red (#ff6b6b), with AA contrast. */
html.vu-theme-paap body a.new:link,
html.vu-theme-paap body a.new:visited {
	color: #ef7180;
}

html.vu-theme-paap .infobox,
html.vu-theme-paap .navbox,
html.vu-theme-paap .navbox-subgroup,
html.vu-theme-paap .navbox th,
html.vu-theme-paap .navbox td,
html.vu-theme-paap .wikitable,
html.vu-theme-paap .wikitable > * > tr > th,
html.vu-theme-paap .wikitable > * > tr > td {
	background-color: #241338;
	color: #ffffff;
	border-color: #604379;
}

/* Replaces the current dark-blue #1B223D header surfaces. */
html.vu-theme-paap .infobox .infobox-above,
html.vu-theme-paap .infobox .infobox-title,
html.vu-theme-paap .infobox .infobox-header,
html.vu-theme-paap .infobox .infobox-subheader,
html.vu-theme-paap .infobox .infobox-below,
html.vu-theme-paap .infobox caption,
html.vu-theme-paap .infobox th[colspan],
html.vu-theme-paap .navbox-title,
html.vu-theme-paap .navbox-abovebelow,
html.vu-theme-paap .navbox th[scope="col"],
html.vu-theme-paap .navbox .navbox-group {
	background-color: #351d53;
	color: #ffffff;
	border-color: #604379;
}

html.vu-theme-paap .navbox-odd {
	background-color: #211330;
}

html.vu-theme-paap .navbox-even {
	background-color: #2a1742;
}

html.vu-theme-paap .mw-code,
html.vu-theme-paap pre,
html.vu-theme-paap code,
html.vu-theme-paap .toc,
html.vu-theme-paap .catlinks {
	background-color: #211330;
	color: #ffffff;
	border-color: #422d59;
}

/* Main Page components have their own navy palette; replace it for Paap. */
html.vu-theme-paap .vu-main {
	--vu-navy: #351d53;
	--vu-navy-light: #4a2b6b;
	--vu-blue: #79bff2;
}

html.vu-theme-paap .vu-header {
	background: linear-gradient(118deg, #211330 0%, #351d53 55%, #4a2b6b 100%);
}

html.vu-theme-paap .vu-explore-mark,
html.vu-theme-paap .vu-person-image {
	background-color: #351d53;
}

html.vu-theme-paap .vu-browse {
	background: linear-gradient(145deg, #351d53 0%, #351d53 72%, #4a2b6b 72%);
}

.mw-pt-translate-header {
    display: none;
}