.customer-login-form {
	position: relative;

	h2 {
		font-size: 1.786em;
		line-height: 1.6em;
		display: block;
		padding-bottom: 0.400em;
		position: relative;
		margin-bottom: 1.360em;
		border-bottom: 1px solid $border-color;

		&::after {
			content: ' ';
			border-bottom: 2px solid transparent;
			display: block;
			width: 20%;
			position: absolute;
			bottom: -1px;
		}
	}

	.button {
		font-weight: bold;
	}

	form.register {
		> p.form-row:nth-last-child(2) {
			margin-bottom: 3.571em;
		}
	}

	input#password,
	input#reg_password,
	input[type=password] {
		padding-right: 40px;
	}
}

.no-registration-form {
	@include make-col(5);
	margin: 0 auto;
}

#customer_login {
	padding: 2.5em 2.143em;
	@include clearfix();
	position: relative;

	@include media-breakpoint-up(md) {
		&::before {
			border-right: 1px solid $border-color;
			height: 100%;
			position: absolute;
			content: ' ';
			right: 50%;
			top: 0;
		}

		.col-1 {
			padding-right: 6.071em;
		}

		.col-2 {
			padding-left: 5.857em;
		}
	}

	.before-login-text,
	.before-register-text {
		margin-bottom: 2.143em;
	}

	.register-benefits {
		clear: both;

		h3 {
			font-size: 1.286em;
			line-height: 1em;
			margin-bottom: 1.444em;
		}

		ul {
			padding-left: 0;
			margin-bottom: 0;
			list-style: none;

			> li {
				line-height: 2.143em;

				&::before {
					content: "\f00c";
					color: $success;
					@include fa-icon();
					@include fa-fas;
					font-size: 1.143em;
					margin-right: 1em;
				}
			}
		}
	}
}

.woocommerce-MyAccount-paymentMethods.table>:not(:last-child)>:last-child>*,
table.woocommerce-MyAccount-paymentMethods>:not(:last-child)>:last-child>* {
	border-color: $border-color;
}

.or-text {
	display: none;
	@include media-breakpoint-up(md) {
		position: absolute;
		display: inline;
		right: 50%;
		top: 50%;
		transform: translate(50%);
		width: 50px;
		height: 50px;
		line-height: 50px;
		text-align: center;
		border-radius: 50%;
		border: 1px solid $border-color;
		font-style: italic;
		background-color: $white;
		z-index: 1;
	}
}

.address, .addresses, .track-order,.woocommerce-Address {
	header.title {
		border-bottom: 1px solid $border-color;
		margin-bottom: 1.360em;
		@include clearfix;

		h3 {
			font-size: 1.786em;
			line-height: 1.6em;
			display: block;
			position: relative;
			float: left;
			padding-bottom: 0.400em;
			margin-bottom: 0;
			width: 90%;

			&::after {
				content: ' ';
				border-bottom: 2px solid transparent;
				display: block;
				width: 20%;
				position: absolute;
				bottom: -1px;
			}
		}

		.edit {
			float: right;
			line-height: 3.571em;
		}
	}

	address {
		line-height: 2em;
	}
}

.woocommerce-account .woocommerce h2 {
	font-size: 1.786em;
	line-height: 1.6em;
	display: block;
	position: relative;
	padding-bottom: 0.400em;
	border-bottom: 1px solid $border-color;
	margin-bottom: 1.360em;

	&::after {
		content: ' ';
		border-bottom: 2px solid transparent;
		display: block;
		width: 20%;
		position: absolute;
		bottom: -1px;
	}
}

.woocommerce-edit-address {
	form {
		h3 {
			@include make-title();
		}
	}
}

.edit-account {
	legend {
		@include make-title();
	}
}

.my_account_orders {
	.order-actions {
		.button.view {
			padding: 0.5875em 2.625em;
			font-size: 0.875em;
		}
	}
}

.notes {
	padding-left: 0;
	list-style: none;
}

.note {
	margin-bottom: 2em;

	.meta {
		color: #999;
		font-size: 11px;
		line-height: 1.5;
	}

	.description {
		padding: 10px;
		background-color: #efefef;
		font-size: 13px;
		position: relative;

		&::after {
			content: "";
			display: block;
			position: absolute;
			top: -10px;
			left: 20px;
			width: 0;
			height: 0;
			border-width: 0 0 10px 10px;
			border-style: solid;
			border-color: #efefef transparent;
		}

		p:last-child {
			margin: 0;
			padding: 0;
		}
	}
}

.order-again {
	margin-bottom: 2.5em;

	.button {
		padding: 0.6875rem 2.625rem;
	}
}

.order-info {
	mark {
		padding: inherit;
		background-color: transparent;
		font-weight: bold;
	}
}

.customer_details,
.account-orders-table,
.order_details {
	thead {
		th,
		td {
			border-bottom-color: $border-color !important;
			border-top: 1px solid $border-color;
		}
	}

	tbody td {
		border-bottom-color: $border-color !important;
	}
}

.order_details.bacs_details {
	list-style: none;
	padding: 0;
}

.customer_details {
	border: $table-border-width solid $table-border-color;

	th,
	td {
		border: $table-border-width solid $table-border-color;
	}

	thead {
		th,
		td {
			border-bottom-width: (2 * $table-border-width);
		}
	}
}

.order-info,
.commentlist.notes,
.order_details,
.customer_details,
.addresses {
	margin-bottom: 2.5em;
}

label[for="rememberme"] {
	margin-left: 0.75em;
}

.woocommerce-account {
	.woocommerce {
		@include make-row;
	}

	.woocommerce-MyAccount-navigation,
	.woocommerce-MyAccount-content {
		@include make-col-ready;
	}

	.woocommerce-MyAccount-navigation {
		@include media-breakpoint-up(md) {
			@include make-col(3);
		}
	}

	.woocommerce-MyAccount-content {
		@include media-breakpoint-up(md) {
			@include make-col(9);
		}


		> .u-column1.col-1.woocommerce-Address {
			@include make-col(12);
		}

		.woocommerce-message,
		.woocommerce-Message {
			.button {
				background-color: transparent !important;
				padding: 0;

				&:hover {
					color: $body-color !important;
				}
			}
		}
	}
}

.woocommerce-MyAccount-navigation {
	ul {
		margin-left: 0;
		border-top: 1px solid $border-color;
		padding-left: 0;

		li {
			list-style: none;
			border-bottom: 1px solid $border-color;
			position: relative;

			&.is-active {
				a {
					font-weight: bold;
				}
				a:before {
					opacity: 1;
				}
			}

			a {
				padding: .857em 0;
				display: block;

				&:before {
					@include fa-icon();
					@include fa-fas;
					line-height: 1.618;
					margin-left: .53em;
					width: 1.387em;
					text-align: right;
					float: right;
					opacity: .25;
				}

				&:hover {
					&:before {
						opacity: 1;
					}
				}
			}

			&.woocommerce-MyAccount-navigation-link--dashboard a:before {
				content: "\f3fd";
			}

			&.woocommerce-MyAccount-navigation-link--orders a:before {
				content: "\f291";
			}

			&.woocommerce-MyAccount-navigation-link--downloads a:before {
				content: "\f1c6";
			}

			&.woocommerce-MyAccount-navigation-link--edit-address a:before {
				content: "\f015";
			}

			&.woocommerce-MyAccount-navigation-link--payment-methods a:before {
				content: "\f09d";
			}

			&.woocommerce-MyAccount-navigation-link--edit-account a:before {
				content: "\f007";
			}

			&.woocommerce-MyAccount-navigation-link--customer-logout a:before {
				content: "\f2f5";
			}

			&.woocommerce-MyAccount-navigation-link--subscriptions a:before {
				content: "\f021";
			}
		}
	}
}

.my_account_orders,
.woocommerce-MyAccount-downloads {
	.button {
		padding: .618em 2em;
		font-size: .857em;
		margin-right: .236em;
	}
}

.my_account_orders {
	.button.view {
		&:after {
			@include fa-icon();
			@include fa-fas;
			content: "\f06e";
			margin-left: .53em;
		}
	}
}

p.order-again {
	.button {
		&:after {
			@include fa-icon();
			@include fa-fas;
			content: "\f021";
			margin-left: .53em;
		}
	}
}

.woocommerce-MyAccount-downloads {
	th, td {
		vertical-align: middle;
	}

	.button {
		&:after {
			@include fa-icon();
			@include fa-fas;
			content: "\f381";
			margin-left: .53em;
		}
	}
}

.woocommerce-MyAccount-content {
	h2 {
		font-size: 2em;
		font-weight: 600;
	}

	#payment {
		.payment_methods {
			margin-bottom: 1.618em !important;

			li {
				.payment_box {
					background-color: rgba(#000,.05);
				}
			}
		}
	}

	.edit-account {
		@include media-breakpoint-up(xl) {
			.form-row-first,
			.form-row-last {
				width: 49.8%;
				display: inline-block;
			}

			.form-row-first {
				padding-right: 15px;
			}

			.form-row-last {
				padding-left: 15px;
			}
		}
	}
}

.woocommerce-form-track-order {
	@include media-breakpoint-up(lg) {
		.form-row-first,
		.form-row-last {
			width: 49.8%;
			display: inline-block;
		}

		.form-row-first {
			padding-right: 15px;
		}

		.form-row-last {
			padding-left: 15px;
		}
	}

	.button {
		padding: .594rem 2rem;
	}
}

.woocommerce-form { 
    .show-password-input::before {
        background-repeat: no-repeat;
        background-size: cover;
        background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.3 3.3C16.9 2.9 16.2 2.9 15.7 3.3L13.3 5.7C12.2437 5.3079 11.1267 5.1048 10 5.1C6.2 5.2 2.8 7.2 1 10.5C1.2 10.9 1.5 11.3 1.8 11.7C2.6 12.8 3.6 13.7 4.7 14.4L3 16.1C2.6 16.5 2.5 17.2 3 17.7C3.4 18.1 4.1 18.2 4.6 17.7L17.3 4.9C17.7 4.4 17.7 3.7 17.3 3.3ZM6.7 12.3L5.4 13.6C4.2 12.9 3.1 11.9 2.3 10.7C3.5 9 5.1 7.8 7 7.2C5.7 8.6 5.6 10.8 6.7 12.3ZM10.1 9C9.6 8.5 9.7 7.7 10.2 7.2C10.7 6.8 11.4 6.8 11.9 7.2L10.1 9ZM18.3 9.5C17.8 8.8 17.2 8.1 16.5 7.6L15.5 8.6C16.3 9.2 17 9.9 17.6 10.8C15.9 13.4 13 15 9.9 15H9.1L8.1 16C8.8 15.9 9.4 16 10 16C13.3 16 16.4 14.4 18.3 11.7C18.6 11.3 18.8 10.9 19.1 10.5C18.8 10.2 18.6 9.8 18.3 9.5ZM14 10L10 14C12.2 14 14 12.2 14 10Z" fill="%23111111"/></svg>');
        content: '';
        display: block;
        height: 22px;
        width: 22px;
    }

    .show-password-input.display-password::before {
        background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.3 9.49999C15 4.89999 8.50002 3.79999 3.90002 7.19999C2.70002 8.09999 1.70002 9.29999 0.900024 10.6C1.10002 11 1.40002 11.4 1.70002 11.8C5.00002 16.4 11.3 17.4 15.9 14.2C16.8 13.5 17.6 12.8 18.3 11.8C18.6 11.4 18.8 11 19.1 10.6C18.8 10.2 18.6 9.79999 18.3 9.49999ZM10.1 7.19999C10.6 6.69999 11.4 6.69999 11.9 7.19999C12.4 7.69999 12.4 8.49999 11.9 8.99999C11.4 9.49999 10.6 9.49999 10.1 8.99999C9.60003 8.49999 9.60003 7.69999 10.1 7.19999ZM10 14.9C6.90002 14.9 4.00002 13.3 2.30002 10.7C3.50002 8.99999 5.10002 7.79999 7.00002 7.19999C6.30002 7.99999 6.00002 8.89999 6.00002 9.89999C6.00002 12.1 7.70002 14 10 14C12.2 14 14.1 12.3 14.1 9.99999V9.89999C14.1 8.89999 13.7 7.89999 13 7.19999C14.9 7.79999 16.5 8.99999 17.7 10.7C16 13.3 13.1 14.9 10 14.9Z" fill="%23111111"/></svg>');
    }

    button.show-password-input {
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
		background-color: transparent !important;
		border: none;
		opacity: 0.8;
		padding: 0;
		margin: 0;
		line-height: 1;
    }
    
    span.password-input {
        position: relative;
		display: block;
    }
}

.electro-dark .woocommerce-form {
	.show-password-input.display-password::before,
    .show-password-input::before {
        filter: invert(100%);
    }
}

body.electro-dark .customer-login-form {
	.input-text:focus {
		color: var(--bs-ec-dark-body);
	}
	
	input:-webkit-autofill,
	input:-webkit-autofill:focus {
		transition: background-color 0s 600000s, color 0s 600000s !important;
	}
}