.woocommerce-account .ezdiy-commerce-shell {
	max-width: 1160px;
}

.ezdiy-account-entry {
	margin: 28px auto 54px;
	max-width: 1040px;
	position: relative;
}

.ezdiy-account-entry__intro {
	margin: 0 auto 22px;
	max-width: 720px;
	text-align: center;
}

.ezdiy-account-entry__eyebrow {
	color: #1d63c8;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .12em;
	margin: 0 0 8px;
	text-transform: uppercase;
}

.ezdiy-account-entry__intro h1 {
	color: #102f55;
	font-size: clamp(30px, 4vw, 44px);
	letter-spacing: -.035em;
	line-height: 1.08;
	margin: 0 0 10px;
}

.ezdiy-account-entry__intro p:last-child {
	color: #536a82;
	font-size: 16px;
	margin: 0;
}

.ezdiy-account-tabs {
	background: #eaf2fb;
	border: 1px solid #cbdbea;
	border-radius: 12px;
	display: grid;
	gap: 6px;
	grid-template-columns: 1fr 1fr;
	margin: 0 auto 14px;
	max-width: 560px;
	padding: 6px;
}

.ezdiy-account-tab {
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 8px;
	color: #183858;
	cursor: pointer;
	font: inherit;
	font-weight: 850;
	padding: 12px 18px;
}

.ezdiy-account-tab.is-active {
	background: #fff;
	box-shadow: 0 5px 16px rgba(16, 47, 85, .12);
	color: #174fa0;
}

.ezdiy-account-tab:focus-visible {
	outline: 3px solid rgba(29, 99, 200, .35);
	outline-offset: 2px;
}

.ezdiy-account-panels {
	position: relative;
}

.ezdiy-account-panels .ezdiy-account-panel.u-column1,
.ezdiy-account-panels .ezdiy-account-panel.u-column2 {
	float: none;
	width: 100%;
}

.ezdiy-account-panel {
	background: #fff;
	border: 1px solid #d7e3ef;
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(16, 47, 85, .10);
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 560px;
	padding: clamp(24px, 4vw, 40px);
	width: 100%;
}

.ezdiy-account-panel.is-inactive {
	height: auto;
	left: -10000px;
	pointer-events: none;
	position: absolute;
	top: 0;
	visibility: hidden;
	width: min(520px, calc(100vw - 40px));
}

.ezdiy-account-panel__heading {
	color: #102f55;
	font-size: 25px;
	letter-spacing: -.02em;
	margin: 0 0 6px;
}

.ezdiy-account-panel__copy {
	color: #60758a;
	margin: 0 0 24px;
}

.ezdiy-account-panel .woocommerce-form {
	border: 0;
	margin: 0;
	padding: 0;
}

.ezdiy-login-method-tabs {
	border-bottom: 1px solid #d8e3ef;
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: 2px 0 24px;
}

.ezdiy-login-method-tab {
	appearance: none;
	background: transparent;
	border: 0;
	border-bottom: 3px solid transparent;
	color: #526b84;
	cursor: pointer;
	font: inherit;
	font-size: 15px;
	font-weight: 800;
	margin-bottom: -1px;
	min-height: 48px;
	padding: 10px 8px;
}

.ezdiy-login-method-tab.is-active {
	border-bottom-color: #1d63c8;
	color: #174fa0;
}

.ezdiy-login-method-tab:focus-visible {
	background: #f3f7fc;
	border-radius: 7px 7px 0 0;
	outline: 3px solid rgba(29, 99, 200, .28);
	outline-offset: 2px;
}

.ezdiy-login-method-panels {
	position: relative;
}

.ezdiy-login-method-panel.is-inactive {
	height: auto;
	left: -10000px;
	pointer-events: none;
	position: absolute;
	top: 0;
	visibility: hidden;
	width: 100%;
}

.ezdiy-account-panel .form-row {
	margin: 0 0 18px;
	padding: 0;
}

.ezdiy-account-panel label {
	color: #183858;
	display: block;
	font-size: 14px;
	font-weight: 800;
	margin-bottom: 7px;
}

.ezdiy-account-panel input[type="text"],
.ezdiy-account-panel input[type="email"],
.ezdiy-account-panel input[type="password"] {
	background: #fff;
	border: 1px solid #9eb5cb;
	border-radius: 7px;
	box-shadow: none;
	box-sizing: border-box;
	font-size: 16px;
	min-height: 48px;
	padding: 10px 12px;
	width: 100%;
}

.ezdiy-account-panel input:focus {
	border-color: #1d63c8;
	box-shadow: 0 0 0 3px rgba(29, 99, 200, .14);
	outline: 0;
}

.ezdiy-account-panel .show-password-input {
	top: .65em;
}

.ezdiy-account-panel .woocommerce-form-login__rememberme {
	display: inline-flex;
	gap: 8px;
	margin: 2px 0 14px;
}

.ezdiy-account-panel .woocommerce-form-login__rememberme input {
	margin: 2px 0 0;
}

.ezdiy-login-submit-row {
	display: grid;
	gap: 10px;
}

.ezdiy-login-submit-row .button {
	justify-content: center;
	width: 100%;
}

.ezdiy-code-input-group {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	position: relative;
}

.ezdiy-account-panel .ezdiy-code-input-group input {
	border-radius: 7px 0 0 7px;
	letter-spacing: .16em;
}

.ezdiy-send-code {
	appearance: none;
	background: #eef5ff;
	border: 1px solid #9eb5cb;
	border-left: 0;
	border-radius: 0 7px 7px 0;
	color: #1558ae;
	cursor: pointer;
	font: inherit;
	font-size: 13px;
	font-weight: 850;
	min-width: 112px;
	padding: 8px 12px;
}

.ezdiy-send-code:hover,
.ezdiy-send-code:focus {
	background: #e0edff;
	color: #0f478f;
}

.ezdiy-send-code:focus-visible {
	outline: 3px solid rgba(29, 99, 200, .3);
	outline-offset: 2px;
}

.ezdiy-send-code:disabled {
	cursor: not-allowed;
	opacity: .68;
}

.ezdiy-send-code[aria-busy="true"] { cursor: wait; }

.ezdiy-verification-route { margin: 8px 0 0; }
.ezdiy-verification-route a { display: inline-flex; align-items: center; min-height: 44px; }
.ezdiy-verification-help {
	margin: 16px 0;
	padding: 0 14px;
	border: 1px solid #bdd0e4;
	border-radius: 8px;
	background: #f4f8fc;
	color: #183858;
}
.ezdiy-verification-help summary {
	padding: 12px 0;
	min-height: 44px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
}
.ezdiy-verification-help p { margin: 0 0 12px; font-size: 14px; line-height: 1.6; }
.ezdiy-verification-help .ezdiy-field-help { display: block; margin: 10px 0 14px; font-size: 13px; }
.ezdiy-account-entry .ezdiy-resend-verification {
	width: 100%;
	min-height: 44px;
	padding: 10px 12px;
	border: 1px solid #005eb8;
	border-radius: 6px;
	background: #fff;
	color: #004b93;
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	white-space: normal;
	cursor: pointer;
}
.ezdiy-account-entry .ezdiy-resend-verification:disabled { color: #50677f; border-color: #bdcbd9; background: #eef2f6; cursor: not-allowed; }
.ezdiy-account-entry .ezdiy-resend-verification:not(:disabled):hover { background: #e6f1fb; }
.ezdiy-resend-verification:focus-visible,
.ezdiy-verification-help summary:focus-visible,
.ezdiy-verification-route a:focus-visible { outline: 3px solid #005eb8; outline-offset: 3px; }

.ezdiy-field-help {
	color: #60758a;
	display: block;
	font-size: 12px;
	line-height: 1.45;
	margin-top: 7px;
}

.ezdiy-honeypot {
	height: 1px;
	left: -10000px;
	overflow: hidden;
	position: absolute;
	top: auto;
	width: 1px;
}

.ezdiy-code-turnstile-wrap {
	margin: 2px 0 15px;
	min-height: 65px;
}

.ezdiy-code-turnstile,
.ezdiy-code-turnstile iframe {
	max-width: 100%;
}

.ezdiy-code-status {
	border-radius: 7px;
	font-size: 13px;
	line-height: 1.5;
	margin: 0 0 14px;
}

.ezdiy-code-status:empty {
	display: none;
}

.ezdiy-code-status.is-success,
.ezdiy-code-status.is-error {
	border: 1px solid;
	padding: 10px 12px;
}

.ezdiy-code-status.is-success {
	background: #eff8f0;
	border-color: #b9d8bd;
	color: #235b2a;
}

.ezdiy-code-status.is-error {
	background: #fff4f3;
	border-color: #e8c1bd;
	color: #8b2e27;
}

.ezdiy-account-security-note {
	align-items: flex-start;
	background: #f3f7fc;
	border: 1px solid #d1dfed;
	border-radius: 8px;
	color: #405b76;
	display: flex;
	font-size: 12px;
	gap: 8px;
	line-height: 1.5;
	margin: 22px 0 0;
	padding: 11px 12px;
}

.ezdiy-account-security-note .dashicons {
	color: #1d63c8;
	flex: 0 0 20px;
}

.ezdiy-social-divider {
	align-items: center;
	color: #526b84;
	display: grid;
	font-size: 12px;
	grid-template-columns: 1fr auto 1fr;
	gap: 12px;
	margin: 22px 0 16px;
	text-transform: uppercase;
}

.ezdiy-social-divider::before,
.ezdiy-social-divider::after {
	background: #d8e3ef;
	content: '';
	height: 1px;
}

.ezdiy-google-signin,
.ezdiy-google-signin > [data-ezdiy-google-button] {
	display: flex;
	justify-content: center;
	width: 100%;
}

.ezdiy-google-signin iframe {
	max-width: 100%;
}

.ezdiy-account-noscript-links {
	color: #526b84;
	font-size: 13px;
	margin: 8px 0 14px;
	text-align: center;
}

.ezdiy-account-panel .button,
.woocommerce-account .woocommerce-ResetPassword .button {
	background: #1d63c8;
	border: 1px solid #1d63c8;
	border-radius: 7px;
	color: #fff;
	font-weight: 850;
	min-height: 46px;
	padding: 11px 20px;
}

.ezdiy-account-panel .button:hover,
.ezdiy-account-panel .button:focus,
.woocommerce-account .woocommerce-ResetPassword .button:hover,
.woocommerce-account .woocommerce-ResetPassword .button:focus {
	background: #174f9f;
	color: #fff;
}

.ezdiy-account-panel .lost_password {
	margin: 16px 0 0;
}

.ezdiy-account-panel .woocommerce-privacy-policy-text {
	background: #f4f8fc;
	border-radius: 7px;
	color: #536a82;
	font-size: 13px;
	margin: 12px 0 18px;
	padding: 12px 14px;
}

.ezdiy-account-panel .cf-turnstile,
.ezdiy-account-panel iframe[src*="challenges.cloudflare.com"] {
	max-width: 100%;
}

.ezdiy-account-notice {
	box-sizing: border-box;
	margin: 0 auto 18px !important;
	max-width: 720px;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	background: #f2f7fc;
	border: 1px solid #d5e2ef;
	border-radius: 12px;
	box-sizing: border-box;
	float: left;
	overflow: hidden;
	width: 240px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 8px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	list-style: none;
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	border: 0;
	border-radius: 7px;
	color: #294761;
	display: block;
	font-weight: 750;
	padding: 11px 13px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation a:focus {
	background: #1d63c8;
	color: #fff;
}

.woocommerce-account .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid #d7e3ef;
	border-radius: 12px;
	box-shadow: 0 12px 30px rgba(16, 47, 85, .07);
	box-sizing: border-box;
	float: right;
	min-height: 360px;
	padding: clamp(22px, 4vw, 38px);
	width: calc(100% - 270px);
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
	color: #102f55;
}

.woocommerce-account .woocommerce-ResetPassword,
.woocommerce-account .lost_reset_password {
	background: #fff;
	border: 1px solid #d7e3ef;
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(16, 47, 85, .10);
	box-sizing: border-box;
	margin: 32px auto 54px;
	max-width: 620px;
	padding: clamp(24px, 5vw, 42px);
}

.woocommerce-account .woocommerce-ResetPassword .form-row,
.woocommerce-account .lost_reset_password .form-row {
	float: none;
	width: 100%;
}

@media (max-width: 800px) {
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none;
		width: 100%;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 18px; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; gap: 4px; overflow-x: auto; }
	.woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
}

@media (max-width: 520px) {
	.ezdiy-account-entry { margin-top: 18px; }
	.ezdiy-account-panel { padding: 22px 18px; }
	.ezdiy-account-tabs { width: calc(100% - 10px); }
	.ezdiy-account-tab { padding: 11px 8px; }
	.ezdiy-send-code { min-width: 104px; padding-inline: 9px; }
}
