Jump to content

MediaWiki:Common.css

From DEAD Wiki
Revision as of 11:11, 5 September 2025 by Luke (talk | contribs) (Created page with "*************************** * Mytholite MediaWiki Theme * Drop in: MediaWiki:Common.css ***************************: ==== Brand tokens ====: :root { --brand: #ff6a00; Accent (Mytholite orange?): --brand-2: #6a38f0; Secondary accent (purple): --text: #1f1f24; --muted: #5b5b6a; --bg: #ffffff; --bg-soft: #f7f7fb; --border: #e5e7eb; --link: #3a68ff; --link-hover: #2b50c7; --code-bg: #0b1020; --code-text: #e8eefc;...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/****************************
 * Mytholite MediaWiki Theme
 * Drop in: MediaWiki:Common.css
 ****************************/

/* ==== Brand tokens ==== */
:root {
  --brand: #ff6a00;           /* Accent (Mytholite orange?) */
  --brand-2: #6a38f0;         /* Secondary accent (purple)  */
  --text: #1f1f24;
  --muted: #5b5b6a;
  --bg: #ffffff;
  --bg-soft: #f7f7fb;
  --border: #e5e7eb;
  --link: #3a68ff;
  --link-hover: #2b50c7;
  --code-bg: #0b1020;
  --code-text: #e8eefc;
}

/* Auto dark mode */
@media (prefers-color-scheme: dark) {
  :root {
    --text: #ececf1;
    --muted: #b9bbbf;
    --bg: #0e1116;
    --bg-soft: #141923;
    --border: #242a36;
    --link: #8ab4ff;
    --link-hover: #b3ccff;
    --code-bg: #0b0f1a;
    --code-text: #e6ecff;
  }

  /* Logos/icons that are dark by default */
  img[alt*="logo"], .mw-wiki-logo {
    filter: brightness(1.1) saturate(1.05);
  }
}

/* ==== Base layout & type ==== */
html, body {
  background: var(--bg);
  color: var(--text);
}

.mw-body, #content, .mw-parser-output {
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  line-height: 1.6;
  font-size: 16px;
  letter-spacing: 0.1px;
}

/* Headings */
.mw-parser-output h1,
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4 {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.25;
  margin: 1.6em 0 0.6em;
  font-weight: 750;
  color: var(--text);
}
.mw-parser-output h1 { font-size: 2rem; border: 0; }
.mw-parser-output h2 { font-size: 1.6rem; border-bottom: 2px solid var(--border); padding-bottom: .25rem; }
.mw-parser-output h3 { font-size: 1.25rem; }
.mw-parser-output h4 { font-size: 1.05rem; color: var(--muted); }

/* Links */
.mw-parser-output a {
  color: var(--link);
  text-decoration: none;
  transition: color .15s ease, box-shadow .15s ease;
}
.mw-parser-output a:hover,
.mw-parser-output a:focus {
  color: var(--link-hover);
  text-decoration: underline;
}
.mw-parser-output a:visited { opacity: 0.95; }

/* Inline elements */
.mw-parser-output p { margin: 0.7em 0; }
.mw-parser-output ul, .mw-parser-output ol { margin: 0.5em 0 1em 1.4em; }

/* Horizontal rule */
.mw-parser-output hr {
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--border), transparent);
  margin: 2rem 0;
}

/* ==== Header & navigation (Vector) ==== */
#mw-head, #mw-panel {
  background: var(--bg);
}
#mw-head .vector-menu-tabs,
#left-navigation, #right-navigation {
  border: 0 !important;
}
#p-personal {
  font-size: 0.95rem;
}
.vector-menu-tabs li.selected a,
.vector-menu-tabs a:hover {
  border: 0 !important;
  box-shadow: 0 2px 0 0 var(--brand) inset;
}

/* Sidebar polish */
#mw-panel .portal .body ul {
  padding-left: 0.75rem;
}
#mw-panel .portal h3 {
  color: var(--muted);
  letter-spacing: .3px;
}

/* ==== Table of Contents ==== */
#toc, .toc {
  background: var(--bg-soft);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 0.8rem 1rem;
  box-shadow: 0 1px 0 rgba(0,0,0,0.02);
}
.tocnumber { color: var(--brand-2); font-weight: 700; }
.toctogglecheckbox:checked ~ ul { display: none; }

/* ==== Wikitables & data tables ==== */
.wikitable, .mw-parser-output table {
  border: 1px solid var(--border);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border-radius: 12px;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
  background: var(--bg-soft);
  color: var(--text);
  border-bottom: 1px solid var(--border);
  padding: .6rem .8rem;
  text-align: left;
  font-weight: 700;
}
.wikitable > tr > td,
.wikitable > * > tr > td {
  border-top: 1px solid var(--border);
  padding: .55rem .8rem;
}
.wikitable tr:nth-child(even) td {
  background: color-mix(in srgb, var(--bg-soft) 40%, var(--bg) 60%);
}

/* Responsive tables */
.mw-parser-output table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
}

/* ==== Infobox (common class on many wikis) ==== */
.infobox,
table.infobox {
  float: right;
  width: 320px;
  margin: 0 0 1rem 1rem;
  background: var(--bg-soft);
  border: 1px solid var(--border);
  border-radius: 14px;
  overflow: hidden;
  font-size: 0.95rem;
}
.infobox th {
  background: linear-gradient(135deg, color-mix(in srgb, var(--brand) 20%, var(--bg) 80%), var(--bg-soft));
  color: var(--text);
  padding: .6rem .8rem;
}
.infobox td {
  padding: .55rem .8rem;
  border-top: 1px solid var(--border);
}
.infobox caption {
  caption-side: top;
  font-weight: 800;
  padding: .8rem;
  background: var(--brand);
  color: #fff;
}

/* ==== Code blocks & preformatted ==== */
pre, code, kbd, samp,
.mw-code, .mw-highlight pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
}
pre, .mw-code, .mw-highlight pre {
  background: var(--code-bg);
  color: var(--code-text);
  border-radius: 12px;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(255,255,255,0.05);
  overflow: auto;
}
code {
  background: color-mix(in srgb, var(--code-bg) 80%, var(--bg) 20%);
  color: var(--code-text);
  padding: .15rem .35rem;
  border-radius: 6px;
}

/* ==== Thumbnails, galleries & images ==== */
.thumb, .thumbinner {
  border: 0;
  background: transparent;
}
.thumbimage, .thumb img,
.gallerybox .thumb img {
  border-radius: 12px;
  display: block;
}
.thumbcaption {
  font-size: 0.9rem;
  color: var(--muted);
  margin-top: .35rem;
}

/* ==== Notices & message boxes ==== */
.messagebox,
.mw-message-box {
  border-radius: 10px;
  border: 1px solid var(--border);
  background: var(--bg-soft);
  padding: .8rem 1rem;
}
.mw-message-box-warning {
  border-color: #f7c244;
  background: color-mix(in srgb, #f7c244 10%, var(--bg) 90%);
}
.mw-message-box-error {
  border-color: #ff6b6b;
  background: color-mix(in srgb, #ff6b6b 10%, var(--bg) 90%);
}
.mw-message-box-success {
  border-color: #37c07a;
  background: color-mix(in srgb, #37c07a 10%, var(--bg) 90%);
}

/* ==== Buttons (OOUI + links styled as buttons) ==== */
a.mw-ui-button,
.mw-ui-button {
  border-radius: 10px !important;
  border: 1px solid var(--brand);
  background: var(--brand);
  color: #fff !important;
  padding: .45rem .85rem;
  font-weight: 700;
  box-shadow: 0 1px 0 rgba(0,0,0,0.05);
}
a.mw-ui-button:hover,
.mw-ui-button:hover {
  filter: brightness(1.05);
}
.mw-ui-button.mw-ui-quiet,
a.button-secondary {
  background: transparent;
  border-color: var(--brand-2);
  color: var(--brand-2) !important;
}
.mw-ui-button.mw-ui-quiet:hover,
a.button-secondary:hover {
  background: color-mix(in srgb, var(--brand-2) 12%, var(--bg) 88%);
}

/* ==== Search box & inputs ==== */
input, select, textarea {
  border-radius: 10px !important;
  border: 1px solid var(--border) !important;
  background: var(--bg);
  color: var(--text);
  padding: .5rem .6rem !important;
}
input:focus, select:focus, textarea:focus {
  outline: 2px solid color-mix(in srgb, var(--brand) 35%, transparent);
  border-color: var(--brand) !important;
}

/* ==== Footer ==== */
#footer {
  border-top: 1px solid var(--border);
  margin-top: 2rem;
  color: var(--muted);
}
#footer a { color: var(--muted); }
#footer a:hover { color: var(--link-hover); }

/* ==== Utilities ==== */
.badge {
  display: inline-block;
  font-size: .75rem;
  padding: .15rem .45rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--brand) 15%, var(--bg) 85%);
  color: var(--brand);
  border: 1px solid color-mix(in srgb, var(--brand) 30%, var(--bg) 70%);
}

/* Optional: highlight first section lead */
.mw-parser-output > p:first-of-type {
  font-size: 1.05rem;
}