/**
* MediaWiki UI icons specification 2.0
*
* Applies the MinervaNeue icon styles, adding more mobile-friendly
* features like increased touch-area sizes and highlights.
*
* - mw-ui-icon = base class. 20px square with icon.
* - mw-ui-icon + mw-ui-icon-element = icon with padding & pseudo-states.
* - mw-ui-icon + mw-ui-icon-small = small icon with padding & pseudo-states.
* - mw-ui-icon + mw-ui-icon-flush-left = negative right-margin.
* - mw-ui-icon + mw-ui-icon-flush-right = negative left-margin.
* - mw-ui-icon + mw-ui-icon-before = *deprecated*, icon with text.
*   Labels should be placed in a separate element beside the icon.
*
*/
/**
 * This file is a LESS import match for "mediawiki.skin.variables.less"
 * when legacy Vector (useskin=vector) is the active skin.
 */
/* stylelint-disable indentation */
/* stylelint-disable selector-class-pattern */
/* stylelint-disable selector-no-vendor-prefix */
/* stylelint-enable selector-no-vendor-prefix */
/**
* Mixin for a pseudo-element with a background image.
*/
/**
* A standalone 20px square with screen-reader text. Contains a :before element
* to house the icon as a background image. Total size is increased with padding via
* `box-sizing: content-box`. This separates control over size of icon vs the size of
* the touch-area.
*/
.mw-ui-icon {
  /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
  font-size: initial;
  position: relative;
  display: inline-block;
  box-sizing: content-box !important;
  width: 1.25em;
  height: 1.25em;
  min-width: 1.25em;
  min-height: 1.25em;
  flex-basis: 1.25em;
  vertical-align: middle;
  line-height: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
  -moz-appearance: none;
  /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
  -webkit-appearance: none;
  background-color: transparent;
  margin: 0;
  padding: 0;
}
.mw-ui-icon:not( .mw-ui-button ) {
  border: 0;
}
.mw-ui-icon::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  min-width: 1.25em;
  min-height: 1.25em;
  background-repeat: no-repeat;
  background-size: 1.25em 1.25em;
  background-position: center;
}
.mw-ui-icon + span:not( :empty ) {
  margin-left: 6px;
}
/**
* When aligning a series of similar icons (e.g. list items)
* prefer using a `:first-child` or `:last-child` selector.
* The flush-left/right classes are appropriate when that's unavailable.
*/
.mw-ui-icon-flush-top {
  margin-top: -0.75em;
}
.mw-ui-icon-flush-left {
  margin-left: -0.75em;
}
@media all and (min-width: 1000px) {
  .mw-ui-icon-flush-left {
    margin-left: -0.375em;
  }
}
.mw-ui-icon-flush-right {
  margin-right: -0.75em;
}
@media all and (min-width: 1000px) {
  .mw-ui-icon-flush-right {
    margin-right: -0.375em;
  }
}
.mw-ui-icon-element {
  border-radius: 2px;
  padding: 0.75em;
  line-height: 0;
  transition: background-color 100ms;
  color: transparent;
}
.mw-ui-icon-element.mw-ui-button {
  padding: 0.6875em;
}
.mw-ui-icon-element:focus,
.mw-ui-icon-element:active,
.mw-ui-icon-element:visited {
  color: transparent;
}
@media (min-width: 1000px) {
  .mw-ui-icon-element.mw-ui-button {
    padding: 0.3125em;
  }
}
.mw-ui-icon-small {
  width: 1em;
  height: 1em;
  min-width: 1em;
  min-height: 1em;
  flex-basis: 1em;
  line-height: 1em;
}
.mw-ui-icon-small::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  min-width: 1em;
  min-height: 1em;
  background-repeat: no-repeat;
  background-size: 1em 1em;
  background-position: center;
}
.mw-ui-icon-small.mw-ui-icon-element {
  padding: 0.4375em;
}
.mw-ui-icon-small.mw-ui-icon-flush-left {
  margin-left: -0.4375em;
}
.mw-ui-icon-small.mw-ui-icon-flush-right {
  margin-right: -0.4375em;
}
.mw-ui-icon-small.mw-ui-icon-before::before {
  min-width: 1em;
  min-height: 1em;
  margin-right: 0.4375em;
}
.mw-ui-icon-before {
  width: auto;
  max-width: 100%;
}
.mw-ui-icon-before::before {
  display: inline-block;
  /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
  font-size: initial;
  width: auto;
  min-width: 1.25em;
  min-height: 1.25em;
  margin-right: 6px;
  vertical-align: middle;
}
.mw-ui-icon-before span {
  vertical-align: middle;
}
@media all and (min-width: 1000px) {
  .mw-ui-icon-with-label-desktop {
    color: #54595d !important;
    width: auto;
    line-height: inherit;
    flex-basis: auto;
    font-weight: 500 !important;
  }
  .mw-ui-icon-with-label-desktop:hover,
  .mw-ui-icon-with-label-desktop:focus,
  .mw-ui-icon-with-label-desktop:active,
  .mw-ui-icon-with-label-desktop:visited {
    color: #54595d;
    text-decoration: none;
  }
  .mw-ui-icon-with-label-desktop::before {
    width: auto;
    display: inline-block;
    margin-right: 6px;
    vertical-align: text-bottom;
  }
}
