Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MediaWiki:Citizen.css: Difference between revisions

MediaWiki interface page
No edit summary
Undo revision 7593 by Mnooseman (talk)
Tag: Undo
 
(30 intermediate revisions by 2 users not shown)
Line 81: Line 81:
   border: none;
   border: none;
}
}
@font-face {
@font-face {
font-family: Minecraft;
font-family: Minecraft;
Line 86: Line 87:
    url('/resources/assets/fonts/Minecraft.woff') format('woff');
    url('/resources/assets/fonts/Minecraft.woff') format('woff');
}
}
.content a > img, .content span > img, .content noscript > img {
.content a > img, .content span > img, .content noscript > img {
     max-width: 100% !important;
     max-width: 100% !important;
     height: auto !important;
     height: auto !important;
}
}
.citizen-menu__content-list > li.mw-list-item:hover:not(#pt-logout):not(#pt-login) {
    background-color: #e8eaed;
    border-radius: var(--border-radius-medium);
}
.citizen-menu__content-list > li.mw-list-item:hover:not(#pt-logout):not(#pt-login) a {
    color: #162132;
}
.invslot {
.invslot {
   position: relative;
   position: relative;
Line 103: Line 115:
   border-color: #262626 #6b6b6b #6b6b6b #262626;
   border-color: #262626 #6b6b6b #6b6b6b #262626;
}
}
.invslot::before,
.invslot::before,
.invslot::after {
.invslot::after {
Line 112: Line 125:
   pointer-events: none;
   pointer-events: none;
}
}
.invslot::before { bottom: -2px; left: -2px; }
.invslot::before { bottom: -2px; left: -2px; }
.invslot::after { top: -2px; right: -2px; }
.invslot::after { top: -2px; right: -2px; }
Line 124: Line 138:
   height: 36px;
   height: 36px;
}
}
.invslot-item img {
.invslot-item img {
   width: 32px;
   width: 32px;
   height: auto;
   height: auto;
}
}
.invslot-item-image a.new:first-child {
.invslot-item-image a.new:first-child {
   background-image: url("/resources/assets/images/Grid_Unknown.png");
   background-image: url("images/3/35/Grid_Unknown.png");
   background-repeat: no-repeat;
   background-repeat: no-repeat;
   background-size: cover;
   background-size: cover;
Line 137: Line 153:
   overflow: hidden;
   overflow: hidden;
}
}
.invslot-stacksize {
.invslot-stacksize {
   position: absolute;
   position: absolute;
Line 148: Line 165:
   z-index: 2;
   z-index: 2;
}
}
.invslot-plain {
.invslot-plain {
   background-color: transparent;
   background-color: transparent;
   border: 0;
   border: 0;
}
}
.invslot-plain::before,
.invslot-plain::before,
.invslot-plain::after {
.invslot-plain::after {
   content: none;
   content: none;
}
}
.invslot-plain > .invslot-item,
.invslot-plain > .invslot-item,
.invslot-plain > .invslot-item a:first-child {
.invslot-plain > .invslot-item a:first-child {
Line 181: Line 201:
     display: none;
     display: none;
}
}
.mw-body-content span.animated,
.mw-body-content span.animated,
.mw-body-content span.animated.animated-visible > *,
.mw-body-content span.animated.animated-visible > *,
Line 186: Line 207:
     display: inline-block;
     display: inline-block;
}
}
.mw-body-content div.animated.animated-visible > *,
.mw-body-content div.animated.animated-visible > *,
.mw-body-content div.animated.animated-visible > .animated-subframe > * {
.mw-body-content div.animated.animated-visible > .animated-subframe > * {
Line 208: Line 230:
   z-index: 9999;
   z-index: 9999;
}
}
#minetip-tooltip::before {
#minetip-tooltip::before {
   content: "";
   content: "";
Line 218: Line 241:
   border-color: rgba(16, 0, 16, 0.94);
   border-color: rgba(16, 0, 16, 0.94);
}
}
#minetip-tooltip::after {
#minetip-tooltip::after {
   content: "";
   content: "";
Line 228: Line 252:
   border-image: linear-gradient(rgba(80, 0, 255, 0.31), rgba(40, 0, 127, 0.31)) 1;
   border-image: linear-gradient(rgba(80, 0, 255, 0.31), rgba(40, 0, 127, 0.31)) 1;
}
}
#minetip-tooltip > .description,
#minetip-tooltip > .description,
#minetip-tooltip > .minetip-description {
#minetip-tooltip > .minetip-description {
   display: block;
   display: block;
   margin-top: 0.25em;
   margin-top: 0.25em;
}
.vho-research-container {
    max-width: 1200px;
    margin: 0 auto;
    background-color: #2a2a2a;
    border: 2px solid #555;
    border-radius: 4px;
    padding: 20px;
    position: relative;
    font-family: 'Minecraft';
    color: #ffffff;
}
.vho-research-header {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
    color: #ffffff;
    text-shadow: 2px 2px 0px #000000;
}
.vho-categories-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    margin-bottom: 20px;
}
.vho-category {
    background-color: #1a1a1a;
    border: 2px solid #444;
    border-radius: 4px;
    overflow: hidden;
}
.vho-category-header {
    padding: 4px 12px;
    font-size: 18px;
    font-weight: bold;
    color: #ffffff;
    text-shadow: 1px 1px 0px #000000;
    display: flex;
    align-items: center;
    gap: 8px;
    text-align: left;
    justify-content: flex-start;
    min-height: 70px;
}
.vho-category-header.storage { background-color: #4a9b9b; }
.vho-category-header.looting { background-color: #d4af37; }
.vho-category-header.power { background-color: #b22222; }
.vho-category-header.handling { background-color: #8b0000; }
.vho-category-header.big-mods { background-color: #228b22; }
.vho-category-header.qol { background-color: #cd853f; }
.vho-category-header.big-toys { background-color: #0000cd; }
.vho-category-header.production { background-color: #4682b4; }
.vho-category-header.vault-upgrades { background-color: #daa520; }
.vho-category-content {
    padding: 15px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}
.vho-mod-icon {
    width: 48px;
    height: 48px;
    background-color: #333;
    border: 2px solid #555;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    position: relative;
    background-size: cover;
    background-position: center;
    margin: 0 auto;
}
.vho-mod-icon:hover {
    border-color: #888;
    background-color: #444;
    transform: scale(1.05);
}
.vho-mod-icon.unlocked {
    border-color: #4CAF50;
    background-color: #2a4a2a;
}
/* Placeholder for empty slots to maintain layout */
.vho-mod-placeholder {
    width: 48px;
    height: 48px;
    margin: 0 auto;
    visibility: hidden;
}
.vho-tooltip {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #1a1a1a;
    color: #ffffff;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 1000;
    margin-bottom: 5px;
    border: 1px solid #555;
}
.vho-mod-icon:hover .tooltip {
    opacity: 1;
}
.vho-flyout {
    position: absolute;
    background-color: #2a2a2a;
    border: 2px solid #555;
    border-radius: 4px;
    padding: 20px;
    min-width: 300px;
    max-width: 400px;
    z-index: 9999;
    display: none;
    color: #ffffff;
    font-family: 'Minecraft';
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
    max-height: 400px;
    overflow-y: auto;
}
.vho-flyout.active {
    display: block;
}
.vho-flyout-header {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    color: #ffffff;
    text-shadow: 1px 1px 0px #000000;
    border-bottom: 1px solid #555;
    padding-bottom: 10px;
}
.vho-flyout-section {
    margin-bottom: 15px;
}
.vho-flyout-section h4 {
    margin: 0 0 8px 0;
    color: #cccccc;
    font-size: 14px;
}
.vho-flyout-section p {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
    color: #aaaaaa;
}
.vho-prerequisites {
    background-color: #1a1a1a;
    border: 1px solid #444;
    border-radius: 4px;
    padding: 8px;
    margin-top: 5px;
}
.vho-prerequisites-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.vho-prerequisites-list li {
    font-size: 12px;
    color: #cccccc;
    margin-bottom: 4px;
}
.vho-prerequisites-list li:before {
    content: "• ";
    color: #888;
}
.vho-external-links {
    display: flex;
    gap: 10px;
    margin-top: 10px;
}
.vho-external-link {
    background-color: #444;
    color: #ffffff;
    padding: 6px 12px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 12px;
    transition: background-color 0.2s ease;
}
.vho-external-link:hover {
    background-color: #555;
}
.vho-close-button {
    pointer-events: auto;
    z-index: 10001;
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    color: #888;
    font-size: 18px;
    cursor: pointer;
    padding: 0;
    line-height: 1;
}
.vho-close-button:hover {
    color: #ffffff;
}
.vho-category-icon {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #c6c6c6;
    border: 2px solid #fff;
    border-bottom-color: #555555;
    border-right-color: #555555;
    box-shadow: inset 1px 1px 0px rgba(255,255,255,0.3);
    border-radius: 2px;
    flex-shrink: 0;
}
.vho-category-icon img {
    width: 50px;
    height: 50px;
    display: block;
}
/* Messagebox templates - Dark Mode */
.messagebox {
border: 1px solid #6B7280;
background-color: #1F2937;
width: 80%;
margin: 0 auto 1em auto;
padding: .2em;
}
.messagebox.merge {
border: 1px solid #8B7BA8;
background-color: #2D1B3D;
text-align: center;
}
.messagebox.cleanup {
border: 1px solid #7C7CFF;
background-color: #1A1A2E;
text-align: center;
}
.messagebox.standard-talk {
border: 1px solid #9CA36B;
background-color: #3D3A2A;
margin: 4px auto;
}
/* For old WikiProject banners inside banner shells. */
.mbox-inside .standard-talk,
.messagebox.nested-talk {
border: 1px solid #9CA36B;
background-color: #3D3A2A;
width: 100%;
margin: 2px 0;
padding: 2px;
}
.messagebox.small {
width: 238px;
font-size: 85%;
/* @noflip */
float: right;
clear: both;
/* @noflip */
margin: 0 0 1em 1em;
line-height: 1.25em;
}
.messagebox.small-talk {
width: 238px;
font-size: 85%;
/* @noflip */
float: right;
clear: both;
/* @noflip */
margin: 0 0 1em 1em;
line-height: 1.25em;
background-color: #3D3A2A;
}
/* Cell sizes for ambox/tmbox/imbox/cmbox/ombox/fmbox/dmbox message boxes */
th.mbox-text, td.mbox-text {  /* The message body cell(s) */
border: none;
/* @noflip */
padding: 0.25em 0.9em;    /* 0.9em left/right */
width: 100%;              /* Make all mboxes the same width regardless of text length */
}
td.mbox-image {                /* The left image cell */
border: none;
/* @noflip */
padding: 2px 0 2px 0.9em;  /* 0.9em left, 0px right */
text-align: center;
}
td.mbox-imageright {          /* The right image cell */
border: none;
/* @noflip */
padding: 2px 0.9em 2px 0;  /* 0px left, 0.9em right */
text-align: center;
}
td.mbox-empty-cell {          /* An empty narrow cell */
border: none;
padding: 0;
width: 1px;
}
/* Article message box styles */
table.ambox {
margin: 0 10%;                  /* 10% = Will not overlap with other elements */
border: 1px solid #6B7280;
/* @noflip */
border-left: 10px solid #4A9EFF;  /* Default "notice" blue */
background-color: #1F2937;
box-sizing: border-box;
}
table.ambox + table.ambox {      /* Single border between stacked boxes. */
margin-top: -1px;
}
.ambox th.mbox-text,
.ambox td.mbox-text {            /* The message body cell(s) */
padding: 0.25em 0.5em;      /* 0.5em left/right */
}
.ambox td.mbox-image {          /* The left image cell */
/* @noflip */
padding: 2px 0 2px 0.5em;    /* 0.5em left, 0px right */
}
.ambox td.mbox-imageright {      /* The right image cell */
/* @noflip */
padding: 2px 0.5em 2px 0;    /* 0px left, 0.5em right */
}
table.ambox-notice {
/* @noflip */
border-left: 10px solid #4A9EFF;      /* Blue */
}
table.ambox-speedy {
/* @noflip */
border-left: 10px solid #FF4444;      /* Red */
background-color: #2A1515;            /* Dark pink */
}
table.ambox-delete {
/* @noflip */
border-left: 10px solid #FF4444;      /* Red */
}
table.ambox-content {
/* @noflip */
border-left: 10px solid #FF9933;      /* Orange */
}
table.ambox-style {
/* @noflip */
border-left: 10px solid #FFDD44;      /* Yellow */
}
table.ambox-move {
/* @noflip */
border-left: 10px solid #B84DFF;      /* Purple */
}
table.ambox-protection {
/* @noflip */
border-left: 10px solid #6B7280;      /* Gray-gold */
}
/* Image message box styles */
table.imbox {
margin: 4px 10%;
border-collapse: collapse;
border: 3px solid #4A9EFF;    /* Default "notice" blue */
background-color: #1F2937;
box-sizing: border-box;
}
.imbox .mbox-text .imbox {  /* For imboxes inside imbox-text cells. */
margin: 0 -0.5em;      /* 0.9 - 0.5 = 0.4em left/right.        */
display: block;        /* Fix for webkit to force 100% width.  */
}
.mbox-inside .imbox {      /* For imboxes inside other templates.  */
margin: 4px;
}
table.imbox-notice {
border: 3px solid #4A9EFF;      /* Blue */
}
table.imbox-speedy {
border: 3px solid #FF4444;      /* Red */
background-color: #2A1515;      /* Dark pink */
}
table.imbox-delete {
border: 3px solid #FF4444;      /* Red */
}
table.imbox-content {
border: 3px solid #FF9933;      /* Orange */
}
table.imbox-style {
border: 3px solid #FFDD44;      /* Yellow */
}
table.imbox-move {
border: 3px solid #B84DFF;      /* Purple */
}
table.imbox-protection {
border: 3px solid #6B7280;      /* Gray-gold */
}
table.imbox-license {
border: 3px solid #9999BB;      /* Dark gray */
background-color: #1A1B2E;      /* Dark blue-gray */
}
table.imbox-featured {
border: 3px solid #D4A655;      /* Brown-gold */
}
/* Category message box styles */
table.cmbox {
margin: 3px 10%;
border-collapse: collapse;
border: 1px solid #6B7280;
background-color: #1E2A4A;      /* Default "notice" dark blue */
box-sizing: border-box;
}
table.cmbox-notice {
background-color: #1A2442;      /* Dark blue */
}
table.cmbox-speedy {
margin-top: 4px;
margin-bottom: 4px;
border: 4px solid #FF4444;      /* Red */
background-color: #2D1A1A;      /* Dark pink */
}
table.cmbox-delete {
background-color: #2D1A1A;      /* Dark red */
}
table.cmbox-content {
background-color: #3D2A1A;      /* Dark orange */
}
table.cmbox-style {
background-color: #3D3A1A;      /* Dark yellow */
}
table.cmbox-move {
background-color: #2A1E3D;      /* Dark purple */
}
table.cmbox-protection {
background-color: #2D2D25;      /* Dark gray-gold */
}
/* Other pages message box styles */
table.ombox {
margin: 4px 10%;
border-collapse: collapse;
border: 1px solid #6B7280;      /* Default "notice" gray */
background-color: #1F2937;
box-sizing: border-box;
}
table.ombox-notice {
border: 1px solid #6B7280;      /* Gray */
}
table.ombox-speedy {
border: 2px solid #FF4444;      /* Red */
background-color: #2A1515;      /* Dark pink */
}
table.ombox-delete {
border: 2px solid #FF4444;      /* Red */
}
table.ombox-content {
border: 1px solid #FF9933;      /* Orange */
}
table.ombox-style {
border: 1px solid #FFDD44;      /* Yellow */
}
table.ombox-move {
border: 1px solid #B84DFF;      /* Purple */
}
table.ombox-protection {
border: 2px solid #6B7280;      /* Gray-gold */
}
/* Talk page message box styles */
table.tmbox {
margin: 4px 10%;
border-collapse: collapse;
border: 1px solid #9CA36B;      /* Default "notice" gray-brown */
background-color: #3D3A2A;
min-width: 80%;
box-sizing: border-box;
}
.tmbox.mbox-small {
min-width: 0;                /* reset the min-width of tmbox above        */
}
.mediawiki .mbox-inside .tmbox { /* For tmboxes inside other templates. The "mediawiki" class ensures that */
margin: 2px 0;              /* this declaration overrides other styles (including mbox-small above)  */
width: 100%;                /* For Safari and Opera */
}
.mbox-inside .tmbox.mbox-small { /* "small" tmboxes should not be small when  */
line-height: 1.5em;          /* also "nested", so reset styles that are  */
font-size: 100%;            /* set in "mbox-small" above.                */
}
table.tmbox-speedy {
border: 2px solid #FF4444;      /* Red */
background-color: #2A1515;      /* Dark pink */
}
table.tmbox-delete {
border: 2px solid #FF4444;      /* Red */
}
table.tmbox-content {
border: 2px solid #FF9933;      /* Orange */
}
table.tmbox-style {
border: 2px solid #FFDD44;      /* Yellow */
}
table.tmbox-move {
border: 2px solid #B84DFF;      /* Purple */
}
table.tmbox-protection,
table.tmbox-notice {
border: 1px solid #9CA36B;      /* Gray-brown */
}
/* Disambig and set index box styles */
table.dmbox {
clear: both;
margin: 0.9em 1em;
border-top: 1px solid #666666;
border-bottom: 1px solid #666666;
background-color: transparent;
}
/* Footer and header message box styles */
table.fmbox {
clear: both;
margin: 0.2em 0;
width: 100%;
border: 1px solid #6B7280;
background-color: #1F2937;        /* Default "system" dark gray */
box-sizing: border-box;
}
table.fmbox-system {
background-color: #1F2937;
}
table.fmbox-warning {
border: 1px solid #CC7777;        /* Dark pink */
background-color: #2D1A1A;        /* Dark pink */
}
table.fmbox-editnotice {
background-color: transparent;
}
/* Div based "warning" style fmbox messages. */
div.mw-warning-with-logexcerpt,
div.mw-lag-warn-high,
div.mw-cascadeprotectedwarning,
div#mw-protect-cascadeon,
div.titleblacklist-warning,
div.locked-warning {
clear: both;
margin: 0.2em 0;
border: 1px solid #CC7777;
background-color: #2D1A1A;
padding: 0.25em 0.9em;
box-sizing: border-box;
}
/* These mbox-small classes must be placed after all other
  ambox/tmbox/ombox etc classes. "html body.mediawiki" is so
  they override "table.ambox + table.ambox" above. */
html body.mediawiki .mbox-small {  /* For the "small=yes" option. */
/* @noflip */
clear: right;
/* @noflip */
float: right;
/* @noflip */
margin: 4px 0 4px 1em;
box-sizing: border-box;
width: 238px;
font-size: 88%;
line-height: 1.25em;
}
html body.mediawiki .mbox-small-left {  /* For the "small=left" option. */
/* @noflip */
margin: 4px 1em 4px 0;
box-sizing: border-box;
overflow: hidden;
width: 238px;
border-collapse: collapse;
font-size: 88%;
line-height: 1.25em;
}
/* Style for compact ambox */
/* Hide the images */
.compact-ambox table .mbox-image,
.compact-ambox table .mbox-imageright,
.compact-ambox table .mbox-empty-cell {
display: none;
}
/* Remove borders, backgrounds, padding, etc. */
.compact-ambox table.ambox {
border: none;
border-collapse: collapse;
background-color: transparent;
margin: 0 0 0 1.6em !important;
padding: 0 !important;
width: auto;
display: block;
}
body.mediawiki .compact-ambox table.mbox-small-left {
font-size: 100%;
width: auto;
margin: 0;
}
/* Style the text cell as a list item and remove its padding */
.compact-ambox table .mbox-text {
padding: 0 !important;
margin: 0 !important;
}
.compact-ambox table .mbox-text-span {
display: list-item;
line-height: 1.5em;
list-style-type: square;
list-style-image: url(/w/skins/MonoBook/resources/images/bullet.gif);
}
.skin-vector .compact-ambox table .mbox-text-span {
list-style-type: disc;
list-style-image: url(/w/skins/Vector/images/bullet-icon.svg);
list-style-image: url(/w/skins/Vector/images/bullet-icon.png)\9;
}
/* Allow for hiding text in compact form */
.compact-ambox .hide-when-compact {
display: none;
}
}

Latest revision as of 04:01, 23 July 2025

:root {
    color-scheme: dark !important;
}

/* All CSS here will be loaded for users of the Citizen skin */
:root.skin-theme-clientpref-dark {
    --color-surface-0: #050e1b;
    --color-surface-1: #0d1014;
    --color-base: #fff;
    --color-base--emphasized: #808080;
    --color-base--subtle: #162132;
    --color-subtle: #e8eaed;
}
:root.skin-theme-clientpref-os {
    --color-surface-0: #050e1b;
    --color-surface-1: #0d1014;
    --color-base: #fff;
    --color-base--emphasized: #808080;
    --color-base--subtle: #162132;
}

:root.skin-theme-clientpref-night {
   --color-emphasized: #fff;
   --color-base: #e8eaed;
   --color-subtle: #ffffff75;
   --color-link: #ffa800;
   --color-link--hover: #fcb326;
   --color-link--active: #fcb326;
   --color-progressive: #ffa800;
   --color-progressive--hover: #fcb326;
   --color-progressive--active: #fcb326;
}

.citizen-page-container {
    position: relative;
    background-image: url("resources/assets/hero.webp");
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
    background-size: cover;
    z-index: 0;
    overflow: hidden;
}

.citizen-page-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
    pointer-events: none;
}

.citizen-page-container > * {
    position: relative;
    z-index: 2;
}

.citizen-body {
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 10px;
    padding: 1rem 1.5rem;
}

h1, h2 {
   margin-block-start: 0;
}

.mw-logo-wordmark {
   height: 4rem !important;
   filter: none !important;
}

#footer-icons a {
   background: none;
   border: none;
}

@font-face {
	font-family: Minecraft;
	src: url('/resources/assets/fonts/Minecraft.woff2') format('woff2'),
	     url('/resources/assets/fonts/Minecraft.woff') format('woff');
}

.content a > img, .content span > img, .content noscript > img {
    max-width: 100% !important;
    height: auto !important;
}

.citizen-menu__content-list > li.mw-list-item:hover:not(#pt-logout):not(#pt-login) {
    background-color: #e8eaed;
    border-radius: var(--border-radius-medium);
}

.citizen-menu__content-list > li.mw-list-item:hover:not(#pt-logout):not(#pt-login) a {
    color: #162132;
}

.invslot {
  position: relative;
  display: inline-block;
  border: 2px solid;
  width: 36px;
  height: 36px;
  font-size: 16px;
  line-height: 1;
  text-align: left;
  vertical-align: bottom;
  background: #333333;
  border-color: #262626 #6b6b6b #6b6b6b #262626;
}

.invslot::before,
.invslot::after {
  content: "";
  position: absolute;
  background-color: #8b8b8b;
  height: 2px;
  width: 2px;
  pointer-events: none;
}

.invslot::before { bottom: -2px; left: -2px; }
.invslot::after { top: -2px; right: -2px; }

.invslot-item,
.invslot-item a:first-child {
  position: relative;
  display: block;
  margin: -2px;
  padding: 2px;
  width: 36px;
  height: 36px;
}

.invslot-item img {
  width: 32px;
  height: auto;
}

.invslot-item-image a.new:first-child {
  background-image: url("images/3/35/Grid_Unknown.png");
  background-repeat: no-repeat;
  background-size: cover;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  overflow: hidden;
}

.invslot-stacksize {
  position: absolute;
  right: 0;
  bottom: 0;
  font-family: Minecraft, sans-serif !important;
  font-weight: normal !important;
  color: #fff !important;
  text-shadow: 2px 2px 0 #3f3f3f;
  filter: dropshadow(color=#3F3F3F, offx=2, offy=2);
  z-index: 2;
}

.invslot-plain {
  background-color: transparent;
  border: 0;
}

.invslot-plain::before,
.invslot-plain::after {
  content: none;
}

.invslot-plain > .invslot-item,
.invslot-plain > .invslot-item a:first-child {
  margin: 0;
  padding: 0;
}

.mc-hearts::before { content: " ("; }
.mc-hearts::after { content: ")"; }

.mcui {
  display: inline-block;
  position: relative;
  border: 2px solid;
  padding: 6px;
  text-align: left;
  white-space: nowrap;
  vertical-align: bottom;
  background-color: #535353;
  border-color: #6b6b6b #333333 #333333 #6b6b6b;
}

.mw-body-content .animated > *:not(.animated-active),
.mw-body-content .animated > .animated-subframe > *:not(.animated-active) {
    display: none;
}

.mw-body-content span.animated,
.mw-body-content span.animated.animated-visible > *,
.mw-body-content span.animated.animated-visible > .animated-subframe > * {
    display: inline-block;
}

.mw-body-content div.animated.animated-visible > *,
.mw-body-content div.animated.animated-visible > .animated-subframe > * {
    display: block;
}

#minetip-tooltip {
  position: fixed;
  top: 0;
  left: 0;
  color: #fbfbfb;
  text-shadow: 0.125em 0.125em 0 #3e3e3e;
  background-color: rgba(16, 0, 16, 0.94);
  padding: 0.375em;
  font-family: Minecraft, sans-serif;
  font-size: 16px;
  word-spacing: 4px;
  white-space: nowrap;
  line-height: 1.25em;
  margin: 0.125em 0.25em;
  pointer-events: none;
  z-index: 9999;
}

#minetip-tooltip::before {
  content: "";
  position: absolute;
  top: 0.125em;
  right: -0.125em;
  bottom: 0.125em;
  left: -0.125em;
  border-style: none solid;
  border-color: rgba(16, 0, 16, 0.94);
}

#minetip-tooltip::after {
  content: "";
  position: absolute;
  top: 0.125em;
  right: 0;
  bottom: 0.125em;
  left: 0;
  border: 0.125em solid #2d0a63;
  border-image: linear-gradient(rgba(80, 0, 255, 0.31), rgba(40, 0, 127, 0.31)) 1;
}

#minetip-tooltip > .description,
#minetip-tooltip > .minetip-description {
  display: block;
  margin-top: 0.25em;
}

.vho-research-container {
    max-width: 1200px;
    margin: 0 auto;
    background-color: #2a2a2a;
    border: 2px solid #555;
    border-radius: 4px;
    padding: 20px;
    position: relative;
    font-family: 'Minecraft';
    color: #ffffff;
}

.vho-research-header {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
    color: #ffffff;
    text-shadow: 2px 2px 0px #000000;
}

.vho-categories-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    margin-bottom: 20px;
}

.vho-category {
    background-color: #1a1a1a;
    border: 2px solid #444;
    border-radius: 4px;
    overflow: hidden;
}

.vho-category-header {
    padding: 4px 12px;
    font-size: 18px;
    font-weight: bold;
    color: #ffffff;
    text-shadow: 1px 1px 0px #000000;
    display: flex;
    align-items: center;
    gap: 8px;
    text-align: left;
    justify-content: flex-start;
    min-height: 70px;
}

.vho-category-header.storage { background-color: #4a9b9b; }
.vho-category-header.looting { background-color: #d4af37; }
.vho-category-header.power { background-color: #b22222; }
.vho-category-header.handling { background-color: #8b0000; }
.vho-category-header.big-mods { background-color: #228b22; }
.vho-category-header.qol { background-color: #cd853f; }
.vho-category-header.big-toys { background-color: #0000cd; }
.vho-category-header.production { background-color: #4682b4; }
.vho-category-header.vault-upgrades { background-color: #daa520; }

.vho-category-content {
    padding: 15px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.vho-mod-icon {
    width: 48px;
    height: 48px;
    background-color: #333;
    border: 2px solid #555;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    position: relative;
    background-size: cover;
    background-position: center;
    margin: 0 auto;
}

.vho-mod-icon:hover {
    border-color: #888;
    background-color: #444;
    transform: scale(1.05);
}

.vho-mod-icon.unlocked {
    border-color: #4CAF50;
    background-color: #2a4a2a;
}

/* Placeholder for empty slots to maintain layout */
.vho-mod-placeholder {
    width: 48px;
    height: 48px;
    margin: 0 auto;
    visibility: hidden;
}

.vho-tooltip {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #1a1a1a;
    color: #ffffff;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 1000;
    margin-bottom: 5px;
    border: 1px solid #555;
}

.vho-mod-icon:hover .tooltip {
    opacity: 1;
}

.vho-flyout {
    position: absolute;
    background-color: #2a2a2a;
    border: 2px solid #555;
    border-radius: 4px;
    padding: 20px;
    min-width: 300px;
    max-width: 400px;
    z-index: 9999;
    display: none;
    color: #ffffff;
    font-family: 'Minecraft';
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
    max-height: 400px;
    overflow-y: auto;
}

.vho-flyout.active {
    display: block;
}

.vho-flyout-header {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    color: #ffffff;
    text-shadow: 1px 1px 0px #000000;
    border-bottom: 1px solid #555;
    padding-bottom: 10px;
}

.vho-flyout-section {
    margin-bottom: 15px;
}

.vho-flyout-section h4 {
    margin: 0 0 8px 0;
    color: #cccccc;
    font-size: 14px;
}

.vho-flyout-section p {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
    color: #aaaaaa;
}

.vho-prerequisites {
    background-color: #1a1a1a;
    border: 1px solid #444;
    border-radius: 4px;
    padding: 8px;
    margin-top: 5px;
}

.vho-prerequisites-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.vho-prerequisites-list li {
    font-size: 12px;
    color: #cccccc;
    margin-bottom: 4px;
}

.vho-prerequisites-list li:before {
    content: "• ";
    color: #888;
}

.vho-external-links {
    display: flex;
    gap: 10px;
    margin-top: 10px;
}

.vho-external-link {
    background-color: #444;
    color: #ffffff;
    padding: 6px 12px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 12px;
    transition: background-color 0.2s ease;
}

.vho-external-link:hover {
    background-color: #555;
}

.vho-close-button {
    pointer-events: auto;
    z-index: 10001;
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    color: #888;
    font-size: 18px;
    cursor: pointer;
    padding: 0;
    line-height: 1;
}

.vho-close-button:hover {
    color: #ffffff;
}

.vho-category-icon {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #c6c6c6;
    border: 2px solid #fff;
    border-bottom-color: #555555;
    border-right-color: #555555;
    box-shadow: inset 1px 1px 0px rgba(255,255,255,0.3);
    border-radius: 2px;
    flex-shrink: 0;
}

.vho-category-icon img {
    width: 50px;
    height: 50px;
    display: block;
}

/* Messagebox templates - Dark Mode */
.messagebox {
	border: 1px solid #6B7280;
	background-color: #1F2937;
	width: 80%;
	margin: 0 auto 1em auto;
	padding: .2em;
}
.messagebox.merge {
	border: 1px solid #8B7BA8;
	background-color: #2D1B3D;
	text-align: center;
}
.messagebox.cleanup {
	border: 1px solid #7C7CFF;
	background-color: #1A1A2E;
	text-align: center;
}
.messagebox.standard-talk {
	border: 1px solid #9CA36B;
	background-color: #3D3A2A;
	margin: 4px auto;
}
/* For old WikiProject banners inside banner shells. */
.mbox-inside .standard-talk,
.messagebox.nested-talk {
	border: 1px solid #9CA36B;
	background-color: #3D3A2A;
	width: 100%;
	margin: 2px 0;
	padding: 2px;
}
.messagebox.small {
	width: 238px;
	font-size: 85%;
	/* @noflip */
	float: right;
	clear: both;
	/* @noflip */
	margin: 0 0 1em 1em;
	line-height: 1.25em;
}
.messagebox.small-talk {
	width: 238px;
	font-size: 85%;
	/* @noflip */
	float: right;
	clear: both;
	/* @noflip */
	margin: 0 0 1em 1em;
	line-height: 1.25em;
	background-color: #3D3A2A;
}

/* Cell sizes for ambox/tmbox/imbox/cmbox/ombox/fmbox/dmbox message boxes */
th.mbox-text, td.mbox-text {   /* The message body cell(s) */
	border: none;
	/* @noflip */
	padding: 0.25em 0.9em;     /* 0.9em left/right */
	width: 100%;               /* Make all mboxes the same width regardless of text length */
}
td.mbox-image {                /* The left image cell */
	border: none;
	/* @noflip */
	padding: 2px 0 2px 0.9em;  /* 0.9em left, 0px right */
	text-align: center;
}
td.mbox-imageright {           /* The right image cell */
	border: none;
	/* @noflip */
	padding: 2px 0.9em 2px 0;  /* 0px left, 0.9em right */
	text-align: center;
}
td.mbox-empty-cell {           /* An empty narrow cell */
	border: none;
	padding: 0;
	width: 1px;
}

/* Article message box styles */
table.ambox {
	margin: 0 10%;                  /* 10% = Will not overlap with other elements */
	border: 1px solid #6B7280;
	/* @noflip */
	border-left: 10px solid #4A9EFF;  /* Default "notice" blue */
	background-color: #1F2937;
	box-sizing: border-box;
}
table.ambox + table.ambox {      /* Single border between stacked boxes. */
	margin-top: -1px;
}
.ambox th.mbox-text,
.ambox td.mbox-text {            /* The message body cell(s) */
	padding: 0.25em 0.5em;       /* 0.5em left/right */
}
.ambox td.mbox-image {           /* The left image cell */
	/* @noflip */
	padding: 2px 0 2px 0.5em;    /* 0.5em left, 0px right */
}
.ambox td.mbox-imageright {      /* The right image cell */
	/* @noflip */
	padding: 2px 0.5em 2px 0;    /* 0px left, 0.5em right */
}

table.ambox-notice {
	/* @noflip */
	border-left: 10px solid #4A9EFF;       /* Blue */
}
table.ambox-speedy {
	/* @noflip */
	border-left: 10px solid #FF4444;       /* Red */
	background-color: #2A1515;             /* Dark pink */
}
table.ambox-delete {
	/* @noflip */
	border-left: 10px solid #FF4444;       /* Red */
}
table.ambox-content {
	/* @noflip */
	border-left: 10px solid #FF9933;       /* Orange */
}
table.ambox-style {
	/* @noflip */
	border-left: 10px solid #FFDD44;       /* Yellow */
}
table.ambox-move {
	/* @noflip */
	border-left: 10px solid #B84DFF;       /* Purple */
}
table.ambox-protection {
	/* @noflip */
	border-left: 10px solid #6B7280;       /* Gray-gold */
}

/* Image message box styles */
table.imbox {
	margin: 4px 10%;
	border-collapse: collapse;
	border: 3px solid #4A9EFF;    /* Default "notice" blue */
	background-color: #1F2937;
	box-sizing: border-box;
}
.imbox .mbox-text .imbox {  /* For imboxes inside imbox-text cells. */
	margin: 0 -0.5em;       /* 0.9 - 0.5 = 0.4em left/right.        */
	display: block;         /* Fix for webkit to force 100% width.  */
}
.mbox-inside .imbox {       /* For imboxes inside other templates.  */
	margin: 4px;
}

table.imbox-notice {
	border: 3px solid #4A9EFF;       /* Blue */
}
table.imbox-speedy {
	border: 3px solid #FF4444;       /* Red */
	background-color: #2A1515;       /* Dark pink */
}
table.imbox-delete {
	border: 3px solid #FF4444;       /* Red */
}
table.imbox-content {
	border: 3px solid #FF9933;       /* Orange */
}
table.imbox-style {
	border: 3px solid #FFDD44;       /* Yellow */
}
table.imbox-move {
	border: 3px solid #B84DFF;       /* Purple */
}
table.imbox-protection {
	border: 3px solid #6B7280;       /* Gray-gold */
}
table.imbox-license {
	border: 3px solid #9999BB;       /* Dark gray */
	background-color: #1A1B2E;       /* Dark blue-gray */
}
table.imbox-featured {
	border: 3px solid #D4A655;       /* Brown-gold */
}

/* Category message box styles */
table.cmbox {
	margin: 3px 10%;
	border-collapse: collapse;
	border: 1px solid #6B7280;
	background-color: #1E2A4A;       /* Default "notice" dark blue */
	box-sizing: border-box;
}

table.cmbox-notice {
	background-color: #1A2442;       /* Dark blue */
}
table.cmbox-speedy {
	margin-top: 4px;
	margin-bottom: 4px;
	border: 4px solid #FF4444;       /* Red */
	background-color: #2D1A1A;       /* Dark pink */
}
table.cmbox-delete {
	background-color: #2D1A1A;       /* Dark red */
}
table.cmbox-content {
	background-color: #3D2A1A;       /* Dark orange */
}
table.cmbox-style {
	background-color: #3D3A1A;       /* Dark yellow */
}
table.cmbox-move {
	background-color: #2A1E3D;       /* Dark purple */
}
table.cmbox-protection {
	background-color: #2D2D25;       /* Dark gray-gold */
}

/* Other pages message box styles */
table.ombox {
	margin: 4px 10%;
	border-collapse: collapse;
	border: 1px solid #6B7280;       /* Default "notice" gray */
	background-color: #1F2937;
	box-sizing: border-box;
}

table.ombox-notice {
	border: 1px solid #6B7280;       /* Gray */
}
table.ombox-speedy {
	border: 2px solid #FF4444;       /* Red */
	background-color: #2A1515;       /* Dark pink */
}
table.ombox-delete {
	border: 2px solid #FF4444;       /* Red */
}
table.ombox-content {
	border: 1px solid #FF9933;       /* Orange */
}
table.ombox-style {
	border: 1px solid #FFDD44;       /* Yellow */
}
table.ombox-move {
	border: 1px solid #B84DFF;       /* Purple */
}
table.ombox-protection {
	border: 2px solid #6B7280;       /* Gray-gold */
}

/* Talk page message box styles */
table.tmbox {
	margin: 4px 10%;
	border-collapse: collapse;
	border: 1px solid #9CA36B;       /* Default "notice" gray-brown */
	background-color: #3D3A2A;
	min-width: 80%;
	box-sizing: border-box;
}
.tmbox.mbox-small {
	min-width: 0;                /* reset the min-width of tmbox above        */
}
.mediawiki .mbox-inside .tmbox { /* For tmboxes inside other templates. The "mediawiki" class ensures that */
	margin: 2px 0;               /* this declaration overrides other styles (including mbox-small above)   */
	width: 100%;                 /* For Safari and Opera */
}
.mbox-inside .tmbox.mbox-small { /* "small" tmboxes should not be small when  */
	line-height: 1.5em;          /* also "nested", so reset styles that are   */
	font-size: 100%;             /* set in "mbox-small" above.                */
}

table.tmbox-speedy {
	border: 2px solid #FF4444;       /* Red */
	background-color: #2A1515;       /* Dark pink */
}
table.tmbox-delete {
	border: 2px solid #FF4444;       /* Red */
}
table.tmbox-content {
	border: 2px solid #FF9933;       /* Orange */
}
table.tmbox-style {
	border: 2px solid #FFDD44;       /* Yellow */
}
table.tmbox-move {
	border: 2px solid #B84DFF;       /* Purple */
}
table.tmbox-protection,
table.tmbox-notice {
	border: 1px solid #9CA36B;       /* Gray-brown */
}

/* Disambig and set index box styles */
table.dmbox {
	clear: both;
	margin: 0.9em 1em;
	border-top: 1px solid #666666;
	border-bottom: 1px solid #666666;
	background-color: transparent;
}

/* Footer and header message box styles */
table.fmbox {
	clear: both;
	margin: 0.2em 0;
	width: 100%;
	border: 1px solid #6B7280;
	background-color: #1F2937;        /* Default "system" dark gray */
	box-sizing: border-box;
}
table.fmbox-system {
	background-color: #1F2937;
}
table.fmbox-warning {
	border: 1px solid #CC7777;        /* Dark pink */
	background-color: #2D1A1A;        /* Dark pink */
}
table.fmbox-editnotice {
	background-color: transparent;
}
/* Div based "warning" style fmbox messages. */
div.mw-warning-with-logexcerpt,
div.mw-lag-warn-high,
div.mw-cascadeprotectedwarning,
div#mw-protect-cascadeon,
div.titleblacklist-warning,
div.locked-warning {
	clear: both;
	margin: 0.2em 0;
	border: 1px solid #CC7777;
	background-color: #2D1A1A;
	padding: 0.25em 0.9em;
	box-sizing: border-box;
}

/* These mbox-small classes must be placed after all other
   ambox/tmbox/ombox etc classes. "html body.mediawiki" is so
   they override "table.ambox + table.ambox" above. */
html body.mediawiki .mbox-small {   /* For the "small=yes" option. */
	/* @noflip */
	clear: right;
	/* @noflip */
	float: right;
	/* @noflip */
	margin: 4px 0 4px 1em;
	box-sizing: border-box;
	width: 238px;
	font-size: 88%;
	line-height: 1.25em;
}
html body.mediawiki .mbox-small-left {   /* For the "small=left" option. */
	/* @noflip */
	margin: 4px 1em 4px 0;
	box-sizing: border-box;
	overflow: hidden;
	width: 238px;
	border-collapse: collapse;
	font-size: 88%;
	line-height: 1.25em;
}

/* Style for compact ambox */
/* Hide the images */
.compact-ambox table .mbox-image,
.compact-ambox table .mbox-imageright,
.compact-ambox table .mbox-empty-cell {
	display: none;
}
/* Remove borders, backgrounds, padding, etc. */
.compact-ambox table.ambox {
	border: none;
	border-collapse: collapse;
	background-color: transparent;
	margin: 0 0 0 1.6em !important;
	padding: 0 !important;
	width: auto;
	display: block;
}
body.mediawiki .compact-ambox table.mbox-small-left {
	font-size: 100%;
	width: auto;
	margin: 0;
}
/* Style the text cell as a list item and remove its padding */
.compact-ambox table .mbox-text {
	padding: 0 !important;
	margin: 0 !important;
}
.compact-ambox table .mbox-text-span {
	display: list-item;
	line-height: 1.5em;
	list-style-type: square;
	list-style-image: url(/w/skins/MonoBook/resources/images/bullet.gif);
}
.skin-vector .compact-ambox table .mbox-text-span {
	list-style-type: disc;
	list-style-image: url(/w/skins/Vector/images/bullet-icon.svg);
	list-style-image: url(/w/skins/Vector/images/bullet-icon.png)\9;
}
/* Allow for hiding text in compact form */
.compact-ambox .hide-when-compact {
	display: none;
}