Template:NavCard/styles.css: Difference between revisions
Appearance
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
/* | |||
* LumiWiki Navigation Cards | |||
* MediaWiki 1.46 / Vector 2022 | |||
*/ | |||
/* ========================================== | |||
1. MAIN CARD CONTAINER | |||
========================================== */ | |||
.lumi-navcard { | .lumi-navcard { | ||
| Line 5: | Line 14: | ||
height: 100%; | height: 100%; | ||
overflow: hidden; | overflow: hidden; | ||
background: #202834; | |||
color: #f5f7fa; | |||
transition: border-color 0. | 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 { | .lumi-navcard:hover { | ||
border-color: # | border-color: #55c8ff; | ||
transform: translateY(- | |||
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 { | .lumi-navcard-image { | ||
position: relative; | |||
width: 100%; | width: 100%; | ||
aspect-ratio: 16 / 9; | aspect-ratio: 16 / 9; | ||
overflow: hidden; | overflow: hidden; | ||
background: # | |||
background: #303b4b; | |||
} | } | ||
| Line 35: | Line 64: | ||
width: 100%; | width: 100%; | ||
height: 100%; | height: 100%; | ||
object-fit: cover; | object-fit: cover; | ||
transition: transform 0.35s ease; | |||
} | } | ||
/* Subtle image zoom */ | |||
.lumi-navcard:hover .lumi-navcard-image img { | |||
transform: scale(1.045); | |||
} | |||
/* ========================================== | |||
4. CARD CONTENT | |||
========================================== */ | |||
.lumi-navcard-content { | .lumi-navcard-content { | ||
| Line 42: | Line 84: | ||
flex-direction: column; | flex-direction: column; | ||
flex-grow: 1; | flex-grow: 1; | ||
padding: | |||
gap: | padding: 18px; | ||
gap: 9px; | |||
} | } | ||
/* ========================================== | |||
5. CARD TITLE | |||
========================================== */ | |||
.lumi-navcard-title { | .lumi-navcard-title { | ||
font-size: 1. | font-size: 1.12em; | ||
font-weight: 700; | font-weight: 700; | ||
letter-spacing: -0.02em; | |||
line-height: 1.3; | |||
} | } | ||
.lumi-navcard-title a { | .lumi-navcard-title a { | ||
color: # | color: #f5f7fa; | ||
text-decoration: none; | text-decoration: none; | ||
} | } | ||
.lumi-navcard-title a:hover { | |||
color: #55c8ff; | |||
text-decoration: none; | |||
} | |||
/* ========================================== | |||
6. CARD DESCRIPTION | |||
========================================== */ | |||
.lumi-navcard-description { | .lumi-navcard-description { | ||
color: # | color: #b9c5d4; | ||
font-size: 0.9em; | font-size: 0.9em; | ||
line-height: 1.55; | |||
} | } | ||
/* ========================================== | |||
7. BOTTOM NAVIGATION LINK | |||
========================================== */ | |||
.lumi-navcard-link { | .lumi-navcard-link { | ||
margin-top: auto; | margin-top: auto; | ||
padding-top: 12px; | padding-top: 12px; | ||
font-size: 0.8em; | font-size: 0.8em; | ||
font-weight: 700; | font-weight: 700; | ||
letter-spacing: 0.025em; | |||
} | } | ||
.lumi-navcard-link a { | .lumi-navcard-link a { | ||
color: # | color: #55c8ff; | ||
text-decoration: none; | 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; | |||
} | |||
} | } | ||
Revision as of 22:48, 13 November 2026
/*
* LumiWiki Navigation Cards
* MediaWiki 1.46 / Vector 2022
*/
/* ==========================================
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: #303b4b;
}
.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;
}
/* Subtle image zoom */
.lumi-navcard:hover .lumi-navcard-image img {
transform: scale(1.045);
}
/* ==========================================
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;
}
}