Module:Citation/CS1/styles.css

From Rest of What I Know
/* Protection icon
the following line controls the page-protection icon in the upper right corner
it must remain within this comment
	{{sandbox other||{{pp-template}}}}

*/

/* Overrides
Some wikis do not override user agent default styles for HTML <cite> and <q>,
unlike en.wp. On en.wp, keep these the same as [[MediaWiki:Common.css]].

The word-wrap and :target styles were moved here from Common.css.
On en.wp, keep these the same as [[Template:Citation/styles.css]].
*/
cite.citation {
	font-style: inherit; /* Remove italics for <cite> */
	/* Break long urls, etc., rather than overflowing box */
	word-wrap: break-word;
}

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

/* Highlight linked elements (such as clicked references) in blue */
.citation:target {
	/* ignore the linter - all browsers of interest implement this */
	background-color: rgba(0, 127, 255, 0.133);
}

/* ID and URL access
Both core and Common.css have selector .mw-parser-output a[href$=".pdf"].external
for PDF pages. All TemplateStyles pages are hoisted to .mw-parser-output. We need
to have specificity equal to a[href$=".pdf"].external for locks to override PDF icon.
That's essentially 2 classes and 1 element.

the .id-lock-... selectors are for use by non-citation templates like
{{Catalog lookup link}}

bg-size `contain` in Minerva and Timeless is too large, so we set a size for them
and then exclude them later
*/
.id-lock-free.id-lock-free a {
	background: url(//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg)
		right 0.1em center/9px no-repeat;
}

.id-lock-limited.id-lock-limited a,
.id-lock-registration.id-lock-registration a {
	background: url(//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg)
		right 0.1em center/9px no-repeat;
}

.id-lock-subscription.id-lock-subscription a {
	background: url(//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg)
		right 0.1em center/9px no-repeat;
}

/* Wikisource
Wikisource icon when |chapter= or |title= is wikilinked to Wikisource
as in cite wikisource
*/
.cs1-ws-icon a {
	background: url(//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg)
		right 0.1em center/12px no-repeat;
}

body:not(.skin-timeless):not(.skin-minerva) .id-lock-free a,
body:not(.skin-timeless):not(.skin-minerva) .id-lock-limited a,
body:not(.skin-timeless):not(.skin-minerva) .id-lock-registration a,
body:not(.skin-timeless):not(.skin-minerva) .id-lock-subscription a,
body:not(.skin-timeless):not(.skin-minerva) .cs1-ws-icon a {
	background-size: contain;
	/* Common.css has a padding set for PDF URLs. bg-contain expands to the
	 * size of the padding which makes the icons very large. we "reset" the
	 * padding here. 1em picked out of a hat based on console having a similar
	 * rule from elsewhere
	 */
	padding: 0 1em 0 0;
}

/* Errors and maintenance */
.cs1-code {
	/* <code>...</code> style override: mediawiki's css definition is specified here:
	https://git.wikimedia.org/blob/mediawiki%2Fcore.git/
		69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199
	*/
	color: inherit;
	background: inherit;
	border: none;
	padding: inherit;
}

.cs1-hidden-error {
	display: none;
	color: var(--color-error, #d33);
}

.cs1-visible-error {
	color: var(--color-error, #d33);
}

.cs1-maint {
	display: none;
	color: #085;
	margin-left: 0.3em;
}

/* kerning */
.cs1-kern-left {
	padding-left: 0.2em;
}

.cs1-kern-right {
	padding-right: 0.2em;
}

/* selflinks – avoid bold font style when cs1|2 template links to the current page */
.citation .mw-selflink {
	font-weight: inherit;
}

@media screen {
	/* Small text size
	Set small text size in one place. 0.95 (here) * 0.9 (from references list) is
	~0.85, which is the lower bound for size for accessibility. Old styling for this
	was just 0.85. We could write the rule so that when this template is inside
	references/reflist, only then does it multiply by 0.95; else multiply by 0.85 */
	.cs1-format {
		font-size: 95%;
	}
	
	html.skin-theme-clientpref-night .cs1-maint {
		color: #18911f;
	}
}

@media screen and (prefers-color-scheme: dark) {
	html.skin-theme-clientpref-os .cs1-maint {
		color: #18911f;
	}
}