mediawiki-skins-Citizen/skinStyles/extensions/Popups/ext.popups.main.less
alistair3149 47e1259bc3
feat: implement a more adaptive smooth shadow
* Looks more natural
* Can be customized through the surface-shadow and shadow-strength CSS var
* Light mode and dark mode have been different shadow now, it should be more visible in dark mode
* Box-shadow is a CSS var, which can be used in templates and wiki CSS
2022-04-24 15:24:09 -04:00

165 lines
3.1 KiB
Plaintext

/*
* Citizen
*
* SkinStyles for Extension:Popups
* Module: ext.popups.main
* Version: REL1_35 dccd607
*
* Date: 2021-09-02
*/
.mwe-popups {
overflow: hidden;
border: 1px solid var( --border-color-base ); // original box shadow also serve as a border
background-color: var( --color-surface-1 );
border-radius: var( --border-radius--medium );
box-shadow: var( --box-shadow-dialog );
&:hover {
background-color: var( --color-surface-2 );
.mwe-popups-extract {
&[ dir='ltr' ]:after {
/* @noflip */
background-image: linear-gradient( to right, transparent, var( --color-surface-2 ) 50% );
}
&[ dir='rtl' ]:after {
/* @noflip */
background-image: linear-gradient( to left, transparent, var( --color-surface-2 ) 50% );
}
}
}
&:active {
background-color: var( --color-surface-2--active );
.mwe-popups-extract {
&[ dir='ltr' ]:after {
/* @noflip */
background-image: linear-gradient( to right, transparent, var( --color-surface-2--active ) 50% );
}
&[ dir='rtl' ]:after {
/* @noflip */
background-image: linear-gradient( to left, transparent, var( --color-surface-2--active ) 50% );
}
}
}
.mwe-popups-container {
color: var( --color-base );
// Neutral color so dark SVG is visible
svg {
background-color: #eaecf0;
}
}
.mwe-popups-extract {
color: var( --color-base );
&[ dir='ltr' ]:after {
/* @noflip */
background-image: linear-gradient( to right, transparent, var( --color-surface-1 ) 50% );
}
&[ dir='rtl' ]:after {
/* @noflip */
background-image: linear-gradient( to left, transparent, var( --color-surface-1 ) 50% );
}
}
/* Triangles/Pointers */
&.mwe-popups-no-image-pointer {
&:after {
border-bottom-color: var( --color-surface-1 );
}
&:before {
border-bottom-color: var( --border-color-base );
}
}
&.mwe-popups-image-pointer {
&:before {
border-bottom-color: var( --border-color-base );
}
&:after {
border-bottom-color: var( --color-surface-1 );
}
&.flipped-x {
&:before {
border-bottom-color: var( --border-color-base );
}
&:after {
border-bottom-color: var( --color-surface-1 );
}
}
}
&.flipped-x.mwe-popups-is-tall {
&:before {
border-bottom-color: var( --border-color-base );
}
}
&.flipped-x-y {
&:before {
border-top-color: var( --border-color-base );
}
&:after {
border-top-color: var( --color-surface-1 );
}
&.mwe-popups-is-tall {
&:after {
border-top-color: var( --color-surface-1 );
}
&:before {
border-top-color: var( --border-color-base );
}
}
}
&.flipped-y {
&:after {
border-top-color: var( --color-surface-1 );
}
&:before {
border-top-color: var( --border-color-base );
}
}
/* referencePreview.less */
&.mwe-popups-type-reference {
.mwe-popups-extract {
.mwe-popups-fade {
background-image: linear-gradient( transparent, var( --color-surface-1 ) );
}
/* T266859 */
.mw-parser-output {
overflow-wrap: break-word;
}
}
}
// speed up fade animation 2x
&-fade {
&-in,
&-out {
&-up,
&-down {
animation-duration: 0.125s;
}
}
}
}