Jump to content

Template:NavCard/styles.css: Difference between revisions

From LumiWiki
No edit summary
No edit summary
Line 3: Line 3:
  * LumiWiki Navigation Cards
  * LumiWiki Navigation Cards
  * MediaWiki 1.46 / Vector 2022
  * MediaWiki 1.46 / Vector 2022
*
* Modern dark gaming-wiki styling.
* Designed for MediaWiki TemplateStyles.
  */
  */


Line 51: Line 54:
     overflow: hidden;
     overflow: hidden;


     background: #303b4b;
     background: linear-gradient(
        to bottom,
        #303b4b,
        #202834
    );
}
}


Line 67: Line 74:
     object-fit: cover;
     object-fit: cover;


     transition: transform 0.35s ease;
     transition:
        transform 0.35s ease,
        filter 0.35s ease;
}
}


/* Subtle image zoom */
/* Image zoom and brightness */


.lumi-navcard:hover .lumi-navcard-image img {
.lumi-navcard:hover .lumi-navcard-image img {
     transform: scale(1.045);
     transform: scale(1.045);
    filter: brightness(1.08);
}
}


Line 169: Line 179:
     .lumi-navcard:hover .lumi-navcard-image img {
     .lumi-navcard:hover .lumi-navcard-image img {
         transform: none;
         transform: none;
        filter: none;
     }
     }
}
}

Revision as of 22:49, 13 November 2026

/*
 * LumiWiki Navigation Cards
 * MediaWiki 1.46 / Vector 2022
 *
 * Modern dark gaming-wiki styling.
 * Designed for MediaWiki TemplateStyles.
 */

/* ==========================================
   1. MAIN CARD CONTAINER
   ========================================== */

.lumi-navcard {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;

    background: #202834;
    color: #f5f7fa;

    border: 1px solid #394657;
    border-radius: 12px;

    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

/* ==========================================
   2. HOVER INTERACTION
   ========================================== */

.lumi-navcard:hover {
    border-color: #55c8ff;

    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.25),
        0 0 14px rgba(85, 200, 255, 0.15);

    transform: translateY(-4px);
}

/* ==========================================
   3. CARD IMAGE
   ========================================== */

.lumi-navcard-image {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;

    background: linear-gradient(
        to bottom,
        #303b4b,
        #202834
    );
}

.lumi-navcard-image a {
    display: block;
    width: 100%;
    height: 100%;
}

.lumi-navcard-image img {
    display: block;
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.35s ease,
        filter 0.35s ease;
}

/* Image zoom and brightness */

.lumi-navcard:hover .lumi-navcard-image img {
    transform: scale(1.045);
    filter: brightness(1.08);
}

/* ==========================================
   4. CARD CONTENT
   ========================================== */

.lumi-navcard-content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;

    padding: 18px;
    gap: 9px;
}

/* ==========================================
   5. CARD TITLE
   ========================================== */

.lumi-navcard-title {
    font-size: 1.12em;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.3;
}

.lumi-navcard-title a {
    color: #f5f7fa;
    text-decoration: none;
}

.lumi-navcard-title a:hover {
    color: #55c8ff;
    text-decoration: none;
}

/* ==========================================
   6. CARD DESCRIPTION
   ========================================== */

.lumi-navcard-description {
    color: #b9c5d4;
    font-size: 0.9em;
    line-height: 1.55;
}

/* ==========================================
   7. BOTTOM NAVIGATION LINK
   ========================================== */

.lumi-navcard-link {
    margin-top: auto;
    padding-top: 12px;

    font-size: 0.8em;
    font-weight: 700;
    letter-spacing: 0.025em;
}

.lumi-navcard-link a {
    color: #55c8ff;
    text-decoration: none;
}

.lumi-navcard-link a:hover {
    color: #a6e5ff;
    text-decoration: underline;
}

/* ==========================================
   8. KEYBOARD NAVIGATION
   ========================================== */

.lumi-navcard a:focus {
    outline: 2px solid #55c8ff;
    outline-offset: 2px;
}

/* ==========================================
   9. REDUCED MOTION ACCESSIBILITY
   ========================================== */

@media (prefers-reduced-motion: reduce) {

    .lumi-navcard,
    .lumi-navcard-image img {
        transition: none;
    }

    .lumi-navcard:hover {
        transform: none;
    }

    .lumi-navcard:hover .lumi-navcard-image img {
        transform: none;
        filter: none;
    }
}