MediaWiki:Common.css: Difference between revisions

From MB Wiki
Jump to navigation Jump to search
No edit summary
Tag: Reverted
mNo edit summary
 
(199 intermediate revisions by 2 users not shown)
Line 1: Line 1:
.class { }/* needed for some reason for the @imports to work */
.class {}
@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600&display=swap');


/* needed for some reason for the @imports to work */
/* Imports caching */
/* Imports caching */
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Colors.css&action=raw&ctype=text/css");
/*@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Colors.css");*/
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Module:Documentation.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Module:Documentation.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Documentation.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Documentation.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Infobox.css&action=raw&ctype=text/css");
/*@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Infobox.css");*/
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Tables.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Tables.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:MessageBox.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:MessageBox.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:CustomTabs.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:CustomTabs.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Navbox.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Navbox.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Icons.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Icons.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Dialogue.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Dialogue.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Cards.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Cards.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Tabbers.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Tabbers.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Mobile.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Mobile.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Recipe.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Recipe.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:Modal.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Modal.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:AceEditor.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:AceEditor.css");
@import url("https://coralwiki.stairwaygames.com/w/index.php?title=MediaWiki:CodeMirror.css&action=raw&ctype=text/css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:CodeMirror.css");


/* CSS placed here will be applied to all skins */
:root {
/* Universal Base Styles */
--font-size: 16px;
/* Slightly larger base */
--font-size-small: 14px;
--font-size-large: 18px;
--font-size-xlarge: 20px;
--font-size-h1: 32px;
--font-size-h2: 26px;
--font-size-h3: 22px;
--font-size-h4: 18px;
 
--line-height: 1.6;
/* More breathing room */
--line-height-headings: 1.3;
--line-height-tight: 1.25;
 
--font-weight-normal: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--wiki-content-text-color: var(--theme-page-text-color, #1a2a2a);
 
/* ===== SPACING ===== */
--spacing-xs: 4px;
--spacing-sm: 8px;
--spacing-md: 16px;
--spacing-lg: 24px;
--spacing-xl: 32px;
--spacing-2xl: 48px;
 
/* ===== SHADOWS & DEPTH ===== */
--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.12);
--shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
--shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
--shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.15);
--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.06);
 
/* ===== BORDERS & RADIUS ===== */
--wiki-content-border-color: var(--theme-border-color, #a1e9dc);
--border-radius-sm: 4px;
--border-radius-md: 8px;
--border-radius-lg: 2px;
--border-radius-full: 9999px;
 
--border-width: 1px;
--border-width-thick: 2px;
--border-width-xthick: 3px;
 
/* ===== TRANSITIONS ===== */
--transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
--transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
--transition-slow: 350ms cubic-bezier(0.4, 0, 0.2, 1);
 
/* ===== Z-INDEX LAYERS ===== */
--z-index-dropdown: 1000;
--z-index-sticky: 1020;
--z-index-fixed: 1030;
--z-index-modal-backdrop: 1040;
--z-index-modal: 1050;
--z-index-popover: 1060;
--z-index-tooltip: 1070;
 
/* ===== FOCUS STATES ===== */
--focus-ring-color: rgba(79, 209, 199, 0.6);
--focus-ring-color-dark: rgba(79, 209, 199, 0.8);
--focus-ring-width: 3px;
--focus-ring-offset: 2px;
 
/* ===== GRAY SCALE (Optimized) ===== */
--gray-950: #0f1419;
--gray-900: #1a202c;
--gray-800: #2d3748;
--gray-700: #4a5568;
--gray-600: #718096;
--gray-500: #a0aec0;
--gray-400: #cbd5e0;
--gray-300: #e2e8f0;
--gray-200: #edf2f7;
--gray-100: #f7fafc;
--gray-050: #ffffff;
 
/* ===== TEAL/BLUE SCALE ===== */
--teal-900: #1d4044;
--teal-800: #234e52;
--teal-700: #285e61;
--teal-600: #2c7a7b;
--teal-500: #319795;
--teal-400: #38b2ac;
--teal-300: #4fd1c7;
--teal-200: #81e6d9;
--teal-100: #b2f5ea;
--teal-050: #e6fffa;
 
/* ===== OTHER COLORS ===== */
--light-blue: #90cdf4;
--gold: #d69e2e;
--purple: #9f7aea;
 
/* ===== ANIMATIONS ===== */
--animation-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
--animation-spin: spin 1s linear infinite;
--animation-bounce: bounce 1s infinite;
 
/* Universal border */
--border-color: var(--theme-border-color);
/*Navigation*/
--mb-navigation-left-spacing: 0px;
--mb-navigation-right-spacing: 0px;
--mb-navigation-tab-spacing: 0px;
--mb-navigation-gap-between-left-and-right: 0px;
--mb-navigation-bottom-spacing: 0px;
--mb-navigation-border-bottom-width: 1px;
--mb-navigation-border-width: 1px;
--mb-navigation-border-style: solid;
--mb-navigation-border-color: var(--theme-border-color);
--mb-navigation-border-bottom-color: var(--theme-border-color);
--mb-navigation-border-bottom-style: solid;
--mb-navigation-text-color: var(--theme-page-text-color);
--mb-navigation-background-color: var(--theme-page-background-color--secondary);
--mb-navigation-background-opacity: 100%;
--mb-navigation-tab-padding-top: 1.25em;
--mb-navigation-tab-padding-x: 0.75em;
--mb-navigation-tab-padding-bottom: 4px;
--mb-navigation-border-radius: 4px 4px 0 0;
--mb-navigation-font-size: 0.8125em;
--mb-navigation-font-weight: normal;
 
/* Selected tab variables */
--mb-navigation-selected-border-color: var(--theme-accent-color);
--mb-navigation-selected-background-color: var(--theme-accent-color);
--mb-navigation-selected-text-color: var(--theme-accent-label-color);
--mb-navigation-selected-border-width: 1px;
--mb-navigation-selected-border-style: solid;
 
/* Hover variables */
--mb-navigation-text-color--hover: var(--theme-link-color);
--mb-navigation-border-color--hover: var(--theme-border-color);
 
/* Content variables */
--mb-content-border-top-radius: 0px;
--mb-content-border-radius: 0px;
--mb-is-navigation-inside-content: 0;
 
/* Dropdown variables */
--mb-navigation-dropdown-border-width: 1px;
--mb-navigation-dropdown-border-color: var(--theme-border-color);
--mb-navigation-dropdown-border-radius: 4px;
--mb-navigation-dropdown-background-color: var(--card-bg-main);
--mb-navigation-dropdown-background-opacity: 100%;
--mb-navigation-dropdown-box-shadow: var(--shadow-lg);
--mb-navigation-dropdown-padding: var(--spacing-sm) 0;
--mb-navigation-dropdown-offset: 4px;
--mb-navigation-dropdown-text-color: var(--theme-page-text-color);
--mb-navigation-dropdown-text-color--hover: var(--theme-link-color);
--mb-navigation-dropdown-item-padding: 8px 16px;
 
/* Search variables */
--mb-navigation-search-bottom-spacing: 3px;
--mb-navigation-search-font-size: 0.8125em;
--mb-navigation-search-height: 2em;
--mb-navigation-search-button-color: var(--theme-accent-color);
--mb-navigation-search-button-color-opacity: 80%;
--mb-navigation-search-button-color--hover: var(--theme-accent-color--hover);
--mb-navigation-search-button-color-opacity--hover: 95%;
 
/* Icon variables */
--mb-navigation-icon-size: 1em;
--mb-navigation-tab-padding-x--icon: 0.75em;
}
 
/* Light Theme */
:root body:not(.skin-vector-dark) {
/* ===== BASE COLORS ===== */
--theme-page-text-color: #1a2a2a;
--theme-page-text-color--inverse: #ffffff;
--theme-page-background-color: #f5fdfb;
/* Slightly darker for less glare */
--theme-page-background-color--rgb: 245, 253, 251;
--theme-page-background-color--secondary: #e8f5f3;
/* Better contrast: 13:1 */
--theme-page-background-color--secondary--rgb: 232, 245, 243;
 
/* ===== LINKS ===== */
--theme-link-color: #007d7a;
/* Darker for 7:1 contrast */
--theme-link-color--rgb: 0, 125, 122;
--theme-link-color--hover: #005652;
/* Even darker on hover */
--theme-link-color--visited: #4a5568;
/* Distinct visited state */
--theme-link-label-color: #00474a;
--mw-head-link-color: #007d7a;
--new-link-color: #00a3a3;
/* For "red links" - actually teal */
 
/* ===== ACCENTS ===== */
--theme-accent-color: #38b2ac;
/* More vibrant */
--theme-accent-color--rgb: 56, 178, 172;
--theme-accent-color--hover: #2c9c96;
/* Darker hover */
--theme-accent-label-color: #ffffff;
 
/* ===== BORDERS ===== */
--theme-border-color: #a1e9dc;
/* More visible */
--theme-border-color--rgb: 161, 233, 220;
--theme-border-color--subtle: #d1f5ee;
/* For subtle separators */
 
/* ===== STATUS COLORS (Enhanced for visibility) ===== */
--theme-alert-color: #d53f3f;
/* More vibrant red - 7:1 contrast */
--theme-alert-color--rgb: 213, 63, 63;
--theme-alert-color--hover: #b03030;
--theme-alert-color--secondary: #ffeaea;
/* Softer background */
--theme-alert-label: #ffffff;
 
--theme-warning-color: #c05621;
/* Warmer orange - 6.5:1 contrast */
--theme-warning-color--rgb: 192, 86, 33;
--theme-warning-color--secondary: #fff4e6;
--theme-warning-label: #1a2a2a;
/* Dark text on light background */
 
--theme-success-color: #2e8b57;
/* More distinct green - 7:1 contrast */
--theme-success-color--rgb: 46, 139, 87;
--theme-success-color--secondary: #e6f7ed;
--theme-success-label: #1a2a2a;
/* Dark text on light background */
 
--theme-message-color: #6b46c1;
/* More vibrant purple */
--theme-message-color--rgb: 107, 70, 193;
--theme-message-color--secondary: #f3f0ff;
--theme-message-label: #ffffff;
 
--theme-info-color: #3182ce;
/* Added info color */
--theme-info-color--secondary: #ebf8ff;
--theme-info-label: #1a2a2a;
 
/* ===== ALERT HIGHLIGHT ===== */
--theme-alert-highlight: #c53030;
--theme-alert-highlight--rgb: 197, 48, 48;
--theme-alert-highlight--hover: #e53e3e;
 
/* ===== CUSTOM VARIABLES ===== */
--theme-alt-text: #ffffff;
--theme-accent-bg: #e6fffa;
--theme-infobox-bg: #f0faf9;
/* Less harsh than pure white */
--theme-card-shadow: var(--shadow-sm);
--theme-card-shadow-hover: var(--shadow-md);
 
/* =====  CUSTOM COLORS ===== */
--color-player: #60d9c5;
--color-accent: #38b2ac;
--color-npc: #9f7aea;
--color-npc-secondary: #d6bcfa;
 
/* ===== CARD BACKGROUNDS ===== */
--card-bg-main: #ffffff;
--card-bg-sub: #e6fffa;
--card-bg-elevated: #ffffff;
--card-border-color: var(--theme-border-color);
 
/* ===== LETTER BACKGROUND ===== */
--letter-bg: #f0fff4;
--letter-border: #c6f6d5;
 
/* ===== USER HIGHLIGHTS ===== */
--custom-admin-highlight: #c05621;
--custom-contentmoderator-highlight: #6b46c1;
--custom-bot-color: #718096;
--custom-bot-font-style: italic;
 
/* ===== NAMED ACCENTS ===== */
--accent: var(--theme-accent-color);
--player: var(--color-player);
--npc: var(--color-npc);
 
/* ===== INPUTS ===== */
--input-bg: #ffffff;
--input-border: #cbd5e0;
--input-border-focus: var(--theme-accent-color);
--input-text: var(--theme-page-text-color);
--input-placeholder: #a0aec0;
 
/* ===== CODE & PRE ===== */
--code-bg: #f7fafc;
--code-border: #e2e8f0;
--code-text: var(--theme-page-text-color);
--pre-bg: #1a202c;
--pre-text: #e2e8f0;
 
/* ===== TABLE STYLES ===== */
--table-header-bg: #e6fffa;
--table-header-text: var(--theme-page-text-color);
--table-row-even: #f7fafc;
--table-row-odd: #ffffff;
--table-border: var(--theme-border-color);
}
 
/* Dark Theme */
:root .skin-vector-dark {
/* ===== BASE COLORS ===== */
--wiki-content-text-color: var(--theme-page-text-color, #e6f7f5);
--theme-page-text-color: #e6f7f5;
/* Warmer light color */
--theme-page-text-color--inverse: #1a202c;
--theme-page-background-color: rgba(22, 28, 36, 0.98);
/* Softer dark */
--theme-page-background-color--rgb: 22, 28, 36;
--theme-page-background-color--secondary: #2a363d;
/* Warmer, better contrast */
--theme-page-background-color--secondary--rgb: 42, 54, 61;
 
/* ===== LINKS ===== */
--theme-link-color: #5fd9cf;
/* Brighter for visibility */
--theme-link-color--rgb: 95, 217, 207;
--theme-link-color--hover: #81e6d9;
--theme-link-color--visited: #a0aec0;
--theme-link-label-color: #e6f7f5;
--mw-head-link-color: #5fd9cf;
--new-link-color: #4fd1c7;
/* For "red links" */
 
/* ===== ACCENTS ===== */
--theme-accent-color: #5fd9cf;
--theme-accent-color--rgb: 95, 217, 207;
--theme-accent-color--hover: #81e6d9;
--theme-accent-label-color: #1a202c;
 
/* ===== BORDERS ===== */
--theme-border-color: #4d6872;
/* More visible */
--theme-border-color--rgb: 77, 104, 114;
--theme-border-color--subtle: #3a5059;
 
/* ===== STATUS COLORS ===== */
--theme-alert-color: #fc8181;
--theme-alert-color--rgb: 252, 129, 129;
--theme-alert-color--hover: #feb2b2;
--theme-alert-color--secondary: #4a2626;
/* Darker background */
--theme-alert-label: #1a202c;
/* Dark text on light red */
 
--theme-warning-color: #f6ad55;
--theme-warning-color--rgb: 246, 173, 85;
--theme-warning-color--secondary: #4a3a20;
--theme-warning-label: #1a202c;
 
--theme-success-color: #68d391;
--theme-success-color--rgb: 104, 211, 145;
--theme-success-color--secondary: #22543d;
--theme-success-label: #1a202c;
 
--theme-message-color: #b794f4;
--theme-message-color--rgb: 183, 148, 244;
--theme-message-color--secondary: #3a3664;
--theme-message-label: #1a202c;
 
--theme-info-color: #63b3ed;
--theme-info-color--secondary: #2c5282;
--theme-info-label: #1a202c;
 
/* ===== CUSTOM VARIABLES ===== */
--theme-alt-text: #2d3748;
--theme-accent-bg: #2d3748;
--theme-infobox-bg: #2a363d;
--theme-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
--theme-card-shadow-hover: 0 4px 6px rgba(0, 0, 0, 0.4);
 
/* ===== CUSTOM COLORS ===== */
--color-player: #48b8aa;
--color-accent: #5fd9cf;
--color-npc: #b794f4;
--color-npc-secondary: #d6bcfa;
 
/* ===== CARD BACKGROUNDS ===== */
--card-bg-main: #2a363d;
--card-bg-sub: #3a464d;
--card-bg-elevated: #34444d;
--card-border-color: var(--theme-border-color);
 
/* ===== LETTER BACKGROUND ===== */
--letter-bg: #1a272b;
--letter-border: #2d4a3c;
 
/* ===== USER HIGHLIGHTS ===== */
--custom-admin-highlight: #f6ad55;
--custom-contentmoderator-highlight: #b794f4;
--custom-bot-color: #a0aec0;
--custom-bot-font-style: italic;
 
/* ===== ALERT HIGHLIGHT ===== */
--theme-alert-highlight: #e53e3e;
--theme-alert-highlight--rgb: 229, 62, 62;
--theme-alert-highlight--hover: #fc8181;
 
/* ===== NAMED ACCENTS ===== */
--accent: var(--theme-accent-color);
--player: var(--color-player);
--npc: var(--color-npc);
 
/* ===== INPUTS ===== */
--input-bg: #2d3748;
--input-border: #4a5568;
--input-border-focus: var(--theme-accent-color);
--input-text: var(--theme-page-text-color);
--input-placeholder: #718096;
 
/* ===== CODE & PRE ===== */
--code-bg: #2d3748;
--code-border: #4a5568;
--code-text: var(--theme-page-text-color);
--pre-bg: #1a202c;
--pre-text: #e2e8f0;
 
/* ===== TABLE STYLES ===== */
--table-header-bg: #2d4a4d;
--table-header-text: var(--theme-page-text-color);
--table-row-even: #2a363d;
--table-row-odd: #34444d;
--table-border: var(--theme-border-color);
}
 
/* ===== KEYFRAME ANIMATIONS ===== */
@keyframes pulse {
 
0%,
100% {
opacity: 1;
}
 
50% {
opacity: 0.5;
}
}
 
@keyframes spin {
from {
transform: rotate(0deg);
}
 
to {
transform: rotate(360deg);
}
}
 
@keyframes bounce {
 
0%,
100% {
transform: translateY(0);
}
 
50% {
transform: translateY(-10px);
}
}
 
/* ===== LINK STYLING ===== */
.mw-body a,
.mw-body-content a {
text-decoration: none;
transition: color var(--transition-fast) ease,
background-color var(--transition-fast) ease,
border-color var(--transition-fast) ease;
}
 
.mw-body a:not(.new):hover,
.mw-body-content a:not(.new):hover {
text-decoration: underline;
text-decoration-thickness: 2px;
text-underline-offset: 2px;
}
 
.mw-body a.new,
.mw-body a.new:visited,
.mw-body-content a.new {
color: var(--new-link-color) !important;
font-weight: var(--font-weight-semibold) !important;
border-bottom: 1px dashed rgba(0, 163, 163, 0.4) !important;
background-color: rgba(0, 163, 163, 0.08) !important;
padding: 1px 3px !important;
border-radius: var(--border-radius-sm) !important;
transition: all var(--transition-base) ease !important;
}
 
.mw-body a.new:hover,
.mw-body-content a.new:hover {
background-color: rgba(0, 163, 163, 0.15) !important;
border-bottom-style: solid !important;
text-decoration: none !important;
box-shadow: 0 1px 2px rgba(0, 163, 163, 0.2) !important;
}
 
/* Dark theme new links */
.skin-vector-dark .mw-body a.new,
.skin-vector-dark .mw-body a.new:visited,
.skin-vector-dark .mw-body-content a.new {
color: var(--new-link-color) !important;
background-color: rgba(79, 209, 199, 0.1) !important;
border-bottom-color: rgba(79, 209, 199, 0.5) !important;
}
 
/* ===== FOCUS STYLES ===== */
*:focus {
outline: var(--focus-ring-width) solid var(--focus-ring-color) !important;
outline-offset: var(--focus-ring-offset) !important;
border-radius: var(--border-radius-sm) !important;
}
 
*:focus:not(:focus-visible) {
outline: none !important;
}
 
*:focus-visible {
outline: var(--focus-ring-width) solid var(--focus-ring-color) !important;
outline-offset: var(--focus-ring-offset) !important;
border-radius: var(--border-radius-sm) !important;
}
 
/* ===== ACCESSIBILITY ENHANCEMENTS ===== */
@media (prefers-reduced-motion: reduce) {
:root {
--transition-fast: 0ms;
--transition-base: 0ms;
--transition-slow: 0ms;
}


/******************************************************************************************
* {
********************************* Start user-edit variables *******************************
animation-duration: 0.01ms !important;
******************************************************************************************/
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
}
}


/*****************************************
/* High contrast mode support */
****** START BASIC DESIGN VARIABLES ******
@media (prefers-contrast: high) {
----------------------------------------*/
:root body:not(.skin-vector-dark) {
:root {
--theme-link-color: #005652;
--wiki-sidebar-heading-font-family: 'Inter', 'Segoe UI', system-ui, sans-serif;
--theme-border-color: #1a2a2a;
--wiki-body-font-family: 'Inter', 'SF Pro Text', -apple-system, BlinkMacSystemFont, sans-serif;
--new-link-color: #007d7a;
--wiki-content-firstheading-font-family: 'Bebas Neue', 'Montserrat', sans-serif;
}
--wiki-content-border-radius: 2px;
 
--wiki-sidebar-border-radius: 4px;
:root .skin-vector-dark {
--theme-link-color: #81e6d9;
--theme-border-color: #718096;
--new-link-color: #4fd1c7;
}
 
.mw-body a.new,
.mw-body-content a.new {
border-bottom-width: 2px !important;
background-color: transparent !important;
}
}
 
/* ===== PRINT STYLES ===== */
@media print {
:root {
--theme-page-text-color: #000000;
--theme-page-background-color: #ffffff;
--theme-link-color: #000000;
}
 
a {
color: #000000 !important;
text-decoration: underline !important;
}
 
a.new::after {
content: " [new]";
font-size: smaller;
color: #666;
}
}
}
/*----------------------------------------
******* END BASIC DESIGN VARIABLES *******
*****************************************/


/*****************************************
/* ===== UTILITY CLASSES (Optional but helpful) ===== */
****** START BASIC COLOR VARIABLES *******
.visually-hidden {
----------------------------------------*/
position: absolute !important;
:root,
width: 1px !important;
/* Begin light styles, delete from here to "end light styles" if you don't want your wiki to support any light themes (remove from [[Mediawiki:Theme-definitions]] too, or ask wiki.gg staff for help doing this) */
height: 1px !important;
/* FYI: .view- will affect any theme marked |kind=light, */
padding: 0 !important;
/* individual themes are prefixed with .theme- instead  */
margin: -1px !important;
.view-light {
overflow: hidden !important;
/**********************
clip: rect(0, 0, 0, 0) !important;
* Probably edit these * [ LIGHT VIEW ]
white-space: nowrap !important;
***********************/
border: 0 !important;
--wiki-body-background-color: #F8F4E9 ;
}
--wiki-body-background-image: url(filepath://FGS-Wiki-background-light.png);


--wiki-content-background-color: #FDFDF8;
.text-truncate {
--wiki-content-background-opacity: 95%;
overflow: hidden;
--wiki-content-border-color: #D4C9B8;  
text-overflow: ellipsis;
--wiki-content-link-color: #8B5A3C;  
white-space: nowrap;
}
/* [ LIGHT VIEW ] */
--wiki-accent-color: #4A6B2F;
--wiki-accent-label-color: #ffffff;
--wiki-accent-link-color: #3A2619;


--wiki-icon-to-link-filter: invert(20%) sepia(93%) saturate(2141%) hue-rotate(210deg) brightness(83%) contrast(103%); /* put your --wiki-content-link-color into https://mrpie5.gitlab.io/css-filter-generator/ */
.text-balance {
/**/
text-wrap: balance;
  /**********************
    * Mainbox Header Colors - Light Theme *
    ***********************/
    --mainbox-header-bg: #2E5C3A;
    --mainbox-header-text: #FFFFFF;
    --mainbox-header-border: #1E3A27;
}
}


/* end light styles */
.shadow-subtle {
box-shadow: var(--shadow-sm);
}


/* Begin dark styles, delete from here to "end dark styles" if you don't want your wiki to support any dark themes (remove it from [[Mediawiki:Theme-definitions]] too, or ask wiki.gg staff for help doing this) */
.shadow-elevated {
/* FYI: .view- will affect any theme marked |kind=dark, */
box-shadow: var(--shadow-md);
/* individual themes are prefixed with .theme- instead  */
.view-dark {
/**********************
* Probably edit these * [ DARK VIEW ]
***********************/
--wiki-body-background-color: #1A120B;
--wiki-body-background-image: url(filepath://FGS-Wiki-background-dark.png);
--wiki-content-background-color: #25180F;
--wiki-content-background-opacity: 95%;
--wiki-content-border-color: #3A2C1F;
--wiki-content-link-color: #D4A76A;
/* [ DARK VIEW ] */
--wiki-accent-color: #9BCF7B;
--wiki-accent-label-color: #1A120B;
--wiki-accent-link-color: #C8B299;
--wiki-icon-to-link-filter: invert(60%) sepia(70%) saturate(3715%) hue-rotate(206deg) brightness(101%) contrast(97%); /* put your --wiki-content-link-color into https://mrpie5.gitlab.io/css-filter-generator/ */
/**/
    /**********************
    * Mainbox Header Colors - Dark Theme *
    ***********************/
    --mainbox-header-bg: #E14A1C;
    --mainbox-header-text: #1A120B;
    --mainbox-header-border: #B33715;
}
}


/* End dark styles */
.card {
background-color: var(--card-bg-main);
border-radius: var(--border-radius-md);
border: 1px solid var(--card-border-color);
box-shadow: var(--theme-card-shadow);
transition: all var(--transition-base) ease;
}


/*----------------------------------------
.card:hover {
******* END BASIC COLOR VARIABLES ********
box-shadow: var(--theme-card-shadow-hover);
*****************************************/
transform: translateY(-2px);
}


/*****************************************
.status-alert {
**** START ADVANCED COLOR VARIABLES ******
background-color: var(--theme-alert-color--secondary);
----------------------------------------*/
color: var(--theme-alert-color);
border-left: 4px solid var(--theme-alert-color);
}


:root,
.status-warning {
.view-light {
background-color: var(--theme-warning-color--secondary);
/*******************
color: var(--theme-warning-color);
* Maybe edit these * [ LIGHT VIEW ]
border-left: 4px solid var(--theme-warning-color);
********************/
}
--wiki-body-background-position: top center;
--wiki-body-background-size: cover;
--wiki-body-background-repeat: no-repeat;
--wiki-body-background-attachment: fixed;


--wiki-content-background-color--secondary: color-mix(in srgb, var(--wiki-content-background-color) 80%, var(--wiki-content-dynamic-color));
.status-success {
--wiki-content-text-color: #2D2D2D;
background-color: var(--theme-success-color--secondary);
--wiki-content-link-color--visited: color-mix(in srgb, var(--wiki-content-link-color) 95%, #734C32);
color: var(--theme-success-color);
--wiki-content-link-color--hover: #2E5C3A;  
border-left: 4px solid var(--theme-success-color);
--wiki-content-redlink-color: #A80000;
}


--wiki-content-heading-color: #1A1A1A;
.status-info {
/* Slightly darker for better hierarchy */
background-color: var(--theme-info-color--secondary);
--wiki-content-heading-border-color: var(--wiki-content-border-color);
color: var(--theme-info-color);
border-left: 4px solid var(--theme-info-color);
}


/* [ LIGHT VIEW ] */
/* Typography improvements */
--wiki-navigation-background-color: #3A2619;
h1,
--wiki-navigation-border-color: var(--wiki-navigation-selected-border-color);
h2,
--wiki-navigation-text-color: #F5F0E6;
h3,
--wiki-navigation-selected-background-color: #4A3D32;
h4,
--wiki-navigation-selected-border-color: #E14A1C;
h5,
--wiki-navigation-selected-text-color: #FFFFFF;
h6,
.mw-body,
.editOptions,
.ace-tm,
.vector-menu-heading,
.ace_cursor,
.vector-menu-content-list>a,
.vector-menu-heading-label {
color: var(--theme-page-text-color);
}


/* [ LIGHT VIEW ] */
.vector-menu-heading-label {
--wiki-neutral-color: var(--wiki-content-text-mix-color);
font-size: 0.8125em;
--wiki-alert-color: #A80015;
}
--wiki-warning-color: #9B542A;
--wiki-success-color: #0A6529;
/**/
/***********************************
* Likely do not need to edit these *  [ LIGHT VIEW ]
************************************/
--wiki-body-dynamic-color: #000000;
--wiki-body-dynamic-color--inverted: #ffffff;
--wiki-body-dynamic-color--secondary: #333333;
--wiki-body-dynamic-color--secondary--inverted: #cccccc;


--wiki-content-border-color--secondary: color-mix(in srgb, var(--wiki-content-border-color) 50%, transparent);
/* Footer and panels */
--wiki-content-border-color--accent: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent);
.mw-footer,
--wiki-content-link-label-color: #ffffff;
.editOptions,
--wiki-content-dynamic-color: #000000;
.ace-tm,
--wiki-content-dynamic-color--inverted: #ffffff;
#mw-panel .vector-menu-heading {
--wiki-content-dynamic-color--secondary: #333333;
background-color: var(--theme-page-background-color--secondary) !important;
--wiki-content-dynamic-color--secondary--inverted: #cccccc;
}
/* [ LIGHT VIEW ] */
--wiki-alert-label-color: #ffffff;
--wiki-warning-label-color: #ffffff;
--wiki-success-label-color: #ffffff;


--wiki-icon-general-filter: ; /* do not set this to none, ignore the "unexpected token" error */
/* Sidebar and lists */
/**/
.ace-tm .ace_gutter,
.selected.mw-list-item,
#mw-panel .vector-menu-content-list {
background-color: var(--theme-page-background-color--secondary) !important;
color: var(--theme-page-text-color);
}
}


.view-dark {
/* Notification improvements */
/*******************
.skin-vector-dark #mw-notification-area.mw-notification.mw-notification-type-error,
* Maybe edit these * [ DARK VIEW ]
.skin-vector-dark .postedit.mw-notification.mw-notification-type-error,
********************/
.skin-vector-dark .wds-table-td-alert {
--wiki-body-background-position: top center;
background-color: var(--theme-alert-highlight);
--wiki-body-background-size: cover;
color: var(--theme-alert-label);
--wiki-body-background-repeat: no-repeat;
}
--wiki-body-background-attachment: fixed;


--wiki-content-background-color--secondary: color-mix(in srgb, var(--wiki-content-background-color) 96%, var(--wiki-content-dynamic-color));
.text-error {
--wiki-content-text-color: #E8E6E1;
color: var(--theme-alert-highlight);
--wiki-content-link-color--visited: color-mix(in srgb, var(--wiki-content-link-color) 95%, #B8860B);
}
--wiki-content-link-color--hover: #FF6B35;
--wiki-content-redlink-color: #FF6B5B;


--wiki-content-heading-color: var(--wiki-content-text-color);
.diff td.diff-addedline {
--wiki-content-heading-border-color: var(--wiki-content-border-color);
background-color: var(--teal-050);
border-color: var(--theme-success-color);
border-width: 1px 1px 1px 4px;
color: var(--theme-success-color);
}


/* [ DARK VIEW ] */
.diff td.diff-addedline .diffchange {
--wiki-navigation-background-color: #1A120B;  
background-color: var(--theme-success-color);
--wiki-navigation-border-color: var(--wiki-navigation-selected-border-color);
color: var(--theme-success-label);
--wiki-navigation-text-color: #E8E6E1;  
font-weight: normal;
--wiki-navigation-selected-background-color: #2D1F14;  
}
--wiki-navigation-selected-border-color: #FF7B45;
 
--wiki-navigation-selected-text-color: #FFFFFF;
.diff td.diff-deletedline {
background-color: var(--theme-alert-color--secondary);
border-color: var(--theme-alert-color);
border-width: 1px 1px 1px 4px;
color: var(--theme-alert-color);
}
 
.diff td.diff-deletedline .diffchange {
background-color: var(--theme-alert-color);
color: var(--theme-alert-label);
font-weight: normal;
}
 
.diff td.diff-context {
background: transparent;
border-color: var(--theme-border-color);
color: var(--theme-page-text-color);
}
 
/* CodeMirror */
.CodeMirror .CodeMirror-scroll {
background: var(--theme-page-background-color);
color: var(--theme-page-text-color);
}


/* [ DARK VIEW ] */
.CodeMirror .CodeMirror-linenumber,
--wiki-neutral-color: var(--wiki-content-text-mix-color);
.CodeMirror .CodeMirror-gutters {
--wiki-alert-color: #FF6B7A;
background: var(--theme-page-background-color--secondary);
--wiki-warning-color: #E17D35;
color: var(--theme-page-text-color);
--wiki-success-color: #15B845;
border-right: 1px solid var(--theme-border-color);
/**/
}


/***********************************
/* Color template improvements */
* Likely do not need to edit these * [ DARK VIEW ]
.text-player,
************************************/
.text-player * {
--wiki-body-dynamic-color: #ffffff;
color: var(--color-player);
--wiki-body-dynamic-color--inverted: #000000;
font-weight: 600;
--wiki-body-dynamic-color--secondary: #cccccc;
}
--wiki-body-dynamic-color--secondary--inverted: #333333;


--wiki-content-border-color--secondary: color-mix(in srgb, var(--wiki-content-border-color) 50%, transparent);
.bg-player {
--wiki-content-border-color--accent: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent);
background-color: var(--color-player);
--wiki-content-link-label-color: #000;
color: var(--theme-page-text-color--inverse);
--wiki-content-dynamic-color: #ffffff;
padding: 2px 6px;
--wiki-content-dynamic-color--inverted: #000000;
border-radius: 3px;
--wiki-content-dynamic-color--secondary: #cccccc;
}
--wiki-content-dynamic-color--secondary--inverted: #333333;
/* [ DARK VIEW ] */
--wiki-alert-label-color: #000000;
--wiki-warning-label-color: #000000;
--wiki-success-label-color: #000000;


--wiki-icon-general-filter: invert(100%);
.text-accent,
.text-accent * {
color: var(--color-accent);
font-weight: 600;
}
}


/*----------------------------------------
.bg-accent {
***** END ADVANCED COLOR VARIABLES *******
background-color: var(--color-accent);
*****************************************/
color: var(--theme-accent-label-color);
padding: 2px 6px;
border-radius: 3px;
}


/*****************************************
/* User highlights - improved contrast */
**** START ADVANCED DESIGN VARIABLES *****
a[href="https://mbwiki.stairwaygames.work/wiki/User:Ais"],
----------------------------------------*/
a[href="/wiki/User:Ais"],
a[href="/wiki/Special:Contributions/Ais"] {
color: var(--custom-admin-highlight);
font-weight: 600;
}


:root {
/* Bots */
/***********************
a[href="https://coralisland.wiki/wiki/User:NoriBot"],
  start logo position
a[href="/wiki/User:NoriBot"],
----------------------*/
a[href="/wiki/Special:Contributions/NoriBot"],
--wiki-is-top-logo: 0; /* 1 = center logo at the top of the page; 0 = logo at the top left of the page */
a[href="https://coralisland.wiki/wiki/User:VoirBot"],
a[href="/wiki/User:VoirBot"],
--wiki-logo-file-width: 160; /* Width of the image file in px. Put a number without the letters `px`. */
a[href="/wiki/Special:Contributions/VoirBot"] {
--wiki-logo-file-height: 160; /* Height of the image file in px. Put a number without the letters `px`. */
color: var(--custom-bot-color);
--wiki-logo-height: calc(var(--wiki-logo-file-height)*1px); /* Valid only when --wiki-is-top-logo is 1. The height the logo should be shown */
font-style: var(--custom-bot-font-style);
--wiki-logo-margin: 15px; /* the width of margin below the logo. When --wiki-is-top-logo is 1, this is also the default value of --wiki-top-spacing */
opacity: 0.9;
/*-----------------------
}
  end logo position
 
***********************/
/* Additional improvements for better readability */
.mw-body-content {
--wiki-is-navigation-inside-content: 0; /* 0 = default navigation tabs layout; 1 = navigation tabs inside content box */
line-height: 1.6;
}
 
/* Improve contrast for links */
a {
transition: color 0.2s ease;
}
 
a:hover {
text-decoration: underline;
}
 
/* Improve table readability */
.mw-parser-output table {
background-color: var(--theme-page-background-color);
border: none;
}
 
.mw-parser-output table th {
background-color: var(--theme-page-background-color--secondary);
}
 
.mw-parser-output table td {
border: none;
}


--wiki-body-font-family: sans-serif;
body.skin-vector-dark {
--wiki-content-firstheading-font-family: var(--wiki-content-heading-font-family); /* only apply to the main title of article */
/*background: url("https://coralwiki.stairwaygames.com/w/images/9/9a/Site-background-dark.png") no-repeat fixed center center / cover !important;*/
background-color: #0f1419 !important;
background-image: radial-gradient(circle at top,
#1a2a2a 0%,
#0f1419 100%) !important;
}


/****** the following length variables must have units specified even if 0, ignore the warning *****/
.mobileHide,
.mobile-only,
--wiki-content-border-width: 1px;
.no-desktop {
--wiki-sidebar-width: 10em; /* width of sidebar(#mw-panel) */
display: none !important;
--wiki-sidebar-portal-spacing: 2px;
}
--wiki-sidebar-border-width: var(--wiki-content-border-width);
--wiki-navigation-border-radius: 6px; /* border radius of tabs */


/*******************
/* || FIXES */
* Maybe edit these * [ DESIGN ]
.wikiEditor-ui-text>.ui-resizable {
********************/
width: 100% !important;
max-width: 100%;
--wiki-logo-filter: none;
}
/****** the following length variables must have units specified even if 0, ignore the warning *****/
--wiki-content-border-top-radius: var(--wiki-content-border-radius);
--wiki-content-border-style: solid;
--wiki-content-border-image: none;
--wiki-content-backdrop-filter: none;
--wiki-page-content-max-width: 9999px; /* max width of sidebar+gap+content, must be a length value. A huge value can be used to indicate no limit, e.g. 99999px */
--wiki-gap-between-sidebar-and-content: 1em; /* gap between sidebar(#mw-panel) and content(#content) */
--wiki-sidebar-font-size: 0.75em; /* please use em or rem for this */
--wiki-sidebar-line-height: 1.125;
--wiki-sidebar-heading-font-size: 0.75em; /* please use em or rem for this */
--wiki-sidebar-margin: 0em;
--wiki-sidebar-list-item-padding: 0.25em 0.25rem;
--wiki-sidebar-list-padding: 0.25rem;
--wiki-sidebar-list-item-background--hover: none; /* background of hover item */


--wiki-navigation-font-size: 0.8125em; /* please use em or rem for this */
ul {
--wiki-navigation-font-weight: normal;
list-style: disc;
--wiki-navigation-text-transform: none;
}
--wiki-navigation-height: 2.75rem; /* height of navigation area,include spacing above tabs */
 
--wiki-navigation-left-spacing: calc( (1 - var(--wiki-is-navigation-inside-content))*var(--wiki-content-border-radius) + var(--wiki-is-navigation-inside-content) * 0.5rem );
h2 .mw-headline,
--wiki-navigation-right-spacing: calc( var(--wiki-is-navigation-inside-content) * 0.5rem );
h3 .mw-headline,
--wiki-navigation-box-background-color: var(--wiki-content-background-color);
h4 .mw-headline {
--wiki-navigation-box-background-opacity: calc(var(--wiki-content-background-opacity)*0.8*var(--wiki-is-navigation-inside-content));
font-weight: 500;
--wiki-navigation-box-background: color-mix(in srgb, var(--wiki-navigation-box-background-color) var(--wiki-navigation-box-background-opacity), transparent); /* usually only needed when --wiki-is-navigation-inside-content is 1 */
}
--wiki-navigation-box-border-image: none; /* usually only needed when --wiki-is-navigation-inside-content is 1 */
--wiki-navigation-box-backdrop-filter: none; /* usually only needed when --wiki-is-navigation-inside-content is 1 */
--wiki-navigation-selected-backdrop-filter: var(--wiki-content-backdrop-filter);  /* usually only needed when --wiki-is-navigation-inside-content is 0 */
--wiki-navigation-backdrop-filter: var(--wiki-navigation-selected-backdrop-filter);  /* usually only needed when --wiki-is-navigation-inside-content is 0 */
/* nav tabs style. The vector gradient is default.
* If you want to customize the style of tabs, it's easier to start with the following settings:
*    --wiki-navigation-background-image: none;
*    --wiki-navigation-selected-background-image: none;
*    --wiki-navigation-selected-border-width: calc( (1 - var(--wiki-is-navigation-inside-content))*var(--wiki-content-border-width) + var(--wiki-is-navigation-inside-content) * 1px );
*    --wiki-navigation-selected-border-bottom-background: none;
*    --wiki-navigation-tab-spacing: 0.25em;
*    --wiki-navigation-tab-padding-top: 0.5em;
*    --wiki-navigation-tab-padding-bottom: 0.5em;
*/
--wiki-navigation-tab-spacing: -1px; /* width of the space between tabs, can be a negative number, in which case adjacent tabs will overlap  */
--wiki-navigation-tab-padding-top: 1.25em;
--wiki-navigation-tab-padding-x: 0.75em;
--wiki-navigation-tab-padding-bottom: 4px;
--wiki-navigation-selected-border-width: 0px; /* border width of selected tabs */
--wiki-navigation-border-width: var(--wiki-navigation-selected-border-width); /* border width of normal tabs */
--wiki-navigation-border-image: none;
--wiki-navigation-selected-border-image: var(--wiki-navigation-border-image);
--wiki-navigation-background-image: linear-gradient(to bottom,transparent 0,var(--wiki-content-border-color) 100%), linear-gradient(to bottom,transparent 0,var(--wiki-content-border-color) 100%), linear-gradient(to top,var(--wiki-navigation-background-color) 0,var(--wiki-navigation-selected-background-color) 100%);
--wiki-navigation-background-repeat: no-repeat, no-repeat, repeat-x;
--wiki-navigation-background-position: left bottom, right bottom, left bottom;
--wiki-navigation-background-size:  1px 100%, 1px 100%, 100%;
--wiki-navigation-selected-background-image: linear-gradient(to bottom,transparent 0,var(--wiki-content-border-color) 100%), linear-gradient(to bottom,transparent 0,var(--wiki-content-border-color) 100%);
--wiki-navigation-selected-background-repeat: no-repeat, no-repeat;
--wiki-navigation-selected-background-position: left bottom, right bottom;
--wiki-navigation-selected-background-size:  1px 100%, 1px 100%;
--wiki-navigation-selected-border-bottom-background: linear-gradient(to right, var(--wiki-content-border-color) 0, var(--wiki-content-border-color) 1px, transparent 1px), linear-gradient(to left, var(--wiki-content-border-color) 0, var(--wiki-content-border-color) 1px, transparent 1px);
/* affects the dropdown menu under More */
--wiki-navigation-dropdown-text-color: var(--wiki-navigation-text-color);
--wiki-navigation-dropdown-text-color--hover: var(--wiki-navigation-dropdown-text-color);
--wiki-navigation-dropdown-font-size: var(--wiki-navigation-font-size); /* please use em or rem for this */
--wiki-navigation-dropdown-border-width: 1px;
--wiki-navigation-dropdown-border-radius: var(--wiki-navigation-border-radius);
--wiki-navigation-dropdown-padding: 0.25em; /* padding of the dropdown menu box */
--wiki-navigation-dropdown-item-padding: 0.625em; /* padding of each dropdown menu items */
--wiki-navigation-dropdown-item-background--hover: none; /* background of hover item */
--wiki-navigation-dropdown-border-image: none;
--wiki-navigation-dropdown-backdrop-filter: none;
--wiki-navigation-dropdown-box-shadow: none; /* box shadow */
/* styles of the footer */
--wiki-spacing-before-footer: 0px;
--wiki-footer-border-image: none;


/* padding on body element */
.vector-body h3,
--wiki-top-spacing: calc(var(--wiki-is-top-logo)*var(--wiki-logo-margin) + (1 - var(--wiki-is-top-logo))*1em); /* extra spacing below wiki.gg netbar */
.vector-body h4,
--wiki-left-spacing: 1em;
.vector-body h5,
--wiki-right-spacing: 1em;
.vector-body h6 {
--wiki-bottom-spacing: 2em;
margin-bottom: 4px;
}


/* end design variables */
a,
a:visited,
a:active,
.mw-parser-output a:is(.external, .external:visited, .external:active) {
color: var(--theme-link-color);
}
}


/*----------------------------------------
#mw-head .vector-menu-content-list .mw-list-item :is(a, a:visited, a:active) {
***** END ADVANCED DESIGN VARIABLES ******
color: var(--mw-head-link-color, var(--theme-page-text-color));
*****************************************/
}


#mw-panel .vector-menu-content-list .mw-list-item :is(a, a:visited, a:active) {
color: var(--theme-link-color);
}


/*******************************
.mw-parser-output a.external {
**** START SHARED VARIABLES ****
padding-right: 0;
**** tl;dr: don't edit this ****
font-size: inherit;
********************************/
}
/*
These variables are rarely touched, usually inherit other variables, and are shared on all themes.
In 99% of cases none of these are ever edited, and you should only be doing so if you have a very clear vision,
understand what you are doing, and *know* that what you are trying to do is not accomplished by changing
another variable in the above sections.
Since these are by default shared across all themes, if you support multiple themes you'll probably want to
separate the variables you want to modify here into .view-x blocks like above. If you don't understand
what that means or how to do that then you probably shouldn't be modifying this section.
*/
:root {
--wiki-content-border-bottom-width: var(--wiki-content-border-width);
--wiki-content-border-bottom-style: var(--wiki-content-border-style);
--wiki-content-border-bottom-color: var(--wiki-content-border-color);
--wiki-content-text-mix-color: color-mix(in srgb, var(--wiki-content-background-color), var(--wiki-content-text-color) 62%);
--wiki-content-text-mix-color-95: color-mix(in srgb, var(--wiki-content-background-color) 95%, var(--wiki-content-text-color));
--wiki-content-text-color--hover: var(--wiki-content-text-color);


/* heading */
.catlinks {
--wiki-content-heading-border-bottom-width: 1px;
border-color: var(--theme-border-color);
--wiki-content-heading-border-style: solid;
border-radius: 6px;
--wiki-content-heading-font-weight: bold;
background-color: var(--gray-050);
--wiki-content-heading-font-style: normal;
}
--wiki-content-heading-text-transform: none;
--wiki-content-heading-line-height: normal;
--wiki-content-heading-text-shadow: none;
/* first heading (h1) */
--wiki-content-firstheading-border-bottom-width: var(--wiki-content-heading-border-bottom-width);
--wiki-content-firstheading-border-style: var(--wiki-content-heading-border-style);
--wiki-content-firstheading-border-color: var(--wiki-content-heading-border-color);
--wiki-content-firstheading-font-weight: var(--wiki-content-heading-font-weight);
--wiki-content-firstheading-font-style: var(--wiki-content-heading-font-style);
--wiki-content-firstheading-text-transform: var(--wiki-content-heading-text-transform);
--wiki-content-firstheading-line-height: var(--wiki-content-heading-line-height);
--wiki-content-firstheading-color: var(--wiki-content-heading-color);
--wiki-content-firstheading-text-shadow: none;
/* sub-heading (h3, h4, h5, h6) */
--wiki-content-subheading-border-bottom-width: 0px;
--wiki-content-subheading-border-style: var(--wiki-content-heading-border-style);
--wiki-content-subheading-border-color: var(--wiki-content-heading-border-color);
--wiki-content-subheading-font-family: var(--wiki-body-font-family);
--wiki-content-subheading-font-weight: bold;
--wiki-content-subheading-font-style: normal;
--wiki-content-subheading-text-transform: none;
--wiki-content-subheading-line-height: var(--wiki-content-heading-line-height);
--wiki-content-subheading-color: var(--wiki-content-heading-color);
--wiki-content-subheading-text-shadow: none;
/* heading size */
--wiki-content-firstheading-font-size: 1.8em;
--wiki-content-heading-h2-font-size: 1.5em;
--wiki-content-heading-h3-font-size: 1.2em;
--wiki-content-heading-h4-font-size: 114%;
--wiki-content-heading-h5-font-size: 108%;
--wiki-content-heading-h6-font-size: 100%;


--wiki-content-toc-background: var(--wiki-content-background-color--secondary);
.CodeMirror-lines span {
--wiki-content-toc-border-width: 1px;
font: 14px Consolas, Eupheima UCAS, Monaco, Menlo, monospace;
--wiki-content-toc-border-style: solid;
/* Source Editor */
--wiki-content-toc-border-color: var(--wiki-content-border-color);
}
--wiki-content-toc-border-radius: 0px;
--wiki-content-toc-border-image: none;
--wiki-content-toc-box-shadow: 0 0.1em 0.2em #000000;


--wiki-content-catlinks-background: var(--wiki-content-background-color--secondary);
.wikiEditor-ui .ace_editor * {
--wiki-content-catlinks-border-width: 1px;
font-size: 13px;
--wiki-content-catlinks-border-style: solid;
font-family: monospace, monospace;
--wiki-content-catlinks-border-color: var(--wiki-content-border-color);
/* Module */
--wiki-content-catlinks-border-radius: 0px;
}
--wiki-content-catlinks-border-image: none;
--wiki-content-catlinks-box-shadow: none;


--wiki-content-filetoc-background: var(--wiki-content-background-color--secondary);
.mw-input .mw-abusefilter-editor * {
--wiki-content-filetoc-border-width: 1px;
font-size: 13px;
--wiki-content-filetoc-border-style: solid;
font-family: monospace, monospace;
--wiki-content-filetoc-border-color: var(--wiki-content-border-color);
}
--wiki-content-filetoc-border-radius: 0px;
--wiki-content-filetoc-border-image: none;
--wiki-content-filetoc-box-shadow: none;


--wiki-logo-offset-x: 0px;
/* Hide default TOOLBOX nav section on sidebar */
--wiki-logo-offset-y: 0px;
#mw-navigation>#mw-panel>#p-tb {
display: none;
--wiki-sidebar-padding: 0px;
}
--wiki-sidebar-background-color: var(--wiki-content-background-color);
--wiki-sidebar-background-opacity: var(--wiki-content-background-opacity);
--wiki-sidebar-background-image: none;
--wiki-sidebar-background-position: center;
--wiki-sidebar-background-repeat: repeat;
--wiki-sidebar-background-size: auto;
--wiki-sidebar-box-shadow: none;
--wiki-sidebar-filter: none;
--wiki-sidebar-backdrop-filter: var(--wiki-content-backdrop-filter);
--wiki-sidebar-border-color: var(--wiki-content-border-color);
--wiki-sidebar-border-style: solid;
--wiki-sidebar-border-image: none;
--wiki-sidebar-link-color: var(--wiki-content-link-color);
--wiki-sidebar-link-color--hover: var(--wiki-content-link-color--hover);
--wiki-sidebar-heading-color: var(--wiki-content-heading-color);
--wiki-sidebar-heading-font-weight: normal;
--wiki-sidebar-heading-font-style: normal;
--wiki-sidebar-heading-text-transform: none;
--wiki-sidebar-heading-line-height: normal;
--wiki-sidebar-heading-padding: 0.5rem 0.25rem 0.5rem 0.5rem;
--wiki-sidebar-heading-margin: 0px 0px -0.5rem 0px;
--wiki-sidebar-heading-background: none;
--wiki-sidebar-heading-border-image: none;
--wiki-sidebar-heading-text-shadow: none;
--wiki-sidebar-list-background: none;
--wiki-sidebar-list-border-image: none;
--wiki-sidebar-list-margin: 0px;
--wiki-sidebar-list-item-background: none;
--wiki-sidebar-list-item-border-image: none;
--wiki-sidebar-list-item-background--hover: none;
--wiki-sidebar-list-item-border-image--hover: none;
--wiki-sidebar-list-item-spacing: 0px;
--wiki-sidebar-icon-to-link-filter: var(--wiki-icon-to-link-filter);
--wiki-sidebar-offset: 0px; /* Vertical offset */
--wiki-sidebar-box-padding: 0px;
--wiki-sidebar-box-background: none;
--wiki-sidebar-box-border: 0px;
--wiki-sidebar-box-border-image: none;
--wiki-accent-color--hover: color-mix(in srgb, var(--wiki-accent-color) 90%, var(--wiki-accent-label-color));


--wiki-footer-border-width: var(--wiki-content-border-width);
/* Column template fix */
--wiki-footer-border-style: var(--wiki-content-border-style);
.columntemplate ul,
--wiki-footer-border-color: var(--wiki-content-border-color);
.columntemplate ol {
--wiki-footer-background-color: var(--wiki-content-background-color);
margin-top: 0;
--wiki-footer-background-opacity: var(--wiki-content-background-opacity);
}
--wiki-footer-backdrop-filter: var(--wiki-content-backdrop-filter);
--wiki-footer-text-color: var(--wiki-content-text-color);
--wiki-footer-link-color: var(--wiki-content-link-color);
--wiki-footer-link-color--hover: var(--wiki-content-link-color--hover);
--wiki-footer-border-radius: var(--wiki-content-border-radius);


--wiki-navigation-background-opacity: var(--wiki-navigation-selected-background-opacity);
/* RC */
--wiki-navigation-background-color--hover: var(--wiki-navigation-background-color);
.mw-changeslist table {
--wiki-navigation-background-opacity--hover: var(--wiki-navigation-background-opacity);
width: unset;
--wiki-navigation-background-image--hover: var(--wiki-navigation-background-image);
}
--wiki-navigation-background-position--hover: var(--wiki-navigation-background-position);
--wiki-navigation-background-repeat--hover: var(--wiki-navigation-background-repeat);
--wiki-navigation-background-size--hover: var(--wiki-navigation-background-size);
--wiki-navigation-text-color--hover: var(--wiki-content-link-color--hover);
--wiki-navigation-transform--hover: none;
--wiki-navigation-selected-border-style: solid;
--wiki-navigation-selected-background-opacity: var(--wiki-content-background-opacity);
--wiki-navigation-border-style: solid;
--wiki-navigation-border-color--hover: var(--wiki-navigation-border-color);
--wiki-navigation-border-image--hover: var(--wiki-navigation-border-image);
--wiki-navigation-border-bottom-color: var(--wiki-navigation-selected-border-color);
--wiki-navigation-border-bottom-style: var(--wiki-navigation-selected-border-style);
--wiki-navigation-border-bottom-width: calc(var(--wiki-is-navigation-inside-content, 0) * var(--wiki-navigation-selected-border-width, 1px) + (1 - var(--wiki-is-navigation-inside-content, 0)) * var(--wiki-content-border-width, 1px));
--wiki-navigation-icon-size: 1em;
--wiki-navigation-tab-padding-x--icon: var(--wiki-navigation-tab-padding-x);
--wiki-navigation-bottom-spacing: 0px; /* If you change this to greater than 0px, you should usually change the value of --wiki-navigation-selected-border-bottom-background to var(--wiki-navigation-border-bottom-color) */


--wiki-navigation-dropdown-background-color: var(--wiki-content-background-color);
.gift-table .icon-list-container {
--wiki-navigation-dropdown-background-opacity: var(--wiki-content-background-opacity);
width: auto;
--wiki-navigation-dropdown-border-color: var(--wiki-navigation-border-color);
}
--wiki-navigation-dropdown-offset: 0px; /* vertical offset */


--wiki-navigation-search-background-color: var(--wiki-content-background-color--secondary);
/* Quote template */
--wiki-navigation-search-background-image: none;
.quotetable {
--wiki-navigation-search-background-position: 0;
width: auto;
--wiki-navigation-search-background-size: auto;
--wiki-navigation-search-background-repeat: repeat;
--wiki-navigation-search-backdrop-filter: none;
--wiki-navigation-search-border-color: var(--wiki-navigation-border-color);
--wiki-navigation-search-border-color--hover: var(--wiki-accent-color);
--wiki-navigation-search-border-style: solid;
--wiki-navigation-search-border-width: 1px;
--wiki-navigation-search-border-radius: 4px;
--wiki-navigation-search-border-image: none;
--wiki-navigation-search-border-image--hover: var(--wiki-navigation-search-border-image);
--wiki-navigation-search-box-shadow: none;
--wiki-navigation-search-box-shadow--hover: var(--wiki-navigation-search-box-shadow);
--wiki-navigation-search-text-color: var(--wiki-content-text-color);
--wiki-navigation-search-font-size: var(--wiki-navigation-font-size);
--wiki-navigation-search-height: 2em;
--wiki-navigation-search-button-color: currentColor;
--wiki-navigation-search-button-color--hover: var(--wiki-navigation-search-button-color);
--wiki-navigation-search-button-color-opacity: 80%;
--wiki-navigation-search-button-color-opacity--hover: 95%;
--wiki-navigation-search-bottom-spacing: 3px;
--wiki-navigation-search-highlight-background-color: color-mix(in srgb, var(--wiki-accent-color) 5%, transparent);
--wiki-navigation-gap-between-left-and-right: calc(max(0px, var(--wiki-navigation-tab-spacing))); /* minimum width between #left-navigation and #right-navigation before tabs start to collapse */
}
}


/*** mobile adjustments ***/
.Bug6200 {
@media screen and (max-width: 720px) {
margin-bottom: 0.75em;
body.has-vector-mobile-menu{
--wiki-sidebar-offset: 0px; /* Vertical offset */
--wiki-sidebar-margin: 0px;
--wiki-sidebar-heading-background: none;
--wiki-sidebar-heading-border-image: none;
--wiki-sidebar-heading-margin: 0px 0px -0.5em 0px;
--wiki-sidebar-list-margin: 0px;
--wiki-sidebar-list-background: none;
--wiki-sidebar-list-border-image: none;
--wiki-sidebar-list-item-background: none;
--wiki-sidebar-list-item-border-image: none;
--wiki-sidebar-list-item-background--hover: none;
--wiki-sidebar-list-item-border-image--hover: none;
--wiki-sidebar-list-item-spacing: 0px;
--wiki-sidebar-line-height: 1.125;
--wiki-sidebar-background-opacity: 100%;
--wiki-navigation-search-border-width: 1px;
--wiki-logo-offset-x: 0px;
--wiki-logo-offset-y: 0px;
}
}
}


/* Code block */
code,
pre {
background-color: var(--theme-page-background-color--secondary);
color: var(--theme-page-text-color);
border: 1px solid var(--theme-border-color);
border-radius: 2px;
padding: 1px 4px;
font-family: monospace, monospace;
font-size: 13px;
}


/*****************************
code.code-block-table {
**** END SHARED VARIABLES ****
display: table;
******************************/
line-height: 21px;
padding: 8px;
}


/******************************************************************************************
.code-block-table * {
********************************* End user-edit variables *********************************
font: 14px Consolas, Eupheima UCAS, Monaco, Menlo, monospace;
******************************************************************************************/
}


/******************************
.code-block {
* Fallback for older browsers *
display: inline-block;
* DONT EDIT THIS              *
line-height: 21px;
*******************************/
@supports not (color:color-mix(in srgb, #000, transparent)) {
.view-dark,
.view-light,
:root {
--wiki-content-text-mix-color: var(--wiki-content-text-color);
--wiki-content-text-mix-color-95: var(--wiki-content-background-color);
--wiki-content-background-color--secondary: var(--wiki-content-dynamic-color--secondary--inverted);
--wiki-content-border-color--secondary: var(--wiki-content-border-color);
--wiki-content-border-color--accent: var(--wiki-accent-color);
--wiki-accent-color--hover: var(--wiki-accent-color);
--wiki-navigation-search-highlight-background-color: transparent;
}
}
}


/*****************************
/* || MAIN PAGE */
* End older browser fallback *
/*banner links*/
******************************/
.banner-links a {
color: #ffffff !important;
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8) !important;
font-weight: 600 !important;
}


/*****************************
/* mp-banner */
*    PortableInfoboxes      *
#mp-banner {
******************************/
position: absolute;
:root {
width: 100%;
--pi-background: var(--wiki-content-background-color);
height: 10%;
--pi-secondary-background: var(--wiki-accent-color);
filter: blur(0px);
--pi-secondary-background-label: var(--wiki-accent-label-color);
z-index: -1;
--pi-border-color: color-mix(in srgb, var(--pi-secondary-background) 50%, transparent);
background: url(filepath://Temporary-banner-top.jpg) top center/cover no-repeat;
background-color: #000000;
background-size: cover;
background-repeat: no-repeat;
background-position: top center;
}
 
body.page-Main_Page.action-view h1.firstHeading,
body.page-Main_Page.action-submit h1.firstHeading {
display: none;
}
}


.portable-infobox .pi-title,
body.page-Main_Page.action-view .main-page-top {
.portable-infobox .pi-header {
/* background-image: url(https://coralwiki.stairwaygames.com/w/images/c/c2/441Cover_image_only.png); */
background-color: var(--theme-page-background-color--secondary, #000000);
background-repeat: no-repeat;
background-size: cover;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
gap: 4px;
color: #fffff;
text-align: center;
text-align: center;
font-size: 2em;
align-items: center;
background: color-mix(in srgb, var(--pi-secondary-background) 75%, transparent);
}
color: var(--pi-secondary-background-label);
 
/* ||TABLE OF CONTENTS */
.toc {
padding: 8px 12px;
border-radius: 4px;
background-color: var(--theme-page-background-color--secondary);
border: 1px solid var(--theme-border-color);
margin-top: 16px;
}
 
.toctogglelabel {
color: var(--theme-link-color);
}
 
.tocnumber {
color: var(--theme-page-text-color);
}
 
.vector-body .toc h2 {
font-family: var(--font-family-headings);
font-weight: bold;
}
 
/* TOC hide headings */
.toclimit-2 .toclevel-1 ul,
.toclimit-3 .toclevel-2 ul,
.toclimit-4 .toclevel-3 ul,
.toclimit-5 .toclevel-4 ul,
.toclimit-6 .toclevel-5 ul,
.toclimit-7 .toclevel-6 ul {
display: none;
}
 
/* For Template:Changelist */
.changelist-header {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 88%;
margin: 0.3em 0;
}
 
.changelist-content {
overflow: auto;
max-height: 384px;
padding: 1em;
box-sizing: border-box;
-moz-box-sizing: border-box;
-moz-border-radius-topleft: 0.5em;
background: transparent;
border-radius: 6px;
}
 
.changelist-border {
border: 1px solid var(--theme-border-color);
border-left: 6px solid var(--accent);
}
 
/* For Template:Chat */
.chat-wrapper {
display: flex;
flex-direction: column;
}
 
.chat-player,
.chat-npc {
display: flex;
flex-direction: row;
gap: 0.5em;
}
 
.chat-player-speaker {
white-space: nowrap;
min-width: 70px;
color: rgb(105, 172, 82);
}
 
.chat-npc-speaker {
white-space: nowrap;
min-width: 70px;
color: rgb(237, 123, 103);
}
 
/* Hatnote */
.hatnote {
display: flex;
align-items: center;
padding: 10px 15px;
margin-top: 0.6rem;
margin-bottom: 0.8rem;
background-color: var(--color-surface-2);
border: 1px solid var(--border-color-base--darker);
border-radius: var(--border-radius-base);
color: var(--color-base--emphasized);
font-size: 0.875rem;
line-height: 1.4;
}
 
.hatnote-icon img {
width: 14px;
height: auto;
margin-right: 10px;
opacity: var(--opacity-icon-base);
}
 
.hatnote.hatnote-high {
background-color: var(--background-color-destructive-subtle);
border-color: var(--color-destructive);
}
 
.hatnote.hatnote-medium {
background-color: var(--background-color-warning-subtle);
border-color: var(--color-warning);
}
}


.portable-infobox .pi-data,
.hatnote.hatnote-low {
.portable-infobox .pi-group {
background-color: var(--color-surface-2);
background: var(--wiki-content-background-color--secondary);
}
}


.portable-infobox .pi-image {
/* Dark mode */
padding: 8px;
html.skin-citizen-dark .hatnote-icon img {
filter: invert(1);
}
}


.pi-image-thumbnail {
/* For [[Module:Formatting]] */
max-width: 100%;
code.code-block {
display: inline-block;
line-height: 21px;
}
}
.pi-image img {
 
    width: 128px;
code.code-block-table {
    height: 141px;
display: table;
    display: block;
line-height: 21px;
    margin: 0 auto;  
}
}


.pi-caption {
span.variable {
color: var(--wiki-content-text-mix-color);
opacity: 0.65;
}
}


.pi-section-navigation .pi-section-tab.pi-section-active,
span.variable::after {
.pi-section-navigation .pi-section-tab.current,
opacity: 0.65;
.pi-media-collection .pi-tab-link.current {
content: ">";
background: var(--pi-secondary-background);
color: var(--pi-secondary-background-label);
}
}


.pi-collapse > .pi-item:first-child {
span.variable::before {
cursor: pointer;
opacity: 0.65;
content: "<";
}
}


/* overqualify these to overwrite normal content heading styles */
/* Quote */
.mw-body .portable-infobox h2,
 
.mw-body .portable-infobox h3 {
.pull-quote {
border-bottom: 0;
font-style: italic;
font-family: inherit;
font-weight: 700;
margin: 0;
margin: 0;
padding: 0 30px 8px !important;
}
}
/* Portable Infobox Style */
 
.infobox-right,
.pull-quote::before {
.infobox-enemy {
color: var(--accent);
  float: right;
content: "“";
  clear: right;
display: block;
  width: 300px;
font-size: 96px;
  max-width: 100%;
font-style: normal;
  margin: 0 0 1em 1em;
line-height: 72px;
  display: block;
margin: 4px 0 -45px -5px;
  background: var(--body-light);
  border: 1px solid var(--body-border);
  box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
  word-break: break-word;
}
}


.infobox-right .pi-title,
.pull-quote__source::before {
.infobox-enemy .pi-title {
content: "— ";
  text-align: center;
margin-bottom: 8px;
  font-size: 2em;
  background: color-mix(
    in srgb,
    var(--pi-secondary-background) 75%,
    transparent
  );
  color: var(--pi-secondary-background-label);
  padding: 12px;
  margin: 0;
  border-radius: 5px 5px 0 0;
}
}


.infobox-right .pi-data,
.pull-quote__text {
.infobox-enemy .pi-data {
margin-bottom: 4px;
  background: var(--wiki-content-background-color--secondary);
  padding: 10px 15px;
}
}


.infobox-right .pi-data:nth-child(even),
/* Gallery */
.infobox-enemy .pi-data:nth-child(even) {
.gallerytext {
  background: var(--pi-background);
text-align: center;
font-size: 100%;
}
 
/* Fix to Template Data */
.mw-templatedata-doc-params>*>tr>th {
width: 150px;
}
}
@media (max-width: 768px) {
 
  .infobox-right,
.mw-templatedata-doc-params {
  .infobox-enemy {
width: auto;
    float: none;
max-width: 100%;
    margin: 1em auto;
}
    width: 90%;
 
    max-width: 300px;
/* Space sidebar arrows properly */
  }
#mw-panel.collapsible-nav .portal:is(.collapsed, .expanded) .vector-menu-heading {
background-position: 95% center;
}
 
/* Theme toggle */
.wds-icon {
align-self: center;
margin: 0 6px;
pointer-events: none;
fill: currentColor;
}
 
.wds-icon-small {
height: 18px;
min-width: 18px;
width: 18px;
}
 
#p-personal .vector-menu-content-list {
display: flex;
flex-wrap: wrap;
gap: 0.45em;
font-size: 0.9em;
}
 
.cols {
background-color: var(--theme-page-background-color--secondary);
}
}


/*****************************
#pagehistory li.selected {
*  End PortableInfoboxes    *
background-color: var(--theme-page-background-color--secondary);
******************************/
color: var(--theme-page-text-color);
/*******************
outline: 1px dashed var(--theme-border-color);
* Main page layout *
********************/
.banner-links a {
    color: #FFFFFF !important;
    text-shadow: 0 1px 3px rgba(0,0,0,0.8) !important;
    font-weight: 600 !important;
}
}
/* ===== IMproved Main Page Framework CSS ===== */
#mp-container {
#mp-container {
display: grid;
display: grid;
gap: 10px;
gap: 20px;
clear:both; /* for .mw-indicators combined with NOTITLE */
margin: 20px 0;
width: 100%;
min-width: 100%;
}
 
/* Desktop layout */
#mp-container {
grid-template-areas: var(--main-page-layout--desktop, "");
grid-template-columns: var(--main-page-layout-columns--desktop,
repeat(3, 1fr));
}
}


@media screen and (max-width: 990px) {
/* Tablet layout */
/* for mobile screens */
@media (max-width: 1024px) {
#mp-container {
#mp-container {
grid-template-areas:var(--main-page-layout--mobile);
grid-template-areas: var(--main-page-layout--tablet,
grid-template-columns:var(--main-page-layout-columns--mobile, 100%);
var(--main-page-layout--desktop, ""));
grid-template-columns: var(--main-page-layout-columns--tablet,
var(--main-page-layout-columns--desktop, repeat(2, 1fr)));
}
}
}


.mp-box.mp-hide-on-mobile {
/* Mobile layout */
display: none;
@media (max-width: 768px) {
#mp-container {
grid-template-areas: var(--main-page-layout--mobile,
var(--main-page-layout--tablet, var(--main-page-layout--desktop, "")));
grid-template-columns: var(--main-page-layout-columns--mobile,
var(--main-page-layout-columns--tablet,
var(--main-page-layout-columns--desktop, 1fr)));
}
}
}
}


@media screen and (min-width: 990px) and (max-width: 1350px) {
/* Social Links Improvements */
/* for narrow screens, between 990px and 1350px */
/* Clean social links styling -  theme colors */
#mp-container {
.social {
grid-template-areas:var(--main-page-layout--tablet);
position: relative;
grid-template-columns:var(--main-page-layout-columns--tablet, 1fr 1fr);
z-index: 999;
text-align: center;
margin: 20px auto;
padding: 15px 0;
max-width: 85%;
backdrop-filter: blur;
background: var(--theme-page-background-color--secondary);
border-radius: 12px;
border: 1px solid var(--theme-border-color);
box-shadow: var(--shadow-sm);
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 15px;
}
 
/* Each social link item */
.social .iconname {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 180px;
padding: 12px 20px;
background: var(--theme-page-background-color);
border-radius: 8px;
border: 1px solid var(--theme-border-color);
transition: all 0.3s ease;
flex: 1;
max-width: 200px;
}
 
/* Hover effect */
.social .iconname:hover {
background: var(--theme-accent-bg) !important;
transform: translateY(-2px);
box-shadow: var(--shadow-md);
border-color: var(--theme-accent-color);
}
 
/* The link inside - uses theme colors */
.social .iconname a.external {
display: flex !important;
align-items: center !important;
text-decoration: none !important;
color: var(--theme-page-text-color) !important;
font-weight: var(--font-weight-medium) !important;
width: 100%;
height: 100%;
padding: 0;
margin: 0;
}
 
/* Hover text color */
.social .iconname:hover a.external {
color: var(--theme-link-color) !important;
}
 
/* Icon container */
.social .iconname .floatleft {
display: flex !important;
align-items: center !important;
margin-right: 10px !important;
margin-bottom: 0 !important;
float: none !important;
}
 
/* Icon image - no filter, keep original */
.social .iconname .floatleft a img {
width: 20px !important;
height: 20px !important;
margin: 0 !important;
padding: 0 !important;
display: block !important;
/* Remove filter - keep original icon colors */
filter: none !important;
}
 
/* Text next to icon */
.social .iconname .external-text {
display: inline !important;
margin: 0 !important;
padding: 0 !important;
line-height: 1.4 !important;
}
 
/* Responsive design */
@media (max-width: 1024px) {
.social {
max-width: 95% !important;
gap: 10px;
}
}


.mp-box.mp-hide-on-tablet {
.social .iconname {
display: none;
min-width: 160px;
padding: 10px 15px;
}
}
}
}


@media screen and (min-width: 1350px) {
@media (max-width: 768px) {
/* for all other screens, 1350px and wider */
.social {
#mp-container {
flex-direction: column;
grid-template-areas:var(--main-page-layout--desktop);
gap: 8px;
grid-template-columns:var(--main-page-layout-columns--desktop, 2fr 1fr 2fr);
max-width: 100% !important;
padding: 10px;
}
 
.social .iconname {
width: 100% !important;
max-width: 100% !important;
min-width: auto !important;
justify-content: flex-start;
padding: 10px 20px;
}
}


.mp-box.mp-hide-on-desktop {
.social .iconname a.external {
display: none;
justify-content: flex-start;
}
}
}
}


.mp-box {
/* Main Page Layout */
.game-intro-card {
background: var(--card-bg-main);
border-radius: var(--border-radius-lg);
border: 1px solid var(--theme-border-color);
overflow: hidden;
box-shadow: var(--shadow-md);
margin-bottom: var(--spacing-lg);
transition: all var(--transition-base) ease;
position: relative;
position: relative;
/* For better z-index control */
}
.game-intro-card:hover {
box-shadow: var(--shadow-lg);
transform: translateY(-2px);
border-color: var(--teal-300);
}
.game-header {
background: linear-gradient(90deg, var(--teal-700) 0%, var(--teal-900) 100%);
padding: var(--spacing-md) var(--spacing-lg);
display: flex;
display: flex;
flex-flow: column nowrap;
flex-direction: column;
width: 100%;
position: relative;
box-sizing: border-box;
background: color-mix(in srgb, var(--wiki-content-background-color--secondary) 25%, transparent);
border: 0px solid var(--wiki-content-border-color);
border-radius: 8px;
overflow: hidden;
padding: 0px;
}
}


.mp-body {
.game-header::after {
height: 100%;
content: "";
display: flex;
position: absolute;
padding: 0.5em;
top: 0;
flex-flow: column nowrap;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(45deg,
transparent 0%,
rgba(255, 255, 255, 0.05) 50%,
transparent 100%);
pointer-events: none;
}
}


.mp-box.centered-content .mp-body {
.mana-text,
height: 100%;
.mana-text h2 {
display: flex;
font-size: 1.8em;
flex-flow: column nowrap;
font-weight: 900;
justify-content: space-evenly;
letter-spacing: 2px;
color: #fff;
text-shadow: 0 0 10px rgba(162, 242, 225, 0.5), 0 2px 4px rgba(0, 0, 0, 0.3);
position: relative;
z-index: 1;
margin: 0;
text-decoration: none !important;
/* Add this line */
border-bottom: none !important;
/* Ensure no border */
}
}


.mp-box.has-floating-image {
.game-intro-card h2,
display: block;
.game-intro-card .mana-text,
.game-header h2 {
text-decoration: none !important;
border-bottom: none !important;
}
}


.mp-box.has-floating-image .mp-body {
.mana-line {
height: unset;
height: 3px;
display: block;
width: 100px;
background: var(--teal-200);
margin-top: var(--spacing-xs);
border-radius: 2px;
transition: width var(--transition-base) ease;
}
}


.mp-box.header-only {
.game-intro-card:hover .mana-line {
border-bottom-width:0px;
width: 107px;
}
}


.mp-box.header-only .mp-body {
.game-content {
display:none;
padding: var(--spacing-lg);
line-height: 1.6;
color: var(--theme-page-text-color);
}
}


.mp-box.missing .mw-inputbox-input {
/* Grid-based approach for perfect alignment */
/* max-width doesn't override the input element's 'size' property, but that property does work as a max-width itself, so we can set width:100% for the same effect */
.updates-list.grid-style,
width:100% !important;
.game-content ul.grid-style {
display: grid;
gap: 4px;
padding-left: 0;
}
}


/* overqualified to override normal heading styles */
.updates-list.grid-style li,
.mw-body .mp-box h2 {
.game-content ul.grid-style li {
text-align: center;
display: grid;
font-weight: bold;
grid-template-columns: 20px 1fr;
font-family: var(--wiki-content-heading-font-family);
align-items: center;
overflow: initial;
gap: 8px;
border: 1px solid #F15A22;
padding: 4px 0;
border-radius: 2px;
font-size: 150%;
    margin: 0.5em auto 0 auto;
padding: 12px 20px;
color: var(--wiki-content-heading-color);
background: var(--wiki-content-background-color);
box-shadow:  
0 0 10px rgba(241, 90, 34, 0.3), /*glow*/
0 0 20px rgba(241, 90, 34, 0.2), /*glow*/
0 0 30px rgba(241, 90, 34, 0.1); /*glow*/
display: inline-block;
width: fit-content;
max-width: 100%;
justify-content: center;
}
}


#mp-box-welcome {
.updates-list.grid-style li::before,
.game-content ul.grid-style li::before {
position: static;
transform: none;
left: auto;
top: auto;
grid-column: 1;
text-align: center;
text-align: center;
position: relative;
overflow: hidden;
}
}


#mp-box-welcome h2 {
.updates-list.grid-style li span,
font-size: 200%;
.game-content ul.grid-style li span {
grid-column: 2;
}
}


#mp-welcome {
.game-content a {
display: flex;
color: var(--theme-link-color);
flex-flow: column nowrap;
text-decoration: none;
font-weight: 600;
transition: all var(--transition-fast) ease;
position: relative;
position: relative;
height: 100%;
z-index: 2;
box-sizing: border-box;
}
}


#mp-welcome .welcome-subtitle {
.game-content a:hover {
    background: rgba(26, 18, 11, 0.6);
text-decoration: underline;
    backdrop-filter: blur(2px);
text-underline-offset: 3px;
    padding: 0.5em 1em;
/* Better underline positioning */
    border-radius: 6px;
    display: inline-block;
}
}
#mp-welcome p[style*="color:#FFFFFF"] {
 
    text-shadow: 2px 2px 8px rgba(0,0,0,0.8), 0 0 12px rgba(0,0,0,0.6) !important;
.game-content a::after {
content: "";
position: absolute;
bottom: -2px;
left: 0;
width: 0;
height: 2px;
background: var(--teal-300);
transition: width var(--transition-fast) ease;
}
}
#mp-banner {
 
position: absolute;
.game-content a:hover::after {
width: 100%;
width: 100%;
height: 100%;
filter: blur(0px);
z-index: -1;
background: url(filepath://Funguys_Swarm_Banner.png) top center/cover no-repeat;
background-size: cover;
background-repeat: no-repeat;
background-position: top center;
}
}


.view-dark #mp-banner {
/* Responsive adjustments - refined */
filter: blur(0px) brightness(65%) contrast(120%);
@media (max-width: 768px) {
.game-intro-card {
margin: var(--spacing-sm);
border-radius: var(--border-radius-md);
}
 
.game-header {
padding: var(--spacing-sm) var(--spacing-md);
}
 
.mana-text {
font-size: 1.5em;
letter-spacing: 1px;
}
 
.mana-line {
width: 40px;
}
 
.game-content {
padding: var(--spacing-md);
}
 
.game-content,
.updates-list li {
font-size: 1em;
}
 
.updates-list,
.game-content ul {
padding-left: var(--spacing-md);
}
 
.updates-list li:before,
.game-content li:before {
left: calc(-1 * var(--spacing-md));
}
}
 
/* Dark theme adjustments - refined */
.skin-vector-dark .game-intro-card {
background: var(--card-bg-elevated);
}
}


.view-light #mp-banner {
.skin-vector-dark .game-header {
filter: blur(0px) brightness(90%) contrast(120%);
background: linear-gradient(90deg,
color-mix(in srgb, var(--teal-700) 80%, black 20%) 0%,
color-mix(in srgb, var(--teal-900) 80%, black 20%) 100%);
}
}
/*Edit for template FGS wiki*/
 
/* Notes Styling */
.skin-vector-dark .mana-text {
.notes-container {
text-shadow: 0 0 10px rgba(95, 217, 207, 0.4), 0 2px 4px rgba(0, 0, 0, 0.5);
  display: inline-block;
  background: none;
  border-left: 4px solid #36c;
  padding: 4px 8px;
  margin: 0 0 10px 0;
  font-style: italic;
  font-size: 0.95em;
  width: auto;
  max-width: 100%;
  box-sizing: border-box;
  vertical-align: middle;
}
}


.skin-vector-dark .updates-list li:before,
.skin-vector-dark .game-content li:before {
color: var(--teal-400);
}


/* Quotes Styling */
/* Focus states for accessibility */
.quotes-box {
.game-content a:focus {
  border: 1px solid #434242;
outline: 2px solid var(--focus-ring-color);
  border-left: 8px solid #eab759 !important;
outline-offset: 2px;
  border-radius: 2px;
border-radius: 2px;
  padding: 15px;
  margin: 1em 0 1.5em;
  font-family: serif;
  font-size: 1em;
  width: 50%;
  max-width: 450px;
  line-height: 1.5em;
  background: rgba(255, 255, 255, 0.05);
  margin-left: 200px;
  display: flex;
  flex-direction: row;
}
}


.quotes-box blockquote {
/* Reduced motion support */
  margin: 0;
@media (prefers-reduced-motion: reduce) {
  font-style: italic;
 
  text-align: center;
.game-intro-card,
.game-intro-card:hover,
.mana-line,
.updates-list li,
.updates-list li:before,
.game-content li,
.game-content li:before,
.game-content a,
.game-content a::after {
transition: none;
}
 
.game-intro-card:hover {
transform: none;
}
}
}


body {
font-family: Helvetica, Arial, sans-serif !important;
background-color: @background-color-secondary;
/* background: url("https://mbwiki.stairwaygames.work/w/images/3/3d/384Web_background.png")*/
background-color: rgba(0, 0, 0, 0.1) !important;
overflow-y: scroll;
}


.quotes-box blockquote {
ul {
    margin: 0;
list-style: none;
    font-style: italic;
}
}
/* Wrap Content */
 
.content-wrapper {
.wikitable,
  vertical-align: top;
.scheduletable {
  align-items: flex-start;
    width: auto;
    min-width: 300px;
    max-width: 100%;
    margin: 1.5em auto;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid var(--theme-border-color);
    background-color: var(--card-bg-main);
    border-radius: var(--border-radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    table-layout: auto;  
}
}
.content-wrapper::after {
 
  content: "";
.fishtable {
  display: table;
table-layout: auto;
  clear: both;
width: 100%;
}
}
/* Contents Left */
 
.contents-left {
.artisan-table {
  float: left;
table-layout: auto;
  width: 65%;
width: 60%;
  margin-right: 5%;
border-spacing: 0;
  margin-bottom: 20px;
max-width: 100%;
margin: 15px;
border: 1px solid gray;
}
}
/* Mainbox Styling V001*/
 
/* Global Main Box ItemList Style Settings */
.artisan-table>tr>th,
.mainbox-itemlist {
.artisan-table>*>tr>th {
    margin-bottom: 0;  
background-color: #e7c361 !important;
    height: 100%;  
max-width: fit-content;
}
}


.mainbox-header {
.artisan-table>tr>th,
    padding: 12px;
.artisan-table>tr>td,
    font-weight: bold;
.artisan-table>*>tr>th,
    text-align: center;
.artisan-table>*>tr>td {
    border: 1px solid var(--mainbox-header-border, #A0522D);
border: 1px solid #a2a9b1;
    background-color: var(--mainbox-header-bg, #8B4513);
padding: 0.2em 0.4em;
    color: var(--mainbox-header-text, #FFFFFF);
    margin-bottom: 1px;
}
}


.mainbox-links {
.quotetable {
    display: grid;
border-spacing: 0;
    grid-template-columns: 1fr;
width: 100%;
    gap: 1px;
max-width: 100%;
    border: 1px solid #A0522D;
    height: calc(100% - 50px);  
}
}


.mainbox-link {
.quotetable>caption {
    padding: 6px;
text-align: left;
    text-align: center;
    border: none;
    color: var(--wiki-content-link-color);
}
}


.mainbox-link:hover {
.heart {
    background-color: color-mix(in srgb, var(--wiki-content-link-color--hover) 15%, transparent);
margin-left: -7px;
    color: var(--wiki-content-link-color--hover);
margin-bottom: 5px;
    border-left: 3px solid var(--wiki-content-link-color--hover);
    padding-left: 8px;
    transform: translateX(2px);
    font-weight: 600;
}
}


.mainbox-grid-layout {
.quotetable>tbody>tr>td {
    display: grid;
padding: 0;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    width: 100%;
}
}


.mainbox-grid-layout > .mainbox-itemlist {
blockquote {
    display: flex;
margin: 0 10px;
    flex-direction: column;
}
}
.mainbox-links-horizontal {
 
    border: 1px solid #8B4513;
.detail-list ul {
    padding: 8px;
list-style: none;
    text-align: center;
}
}


.mainbox-links-horizontal .mainbox-link {
caption .mw-collapsible-toggle,
    display: inline-block;
.mw-content-ltr caption .mw-collapsible-toggle,
    padding: 8px 12px;
.mw-content-rtl caption .mw-collapsible-toggle,
    text-align: center;
.mw-content-rtl .mw-content-ltr caption .mw-collapsible-toggle,
    border: none;
.mw-content-ltr .mw-content-rtl caption .mw-collapsible-toggle {
    margin: 4px;
float: right;
    color: var(--wiki-content-link-color);
}
}


.mainbox-links-horizontal .mainbox-link:hover {
body.page-Main_Page.action-view h1.firstHeading,
    background-color: color-mix(in srgb, var(--wiki-content-link-color--hover) 15%, transparent);
body.page-Main_Page.action-submit h1.firstHeading {
    color: var(--wiki-content-link-color--hover);
display: none;
    border-left: 3px solid var(--wiki-content-link-color--hover);
    padding-left: 8px;
    transform: translateX(2px);
    font-weight: 600;
}
}
/* Regular content links burning effect */
 
.mw-body a:not(.new) {
.ci-letter-wrapper {
    transition: color 0.3s ease, text-shadow 0.3s ease;
border-radius: 20px;
padding: 20px;
max-width: 35em;
font-weight: 700;
background: #faf3ea;
}
}


.mw-body a:not(.new):hover {
.ci-letter-header {
    color: var(--wiki-content-link-color--hover);
padding-bottom: 28px;
    text-shadow: 0 0 6px color-mix(in srgb, var(--wiki-content-link-color--hover) 40%, transparent);
}
}
/* End of Mainbox Styling*/
 
/* === CARDGRID MODULE STYLES === */
.ci-letter-content {
/* These styles are for the CardGrid module */
font-weight: 400;
.cardgrid-container {
    background: var(--wiki-content-background-color--secondary);
    border: 1px solid var(--wiki-content-border-color);
    border-radius: 8px;
    padding: 25px;
    margin: 2em 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
}


.cardgrid-header {
.ci-letter-footer {
    text-align: center;
display: flex;
    margin-bottom: 30px;
padding-top: 28px;
    padding-bottom: 20px;
justify-content: space-between;
    border-bottom: 3px solid var(--wiki-accent-color);
font-weight: 700;
align-items: center;
}
 
.ci-letter-attachment {
max-width: 70%;
}
}


.cardgrid-header h2 {
.card-list-container {
    color: var(--wiki-content-heading-color);
display: flex;
    margin: 0 0 10px 0;
flex-wrap: wrap;
    font-size: 2em;
gap: 5px;
    font-weight: 700;
}
}


.cardgrid-subtitle {
.custom-card {
    color: var(--wiki-content-text-color);
display: inline-block;
    font-size: 1.1em;
position: relative;
    max-width: 800px;
width: fit-content;
    margin: 0 auto;
align-self: baseline;
    line-height: 1.6;
}
}


/* === GRID LAYOUT - THIS IS CRITICAL === */
.custom-card-body {
.cardgrid-grid {
display: inline-block;
    display: grid !important;
position: relative;
    grid-template-columns: repeat(3, 1fr) !important;
width: fit-content;
    gap: 25px !important;
align-self: baseline;
    width: 100% !important;
background: #f6e6cf;
border-radius: 12px;
text-align: center;
overflow: hidden;
}
}


@media (max-width: 1200px) {
.custom-card-image {
    .cardgrid-grid {
width: 60px;
        grid-template-columns: repeat(2, 1fr) !important;
height: 60px;
    }
padding: 4px;
}
}


@media (max-width: 768px) {
.custom-card-amount {
    .cardgrid-grid {
background: #e9cda2;
        grid-template-columns: 1fr !important;
text-align: center;
        gap: 20px !important;
border-radius: 0 0 5px 5px;
    }
padding: 4px 0;
white-space: nowrap;
line-height: 1;
font-size: 12px;
hyphens: auto;
overflow-wrap: break-word;
}
}


/* Section headers */
.custom-card-caption {
.cardgrid-section {
width: 56px;
    grid-column: 1 / -1;
text-align: center;
    margin: 40px 0 20px 0;
line-height: 1;
    padding-bottom: 15px;
font-size: 12px;
    border-bottom: 2px solid var(--wiki-accent-color);
hyphens: auto;
overflow-wrap: break-word;
}
}


.cardgrid-section:first-child {
/* ===== IMPROVED WIKITABLE STYLES ===== */
     margin-top: 0;
 
/* Base wikitable - consolidated and improved */
.wikitable {
    width: 100%;
    margin: 1.5em 0;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--table-border, var(--theme-border-color));
    background-color: var(--card-bg-main, #ffffff);
    border-radius: var(--border-radius-md, 8px);
    overflow: hidden;
     box-shadow: var(--shadow-sm);
    transition: all var(--transition-base);
}
}


.cardgrid-section h3 {
/* Header styling */
     color: var(--wiki-content-heading-color);
.wikitable > tr > th,
     margin: 0;
.wikitable > * > tr > th {
     font-size: 1.5em;
    background: linear-gradient(135deg,
     font-weight: 600;
        var(--teal-600, #2c7a7b) 0%,
        var(--teal-700, #285e61) 100%) !important;
     color: var(--theme-accent-label-color, #ffffff) !important;
    font-weight: var(--font-weight-semibold, 600);
     padding: 0.75rem 1rem !important;
    border-bottom: 2px solid var(--teal-800, #234e52) !important;
    text-align: center;
    vertical-align: middle;
     font-size: 0.95em;
     letter-spacing: 0.3px;
    position: relative;
}
}


/* Individual cards */
/* Add subtle hover effect to headers */
.cardgrid-card {
.wikitable > tr > th:hover,
     background: var(--wiki-content-background-color);
.wikitable > * > tr > th:hover {
    border: 1px solid var(--wiki-content-border-color--secondary);
     background: linear-gradient(135deg,
    border-radius: 10px;
        var(--teal-500, #319795) 0%,
    padding: 20px;
        var(--teal-600, #2c7a7b) 100%) !important;
    border-left: 6px solid;
    min-height: 320px;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
}


.cardgrid-card:hover {
/* Cell styling - improved readability */
     transform: translateY(-5px);
.wikitable > tr > td,
     box-shadow: 0 10px 25px rgba(0,0,0,0.1);
.wikitable > * > tr > td {
    padding: 0.75rem 1rem !important;
    border-bottom: 1px solid var(--theme-border-color--subtle, #e2e8f0);
    vertical-align: middle;
     color: var(--theme-page-text-color);
     transition: background-color var(--transition-fast);
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}
}


.cardgrid-card-header {
/* Striped rows for better readability */
    display: flex;
.wikitable > tr:nth-child(even):not(:first-child),
    align-items: center;
.wikitable > * > tr:nth-child(even):not(:first-child) {
    gap: 15px;
     background-color: var(--table-row-even, rgba(56, 178, 172, 0.03));
     margin-bottom: 15px;
}
}


.cardgrid-icon {
.wikitable > tr:nth-child(odd):not(:first-child),
    width: 70px;
.wikitable > * > tr:nth-child(odd):not(:first-child) {
    height: 70px;
     background-color: var(--table-row-odd, rgba(56, 178, 172, 0.01));
    border-radius: 50%;
    display: flex;
     align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
}


.cardgrid-icon-inner {
/* Hover effect for rows */
    width: 60px;
.wikitable > tr:hover:not(:first-child),
    height: 60px;
.wikitable > * > tr:hover:not(:first-child) {
    border-radius: 50%;
     background-color: rgba(56, 178, 172, 0.08) !important;
    background: white;
    display: flex;
    align-items: center;
     justify-content: center;
    overflow: hidden;
}
}


.cardgrid-title {
/* First column styling (often labels) */
    margin: 0;
.wikitable > tr > td:first-child,
    font-size: 1.3em;
.wikitable > * > tr > td:first-child,
     font-weight: 700;
.wikitable > tr > th:first-child,
    line-height: 1.3;
.wikitable > * > tr > th:first-child {
     flex-grow: 1;
     font-weight: var(--font-weight-medium, 500);
     border-left: 3px solid transparent;
}
}


.cardgrid-content {
/* Highlight first column on hover */
    flex-grow: 1;
.wikitable > tr:hover:not(:first-child) > td:first-child,
     margin-bottom: 15px;
.wikitable > * > tr:hover:not(:first-child) > td:first-child {
    color: var(--wiki-content-text-color);
     border-left-color: var(--teal-300, #4fd1c7);
     line-height: 1.6;
     background-color: rgba(79, 209, 199, 0.1);
    font-size: 0.95em;
}
}


.cardgrid-content b {
/* Remove last row bottom border */
     font-weight: 700;
.wikitable > tr:last-child > td,
.wikitable > * > tr:last-child > td {
     border-bottom: none;
}
}


.cardgrid-footer {
/* Remove last cell right border */
    margin-top: auto;
.wikitable > tr > td:last-child,
    padding-top: 15px;
.wikitable > * > tr > td:last-child,
    border-top: 1px solid var(--wiki-content-border-color--secondary);
.wikitable > tr > th:last-child,
    font-size: 0.9em;
.wikitable > * > tr > th:last-child {
    text-transform: uppercase;
     border-right: none;
    letter-spacing: 0.5px;
     font-weight: 600;
}
}


/* Strategy section */
/* Caption styling */
.cardgrid-strategy {
.wikitable > caption {
     background: rgba(var(--wiki-accent-color-rgb), 0.05);
    caption-side: top;
     border-radius: 10px;
    padding: 0.875rem 1rem;
     padding: 25px;
     background: var(--teal-50, #e6fffa);
     margin-top: 40px;
    color: var(--teal-800, #234e52);
     border-left: 5px solid var(--wiki-accent-color);
    font-weight: var(--font-weight-semibold, 600);
     text-align: left;
     border-bottom: 1px solid var(--teal-200, #81e6d9);
     font-size: 1.05em;
     border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
    margin-bottom: 0;
}
}


.cardgrid-strategy h4 {
/* Collapsible toggle in caption */
     color: var(--wiki-content-heading-color);
.wikitable > caption .mw-collapsible-toggle {
     margin: 0 0 15px 0;
     float: right;
     font-size: 1.3em;
    margin: -0.25rem 0;
     display: flex;
    padding: 0.25rem 0.75rem;
     align-items: center;
    background: var(--teal-100, #b2f5ea);
     gap: 10px;
    border-radius: var(--border-radius-sm);
    border: 1px solid var(--teal-300, #4fd1c7);
     color: var(--teal-700, #285e61);
     font-size: 0.85em;
     font-weight: var(--font-weight-medium, 500);
     cursor: pointer;
     transition: all var(--transition-fast);
}
}


.cardgrid-strategy ul {
.wikitable > caption .mw-collapsible-toggle:hover {
     margin: 0;
     background: var(--teal-200, #81e6d9);
     padding-left: 20px;
     transform: translateY(-1px);
     list-style-type: none;
     box-shadow: var(--shadow-sm);
}
}


.cardgrid-strategy li {
/* Sortable tables */
    margin-bottom: 8px;
.client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable),
     padding-left: 10px;
.jquery-tablesorter th.headerSort {
     cursor: pointer;
     position: relative;
     position: relative;
    padding-right: 2rem !important;
    user-select: none;
    transition: all var(--transition-fast);
}
}


.cardgrid-strategy li:before {
.client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable):hover,
     content: "•";
.jquery-tablesorter th.headerSort:hover {
     color: var(--wiki-accent-color);
     background: linear-gradient(135deg,
        var(--teal-500, #319795) 0%,
        var(--teal-600, #2c7a7b) 100%) !important;
     box-shadow: inset 0 -3px 0 rgba(255, 255, 255, 0.3);
}
 
/* Sorting indicators */
.client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable):after,
.jquery-tablesorter th.headerSort:after {
    content: "↕";
     position: absolute;
     position: absolute;
     left: 0;
     right: 0.75rem;
     font-size: 1.2em;
     font-size: 0.85em;
    opacity: 0.6;
    transition: all var(--transition-fast);
}
}
/* In-Game Gallery */
 
.game-gallery {
.client-js .wikitable.sortable > * > tr:first-child > th.headerSortUp:after,
    margin: 1.5em 0;
.jquery-tablesorter th.headerSortUp:after {
    padding: 1.5em;
     content: "↑";
    background: var(--wiki-content-background-color--secondary);
     opacity: 1;
     border: var(--wiki-content-border-width) solid var(--wiki-content-border-color);
     color: var(--theme-accent-label-color);
    border-radius: var(--wiki-content-border-radius);
     box-shadow: 0 2px 4px rgba(0,0,0,0.1);
     backdrop-filter: var(--wiki-content-backdrop-filter);
}
}


.game-gallery-standard {
.client-js .wikitable.sortable > * > tr:first-child > th.headerSortDown:after,
      
.jquery-tablesorter th.headerSortDown:after {
     content: "↓";
    opacity: 1;
    color: var(--theme-accent-label-color);
}
}


.game-gallery-compact {
/* Links inside tables */
     padding: 1em;
.wikitable a,
.wikitable a:visited {
    color: var(--theme-link-color);
    text-decoration: none;
    font-weight: var(--font-weight-medium, 500);
    border-bottom: 1px dotted transparent;
     transition: all var(--transition-fast);
}
}


.game-gallery-compact .image-gallery {
.wikitable a:hover {
     gap: 8px;
    color: var(--theme-link-color--hover);
    text-decoration: none;
     border-bottom-color: currentColor;
}
}


.game-gallery-compact .gallery-item {
/* Images in tables */
     margin: 2px;
.wikitable img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    border-radius: var(--border-radius-sm);
    border: 1px solid var(--theme-border-color--subtle);
     transition: transform var(--transition-fast);
}
}


.game-gallery-wide .image-gallery {
.wikitable a:hover img {
     justify-content: space-between;
    transform: scale(1.05);
     border-color: var(--teal-300, #4fd1c7);
}
}


.game-gallery-mosaic .image-gallery {
/* Specific table types - override for consistency */
     display: grid;
 
     grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
/* Schedule tables */
    gap: 12px;
.scheduletable.wikitable {
     width: auto;
     min-width: 300px;
}
}


.game-gallery-grid .image-gallery {
.scheduletable.wikitable > tr > td:first-child,
     display: grid;
.scheduletable.wikitable > * > tr > td:first-child {
     gap: 12px;
     width: 150px;
     font-weight: var(--font-weight-semibold, 600);
    background-color: rgba(56, 178, 172, 0.05);
}
}


.game-gallery-grid[style*="grid-template-columns"] .image-gallery {
/* Fish tables */
     display: grid;
.fishtable.wikitable {
    gap: 12px;
     table-layout: fixed;
}
}


.gallery-header {
/* Artisan tables */
     margin-bottom: 1.2em;
.artisan-table.wikitable {
     font-weight: bold;
     width: 60%;
    font-size: 1.4em;
     max-width: 100%;
    text-align: center;
}
    color: var(--wiki-content-heading-color);
 
    border-bottom: 2px solid var(--wiki-accent-color);
.artisan-table.wikitable > tr > th,
    padding-bottom: 0.5em;
.artisan-table.wikitable > * > tr > th {
     font-family: var(--wiki-content-heading-font-family);
     background-color: var(--teal-500, #319795) !important;
}
}


.image-gallery {
/* Heart event tables */
     display: flex;
.heart-event-table.wikitable {
    flex-wrap: wrap;
     width: 30%;
    gap: 12px;
     min-width: 250px;
     justify-content: center;
    align-items: flex-start;
}
}


.gallery-item {
/* Quote tables */
    transition: transform 0.2s ease;
.quotetable.wikitable {
    border-radius: 4px;
     background: var(--letter-bg, #f0fff4);
    overflow: hidden;
     border-color: var(--letter-border, #c6f6d5);
     background: var(--wiki-content-background-color);
     border: 1px solid var(--wiki-content-border-color--secondary);
}
}


.gallery-item:hover {
.quotetable.wikitable > caption {
     transform: translateY(-2px);
     background: var(--teal-100, #b2f5ea);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
     color: var(--teal-800, #234e52);
     border-color: var(--wiki-accent-color);
}
}


.gallery-caption {
/* Responsive improvements */
     margin-top: 1em;
@media screen and (max-width: 1024px) {
     font-style: italic;
    .wikitable {
     text-align: center;
        font-size: 0.95em;
    color: var(--wiki-content-text-mix-color);
    }
     font-size: 0.95em;
   
    line-height: 1.4;
    .wikitable > tr > th,
     padding: 0.5em 1em;
    .wikitable > * > tr > th,
     background: color-mix(in srgb, var(--wiki-content-background-color) 85%, transparent);
    .wikitable > tr > td,
     border-radius: 4px;
    .wikitable > * > tr > td {
     border-left: 3px solid var(--wiki-accent-color);
        padding: 0.625rem 0.75rem !important;
    }
   
    .scheduletable.wikitable {
        width: 100%;
    }
   
     .artisan-table.wikitable {
        width: 100%;
     }
   
    .heart-event-table.wikitable {
        width: 100%;
     }
}
 
@media screen and (max-width: 768px) {
    .wikitable {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        border-radius: var(--border-radius-sm);
    }
   
    .wikitable > caption {
        position: sticky;
        left: 0;
    }
   
    .wikitable > tr > th,
    .wikitable > * > tr > th,
    .wikitable > tr > td,
    .wikitable > * > tr > td {
        min-width: 100px;
        font-size: 0.9em;
    }
   
    /* Make sortable tables work better on mobile */
    .client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable),
     .jquery-tablesorter th.headerSort {
        font-size: 0.85em;
        white-space: normal;
        line-height: 1.3;
        padding: 0.5rem 1.5rem 0.5rem 0.5rem !important;
     }
   
    /* Improve touch targets */
    .wikitable a {
        padding: 0.25rem 0;
        display: inline-block;
    }
}
 
/* Dark theme adjustments */
.skin-vector-dark .wikitable {
     background-color: var(--card-bg-main, #2a363d);
     border-color: var(--table-border, #4d6872);
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
}


.gallery-footer {
.skin-vector-dark .wikitable > tr > th,
    margin-top: 1em;
.skin-vector-dark .wikitable > * > tr > th {
    text-align: center;
     background: linear-gradient(135deg,
    font-size: 0.85em;
        var(--teal-800, #2d4a4d) 0%,
     color: var(--wiki-content-text-mix-color);
        var(--teal-900, #1d4044) 100%) !important;
     border-top: 1px solid var(--wiki-content-border-color--secondary);
     border-bottom-color: var(--teal-900, #1d4044) !important;
    padding-top: 0.8em;
}
}
.game-gallery-thumb .game-gallery-item {
 
     transition: all 0.3s ease;
.skin-vector-dark .wikitable > tr:nth-child(even):not(:first-child),
.skin-vector-dark .wikitable > * > tr:nth-child(even):not(:first-child) {
     background-color: rgba(95, 217, 207, 0.05);
}
}


.game-gallery-thumb .game-gallery-item:hover {
.skin-vector-dark .wikitable > tr:nth-child(odd):not(:first-child),
    transform: translateY(-2px);
.skin-vector-dark .wikitable > * > tr:nth-child(odd):not(:first-child) {
     box-shadow: 0 4px 8px rgba(0,0,0,0.15);
     background-color: rgba(95, 217, 207, 0.02);
    border-color: var(--wiki-accent-color);
}
}


.gallery-item-image {
.skin-vector-dark .wikitable > caption {
     transition: transform 0.2s ease;
     background: var(--teal-900, #1d4044);
    color: var(--teal-100, #b2f5ea);
    border-bottom-color: var(--teal-700, #285e61);
}
}


.game-gallery-item:hover .gallery-item-image {
.skin-vector-dark .wikitable > caption .mw-collapsible-toggle {
     transform: scale(1.02);
     background: var(--teal-800, #2d4a4d);
    border-color: var(--teal-600, #2c7a7b);
    color: var(--teal-100, #b2f5ea);
}
}
@media (max-width: 768px) {
 
     .game-gallery {
/* Print styles */
         padding: 1em;
@media print {
         margin: 1em 0;
     .wikitable {
        break-inside: avoid;
         box-shadow: none;
         border: 1px solid #ccc;
     }
     }
      
      
     .image-gallery {
     .wikitable > tr > th,
         gap: 8px;
    .wikitable > * > tr > th {
        background: #f0f0f0 !important;
        color: #000 !important;
        -webkit-print-color-adjust: exact;
         print-color-adjust: exact;
     }
     }
      
      
     .game-gallery-mosaic .image-gallery,
     .wikitable a {
    .game-gallery-grid .image-gallery {
         color: #000;
         grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
         text-decoration: none;
         gap: 8px;
     }
     }
      
      
     .gallery-header {
     .wikitable a[href]:after {
         font-size: 1.2em;
        content: " (" attr(href) ")";
         margin-bottom: 1em;
         font-size: 0.9em;
         font-weight: normal;
     }
     }
}
}


.view-dark .game-gallery {
/* Accessibility improvements */
     box-shadow: 0 2px 8px rgba(0,0,0,0.3);
@media (prefers-reduced-motion: reduce) {
     .wikitable,
    .wikitable > tr > th,
    .wikitable > tr > td,
    .wikitable a,
    .wikitable img {
        transition: none;
    }
}
}


.view-dark .gallery-item:hover {
/* High contrast mode support */
    box-shadow: 0 4px 12px rgba(0,0,0,0.4);
@media (prefers-contrast: high) {
    .wikitable {
        border-width: 2px;
    }
   
    .wikitable > tr > th,
    .wikitable > * > tr > th {
        border-bottom-width: 3px;
    }
   
    .wikitable > tr > td,
    .wikitable > * > tr > td {
        border-bottom-width: 1px;
    }
}
}


.view-light .game-gallery {
/* Focus styles for keyboard navigation */
     box-shadow: 0 2px 6px rgba(0,0,0,0.1);
.wikitable a:focus-visible {
     outline: 2px solid var(--focus-ring-color);
    outline-offset: 2px;
    border-radius: 2px;
    text-decoration: none;
}
}


.gallery-item img {
.cost-template {
    display: block;
display: flex;
    max-width: 100%;
justify-content: flex-start;
    height: auto;
align-items: center;
    margin: 0 auto;
flex-direction: row;
gap: 0.2rem;
}
}


.game-gallery .infobox-right,
.cost-detail {
.game-gallery .infobox-enemy {
display: flex;
    margin: 0.5em;
flex-direction: row;
justify-content: space-between;
align-items: center;
gap: 1rem;
}
}


.game-gallery .mp-box {
.client-js .sortable:not(.jquery-tablesorter)>*>tr:first-child>th:not(.unsortable),
    margin: 0.5em 0;
.jquery-tablesorter th.headerSort {
font-size: 10px;
white-space: normal;
}
}
/* End of game-gallery */
 
/* FGS-Thumb V001 */
.wikitable>tr>th,
.fgs-thumb {
.wikitable>*>tr>th {
    margin-bottom: var(--layout-gap);
background-color: #e7c361 !important;
    border: 0;
max-width: fit-content;
    position: relative;
    transition: all 0.3s ease;
}
}


.fgs-thumb * {
.heart-event-table {
    box-sizing: content-box;
width: 30%;
}
}


.fgs-thumb .fgs-thumbinner {
.wikitable>tr>th,
    border: 1px solid var(--theme-box-border-color);
.wikitable>tr>td,
    border-radius: var(--theme-box-border-radius);
.wikitable>*>tr>th,
    background: var(--theme-box-background);
.wikitable>*>tr>td {
    padding: var(--layout-box-padding);
// -ms-word-break: break-all;
    font-size: unset;
// word-break: break-all;
    transition: all 0.3s ease;
 
    position: relative;
// -webkit-hyphens: auto;
    overflow: hidden;
// -moz-hyphens: auto;
// hyphens: auto;
width: 150px;
white-space: break-space;
margin-left: auto;
margin-right: auto;
}
}


/* Enhanced hover effects */
.artisan-table>tr>th,
.fgs-thumb:hover .fgs-thumbinner {
.artisan-table>tr>td,
    border-color: var(--wiki-accent-color);
.artisan-table>*>tr>th,
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
.artisan-table>*>tr>td:first-child {
    transform: translateY(-2px);
// -ms-word-break: break-all;
// word-break: break-all;
 
// -webkit-hyphens: auto;
// -moz-hyphens: auto;
// hyphens: auto;
width: 150px;
white-space: break-space;
margin-left: auto;
margin-right: auto;
text-align: center;
}
}


/* Image styling */
.wikitable>tr>th,
.fgs-thumb a.img {
.wikitable>tr>td,
    display: block;
.wikitable>*>tr>th,
    transition: transform 0.3s ease;
.wikitable>*>tr>td:first-child {
// -ms-word-break: break-all;
// word-break: break-all;
 
// -webkit-hyphens: auto;
// -moz-hyphens: auto;
// hyphens: auto;
width: min-content;
white-space: break-space;
margin-left: auto;
margin-right: auto;
text-align: center;
}
}


.fgs-thumb:hover a.img {
.scheduletable > tr > th,
     transform: scale(1.02);
.scheduletable > * > tr > th,
.scheduletable th {
    background: linear-gradient(135deg,
        var(--teal-600, #2c7a7b) 0%,
        var(--teal-700, #285e61) 100%);
    color: var(--theme-accent-label-color, #ffffff);
    font-weight: var(--font-weight-semibold, 600);
    padding: 0.75rem 1rem;
     border-bottom: 2px solid var(--teal-800, #234e52);
    text-align: center;
    vertical-align: middle;
    font-size: 0.95em;
    letter-spacing: 0.3px;
    white-space: nowrap; /* Prevent line breaks in headers */
}
}


.fgs-thumb img {
.quotetable>tr>th,
    background: none;
.wikitable>tr>td,
    border-color: var(--theme-box-border-color);
.wikitable>*>tr>th,
    border-radius: calc(var(--theme-box-border-radius) - 2px);
.wikitable>*>tr>td {
//  -ms-word-break: break-all;
//  word-break: break-all;
 
//  -webkit-hyphens: auto;
//  -moz-hyphens: auto;
//  hyphens: auto;
}
}


/* Caption styling */
.vector-menu-content {
.fgs-thumb .fgs-caption {
margin-left: 10px;
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    padding: 0 1px;
    margin-top: var(--layout-gap);
    border-left: 3px solid transparent;
    transition: all 0.3s ease;
    position: relative;
}
}


.fgs-thumb:hover .fgs-caption {
.mw-body,
    border-left-color: var(--wiki-accent-color);
.parsoid-body {
    padding-left: 8px;
background-color: var(--theme-page-background-color) !important;
color: var(--theme-page-text-color);
direction: ltr;
padding: 1em;
}
}


/* Hide magnify icon */
.infobox {
.fgs-thumb .fgs-caption .magnify:first-child {
background: #e7c361;
    display: none;
border: 1px solid #e7c361;
float: right;
margin: 0 0 1em 1em;
padding: 1em;
// min-width: 25%;
}
}


/* Alignment variants */
.infobox-title {
.fgs-thumb.fgs-tleft {
font-size: 2em;
    margin: 0 var(--layout-gap) var(--layout-gap) 0;
text-align: center;
    float: left;
    clear: left;
}
}


.fgs-thumb.fgs-tright {
.infobox p {
    margin: 0 0 var(--layout-gap) var(--layout-gap);
text-decoration: underline;
    float: right;
font-size: 1.3em;
    clear: right;
}
}


.fgs-thumb.fgs-tcenter {
.infobox-image {
    margin-left: auto;
text-align: center;
    margin-right: auto;
    float: none;
    display: table;
}
}


/* Size variants */
.infobox-table {
.fgs-thumb.fgs-small .fgs-thumbinner {
width: 100%;
    max-width: 150px;
}
}


.fgs-thumb.fgs-medium .fgs-thumbinner {
.infobox-table th {
    max-width: 200px;
text-align: left;
vertical-align: top;
width: 120px;
}
}


.fgs-thumb.fgs-large .fgs-thumbinner {
.infobox-table td {
    max-width: 300px;
vertical-align: top;
text-align: right;
// color: white;
}
}


.fgs-thumb.fgs-xlarge .fgs-thumbinner {
.wikitable>caption {
    max-width: 400px;
text-align: left;
}
}


/* Special effects */
.Bug6200 {
.fgs-thumb.fgs-featured .fgs-thumbinner {
font-style: italic;
    border: 2px solid var(--wiki-accent-color);
font-weight: normal;
    background: linear-gradient(135deg, var(--theme-box-background) 0%, color-mix(in srgb, var(--wiki-accent-color) 5%, var(--theme-box-background)) 100%);
display: flex;
flex-direction: row;
align-items: center;
white-space: normal;
}
}


.fgs-thumb.fgs-bordered img {
.Bug6200>img {
    border: 2px solid var(--theme-box-border-color);
width: 24px;
    padding: 4px;
height: 24px;
}
}


/* Mobile responsiveness */
.scheduletable {
@media screen and (max-width: 640px) {
text-align: center;
    .fgs-thumb.fgs-tright {
margin: 10px 0;
        margin-left: 0;
border-collapse: collapse;
        float: none;
        clear: both;
    }
   
    .fgs-thumb.fgs-tleft {
        margin-right: 0;
        float: none;
        clear: both;
    }
   
    .fgs-thumb .fgs-thumbinner {
        max-width: 100% !important;
    }
}
}


/* Focus state for accessibility */
.scheduletable > tr > td,
.fgs-thumb:focus-within .fgs-thumbinner {
.scheduletable > * > tr > td,
     outline: 2px solid var(--wiki-accent-color);
.scheduletable td {
     outline-offset: 2px;
    padding: 0.75rem 1rem;
    border: 1px solid var(--theme-border-color--subtle, #e2e8f0);
    vertical-align: middle;
     color: var(--theme-page-text-color);
     text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
    transition: background-color var(--transition-fast);
}
}
/* --- Core Container --- */
.scheduletable > tr > td:first-child,
div.variants-container {
.scheduletable > * > tr > td:first-child,
  width: 60%;
.scheduletable td:first-child {
  margin-left: 0;
    width: 150px !important; /* Fixed width for time column */
  margin-right: auto;
    min-width: 150px;
  align-items: flex-start;
    max-width: 150px;
  border: none;
    font-weight: var(--font-weight-semibold, 600);
  background: none;
    background-color: rgba(56, 178, 172, 0.08);
  box-shadow: none;
    text-align: left;
  padding: 20px 0;
    padding-left: 1.25rem;
  display: flex;
    border-right: 2px solid var(--teal-300, #4fd1c7);
  flex-direction: column;
    position: relative;
}
}


/* --- Heading --- */
.croptable>tbody>tr>td:first-child {
div.variants-container h4 {
width: 100px !important;
  text-align: left;
}
  margin-bottom: 20px;
.scheduletable>tbody>tr>td:first-child {
  font-size: 1.4rem;
width: 150px !important;
  font-weight: 700;
}
}


/* --- Variants Grid Layout --- */
// td {
div.variants-container .variants-grid {
//  width: 100px;
  display: flex;
// }
  flex-direction: column;
.scheduletable caption {
  align-items: center;
background: #e7c361;
  gap: 30px;
border: 1px solid #e7c361;
text-align: center;
}
}


/* ============================================================
.wikitable>caption>span {
  VARIANT CARD STYLE
float: right !important;
  ============================================================ */
div.variants-container .variant-card {
  background: var(--wiki-content-background-color--secondary, #fff);
  border: 1px solid var(--pi-border-color, #d0d7de);
  border-radius: 2px;
  padding: 15px;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  position: relative;
  overflow: hidden;
}
}


div.variants-container .variant-card-content {
.collapsible-header:before {
  display: flex;
float: right;
  flex-direction: column;
  height: 100%;
}
}


div.variants-container .variant-image {
.ci-recipe-wrapper {
  margin-bottom: 12px;
display: flex;
width: fit-content;
position: relative;
gap: 7px;
}
}


div.variants-container .variant-image img {
.ci-recipe-timed {
  max-width: 100%;
padding-bottom: 25px;
  height: auto;
  border-radius: 4px;
  margin-bottom: 0;
}
}


/* --- Variant Card Hover --- */
.ci-recipe-timed {
div.variants-container .variant-card::before {
border: 1px solid #e7c361;
  content: "";
border-radius: 5px;
  position: absolute;
position: relative;
  top: 0;
text-align: center;
  left: 0;
font-weight: 500;
  right: 0;
width: 100%;
  height: 3px;
padding: 8px;
  background: var(--pi-secondary-background, #36c);
max-width: 100px;
  transform: scaleX(0);
overflow-wrap: break-word;
  transition: transform 0.3s ease;
hyphens: auto;
}
}


div.variants-container .variant-card:hover::before {
.ci-recipe-yield {
  transform: scaleX(1);
border: 1px solid #e7c361;
border-radius: 3px;
padding: 8px;
position: relative;
width: 100%;
text-align: center;
}
}


div.variants-container .variant-card:hover {
.ci-recipe-yield-amount {
  transform: translateY(-3px);
background: #e7c361;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
width: fit-content;
  border-color: var(--pi-secondary-background, #36c);
border-radius: 3px;
padding: 0 5px;
position: absolute;
bottom: 0;
right: 0;
}
}


/* --- Typography --- */
span.custom-icon {
div.variants-container .variant-card h5 {
display: inline;
  margin: 0 0 8px 0;
  font-size: 1.2em;
  color: var(--pi-secondary-background, #36c);
  line-height: 1.3;
}
}


div.variants-container .variant-card .variant-meta {
.ci-recipe-ingredient {
  font-size: 0.9em;
border: 1px solid #e7c361;
  color: var(--wiki-content-text-mix-color, #666);
border-radius: 3px;
  margin: 0 0 8px 0;
padding: 5px;
  font-style: italic;
min-height: 100%;
}
}


div.variants-container .variant-card .variant-description {
.ci-recipe-medium::after {
  font-size: 0.95em;
border: 1px solid #e7c361;
  margin: 8px 0;
background-color: #e7c361;
  line-height: 1.4;
border-radius: 3px;
  flex-grow: 1;
width: 5px;
height: 5px;
content: "";
position: absolute;
top: 50%;
left: -7px;
}
}


div.variants-container .variant-card .variant-notes {
.gifted-item {
  font-size: 0.85em;
background-color: rgba(231, 195, 97, 0.2);
  margin-top: 10px;
  padding: 8px;
  background: var(--pi-background, #f0f0f0);
  border-radius: 2px;
  border-left: 3px solid var(--pi-border-color, #a2a9b1);
}
}


div.variants-container .variant-card .variant-notes strong {
.gifted-item>tbody>tr>th {
  color: var(--pi-secondary-background, #36c);
background-color: rgba(231, 195, 97, 0.8);
max-width: 100px;
}
}
/* Statbox HOVER */
 
div.variants-container .statbox-variant:hover {
.content-table {
  transform: translateY(-3px);
background: transparent;
  box-shadow: 0 8px 16px rgba(189, 58, 40, 0.3);
padding: 10px 2%;
width: 100%;
}
 
.content-table-basic {
background: transparent;
width: 100%;
}
 
.content-table-second {
background: transparent;
width: 100%;
}
}


div.variants-container .statbox-variant .variant-notes strong {
.child-content-table {
  color: #ffcc00;
display: flex;
justify-content: flex-start;
gap: 10px;
margin-left: 4px;
}
}
.statbox-variant {
 
  transition: all 0.3s ease;
.mw-body,
#mw-data-after-content {
margin-left: 10em;
}
}


.statbox-variant:hover {
.mw-body {
  transform: translateY(-5px);
position: relative;
  box-shadow: 0 12px 40px rgba(189, 58, 40, 0.3);
/* For better z-index control */
border-left: 3px solid var(--teal-400);
border-top: none;
border-right: none;
border-bottom: none;
background-color: var(--theme-page-background-color);
color: var(--theme-page-text-color);
margin-top: 0;
border-radius: 0;
 
.firstHeading {
overflow: visible;
/* Add subtle bottom border for separation */
border-bottom: 1px solid var(--theme-border-color--subtle);
padding-bottom: 0.5em;
margin-bottom: 1em;
}
}
}
/* Responsive design */
 
@media (max-width: 768px) {
/* Keep z-index simple */
  .variants-grid {
.mw-indicators {
    grid-template-columns: 1fr !important;
position: relative;
  }
z-index: 10;
 
  .statbox-variant table {
    font-size: 0.9em;
  }
}
}
@media (max-width: 1024px) {
 
  div.variants-container {
.vector-body {
    width: 80%;
font-size: var(--font-size);
  }
position: relative;
z-index: 1;
}
}
@media (max-width: 768px) {
  div.variants-container .statbox-variant {
    max-width: 95%;
  }


  div.variants-container .statbox-variant table {
/* Be more specific with font overrides to avoid editor conflicts */
    font-size: 0.9em;
body:not(.action-edit):not(.action-submit) .vector-body,
  }
body:not(.action-edit):not(.action-submit) .vector-body p,
body:not(.action-edit):not(.action-submit) .vector-body div,
body:not(.action-edit):not(.action-submit) .vector-body span {
font-size: var(--font-size);
font-family: Helvetica, Arial, sans-serif;
}


  div.variants-container .statbox-variant td,
@media screen and (max-width: 1024px) {
  div.variants-container .statbox-variant th {
    padding: 6px 8px;
  }


  div.variants-container .statbox-variant .variant-image img {
body:not(.action-edit):not(.action-submit) .wikitable>tr>th,
    max-width: 60px;
body:not(.action-edit):not(.action-submit) .wikitable>tr>td,
  }
body:not(.action-edit):not(.action-submit) .wikitable>*>tr>th,
body:not(.action-edit):not(.action-submit) .wikitable>*>tr>td {
font-size: 14px;
}


  div.variants-container .statbox-variant h5 {
body:not(.action-edit):not(.action-submit) .content {
    font-size: 1.1em;
font-size: 14px;
  }
}


  div.variants-container .variant-card {
body:not(.action-edit):not(.action-submit) .vector-body {
    padding: 12px;
font-size: 16px;
  }
}
}


  div.variants-container .variant-image img {
/* Even safer - only affect non-editor content */
    max-width: 60px;
.mw-body-content:not(.editOptions),
  }
.mw-parser-output:not(.editOptions) {
  div.variants-container {
font-size: var(--font-size);
    width: 95%;
  }
}
}


/* --- Print Styles --- */
#mw-page-base {
@media print {
//  .vertical-gradient( @background-color-base, @background-color-secondary, 50%, 100% );
  div.variants-container .statbox-variant,
background: transparent;
  div.variants-container .variant-card {
background-position: bottom left;
    break-inside: avoid;
height: 5em;
    box-shadow: none;
}
    border: 1px solid #000;
 
    transform: none;
#mw-head-base {
  }
margin-top: -5em;
margin-left: 10em;
height: 5em;
background: transparent;
}
}


/* ===== HEADER/NAVIGATION FIX ===== */


/* Custom Footer */
#mw-navigation h2 {
.custom-footer {
position: absolute;
    background: #e9ecef;
top: -9999px;
    border-top: 2px solid #6c757d;
    padding: 15px;
    margin-top: 30px;
    font-size: 0.9em;
    color: #495057;
}
}


/* Clear floats */
#mw-head>* {
.infobox-right + *,
position: relative;
.infobox-enemy + *,
z-index: auto;
.contents-left + * {
    clear: both;
}
}
/* [[Template:MP_link]] */
 
.mp-links {
#left-navigation,
--gap: 10px;
#right-navigation {
display: inline-flex;
vertical-align: top;
white-space: nowrap;
}
}


.mp-links > ul {
#p-search {
display: flex;
display: inline-block;
flex-flow: row wrap;
vertical-align: top;
justify-content: space-evenly;
position: relative;
margin: 2px;
margin: 0 1em;
gap: var(--gap);
}
 
/* Sidebar */
#mw-panel .sidebar-section-title {
background: linear-gradient(90deg, var(--teal-700) 0%, var(--teal-900) 100%);
color: white;
font-weight: bold;
padding: 5px 10px;
margin: 5px 0 5px 0;
border-radius: 4px;
font-size: 0.9em;
}
}


.mp-links > ul > li {
// hide the heading of the first menu
#p-logo+.mw-portlet .vector-menu-heading {
display: flex;
display: flex;
flex-flow: column nowrap;
justify-content: flex-start;
align-items: stretch;
align-items: center;
text-align: center;
background: white;
box-sizing: border-box;
color: black;
flex: max(calc(50% - var(--gap)), 5em) 1 1;
font-weight: bold;
outline: 1px solid var(--wiki-content-link-color);
padding: 0 5px;
transition: 0.1s ease-in;
height: 20px;
border-top-right-radius: 5px;
border-top-left-radius: 5px;
}
}


.mp-links > ul > li:hover {
// ul {
background-color: color-mix(in srgb, var(--wiki-content-link-color) 20%, transparent);
//  list-style-type: none !important
// }
 
.vector-body blockquote {
border: 0;
padding: 0;
}
}


.mp-links.columns-1 > ul > li {flex: max(calc(100% - var(--gap)), 5em) 1 1;}
.vector-menu-portal .vector-menu-content li {
.mp-links.columns-2 > ul > li {flex: max(calc(50% - var(--gap)), 5em) 1 1;}
padding: 5px;
.mp-links.columns-3 > ul > li {flex: max(calc((100% / 3) - var(--gap)), 5em) 1 1;}
}
.mp-links.columns-4 > ul > li {flex: max(calc(25% - var(--gap)), 5em) 1 1;}
.mp-links.columns-5 > ul > li {flex: max(calc(20% - var(--gap)), 5em) 1 1;}
.mp-links.columns-6 > ul > li {flex: max(calc((100% / 6) - var(--gap)), 5em) 1 1;}
.mp-links.columns-7 > ul > li {flex: max(calc((100% / 7) - var(--gap)), 5em) 1 1;}
.mp-links.columns-8 > ul > li {flex: max(calc((100% / 8) - var(--gap)), 5em) 1 1;}
.mp-links.columns-max > ul > li {flex: max(calc(0% - var(--gap)), 5em) 1 1;}


.mp-links > ul > li:hover a {
.vector-menu-portal .vector-menu-content ul {
text-decoration: underline;
background: rgba(255, 255, 255, 0.8);
}
}


.mp-links > ul > li > a {
.vector-menu-portal .vector-menu-heading {
display: flex;
display: flex;
justify-content: flex-start;
align-items: center;
align-items: center;
background: white;
color: black;
font-weight: bold;
padding: 0 5px;
height: 20px;
border-top-right-radius: 5px;
border-top-left-radius: 5px;
}
.mw-footer {
margin-left: 10em;
margin-top: 1%;
margin-bottom: 1%;
padding: 0.75em;
background: white;
min-height: 120px;
border-radius: 5px;
}
.social {
display: flex;
justify-content: center;
justify-content: center;
height: 100%;
flex-direction: row;
flex: 1 1 auto;
width: auto;
box-sizing: border-box;
background: #474747;
padding: 5px;
padding: 1rem 3rem;
 
& .iconname {
max-width: 20%;
 
& .external-text {
font-size: 12px;
}
 
& .floatleft {
display: flex;
justify-content: space-between;
align-items: center;
 
& a {
font-size: 12px;
}
 
img {
max-width: 20px;
max-height: 20px;
}
}
}
}
 
div.floatleft,
table.floatleft {
margin: 0;
}
 
big {
color: white;
}
 
.jumbotron {
//background-image: url("https://mbwiki.stairwaygames.work/w/images/1/13/manabreak-hero.png");
 
background-repeat: no-repeat;
background-size: cover;
width: 100%;
}
 
body.page-Main_Page.action-view .main-page-top {
background-color: #474747;
padding: 1rem 0;
background-image: url("https://mbwiki.stairwaygames.work/w/images/1/13/manabreak-hero.png") !important;
height: 300px !important;
}
 
/* Vector screen styles for high definition displays. These rules cross the above components and are
grouped together here only for the sake of the media query common to each. */
.mw-body,
#mw-head-base,
#left-navigation,
#mw-data-after-content,
.mw-footer {
margin-left: 11em;
}
 
.mw-body {
padding: 1.25em 1.5em 1.5em 1.5em;
}
 
.mw-footer {
padding: 1.25em;
}
 
#mw-panel {
padding-left: 0.5em;
}
 
.vector-search-box {
margin-right: 1em;
}
 
/*// Directionality styles previously provided by the deprecated `legacy` feature (T287410)
// for HTML elements which do not carry dir HTML attributes.
// These have been copied across to legacy Vector to minimize disruption caused by T287701.
// If you are reading this comment in 2022, please consider checking usage in wikitext and
// removing them both.*/
.mw-content-ltr {
/* @noflip */
direction: ltr;
}
 
.mw-content-rtl {
/* @noflip */
direction: rtl;
}
}


.mp-links > ul > li > a:first-child {
.cols {
height: 100%;
text-align: left;
word-break: break-all;
// padding: 1em 0;
background-color: rgba(255, 255, 255, 0.8);
border-radius: 5px;
font-weight: 600;
// text-transform: uppercase;
// letter-spacing: 1px;
}
}


.mp-links > ul > li > a:last-child:not(:first-child) {
.forest {
height: unset;
margin-top: -25px;
}
}


.mp-links.stretch,
.forest2 {
.mp-links.stretch > ul {
margin-top: 0;
height: 100%;
}
}


.mp-links.side-image li {
/* grid styling - Connected to Module Variables */
flex-flow: row nowrap;
.grid {
display: grid !important;
/* Desktop: Use module variable, fallback to 12 columns */
grid-template-columns: var(--main-page-layout-columns--desktop,
repeat(12, 1fr));
margin: 10px 0;
gap: 10px;
/* Better than grid-gap (deprecated) */
}
}


.mp-links.plain > ul > li {
/* Tablet */
outline-color: transparent;
@media (max-width: 1024px) {
.grid {
grid-template-columns: var(--main-page-layout-columns--tablet,
var(--main-page-layout-columns--desktop, repeat(12, 1fr)));
}
}
}
/* Card Navbox Styles */
 
.card-navbox-container {
/* Mobile */
    border-radius: 12px;
@media (max-width: 768px) {
    margin: 1em 0;
.grid {
    padding: 16px;
grid-template-columns: var(--main-page-layout-columns--mobile,
    box-shadow: 0 4px 6px var(--shadow-color, rgba(74, 124, 89, 0.1));
var(--main-page-layout-columns--tablet,
    position: relative;
var(--main-page-layout-columns--desktop, repeat(1, 1fr))));
    transition: box-shadow 0.3s ease;
}
}
}


.card-navbox-container:hover {
/* Optional: Keep column classes as fallback when NOT using module */
    box-shadow: 0 6px 12px var(--shadow-color, rgba(74, 124, 89, 0.15));
.grid:not([data-has-module-layout]) .grid__col4 {
grid-column: span 4;
}
}


.card-navbox-container::before {
/* Other styles can stay the same */
    content: "";
.specification-table {
    position: absolute;
font-size: 10px;
    top: -2px;
padding: 0 5%;
    left: -2px;
    right: -2px;
    bottom: -2px;
    border-radius: 14px;
    z-index: -1;
    opacity: 0.1;
}
}


.card-navbox-title {
.content {
    background: var(--mainbox-header-bg);
padding: 10px;
    color: #FFFFFF;
font-size: 12px;
    padding: 12px 16px;
    border-radius: 2px;
    font-weight: 600;
    font-size: 1.2em;
    text-align: center;
    margin-bottom: 16px;
    text-shadow: 0 1px 2px rgba(0,0,0,0.2);
    border: 1px solid #3a6b4a;
}
}


.card-section-header {
.wrapper {
    background: var(--section-header-bg, #f8f9fa);
max-width: 100%;
    padding: 12px 16px;
margin: 0 auto;
    margin: 24px 0 16px 0;
padding: 0 1rem;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1.1em;
    border-left: 6px solid var(--accent-color, #4a7c59);
    border-bottom: 1px solid #e9ecef;
}
}


.card-navbox-item {
@supports (display: grid) {
    padding: 20px;
 
    border-bottom: 1px solid var(--border-light, #e9ecef);
.mw-content-ltr ul,
.mw-content-rtl .mw-content-ltr ul {
// margin: 0 !important;
}
 
.social .iconname .floatleft {
display: flex;
justify-content: center;
align-items: center;
}
 
.social {
gap: 30px;
}
 
.croptable>tbody>tr>td>a>img {
max-width: 40px;
max-height: 40px;
}
 
.exceptable>tbody>tr>td>a>img {
max-width: 70px;
max-height: 70px;
}
 
.floatleft>a>img {
// width: 24px;
// height: 24px;
}
 
.iconname {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 5px;
-ms-word-break: break-all;
word-break: break-all;
 
/* Non standard for WebKit */
word-break: break-word;
 
-webkit-hyphens: auto;
-moz-hyphens: auto;
hyphens: auto;
}
 
.auto-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
grid-gap: 5px;
}
 
.auto-grid>* {
max-width: unset;
list-style: none;
}
 
.auto-grid>*+* {
margin-top: unset;
}
 
.auto-grid>li>ul {
margin-left: 10px !important;
}
 
.auto-grid>li>ul>li {
list-style: none;
margin: 0;
padding-left: 15px;
list-style: none;
background-image: url("https://www.svgrepo.com/show/165220/diamond.svg");
background-repeat: no-repeat;
background-position: left center;
background-size: 10px;
-ms-word-break: break-all;
word-break: break-all;
 
/* Non standard for WebKit */
word-break: break-word;
 
-webkit-hyphens: auto;
-moz-hyphens: auto;
hyphens: auto;
}
}
}


.card-navbox-item:last-child {
.minus-ten {
    border-bottom: none;
margin-top: 0;
}
 
.minus-fifty {
margin-top: -55%;
}
}


.card-navbox-item:hover .card-container {
#footer-info li {
    transform: translateY(-2px);
color: --wiki-content-text-color !important;
}
}


.card-navbox-item:hover .element-badge {
@media (max-width: 1024px) {
    transform: scale(1.05);
.minus-fifty {
margin-top: -5%;
}
 
.minus-ten {
margin-top: -10%;
}
 
.wikitable>tr>th,
.wikitable>tr>td,
.wikitable>*>tr>th,
.wikitable>*>tr>td {
font-size: 0.7em;
}
 
.scheduletable>tbody>tr>td:first-child {
width: 40px;
}
 
.wikitable,
.quotetable,
.scheduletable {
table-layout: fixed;
width: 100%;
}
 
.croptable>tbody>tr>td>a>img {
max-width: 24px;
max-height: 24px;
}
 
.infobox {
float: none;
margin: 0;
}
 
.forest2 {
margin-top: -5px;
}
 
.content {
font-size: 10px;
}
 
.social {
flex-direction: column;
padding: 1rem;
 
& .iconname {
max-width: 100%;
}
}
 
.mw-parser-output a.external {
-ms-word-break: break-all;
word-break: break-all;
 
/* Non standard for WebKit */
word-break: break-word;
 
-webkit-hyphens: auto;
-moz-hyphens: auto;
hyphens: auto;
}
 
#mw-panel {
width: -webkit-fill-available;
display: flex;
justify-content: center;
align-items: center;
max-height: 100px;
}
 
.vector-search-box {
min-width: 90vw;
margin-top: 0px;
}
 
.vector-search-box-input {
width: 80vw;
}
 
#mw-content-text>div.mw-parser-output>div>div>div.content>table>tbody>tr>td>a {
font-size: 8px;
}
 
#mw-content-text>div.mw-parser-output>div>div>div.content>table>tbody>tr>th>div>div>a>img {
width: 16px;
height: 16px;
}
 
#mw-content-text>div.mw-parser-output>div>div>div.content>table>tbody>tr>td>div>div>a>img {
width: 16px;
height: 16px;
}
 
#mw-content-text>div.mw-parser-output>table.jumbotron>tbody>tr>th>a>img {
max-width: 100%;
object-fit: contain;
}
 
footer,
.vector-menu-content,
#p-navigation,
#p-tb {
display: none;
}
 
#p-logo {
display: block;
justify-content: center;
}
 
#p-logo a {
width: 5em;
}
 
table {
width: 100%;
}
 
.mw-body,
#mw-data-after-content {
margin: 10% 10px;
}
 
.grid__col1 {
grid-column: span 1;
}
 
.grid__col2 {
grid-column: span 2;
}
 
.grid__col3 {
grid-column: span 6;
}
 
.grid__colsm1 {
grid-column: span 1;
}
 
.grid__colsm2 {
grid-column: span 2;
}
 
.grid__colsm3 {
grid-column: span 12;
}
 
.grid__colsm4 {
grid-column: span 12;
}
 
.grid__colsm5 {
grid-column: span 5;
}
 
.grid__colsm6 {
grid-column: span 6;
}
 
.grid__colsm7 {
grid-column: span 7;
}
 
.grid__colsm8 {
grid-column: span 12;
}
 
.grid__colsm9 {
grid-column: span 9;
}
 
.grid__colsm10 {
grid-column: span 10;
}
 
.grid__colsm11 {
grid-column: span 11;
}
 
.grid__colsm12 {
grid-column: span 12;
}
 
.content-table,
.content-table th,
.content-table td {
border: none !important;
}
 
.content-table-basic>tbody {
display: grid;
}
 
.content-table-basic>tbody>tr {
display: grid;
grid-template-columns: repeat(2, minmax(50px, 1fr));
width: fit-content;
}
 
.content-table-basic>tbody>tr>th {
display: flex;
align-items: center;
justify-content: center;
width: 45vw;
}
 
.content-table-basic>tbody>tr>th>.iconname>.floatleft>a>img {
width: 14px;
height: 14px;
}
 
.forest {
margin-top: 0;
}
 
.content-table-second {
background: transparent;
width: 100%;
}
 
.auto-grid {
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}
 
.mw-body,
#mw-data-after-content {
padding: 0;
}
}
}


.card-container {
@media screen and (max-width: 1920px) {
    display: flex;
.mw-parser-output a.external {
    gap: 24px;
font-size: 14px;
    align-items: flex-start;
}
    transition: transform 0.2s ease;
}
}


.card-content-left {
@media screen and (min-width: 2000px) {
    flex: 1;
.mw-parser-output a.external {
    min-width: 0;
font-size: 20px;
font-weight: 400;
}
 
.floatleft>a>img {
width: 48px;
height: 48px;
}
}
}


.card-content-right {
#content .header-column {
    width: 320px;
background-color: #1a6a7a !important;
    flex-shrink: 0;
justify-content: center !important;
text-align: center !important;
color: #ffffff !important;
}
}


.card-icon-section {
.header-column>span>a>img {
    display: flex;
width: 14px;
    align-items: center;
height: 14px;
    gap: 12px;
    margin-bottom: 16px;
}
}


.icon-container {
.header-column>a>img {
    width: 64px;
width: 14px;
    height: 64px;
height: 14px;
    border-radius: 8px;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #e9ecef;
    transition: all 0.2s ease;
}
}


.item-header {
.heading-char {
    margin-bottom: 16px;
color: #deb76c !important;
}
}


.item-name {
#footer {
    margin: 0 0 4px 0;
background: #fff;
    font-size: 1.4em;
color: #000;
    font-weight: 700;
margin-top: 1em;
    word-wrap: break-word;
border-top: 1pt solid #aaa;
    hyphens: auto;
padding-top: 5px;
    transition: color 0.2s ease;
direction: ltr;
}
}


.item-level {
/* ---- CONTENTS STYLING GOES BELOW THIS LINE --- */
    font-size: 0.95em;
/* Element Infobox Styling */
    font-weight: 500;
.element-image {
    color: #6c757d;
transition: transform 0.3s ease;
border-radius: 5px;
}
}


.item-info-table {
.element-image:hover {
    width: 100%;
transform: scale(1.05);
    border-collapse: collapse;
    margin-bottom: 16px;
    background: #f8f9fa;
    border-radius: 6px;
    overflow: hidden;
}
}


.item-info-table th,
/* Floating animation for infobox */
.item-info-table td {
.element-infobox {
    padding: 8px 12px;
transition: box-shadow 0.3s ease, transform 0.3s ease;
    text-align: left;
    border-bottom: 1px solid #e9ecef;
}
}


.item-info-table th {
.element-infobox:hover {
    font-weight: 600;
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    width: 30%;
transform: translateY(-2px);
    background: #e9ecef;
}
}


.item-info-table tr:last-child th,
/* Color-specific classes */
.item-info-table tr:last-child td {
.element-fire {
    border-bottom: none;
border-left: 4px solid #cc3333;
}
}


.upgrade-section,
.element-water {
.mutation-section {
border-left: 4px solid #3366cc;
    margin-bottom: 16px;
}
}


.upgrade-section h4,
.element-wind {
.mutation-section h4 {
border-left: 4px solid #33cccc;
    margin: 0 0 8px 0;
    font-size: 1.1em;
    font-weight: 600;
    color: #495057;
}
}


.upgrade-list,
.element-earth {
.mutation-list {
border-left: 4px solid #996633;
    margin: 0;
    padding-left: 20px;
    color: #6c757d;
}
}


.upgrade-list li,
.element-lightning {
.mutation-list li {
border-left: 4px solid #ffcc00;
    margin-bottom: 4px;
    line-height: 1.4;
}
}


.card-image-container {
.element-ice {
    margin-bottom: 16px;
border-left: 4px solid #66ccff;
}
}


.item-card-image {
.element-wood {
    width: 300px;
border-left: 4px solid #339933;
    height: 400px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
}


.item-card-image img {
.element-grass {
    max-width: 100%;
border-left: 4px solid #88cc44;
    max-height: 100%;
    object-fit: cover;
}
}


.item-description {
/* Move Personal Tools to the top of the page */
    padding: 12px 16px;
#p-personal {
    border-radius: 6px;
position: absolute !important;
    border-left: 4px solid var(--accent-color, #667eea);
top: 0 !important;
right: 0.75em !important;
z-index: 1000 !important;
background: var(--theme-page-background-color) !important;
border-bottom: 1px solid var(--theme-border-color) !important;
padding: 0.25em 0.5em !important;
border-radius: 0 0 var(--border-radius-md) var(--border-radius-md) !important;
box-shadow: var(--shadow-sm) !important;
}
}


.item-description p {
#p-personal .vector-menu-heading {
    margin: 0;
display: none !important;
    line-height: 1.5;
    font-style: italic;
    max-height: 120px;
    overflow-y: auto;
    padding-right: 8px;
}
}


.item-description p::-webkit-scrollbar {
#p-personal .vector-menu-content {
    width: 4px;
position: static !important;
display: block !important;
opacity: 1 !important;
visibility: visible !important;
box-shadow: none !important;
border: none !important;
background: transparent !important;
}
}


.item-description p::-webkit-scrollbar-thumb {
#p-personal .vector-menu-content-list {
    background: var(--accent-color);
display: flex !important;
    border-radius: 2px;
flex-wrap: wrap !important;
gap: 0.5em !important;
margin: 0 !important;
padding: 0 !important;
list-style: none !important;
}
}


/* Element-specific colors - LIGHT THEME */
#p-personal .mw-list-item {
.card-section-header[data-element="nature"] { border-left-color: #27ae5f; } /* Slightly brighter green */
display: flex !important;
.card-section-header[data-element="earth"] { border-left-color: #a86437; } /* Warmer, lighter brown */
align-items: center !important;
.card-section-header[data-element="sky"] { border-left-color: #1abc9c; } /* Distinct Turquoise */
margin: 0 !important;
.card-section-header[data-element="night"] { border-left-color: #34495e; } /* Lighter, less blackish blue */
padding: 0 !important;
.card-section-header[data-element="water"] { border-left-color: #3498db; } /* Kept your perfect blue */
}
.card-section-header[data-element="beast"] { border-left-color: #e67e22; } /* Kept your great orange */
.card-section-header[data-element="fire"] { border-left-color: #e74c3c; } /* Kept your perfect red */


/* Element color definitions - More Pronounced for light theme */
#p-personal .mw-list-item a {
.element-nature { --accent-color: var(--element-color-nature, #81C784); --element-glow: rgba(129, 199, 132, 0.12); }
padding: 0.25em 0.5em !important;
.element-earth { --accent-color: var(--element-color-earth, #A1887F); --element-glow: rgba(161, 136, 127, 0.1); }
color: var(--theme-link-color) !important;
.element-sky { --accent-color: var(--element-color-sky, #FFD54F); --element-glow: rgba(255, 213, 79, 0.15); }
text-decoration: none !important;
.element-night { --accent-color: var(--element-color-night, #BA68C8); --element-glow: rgba(186, 104, 200, 0.08); }
display: flex !important;
.element-water { --accent-color: var(--element-color-water, #4FC3F7); --element-glow: rgba(79, 195, 247, 0.15); }
align-items: center !important;
.element-beast { --accent-color: var(--element-color-beast, #FF6B6B); --element-glow: rgba(255, 107, 107, 0.12); }
gap: 4px !important;
.element-fire { --accent-color: var(--element-color-fire, #FF8A65); --element-glow: rgba(255, 138, 101, 0.15); }
border-radius: var(--border-radius-sm) !important;
.element-generic { --accent-color: #7f8c8d; --element-glow: rgba(127, 140, 141, 0.08); }
transition: all var(--transition-fast) ease !important;
}


/* Element badges */
#p-personal .mw-list-item a:hover {
.element-badge {
background: rgba(var(--teal-100--rgb, 178, 245, 234), 0.3) !important;
    background: var(--accent-color);
color: var(--theme-link-color--hover) !important;
    color: white;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.85em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-shadow: 0 1px 2px rgba(0,0,0,0.2);
    transition: transform 0.2s ease;
}
}


/* Element styling - SUBTLE for light theme */
/* Theme toggle special styling */
.element-nature .icon-container,
#pt-theme a {
.element-earth .icon-container,
background: linear-gradient(135deg,
.element-sky .icon-container,
var(--teal-100) 0%,
.element-night .icon-container,
var(--teal-200) 100%) !important;
.element-water .icon-container,
border-radius: var(--border-radius-full) !important;
.element-beast .icon-container,
.element-fire .icon-container,
.element-generic .icon-container {
    border-color: var(--accent-color);
}
}


.element-nature .item-description,
#pt-theme a:hover {
.element-earth .item-description,
background: linear-gradient(135deg,
.element-sky .item-description,
var(--teal-200) 0%,
.element-night .item-description,
var(--teal-300) 100%) !important;
.element-water .item-description,
.element-beast .item-description,
.element-fire .item-description,
.element-generic .item-description {
    border-left-color: var(--accent-color);
    background: var(--element-glow);
}
}


.element-nature:hover .item-name,
/* Dark theme adjustments */
.element-earth:hover .item-name,
.skin-vector-dark #p-personal {
.element-sky:hover .item-name,
background: var(--theme-page-background-color--secondary) !important;
.element-night:hover .item-name,
.element-water:hover .item-name,
.element-beast:hover .item-name,
.element-fire:hover .item-name,
.element-generic:hover .item-name {
    color: var(--accent-color);
}
}


.card-navbox-item:hover {
.skin-vector-dark #pt-theme a {
    background: var(--element-glow);
background: linear-gradient(135deg,
var(--teal-800) 0%,
var(--teal-700) 100%) !important;
}
}


/* Dark theme */
.skin-vector-dark #pt-theme a:hover {
@media (prefers-color-scheme: dark) {
background: linear-gradient(135deg,
    .card-navbox-container {
var(--teal-700) 0%,
        --border-color: #3a6b4a;
var(--teal-600) 100%) !important;
        --card-bg: #1a1f1c;
}
        --shadow-color: rgba(0,0,0,0.4);
    }


    .card-navbox-title {
/* Add space at the top of the page so the personal tools don't overlap content */
        --header-bg: linear-gradient(135deg, #3a6b4a 0%, #2d501c 100%);
#mw-page-base {
        --header-text: #e8f4ea;
margin-top: -0.5em !important;
    }
}


    .card-section-header {
/* Or if that doesn't work, add padding to body */
        --section-header-bg: #2d3748;
body {
        border-bottom-color: #4a5568;
padding-top: -0.5em !important;
        color: #e2e8f0;
}
    }


    .item-level {
body.page-Main_Page .social {
        color: #a0aec0;
margin: -45px auto 30px !important;
    }
background: rgba(var(--theme-page-background-color--secondary--rgb),
0.8) !important;
backdrop-filter: blur(10px);
border: 1px solid var(--theme-border-color);
box-shadow: var(--shadow-xl);
z-index: 99 !important;
}


    .item-info-table {
/* THE GAME Card Improvement */
        background: #2d3748;
body.page-Main_Page .game-intro-card {
    }
background: var(--card-bg-elevated);
border-radius: var(--border-radius-lg);
border: 1px solid var(--theme-border-color);
box-shadow: var(--shadow-lg);
overflow: hidden;
}


    .item-info-table th {
body.page-Main_Page .game-header {
        background: #4a5568;
background: linear-gradient(90deg, var(--teal-700) 0%, var(--teal-900) 100%);
        color: #e2e8f0;
padding: var(--spacing-md) var(--spacing-lg);
    }
}


    .item-info-table th,
body.action-edit #content,
    .item-info-table td {
body.action-submit #content {
        border-bottom-color: #4a5568;
margin-top: 50px !important;
        color: #e2e8f0;
margin-left: 11em !important;
    }
background: #ffffff !important;
padding: 20px !important;
}


    .upgrade-section h4,
/* Character Infobox */
    .mutation-section h4 {
.character-infobox {
        color: #e2e8f0;
float: right;
    }
clear: right;
max-width: 300px;
width: 100%;
margin: 0 0 16px 16px;
border: 1px solid var(--theme-border-color);
border-radius: var(--border-radius-md);
background-color: var(--gray-050);
font-size: 0.9em;
}


    .upgrade-list,
.character-header {
    .mutation-list {
background: var(--teal-600);
        color: #a0aec0;
color: var(--theme-accent-label-color);
    }
padding: 8px 10px;
border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
text-align: center;
font-weight: var(--font-weight-bold);
}


    .icon-container {
.character-title {
        background: #2d3748;
font-size: 1.5em;
        border-color: #4a5568;
}
    }


    .item-card-image {
.character-image {
        background: #2d3748;
padding: 10px;
        border-color: #4a5568;
text-align: center;
    }
}


    .item-description {
.character-section {
        background: #2d3748;
padding: 5px 10px;
    }
}


    .item-description p {
.section-title {
        color: #a0aec0;
font-size: 1.1em;
    }
font-weight: var(--font-weight-semibold);
margin-top: 10px;
margin-bottom: 5px;
border-bottom: 1px solid var(--theme-border-color--subtle);
}


    /* Dark theme element glows */
.data-row {
    .element-nature { --element-glow: rgba(39, 174, 96, 0.1); }
display: flex;
    .element-earth { --element-glow: rgba(139, 69, 19, 0.1); }
justify-content: space-between;
    .element-sky { --element-glow: rgba(52, 152, 219, 0.1); }
padding: 3px 0;
    .element-night { --element-glow: rgba(44, 62, 80, 0.1); }
border-bottom: 1px dotted var(--gray-300);
    .element-water { --element-glow: rgba(41, 128, 185, 0.1); }
    .element-beast { --element-glow: rgba(230, 126, 34, 0.1); }
    .element-fire { --element-glow: rgba(231, 76, 60, 0.1); }
    .element-generic { --element-glow: rgba(149, 165, 166, 0.1); }
}
}


/* Responsive */
.data-label {
@media (max-width: 768px) {
font-weight: var(--font-weight-medium);
    .card-container {
color: var(--gray-700);
        flex-direction: column;
    }
   
    .card-content-right {
        width: 100%;
        order: -1;
    }
   
    .item-card-image {
        width: 100%;
        height: 300px;
    }
   
    .card-navbox-item {
        padding: 16px;
    }
}
}


/* Animation */
/* ===== PORTABLE INFOBOX STYLING ===== */
@keyframes cardEntry {
.portable-infobox {
    from {
float: right;
        opacity: 0;
clear: right;
        transform: translateY(20px);
margin: 0 0 15px 15px;
    }
max-width: 300px;
    to {
width: 100%;
        opacity: 1;
border: 1px solid var(--theme-border-color, #ccc);
        transform: translateY(0);
border-radius: 8px;
    }
background-color: var(--gray-050, #f8f9fa);
font-size: 14px;
}
}


.card-navbox-item {
/* Remove margins from ALL paragraphs inside infobox */
    animation: cardEntry 0.3s ease-out;
.portable-infobox p {
margin: 0 !important;
}
}
/* END CardNavbox SETUP */
/***********************
* End main page layout *
************************/


.portable-infobox .pi-header {
padding: 0 5px;
}


/*********************************************************************************************************************
.portable-infobox .pi-title {
* Semantically-correct horizontal lists (for Module:Navbox, and they're more machine-readable than {{*}}-formatting) *
background: var(--teal-600, #00897b);
**********************************************************************************************************************/
color: var(--theme-accent-label-color, white);
.hlist dl,
padding: 8px 10px;
.hlist ol,
border-top-left-radius: 8px;
.hlist ul {
border-top-right-radius: 8px;
text-align: center;
font-weight: bold;
font-size: 1.2em;
margin: 0;
margin: 0;
}
.portable-infobox .pi-title p {
margin: 0 !important;
padding: 0;
padding: 0;
}
}


/* Display list items inline */
.portable-infobox .pi-group {
.hlist dd,
padding: 10px;
.hlist dt,
}
.hlist li {
 
/*
.portable-infobox .pi-group .pi-header {
* don't trust the note that says margin doesn't work with inline
font-size: 1.1em;
* removing margin: 0 makes dds have margins again
font-weight: 600;
* We also want to reset margin-right in Minerva
margin: 10px 0 5px 0;
*/
padding-bottom: 5px;
border-bottom: 1px solid var(--theme-border-color--subtle, #e0e0e0);
color: var(--gray-800, #3c4043);
}
 
.portable-infobox .pi-group .pi-header p {
margin: 0 !important;
}
 
.portable-infobox .pi-item {
display: flex;
justify-content: space-between;
padding: 5px 0;
border-bottom: 1px dotted var(--gray-300, #dadce0);
align-items: flex-start;
/* Align items at the top */
}
 
.portable-infobox .pi-item:last-child {
border-bottom: none;
}
 
.portable-infobox .pi-data-label {
font-weight: 500;
color: var(--gray-700, #5f6368);
padding: 0 5px 0 0;
min-width: 40%;
flex-shrink: 0;
/* Prevent label from shrinking */
}
 
.portable-infobox .pi-data-label p {
margin: 0 !important;
}
 
.portable-infobox .pi-data-value {
color: var(--gray-900, #202124);
padding: 0 0 0 5px;
min-width: 60%;
text-align: right;
flex-grow: 1;
/* Allow value to grow */
}
 
.portable-infobox .pi-data-value p {
margin: 0 !important;
}
 
/* Horizontal layout groups - fix table layout */
.portable-infobox .pi-horizontal-group {
width: 100%;
border-collapse: collapse;
margin: 0;
margin: 0;
display: inline;
}
}


/* Display requested top-level lists inline */
.portable-infobox .pi-horizontal-group caption {
.hlist.inline,
font-size: 1.1em;
.hlist.inline dl,
font-weight: 600;
.hlist.inline ol,
margin: 10px 0 5px 0;
.hlist.inline ul,
padding-bottom: 5px;
/* Display nested lists inline */
border-bottom: 1px solid var(--theme-border-color--subtle, #e0e0e0);
.hlist dl dl,
color: var(--gray-800, #3c4043);
.hlist dl ol,
text-align: left;
.hlist dl ul,
caption-side: top;
.hlist ol dl,
.hlist ol ol,
.hlist ol ul,
.hlist ul dl,
.hlist ul ol,
.hlist ul ul {
display: inline;
}
}


/* Hide empty list items */
.portable-infobox .pi-horizontal-group caption p {
.hlist .mw-empty-li {
margin: 0 !important;
display: none;
}
}


/* TODO: :not() can maybe be used here to remove the later rule. naive test
.portable-infobox .pi-horizontal-group th,
*  seems to work. more testing needed. like so: */
.portable-infobox .pi-horizontal-group td {
.hlist dt:not(:last-child)::after {
padding: 8px;
content: ":\20";
text-align: center;
border: 1px solid var(--theme-border-color--subtle, #e0e0e0);
}
}


.hlist dd:not(:last-child)::after,
.portable-infobox .pi-horizontal-group th {
.hlist li:not(:last-child)::after {
font-weight: 500;
/* "space, Middle Dot, space"
color: var(--gray-700, #5f6368);
We use unicode numbers instead of the raw characters due to a Firefox encoding bug on unicode characters.
background-color: var(--gray-100, #f1f3f4);
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 whitespace 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 */
.portable-infobox .pi-horizontal-group th p,
.hlist dd ol::before,
.portable-infobox .pi-horizontal-group td p {
.hlist dd ul::before,
margin: 0 !important;
.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,
/* Image styling */
.hlist dd ul::after,
.portable-infobox .pi-image {
.hlist dd dl::after,
padding: 10px;
.hlist dt ol::after,
text-align: center;
.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 */
.pi-image-thumbnail {
.hlist ol {
max-width: 100% !important;
counter-reset: listitem;
height: auto;
border-radius: 4px;
border: 1px solid var(--theme-border-color--subtle, #e0e0e0);
}
}


.hlist ol > li {
.portable-infobox .pi-image .pi-caption {
counter-increment: listitem;
font-size: 0.85em;
color: var(--gray-600, #757575);
margin-top: 5px;
font-style: italic;
}
}


.hlist ol > li::before {
.portable-infobox .pi-image .pi-caption p {
content: " " counter(listitem) ".\20";
margin: 0 !important;
}
}


/* Progressive enhancement:
/* Clear float after infobox */
* try to make the dot always follow the list item in same line
.mw-parser-output::after {
*/
content: "";
.hlist :is(li,dt,dd):not(:has(:is(li,dt,dd))) {
display: table;
display: inline-block;
clear: both;
}
 
/* Mobile responsiveness */
@media (max-width: 768px) {
.portable-infobox {
float: none;
max-width: 100%;
margin: 0 0 16px 0;
}
 
.portable-infobox .pi-item {
flex-direction: column;
}
 
.portable-infobox .pi-data-label,
.portable-infobox .pi-data-value {
min-width: 100%;
text-align: left;
padding: 0;
}
 
.portable-infobox .pi-data-label {
padding-bottom: 2px;
}
 
.portable-infobox .pi-data-value {
padding-top: 2px;
}
 
/* Horizontal table becomes vertical on mobile */
.portable-infobox .pi-horizontal-group {
display: block;
}
 
.portable-infobox .pi-horizontal-group thead,
.portable-infobox .pi-horizontal-group tbody,
.portable-infobox .pi-horizontal-group tr {
display: block;
}
 
.portable-infobox .pi-horizontal-group th,
.portable-infobox .pi-horizontal-group td {
display: block;
text-align: left;
border: none;
border-bottom: 1px solid var(--theme-border-color--subtle, #e0e0e0);
}
 
.portable-infobox .pi-horizontal-group th {
background-color: transparent;
font-weight: 600;
padding-top: 10px;
}
 
.portable-infobox .pi-horizontal-group td {
padding-bottom: 10px;
}
}
 
/* ===== WEAPON INFOBOX STYLING ===== */
.weapon-infobox {
float: right;
clear: right;
max-width: 300px;
width: 100%;
margin: 0 0 16px 16px;
border: 1px solid #1a6a7a;
border-radius: 10px;
background-color: #ffffff;
font-size: 0.9em;
}
}


/********************************************
.weapon-header {
* End semantically-correct horizontal lists *
background: #1a6a7a;
*********************************************/
color: white;
padding: 8px 10px;
text-align: center;
font-weight: bold;
font-size: 1.5em;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}


/*** Miscellaneous ***/
.weapon-image {
.responsive-image {
padding: 10px;
text-align: center;
}
 
.weapon-image img {
max-width: 100%;
max-width: 100%;
height: auto;
height: auto;
box-sizing: border-box;
border-radius: 4px;
border: 1px solid #e0e0e0;
}
 
.weapon-section {
padding: 0;
}
 
.section-title {
padding: 5px 10px;
color: #4a5568;
font-weight: bold;
border-bottom: 1px solid #a2a9b1;
margin: 10px 0 5px 0;
}
 
.weapon-section>div {
display: flex;
justify-content: space-between;
padding: 5px 10px;
border-bottom: 1px dotted #a2a9b1;
}
 
.weapon-section>div:last-child {
border-bottom: none;
}
 
.weapon-section>div>span:first-child {
font-weight: 500;
color: #4a5568;
width: 40%;
text-align: left;
}
 
.weapon-section>div>span:last-child {
color: #4a5568;
text-align: right;
width: 60%;
}
 
/* Horizontal requirements section */
.weapon-section>div[style*="display: flex !important; justify-content: space-around"] {
display: flex !important;
justify-content: space-around !important;
padding: 10px !important;
text-align: center !important;
border-bottom: none !important;
}
 
.weapon-section>div[style*="display: flex !important; justify-content: space-around"]>div {
flex: 1;
padding: 5px;
}
 
.weapon-section>div[style*="display: flex !important; justify-content: space-around"]>div>div:first-child {
font-weight: 500;
color: #4a5568;
font-size: 0.9em;
margin-bottom: 3px;
}
}


.view-dark .invert-on-dark,
.weapon-section>div[style*="display: flex !important; justify-content: space-around"]>div>div:last-child {
.view-light .invert-on-light {
font-weight: bold;
filter: invert(100%);
color: #4a5568;
font-size: 1.1em;
}
}


.pixelated {
/* Clear float */
image-rendering: pixelated;
.mw-parser-output::after {
content: "";
display: table;
clear: both;
}
}


@media screen and (min-width: 720px) {
/* Mobile responsiveness */
.mobileonly {
@media (max-width: 768px) {
display: none;
.weapon-infobox {
float: none;
max-width: 100%;
margin: 0 0 16px 0;
}
}
}
}


@media screen and (max-width: 720px) {
/* ===== MONSTER INFOBOX STYLING ===== */
.nomobile {
.monster-infobox {
display: none;
float: right;
}
clear: right;
max-width: 350px;
width: 100%;
margin: 0 0 16px 16px;
border: 1px solid #7a1a1a;
border-radius: 10px;
background-color: #ffffff;
font-size: 0.9em;
}
}


/*** Utility classes for standard MW galleries ***/
.monster-header {
/* it's important that spaced comes before centered in the sheet */
background: #7a1a1a;
.gallery.gallery.gallery.spaced { /* this selector looks ridiculous but is actually part of stock Vector and therefore a necessary override */
color: white;
display: flex;
padding: 8px 10px;
flex-flow: row wrap;
text-align: center;
justify-content: space-evenly;
font-weight: bold;
margin-left: unset;
font-size: 1.5em;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
}


.gallery.centered {
.monster-image {
padding: 10px;
text-align: center;
text-align: center;
}
}


/**************************
.monster-image img {
* Start Modular Templates *
max-width: 100%;
**************************/
height: auto;
border-radius: 4px;
border: 1px solid #e0e0e0;
}


/********* [[Template:Ambox]] *********/
.monster-section {
.ambox {
padding: 0;
--ambox-color: var(--wiki-accent-color);
}


border: 1px solid var(--wiki-content-border-color);
.monster-section .section-title {
border-left: 10px solid var(--ambox-color);
padding: 5px 10px;
border-radius: 4px;
color: #4a5568;
font-weight: bold;
border-bottom: 1px solid #a2a9b1;
margin: 10px 0 5px 0;
}
 
.monster-section>div[style*="display: flex"] {
display: flex;
display: flex;
align-items: center;
justify-content: space-between;
gap: .6em;
padding: 5px 10px;
margin: 1em 0;
border-bottom: 1px dotted #a2a9b1;
padding: 3px .6em;
}
background-color: var(--wiki-content-background-color--secondary);
 
box-shadow: 2px 2px 5px 0px #0002;
.monster-section>div[style*="display: flex"]:last-child {
border-bottom: none;
}
 
.monster-section>div[style*="display: flex"]>span:first-child {
font-weight: 500;
color: #4a5568;
width: 40%;
text-align: left;
}
 
.monster-section>div[style*="display: flex"]>span:last-child {
color: #4a5568;
text-align: right;
width: 60%;
}
 
/* Phase sections */
.monster-section>div[style*="Phase"] {
background: #f0f0f0;
padding: 8px 10px;
font-weight: bold;
color: #7a1a1a;
border-left: 3px solid #7a1a1a;
margin: 10px 0 5px 0;
}
 
.monster-section>div[style*="line-height: 1.4"] {
padding: 5px 10px 10px 10px;
color: #4a5568;
line-height: 1.4;
}
 
/* Lists (for weaknesses, drops, etc.) */
.monster-section ul {
margin: 0 !important;
padding-left: 20px !important;
}
 
.monster-section li {
margin-bottom: 3px;
color: #4a5568;
}
 
/* Clear float */
.mw-parser-output::after {
content: "";
display: table;
clear: both;
}
}


@media (min-width: 720px) {
/* Mobile responsiveness */
.ambox {
@media (max-width: 768px) {
margin-inline: 10%;
.monster-infobox {
float: none;
max-width: 100%;
margin: 0 0 16px 0;
}
}
}
}


.ambox.tiny {
/* ROLES TABLE */
padding: .04rem .5em;
.roles-table {
margin-inline: 0;
background-color: transparent !important;
width: fit-content;
width: 100% !important;
table-layout: auto !important;
margin: 1rem 0 !important;
}
 
.roles-table>tr>th,
.roles-table>*>tr>th {
background-color: var(--teal-600);
color: #000 !important;
padding: 12px 8px !important;
font-weight: bold !important;
text-align: center !important;
border: 1px solid #aaa !important;
}
 
.roles-table>tr>th:first-child,
.roles-table>*>tr>th:first-child {
min-width: 180px !important;
}
}


.ambox + .ambox {
.roles-table>tr>th:nth-child(2),
margin-top: -.6em;
.roles-table>*>tr>th:nth-child(2) {
min-width: 300px !important;
}
}


.ambox-content {
.roles-table>tr>th:nth-child(3),
flex: 1;
.roles-table>*>tr>th:nth-child(3),
.roles-table>tr>th:nth-child(4),
.roles-table>*>tr>th:nth-child(4) {
min-width: 150px !important;
}
}


.ambox-content p {
.roles-table>tr>td,
margin: .15em 0;
.roles-table>*>tr>td {
padding: 10px 8px !important;
border: 1px solid #aaa !important;
vertical-align: top !important;
word-wrap: break-word !important;
overflow-wrap: break-word !important;
}
}


.ambox-title {
.roles-table>tr>td:first-child,
font-weight: bold;
.roles-table>*>tr>td:first-child {
font-weight: bold !important;
white-space: nowrap !important;
}
}


/********* [[Template:Hatnote]] *********/
.roles-table>tr>td:nth-child(2),
.hatnote {
.roles-table>*>tr>td:nth-child(2) {
padding: 1px 0 1px 1.6em;
white-space: normal !important;
margin-bottom: 0.5em;
word-break: break-word !important;
font-style: italic;
border-top: 1px solid var(--wiki-content-border-color--secondary);
border-bottom: 1px solid var(--wiki-content-border-color--secondary);
}
}


.hatnote.icon {
.client-js .roles-table.sortable>*>tr:first-child>th:not(.unsortable),
padding-left: 0;
.jquery-tablesorter th.headerSort {
font-size: 12px !important;
white-space: normal !important;
cursor: pointer !important;
position: relative !important;
padding-right: 20px !important;
}
}


/********* [[Template:Spoiler]] *********/
.client-js .roles-table.sortable>*>tr:first-child>th:not(.unsortable):after,
.spoiler-content {
.jquery-tablesorter th.headerSort:after {
background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 50%, transparent);
content: "↕" !important;
transition: all 0.3s;
position: absolute !important;
cursor: pointer;
right: 5px !important;
overflow: auto;
font-size: 10px !important;
opacity: 0.5 !important;
}
}


@supports not (color:color-mix(in srgb, #000, transparent)) {
/* Category breakdown tables */
.spoiler-content {
.category-table,
background-color: var(--wiki-content-dynamic-color--secondary);
.location-table {
}
background-color: transparent !important;
width: 100% !important;
margin: 1rem 0 !important;
}
}


.spoiler-content > * {
.category-table>tr>th,
pointer-events: none;
.category-table>*>tr>th,
opacity: 0;
.location-table>tr>th,
transition: all 0.3s;
.location-table>*>tr>th {
background-color: var(--teal-600) !important;
color: #000 !important;
padding: 12px 8px !important;
font-weight: bold !important;
text-align: center !important;
border: 1px solid #aaa !important;
}
}


.spoiler-content.show {
.category-table>tr>th:nth-child(1),
background-color: transparent;
.category-table>*>tr>th:nth-child(1),
.location-table>tr>th:nth-child(1),
.location-table>*>tr>th:nth-child(1) {
width: 30% !important;
min-width: 150px !important;
}
}


.spoiler-content.show > * {
.category-table>tr>th:nth-child(2),
pointer-events: unset;
.category-table>*>tr>th:nth-child(2),
opacity: 1;
.location-table>tr>th:nth-child(2),
.location-table>*>tr>th:nth-child(2) {
width: 15% !important;
min-width: 80px !important;
}
}


/********* [[Template:Link icon]] *********/
.category-table>tr>th:nth-child(3),
.link-icon {
.category-table>*>tr>th:nth-child(3),
--link-icon-line-height: 1.5em;
.location-table>tr>th:nth-child(3),
--link-icon-size: 1.5em;
.location-table>*>tr>th:nth-child(3) {
display: inline-flex;
width: 55% !important;
align-items: center;
height: var(--link-icon-line-height);
vertical-align: bottom;
}
}


.link-icon .regular {
.category-table>tr>td,
align-self: center;
.category-table>*>tr>td,
.location-table>tr>td,
.location-table>*>tr>td {
padding: 10px 8px !important;
border: 1px solid #aaa !important;
vertical-align: top !important;
}
}


.link-icon .regular a {
.category-table>tr>td:nth-child(3),
display: flex;
.category-table>*>tr>td:nth-child(3),
.location-table>tr>td:nth-child(3),
.location-table>*>tr>td:nth-child(3) {
word-wrap: break-word !important;
overflow-wrap: break-word !important;
}
}


.link-icon .regular img {
.category-table>tr:last-child>td,
height: var(--link-icon-size);
.category-table>*>tr:last-child>td,
max-width: var(--link-icon-size);
.location-table>tr:last-child>td,
.location-table>*>tr:last-child>td {
font-weight: bold !important;
background-color: #f5f5f5 !important;
}
}


.link-icon .fallback {
/* Race System Styling */
outline: 1px solid var(--wiki-content-text-color);
 
border-radius: 50%;
.race-tooltip-container {
text-align: center;
position: relative;
width: var(--link-icon-size);
display: inline-block;
line-height: var(--link-icon-size);
cursor: pointer;
}
}


.link-icon.notext,
.race-link {
.link-icon.notext .fallback {
font-weight: bold;
text-decoration: none !important;
border-bottom: 1px dotted;
transition: all 0.2s ease;
display: inline-block;
display: inline-block;
}
}


/********* [[Template:Quote]] *********/
.race-tooltip-container:hover .race-link {
.quote {
opacity: 0.9;
background: var(--wiki-content-background-color--secondary);
}
border-radius: 5px;
 
border: 2px solid var(--wiki-content-border-color);
/* Tooltip on LEFT side of link */
margin: .5em 0;
.race-tooltip {
padding: .5em;
visibility: hidden;
overflow-y: hidden;
width: 250px;
background-color: #2c3e50;
color: #ecf0f1;
text-align: left;
padding: 12px;
border-radius: 8px;
position: absolute;
z-index: 1000;
top: 50%;
right: 100%;
transform: translateY(-50%);
margin-right: 10px;
opacity: 0;
transition: opacity 0.3s;
font-size: 0.9em;
font-weight: normal;
line-height: 1.4;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
border: 1px solid #34495e;
}
 
.race-tooltip::after {
content: "";
position: absolute;
top: 50%;
left: 100%;
transform: translateY(-50%);
border-width: 8px;
border-style: solid;
border-color: transparent transparent transparent #2c3e50;
}
}


.quote .block {
.race-tooltip strong {
color: #3498db;
font-size: 1.1em;
display: block;
display: block;
margin-bottom: 5px;
}
.race-tooltip small {
color: #bdc3c7;
font-size: 0.85em;
}
}


.quote .title {
.race-tooltip-container:hover .race-tooltip {
font-size: large;
visibility: visible;
font-weight: bold;
opacity: 0.98;
}
}


.quote .content {
.race-error {
color: #d33;
font-style: italic;
font-style: italic;
background: #fee;
padding: 2px 5px;
border-radius: 3px;
}
}


.quote .author {
.race-badge {
display: inline-block;
font-weight: bold;
font-weight: bold;
text-align: end;
transition: transform 0.2s ease;
}
 
.race-badge:hover {
transform: translateY(-2px);
text-decoration: none !important;
}
 
.race-infobox {
border-collapse: collapse;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
margin-left: 15px;
}
 
.race-infobox tr:nth-child(even) {
background-color: #f8f8f8;
}
}


.quote .marks-wrapper {
.race-infobox td {
display: flex;
border-bottom: 1px solid #eee;
gap: 5px;
}
 
/* For smaller screens */
@media screen and (max-width: 768px) {
.race-tooltip {
width: 240px;
font-size: 0.85em;
padding: 10px;
}
 
.race-infobox {
width: 100% !important;
float: none !important;
margin: 10px 0 !important;
}
}
 
/* For very small screens */
@media screen and (max-width: 480px) {
.race-tooltip {
width: 200px;
left: 0;
transform: translateX(0);
}
 
.race-tooltip::after {
left: 20px;
transform: translateX(0);
}
}
/* ===== NAVBOX STYLING ===== */
 
/* Base navbox */
.navbox {
    width: 100% !important;
    margin: 1.5em 0 !important;
    border-spacing: 0 !important;
    border-collapse: separate !important;
    border: 1px solid var(--theme-border-color) !important;
    background-color: var(--card-bg-main) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}
 
/* Navbox title/header */
.navbox-title {
    background: var(--teal-100) !important;
}
 
.navbox-title th {
    padding: 12px 16px !important;
    font-weight: 600 !important;
    font-size: 1.1em !important;
    text-align: center !important;
    border-bottom: 2px solid var(--teal-800) !important;
}
 
.navbox-title a {
    text-decoration: none !important;
}
 
.navbox-title a:hover {
    text-decoration: underline !important;
}
 
/* Navbox group headers */
.navbox-group {
    background-color: var(--teal-50) !important;
    width: 180px !important;
    min-width: 180px !important;
    vertical-align: top !important;
    border-right: 1px solid var(--teal-200) !important;
}
 
.navbox-group th {
    background: transparent !important;
    font-size: 0.95em !important;
    padding: 10px 12px !important;
    text-align: left !important;
    font-weight: 600 !important;
}
 
/* Navbox list/content cells */
.navbox-list {
    padding: 12px !important;
    line-height: 1.5 !important;
    vertical-align: top !important;
    background-color: var(--card-bg-main) !important;
}
 
.navbox-list td {
    padding: 12px !important;
}
 
/* Navbox list items - SEPARATED STYLE (like chips) */
.navbox-list ul {
    list-style: none !important;
    padding-left: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}
 
.navbox-list li {
    margin-bottom: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    background: var(--teal-50) !important;
    border-radius: 4px !important;
    border: 1px solid var(--teal-100) !important;
}
 
/* Links inside navbox - Chip style */
.navbox-list a,
.navbox-group a {
    text-decoration: none !important;
    padding: 5px 10px !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}
 
.navbox-list a:hover,
.navbox-group a:hover {
    background-color: var(--teal-100) !important;
    text-decoration: underline !important;
}
 
/* Alternative row styling */
.alt .navbox-list {
    background-color: rgba(56, 178, 172, 0.05) !important;
}
 
.alt .navbox-list li {
    background: rgba(56, 178, 172, 0.1) !important;
    border-color: rgba(56, 178, 172, 0.2) !important;
}
 
/* Subgroup styling */
.navbox-subgroup {
    margin: 10px 0 0 0 !important;
    border-spacing: 0 !important;
    width: 100% !important;
    border-top: 1px solid var(--teal-100) !important;
    padding-top: 10px !important;
}
 
.navbox-subgroup .navbox-group {
    background-color: var(--teal-100) !important;
    width: 160px !important;
    min-width: 160px !important;
}
 
/* Small navboxes */
.navbox-small {
    width: auto !important;
    min-width: 250px !important;
    max-width: 300px !important;
    float: right !important;
    margin: 0 0 16px 16px !important;
}
 
.navbox-small .navbox-list ul {
    gap: 4px !important;
}
 
/* ===== COLLAPSIBLE NAVBOX ===== */
 
.mw-collapsible .navbox-title {
    cursor: pointer !important;
    padding-right: 40px !important;
    position: relative !important;
}
 
.mw-collapsible .navbox-title:after {
    content: "▼" !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: white !important;
    font-size: 12px !important;
    font-weight: bold !important;
    background: rgba(255, 255, 255, 0.2) !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
 
.mw-collapsible.mw-collapsed .navbox-title:after {
    content: "▶" !important;
}
 
.mw-collapsible-content {
    overflow: hidden !important;
}
 
/* ===== HORIZONTAL NAVBOXES ===== */
 
.navbox-horizontal .navbox-list ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}
 
.navbox-horizontal .navbox-list li {
    display: inline-flex !important;
}
 
.navbox-horizontal .navbox-list li:not(:last-child):after {
    display: none !important;
}
 
/* ===== DARK THEME ===== */
 
.skin-vector-dark .navbox {
    background-color: var(--card-bg-main) !important;
    border-color: var(--teal-700) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2) !important;
}
 
.skin-vector-dark .navbox-title {
    background: var(--teal-800) !important;
    border-bottom-color: var(--teal-900) !important;
}
 
.skin-vector-dark .navbox-group {
    background-color: rgba(95, 217, 207, 0.1) !important;
    border-right-color: var(--teal-700) !important;
}
 
.skin-vector-dark .navbox-group th {
    color: var(--teal-200) !important;
}
 
.skin-vector-dark .navbox-list li {
    background: rgba(95, 217, 207, 0.1) !important;
    border-color: rgba(95, 217, 207, 0.2) !important;
}
}


.quote .marks-wrapper::before,
.skin-vector-dark .navbox-list a:hover,
.quote .marks-wrapper::after {
.skin-vector-dark .navbox-group a:hover {
font-size: 100px;
    background-color: rgba(95, 217, 207, 0.2) !important;
line-height: 0px;
}
}


.quote .marks-wrapper::before {
.skin-vector-dark .alt .navbox-list {
content: "\201C";
    background-color: rgba(95, 217, 207, 0.05) !important;
margin-top: 40px;
}
}


.quote .marks-wrapper::after {
.skin-vector-dark .alt .navbox-list li {
content: "\201D";
    background: rgba(95, 217, 207, 0.15) !important;
align-self: end;
    border-color: rgba(95, 217, 207, 0.25) !important;
margin-bottom: -10px;
}
}


.client-js .mw-charinsert-item {
.skin-vector-dark .mw-collapsible .navbox-title:after {
display: none;
    background: rgba(255, 255, 255, 0.15) !important;
}
}


/************************
/* ===== RESPONSIVE DESIGN ===== */
* End Modular Templates *
*************************/


/*****************************
@media screen and (max-width: 768px) {
* Used by [[Template:Color]] *
    .navbox {
******************************/
        margin: 1em 0 !important;
.color__splotch {
    }
display: inline-block;
   
height: 1em;
    .navbox-small {
width: 1em;
        float: none !important;
box-sizing: border-box;
        width: 100% !important;
vertical-align: text-top;
        max-width: 100% !important;
border-radius: 50%;
        margin: 1em 0 !important;
border: 1px solid var(--wiki-content-text-color);
    }
   
    .navbox-group,
    .navbox-group th {
        width: 100% !important;
        min-width: 100% !important;
        display: block !important;
        border-right: none !important;
        border-bottom: 1px solid var(--teal-200) !important;
    }
   
    .navbox-list {
        padding: 10px !important;
    }
   
    .navbox-list ul {
        gap: 4px !important;
    }
   
    .navbox-list li {
        font-size: 0.9em !important;
    }
}
}


/*********************
/* ===== ACCESSIBILITY ===== */
* End Template:Color *
**********************/


/*********************************
.navbox a:focus-visible {
* Used by [[Template:TOC limit]] *
    outline: 2px solid var(--focus-ring-color) !important;
**********************************/
    outline-offset: 2px !important;
.toclimit-2 .toclevel-1 ul,
    border-radius: 3px !important;
.toclimit-3 .toclevel-2 ul,
.toclimit-4 .toclevel-3 ul,
.toclimit-5 .toclevel-4 ul,
.toclimit-6 .toclevel-5 ul,
.toclimit-7 .toclevel-6 ul {
display: none;
}
}
/*************************
* End Template:TOC limit *
**************************/


/*********************************
@media (prefers-reduced-motion: reduce) {
* Used by [[Template:TOC right]] *
    .navbox,
**********************************/
     .navbox a {
@media all and (min-width: 720px) {
        transition: none !important;
.tocright {
     }
     float: left;
    clear: left;
     margin: 0 1em 0.5em 0;
  }
}
}
/*************************
* End Template:TOC right *
**************************/

Latest revision as of 07:52, 24 February 2026

.class {}

/* needed for some reason for the @imports to work */
/* Imports caching */
/*@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Colors.css");*/
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Module:Documentation.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Documentation.css");
/*@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Infobox.css");*/
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Tables.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:MessageBox.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:CustomTabs.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Navbox.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Icons.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Dialogue.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Cards.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Tabbers.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Mobile.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Recipe.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:Modal.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:AceEditor.css");
@import url("https://mbwiki.stairwaygames.work/wiki/MediaWiki:CodeMirror.css");

:root {
	/* Universal Base Styles */
	--font-size: 16px;
	/* Slightly larger base */
	--font-size-small: 14px;
	--font-size-large: 18px;
	--font-size-xlarge: 20px;
	--font-size-h1: 32px;
	--font-size-h2: 26px;
	--font-size-h3: 22px;
	--font-size-h4: 18px;

	--line-height: 1.6;
	/* More breathing room */
	--line-height-headings: 1.3;
	--line-height-tight: 1.25;

	--font-weight-normal: 400;
	--font-weight-medium: 500;
	--font-weight-semibold: 600;
	--font-weight-bold: 700;
	--wiki-content-text-color: var(--theme-page-text-color, #1a2a2a);

	/* ===== SPACING ===== */
	--spacing-xs: 4px;
	--spacing-sm: 8px;
	--spacing-md: 16px;
	--spacing-lg: 24px;
	--spacing-xl: 32px;
	--spacing-2xl: 48px;

	/* ===== SHADOWS & DEPTH ===== */
	--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.12);
	--shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
	--shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
	--shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.15);
	--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.06);

	/* ===== BORDERS & RADIUS ===== */
	--wiki-content-border-color: var(--theme-border-color, #a1e9dc);
	--border-radius-sm: 4px;
	--border-radius-md: 8px;
	--border-radius-lg: 2px;
	--border-radius-full: 9999px;

	--border-width: 1px;
	--border-width-thick: 2px;
	--border-width-xthick: 3px;

	/* ===== TRANSITIONS ===== */
	--transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
	--transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
	--transition-slow: 350ms cubic-bezier(0.4, 0, 0.2, 1);

	/* ===== Z-INDEX LAYERS ===== */
	--z-index-dropdown: 1000;
	--z-index-sticky: 1020;
	--z-index-fixed: 1030;
	--z-index-modal-backdrop: 1040;
	--z-index-modal: 1050;
	--z-index-popover: 1060;
	--z-index-tooltip: 1070;

	/* ===== FOCUS STATES ===== */
	--focus-ring-color: rgba(79, 209, 199, 0.6);
	--focus-ring-color-dark: rgba(79, 209, 199, 0.8);
	--focus-ring-width: 3px;
	--focus-ring-offset: 2px;

	/* ===== GRAY SCALE (Optimized) ===== */
	--gray-950: #0f1419;
	--gray-900: #1a202c;
	--gray-800: #2d3748;
	--gray-700: #4a5568;
	--gray-600: #718096;
	--gray-500: #a0aec0;
	--gray-400: #cbd5e0;
	--gray-300: #e2e8f0;
	--gray-200: #edf2f7;
	--gray-100: #f7fafc;
	--gray-050: #ffffff;

	/* ===== TEAL/BLUE SCALE ===== */
	--teal-900: #1d4044;
	--teal-800: #234e52;
	--teal-700: #285e61;
	--teal-600: #2c7a7b;
	--teal-500: #319795;
	--teal-400: #38b2ac;
	--teal-300: #4fd1c7;
	--teal-200: #81e6d9;
	--teal-100: #b2f5ea;
	--teal-050: #e6fffa;

	/* ===== OTHER COLORS ===== */
	--light-blue: #90cdf4;
	--gold: #d69e2e;
	--purple: #9f7aea;

	/* ===== ANIMATIONS ===== */
	--animation-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
	--animation-spin: spin 1s linear infinite;
	--animation-bounce: bounce 1s infinite;

	/* Universal border */
	--border-color: var(--theme-border-color);
	/*Navigation*/
	--mb-navigation-left-spacing: 0px;
	--mb-navigation-right-spacing: 0px;
	--mb-navigation-tab-spacing: 0px;
	--mb-navigation-gap-between-left-and-right: 0px;
	--mb-navigation-bottom-spacing: 0px;
	--mb-navigation-border-bottom-width: 1px;
	--mb-navigation-border-width: 1px;
	--mb-navigation-border-style: solid;
	--mb-navigation-border-color: var(--theme-border-color);
	--mb-navigation-border-bottom-color: var(--theme-border-color);
	--mb-navigation-border-bottom-style: solid;
	--mb-navigation-text-color: var(--theme-page-text-color);
	--mb-navigation-background-color: var(--theme-page-background-color--secondary);
	--mb-navigation-background-opacity: 100%;
	--mb-navigation-tab-padding-top: 1.25em;
	--mb-navigation-tab-padding-x: 0.75em;
	--mb-navigation-tab-padding-bottom: 4px;
	--mb-navigation-border-radius: 4px 4px 0 0;
	--mb-navigation-font-size: 0.8125em;
	--mb-navigation-font-weight: normal;

	/* Selected tab variables */
	--mb-navigation-selected-border-color: var(--theme-accent-color);
	--mb-navigation-selected-background-color: var(--theme-accent-color);
	--mb-navigation-selected-text-color: var(--theme-accent-label-color);
	--mb-navigation-selected-border-width: 1px;
	--mb-navigation-selected-border-style: solid;

	/* Hover variables */
	--mb-navigation-text-color--hover: var(--theme-link-color);
	--mb-navigation-border-color--hover: var(--theme-border-color);

	/* Content variables */
	--mb-content-border-top-radius: 0px;
	--mb-content-border-radius: 0px;
	--mb-is-navigation-inside-content: 0;

	/* Dropdown variables */
	--mb-navigation-dropdown-border-width: 1px;
	--mb-navigation-dropdown-border-color: var(--theme-border-color);
	--mb-navigation-dropdown-border-radius: 4px;
	--mb-navigation-dropdown-background-color: var(--card-bg-main);
	--mb-navigation-dropdown-background-opacity: 100%;
	--mb-navigation-dropdown-box-shadow: var(--shadow-lg);
	--mb-navigation-dropdown-padding: var(--spacing-sm) 0;
	--mb-navigation-dropdown-offset: 4px;
	--mb-navigation-dropdown-text-color: var(--theme-page-text-color);
	--mb-navigation-dropdown-text-color--hover: var(--theme-link-color);
	--mb-navigation-dropdown-item-padding: 8px 16px;

	/* Search variables */
	--mb-navigation-search-bottom-spacing: 3px;
	--mb-navigation-search-font-size: 0.8125em;
	--mb-navigation-search-height: 2em;
	--mb-navigation-search-button-color: var(--theme-accent-color);
	--mb-navigation-search-button-color-opacity: 80%;
	--mb-navigation-search-button-color--hover: var(--theme-accent-color--hover);
	--mb-navigation-search-button-color-opacity--hover: 95%;

	/* Icon variables */
	--mb-navigation-icon-size: 1em;
	--mb-navigation-tab-padding-x--icon: 0.75em;
}

/* Light Theme */
:root body:not(.skin-vector-dark) {
	/* ===== BASE COLORS ===== */
	--theme-page-text-color: #1a2a2a;
	--theme-page-text-color--inverse: #ffffff;
	--theme-page-background-color: #f5fdfb;
	/* Slightly darker for less glare */
	--theme-page-background-color--rgb: 245, 253, 251;
	--theme-page-background-color--secondary: #e8f5f3;
	/* Better contrast: 13:1 */
	--theme-page-background-color--secondary--rgb: 232, 245, 243;

	/* ===== LINKS ===== */
	--theme-link-color: #007d7a;
	/* Darker for 7:1 contrast */
	--theme-link-color--rgb: 0, 125, 122;
	--theme-link-color--hover: #005652;
	/* Even darker on hover */
	--theme-link-color--visited: #4a5568;
	/* Distinct visited state */
	--theme-link-label-color: #00474a;
	--mw-head-link-color: #007d7a;
	--new-link-color: #00a3a3;
	/* For "red links" - actually teal */

	/* ===== ACCENTS ===== */
	--theme-accent-color: #38b2ac;
	/* More vibrant */
	--theme-accent-color--rgb: 56, 178, 172;
	--theme-accent-color--hover: #2c9c96;
	/* Darker hover */
	--theme-accent-label-color: #ffffff;

	/* ===== BORDERS ===== */
	--theme-border-color: #a1e9dc;
	/* More visible */
	--theme-border-color--rgb: 161, 233, 220;
	--theme-border-color--subtle: #d1f5ee;
	/* For subtle separators */

	/* ===== STATUS COLORS (Enhanced for visibility) ===== */
	--theme-alert-color: #d53f3f;
	/* More vibrant red - 7:1 contrast */
	--theme-alert-color--rgb: 213, 63, 63;
	--theme-alert-color--hover: #b03030;
	--theme-alert-color--secondary: #ffeaea;
	/* Softer background */
	--theme-alert-label: #ffffff;

	--theme-warning-color: #c05621;
	/* Warmer orange - 6.5:1 contrast */
	--theme-warning-color--rgb: 192, 86, 33;
	--theme-warning-color--secondary: #fff4e6;
	--theme-warning-label: #1a2a2a;
	/* Dark text on light background */

	--theme-success-color: #2e8b57;
	/* More distinct green - 7:1 contrast */
	--theme-success-color--rgb: 46, 139, 87;
	--theme-success-color--secondary: #e6f7ed;
	--theme-success-label: #1a2a2a;
	/* Dark text on light background */

	--theme-message-color: #6b46c1;
	/* More vibrant purple */
	--theme-message-color--rgb: 107, 70, 193;
	--theme-message-color--secondary: #f3f0ff;
	--theme-message-label: #ffffff;

	--theme-info-color: #3182ce;
	/* Added info color */
	--theme-info-color--secondary: #ebf8ff;
	--theme-info-label: #1a2a2a;

	/* ===== ALERT HIGHLIGHT ===== */
	--theme-alert-highlight: #c53030;
	--theme-alert-highlight--rgb: 197, 48, 48;
	--theme-alert-highlight--hover: #e53e3e;

	/* ===== CUSTOM VARIABLES ===== */
	--theme-alt-text: #ffffff;
	--theme-accent-bg: #e6fffa;
	--theme-infobox-bg: #f0faf9;
	/* Less harsh than pure white */
	--theme-card-shadow: var(--shadow-sm);
	--theme-card-shadow-hover: var(--shadow-md);

	/* =====  CUSTOM COLORS ===== */
	--color-player: #60d9c5;
	--color-accent: #38b2ac;
	--color-npc: #9f7aea;
	--color-npc-secondary: #d6bcfa;

	/* ===== CARD BACKGROUNDS ===== */
	--card-bg-main: #ffffff;
	--card-bg-sub: #e6fffa;
	--card-bg-elevated: #ffffff;
	--card-border-color: var(--theme-border-color);

	/* ===== LETTER BACKGROUND ===== */
	--letter-bg: #f0fff4;
	--letter-border: #c6f6d5;

	/* ===== USER HIGHLIGHTS ===== */
	--custom-admin-highlight: #c05621;
	--custom-contentmoderator-highlight: #6b46c1;
	--custom-bot-color: #718096;
	--custom-bot-font-style: italic;

	/* ===== NAMED ACCENTS ===== */
	--accent: var(--theme-accent-color);
	--player: var(--color-player);
	--npc: var(--color-npc);

	/* ===== INPUTS ===== */
	--input-bg: #ffffff;
	--input-border: #cbd5e0;
	--input-border-focus: var(--theme-accent-color);
	--input-text: var(--theme-page-text-color);
	--input-placeholder: #a0aec0;

	/* ===== CODE & PRE ===== */
	--code-bg: #f7fafc;
	--code-border: #e2e8f0;
	--code-text: var(--theme-page-text-color);
	--pre-bg: #1a202c;
	--pre-text: #e2e8f0;

	/* ===== TABLE STYLES ===== */
	--table-header-bg: #e6fffa;
	--table-header-text: var(--theme-page-text-color);
	--table-row-even: #f7fafc;
	--table-row-odd: #ffffff;
	--table-border: var(--theme-border-color);
}

/* Dark Theme */
:root .skin-vector-dark {
	/* ===== BASE COLORS ===== */
	--wiki-content-text-color: var(--theme-page-text-color, #e6f7f5);
	--theme-page-text-color: #e6f7f5;
	/* Warmer light color */
	--theme-page-text-color--inverse: #1a202c;
	--theme-page-background-color: rgba(22, 28, 36, 0.98);
	/* Softer dark */
	--theme-page-background-color--rgb: 22, 28, 36;
	--theme-page-background-color--secondary: #2a363d;
	/* Warmer, better contrast */
	--theme-page-background-color--secondary--rgb: 42, 54, 61;

	/* ===== LINKS ===== */
	--theme-link-color: #5fd9cf;
	/* Brighter for visibility */
	--theme-link-color--rgb: 95, 217, 207;
	--theme-link-color--hover: #81e6d9;
	--theme-link-color--visited: #a0aec0;
	--theme-link-label-color: #e6f7f5;
	--mw-head-link-color: #5fd9cf;
	--new-link-color: #4fd1c7;
	/* For "red links" */

	/* ===== ACCENTS ===== */
	--theme-accent-color: #5fd9cf;
	--theme-accent-color--rgb: 95, 217, 207;
	--theme-accent-color--hover: #81e6d9;
	--theme-accent-label-color: #1a202c;

	/* ===== BORDERS ===== */
	--theme-border-color: #4d6872;
	/* More visible */
	--theme-border-color--rgb: 77, 104, 114;
	--theme-border-color--subtle: #3a5059;

	/* ===== STATUS COLORS ===== */
	--theme-alert-color: #fc8181;
	--theme-alert-color--rgb: 252, 129, 129;
	--theme-alert-color--hover: #feb2b2;
	--theme-alert-color--secondary: #4a2626;
	/* Darker background */
	--theme-alert-label: #1a202c;
	/* Dark text on light red */

	--theme-warning-color: #f6ad55;
	--theme-warning-color--rgb: 246, 173, 85;
	--theme-warning-color--secondary: #4a3a20;
	--theme-warning-label: #1a202c;

	--theme-success-color: #68d391;
	--theme-success-color--rgb: 104, 211, 145;
	--theme-success-color--secondary: #22543d;
	--theme-success-label: #1a202c;

	--theme-message-color: #b794f4;
	--theme-message-color--rgb: 183, 148, 244;
	--theme-message-color--secondary: #3a3664;
	--theme-message-label: #1a202c;

	--theme-info-color: #63b3ed;
	--theme-info-color--secondary: #2c5282;
	--theme-info-label: #1a202c;

	/* ===== CUSTOM VARIABLES ===== */
	--theme-alt-text: #2d3748;
	--theme-accent-bg: #2d3748;
	--theme-infobox-bg: #2a363d;
	--theme-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
	--theme-card-shadow-hover: 0 4px 6px rgba(0, 0, 0, 0.4);

	/* ===== CUSTOM COLORS ===== */
	--color-player: #48b8aa;
	--color-accent: #5fd9cf;
	--color-npc: #b794f4;
	--color-npc-secondary: #d6bcfa;

	/* ===== CARD BACKGROUNDS ===== */
	--card-bg-main: #2a363d;
	--card-bg-sub: #3a464d;
	--card-bg-elevated: #34444d;
	--card-border-color: var(--theme-border-color);

	/* ===== LETTER BACKGROUND ===== */
	--letter-bg: #1a272b;
	--letter-border: #2d4a3c;

	/* ===== USER HIGHLIGHTS ===== */
	--custom-admin-highlight: #f6ad55;
	--custom-contentmoderator-highlight: #b794f4;
	--custom-bot-color: #a0aec0;
	--custom-bot-font-style: italic;

	/* ===== ALERT HIGHLIGHT ===== */
	--theme-alert-highlight: #e53e3e;
	--theme-alert-highlight--rgb: 229, 62, 62;
	--theme-alert-highlight--hover: #fc8181;

	/* ===== NAMED ACCENTS ===== */
	--accent: var(--theme-accent-color);
	--player: var(--color-player);
	--npc: var(--color-npc);

	/* ===== INPUTS ===== */
	--input-bg: #2d3748;
	--input-border: #4a5568;
	--input-border-focus: var(--theme-accent-color);
	--input-text: var(--theme-page-text-color);
	--input-placeholder: #718096;

	/* ===== CODE & PRE ===== */
	--code-bg: #2d3748;
	--code-border: #4a5568;
	--code-text: var(--theme-page-text-color);
	--pre-bg: #1a202c;
	--pre-text: #e2e8f0;

	/* ===== TABLE STYLES ===== */
	--table-header-bg: #2d4a4d;
	--table-header-text: var(--theme-page-text-color);
	--table-row-even: #2a363d;
	--table-row-odd: #34444d;
	--table-border: var(--theme-border-color);
}

/* ===== KEYFRAME ANIMATIONS ===== */
@keyframes pulse {

	0%,
	100% {
		opacity: 1;
	}

	50% {
		opacity: 0.5;
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes bounce {

	0%,
	100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-10px);
	}
}

/* ===== LINK STYLING ===== */
.mw-body a,
.mw-body-content a {
	text-decoration: none;
	transition: color var(--transition-fast) ease,
		background-color var(--transition-fast) ease,
		border-color var(--transition-fast) ease;
}

.mw-body a:not(.new):hover,
.mw-body-content a:not(.new):hover {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 2px;
}

.mw-body a.new,
.mw-body a.new:visited,
.mw-body-content a.new {
	color: var(--new-link-color) !important;
	font-weight: var(--font-weight-semibold) !important;
	border-bottom: 1px dashed rgba(0, 163, 163, 0.4) !important;
	background-color: rgba(0, 163, 163, 0.08) !important;
	padding: 1px 3px !important;
	border-radius: var(--border-radius-sm) !important;
	transition: all var(--transition-base) ease !important;
}

.mw-body a.new:hover,
.mw-body-content a.new:hover {
	background-color: rgba(0, 163, 163, 0.15) !important;
	border-bottom-style: solid !important;
	text-decoration: none !important;
	box-shadow: 0 1px 2px rgba(0, 163, 163, 0.2) !important;
}

/* Dark theme new links */
.skin-vector-dark .mw-body a.new,
.skin-vector-dark .mw-body a.new:visited,
.skin-vector-dark .mw-body-content a.new {
	color: var(--new-link-color) !important;
	background-color: rgba(79, 209, 199, 0.1) !important;
	border-bottom-color: rgba(79, 209, 199, 0.5) !important;
}

/* ===== FOCUS STYLES ===== */
*:focus {
	outline: var(--focus-ring-width) solid var(--focus-ring-color) !important;
	outline-offset: var(--focus-ring-offset) !important;
	border-radius: var(--border-radius-sm) !important;
}

*:focus:not(:focus-visible) {
	outline: none !important;
}

*:focus-visible {
	outline: var(--focus-ring-width) solid var(--focus-ring-color) !important;
	outline-offset: var(--focus-ring-offset) !important;
	border-radius: var(--border-radius-sm) !important;
}

/* ===== ACCESSIBILITY ENHANCEMENTS ===== */
@media (prefers-reduced-motion: reduce) {
	:root {
		--transition-fast: 0ms;
		--transition-base: 0ms;
		--transition-slow: 0ms;
	}

	* {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

/* High contrast mode support */
@media (prefers-contrast: high) {
	:root body:not(.skin-vector-dark) {
		--theme-link-color: #005652;
		--theme-border-color: #1a2a2a;
		--new-link-color: #007d7a;
	}

	:root .skin-vector-dark {
		--theme-link-color: #81e6d9;
		--theme-border-color: #718096;
		--new-link-color: #4fd1c7;
	}

	.mw-body a.new,
	.mw-body-content a.new {
		border-bottom-width: 2px !important;
		background-color: transparent !important;
	}
}

/* ===== PRINT STYLES ===== */
@media print {
	:root {
		--theme-page-text-color: #000000;
		--theme-page-background-color: #ffffff;
		--theme-link-color: #000000;
	}

	a {
		color: #000000 !important;
		text-decoration: underline !important;
	}

	a.new::after {
		content: " [new]";
		font-size: smaller;
		color: #666;
	}
}

/* ===== UTILITY CLASSES (Optional but helpful) ===== */
.visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.text-truncate {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.text-balance {
	text-wrap: balance;
}

.shadow-subtle {
	box-shadow: var(--shadow-sm);
}

.shadow-elevated {
	box-shadow: var(--shadow-md);
}

.card {
	background-color: var(--card-bg-main);
	border-radius: var(--border-radius-md);
	border: 1px solid var(--card-border-color);
	box-shadow: var(--theme-card-shadow);
	transition: all var(--transition-base) ease;
}

.card:hover {
	box-shadow: var(--theme-card-shadow-hover);
	transform: translateY(-2px);
}

.status-alert {
	background-color: var(--theme-alert-color--secondary);
	color: var(--theme-alert-color);
	border-left: 4px solid var(--theme-alert-color);
}

.status-warning {
	background-color: var(--theme-warning-color--secondary);
	color: var(--theme-warning-color);
	border-left: 4px solid var(--theme-warning-color);
}

.status-success {
	background-color: var(--theme-success-color--secondary);
	color: var(--theme-success-color);
	border-left: 4px solid var(--theme-success-color);
}

.status-info {
	background-color: var(--theme-info-color--secondary);
	color: var(--theme-info-color);
	border-left: 4px solid var(--theme-info-color);
}

/* Typography improvements */
h1,
h2,
h3,
h4,
h5,
h6,
.mw-body,
.editOptions,
.ace-tm,
.vector-menu-heading,
.ace_cursor,
.vector-menu-content-list>a,
.vector-menu-heading-label {
	color: var(--theme-page-text-color);
}

.vector-menu-heading-label {
	font-size: 0.8125em;
}

/* Footer and panels */
.mw-footer,
.editOptions,
.ace-tm,
#mw-panel .vector-menu-heading {
	background-color: var(--theme-page-background-color--secondary) !important;
}

/* Sidebar and lists */
.ace-tm .ace_gutter,
.selected.mw-list-item,
#mw-panel .vector-menu-content-list {
	background-color: var(--theme-page-background-color--secondary) !important;
	color: var(--theme-page-text-color);
}

/* Notification improvements */
.skin-vector-dark #mw-notification-area.mw-notification.mw-notification-type-error,
.skin-vector-dark .postedit.mw-notification.mw-notification-type-error,
.skin-vector-dark .wds-table-td-alert {
	background-color: var(--theme-alert-highlight);
	color: var(--theme-alert-label);
}

.text-error {
	color: var(--theme-alert-highlight);
}

.diff td.diff-addedline {
	background-color: var(--teal-050);
	border-color: var(--theme-success-color);
	border-width: 1px 1px 1px 4px;
	color: var(--theme-success-color);
}

.diff td.diff-addedline .diffchange {
	background-color: var(--theme-success-color);
	color: var(--theme-success-label);
	font-weight: normal;
}

.diff td.diff-deletedline {
	background-color: var(--theme-alert-color--secondary);
	border-color: var(--theme-alert-color);
	border-width: 1px 1px 1px 4px;
	color: var(--theme-alert-color);
}

.diff td.diff-deletedline .diffchange {
	background-color: var(--theme-alert-color);
	color: var(--theme-alert-label);
	font-weight: normal;
}

.diff td.diff-context {
	background: transparent;
	border-color: var(--theme-border-color);
	color: var(--theme-page-text-color);
}

/* CodeMirror */
.CodeMirror .CodeMirror-scroll {
	background: var(--theme-page-background-color);
	color: var(--theme-page-text-color);
}

.CodeMirror .CodeMirror-linenumber,
.CodeMirror .CodeMirror-gutters {
	background: var(--theme-page-background-color--secondary);
	color: var(--theme-page-text-color);
	border-right: 1px solid var(--theme-border-color);
}

/* Color template improvements */
.text-player,
.text-player * {
	color: var(--color-player);
	font-weight: 600;
}

.bg-player {
	background-color: var(--color-player);
	color: var(--theme-page-text-color--inverse);
	padding: 2px 6px;
	border-radius: 3px;
}

.text-accent,
.text-accent * {
	color: var(--color-accent);
	font-weight: 600;
}

.bg-accent {
	background-color: var(--color-accent);
	color: var(--theme-accent-label-color);
	padding: 2px 6px;
	border-radius: 3px;
}

/* User highlights - improved contrast */
a[href="https://mbwiki.stairwaygames.work/wiki/User:Ais"],
a[href="/wiki/User:Ais"],
a[href="/wiki/Special:Contributions/Ais"] {
	color: var(--custom-admin-highlight);
	font-weight: 600;
}

/* Bots */
a[href="https://coralisland.wiki/wiki/User:NoriBot"],
a[href="/wiki/User:NoriBot"],
a[href="/wiki/Special:Contributions/NoriBot"],
a[href="https://coralisland.wiki/wiki/User:VoirBot"],
a[href="/wiki/User:VoirBot"],
a[href="/wiki/Special:Contributions/VoirBot"] {
	color: var(--custom-bot-color);
	font-style: var(--custom-bot-font-style);
	opacity: 0.9;
}

/* Additional improvements for better readability */
.mw-body-content {
	line-height: 1.6;
}

/* Improve contrast for links */
a {
	transition: color 0.2s ease;
}

a:hover {
	text-decoration: underline;
}

/* Improve table readability */
.mw-parser-output table {
	background-color: var(--theme-page-background-color);
	border: none;
}

.mw-parser-output table th {
	background-color: var(--theme-page-background-color--secondary);
}

.mw-parser-output table td {
	border: none;
}

body.skin-vector-dark {
	/*background: url("https://coralwiki.stairwaygames.com/w/images/9/9a/Site-background-dark.png") no-repeat fixed center center / cover !important;*/
	background-color: #0f1419 !important;
	background-image: radial-gradient(circle at top,
			#1a2a2a 0%,
			#0f1419 100%) !important;
}

.mobileHide,
.mobile-only,
.no-desktop {
	display: none !important;
}

/* || FIXES */
.wikiEditor-ui-text>.ui-resizable {
	width: 100% !important;
	max-width: 100%;
}

ul {
	list-style: disc;
}

h2 .mw-headline,
h3 .mw-headline,
h4 .mw-headline {
	font-weight: 500;
}

.vector-body h3,
.vector-body h4,
.vector-body h5,
.vector-body h6 {
	margin-bottom: 4px;
}

a,
a:visited,
a:active,
.mw-parser-output a:is(.external, .external:visited, .external:active) {
	color: var(--theme-link-color);
}

#mw-head .vector-menu-content-list .mw-list-item :is(a, a:visited, a:active) {
	color: var(--mw-head-link-color, var(--theme-page-text-color));
}

#mw-panel .vector-menu-content-list .mw-list-item :is(a, a:visited, a:active) {
	color: var(--theme-link-color);
}

.mw-parser-output a.external {
	padding-right: 0;
	font-size: inherit;
}

.catlinks {
	border-color: var(--theme-border-color);
	border-radius: 6px;
	background-color: var(--gray-050);
}

.CodeMirror-lines span {
	font: 14px Consolas, Eupheima UCAS, Monaco, Menlo, monospace;
	/* Source Editor */
}

.wikiEditor-ui .ace_editor * {
	font-size: 13px;
	font-family: monospace, monospace;
	/* Module */
}

.mw-input .mw-abusefilter-editor * {
	font-size: 13px;
	font-family: monospace, monospace;
}

/* Hide default TOOLBOX nav section on sidebar */
#mw-navigation>#mw-panel>#p-tb {
	display: none;
}

/* Column template fix */
.columntemplate ul,
.columntemplate ol {
	margin-top: 0;
}

/* RC */
.mw-changeslist table {
	width: unset;
}

.gift-table .icon-list-container {
	width: auto;
}

/* Quote template */
.quotetable {
	width: auto;
}

.Bug6200 {
	margin-bottom: 0.75em;
}

/* Code block */
code,
pre {
	background-color: var(--theme-page-background-color--secondary);
	color: var(--theme-page-text-color);
	border: 1px solid var(--theme-border-color);
	border-radius: 2px;
	padding: 1px 4px;
	font-family: monospace, monospace;
	font-size: 13px;
}

code.code-block-table {
	display: table;
	line-height: 21px;
	padding: 8px;
}

.code-block-table * {
	font: 14px Consolas, Eupheima UCAS, Monaco, Menlo, monospace;
}

.code-block {
	display: inline-block;
	line-height: 21px;
}

/* || MAIN PAGE */
/*banner links*/
.banner-links a {
	color: #ffffff !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8) !important;
	font-weight: 600 !important;
}

/* mp-banner */
#mp-banner {
	position: absolute;
	width: 100%;
	height: 10%;
	filter: blur(0px);
	z-index: -1;
	background: url(filepath://Temporary-banner-top.jpg) top center/cover no-repeat;
	background-color: #000000;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
}

body.page-Main_Page.action-view h1.firstHeading,
body.page-Main_Page.action-submit h1.firstHeading {
	display: none;
}

body.page-Main_Page.action-view .main-page-top {
	/*	background-image: url(https://coralwiki.stairwaygames.com/w/images/c/c2/441Cover_image_only.png); */
	background-color: var(--theme-page-background-color--secondary, #000000);
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	gap: 4px;
	color: #fffff;
	text-align: center;
	align-items: center;
}

/* ||TABLE OF CONTENTS */
.toc {
	padding: 8px 12px;
	border-radius: 4px;
	background-color: var(--theme-page-background-color--secondary);
	border: 1px solid var(--theme-border-color);
	margin-top: 16px;
}

.toctogglelabel {
	color: var(--theme-link-color);
}

.tocnumber {
	color: var(--theme-page-text-color);
}

.vector-body .toc h2 {
	font-family: var(--font-family-headings);
	font-weight: bold;
}

/* TOC hide headings */
.toclimit-2 .toclevel-1 ul,
.toclimit-3 .toclevel-2 ul,
.toclimit-4 .toclevel-3 ul,
.toclimit-5 .toclevel-4 ul,
.toclimit-6 .toclevel-5 ul,
.toclimit-7 .toclevel-6 ul {
	display: none;
}

/* For Template:Changelist */
.changelist-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 88%;
	margin: 0.3em 0;
}

.changelist-content {
	overflow: auto;
	max-height: 384px;
	padding: 1em;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-moz-border-radius-topleft: 0.5em;
	background: transparent;
	border-radius: 6px;
}

.changelist-border {
	border: 1px solid var(--theme-border-color);
	border-left: 6px solid var(--accent);
}

/* For Template:Chat */
.chat-wrapper {
	display: flex;
	flex-direction: column;
}

.chat-player,
.chat-npc {
	display: flex;
	flex-direction: row;
	gap: 0.5em;
}

.chat-player-speaker {
	white-space: nowrap;
	min-width: 70px;
	color: rgb(105, 172, 82);
}

.chat-npc-speaker {
	white-space: nowrap;
	min-width: 70px;
	color: rgb(237, 123, 103);
}

/* Hatnote */
.hatnote {
	display: flex;
	align-items: center;
	padding: 10px 15px;
	margin-top: 0.6rem;
	margin-bottom: 0.8rem;
	background-color: var(--color-surface-2);
	border: 1px solid var(--border-color-base--darker);
	border-radius: var(--border-radius-base);
	color: var(--color-base--emphasized);
	font-size: 0.875rem;
	line-height: 1.4;
}

.hatnote-icon img {
	width: 14px;
	height: auto;
	margin-right: 10px;
	opacity: var(--opacity-icon-base);
}

.hatnote.hatnote-high {
	background-color: var(--background-color-destructive-subtle);
	border-color: var(--color-destructive);
}

.hatnote.hatnote-medium {
	background-color: var(--background-color-warning-subtle);
	border-color: var(--color-warning);
}

.hatnote.hatnote-low {
	background-color: var(--color-surface-2);
}

/* Dark mode */
html.skin-citizen-dark .hatnote-icon img {
	filter: invert(1);
}

/* For [[Module:Formatting]] */
code.code-block {
	display: inline-block;
	line-height: 21px;
}

code.code-block-table {
	display: table;
	line-height: 21px;
}

span.variable {
	opacity: 0.65;
}

span.variable::after {
	opacity: 0.65;
	content: ">";
}

span.variable::before {
	opacity: 0.65;
	content: "<";
}

/* Quote */

.pull-quote {
	font-style: italic;
	margin: 0;
	padding: 0 30px 8px !important;
}

.pull-quote::before {
	color: var(--accent);
	content: "“";
	display: block;
	font-size: 96px;
	font-style: normal;
	line-height: 72px;
	margin: 4px 0 -45px -5px;
}

.pull-quote__source::before {
	content: "— ";
	margin-bottom: 8px;
}

.pull-quote__text {
	margin-bottom: 4px;
}

/* Gallery */
.gallerytext {
	text-align: center;
	font-size: 100%;
}

/* Fix to Template Data */
.mw-templatedata-doc-params>*>tr>th {
	width: 150px;
}

.mw-templatedata-doc-params {
	width: auto;
	max-width: 100%;
}

/* Space sidebar arrows properly */
#mw-panel.collapsible-nav .portal:is(.collapsed, .expanded) .vector-menu-heading {
	background-position: 95% center;
}

/* Theme toggle */
.wds-icon {
	align-self: center;
	margin: 0 6px;
	pointer-events: none;
	fill: currentColor;
}

.wds-icon-small {
	height: 18px;
	min-width: 18px;
	width: 18px;
}

#p-personal .vector-menu-content-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45em;
	font-size: 0.9em;
}

.cols {
	background-color: var(--theme-page-background-color--secondary);
}

#pagehistory li.selected {
	background-color: var(--theme-page-background-color--secondary);
	color: var(--theme-page-text-color);
	outline: 1px dashed var(--theme-border-color);
}

/* ===== IMproved Main Page Framework CSS ===== */

#mp-container {
	display: grid;
	gap: 20px;
	margin: 20px 0;
	width: 100%;
	min-width: 100%;
}

/* Desktop layout */
#mp-container {
	grid-template-areas: var(--main-page-layout--desktop, "");
	grid-template-columns: var(--main-page-layout-columns--desktop,
			repeat(3, 1fr));
}

/* Tablet layout */
@media (max-width: 1024px) {
	#mp-container {
		grid-template-areas: var(--main-page-layout--tablet,
				var(--main-page-layout--desktop, ""));
		grid-template-columns: var(--main-page-layout-columns--tablet,
				var(--main-page-layout-columns--desktop, repeat(2, 1fr)));
	}
}

/* Mobile layout */
@media (max-width: 768px) {
	#mp-container {
		grid-template-areas: var(--main-page-layout--mobile,
				var(--main-page-layout--tablet, var(--main-page-layout--desktop, "")));
		grid-template-columns: var(--main-page-layout-columns--mobile,
				var(--main-page-layout-columns--tablet,
					var(--main-page-layout-columns--desktop, 1fr)));
	}
}

/* Social Links Improvements */
/* Clean social links styling -  theme colors */
.social {
	position: relative;
	z-index: 999;
	text-align: center;
	margin: 20px auto;
	padding: 15px 0;
	max-width: 85%;
	backdrop-filter: blur;
	background: var(--theme-page-background-color--secondary);
	border-radius: 12px;
	border: 1px solid var(--theme-border-color);
	box-shadow: var(--shadow-sm);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 15px;
}

/* Each social link item */
.social .iconname {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 180px;
	padding: 12px 20px;
	background: var(--theme-page-background-color);
	border-radius: 8px;
	border: 1px solid var(--theme-border-color);
	transition: all 0.3s ease;
	flex: 1;
	max-width: 200px;
}

/* Hover effect */
.social .iconname:hover {
	background: var(--theme-accent-bg) !important;
	transform: translateY(-2px);
	box-shadow: var(--shadow-md);
	border-color: var(--theme-accent-color);
}

/* The link inside - uses theme colors */
.social .iconname a.external {
	display: flex !important;
	align-items: center !important;
	text-decoration: none !important;
	color: var(--theme-page-text-color) !important;
	font-weight: var(--font-weight-medium) !important;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
}

/* Hover text color */
.social .iconname:hover a.external {
	color: var(--theme-link-color) !important;
}

/* Icon container */
.social .iconname .floatleft {
	display: flex !important;
	align-items: center !important;
	margin-right: 10px !important;
	margin-bottom: 0 !important;
	float: none !important;
}

/* Icon image - no filter, keep original */
.social .iconname .floatleft a img {
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	/* Remove filter - keep original icon colors */
	filter: none !important;
}

/* Text next to icon */
.social .iconname .external-text {
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.4 !important;
}

/* Responsive design */
@media (max-width: 1024px) {
	.social {
		max-width: 95% !important;
		gap: 10px;
	}

	.social .iconname {
		min-width: 160px;
		padding: 10px 15px;
	}
}

@media (max-width: 768px) {
	.social {
		flex-direction: column;
		gap: 8px;
		max-width: 100% !important;
		padding: 10px;
	}

	.social .iconname {
		width: 100% !important;
		max-width: 100% !important;
		min-width: auto !important;
		justify-content: flex-start;
		padding: 10px 20px;
	}

	.social .iconname a.external {
		justify-content: flex-start;
	}
}

/* Main Page Layout */
.game-intro-card {
	background: var(--card-bg-main);
	border-radius: var(--border-radius-lg);
	border: 1px solid var(--theme-border-color);
	overflow: hidden;
	box-shadow: var(--shadow-md);
	margin-bottom: var(--spacing-lg);
	transition: all var(--transition-base) ease;
	position: relative;
	/* For better z-index control */
}

.game-intro-card:hover {
	box-shadow: var(--shadow-lg);
	transform: translateY(-2px);
	border-color: var(--teal-300);
}

.game-header {
	background: linear-gradient(90deg, var(--teal-700) 0%, var(--teal-900) 100%);
	padding: var(--spacing-md) var(--spacing-lg);
	display: flex;
	flex-direction: column;
	position: relative;
}

.game-header::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(45deg,
			transparent 0%,
			rgba(255, 255, 255, 0.05) 50%,
			transparent 100%);
	pointer-events: none;
}

.mana-text,
.mana-text h2 {
	font-size: 1.8em;
	font-weight: 900;
	letter-spacing: 2px;
	color: #fff;
	text-shadow: 0 0 10px rgba(162, 242, 225, 0.5), 0 2px 4px rgba(0, 0, 0, 0.3);
	position: relative;
	z-index: 1;
	margin: 0;
	text-decoration: none !important;
	/* Add this line */
	border-bottom: none !important;
	/* Ensure no border */
}

.game-intro-card h2,
.game-intro-card .mana-text,
.game-header h2 {
	text-decoration: none !important;
	border-bottom: none !important;
}

.mana-line {
	height: 3px;
	width: 100px;
	background: var(--teal-200);
	margin-top: var(--spacing-xs);
	border-radius: 2px;
	transition: width var(--transition-base) ease;
}

.game-intro-card:hover .mana-line {
	width: 107px;
}

.game-content {
	padding: var(--spacing-lg);
	line-height: 1.6;
	color: var(--theme-page-text-color);
}

/* Grid-based approach for perfect alignment */
.updates-list.grid-style,
.game-content ul.grid-style {
	display: grid;
	gap: 4px;
	padding-left: 0;
}

.updates-list.grid-style li,
.game-content ul.grid-style li {
	display: grid;
	grid-template-columns: 20px 1fr;
	align-items: center;
	gap: 8px;
	padding: 4px 0;
}

.updates-list.grid-style li::before,
.game-content ul.grid-style li::before {
	position: static;
	transform: none;
	left: auto;
	top: auto;
	grid-column: 1;
	text-align: center;
}

.updates-list.grid-style li span,
.game-content ul.grid-style li span {
	grid-column: 2;
}

.game-content a {
	color: var(--theme-link-color);
	text-decoration: none;
	font-weight: 600;
	transition: all var(--transition-fast) ease;
	position: relative;
}

.game-content a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
	/* Better underline positioning */
}

.game-content a::after {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 2px;
	background: var(--teal-300);
	transition: width var(--transition-fast) ease;
}

.game-content a:hover::after {
	width: 100%;
}

/* Responsive adjustments - refined */
@media (max-width: 768px) {
	.game-intro-card {
		margin: var(--spacing-sm);
		border-radius: var(--border-radius-md);
	}

	.game-header {
		padding: var(--spacing-sm) var(--spacing-md);
	}

	.mana-text {
		font-size: 1.5em;
		letter-spacing: 1px;
	}

	.mana-line {
		width: 40px;
	}

	.game-content {
		padding: var(--spacing-md);
	}

	.game-content,
	.updates-list li {
		font-size: 1em;
	}

	.updates-list,
	.game-content ul {
		padding-left: var(--spacing-md);
	}

	.updates-list li:before,
	.game-content li:before {
		left: calc(-1 * var(--spacing-md));
	}
}

/* Dark theme adjustments - refined */
.skin-vector-dark .game-intro-card {
	background: var(--card-bg-elevated);
}

.skin-vector-dark .game-header {
	background: linear-gradient(90deg,
			color-mix(in srgb, var(--teal-700) 80%, black 20%) 0%,
			color-mix(in srgb, var(--teal-900) 80%, black 20%) 100%);
}

.skin-vector-dark .mana-text {
	text-shadow: 0 0 10px rgba(95, 217, 207, 0.4), 0 2px 4px rgba(0, 0, 0, 0.5);
}

.skin-vector-dark .updates-list li:before,
.skin-vector-dark .game-content li:before {
	color: var(--teal-400);
}

/* Focus states for accessibility */
.game-content a:focus {
	outline: 2px solid var(--focus-ring-color);
	outline-offset: 2px;
	border-radius: 2px;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {

	.game-intro-card,
	.game-intro-card:hover,
	.mana-line,
	.updates-list li,
	.updates-list li:before,
	.game-content li,
	.game-content li:before,
	.game-content a,
	.game-content a::after {
		transition: none;
	}

	.game-intro-card:hover {
		transform: none;
	}
}

body {
	font-family: Helvetica, Arial, sans-serif !important;
	background-color: @background-color-secondary;
	/* background: url("https://mbwiki.stairwaygames.work/w/images/3/3d/384Web_background.png")*/
	background-color: rgba(0, 0, 0, 0.1) !important;
	overflow-y: scroll;
}

ul {
	list-style: none;
}

.wikitable,
.scheduletable {
    width: auto;
    min-width: 300px;
    max-width: 100%;
    margin: 1.5em auto;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid var(--theme-border-color);
    background-color: var(--card-bg-main);
    border-radius: var(--border-radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    table-layout: auto; 
}

.fishtable {
	table-layout: auto;
	width: 100%;
}

.artisan-table {
	table-layout: auto;
	width: 60%;
	border-spacing: 0;
	max-width: 100%;
	margin: 15px;
	border: 1px solid gray;
}

.artisan-table>tr>th,
.artisan-table>*>tr>th {
	background-color: #e7c361 !important;
	max-width: fit-content;
}

.artisan-table>tr>th,
.artisan-table>tr>td,
.artisan-table>*>tr>th,
.artisan-table>*>tr>td {
	border: 1px solid #a2a9b1;
	padding: 0.2em 0.4em;
}

.quotetable {
	border-spacing: 0;
	width: 100%;
	max-width: 100%;
}

.quotetable>caption {
	text-align: left;
}

.heart {
	margin-left: -7px;
	margin-bottom: 5px;
}

.quotetable>tbody>tr>td {
	padding: 0;
}

blockquote {
	margin: 0 10px;
}

.detail-list ul {
	list-style: none;
}

caption .mw-collapsible-toggle,
.mw-content-ltr caption .mw-collapsible-toggle,
.mw-content-rtl caption .mw-collapsible-toggle,
.mw-content-rtl .mw-content-ltr caption .mw-collapsible-toggle,
.mw-content-ltr .mw-content-rtl caption .mw-collapsible-toggle {
	float: right;
}

body.page-Main_Page.action-view h1.firstHeading,
body.page-Main_Page.action-submit h1.firstHeading {
	display: none;
}

.ci-letter-wrapper {
	border-radius: 20px;
	padding: 20px;
	max-width: 35em;
	font-weight: 700;
	background: #faf3ea;
}

.ci-letter-header {
	padding-bottom: 28px;
}

.ci-letter-content {
	font-weight: 400;
}

.ci-letter-footer {
	display: flex;
	padding-top: 28px;
	justify-content: space-between;
	font-weight: 700;
	align-items: center;
}

.ci-letter-attachment {
	max-width: 70%;
}

.card-list-container {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.custom-card {
	display: inline-block;
	position: relative;
	width: fit-content;
	align-self: baseline;
}

.custom-card-body {
	display: inline-block;
	position: relative;
	width: fit-content;
	align-self: baseline;
	background: #f6e6cf;
	border-radius: 12px;
	text-align: center;
	overflow: hidden;
}

.custom-card-image {
	width: 60px;
	height: 60px;
	padding: 4px;
}

.custom-card-amount {
	background: #e9cda2;
	text-align: center;
	border-radius: 0 0 5px 5px;
	padding: 4px 0;
	white-space: nowrap;
	line-height: 1;
	font-size: 12px;
	hyphens: auto;
	overflow-wrap: break-word;
}

.custom-card-caption {
	width: 56px;
	text-align: center;
	line-height: 1;
	font-size: 12px;
	hyphens: auto;
	overflow-wrap: break-word;
}

/* ===== IMPROVED WIKITABLE STYLES ===== */

/* Base wikitable - consolidated and improved */
.wikitable {
    width: 100%;
    margin: 1.5em 0;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--table-border, var(--theme-border-color));
    background-color: var(--card-bg-main, #ffffff);
    border-radius: var(--border-radius-md, 8px);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-base);
}

/* Header styling */
.wikitable > tr > th,
.wikitable > * > tr > th {
    background: linear-gradient(135deg, 
        var(--teal-600, #2c7a7b) 0%, 
        var(--teal-700, #285e61) 100%) !important;
    color: var(--theme-accent-label-color, #ffffff) !important;
    font-weight: var(--font-weight-semibold, 600);
    padding: 0.75rem 1rem !important;
    border-bottom: 2px solid var(--teal-800, #234e52) !important;
    text-align: center;
    vertical-align: middle;
    font-size: 0.95em;
    letter-spacing: 0.3px;
    position: relative;
}

/* Add subtle hover effect to headers */
.wikitable > tr > th:hover,
.wikitable > * > tr > th:hover {
    background: linear-gradient(135deg, 
        var(--teal-500, #319795) 0%, 
        var(--teal-600, #2c7a7b) 100%) !important;
}

/* Cell styling - improved readability */
.wikitable > tr > td,
.wikitable > * > tr > td {
    padding: 0.75rem 1rem !important;
    border-bottom: 1px solid var(--theme-border-color--subtle, #e2e8f0);
    vertical-align: middle;
    color: var(--theme-page-text-color);
    transition: background-color var(--transition-fast);
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

/* Striped rows for better readability */
.wikitable > tr:nth-child(even):not(:first-child),
.wikitable > * > tr:nth-child(even):not(:first-child) {
    background-color: var(--table-row-even, rgba(56, 178, 172, 0.03));
}

.wikitable > tr:nth-child(odd):not(:first-child),
.wikitable > * > tr:nth-child(odd):not(:first-child) {
    background-color: var(--table-row-odd, rgba(56, 178, 172, 0.01));
}

/* Hover effect for rows */
.wikitable > tr:hover:not(:first-child),
.wikitable > * > tr:hover:not(:first-child) {
    background-color: rgba(56, 178, 172, 0.08) !important;
}

/* First column styling (often labels) */
.wikitable > tr > td:first-child,
.wikitable > * > tr > td:first-child,
.wikitable > tr > th:first-child,
.wikitable > * > tr > th:first-child {
    font-weight: var(--font-weight-medium, 500);
    border-left: 3px solid transparent;
}

/* Highlight first column on hover */
.wikitable > tr:hover:not(:first-child) > td:first-child,
.wikitable > * > tr:hover:not(:first-child) > td:first-child {
    border-left-color: var(--teal-300, #4fd1c7);
    background-color: rgba(79, 209, 199, 0.1);
}

/* Remove last row bottom border */
.wikitable > tr:last-child > td,
.wikitable > * > tr:last-child > td {
    border-bottom: none;
}

/* Remove last cell right border */
.wikitable > tr > td:last-child,
.wikitable > * > tr > td:last-child,
.wikitable > tr > th:last-child,
.wikitable > * > tr > th:last-child {
    border-right: none;
}

/* Caption styling */
.wikitable > caption {
    caption-side: top;
    padding: 0.875rem 1rem;
    background: var(--teal-50, #e6fffa);
    color: var(--teal-800, #234e52);
    font-weight: var(--font-weight-semibold, 600);
    text-align: left;
    border-bottom: 1px solid var(--teal-200, #81e6d9);
    font-size: 1.05em;
    border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
    margin-bottom: 0;
}

/* Collapsible toggle in caption */
.wikitable > caption .mw-collapsible-toggle {
    float: right;
    margin: -0.25rem 0;
    padding: 0.25rem 0.75rem;
    background: var(--teal-100, #b2f5ea);
    border-radius: var(--border-radius-sm);
    border: 1px solid var(--teal-300, #4fd1c7);
    color: var(--teal-700, #285e61);
    font-size: 0.85em;
    font-weight: var(--font-weight-medium, 500);
    cursor: pointer;
    transition: all var(--transition-fast);
}

.wikitable > caption .mw-collapsible-toggle:hover {
    background: var(--teal-200, #81e6d9);
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}

/* Sortable tables */
.client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable),
.jquery-tablesorter th.headerSort {
    cursor: pointer;
    position: relative;
    padding-right: 2rem !important;
    user-select: none;
    transition: all var(--transition-fast);
}

.client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable):hover,
.jquery-tablesorter th.headerSort:hover {
    background: linear-gradient(135deg, 
        var(--teal-500, #319795) 0%, 
        var(--teal-600, #2c7a7b) 100%) !important;
    box-shadow: inset 0 -3px 0 rgba(255, 255, 255, 0.3);
}

/* Sorting indicators */
.client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable):after,
.jquery-tablesorter th.headerSort:after {
    content: "↕";
    position: absolute;
    right: 0.75rem;
    font-size: 0.85em;
    opacity: 0.6;
    transition: all var(--transition-fast);
}

.client-js .wikitable.sortable > * > tr:first-child > th.headerSortUp:after,
.jquery-tablesorter th.headerSortUp:after {
    content: "↑";
    opacity: 1;
    color: var(--theme-accent-label-color);
}

.client-js .wikitable.sortable > * > tr:first-child > th.headerSortDown:after,
.jquery-tablesorter th.headerSortDown:after {
    content: "↓";
    opacity: 1;
    color: var(--theme-accent-label-color);
}

/* Links inside tables */
.wikitable a,
.wikitable a:visited {
    color: var(--theme-link-color);
    text-decoration: none;
    font-weight: var(--font-weight-medium, 500);
    border-bottom: 1px dotted transparent;
    transition: all var(--transition-fast);
}

.wikitable a:hover {
    color: var(--theme-link-color--hover);
    text-decoration: none;
    border-bottom-color: currentColor;
}

/* Images in tables */
.wikitable img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    border-radius: var(--border-radius-sm);
    border: 1px solid var(--theme-border-color--subtle);
    transition: transform var(--transition-fast);
}

.wikitable a:hover img {
    transform: scale(1.05);
    border-color: var(--teal-300, #4fd1c7);
}

/* Specific table types - override for consistency */

/* Schedule tables */
.scheduletable.wikitable {
    width: auto;
    min-width: 300px;
}

.scheduletable.wikitable > tr > td:first-child,
.scheduletable.wikitable > * > tr > td:first-child {
    width: 150px;
    font-weight: var(--font-weight-semibold, 600);
    background-color: rgba(56, 178, 172, 0.05);
}

/* Fish tables */
.fishtable.wikitable {
    table-layout: fixed;
}

/* Artisan tables */
.artisan-table.wikitable {
    width: 60%;
    max-width: 100%;
}

.artisan-table.wikitable > tr > th,
.artisan-table.wikitable > * > tr > th {
    background-color: var(--teal-500, #319795) !important;
}

/* Heart event tables */
.heart-event-table.wikitable {
    width: 30%;
    min-width: 250px;
}

/* Quote tables */
.quotetable.wikitable {
    background: var(--letter-bg, #f0fff4);
    border-color: var(--letter-border, #c6f6d5);
}

.quotetable.wikitable > caption {
    background: var(--teal-100, #b2f5ea);
    color: var(--teal-800, #234e52);
}

/* Responsive improvements */
@media screen and (max-width: 1024px) {
    .wikitable {
        font-size: 0.95em;
    }
    
    .wikitable > tr > th,
    .wikitable > * > tr > th,
    .wikitable > tr > td,
    .wikitable > * > tr > td {
        padding: 0.625rem 0.75rem !important;
    }
    
    .scheduletable.wikitable {
        width: 100%;
    }
    
    .artisan-table.wikitable {
        width: 100%;
    }
    
    .heart-event-table.wikitable {
        width: 100%;
    }
}

@media screen and (max-width: 768px) {
    .wikitable {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        border-radius: var(--border-radius-sm);
    }
    
    .wikitable > caption {
        position: sticky;
        left: 0;
    }
    
    .wikitable > tr > th,
    .wikitable > * > tr > th,
    .wikitable > tr > td,
    .wikitable > * > tr > td {
        min-width: 100px;
        font-size: 0.9em;
    }
    
    /* Make sortable tables work better on mobile */
    .client-js .wikitable.sortable > * > tr:first-child > th:not(.unsortable),
    .jquery-tablesorter th.headerSort {
        font-size: 0.85em;
        white-space: normal;
        line-height: 1.3;
        padding: 0.5rem 1.5rem 0.5rem 0.5rem !important;
    }
    
    /* Improve touch targets */
    .wikitable a {
        padding: 0.25rem 0;
        display: inline-block;
    }
}

/* Dark theme adjustments */
.skin-vector-dark .wikitable {
    background-color: var(--card-bg-main, #2a363d);
    border-color: var(--table-border, #4d6872);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.skin-vector-dark .wikitable > tr > th,
.skin-vector-dark .wikitable > * > tr > th {
    background: linear-gradient(135deg, 
        var(--teal-800, #2d4a4d) 0%, 
        var(--teal-900, #1d4044) 100%) !important;
    border-bottom-color: var(--teal-900, #1d4044) !important;
}

.skin-vector-dark .wikitable > tr:nth-child(even):not(:first-child),
.skin-vector-dark .wikitable > * > tr:nth-child(even):not(:first-child) {
    background-color: rgba(95, 217, 207, 0.05);
}

.skin-vector-dark .wikitable > tr:nth-child(odd):not(:first-child),
.skin-vector-dark .wikitable > * > tr:nth-child(odd):not(:first-child) {
    background-color: rgba(95, 217, 207, 0.02);
}

.skin-vector-dark .wikitable > caption {
    background: var(--teal-900, #1d4044);
    color: var(--teal-100, #b2f5ea);
    border-bottom-color: var(--teal-700, #285e61);
}

.skin-vector-dark .wikitable > caption .mw-collapsible-toggle {
    background: var(--teal-800, #2d4a4d);
    border-color: var(--teal-600, #2c7a7b);
    color: var(--teal-100, #b2f5ea);
}

/* Print styles */
@media print {
    .wikitable {
        break-inside: avoid;
        box-shadow: none;
        border: 1px solid #ccc;
    }
    
    .wikitable > tr > th,
    .wikitable > * > tr > th {
        background: #f0f0f0 !important;
        color: #000 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    
    .wikitable a {
        color: #000;
        text-decoration: none;
    }
    
    .wikitable a[href]:after {
        content: " (" attr(href) ")";
        font-size: 0.9em;
        font-weight: normal;
    }
}

/* Accessibility improvements */
@media (prefers-reduced-motion: reduce) {
    .wikitable,
    .wikitable > tr > th,
    .wikitable > tr > td,
    .wikitable a,
    .wikitable img {
        transition: none;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .wikitable {
        border-width: 2px;
    }
    
    .wikitable > tr > th,
    .wikitable > * > tr > th {
        border-bottom-width: 3px;
    }
    
    .wikitable > tr > td,
    .wikitable > * > tr > td {
        border-bottom-width: 1px;
    }
}

/* Focus styles for keyboard navigation */
.wikitable a:focus-visible {
    outline: 2px solid var(--focus-ring-color);
    outline-offset: 2px;
    border-radius: 2px;
    text-decoration: none;
}

.cost-template {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	gap: 0.2rem;
}

.cost-detail {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
}

.client-js .sortable:not(.jquery-tablesorter)>*>tr:first-child>th:not(.unsortable),
.jquery-tablesorter th.headerSort {
	font-size: 10px;
	white-space: normal;
}

.wikitable>tr>th,
.wikitable>*>tr>th {
	background-color: #e7c361 !important;
	max-width: fit-content;
}

.heart-event-table {
	width: 30%;
}

.wikitable>tr>th,
.wikitable>tr>td,
.wikitable>*>tr>th,
.wikitable>*>tr>td {
	// -ms-word-break: break-all;
	// word-break: break-all;

	// -webkit-hyphens: auto;
	// -moz-hyphens: auto;
	// hyphens: auto;
	width: 150px;
	white-space: break-space;
	margin-left: auto;
	margin-right: auto;
}

.artisan-table>tr>th,
.artisan-table>tr>td,
.artisan-table>*>tr>th,
.artisan-table>*>tr>td:first-child {
	// -ms-word-break: break-all;
	// word-break: break-all;

	// -webkit-hyphens: auto;
	// -moz-hyphens: auto;
	// hyphens: auto;
	width: 150px;
	white-space: break-space;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.wikitable>tr>th,
.wikitable>tr>td,
.wikitable>*>tr>th,
.wikitable>*>tr>td:first-child {
	// -ms-word-break: break-all;
	// word-break: break-all;

	// -webkit-hyphens: auto;
	// -moz-hyphens: auto;
	// hyphens: auto;
	width: min-content;
	white-space: break-space;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.scheduletable > tr > th,
.scheduletable > * > tr > th,
.scheduletable th {
    background: linear-gradient(135deg, 
        var(--teal-600, #2c7a7b) 0%, 
        var(--teal-700, #285e61) 100%);
    color: var(--theme-accent-label-color, #ffffff);
    font-weight: var(--font-weight-semibold, 600);
    padding: 0.75rem 1rem;
    border-bottom: 2px solid var(--teal-800, #234e52);
    text-align: center;
    vertical-align: middle;
    font-size: 0.95em;
    letter-spacing: 0.3px;
    white-space: nowrap; /* Prevent line breaks in headers */
}

.quotetable>tr>th,
.wikitable>tr>td,
.wikitable>*>tr>th,
.wikitable>*>tr>td {
	//   -ms-word-break: break-all;
	//   word-break: break-all;

	//   -webkit-hyphens: auto;
	//   -moz-hyphens: auto;
	//   hyphens: auto;
}

.vector-menu-content {
	margin-left: 10px;
}

.mw-body,
.parsoid-body {
	background-color: var(--theme-page-background-color) !important;
	color: var(--theme-page-text-color);
	direction: ltr;
	padding: 1em;
}

.infobox {
	background: #e7c361;
	border: 1px solid #e7c361;
	float: right;
	margin: 0 0 1em 1em;
	padding: 1em;
	// min-width: 25%;
}

.infobox-title {
	font-size: 2em;
	text-align: center;
}

.infobox p {
	text-decoration: underline;
	font-size: 1.3em;
}

.infobox-image {
	text-align: center;
}

.infobox-table {
	width: 100%;
}

.infobox-table th {
	text-align: left;
	vertical-align: top;
	width: 120px;
}

.infobox-table td {
	vertical-align: top;
	text-align: right;
	// color: white;
}

.wikitable>caption {
	text-align: left;
}

.Bug6200 {
	font-style: italic;
	font-weight: normal;
	display: flex;
	flex-direction: row;
	align-items: center;
	white-space: normal;
}

.Bug6200>img {
	width: 24px;
	height: 24px;
}

.scheduletable {
	text-align: center;
	margin: 10px 0;
	border-collapse: collapse;
}

.scheduletable > tr > td,
.scheduletable > * > tr > td,
.scheduletable td {
    padding: 0.75rem 1rem;
    border: 1px solid var(--theme-border-color--subtle, #e2e8f0);
    vertical-align: middle;
    color: var(--theme-page-text-color);
    text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
    transition: background-color var(--transition-fast);
}
.scheduletable > tr > td:first-child,
.scheduletable > * > tr > td:first-child,
.scheduletable td:first-child {
    width: 150px !important; /* Fixed width for time column */
    min-width: 150px;
    max-width: 150px;
    font-weight: var(--font-weight-semibold, 600);
    background-color: rgba(56, 178, 172, 0.08);
    text-align: left;
    padding-left: 1.25rem;
    border-right: 2px solid var(--teal-300, #4fd1c7);
    position: relative;
}

.croptable>tbody>tr>td:first-child {
	width: 100px !important;
}
.scheduletable>tbody>tr>td:first-child {
	width: 150px !important;
}

// td {
//   width: 100px;
// }
.scheduletable caption {
	background: #e7c361;
	border: 1px solid #e7c361;
	text-align: center;
}

.wikitable>caption>span {
	float: right !important;
}

.collapsible-header:before {
	float: right;
}

.ci-recipe-wrapper {
	display: flex;
	width: fit-content;
	position: relative;
	gap: 7px;
}

.ci-recipe-timed {
	padding-bottom: 25px;
}

.ci-recipe-timed {
	border: 1px solid #e7c361;
	border-radius: 5px;
	position: relative;
	text-align: center;
	font-weight: 500;
	width: 100%;
	padding: 8px;
	max-width: 100px;
	overflow-wrap: break-word;
	hyphens: auto;
}

.ci-recipe-yield {
	border: 1px solid #e7c361;
	border-radius: 3px;
	padding: 8px;
	position: relative;
	width: 100%;
	text-align: center;
}

.ci-recipe-yield-amount {
	background: #e7c361;
	width: fit-content;
	border-radius: 3px;
	padding: 0 5px;
	position: absolute;
	bottom: 0;
	right: 0;
}

span.custom-icon {
	display: inline;
}

.ci-recipe-ingredient {
	border: 1px solid #e7c361;
	border-radius: 3px;
	padding: 5px;
	min-height: 100%;
}

.ci-recipe-medium::after {
	border: 1px solid #e7c361;
	background-color: #e7c361;
	border-radius: 3px;
	width: 5px;
	height: 5px;
	content: "";
	position: absolute;
	top: 50%;
	left: -7px;
}

.gifted-item {
	background-color: rgba(231, 195, 97, 0.2);
}

.gifted-item>tbody>tr>th {
	background-color: rgba(231, 195, 97, 0.8);
	max-width: 100px;
}

.content-table {
	background: transparent;
	padding: 10px 2%;
	width: 100%;
}

.content-table-basic {
	background: transparent;
	width: 100%;
}

.content-table-second {
	background: transparent;
	width: 100%;
}

.child-content-table {
	display: flex;
	justify-content: flex-start;
	gap: 10px;
	margin-left: 4px;
}

.mw-body,
#mw-data-after-content {
	margin-left: 10em;
}

.mw-body {
	position: relative;
	/* For better z-index control */
	border-left: 3px solid var(--teal-400);
	border-top: none;
	border-right: none;
	border-bottom: none;
	background-color: var(--theme-page-background-color);
	color: var(--theme-page-text-color);
	margin-top: 0;
	border-radius: 0;

	.firstHeading {
		overflow: visible;
		/* Add subtle bottom border for separation */
		border-bottom: 1px solid var(--theme-border-color--subtle);
		padding-bottom: 0.5em;
		margin-bottom: 1em;
	}
}

/* Keep z-index simple */
.mw-indicators {
	position: relative;
	z-index: 10;
}

.vector-body {
	font-size: var(--font-size);
	position: relative;
	z-index: 1;
}

/* Be more specific with font overrides to avoid editor conflicts */
body:not(.action-edit):not(.action-submit) .vector-body,
body:not(.action-edit):not(.action-submit) .vector-body p,
body:not(.action-edit):not(.action-submit) .vector-body div,
body:not(.action-edit):not(.action-submit) .vector-body span {
	font-size: var(--font-size);
	font-family: Helvetica, Arial, sans-serif;
}

@media screen and (max-width: 1024px) {

	body:not(.action-edit):not(.action-submit) .wikitable>tr>th,
	body:not(.action-edit):not(.action-submit) .wikitable>tr>td,
	body:not(.action-edit):not(.action-submit) .wikitable>*>tr>th,
	body:not(.action-edit):not(.action-submit) .wikitable>*>tr>td {
		font-size: 14px;
	}

	body:not(.action-edit):not(.action-submit) .content {
		font-size: 14px;
	}

	body:not(.action-edit):not(.action-submit) .vector-body {
		font-size: 16px;
	}
}

/* Even safer - only affect non-editor content */
.mw-body-content:not(.editOptions),
.mw-parser-output:not(.editOptions) {
	font-size: var(--font-size);
}

#mw-page-base {
	//   .vertical-gradient( @background-color-base, @background-color-secondary, 50%, 100% );
	background: transparent;
	background-position: bottom left;
	height: 5em;
}

#mw-head-base {
	margin-top: -5em;
	margin-left: 10em;
	height: 5em;
	background: transparent;
}

/* ===== HEADER/NAVIGATION FIX ===== */

#mw-navigation h2 {
	position: absolute;
	top: -9999px;
}

#mw-head>* {
	position: relative;
	z-index: auto;
}

#left-navigation,
#right-navigation {
	display: inline-flex;
	vertical-align: top;
	white-space: nowrap;
}

#p-search {
	display: inline-block;
	vertical-align: top;
	position: relative;
	margin: 0 1em;
}

/* Sidebar */
#mw-panel .sidebar-section-title {
	background: linear-gradient(90deg, var(--teal-700) 0%, var(--teal-900) 100%);
	color: white;
	font-weight: bold;
	padding: 5px 10px;
	margin: 5px 0 5px 0;
	border-radius: 4px;
	font-size: 0.9em;
}

// hide the heading of the first menu
#p-logo+.mw-portlet .vector-menu-heading {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background: white;
	color: black;
	font-weight: bold;
	padding: 0 5px;
	height: 20px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
}

// ul {
//   list-style-type: none !important
// }

.vector-body blockquote {
	border: 0;
	padding: 0;
}

.vector-menu-portal .vector-menu-content li {
	padding: 5px;
}

.vector-menu-portal .vector-menu-content ul {
	background: rgba(255, 255, 255, 0.8);
}

.vector-menu-portal .vector-menu-heading {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background: white;
	color: black;
	font-weight: bold;
	padding: 0 5px;
	height: 20px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
}

.mw-footer {
	margin-left: 10em;
	margin-top: 1%;
	margin-bottom: 1%;
	padding: 0.75em;
	background: white;
	min-height: 120px;
	border-radius: 5px;
}

.social {
	display: flex;
	justify-content: center;
	flex-direction: row;
	width: auto;
	background: #474747;
	padding: 1rem 3rem;

	& .iconname {
		max-width: 20%;

		& .external-text {
			font-size: 12px;
		}

		& .floatleft {
			display: flex;
			justify-content: space-between;
			align-items: center;

			& a {
				font-size: 12px;
			}

			img {
				max-width: 20px;
				max-height: 20px;
			}
		}
	}
}

div.floatleft,
table.floatleft {
	margin: 0;
}

big {
	color: white;
}

.jumbotron {
	//background-image: url("https://mbwiki.stairwaygames.work/w/images/1/13/manabreak-hero.png");

	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
}

body.page-Main_Page.action-view .main-page-top {
	background-color: #474747;
	padding: 1rem 0;
	background-image: url("https://mbwiki.stairwaygames.work/w/images/1/13/manabreak-hero.png") !important;
	height: 300px !important;
}

/* Vector screen styles for high definition displays. These rules cross the above components and are
 grouped together here only for the sake of the media query common to each. */
.mw-body,
#mw-head-base,
#left-navigation,
#mw-data-after-content,
.mw-footer {
	margin-left: 11em;
}

.mw-body {
	padding: 1.25em 1.5em 1.5em 1.5em;
}

.mw-footer {
	padding: 1.25em;
}

#mw-panel {
	padding-left: 0.5em;
}

.vector-search-box {
	margin-right: 1em;
}

/*// Directionality styles previously provided by the deprecated `legacy` feature (T287410)
// for HTML elements which do not carry dir HTML attributes.
// These have been copied across to legacy Vector to minimize disruption caused by T287701.
// If you are reading this comment in 2022, please consider checking usage in wikitext and
// removing them both.*/
.mw-content-ltr {
	/* @noflip */
	direction: ltr;
}

.mw-content-rtl {
	/* @noflip */
	direction: rtl;
}

.cols {
	text-align: left;
	word-break: break-all;
	// padding: 1em 0;
	background-color: rgba(255, 255, 255, 0.8);
	border-radius: 5px;
	font-weight: 600;
	// text-transform: uppercase;
	// letter-spacing: 1px;
}

.forest {
	margin-top: -25px;
}

.forest2 {
	margin-top: 0;
}

/* grid styling - Connected to Module Variables */
.grid {
	display: grid !important;
	/* Desktop: Use module variable, fallback to 12 columns */
	grid-template-columns: var(--main-page-layout-columns--desktop,
			repeat(12, 1fr));
	margin: 10px 0;
	gap: 10px;
	/* Better than grid-gap (deprecated) */
}

/* Tablet */
@media (max-width: 1024px) {
	.grid {
		grid-template-columns: var(--main-page-layout-columns--tablet,
				var(--main-page-layout-columns--desktop, repeat(12, 1fr)));
	}
}

/* Mobile */
@media (max-width: 768px) {
	.grid {
		grid-template-columns: var(--main-page-layout-columns--mobile,
				var(--main-page-layout-columns--tablet,
					var(--main-page-layout-columns--desktop, repeat(1, 1fr))));
	}
}

/* Optional: Keep column classes as fallback when NOT using module */
.grid:not([data-has-module-layout]) .grid__col4 {
	grid-column: span 4;
}

/* Other styles can stay the same */
.specification-table {
	font-size: 10px;
	padding: 0 5%;
}

.content {
	padding: 10px;
	font-size: 12px;
}

.wrapper {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 1rem;
}

@supports (display: grid) {

	.mw-content-ltr ul,
	.mw-content-rtl .mw-content-ltr ul {
		// margin: 0 !important;
	}

	.social .iconname .floatleft {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.social {
		gap: 30px;
	}

	.croptable>tbody>tr>td>a>img {
		max-width: 40px;
		max-height: 40px;
	}

	.exceptable>tbody>tr>td>a>img {
		max-width: 70px;
		max-height: 70px;
	}

	.floatleft>a>img {
		// width: 24px;
		// height: 24px;
	}

	.iconname {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: 5px;
		-ms-word-break: break-all;
		word-break: break-all;

		/* Non standard for WebKit */
		word-break: break-word;

		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}

	.auto-grid {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
		grid-gap: 5px;
	}

	.auto-grid>* {
		max-width: unset;
		list-style: none;
	}

	.auto-grid>*+* {
		margin-top: unset;
	}

	.auto-grid>li>ul {
		margin-left: 10px !important;
	}

	.auto-grid>li>ul>li {
		list-style: none;
		margin: 0;
		padding-left: 15px;
		list-style: none;
		background-image: url("https://www.svgrepo.com/show/165220/diamond.svg");
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 10px;
		-ms-word-break: break-all;
		word-break: break-all;

		/* Non standard for WebKit */
		word-break: break-word;

		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}
}

.minus-ten {
	margin-top: 0;
}

.minus-fifty {
	margin-top: -55%;
}

#footer-info li {
	color: --wiki-content-text-color !important;
}

@media (max-width: 1024px) {
	.minus-fifty {
		margin-top: -5%;
	}

	.minus-ten {
		margin-top: -10%;
	}

	.wikitable>tr>th,
	.wikitable>tr>td,
	.wikitable>*>tr>th,
	.wikitable>*>tr>td {
		font-size: 0.7em;
	}

	.scheduletable>tbody>tr>td:first-child {
		width: 40px;
	}

	.wikitable,
	.quotetable,
	.scheduletable {
		table-layout: fixed;
		width: 100%;
	}

	.croptable>tbody>tr>td>a>img {
		max-width: 24px;
		max-height: 24px;
	}

	.infobox {
		float: none;
		margin: 0;
	}

	.forest2 {
		margin-top: -5px;
	}

	.content {
		font-size: 10px;
	}

	.social {
		flex-direction: column;
		padding: 1rem;

		& .iconname {
			max-width: 100%;
		}
	}

	.mw-parser-output a.external {
		-ms-word-break: break-all;
		word-break: break-all;

		/* Non standard for WebKit */
		word-break: break-word;

		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}

	#mw-panel {
		width: -webkit-fill-available;
		display: flex;
		justify-content: center;
		align-items: center;
		max-height: 100px;
	}

	.vector-search-box {
		min-width: 90vw;
		margin-top: 0px;
	}

	.vector-search-box-input {
		width: 80vw;
	}

	#mw-content-text>div.mw-parser-output>div>div>div.content>table>tbody>tr>td>a {
		font-size: 8px;
	}

	#mw-content-text>div.mw-parser-output>div>div>div.content>table>tbody>tr>th>div>div>a>img {
		width: 16px;
		height: 16px;
	}

	#mw-content-text>div.mw-parser-output>div>div>div.content>table>tbody>tr>td>div>div>a>img {
		width: 16px;
		height: 16px;
	}

	#mw-content-text>div.mw-parser-output>table.jumbotron>tbody>tr>th>a>img {
		max-width: 100%;
		object-fit: contain;
	}

	footer,
	.vector-menu-content,
	#p-navigation,
	#p-tb {
		display: none;
	}

	#p-logo {
		display: block;
		justify-content: center;
	}

	#p-logo a {
		width: 5em;
	}

	table {
		width: 100%;
	}

	.mw-body,
	#mw-data-after-content {
		margin: 10% 10px;
	}

	.grid__col1 {
		grid-column: span 1;
	}

	.grid__col2 {
		grid-column: span 2;
	}

	.grid__col3 {
		grid-column: span 6;
	}

	.grid__colsm1 {
		grid-column: span 1;
	}

	.grid__colsm2 {
		grid-column: span 2;
	}

	.grid__colsm3 {
		grid-column: span 12;
	}

	.grid__colsm4 {
		grid-column: span 12;
	}

	.grid__colsm5 {
		grid-column: span 5;
	}

	.grid__colsm6 {
		grid-column: span 6;
	}

	.grid__colsm7 {
		grid-column: span 7;
	}

	.grid__colsm8 {
		grid-column: span 12;
	}

	.grid__colsm9 {
		grid-column: span 9;
	}

	.grid__colsm10 {
		grid-column: span 10;
	}

	.grid__colsm11 {
		grid-column: span 11;
	}

	.grid__colsm12 {
		grid-column: span 12;
	}

	.content-table,
	.content-table th,
	.content-table td {
		border: none !important;
	}

	.content-table-basic>tbody {
		display: grid;
	}

	.content-table-basic>tbody>tr {
		display: grid;
		grid-template-columns: repeat(2, minmax(50px, 1fr));
		width: fit-content;
	}

	.content-table-basic>tbody>tr>th {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 45vw;
	}

	.content-table-basic>tbody>tr>th>.iconname>.floatleft>a>img {
		width: 14px;
		height: 14px;
	}

	.forest {
		margin-top: 0;
	}

	.content-table-second {
		background: transparent;
		width: 100%;
	}

	.auto-grid {
		grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	}

	.mw-body,
	#mw-data-after-content {
		padding: 0;
	}
}

@media screen and (max-width: 1920px) {
	.mw-parser-output a.external {
		font-size: 14px;
	}
}

@media screen and (min-width: 2000px) {
	.mw-parser-output a.external {
		font-size: 20px;
		font-weight: 400;
	}

	.floatleft>a>img {
		width: 48px;
		height: 48px;
	}
}

#content .header-column {
	background-color: #1a6a7a !important;
	justify-content: center !important;
	text-align: center !important;
	color: #ffffff !important;
}

.header-column>span>a>img {
	width: 14px;
	height: 14px;
}

.header-column>a>img {
	width: 14px;
	height: 14px;
}

.heading-char {
	color: #deb76c !important;
}

#footer {
	background: #fff;
	color: #000;
	margin-top: 1em;
	border-top: 1pt solid #aaa;
	padding-top: 5px;
	direction: ltr;
}

/* ---- CONTENTS STYLING GOES BELOW THIS LINE --- */
/* Element Infobox Styling */
.element-image {
	transition: transform 0.3s ease;
	border-radius: 5px;
}

.element-image:hover {
	transform: scale(1.05);
}

/* Floating animation for infobox */
.element-infobox {
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.element-infobox:hover {
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
	transform: translateY(-2px);
}

/* Color-specific classes */
.element-fire {
	border-left: 4px solid #cc3333;
}

.element-water {
	border-left: 4px solid #3366cc;
}

.element-wind {
	border-left: 4px solid #33cccc;
}

.element-earth {
	border-left: 4px solid #996633;
}

.element-lightning {
	border-left: 4px solid #ffcc00;
}

.element-ice {
	border-left: 4px solid #66ccff;
}

.element-wood {
	border-left: 4px solid #339933;
}

.element-grass {
	border-left: 4px solid #88cc44;
}

/* Move Personal Tools to the top of the page */
#p-personal {
	position: absolute !important;
	top: 0 !important;
	right: 0.75em !important;
	z-index: 1000 !important;
	background: var(--theme-page-background-color) !important;
	border-bottom: 1px solid var(--theme-border-color) !important;
	padding: 0.25em 0.5em !important;
	border-radius: 0 0 var(--border-radius-md) var(--border-radius-md) !important;
	box-shadow: var(--shadow-sm) !important;
}

#p-personal .vector-menu-heading {
	display: none !important;
}

#p-personal .vector-menu-content {
	position: static !important;
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
	box-shadow: none !important;
	border: none !important;
	background: transparent !important;
}

#p-personal .vector-menu-content-list {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.5em !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

#p-personal .mw-list-item {
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
}

#p-personal .mw-list-item a {
	padding: 0.25em 0.5em !important;
	color: var(--theme-link-color) !important;
	text-decoration: none !important;
	display: flex !important;
	align-items: center !important;
	gap: 4px !important;
	border-radius: var(--border-radius-sm) !important;
	transition: all var(--transition-fast) ease !important;
}

#p-personal .mw-list-item a:hover {
	background: rgba(var(--teal-100--rgb, 178, 245, 234), 0.3) !important;
	color: var(--theme-link-color--hover) !important;
}

/* Theme toggle special styling */
#pt-theme a {
	background: linear-gradient(135deg,
			var(--teal-100) 0%,
			var(--teal-200) 100%) !important;
	border-radius: var(--border-radius-full) !important;
}

#pt-theme a:hover {
	background: linear-gradient(135deg,
			var(--teal-200) 0%,
			var(--teal-300) 100%) !important;
}

/* Dark theme adjustments */
.skin-vector-dark #p-personal {
	background: var(--theme-page-background-color--secondary) !important;
}

.skin-vector-dark #pt-theme a {
	background: linear-gradient(135deg,
			var(--teal-800) 0%,
			var(--teal-700) 100%) !important;
}

.skin-vector-dark #pt-theme a:hover {
	background: linear-gradient(135deg,
			var(--teal-700) 0%,
			var(--teal-600) 100%) !important;
}

/* Add space at the top of the page so the personal tools don't overlap content */
#mw-page-base {
	margin-top: -0.5em !important;
}

/* Or if that doesn't work, add padding to body */
body {
	padding-top: -0.5em !important;
}

body.page-Main_Page .social {
	margin: -45px auto 30px !important;
	background: rgba(var(--theme-page-background-color--secondary--rgb),
			0.8) !important;
	backdrop-filter: blur(10px);
	border: 1px solid var(--theme-border-color);
	box-shadow: var(--shadow-xl);
	z-index: 99 !important;
}

/* THE GAME Card Improvement */
body.page-Main_Page .game-intro-card {
	background: var(--card-bg-elevated);
	border-radius: var(--border-radius-lg);
	border: 1px solid var(--theme-border-color);
	box-shadow: var(--shadow-lg);
	overflow: hidden;
}

body.page-Main_Page .game-header {
	background: linear-gradient(90deg, var(--teal-700) 0%, var(--teal-900) 100%);
	padding: var(--spacing-md) var(--spacing-lg);
}

body.action-edit #content,
body.action-submit #content {
	margin-top: 50px !important;
	margin-left: 11em !important;
	background: #ffffff !important;
	padding: 20px !important;
}

/* Character Infobox */
.character-infobox {
	float: right;
	clear: right;
	max-width: 300px;
	width: 100%;
	margin: 0 0 16px 16px;
	border: 1px solid var(--theme-border-color);
	border-radius: var(--border-radius-md);
	background-color: var(--gray-050);
	font-size: 0.9em;
}

.character-header {
	background: var(--teal-600);
	color: var(--theme-accent-label-color);
	padding: 8px 10px;
	border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
	text-align: center;
	font-weight: var(--font-weight-bold);
}

.character-title {
	font-size: 1.5em;
}

.character-image {
	padding: 10px;
	text-align: center;
}

.character-section {
	padding: 5px 10px;
}

.section-title {
	font-size: 1.1em;
	font-weight: var(--font-weight-semibold);
	margin-top: 10px;
	margin-bottom: 5px;
	border-bottom: 1px solid var(--theme-border-color--subtle);
}

.data-row {
	display: flex;
	justify-content: space-between;
	padding: 3px 0;
	border-bottom: 1px dotted var(--gray-300);
}

.data-label {
	font-weight: var(--font-weight-medium);
	color: var(--gray-700);
}

/* ===== PORTABLE INFOBOX STYLING ===== */
.portable-infobox {
	float: right;
	clear: right;
	margin: 0 0 15px 15px;
	max-width: 300px;
	width: 100%;
	border: 1px solid var(--theme-border-color, #ccc);
	border-radius: 8px;
	background-color: var(--gray-050, #f8f9fa);
	font-size: 14px;
}

/* Remove margins from ALL paragraphs inside infobox */
.portable-infobox p {
	margin: 0 !important;
}

.portable-infobox .pi-header {
	padding: 0 5px;
}

.portable-infobox .pi-title {
	background: var(--teal-600, #00897b);
	color: var(--theme-accent-label-color, white);
	padding: 8px 10px;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	text-align: center;
	font-weight: bold;
	font-size: 1.2em;
	margin: 0;
}

.portable-infobox .pi-title p {
	margin: 0 !important;
	padding: 0;
}

.portable-infobox .pi-group {
	padding: 10px;
}

.portable-infobox .pi-group .pi-header {
	font-size: 1.1em;
	font-weight: 600;
	margin: 10px 0 5px 0;
	padding-bottom: 5px;
	border-bottom: 1px solid var(--theme-border-color--subtle, #e0e0e0);
	color: var(--gray-800, #3c4043);
}

.portable-infobox .pi-group .pi-header p {
	margin: 0 !important;
}

.portable-infobox .pi-item {
	display: flex;
	justify-content: space-between;
	padding: 5px 0;
	border-bottom: 1px dotted var(--gray-300, #dadce0);
	align-items: flex-start;
	/* Align items at the top */
}

.portable-infobox .pi-item:last-child {
	border-bottom: none;
}

.portable-infobox .pi-data-label {
	font-weight: 500;
	color: var(--gray-700, #5f6368);
	padding: 0 5px 0 0;
	min-width: 40%;
	flex-shrink: 0;
	/* Prevent label from shrinking */
}

.portable-infobox .pi-data-label p {
	margin: 0 !important;
}

.portable-infobox .pi-data-value {
	color: var(--gray-900, #202124);
	padding: 0 0 0 5px;
	min-width: 60%;
	text-align: right;
	flex-grow: 1;
	/* Allow value to grow */
}

.portable-infobox .pi-data-value p {
	margin: 0 !important;
}

/* Horizontal layout groups - fix table layout */
.portable-infobox .pi-horizontal-group {
	width: 100%;
	border-collapse: collapse;
	margin: 0;
}

.portable-infobox .pi-horizontal-group caption {
	font-size: 1.1em;
	font-weight: 600;
	margin: 10px 0 5px 0;
	padding-bottom: 5px;
	border-bottom: 1px solid var(--theme-border-color--subtle, #e0e0e0);
	color: var(--gray-800, #3c4043);
	text-align: left;
	caption-side: top;
}

.portable-infobox .pi-horizontal-group caption p {
	margin: 0 !important;
}

.portable-infobox .pi-horizontal-group th,
.portable-infobox .pi-horizontal-group td {
	padding: 8px;
	text-align: center;
	border: 1px solid var(--theme-border-color--subtle, #e0e0e0);
}

.portable-infobox .pi-horizontal-group th {
	font-weight: 500;
	color: var(--gray-700, #5f6368);
	background-color: var(--gray-100, #f1f3f4);
}

.portable-infobox .pi-horizontal-group th p,
.portable-infobox .pi-horizontal-group td p {
	margin: 0 !important;
}

/* Image styling */
.portable-infobox .pi-image {
	padding: 10px;
	text-align: center;
}

.pi-image-thumbnail {
	max-width: 100% !important;
	height: auto;
	border-radius: 4px;
	border: 1px solid var(--theme-border-color--subtle, #e0e0e0);
}

.portable-infobox .pi-image .pi-caption {
	font-size: 0.85em;
	color: var(--gray-600, #757575);
	margin-top: 5px;
	font-style: italic;
}

.portable-infobox .pi-image .pi-caption p {
	margin: 0 !important;
}

/* Clear float after infobox */
.mw-parser-output::after {
	content: "";
	display: table;
	clear: both;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
	.portable-infobox {
		float: none;
		max-width: 100%;
		margin: 0 0 16px 0;
	}

	.portable-infobox .pi-item {
		flex-direction: column;
	}

	.portable-infobox .pi-data-label,
	.portable-infobox .pi-data-value {
		min-width: 100%;
		text-align: left;
		padding: 0;
	}

	.portable-infobox .pi-data-label {
		padding-bottom: 2px;
	}

	.portable-infobox .pi-data-value {
		padding-top: 2px;
	}

	/* Horizontal table becomes vertical on mobile */
	.portable-infobox .pi-horizontal-group {
		display: block;
	}

	.portable-infobox .pi-horizontal-group thead,
	.portable-infobox .pi-horizontal-group tbody,
	.portable-infobox .pi-horizontal-group tr {
		display: block;
	}

	.portable-infobox .pi-horizontal-group th,
	.portable-infobox .pi-horizontal-group td {
		display: block;
		text-align: left;
		border: none;
		border-bottom: 1px solid var(--theme-border-color--subtle, #e0e0e0);
	}

	.portable-infobox .pi-horizontal-group th {
		background-color: transparent;
		font-weight: 600;
		padding-top: 10px;
	}

	.portable-infobox .pi-horizontal-group td {
		padding-bottom: 10px;
	}
}

/* ===== WEAPON INFOBOX STYLING ===== */
.weapon-infobox {
	float: right;
	clear: right;
	max-width: 300px;
	width: 100%;
	margin: 0 0 16px 16px;
	border: 1px solid #1a6a7a;
	border-radius: 10px;
	background-color: #ffffff;
	font-size: 0.9em;
}

.weapon-header {
	background: #1a6a7a;
	color: white;
	padding: 8px 10px;
	text-align: center;
	font-weight: bold;
	font-size: 1.5em;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}

.weapon-image {
	padding: 10px;
	text-align: center;
}

.weapon-image img {
	max-width: 100%;
	height: auto;
	border-radius: 4px;
	border: 1px solid #e0e0e0;
}

.weapon-section {
	padding: 0;
}

.section-title {
	padding: 5px 10px;
	color: #4a5568;
	font-weight: bold;
	border-bottom: 1px solid #a2a9b1;
	margin: 10px 0 5px 0;
}

.weapon-section>div {
	display: flex;
	justify-content: space-between;
	padding: 5px 10px;
	border-bottom: 1px dotted #a2a9b1;
}

.weapon-section>div:last-child {
	border-bottom: none;
}

.weapon-section>div>span:first-child {
	font-weight: 500;
	color: #4a5568;
	width: 40%;
	text-align: left;
}

.weapon-section>div>span:last-child {
	color: #4a5568;
	text-align: right;
	width: 60%;
}

/* Horizontal requirements section */
.weapon-section>div[style*="display: flex !important; justify-content: space-around"] {
	display: flex !important;
	justify-content: space-around !important;
	padding: 10px !important;
	text-align: center !important;
	border-bottom: none !important;
}

.weapon-section>div[style*="display: flex !important; justify-content: space-around"]>div {
	flex: 1;
	padding: 5px;
}

.weapon-section>div[style*="display: flex !important; justify-content: space-around"]>div>div:first-child {
	font-weight: 500;
	color: #4a5568;
	font-size: 0.9em;
	margin-bottom: 3px;
}

.weapon-section>div[style*="display: flex !important; justify-content: space-around"]>div>div:last-child {
	font-weight: bold;
	color: #4a5568;
	font-size: 1.1em;
}

/* Clear float */
.mw-parser-output::after {
	content: "";
	display: table;
	clear: both;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
	.weapon-infobox {
		float: none;
		max-width: 100%;
		margin: 0 0 16px 0;
	}
}

/* ===== MONSTER INFOBOX STYLING ===== */
.monster-infobox {
	float: right;
	clear: right;
	max-width: 350px;
	width: 100%;
	margin: 0 0 16px 16px;
	border: 1px solid #7a1a1a;
	border-radius: 10px;
	background-color: #ffffff;
	font-size: 0.9em;
}

.monster-header {
	background: #7a1a1a;
	color: white;
	padding: 8px 10px;
	text-align: center;
	font-weight: bold;
	font-size: 1.5em;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}

.monster-image {
	padding: 10px;
	text-align: center;
}

.monster-image img {
	max-width: 100%;
	height: auto;
	border-radius: 4px;
	border: 1px solid #e0e0e0;
}

.monster-section {
	padding: 0;
}

.monster-section .section-title {
	padding: 5px 10px;
	color: #4a5568;
	font-weight: bold;
	border-bottom: 1px solid #a2a9b1;
	margin: 10px 0 5px 0;
}

.monster-section>div[style*="display: flex"] {
	display: flex;
	justify-content: space-between;
	padding: 5px 10px;
	border-bottom: 1px dotted #a2a9b1;
}

.monster-section>div[style*="display: flex"]:last-child {
	border-bottom: none;
}

.monster-section>div[style*="display: flex"]>span:first-child {
	font-weight: 500;
	color: #4a5568;
	width: 40%;
	text-align: left;
}

.monster-section>div[style*="display: flex"]>span:last-child {
	color: #4a5568;
	text-align: right;
	width: 60%;
}

/* Phase sections */
.monster-section>div[style*="Phase"] {
	background: #f0f0f0;
	padding: 8px 10px;
	font-weight: bold;
	color: #7a1a1a;
	border-left: 3px solid #7a1a1a;
	margin: 10px 0 5px 0;
}

.monster-section>div[style*="line-height: 1.4"] {
	padding: 5px 10px 10px 10px;
	color: #4a5568;
	line-height: 1.4;
}

/* Lists (for weaknesses, drops, etc.) */
.monster-section ul {
	margin: 0 !important;
	padding-left: 20px !important;
}

.monster-section li {
	margin-bottom: 3px;
	color: #4a5568;
}

/* Clear float */
.mw-parser-output::after {
	content: "";
	display: table;
	clear: both;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
	.monster-infobox {
		float: none;
		max-width: 100%;
		margin: 0 0 16px 0;
	}
}

/* ROLES TABLE */
.roles-table {
	background-color: transparent !important;
	width: 100% !important;
	table-layout: auto !important;
	margin: 1rem 0 !important;
}

.roles-table>tr>th,
.roles-table>*>tr>th {
	background-color: var(--teal-600);
	color: #000 !important;
	padding: 12px 8px !important;
	font-weight: bold !important;
	text-align: center !important;
	border: 1px solid #aaa !important;
}

.roles-table>tr>th:first-child,
.roles-table>*>tr>th:first-child {
	min-width: 180px !important;
}

.roles-table>tr>th:nth-child(2),
.roles-table>*>tr>th:nth-child(2) {
	min-width: 300px !important;
}

.roles-table>tr>th:nth-child(3),
.roles-table>*>tr>th:nth-child(3),
.roles-table>tr>th:nth-child(4),
.roles-table>*>tr>th:nth-child(4) {
	min-width: 150px !important;
}

.roles-table>tr>td,
.roles-table>*>tr>td {
	padding: 10px 8px !important;
	border: 1px solid #aaa !important;
	vertical-align: top !important;
	word-wrap: break-word !important;
	overflow-wrap: break-word !important;
}

.roles-table>tr>td:first-child,
.roles-table>*>tr>td:first-child {
	font-weight: bold !important;
	white-space: nowrap !important;
}

.roles-table>tr>td:nth-child(2),
.roles-table>*>tr>td:nth-child(2) {
	white-space: normal !important;
	word-break: break-word !important;
}

.client-js .roles-table.sortable>*>tr:first-child>th:not(.unsortable),
.jquery-tablesorter th.headerSort {
	font-size: 12px !important;
	white-space: normal !important;
	cursor: pointer !important;
	position: relative !important;
	padding-right: 20px !important;
}

.client-js .roles-table.sortable>*>tr:first-child>th:not(.unsortable):after,
.jquery-tablesorter th.headerSort:after {
	content: "↕" !important;
	position: absolute !important;
	right: 5px !important;
	font-size: 10px !important;
	opacity: 0.5 !important;
}

/* Category breakdown tables */
.category-table,
.location-table {
	background-color: transparent !important;
	width: 100% !important;
	margin: 1rem 0 !important;
}

.category-table>tr>th,
.category-table>*>tr>th,
.location-table>tr>th,
.location-table>*>tr>th {
	background-color: var(--teal-600) !important;
	color: #000 !important;
	padding: 12px 8px !important;
	font-weight: bold !important;
	text-align: center !important;
	border: 1px solid #aaa !important;
}

.category-table>tr>th:nth-child(1),
.category-table>*>tr>th:nth-child(1),
.location-table>tr>th:nth-child(1),
.location-table>*>tr>th:nth-child(1) {
	width: 30% !important;
	min-width: 150px !important;
}

.category-table>tr>th:nth-child(2),
.category-table>*>tr>th:nth-child(2),
.location-table>tr>th:nth-child(2),
.location-table>*>tr>th:nth-child(2) {
	width: 15% !important;
	min-width: 80px !important;
}

.category-table>tr>th:nth-child(3),
.category-table>*>tr>th:nth-child(3),
.location-table>tr>th:nth-child(3),
.location-table>*>tr>th:nth-child(3) {
	width: 55% !important;
}

.category-table>tr>td,
.category-table>*>tr>td,
.location-table>tr>td,
.location-table>*>tr>td {
	padding: 10px 8px !important;
	border: 1px solid #aaa !important;
	vertical-align: top !important;
}

.category-table>tr>td:nth-child(3),
.category-table>*>tr>td:nth-child(3),
.location-table>tr>td:nth-child(3),
.location-table>*>tr>td:nth-child(3) {
	word-wrap: break-word !important;
	overflow-wrap: break-word !important;
}

.category-table>tr:last-child>td,
.category-table>*>tr:last-child>td,
.location-table>tr:last-child>td,
.location-table>*>tr:last-child>td {
	font-weight: bold !important;
	background-color: #f5f5f5 !important;
}

/* Race System Styling */

.race-tooltip-container {
	position: relative;
	display: inline-block;
	cursor: pointer;
}

.race-link {
	font-weight: bold;
	text-decoration: none !important;
	border-bottom: 1px dotted;
	transition: all 0.2s ease;
	display: inline-block;
}

.race-tooltip-container:hover .race-link {
	opacity: 0.9;
}

/* Tooltip on LEFT side of link */
.race-tooltip {
	visibility: hidden;
	width: 250px;
	background-color: #2c3e50;
	color: #ecf0f1;
	text-align: left;
	padding: 12px;
	border-radius: 8px;
	position: absolute;
	z-index: 1000;
	top: 50%;
	right: 100%;
	transform: translateY(-50%);
	margin-right: 10px;
	opacity: 0;
	transition: opacity 0.3s;
	font-size: 0.9em;
	font-weight: normal;
	line-height: 1.4;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
	border: 1px solid #34495e;
}

.race-tooltip::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	transform: translateY(-50%);
	border-width: 8px;
	border-style: solid;
	border-color: transparent transparent transparent #2c3e50;
}

.race-tooltip strong {
	color: #3498db;
	font-size: 1.1em;
	display: block;
	margin-bottom: 5px;
}

.race-tooltip small {
	color: #bdc3c7;
	font-size: 0.85em;
}

.race-tooltip-container:hover .race-tooltip {
	visibility: visible;
	opacity: 0.98;
}

.race-error {
	color: #d33;
	font-style: italic;
	background: #fee;
	padding: 2px 5px;
	border-radius: 3px;
}

.race-badge {
	display: inline-block;
	font-weight: bold;
	transition: transform 0.2s ease;
}

.race-badge:hover {
	transform: translateY(-2px);
	text-decoration: none !important;
}

.race-infobox {
	border-collapse: collapse;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	margin-left: 15px;
}

.race-infobox tr:nth-child(even) {
	background-color: #f8f8f8;
}

.race-infobox td {
	border-bottom: 1px solid #eee;
}

/* For smaller screens */
@media screen and (max-width: 768px) {
	.race-tooltip {
		width: 240px;
		font-size: 0.85em;
		padding: 10px;
	}

	.race-infobox {
		width: 100% !important;
		float: none !important;
		margin: 10px 0 !important;
	}
}

/* For very small screens */
@media screen and (max-width: 480px) {
	.race-tooltip {
		width: 200px;
		left: 0;
		transform: translateX(0);
	}

	.race-tooltip::after {
		left: 20px;
		transform: translateX(0);
	}
}
/* ===== NAVBOX STYLING ===== */

/* Base navbox */
.navbox {
    width: 100% !important;
    margin: 1.5em 0 !important;
    border-spacing: 0 !important;
    border-collapse: separate !important;
    border: 1px solid var(--theme-border-color) !important;
    background-color: var(--card-bg-main) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

/* Navbox title/header */
.navbox-title {
    background: var(--teal-100) !important;
}

.navbox-title th {
    padding: 12px 16px !important;
    font-weight: 600 !important;
    font-size: 1.1em !important;
    text-align: center !important;
    border-bottom: 2px solid var(--teal-800) !important;
}

.navbox-title a {
    text-decoration: none !important;
}

.navbox-title a:hover {
    text-decoration: underline !important;
}

/* Navbox group headers */
.navbox-group {
    background-color: var(--teal-50) !important;
    width: 180px !important;
    min-width: 180px !important;
    vertical-align: top !important;
    border-right: 1px solid var(--teal-200) !important;
}

.navbox-group th {
    background: transparent !important;
    font-size: 0.95em !important;
    padding: 10px 12px !important;
    text-align: left !important;
    font-weight: 600 !important;
}

/* Navbox list/content cells */
.navbox-list {
    padding: 12px !important;
    line-height: 1.5 !important;
    vertical-align: top !important;
    background-color: var(--card-bg-main) !important;
}

.navbox-list td {
    padding: 12px !important;
}

/* Navbox list items - SEPARATED STYLE (like chips) */
.navbox-list ul {
    list-style: none !important;
    padding-left: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

.navbox-list li {
    margin-bottom: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    background: var(--teal-50) !important;
    border-radius: 4px !important;
    border: 1px solid var(--teal-100) !important;
}

/* Links inside navbox - Chip style */
.navbox-list a,
.navbox-group a {
    text-decoration: none !important;
    padding: 5px 10px !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.navbox-list a:hover,
.navbox-group a:hover {
    background-color: var(--teal-100) !important;
    text-decoration: underline !important;
}

/* Alternative row styling */
.alt .navbox-list {
    background-color: rgba(56, 178, 172, 0.05) !important;
}

.alt .navbox-list li {
    background: rgba(56, 178, 172, 0.1) !important;
    border-color: rgba(56, 178, 172, 0.2) !important;
}

/* Subgroup styling */
.navbox-subgroup {
    margin: 10px 0 0 0 !important;
    border-spacing: 0 !important;
    width: 100% !important;
    border-top: 1px solid var(--teal-100) !important;
    padding-top: 10px !important;
}

.navbox-subgroup .navbox-group {
    background-color: var(--teal-100) !important;
    width: 160px !important;
    min-width: 160px !important;
}

/* Small navboxes */
.navbox-small {
    width: auto !important;
    min-width: 250px !important;
    max-width: 300px !important;
    float: right !important;
    margin: 0 0 16px 16px !important;
}

.navbox-small .navbox-list ul {
    gap: 4px !important;
}

/* ===== COLLAPSIBLE NAVBOX ===== */

.mw-collapsible .navbox-title {
    cursor: pointer !important;
    padding-right: 40px !important;
    position: relative !important;
}

.mw-collapsible .navbox-title:after {
    content: "▼" !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: white !important;
    font-size: 12px !important;
    font-weight: bold !important;
    background: rgba(255, 255, 255, 0.2) !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.mw-collapsible.mw-collapsed .navbox-title:after {
    content: "▶" !important;
}

.mw-collapsible-content {
    overflow: hidden !important;
}

/* ===== HORIZONTAL NAVBOXES ===== */

.navbox-horizontal .navbox-list ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.navbox-horizontal .navbox-list li {
    display: inline-flex !important;
}

.navbox-horizontal .navbox-list li:not(:last-child):after {
    display: none !important;
}

/* ===== DARK THEME ===== */

.skin-vector-dark .navbox {
    background-color: var(--card-bg-main) !important;
    border-color: var(--teal-700) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2) !important;
}

.skin-vector-dark .navbox-title {
    background: var(--teal-800) !important;
    border-bottom-color: var(--teal-900) !important;
}

.skin-vector-dark .navbox-group {
    background-color: rgba(95, 217, 207, 0.1) !important;
    border-right-color: var(--teal-700) !important;
}

.skin-vector-dark .navbox-group th {
    color: var(--teal-200) !important;
}

.skin-vector-dark .navbox-list li {
    background: rgba(95, 217, 207, 0.1) !important;
    border-color: rgba(95, 217, 207, 0.2) !important;
}

.skin-vector-dark .navbox-list a:hover,
.skin-vector-dark .navbox-group a:hover {
    background-color: rgba(95, 217, 207, 0.2) !important;
}

.skin-vector-dark .alt .navbox-list {
    background-color: rgba(95, 217, 207, 0.05) !important;
}

.skin-vector-dark .alt .navbox-list li {
    background: rgba(95, 217, 207, 0.15) !important;
    border-color: rgba(95, 217, 207, 0.25) !important;
}

.skin-vector-dark .mw-collapsible .navbox-title:after {
    background: rgba(255, 255, 255, 0.15) !important;
}

/* ===== RESPONSIVE DESIGN ===== */

@media screen and (max-width: 768px) {
    .navbox {
        margin: 1em 0 !important;
    }
    
    .navbox-small {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 1em 0 !important;
    }
    
    .navbox-group,
    .navbox-group th {
        width: 100% !important;
        min-width: 100% !important;
        display: block !important;
        border-right: none !important;
        border-bottom: 1px solid var(--teal-200) !important;
    }
    
    .navbox-list {
        padding: 10px !important;
    }
    
    .navbox-list ul {
        gap: 4px !important;
    }
    
    .navbox-list li {
        font-size: 0.9em !important;
    }
}

/* ===== ACCESSIBILITY ===== */

.navbox a:focus-visible {
    outline: 2px solid var(--focus-ring-color) !important;
    outline-offset: 2px !important;
    border-radius: 3px !important;
}

@media (prefers-reduced-motion: reduce) {
    .navbox,
    .navbox a {
        transition: none !important;
    }
}