/**
 * PWX login — match real Frappe v16 DOM.
 * for-login is on <section>, not body. Continue is .btn-login (btn-default), not btn-primary.
 * login.bundle.css loads after web_include — use !important + late JS re-link.
 */

/* Scope: actual login page markers */
body[data-path="login"],
#page-login,
section.for-login,
section.for-forgot,
section.for-login-with-email-link,
section.for-signup,
section.for-email-login,
section.for-reset-password {
	--pwx-navy: #0a1628;
	--pwx-navy-deep: #060d18;
	--pwx-navy-mid: #12243d;
	--pwx-navy-light: #1a3354;
	--pwx-gold: #c9a227;
	--pwx-gold-light: #e2c46a;
	--pwx-cream: #f8f7f4;
	--pwx-white: #ffffff;
	--pwx-radius: 2px;
	--bg-color: #12243d;
	--surface-white: #12243d;
	--text-color: #ffffff;
	--text-muted: rgba(255, 255, 255, 0.82);
	--heading-color: #ffffff;
	--btn-primary: #c9a227;
	--border-radius: 2px;
	--border-radius-sm: 2px;
	--border-radius-md: 2px;
}

html:has(body[data-path="login"]),
body[data-path="login"],
#page-login {
	font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
	background: #060d18 !important;
	background-color: #060d18 !important;
	color: #ffffff !important;
	min-height: 100vh !important;
}

body[data-path="login"] .container,
body[data-path="login"] .main-section,
body[data-path="login"] .page_content,
#page-login .container {
	background: transparent !important;
}

/* Card — Navy Mid (element has both .login-content and .page-card) */
body[data-path="login"] .page-card,
body[data-path="login"] .login-content,
body[data-path="login"] .login-content.page-card,
#page-login .page-card,
#page-login .login-content.page-card,
section.for-login .page-card,
section.for-forgot .page-card,
section.for-login-with-email-link .page-card,
section.for-signup .page-card,
section.for-email-login .page-card,
section.for-reset-password .page-card {
	background: #12243d !important;
	background-color: #12243d !important;
	border: 1px solid rgba(201, 162, 39, 0.3) !important;
	border-radius: 2px !important;
	box-shadow: none !important;
	color: #ffffff !important;
}

/* Headings / labels — white (fixes invisible Sign In) */
body[data-path="login"] .page-card-head,
body[data-path="login"] .page-card-head-text,
body[data-path="login"] .page-card-head h4,
body[data-path="login"] .page-card-subtitle,
body[data-path="login"] .text-muted,
#page-login h4,
#page-login .page-card-subtitle,
section.for-login h4,
section.for-login .page-card-subtitle {
	font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif;
	color: #ffffff !important;
	opacity: 1 !important;
}

body[data-path="login"] .form-label,
body[data-path="login"] label,
body[data-path="login"] .forgot-password-message,
#page-login .form-label,
section.for-login .form-label {
	font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
	color: rgba(255, 255, 255, 0.82) !important;
	opacity: 1 !important;
}

body[data-path="login"] .page-card-head h4,
#page-login .page-card-head h4,
section.for-login .page-card-head h4,
section.for-forgot .page-card-head h4,
section.for-login-with-email-link .page-card-head h4 {
	font-weight: 400 !important;
	letter-spacing: -0.01em;
	font-size: 1rem !important;
	opacity: 0.72 !important;
	order: 3;
}

body[data-path="login"] .page-card-subtitle,
#page-login .page-card-subtitle,
section.for-login .page-card-subtitle {
	font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
	font-size: 1.5rem !important;
	font-weight: 500 !important;
	color: #ffffff !important;
	opacity: 1 !important;
	letter-spacing: -0.02em;
	order: 2;
}

body[data-path="login"] .page-card-head,
section.for-login .page-card-head {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
}

/* Stock logo slot — show PWX mark large (do NOT hide pwx assets) */
body[data-path="login"] .page-card-head img.app-logo,
#page-login .page-card-head img.app-logo,
section.for-login .page-card-head img.app-logo,
section.for-forgot .page-card-head img.app-logo,
section.for-login-with-email-link .page-card-head img.app-logo {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	max-height: 80px !important;
	height: 80px !important;
	width: auto !important;
	filter: none !important;
	margin: 0 auto 8px !important;
}

/* Hide only upstream logos if they ever reappear */
body[data-path="login"] img[src*="erpnext-logo"],
body[data-path="login"] img[src*="frappe-framework"],
body[data-path="login"] img[src*="/assets/frappe/images/"],
body[data-path="login"] img[src*="/assets/erpnext/images/"] {
	display: none !important;
}

/* Injected brand block (optional secondary line) */
.pwx-login-brand {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	margin: 0 auto 28px;
	text-align: center;
	z-index: 2;
}

.pwx-login-brand img {
	display: block !important;
	height: 80px !important;
	width: auto !important;
	max-width: 220px;
	filter: none !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.pwx-login-brand .pwx-product {
	font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
	font-size: 1.5rem !important;
	font-weight: 500 !important;
	color: #ffffff !important;
	letter-spacing: -0.02em;
}

.pwx-login-brand .pwx-legal {
	font-size: 0.7rem !important;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: #e2c46a !important;
}

.pwx-login-legal-inline {
	display: block !important;
	margin-top: 6px;
	font-size: 0.65rem !important;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: #e2c46a !important;
	font-family: Inter, system-ui, sans-serif !important;
}

/* Inputs */
body[data-path="login"] .form-control,
body[data-path="login"] input.form-control,
body[data-path="login"] input[type="email"],
body[data-path="login"] input[type="password"],
body[data-path="login"] input[type="text"],
#page-login .form-control,
section.for-login .form-control {
	background: #060d18 !important;
	background-color: #060d18 !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	color: #ffffff !important;
	border-radius: 2px !important;
	caret-color: #ffffff !important;
	box-shadow: none !important;
}

body[data-path="login"] .form-control::placeholder,
#page-login input::placeholder {
	color: rgba(255, 255, 255, 0.45) !important;
	opacity: 1 !important;
}

body[data-path="login"] .form-control:focus,
#page-login input:focus {
	border-color: #e2c46a !important;
	box-shadow: 0 0 0 2px rgba(201, 162, 39, 0.35) !important;
}

body[data-path="login"] .field-icon,
body[data-path="login"] svg.field-icon,
body[data-path="login"] .toggle-password {
	color: rgba(255, 255, 255, 0.7) !important;
	fill: rgba(255, 255, 255, 0.7) !important;
	opacity: 1 !important;
}

/*
 * Primary CTA — Frappe uses .btn-login.btn-default (NOT .btn-primary).
 * Beat login.bundle gray-800 / surface-gray rules.
 */
body[data-path="login"] .page-card-actions .btn-login,
body[data-path="login"] button.btn-login,
body[data-path="login"] .btn-login:not(.btn-login-with-email-link):not(.btn-login-option),
#page-login .page-card-actions .btn-login,
section.for-login .page-card-actions .btn-login,
section.for-login .page-card-actions .btn-login:hover,
section.for-login .page-card-actions .btn-login:focus,
section.for-login .page-card-actions .btn-login:active,
section.for-forgot .page-card-actions .btn-login,
section.for-forgot .page-card-actions .btn-signup,
section.for-login-with-email-link .page-card-actions .btn-login,
body[data-path="login"] .btn-primary,
#page-login .btn-primary {
	background: #c9a227 !important;
	background-color: #c9a227 !important;
	border: 1px solid #c9a227 !important;
	color: #060d18 !important;
	border-radius: 2px !important;
	font-weight: 600 !important;
	box-shadow: none !important;
}

body[data-path="login"] .page-card-actions .btn-login:hover,
body[data-path="login"] .page-card-actions .btn-login:focus,
body[data-path="login"] .btn-primary:hover,
section.for-login .page-card-actions .btn-login:hover {
	background: #e2c46a !important;
	background-color: #e2c46a !important;
	border-color: #e2c46a !important;
	color: #060d18 !important;
}

/* Secondary — email link */
body[data-path="login"] .btn-login-with-email-link,
body[data-path="login"] .btn-login-option,
body[data-path="login"] a.btn.btn-default,
section.for-login .btn-login-with-email-link,
section.for-login .btn-login-option {
	background: transparent !important;
	background-color: transparent !important;
	border: 1px solid rgba(255, 255, 255, 0.35) !important;
	color: #ffffff !important;
	border-radius: 2px !important;
	font-weight: 500 !important;
	box-shadow: none !important;
}

body[data-path="login"] a:not(.btn),
#page-login a:not(.btn),
section.for-login a:not(.btn) {
	color: #e2c46a !important;
}

body[data-path="login"] .footer-powered,
body[data-path="login"] #footer-powered,
body[data-path="login"] .page-footer,
body[data-path="login"] footer,
body[data-path="login"] .web-footer,
.pwx-login-footer,
.powered-by-frappe {
	display: none !important;
}
