MediaWiki:Timeless.css: Difference between revisions
OMNIVERSE
Created page with "→All CSS here will be loaded for users of the Timeless skin: →========================= Timeless-specific polish =========================: →Make main content feel more like a clean card: #content, .mw-body { border-radius: 12px; } →Add subtle separation for the content area (Timeless is fairly flat): #content { box-shadow: 0 1px 0 rgba(0,0,0,0.05); } →Table of contents polish: #toc, .toc { border: 1px solid rgba(0,0,0,0.12); border-r..." |
No edit summary |
||
| Line 1: | Line 1: | ||
/* | /* ========================================================= | ||
OMNIVERSE-style Dark Theme (Timeless) | |||
Timeless | Paste into: MediaWiki:Timeless.css | ||
========================= */ | ========================================================= */ | ||
/* | /* ---------- Theme tokens ---------- */ | ||
#content, | :root { | ||
.mw-body { | --bg: #0f141c; /* page background */ | ||
--panel: #1a2230; /* card background */ | |||
--panel-2: #202a3a; /* slightly brighter panels */ | |||
--border: rgba(255,255,255,0.08); | |||
--text: rgba(255,255,255,0.88); | |||
--muted: rgba(255,255,255,0.65); | |||
--accent: #f2b233; /* gold accent */ | |||
--accent-2: #ffd36a; /* hover */ | |||
--shadow: 0 10px 30px rgba(0,0,0,0.35); | |||
--radius: 14px; | |||
} | |||
/* ---------- Global background / text ---------- */ | |||
html, body { | |||
background: var(--bg) !important; | |||
color: var(--text); | |||
} | |||
.mw-parser-output, | |||
.mw-body-content, | |||
#mw-content-text { | |||
color: var(--text); | |||
} | |||
/* ---------- Links (gold accent, no validator warnings) ---------- */ | |||
a { | |||
color: var(--accent); | |||
text-decoration: none; | |||
} | |||
a:hover, a:focus { | |||
color: var(--accent-2); | |||
text-decoration: underline; | |||
} | |||
/* ---------- Main content “card” ---------- */ | |||
/* Timeless usually wraps content in #content and/or .mw-body */ | |||
#content, .mw-body, #mw-content-text { | |||
background: transparent; | |||
} | } | ||
/* | /* This targets the primary content container and makes it a card. | ||
If one selector doesn’t apply on your install, another usually will. */ | |||
#content { | #content { | ||
box-shadow: | background: var(--panel); | ||
border: 1px solid var(--border); | |||
border-radius: var(--radius); | |||
box-shadow: var(--shadow); | |||
padding: 18px 20px; | |||
} | |||
/* Improve paragraph readability */ | |||
.mw-parser-output { | |||
line-height: 1.65; | |||
font-size: 16px; | |||
} | |||
.mw-body-content { | |||
max-width: 1100px; /* wider, like your forum panels */ | |||
} | |||
/* ---------- Headings (forum-like, with gold rule) ---------- */ | |||
.mw-parser-output h1, | |||
.mw-parser-output h2, | |||
.mw-parser-output h3 { | |||
color: rgba(255,255,255,0.92); | |||
letter-spacing: 0.2px; | |||
} | |||
.mw-parser-output h2 { | |||
border-bottom: 1px solid var(--border); | |||
padding-bottom: 8px; | |||
position: relative; | |||
} | |||
.mw-parser-output h2::after { | |||
content: ""; | |||
display: block; | |||
width: 36px; | |||
height: 3px; | |||
margin-top: 8px; | |||
background: var(--accent); | |||
border-radius: 99px; | |||
} | |||
/* ---------- TOC / Category boxes become cards ---------- */ | |||
#toc, .toc, .catlinks { | |||
background: var(--panel-2); | |||
border: 1px solid var(--border); | |||
border-radius: var(--radius); | |||
padding: 12px 14px; | |||
} | } | ||
/* | /* ---------- Tables become “forum panels” ---------- */ | ||
.wikitable { | |||
border: 1px solid rgba(0,0, | background: var(--panel-2); | ||
border-radius: | border: 1px solid var(--border); | ||
border-radius: var(--radius); | |||
overflow: hidden; | |||
border-collapse: separate; | |||
border-spacing: 0; | |||
} | |||
.wikitable th { | |||
background: rgba(255,255,255,0.04); | |||
color: rgba(255,255,255,0.90); | |||
font-weight: 600; | |||
} | |||
.wikitable td { | |||
color: rgba(255,255,255,0.82); | |||
} | |||
.wikitable > * > tr > th, | |||
.wikitable > * > tr > td { | |||
padding: 10px 12px; | |||
border-top: 1px solid rgba(255,255,255,0.06); | |||
} | |||
.wikitable > * > tr:first-child > th, | |||
.wikitable > * > tr:first-child > td { | |||
border-top: 0; | |||
} | |||
/* ---------- Code blocks ---------- */ | |||
.mw-parser-output pre, | |||
.mw-parser-output .mw-code { | |||
background: #0c1118; | |||
border: 1px solid rgba(255,255,255,0.10); | |||
border-radius: 12px; | |||
padding: 12px 14px; | padding: 12px 14px; | ||
overflow-x: auto; | |||
} | } | ||
/* | .mw-parser-output code { | ||
background: rgba(255,255,255,0.06); | |||
border: 1px solid rgba( | border-radius: 6px; | ||
padding: 0.12em 0.35em; | |||
} | |||
/* ---------- Inputs / search / buttons (make them match) ---------- */ | |||
input[type="text"], | |||
input[type="search"], | |||
input[type="password"], | |||
textarea, | |||
select { | |||
background: #0c1118; | |||
border: 1px solid rgba(255,255,255,0.12); | |||
color: var(--text); | |||
border-radius: 10px; | border-radius: 10px; | ||
padding: 10px | padding: 8px 10px; | ||
} | |||
input:focus, textarea:focus, select:focus { | |||
outline: none; | |||
border-color: rgba(242,178,51,0.65); | |||
box-shadow: 0 0 0 3px rgba(242,178,51,0.15); | |||
} | } | ||
/* | /* Buttons used by some MW UI elements */ | ||
. | button, | ||
.mw-ui-button, | |||
input[type="submit"], | |||
input[type="button"] { | |||
background: var(--accent); | |||
border: 0; | |||
color: #141a22; | |||
border-radius: 10px; | border-radius: 10px; | ||
padding: 8px 12px; | |||
font-weight: 700; | |||
} | |||
button:hover, | |||
.mw-ui-button:hover, | |||
input[type="submit"]:hover, | |||
input[type="button"]:hover { | |||
background: var(--accent-2); | |||
} | } | ||
. | /* ---------- Optional: simple “notice box” classes you can use in pages ---------- */ | ||
padding: | .mw-parser-output .notice { | ||
background: var(--panel-2); | |||
border: 1px solid var(--border); | |||
border-left: 4px solid var(--accent); | |||
border-radius: var(--radius); | |||
padding: 12px 14px; | |||
margin: 12px 0; | |||
} | } | ||
.mw-parser-output .notice-title { | |||
font-weight: 700; | |||
color: rgba(255,255,255,0.92); | |||
margin-bottom: 6px; | |||
} | } | ||
Revision as of 01:37, 19 January 2026
/* =========================================================
OMNIVERSE-style Dark Theme (Timeless)
Paste into: MediaWiki:Timeless.css
========================================================= */
/* ---------- Theme tokens ---------- */
:root {
--bg: #0f141c; /* page background */
--panel: #1a2230; /* card background */
--panel-2: #202a3a; /* slightly brighter panels */
--border: rgba(255,255,255,0.08);
--text: rgba(255,255,255,0.88);
--muted: rgba(255,255,255,0.65);
--accent: #f2b233; /* gold accent */
--accent-2: #ffd36a; /* hover */
--shadow: 0 10px 30px rgba(0,0,0,0.35);
--radius: 14px;
}
/* ---------- Global background / text ---------- */
html, body {
background: var(--bg) !important;
color: var(--text);
}
.mw-parser-output,
.mw-body-content,
#mw-content-text {
color: var(--text);
}
/* ---------- Links (gold accent, no validator warnings) ---------- */
a {
color: var(--accent);
text-decoration: none;
}
a:hover, a:focus {
color: var(--accent-2);
text-decoration: underline;
}
/* ---------- Main content “card” ---------- */
/* Timeless usually wraps content in #content and/or .mw-body */
#content, .mw-body, #mw-content-text {
background: transparent;
}
/* This targets the primary content container and makes it a card.
If one selector doesn’t apply on your install, another usually will. */
#content {
background: var(--panel);
border: 1px solid var(--border);
border-radius: var(--radius);
box-shadow: var(--shadow);
padding: 18px 20px;
}
/* Improve paragraph readability */
.mw-parser-output {
line-height: 1.65;
font-size: 16px;
}
.mw-body-content {
max-width: 1100px; /* wider, like your forum panels */
}
/* ---------- Headings (forum-like, with gold rule) ---------- */
.mw-parser-output h1,
.mw-parser-output h2,
.mw-parser-output h3 {
color: rgba(255,255,255,0.92);
letter-spacing: 0.2px;
}
.mw-parser-output h2 {
border-bottom: 1px solid var(--border);
padding-bottom: 8px;
position: relative;
}
.mw-parser-output h2::after {
content: "";
display: block;
width: 36px;
height: 3px;
margin-top: 8px;
background: var(--accent);
border-radius: 99px;
}
/* ---------- TOC / Category boxes become cards ---------- */
#toc, .toc, .catlinks {
background: var(--panel-2);
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 12px 14px;
}
/* ---------- Tables become “forum panels” ---------- */
.wikitable {
background: var(--panel-2);
border: 1px solid var(--border);
border-radius: var(--radius);
overflow: hidden;
border-collapse: separate;
border-spacing: 0;
}
.wikitable th {
background: rgba(255,255,255,0.04);
color: rgba(255,255,255,0.90);
font-weight: 600;
}
.wikitable td {
color: rgba(255,255,255,0.82);
}
.wikitable > * > tr > th,
.wikitable > * > tr > td {
padding: 10px 12px;
border-top: 1px solid rgba(255,255,255,0.06);
}
.wikitable > * > tr:first-child > th,
.wikitable > * > tr:first-child > td {
border-top: 0;
}
/* ---------- Code blocks ---------- */
.mw-parser-output pre,
.mw-parser-output .mw-code {
background: #0c1118;
border: 1px solid rgba(255,255,255,0.10);
border-radius: 12px;
padding: 12px 14px;
overflow-x: auto;
}
.mw-parser-output code {
background: rgba(255,255,255,0.06);
border-radius: 6px;
padding: 0.12em 0.35em;
}
/* ---------- Inputs / search / buttons (make them match) ---------- */
input[type="text"],
input[type="search"],
input[type="password"],
textarea,
select {
background: #0c1118;
border: 1px solid rgba(255,255,255,0.12);
color: var(--text);
border-radius: 10px;
padding: 8px 10px;
}
input:focus, textarea:focus, select:focus {
outline: none;
border-color: rgba(242,178,51,0.65);
box-shadow: 0 0 0 3px rgba(242,178,51,0.15);
}
/* Buttons used by some MW UI elements */
button,
.mw-ui-button,
input[type="submit"],
input[type="button"] {
background: var(--accent);
border: 0;
color: #141a22;
border-radius: 10px;
padding: 8px 12px;
font-weight: 700;
}
button:hover,
.mw-ui-button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
background: var(--accent-2);
}
/* ---------- Optional: simple “notice box” classes you can use in pages ---------- */
.mw-parser-output .notice {
background: var(--panel-2);
border: 1px solid var(--border);
border-left: 4px solid var(--accent);
border-radius: var(--radius);
padding: 12px 14px;
margin: 12px 0;
}
.mw-parser-output .notice-title {
font-weight: 700;
color: rgba(255,255,255,0.92);
margin-bottom: 6px;
}
