/* common css */
.j2store-img-responsive {
	max-width: 100%;
	height: auto;
}

.j2store-left {
	float: left;
}

.j2store-right {
	float: right;
}

.j2store-remove {
	color: #ff0000;
}

.j2store .options .required {
	color: #FF0000;
	font-weight: bold;
}

.j2store_field_required {
	float: left;
	color: #ff0000;
	margin-right: 2px;
}

/* error & highlighs */
.j2error,div.j2error em.error,div.j2storeerror em.error,.payment_info input.error,.j2store label.error
	{
	color: #ff0000;
	font-style: italic;
}

div.j2error em.success,div.j2storeerror em.success,.j2store label.success
	{
	color: #17B500;
	font-style: italic;
}

.j2store input.error {
	border: 1px solid red;
}

.j2store input.valid {
	border: 1px solid #17B500;
}

/* cart and checkout */
.cart-thumb-image img {
	width: 200px;
	float: left;
	margin-right: 10px;
}

table.j2store-cart-table td.cart-line-subtotal,table.cart-footer td {
	text-align: left;
}

.j2store-cart-buttons {
	display: grid;
	grid-template-columns: 1fr;
	width: 100%;
}
.buttons-left input {
	width: 100%;
}
.j2store-cart-table td {
	padding: 10px 0;
	vertical-align: bottom;
}
.buttons-left {
	padding-top: 20px;
    border-top: solid 1px #ccc;
    margin-top: 10px;
}
.j2store-cart-table .remove-icon {
	margin-bottom: 9px;
}

.j2store-cart-buttons .buttons-left {
	display: grid;
	float: left;
	grid-template-columns: 2fr 1fr;
	gap: 10px;
}

.j2store-cart-buttons .buttons-right {
	display: block;
	float: right;
}

.j2store-cart-shipping {
	display: block;
	clear: both;
	margin-top: 20px;
}

.cart-estimator-discount-block {
	display: block;
	width: 100%;
	clear: both;
	margin-top: 10px;
}

.j2store .have-account {
	display: block;
	width: 100%;
}

.j2store .j2store-checkout-login-form {
	padding: 15px 5px;
	border: 1px solid #ccc;
}

.j2store-order-action-icons a {
	font-size: 16px;
	padding: 10px 10px;
}

.j2store .checkout-heading {
	background: none repeat scroll 0 0 #F8F8F8;
	border: 1px solid #DBDEE1;
	color: #555555;
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 15px;
	padding: 8px;
}

.j2store .checkout-heading a {
	float: right;
	font-weight: normal;
	margin-top: 1px;
	text-decoration: none;
	cursor: pointer;
}

.j2store .checkout-content {
	display: none;
	overflow-x:hidden;
	overflow-y:auto;
	padding: 0 0 15px;
}

.j2store .checkout-content .buttons {
	clear: both;
}

.j2store.checkout tr,.j2store.checkout td {
	padding-right: 10px;
}

.j2store.checkout label {
	margin: 0px;
}

.j2store #billing-existing select[size],.j2store #shipping-existing select[size]
	{
	height: auto;
}

#onCheckoutShipping_wrapper label {
	display: inline;
}

#j2store-checkout-content .shipping-make-same>label {
	display: inline;
}

#j2store-checkout-content #checkbox_tos>label {
	display: inline;
}

.j2store-product-info label {
	display: inline;
}

#j2store-cart-shipping input[type="radio"] {
	float: left;
	margin-right: 5px;
}

#j2store-cart-shipping label {
	display: block !important;
}

.j2store .cart-total td {
	text-align: right;
}

.product-price-container {
	display:flex;
	gap:0.75em;
	vertical-align: center;
}
.sale-price,.base-price {
margin-left: 0px;
color:#e14337;
font-weight: 600;
font-size: 2rem;
line-height: 2.5rem;
}
#strike {
	color:#6e87aa;
	font-weight: 400;
	font-size: 1.5rem;
	font-weight: 2rem;
	text-decoration-line: line-through;
}
.options {
    margin: 20px 0;
}

.option {
    margin-bottom: 20px;
}

.option-title {
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 1rem;
}

/* Color options */
.color-options {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.color-option {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    border: 2px solid #ddd;
    transition: all 0.3s ease;
    position: relative;
}

.color-option:hover {
    border-color: #666;
}

.color-option.active {
    border: 2px solid #333;
    box-shadow: 0 0 0 2px #fff inset;
}

/* Size options */
.size-options {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.size-option {
    padding: 8px 16px;
    border: 1px solid #ddd;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.size-option:hover {
    border-color: #666;
}

.size-option.active {
    border-color: #333;
    background: #333;
    color: white;
}

/* Hide original radio buttons */
.option input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

/* currency module css */
.j2store .currency_symbol {
	margin-right: 2px;
}

#j2store_currency a {
	border: 1px solid #ccc;
	display: inline-block;
	margin-bottom: 2px;
	margin-right: 2px;
	padding: 2px 4px;
	text-decoration: none;
	cursor: pointer;
}
