mediawiki-skins-Citizen/resources/skins.citizen.styles/Pagetools.less

248 lines
4.3 KiB
Plaintext

.page-actions {
display: flex;
margin-left: -12px; // To align with page padding
font-size: @ui-menu-text;
font-weight: 450;
gap: 4px;
&-more {
display: block;
width: var( --size-icon );
height: var( --size-icon );
box-sizing: content-box;
padding: 8px;
border-radius: var( --border-radius--medium );
cursor: pointer;
transition: @transition-opacity-quick;
&-menu {
position: absolute;
z-index: -1;
right: var( --padding-page );
left: var( --padding-page );
overflow: auto;
max-height: 60vh;
padding-top: 5px;
margin-top: 5px;
cursor: auto; // reset cursor pointer set by parent
opacity: 0;
pointer-events: none;
transition: @transition-opacity-quick, @transition-box-shadow-quick;
.citizen-card;
a {
.menu-item-link;
justify-content: space-between;
padding: 10px var( --padding-page );
&:after {
.resource-loader-list-icon;
margin-left: @icon-padding;
opacity: var( --opacity-icon-base );
}
&:hover {
.menu-item-link-hover;
&:after {
opacity: var( --opacity-icon-base--hover );
}
}
&:active {
.menu-item-link-active;
&:after {
opacity: var( --opacity-icon-base--active );
}
}
}
}
&:before {
display: block;
width: var( --size-icon );
height: var( --size-icon );
background-size: var( --size-icon );
content: '';
opacity: var( --opacity-icon-base );
}
&:hover {
.page-actions-more-menu {
z-index: 5;
opacity: 1;
pointer-events: auto;
}
}
&:active {
background: var( --background-color-quiet--active ) !important;
&:before {
opacity: var( --opacity-icon-base--active );
}
}
}
> .mw-portlet {
ul {
display: flex;
gap: 4px;
}
li > a {
display: flex;
align-items: center;
padding: 8px 12px;
border-radius: var( --border-radius--medium );
color: var( --color-base );
font-size: 0;
transition: @transition-background-quick, @transition-color-quick;
&:after {
width: var( --size-icon );
height: var( --size-icon );
order: -1; // Move icon before the text
background-position: center;
background-repeat: no-repeat;
background-size: var( --size-icon );
content: '';
opacity: var( --opacity-icon-base );
transition: @transition-opacity-quick;
}
&:hover {
background-color: var( --background-color-quiet--hover );
color: var( --color-base--emphasized );
&:after {
opacity: var( --opacity-icon-base--hover );
}
}
&:active {
background-color: var( --background-color-quiet--active );
color: var( --color-base--subtle );
&:after {
opacity: var( --opacity-icon-base--active );
}
}
span {
.mixin-screen-reader-text;
}
}
}
ul {
margin: 0;
list-style: none;
}
li {
margin: 0;
}
}
#p-views {
// VE styles shouldn't be core but it is just a few lines :/
#ca-ve-edit {
order: 98; // Before source edit
> a {
padding-right: 24px;
}
// Merge two buttons together
+ #ca-edit {
border-left: 1px solid var( --color-primary--hover );
margin-left: -16px;
> a {
padding-left: 8px;
border-radius: 0 var( --border-radius--medium ) var( --border-radius--medium ) 0;
font-size: 0; // hide edit source text
&:after {
margin-right: 0; // reset
}
}
}
}
#ca-edit {
order: 99; // Align to last
}
#ca-edit,
#ca-ve-edit {
> a {
background-color: var( --color-primary );
color: #fff;
&:after {
filter: invert( 1 );
// white icon
opacity: 1;
}
&:hover {
background-color: var( --color-primary--hover );
}
&:active {
background-color: var( --color-primary--active );
}
}
}
}
.skin-citizen-dark {
.page-actions {
&-more {
&:before {
filter: invert( 1 );
}
}
li > a:after {
filter: invert( 1 );
}
}
}
@media ( min-width: @width-breakpoint-tablet ) {
.page-actions {
margin-right: 0;
&-more-menu {
position: relative;
right: unset;
left: -172px;
width: 200px;
}
> .mw-portlet {
li > a {
font-size: @ui-menu-text;
&:after {
margin-right: 8px;
}
}
}
}
}
@media ( hover: hover ) {
.page-actions-more:hover {
background: var( --background-color-quiet--hover );
&:before {
opacity: var( --opacity-icon-base--hover );
}
}
}