@appearhere/bloom
Version:
Appear Here's pattern library and styleguide
212 lines (182 loc) • 3.84 kB
CSS
.root {
composes: link from '../Card/Card.css';
position: relative;
background-color: var(--color-white);
border-radius: 4px;
z-index: 1;
transition: box-shadow 100ms ease-in-out;
}
.root:after {
border-radius: 4px;
box-shadow: 0 2px 7px 0 rgba(0, 0, 0, 0.1);
}
.heart {
position: absolute;
top: var(--size-regular);
left: var(--size-regular);
z-index: 2;
font-size: 1.8rem;
line-height: 0;
}
.inner {
display: block;
border-radius: 4px 4px 0 0;
}
.carousel {
position: relative;
width: 100%;
border-radius: 4px 4px 0 0;
background-color: var(--color-greyLighter);
height: 0;
padding-bottom: 56.25%;
}
.control {
position: absolute;
color: var(--color-white);
font-size: var(--size-lg-i);
background-color: transparent;
border: 0;
opacity: 0.75;
z-index: 1;
height: 100%;
}
.control:hover,
.control:focus,
.control:active {
color: var(--color-white);
opacity: 1;
}
.control:disabled,
.control:hover:disabled,
.control:active:disabled,
.control:focus:disabled {
opacity: 0.3;
color: var(--color-white);
background-color: transparent;
border: 0;
}
.prev {
right: auto;
left: 0;
vertical-align: middle;
}
.next {
right: 0;
left: auto;
vertical-align: middle;
}
.prevIcon,
.nextIcon {
display: inline-block;
}
.prevIcon {
padding-left: var(--size-regular);
padding-right: var(--size-regular);
}
.nextIcon {
padding-right: var(--size-regular);
padding-left: var(--size-regular);
}
.prevIcon svg {
transform: rotate(270deg);
}
.nextIcon svg {
transform: rotate(90deg);
}
.imageContainer {
position: relative;
width: 100%;
height: 0;
padding-bottom: 56.25%;
overflow: hidden;
}
.fixedHeight .imageContainer {
height: var(--destination-listing-image-height);
padding-bottom: 0;
}
.image {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
object-fit: cover;
border-radius: 4px 4px 0 0;
display: block;
background-color: var(--color-greyLighter);
}
.body {
padding: var(--size-regular);
display: block;
background-color: var(--color-white);
color: var(--color-greyDarker);
text-decoration: none;
border-radius: 0 0 4px 4px;
border: 1px solid var(--color-greyLighter);
border-top: 0;
vertical-align: top;
overflow: hidden;
}
.footer {
margin-top: var(--size-regular);
}
.bodyLink {
text-decoration: none;
color: var(--color-greyDarker);
}
.title {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
}
.priceContainer {
composes: fontSmallI from '../../../globals/typography.css';
font-weight: var(--fontweight-demi);
color: var(--color-greyDarker);
margin-top: var(--size-sm-ii);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.priceFromLabel {
composes: fontSmallI from '../../../globals/typography.css';
color: var(--color-grey);
margin-right: 0.3rem;
}
.price {
composes: fontRegular from '../../../globals/typography.css';
font-weight: var(--fontweight-demi);
color: var(--color-greyDarker);
}
.priceUnit {
composes: fontSmallI from '../../../globals/typography.css';
color: var(--color-grey);
}
.name {
composes: fontSmallI from '../../../globals/typography.css';
font-weight: var(--fontweight-demi);
color: var(--color-greyDarker);
margin-top: var(--size-sm-ii);
white-space: nowrap;
overflow: hidden;
width: 98%;
text-overflow: ellipsis;
}
.spacer {
padding-left: var(--size-sm-ii);
padding-right: var(--size-sm-ii);
vertical-align: top;
}
.additionalInformationBlock {
composes: fontSmallI from '../../../globals/typography.css';
color: var(--color-grey);
margin-top: var(--size-sm-ii);
display: block;
}
.additionalInformationItem {
display: inline-block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}