Jump to content

MediaWiki:Common.css: Difference between revisions

From Utopia Game
No edit summary
No edit summary
 
(78 intermediate revisions by 3 users not shown)
Line 3: Line 3:
   ========================================================= */
   ========================================================= */


/* ---------- Background ---------- */
/* ---------- Keyframes ---------- */
@keyframes gradient {
  0%  { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
 
@keyframes float {
  0%  { transform: translateY(0px)  translateX(0px)  scale(1);  opacity: 0; }
  10%  { opacity: 1; }
  90%  { opacity: 1; }
  100% { transform: translateY(-100vh) translateX(30px)  scale(1.2); opacity: 0; }
}
 
/* ---------- Animated gradient layer ---------- */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  background: linear-gradient(-45deg, #000814, #001d3d, #000814, #003566);
  background-size: 400% 400%;
  animation: gradient 15s ease infinite;
}
 
/* ---------- Base background reset ---------- */
html,
html,
body,
body,
.vector-feature-page-tools-disabled .mw-page-container,
.vector-feature-page-tools-disabled .mw-page-container,
.vector-feature-page-tools-enabled .mw-page-container {
.vector-feature-page-tools-enabled .mw-page-container {
    background: linear-gradient(0deg, #001D3D 0%, #000814 40%) !important;
  background: transparent !important;
    background-attachment: fixed !important;
}
}


Line 15: Line 39:
.mw-page-container,
.mw-page-container,
.mw-body,
.mw-body,
#content,
.vector-body {
.vector-body {
    background: transparent !important;
  background: transparent !important;
}
 
/* ---------- Particle canvas ---------- */
#particle-canvas {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}
}


Line 26: Line 57:
#mw-content-text,
#mw-content-text,
.vector-body {
.vector-body {
    color: #FFFFFF !important;
  color: #fff !important;
}
}


Line 35: Line 66:
.mw-page-title-main,
.mw-page-title-main,
.page-Main_Page h1 {
.page-Main_Page h1 {
    color: #FFC300 !important;
  color: #FFC300 !important;
}
}


Line 43: Line 74:
.mw-logo img,
.mw-logo img,
.mw-logo a.mw-logo-container img {
.mw-logo a.mw-logo-container img {
    height: 100px !important;
  height: 100px !important;
    width: auto !important;
  width: auto !important;
    max-height: 100px !important;
  max-height: 100px !important;
}
 
.mw-logo-icon {
    background-size: auto 100px !important;
}
}
.mw-logo-icon { background-size: auto 100px !important; }


@media (max-width: 720px) {
@media (max-width: 720px) {
    .mw-logo-icon,
  .mw-logo-icon,
    .mw-logo-icon img,
  .mw-logo-icon img,
    .mw-logo img,
  .mw-logo img,
    .mw-logo a.mw-logo-container img {
  .mw-logo a.mw-logo-container img {
        height: 32px !important;
    height: 32px !important;
        max-height: 32px !important;
    max-height: 32px !important;
    }
  }
 
  .mw-logo-icon { background-size: auto 32px !important; }
    .mw-logo-icon {
        background-size: auto 32px !important;
    }
}
}


Line 71: Line 96:
#mw-header-container,
#mw-header-container,
.mw-header {
.mw-header {
    background: #000814 !important;
  background: #000814 !important;
    border-bottom: 2px solid #FFC300 !important;
  border-bottom: 2px solid #FFC300 !important;
}
}


Line 78: Line 103:
.mw-logo-wordmark,
.mw-logo-wordmark,
.mw-logo-wordmark a {
.mw-logo-wordmark a {
    color: #FFC300 !important;
  color: #FFC300 !important;
    font-size: 1.8em !important;
  font-size: 1.8em !important;
    font-weight: bold !important;
  font-weight: bold !important;
    text-decoration: none !important;
  text-decoration: none !important;
}
 
.mw-logo-wordmark a:hover {
    color: #FFD60A !important;
}
}
.mw-logo-wordmark a:hover { color: #FFD60A !important; }


/* Sidebar headings */
/* Sidebar headings */
Line 92: Line 114:
.vector-main-menu-heading,
.vector-main-menu-heading,
.mw-portlet h3 {
.mw-portlet h3 {
    color: #001D3D !important;
  color: #FFC300 !important;
}
}


Line 98: Line 120:
   PAGE CONTENT LINKS
   PAGE CONTENT LINKS
   ========================================================= */
   ========================================================= */
.mw-parser-output a { color: #4DA3FF !important; }
.mw-parser-output a:visited { color: #9B7CFF !important; }
.mw-parser-output a:hover { color: #6BB6FF !important; text-decoration: underline; }
.mw-parser-output a:active { color: #1F4FA3 !important; }
.mw-parser-output a.new,
.mw-parser-output a.new:visited { color: #CC2200 !important; }
/* Optional: keep only if something is overriding text colors inside articles */
/* .mw-parser-output { color: #fff !important; } */
/* =========================================================
  GLOBAL TABLE THEME (ALL PAGES)
  ========================================================= */
.mw-parser-output .wikitable {
  width: 100%;
  border-collapse: collapse !important;
  margin: 0.75em 0;
  background: #303030 !important;
  border: 1px solid #555555 !important;
}
.mw-parser-output .wikitable caption {
  background: #001D3D !important;
  color: #fff !important;
  font-weight: bold;
  padding: 0.5em 0.7em !important;
  border-bottom: 1px solid #555555 !important;
}
.mw-parser-output .wikitable thead th {
  background: #000 !important;
  color: #EAEAEA !important;
  font-weight: 700;
  border: 1px solid #666666 !important;
  padding: 0.5em 0.7em !important;
}
.mw-parser-output .wikitable tbody tr:nth-child(odd) { background-color: #303030 !important; }
.mw-parser-output .wikitable tbody tr:nth-child(even) { background-color: #505050 !important; }
.mw-parser-output .wikitable tbody td {
  border: 1px solid #555555 !important;
  color: #EAEAEA !important;
  padding: 0.5em 0.7em !important;
}
/* =========================================================
  TABLE OF CONTENTS – Vector 2022
  ========================================================= */
#vector-toc,
#toc {
  background: #001D3D !important;
  border: 1px solid #FFC300 !important;
  border-radius: 6px;
  padding: 0.75em;
}


.mw-parser-output a,
#vector-toc .vector-pinnable-header-label,
.mw-parser-output a:link {
#toc .toctitle {
    color: #4DA3FF !important;
  color: #FFC300 !important;
  font-weight: bold;
}
}


.mw-parser-output a:visited {
#vector-toc .vector-toc-text,
    color: #9B7CFF !important;
#toc a {
  color: #EAEAEA !important;
  opacity: 1 !important;
  text-decoration: none;
}
}


.mw-parser-output a:hover {
/* Active item */
    color: #6BB6FF !important;
#vector-toc .vector-toc-list-item-active { background: transparent !important; }
    text-decoration: underline;
#vector-toc .vector-toc-list-item-active > a.vector-toc-link { background-color: #FFD60A !important; }
#vector-toc .vector-toc-list-item-active > a.vector-toc-link .vector-toc-text {
  color: #000814 !important;
  font-weight: 700 !important;
}
}


.mw-parser-output a:active {
/* Expanded parent rules */
    color: #1F4FA3 !important;
#vector-toc .vector-toc-level-1.vector-toc-list-item-expanded > a.vector-toc-link .vector-toc-text {
  color: #FFC300 !important;
  font-weight: 600 !important;
}
#vector-toc .vector-toc-level-1.vector-toc-list-item-expanded.vector-toc-list-item-active > a.vector-toc-link .vector-toc-text {
  color: #000814 !important;
  font-weight: 700 !important;
}
#vector-toc .vector-toc-level-1.vector-toc-list-item-expanded ul .vector-toc-text {
  color: #EAEAEA !important;
  font-weight: normal !important;
}
}


/* Missing pages */
/* Hover */
.mw-parser-output a.new,
#vector-toc .vector-toc-list-item:not(.vector-toc-list-item-active) > a.vector-toc-link:hover .vector-toc-text {
.mw-parser-output a.new:visited {
  color: #FFD60A !important;
    color: #CC2200 !important;
}
#vector-toc .vector-toc-list-item-active > a.vector-toc-link:hover .vector-toc-text {
  color: #000814 !important;
}
 
/* Remove wrappers */
.vector-toc-container,
#vector-toc-pinned-container,
.vector-pinned-container {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
 
/* Inline (article) TOC only */
.mw-parser-output > .toc {
  background: #001D3D !important;
  border: 1px solid #FFC300 !important;
}
}


/* =========================================================
/* =========================================================
   FORCE ARTICLE TEXT TO WHITE (EXCEPT TABLE CELLS)
   Draft Cost Formula
   ========================================================= */
   ========================================================= */
.formula-box {
  background: #001D3D;
  border: 1px solid #FFC300;
  border-radius: 10px;
  padding: 0.8em 1em;
  margin: 0.75em 0;
  color: #EAEAEA;
  line-height: 1.6;
  white-space: normal;
  overflow-wrap: anywhere;
}
.formula-box a { color: #4DA3FF !important; }
.formula-box a:visited { color: #9B7CFF !important; }
/* =========================
  Vector 2022 – RIGHT PAGE TOOLS: remove the fade/gradient
  ========================= */
.vector-page-tools::before,
.vector-page-tools::after,
.vector-page-tools-container::before,
.vector-page-tools-container::after,
.vector-page-tools-landmark::before,
.vector-page-tools-landmark::after,
.vector-sticky-pinned-container::before,
.vector-sticky-pinned-container::after,
.vector-page-tools .vector-sticky-pinned-container::before,
.vector-page-tools .vector-sticky-pinned-container::after {
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
/* Change Navigation Icon/Link Colors */
#mw-panel .portal a, 
#mw-panel .portal a:visited {
    color: #FFC300 !important; /* Change to your desired color */
}
/* Change Footer Link Colors */
div#footer ul li a,
div#footer ul li a:visited {
    color: #FFC300 !important; /* Change to your desired color */
}
/* Change Footer Text and Icons */
div#footer ul li {
    color: #FFC300 !important;
}
/* Change Navigation Icon/Link Colors */
#mw-panel .portal a, 
#mw-panel .portal a:visited {
    color: #FFC300 !important; /* Change to your desired color */
}


.mw-parser-output,
/* ===== NAVIGATION ICONS - VECTOR 2022 ===== */
.mw-parser-output p,
/* User menu icon (person icon) */
.mw-parser-output li,
.vector-user-links .vector-icon,
.mw-parser-output dt,
.vector-user-menu-login .vector-icon,
.mw-parser-output dd,
.vector-user-menu-create-account .vector-icon {
.mw-parser-output caption {
    filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
     color: #FFFFFF !important;
}
 
/* Settings/hamburger menu icon */
.vector-main-menu-action-toggle .vector-icon,
.vector-page-tools-landmark .vector-icon {
    filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
}
 
/* All navigation icons */
.vector-icon,
.mw-ui-icon {
    filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
}
 
/* User menu links (username) */
.vector-user-links a,
.vector-user-menu-logged-in .vector-user-links-main a {
    color: #FFC300 !important;
}
 
/* ===== FOOTER LINKS - VECTOR 2022 ===== */
/* All footer links */
#footer a,
#footer a:link,
#footer a:visited,
.mw-footer a,
.mw-footer a:link,
.mw-footer a:visited,
footer a,
footer a:link,
footer a:visited {
    color: #FFC300 !important;
}
 
/* Footer text color */
#footer,
#footer li,
.mw-footer,
.mw-footer li,
footer,
footer li {
    color: #FFC300 !important;
}
 
/* Older footer selectors (keeping for compatibility) */
div#footer ul li a,
div#footer ul li a:visited {
    color: #FFC300 !important;
}
 
div#footer ul li {
     color: #FFC300 !important;
}
}


/* =========================================================
/* =========================================================
   GLOBAL TABLE THEME (ALL PAGES)
   VECTOR 2022 – PAGE ACTIONS / TABS COLOR CONTROL
  Applies to: Main Page | Discussion | Read | Edit | History | Tools
   ========================================================= */
   ========================================================= */


.mw-parser-output table.wikitable,
/* Default page action links (not active) */
.mw-parser-output .wikitable {
.vector-page-toolbar a,
     width: 100%;
.vector-page-toolbar a:link,
    border-collapse: collapse !important;
.vector-page-toolbar a:visited,
    margin: 0.75em 0;
.vector-page-toolbar .mw-ui-icon a {
     background: #303030 !important;
     color: #FFC300 !important;
     border: 1px solid #555555 !important;
}
 
/* Hover state (optional subtle brighten) */
.vector-page-toolbar a:hover {
     color: #FFD60A !important;
}
 
/* ACTIVE / CURRENT TAB (e.g. Main Page, Edit when editing) */
.vector-page-toolbar .selected a,
.vector-page-toolbar .mw-ui-button.mw-ui-progressive,
.vector-page-toolbar .mw-ui-button.mw-ui-progressive:visited {
     color: #FFFFFF !important;
}
}


/* Captions */
/* Ensure active tab background doesn't force dark text */
.mw-parser-output table.wikitable caption,
.vector-page-toolbar .selected a,
.mw-parser-output .wikitable caption {
.vector-page-toolbar .selected span {
    background: #001D3D !important;
     color: #FFFFFF !important;
     color: #FFFFFF !important;
}
/* Missing page links stay red */
.vector-page-toolbar a.new,
.vector-page-toolbar a.new:visited {
    color: #CC2200 !important;
}
/* ============ NAVPILLS ============ */
/* Navpills styling */
.navpills-container {
    margin: 1.5em 0;
    padding: 0;
}
.navpills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8em;
    list-style: none;
    margin: 0;
    padding: 0;
}
.navpill-item {
    display: inline-block;
}
.navpill-item a {
    text-decoration: none !important;
}
.navpill-item a span {
    display: inline-block;
    padding: 0.7em 1.3em;
    background: linear-gradient(135deg, #003566 0%, #001D3D 100%);
    color: #FFC300 !important;
    border: 2px solid #FFC300;
    border-radius: 6px;
     font-weight: bold;
     font-weight: bold;
     padding: 0.5em 0.7em !important;
     text-decoration: none;
     border-bottom: 1px solid #555555 !important;
    transition: all 0.3s ease;
    font-size: 1.05em;
    box-shadow: 0 2px 8px rgba(255, 195, 0, 0.2);
}
 
.navpill-item a:hover span {
    background: linear-gradient(135deg, #FFC300 0%, #FFD60A 100%);
    color: #000814 !important;
    border-color: #FFD60A;
    box-shadow: 0 4px 12px rgba(255, 195, 0, 0.4);
    transform: translateY(-2px);
}
 
/* Mobile responsive */
@media (max-width: 768px) {
    .navpills {
        flex-direction: column;
    }
   
    .navpill-item {
        width: 100%;
    }
   
    .navpill-item a span {
        display: block;
        text-align: center;
    }
}
 
/* ============ TABS ============ */
/* CSS-Only Tabs */
.wiki-tabs-container-css {
    margin: 2em 0;
    background: linear-gradient(180deg, #001D3D 0%, #000814 100%);
    border: 2px solid #FFC300;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(255, 195, 0, 0.2);
}
 
/* Hide radio buttons */
.wiki-tab-radio {
    display: none;
}
 
/* Tab Labels (Buttons) */
.wiki-tab-label {
    display: inline-block;
    padding: 1em 1.5em;
    background: #001D3D;
    color: #FFC300;
    border-right: 1px solid rgba(255, 195, 0, 0.3);
    font-size: 1.1em;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    font-family: 'Palatino Linotype', 'Book Antiqua', Palatino, Georgia, serif;
    margin: 0;
     border-bottom: 2px solid #000814;
}
 
.wiki-tab-label:hover {
    background: #003566;
    color: #FFD60A;
}
 
/* Active tab style */
.wiki-tab-radio:checked + .wiki-tab-label {
    background: #FFC300;
    color: #000814;
    border-bottom: 3px solid #FFD60A;
}
 
/* Tab Content */
.wiki-tab-content {
    display: none;
    padding: 2em;
    color: #FFFFFF;
}
}


/* Primary header row */
/* Show content when tab is checked */
.mw-parser-output table.wikitable thead th,
.wiki-tab-radio:checked ~ .wiki-tab-content {
.mw-parser-output .wikitable thead th {
    display: block;
    background: #000000 !important;
}
    color: #EAEAEA !important;
 
    font-weight: 700;
/* Mobile Responsive */
    border: 1px solid #666666 !important;
@media (max-width: 768px) {
    padding: 0.5em 0.7em !important;
    .wiki-tab-label {
        display: block;
        width: 100%;
        border-right: none;
        border-bottom: 1px solid rgba(255, 195, 0, 0.3);
    }
}
}


/* =========================================================
/* =========================================================
   Alternating row colors (tbody only)
   STICKY HEADER FIX - Keep blue background when scrolling
   ========================================================= */
   ========================================================= */


.mw-parser-output table.wikitable tbody tr:nth-child(odd),
/* Sticky header container */
.mw-parser-output .wikitable tbody tr:nth-child(odd) {
.vector-sticky-header,
     background-color: #303030 !important;
.vector-sticky-header-container {
    background: #000814 !important;
    border-bottom: 2px solid #FFC300 !important;
}
 
/* Sticky header elements */
.vector-sticky-header-start,
.vector-sticky-header-end,
.vector-sticky-header-context-bar {
    background: #000814 !important;
}
 
/* Page title in sticky header */
.vector-sticky-header-context-bar-primary,
.vector-sticky-header .mw-page-title-main {
    color: #FFC300 !important;
}
 
/* Sticky header buttons and icons */
.vector-sticky-header button,
.vector-sticky-header .vector-icon {
    filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
}
 
/* Sticky header links */
.vector-sticky-header a {
     color: #FFC300 !important;
}
 
/* Race table text override */
.racebox td {
  color: black !important;
}
 
.racebox th {
  color: white !important; /* keeps your header colors */
}
}


.mw-parser-output table.wikitable tbody tr:nth-child(even),
/* Equal-width navpills grid */
.mw-parser-output .wikitable tbody tr:nth-child(even) {
.navpills-equal-grid .navpills {
     background-color: #505050 !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
     gap: 1em !important;
}
}


/* Table body cells */
.navpills-equal-grid .navpill-item {
.mw-parser-output table.wikitable tbody td,
    width: 100% !important;
.mw-parser-output .wikitable tbody td {
    display: block !important;
     border: 1px solid #555555 !important;
}
     color: #EAEAEA !important;
 
     padding: 0.5em 0.7em !important;
.navpills-equal-grid .navpill-item a span {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 0.5em !important;
    box-sizing: border-box !important;
}
 
@media (max-width: 768px) {
    .navpills-equal-grid .navpills {
        grid-template-columns: 1fr !important;
    }
}
 
/* Race card buttons with hover animation */
.race-card {
    display: block;
    text-align: center;
    padding: 1.5em 1em;
    background: linear-gradient(135deg, #003566 0%, #001D3D 100%);
    border: 2px solid #FFC300;
    border-radius: 8px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(255, 195, 0, 0.2);
    text-decoration: none;
}
 
.race-card:hover {
     background: linear-gradient(135deg, #FFC300 0%, #FFD60A 100%);
     border-color: #FFD60A;
    box-shadow: 0 4px 12px rgba(255, 195, 0, 0.4);
    transform: translateY(-4px);
}
 
.race-card img {
    display: block;
    margin: 0 auto;
    transition: transform 0.3s ease;
}
 
.race-card:hover img {
    transform: scale(1.05);
}
 
.race-card-name {
     margin-top: 0.8em;
    font-size: 1.2em;
    font-weight: bold;
    color: #FFC300;
    transition: color 0.3s ease;
}
}


/* Links inside table cells */
.race-card:hover .race-card-name {
.mw-parser-output table.wikitable tbody td a,
     color: #000814;
.mw-parser-output .wikitable tbody td a {
     color: #EAEAEA !important;
}
}

Latest revision as of 04:13, 17 February 2026

/* =========================================================
   GLOBAL THEME – MediaWiki 1.45 / Vector 2022
   ========================================================= */

/* ---------- Keyframes ---------- */
@keyframes gradient {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

@keyframes float {
  0%   { transform: translateY(0px)   translateX(0px)   scale(1);   opacity: 0; }
  10%  { opacity: 1; }
  90%  { opacity: 1; }
  100% { transform: translateY(-100vh) translateX(30px)  scale(1.2); opacity: 0; }
}

/* ---------- Animated gradient layer ---------- */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  background: linear-gradient(-45deg, #000814, #001d3d, #000814, #003566);
  background-size: 400% 400%;
  animation: gradient 15s ease infinite;
}

/* ---------- Base background reset ---------- */
html,
body,
.vector-feature-page-tools-disabled .mw-page-container,
.vector-feature-page-tools-enabled .mw-page-container {
  background: transparent !important;
}

/* Transparent content containers */
.mw-page-container,
.mw-body,
.vector-body {
  background: transparent !important;
}

/* ---------- Particle canvas ---------- */
#particle-canvas {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}

/* ---------- Base text ---------- */
body,
.mw-body,
.mw-body-content,
#mw-content-text,
.vector-body {
  color: #fff !important;
}

/* ---------- Headings ---------- */
h1, h2, h3, h4, h5, h6,
.mw-headline,
#firstHeading,
.mw-page-title-main,
.page-Main_Page h1 {
  color: #FFC300 !important;
}

/* ---------- Logo ---------- */
.mw-logo-icon,
.mw-logo-icon img,
.mw-logo img,
.mw-logo a.mw-logo-container img {
  height: 100px !important;
  width: auto !important;
  max-height: 100px !important;
}
.mw-logo-icon { background-size: auto 100px !important; }

@media (max-width: 720px) {
  .mw-logo-icon,
  .mw-logo-icon img,
  .mw-logo img,
  .mw-logo a.mw-logo-container img {
    height: 32px !important;
    max-height: 32px !important;
  }
  .mw-logo-icon { background-size: auto 32px !important; }
}

/* ---------- Header ---------- */
.vector-header-container,
.vector-header,
#mw-header-container,
.mw-header {
  background: #000814 !important;
  border-bottom: 2px solid #FFC300 !important;
}

/* Site name */
.mw-logo-wordmark,
.mw-logo-wordmark a {
  color: #FFC300 !important;
  font-size: 1.8em !important;
  font-weight: bold !important;
  text-decoration: none !important;
}
.mw-logo-wordmark a:hover { color: #FFD60A !important; }

/* Sidebar headings */
.vector-pinnable-header-label,
.vector-main-menu-heading,
.mw-portlet h3 {
  color: #FFC300 !important;
}

/* =========================================================
   PAGE CONTENT LINKS
   ========================================================= */
.mw-parser-output a { color: #4DA3FF !important; }
.mw-parser-output a:visited { color: #9B7CFF !important; }
.mw-parser-output a:hover { color: #6BB6FF !important; text-decoration: underline; }
.mw-parser-output a:active { color: #1F4FA3 !important; }
.mw-parser-output a.new,
.mw-parser-output a.new:visited { color: #CC2200 !important; }

/* Optional: keep only if something is overriding text colors inside articles */
/* .mw-parser-output { color: #fff !important; } */

/* =========================================================
   GLOBAL TABLE THEME (ALL PAGES)
   ========================================================= */
.mw-parser-output .wikitable {
  width: 100%;
  border-collapse: collapse !important;
  margin: 0.75em 0;
  background: #303030 !important;
  border: 1px solid #555555 !important;
}

.mw-parser-output .wikitable caption {
  background: #001D3D !important;
  color: #fff !important;
  font-weight: bold;
  padding: 0.5em 0.7em !important;
  border-bottom: 1px solid #555555 !important;
}

.mw-parser-output .wikitable thead th {
  background: #000 !important;
  color: #EAEAEA !important;
  font-weight: 700;
  border: 1px solid #666666 !important;
  padding: 0.5em 0.7em !important;
}

.mw-parser-output .wikitable tbody tr:nth-child(odd) { background-color: #303030 !important; }
.mw-parser-output .wikitable tbody tr:nth-child(even) { background-color: #505050 !important; }

.mw-parser-output .wikitable tbody td {
  border: 1px solid #555555 !important;
  color: #EAEAEA !important;
  padding: 0.5em 0.7em !important;
}

/* =========================================================
   TABLE OF CONTENTS – Vector 2022
   ========================================================= */
#vector-toc,
#toc {
  background: #001D3D !important;
  border: 1px solid #FFC300 !important;
  border-radius: 6px;
  padding: 0.75em;
}

#vector-toc .vector-pinnable-header-label,
#toc .toctitle {
  color: #FFC300 !important;
  font-weight: bold;
}

#vector-toc .vector-toc-text,
#toc a {
  color: #EAEAEA !important;
  opacity: 1 !important;
  text-decoration: none;
}

/* Active item */
#vector-toc .vector-toc-list-item-active { background: transparent !important; }
#vector-toc .vector-toc-list-item-active > a.vector-toc-link { background-color: #FFD60A !important; }
#vector-toc .vector-toc-list-item-active > a.vector-toc-link .vector-toc-text {
  color: #000814 !important;
  font-weight: 700 !important;
}

/* Expanded parent rules */
#vector-toc .vector-toc-level-1.vector-toc-list-item-expanded > a.vector-toc-link .vector-toc-text {
  color: #FFC300 !important;
  font-weight: 600 !important;
}
#vector-toc .vector-toc-level-1.vector-toc-list-item-expanded.vector-toc-list-item-active > a.vector-toc-link .vector-toc-text {
  color: #000814 !important;
  font-weight: 700 !important;
}
#vector-toc .vector-toc-level-1.vector-toc-list-item-expanded ul .vector-toc-text {
  color: #EAEAEA !important;
  font-weight: normal !important;
}

/* Hover */
#vector-toc .vector-toc-list-item:not(.vector-toc-list-item-active) > a.vector-toc-link:hover .vector-toc-text {
  color: #FFD60A !important;
}
#vector-toc .vector-toc-list-item-active > a.vector-toc-link:hover .vector-toc-text {
  color: #000814 !important;
}

/* Remove wrappers */
.vector-toc-container,
#vector-toc-pinned-container,
.vector-pinned-container {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Inline (article) TOC only */
.mw-parser-output > .toc {
  background: #001D3D !important;
  border: 1px solid #FFC300 !important;
}

/* =========================================================
   Draft Cost Formula
   ========================================================= */
.formula-box {
  background: #001D3D;
  border: 1px solid #FFC300;
  border-radius: 10px;
  padding: 0.8em 1em;
  margin: 0.75em 0;
  color: #EAEAEA;
  line-height: 1.6;
  white-space: normal;
  overflow-wrap: anywhere;
}
.formula-box a { color: #4DA3FF !important; }
.formula-box a:visited { color: #9B7CFF !important; }

/* =========================
   Vector 2022 – RIGHT PAGE TOOLS: remove the fade/gradient
   ========================= */
.vector-page-tools::before,
.vector-page-tools::after,
.vector-page-tools-container::before,
.vector-page-tools-container::after,
.vector-page-tools-landmark::before,
.vector-page-tools-landmark::after,
.vector-sticky-pinned-container::before,
.vector-sticky-pinned-container::after,
.vector-page-tools .vector-sticky-pinned-container::before,
.vector-page-tools .vector-sticky-pinned-container::after {
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}


/* Change Navigation Icon/Link Colors */
#mw-panel .portal a,  
#mw-panel .portal a:visited {
     color: #FFC300 !important; /* Change to your desired color */
}


/* Change Footer Link Colors */
div#footer ul li a, 
div#footer ul li a:visited {
     color: #FFC300 !important; /* Change to your desired color */
}


/* Change Footer Text and Icons */
div#footer ul li {
     color: #FFC300 !important;
}


/* Change Navigation Icon/Link Colors */
#mw-panel .portal a,  
#mw-panel .portal a:visited {
     color: #FFC300 !important; /* Change to your desired color */
}

/* ===== NAVIGATION ICONS - VECTOR 2022 ===== */
/* User menu icon (person icon) */
.vector-user-links .vector-icon,
.vector-user-menu-login .vector-icon,
.vector-user-menu-create-account .vector-icon {
     filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
}

/* Settings/hamburger menu icon */
.vector-main-menu-action-toggle .vector-icon,
.vector-page-tools-landmark .vector-icon {
     filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
}

/* All navigation icons */
.vector-icon,
.mw-ui-icon {
     filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
}

/* User menu links (username) */
.vector-user-links a,
.vector-user-menu-logged-in .vector-user-links-main a {
     color: #FFC300 !important;
}

/* ===== FOOTER LINKS - VECTOR 2022 ===== */
/* All footer links */
#footer a,
#footer a:link,
#footer a:visited,
.mw-footer a,
.mw-footer a:link,
.mw-footer a:visited,
footer a,
footer a:link,
footer a:visited {
     color: #FFC300 !important;
}

/* Footer text color */
#footer,
#footer li,
.mw-footer,
.mw-footer li,
footer,
footer li {
     color: #FFC300 !important;
}

/* Older footer selectors (keeping for compatibility) */
div#footer ul li a, 
div#footer ul li a:visited {
     color: #FFC300 !important;
}

div#footer ul li {
    color: #FFC300 !important;
}

/* =========================================================
   VECTOR 2022 – PAGE ACTIONS / TABS COLOR CONTROL
   Applies to: Main Page | Discussion | Read | Edit | History | Tools
   ========================================================= */

/* Default page action links (not active) */
.vector-page-toolbar a,
.vector-page-toolbar a:link,
.vector-page-toolbar a:visited,
.vector-page-toolbar .mw-ui-icon a {
    color: #FFC300 !important;
}

/* Hover state (optional subtle brighten) */
.vector-page-toolbar a:hover {
    color: #FFD60A !important;
}

/* ACTIVE / CURRENT TAB (e.g. Main Page, Edit when editing) */
.vector-page-toolbar .selected a,
.vector-page-toolbar .mw-ui-button.mw-ui-progressive,
.vector-page-toolbar .mw-ui-button.mw-ui-progressive:visited {
    color: #FFFFFF !important;
}

/* Ensure active tab background doesn't force dark text */
.vector-page-toolbar .selected a,
.vector-page-toolbar .selected span {
    color: #FFFFFF !important;
}

/* Missing page links stay red */
.vector-page-toolbar a.new,
.vector-page-toolbar a.new:visited {
    color: #CC2200 !important;
}


/* ============ NAVPILLS ============ */
/* Navpills styling */
.navpills-container {
    margin: 1.5em 0;
    padding: 0;
}

.navpills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8em;
    list-style: none;
    margin: 0;
    padding: 0;
}

.navpill-item {
    display: inline-block;
}

.navpill-item a {
    text-decoration: none !important;
}

.navpill-item a span {
    display: inline-block;
    padding: 0.7em 1.3em;
    background: linear-gradient(135deg, #003566 0%, #001D3D 100%);
    color: #FFC300 !important;
    border: 2px solid #FFC300;
    border-radius: 6px;
    font-weight: bold;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 1.05em;
    box-shadow: 0 2px 8px rgba(255, 195, 0, 0.2);
}

.navpill-item a:hover span {
    background: linear-gradient(135deg, #FFC300 0%, #FFD60A 100%);
    color: #000814 !important;
    border-color: #FFD60A;
    box-shadow: 0 4px 12px rgba(255, 195, 0, 0.4);
    transform: translateY(-2px);
}

/* Mobile responsive */
@media (max-width: 768px) {
    .navpills {
        flex-direction: column;
    }
    
    .navpill-item {
        width: 100%;
    }
    
    .navpill-item a span {
        display: block;
        text-align: center;
    }
}

/* ============ TABS ============ */
/* CSS-Only Tabs */
.wiki-tabs-container-css {
    margin: 2em 0;
    background: linear-gradient(180deg, #001D3D 0%, #000814 100%);
    border: 2px solid #FFC300;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(255, 195, 0, 0.2);
}

/* Hide radio buttons */
.wiki-tab-radio {
    display: none;
}

/* Tab Labels (Buttons) */
.wiki-tab-label {
    display: inline-block;
    padding: 1em 1.5em;
    background: #001D3D;
    color: #FFC300;
    border-right: 1px solid rgba(255, 195, 0, 0.3);
    font-size: 1.1em;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    font-family: 'Palatino Linotype', 'Book Antiqua', Palatino, Georgia, serif;
    margin: 0;
    border-bottom: 2px solid #000814;
}

.wiki-tab-label:hover {
    background: #003566;
    color: #FFD60A;
}

/* Active tab style */
.wiki-tab-radio:checked + .wiki-tab-label {
    background: #FFC300;
    color: #000814;
    border-bottom: 3px solid #FFD60A;
}

/* Tab Content */
.wiki-tab-content {
    display: none;
    padding: 2em;
    color: #FFFFFF;
}

/* Show content when tab is checked */
.wiki-tab-radio:checked ~ .wiki-tab-content {
    display: block;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .wiki-tab-label {
        display: block;
        width: 100%;
        border-right: none;
        border-bottom: 1px solid rgba(255, 195, 0, 0.3);
    }
}

/* =========================================================
   STICKY HEADER FIX - Keep blue background when scrolling
   ========================================================= */

/* Sticky header container */
.vector-sticky-header,
.vector-sticky-header-container {
    background: #000814 !important;
    border-bottom: 2px solid #FFC300 !important;
}

/* Sticky header elements */
.vector-sticky-header-start,
.vector-sticky-header-end,
.vector-sticky-header-context-bar {
    background: #000814 !important;
}

/* Page title in sticky header */
.vector-sticky-header-context-bar-primary,
.vector-sticky-header .mw-page-title-main {
    color: #FFC300 !important;
}

/* Sticky header buttons and icons */
.vector-sticky-header button,
.vector-sticky-header .vector-icon {
    filter: brightness(0) saturate(100%) invert(85%) sepia(67%) saturate(1000%) hue-rotate(0deg) brightness(103%) contrast(101%) !important;
}

/* Sticky header links */
.vector-sticky-header a {
    color: #FFC300 !important;
}

/* Race table text override */
.racebox td {
  color: black !important;
}

.racebox th {
  color: white !important; /* keeps your header colors */
}

/* Equal-width navpills grid */
.navpills-equal-grid .navpills {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 1em !important;
}

.navpills-equal-grid .navpill-item {
    width: 100% !important;
    display: block !important;
}

.navpills-equal-grid .navpill-item a span {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 0.5em !important;
    box-sizing: border-box !important;
}

@media (max-width: 768px) {
    .navpills-equal-grid .navpills {
        grid-template-columns: 1fr !important;
    }
}

/* Race card buttons with hover animation */
.race-card {
    display: block;
    text-align: center;
    padding: 1.5em 1em;
    background: linear-gradient(135deg, #003566 0%, #001D3D 100%);
    border: 2px solid #FFC300;
    border-radius: 8px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(255, 195, 0, 0.2);
    text-decoration: none;
}

.race-card:hover {
    background: linear-gradient(135deg, #FFC300 0%, #FFD60A 100%);
    border-color: #FFD60A;
    box-shadow: 0 4px 12px rgba(255, 195, 0, 0.4);
    transform: translateY(-4px);
}

.race-card img {
    display: block;
    margin: 0 auto;
    transition: transform 0.3s ease;
}

.race-card:hover img {
    transform: scale(1.05);
}

.race-card-name {
    margin-top: 0.8em;
    font-size: 1.2em;
    font-weight: bold;
    color: #FFC300;
    transition: color 0.3s ease;
}

.race-card:hover .race-card-name {
    color: #000814;
}