MediaWiki:Common.css: Difference between revisions
Minimal common Tag: Replaced |
Full OSRS-style design system v1 |
||
| Line 1: | Line 1: | ||
/* Common. | /* ============================================================ | ||
WINDS OF VALEN WIKI — Common CSS | |||
Scoped under .wov-* prefix so nothing bleeds to default pages. | |||
Main Page layout based on OSRS Wiki aesthetic. | |||
============================================================ */ | |||
/* Main page | /* ---- Google Fonts ----------------------------------------- */ | ||
/* | @import url('https://fonts.googleapis.com/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400&family=Cinzel:wght@700&family=Inter:wght@400;600&display=swap'); | ||
/* ============================================================ | |||
GLOBAL WIKI OVERRIDES (body-level, theme tokens) | |||
============================================================ */ | |||
body { | |||
color-scheme: light; | |||
font-family: 'PT Serif', Georgia, 'Times New Roman', serif; | |||
} | |||
/* ---- Typography overrides --------------------------------- */ | |||
a { color: #936039; } | |||
a:hover { color: #52351e; text-decoration: underline; } | |||
h1, h2, h3, h4, h5, h6 { | |||
font-family: 'PT Serif', Georgia, serif; | |||
} | |||
/* ---- Wikitable styles (OSRS look) ------------------------- */ | |||
table.wikitable { | |||
background: #f1e7d3; | |||
border: 1px solid #a19277; | |||
color: #4a3c28; | |||
} | |||
table.wikitable > * > tr > th { | |||
background: #c9b688; | |||
border: 1px solid #a19277; | |||
color: #4a3c28; | |||
font-family: 'PT Serif', Georgia, serif; | |||
} | |||
table.wikitable > * > tr > td { | |||
background: #fcf6e8; | |||
border: 1px solid #a19277; | |||
} | |||
/* ============================================================ | |||
HIDE "Main Page" h1 HEADING ON MAIN PAGE ONLY | |||
(JS also does this; CSS is the instant fallback) | |||
============================================================ */ | |||
.page-Main_Page #firstHeading, | |||
.page-Main_Page .mw-first-heading { | |||
display: none !important; | |||
} | |||
/* Remove the top padding gap that appears when h1 is hidden */ | |||
.page-Main_Page #mw-content-text { | |||
margin-top: 0 !important; | |||
} | |||
.page-Main_Page .mw-body-content { | |||
padding-top: 6px !important; | |||
} | |||
/* ============================================================ | |||
MAIN PAGE — OUTER WRAPPER | |||
============================================================ */ | |||
.wov-main-page { | |||
font-family: 'PT Serif', Georgia, serif; | |||
color: #4a3c28; | |||
max-width: 100%; | |||
box-sizing: border-box; | |||
} | |||
/* ============================================================ | |||
WELCOME BOX | |||
============================================================ */ | |||
.wov-welcome-box { | |||
background: #fcf6e8; | |||
border: 1px solid #a19277; | |||
text-align: center; | |||
padding: 22px 24px 18px; | |||
margin-bottom: 14px; | |||
} | |||
.wov-welcome-title { | |||
font-family: 'PT Serif', Georgia, serif; | |||
font-size: 1.55em; | |||
font-weight: bold; | |||
color: #4a3c28; | |||
margin: 0 0 6px; | |||
line-height: 1.2; | |||
} | |||
.wov-welcome-sub { | |||
color: #6b5b45; | |||
font-size: 0.92em; | |||
margin: 0; | |||
line-height: 1.5; | |||
} | |||
.wov-welcome-sub a { color: #936039; } | |||
/* ============================================================ | |||
TWO-COLUMN LAYOUT GRID | |||
============================================================ */ | |||
.wov-layout-grid { | |||
display: flex; | |||
gap: 14px; | |||
align-items: flex-start; | |||
} | |||
.wov-main-col { | |||
flex: 1 1 0; | |||
min-width: 0; | |||
} | |||
.wov-side-col { | |||
width: 282px; | |||
flex-shrink: 0; | |||
flex-grow: 0; | |||
} | |||
/* ============================================================ | |||
PARCHMENT BOX — base component for every section | |||
============================================================ */ | |||
.wov-parchment-box { | |||
background: #f1e7d3; | |||
border: 1px solid #a19277; | |||
margin-bottom: 14px; | |||
overflow: hidden; | |||
} | |||
/* ============================================================ | |||
SECTION HEADER — dark serif with gold bottom line | |||
============================================================ */ | |||
.wov-section-header { | |||
font-family: 'PT Serif', Georgia, serif; | |||
font-size: 0.97em; | |||
font-weight: bold; | |||
color: #4a3c28; | |||
padding: 7px 14px 6px; | |||
border-bottom: 2px solid #c9a55a; | |||
background: #ede2cc; | |||
letter-spacing: 0.015em; | |||
display: flex; | |||
align-items: center; | |||
gap: 6px; | |||
} | |||
.wov-section-header-dark { | |||
font-family: 'PT Serif', Georgia, serif; | |||
font-size: 0.97em; | |||
font-weight: bold; | |||
color: #e8d8ff; | |||
padding: 8px 14px 7px; | |||
border-bottom: 1px solid rgba(255,255,255,0.18); | |||
letter-spacing: 0.015em; | |||
} | |||
/* ============================================================ | |||
LATEST UPDATES ROW — two cards side-by-side | |||
============================================================ */ | |||
.wov-updates-row { | |||
display: flex; | |||
gap: 0; | |||
} | |||
.wov-update-card { | |||
flex: 1; | |||
padding: 10px 14px 12px; | |||
border-right: 1px solid #a19277; | |||
background: #f8f2e4; | |||
} | |||
.wov-update-card:last-child { | |||
border-right: none; | |||
} | |||
.wov-update-tag { | |||
font-family: 'Inter', sans-serif; | |||
font-size: 0.71em; | |||
font-weight: 600; | |||
text-transform: uppercase; | |||
letter-spacing: 0.09em; | |||
color: #7a6848; | |||
margin-bottom: 5px; | |||
} | |||
.wov-update-title { | |||
font-size: 0.93em; | |||
font-weight: bold; | |||
line-height: 1.35; | |||
margin-bottom: 6px; | |||
} | |||
.wov-update-title a { | |||
color: #a61c1c !important; | |||
text-decoration: none; | |||
} | |||
.wov-update-title a:hover { | |||
text-decoration: underline; | |||
color: #7a1212 !important; | |||
} | |||
.wov-update-snippet { | |||
font-size: 0.84em; | |||
color: #5a4a34; | |||
margin: 0; | |||
line-height: 1.55; | |||
} | |||
/* ============================================================ | |||
CATEGORIES GRID — 4-column square cards | |||
============================================================ */ | |||
.wov-categories-grid { | |||
display: grid; | |||
grid-template-columns: repeat(4, 1fr); | |||
gap: 8px; | |||
padding: 10px; | |||
background: #f1e7d3; | |||
} | |||
.wov-cat-card { | |||
border: 1px solid #a19277; | |||
overflow: hidden; | |||
background: #eedfad; | |||
position: relative; | |||
} | |||
.wov-cat-img-box { | |||
background: #ffffff; | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
min-height: 90px; | |||
padding: 10px; | |||
} | |||
/* Target the actual img MediaWiki renders inside */ | |||
.wov-cat-img-box img, | |||
.wov-cat-img-box a img { | |||
max-width: 80px !important; | |||
max-height: 80px !important; | |||
width: auto !important; | |||
height: auto !important; | |||
object-fit: contain; | |||
display: block; | |||
} | |||
.wov-cat-label { | |||
background: #c9b688; | |||
border-top: 1px solid #a19277; | |||
padding: 5px 6px; | |||
text-align: center; | |||
font-size: 0.84em; | |||
font-weight: bold; | |||
color: #4a3c28; | |||
} | |||
.wov-cat-label a { | |||
color: #4a3c28 !important; | |||
text-decoration: none !important; | |||
font-weight: bold; | |||
} | |||
.wov-cat-label a:hover { | |||
color: #7a1212 !important; | |||
} | |||
/* ============================================================ | |||
POPULAR PAGES — 3-column dark button grid | |||
============================================================ */ | |||
.wov-popular-inner { | |||
padding: 10px; | |||
background: #ede2cc; | |||
} | |||
.wov-popular-grid { | |||
display: grid; | |||
grid-template-columns: repeat(3, 1fr); | |||
gap: 6px; | |||
} | |||
.wov-popular-btn { | |||
display: block; | |||
background: #5c4e38; | |||
border: 1px solid #3a301d; | |||
border-bottom: 2px solid #2a2214; | |||
color: #fff !important; | |||
font-family: 'Inter', 'PT Serif', sans-serif; | |||
font-size: 0.82em; | |||
font-weight: bold; | |||
text-align: center; | |||
padding: 9px 6px; | |||
text-decoration: none !important; | |||
line-height: 1.3; | |||
transition: background 0.12s ease, border-color 0.12s ease; | |||
cursor: pointer; | |||
} | |||
.wov-popular-btn:hover { | |||
background: #4a3c28 !important; | |||
color: #f0d890 !important; | |||
text-decoration: none !important; | |||
border-color: #2a2214; | |||
} | |||
/* ============================================================ | |||
SKILL TRAINING GRID | |||
============================================================ */ | |||
.wov-skills-inner { | |||
padding: 8px 10px 10px; | |||
} | |||
.wov-skills-grid { | |||
display: grid; | |||
grid-template-columns: repeat(3, 1fr); | |||
background: #fcf6e8; | |||
border: 1px solid #a19277; | |||
} | |||
.wov-skill-item { | |||
padding: 5px 10px; | |||
font-size: 0.85em; | |||
border-bottom: 1px solid #c9b688; | |||
border-right: 1px solid #c9b688; | |||
color: #4a3c28; | |||
display: flex; | |||
align-items: center; | |||
gap: 5px; | |||
} | |||
.wov-skill-item:nth-child(3n) { | |||
border-right: none; | |||
} | |||
.wov-skill-item img { | |||
width: 16px !important; | |||
height: 16px !important; | |||
object-fit: contain; | |||
vertical-align: middle; | |||
flex-shrink: 0; | |||
} | |||
.wov-skill-item a { | |||
color: #936039 !important; | |||
text-decoration: none; | |||
} | |||
.wov-skill-item a:hover { | |||
text-decoration: underline; | |||
} | |||
/* ============================================================ | |||
SIDEBAR WIDGETS | |||
============================================================ */ | |||
/* -- Wiki Statistics Widget -- */ | |||
.wov-widget-stats { | |||
background: #f1e7d3; | |||
border: 1px solid #a19277; | |||
margin-bottom: 12px; | |||
overflow: hidden; | |||
} | |||
.wov-stats-body { | |||
padding: 10px 14px; | |||
font-size: 0.86em; | |||
color: #4a3c28; | |||
line-height: 2; | |||
} | |||
.wov-stats-body dl { | |||
margin: 0; | |||
display: grid; | |||
grid-template-columns: auto 1fr; | |||
gap: 0 8px; | |||
} | |||
.wov-stats-body dt { | |||
font-weight: bold; | |||
color: #6b5b45; | |||
} | |||
.wov-stats-body dd { | |||
margin: 0; | |||
font-weight: bold; | |||
color: #4a3c28; | |||
text-align: right; | |||
} | |||
/* -- Discord / Community Widget -- */ | |||
.wov-discord-widget { | |||
background: linear-gradient(135deg, #1e3a6e 0%, #2b5797 60%, #1a306e 100%); | |||
border: 1px solid #16306e; | |||
margin-bottom: 12px; | |||
overflow: hidden; | |||
box-shadow: 0 2px 10px rgba(20,40,100,0.3); | |||
} | |||
.wov-discord-body { | |||
padding: 10px 14px 14px; | |||
} | |||
.wov-discord-desc { | |||
font-size: 0.84em; | |||
color: #b8cdf0; | |||
line-height: 1.6; | |||
margin-bottom: 10px; | |||
} | |||
.wov-discord-link { | |||
display: flex !important; | |||
align-items: center; | |||
justify-content: center; | |||
gap: 8px; | |||
background: #5865F2; | |||
border: 1px solid #4752c4; | |||
border-bottom: 2px solid #3341a8; | |||
border-radius: 4px; | |||
color: #fff !important; | |||
font-family: 'Inter', sans-serif; | |||
font-weight: bold; | |||
font-size: 0.87em; | |||
padding: 8px 14px; | |||
text-decoration: none !important; | |||
transition: background 0.15s ease; | |||
cursor: pointer; | |||
} | |||
.wov-discord-link:hover { | |||
background: #4752c4 !important; | |||
color: #fff !important; | |||
text-decoration: none !important; | |||
} | |||
.wov-discord-icon { | |||
width: 20px; | |||
height: 20px; | |||
flex-shrink: 0; | |||
} | |||
/* -- Help Improve Widget -- */ | |||
.wov-widget-help { | |||
background: #f1e7d3; | |||
border: 1px solid #a19277; | |||
margin-bottom: 12px; | |||
overflow: hidden; | |||
} | |||
.wov-help-body { | |||
padding: 8px 14px 12px; | |||
font-size: 0.85em; | |||
color: #4a3c28; | |||
line-height: 1.7; | |||
} | |||
.wov-help-body p { | |||
margin: 0 0 6px; | |||
} | |||
.wov-help-body ul { | |||
margin: 4px 0 0; | |||
padding: 0 0 0 14px; | |||
list-style: disc; | |||
} | |||
.wov-help-body ul li { | |||
margin-bottom: 1px; | |||
} | |||
.wov-help-body ul li a { | |||
color: #936039 !important; | |||
text-decoration: none; | |||
} | |||
.wov-help-body ul li a:hover { | |||
text-decoration: underline; | |||
} | |||
/* ============================================================ | |||
RESPONSIVE — collapse to single column | |||
============================================================ */ | |||
@media screen and (max-width: 800px) { | |||
.wov-layout-grid { | |||
flex-direction: column; | |||
} | |||
.wov-side-col { | |||
width: 100%; | |||
} | |||
.wov-categories-grid { | |||
grid-template-columns: repeat(2, 1fr); | |||
} | |||
.wov-popular-grid { | |||
grid-template-columns: repeat(2, 1fr); | |||
} | |||
.wov-updates-row { | |||
flex-direction: column; | |||
} | |||
.wov-update-card { | |||
border-right: none; | |||
border-bottom: 1px solid #a19277; | |||
} | |||
.wov-skills-grid { | |||
grid-template-columns: repeat(2, 1fr); | |||
} | |||
} | |||