woocommerce/plugins/woocommerce-blocks/assets/js/blocks/mini-cart/style.scss

224 lines
4.4 KiB
SCSS

.wc-block-mini-cart {
display: inline-block;
}
.wc-block-mini-cart__template-part,
.wp-block-woocommerce-mini-cart-contents {
height: 100%;
}
// Remove the stickiness from the footer when there isn't enough room
// to display the items.
@media screen and (max-height: 500px) {
.wp-block-woocommerce-mini-cart-contents {
height: auto;
}
.wc-block-mini-cart__drawer {
overflow-y: auto;
}
.wc-block-mini-cart__footer {
position: static;
}
}
.wc-block-mini-cart__button {
align-items: center;
background-color: transparent;
border: none;
color: inherit;
display: flex;
font-size: inherit;
font-family: inherit;
font-weight: inherit;
padding: em($gap-small) em($gap-smaller);
&:hover:not([disabled]) {
cursor: pointer;
}
}
.wc-block-mini-cart__amount {
margin-right: 0.5em;
}
.wc-block-mini-cart--preview {
.wc-block-mini-cart__amount {
display: initial;
}
}
.wc-block-mini-cart__tax-label {
margin-right: em($gap-smaller);
}
@media screen and (min-width: 768px) {
.wc-block-mini-cart__amount {
display: initial;
font-size: inherit;
font-weight: inherit;
margin-right: $gap-smaller;
}
}
.drawer-open .wc-block-mini-cart__button {
pointer-events: none;
}
// Reset font size so it doesn't depend on drawer's ancestors.
.wc-block-mini-cart__drawer {
font-size: 1rem;
.wp-block-woocommerce-mini-cart-contents {
box-sizing: border-box;
padding: 0;
position: relative;
justify-content: center;
.wc-block-components-notices {
margin: #{$gap} #{$gap-largest} -#{$gap} #{$gap};
margin-bottom: unset;
.wc-block-components-notices__notice {
margin-bottom: unset;
}
&:empty {
display: none;
}
}
}
}
:where(.wp-block-woocommerce-mini-cart-contents) {
background: #fff;
}
.wp-block-woocommerce-empty-mini-cart-contents-block,
.wp-block-woocommerce-filled-mini-cart-contents-block {
background: inherit;
height: 100%;
max-height: -webkit-fill-available;
max-height: -moz-available;
max-height: fill-available;
display: flex;
flex-direction: column;
}
.wp-block-woocommerce-empty-mini-cart-contents-block {
justify-content: center;
}
.wp-block-woocommerce-filled-mini-cart-contents-block {
justify-content: space-between;
}
.wp-block-woocommerce-empty-mini-cart-contents-block
.wc-block-mini-cart__empty-cart-wrapper {
overflow-y: auto;
padding: $gap-largest $gap $gap;
}
h2.wc-block-mini-cart__title {
display: flex;
align-items: baseline;
background: inherit;
padding-bottom: $gap * 2;
mask-image: linear-gradient(#000 calc(100% - #{$gap * 1.5}), transparent);
z-index: 1;
margin: $gap $gap $gap * -2;
@include font-size(larger);
span:first-child {
margin-right: $gap-smaller;
}
}
.wc-block-mini-cart__items {
display: flex;
flex-direction: column;
flex-grow: 1;
overflow-y: auto;
padding: $gap $gap 0;
.wc-block-mini-cart__products-table {
margin-bottom: auto;
.wc-block-cart-items__row {
padding-top: $gap-smaller;
padding-bottom: $gap-smaller;
&:last-child::after {
content: none;
}
}
}
}
.wc-block-mini-cart__footer {
@include with-translucent-border(1px 0 0);
padding: $gap-large $gap;
.wc-block-components-totals-item.wc-block-mini-cart__footer-subtotal {
font-weight: 600;
margin-bottom: $gap;
.wc-block-components-totals-item__description {
display: none;
font-size: 0.75em;
font-weight: 400;
@media only screen and (min-width: 480px) {
display: unset;
}
}
}
// First selector for the frontend, second selector for the editor.
.wc-block-mini-cart__footer-actions,
.wc-block-mini-cart__footer-actions > .block-editor-inner-blocks > .block-editor-block-list__layout {
display: flex;
gap: $gap;
.wc-block-components-button,
.wp-block-button,
.wp-block-woocommerce-mini-cart-cart-button-block,
.wp-block-woocommerce-mini-cart-checkout-button-block {
flex-grow: 1;
display: inline-flex;
}
.wp-block-woocommerce-mini-cart-cart-button-block {
@media only screen and (min-width: 480px) {
display: inline-flex;
}
}
@media only screen and (max-width: 480px) {
flex-direction: column;
}
}
.wc-block-components-payment-method-icons {
margin-top: $gap;
}
}
.wc-block-mini-cart__shopping-button {
display: flex;
justify-content: center;
a {
border: 2px solid;
color: currentColor;
font-weight: 600;
padding: $gap-small $gap-large;
text-decoration: none;
&:hover,
&:focus {
background-color: $gray-900;
border-color: $gray-900;
color: $white;
}
}
}