/* styles.css */

:root {
    --container-width: 1400px;
}

.woowain-inches, .woowain-fractions {
    display: flex;
    flex-direction: column;
}

.woocommerce-page .ct-inner-content > * {
    max-width: var(--container-width);
    margin-left: auto;
    margin-right: auto;
    margin-top: 45px;
    margin-bottom: 45px;
    padding-left: 20px;
    padding-right: 20px;
}

.woowain-form {
    display: block;
    width: 100%;
}

.woowain-field {
    display: flex;
    margin: 0 0 15px;
    grid-gap: 10px;
}

.woocommerce form .woowain-field label {
    margin-top: 0;
    width: 85px;
    cursor: pointer;
}

.woocommerce form .woowain-field input,
.woocommerce form .woowain-field select {
    display: flex;
    height: 40px;
}

.woowain-field[class*="woowain-field"] input[type=number]::-webkit-inner-spin-button,
.woowain-field[class*="woowain-field"] input[type=number]::-webkit-outer-spin-button {
    opacity: 1;
    height: 1.25em;
    padding: .05em;
    margin-right: 0;
}

.woowain-label {
    display: flex;
    align-items: flex-end;
    margin: 0 0 10px;
}

div#woowain-form {
	max-width: var(--container-width);
	width: 100%;
	background: #E4E4E8;
	border-radius: 4px;
	font-family: sans-serif;
}

div#woowain-form h3 {
    margin: 0 0 10px;
    font-size: 17px;
}

div#woowain-form label,
div#woowain-form input,
div#woowain-form select {
    font-size: 14px;
}

.woowain-wall-types {
	display: flex;
	align-items: center;
	grid-gap: 7.55px;
}

.woowain-field.woowain-radio-field {
	min-width: 0;
	margin: 0;
}

.woowain-field.woowain-radio-field input {
	display: none;
}

.woowain-field.woowain-radio-field img {
	max-width: 100%;
}

.woomain-head {
	padding: 15px;
}

.woowain-field.woowain-radio-field label {
	background: #fff;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}

.woowain-field.woowain-radio-field label:hover {
	box-shadow: 0 2px 7.5px -2px #000;
}

.woowain-field.woowain-radio-field input:checked + label {
	box-shadow: inset 2px 2px 0px #212BBC, inset -2px -2px 0px #212BBC;
}

.woomain-body {
	display: flex;
}

.woomain-body > div {
	min-width: 0;
	flex: 1;
}

.woomain-sidebar {
	max-width: 300px;
	padding: 0 15px;
}

.woomain-display {
	display: flex;
	flex-direction: column;
	background: #fff;
	margin-bottom: 4px;
	margin-right: 4px;
	border-radius: 4px;
	align-items: flex-end;
	justify-content: flex-end;
}

img#drawing {
	border-radius: 4px;
}

.woowain-drawing {
	width: 100%;
	height: 100%;
}

.woowain-image-and-meta-wrapper {
	padding: 15px;
}

.woowain-product-meta-wrapper {
	margin: .9375em;
	background: #e4e4e8;
	display: flex;
	align-items: center;
	border-radius: .25rem;
    padding: .46875em .9375em;
    grid-gap: .9375em;
    font-size: 1rem;
}

.woowain-product-meta-wrapper button#ww-add-to-cart {
	display: inline-block;
}

.woowain-product-meta-wrapper p {
	margin: 0;
}

.woowain-label {
	width: 100%;
	max-width: 85px;
}

.woowain-field > div {
    flex: 1;
	width: 1%;
}

div#woowain-form input,
div#woowain-form select {
    height: 36px;
	border-radius: 4px;
    border: 2px solid rgb(0 0 0 / 15%);
    padding: 0 7.5px;
}

div#woowain-form .woowain-inches label,
div#woowain-form .woowain-fractions label {
    font-size: 12px;
}

select#inner-panel, select#inner-panel-vert {
    width: 100%;
}

.woowain-product-meta-wrapper p.price {
    font-weight: bold;
    font-size: 1.5rem;
}

div.woowain-configurator button#ww-add-to-cart,
div.woowain-configurator #ww-remove-from-cart,
div.woowain-configurator #ww-view-cart {
    border: none;
    border-radius: 0.25em;
    font-size: 1em;
    padding: 0.75em 1.5625em;
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;
    text-transform: inherit;
    line-height: 1;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
}

div.woowain-configurator button#ww-add-to-cart {
    background: #212BBC;
    color: #fff;
}

div.woowain-configurator #ww-remove-from-cart {
    background: #e55d5d;
    color: #850d0d;
}

div.woowain-configurator #ww-view-cart {
    background: #fff;
    color: #7a7a7a;
}

div.woowain-configurator button#ww-add-to-cart:hover,
div.woowain-configurator #ww-remove-from-cart:hover,
div.woowain-configurator #ww-view-cart:hover {
    transform: translate(0, -0.1875em);
}

div#ww-price {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    line-height: 1;
    flex: 1;
}

div#ww-price > span {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 0.875em;
    opacity: 0.7;
    margin: 0 0 0.25em;
}

div#ww-price > span.amount {
    font-size: 1.5em;
    display: flex;
}

div.woowain-configurator .summary.entry-summary {
    float: none !important;
    width: auto !important;
}

.woowain-field.woowain-radio-field input,
div.woowain-configurator form.cart > button[name=add-to-cart],
div.woowain-configurator .quantity,
div.woowain-configurator button.single_add_to_cart_button.button.alt {
    display: none !important;
}

div#ww-price > span.pricing-info {
    text-transform: none;
    font-weight: normal;
}

div.woowain-configurator .summary.entry-summary {
    float: none !important;
    width: auto !important;
}

.woowain-field.woowain-radio-field input,
div.woowain-configurator form.cart > button[name=add-to-cart],
div.woowain-configurator .quantity,
div.woowain-configurator button.single_add_to_cart_button.button.alt {
    display: none !important;
}

div#ww-price > span.pricing-info {
    text-transform: none;
    font-weight: normal;
}

dl.variation {
    display: grid;
    grid: auto-flow dense / 115px 130px;
}

dl.variation dt p,
dl.variation dd p {
    margin: 0;
}

.woowain-tabs {
    background: #fff;
}

.woowain-tabs a, .woowain-tabs span {
    background: #e4e4e8;
    line-height: 1;
    display: inline-block;
    padding: 7.5px 15px;
    border-radius: 4px 4px 0 0;
    color: #a0a0a0;
    font-weight: bold;
	border-bottom: 1px solid rgb(0 0 0 / 5%);
}

.woowain-tabs a:hover,
a.woowain-tab.active,
span.woowain-tab.active {
    background: #212BBC;
    color: #fff;
}

@media screen and (max-width: 991px) {

	.woowain-field.woowain-radio-field {
		min-width: 80px;
	}

	.woowain-wall-types {
		position: relative;
		overflow-x: scroll;
	}

}

@media screen and (max-width: 767px) {

	.woomain-body {
		flex-direction: column;
		padding: 8px;
	}

	.woomain-sidebar {
		max-width: 100%;
		position: relative;
		max-height: 300px;
		overflow-y: scroll;
	}

	.woowain-image-and-meta-wrapper {
		width: 100%;
        padding: 0;
	}
    .woowain-product-meta-wrapper {
		margin: 0;
		border-radius: 0;
		padding: 8px 0.4em 0;
        font-size: 0.8rem;
	}

}

/*   Cart   */
.cart_item .cart-drawing a {
    display: block;
    width: 30em;
    position: relative;
}
.cart_item dl.variation {
    gap: .25em;
}
@media (min-width: 450px) {
    .cart_item dl.variation {
        grid-template-columns: 6.5em 15em;
    }
}

@media (max-width: 1100px) {
    .cart_item .cart-drawing a {
        max-width: 100%;
    }
}
.cart_item .cart-drawing a:before {
    content: '';
    display: block;
    padding-bottom: 100%;
}
.cart_item .cart-drawing[class*="cart-drawing"] img {
    max-width: 100%;
    height: auto;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cart_item .cart-drawing a > * {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
}

/**
 * General
 */
.woocommerce .woocommerce-Price-amount {
    font-size: 14px;
    font-weight: 600;
}


/**
 * Cart
 */
.woocommerce-cart table.shop_table.cart {
 
}
.woocommerce-cart table.shop_table.cart td, 
.woocommerce-cart table.shop_table.cart th {
    vertical-align: top;
    font-size: 12px;
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 12px;
    padding-right: 12px;
}
@media screen and (min-width: 769px) {
    .woocommerce-cart .product-number,
    .woocommerce-cart .product-remove {
        width: 80px;
    }
    .woocommerce-cart .product-thumbnail {
        width: 20%;
    }
    .woocommerce-cart .product-thumbnail img {
        width: 100% !important;
    }
    .woocommerce-cart .product-description {
        width: 40%;
    }
    .woocommerce-cart .product-price,
    .woocommerce-cart .product-quantity,
    .woocommerce-cart .product-subtotal {
        width: 10%;
    }
}
@media screen and (max-width: 768px) {
    .woocommerce-cart table.shop_table_responsive tr {
        position: relative;
    }
    .woocommerce-cart table.shop_table_responsive .product-number {
        text-align: left !important;
    }
    .woocommerce-cart table.shop_table_responsive .product-number:before {
        margin-right: 8px;
    }
    .woocommerce-cart table.shop_table_responsive .product-thumbnail {
        display: block !important;
    }
    .woocommerce-cart table.shop_table_responsive .product-description:before,
    .woocommerce-cart table.shop_table_responsive .product-thumbnail:before {
        display: none !important;
    }
    .woocommerce-cart table.shop_table_responsive .product-thumbnail img {
        width: 100% !important;
    }
    .woocommerce-cart table.shop_table_responsive .product-quantity .qty {
        margin-right: 0;
    }
    .woocommerce-cart table.shop_table_responsive .product-remove {
        position: absolute;
        top: 0;
        right: 0;
    }
}
.woocommerce-cart .product-remove a {
    text-decoration: none !important;
}

.woocommerce-cart-heading {
    font-size: 22px;
    margin: 0 0 16px;
}
.woocommerce-cart-heading small {
    font-size: 14px;
    vertical-align: middle;
}
.product-details-group {
    column-count: 2;
    width: 100%;
}
.product-details-group + .product-details-group {
    margin-block-start: 12px;
}
.product-details-group.single {
    column-count: 1;
}
.product-detail {
    display: grid;
    font-size: 13px;
    line-height: 1.4;
    grid-template-columns: 120px 1fr;
    text-align: left;
}
.product-detail:has(pre) {
    column-span: all;
}
.product-detail pre {
    font-size: 11px;
}
.product-detail * {
    margin: 0;
}
.product-detail strong {
    font-weight: 600;
}
.cart-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
}
.cart-actions .coupon {
    display: flex;
    gap: 10px;
    margin-right: auto;
}
.cart-collaterals {
    margin: 40px 0;
}
.cart-collaterals .cart_totals {
    float: none !important;
    width: 100% !important;
}
.cart-item-edit.button {
    display: inline-block !important;
    width: auto !important;
    padding: 10px 20px !important;
}

.woomain-configuration-tools {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 20px 0;
    width: 100%;
}
.woomain-configuration-tools .step {
    display: flex;
    gap: 10px;
}
.woomain-configuration-tools .button {
    float: none !important;
}
.woomain-configuration-tools-intro a {

}

.header-button.cart {
    background: #002a66;
    padding: 0.25em .5em;
    font-weight: bold;
    border-radius: 4px;
    margin-left: 1rem;
    margin-block: .5rem;
    font-size: 14px;
    color: white;
}

.header-button.cart .price {
    color: inherit;
}