Template:Infobox hero/styles.css: Difference between revisions

created
 
Vergir (talk | contribs)
Make the collapsible toggle brackets follow the dropdown header's link color instead of the theme text color (with help from vergir-bot LLM)
 
(16 intermediate revisions by 6 users not shown)
Line 1: Line 1:
/* ========== @MEDIA/MINERVA FIXES/OVERRIDES ========== */
body.skin-minerva .infobox-h table{
    margin: 0;
}
body.skin-minerva .infobox-h table caption{
    text-align: center;
    display: table-caption;
}
@media (max-width: 639px){
.infobox-h table,
body.skin-minerva .infobox-h table{
display: table;
overflow: visible;
}
.infobox-h table.infobox-h-content{
display: table;
}
}
@media (max-width: 539px){
body.skin-minerva .infobox-h{
max-width: 350px;
margin: 0em auto 1em auto;
float: none;
}
body.skin-minerva .infobox-h-subsection table td{
width: 50%;
}
}
/* ========== INFOBOX_HERO CSS ========== */
/* ========== INFOBOX_HERO CSS ========== */
.infobox{
.infobox-h{
/* -- variables -- */
/* -- variables -- */
--th-heroinfobox-text-normal: white;
--th-heroinfobox-text-normal: white;
Line 31: Line 64:
width: 100%;
width: 100%;
     max-width: 275px;
     max-width: 275px;
min-width: 250px;
min-width: 240px;
border-collapse: collapse;
border-collapse: collapse;
font-family: 'Retail Demo', 'Open Sans', serif;
font-family: 'Retail Demo', 'Open Sans', serif;
font-size: 16px;
font-size: 15px;
     background-color: var(--th-heroinfobox-color1);
     background-color: var(--th-heroinfobox-color1);
     margin: 0 0 1em 1em;
     margin: 0 0 1em 1em;
Line 42: Line 75:


/* ---------- Background Styling ---------- */
/* ---------- Background Styling ---------- */
.infobox-background {
.infobox-h-background {
position: absolute;
position: absolute;
width: 100%;
width: 100%;
Line 50: Line 83:


/* --- Background Horizontal Positioning --- */
/* --- Background Horizontal Positioning --- */
.infobox-background > figure{
.infobox-h-background > figure{
margin-right: var(--th-heroinfobox-bg-margin) !important;
margin-right: var(--th-heroinfobox-bg-margin) !important;
}
}


/* ---------- Content Styling ---------- */
/* ---------- Content Styling ---------- */
.infobox-content {
.infobox-h-content {
position: relative;
position: relative;
width: 100%;
width: 100%;
Line 67: Line 100:
background-image: linear-gradient(180deg, var(--th-heroinfobox-color1-transparent) var(--th-heroinfobox-bg-grad-point1), var(--th-heroinfobox-color1-grad) var(--th-heroinfobox-bg-grad-height));
background-image: linear-gradient(180deg, var(--th-heroinfobox-color1-transparent) var(--th-heroinfobox-bg-grad-point1), var(--th-heroinfobox-color1-grad) var(--th-heroinfobox-bg-grad-height));
background-color: transparent;
background-color: transparent;
font-size: 16px;
font-size: 15px;
text-align: center;
text-align: center;
text-shadow: 1.5px 1.5px rgba(0, 0, 0, 0.7);
text-shadow: 1.5px 1.5px rgba(0, 0, 0, 0.7);
}
}


.infobox, .infobox-background, .infobox-content{
.infobox-h, .infobox-h-background, .infobox-h-content{
border-radius: 8px;
border-radius: 8px;
}
}


.infobox .infobox-image {
.infobox-h .infobox-h-image {
margin: auto;
margin: auto;
border: none;
border: none;
Line 82: Line 115:
}
}


/* .infobox-table th {
/* ---------- Top Section (Above Portrait) ---------- */
    vertical-align: top;
.infobox-h-title{
    text-align: right;
color: var(--th-heroinfobox-text-title);
    width: 120px;
font-size: 22px;
}
font-weight: bold;
.infobox-table td {
     text-align: center;
     vertical-align: top;
text-shadow: 1.2px 2px 3px black, 1.2px 1.2px 0.1px #A5A5A5;
}
.infobox_item a {
color: #fff;
}
}


.infobox_template {
.infobox-h-title-regular{
border-radius: 8px; overflow: hidden;
} */
 
 
 
/* ---------- Top Section (Above Portrait) ---------- */
.infobox-title{
color: var(--th-heroinfobox-text-title);
color: var(--th-heroinfobox-text-title);
font-size: 25px;
font-size: 22px;
font-weight: bold;
font-weight: normal;
     text-align: center;
     text-align: center;
text-shadow: 1.2px 2px 3px black, 1.2px 1.2px 0.1px #A5A5A5;
text-shadow: 1.2px 2px 3px black, 1.2px 1.2px 0.1px #A5A5A5;
}
}


.infobox-title-hero{
.infobox-h-title-hero{
display: flex;
display: flex;
position: relative;
position: relative;
justify-content: space-between;
justify-content: space-between;
align-items: center;
align-items: center;
min-height: 45px;
min-height: 34px;
margin-top: 4px;
margin-top: 2px;
margin-bottom: var(--th-heroinfobox-logo-bottom);
margin-bottom: var(--th-heroinfobox-logo-bottom);
}
}


.infobox-title-hero-left{
.infobox-h-title-hero-left{
position: absolute;
position: absolute;
height: 100%;
height: 100%;
Line 127: Line 150:


/* --- Logo/Name --- */
/* --- Logo/Name --- */
.infobox-title-hero-middle{
.infobox-h-title-hero-middle{
position: relative;
position: relative;
width: 100%;
width: 100%;
Line 134: Line 157:
filter: drop-shadow(1px 1px 2px black);
filter: drop-shadow(1px 1px 2px black);
}
}
.infobox-title-hero-middle-text{
.infobox-h-title-hero-middle-text{
width: calc(100% - 120px);
width: calc(100% - 120px);
margin: 0px 60px;
margin: 0px 60px;
Line 141: Line 164:
word-break: break-word;
word-break: break-word;
}
}
.infobox-title-hero-middle > span{
.infobox-h-title-hero-middle > span{
bottom: 0 !important;
bottom: 0 !important;
}
}
.infobox-title-hero-middle img{
.infobox-h-title-hero-middle img{
margin: var(--th-heroinfobox-logo-bleed);
margin: var(--th-heroinfobox-logo-bleed);
}
}


/* --- Map Icon --- */
/* --- Map Icon --- */
.infobox-title-hero-right{
.infobox-h-title-hero-right{
position: absolute;
position: absolute;
height: 45px;
height: 45px;
Line 158: Line 181:
margin-right: 5px;
margin-right: 5px;
}
}
.infobox-title-hero-right > div{
.infobox-h-title-hero-right > div{
position: relative;
position: relative;
width: 100%;
width: 100%;
Line 165: Line 188:


/* --- Torn Box Behind Map Icon --- */
/* --- Torn Box Behind Map Icon --- */
.infobox-title-hero-tornbox{
.infobox-h-title-hero-tornbox{
     position: absolute;
     position: absolute;
     width: 105%;
     width: 105%;
Line 179: Line 202:
}
}


.infobox-title-hero-icon{
.infobox-h-title-hero-icon{
     position: absolute;
     position: absolute;
     width: calc(100% - 10px);
     width: calc(100% - 10px);
Line 190: Line 213:


/* --- Text Before Stats --- */
/* --- Text Before Stats --- */
.infobox-text-weapon{
.infobox-h-text-weapon{
padding: 8px 0;
padding: 2px 0;
line-height: 1.35;
line-height: 1.2em;
position: relative;
position: relative;
}
}


.infobox-text-stat-subtitle > *:first-child,
.infobox-h-text-stat-subtitle > *:first-child,
.infobox-text-stat-subtitle-border > *:first-child{
.infobox-h-text-stat-subtitle-border > *:first-child{
margin-top: 8px;
margin-top: 4px;
margin-bottom: 0;
margin-bottom: 0;
text-transform: uppercase;
text-transform: uppercase;
}
}
.infobox-text-stat-subtitle > *:first-child{
.infobox-h-text-stat-subtitle > *:first-child{
margin-top: 4px;
margin-top: 4px;
}
}
.infobox-text-stat-subtitle-border{
.infobox-h-text-stat-subtitle-border{
margin-top: 8px;
margin-top: 2px;
border-top: solid 3px var(--th-heroinfobox-color2);
border-top: solid 2px var(--th-heroinfobox-color2);
}
}


/* ---------- Hero Portrait Image ---------- */
/* ---------- Hero Portrait Image ---------- */
.infobox-image > div{
.infobox-h-image > div{
max-width: 190px;
max-width: 150px;
height: auto;
height: auto;
margin: auto;
margin: auto;
Line 221: Line 244:
box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7);
box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7);
}
}
.infobox-image > div img{
.infobox-h-image > div img{
filter: drop-shadow(2px 3px 2px var(--th-heroinfobox-color2-shadow));
filter: drop-shadow(2px 3px 2px var(--th-heroinfobox-color2-shadow));
clip-path: rect(3px calc(100% - 3px) calc(100% - 3px) 3px round 8px);
clip-path: rect(3px calc(100% - 3px) calc(100% - 3px) 3px round 8px);
}
/* ---------- Hero Tags (Inside Infobox) ---------- */
.infobox-h-herotags-row {
padding: 0;
}
.infobox-h-herotags-inner {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 6px;
padding: 4px 0 6px 0;
}
.infobox-h-herotag-pill {
display: inline-block;
padding: 2px 8px;
border-radius: 4px;
background: var(--th-heroinfobox-stats-back);
font-size: 13px;
font-weight: 600;
color: var(--th-heroinfobox-text-title);
text-transform: uppercase;
letter-spacing: 0.03em;
text-shadow: 1.5px 1.5px 0.8px rgba(0, 0, 0, 0.5);
}
}


Line 231: Line 280:
/* note: dropdown is a child of subsection            */
/* note: dropdown is a child of subsection            */


.infobox-subsection {
.infobox-h-subsection {
padding: 0 5px 5px 5px;
padding: 0 2px 2px 2px;
vertical-align: middle;
vertical-align: middle;
}
}


.infobox-subsection table{
.infobox-h-subsection table{
table-layout: auto;
table-layout: auto;
padding: 0 6px;
padding: 0 6px;
}
}


.infobox-subsection tr{
.infobox-h-subsection tr{
font-size: 15px;
font-size: 14px;
text-align: left;
text-align: left;
line-height: 1.2em;
line-height: 1.1em;
}
.infobox-h-subsection tr > td{
padding-bottom: 2px;
}
}
.infobox-subsection tr > td{
.infobox-h-subsection tr:first-child > td{
padding-bottom: 5px;
padding-top: 2px;
}
}
.infobox-subsection tr:first-child > td{
.infobox-h-dropdown .infobox-h-subsection-child tr:first-child > td {
padding-top: 5px;
    padding-top: 5px;
}
}
.infobox-subsection tr:last-child > td{
.infobox-h-subsection tr:last-child > td{
padding-bottom: 6px;
padding-bottom: 4px;
}
}
.infobox-subsection tr > td:first-child{
.infobox-h-subsection tr > td:first-child{
width: auto;
width: auto;
font-family: "Retail Demo Medium", "Retail Demo", 'Open Sans', serif;
font-family: "Retail Demo Medium", "Retail Demo", 'Open Sans', serif;
Line 264: Line 316:
vertical-align: top;
vertical-align: top;
}
}
.infobox-subsection tr > td:first-child span{
.infobox-h-subsection tr > td:first-child .infobox-h-stat-label{
color: var(--th-heroinfobox-stats-text);
color: var(--th-heroinfobox-stats-text);
text-decoration: underline;
}
}
.infobox-subsection tr > td:last-child{
.infobox-h-subsection tr > td:last-child{
width: max-content;
width: max-content;
padding-left: 4px;
padding-left: 4px;
Line 273: Line 326:
}
}


.infobox-spiritboon{
.infobox-h-spiritboon{
display: inline-block;
display: inline-block;
}
}
.infobox-spiritboon:not(:empty){
.infobox-h-spiritboon:not(:empty){
padding-right: 5px;
padding-right: 0;
}
}
.infobox-dropdown tr:first-child .infobox-spiritboon:not(:empty){
.infobox-h-dropdown tr:first-child .infobox-h-spiritboon:not(:empty){
padding-top: 3px;
padding-top: 3px;
}
}


.infobox-subsection-child{
.infobox-h-subsection-child{
width: 100%;
width: 100%;
font-weight: normal;
font-weight: normal;
Line 291: Line 344:
}
}


.infobox-dropdown-header > button{
.infobox-h-dropdown-header > button{
position: absolute;
position: absolute;
top: 0;
top: 0;
Line 304: Line 357:
}
}


.infobox-dropdown-title{
.infobox-h-dropdown-title{
text-shadow: 0 2px 4px black, 1.2px 1.2px rgba(0, 0, 0, 0.7);
text-shadow: 0 2px 4px black, 1.2px 1.2px rgba(0, 0, 0, 0.7);
color: var(--th-heroinfobox-text-normal);
color: var(--th-heroinfobox-text-normal);
}
}


.infobox-dropdown-header button,
.infobox-h-dropdown-header button,
.infobox-dropdown-header button .mw-collapsible-text{
.infobox-h-dropdown-header button .mw-collapsible-text{
color: var(--th-heroinfobox-header-link);
color: var(--th-heroinfobox-header-link);
font-size: 13px;
font-size: 13px;
Line 316: Line 369:
}
}


.infobox-dropdown-header button.mw-collapsible-text:hover,
.infobox-h-dropdown-header button.mw-collapsible-text:hover,
.infobox-dropdown-header button .mw-collapsible-text:hover{
.infobox-h-dropdown-header button .mw-collapsible-text:hover{
color: white;
color: white;
}
.infobox-h-dropdown-header > button::before,
.infobox-h-dropdown-header > button::after{
color: inherit;
}
.infobox-h-dropdown-header-overflow a{
display: block;
margin: 2px 65px 2px 5px;
width: fit-content;
line-height: 1.25em;
word-break: break-word;
}
}




/* ------------ Dropdown Subsection Only -------------------*/
/* ------------ Dropdown Subsection Only -------------------*/
.infobox-dropdown{
.infobox-h-dropdown{
--th-heroinfobox-header-back: #d5903f;
--th-heroinfobox-header-back: #d5903f;
--th-heroinfobox-header-link: #F4E3CF;
--th-heroinfobox-header-link: #F4E3CF;
}
}


.infobox-dropdown .infobox-subsection-child{
.infobox-h-dropdown .infobox-h-subsection-child{
border-top-right-radius: 0;
border-top-right-radius: 0;
border-top-left-radius: 0;
border-top-left-radius: 0;
}
}


.infobox-dropdown .infobox-subsection-child:not(.mw-collapsed) .infobox-dropdown-header{
.infobox-h-dropdown .infobox-h-subsection-child:not(.mw-collapsed) .infobox-h-dropdown-header{
border-bottom-right-radius: 0;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
border-bottom-left-radius: 0;
}
}


.infobox-dropdown tr > td:last-child{
.infobox-h-dropdown tr > td:last-child{
white-space: nowrap;
white-space: nowrap;
}
}


/*--- Statistic Dropdown Themes --- */
/*--- Statistic Dropdown Themes --- */
.infobox-dropdown-weapon{
.infobox-h-dropdown-weapon{
--th-heroinfobox-header-back: #d5903f;
--th-heroinfobox-header-back: #CD8837;
--th-heroinfobox-header-link: #FFF0DF;
--th-heroinfobox-header-link: #FFF0DF;
}
}
.infobox-dropdown-vitality{
.infobox-h-dropdown-vitality{
--th-heroinfobox-header-back: #74b01c;
--th-heroinfobox-header-back: #74b01c;
--th-heroinfobox-header-link: #DAFFD2;
--th-heroinfobox-header-link: #DAFFD2;
}
}
.infobox-dropdown-spirit{
.infobox-h-dropdown-spirit{
--th-heroinfobox-header-back: #ba5ca6;
--th-heroinfobox-header-back: #A657BC;
--th-heroinfobox-header-link: #ffdff8;
--th-heroinfobox-header-link: #ffdff8;
}
}


/*--- Statistic Dropdown Header --- */
/*--- Statistic Dropdown Header --- */
.infobox-dropdown-header{
.infobox-h-dropdown-header{
position: relative;
position: relative;
width: calc(100% - 4px);
width: calc(100% - 4px);
padding: 2px;
padding: 1px;
background-color: var(--th-heroinfobox-header-back);
background-color: var(--th-heroinfobox-header-back);
Line 369: Line 435:


/* ------------ Subsection Text Themes -------------------*/
/* ------------ Subsection Text Themes -------------------*/
.infobox-content .infotext-bold{
.infobox-h-content .infotext-h-bold{
font-weight: bold;
font-weight: bold;
}
}
.infobox-content .infotext-title{
.infobox-h-content .infotext-h-title{
color: var(--th-heroinfobox-text-title);
color: var(--th-heroinfobox-text-title);
}
}
.infobox-content .infotext-big{
.infobox-h-content .infotext-h-big{
font-size: 18px;
font-size: 16px;
}
}
.infobox-content .infotext-bigger{
.infobox-h-content .infotext-h-bigger{
text-shadow: 1.1px 2px 2px black, 1.2px 1.2px 0.2px #7a7369;
text-shadow: 1.1px 2px 2px black, 1.2px 1.2px 0.2px #7a7369;
font-size: 20px;
font-size: 18px;
}
}




/* ------------ Stat Cell Modifiers -------------------*/


/* ------------ Hero Tags -------------------*/
/* Headroom for a section's first row when it carries a scaling icon. */
.infobox-herotags{
.infobox-h .infobox-h-dropdown .infobox-h-subsection-child tr > td.infobox-h-stat-label-scaled{
display: flex;
padding-top: 8px;
justify-content: flex-start;
flex-wrap: wrap;
gap: 8px;
column-gap: 10px;
--th-heroinfobox-tags-text: #FFEFD7;
--th-heroinfobox-tags-back: #000000;
}
 
.infobox-herotags > div{
display: inline-block;
position: relative;
}
 
.infobox-herotag-back{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--th-heroinfobox-tags-back);
animation-play-state: paused;
}
}


.infobox-herotag-text{
/* Breathing room for value cells whose scaling icon sits near the edge. */
position: relative;
.infobox-h .infobox-h-dropdown .infobox-h-subsection-child tr > td.infobox-h-stat-value-padded{
color: var(--th-heroinfobox-tags-text);
padding-right: 5px;
font-size: 1.2em;
font-family: "VALVE Pulp", "Open Sans", "serif";
letter-spacing: 0.05em;
text-transform: uppercase;
padding: 2px 7px;
cursor: default;
}
 
/*--- Tag Posing --- */
.infobox-herotags > div:nth-child(3n + 1) .infobox-herotag-back{
    transform: rotateZ(3deg);
    animation-name: TagGroove1;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}
.infobox-herotags > div:nth-child(3n + 2) .infobox-herotag-back{
    transform: rotateZ(-3deg);
    animation-name: TagGroove2;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}
.infobox-herotags > div:nth-child(3n + 3) .infobox-herotag-back{
    transform: rotateZ(4deg);
    animation-name: TagGroove3;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}
 
 
 
 
/*--- Tag Animation (ONLY on Hover) --- */
.infobox-herotags:hover .infobox-herotag-back{
animation-play-state: running;
}
 
/* --- Tag Keyframes (ripped from game) --- */
@keyframes 'TagGroove1'
{
    0%{
transform: rotateZ(-3deg);
}
    25%{
transform: rotateZ(-3deg);
}
    26%{
transform: rotateZ(2deg);
}
    50%{
        transform: rotateZ(2deg);
    }
    51%{
        transform: rotateZ(-1deg);
    }
    75%{
        transform: rotateZ(-1deg);
    }
    76%{
        transform: rotateZ(0deg);
    }
    100%{
        transform: rotateZ(0deg);
    }
}
 
@keyframes 'TagGroove2'
{
    0%{
transform: rotateZ(3deg);
}
    25%{
transform: rotateZ(3deg);
}
    26%{
transform: rotateZ(-1deg);
}
    50%{
        transform: rotateZ(-1deg);
    }
    51%{
        transform: rotateZ(0deg);
    }
    75%{
        transform: rotateZ(0deg);
    }
    76%{
        transform: rotateZ(2deg);
    }
    100%{
        transform: rotateZ(2deg);
    }
}
 
@keyframes 'TagGroove3'
{
    0%{
transform: rotateZ(-3deg);
}
    25%{
transform: rotateZ(-3deg);
}
    26%{
transform: rotateZ(-1deg);
}
    50%{
        transform: rotateZ(-1deg);
    }
    51%{
        transform: rotateZ(2deg);
    }
    75%{
        transform: rotateZ(2deg);
    }
    76%{
        transform: rotateZ(0deg);
    }
    100%{
        transform: rotateZ(0deg);
    }
}
}