:root {
	--auth-primary: #14963a;
	--auth-primary-dark: #0f7f30;
	--auth-surface: #ffffff;
	--auth-text: #1f2d1f;
	--auth-muted: #607460;
	--auth-soft: #edf7ee;
	--auth-ring: #d8e9d8;
}

body:not(.logged-in).woocommerce-account .woocommerce,
.woocommerce-lost-password .woocommerce {
	max-width: 460px;
	margin: 20px auto;
	padding: 0;
}

.woocommerce-account #customer_login {
	background: linear-gradient(145deg, #f8fcf8 0%, #f0f8f1 100%);
	border-radius: 28px;
	padding: 14px 24px 20px;
	box-shadow: 0 18px 45px rgba(20, 150, 58, 0.12);
}

.woocommerce-account #customer_login h2,
.woocommerce-lost-password .woocommerce h2 {
	margin: 0 0 18px;
	text-align: center !important;
	color: #172117;
	font-size: clamp(36px, 4.8vw, 52px);
	font-weight: 700;
	line-height: 1.06;
	letter-spacing: -0.02em;
}

.woocommerce-account #customer_login .u-column1 > h2,
.woocommerce-account #customer_login .u-column2 > h2 {
	display: none !important;
}

.nd-auth-switch {
	display: none !important;
}

.nd-auth-switch-btn {
	min-width: 132px;
	height: 44px;
	border: 0;
	border-radius: 999px;
	background: #e6f2e6;
	color: #356535;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.02em;
	cursor: pointer;
	transition: all 0.2s ease;
}

.nd-auth-switch-btn.is-active {
	background: linear-gradient(135deg, var(--auth-primary) 0%, var(--auth-primary-dark) 100%);
	color: #ffffff;
	box-shadow: 0 10px 24px rgba(20, 150, 58, 0.25);
}

.woocommerce-account .u-column1,
.woocommerce-account .u-column2 {
	width: 100% !important;
	float: none !important;
	padding: 0 !important;
	margin: 0 auto !important;
}

.nd-auth-hidden {
	display: none !important;
}

.woocommerce-account form.woocommerce-form-login,
.woocommerce-account form.woocommerce-form-register,
.woocommerce-lost-password form.lost_reset_password {
	width: 100% !important;
	max-width: 460px;
	margin: 0 auto !important;
	padding: 24px 20px 20px;
	border: 0 !important;
	border-radius: 22px;
	background: var(--auth-surface);
	box-shadow: 0 14px 34px rgba(18, 56, 18, 0.09);
}

.woocommerce-account form label,
.woocommerce-account form p,
.woocommerce-lost-password form label,
.woocommerce-lost-password form p,
.woocommerce-account .woocommerce-LostPassword.lost_password a {
	font-size: 15px;
}

.woocommerce-account form label,
.woocommerce-lost-password form label {
	display: block;
	margin-bottom: 8px;
	color: #365336;
	font-weight: 500;
}

.woocommerce-account form .form-row,
.woocommerce-lost-password form .form-row {
	margin: 0 0 14px;
	padding: 0;
}

.woocommerce-account form input.input-text,
.woocommerce-account form .form-row input.input-text,
.woocommerce-account form .form-row input[type="password"],
.woocommerce-account form .form-row input[type="email"],
.woocommerce-account form .form-row input[type="text"],
.woocommerce-lost-password form input.input-text,
.woocommerce-lost-password form .form-row input.input-text,
.woocommerce-lost-password form .form-row input[type="password"],
.woocommerce-lost-password form .form-row input[type="email"],
.woocommerce-lost-password form .form-row input[type="text"] {
	min-height: 48px;
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--auth-soft) !important;
	color: var(--auth-text);
	font-size: 15px;
	padding: 0 16px 0 44px;
	box-shadow: inset 0 0 0 1px var(--auth-ring) !important;
}

.woocommerce-account #username,
.woocommerce-account #reg_username,
.woocommerce-account #reg_email,
.woocommerce-lost-password #user_login {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23658a65' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3Cpath d='M5 21a7 7 0 0 1 14 0'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 15px center;
	background-size: 16px 16px;
}

.woocommerce-account #password,
.woocommerce-account #reg_password,
.woocommerce-lost-password #password_1,
.woocommerce-lost-password #password_2 {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23658a65' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 1 1 8 0v3'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 15px center;
	background-size: 16px 16px;
}

.woocommerce-account form input.input-text:focus,
.woocommerce-account form .form-row input:focus,
.woocommerce-lost-password form input.input-text:focus,
.woocommerce-lost-password form .form-row input:focus {
	outline: 0;
	box-shadow: inset 0 0 0 1px #9ed7ab, 0 0 0 3px rgba(20, 150, 58, 0.14) !important;
}

.woocommerce-account .woocommerce-form-login .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 6px 0 12px;
	color: #2d4f2d;
	font-size: 16px;
}

.woocommerce-account form.woocommerce-form-login .button,
.woocommerce-account form.woocommerce-form-register .button,
.woocommerce-lost-password form.lost_reset_password .button {
	width: 100%;
	min-height: 50px;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(90deg, var(--auth-primary) 0%, var(--auth-primary-dark) 100%) !important;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	box-shadow: 0 12px 24px rgba(20, 150, 58, 0.28);
}

.woocommerce-account form.woocommerce-form-login .button:hover,
.woocommerce-account form.woocommerce-form-register .button:hover,
.woocommerce-lost-password form.lost_reset_password .button:hover {
	filter: brightness(0.96);
	transform: translateY(-1px);
}

.woocommerce-account .woocommerce-LostPassword.lost_password {
	margin: 14px 0 0;
	text-align: center;
}

.woocommerce-account .woocommerce-LostPassword.lost_password a {
	color: #3f6b3f;
	text-decoration: none;
}

.nd-auth-inline-switch {
	margin: 14px 0 0;
	text-align: center;
	color: var(--auth-muted);
	font-size: 15px;
}

.nd-auth-inline-switch a {
	color: var(--auth-primary-dark);
	font-weight: 700;
	text-decoration: none;
}

.nd-auth-inline-switch a:hover,
.woocommerce-account .woocommerce-LostPassword.lost_password a:hover {
	color: var(--auth-primary);
}

.woocommerce-account .show-password-input,
.woocommerce-account button.show-password-input {
	border: 0 !important;
	background: transparent;
	color: #4f764f;
}

/* Logged-in My Account dashboard layout */
.logged-in.woocommerce-account .woocommerce {
	--account-primary: #14963a;
	--account-primary-dark: #0f7f30;
	--account-primary-10: color-mix(in srgb, var(--account-primary) 12%, white);
	--account-border: color-mix(in srgb, var(--account-primary) 24%, #d8dde6);
	max-width: 1240px;
	margin: 28px auto 36px;
	padding: 0 12px;
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}

.logged-in.woocommerce-account .woocommerce::after {
	content: "";
	display: block;
	clear: both;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation,
.logged-in.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation {
	background: #f8fbf8;
	border: 1px solid var(--account-border);
	border-radius: 16px;
	padding: 10px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	margin: 0;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul li + li {
	margin-top: 6px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 13px 14px;
	border-radius: 12px;
	color: #2b3a2b;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--account-primary-10) !important;
	color: var(--account-primary) !important;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	background: color-mix(in srgb, var(--account-primary) 8%, white) !important;
	color: var(--account-primary) !important;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content {
	background: #ffffff;
	border: 1px solid var(--account-border);
	border-radius: 16px;
	padding: 24px;
	min-height: 270px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content p,
.logged-in.woocommerce-account .woocommerce-MyAccount-content li,
.logged-in.woocommerce-account .woocommerce-MyAccount-content label,
.logged-in.woocommerce-account .woocommerce-MyAccount-content td,
.logged-in.woocommerce-account .woocommerce-MyAccount-content th {
	font-size: 16px;
	line-height: 1.7;
	color: #2b3a2b;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content a {
	color: var(--account-primary) !important;
	text-decoration: none;
	font-weight: 600;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content a:hover {
	text-decoration: underline;
}

.logged-in.woocommerce-account .woocommerce a,
.logged-in.woocommerce-account .e-my-account-tab .woocommerce a {
	color: var(--account-primary) !important;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .button,
.logged-in.woocommerce-account .woocommerce-MyAccount-content button,
.logged-in.woocommerce-account .woocommerce-MyAccount-content input[type="submit"] {
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(90deg, var(--account-primary) 0%, color-mix(in srgb, var(--account-primary) 75%, #0b6d2a) 100%) !important;
	color: #fff !important;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 11px 22px;
	box-shadow: 0 8px 20px color-mix(in srgb, var(--account-primary) 28%, transparent);
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.logged-in.woocommerce-account .woocommerce-MyAccount-content button:hover,
.logged-in.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:hover {
	filter: brightness(0.96);
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content table {
	border: 1px solid var(--account-border);
	border-radius: 14px;
	overflow: hidden;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content table th,
.logged-in.woocommerce-account .woocommerce-MyAccount-content table td {
	border-color: color-mix(in srgb, var(--account-primary) 16%, #dce2ea);
}

.logged-in.woocommerce-account .woocommerce-Addresses .woocommerce-Address,
.logged-in.woocommerce-account .woocommerce-EditAccountForm,
.logged-in.woocommerce-account .woocommerce-ResetPassword {
	background: #f9fcf9;
	border: 1px solid var(--account-border);
	border-radius: 14px;
	padding: 16px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.logged-in.woocommerce-account .woocommerce-MyAccount-content select,
.logged-in.woocommerce-account .woocommerce-MyAccount-content textarea {
	border: 1px solid color-mix(in srgb, var(--account-primary) 20%, #d8dee7) !important;
	border-radius: 12px !important;
	background: #fff !important;
	font-size: 15px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content input.input-text:focus,
.logged-in.woocommerce-account .woocommerce-MyAccount-content select:focus,
.logged-in.woocommerce-account .woocommerce-MyAccount-content textarea:focus {
	outline: none;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--account-primary) 18%, transparent);
}

/* Elementor My Account widget compatibility fix (force 2-column layout) */
.logged-in.woocommerce-account .woocommerce,
.logged-in.woocommerce-account .e-my-account-tab .woocommerce {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	gap: 24px !important;
}

.logged-in.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,
.logged-in.woocommerce-account .e-my-account-tab .woocommerce > .woocommerce-MyAccount-navigation,
.logged-in.woocommerce-account .woocommerce > .e-wc-account-tabs-nav {
	flex: 0 0 280px !important;
	width: 280px !important;
	max-width: 280px !important;
	float: none !important;
	margin: 0 !important;
}

.logged-in.woocommerce-account .woocommerce > .woocommerce-MyAccount-content,
.logged-in.woocommerce-account .e-my-account-tab .woocommerce > .woocommerce-MyAccount-content {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: auto !important;
	float: none !important;
	margin: 0 !important;
}

.logged-in.woocommerce-account .woocommerce > .woocommerce-MyAccount-content > .woocommerce-MyAccount-content-wrapper,
.logged-in.woocommerce-account .e-my-account-tab .woocommerce > .woocommerce-MyAccount-content > .woocommerce-MyAccount-content-wrapper {
	border: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px !important;
	align-items: stretch;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses::before,
.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses::after {
	display: none !important;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses .u-column1,
.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses .u-column2,
.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses .col-1,
.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses .col-2,
.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	max-width: 100% !important;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address {
	display: flex;
	flex-direction: column;
	min-height: 220px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title h2 {
	margin: 0 !important;
	color: #213121;
	font-size: clamp(32px, 3.2vw, 46px);
	line-height: 1.08;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title .edit {
	color: var(--account-primary) !important;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title .edit:hover {
	text-decoration: underline;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address address {
	margin-top: auto;
	font-size: 15px;
	line-height: 1.7;
	color: #2b3a2b;
	white-space: pre-line;
}

@media (max-width: 767px) {
	.woocommerce-account #customer_login {
		padding: 18px 14px 18px;
		border-radius: 22px;
	}

	.woocommerce-account form.woocommerce-form-login,
	.woocommerce-account form.woocommerce-form-register,
	.woocommerce-lost-password form.lost_reset_password {
		padding: 18px 14px 15px;
		border-radius: 18px;
	}

	.nd-auth-switch-btn {
		min-width: 120px;
	}

	.logged-in.woocommerce-account .woocommerce {
		display: block !important;
		gap: 14px;
		margin-top: 14px;
		padding: 0 8px;
	}

	.logged-in.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,
	.logged-in.woocommerce-account .e-my-account-tab .woocommerce > .woocommerce-MyAccount-navigation,
	.logged-in.woocommerce-account .woocommerce > .e-wc-account-tabs-nav,
	.logged-in.woocommerce-account .woocommerce > .woocommerce-MyAccount-content,
	.logged-in.woocommerce-account .e-my-account-tab .woocommerce > .woocommerce-MyAccount-content {
		width: 100% !important;
		max-width: 100% !important;
	}

	.logged-in.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	.logged-in.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	.logged-in.woocommerce-account .woocommerce-MyAccount-navigation,
	.logged-in.woocommerce-account .woocommerce-MyAccount-content {
		border-radius: 14px;
	}

	.logged-in.woocommerce-account .woocommerce-MyAccount-content {
		padding: 16px;
	}
}
