MediaWiki:Common.css

From EQOA Sandstorm Wiki
Revision as of 20:51, 16 May 2026 by RenodorDev (talk | contribs)
Jump to navigationJump to search

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;600;700;800&display=swap');


/* =========================================================
   COLOR SCHEME ONLY ΓÇö DOES NOT TOUCH LAYOUT
   ========================================================= */

/* BODY & MAIN CONTENT COLORS */
body, #content, #mw-content-text, #column-content {
    background-color: #242428 !important; /* Dark stone */
    color: #D6D6C9 !important;           /* Pale sand */
}

/* LINKS */
a, .mw-body a, .quest-template a, .npc-template a, table a, .wikitable a {
    color: #E6C98B !important;
    font-weight: bold !important;
    text-decoration: none !important;
}
a:hover, .mw-body a:hover, .quest-template a:hover, .npc-template a:hover, table a:hover, .wikitable a:hover {
    color: #F0D9A0 !important;
    text-decoration: underline !important;
}

/* Global style for all wiki headers */
h1, h2, h3, h4, h5, h6 {
    color: white !important;       /* Text color */
    font-family: 'Arial', sans-serif; /* Font style */
    font-weight: bold;             /* Bold text */
    text-shadow: 1px 1px 2px #000; /* Optional: subtle shadow for readability */
}

/* Optional: specific size adjustments for nested headers */
h1 { font-size: 2em; }
h2 { font-size: 1.8em; }
h3 { font-size: 1.5em; }
h4 { font-size: 1.2em; }
h5 { font-size: 1em; }
h6 { font-size: 0.9em; }

/* =========================================================
SideBAR
========================================================= */

/* Force sidebar search field to match theme (MonoBook) */
#p-search,                 /* portlet wrapper */
#p-search .pBody,
#p-search .pBody form,
#p-search .pBody input,
#p-search input#searchInput,
#searchInput,
#searchInput[type="search"],
#searchInput[type="text"],
.portlet#p-search input,
.portlet#p-search input[type="text"] {
    background-color: #242428 !important;   /* your theme bg ΓÇö change if needed */
    color: #D6D6C9 !important;              /* label/text color */
    border: 1px solid #3C3C3C !important;   /* subtle border to match theme */
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    background-image: none !important;      /* remove gradients */
}

/* Ensure the input field itself is styled (some skins wrap it) */
#p-search input#searchInput,
#p-search input,
input#searchInput,
.portlet#p-search input[type="text"],
#searchInput[type="search"] {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    border: 1px solid #3C3C3C !important;
    padding: 4px 6px !important;
    margin: 2px 0 !important;
    outline: none !important;
}

/* Placeholder text color */
#searchInput::placeholder,
#searchInput::-webkit-input-placeholder,
#searchInput:-ms-input-placeholder {
    color: #9F9F8F !important;  /* muted placeholder color that matches theme */
}

/* Search buttons */
#searchGoButton,
#mw-searchButton,
#p-search .searchButton,
#p-search input[type="submit"] {
    background-color: #3C3C3C !important;
    color: #E6C98B !important;
    border: 1px solid #2B2B2B !important;
    box-shadow: none !important;
}

/* Button hover */
#searchGoButton:hover,
#mw-searchButton:hover,
#p-search .searchButton:hover,
#p-search input[type="submit"]:hover {
    background-color: #2E2E31 !important;
}

/* If the input is inside a <label> or <div> that sets white bg, neutralize it */
#p-search label,
#p-search div,
#p-search .pBody,
#p-search .pBody * {
    background: transparent !important;
}


/* SIDEBAR HEADERS */
#column-one h3[id^="p-"], .portlet h5 {
    background-color: #2B2B2B !important;
    color: #CCCCCC !important;
    font-size: 1em !important;   /* Increase header size */
    line-height: 1.1em !important;
    text-transform: uppercase !important;
    display: block !important;              /* Make header full width */
    width: 100% !important;                 /* Span entire sidebar */
    text-transform: uppercase !important;   /* All caps */
    border-bottom: 2px solid #7A3B12 !important; /* Match your gold/brown tone */
    padding-bottom: 1px !important;         /* Space above border */
    margin-bottom: 2px !important;          /* Space below border */
}

/* MonoBook Sidebar Logo Resize */
#p-logo {
    width: 160px !important;    /* adjust size here */
    height: 160px!important;
    margin: 0 auto !important;     /* <-- centers it horizontally */
}

#p-logo a {
    display: block !important;
    width: 160px !important;    /* same size as above */
    height: 160px !important;
    background-size: contain !important;  /* <-- makes it scale correctly */
    background-repeat: no-repeat !important;
    background-position: center !important;
    margin: 0 auto !important;     /* ensure anchor is centered */
}

/* MonoBook ΓÇö Tools portlet container */
#p-tb,
#p-tb .pBody {
    background-color: #242428 !important;   /* your dark bg */
    border: 1px solid #3C3C3C !important;
    color: #D6D6C9 !important;
    padding: 4px 6px !important;
}

/* Tools header ("Tools") */
#p-tb h3 {
    color: #E6C98B !important;              /* same gold header color you use */
    background: transparent !important;
    border: none !important;
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
}

/* Individual tool links */
#p-tb ul li a {
    display: block;
    background: transparent !important;
    color: #D6D6C9 !important;
    margin: 0 !important;
    padding: 2px 0 !important;
    border: none !important;
    font-size: 1.1em !important;   /* Increase link size */
    line-height: 1.25em !important;
}

/* Hover state */
#p-tb ul li a:hover {
    background-color: #2E2E31 !important;
    color: #E6C98B !important;              /* gold-ish hover color */
    text-decoration: none !important;
}

/* Remove leftover white from nested elements */
#p-tb *,
#p-tb .pBody * {
    background: transparent !important;
}

/* =========================================================
Footer
========================================================= */



/* =========================================================
NPC Page
========================================================= */

/* NPC TEMPLATE & QUEST */
.npc-template, .quest-right, .exp-camp-wrapper {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
}
.npc-left, .npc-right {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    border-color: #3C3C3C !important;
}
.npc-header, .zones-header {
    background-color: #3C3C3C !important;
    color: #E6C98B !important;
    border-bottom: 2px solid #D6B25E !important;
}
.npc-box, .eqoa-image-box {
    border: 1px solid #3C3C3C !important;
    background-color: #242428 !important;
}
.npc-image { text-align: center; }

/* TABLES */
.npc-table, table.info-table, table.npc-zone-table, .exp-camp-table {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
}
table.info-table tr td:first-child {
    background-color: #3C3C3C !important;
    color: #E6C98B !important;
    font-weight: bold;
}
table.info-table tr:nth-child(odd) td:last-child { background-color: #242428 !important; }
table.info-table tr:nth-child(even) td:last-child { background-color: #2E2E31 !important; }
table.npc-zone-table tr:nth-child(odd):not(:first-child) { background-color: #242428 !important; }
table.npc-zone-table tr:nth-child(even):not(:first-child) { background-color: #2E2E31 !important; }

/* NPC NAME & INFOBOX */
.infobox { border: 4px solid #555 !important; border-radius: 6px; }
.npcname-header, .infobox .npcname-row td {
    background-color: #2B2B2B !important;
    color: #E6C98B !important;
    border: 2px solid #D6B25E !important;
}

.npcname-header {
    font-size: 30px !important;
    text-align: center !important;
    font-family: 'Nunito', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px;
}


/* =========================
   MAIN PAGE BOXES ΓÇö LIGHTER BG
   ========================= */
/* =========================
   MAIN PAGE BANNERS
   ========================= */
.mp-banner {
    border: 2px solid #ffffff;
    padding: 2px;
    margin-bottom: 10px;
    max-width: 100%;
}

.mp-banner-inner {
    background-color: #405b74;
    padding: 12px;
    text-align: center;
}

.mp-banner-title {
    font-weight: bold;
    color: #ffffff;
    font-size: 18px;
}

.mp-banner-subtitle {
    color: #ffffff;
    font-style: italic;
    font-size: 14px;
}

/* =========================
   MAIN PAGE BOXES
   ========================= */
/* =========================
   MAIN PAGE BOXES
   ========================= */
/* FLEX COLUMNS */ 
.mp-flex-columns { 
display: flex;
gap: 10px; flex-wrap: nowrap; /* ensures World | Character stay side by side */ 
} 

/* COLUMNS */
.mp-column {
 flex: 1;
 min-width: 300px;
 } 
/* BOTTOM SECTIONS (full width) */
.mp-bottom { 
width: 100%; 
clear: both; /* make sure it stays below flex columns */
 } 
/* MAIN PAGE BOXES */ 
.mp-box { 
background-color: #2a2a2f; /* lighter #242428 */ color: #d6d6c9; border: 2px solid #444; border-radius: 4px; padding: 10px; margin-bottom: 10px; box-sizing: border-box; } /* BANNER */ .mp-banner { background-color: #405b74; text-align: center; padding: 12px; color: #ffffff; } .mp-banner-title { font-weight: bold; font-size: 1.5em; } .mp-banner-subtitle { font-style: italic; font-size: 1em; } 

/* BOX CONTENT */
.mp-box ul,
.mp-box li {
  list-style-type: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.mp-box li { 
margin-bottom: 5px;
 font-size: 0.95em;
 } 
.mp-box a { 
color: #E6C98B; 
font-weight: bold; 
text-decoration: none; 
} 
.mp-box a:hover { 
color: #F0D9A0; 
text-decoration: underline; 
}

/* Override Vector skin blue bullet icons */
.mw-body-content ul li {
    list-style: none !important;
    background-image: none !important;
    background: none !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}




/* =========================
JOB PAGE LAYOUT
========================= */

/* ===== Job Page Layout ===== */
.job-layout {
    display: flex;
    justify-content: center;
    align-items: flex-start; /* top alignment */
    gap: 150px;              /* final spacing you set */
    width: 100%;
    margin: 0 auto;
}

/* Left + Right sections */
.job-left,
.job-right {
    max-width: 350px;
    margin-top: 0;
    padding-top: 0;
}

/* Right artwork */
.job-right {
    text-align: center;
}

/* Artwork image */
.job-artwork,
.job-right img {
    width: 90%;
    max-width: 450px;
    margin: 0 auto;
    padding: 0;
    display: block;
}

/* ===== Infobox ===== */
.job-infobox-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    margin-top: 0;
    padding-top: 0;
}

.job-infobox-header th {
    background: #3c4a55;
    color: white;
    padding: 8px;
    text-align: center;
}

.job-infobox-label td:first-child {
    background: #d3dce4;
    width: 40%;
    padding: 6px;
}

.job-infobox-label td:last-child {
    background: #e9eff4;
    padding: 6px;
}

/* ===== Center Boxes Under Infobox ===== */
.job-center-boxes {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    margin-top: 12px;
}

.job-center-box {
    background: #e2e9ef;
    width: 48%;
    text-align: center;
    padding: 6px;
    border-radius: 6px;
    font-weight: bold;
}

.job-center-box a {
    color: #003366;
    text-decoration: none;
}

/* ===== Page Contents Box ===== */
.job-contents-box {
    background: #d7dee6;
    margin-top: 15px;
    padding: 10px;
    border-radius: 6px;
    font-size: 12px;
}

.job-contents-title {
    font-weight: bold;
    margin-bottom: 8px;
}

/* ===== Remove borders from detail tables ===== */
.eqoa-detail-table,
.eqoa-detail-table td {
    border: none !important;
    background: transparent !important;
}

/* ===== Class Mastery Table ===== */
.class-mastery-table {
    width: 100%;
    border-collapse: collapse;
    background: transparent;
}

.class-mastery-table th {
    background: var(--eqoa-header-bg, #2c2c2c);
    color: var(--eqoa-header-text, #e6e6e6);
    padding: 6px 10px;
    text-align: left;
    font-weight: bold;
    border-bottom: 1px solid #444;
}

.class-mastery-table td {
    padding: 6px 10px;
    border-bottom: 1px solid #333;
}

.class-mastery-table,
.class-mastery-table tr,
.class-mastery-table td {
    border: none;
}

/* Optional manual tweak */
.job-right {
    margin-top: -90px; /* preserved exactly as your final adjustment */
}


/* ============================================================
   SPELL LIST ΓÇö Final Clean Version (Latest Style Preserved)
   ============================================================ */

/* MAIN CONTAINER */
.spell-list {
  background: #0A1420 !important;
  border: 1px solid #E3B44A !important;
  color: #B9C4D1 !important;
  padding: 6px !important;
  margin-bottom: 12px !important;
}

/* GRID COLUMNS */
.spell-list__cols {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 6px !important;
  align-items: start !important;
}

/* COLUMN BOX */
.spell-col {
  background: #1C2B44 !important;
  border: 1px solid #E3B44A !important;
  padding: 4px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  color: #B9C4D1 !important;
}

/* ----------------------------------------------
   ROW LAYOUT (compact, aligned, tight)
   ---------------------------------------------- */
.spell-row {
  display: flex !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  min-height: 0 !important;
  height: auto !important;
  background: transparent !important;
  border-bottom: 1px solid rgba(227,180,74,0.06) !important;
}

/* LEVEL BOX ΓÇö big/gold */
.spell-lvl {
  width: 26px !important;
  min-width: 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 1px 0 0 !important;
  color: #E3B44A !important;
  font-size: 16px !important;
  font-weight: bold !important;
  line-height: 1 !important;
}

/* MAIN SPELL DATA (icon + name + extra icon) */
.spell-data {
  display: flex !important;
  align-items: center !important;
  gap: 1px !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  height: auto !important;
  color: #B9C4D1 !important;
}

/* SPELL NAME */
.spell-name {
  padding: 0 !important;
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

/* ICONS (final version: 20px tight alignment) */
.spell-icon img,
.spell-icon-wrap img,
.spell-row img {
  width: 20px !important;
  height: 20px !important;
  display: inline-block !important;
  vertical-align: middle !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

/* VERTICAL DIVIDER (gold, full height) */
.spell-divider {
  display: inline-block !important;
  align-self: stretch !important;
  width: 1px !important;
  min-width: 1px !important;
  background: #F2D07A !important;
  margin: 0 3px !important;
  box-sizing: border-box !important;
}

/* If something inside divider resets background */
.spell-divider * {
  background: #F2D07A !important;
}

/* Alternate divider using right border */
.spell-lvl.divider-right {
  border-right: 1px solid #F2D07A !important;
  padding-right: 4px !important;
  margin-right: 3px !important;
}

/* ----------------------------------------------
   LEGACY SUPPORT (SpellList + SpellRow)
   ---------------------------------------------- */
.SpellList {
  background: #0A1420 !important;
  border: 1px solid #E3B44A !important;
  padding: 6px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  color: #B9C4D1 !important;
}

.SpellRow {
  width: calc(50% - 20px) !important;
  background: #1C2B44 !important;
  border: 1px solid #E3B44A !important;
  padding: 6px 8px !important;
  box-sizing: border-box !important;
  color: #B9C4D1 !important;
}

/* ----------------------------------------------
   TABLE RESET (avoid MW interference)
   ---------------------------------------------- */
.spell-list table,
.spell-list tr,
.spell-list td,
.spell-list th,
.spell-col table,
.spell-col tr,
.spell-col td,
.spell-col th {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

/* ----------------------------------------------
   BLOCK OVERRIDE PROTECTION
   ---------------------------------------------- */
.spell-list .box,
.spell-list .mp-inner,
.spell-list .mainpage-box,
.spell-list .portal,
.spell-list .infobox,
.spell-col .infobox {
  background: transparent !important;
  border: none !important;
  color: inherit !important;
}

/* ----------------------------------------------
   RESPONSIVE
   ---------------------------------------------- */
@media (max-width: 520px) {
  .spell-list__cols { grid-template-columns: 1fr !important; }
  .SpellRow { width: 100% !important; }
}



/* ----------------------------------------------
   Item Page
   ---------------------------------------------- */

/* ------------------------------
   ITEM BOX STYLES (CLEAN + FIXED)
--------------------------------*/

.item-box {
  background: rgba(0,0,0,0.7);
  color: white;
  padding: 12px;
  border: 1px solid #fff;
  width: 600px;
  font-family: 'Courier New', monospace;
  position: relative;
  overflow: hidden;   /* FIX: prevents white box behind image */
}

.item-header {
  font-weight: bold;
  font-size: 2.5em;
  margin-bottom: 5px;
}

.item-stats div {
  margin: 2px 0;
  background: transparent !important; /* ensures no white behind image */
  font-size: 1.5em;
}

.item-attributes {
  margin-top: 5px;
  font-size: 1.5em;
}

.item-attr-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}

.item-attr-table th, .item-attr-table td {
  border-bottom: 1px dotted #fff;
  padding: 2px 5px;
}
.item-container {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: flex-start;
}

/* LEFT SIDE */
.item-left {
  flex: 1;
}

/* RIGHT SIDE */
.item-right {
  width: 250px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.item-image-block {
  text-align: center;
  border: 1px solid #aaa;
  background: #f8f8f8;
  padding: 10px;
  border-radius: 6px;
}

.item-image-label {
  font-weight: bold;
  margin-bottom: 5px;
}

.item-image {
  max-width: 100%;
  height: auto;
}


/* ----------------------------------------------
Zone Row Color
---------------------------------------------- */
/* Shared row striping for all zone data tables */
.zone-data-table tr:nth-child(odd):not(:first-child) {
    background-color: #242428 !important;   /* dark row */
}

.zone-data-table tr:nth-child(even):not(:first-child) {
    background-color: #2E2E31 !important;   /* lighter row */
}


/* Shared cell border + padding */
.zone-data-table td {
    border: 1px solid #3C3C3C !important;
    padding: 6px !important;
}

/* Shared link styling */
.zone-data-table a {
    color: #E6C98B !important;
    font-weight: bold !important;
    text-decoration: none !important;
}
.zone-data-table a:hover {
    color: #F0D9A0 !important;
    text-decoration: underline !important;
}
/* ============================================================
   ZONE PAGE STYLE (matching NPC/Quest color scheme)
   ============================================================ */

/* Main container */
.zone-left {
    width: 100%;
}

/* Generic box (same as .npc-box) */
.zones-box {
    background-color: #242428 !important;
    border: 1px solid #3C3C3C !important;
    color: #D6D6C9 !important;
    padding: 0 !important;
    margin-bottom: 12px !important;
}

/* Section header (matches .npc-header / .zones-header that you already have) */
.zones-header {
    background-color: #3C3C3C !important;
    color: #E6C98B !important;
    border-bottom: 2px solid #D6B25E !important;
    padding: 6px 8px !important;
    font-weight: bold !important;
    font-size: 1.1em !important;
    margin: 0 !important;
}

/* Content area */
.zones-content {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    padding: 8px !important;
    margin: 0 !important;
}

/* TOC row wrapper ΓÇö no layout interference */
.zones-toc-row {
    margin-top: 10px !important;
}

/* Ensure inner TOC box matches outer box style */
.zones-toc-row .zones-box {
    background-color: #242428 !important;
    border: 0px solid #3C3C3C !important;
}

/* Ensure TOC links use your global link color */
.zones-content a {
    color: #E6C98B !important;
    font-weight: bold !important;
    text-decoration: none !important;
}
.zones-content a:hover {
    color: #F0D9A0 !important;
    text-decoration: underline !important;
}
.zones-content *,
.zones-toc-row .zones-content * {
    background: transparent !important;
}
.zones-content {
    background-color: #242428 !important;
    border: none; 
}
.zones-content,
.zones-content *,
.zones-toc-row .zones-content,
.zones-toc-row .zones-content * {
    border: none !important;
}
/* Hide literal '*' bullets inside pre while keeping links visible */
.zones-content pre {
  font-size: 0 !important;           /* make the raw text nodes invisible */
  line-height: 1.4 !important;
  background: transparent !important;
  padding: 6px 8px !important;
}

/* Restore readable font size for links inside the pre */
.zones-content pre a {
  font-size: 14px !important;        /* pick your preferred size */
  display: block !important;         /* place each link on its own line */
  margin: 0 !important;
  padding: 0 !important;
  color: #E6C98B !important;
  font-weight: bold !important;
  text-decoration: none !important;
}

/* Hover state */
.zones-content pre a:hover {
  color: #F0D9A0 !important;
  text-decoration: underline !important;
}

/* Zone Details Row Layout */
.zone-details-row {
    display: block;                    /* stack child elements vertically */
    padding: 6px 4px !important;
    border-bottom: 1px solid #3C3C3C !important;
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    margin-bottom: 6px;
}

.zone-details-row:last-child {
    border-bottom: none !important;
}

.zone-details-text {
    display: block;                    /* ensure text is block-level */
    width: auto;                       /* remove fixed column width */
    color: #D6D6C9 !important;
    background: transparent !important;
    line-height: 1.3;
}

/* ============================================================
   ZONE PAGE COLUMN LAYOUT ΓÇö 55% LEFT / 45% RIGHT
   ============================================================ */

.zone-left, .zone-right {
    box-sizing: border-box !important;
}

.zone-left {
    width: 55% !important;
    float: left !important;
    margin-right: 10px !important; /* small gap */
}

.zone-right {
    width: 45% !important;
    float: right !important;
}

/* ============================================================
   ZoneDetails & ZoneDetailsRow ΓÇö Label-as-Header (stacked)
   Replaces previous ZoneDetails rules ΓÇö paste entire block
   ============================================================ */

/* Wrapper inherits .zones-box styling, but we add a unique hook */
.zone-details-box {
    width: 100%;
    margin-bottom: 12px !important;
}

/* Header uses your existing style, nothing extra needed */
.zone-details-header {
    /* inherits .zones-header */
}

/* Content area inherits exact zones-content style */
.zone-details-content {
    /* inherits .zones-content */
}

/* Row layout: keep flex but stack children vertically so label appears above text */
.zone-details-row {
    display: flex !important;
    flex-direction: column !important; /* <-- stack label above text */
    align-items: stretch !important;
    padding: 8px 6px !important;
    border-bottom: 1px solid #3C3C3C !important;
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    margin-bottom: 6px !important;
}

/* Last row: remove border */
.zone-details-row:last-child {
    border-bottom: none !important;
}

/* Label: styled and placed above the text (acts like a header) */
.zone-details-label {
    display: block !important;
    width: auto !important;
    margin-bottom: 6px !important;    /* distance between label and text */
    color: #E6C98B !important;
    font-weight: 700 !important;
    font-size: 1.02rem !important;     /* slightly larger than body text */
    line-height: 1.1 !important;
    letter-spacing: 0.2px !important;
    background: transparent !important;
}

/* Text: sits below the label */
.zone-details-text {
    display: block !important;
    width: auto !important;
    color: #D6D6C9 !important;
    background: transparent !important;
    line-height: 1.35 !important;
    font-size: 0.95rem !important;
    white-space: normal !important;    /* allow wrapping */
}

/* Links keep same style */
.zone-details-row a {
    color: #E6C98B !important;
    font-weight: bold !important;
    text-decoration: none !important;
}

.zone-details-row a:hover {
    color: #F0D9A0 !important;
    text-decoration: underline !important;
}

/* ============================================================
   ZoneDetails ΓÇö Full styling (header matches main .zones-header)
   Replace any previous ZoneDetails / zone-details rules with this
   ============================================================ */

/* Wrapper inherits .zones-box styling, but we add a unique hook */
.zone-details-box {
    width: 100%;
    margin-bottom: 12px !important;
    box-sizing: border-box !important;
}

/* Header: MATCH .zones-header style (dark grey bg, gold text, gold bottom border) */
.zone-details-header {
    background-color: #3C3C3C !important;   /* same as .zones-header */
    color: #E6C98B !important;              /* gold header text */
    border-bottom: 2px solid #D6B25E !important; /* gold bottom border */
    padding: 6px 8px !important;
    font-weight: bold !important;
    font-size: 1.1em !important;
    margin: 0 !important;
    line-height: 1.1 !important;
    box-shadow: none !important;            /* ensure no white shadow */
    background-image: none !important;
}

/* Remove any inner background, pseudo-elements, or inline-block boxes inside the header */
.zone-details-box .zone-details-header,
.zone-details-box .zone-details-header * ,
.zone-details-box .zone-details-header h1,
.zone-details-box .zone-details-header h2,
.zone-details-box .zone-details-header h3,
.zone-details-box .zone-details-header h4,
.zone-details-box .zone-details-header h5,
.zone-details-box .zone-details-header h6,
.zone-details-box .zone-details-header .mw-headline,
.zone-details-box .zone-details-header .plainlinks,
.zone-details-box .zone-details-header span {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    outline: none !important;
}

/* Remove pseudo element content that may generate small white boxes */
.zone-details-box .zone-details-header::before,
.zone-details-box .zone-details-header::after,
.zone-details-box .zone-details-header *::before,
.zone-details-box .zone-details-header *::after {
    content: none !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* If header contains inline children, ensure they are full-width and transparent */
.zone-details-box .zone-details-header > * {
    display: block !important;
    width: 100% !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Content area inherits zones-content styling (keeps consistent look) */
.zone-details-content {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    padding: 8px !important;
    margin: 0 !important;
    border: none !important;
}

/* ZoneDetails rows:
   Label acts as a header above the text (stacked) and keeps the color scheme */
.zone-details-row {
    display: flex !important;
    flex-direction: column !important; /* label above text */
    align-items: stretch !important;
    padding: 8px 6px !important;
    border-bottom: 1px solid #3C3C3C !important;
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    margin-bottom: 6px !important;
    box-sizing: border-box !important;
}

.zone-details-row:last-child {

    border-bottom: none !important;
}

/* Label: styled to look like a small header (gold) */
.zone-details-label {
    display: block !important;
    width: auto !important;
    margin-bottom: 6px !important;    /* spacing between label and text */
    color: #E6C98B !important;
    font-weight: 700 !important;
    font-size: 1.02rem !important;
    line-height: 1.1 !important;
    letter-spacing: 0.2px !important;
    background: transparent !important;
}

/* Text: sits below the label (pale sand color) */
.zone-details-text {
    display: block !important;
    width: auto !important;
    color: #D6D6C9 !important;
    background: transparent !important;
    line-height: 1.35 !important;
    font-size: 0.95rem !important;
    white-space: normal !important;
}

/* Link rules inside ZoneDetails keep global link colors */
.zone-details-row a,
.zone-details-content a {
    color: #E6C98B !important;
    font-weight: bold !important;
    text-decoration: none !important;
}

.zone-details-row a:hover,
.zone-details-content a:hover {
    color: #F0D9A0 !important;
    text-decoration: underline !important;
}

/* Optional responsive behavior: restore side-by-side label/text on very wide screens
   Uncomment if you want column layout on desktops: */

/*
@media (min-width: 1100px) {
  .zone-details-row {
    flex-direction: row !important;
    gap: 12px !important;
    align-items: flex-start !important;
  }
  .zone-details-label { width: 30% !important; margin-bottom: 0 !important; }
  .zone-details-text  { width: 70% !important; }
}
*/


/* ============================================================
   CLASS INFO TABLE ΓÇö Matches EQOA global style
   ============================================================ */

.class-info-table {
    background-color: #242428 !important;   /* same as npc-box / zones-box */
    border: 1px solid #3C3C3C !important;
    color: #D6D6C9 !important;
    margin-bottom: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Header (matches .zones-header / .npc-header) */
.class-info-header {
    background-color: #3C3C3C !important;
    color: #E6C98B !important;
    border-bottom: 2px solid #D6B25E !important;
    padding: 6px 8px !important;
    font-weight: bold !important;
    font-size: 1.15em !important;
}

/* Inner table structure */
.class-info-table-inner {
    width: 100% !important;
    border-collapse: collapse !important;
    background: transparent !important;
}

/* Column headers (Pros / Cons) */
.class-info-col-header {
    background-color: #2B2B2B !important;
    color: #E6C98B !important;
    text-align: center !important;
    padding: 6px !important;
    font-weight: bold !important;
    border-bottom: 1px solid #3C3C3C !important;
    border-right: 1px solid #D6B25E !important; /* ← Added vertical line */
}

/* Ensure last header (Con) has no extra border */
.class-info-col-header:last-child {
    border-right: none !important;
}

/* Rows striping ΓÇö matches all your other tables */
.class-info-row:nth-child(odd) td {
    background-color: #242428 !important;
}

.class-info-row:nth-child(even) td {
    background-color: #2E2E31 !important;
}

/* Cell formatting */
.class-info-row td {
    padding: 6px 10px !important;
    border-bottom: 1px solid #3C3C3C !important;
    color: #D6D6C9 !important;
    vertical-align: top !important;
}

/* NEW: Vertical divider between Pro and Con cells */
.class-info-row td:first-child {
    border-right: 1px solid #D6B25E !important; /* ← New visible divider */
}

/* Links inside cells follow global rules */
.class-info-row a {
    color: #E6C98B !important;
    font-weight: bold !important;
    text-decoration: none !important;
}

.class-info-row a:hover {
    color: #F0D9A0 !important;
    text-decoration: underline !important;
}


/******************************
  RAID ENCOUNTER TABLE STYLE
*******************************/
.raid-encounter-table {
    margin: 10px 0;
}

/* Table frame (same as exp-camp tables) */
.raid-encounter-table .exp-camp-table {
    width: 100%;
    border-collapse: collapse;
    background-color: #242428 !important; /* dark stone */
    color: #D6D6C9 !important;            /* pale sand text */
    border: 1px solid #3C3C3C !important; /* dark border */
}

/* Headers ΓÇö match .npc-header / .zones-header */
.raid-encounter-table th {
    background-color: #3C3C3C !important; /* header gray */
    color: #E6C98B !important;            /* gold */
    font-size: 18px;
    font-weight: bold;
    padding: 6px 10px;
    border-bottom: 2px solid #D6B25E !important; /* gold underline */
    vertical-align: top !important; /* NEW */
}

/* Base row styling ΓÇö same as zone-data-table */
.raid-encounter-table .exp-camp-row td {
    background-color: #242428 !important; 
    color: #D6D6C9 !important;
    border: 1px solid #3C3C3C !important;
    padding: 6px 10px;

    /* ✅ FIX: force text to top */
    vertical-align: top !important;
}

/* Alternating shading ΓÇö match .npc-table / .zone-data-table */
.raid-encounter-table .exp-camp-row:nth-child(even) td {
    background-color: #2E2E31 !important;
}

/* Increase size of <b> headers inside Raid Encounter Table */
.raid-encounter-table td b {
    font-size: 1.75em !important;  /* adjust 1.15 → 1.2 / 1.3 etc */
    color: #CCCCCC!important;     /* optional gold color like your headers */
    font-weight: bold !important;
    display: block !important;     /* makes it behave like a title */
    margin-bottom: 4px !important; /* spacing below the header */
}

/* Style ONLY wiki links ([[ ]]) inside the Raid Encounter table */
.raid-encounter-table td a {
    font-size: 1.2em !important;     /* bigger */
    color: #E6C98B !important;        /* gold */
}

/* Base row styling ΓÇö remove background color here */
.raid-encounter-table .exp-camp-row td {
    color: #D6D6C9 !important;
    border: 1px solid #3C3C3C !important;
    padding: 6px 10px;
    vertical-align: top !important;
}

/* Remove base background color from all cells */
.raid-encounter-table .exp-camp-row td {
    color: #D6D6C9 !important;
    border: 1px solid #3C3C3C !important;
    padding: 6px 10px;
    vertical-align: top !important;
    background-color: unset !important; /* ensure no inherited color */
}

/* Two-column alternating colors */
.raid-encounter-table .exp-camp-row td:nth-child(odd) {
    background-color: #242428 !important; /* Color 1: dark stone */
}

.raid-encounter-table .exp-camp-row td:nth-child(even) {
    background-color: #2E2E31 !important; /* Color 2: slightly lighter */
}

/* Target only the headers in the Raid Encounter Table */
.raid-encounter-table th {
    font-size: 25px !important;  /* adjust size as needed */
    font-weight: bold !important;
    color: #E6C98B !important;   /* optional: gold color */
    padding: 8px 12px !important; /* optional: more spacing */
    background-color: #3C3C3C !important; /* keep header background */
    border-bottom: 2px solid #D6B25E !important; /* gold underline */
}

/* UNIVERSAL SUPER-TIGHT RAID SPACING */

/* shrink checkbox */
.raid-checkboxify input[type="checkbox"] {
    transform: scale(0.75);
    margin: 0 4px 0 0 !important;
    padding: 0 !important;
    vertical-align: middle;
}

/* tighten link spacing */
.raid-checkboxify a {
    display: inline-block;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.0 !important;
}

/* force each checkbox/link pair onto its own line with tiny spacing */
.raid-checkboxify br {
    line-height: 0.03;
}

/* collapse any default spacing around list items */
.raid-checkboxify * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.raid-checkboxify p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0.7 !important;
}


body {
    overflow-x: hidden !important;
}


/* ============================================
   DARK THEME WIKITABLE STYLE (matches your wiki)
   ============================================ */

.wikitable {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    border: 1px solid #7A3E00 !important;
    border-collapse: collapse !important;
    width: 100%;
}

/* Table headers */
.wikitable > tr > th,
.wikitable > * > tr > th {
    background-color: #1A1A1D !important;
    color: #E3B44A !important;
    border: 1px solid #7A3E00 !important;
    padding: 8px 6px !important;
    text-align: left;
}

/* Table cells */
.wikitable > tr > td,
.wikitable > * > tr > td {
    background-color: #242428 !important;
    color: #D6D6C9 !important;
    border: 1px solid #3A2E2A !important;
    padding: 6px 6px !important;
}

/* Zebra striping */
.wikitable > tr:nth-child(even) > td,
.wikitable > * > tr:nth-child(even) > td {
    background-color: #1E1E22 !important;
}

/* Sortable table indicators */
table.sortable thead th {
    cursor: pointer;
}

table.sortable thead th:hover {
    background-color: #302F33 !important;
    color: #E3B44A !important;
}


/* Force gold border below each data row */
.class-mastery-table tr:not(.mastery-header-row) {
    border: 1px solid #cccccc!important;
}






























































































































/* =========================================================
   EQOA.LIVE COLOR MATCH OVERRIDE ΓÇö COLORS ONLY
   ========================================================= */


:root {
    --eqoa-bg: #0D0C0A;              /* main black background */
    --eqoa-bg-soft: #17130F;         /* warm dark brown-black */
    --eqoa-panel: #1D1813;           /* panel boxes */
    --eqoa-panel-2: #2A241E;         /* lighter inner boxes */
    --eqoa-border: #332A22;          /* subtle brown border */
    --eqoa-border-light: #4A4035;    /* lighter divider */
    --eqoa-gold: #F2B705;            /* Sandstorm gold */
    --eqoa-gold-soft: #D8A83A;       /* muted gold */
    --eqoa-gold-hover: #FFD45A;      /* hover gold */
    --eqoa-text: #E8E2D6;            /* warm white */
    --eqoa-muted: #AFA79B;           /* muted gray-beige */
    --eqoa-white: #FFFFFF;
}

/* Main page/background */
body,
#content,
#mw-content-text,
#column-content,
.npc-template,
.quest-right,
.exp-camp-wrapper,
.npc-left,
.npc-right,
.npc-box,
.eqoa-image-box,
.zones-box,
.zones-content,
.zone-details-content,
.class-info-table,
.wikitable,
table.info-table,
table.npc-zone-table,
.exp-camp-table,
.zone-data-table {
    background-color: var(--eqoa-bg) !important;
    color: var(--eqoa-text) !important;
}

/* Main page boxes/panels */
.mp-box,
.spell-list,
.SpellList,
.spell-col,
.SpellRow,
.item-box,
#p-tb,
#p-tb .pBody,
#p-search,
#p-search .pBody {
    background-color: var(--eqoa-panel) !important;
    color: var(--eqoa-text) !important;
    border-color: var(--eqoa-border-light) !important;
}

/* Alternate rows */
table.info-table tr:nth-child(even) td:last-child,
table.npc-zone-table tr:nth-child(even):not(:first-child),
.zone-data-table tr:nth-child(even):not(:first-child),
.class-info-row:nth-child(even) td,
.wikitable > tr:nth-child(even) > td,
.wikitable > * > tr:nth-child(even) > td,
.raid-encounter-table .exp-camp-row td:nth-child(even) {
    background-color: var(--eqoa-bg-soft) !important;
}

/* Headers ΓÇö remove blue look */
.npc-header,
.zones-header,
.zone-details-header,
.class-info-header,
.raid-encounter-table th,
.wikitable > tr > th,
.wikitable > * > tr > th,
.job-infobox-header th,
.npcname-header,
.infobox .npcname-row td,
.class-info-col-header,
#column-one h3[id^="p-"],
.portlet h5 {
    background-color: var(--eqoa-bg-soft) !important;
    color: var(--eqoa-gold) !important;
    border-color: var(--eqoa-border-light) !important;
}

/* Main page banner ΓÇö EQOA.live does not use blue */
.mp-banner,
.mp-banner-inner {
    background-color: var(--eqoa-panel) !important;
    color: var(--eqoa-white) !important;
    border-color: var(--eqoa-border-light) !important;
}

/* Links */
a,
.mw-body a,
.quest-template a,
.npc-template a,
table a,
.wikitable a,
.mp-box a,
.zones-content a,
.zone-details-row a,
.zone-details-content a,
.class-info-row a,
.zone-data-table a,
.raid-encounter-table td a {
    color: var(--eqoa-gold) !important;
}

a:hover,
.mw-body a:hover,
.quest-template a:hover,
.npc-template a:hover,
table a:hover,
.wikitable a:hover,
.mp-box a:hover,
.zones-content a:hover,
.zone-details-row a:hover,
.zone-details-content a:hover,
.class-info-row a:hover,
.zone-data-table a:hover {
    color: var(--eqoa-gold-hover) !important;
}

/* Text */
h1, h2, h3, h4, h5, h6 {
    color: var(--eqoa-white) !important;
    text-shadow: 1px 1px 2px #000 !important;
}

.zone-details-label,
.spell-lvl,
#p-tb h3 {
    color: var(--eqoa-gold) !important;
}

.zone-details-text,
.spell-data,
.spell-name,
.class-info-row td,
.wikitable td {
    color: var(--eqoa-text) !important;
}

/* Borders */
.npc-left,
.npc-right,
.npc-box,
.eqoa-image-box,
.zones-box,
.zone-details-row,
.class-info-table,
.class-info-row td,
.zone-data-table td,
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > td,
.raid-encounter-table .exp-camp-table,
.raid-encounter-table .exp-camp-row td,
.spell-list,
.SpellList,
.spell-col,
.SpellRow,
.mp-box {
    border-color: var(--eqoa-border-light) !important;
}

/* Sidebar */
#column-one,
#column-one .portlet,
#column-one .pBody {
    background-color: var(--eqoa-bg) !important;
    color: var(--eqoa-text) !important;
}

/* Search box */
#searchInput,
#searchInput[type="search"],
#searchInput[type="text"],
#p-search input,
.portlet#p-search input[type="text"] {
    background-color: var(--eqoa-bg-soft) !important;
    color: var(--eqoa-text) !important;
    border-color: var(--eqoa-border-light) !important;
}

#searchInput::placeholder {
    color: var(--eqoa-muted) !important;
}

#searchGoButton,
#mw-searchButton,
#p-search .searchButton,
#p-search input[type="submit"] {
    background-color: var(--eqoa-panel-2) !important;
    color: var(--eqoa-gold) !important;
    border-color: var(--eqoa-border-light) !important;
}

#searchGoButton:hover,
#mw-searchButton:hover,
#p-search .searchButton:hover,
#p-search input[type="submit"]:hover {
    background-color: var(--eqoa-bg-soft) !important;
    color: var(--eqoa-gold-hover) !important;
}

/* Job page light boxes converted */
.job-infobox-label td:first-child,
.job-infobox-label td:last-child,
.job-center-box,
.job-contents-box {
    background-color: var(--eqoa-panel) !important;
    color: var(--eqoa-text) !important;
}

.job-center-box a {
    color: var(--eqoa-gold) !important;
}

/* Item image block */
.item-image-block {
    background-color: var(--eqoa-panel) !important;
    border-color: var(--eqoa-border-light) !important;
    color: var(--eqoa-text) !important;
}




/* =========================================================
   EQOA.LIVE FINAL TUNING ΓÇö LESS BROWN, MORE BLACK/CHARCOAL
   ========================================================= */

:root {
    --eqoa-bg: #080807;
    --eqoa-bg-soft: #11100E;
    --eqoa-panel: #141210;
    --eqoa-panel-2: #1B1814;
    --eqoa-border: #2F2A24;
    --eqoa-border-light: #4A4035;
    --eqoa-gold: #F0B400;
    --eqoa-gold-soft: #D4A137;
    --eqoa-gold-hover: #FFD45A;
    --eqoa-text: #E6E1D8;
    --eqoa-muted: #9E978C;
}

/* Make main body closer to eqoa.live */
body,
#content,
#mw-content-text,
#column-content {
    background-color: #080807 !important;
}

/* Darken all major content boxes */
.mp-box,
.mp-banner,
.mp-banner-inner,
.npc-box,
.zones-box,
.zone-details-content,
.class-info-table,
.wikitable,
.exp-camp-table,
.raid-encounter-table .exp-camp-table {
    background-color: #141210 !important;
}

/* New? Start Here box / main page sections */
.mp-box,
.npc-template,
.quest-right,
.exp-camp-wrapper {
    background-color: #141210 !important;
    border-color: #3A3129 !important;
}

/* Make headers less panel-blue/brown and more eqoa.live black */
.npc-header,
.zones-header,
.zone-details-header,
.class-info-header,
.raid-encounter-table th,
.wikitable > tr > th,
.wikitable > * > tr > th,
#column-one h3[id^="p-"],
.portlet h5 {
    background-color: #11100E !important;
    color: #F0B400 !important;
    border-bottom-color: #3A3129 !important;
}

/* Thin divider lines closer to eqoa.live */
.mp-box,
.mp-banner,
.npc-box,
.zones-box,
.zone-details-row,
.class-info-table,
.wikitable,
.zone-data-table td {
    border-color: #3A3129 !important;
}

/* Sidebar should be almost black */
#column-one,
#column-one .portlet,
#column-one .pBody,
#p-search,
#p-search .pBody,
#p-tb,
#p-tb .pBody {
    background-color: #080807 !important;
    border-color: #2F2A24 !important;
}

/* Search input/button darker */
#searchInput,
#searchInput[type="search"],
#searchInput[type="text"],
#p-search input {
    background-color: #11100E !important;
    color: #E6E1D8 !important;
    border-color: #3A3129 !important;
}

#searchGoButton,
#mw-searchButton,
#p-search .searchButton,
#p-search input[type="submit"] {
    background-color: #1B1814 !important;
    color: #F0B400 !important;
    border-color: #3A3129 !important;
}

/* Links: stronger Sandstorm yellow */
a,
.mw-body a,
.quest-template a,
.npc-template a,
table a,
.wikitable a,
.mp-box a,
.zones-content a,
.zone-details-row a,
.zone-details-content a,
.class-info-row a,
.zone-data-table a,
.raid-encounter-table td a {
    color: #F0B400 !important;

}

/* White text closer to site */
body,
#content,
#mw-content-text,
#column-content,
.mp-box,
.zones-content,
.zone-details-text,
.class-info-row td,
.wikitable td {
    color: #E6E1D8 !important;
}

/* Muted text */
.mp-banner-subtitle,
small,
.mw-body-content,
.zone-details-text {
    color: #C9C1B5 !important;
}


/* =========================================================
   EXP CAMP TABLE ΓÇö GRID STYLE + COLLAPSIBLE
   ========================================================= */

.exp-camp-wrapper {
    width: 100% !important;
    margin: 18px 0 !important;
    overflow-x: auto !important;
}

.exp-camp-table {
    width: 100% !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    background-color: #080807 !important;
    color: #E6E1D8 !important;
    border: 1px solid #4A4035 !important;
}

/* Caption/header above table */
.exp-camp-table caption {
    caption-side: top !important;
    background-color: #11100E !important;
    color: #FFFFFF !important;
    font-size: 1.1em !important;
    font-weight: bold !important;
    padding: 8px 10px !important;
    border: 1px solid #4A4035 !important;
    border-bottom: none !important;
    text-align: center !important;
}

/* Header row */
.exp-camp-table th {
    background-color: #1B1814 !important;
    color: #F0B400 !important;
    border: 1px solid #4A4035 !important;
    padding: 8px 10px !important;
    text-align: center !important;
    font-weight: bold !important;
    vertical-align: middle !important;
}

/* Data cells */
.exp-camp-table td {
    background-color: #141210 !important;
    color: #E6E1D8 !important;
    border: 1px solid #4A4035 !important;
    padding: 8px 10px !important;
    vertical-align: top !important;
}

/* Alternating row color */
.exp-camp-table tr:nth-child(even) td {
    background-color: #11100E !important;
}

.exp-camp-table tr:nth-child(odd) td {
    background-color: #141210 !important;
}

/* Column widths */
.exp-camp-table th:nth-child(1),
.exp-camp-table td:nth-child(1) {
    width: 8% !important;
    text-align: center !important;
}

.exp-camp-table th:nth-child(2),
.exp-camp-table td:nth-child(2) {
    width: 15% !important;
}

.exp-camp-table th:nth-child(3),
.exp-camp-table td:nth-child(3) {
    width: 18% !important;
}

.exp-camp-table th:nth-child(4),
.exp-camp-table td:nth-child(4) {
    width: 24% !important;
}

.exp-camp-table th:nth-child(5),
.exp-camp-table td:nth-child(5) {
    width: 35% !important;
}

/* Links inside table */
.exp-camp-table a {
    color: #F0B400 !important;
    font-weight: bold !important;
    text-decoration: none !important;
}

.exp-camp-table a:hover {
    color: #FFD45A !important;
    text-decoration: underline !important;
}

/* Keep NPC list readable */
.exp-camp-table td:nth-child(4) {
    line-height: 1.45 !important;
}

/* Keep collapse/expand text visible */
.exp-camp-table .mw-collapsible-toggle,
.exp-camp-table .mw-collapsible-toggle a {
    color: #F0B400 !important;
    font-weight: bold !important;
}

/* Sort arrows visible */
.exp-camp-table th.headerSort,
.exp-camp-table th.headerSortUp,
.exp-camp-table th.headerSortDown {
    background-color: #1B1814 !important;
    color: #F0B400 !important;
}


/* =========================================================
   LYCAN GUIDE SECTIONS ΓÇö FULL BOXED STYLE
   ========================================================= */

.lycan-section-wrapper {
    display: block !important;
    width: 100% !important;
    margin: 14px 0 !important;
    clear: both !important;
}

.lycan-section-table {
    display: table !important;
    width: 100% !important;
    min-width: 100% !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    background-color: #141210 !important;
    color: #E6E1D8 !important;
    border: 1px solid #4A4035 !important;
}

/* Header bar */
.lycan-section-table caption {
    display: table-caption !important;
    caption-side: top !important;
    width: auto !important;
    background-color: #11100E !important;
    color: #FFFFFF !important;
    font-size: 1.1em !important;
    font-weight: bold !important;
    padding: 8px 10px !important;
    border: 1px solid #4A4035 !important;
    border-bottom: none !important;
    text-align: center !important;
}

/* Content box */
.lycan-section-table td {
    display: table-cell !important;
    width: 100% !important;
    background-color: #141210 !important;
    color: #E6E1D8 !important;
    border: 1px solid #4A4035 !important;
    padding: 12px !important;
    vertical-align: top !important;
}

/* Links */
.lycan-section-table a {
    color: #F0B400 !important;
    font-weight: bold !important;
    text-decoration: none !important;
}

.lycan-section-table a:hover {
    color: #FFD45A !important;
    text-decoration: underline !important;
}

/* Expand / Collapse */
.lycan-section-table .mw-collapsible-toggle {
    float: right !important;
    margin-right: 8px !important;
}

.lycan-section-table .mw-collapsible-toggle,
.lycan-section-table .mw-collapsible-toggle a {
    color: #F0B400 !important;
    font-weight: bold !important;
}





/* =========================================================
   LYCAN SPAWN TABLE
   ========================================================= */

.lycan-spawn-table {
    width: 100% !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    background-color: #141210 !important;
    color: #E6E1D8 !important;
}

/* Header */
.lycan-spawn-table th {
    background-color: #1B1814 !important;
    color: #F0B400 !important;
    border: 1px solid #4A4035 !important;
    padding: 10px !important;
    text-align: center !important;
    font-weight: bold !important;
}

/* Cells */
.lycan-spawn-table td {
    background-color: #141210 !important;
    color: #E6E1D8 !important;
    border: 1px solid #4A4035 !important;
    padding: 10px !important;
    vertical-align: top !important;
}

/* Alternate row shading */
.lycan-spawn-table tr:nth-child(even) td {
    background-color: #11100E !important;
}

/* Column sizing */
.lycan-col-name {
    width: 22% !important;
}

.lycan-col-level {
    width: 12% !important;
}

.lycan-col-zone {
    width: 38% !important;
}

.lycan-col-notes {
    width: 28% !important;
}

/* Links */
.lycan-spawn-table a {
    color: #F0B400 !important;
    font-weight: bold !important;
    text-decoration: none !important;
}

.lycan-spawn-table a:hover {
    color: #FFD45A !important;
    text-decoration: underline !important;
}

/* =========================================================
   LYCAN TABLE HEADER
   ========================================================= */

.lycan-table-header {
    width: 100% !important;
    background-color: #11100E !important;
    color: #FFFFFF !important;
    border: 1px solid #4A4035 !important;
    border-bottom: none !important;
    padding: 10px !important;
    text-align: center !important;
    font-size: 18px !important;
    font-weight: bold !important;
    margin-top: 18px !important;
}










.zone-directory-table {
  width: 100%;
  border-collapse: collapse;
  background: #17130f;
  border: 1px solid #5b4a38;
}

.zone-directory-table caption {
  font-size: 28px;
  font-weight: bold;
  color: #f0b400;
  padding: 10px;
  text-align: center;
}

.zone-directory-table th {
  color: #f0b400;
  background: #1f1711;
  border: 1px solid #5b4a38;
  padding: 8px;
  text-align: center;
}

.zone-directory-table td {
  border: 1px solid #5b4a38;
  padding: 10px;
  vertical-align: top;
}

.zone-list-left {
  width: 28%;
}

.zone-map-middle {
  width: 44%;
  text-align: center;
}

.zone-list-right {
  width: 28%;
}

.zone-map-middle img {
  max-width: 100%;
  height: auto;
}


.path-choice-box {
  margin: 18px 0;
  border: 1px solid #5b4a38;
  background: #17130f;
}

.path-choice-title {
  text-align: center;
  font-weight: bold;
  font-size: 22px;
  color: #f0b400;
  padding: 10px;
  border-bottom: 1px solid #5b4a38;
  background: #1f1711;
}

.path-choice-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding: 12px;
}

.path-choice-panel {
  border: 1px solid #5b4a38;
  background: #0f0d0a;
  padding: 10px;
}

.path-choice-header {
  text-align: center;
  font-weight: bold;
  color: #f0b400;
  margin-bottom: 8px;
  border-bottom: 1px solid #5b4a38;
  padding-bottom: 6px;
}


.items-filter-box {
  background: #242428;
  color: #D6D6C9;
  border: 1px solid #3C3C3C;
  padding: 10px;
  margin-top: 15px;
  margin-bottom: 10px;
}

.items-filter-box input {
  width: 90px;
  margin: 4px;
  background: #1B1B1F;
  color: #D6D6C9;
  border: 1px solid #555;
  padding: 3px;
}

.items-filter-box button {
  margin-left: 8px;
  background: #3C3C3C;
  color: #E6C98B;
  border: 1px solid #D6B25E;
  padding: 4px 8px;
  cursor: pointer;
}


/* =========================================================
   Character Builder 
   ========================================================= */

/* =========================================================
   Character Builder - EQOA.live Inspired Theme
   ========================================================= */

.character-builder-box {
    --cb-bg: #080807;
    --cb-panel: #11100e;
    --cb-panel-2: #141210;
    --cb-panel-3: #1b1814;
    --cb-border: #3a3129;
    --cb-border-soft: rgba(240, 180, 0, 0.22);
    --cb-gold: #f0b400;
    --cb-gold-soft: #d4a137;
    --cb-gold-hover: #ffd45a;
    --cb-text: #e6e1d8;
    --cb-muted: #aaa197;
    --cb-danger: #ff9b8f;
    --cb-danger-bg: rgba(130, 38, 28, 0.22);
    --cb-good: #9eff9e;
    --cb-blue: #8fd9ff;

    background: var(--cb-bg);
    color: var(--cb-text);
    border: 1px solid var(--cb-border);
    border-radius: 4px;
    padding: 16px;
    margin: 15px 0;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.45;
}

/* Title */

.character-builder-title-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    border-bottom: 1px solid var(--cb-border);
    padding-bottom: 8px;
    margin-bottom: 14px;
}

.character-builder-title {
    flex: 1;
    text-align: center;
    color: #ffffff;
    font-size: 26px;
    font-weight: 700;
    text-shadow: 1px 1px 2px #000;
    margin: 0;
    border: 0;
    padding: 0;
}

#cb-theme-toggle {
    background: var(--cb-panel-3);
    border: 1px solid var(--cb-border);
    border-radius: 3px;
    color: var(--cb-gold);
    cursor: pointer;
    padding: 7px 12px;
    font-weight: 700;
}

#cb-theme-toggle:hover {
    background: var(--cb-panel-2);
    color: var(--cb-gold-hover);
    border-color: var(--cb-gold-soft);
}

/* Tabs */

.cb-builder-tabs {
    display: flex;
    gap: 8px;
    margin: 12px 0 14px;
    border-bottom: 1px solid var(--cb-border);
    padding-bottom: 8px;
}

.cb-tab-button {
    background: var(--cb-panel-3);
    border: 1px solid var(--cb-border);
    border-radius: 3px;
    color: var(--cb-gold);
    cursor: pointer;
    padding: 7px 14px;
    font-weight: 700;
}

.cb-tab-button:hover {
    background: var(--cb-panel-2);
    color: var(--cb-gold-hover);
    border-color: var(--cb-gold-soft);
}

.cb-tab-active {
    background: var(--cb-gold);
    color: #080807;
    border-color: var(--cb-gold);
}

.cb-tab-panel {
    display: none;
}

.cb-tab-panel-active {
    display: block;
}

/* Section Titles */

.character-builder-section-title {
    color: var(--cb-gold);
    font-size: 17px;
    font-weight: 700;
    border-bottom: 1px solid var(--cb-border);
    padding-bottom: 5px;
    margin-bottom: 10px;
}

/* Controls */

.character-builder-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    align-items: center;
    background: var(--cb-panel);
    border: 1px solid var(--cb-border);
    border-radius: 4px;
    padding: 10px;
    margin-bottom: 15px;
}

.character-builder-controls label {
    color: var(--cb-gold);
    font-weight: 700;
}

.character-builder-controls select,
.character-builder-controls input,
.character-builder-controls textarea,
.cb-slot-search,
.cb-slot-filter,
.cb-slot-sort {
    background: var(--cb-bg);
    color: var(--cb-text);
    border: 1px solid var(--cb-border);
    border-radius: 3px;
    padding: 6px 8px;
}

.character-builder-controls textarea {
    resize: vertical;
}

.character-builder-controls select:focus,
.character-builder-controls input:focus,
.character-builder-controls textarea:focus,
.cb-slot-search:focus,
.cb-slot-filter:focus,
.cb-slot-sort:focus {
    outline: none;
    border-color: var(--cb-gold);
    box-shadow: 0 0 0 2px rgba(240, 180, 0, 0.18);
}

.character-builder-controls button,
#cb-refresh-items,
#cb-generate-share-url,
#cb-copy-share-url,
#cb-reset-build,
#cb-export-card,
#cb-show-bis,
#cb-compare-builds {
    background: var(--cb-panel-3);
    border: 1px solid var(--cb-border);
    border-radius: 3px;
    color: var(--cb-gold);
    cursor: pointer;
    padding: 7px 12px;
    font-weight: 700;
}

.character-builder-controls button:hover,
#cb-refresh-items:hover,
#cb-generate-share-url:hover,
#cb-copy-share-url:hover,
#cb-reset-build:hover,
#cb-export-card:hover,
#cb-show-bis:hover,
#cb-compare-builds:hover {
    background: var(--cb-panel-2);
    color: var(--cb-gold-hover);
    border-color: var(--cb-gold-soft);
}

/* Tables */

.character-builder-stat-table,
.character-builder-equipped-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--cb-panel);
    border: 1px solid var(--cb-border);
}

.character-builder-stat-table th {
    background: var(--cb-panel-3);
    color: var(--cb-gold);
    border: 1px solid var(--cb-border);
    padding: 8px;
    text-align: center;
}

.character-builder-stat-table td,
.character-builder-equipped-table td {
    background: var(--cb-panel-2);
    color: var(--cb-text);
    border: 1px solid var(--cb-border);
    padding: 7px;
}

.character-builder-stat-table td {
    text-align: center;
    font-weight: 700;
}

.character-builder-equipped-table td:first-child {
    color: var(--cb-gold);
    width: 35%;
    font-weight: 700;
}

/* Equipment Layout */

.character-builder-equipment-layout {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 16px !important;
    width: 100% !important;
}

.character-builder-equipped-summary {
    order: 1;
    width: 340px !important;
    min-width: 340px !important;
    max-width: 340px !important;
    margin-top: 36px !important;
    background: var(--cb-panel);
    border: 1px solid var(--cb-border);
    border-radius: 4px;
    padding: 10px;
    position: sticky;
    top: 10px;
}

.character-builder-gear-column {
    order: 2;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.character-builder-gear-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(220px, 1fr)) !important;
    gap: 8px !important;
}

/* Gear Slot Cards */

.character-builder-slot {
    background: var(--cb-panel);
    border: 1px solid var(--cb-border);
    border-left: 3px solid var(--cb-gold);
    border-radius: 4px;
    padding: 8px;
    display: flex;
    flex-direction: column;
}

.character-builder-slot label {
    display: block;
    color: var(--cb-gold);
    font-weight: 700;
    margin-bottom: 4px;
}

.cb-picker-tools {
    display: flex;
    gap: 5px;
    align-items: center;
    margin: 4px 0;
}

.cb-upgrade-toggle {
    display: flex;
    align-items: center;
    gap: 4px;
    color: var(--cb-muted);
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.cb-upgrade-toggle input {
    accent-color: var(--cb-gold);

}

.cb-item-picker-list {
    max-height: 120px;
    overflow-y: auto;
    border: 1px solid var(--cb-border);
    background: var(--cb-bg);
    border-radius: 3px;
}

.cb-picker-item {
    color: var(--cb-text);
    padding: 4px 6px;
    border-bottom: 1px solid rgba(240, 180, 0, 0.08);
    cursor: pointer;
    transition: background 0.12s ease, color 0.12s ease;
}

.cb-picker-item:hover {
    background: var(--cb-panel-3);
    color: var(--cb-gold-hover);
}

.cb-picker-selected {
    background: var(--cb-panel-3);
    color: var(--cb-gold-hover);
    font-weight: 700;
    box-shadow: inset 3px 0 0 var(--cb-gold);
}

.cb-picker-none {
    color: var(--cb-muted);
}

.cb-picker-disabled,
.cb-slot-disabled-note {
    color: var(--cb-danger);
    padding: 4px;
    font-size: 12px;
}

/* Warnings / Results */

.character-builder-warning-box {
    background: var(--cb-danger-bg);
    border: 1px solid rgba(220, 90, 70, 0.35);
    border-radius: 3px;
    color: #ffb0a0;
    padding: 8px;
    margin: 10px 0;
    font-size: 13px;
}

/* Tooltips */

.character-builder-tooltip {
    position: absolute;
    z-index: 99999;
    background: var(--cb-bg);
    color: var(--cb-text);
    border: 1px solid var(--cb-gold-soft);
    border-radius: 4px;
    padding: 10px;
    min-width: 220px;
    max-width: 340px;
    font-size: 12px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.65);
    pointer-events: none;
    animation: cbTooltipFade 0.12s ease-out;
}

.cb-tooltip-title {
    color: var(--cb-gold-hover);
    font-weight: 700;
    font-size: 14px;
    border-bottom: 1px solid var(--cb-border);
    margin-bottom: 5px;
    padding-bottom: 3px;
}

.cb-tooltip-line {
    margin: 2px 0;
}

.cb-tooltip-stats {
    margin-top: 5px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2px 8px;
}

.cb-tooltip-stats span {
    color: var(--cb-gold);
    font-weight: 700;
}

.cb-compare-tooltip {
    min-width: 260px;
}

@keyframes cbTooltipFade {
    from {
        opacity: 0;
        transform: translateY(4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Item Names / Links */

.cb-equipped-item-name {
    color: var(--cb-gold-hover);
    cursor: pointer;
    transition: filter 0.14s ease, text-shadow 0.14s ease;
}

.cb-equipped-item-name:hover {
    filter: brightness(1.12);
    text-decoration: underline;
}

.cb-item-page-link {
    margin-left: 6px;
    font-weight: 700;
    cursor: pointer;
    opacity: 0.75;
    color: var(--cb-gold);
}

.cb-item-page-link:hover {
    opacity: 1;
    color: var(--cb-gold-hover);
}

/* Stat States */

.cb-overcap {
    color: var(--cb-good);
    font-weight: 700;
}

.cb-compare-positive {
    color: var(--cb-good);
    animation: cbStatGainPulse 0.45s ease-out;
}

.cb-compare-negative {
    color: var(--cb-danger);
    animation: cbStatLossPulse 0.45s ease-out;
}

@keyframes cbStatGainPulse {
    0% {
        transform: scale(1.18);
        opacity: 0.25;
        text-shadow: 0 0 10px rgba(80, 255, 120, 0.9);
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes cbStatLossPulse {
    0% {
        transform: scale(1.18);
        opacity: 0.25;
        text-shadow: 0 0 10px rgba(255, 80, 80, 0.9);
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.character-builder-stat-table td {
    transition: background-color 0.25s ease, box-shadow 0.25s ease, transform 0.18s ease;
}

.cb-stat-flash {
    animation: cbStatFlash 0.55s ease-out;
}

@keyframes cbStatFlash {
    0% {
        background-color: rgba(80, 255, 120, 0.22);
        box-shadow: 0 0 10px rgba(80, 255, 120, 0.55);
        transform: scale(1.06);
    }

    100% {
        background-color: transparent;
        box-shadow: none;
        transform: scale(1);
    }
}

/* Rarity Colors */

.cb-rarity-common {
    color: #d7d7d7;
}

.cb-rarity-uncommon {
    color: #6fd96f;
}

.cb-rarity-rare {
    color: #63a9ff;
    text-shadow: 0 0 4px rgba(99,169,255,0.45);
}

.cb-rarity-ultra-rare {
    color: #d26bff;
    text-shadow: 0 0 6px rgba(210,107,255,0.8), 0 0 12px rgba(255,120,60,0.45);
}

.cb-rarity-legendary {
    color: #b54848;
    text-shadow: 0 0 5px rgba(181,72,72,0.55), 0 0 12px rgba(120,20,20,0.35);
    animation: cbLegendaryTextPulse 2.4s ease-in-out infinite;
}

.cb-rarity-relic {
    color: #d4af37;
    text-shadow: 0 0 6px rgba(212,175,55,0.55), 0 0 14px rgba(255,220,120,0.35);
    animation: cbRelicTextShimmer 2.6s ease-in-out infinite;
}

@keyframes cbLegendaryTextPulse {
    0%, 100% {
        text-shadow: 0 0 4px rgba(181,72,72,0.35), 0 0 8px rgba(120,20,20,0.18);
    }

    50% {
        text-shadow: 0 0 8px rgba(220,90,90,0.85), 0 0 18px rgba(160,30,30,0.45);
    }
}

@keyframes cbRelicTextShimmer {
    0%, 100% {
        color: #d4af37;
        text-shadow: 0 0 4px rgba(212,175,55,0.35), 0 0 8px rgba(255,220,120,0.18);
    }

    50% {
        color: #ffe08a;
        text-shadow: 0 0 9px rgba(255,230,150,0.9), 0 0 20px rgba(255,240,180,0.5);
    }
}

.cb-tooltip-rarity-common {
    border-color: #666;
}

.cb-tooltip-rarity-uncommon {
    border-color: #5fd35f;
}

.cb-tooltip-rarity-rare {
    border-color: #63a9ff;
}

.cb-tooltip-rarity-ultra-rare {
    border-color: #b46cff;
}

.cb-tooltip-rarity-legendary {
    border-color: #b54848;
    box-shadow: 0 0 12px rgba(181,72,72,0.45), 0 0 20px rgba(120,20,20,0.28);
}

.cb-tooltip-rarity-relic {
    border-color: #d4af37;
    box-shadow: 0 0 12px rgba(212,175,55,0.55), 0 0 24px rgba(255,215,100,0.28);
}

/* Light Theme Disabled Into Locked Dark Theme */
/* Light Theme Disabled Into Locked Dark Theme */


/* Light Theme - Sandstorm Control Panel Style */

.cb-theme-light .character-builder-box {
    --cb-bg: #f6f4f1;
    --cb-panel: #ffffff;
    --cb-panel-2: #fbfaf8;
    --cb-panel-3: #e8e5e1;
    --cb-border: #d8d2ca;
    --cb-border-soft: #e7e1da;
    --cb-gold: #3b2618;
    --cb-gold-soft: #5a3a26;
    --cb-gold-hover: #1f130c;
    --cb-text: #2f2924;
    --cb-muted: #80766e;
    --cb-danger: #d93030;
    --cb-danger-bg: #fff4f4;
    --cb-good: #1b8f3a;
    --cb-blue: #1f6fb2;
}

.cb-theme-light .cm-calculator-box {
    --cm-bg: #f6f4f1;
    --cm-panel: #ffffff;
    --cm-panel-2: #fbfaf8;
    --cm-panel-3: #e8e5e1;
    --cm-border: #d8d2ca;
    --cm-border-soft: #e7e1da;
    --cm-gold: #3b2618;
    --cm-gold-soft: #5a3a26;
    --cm-gold-hover: #1f130c;
    --cm-text: #2f2924;
    --cm-muted: #80766e;
    --cm-danger: #d93030;
    --cm-danger-bg: #fff4f4;
    --cm-good: #1b8f3a;
    --cm-blue: #1f6fb2;
}

/* Page Containers */

.cb-theme-light,
.cb-theme-light .character-builder-box,
.cb-theme-light .cm-calculator-box {
    background: #f6f4f1 !important;
    color: #2f2924 !important;
    border-color: #d8d2ca !important;
}

/* Titles */

.cb-theme-light .character-builder-title,
.cb-theme-light .cm-calculator-box .character-builder-title {
    color: #2f1d13 !important;
    text-shadow: none !important;
    letter-spacing: 0.02em;
}

/* Section Titles */

.cb-theme-light .character-builder-section-title,
.cb-theme-light .cm-calculator-box .character-builder-section-title,
.cb-theme-light .cm-panel-title {
    color: #3b2618 !important;
    border-bottom-color: #d8d2ca !important;
}

/* Controls and Panels */

.cb-theme-light .character-builder-controls,
.cb-theme-light .character-builder-equipped-summary,
.cb-theme-light .character-builder-slot,
.cb-theme-light .cm-search-tools,
.cb-theme-light .cm-purchased-panel,
.cb-theme-light .cm-master-class-panel,
.cb-theme-light .cm-unlocked-box,
.cb-theme-light .cm-card {
    background: #ffffff !important;
    color: #2f2924 !important;
    border-color: #d8d2ca !important;
}

/* Subtle Section Bars */

.cb-theme-light .cm-card-type-tag,
.cb-theme-light .cb-picker-selected,
.cb-theme-light .character-builder-stat-table th,
.cb-theme-light .character-builder-equipped-table td:first-child,
.cb-theme-light .cm-calculator-box .character-builder-stat-table th {
    background: #e8e5e1 !important;
    color: #3b2618 !important;
    border-color: #d8d2ca !important;
}

/* Inputs */

.cb-theme-light input,
.cb-theme-light select,
.cb-theme-light textarea,
.cb-theme-light .cm-search-input,
.cb-theme-light .cb-slot-search,
.cb-theme-light .cb-slot-filter,
.cb-theme-light .cb-slot-sort {
    background: #fbfaf8 !important;
    color: #2f2924 !important;
    border: 1px solid #d8d2ca !important;
    border-radius: 3px !important;
    box-shadow: none !important;
}

.cb-theme-light input:focus,
.cb-theme-light select:focus,
.cb-theme-light textarea:focus,
.cb-theme-light .cm-search-input:focus,
.cb-theme-light .cb-slot-search:focus,
.cb-theme-light .cb-slot-filter:focus,
.cb-theme-light .cb-slot-sort:focus {
    border-color: #5a3a26 !important;
    box-shadow: 0 0 0 2px rgba(59, 38, 24, 0.10) !important;
}

/* Buttons */

.cb-theme-light button,
.cb-theme-light .cb-tab-button,
.cb-theme-light .cm-tab-button,
.cb-theme-light .cm-view-button,
.cb-theme-light .cm-action-button,
.cb-theme-light .cm-reset-button,
.cb-theme-light .cm-clear-search-button,
.cb-theme-light .cm-mini-remove-button {
    background: #ffffff !important;
    color: #3b2618 !important;
    border: 1px solid #d8d2ca !important;
    border-radius: 3px !important;
    box-shadow: none !important;
}

.cb-theme-light button:hover,
.cb-theme-light .cb-tab-button:hover,
.cb-theme-light .cm-tab-button:hover,
.cb-theme-light .cm-view-button:hover,
.cb-theme-light .cm-action-button:hover,
.cb-theme-light .cm-reset-button:hover,
.cb-theme-light .cm-clear-search-button:hover,
.cb-theme-light .cm-mini-remove-button:hover {
    background: #f0eeeb !important;
    color: #1f130c !important;
    border-color: #bfb6ad !important;
}

/* Active Tab / Primary Action */

.cb-theme-light .cb-tab-active,
.cb-theme-light .cm-tab-active,
.cb-theme-light .cm-view-active {
    background: #3b2618 !important;
    color: #ffffff !important;
    border-color: #3b2618 !important;
}

/* Tables */

.cb-theme-light .character-builder-stat-table,
.cb-theme-light .character-builder-equipped-table,
.cb-theme-light .cm-calculator-box .character-builder-stat-table {
    background: #ffffff !important;
    border-color: #d8d2ca !important;
}

.cb-theme-light .character-builder-stat-table td,
.cb-theme-light .character-builder-equipped-table td,
.cb-theme-light .cm-calculator-box .character-builder-stat-table td {
    background: #ffffff !important;
    color: #2f2924 !important;
    border-color: #d8d2ca !important;
}

/* Item Picker / Lists */

.cb-theme-light .cb-item-picker-list {
    background: #ffffff !important;
    border-color: #d8d2ca !important;
}

.cb-theme-light .cb-picker-item,
.cb-theme-light .cm-purchased-item {
    background: #ffffff !important;
    color: #2f2924 !important;
    border-color: #eee9e4 !important;
}

.cb-theme-light .cb-picker-item:hover,
.cb-theme-light .cm-purchased-item:hover,
.cb-theme-light .cm-card:hover {
    background: #f7f5f2 !important;
}

/* Card Type Colors Stay Subtle */

.cb-theme-light .cm-card {
    border-left-color: #3b2618 !important;
}

.cb-theme-light .cm-type-general {
    border-left-color: #3b2618 !important;
}

.cb-theme-light .cm-type-racial {
    border-left-color: #397a3d !important;
}

.cb-theme-light .cm-type-archetype {
    border-left-color: #2e6fa8 !important;
}

.cb-theme-light .cm-type-class {
    border-left-color: #a35a24 !important;
}

.cb-theme-light .cm-type-master {
    border-left-color: #74509b !important;
}

/* Text Colors */

.cb-theme-light .character-builder-controls label,
.cb-theme-light .cm-calculator-box label,
.cb-theme-light .cm-card-meta,
.cb-theme-light .cm-master-class-label,
.cb-theme-light .cm-purchased-cost,
.cb-theme-light .character-builder-equipped-table td:first-child,
.cb-theme-light .cm-card-title,
.cb-theme-light .cb-equipped-item-name {
    color: #3b2618 !important;
}

.cb-theme-light .cm-card-desc,
.cb-theme-light .cm-card-req,
.cb-theme-light .cm-chain-preview,
.cb-theme-light .cm-chain-step,
.cb-theme-light .cm-chain-arrow,
.cb-theme-light .cb-upgrade-toggle,
.cb-theme-light .cm-lock-toggle {
    color: #80766e !important;
}

/* Warnings / Locked */

.cb-theme-light .character-builder-warning-box,
.cb-theme-light .cm-unlock-hint {
    background: #fff4f4 !important;
    border-color: #efc2c2 !important;
    color: #9b2727 !important;
}

.cb-theme-light .cm-card-locked {
    background: #f2f0ed !important;
    border-color: #d8d2ca !important;
    opacity: 0.72;
}

/* Tooltips */

.cb-theme-light .character-builder-tooltip,
.cb-theme-light .cm-tooltip {
    background: #ffffff !important;
    color: #2f2924 !important;
    border-color: #bfb6ad !important;
    box-shadow: 0 8px 24px rgba(60, 45, 32, 0.18) !important;
}

.cb-theme-light .cb-tooltip-title,
.cb-theme-light .cm-tooltip-title {
    color: #3b2618 !important;
    border-bottom-color: #d8d2ca !important;
}

.cb-theme-light .cb-tooltip-stats span,
.cb-theme-light .cm-tooltip-meta,
.cb-theme-light .cm-tooltip-req {
    color: #3b2618 !important;
}

/* Keep Positive/Negative Readable */

.cb-theme-light .cb-compare-positive,
.cb-theme-light .cm-req-owned,
.cb-theme-light .cm-chain-owned {
    color: #1b8f3a !important;
}

.cb-theme-light .cb-compare-negative,
.cb-theme-light .cm-req-missing,
.cb-theme-light .cm-tooltip-spell-remove {
    color: #d93030 !important;
}

.cb-theme-light .cm-tooltip-spell-add {
    color: #1f6fb2 !important;
}




/* Light Theme Disabled Into Locked Dark Theme */
/* Light Theme Disabled Into Locked Dark Theme */


/* Mobile */

@media screen and (max-width: 768px) {
    .character-builder-box {
        padding: 10px;
        overflow-x: hidden;
    }

    .character-builder-title-row {

        display: block;
        text-align: center;
    }

    #cb-theme-toggle {
        margin-top: 8px;
        width: 100%;
    }

    .character-builder-controls {
        display: flex;
        flex-direction: column;
        gap: 8px;
        align-items: stretch;
    }

    .character-builder-controls select,
    .character-builder-controls input,
    .character-builder-controls textarea,
    .character-builder-controls button {
        width: 100% !important;
        box-sizing: border-box;
    }

    .cb-builder-tabs {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .cb-tab-button {
        width: 100%;
    }

    .character-builder-equipment-layout {
        display: block !important;
    }

    .character-builder-equipped-summary {
        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 0 15px !important;
        box-sizing: border-box;
    }

    .character-builder-gear-column {
        width: 100%;
    }

    .character-builder-gear-grid {
        grid-template-columns: 1fr !important;
        gap: 10px;
    }

    .cb-picker-tools {
        flex-direction: column;
        align-items: stretch;
    }

    .cb-slot-filter,
    .cb-slot-sort {
        width: 100% !important;
    }

    .character-builder-stat-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }

    .cb-item-picker-list {
        max-height: 260px;
    }

    .character-builder-tooltip {
        max-width: 90vw;
        left: 5vw !important;
        right: 5vw;
        font-size: 12px;
    }
}


/* =========================================================
   Character Builder 
   ========================================================= */


/* =========================================================
Export Card Below
   ========================================================= */

.cb-export-card {
    width: 1200px;
    background: radial-gradient(circle at top, #111827 0%, #050505 60%);
    border: 3px solid #9b793d;
    border-radius: 20px;
    padding: 30px;
    color: #f4e6c8;
    font-family: Georgia, serif;
    box-sizing: border-box;
}

.cb-export-main-title {
    text-align: center;
    font-size: 60px;
    font-weight: bold;
    color: #d9a64d;
    letter-spacing: 2px;
    line-height: 1;
}

.cb-export-sub-title {
    text-align: center;
    font-size: 42px;
    color: #d9a64d;
    margin-top: 8px;
    margin-bottom: 14px;
}

.cb-export-build-name {
    text-align: center;
    font-size: 34px;
    margin-bottom: 24px;
    color: #f5f5f5;
}

.cb-export-top-info {
    display: flex;
    gap: 20px;
    margin-bottom: 22px;
}

.cb-export-info-box {
    flex: 1;
    border: 2px solid #7b5a28;
    border-radius: 12px;
    padding: 16px 20px;
    background: rgba(0,0,0,0.28);
    font-size: 24px;
}



.cb-export-main-grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 25px;
}

.cb-export-panel {
    border: 2px solid #7b5a28;
    border-radius: 16px;
    padding: 20px;
    background: rgba(0,0,0,0.28);
    box-sizing: border-box;
}

.cb-export-panel-title {
    font-size: 32px;
    color: #d9a64d;
    margin-bottom: 14px;
    font-weight: bold;
}

.cb-export-subsection-title {
    font-size: 22px;
    color: #d9a64d;
    margin-bottom: 8px;
    font-weight: bold;
}

.cb-export-divider {
    border-top: 1px solid rgba(155,121,61,0.65);
    margin: 14px 0;
}

.cb-export-stats-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px 32px;
    font-size: 23px;
}

#cb-export-vitals {
    grid-template-columns: 1fr;
}

#cb-export-items {
    font-size: 21px;
    line-height: 1.38;
}

.cb-export-bottom-row {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 20px;
    margin-top: 25px;
}

.cb-export-bottom-box {
    min-height: 230px;
}

.cb-export-url-box {
    font-size: 14px;
    line-height: 1.45;
    background: rgba(0,0,0,0.45);
    border: 1px solid #7b5a28;
    padding: 12px;
    border-radius: 10px;
    word-break: break-all;
    color: #f2f2f2;
}

.cb-export-qr-box {
    width: 190px;
    height: 190px;
    background: #fff;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

.cb-export-notes-box {
    font-size: 19px;
    line-height: 1.35;
    background: rgba(0,0,0,0.35);
    padding: 12px;
    border-radius: 10px;
    min-height: 135px;
    white-space: pre-wrap;
    color: #f2f2f2;
}

.cb-export-footer {
    text-align: center;
    font-size: 24px;
    color: #d9a64d;
    margin-top: 16px;
}

.cb-export-panel-title,
.cb-export-subsection-title {
    text-align: center;
}

.cb-export-sub-title::after,
.cb-export-panel-title::after {
    content: "";
    display: block;
    width: 85%;
    height: 1px;
    margin: 10px auto 0;
    background: linear-gradient(
        to right,
        transparent,
        #9b793d,
        #d9a64d,
        #9b793d,
        transparent
    );
}



.cb-rarity-common {
    color: #d7d7d7;
}

.cb-rarity-uncommon {
    color: #6fd96f;
}

.cb-rarity-rare {
    color: #63a9ff;
    text-shadow: 0 0 4px rgba(99,169,255,0.45);
}

.cb-rarity-ultra-rare {
    color: #d26bff;
    text-shadow:
        0 0 6px rgba(210,107,255,0.8),
        0 0 12px rgba(255,120,60,0.45);
}

.cb-rarity-relic {
    color: #d4af37;

    text-shadow:
        0 0 6px rgba(212,175,55,0.55),
        0 0 12px rgba(255,220,120,0.35);

    animation:
        cbRelicTextGlow 2.5s ease-in-out infinite;
}

@keyframes cbRelicTextGlow {
    0% {
        text-shadow:
            0 0 4px rgba(212,175,55,0.35),
            0 0 8px rgba(255,220,120,0.18);
    }

    50% {
        text-shadow:
            0 0 8px rgba(255,230,150,0.85),
            0 0 18px rgba(255,240,180,0.45);
    }

    100% {
        text-shadow:
            0 0 4px rgba(212,175,55,0.35),
            0 0 8px rgba(255,220,120,0.18);
    }
}

.cb-rarity-legendary {
    color: #b54848;
    text-shadow:
        0 0 5px rgba(181,72,72,0.55),
        0 0 12px rgba(120,20,20,0.35);

    animation: cbLegendaryTextPulse 2.4s ease-in-out infinite;
}

@keyframes cbLegendaryTextPulse {
    0% {
        text-shadow:
            0 0 4px rgba(181,72,72,0.35),
            0 0 8px rgba(120,20,20,0.18);
    }

    50% {
        text-shadow:
            0 0 8px rgba(220,90,90,0.85),
            0 0 18px rgba(160,30,30,0.45);
    }

    100% {
        text-shadow:
            0 0 4px rgba(181,72,72,0.35),
            0 0 8px rgba(120,20,20,0.18);
    }
}

.cb-rarity-relic {
    color: #d4af37;
    text-shadow:
        0 0 6px rgba(212,175,55,0.55),
        0 0 14px rgba(255,220,120,0.35);

    animation: cbRelicTextShimmer 2.6s ease-in-out infinite;
}

@keyframes cbRelicTextShimmer {
    0% {
        color: #d4af37;
        text-shadow:
            0 0 4px rgba(212,175,55,0.35),
            0 0 8px rgba(255,220,120,0.18);
    }

    50% {
        color: #ffe08a;
        text-shadow:
            0 0 9px rgba(255,230,150,0.9),
            0 0 20px rgba(255,240,180,0.5);
    }

    100% {
        color: #d4af37;
        text-shadow:
            0 0 4px rgba(212,175,55,0.35),
            0 0 8px rgba(255,220,120,0.18);
    }
}

.cb-tooltip-rarity-legendary {
    border: 1px solid #b54848;
    box-shadow:
        0 0 12px rgba(181,72,72,0.45),
        0 0 20px rgba(120,20,20,0.28);
}

/* =========================================================
Export Card ^^^^
========================================================= */
/* =========================================================
CM UI - Sandstorm Theme
========================================================= */

/* =========================================================
CM UI - Sandstorm Dark Theme
========================================================= */

/* =========================================================
   CM UI - Clean Sandstorm Theme
   ========================================================= */

 
 /* =========================================================
   CM UI - EQOA.live Inspired Theme
   ========================================================= */

.cm-calculator-box {
    --cm-bg: #080807;
    --cm-panel: #11100e;
    --cm-panel-2: #141210;
    --cm-panel-3: #1b1814;
    --cm-border: #3a3129;
    --cm-border-soft: rgba(240, 180, 0, 0.22);
    --cm-gold: #f0b400;
    --cm-gold-soft: #d4a137;
    --cm-gold-hover: #ffd45a;
    --cm-text: #e6e1d8;
    --cm-muted: #aaa197;
    --cm-danger: #ff9b8f;
    --cm-danger-bg: rgba(130, 38, 28, 0.22);
    --cm-good: #9eff9e;
    --cm-blue: #8fd9ff;

    background: var(--cm-bg);
    color: var(--cm-text);
    border: 1px solid var(--cm-border);
    border-radius: 4px;
    padding: 16px;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.45;
}

/* Titles */

.cm-calculator-box .character-builder-title {
    color: #ffffff;
    font-size: 26px;
    font-weight: 700;
    text-align: center;
    border-bottom: 1px solid var(--cm-border);
    padding-bottom: 8px;
    margin-bottom: 14px;
    text-shadow: 1px 1px 2px #000;
}

.cm-calculator-box .character-builder-section-title {
    color: var(--cm-gold);
    font-size: 17px;
    font-weight: 700;
    border-bottom: 1px solid var(--cm-border);
    padding-bottom: 5px;
}

/* Controls */

.cm-calculator-box .character-builder-controls,
.cm-search-tools,
.cm-purchased-panel,
.cm-master-class-panel,
.cm-unlocked-box {
    background: var(--cm-panel);
    border: 1px solid var(--cm-border);
    border-radius: 4px;
    padding: 10px;
}

.cm-calculator-box .character-builder-controls {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(155px, max-content));
    gap: 8px 12px;
    align-items: center;
    margin-bottom: 15px;
}

.cm-calculator-box label {
    color: var(--cm-gold);
    font-weight: 700;
}

.cm-calculator-box select,
.cm-calculator-box input,
.cm-search-input {
    background: var(--cm-bg);
    color: var(--cm-text);
    border: 1px solid var(--cm-border);
    border-radius: 3px;
    padding: 6px 8px;
}

.cm-calculator-box select:focus,
.cm-calculator-box input:focus,
.cm-search-input:focus {
    outline: none;
    border-color: var(--cm-gold);
    box-shadow: 0 0 0 2px rgba(240, 180, 0, 0.18);
}

/* Buttons */

.cm-tab-button,
.cm-view-button,
.cm-action-button,
.cm-reset-button,
.cm-clear-search-button,
.cm-mini-remove-button {
    background: var(--cm-panel-3);
    border: 1px solid var(--cm-border);
    border-radius: 3px;
    color: var(--cm-gold);
    cursor: pointer;
    padding: 7px 12px;
    font-weight: 700;
}

.cm-tab-button:hover,
.cm-view-button:hover,
.cm-action-button:hover,
.cm-reset-button:hover,
.cm-clear-search-button:hover,
.cm-mini-remove-button:hover {
    background: var(--cm-panel-2);
    color: var(--cm-gold-hover);
    border-color: var(--cm-gold-soft);
}

.cm-tab-active,
.cm-view-active {
    background: var(--cm-gold);
    color: #080807;
    border-color: var(--cm-gold);
}

/* Tables */

.cm-calculator-box .character-builder-stat-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--cm-panel);
    border: 1px solid var(--cm-border);
}

.cm-calculator-box .character-builder-stat-table th {
    background: var(--cm-panel-3);
    color: var(--cm-gold);
    border: 1px solid var(--cm-border);
    padding: 8px;
}

.cm-calculator-box .character-builder-stat-table td {
    background: var(--cm-panel-2);
    color: var(--cm-text);
    border: 1px solid var(--cm-border);
    text-align: center;
    padding: 8px;
    font-weight: 700;
}

/* Layout */

.cm-tabs,
.cm-view-toggle,
.cm-build-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;

    margin: 10px 0;
}

.cm-main-layout {
    display: grid;
    grid-template-columns: minmax(220px, 280px) 1fr;
    gap: 14px;
    align-items: start;
}

/* Remove parent box around mastery cards */

#cm-mastery-panel,
#cm-mastery-panel.character-builder-warning-box {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Search */

.cm-search-row {
    display: flex;
    gap: 8px;
}

.cm-search-input {
    flex: 1;
    min-width: 220px;
}

.cm-search-input::placeholder {
    color: var(--cm-muted);
}

.cm-lock-toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    color: var(--cm-muted);
    font-weight: 700;
}

.cm-lock-toggle input {
    accent-color: var(--cm-gold);
}

/* Panels */

.cm-panel-title {
    color: var(--cm-gold);
    font-weight: 700;
    margin-bottom: 8px;
    border-bottom: 1px solid var(--cm-border);
    padding-bottom: 5px;
}

.cm-master-class-panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.cm-master-class-label {
    color: var(--cm-gold);
    font-weight: 700;
}

#cm-unlocked-summary {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
}

.cm-unlocked-grid {
    display: grid;
    gap: 10px;
}

.cm-unlocked-grid-three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* Purchased */

.cm-purchased-group-title {
    color: var(--cm-gold);
    font-size: 13px;
    font-weight: 700;
    margin: 8px 0 4px;
}

.cm-purchased-item {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    background: var(--cm-bg);
    border: 1px solid var(--cm-border);
    border-radius: 3px;
    padding: 5px 7px;
    margin-bottom: 5px;
    cursor: pointer;
}

.cm-purchased-item:hover {
    background: var(--cm-panel-3);
    border-color: var(--cm-gold-soft);
}

.cm-purchased-cost {
    color: var(--cm-gold-hover);
    font-weight: 700;
}

/* Cards */

.cm-card {
    position: relative;
    background: var(--cm-panel);
    border: 1px solid var(--cm-border);
    border-left: 3px solid var(--cm-gold);
    border-radius: 4px;
    padding: 10px;
    margin-bottom: 9px;
    color: var(--cm-text);
    transition: background 0.12s ease, border-color 0.12s ease;
}

.cm-card:hover {
    background: var(--cm-panel-2);
    border-color: var(--cm-gold-soft);
}

.cm-purchasable-card {
    cursor: pointer;
}

.cm-card-locked {
    opacity: 0.68;
    background: #0b0a09;
    border-color: rgba(180, 80, 60, 0.35);
    cursor: not-allowed;
}

.cm-card-locked:hover {
    background: #0b0a09;
    border-color: rgba(180, 80, 60, 0.35);
}

.cm-card-title {
    color: var(--cm-gold-hover);
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 5px;
}

.cm-card-locked .cm-card-title {
    color: var(--cm-muted);
}

.cm-card-desc {
    color: var(--cm-muted);
    margin: 6px 0;
}

.cm-card-meta,
.cm-card-req,
.cm-chain-preview,
.cm-unlock-hint {
    font-size: 12px;
    line-height: 1.45;
    margin-top: 5px;
}

.cm-card-meta {
    color: var(--cm-gold);
    font-weight: 700;
}

.cm-card-req,
.cm-chain-preview {
    color: var(--cm-muted);
}

.cm-unlock-hint {
    background: var(--cm-danger-bg);
    border: 1px solid rgba(220, 90, 70, 0.35);
    border-radius: 3px;
    color: #ffb0a0;
    padding: 6px 8px;
}

/* Tags */

.cm-card-type-tag {
    display: inline-block;
    background: #080807;
    border: 1px solid var(--cm-border);
    border-radius: 3px;
    color: var(--cm-gold);
    font-size: 11px;
    font-weight: 700;
    padding: 2px 7px;
    text-transform: uppercase;
}

.cm-type-general {
    border-left-color: var(--cm-gold);
}

.cm-type-racial {
    border-left-color: #7ccf7a;
}

.cm-type-archetype {
    border-left-color: #7ab7ff;
}

.cm-type-class {
    border-left-color: #ff9d66;
}

.cm-type-master {
    border-left-color: #d9a3ff;
}

.cm-type-general .cm-card-type-tag {
    color: var(--cm-gold);
}

.cm-type-racial .cm-card-type-tag {
    color: #7ccf7a;
}

.cm-type-archetype .cm-card-type-tag {
    color: #7ab7ff;
}

.cm-type-class .cm-card-type-tag {
    color: #ff9d66;
}

.cm-type-master .cm-card-type-tag {
    color: #d9a3ff;
}

/* Compact View */

.cm-card-compact {
    padding: 8px 10px;
}

.cm-card-compact-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.cm-card-compact .cm-card-meta {
    margin-top: 0;
    white-space: nowrap;
}

/* Requirements */

.cm-stat-min-req {
    color: #ffcf7a;
    font-weight: 700;
}

.cm-req-owned,
.cm-chain-owned {
    color: var(--cm-good);
}

.cm-req-missing {
    color: var(--cm-danger);
}

.cm-chain-current {
    color: var(--cm-gold-hover);
    font-weight: 700;
}

.cm-chain-step,
.cm-chain-arrow {
    color: var(--cm-muted);
}

/* Tooltip */

.cm-tooltip {
    position: fixed;
    z-index: 999999;
    width: 340px;
    pointer-events: none;
    background: #080807;
    border: 1px solid var(--cm-gold-soft);
    border-radius: 4px;
    color: var(--cm-text);
    padding: 10px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.65);
}

.cm-tooltip-title {
    color: var(--cm-gold-hover);
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 5px;
}

.cm-tooltip-desc {
    color: var(--cm-muted);
    margin-bottom: 6px;
}

.cm-tooltip-meta,
.cm-tooltip-req {
    color: var(--cm-gold);
    font-size: 12px;
    margin-top: 5px;
}

.cm-tooltip-stat {
    color: #b8f2b0;
    font-size: 12px;
}

.cm-tooltip-spell-add {
    color: var(--cm-blue);
    font-size: 12px;
}

.cm-tooltip-spell-remove {
    color: var(--cm-danger);
    font-size: 12px;
}

/* Responsive */

@media (max-width: 1000px) {
    .cm-unlocked-grid-three {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 800px) {
    .cm-main-layout {
        grid-template-columns: 1fr;
    }

    .cm-search-row {
        flex-direction: column;
    }

    .cm-card-compact-row {
        display: block;
    }

    .cm-card-compact .cm-card-meta {
        margin-top: 5px;
        white-space: normal;
    }
}

@media (max-width: 760px) {
    .cm-calculator-box {
        padding: 12px;
    }

    .cm-calculator-box .character-builder-controls {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .cm-calculator-box select,
    .cm-calculator-box input,
    .cm-reset-button {
        width: 100% !important;
        box-sizing: border-box;
    }

    .cm-tabs,
    .cm-view-toggle {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .cm-tab-button,
    .cm-view-button {
        width: 100%;
        text-align: center;
    }

    .cm-build-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
}



/* =========================================================
CM UI ^^^^
========================================================= */
/* =========================================================
   Whole Wiki Theme Toggle
   Locked Dark: EQOA.live Inspired
   Locked White: Sandstorm Control Panel
   ========================================================= */

:root,
.eqoa-theme-dark {
    --wiki-bg: #080808;
    --wiki-panel: #151515;
    --wiki-panel-2: #1d1d1d;
    --wiki-border: #343434;
    --wiki-border-soft: #252525;
    --wiki-text: #eeeeee;
    --wiki-muted: #b8b8b8;
    --wiki-heading: #ffffff;
    --wiki-link: #e0b85f;
    --wiki-link-hover: #ffd982;
    --wiki-button-bg: #202020;
    --wiki-button-text: #f2f2f2;
}

.eqoa-theme-light {
    --wiki-bg: #f6f4f1;
    --wiki-panel: #ffffff;
    --wiki-panel-2: #fbfaf8;
    --wiki-border: #d8d1c7;
    --wiki-border-soft: #e6e0d8;
    --wiki-text: #2b211b;
    --wiki-muted: #665a50;
    --wiki-heading: #1f1712;
    --wiki-link: #5a3928;
    --wiki-link-hover: #8a5538;
    --wiki-button-bg: #3b2a20;
    --wiki-button-text: #ffffff;
}

/* Whole wiki surface */
html,
body,
#globalWrapper,
#column-content,
#content,
#bodyContent,
#mw-content-text,
.mw-body,
.mw-parser-output {
    background: var(--wiki-bg) !important;
    color: var(--wiki-text) !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6,
.firstHeading {
    color: var(--wiki-heading) !important;
    text-shadow: none !important;
}

/* Links */
a,
.mw-body a,
.portlet a,
.wikitable a,
.mw-parser-output a {
    color: var(--wiki-link) !important;
    font-weight: 700;
    text-decoration: none;
}

a:hover,
.mw-body a:hover,
.portlet a:hover,
.wikitable a:hover,
.mw-parser-output a:hover {
    color: var(--wiki-link-hover) !important;
    text-decoration: underline;
}

/* Tables and common boxes */
.wikitable,
.toc,
.catlinks,
.thumbinner,
.quest-template,
.npc-template {
    background: var(--wiki-panel) !important;
    border-color: var(--wiki-border) !important;
    color: var(--wiki-text) !important;
}

.wikitable th {
    background: var(--wiki-panel-2) !important;
    color: var(--wiki-heading) !important;
    border-color: var(--wiki-border) !important;
}

.wikitable td {
    border-color: var(--wiki-border-soft) !important;
}

/* Inputs */
input,
select,
textarea {
    background: var(--wiki-panel) !important;
    border: 1px solid var(--wiki-border) !important;
    color: var(--wiki-text) !important;
}

/* Theme icon button */
.eqoa-theme-toggle {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 99999;
    width: 34px;
    height: 34px;
    background: var(--wiki-button-bg);
    border: 1px solid var(--wiki-border);
    border-radius: 6px;
    color: var(--wiki-button-text);
    cursor: pointer;
    font-family: Arial, sans-serif;
    font-size: 22px;
    line-height: 1;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);
}

.eqoa-theme-toggle:hover {
    background: #6b4b38;
    color: #ffffff;
}

/* Builder + CM theme inheritance */
.eqoa-theme-light .character-builder-box,
.eqoa-theme-light .cm-calculator-box {
    color-scheme: light;
}

.eqoa-theme-dark .character-builder-box,
.eqoa-theme-dark .cm-calculator-box {
    color-scheme: dark;
}

/* White theme: Monobook skin */
html.eqoa-theme-light body,
html.eqoa-theme-light #globalWrapper,
html.eqoa-theme-light #column-content,
html.eqoa-theme-light #column-one,
html.eqoa-theme-light #content,
html.eqoa-theme-light #bodyContent,
html.eqoa-theme-light #mw-content-text,
html.eqoa-theme-light .mw-body,
html.eqoa-theme-light .mw-parser-output,
html.eqoa-theme-light #p-personal,
html.eqoa-theme-light #p-cactions,
html.eqoa-theme-light #p-cactions ul,
html.eqoa-theme-light #p-personal ul {
    background: #f6f4f1 !important;
    background-color: #f6f4f1 !important;
    background-image: none !important;
    color: #2b211b !important;
}

/* White theme: sidebar */
html.eqoa-theme-light .portlet,
html.eqoa-theme-light .generated-sidebar,
html.eqoa-theme-light #p-search,
html.eqoa-theme-light #p-tb,
html.eqoa-theme-light #p-navigation,
html.eqoa-theme-light #p-logo {
    background: #f6f4f1 !important;
    border-color: #d8d1c7 !important;
    color: #2b211b !important;
}

html.eqoa-theme-light .portlet h3,
html.eqoa-theme-light .generated-sidebar h3,
html.eqoa-theme-light #p-search h3,
html.eqoa-theme-light #p-tb h3 {
    background: #ece8e1 !important;
    border: 1px solid #d8d1c7 !important;
    color: #4a3427 !important;
}

html.eqoa-theme-light .portlet .pBody,
html.eqoa-theme-light .generated-sidebar .pBody,
html.eqoa-theme-light #p-search .pBody,
html.eqoa-theme-light #p-tb .pBody {
    background: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
}

/* White theme: search */
html.eqoa-theme-light #searchInput,
html.eqoa-theme-light #p-search input#searchInput,
html.eqoa-theme-light #p-search input[name="search"] {
    background: #fbfaf8 !important;
    background-color: #fbfaf8 !important;
    background-image: none !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
    box-shadow: none !important;
}

html.eqoa-theme-light #searchInput:focus {
    background: #ffffff !important;
    border-color: #8a5538 !important;
}

html.eqoa-theme-light #searchGoButton,
html.eqoa-theme-light #mw-searchButton,
html.eqoa-theme-light input[type="submit"],
html.eqoa-theme-light input[type="button"] {
    background: #3b2a20 !important;
    border: 1px solid #4a3427 !important;
    color: #ffffff !important;
}

/* White theme: top tabs */
html.eqoa-theme-light #p-cactions li,
html.eqoa-theme-light #p-personal li {
    background: #f6f4f1 !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light #p-cactions li a,
html.eqoa-theme-light #p-personal li a {
    background: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
}

html.eqoa-theme-light #p-cactions li.selected a {
    background: #ece8e1 !important;
    color: #1f1712 !important;
}

/* White theme: hard-coded main page panels */
html.eqoa-theme-light body .mw-parser-output > div,
html.eqoa-theme-light body .mw-parser-output > div > div,
html.eqoa-theme-light body .mw-parser-output > div > div > div,
html.eqoa-theme-light body .mw-parser-output table,
html.eqoa-theme-light body .mw-parser-output tr,
html.eqoa-theme-light body .mw-parser-output td,
html.eqoa-theme-light body .mw-parser-output th,
html.eqoa-theme-light body .mw-parser-output [style*="background"],
html.eqoa-theme-light body .mw-parser-output [style*="background-color"],
html.eqoa-theme-light body .mw-parser-output [style*="#0"],
html.eqoa-theme-light body .mw-parser-output [style*="#1"],
html.eqoa-theme-light body .mw-parser-output [style*="#2"],
html.eqoa-theme-light body .mw-parser-output [style*="black"],
html.eqoa-theme-light body .mw-parser-output [style*="brown"] {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

/* White theme: text inside panels */
html.eqoa-theme-light body .mw-parser-output h1,
html.eqoa-theme-light body .mw-parser-output h2,
html.eqoa-theme-light body .mw-parser-output h3,
html.eqoa-theme-light body .mw-parser-output h4,
html.eqoa-theme-light body .mw-parser-output b,
html.eqoa-theme-light body .mw-parser-output strong,
html.eqoa-theme-light body .mw-parser-output span,
html.eqoa-theme-light body .mw-parser-output p,
html.eqoa-theme-light body .mw-parser-output small,
html.eqoa-theme-light body .mw-parser-output li {
    color: #2b211b !important;
}

html.eqoa-theme-light body .mw-parser-output a {
    color: #5a3928 !important;
}

html.eqoa-theme-light body .mw-parser-output a:hover {
    color: #8a5538 !important;
}

html.eqoa-theme-light body .mw-parser-output hr {
    border-color: #d8d1c7 !important;
    background: #d8d1c7 !important;
    color: #d8d1c7 !important;
}

html.eqoa-theme-light .character-builder-box,
html.eqoa-theme-light .cm-calculator-box {
    background: #f6f4f1 !important;
    color: #2b211b !important;
}

html.eqoa-theme-dark .character-builder-box,
html.eqoa-theme-dark .cm-calculator-box {
    background: #080808 !important;
    color: #eeeeee !important;
}

/* =========================================================
   Whole Wiki Theme Toggle
   Locked Dark: EQOA.live Inspired
   Locked White: Sandstorm Control Panel
   ========================================================= */



.eqoa-itembox {
    background: rgba(15,15,18,0.82);
    border: 2px solid rgba(210,210,210,0.55);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18);
    padding: 18px 24px;
    margin: 12px 0;
    color: #f2f2f2;
    font-family: monospace;
    font-size: 28px;
    line-height: 1.18;
    max-width: 620px;
    text-shadow: 2px 2px 0 #000;
}

.eqoa-itembox-name {
    font-size: 31px;
    color: #fff;
    margin-bottom: 14px;
}

.eqoa-itembox-line {
    margin: 0;
    line-height: 1.05;
}

.eqoa-itembox-flags {
    margin-top: 8px;
    margin-bottom: 12px;
    color: #fff;
}

.eqoa-itembox-stats {
    margin-top: 6px;
}


.eqoa-itembox-desc {
    margin-top: 14px;
    font-size: 22px;
    color: #d6d6d6;
}

.eqoa-itembox-stats div {
    margin: 0;
    padding: 0;
    line-height: 1.05;
}

.eqoa-itembox {
    background: rgba(15,15,18,0.92);
    border: 2px solid rgba(210,210,210,0.55);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18);
    padding: 18px 24px;
    margin: 12px 0;
    color: #f2f2f2;
    font-family: monospace;
    font-size: 28px;
    line-height: 1;
    max-width: 620px;
    text-shadow: 2px 2px 0 #000;
}

.eqoa-itembox-name {
    font-size: 31px;
    color: #fff;
    margin-bottom: 14px;
}

.eqoa-itembox-line {
    margin: 0;
    padding: 0;
    line-height: 1;
}

.eqoa-itembox-flags {
    margin-top: 6px;
    margin-bottom: 6px;
    color: #fff;
    line-height: 1;
}

.eqoa-itembox-stats {
    margin-top: 4px;
    line-height: 1;
}

.eqoa-itembox-stats div {
    margin: 0;
    padding: 0;
    line-height: 1;
}

.eqoa-itembox-desc {
    margin-top: 10px;
    font-size: 22px;
    color: #d6d6d6;
}






/* =========================================================
   Item Page
   ========================================================= */




.eqoa-item-page {
    max-width: 1100px;
    margin: 20px auto;
    color: #e6e0d0;
    font-family: Arial, sans-serif;
}

.eqoa-item-left {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.eqoa-section {
    background: rgba(10,10,12,0.92);
    border: 1px solid #7b5a28;
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.06),
        0 0 12px rgba(0,0,0,0.45);
}

.eqoa-section-title {
    padding: 10px 14px;
    font-size: 24px;
    color: #e0b35a;
    border-bottom: 1px solid rgba(224,179,90,0.35);
    background: rgba(255,180,60,0.04);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.eqoa-section-content {
    padding: 14px;
    font-size: 18px;
    line-height: 1.45;
    color: #d8d2c2;
}

.eqoa-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.eqoa-section a {
    color: #6eb7ff;
    text-decoration: none;
}

.eqoa-section a:hover {
    color: #9fd0ff;
    text-shadow: 0 0 6px rgba(120,180,255,0.35);
}

.eqoa-itembox {
    background: rgba(5,5,8,0.96);
    border: 2px solid rgba(220,220,220,0.5);
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.08),
        0 0 20px rgba(0,0,0,0.5);

    padding: 20px 26px;
    color: #f2f2f2;
    font-family: monospace;

    font-size: 28px;
    line-height: 1;
    text-shadow: 2px 2px 0 #000;
}

.eqoa-itembox-name {
    font-size: 34px;
    margin-bottom: 16px;
    color: #fff;
}

.eqoa-itembox-line {
    line-height: 1.05;
}

.eqoa-itembox-flags {
    margin-top: 8px;
    margin-bottom: 8px;
    line-height: 1.05;
}

.eqoa-itembox-stats div {
    line-height: 1.05;
}

.eqoa-itembox-desc {
    margin-top: 12px;
    font-size: 22px;
    color: #d2d2d2;
}

@media (max-width: 900px) {
    .eqoa-grid-2 {
        grid-template-columns: 1fr;
    }

    .eqoa-itembox {
        font-size: 22px;
    }

    .eqoa-section-title {
        font-size: 20px;
    }

    .eqoa-section-content {
        font-size: 16px;
    }
}


.eqoa-itembox {
    margin-left: auto;
    margin-right: auto;
}

/* =========================================================
   ITEM PAGE ΓÇö LIGHT THEME FIX
   ========================================================= */

html.eqoa-theme-light .eqoa-item-page {
    color: #2b211b !important;
}

/* ItemBox light mode */
html.eqoa-theme-light .eqoa-itembox {
    background: #ffffff !important;
    color: #2b211b !important;
    border: 2px solid #d8d1c7 !important;
    box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.04),
        0 4px 14px rgba(60,45,32,0.10) !important;

    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
    font-smooth: always;
}

html.eqoa-theme-light .eqoa-itembox-name,
html.eqoa-theme-light .eqoa-itembox-line,
html.eqoa-theme-light .eqoa-itembox-flags,
html.eqoa-theme-light .eqoa-itembox-stats,
html.eqoa-theme-light .eqoa-itembox-stats div {
    color: #2b211b !important;
    text-shadow: none !important;
    background: transparent !important;
}

html.eqoa-theme-light .eqoa-itembox-desc {
    color: #665a50 !important;
    text-shadow: none !important;
}

/* ItemPage boxes: Dropped By, Zone, Related Quests, etc */
html.eqoa-theme-light .eqoa-section {
    background: #ffffff !important;
    color: #2b211b !important;
    border: 1px solid #d8d1c7 !important;
    box-shadow: 0 4px 14px rgba(60,45,32,0.08) !important;
}

html.eqoa-theme-light .eqoa-section-title {
    background: #ece8e1 !important;
    color: #3b2618 !important;
    border-bottom: 1px solid #d8d1c7 !important;
    text-shadow: none !important;
}

html.eqoa-theme-light .eqoa-section-content {
    background: #ffffff !important;
    color: #2b211b !important;
    text-shadow: none !important;
}

html.eqoa-theme-light .eqoa-section-content *,
html.eqoa-theme-light .eqoa-section * {
    text-shadow: none !important;
}

html.eqoa-theme-light .eqoa-section a {
    color: #5a3928 !important;
}

html.eqoa-theme-light .eqoa-section a:hover {
    color: #8a5538 !important;
}
/* =========================================================
   Item Page
   ========================================================= */
/* =========================================================
   ZONE TEMPLATES ΓÇö LIGHT THEME FIX
   ========================================================= */

html.eqoa-theme-light .zone-left,
html.eqoa-theme-light .zone-right,
html.eqoa-theme-light .zones-box,
html.eqoa-theme-light .zones-content,
html.eqoa-theme-light .zone-details-box,
html.eqoa-theme-light .zone-details-content {
    background: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light .zones-header,
html.eqoa-theme-light .zone-details-header {
    background: #ece8e1 !important;
    color: #3b2618 !important;
    border-bottom: 1px solid #d8d1c7 !important;
    text-shadow: none !important;
}

html.eqoa-theme-light .zone-details-row {
    background: #ffffff !important;
    color: #2b211b !important;
    border-bottom: 1px solid #e6e0d8 !important;
}

html.eqoa-theme-light .zone-details-label {
    color: #3b2618 !important;
}

html.eqoa-theme-light .zone-details-text {
    color: #2b211b !important;
}

/* Zone info table */
html.eqoa-theme-light table.info-table,
html.eqoa-theme-light table.info-table tr,
html.eqoa-theme-light table.info-table td {
    background: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light table.info-table tr td:first-child {
    background: #ece8e1 !important;
    color: #3b2618 !important;
    font-weight: bold !important;
}

/* Zone data tables: quests, NPCs, rares, regular monsters, items */
html.eqoa-theme-light .zone-data-table,
html.eqoa-theme-light .zone-data-table tr,
html.eqoa-theme-light .zone-data-table td,
html.eqoa-theme-light .zone-data-table th {
    background: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light .zone-data-table th,
html.eqoa-theme-light .zone-data-table tr:first-child th {
    background: #ece8e1 !important;
    color: #3b2618 !important;
    border-bottom: 1px solid #d8d1c7 !important;
}

html.eqoa-theme-light .zone-data-table tr:nth-child(even) td {
    background: #fbfaf8 !important;
}

html.eqoa-theme-light .zone-data-table tr:nth-child(odd) td {
    background: #ffffff !important;
}

html.eqoa-theme-light .zone-data-table a,
html.eqoa-theme-light .zones-content a,
html.eqoa-theme-light .zone-details-content a {
    color: #5a3928 !important;
}

html.eqoa-theme-light .zone-data-table a:hover,
html.eqoa-theme-light .zones-content a:hover,
html.eqoa-theme-light .zone-details-content a:hover {
    color: #8a5538 !important;
}

/* Fix Zone Information right-side table dark cells in light mode */
html.eqoa-theme-light .zone-right.zones-box table.info-table,
html.eqoa-theme-light .zone-right.zones-box table.info-table tbody,
html.eqoa-theme-light .zone-right.zones-box table.info-table tr,
html.eqoa-theme-light .zone-right.zones-box table.info-table td,
html.eqoa-theme-light .zone-right.zones-box table.info-table td:last-child {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light .zone-right.zones-box table.info-table td:first-child {
    background: #ece8e1 !important;
    background-color: #ece8e1 !important;
    color: #2b211b !important;
    font-weight: bold !important;
}

html.eqoa-theme-light .zone-right.zones-box table.info-table img {
    background: transparent !important;
}

.eqoa-related-item-tooltip {
    position: absolute;
    z-index: 999999;
    width: 330px;
    background: rgba(5,5,8,0.96);
    color: #f2f2f2;
    border: 2px solid rgba(220,220,220,0.55);
    box-shadow: 0 0 20px rgba(0,0,0,0.65);
    padding: 12px 14px;
    font-family: monospace;
    font-size: 16px;
    line-height: 1.15;
    text-shadow: 1px 1px 0 #000;
    pointer-events: none;
}

.eqoa-related-tooltip-title {
    font-size: 20px;
    color: #ffffff;
    margin-bottom: 8px;
}

.eqoa-related-tooltip-stats {
    margin-top: 8px;
}

.eqoa-related-tooltip-stats div {
    line-height: 1.15;
}

.eqoa-related-tooltip-stats span {
    color: #ffffff;
}

html.eqoa-theme-light .eqoa-related-item-tooltip {
    background: #ffffff;
    color: #2b211b;
    border-color: #d8d1c7;
    text-shadow: none;
    box-shadow: 0 8px 24px rgba(60,45,32,0.18);
}

html.eqoa-theme-light .eqoa-related-tooltip-title,
html.eqoa-theme-light .eqoa-related-tooltip-stats span {
    color: #2b211b;
    text-shadow: none;
}

/* =========================================================
   ITEM PAGE RELATED TOOLTIP ΓÇö RARITY GLOW
   ========================================================= */

.eqoa-related-item-tooltip .cb-rarity-common {
    color: #d7d7d7 !important;
}

.eqoa-related-item-tooltip .cb-rarity-uncommon {
    color: #6fd96f !important;
}

.eqoa-related-item-tooltip .cb-rarity-rare {
    color: #63a9ff !important;
    text-shadow: 0 0 4px rgba(99,169,255,0.45) !important;
}

.eqoa-related-item-tooltip .cb-rarity-ultra-rare {
    color: #d26bff !important;
    text-shadow:
        0 0 6px rgba(210,107,255,0.8),
        0 0 12px rgba(255,120,60,0.45) !important;
}

.eqoa-related-item-tooltip .cb-rarity-legendary {
    color: #b54848 !important;
    text-shadow:
        0 0 5px rgba(181,72,72,0.55),
        0 0 12px rgba(120,20,20,0.35) !important;
    animation: cbLegendaryTextPulse 2.4s ease-in-out infinite;
}

.eqoa-related-item-tooltip .cb-rarity-relic {
    color: #d4af37 !important;
    text-shadow:
        0 0 6px rgba(212,175,55,0.55),
        0 0 14px rgba(255,220,120,0.35) !important;
    animation: cbRelicTextShimmer 2.6s ease-in-out infinite;
}

/* Tooltip border glow by rarity */
.eqoa-related-item-tooltip.tooltip-rarity-common {
    border-color: #666 !important;
}

.eqoa-related-item-tooltip.tooltip-rarity-uncommon {
    border-color: #5fd35f !important;
}

.eqoa-related-item-tooltip.tooltip-rarity-rare {
    border-color: #63a9ff !important;
    box-shadow:
        0 0 12px rgba(99,169,255,0.35),
        0 0 20px rgba(0,0,0,0.65) !important;
}

.eqoa-related-item-tooltip.tooltip-rarity-ultra-rare {
    border-color: #b46cff !important;
    box-shadow:
        0 0 12px rgba(180,108,255,0.45),
        0 0 20px rgba(210,107,255,0.25),
        0 0 24px rgba(0,0,0,0.65) !important;
}

.eqoa-related-item-tooltip.tooltip-rarity-legendary {
    border-color: #b54848 !important;
    box-shadow:
        0 0 12px rgba(181,72,72,0.45),
        0 0 20px rgba(120,20,20,0.28),
        0 0 24px rgba(0,0,0,0.65) !important;
}

.eqoa-related-item-tooltip.tooltip-rarity-relic {
    border-color: #d4af37 !important;
    box-shadow:
        0 0 12px rgba(212,175,55,0.55),
        0 0 24px rgba(255,215,100,0.28),
        0 0 24px rgba(0,0,0,0.65) !important;
}

/* Keep rarity glow even in light theme */
html.eqoa-theme-light .eqoa-related-item-tooltip .cb-rarity-rare,
html.eqoa-theme-light .eqoa-related-item-tooltip .cb-rarity-ultra-rare,
html.eqoa-theme-light .eqoa-related-item-tooltip .cb-rarity-legendary,
html.eqoa-theme-light .eqoa-related-item-tooltip .cb-rarity-relic {
    text-shadow: inherit !important;
}


/* =========================================================
   NPC PAGE ΓÇö DARK / LIGHT THEME SAFE
   ========================================================= */

.eqoa-npc-page {
    background: var(--wiki-bg) !important;
    color: var(--wiki-text) !important;
    padding: 0;
    margin: 0;
}

.eqoa-npc-top-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-start;
}

.eqoa-npc-info-box,
.eqoa-npc-zones-box,
.eqoa-section-box {
    background: var(--wiki-panel) !important;
    color: var(--wiki-text) !important;
    border: 2px solid var(--wiki-border) !important;
    margin: 0 0 12px 0;
}

.eqoa-npc-info-box {
    flex: 1;
    min-width: 340px;
}

.eqoa-npc-image-box {
    flex: 1;
    min-width: 260px;
    background: var(--wiki-panel) !important;
    border: 1px solid var(--wiki-border) !important;
    padding: 6px;
    text-align: center;
}

.eqoa-npc-caption {
    font-size: smaller;
    color: var(--wiki-muted) !important;
    margin-top: 4px;
}

.eqoa-npc-zones-box {
    margin-top: 10px;
}

/* Info table */
.eqoa-npc-info-table,
.eqoa-npc-info-table tr,
.eqoa-npc-info-table td {
    width: 100%;
    border-collapse: collapse;
    background: var(--wiki-panel) !important;
    color: var(--wiki-text) !important;
    border-color: var(--wiki-border-soft) !important;
}

.eqoa-npc-info-table td {
    padding: 6px 8px !important;
}

.eqoa-npc-info-table td:first-child {
    width: 28%;
    background: var(--wiki-panel-2) !important;
    color: var(--wiki-link) !important;
    font-weight: bold !important;
}

.eqoa-npc-info-table td:last-child {
    background: var(--wiki-panel) !important;
    color: var(--wiki-text) !important;
}

/* Zone table */
.eqoa-npc-zone-table {
    width: 100%;
    border-collapse: collapse;
    text-align: center;
    margin: 0;
    border: 1px solid var(--wiki-border) !important;
    background: var(--wiki-panel) !important;
    color: var(--wiki-text) !important;
}

.eqoa-npc-zone-table th {
    background: var(--wiki-panel-2) !important;
    color: var(--wiki-link) !important;
    border: 1px solid var(--wiki-border) !important;
    padding: 8px !important;
}

.eqoa-npc-zone-table td {
    background: var(--wiki-panel) !important;
    color: var(--wiki-text) !important;
    border: 1px solid var(--wiki-border-soft) !important;
    padding: 7px !important;
}

.eqoa-npc-zone-table tr:nth-child(even) td {
    background: var(--wiki-panel-2) !important;
}

/* Legend */
.eqoa-npc-legend {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    background: var(--wiki-panel-2) !important;
    color: var(--wiki-text) !important;
}

.eqoa-npc-legend td {
    padding: 6px 8px !important;
    background: var(--wiki-panel-2) !important;
    color: var(--wiki-text) !important;
    border-top: 1px solid var(--wiki-border) !important;
}

/* Bottom section boxes */
.eqoa-section-box {
    background: var(--wiki-panel) !important;
    border-color: var(--wiki-border) !important;
    color: var(--wiki-text) !important;
    margin-top: 12px;
}

.eqoa-section-box .right-header {
    background: var(--wiki-panel-2) !important;
    color: var(--wiki-link) !important;
    border-bottom: 1px solid var(--wiki-border) !important;
    padding: 8px 10px !important;
    margin: 0 !important;
    text-shadow: none !important;
}

.eqoa-detail-table,
.eqoa-detail-table tr,
.eqoa-detail-table td {
    width: 100%;
    background: var(--wiki-panel) !important;
    color: var(--wiki-text) !important;
    border: none !important;
    padding: 8px !important;
}

/* Light theme final overrides */
html.eqoa-theme-light .eqoa-npc-page,
html.eqoa-theme-light .eqoa-npc-info-box,
html.eqoa-theme-light .eqoa-npc-zones-box,
html.eqoa-theme-light .eqoa-section-box,
html.eqoa-theme-light .eqoa-npc-image-box {
    background: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light .npcname-header,
html.eqoa-theme-light .zones-header,
html.eqoa-theme-light .right-header {
    background: #ece8e1 !important;
    color: #3b2618 !important;
    border-color: #d8d1c7 !important;
    text-shadow: none !important;
}

html.eqoa-theme-light .eqoa-npc-info-table,
html.eqoa-theme-light .eqoa-npc-info-table tr,
html.eqoa-theme-light .eqoa-npc-info-table td,
html.eqoa-theme-light .eqoa-npc-zone-table,
html.eqoa-theme-light .eqoa-npc-zone-table tr,
html.eqoa-theme-light .eqoa-npc-zone-table td,
html.eqoa-theme-light .eqoa-npc-legend,
html.eqoa-theme-light .eqoa-npc-legend td,
html.eqoa-theme-light .eqoa-detail-table,
html.eqoa-theme-light .eqoa-detail-table td {
    background: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light .eqoa-npc-info-table td:first-child,
html.eqoa-theme-light .eqoa-npc-zone-table th {
    background: #ece8e1 !important;
    color: #3b2618 !important;
}

html.eqoa-theme-light .eqoa-npc-zone-table tr:nth-child(even) td,
html.eqoa-theme-light .eqoa-npc-legend td {
    background: #fbfaf8 !important;
}

html.eqoa-theme-light .eqoa-npc-caption {
    color: #665a50 !important;
}

/* NPC info-table hard override for light theme */
html.eqoa-theme-light .eqoa-npc-page table.info-table,
html.eqoa-theme-light .eqoa-npc-page table.info-table tbody,
html.eqoa-theme-light .eqoa-npc-page table.info-table tr,
html.eqoa-theme-light .eqoa-npc-page table.info-table td,
html.eqoa-theme-light .eqoa-npc-page table.info-table tr:nth-child(odd) td:last-child,
html.eqoa-theme-light .eqoa-npc-page table.info-table tr:nth-child(even) td:last-child {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light .eqoa-npc-page table.info-table td:first-child,
html.eqoa-theme-light .eqoa-npc-page table.info-table tr td:first-child {
    background: #ece8e1 !important;
    background-color: #ece8e1 !important;
    color: #2b211b !important;
    font-weight: bold !important;
}

html.eqoa-theme-light .eqoa-npc-page table.info-table td:last-child,
html.eqoa-theme-light .eqoa-npc-page table.info-table td:last-child * {
    color: #2b211b !important;
    text-shadow: none !important;
}

.npcname-header {
    margin: 0 !important;
    padding: 8px 12px !important;
    line-height: 1.1 !important;
}

/* Hide old Character Builder / CM local theme buttons */
#cb-theme-toggle,
#cm-theme-toggle {
    display: none !important;
}


/* =========================================================
   Global White Theme - Character Builder + Class Mastery
   Must stay at very bottom of Common.css
   ========================================================= */

html.eqoa-theme-light #character-builder-app,
html.eqoa-theme-light #cm-calculator-app,
html.eqoa-theme-light #character-builder-app .character-builder-box,
html.eqoa-theme-light #cm-calculator-app .cm-calculator-box {
    background: #f6f4f1 !important;
    background-color: #f6f4f1 !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

/* Tool sections / control bars */
html.eqoa-theme-light #character-builder-app .character-builder-controls,
html.eqoa-theme-light #cm-calculator-app .character-builder-controls,
html.eqoa-theme-light #character-builder-app .cm-search-tools,
html.eqoa-theme-light #cm-calculator-app .cm-search-tools {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
}

/* Labels and section titles */
html.eqoa-theme-light #character-builder-app label,
html.eqoa-theme-light #cm-calculator-app label,
html.eqoa-theme-light #character-builder-app .character-builder-section-title,
html.eqoa-theme-light #cm-calculator-app .character-builder-section-title,
html.eqoa-theme-light #character-builder-app .cm-panel-title,
html.eqoa-theme-light #cm-calculator-app .cm-panel-title {
    color: #5a3928 !important;
    text-shadow: none !important;
}

/* Tables */
html.eqoa-theme-light #character-builder-app table,
html.eqoa-theme-light #cm-calculator-app table,
html.eqoa-theme-light #character-builder-app .character-builder-stat-table,
html.eqoa-theme-light #cm-calculator-app .character-builder-stat-table,
html.eqoa-theme-light #character-builder-app .character-builder-equipped-table {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light #character-builder-app th,
html.eqoa-theme-light #cm-calculator-app th {
    background: #ece8e1 !important;
    background-color: #ece8e1 !important;
    color: #1f1712 !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light #character-builder-app td,
html.eqoa-theme-light #cm-calculator-app td {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2b211b !important;
    border-color: #e6e0d8 !important;
}

/* Inputs */
html.eqoa-theme-light #character-builder-app input,
html.eqoa-theme-light #character-builder-app select,
html.eqoa-theme-light #character-builder-app textarea,
html.eqoa-theme-light #cm-calculator-app input,
html.eqoa-theme-light #cm-calculator-app select,
html.eqoa-theme-light #cm-calculator-app textarea {
    background: #fbfaf8 !important;
    background-color: #fbfaf8 !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
    box-shadow: none !important;
}

html.eqoa-theme-light #character-builder-app input::placeholder,
html.eqoa-theme-light #character-builder-app textarea::placeholder,
html.eqoa-theme-light #cm-calculator-app input::placeholder,
html.eqoa-theme-light #cm-calculator-app textarea::placeholder {
    color: #665a50 !important;
    opacity: 1 !important;
}

/* Buttons */
html.eqoa-theme-light #character-builder-app button,
html.eqoa-theme-light #cm-calculator-app button,
html.eqoa-theme-light #character-builder-app .cm-action-button,
html.eqoa-theme-light #cm-calculator-app .cm-action-button,
html.eqoa-theme-light #cm-calculator-app .cm-tab-button,
html.eqoa-theme-light #cm-calculator-app .cm-view-button,
html.eqoa-theme-light #cm-calculator-app .cm-reset-button,
html.eqoa-theme-light #cm-calculator-app .cm-clear-search-button,
html.eqoa-theme-light #cm-calculator-app .cm-mini-remove-button {
    background: #3b2a20 !important;
    background-color: #3b2a20 !important;
    border: 1px solid #4a3427 !important;
    color: #ffffff !important;
}

html.eqoa-theme-light #character-builder-app button:hover,
html.eqoa-theme-light #cm-calculator-app button:hover {
    background: #6b4b38 !important;
    background-color: #6b4b38 !important;
    color: #ffffff !important;
}

/* Active tab/buttons */
html.eqoa-theme-light #character-builder-app .cb-tab-active,
html.eqoa-theme-light #cm-calculator-app .cm-tab-active,
html.eqoa-theme-light #cm-calculator-app .cm-view-active {
    background: #d8b04c !important;
    background-color: #d8b04c !important;
    border-color: #b68a2c !important;
    color: #1f1712 !important;
}

/* Equipment slots */
html.eqoa-theme-light #character-builder-app .character-builder-slot,
html.eqoa-theme-light #character-builder-app .character-builder-equipped-summary,
html.eqoa-theme-light #character-builder-app .character-builder-gear-column,
html.eqoa-theme-light #cm-calculator-app .cm-purchased-panel,
html.eqoa-theme-light #cm-calculator-app .cm-master-class-panel,
html.eqoa-theme-light #cm-calculator-app .cm-unlocked-box,
html.eqoa-theme-light #cm-calculator-app #cm-mastery-panel {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
}

/* Item picker rows */
html.eqoa-theme-light #character-builder-app .cb-item-picker-list,
html.eqoa-theme-light #character-builder-app .cb-picker-item,
html.eqoa-theme-light #character-builder-app .cb-picker-none {
    background: #fbfaf8 !important;
    background-color: #fbfaf8 !important;
    border-color: #e6e0d8 !important;
    color: #2b211b !important;
}

html.eqoa-theme-light #character-builder-app .cb-picker-item:hover {
    background: #ece8e1 !important;
    background-color: #ece8e1 !important;
}

/* CM cards */
html.eqoa-theme-light #cm-calculator-app .cm-card {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-color: #d8d1c7 !important;
    border-left-color: #b68a2c !important;
    color: #2b211b !important;
}

html.eqoa-theme-light #cm-calculator-app .cm-card-title {
    color: #1f1712 !important;
}

html.eqoa-theme-light #cm-calculator-app .cm-card-desc,
html.eqoa-theme-light #cm-calculator-app .cm-card-req,
html.eqoa-theme-light #cm-calculator-app .cm-chain-preview,
html.eqoa-theme-light #cm-calculator-app .cm-card-meta {
    color: #665a50 !important;
}

html.eqoa-theme-light #cm-calculator-app .cm-card-locked {
    background: #fff4f2 !important;
    background-color: #fff4f2 !important;
    border-color: #e2b8b2 !important;
}

/* Warning/info boxes */
html.eqoa-theme-light #character-builder-app .character-builder-warning-box,
html.eqoa-theme-light #cm-calculator-app .character-builder-warning-box,
html.eqoa-theme-light #cm-calculator-app .cm-unlock-hint {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
}

/* Purchased list */
html.eqoa-theme-light #cm-calculator-app .cm-purchased-item {
    background: #fbfaf8 !important;
    background-color: #fbfaf8 !important;
    border-color: #e6e0d8 !important;
    color: #2b211b !important;
}

html.eqoa-theme-light #cm-calculator-app .cm-purchased-cost {
    color: #5a3928 !important;
}

/* Tooltips */
html.eqoa-theme-light #character-builder-app .character-builder-tooltip,
html.eqoa-theme-light #cm-calculator-app .cm-tooltip {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    color: #2b211b !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.18) !important;
}

html.eqoa-theme-light #cm-calculator-app .cm-tooltip-title,
html.eqoa-theme-light #character-builder-app .cb-tooltip-title {
    color: #1f1712 !important;
}

/* Text cleanup inside both tools */
html.eqoa-theme-light #character-builder-app,
html.eqoa-theme-light #character-builder-app div,
html.eqoa-theme-light #character-builder-app span,
html.eqoa-theme-light #character-builder-app p,
html.eqoa-theme-light #cm-calculator-app,
html.eqoa-theme-light #cm-calculator-app div,
html.eqoa-theme-light #cm-calculator-app span,
html.eqoa-theme-light #cm-calculator-app p {
    text-shadow: none !important;
}
/* =========================================================
   Global White Theme - Character Builder + Class Mastery
   Must stay at very bottom of Common.css
   ========================================================= */

/* =========================================================
   FINAL PAGE TEMPLATE THEME COVERAGE
   Dark + Light support for older/custom page templates
   Keep this at the very bottom of Common.css
   ========================================================= */

/* Shared theme surfaces */
html.eqoa-theme-dark {
    --page-bg: #080808;
    --page-panel: #141210;
    --page-panel-2: #11100e;
    --page-panel-3: #1b1814;
    --page-border: #4a4035;
    --page-border-soft: #3a3129;
    --page-text: #e6e1d8;
    --page-muted: #c9c1b5;
    --page-heading: #ffffff;
    --page-accent: #f0b400;
    --page-accent-hover: #ffd45a;
}

html.eqoa-theme-light {
    --page-bg: #f6f4f1;
    --page-panel: #ffffff;
    --page-panel-2: #fbfaf8;
    --page-panel-3: #ece8e1;
    --page-border: #d8d1c7;
    --page-border-soft: #e6e0d8;
    --page-text: #2b211b;
    --page-muted: #665a50;
    --page-heading: #1f1712;
    --page-accent: #5a3928;
    --page-accent-hover: #8a5538;
}

/* Generic custom template boxes */
html.eqoa-theme-dark .job-infobox-table,
html.eqoa-theme-dark .job-center-box,
html.eqoa-theme-dark .job-contents-box,
html.eqoa-theme-dark .spell-list,
html.eqoa-theme-dark .SpellList,
html.eqoa-theme-dark .spell-col,
html.eqoa-theme-dark .SpellRow,
html.eqoa-theme-dark .exp-camp-wrapper,
html.eqoa-theme-dark .exp-camp-table,
html.eqoa-theme-dark .lycan-section-table,
html.eqoa-theme-dark .lycan-spawn-table,
html.eqoa-theme-dark .lycan-table-header,
html.eqoa-theme-dark .zone-directory-table,
html.eqoa-theme-dark .path-choice-box,
html.eqoa-theme-dark .path-choice-panel,
html.eqoa-theme-dark .items-filter-box,
html.eqoa-theme-dark .item-box,
html.eqoa-theme-dark .item-image-block,
html.eqoa-theme-light .job-infobox-table,
html.eqoa-theme-light .job-center-box,
html.eqoa-theme-light .job-contents-box,
html.eqoa-theme-light .spell-list,
html.eqoa-theme-light .SpellList,
html.eqoa-theme-light .spell-col,
html.eqoa-theme-light .SpellRow,
html.eqoa-theme-light .exp-camp-wrapper,
html.eqoa-theme-light .exp-camp-table,
html.eqoa-theme-light .lycan-section-table,
html.eqoa-theme-light .lycan-spawn-table,
html.eqoa-theme-light .lycan-table-header,
html.eqoa-theme-light .zone-directory-table,
html.eqoa-theme-light .path-choice-box,
html.eqoa-theme-light .path-choice-panel,
html.eqoa-theme-light .items-filter-box,
html.eqoa-theme-light .item-box,
html.eqoa-theme-light .item-image-block {
    background: var(--page-panel) !important;
    background-color: var(--page-panel) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
    text-shadow: none !important;
}

/* Headers inside custom templates */
html.eqoa-theme-dark .job-infobox-header th,
html.eqoa-theme-dark .spell-lvl,
html.eqoa-theme-dark .exp-camp-table caption,
html.eqoa-theme-dark .exp-camp-table th,
html.eqoa-theme-dark .lycan-section-table caption,
html.eqoa-theme-dark .lycan-spawn-table th,
html.eqoa-theme-dark .path-choice-title,
html.eqoa-theme-dark .path-choice-header,
html.eqoa-theme-dark .zone-directory-table caption,
html.eqoa-theme-dark .zone-directory-table th,
html.eqoa-theme-light .job-infobox-header th,
html.eqoa-theme-light .spell-lvl,
html.eqoa-theme-light .exp-camp-table caption,
html.eqoa-theme-light .exp-camp-table th,

html.eqoa-theme-light .lycan-section-table caption,
html.eqoa-theme-light .lycan-spawn-table th,
html.eqoa-theme-light .path-choice-title,
html.eqoa-theme-light .path-choice-header,
html.eqoa-theme-light .zone-directory-table caption,
html.eqoa-theme-light .zone-directory-table th {
    background: var(--page-panel-3) !important;
    background-color: var(--page-panel-3) !important;
    color: var(--page-accent) !important;
    border-color: var(--page-border) !important;
    text-shadow: none !important;
}

/* Cells and rows */
html.eqoa-theme-dark .job-infobox-table td,
html.eqoa-theme-dark .exp-camp-table td,
html.eqoa-theme-dark .lycan-section-table td,
html.eqoa-theme-dark .lycan-spawn-table td,
html.eqoa-theme-dark .zone-directory-table td,
html.eqoa-theme-light .job-infobox-table td,
html.eqoa-theme-light .exp-camp-table td,
html.eqoa-theme-light .lycan-section-table td,
html.eqoa-theme-light .lycan-spawn-table td,
html.eqoa-theme-light .zone-directory-table td {
    background: var(--page-panel) !important;
    background-color: var(--page-panel) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
}

/* Alternating rows */
html.eqoa-theme-dark .exp-camp-table tr:nth-child(even) td,
html.eqoa-theme-dark .lycan-spawn-table tr:nth-child(even) td,
html.eqoa-theme-light .exp-camp-table tr:nth-child(even) td,
html.eqoa-theme-light .lycan-spawn-table tr:nth-child(even) td {
    background: var(--page-panel-2) !important;
    background-color: var(--page-panel-2) !important;
}

/* Job page old light boxes */
html.eqoa-theme-light .job-infobox-label td:first-child,
html.eqoa-theme-light .job-infobox-label td:last-child,
html.eqoa-theme-light .job-center-box,
html.eqoa-theme-light .job-contents-box {
    background: var(--page-panel) !important;
    background-color: var(--page-panel) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
}

/* Spell page */
html.eqoa-theme-light .spell-data,
html.eqoa-theme-light .spell-name,
html.eqoa-theme-light .SpellRow {
    color: var(--page-text) !important;
}

html.eqoa-theme-light .spell-divider,
html.eqoa-theme-light .spell-divider * {
    background: var(--page-border) !important;
    background-color: var(--page-border) !important;
}

/* Raid encounter tables */
html.eqoa-theme-dark .raid-encounter-table .exp-camp-table,
html.eqoa-theme-light .raid-encounter-table .exp-camp-table {
    background: var(--page-panel) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
}

html.eqoa-theme-dark .raid-encounter-table th,
html.eqoa-theme-light .raid-encounter-table th {
    background: var(--page-panel-3) !important;
    color: var(--page-accent) !important;
    border-color: var(--page-border) !important;
}

html.eqoa-theme-dark .raid-encounter-table .exp-camp-row td,
html.eqoa-theme-light .raid-encounter-table .exp-camp-row td {
    background: var(--page-panel) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
}

html.eqoa-theme-dark .raid-encounter-table .exp-camp-row td:nth-child(even),
html.eqoa-theme-light .raid-encounter-table .exp-camp-row td:nth-child(even) {
    background: var(--page-panel-2) !important;
}

/* Item filter box */
html.eqoa-theme-dark .items-filter-box input,
html.eqoa-theme-light .items-filter-box input {
    background: var(--page-panel-2) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
}

html.eqoa-theme-dark .items-filter-box button,
html.eqoa-theme-light .items-filter-box button {
    background: var(--wiki-button-bg) !important;
    color: var(--wiki-button-text) !important;
    border-color: var(--page-border) !important;
}

/* Old item box */
html.eqoa-theme-light .item-box,
html.eqoa-theme-light .item-box *,
html.eqoa-theme-light .item-stats div,
html.eqoa-theme-light .item-attributes,
html.eqoa-theme-light .item-attr-table,
html.eqoa-theme-light .item-attr-table th,
html.eqoa-theme-light .item-attr-table td {
    background: var(--page-panel) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
    text-shadow: none !important;
}

html.eqoa-theme-light .item-image-block {
    background: var(--page-panel-2) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
}

/* Main page boxes */
html.eqoa-theme-light .mp-box,
html.eqoa-theme-light .mp-banner,
html.eqoa-theme-light .mp-banner-inner {
    background: var(--page-panel) !important;
    background-color: var(--page-panel) !important;
    color: var(--page-text) !important;
    border-color: var(--page-border) !important;
}

html.eqoa-theme-light .mp-banner-title,
html.eqoa-theme-light .mp-banner-subtitle {
    color: var(--page-heading) !important;
    text-shadow: none !important;
}

/* Links inside custom templates */
html.eqoa-theme-dark .job-layout a,
html.eqoa-theme-dark .spell-list a,
html.eqoa-theme-dark .SpellList a,
html.eqoa-theme-dark .exp-camp-table a,
html.eqoa-theme-dark .lycan-section-table a,
html.eqoa-theme-dark .lycan-spawn-table a,
html.eqoa-theme-dark .zone-directory-table a,
html.eqoa-theme-dark .path-choice-box a,
html.eqoa-theme-dark .items-filter-box a,
html.eqoa-theme-light .job-layout a,
html.eqoa-theme-light .spell-list a,
html.eqoa-theme-light .SpellList a,
html.eqoa-theme-light .exp-camp-table a,
html.eqoa-theme-light .lycan-section-table a,
html.eqoa-theme-light .lycan-spawn-table a,
html.eqoa-theme-light .zone-directory-table a,
html.eqoa-theme-light .path-choice-box a,
html.eqoa-theme-light .items-filter-box a {
    color: var(--page-accent) !important;
    text-shadow: none !important;
}

html.eqoa-theme-dark .job-layout a:hover,
html.eqoa-theme-dark .spell-list a:hover,
html.eqoa-theme-dark .SpellList a:hover,
html.eqoa-theme-dark .exp-camp-table a:hover,
html.eqoa-theme-dark .lycan-section-table a:hover,
html.eqoa-theme-dark .lycan-spawn-table a:hover,
html.eqoa-theme-dark .zone-directory-table a:hover,
html.eqoa-theme-dark .path-choice-box a:hover,
html.eqoa-theme-dark .items-filter-box a:hover,
html.eqoa-theme-light .job-layout a:hover,
html.eqoa-theme-light .spell-list a:hover,
html.eqoa-theme-light .SpellList a:hover,
html.eqoa-theme-light .exp-camp-table a:hover,
html.eqoa-theme-light .lycan-section-table a:hover,
html.eqoa-theme-light .lycan-spawn-table a:hover,
html.eqoa-theme-light .zone-directory-table a:hover,
html.eqoa-theme-light .path-choice-box a:hover,
html.eqoa-theme-light .items-filter-box a:hover {
    color: var(--page-accent-hover) !important;
}

/* =========================================================
   LIGHT THEME - REMOVE MONOBOOK TOP BLACK BAR
   Keep at very bottom of Common.css
   ========================================================= */

html.eqoa-theme-light #globalWrapper,
html.eqoa-theme-light #column-content,
html.eqoa-theme-light #content,
html.eqoa-theme-light #p-cactions,
html.eqoa-theme-light #p-cactions ul,
html.eqoa-theme-light #p-cactions li,
html.eqoa-theme-light #p-personal,
html.eqoa-theme-light #p-personal ul,
html.eqoa-theme-light #p-personal li,
html.eqoa-theme-light #head,
html.eqoa-theme-light #mw-head,
html.eqoa-theme-light #left-navigation,
html.eqoa-theme-light #right-navigation {
    background: #f6f4f1 !important;
    background-color: #f6f4f1 !important;
    background-image: none !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light #p-cactions li a,
html.eqoa-theme-light #p-personal li a {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

html.eqoa-theme-light #p-cactions li.selected a {
    background: #ece8e1 !important;
    background-color: #ece8e1 !important;
    color: #1f1712 !important;
}

/* =========================================================
   LIGHT THEME - MONOBOOK TOP STRIP HARD FIX
   Must be the last block in Common.css
   ========================================================= */

html.eqoa-theme-light,
html.eqoa-theme-light body,
html.eqoa-theme-light body.skin-monobook,
html.eqoa-theme-light #globalWrapper,
html.eqoa-theme-light #column-content,
html.eqoa-theme-light #content,
html.eqoa-theme-light #column-one,
html.eqoa-theme-light #p-cactions,
html.eqoa-theme-light #p-cactions *,
html.eqoa-theme-light #p-personal,
html.eqoa-theme-light #p-personal *,
html.eqoa-theme-light #head,
html.eqoa-theme-light #mw-head,
html.eqoa-theme-light #left-navigation,
html.eqoa-theme-light #right-navigation,
html.eqoa-theme-light .portlet,
html.eqoa-theme-light .pBody {
    background-color: #f6f4f1 !important;
    background-image: none !important;
}

/* The visible top action tabs */
html.eqoa-theme-light #p-cactions li,
html.eqoa-theme-light #p-cactions li a,
html.eqoa-theme-light #p-personal li,
html.eqoa-theme-light #p-personal li a {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #2b211b !important;
    border-color: #d8d1c7 !important;
}

/* Selected tab */
html.eqoa-theme-light #p-cactions li.selected,
html.eqoa-theme-light #p-cactions li.selected a {
    background-color: #ece8e1 !important;
    color: #1f1712 !important;
}

/* Restore MonoBook logo and keep global theme button visible */
html.eqoa-theme-light #p-logo {
    background-color: #f6f4f1 !important;
}

html.eqoa-theme-light #p-logo a {
    background-color: transparent !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

#eqoa-theme-toggle.eqoa-theme-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    right: 18px !important;
    bottom: 18px !important;
    z-index: 2147483647 !important;
    width: 34px !important;
    height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    pointer-events: auto !important;
    background: var(--wiki-button-bg, #202020) !important;
    color: var(--wiki-button-text, #ffffff) !important;
    border: 1px solid var(--wiki-border, #343434) !important;
    border-radius: 6px !important;
}

/* Force global theme button visible */
#eqoa-theme-toggle,
#eqoa-theme-toggle.eqoa-theme-toggle,
button#eqoa-theme-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    right: 18px !important;
    bottom: 18px !important;
    z-index: 2147483647 !important;
    width: 34px !important;
    height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    background: #3b2a20 !important;
    color: #ffffff !important;
    border: 1px solid #4a3427 !important;
    border-radius: 6px !important;
    font-size: 22px !important;
    line-height: 1 !important;
    padding: 0 !important;
}

/* =========================================================
   LIGHT THEME - SIDEBAR READABILITY FIX
   Must stay at very bottom of Common.css
   ========================================================= */

/* Sidebar section headers: Sandstorm Era, World, Character, Navigation */
html.eqoa-theme-light #column-one h3,
html.eqoa-theme-light #column-one h5,
html.eqoa-theme-light .portlet h3,
html.eqoa-theme-light .portlet h5,
html.eqoa-theme-light .generated-sidebar h3,
html.eqoa-theme-light .generated-sidebar h5 {
    color: #4a2f1f !important;
    background: transparent !important;
    font-weight: bold !important;
    border-bottom: 1px solid #d8d1c7 !important;
    text-shadow: none !important;
}

/* Sidebar links */
html.eqoa-theme-light #column-one a,
html.eqoa-theme-light .portlet a,
html.eqoa-theme-light .generated-sidebar a {
    color: #2b211b !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

/* Sidebar links hover */
html.eqoa-theme-light #column-one a:hover,
html.eqoa-theme-light .portlet a:hover,
html.eqoa-theme-light .generated-sidebar a:hover {
    color: #7a4a2f !important;
    text-decoration: underline !important;
}

/* Sidebar bullet squares */
html.eqoa-theme-light #column-one li,
html.eqoa-theme-light .portlet li,
html.eqoa-theme-light .generated-sidebar li {
    color: #5a3928 !important;
}

/* Search label */
html.eqoa-theme-light #p-search h3,
html.eqoa-theme-light #p-search h5 {
    color: #4a2f1f !important;
    background: transparent !important;
}

/* =========================================================
   LIGHT THEME - MAIN PAGE + SEARCH HEADER BARS
   Must stay at very bottom of Common.css
   ========================================================= */

/* Main Page box headers like World / Character */
html.eqoa-theme-light .mp-box > b:first-child,
html.eqoa-theme-light .mp-box > strong:first-child,
html.eqoa-theme-light .mp-box-title,
html.eqoa-theme-light .mp-box-header,
html.eqoa-theme-light .mainpage-box-title,
html.eqoa-theme-light .mainpage-box-header {
    display: block !important;
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    border: 1px solid #3b2a20 !important;
    padding: 6px 8px !important;
    margin: -10px -10px 8px -10px !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

/* If the Main Page uses table headers instead of mp-box titles */
html.eqoa-theme-light .mp-box th,
html.eqoa-theme-light .mp-banner-title {
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    border-color: #3b2a20 !important;
    text-shadow: none !important;
}

/* Sidebar SEARCH header */
html.eqoa-theme-light #p-search h3,
html.eqoa-theme-light #p-search h5,
html.eqoa-theme-light #p-search .pBody::before {
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    border: 1px solid #3b2a20 !important;
    padding: 4px 6px !important;
    text-shadow: none !important;
    font-weight: 700 !important;
}

/* =========================================================
   LIGHT THEME - MAIN PAGE PLAIN HEADERS
   Must stay at very bottom of Common.css
   ========================================================= */

html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > b:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > strong:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > center > b,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > center > strong,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > div > b:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > div > strong:first-child {
    display: block !important;
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    border: 1px solid #3b2a20 !important;
    padding: 6px 8px !important;
    margin: -1px -1px 8px -1px !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-shadow: none !important;
}

/* Left-aligned headers like World / Character / EQOA: Sandstorm */
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > div > span:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > span:first-child {
    display: block !important;
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    border: 1px solid #3b2a20 !important;
    padding: 6px 8px !important;
    margin: -1px -1px 8px -1px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

/* Catch direct first-line headings inside Main Page boxes */
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-box > :first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner > :first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner-inner > :first-child {
    display: block !important;
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    border: 1px solid #3b2a20 !important;
    padding: 6px 8px !important;
    margin: -10px -10px 8px -10px !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

/* =========================================================
   LIGHT THEME - MAIN PAGE HEADER TEXT FORCE WHITE
   Must stay at very bottom of Common.css
   ========================================================= */

html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-box > :first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-box > :first-child *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner > :first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner > :first-child *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner-inner > :first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner-inner > :first-child *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > b:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > b:first-child *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > strong:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > strong:first-child *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > center > b,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > center > b *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > center > strong,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > center > strong *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > div > b:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > div > b:first-child *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > div > strong:first-child,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output > div > div > strong:first-child * {
    color: #ffffff !important;
    text-shadow: none !important;
}




/* =========================================================
   LIGHT THEME - MAIN PAGE ORANGE HEADERS
   Must stay at very bottom of Common.css
   ========================================================= */

html.eqoa-theme-light body.page-Main_Page .eqoa-orange-header {
    display: block !important;
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    border: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    padding: 7px 10px !important;
    margin: 0 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-shadow: none !important;
}

html.eqoa-theme-light body.page-Main_Page .eqoa-orange-header *,
html.eqoa-theme-light body.page-Main_Page .eqoa-orange-header .mw-headline {
    color: #ffffff !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

/* Remove spacing/border artifacts caused by the center wrapper */
html.eqoa-theme-light body.page-Main_Page center:has(.eqoa-orange-header) {
    display: block !important;
    background: #4a3427 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    line-height: 0 !important;
}








html.eqoa-theme-light body .mp-banner,
html.eqoa-theme-light body .mw-parser-output .mp-banner {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    padding: 0 !important;
}

html.eqoa-theme-light body .mp-banner .mp-banner-inner,
html.eqoa-theme-light body .mw-parser-output .mp-banner .mp-banner-inner {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    padding: 0 !important;
    margin: 0 !important;
}

html.eqoa-theme-light body .mp-banner .mp-banner-title,
html.eqoa-theme-light body .mw-parser-output .mp-banner .mp-banner-title {
    display: block !important;
    width: 100% !important;
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    color: #ffffff !important;
    padding: 7px 10px !important;
    margin: 0 !important;
    border: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

html.eqoa-theme-light body .mp-banner .mp-banner-subtitle,
html.eqoa-theme-light body .mw-parser-output .mp-banner .mp-banner-subtitle {
    display: block !important;
    width: 100% !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2b211b !important;
    padding: 10px !important;
    margin: 0 !important;
    border: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
}



/* =========================================================
   LIGHT THEME - MAIN PAGE BANNERS FINAL
   Makes banner boxes match World / Character boxes
   ========================================================= */

html.eqoa-theme-light body.page-Main_Page .mp-banner,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 0 10px 0 !important;
}

html.eqoa-theme-light body.page-Main_Page .mp-banner-inner,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner-inner {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #d8d1c7 !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

html.eqoa-theme-light body.page-Main_Page .mp-banner-inner > .mp-banner-title,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner-inner > .mp-banner-title {
    display: block !important;
    background: #4a3427 !important;
    background-color: #4a3427 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 0 !important;
    padding: 7px 10px !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: left !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-shadow: none !important;
}

html.eqoa-theme-light body.page-Main_Page .mp-banner-inner > .mp-banner-title *,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner-inner > .mp-banner-title * {
    color: #ffffff !important;
    background: transparent !important;
    text-shadow: none !important;
}

html.eqoa-theme-light body.page-Main_Page .mp-banner-inner > .mp-banner-subtitle,
html.eqoa-theme-light body.page-Main_Page .mw-parser-output .mp-banner-inner > .mp-banner-subtitle {
    display: block !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #2b211b !important;
    border: 0 !important;
    padding: 10px !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: left !important;
    font-size: 14px !important;
    font-style: normal !important;
    line-height: 1.35 !important;
    text-shadow: none !important;

}





html.eqoa-theme-light .mp-banner-inner > .mp-banner-subtitle {
    min-height: 72px !important;
    padding: 10px !important;
    display: block !important;
    box-sizing: border-box !important;
}



html.eqoa-theme-light .mp-banner-inner > .mp-banner-content {
    background: #ffffff !important;
    color: #2b211b !important;
    padding: 10px !important;
    min-height: 54px !important;
    display: block !important;
    box-sizing: border-box !important;
}