/*
 * ExoLabz - My Account.
 *
 * WooCommerce's stock account area rendered as an unstyled text list beside
 * bare paragraphs. Rebuilt as a two-column layout: a dark navigation card with
 * icons on the left, a content card on the right, and the logged-out
 * login/register screen as two matching panels.
 */

.woocommerce-account .woocommerce {
	max-width: 1140px;
	margin: 0 auto;
	padding: 8px 0 64px;
}

@media (min-width: 861px) {
	.woocommerce-account .woocommerce {
		display: grid;
		grid-template-columns: 262px minmax(0, 1fr);
		gap: 28px;
		align-items: start;
	}
	.woocommerce-account .woocommerce > .woocommerce-notices-wrapper {
		grid-column: 1 / -1;
		grid-row: 1;
	}
	/* The theme places these in reverse, so pin them. */
	.woocommerce-account .woocommerce-MyAccount-navigation {
		grid-column: 1;
		grid-row: 2;
		order: 1;
	}
	.woocommerce-account .woocommerce-MyAccount-content {
		grid-column: 2;
		grid-row: 2;
		order: 2;
	}
	/* The logged-out login screen has no sidebar - let it use the full width. */
	.woocommerce-account.woocommerce-page:not(.logged-in) .woocommerce {
		display: block;
	}
}

/* ---------- Navigation card ---------- */

.woocommerce-account .woocommerce-MyAccount-navigation {
	width: auto;
	float: none;
	background: #171331;
	border: 1px solid #332A5C;
	border-radius: 16px;
	padding: 10px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.38);
	position: sticky;
	top: 96px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 0;
	border-radius: 11px;
	color: #C9C2E6;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.3;
	text-decoration: none;
	transition: background-color 0.18s ease, color 0.18s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a::before {
	content: "";
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	background-color: currentColor;
	opacity: 0.85;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 18px 18px;
	mask-size: 18px 18px;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3Crect%20x%3D'14'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3Crect%20x%3D'14'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3Crect%20x%3D'3'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3C%2Fsvg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3Crect%20x%3D'14'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3Crect%20x%3D'14'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3Crect%20x%3D'3'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1.5'%2F%3E%3C%2Fsvg%3E");
}

.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M6%202%203%206v14a2%202%200%200%200%202%202h14a2%202%200%200%200%202-2V6l-3-4z'%2F%3E%3Cpath%20d%3D'M3%206h18'%2F%3E%3Cpath%20d%3D'M16%2010a4%204%200%200%201-8%200'%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M6%202%203%206v14a2%202%200%200%200%202%202h14a2%202%200%200%200%202-2V6l-3-4z'%2F%3E%3Cpath%20d%3D'M3%206h18'%2F%3E%3Cpath%20d%3D'M16%2010a4%204%200%200%201-8%200'%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'%2F%3E%3Cpolyline%20points%3D'7%2010%2012%2015%2017%2010'%2F%3E%3Cline%20x1%3D'12'%20y1%3D'15'%20x2%3D'12'%20y2%3D'3'%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'%2F%3E%3Cpolyline%20points%3D'7%2010%2012%2015%2017%2010'%2F%3E%3Cline%20x1%3D'12'%20y1%3D'15'%20x2%3D'12'%20y2%3D'3'%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2010c0%207-9%2013-9%2013s-9-6-9-13a9%209%200%200%201%2018%200z'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'10'%20r%3D'3'%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2010c0%207-9%2013-9%2013s-9-6-9-13a9%209%200%200%201%2018%200z'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'10'%20r%3D'3'%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M20%2021v-2a4%204%200%200%200-4-4H8a4%204%200%200%200-4%204v2'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'7'%20r%3D'4'%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M20%2021v-2a4%204%200%200%200-4-4H8a4%204%200%200%200-4%204v2'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'7'%20r%3D'4'%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M9%2021H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h4'%2F%3E%3Cpolyline%20points%3D'16%2017%2021%2012%2016%207'%2F%3E%3Cline%20x1%3D'21'%20y1%3D'12'%20x2%3D'9'%20y2%3D'12'%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M9%2021H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h4'%2F%3E%3Cpolyline%20points%3D'16%2017%2021%2012%2016%207'%2F%3E%3Cline%20x1%3D'21'%20y1%3D'12'%20x2%3D'9'%20y2%3D'12'%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--coupon-affiliate a::before,
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--affiliate a::before,
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--affiliates a::before,
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--affiliate-dashboard a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M10%2013a5%205%200%200%200%207.54.54l3-3a5%205%200%200%200-7.07-7.07l-1.72%201.71'%2F%3E%3Cpath%20d%3D'M14%2011a5%205%200%200%200-7.54-.54l-3%203a5%205%200%200%200%207.07%207.07l1.71-1.71'%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23000'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M10%2013a5%205%200%200%200%207.54.54l3-3a5%205%200%200%200-7.07-7.07l-1.72%201.71'%2F%3E%3Cpath%20d%3D'M14%2011a5%205%200%200%200-7.54-.54l-3%203a5%205%200%200%200%207.07%207.07l1.71-1.71'%2F%3E%3C%2Fsvg%3E"); }

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	background: rgba(127, 64, 244, 0.16);
	color: #FFFFFF;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: linear-gradient(90deg, rgba(127, 64, 244, 0.42), rgba(127, 64, 244, 0.12));
	color: #FFFFFF;
	box-shadow: inset 3px 0 0 0 #9B67FF;
}

/* ---------- Content card ---------- */

.woocommerce-account .woocommerce-MyAccount-content {
	width: auto;
	float: none;
	background: #171331;
	border: 1px solid #332A5C;
	border-radius: 16px;
	padding: 30px 32px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.38);
	color: #C9C2E6;
}

.woocommerce-account .woocommerce-MyAccount-content p,
.woocommerce-account .woocommerce-MyAccount-content li,
.woocommerce-account .woocommerce-MyAccount-content address {
	color: #C9C2E6;
	font-size: 15px;
	line-height: 1.65;
}

.woocommerce-account .woocommerce-MyAccount-content strong,
.woocommerce-account .woocommerce-MyAccount-content b {
	color: #F3F1FB;
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-MyAccount-content legend {
	color: #F3F1FB;
	margin-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
	color: #B98FFF;
	text-decoration: none;
	border-bottom: 1px solid rgba(185, 143, 255, 0.35);
}

.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover {
	color: #FFFFFF;
	border-bottom-color: #9B67FF;
}

/* ---------- Login / Register ---------- */

#customer_login {
	display: grid;
	gap: 24px;
	grid-template-columns: 1fr;
	max-width: 940px;
	margin: 0 auto;
}

@media (min-width: 861px) {
	#customer_login { grid-template-columns: 1fr 1fr; }
	/* Same reversal as the account columns - pin them. */
	#customer_login .u-column1 { grid-column: 1; order: 1; }
	#customer_login .u-column2 { grid-column: 2; order: 2; }
}

#customer_login .u-column1,
#customer_login .u-column2 {
	width: auto;
	float: none;
	background: #171331;
	border: 1px solid #332A5C;
	border-radius: 18px;
	padding: 30px 30px 26px;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.42);
}

#customer_login h2 {
	color: #F3F1FB;
	font-size: 22px;
	margin: 0 0 6px;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

#customer_login form {
	border: 0;
	padding: 18px 0 0;
	margin: 0;
	background: transparent;
}

/* ---------- Fields ---------- */

.woocommerce-account label {
	display: block;
	color: #B4ADD2;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	margin-bottom: 7px;
}

.woocommerce-account .required { color: #9B67FF; }

.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="number"],
.woocommerce-account textarea,
.woocommerce-account select,
.woocommerce-account .select2-container .select2-selection--single {
	width: 100%;
	background: #100D24 !important;
	border: 1px solid #332A5C !important;
	border-radius: 10px !important;
	color: #F3F1FB !important;
	padding: 12px 14px !important;
	height: auto !important;
	font-size: 15px;
	box-shadow: none !important;
	transition: border-color 0.16s ease, box-shadow 0.16s ease;
}

.woocommerce-account input:focus,
.woocommerce-account textarea:focus,
.woocommerce-account select:focus {
	outline: none;
	border-color: #7F40F4 !important;
	box-shadow: 0 0 0 3px rgba(127, 64, 244, 0.22) !important;
}

.woocommerce-account input::placeholder,
.woocommerce-account textarea::placeholder { color: #6F679A; }

.woocommerce-account .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: center;
	gap: 9px;
	text-transform: none;
	letter-spacing: 0;
	font-size: 14px;
	font-weight: 400;
	color: #B4ADD2;
}

.woocommerce-account .woocommerce-form__input-checkbox {
	width: 16px;
	height: 16px;
	accent-color: #7F40F4;
	margin: 0;
}

.woocommerce-account .woocommerce-password-hint,
.woocommerce-account .woocommerce-privacy-policy-text,
.woocommerce-account em,
.woocommerce-account small {
	color: #9C94BE;
	font-size: 13px;
	line-height: 1.55;
}

/* ---------- Buttons ---------- */

.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account a.button {
	background: linear-gradient(135deg, #7F40F4, #9B67FF) !important;
	border: 0 !important;
	border-radius: 11px !important;
	color: #FFFFFF !important;
	font-weight: 600 !important;
	letter-spacing: 0.01em;
	padding: 13px 24px !important;
	box-shadow: 0 8px 20px rgba(127, 64, 244, 0.32);
	transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
}

.woocommerce-account .button:hover,
.woocommerce-account button.button:hover,
.woocommerce-account a.button:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
	box-shadow: 0 12px 26px rgba(127, 64, 244, 0.42);
}

.woocommerce-account .woocommerce-LostPassword a {
	font-size: 14px;
}

/* ---------- Tables (orders, downloads, order detail) ---------- */

.woocommerce-account table.shop_table,
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-table {
	width: 100%;
	background: #100D24;
	border: 1px solid #332A5C !important;
	border-radius: 14px !important;
	border-collapse: separate !important;
	border-spacing: 0;
	overflow: hidden;
	color: #C9C2E6;
}

.woocommerce-account table.shop_table th {
	background: #221A45;
	color: #F3F1FB;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 14px 16px;
	border: 0 !important;
}

.woocommerce-account table.shop_table td {
	padding: 15px 16px;
	border: 0 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
	color: #C9C2E6;
	vertical-align: middle;
}

.woocommerce-account table.shop_table tbody tr:hover td {
	background: rgba(127, 64, 244, 0.07);
}

/* ---------- Addresses ---------- */

.woocommerce-account .woocommerce-Addresses {
	display: grid;
	gap: 20px;
	grid-template-columns: 1fr;
}

@media (min-width: 700px) {
	.woocommerce-account .woocommerce-Addresses { grid-template-columns: 1fr 1fr; }
	.woocommerce-account .woocommerce-Addresses .u-column1 { grid-column: 1; order: 1; }
	.woocommerce-account .woocommerce-Addresses .u-column2 { grid-column: 2; order: 2; }
}

.woocommerce-account .woocommerce-Address {
	width: auto;
	float: none;
	background: #100D24;
	border: 1px solid #332A5C;
	border-radius: 14px;
	padding: 22px 24px;
}

.woocommerce-account .woocommerce-Address-title h2,
.woocommerce-account .woocommerce-Address-title h3 {
	font-size: 17px;
	margin: 0;
}

.woocommerce-account .woocommerce-Address-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

/* ---------- Notices ---------- */

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
	background: #100D24 !important;
	border: 1px solid #332A5C !important;
	border-top: 3px solid #9B67FF !important;
	border-radius: 12px !important;
	color: #E7E2FA !important;
	padding: 16px 20px !important;
	list-style: none;
}

.woocommerce-account .woocommerce-error {
	border-top-color: #F0616B !important;
}

.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-error::before {
	color: #9B67FF !important;
}

/* ---------- Fieldsets ---------- */

.woocommerce-account fieldset {
	border: 1px solid #332A5C;
	border-radius: 14px;
	padding: 20px 22px;
	margin: 26px 0 0;
}

.woocommerce-account fieldset legend {
	padding: 0 8px;
	font-size: 15px;
}

@media (max-width: 860px) {
	.woocommerce-account .woocommerce-MyAccount-navigation { position: static; margin-bottom: 20px; }
	.woocommerce-account .woocommerce-MyAccount-content { padding: 22px 18px; }
	#customer_login .u-column1,
	#customer_login .u-column2 { padding: 22px 18px; }
}
