MediaWiki:Common.css

From Lenn's Fun Stuff

Revision as of 03:53, 18 March 2026 by LennLeaf (talk | contribs)

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.
/* Version 26.0 - Exact Miraheze Reconstruction
   Fixed: Desktop Infobox Floats, Featured Box Alignment, and Global Typography
*/

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@700&family=Crimson+Pro:wght@400;700&display=swap');

:root {
    --kh-green: #3e5a47;
    --kh-yellow: #ffd700;
    --miraheze-white: #ffffff;
    --miraheze-border: #dcdcdc;
}

/* --- 1. CORE CONTENT WRAPPER --- */
body {
    font-family: 'Crimson Pro', serif !important;
    background-color: #1a1a1a !important; 
}

#content, .mw-body {
    background-color: var(--miraheze-white) !important;
    border: 1px solid var(--miraheze-border) !important;
    padding: 2em !important; /* Increased padding for desktop breathing room */
    margin: 20px auto !important;
    max-width: 1200px !important;
    box-sizing: border-box;
    overflow: hidden; /* Prevents floated infoboxes from breaking the container */
}

/* Fix for misaligned text in Featured World / Content Boxes */
.mw-parser-output {
    text-align: left !important;
}

/* Force standard margins on all text elements inside lore boxes */
.mw-parser-output p, 
.mw-parser-output div {
    margin-block-start: 0.5em;
    margin-block-end: 0.5em;
}

/* --- 2. HEADINGS --- */
h1, h2, h3, .firstHeading {
    font-family: 'Cinzel', serif !important;
    color: var(--kh-green) !important;
    border-bottom: 2px solid var(--kh-green) !important;
    font-weight: 700 !important;
    clear: both; /* Ensures headers don't get caught on infoboxes */
}

/* --- 3. THE INFOBOX (DESKTOP PRECISION) --- */
.portable-infobox {
    background-color: #fff !important;
    border: 1px solid var(--miraheze-border) !important;
    width: 300px !important;
    float: right !important;
    margin: 0 0 1.5em 1.5em !important;
    padding: 0 !important;
    font-size: 0.95em !important;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.05) !important;
}

/* Stretch Titles/Headers to 100% width */
.portable-infobox .pi-title, 
.portable-infobox .pi-header {
    width: 100% !important;
    box-sizing: border-box !important;
    font-family: 'Cinzel', serif !important;
    text-align: center !important;
}

.portable-infobox .pi-title {
    background-color: var(--kh-yellow) !important;
    color: #2d4234 !important;
    padding: 12px 5px !important;
    font-size: 1.2em !important;
}

.portable-infobox .pi-header {
    background-color: var(--kh-green) !important;
    color: #fff !important;
    padding: 8px 5px !important;
}

/* Data Grid Styling */
.pi-item.pi-data {
    display: table !important; /* Use table-style for perfect label/value alignment */
    width: 100% !important;
    border-bottom: 1px solid #eee !important;
}

.pi-data-label, .pi-data-value {
    display: table-cell !important;
    padding: 8px !important;
    vertical-align: top !important;
}

.pi-data-label {
    width: 40% !important;
    background-color: #f9f9f9 !important;
    font-weight: 700 !important;
    border-right: 1px solid #eee !important;
}

/* --- 4. MOBILE OVERRIDE --- */
@media screen and (max-width: 768px) {
    #content, .mw-body {
        padding: 15px !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .portable-infobox {
        float: none !important;
        width: 100% !important;
        margin: 10px 0 !important;
    }
    
    .pi-item.pi-data {
        display: block !important;
    }
    
    .pi-data-label, .pi-data-value {
        display: block !important;
        width: 100% !important;
        border-right: none !important;
    }
}