Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:Main Page/styles.css

Template page
Revision as of 17:46, 10 August 2025 by Fred (talk | contribs)
/**
 * ComputerScience.wiki Main Page Styles
 * Based on MediaWiki-Common.css with card structure
 */

/* Main Page Components */
.mp-box {
    border: 1px solid #aaa; /* all colors overridden on specific elements in @media screen */
    padding: 0 0.5em 0.5em;
    margin-top: 4px;
}

.mp-h2, body.skin-timeless .mp-h2 {
    border: 1px solid #aaa; /* all colors overridden on specific elements in @media screen */
    margin: 0.5em 0;
    padding: 0.2em 0.4em;
    font-size: 120%;
    font-weight: bold;
    font-family: inherit;
}

.mp-later {
    font-size: 85%;
    font-weight: normal;
}

#mp-welcomecount {
    text-align: center;
    margin: 0.4em;
}

#mp-welcome {
    font-size: 162%;
    padding: 0.1em;
}

#mp-welcome h1, #mp-welcome .mw-heading1 {
    font-size: inherit;
    font-family: inherit;
    display: inline;
    border: none;
}

#mp-free {
    font-size: 95%;
}

#articlecount {
    font-size: 85%;
}

#articlecount > ul {
    margin: 0;
    padding: 0;
}

#articlecount > ul > li {
    margin: 0;
    display: inline;
}

#articlecount > ul > li::after {
    content: " · ";
    font-weight: bold;
}

#articlecount > ul > li:last-child::after {
    content: "";
}

/* Search Box */
.mp-search-container {
    max-width: 650px;
    margin: -24px auto 32px;
    position: relative;
    z-index: 5;
}

.mp-search-box {
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Category Card System */
.mp-category-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 15px 0;
}

.mp-category {
    flex: 1;
    min-width: calc(50% - 20px);
    box-sizing: border-box;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 10px;
}

@media (max-width: 768px) {
    .mp-category {
        min-width: 100%;
    }
}

.mp-category h3 {
    margin-top: 0;
    margin-bottom: 12px;
    font-size: 1.2rem;
}

.mp-category ul {
    margin: 0;
    padding-left: 20px;
}

.mp-category li {
    margin-bottom: 5px;
}

.mp-category li:last-child {
    margin-top: 8px;
}

/* clear fix */
.mp-contains-float::after {
    content: "";
    display: block;
    clear: both;
}

/* Layout adjustments */
@media (max-width: 875px) {
    /* We need to improve Template:POTD as used on the main page so that these
     * hacks aren't necessary */
    #mp-tfp table,
    #mp-tfp tr,
    #mp-tfp td,
    #mp-tfp tbody {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box;
    }

    #mp-tfp tr:first-child td:first-child a.mw-file-description {
        text-align: center;
        display: table;
        margin: 0 auto;
    }
    
    #articlecount > ul > li::after {
        content: "";
        font-weight: normal;
    }
    
    #articlecount > ul > li {
        display: block;
    }
}

@media (min-width: 875px) {
    #mp-upper {
        display: flex;
    }
    
    #mp-left {
        flex: 1 1 55%;
        margin-right: 2px;
    }
    
    #mp-right {
        flex: 1 1 45%;
        margin-left: 2px;
    }
}

/* Light theme colors from original MediaWiki-Common.css */
@media screen {
    #mp-topbanner {
        background-color: #f9f9f9;
        border-color: #ddd;
    }
    
    #mp-banner {
        background-color: #fffaf5;
        border-color: #f2e0ce;
    }
    
    #mp-left {
        background-color: #f5fffa;
        border-color: #cef2e0;
    }
    
    #mp-left .mp-h2 {
        background-color: #cef2e0;
        border-color: #a3bfb1;
    }
    
    #mp-right {
        background-color: #f5faff;
        border-color: #cedff2;
    }
    
    #mp-right .mp-h2 {
        background-color: #cedff2;
        border-color: #a3b0bf;
    }
    
    #mp-middle {
        background-color: #fff5fa;
        border-color: #f2cedd;
    }
    
    #mp-middle .mp-h2 {
        background-color: #f2cedd;
        border-color: #bfa3af;
    }
    
    #mp-lower {
        background-color: #faf5ff;
        border-color: #ddcef2;
    }
    
    #mp-lower .mp-h2 {
        background-color: #ddcef2;
        border-color: #afa3bf;
    }
    
    #mp-bottom {
        /* no background */
        border-color: #e2e2e2;
    }
    
    #mp-bottom .mp-h2 {
        background-color: #eee;
        border-color: #ddd;
    }

    /* Custom elements colors */
    .mp-search-box {
        background-color: #ffffff;
        border: 1px solid #dfe1e5;
    }
    
    /* Category cards */
    .mp-category {
        background-color: #ffffff;
        border: 1px solid #eaecef;
    }
    
    .mp-category h3 {
        color: #2e51a3;
    }
    
    .mp-category li:last-child {
        color: #2e51a3;
        font-weight: 500;
    }

    /* Dark mode */
    html.skin-theme-clientpref-night #mp-topbanner,
    .skin-citizen-dark #mp-topbanner {
        background-color: #171a1d;
        border-color: #676767;
    }
    
    html.skin-theme-clientpref-night #mp-banner,
    .skin-citizen-dark #mp-banner {
        background-color: #331a00;
        border-color: #663428;
    }
    
    html.skin-theme-clientpref-night #mp-left,
    .skin-citizen-dark #mp-left {
        background-color: #0b1e1c;
        border-color: #104437;
    }
    
    html.skin-theme-clientpref-night #mp-left .mp-h2,
    .skin-citizen-dark #mp-left .mp-h2 {
        background-color: #104437;
        border-color: #2f4d41;
    }
    
    html.skin-theme-clientpref-night #mp-right,
    .skin-citizen-dark #mp-right {
        background-color: #0d1a27;
        border-color: #082849;
    }
    
    html.skin-theme-clientpref-night #mp-right .mp-h2,
    .skin-citizen-dark #mp-right .mp-h2 {
        background-color: #082849;
        border-color: #a3b0bf;
    }
    
    html.skin-theme-clientpref-night #mp-middle,
    .skin-citizen-dark #mp-middle {
        background-color: #270e1a;
        border-color: #882c43;
    }
    
    html.skin-theme-clientpref-night #mp-middle .mp-h2,
    .skin-citizen-dark #mp-middle .mp-h2 {
        background-color: #882c43;
        border-color: #926c80;
    }
    
    html.skin-theme-clientpref-night #mp-lower,
    .skin-citizen-dark #mp-lower {
        background-color: #130e20;
        border-color: #7545ab;
    }
    
    html.skin-theme-clientpref-night #mp-lower .mp-h2,
    .skin-citizen-dark #mp-lower .mp-h2 {
        background-color: #7545ab;
        border-color: #afa3bf;
    }
    
    html.skin-theme-clientpref-night #mp-bottom,
    .skin-citizen-dark #mp-bottom {
        /* no background */
        border-color: #676767;
    }
    
    html.skin-theme-clientpref-night #mp-bottom .mp-h2,
    .skin-citizen-dark #mp-bottom .mp-h2 {
        background-color: #3d3d3d;
        border-color: #676767;
    }

    /* Dark mode for custom elements */
    html.skin-theme-clientpref-night .mp-search-box,
    .skin-citizen-dark .mp-search-box {
        background-color: #111827;
        border-color: #374151;
    }
    
    html.skin-theme-clientpref-night .mp-category,
    .skin-citizen-dark .mp-category {
        background-color: #111827;
        border-color: #374151;
    }
    
    html.skin-theme-clientpref-night .mp-category h3,
    .skin-citizen-dark .mp-category h3 {
        color: #8ab4f8;
    }
    
    html.skin-theme-clientpref-night .mp-category li:last-child,
    .skin-citizen-dark .mp-category li:last-child {
        color: #8ab4f8;
    }
}

/* OS night mode */
@media screen and (prefers-color-scheme: dark) {
    html.skin-theme-clientpref-os #mp-topbanner {
        background-color: #171a1d;
        border-color: #676767;
    }
    
    html.skin-theme-clientpref-os #mp-banner {
        background-color: #331a00;
        border-color: #663428;
    }
    
    html.skin-theme-clientpref-os #mp-left {
        background-color: #0b1e1c;
        border-color: #104437;
    }
    
    html.skin-theme-clientpref-os #mp-left .mp-h2 {
        background-color: #104437;
        border-color: #2f4d41;
    }
    
    html.skin-theme-clientpref-os #mp-right {
         background-color: #0d1a27;
         border-color: #082849;
    }
    
    html.skin-theme-clientpref-os #mp-right .mp-h2 {
        background-color: #082849;
        border-color: #a3b0bf;
    }
    
    html.skin-theme-clientpref-os #mp-middle {
        background-color: #270e1a;
        border-color: #882c43;
    }
    
    html.skin-theme-clientpref-os #mp-middle .mp-h2 {
        background-color: #882c43;
        border-color: #926c80;
    }
    
    html.skin-theme-clientpref-os #mp-lower {
        background-color: #130e20;
        border-color: #7545ab;
    }
    
    html.skin-theme-clientpref-os #mp-lower .mp-h2 {
        background-color: #7545ab;
        border-color: #afa3bf;
    }
    
    html.skin-theme-clientpref-os #mp-bottom {
        /* no background */
        border-color: #676767;
    }
    
    html.skin-theme-clientpref-os #mp-bottom .mp-h2 {
        background-color: #3d3d3d;
        border-color: #676767;
    }
    
    /* OS dark mode for custom elements */
    html.skin-theme-clientpref-os .mp-search-box {
        background-color: #111827;
        border-color: #374151;
    }
    
    html.skin-theme-clientpref-os .mp-category {
        background-color: #111827;
        border-color: #374151;
    }
    
    html.skin-theme-clientpref-os .mp-category h3 {
        color: #8ab4f8;
    }
    
    html.skin-theme-clientpref-os .mp-category li:last-child {
        color: #8ab4f8;
    }
}