hensei-web/components/WeaponUnit/index.scss

192 lines
3.1 KiB
SCSS

.WeaponUnit {
display: flex;
flex-direction: column;
gap: 4px;
min-height: 139px;
position: relative;
@include breakpoint(tablet) {
min-height: auto;
}
&:hover .Button {
display: block;
}
&.editable .WeaponImage:hover {
border: $hover-stroke;
box-shadow: $hover-shadow;
cursor: pointer;
transform: $scale-wide;
}
&.empty {
min-height: auto;
}
&.mainhand {
margin-right: $unit-3x;
max-width: 200px;
@include breakpoint(tablet) {
margin-right: $unit-2x;
}
@include breakpoint(phone) {
margin-right: $unit-2x;
margin-right: $unit;
}
&.editable .WeaponImage:hover {
transform: $scale-tall;
}
.WeaponImage {
aspect-ratio: 200 / 418;
width: 200px;
height: auto;
.Awakening {
width: 40%;
height: auto;
top: 67%;
left: -3.5%;
}
.Modifiers > .Skills {
bottom: 12%;
right: -3.5%;
& > .Skill {
width: 25%;
height: auto;
}
}
@include breakpoint(tablet) {
width: 25vw;
}
}
}
&.grid {
max-width: 160px;
.WeaponImage {
aspect-ratio: 160 / 92;
list-style-type: none;
width: 160px;
height: auto;
.Awakening {
width: 30%;
height: auto;
top: 14%;
left: -3.5%;
}
.Modifiers > .Skills {
bottom: 12%;
left: -3.5%;
& > .Skill {
width: 20%;
height: auto;
}
}
@include breakpoint(tablet) {
width: 20vw;
}
}
}
&.filled h3 {
display: block;
}
&.filled ul {
display: flex;
}
& h3,
& ul {
display: none;
}
.Button {
box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.14);
display: none;
position: absolute;
left: $unit;
top: $unit;
z-index: 10;
}
h3 {
color: var(--text-primary);
font-size: $font-button;
font-weight: $normal;
line-height: 1.1;
margin: 0;
text-align: center;
}
.WeaponImage {
background: var(--card-bg);
border: 1px solid rgba(0, 0, 0, 0);
border-radius: $unit;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: calc($unit / 4);
overflow: hidden;
position: relative;
transition: all 0.18s ease-in-out;
&:hover .icon svg {
fill: var(--icon-secondary-hover);
}
.Awakening {
width: 100%;
height: 100%;
position: absolute;
z-index: 3;
}
.Modifiers {
display: flex;
align-items: flex-end;
width: 100%;
height: 100%;
position: absolute;
z-index: 3;
.Skills {
display: flex;
gap: $unit-fourth;
justify-content: flex-end;
padding: $unit-half;
width: 100%;
}
}
img {
position: relative;
width: 100%;
z-index: 2;
}
.icon {
position: absolute;
height: $unit * 3;
width: $unit * 3;
z-index: 1;
svg {
fill: var(--icon-secondary);
}
}
}
}