Jump to content

MediaWiki:Gadget-Navbox.css: Difference between revisions

From The Petit Planet Wiki
Created page with ".navbox { width: 100%; font-size: 88%; margin: auto; clear: both; text-align: center; border-radius: 10px !important; overflow: hidden; } .navbox td { padding: 0 !important; } .navbox-inner, .navbox-subgroup { width: 100%; } .navbox-group, .navbox-title, .navbox-abovebelow { padding: 0.25em 1em; line-height: 1.5em; text-align: center; } th.navbox-group { white-space: nowrap; text-align: left; /* Align Left c..."
 
Adjusted font-size
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
.navbox {
/****************************************************************
    width: 100%;
* Semantically-correct horizontal lists (for [[Module:Navbox]]) *
    font-size: 88%;
*****************************************************************/
    margin: auto;
.hlist dl,
    clear: both;
.hlist ol,
    text-align: center;
.hlist ul {
    border-radius: 10px !important;
  margin: 0;
    overflow: hidden;
  padding: 0;
}
 
.navbox td {
    padding: 0 !important;
}
 
.navbox-inner,
.navbox-subgroup {
    width: 100%;
}
 
.navbox-group,
.navbox-title,
.navbox-abovebelow {
    padding: 0.25em 1em;
    line-height: 1.5em;
    text-align: center;
}
 
th.navbox-group {
    white-space: nowrap;
    text-align: left;
    /* Align Left cuz read words LTR, skim left side charaters first */
}
 
.skin-fandommobile th.navbox-group {
    white-space: normal;
}
 
.navbox,
.navbox-subgroup {
    background: var(--theme-page-background-color);
}
 
.navbox-list {
    line-height: 1.5em;
}
 
 
table.navbox table.navbox {
    margin-top: 0;
}
 
table.navbox + table.navbox {
    margin-top: -1px;
}
 
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
    padding: 0.125em 0;
}
 
.page-content .navbox .hlist dl,
.page-content .navbox .hlist ol,
.page-content .navbox .hlist ul {
    margin: 0;
    padding: 0;
}
}


/* Display list items inline */
.hlist dd,
.hlist dd,
.hlist dt,
.hlist dt,
.hlist li {
.hlist li {
    display: inline;
  /*
  * don't trust the note that says margin doesn't work with inline
  * removing margin: 0 makes dds have margins again
  * We also want to reset margin-right in Minerva
  */
  margin: 0;
  display: inline;
}
}


.hlist .inline,
/* Display requested top-level lists inline */
.hlist .inline dl,
.hlist.inline,
.hlist .inline ol,
.hlist.inline dl,
.hlist .inline ul,
.hlist.inline ol,
.hlist.inline ul,
/* Display nested lists inline */
.hlist dl dl,
.hlist dl dl,
.hlist dl ol,
.hlist dl ol,
Line 89: Line 37:
.hlist ul ol,
.hlist ul ol,
.hlist ul ul {
.hlist ul ul {
    display: inline;
  display: inline;
}
}


.hlist dt:after {
/* Hide empty list items */
    content: ":"
.hlist .mw-empty-li {
  display: none;
}
}


.hlist dd:after,
/* TODO: :not() can maybe be used here to remove the later rule. naive test
.hlist li:after {
* seems to work. more testing needed. like so: */
     content: " · ";
.hlist dt:not(:last-child)::after {
    font-weight: bold;
  content: ":\20";
}
.hlist dd:not(:last-child)::after,
.hlist li:not(:last-child)::after {
  /* "space, Middle Dot, space"
  We use unicode numbers instead of the raw characters due to a Firefox encoding bug on unicode characters.
  The space is also encoded because raw spaces combined with a unicode number strips the spaces under some conditions such as single-line lists */
  /* content: "\20\00B7\20"; font-weight: bold; */
     /* "space   •   space"
      There may (and likely) be an extra whitespace between <li>s,
      therefore we have to use a space character as last character of this sequence.
      By this way, the last space and the next whitespce will collapse as a single space,
      to make the whitespace on both sides of the middle dot the same width.
    */
  content: "\20\A0\2022\A0\20";  
  font-weight: inherit;
}
}


.hlist dd:last-child:after,
/* Add parentheses around nested lists */
.hlist dt:last-child:after,
.hlist dd ol::before,
.hlist li:last-child:after {
.hlist dd ul::before,
    content: none;
.hlist dd dl::before,
.hlist dt ol::before,
.hlist dt ul::before,
.hlist dt dl::before,
.hlist li ol::before,
.hlist li ul::before,
.hlist li dl::before {
  content: "\20(";
  font-weight: inherit;
}
}


.hlist dd.hlist-last-child:after,
.hlist dd ol::after,
.hlist dt.hlist-last-child:after,
.hlist dd ul::after,
.hlist li.hlist-last-child:after {
.hlist dd dl::after,
    content: none;
.hlist dt ol::after,
.hlist dt ul::after,
.hlist dt dl::after,
.hlist li ol::after,
.hlist li ul::after,
.hlist li dl::after {
  content: ")";
  font-weight: inherit;
}
}


.hlist dd dd:first-child:before,
/* Put ordinals in front of ordered list items */
.hlist dd dt:first-child:before,
.hlist ol {
.hlist dd li:first-child:before,
  counter-reset: listitem;
.hlist dt dd:first-child:before,
.hlist dt dt:first-child:before,
.hlist dt li:first-child:before,
.hlist li dd:first-child:before,
.hlist li dt:first-child:before,
.hlist li li:first-child:before {
    content: " (";
    font-weight: normal;
}
}


.hlist dd dd:last-child:after,
.hlist ol > li {
.hlist dd dt:last-child:after,
  counter-increment: listitem;
.hlist dd li:last-child:after,
.hlist dt dd:last-child:after,
.hlist dt dt:last-child:after,
.hlist dt li:last-child:after,
.hlist li dd:last-child:after,
.hlist li dt:last-child:after,
.hlist li li:last-child:after {
    content: ") ";
    font-weight: normal;
}
}


.hlist dd dd.hlist-last-child:after,
.hlist ol > li::before {
.hlist dd dt.hlist-last-child:after,
  content: " " counter(listitem) ".\20";
.hlist dd li.hlist-last-child:after,
.hlist dt dd.hlist-last-child:after,
.hlist dt dt.hlist-last-child:after,
.hlist dt li.hlist-last-child:after,
.hlist li dd.hlist-last-child:after,
.hlist li dt.hlist-last-child:after,
.hlist li li.hlist-last-child:after {
    content: ") ";
    font-weight: normal;
}
}


.hlist ol {
/* Progressive enhancement:
    counter-reset: listitem;
* try to make the dot always follow the list item in same line
*/
.hlist :is(li,dt,dd):not(:has(:is(li,dt,dd))){
  display: inline-block;
}
}


.hlist ol > li {
/********************************************
    counter-increment: listitem;
* End semantically-correct horizontal lists *
*********************************************/
 
.ranger-navbox{
  --navbox-background: var(--background-color-0); /* for entire navbox */
  --navbox-margin: 0.5em auto;
  --navbox-padding: 0px;
  --navbox-gap: 2px; /* when using zero-value, it must be 0px */
  --navbox-outer-border-color: var(--background-color-0b);
  --navbox-outer-border-width: 0px;
  --navbox-outer-border-style: solid;
  --navbox-outer-border-radius: 10px;
  --navbox-font-size: max(calc(1em - 2px), 0.825rem);
  --navbox-title-color: var(--color-emphasized);
  --navbox-title-font-size: calc(115%);
  --navbox-title-background: var(--background-color-2b);
  --navbox-title-icon-color: var(--color-base);
  --navbox-title-link-color: var(--color-progressive);
  --navbox-title-link-color--visited: var(--navbox-title-link-color);
  --navbox-title-link-color--hover: var(--color-progressive--hover);
  --navbox-title-redlink-color: var(--color-destructive);
  --navbox-title-link-decoration: none;
  --navbox-title-redlink-decoration: none;
  --navbox-title-padding--y: 0.25em;
  --navbox-above-background: var(--background-color-2);
  --navbox-above-color: var(--color-base);
  --navbox-above-padding: var(--navbox-list-padding);
  --navbox-below-background: var(--navbox-above-background);
  --navbox-below-color: var(--navbox-above-color);
  --navbox-below-padding: var(--navbox-above-padding);
  --navbox-header-color: var(--navbox-title-color);
  --navbox-header-font-size: calc(110%);
  --navbox-header-background: var(--background-color-2);
  --navbox-header-icon-color: var(--navbox-title-icon-color);
  --navbox-header-link-color: var(--navbox-title-link-color);
  --navbox-header-link-color--visited: var(--navbox-title-link-color--visited);
  --navbox-header-link-color--hover: var(--navbox-title-link-color--hover);
  --navbox-header-redlink-color: var(--navbox-title-redlink-color);
  --navbox-header-link-decoration: var(--navbox-title-link-decoration);
  --navbox-header-redlink-decoration: var(--navbox-title-redlink-decoration);
  --navbox-header-padding--y: 0em;
  --navbox-subheader-font-size: calc(100%);
  --navbox-subheader-padding--y: calc(var(--navbox-header-padding--y)/2);
  --navbox-list-background: var(--background-color-0b);
  --navbox-list-background--striped: var(--background-color-1);
  --navbox-list-color: var(--color-base);
  --navbox-list-padding: 0.25em 0.5em;
  /* --navbox-group-* also apply to .ranger-subgroup */
  --navbox-group-text-align: left;
  --navbox-group-text-align--mobile: left; /* only for mobile view */
  --navbox-group-background: var(--background-color-1b);
  --navbox-group-color: var(--color-base);
  --navbox-group-padding: var(--navbox-list-padding);
  --navbox-tree-line-color: var(--background-color-1b);
  --navbox-tree-line-width: 3px;
  --navbox-tree-indent: 1em;
  --navbox-tree-line-indent: 0.5em;
  --navbox-tree-line-spacing: var(--navbox-gap);
  --icon-chevron-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-chevron-down' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M6 9l6 6l6 -6'%3E%3C/path%3E%3C/svg%3E");
  --icon-metalinks: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-edit' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1'%3E%3C/path%3E%3Cpath d='M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415z'%3E%3C/path%3E%3Cpath d='M16 5l3 3'%3E%3C/path%3E%3C/svg%3E");
  --navbox-icon-offset--x: 0.5rem; /* should be an absolute length (rem-based or px-based) */
}
.ranger-navbox.pill,
.ranger-navbox.pill-mobile{
  /** vars for the "pill" style only (`.pill` and ".pill-mobile" clases) **/
  --navbox-pill-gap: 0.3em;
  --navbox-pill-padding: 0.25em 0.75em;
  --navbox-pill-border-radius: 3px;
  --navbox-pill-box-shadow: 0 0 0 1px var(--border-color-base);
  --navbox-pill-background: var(--background-color-1b);
  --navbox-pill-box-shadow--hover: 0 0 0 1px var(--navbox-list-color);
  --navbox-pill-background--hover: var(--navbox-pill-background);
  --navbox-pill-selflink-background: var(--background-color-1); /* background of pills with selflink in them */
  --navbox-list-background: var(--background-color-0b);
  --navbox-list-background--striped: var(--background-color-1);
}
.ranger-navbox.no-underline-title-links{
  --navbox-title-link-color: var(--wiki-accent-link-color);
  --navbox-title-link-decoration: none;
  --navbox-title-redlink-decoration: none;
}
.ranger-navbox.noborder,
.ranger-navbox.no-border{
  --navbox-padding: 0px;
  --navbox-outer-border-width: 0px;
}
}


.hlist ol > li:before {
/** as of Module:navbox version 1.2.5 **/
    content: " " counter(listitem) " ";
 
    white-space: nowrap
.ranger-navbox{
  border-color: var(--navbox-outer-border-color);
  border-style: var(--navbox-outer-border-style);
  border-width: var(--navbox-outer-border-width);
  border-radius: var(--navbox-outer-border-radius);
  padding: var(--navbox-padding);
  font-size: var(--navbox-font-size);
  margin: var(--navbox-margin);
  background: var(--navbox-background);
  line-height: 1.5;
  clear: both;
  overflow: hidden;
}
}


.hlist dd ol > li:first-child:before,
.ranger-navbox * {
.hlist dt ol > li:first-child:before,
  border: 0;
.hlist li ol > li:first-child:before {
}
     content: " (" counter(listitem) " ";
.ranger-navbox .center *{
  margin-left: unset;
  margin-right: unset;
}
.ranger-navbox,
.ranger-navbox .ranger-section,
.ranger-navbox .ranger-listbox{
  display: flex;
  flex-direction: column;
  gap: var(--navbox-gap);
}
.ranger-navbox .ranger-title,
.ranger-navbox .ranger-header{
  text-align: center;
  min-height: 1.5em;
  position: relative;
  z-index: 0;
  font-weight: bold;
}
.ranger-navbox .ranger-title{
  color: var(--navbox-title-color);
  background: var(--navbox-title-background);
  font-size: var(--navbox-title-font-size);
  padding: var(--navbox-title-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */
}
.ranger-navbox .ranger-title a,
.ranger-navbox .ranger-title a:visited,
.ranger-navbox .ranger-title a:hover,
.ranger-navbox .ranger-title a.external,
.ranger-navbox .ranger-title a.external:visited,
.ranger-navbox .ranger-title a.external:hover {
  text-decoration: var(--navbox-title-link-decoration);
}
.ranger-navbox .ranger-title a.new,
.ranger-navbox .ranger-title a.new:visited {
  text-decoration: var(--navbox-title-redlink-decoration);
}
.ranger-navbox .ranger-title a,
.ranger-navbox .ranger-title a.external,
.ranger-navbox .ranger-title a.external:visited {
  color: var(--navbox-title-link-color);
}
.ranger-navbox .ranger-title a:visited{
  color: var(--navbox-title-link-color--visited);
}
.ranger-navbox .ranger-title a.new,
.ranger-navbox .ranger-title a.new:visited{
     color:var(--navbox-title-redlink-color);
}
.ranger-navbox .ranger-title a:hover,
.ranger-navbox .ranger-title a:visited:hover,
.ranger-navbox .ranger-title a.external:hover,
.ranger-navbox .ranger-title a.external:visited:hover {
  color:var(--navbox-title-link-color--hover);
}
.ranger-navbox .ranger-header{
  color: var(--navbox-header-color);
  background: var(--navbox-header-background);
  font-size: var(--navbox-header-font-size);
  padding: var(--navbox-header-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */
}
.ranger-navbox .ranger-sublist .ranger-header{
  font-size: var(--navbox-subheader-font-size);
  padding: var(--navbox-subheader-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */
}
.ranger-navbox .ranger-header a,
.ranger-navbox .ranger-header a:visited,
.ranger-navbox .ranger-header a:hover,
.ranger-navbox .ranger-header a.external,
.ranger-navbox .ranger-header a.external:visited,
.ranger-navbox .ranger-header a.external:hover {
  text-decoration: var(--navbox-header-link-decoration);
}
.ranger-navbox .ranger-header a.new,
.ranger-navbox .ranger-header a.new:visited {
  text-decoration: var(--navbox-header-redlink-decoration);
}
}
 
.ranger-navbox .ranger-header a,
.navbar {
.ranger-navbox .ranger-header a.external,
     display: inline;
.ranger-navbox .ranger-header a.external:visited {
    font-size: 88%;
  color: var(--navbox-header-link-color);
    font-weight: normal;
}
.ranger-navbox .ranger-header a:visited{
  color: var(--navbox-header-link-color--visited);
}
.ranger-navbox .ranger-header a.new,
.ranger-navbox .ranger-header a.new:visited{
     color:var(--navbox-header-redlink-color);
}
.ranger-navbox .ranger-header a:hover,
.ranger-navbox .ranger-header a:visited:hover,
.ranger-navbox .ranger-header a.external:hover,
.ranger-navbox .ranger-header a.external:visited:hover {
  color:var(--navbox-header-link-color--hover);
}
.ranger-navbox .ranger-meta{
  font-size: var(--navbox-title-font-size);
  position: absolute;
  left: var(--navbox-icon-offset--x);
  top: calc(var(--navbox-title-padding--y) + 0.08em); /* 0.08em: vertial offset tweak based on the icon graph */
  display: block;
}
.ranger-navbox .ranger-meta .nv{
  --mask: var(--icon-metalinks);
  display: block;
  width: 0.84em; /* based on the icon graph */
  height: 0.84em;
  -webkit-mask: var(--mask);
  mask: var(--mask);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center center;
  mask-position: center center;
  background-color: var(--navbox-title-icon-color);
}
.ranger-navbox .ranger-meta .nv > a{
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.ranger-navbox .ranger-meta .nv > a > span{
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.ranger-navbox .ranger-meta:has(.mw-selflink){
  display: none;
}
.ranger-navbox,
.ranger-navbox .ranger-section{
  position: relative;
}
.ranger .mw-collapsible-toggle-placeholder{
  display: none;
}
.ranger-navbox .ranger-title > .ranger-title-text,
.ranger-navbox .ranger-header > .ranger-header-text{
  pointer-events: none;
}
.ranger-navbox .ranger-title > .ranger-title-text a,
.ranger-navbox .ranger-header > .ranger-header-text a{
  pointer-events: auto;
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle,
.ranger-navbox .ranger-header > .mw-collapsible-toggle{
  --mask: var(--icon-chevron-down);
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  overflow:hidden;
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle,
.ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle{
  width: 1.5em;
  height: 1.5em;
  right: var(--navbox-icon-offset--x);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle{
  top: var(--navbox-title-padding--y);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle{
  top: var(--navbox-header-padding--y);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-sublist .ranger-header > .mw-collapsible-toggle{
  top: var(--navbox-subheader-padding--y);
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle::before,
.ranger-navbox .ranger-header > .mw-collapsible-toggle::before{
  content: "";
  display: block;
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  right: var(--navbox-icon-offset--x);
  -webkit-mask: var(--mask);
  mask: var(--mask);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center center;
  mask-position: center center;
  background-color: var(--navbox-title-icon-color);
  transform: scaleY(-1);
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle::before{
  top: var(--navbox-title-padding--y);
}
.ranger-navbox .ranger-header > .mw-collapsible-toggle::before{
  top: var(--navbox-header-padding--y);
}
.ranger-navbox .ranger-sublist .ranger-header > .mw-collapsible-toggle::before{
  top: var(--navbox-subheader-padding--y);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle::before,
.ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle::before{
  top: 0;
  right: 0;
}
}
 
.ranger-navbox .ranger-header > .mw-collapsible-toggle::before{
.navbar ul {
  background-color: var(--navbox-header-icon-color);
    display: inline;
    white-space: nowrap;
}
}
 
.ranger-navbox .ranger-title > .mw-collapsible-toggle.mw-collapsible-toggle-collapsed::before,
.mw-body-content .navbar ul {
.ranger-navbox .ranger-header > .mw-collapsible-toggle.mw-collapsible-toggle-collapsed::before{
    line-height: inherit;
  transform: none;
}
}
 
.ranger-navbox .ranger-title > .mw-collapsible-toggle *,
.navbar li {
.ranger-navbox .ranger-title > .mw-collapsible-toggle::after,
    word-spacing: -0.125em;
.ranger-navbox .ranger-header > .mw-collapsible-toggle *,
.ranger-navbox .ranger-header > .mw-collapsible-toggle::after{
  display: none;
}
}
 
.ranger-navbox .ranger-list{
.navbox .navbar {
  width: unset;
    display: block;
  padding: var(--navbox-list-padding);
    font-size: 100%;
}
}
 
.ranger-navbox .ranger-above{
.navbox-title .navbar {
  background: var(--navbox-above-background);
    float: left;
  color: var(--navbox-above-color);
    text-align: left;
  padding: var(--navbox-above-padding);
    margin-right: 0.5em;
  width: unset;
    width: 6em;
}
}
 
.ranger-navbox .ranger-below{
.collapseButton {
  background: var(--navbox-below-background);
    float: right;
  color: var(--navbox-below-color);
    font-weight: normal;
  padding: var(--navbox-below-padding);
    margin-left: 0.5em;
  width: unset;
    text-align: right;
    width: auto;
}
}
 
.ranger-navbox .ranger-sublist{
.navbox .collapseButton {
  display: flex;
    width: 6em;
  flex-direction: column;
  gap: var(--navbox-gap);
}
}
 
.ranger-navbox .ranger-section-body{
.mw-collapsible-toggle {
  display: grid;
    font-weight: normal;
  gap: var(--navbox-gap);
    text-align: right;
  grid-template-columns: auto minmax(0,1fr);
}
}
 
/* gap fix for collapsed content */
.navbox .mw-collapsible-toggle {
.ranger-navbox [class^="ranger-"][hidden="until-found"]{
    width: 6em;
  margin-top: calc(0px - var(--navbox-gap)) !important;
}
}
 
.ranger-navbox .ranger-row{
/* Portable Navbox */
  display: contents;
.pi-theme-navbox {
    --pi-secondary-background: var(--theme-link-color);
    --pi-secondary-background--label: var(--theme-body-text-color);
    padding: 0 3px;
}
}
.pi-theme-navbox .pi-data {
.ranger-navbox .ranger-group,
    padding: 0;
.ranger-navbox .ranger-subgroup{
  text-align: var(--navbox-group-text-align);
  font-weight: bold;
  background: var(--navbox-group-background);
  color: var(--navbox-group-color);
  padding: var(--navbox-group-padding);
  width: unset;
}
}
 
/* for desktop view */
.portable-infobox.pi-theme-navbox :is(.pi-data-label, .pi-data-value) {
.ranger-navbox.group-align-left .ranger-group,
    line-height: 1.5em;
.ranger-navbox.group-align-left .ranger-subgroup{
    font-size: .7em;
  --navbox-group-text-align: left;
    padding: 0.25em 1em;
}
}
.portable-infobox.pi-theme-navbox .pi-data-label {
.ranger-navbox.group-align-center .ranger-group,
    display: flex;
.ranger-navbox.group-align-center .ranger-subgroup{
    align-items: center;
  --navbox-group-text-align: center;
    justify-content: flex-start;
    /* Align Left cuz read words LTR, skim left side charaters first */
    flex-basis: 200px;
    background-color: var(--custom-tertiary-color);
    color: var(--custom-tertiary-color-text);
}
}
.portable-infobox.pi-theme-navbox .pi-data-value {
.ranger-navbox.group-align-right .ranger-group,
    flex-basis: 100%;
.ranger-navbox.group-align-right .ranger-subgroup{
  --navbox-group-text-align: right;
}
}
.portable-infobox.pi-theme-navbox .pi-data:nth-child(odd) .pi-data-value {
/* for mobile view */
    background-color: var(--theme-page-background-color--secondary);
.ranger-navbox.mobile-group-align-left .ranger-group,
.ranger-navbox.mobile-group-align-left .ranger-subgroup{
  --navbox-group-text-align--mobile: left;
}
}


/* For Template:Characters_Navbox */
.ranger-navbox.mobile-group-align-center .ranger-group,
.navbox-list-top > div > div {
.ranger-navbox.mobile-group-align-center .ranger-subgroup{
    display: flex;
  --navbox-group-text-align--mobile: center;
    flex-wrap: wrap;
    align-items: flex-start;
}
}


/* align left when navbox list contains cards */
.ranger-navbox.mobile-group-align-right .ranger-group,
.navbox-list:has(div > .card-list-container) > div,
.ranger-navbox.mobile-group-align-right .ranger-subgroup{
.navbox-list:has(div > div > .card-list-container) > div {
  --navbox-group-text-align--mobile: right;
    text-align: left;
}
/* for desktop view */
.ranger-navbox.list-align-left .ranger-listbox{
  --navbox-list-text-align: left;
}
.ranger-navbox.list-align-center .ranger-listbox{
  --navbox-list-text-align: center;
}
.ranger-navbox.list-align-right .ranger-listbox{
  --navbox-list-text-align: right;
}
/* for mobile view */
.ranger-navbox.mobile-list-align-left .ranger-listbox{
  --navbox-list-text-align--mobile: left;
}
}


/* Adds Unknown image for not uploaded files and hides redlink */
.ranger-navbox.mobile-list-align-center .ranger-listbox{
.navbox-list a.new[href*="Special:Upload"] {
  --navbox-list-text-align--mobile: center;
    display: inline-flex;
}
    width: 45px;
.ranger-navbox.mobile-list-align-right .ranger-listbox{
    height: 45px;
  --navbox-list-text-align--mobile: right;
    background-image: url(https://static.wikia.nocookie.net/gensin-impact/images/4/4a/Item_Unknown.png/revision/latest/scale-to-width-down/45);
    background-size: cover;
    vertical-align: middle;
    font-size: 0;
}
}


/* Hide empty sub-navboxes (second rule is for the spacing row) */
.ranger-navbox .ranger-listbox > .ranger-wrap{
.navbox-inner tr:has(> td.navbox-list:only-child > .navbox-subgroup tr:only-child > th.navbox-title),
  text-align: var(--navbox-list-text-align);
.navbox-inner tr:has(+ tr > td.navbox-list:only-child > .navbox-subgroup tr:only-child > th.navbox-title) {
  background: var(--navbox-list-background);
    display: none !important;
  color: var(--navbox-list-color);
  flex-grow: 1;
}
.ranger-navbox .ranger-sublist{
  flex-grow: var(--count);
}
.ranger-navbox .ranger-listbox:first-child{ /* A list-n without group-n */
  grid-column-end: span 2;
}
.ranger-navbox .ranger-group,
.ranger-navbox .ranger-subgroup,
.ranger-navbox .ranger-listbox > .ranger-wrap{
  display: grid;
  justify-items: stretch;
  align-items: center;
}
.ranger-navbox.striped-even .ranger-even,
.ranger-navbox.striped-odd .ranger-odd{
  background: var(--navbox-list-background--striped);
}
/* make links use full line height (larger click box)*/
.ranger-navbox .hlist a{
  display: inline-block;
}
}


/* Gallery for mobile */
.ranger-navbox .align-left,
.skin-fandommobile .navbox-gallery {
.ranger-navbox .alignleft{
    display: flex;
  text-align: left;
    flex-wrap: wrap;
}
    justify-content: center;
.ranger-navbox .align-center,
    gap: 5px;
.ranger-navbox .aligncenter{
 
  text-align: center;
    .article-media-thumbnail {
        margin-bottom: 0;
    }
 
    .article-media-placeholder {
        border: none;
    }
 
    br,
    figcaption {
        display: none;
    }
}
}
 
.ranger-navbox .align-right,
 
.ranger-navbox .alignright{
/* Navbox colors */
  text-align: right;
.navbox-title a,
.navbox-group a {
    color: var(--theme-link-color);
}
}


.navbox-title,
/* responsive */
.navbox-group,
@media screen and (max-width: 720px) {
.navbox-title .mw-collapsible-text {
  .ranger-navbox .ranger-section-body,
     color: var(--page-text-color);
  .ranger-navbox .ranger-sublist {
    display: flex;
    flex-flow: column;
  }
  .ranger-navbox .ranger-row{
    display: block;
  }
  .ranger-navbox .ranger-group + .ranger-listbox > .ranger-sublist:first-child,
  .ranger-navbox .ranger-subgroup + .ranger-listbox > .ranger-sublist:first-child{
    margin-top: var(--navbox-gap);
  }
  .ranger-navbox .ranger-listbox.empty{
    display: none;
  }
  .ranger-navbox .ranger-group,
  .ranger-navbox .ranger-subgroup{
    text-align: var(--navbox-group-text-align--mobile, left);
    max-width: unset !important;
  }
  .ranger-navbox .ranger-group > *,
  .ranger-navbox .ranger-subgroup > *{
     max-width: unset !important;
  } 
  .ranger-navbox .ranger-sublist {
    padding-left: var(--navbox-tree-indent);
    margin-left: var(--navbox-tree-line-indent);
  }
  .ranger-navbox .ranger-subgroup,
  .ranger-navbox .ranger-listbox {
    position:relative;
  }
  .ranger-navbox .ranger-group br,
  .ranger-navbox .ranger-subgroup br{
    display: none;
  }
  .ranger-navbox .ranger-listbox > .ranger-wrap{
    text-align: var(--navbox-list-text-align--mobile, left);
  }
  .ranger-navbox .ranger-sublist > .ranger-section > .ranger-header{
    margin-left: calc( 0px - var(--navbox-tree-indent) - var(--navbox-tree-line-indent));
  }
  .ranger-navbox .ranger-sublist .ranger-row > ::before{
    position: absolute;
    left: calc(0px - var(--navbox-tree-indent));
    top: 0;
    width: var(--navbox-tree-line-width);
    height: 100%;
    content: '';
    display: block;
    background-color: var(--navbox-tree-line-color);
  }
  .ranger-navbox .ranger-sublist .ranger-row > .ranger-listbox::before,
  .ranger-navbox .ranger-row.empty-list > .ranger-subgroup::before{
    height: calc(100% + var(--navbox-gap));
  }
  .ranger-navbox .ranger-sublist .ranger-row:last-child > ::before {
    display: none;
  }
  .ranger-navbox .ranger-sublist .ranger-row:last-child > :first-child::before {
    display: block;
    height: calc(50% + var(--navbox-tree-line-width)/2);
  }
  .ranger-navbox .ranger-subgroup::after,
  .ranger-navbox .ranger-row .ranger-row.empty-group > .ranger-listbox > .ranger-wrap::after{
    position: absolute;
    left: calc(0px - var(--navbox-tree-indent) + var(--navbox-tree-line-width));
    width: calc(var(--navbox-tree-indent) - var(--navbox-tree-line-spacing) - var(--navbox-tree-line-width));
    height: var(--navbox-tree-line-width);
    content: '';
    background-color: var(--navbox-tree-line-color);
  }
  /* increase height for links */
  .ranger-navbox .hlist{
    line-height: 2;
  }
}
}
 
/**** `.pill` class: the "pill" style  ****/
 
/* remove middle dots betweem items */
.navbox-odd {
.ranger-navbox.pill .hlist dd:not(:last-child)::after,
    background: var(--theme-color-1);
.ranger-navbox.pill .hlist li:not(:last-child)::after{
  display: none;
}
}
 
/* remove parentheses around nested lists*/
.navbox-subgroup .navbox-title {
.ranger-navbox.pill .hlist dd ol::before,
    background: var(--theme-color-2);
.ranger-navbox.pill .hlist dd ul::before,
.ranger-navbox.pill .hlist dd dl::before,
.ranger-navbox.pill .hlist dt ol::before,
.ranger-navbox.pill .hlist dt ul::before,
.ranger-navbox.pill .hlist dt dl::before,
.ranger-navbox.pill .hlist li ol::before,
.ranger-navbox.pill .hlist li ul::before,
.ranger-navbox.pill .hlist li dl::before,
.ranger-navbox.pill .hlist dd ol::after,
.ranger-navbox.pill .hlist dd ul::after,
.ranger-navbox.pill .hlist dd dl::after,
.ranger-navbox.pill .hlist dt ol::after,
.ranger-navbox.pill .hlist dt ul::after,
.ranger-navbox.pill .hlist dt dl::after,
.ranger-navbox.pill .hlist li ol::after,
.ranger-navbox.pill .hlist li ul::after,
.ranger-navbox.pill .hlist li dl::after {
  display: none;
}
}
 
/* make lists inline-flex */
.navbox-subgroup .navbox-subgroup .navbox-title {
.ranger-navbox.pill .hlist ul,
    background: var(--theme-color-6);
.ranger-navbox.pill .hlist ol,
.ranger-navbox.pill .hlist dl{
  display: inline-flex;
  gap: var(--navbox-pill-gap);
  flex-wrap: wrap;
}
}
 
/* "pill" style for items */
.navbox-title {
.ranger-navbox.pill .hlist li,
    background: var(--theme-color-4);
.ranger-navbox.pill .hlist dt,
.ranger-navbox.pill .hlist dd{
  padding: var(--navbox-pill-padding);
  border-radius: var(--navbox-pill-border-radius);
  box-shadow: var(--navbox-pill-box-shadow);
  background: var(--navbox-pill-background);
  /* 100% height */
  display: flex;
  align-items: center;
  /* for nested lists */
  gap: var(--navbox-pill-gap);
  flex-wrap: wrap;
}
}
 
/* Add a hover / focus feedback style */
.navbox-abovebelow,
.ranger-navbox.pill .hlist dd:hover,
th.navbox-group,
.ranger-navbox.pill .hlist dd:focus,
.navbox-subgroup .navbox-group,
.ranger-navbox.pill .hlist dt:hover,
.navbox-subgroup .navbox-abovebelow {
.ranger-navbox.pill .hlist dt:focus,
    color: var(--theme-page-text-color);
.ranger-navbox.pill .hlist li:hover,
    background: var(--pi-rows-color)!important;
.ranger-navbox.pill .hlist li:focus {
  box-shadow: var(--navbox-pill-box-shadow--hover);
  background: var(--navbox-pill-background--hover);
}
}
 
/* pill with selflink
.navbox-image {
*
    background: var(--pi-rows-color);
* Only select the deepest level for nested lists.
* We have to use :has() to pick pills with selflink and
* all browsers which support :has() should also support :is() and :not(),
* therefore we can use :is() and :not() here safely.
*/
.ranger-navbox.pill .hlist .ranger-list :is(li,dt,dd):has(.mw-selflink):not(:has(li, dt, dd)){  
  background: var(--navbox-pill-selflink-background);
}
}
 
/**** `.pill-mobile` class: only apply the "pill" style on mobile ****/
.navbox-even {
@media screen and (max-width: 720px) {
     background: var(--theme-page-background-color--secondary);
  /* remove middle dots betweem items */
  .ranger-navbox.pill-mobile .hlist dd:not(:last-child)::after,
  .ranger-navbox.pill-mobile .hlist li:not(:last-child)::after{
    display: none;
  }
  /* remove parentheses around nested lists*/
  .ranger-navbox.pill-mobile .hlist dd ol::before,
  .ranger-navbox.pill-mobile .hlist dd ul::before,
  .ranger-navbox.pill-mobile .hlist dd dl::before,
  .ranger-navbox.pill-mobile .hlist dt ol::before,
  .ranger-navbox.pill-mobile .hlist dt ul::before,
  .ranger-navbox.pill-mobile .hlist dt dl::before,
  .ranger-navbox.pill-mobile .hlist li ol::before,
  .ranger-navbox.pill-mobile .hlist li ul::before,
  .ranger-navbox.pill-mobile .hlist li dl::before,
  .ranger-navbox.pill-mobile .hlist dd ol::after,
  .ranger-navbox.pill-mobile .hlist dd ul::after,
  .ranger-navbox.pill-mobile .hlist dd dl::after,
  .ranger-navbox.pill-mobile .hlist dt ol::after,
  .ranger-navbox.pill-mobile .hlist dt ul::after,
  .ranger-navbox.pill-mobile .hlist dt dl::after,
  .ranger-navbox.pill-mobile .hlist li ol::after,
  .ranger-navbox.pill-mobile .hlist li ul::after,
  .ranger-navbox.pill-mobile .hlist li dl::after {
    display: none;
  }
  /* make lists inline-flex */
  .ranger-navbox.pill-mobile .hlist ul,
  .ranger-navbox.pill-mobile .hlist ol,
  .ranger-navbox.pill-mobile .hlist dl{
    display: inline-flex;
    gap: var(--navbox-pill-gap);
    flex-wrap: wrap;
  }
  /* "pill" style for items */
  .ranger-navbox.pill-mobile .hlist li,
  .ranger-navbox.pill-mobile .hlist dt,
  .ranger-navbox.pill-mobile .hlist dd{
    /* 100% height */
    display: flex;
    align-items: center;
    /* for nested lists */
    gap: var(--navbox-pill-gap);
    flex-wrap: wrap;
  }
  /* "pill" style for items */
  .ranger-navbox.pill-mobile .hlist li,
  .ranger-navbox.pill-mobile .hlist dt,
  .ranger-navbox.pill-mobile .hlist dd{
    padding: var(--navbox-pill-padding);
    border-radius: var(--navbox-pill-border-radius);
    box-shadow: var(--navbox-pill-box-shadow);
     background: var(--navbox-pill-background);
    /* 100% height */
    display: flex;
    align-items: center;
    /* for nested lists */
    gap: var(--navbox-pill-gap);
    flex-wrap: wrap;
  }
  /* Add a hover / focus feedback style */
  .ranger-navbox.pill-mobile .hlist dd:hover,
  .ranger-navbox.pill-mobile .hlist dd:focus,
  .ranger-navbox.pill-mobile .hlist dt:hover,
  .ranger-navbox.pill-mobile .hlist dt:focus,
  .ranger-navbox.pill-mobile .hlist li:hover,
  .ranger-navbox.pill-mobile .hlist li:focus {
    box-shadow: var(--navbox-pill-box-shadow--hover);
    background: var(--navbox-pill-background--hover);
  }
  /* pill with selflink
  *
  * Only select the deepest level for nested lists.
  * We have to use :has() to pick pills with selflink and
  * all browsers which support :has() should also support :is() and :not(),
  * therefore we can use :is() and :not() here safely.
  */
  .ranger-navbox.pill-mobile .hlist .ranger-list :is(li,dt,dd):has(.mw-selflink):not(:has(li, dt, dd)){
    background: var(--navbox-pill-selflink-background);
  }
}
}
/*********************
* End Template:Navbox*
**********************/

Latest revision as of 10:12, 27 November 2025

/****************************************************************
* Semantically-correct horizontal lists (for [[Module:Navbox]]) *
*****************************************************************/
.hlist dl,
.hlist ol,
.hlist ul {
  margin: 0;
  padding: 0;
}

/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
  /*
   * don't trust the note that says margin doesn't work with inline
   * removing margin: 0 makes dds have margins again
   * We also want to reset margin-right in Minerva
   */
  margin: 0; 
  display: inline;
}

/* Display requested top-level lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
/* Display nested lists inline */
.hlist dl dl,
.hlist dl ol,
.hlist dl ul,
.hlist ol dl,
.hlist ol ol,
.hlist ol ul,
.hlist ul dl,
.hlist ul ol,
.hlist ul ul {
  display: inline;
}

/* Hide empty list items */
.hlist .mw-empty-li {
  display: none;
}

/* TODO: :not() can maybe be used here to remove the later rule. naive test
 * seems to work. more testing needed. like so: */
.hlist dt:not(:last-child)::after {
  content: ":\20";
}
.hlist dd:not(:last-child)::after,
.hlist li:not(:last-child)::after {
  /* "space, Middle Dot, space" 
  We use unicode numbers instead of the raw characters due to a Firefox encoding bug on unicode characters.
  The space is also encoded because raw spaces combined with a unicode number strips the spaces under some conditions such as single-line lists */
  /* content: "\20\00B7\20"; font-weight: bold; */
    /* "space &nbsp; • &nbsp; space" 
       There may (and likely) be an extra whitespace between <li>s, 
       therefore we have to use a space character as last character of this sequence. 
       By this way, the last space and the next whitespce will collapse as a single space,
       to make the whitespace on both sides of the middle dot the same width.
    */
  content: "\20\A0\2022\A0\20"; 
  font-weight: inherit;
}

/* Add parentheses around nested lists */
.hlist dd ol::before,
.hlist dd ul::before,
.hlist dd dl::before,
.hlist dt ol::before,
.hlist dt ul::before,
.hlist dt dl::before,
.hlist li ol::before,
.hlist li ul::before,
.hlist li dl::before {
  content: "\20(";
  font-weight: inherit;
}

.hlist dd ol::after,
.hlist dd ul::after,
.hlist dd dl::after,
.hlist dt ol::after,
.hlist dt ul::after,
.hlist dt dl::after,
.hlist li ol::after,
.hlist li ul::after,
.hlist li dl::after {
  content: ")";
  font-weight: inherit;
}

/* Put ordinals in front of ordered list items */
.hlist ol {
  counter-reset: listitem;
}

.hlist ol > li {
  counter-increment: listitem;
}

.hlist ol > li::before {
  content: " " counter(listitem) ".\20";
}

/* Progressive enhancement:
 * try to make the dot always follow the list item in same line
 */
.hlist :is(li,dt,dd):not(:has(:is(li,dt,dd))){
  display: inline-block;
}

/********************************************
* End semantically-correct horizontal lists *
*********************************************/

.ranger-navbox{
  --navbox-background: var(--background-color-0); /* for entire navbox */
  --navbox-margin: 0.5em auto;
  --navbox-padding: 0px;
  --navbox-gap: 2px; /* when using zero-value, it must be 0px */
  --navbox-outer-border-color: var(--background-color-0b);
  --navbox-outer-border-width: 0px;
  --navbox-outer-border-style: solid;
  --navbox-outer-border-radius: 10px;
  --navbox-font-size: max(calc(1em - 2px), 0.825rem);
  --navbox-title-color: var(--color-emphasized);
  --navbox-title-font-size: calc(115%);
  --navbox-title-background: var(--background-color-2b);
  --navbox-title-icon-color: var(--color-base);
  --navbox-title-link-color: var(--color-progressive);
  --navbox-title-link-color--visited: var(--navbox-title-link-color);
  --navbox-title-link-color--hover: var(--color-progressive--hover);
  --navbox-title-redlink-color: var(--color-destructive);
  --navbox-title-link-decoration: none;
  --navbox-title-redlink-decoration: none;
  --navbox-title-padding--y: 0.25em;
  --navbox-above-background: var(--background-color-2);
  --navbox-above-color: var(--color-base);
  --navbox-above-padding: var(--navbox-list-padding);
  --navbox-below-background: var(--navbox-above-background);
  --navbox-below-color: var(--navbox-above-color);
  --navbox-below-padding: var(--navbox-above-padding);
  --navbox-header-color: var(--navbox-title-color);
  --navbox-header-font-size: calc(110%);
  --navbox-header-background: var(--background-color-2);
  --navbox-header-icon-color: var(--navbox-title-icon-color);
  --navbox-header-link-color: var(--navbox-title-link-color);
  --navbox-header-link-color--visited: var(--navbox-title-link-color--visited);
  --navbox-header-link-color--hover: var(--navbox-title-link-color--hover);
  --navbox-header-redlink-color: var(--navbox-title-redlink-color);
  --navbox-header-link-decoration: var(--navbox-title-link-decoration);
  --navbox-header-redlink-decoration: var(--navbox-title-redlink-decoration);
  --navbox-header-padding--y: 0em;
  --navbox-subheader-font-size: calc(100%);
  --navbox-subheader-padding--y: calc(var(--navbox-header-padding--y)/2);
  --navbox-list-background: var(--background-color-0b);
  --navbox-list-background--striped: var(--background-color-1);
  --navbox-list-color: var(--color-base);
  --navbox-list-padding: 0.25em 0.5em;
  /* --navbox-group-* also apply to .ranger-subgroup */
  --navbox-group-text-align: left;
  --navbox-group-text-align--mobile: left; /* only for mobile view */
  --navbox-group-background: var(--background-color-1b);
  --navbox-group-color: var(--color-base);
  --navbox-group-padding: var(--navbox-list-padding);
  --navbox-tree-line-color: var(--background-color-1b);
  --navbox-tree-line-width: 3px;
  --navbox-tree-indent: 1em;
  --navbox-tree-line-indent: 0.5em;
  --navbox-tree-line-spacing: var(--navbox-gap);
  --icon-chevron-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-chevron-down' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M6 9l6 6l6 -6'%3E%3C/path%3E%3C/svg%3E");
  --icon-metalinks: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-edit' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1'%3E%3C/path%3E%3Cpath d='M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415z'%3E%3C/path%3E%3Cpath d='M16 5l3 3'%3E%3C/path%3E%3C/svg%3E");
  --navbox-icon-offset--x: 0.5rem; /* should be an absolute length (rem-based or px-based) */
}
.ranger-navbox.pill, 
.ranger-navbox.pill-mobile{
  /** vars for the "pill" style only (`.pill` and ".pill-mobile" clases) **/
  --navbox-pill-gap: 0.3em;
  --navbox-pill-padding: 0.25em 0.75em;
  --navbox-pill-border-radius: 3px;
  --navbox-pill-box-shadow: 0 0 0 1px var(--border-color-base);
  --navbox-pill-background: var(--background-color-1b);
  --navbox-pill-box-shadow--hover: 0 0 0 1px var(--navbox-list-color);
  --navbox-pill-background--hover: var(--navbox-pill-background);
  --navbox-pill-selflink-background: var(--background-color-1); /* background of pills with selflink in them */
  --navbox-list-background: var(--background-color-0b);
  --navbox-list-background--striped: var(--background-color-1);
}
.ranger-navbox.no-underline-title-links{
  --navbox-title-link-color: var(--wiki-accent-link-color);
  --navbox-title-link-decoration: none;
  --navbox-title-redlink-decoration: none;
}
.ranger-navbox.noborder,
.ranger-navbox.no-border{
  --navbox-padding: 0px;
  --navbox-outer-border-width: 0px;
}

/** as of Module:navbox version 1.2.5 **/

.ranger-navbox{
  border-color: var(--navbox-outer-border-color);
  border-style: var(--navbox-outer-border-style);
  border-width: var(--navbox-outer-border-width);
  border-radius: var(--navbox-outer-border-radius);
  padding: var(--navbox-padding);
  font-size: var(--navbox-font-size);
  margin: var(--navbox-margin);
  background: var(--navbox-background);
  line-height: 1.5;
  clear: both;
  overflow: hidden;
}

.ranger-navbox * {
  border: 0;
}
.ranger-navbox .center *{
  margin-left: unset;
  margin-right: unset;
}
.ranger-navbox, 
.ranger-navbox .ranger-section,
.ranger-navbox .ranger-listbox{
  display: flex;
  flex-direction: column;
  gap: var(--navbox-gap);
}
.ranger-navbox .ranger-title,
.ranger-navbox .ranger-header{
  text-align: center;
  min-height: 1.5em;
  position: relative;
  z-index: 0;
  font-weight: bold;
}
.ranger-navbox .ranger-title{
  color: var(--navbox-title-color);
  background: var(--navbox-title-background);
  font-size: var(--navbox-title-font-size);
  padding: var(--navbox-title-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */
}
.ranger-navbox .ranger-title a,
.ranger-navbox .ranger-title a:visited,
.ranger-navbox .ranger-title a:hover,
.ranger-navbox .ranger-title a.external,
.ranger-navbox .ranger-title a.external:visited,
.ranger-navbox .ranger-title a.external:hover {
  text-decoration: var(--navbox-title-link-decoration);
}
.ranger-navbox .ranger-title a.new,
.ranger-navbox .ranger-title a.new:visited {
  text-decoration: var(--navbox-title-redlink-decoration);
}
.ranger-navbox .ranger-title a,
.ranger-navbox .ranger-title a.external,
.ranger-navbox .ranger-title a.external:visited {
  color: var(--navbox-title-link-color);
}
.ranger-navbox .ranger-title a:visited{
  color: var(--navbox-title-link-color--visited);
}
.ranger-navbox .ranger-title a.new,
.ranger-navbox .ranger-title a.new:visited{
    color:var(--navbox-title-redlink-color);
}
.ranger-navbox .ranger-title a:hover,
.ranger-navbox .ranger-title a:visited:hover,
.ranger-navbox .ranger-title a.external:hover,
.ranger-navbox .ranger-title a.external:visited:hover {
  color:var(--navbox-title-link-color--hover);
}
.ranger-navbox .ranger-header{
  color: var(--navbox-header-color);
  background: var(--navbox-header-background);
  font-size: var(--navbox-header-font-size);
  padding: var(--navbox-header-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */
}
.ranger-navbox .ranger-sublist .ranger-header{
  font-size: var(--navbox-subheader-font-size);
  padding: var(--navbox-subheader-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */
}
.ranger-navbox .ranger-header a,
.ranger-navbox .ranger-header a:visited,
.ranger-navbox .ranger-header a:hover,
.ranger-navbox .ranger-header a.external,
.ranger-navbox .ranger-header a.external:visited,
.ranger-navbox .ranger-header a.external:hover {
  text-decoration: var(--navbox-header-link-decoration);
}
.ranger-navbox .ranger-header a.new,
.ranger-navbox .ranger-header a.new:visited {
  text-decoration: var(--navbox-header-redlink-decoration);
}
.ranger-navbox .ranger-header a,
.ranger-navbox .ranger-header a.external,
.ranger-navbox .ranger-header a.external:visited {
  color: var(--navbox-header-link-color);
}
.ranger-navbox .ranger-header a:visited{
  color: var(--navbox-header-link-color--visited);
}
.ranger-navbox .ranger-header a.new,
.ranger-navbox .ranger-header a.new:visited{
    color:var(--navbox-header-redlink-color);
}
.ranger-navbox .ranger-header a:hover,
.ranger-navbox .ranger-header a:visited:hover,
.ranger-navbox .ranger-header a.external:hover,
.ranger-navbox .ranger-header a.external:visited:hover {
  color:var(--navbox-header-link-color--hover);
}
.ranger-navbox .ranger-meta{
  font-size: var(--navbox-title-font-size);
  position: absolute;
  left: var(--navbox-icon-offset--x);
  top: calc(var(--navbox-title-padding--y) + 0.08em); /* 0.08em: vertial offset tweak based on the icon graph */
  display: block;
}
.ranger-navbox .ranger-meta .nv{
  --mask: var(--icon-metalinks);
  display: block;
  width: 0.84em; /* based on the icon graph */
  height: 0.84em;
  -webkit-mask: var(--mask);
  mask: var(--mask);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center center;
  mask-position: center center;
  background-color: var(--navbox-title-icon-color);
}
.ranger-navbox .ranger-meta .nv > a{
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.ranger-navbox .ranger-meta .nv > a > span{
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.ranger-navbox .ranger-meta:has(.mw-selflink){
  display: none;
}
.ranger-navbox,
.ranger-navbox .ranger-section{
  position: relative;
}
.ranger .mw-collapsible-toggle-placeholder{
  display: none;
}
.ranger-navbox .ranger-title > .ranger-title-text,
.ranger-navbox .ranger-header > .ranger-header-text{
  pointer-events: none;
}
.ranger-navbox .ranger-title > .ranger-title-text a,
.ranger-navbox .ranger-header > .ranger-header-text a{
  pointer-events: auto;
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle,
.ranger-navbox .ranger-header > .mw-collapsible-toggle{
  --mask: var(--icon-chevron-down);
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  overflow:hidden;
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle,
.ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle{
  width: 1.5em;
  height: 1.5em;
  right: var(--navbox-icon-offset--x);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle{
  top: var(--navbox-title-padding--y);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle{
  top: var(--navbox-header-padding--y);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-sublist .ranger-header > .mw-collapsible-toggle{
  top: var(--navbox-subheader-padding--y);
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle::before,
.ranger-navbox .ranger-header > .mw-collapsible-toggle::before{
  content: "";
  display: block;
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  right: var(--navbox-icon-offset--x);
  -webkit-mask: var(--mask);
  mask: var(--mask);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center center;
  mask-position: center center;
  background-color: var(--navbox-title-icon-color);
  transform: scaleY(-1);
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle::before{
  top: var(--navbox-title-padding--y);
}
.ranger-navbox .ranger-header > .mw-collapsible-toggle::before{
  top: var(--navbox-header-padding--y);
}
.ranger-navbox .ranger-sublist .ranger-header > .mw-collapsible-toggle::before{
  top: var(--navbox-subheader-padding--y);
}
.ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle::before,
.ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle::before{
  top: 0;
  right: 0;
}
.ranger-navbox .ranger-header > .mw-collapsible-toggle::before{
  background-color: var(--navbox-header-icon-color);
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle.mw-collapsible-toggle-collapsed::before,
.ranger-navbox .ranger-header > .mw-collapsible-toggle.mw-collapsible-toggle-collapsed::before{
  transform: none;
}
.ranger-navbox .ranger-title > .mw-collapsible-toggle *,
.ranger-navbox .ranger-title > .mw-collapsible-toggle::after,
.ranger-navbox .ranger-header > .mw-collapsible-toggle *,
.ranger-navbox .ranger-header > .mw-collapsible-toggle::after{
  display: none;
}
.ranger-navbox .ranger-list{
  width: unset;
  padding: var(--navbox-list-padding);
}
.ranger-navbox .ranger-above{
  background: var(--navbox-above-background);
  color: var(--navbox-above-color);
  padding: var(--navbox-above-padding);
  width: unset;
}
.ranger-navbox .ranger-below{
  background: var(--navbox-below-background);
  color: var(--navbox-below-color);
  padding: var(--navbox-below-padding);
  width: unset;
}
.ranger-navbox .ranger-sublist{
  display: flex;
  flex-direction: column;
  gap: var(--navbox-gap);
}
.ranger-navbox .ranger-section-body{
  display: grid;
  gap: var(--navbox-gap);
  grid-template-columns: auto minmax(0,1fr);
}
/* gap fix for collapsed content */
.ranger-navbox [class^="ranger-"][hidden="until-found"]{
  margin-top: calc(0px - var(--navbox-gap)) !important;
}
.ranger-navbox .ranger-row{
  display: contents;
}
.ranger-navbox .ranger-group,
.ranger-navbox .ranger-subgroup{
  text-align: var(--navbox-group-text-align);
  font-weight: bold;
  background: var(--navbox-group-background);
  color: var(--navbox-group-color);
  padding: var(--navbox-group-padding);
  width: unset;
}
/* for desktop view */
.ranger-navbox.group-align-left .ranger-group,
.ranger-navbox.group-align-left .ranger-subgroup{
  --navbox-group-text-align: left;
}
.ranger-navbox.group-align-center .ranger-group,
.ranger-navbox.group-align-center .ranger-subgroup{
  --navbox-group-text-align: center;
}
.ranger-navbox.group-align-right .ranger-group,
.ranger-navbox.group-align-right .ranger-subgroup{
  --navbox-group-text-align: right;
}
/* for mobile view */
.ranger-navbox.mobile-group-align-left .ranger-group,
.ranger-navbox.mobile-group-align-left .ranger-subgroup{
  --navbox-group-text-align--mobile: left;
}

.ranger-navbox.mobile-group-align-center .ranger-group,
.ranger-navbox.mobile-group-align-center .ranger-subgroup{
  --navbox-group-text-align--mobile: center;
}

.ranger-navbox.mobile-group-align-right .ranger-group,
.ranger-navbox.mobile-group-align-right .ranger-subgroup{
  --navbox-group-text-align--mobile: right;
}
/* for desktop view */
.ranger-navbox.list-align-left .ranger-listbox{
  --navbox-list-text-align: left;
}
.ranger-navbox.list-align-center .ranger-listbox{
  --navbox-list-text-align: center;
}
.ranger-navbox.list-align-right .ranger-listbox{
  --navbox-list-text-align: right;
}
/* for mobile view */
.ranger-navbox.mobile-list-align-left .ranger-listbox{
  --navbox-list-text-align--mobile: left;
}

.ranger-navbox.mobile-list-align-center .ranger-listbox{
  --navbox-list-text-align--mobile: center;
}
.ranger-navbox.mobile-list-align-right .ranger-listbox{
  --navbox-list-text-align--mobile: right;
}

.ranger-navbox .ranger-listbox > .ranger-wrap{
  text-align: var(--navbox-list-text-align);
  background: var(--navbox-list-background);
  color: var(--navbox-list-color);
  flex-grow: 1;
}
.ranger-navbox .ranger-sublist{
  flex-grow: var(--count);
}
.ranger-navbox .ranger-listbox:first-child{ /* A list-n without group-n */
  grid-column-end: span 2;
}
.ranger-navbox .ranger-group,
.ranger-navbox .ranger-subgroup,
.ranger-navbox .ranger-listbox > .ranger-wrap{
  display: grid;
  justify-items: stretch;
  align-items: center;
}
.ranger-navbox.striped-even .ranger-even,
.ranger-navbox.striped-odd .ranger-odd{
  background: var(--navbox-list-background--striped);
}
/* make links use full line height (larger click box)*/
.ranger-navbox .hlist a{
  display: inline-block;
}

.ranger-navbox .align-left,
.ranger-navbox .alignleft{
  text-align: left;
}
.ranger-navbox .align-center,
.ranger-navbox .aligncenter{
  text-align: center;
}
.ranger-navbox .align-right,
.ranger-navbox .alignright{
  text-align: right;
}

/* responsive */
@media screen and (max-width: 720px) {
  .ranger-navbox .ranger-section-body,
  .ranger-navbox .ranger-sublist {
    display: flex;
    flex-flow: column;
  }
  .ranger-navbox .ranger-row{
    display: block;
  }
  .ranger-navbox .ranger-group + .ranger-listbox > .ranger-sublist:first-child,
  .ranger-navbox .ranger-subgroup + .ranger-listbox > .ranger-sublist:first-child{
    margin-top: var(--navbox-gap);
  }
  .ranger-navbox .ranger-listbox.empty{
    display: none;
  }
  .ranger-navbox .ranger-group,
  .ranger-navbox .ranger-subgroup{
    text-align: var(--navbox-group-text-align--mobile, left);
    max-width: unset !important;
  }
  .ranger-navbox .ranger-group > *,
  .ranger-navbox .ranger-subgroup > *{
    max-width: unset !important;
  }  
  .ranger-navbox .ranger-sublist {
    padding-left: var(--navbox-tree-indent);
    margin-left: var(--navbox-tree-line-indent);
  }
  .ranger-navbox .ranger-subgroup,
  .ranger-navbox .ranger-listbox {
    position:relative;
  }
  .ranger-navbox .ranger-group br,
  .ranger-navbox .ranger-subgroup br{
    display: none;
  }
  .ranger-navbox .ranger-listbox > .ranger-wrap{
    text-align: var(--navbox-list-text-align--mobile, left);
  }
  .ranger-navbox .ranger-sublist > .ranger-section > .ranger-header{
    margin-left: calc( 0px - var(--navbox-tree-indent) - var(--navbox-tree-line-indent));
  }
  .ranger-navbox .ranger-sublist .ranger-row > ::before{
    position: absolute;
    left: calc(0px - var(--navbox-tree-indent));
    top: 0;
    width: var(--navbox-tree-line-width);
    height: 100%;
    content: '';
    display: block;
    background-color: var(--navbox-tree-line-color);
  }
  .ranger-navbox .ranger-sublist .ranger-row > .ranger-listbox::before,
  .ranger-navbox .ranger-row.empty-list > .ranger-subgroup::before{
    height: calc(100% + var(--navbox-gap));
  }
  .ranger-navbox .ranger-sublist .ranger-row:last-child > ::before {
    display: none;
  }
  .ranger-navbox .ranger-sublist .ranger-row:last-child > :first-child::before {
    display: block;
    height: calc(50% + var(--navbox-tree-line-width)/2);
  }
  .ranger-navbox .ranger-subgroup::after,
  .ranger-navbox .ranger-row .ranger-row.empty-group > .ranger-listbox > .ranger-wrap::after{
    position: absolute;
    left: calc(0px - var(--navbox-tree-indent) + var(--navbox-tree-line-width));
    width: calc(var(--navbox-tree-indent) - var(--navbox-tree-line-spacing) - var(--navbox-tree-line-width));
    height: var(--navbox-tree-line-width);
    content: '';
    background-color: var(--navbox-tree-line-color);
  }
  /* increase height for links */
  .ranger-navbox .hlist{
    line-height: 2;
  }
}
/**** `.pill` class: the "pill" style  ****/
/* remove middle dots betweem items */
.ranger-navbox.pill .hlist dd:not(:last-child)::after,
.ranger-navbox.pill .hlist li:not(:last-child)::after{
  display: none;
}
/* remove parentheses around nested lists*/
.ranger-navbox.pill .hlist dd ol::before,
.ranger-navbox.pill .hlist dd ul::before,
.ranger-navbox.pill .hlist dd dl::before,
.ranger-navbox.pill .hlist dt ol::before,
.ranger-navbox.pill .hlist dt ul::before,
.ranger-navbox.pill .hlist dt dl::before,
.ranger-navbox.pill .hlist li ol::before,
.ranger-navbox.pill .hlist li ul::before,
.ranger-navbox.pill .hlist li dl::before,
.ranger-navbox.pill .hlist dd ol::after,
.ranger-navbox.pill .hlist dd ul::after,
.ranger-navbox.pill .hlist dd dl::after,
.ranger-navbox.pill .hlist dt ol::after,
.ranger-navbox.pill .hlist dt ul::after,
.ranger-navbox.pill .hlist dt dl::after,
.ranger-navbox.pill .hlist li ol::after,
.ranger-navbox.pill .hlist li ul::after,
.ranger-navbox.pill .hlist li dl::after {
  display: none;
}
/* make lists inline-flex */
.ranger-navbox.pill .hlist ul,
.ranger-navbox.pill .hlist ol,
.ranger-navbox.pill .hlist dl{
  display: inline-flex;
  gap: var(--navbox-pill-gap);
  flex-wrap: wrap;
}
/* "pill" style for items */
.ranger-navbox.pill .hlist li,
.ranger-navbox.pill .hlist dt,
.ranger-navbox.pill .hlist dd{
  padding: var(--navbox-pill-padding);
  border-radius: var(--navbox-pill-border-radius);
  box-shadow: var(--navbox-pill-box-shadow);
  background: var(--navbox-pill-background);
  /* 100% height */
  display: flex;
  align-items: center;
  /* for nested lists */
  gap: var(--navbox-pill-gap); 
  flex-wrap: wrap;
}
/* Add a hover / focus feedback style */
.ranger-navbox.pill .hlist dd:hover,
.ranger-navbox.pill .hlist dd:focus,
.ranger-navbox.pill .hlist dt:hover,
.ranger-navbox.pill .hlist dt:focus,
.ranger-navbox.pill .hlist li:hover,
.ranger-navbox.pill .hlist li:focus {
  box-shadow: var(--navbox-pill-box-shadow--hover);
  background: var(--navbox-pill-background--hover);
}
/* pill with selflink
 *
 * Only select the deepest level for nested lists.
 * We have to use :has() to pick pills with selflink and
 * all browsers which support :has() should also support :is() and :not(),
 * therefore we can use :is() and :not() here safely.
 */
.ranger-navbox.pill .hlist .ranger-list :is(li,dt,dd):has(.mw-selflink):not(:has(li, dt, dd)){ 
  background: var(--navbox-pill-selflink-background);
}
/**** `.pill-mobile` class: only apply the "pill" style on mobile ****/
@media screen and (max-width: 720px) {
  /* remove middle dots betweem items */
  .ranger-navbox.pill-mobile .hlist dd:not(:last-child)::after,
  .ranger-navbox.pill-mobile .hlist li:not(:last-child)::after{
    display: none;
  }
  /* remove parentheses around nested lists*/
  .ranger-navbox.pill-mobile .hlist dd ol::before,
  .ranger-navbox.pill-mobile .hlist dd ul::before,
  .ranger-navbox.pill-mobile .hlist dd dl::before,
  .ranger-navbox.pill-mobile .hlist dt ol::before,
  .ranger-navbox.pill-mobile .hlist dt ul::before,
  .ranger-navbox.pill-mobile .hlist dt dl::before,
  .ranger-navbox.pill-mobile .hlist li ol::before,
  .ranger-navbox.pill-mobile .hlist li ul::before,
  .ranger-navbox.pill-mobile .hlist li dl::before,
  .ranger-navbox.pill-mobile .hlist dd ol::after,
  .ranger-navbox.pill-mobile .hlist dd ul::after,
  .ranger-navbox.pill-mobile .hlist dd dl::after,
  .ranger-navbox.pill-mobile .hlist dt ol::after,
  .ranger-navbox.pill-mobile .hlist dt ul::after,
  .ranger-navbox.pill-mobile .hlist dt dl::after,
  .ranger-navbox.pill-mobile .hlist li ol::after,
  .ranger-navbox.pill-mobile .hlist li ul::after,
  .ranger-navbox.pill-mobile .hlist li dl::after {
    display: none;
  }
  /* make lists inline-flex */
  .ranger-navbox.pill-mobile .hlist ul,
  .ranger-navbox.pill-mobile .hlist ol,
  .ranger-navbox.pill-mobile .hlist dl{
    display: inline-flex;
    gap: var(--navbox-pill-gap);
    flex-wrap: wrap;
  }
  /* "pill" style for items */
  .ranger-navbox.pill-mobile .hlist li,
  .ranger-navbox.pill-mobile .hlist dt,
  .ranger-navbox.pill-mobile .hlist dd{
    /* 100% height */
    display: flex;
    align-items: center;
    /* for nested lists */
    gap: var(--navbox-pill-gap);
    flex-wrap: wrap;
  }
  /* "pill" style for items */
  .ranger-navbox.pill-mobile .hlist li,
  .ranger-navbox.pill-mobile .hlist dt,
  .ranger-navbox.pill-mobile .hlist dd{
    padding: var(--navbox-pill-padding);
    border-radius: var(--navbox-pill-border-radius);
    box-shadow: var(--navbox-pill-box-shadow);
    background: var(--navbox-pill-background);
    /* 100% height */
    display: flex;
    align-items: center;
    /* for nested lists */
    gap: var(--navbox-pill-gap);
    flex-wrap: wrap;
  }
  /* Add a hover / focus feedback style */
  .ranger-navbox.pill-mobile .hlist dd:hover,
  .ranger-navbox.pill-mobile .hlist dd:focus,
  .ranger-navbox.pill-mobile .hlist dt:hover,
  .ranger-navbox.pill-mobile .hlist dt:focus,
  .ranger-navbox.pill-mobile .hlist li:hover,
  .ranger-navbox.pill-mobile .hlist li:focus {
    box-shadow: var(--navbox-pill-box-shadow--hover);
    background: var(--navbox-pill-background--hover);
  }
  /* pill with selflink
   *
   * Only select the deepest level for nested lists.
   * We have to use :has() to pick pills with selflink and
   * all browsers which support :has() should also support :is() and :not(),
   * therefore we can use :is() and :not() here safely.
   */
  .ranger-navbox.pill-mobile .hlist .ranger-list :is(li,dt,dd):has(.mw-selflink):not(:has(li, dt, dd)){ 
    background: var(--navbox-pill-selflink-background);
  }
}
/*********************
* End Template:Navbox*
**********************/