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/Sandbox/featured box/styles.css: Difference between revisions

Template page
Xeravax (talk | contribs)
No edit summary
Xeravax (talk | contribs)
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* 2x2 grid for featured boxes (wrapper on Main_Page) */
/* Two columns: left (Did you know + Featured tutorial), right (Component + Node of the day).
  Boxes with space above them move up within their column. */
.resonite-featured-grid {
.resonite-featured-grid {
     display: grid;
     display: grid;
Line 5: Line 6:
     gap: 1em;
     gap: 1em;
     margin: 1.5em 0 2em 0;
     margin: 1.5em 0 2em 0;
}
.resonite-featured-grid__col {
    display: flex;
    flex-direction: column;
    gap: 1em;
    min-width: 0;
}
.resonite-featured-grid__col > .resonite-featured-box {
    flex: 1;
}
}


Line 13: Line 25:
}
}


/* Single featured box: full color fill + brighter border (match cards) */
/* Single featured box: full color fill + brighter border (match cards), size to content */
.resonite-featured-box {
.resonite-featured-box {
     background: #161b22;
     background: var(--featured-box-bg, #161b22);
     border-radius: 8px;
     border-radius: 8px;
     padding: 1.25em;
     padding: 1.25em;
     border: 2px solid #30363d;
     border: 2px solid var(--featured-box-border, #30363d);
    height: fit-content;
}
}


.resonite-featured-box__icon {
.resonite-featured-box__header {
    width: 2.5em;
    height: 2.5em;
    border-radius: 50%;
     display: flex;
     display: flex;
     align-items: center;
     align-items: center;
     justify-content: center;
     gap: 0.5em;
     margin-bottom: 0.75em;
     margin-bottom: 0.5em;
}
 
.resonite-featured-box__icon {
     font-size: 1.25rem;
     font-size: 1.25rem;
    color: #fff;
     line-height: 1;
     line-height: 1;
    flex-shrink: 0;
}
.resonite-featured-box__icon img {
    max-height: 1.15em;
    width: auto;
    vertical-align: middle;
}
}


Line 37: Line 56:
     font-size: 1.1rem;
     font-size: 1.1rem;
     font-weight: bold;
     font-weight: bold;
     color: #fff;
     color: var(--featured-box-title, #fff);
     margin: 0 0 0.5em 0;
     margin: 0;
}
}


.resonite-featured-box__content {
.resonite-featured-box__content {
     font-size: 0.9rem;
     font-size: 0.9rem;
     color: #c9d1d9;
     color: var(--featured-box-content, #c9d1d9);
     line-height: 1.5;
     line-height: 1.5;
}
}
Line 50: Line 69:
     margin: 0.5em 0 0 0;
     margin: 0.5em 0 0 0;
     padding-left: 1.25em;
     padding-left: 1.25em;
    list-style-type: disc;
    list-style-position: outside;
}
}


.resonite-featured-box__content a {
.resonite-featured-box__content a {
     color: #58a6ff;
     color: var(--featured-box-link, #58a6ff);
}
}


/* Color variants: full fill + brighter border */
/* Color variants: full fill + brighter border */
.resonite-featured-box--green {
.resonite-featured-box--green {
     background: #1a2e1a;
     background: var(--featured-box-green-bg, #1a2e1a);
     border-color: #3fb950;
     border-color: var(--featured-box-green-border, #3fb950);
}
.resonite-featured-box--green .resonite-featured-box__icon {
    background: #3fb950;
}
}


.resonite-featured-box--orange {
.resonite-featured-box--orange {
     background: #3b2e25;
     background: var(--featured-box-orange-bg, #3b2e25);
     border-color: #664c38;
     border-color: var(--featured-box-orange-border, #664c38);
}
.resonite-featured-box--orange .resonite-featured-box__icon {
    background: #f0883e;
}
}


.resonite-featured-box--teal {
.resonite-featured-box--teal {
     background: #1a2d2f;
     background: var(--featured-box-teal-bg, #1a2d2f);
     border-color: #39c5cf;
     border-color: var(--featured-box-teal-border, #39c5cf);
}
}
.resonite-featured-box--teal .resonite-featured-box__icon {
 
     background: #39c5cf;
.resonite-featured-box--yellow {
    background: var(--featured-box-yellow-bg, #3d3520);
     border-color: var(--featured-box-yellow-border, #d4a72c);
}
}


.resonite-featured-box--yellow {
/* Light mode: lighter backgrounds and darker text.
     background: #3d3520;
  Per MediaWiki recommendations: support explicit preference (skin-theme-clientpref-day)
     border-color: #d4a72c;
  and automatic/OS mode (skin-theme-clientpref-os + prefers-color-scheme: light). */
@media screen {
    html.skin-theme-clientpref-day .resonite-featured-box__icon img {
        filter: invert(1);
    }
    html.skin-theme-clientpref-day .resonite-featured-box {
        --featured-box-bg: #f6f8fa;
        --featured-box-border: #d0d7de;
        --featured-box-title: #24292f;
        --featured-box-content: #57606a;
        --featured-box-link: #0969da;
    }
    html.skin-theme-clientpref-day .resonite-featured-box--green {
        --featured-box-green-bg: #dafbe1;
        --featured-box-green-border: #3fb950;
    }
     html.skin-theme-clientpref-day .resonite-featured-box--orange {
        --featured-box-orange-bg: #fff8c5;
        --featured-box-orange-border: #9a6700;
     }
    html.skin-theme-clientpref-day .resonite-featured-box--teal {
        --featured-box-teal-bg: #cffaff;
        --featured-box-teal-border: #39c5cf;
    }
    html.skin-theme-clientpref-day .resonite-featured-box--yellow {
        --featured-box-yellow-bg: #f8e3a1;
        --featured-box-yellow-border: #d4a72c;
    }
}
}
.resonite-featured-box--yellow .resonite-featured-box__icon {
@media screen and (prefers-color-scheme: light) {
     background: #d4a72c;
    html.skin-theme-clientpref-os .resonite-featured-box__icon img {
        filter: invert(1);
    }
    html.skin-theme-clientpref-os .resonite-featured-box {
        --featured-box-bg: #f6f8fa;
        --featured-box-border: #d0d7de;
        --featured-box-title: #24292f;
        --featured-box-content: #57606a;
        --featured-box-link: #0969da;
    }
    html.skin-theme-clientpref-os .resonite-featured-box--green {
        --featured-box-green-bg: #dafbe1;
        --featured-box-green-border: #3fb950;
    }
    html.skin-theme-clientpref-os .resonite-featured-box--orange {
        --featured-box-orange-bg: #fff8c5;
        --featured-box-orange-border: #9a6700;
    }
    html.skin-theme-clientpref-os .resonite-featured-box--teal {
        --featured-box-teal-bg: #cffaff;
        --featured-box-teal-border: #39c5cf;
     }
    html.skin-theme-clientpref-os .resonite-featured-box--yellow {
        --featured-box-yellow-bg: #f8e3a1;
        --featured-box-yellow-border: #d4a72c;
    }
}
}

Latest revision as of 23:25, 3 February 2026

/* Two columns: left (Did you know + Featured tutorial), right (Component + Node of the day).
   Boxes with space above them move up within their column. */
.resonite-featured-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1em;
    margin: 1.5em 0 2em 0;
}

.resonite-featured-grid__col {
    display: flex;
    flex-direction: column;
    gap: 1em;
    min-width: 0;
}

.resonite-featured-grid__col > .resonite-featured-box {
    flex: 1;
}

@media (max-width: 600px) {
    .resonite-featured-grid {
        grid-template-columns: 1fr;
    }
}

/* Single featured box: full color fill + brighter border (match cards), size to content */
.resonite-featured-box {
    background: var(--featured-box-bg, #161b22);
    border-radius: 8px;
    padding: 1.25em;
    border: 2px solid var(--featured-box-border, #30363d);
    height: fit-content;
}

.resonite-featured-box__header {
    display: flex;
    align-items: center;
    gap: 0.5em;
    margin-bottom: 0.5em;
}

.resonite-featured-box__icon {
    font-size: 1.25rem;
    line-height: 1;
    flex-shrink: 0;
}

.resonite-featured-box__icon img {
    max-height: 1.15em;
    width: auto;
    vertical-align: middle;
}

.resonite-featured-box__title {
    font-size: 1.1rem;
    font-weight: bold;
    color: var(--featured-box-title, #fff);
    margin: 0;
}

.resonite-featured-box__content {
    font-size: 0.9rem;
    color: var(--featured-box-content, #c9d1d9);
    line-height: 1.5;
}

.resonite-featured-box__content ul {
    margin: 0.5em 0 0 0;
    padding-left: 1.25em;
    list-style-type: disc;
    list-style-position: outside;
}

.resonite-featured-box__content a {
    color: var(--featured-box-link, #58a6ff);
}

/* Color variants: full fill + brighter border */
.resonite-featured-box--green {
    background: var(--featured-box-green-bg, #1a2e1a);
    border-color: var(--featured-box-green-border, #3fb950);
}

.resonite-featured-box--orange {
    background: var(--featured-box-orange-bg, #3b2e25);
    border-color: var(--featured-box-orange-border, #664c38);
}

.resonite-featured-box--teal {
    background: var(--featured-box-teal-bg, #1a2d2f);
    border-color: var(--featured-box-teal-border, #39c5cf);
}

.resonite-featured-box--yellow {
    background: var(--featured-box-yellow-bg, #3d3520);
    border-color: var(--featured-box-yellow-border, #d4a72c);
}

/* Light mode: lighter backgrounds and darker text.
   Per MediaWiki recommendations: support explicit preference (skin-theme-clientpref-day)
   and automatic/OS mode (skin-theme-clientpref-os + prefers-color-scheme: light). */
@media screen {
    html.skin-theme-clientpref-day .resonite-featured-box__icon img {
        filter: invert(1);
    }
    html.skin-theme-clientpref-day .resonite-featured-box {
        --featured-box-bg: #f6f8fa;
        --featured-box-border: #d0d7de;
        --featured-box-title: #24292f;
        --featured-box-content: #57606a;
        --featured-box-link: #0969da;
    }
    html.skin-theme-clientpref-day .resonite-featured-box--green {
        --featured-box-green-bg: #dafbe1;
        --featured-box-green-border: #3fb950;
    }
    html.skin-theme-clientpref-day .resonite-featured-box--orange {
        --featured-box-orange-bg: #fff8c5;
        --featured-box-orange-border: #9a6700;
    }
    html.skin-theme-clientpref-day .resonite-featured-box--teal {
        --featured-box-teal-bg: #cffaff;
        --featured-box-teal-border: #39c5cf;
    }
    html.skin-theme-clientpref-day .resonite-featured-box--yellow {
        --featured-box-yellow-bg: #f8e3a1;
        --featured-box-yellow-border: #d4a72c;
    }
}
@media screen and (prefers-color-scheme: light) {
    html.skin-theme-clientpref-os .resonite-featured-box__icon img {
        filter: invert(1);
    }
    html.skin-theme-clientpref-os .resonite-featured-box {
        --featured-box-bg: #f6f8fa;
        --featured-box-border: #d0d7de;
        --featured-box-title: #24292f;
        --featured-box-content: #57606a;
        --featured-box-link: #0969da;
    }
    html.skin-theme-clientpref-os .resonite-featured-box--green {
        --featured-box-green-bg: #dafbe1;
        --featured-box-green-border: #3fb950;
    }
    html.skin-theme-clientpref-os .resonite-featured-box--orange {
        --featured-box-orange-bg: #fff8c5;
        --featured-box-orange-border: #9a6700;
    }
    html.skin-theme-clientpref-os .resonite-featured-box--teal {
        --featured-box-teal-bg: #cffaff;
        --featured-box-teal-border: #39c5cf;
    }
    html.skin-theme-clientpref-os .resonite-featured-box--yellow {
        --featured-box-yellow-bg: #f8e3a1;
        --featured-box-yellow-border: #d4a72c;
    }
}