/* Auth pages (allauth) — styled to the design system. */
.ac-auth{max-width:var(--ac-container);margin:0 auto;padding:var(--ac-sp-16) var(--ac-sp-6);display:flex;justify-content:center}
.ac-auth-card{width:100%;max-width:440px;background:var(--ac-surface);border:1px solid var(--ac-border);
	border-radius:var(--ac-r-2xl);box-shadow:var(--ac-shadow-lg);padding:24px}
.ac-auth-card h1{font-size:var(--ac-fs-h2);margin:0 0 6px}
.ac-auth-card > p{color:var(--ac-text-muted);font-size:var(--ac-fs-sm);margin:0 0 20px}

/* allauth default markup: style its menu + form controls. */
.ac-auth-card ul{list-style:none;margin:0 0 16px;padding:0;display:flex;gap:16px;font-size:13px}
.ac-auth-card ul a{font-weight:700}
.ac-auth-card form p,.ac-auth-card form .form-group,.ac-auth-card form > div{margin-bottom:14px;display:flex;flex-direction:column;gap:6px}
.ac-auth-card label{font-weight:700;font-size:13px;color:var(--ac-text)}
.ac-auth-card input[type=text],.ac-auth-card input[type=email],.ac-auth-card input[type=password]{
	width:100%;background:var(--ac-surface);border:1px solid var(--ac-border-strong);border-radius:var(--ac-r-sm);
	padding:9px 12px;font-size:var(--ac-fs-base);color:var(--ac-text)}
.ac-auth-card input:focus{outline:0;border-color:var(--ac-border-focus);box-shadow:var(--ac-ring)}
.ac-auth-card input[type=checkbox]{width:auto;margin:0}
/* checkbox rows (Remember me): box first, label beside it, one line */
.ac-auth-card form p:has(input[type=checkbox]){flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:8px}
.ac-auth-card form p:has(input[type=checkbox]) label{font-weight:500;margin:0}
.ac-auth-card button[type=submit],.ac-auth-card input[type=submit]{
	width:100%;min-height:40px;background:var(--ac-cta);color:#fff;border:0;border-radius:var(--ac-r-sm);
	font-weight:700;font-size:var(--ac-fs-sm);cursor:pointer;margin-top:6px}
.ac-auth-card button[type=submit]:hover{background:var(--ac-cta-hover)}
.ac-auth-card a{color:var(--ac-text-link)}
.ac-auth-card .helptext,.ac-auth-card .form-text{font-size:12px;color:var(--ac-text-faint)}
.ac-auth-card .errorlist{list-style:none;margin:0;padding:0;color:var(--ac-error-ink);font-size:13px;flex-direction:column;display:flex}
.ac-auth-card .alert{background:var(--ac-error-bg);color:var(--ac-error-ink);border:1px solid var(--ac-error-line);
	border-radius:var(--ac-r-sm);padding:10px 14px;font-size:13px;margin-bottom:14px}

/* sub-line under the h1 */
.ac-auth-sub{color:var(--ac-text-muted);font-size:var(--ac-fs-sm);margin:0 0 18px}

/* live password-requirements checklist (signup) — items turn green when met */
.ac-auth-card ul.ac-pwchecks{display:flex;flex-direction:column;gap:5px;list-style:none;margin:2px 0 4px;padding:0}
.ac-pwchecks li{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ac-text-muted);
	transition:color var(--ac-dur) var(--ac-ease)}
.ac-pwc-ico{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;flex:none;
	border-radius:50%;border:1px solid var(--ac-border-strong);color:transparent;font-size:10px;font-weight:700;
	transition:all var(--ac-dur) var(--ac-ease)}
.ac-pwchecks li.is-ok{color:var(--ac-success-ink)}
.ac-pwchecks li.is-ok .ac-pwc-ico{background:var(--ac-success-ink);border-color:var(--ac-success-ink);color:#fff}

/* prominent alternate path (sign up from login / sign in from signup) */
.ac-auth-alt{margin-top:20px;padding-top:18px;border-top:1px solid var(--ac-border);text-align:center}
.ac-auth-alt-line{display:block;font-size:13px;color:var(--ac-text-muted);margin-bottom:10px;font-weight:600}
.ac-auth-alt-btn{display:block;width:100%;min-height:40px;line-height:38px;text-align:center;
	background:transparent;border:1px solid var(--ac-navy-800);border-radius:var(--ac-r-sm);
	color:var(--ac-navy-800) !important;font-weight:700;font-size:var(--ac-fs-sm);text-decoration:none;
	transition:var(--ac-motion-hover),color var(--ac-dur) var(--ac-ease)}
.ac-auth-alt-btn:hover{background:var(--ac-navy-800);color:#fff !important}
