/* YesMyTax - sign in / sign up pages (split screen) */
:root {
	--au-green: #3f9a4f;
	--au-green-dark: #2b7a3a;
	--au-ink: #14232b;
	--au-muted: #66737a;
	--au-line: #dfe7e2;
}
body.auth-page { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; color: var(--au-ink); background: #fff; margin: 0; }
.au-wrap { display: flex; min-height: 100vh; }

.au-side {
	width: 44%; max-width: 620px; position: relative; overflow: hidden; color: #fff;
	background: radial-gradient(circle at 80% 10%, rgba(63, 154, 79, .55), transparent 45%),
	            linear-gradient(160deg, #002a34 0%, #05424a 55%, #14532d 100%);
	padding: 44px 52px; display: flex; flex-direction: column;
}
.au-side::after {
	content: ''; position: absolute; width: 420px; height: 420px; border-radius: 50%;
	border: 60px solid rgba(255, 255, 255, .05); right: -160px; bottom: -160px;
}
.au-side-logo img { height: 48px; background: #fff; padding: 6px 12px; border-radius: 12px; }
.au-side-copy { margin: auto 0; position: relative; z-index: 1; }
.au-side-copy h2 { font-size: 44px; font-weight: 800; line-height: 1.1; margin-bottom: 18px; }
.au-side-copy p { font-size: 17px; opacity: .85; max-width: 420px; margin-bottom: 28px; }
.au-side-copy ul { list-style: none; padding: 0; margin: 0; }
.au-side-copy li { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; font-weight: 500; }
.au-side-copy li i {
	width: 34px; height: 34px; border-radius: 10px; background: rgba(255, 255, 255, .12);
	display: inline-flex; align-items: center; justify-content: center; color: #86efac;
}
.au-side-foot { font-size: 13px; opacity: .7; position: relative; z-index: 1; }

.au-main { flex: 1; display: flex; align-items: center; justify-content: center; padding: 40px 24px; background: #f7faf8; }
.au-form { width: 100%; max-width: 440px; }
.au-mobile-logo { display: none; margin-bottom: 24px; }
.au-mobile-logo img { height: 44px; }

.au-icon {
	width: 54px; height: 54px; border-radius: 16px; background: #e8f5ea; color: var(--au-green-dark);
	display: flex; align-items: center; justify-content: center; font-size: 22px; margin-bottom: 18px;
}
.au-title { font-size: 30px; font-weight: 800; margin-bottom: 6px; letter-spacing: -.01em; }
.au-sub { color: var(--au-muted); margin-bottom: 28px; }
.au-label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 7px; }

.au-field { position: relative; margin-bottom: 18px; }
.au-field > i { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: #9aa7ad; }
.au-field input {
	width: 100%; border: 1.5px solid var(--au-line); background: #fff; border-radius: 12px;
	padding: 13px 44px 13px 42px; font-size: 15px; outline: none; transition: .15s;
}
.au-field input:focus { border-color: var(--au-green); box-shadow: 0 0 0 4px #e8f5ea; }
.au-field select {
	width: 100%; border: 1.5px solid var(--au-line); background-color: #fff; border-radius: 12px;
	padding: 13px 40px 13px 42px; font-size: 15px; outline: none; appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2366737a' d='M6 8 0 0h12z'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 16px center;
}
.au-field select:focus { border-color: var(--au-green); box-shadow: 0 0 0 4px #e8f5ea; }
/* field errors, shown under the field (same behaviour as the Saadvi signup) */
.au-field.has-error input, .au-field.has-error select { border-color: #dc2626; background-color: #fffafa; }
.au-field.has-error > i { color: #dc2626; }
.au-error { color: #dc2626; font-size: 13px; font-weight: 500; margin: -12px 0 14px; display: flex; gap: 6px; align-items: baseline; }
.au-help { color: var(--au-muted); font-size: 12.5px; margin: -12px 0 16px; }
.au-field.has-error + .au-error + .au-help { margin-top: -8px; }
.au-check {display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--au-muted); margin: 2px 0 10px; cursor: pointer; }
.au-check input { margin-top: 3px; width: 17px; height: 17px; accent-color: var(--au-green); flex-shrink: 0; }
.au-eye { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); border: 0; background: none; color: #9aa7ad; padding: 6px 8px; }
.au-eye:hover { color: var(--au-ink); }

.au-btn {
	width: 100%; border: 0; border-radius: 12px; padding: 14px; font-weight: 700; font-size: 15.5px; margin-top: 6px;
	background: var(--au-ink); color: #fff; transition: .2s;
}
.au-btn:hover { background: var(--au-green-dark); color: #fff; }
.au-link { color: var(--au-green-dark); font-weight: 600; text-decoration: none; }
.au-link:hover { text-decoration: underline; }
.au-switch { text-align: center; margin: 22px 0 0; color: var(--au-muted); }
.au-back { display: inline-flex; align-items: center; gap: 6px; margin-top: 30px; color: var(--au-muted); text-decoration: none; font-size: 14px; }
.au-back:hover { color: var(--au-ink); }
.auth-page .alert { border-radius: 12px; border: 0; }

@media (max-width: 991.98px) {
	.au-side { display: none; }
	.au-mobile-logo { display: inline-block; }
	.au-main { align-items: flex-start; padding-top: 48px; }
}
