/* Phototex webmail branding (loaded on every page via templates/includes/layout.html).
   Elastic's blue accents are recoloured in styles.min.css (see install script);
   this file adds the Phototex login page and logo treatment. */

html body { font-family: Inter, system-ui, -apple-system, "Segoe UI", Arial, sans-serif; }

/* ---------- Logged in ---------- */

/* Logo sits on the dark navy menu, so show it in white. */
#layout-menu #logo,
#layout-menu .popover-header img { filter: brightness(0) invert(1); }
#layout-menu #logo { max-width: 64px; }

/* ---------- Login page ---------- */

html body.task-login {
	background: #0F172A url(../images/hero.webp) center / cover no-repeat fixed;
	color: #0F172A;
	color-scheme: light;
}
html body.task-login::before {
	content: '';
	position: fixed;
	inset: 0;
	background: linear-gradient(100deg, rgba(15, 23, 42, .92) 0%, rgba(15, 23, 42, .72) 52%, rgba(14, 124, 134, .45) 100%);
}
html body.task-login #layout {
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 48px;
	min-height: 100vh;
	height: auto;
	box-sizing: border-box;
	padding: 88px 7vw 40px;
	overflow: auto;
	background: transparent;
}
.px-topbar {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 13px 7vw;
	background: #0F172A;
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.px-topbar a, .px-topbar a:hover { color: #fda4af; white-space: nowrap; text-decoration: none; }
.px-hero { flex: 1 1 auto; max-width: 620px; color: #fff; }
.px-eyebrow {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 20px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.px-eyebrow::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: #E11D48; }
.px-headline { margin: 0; font-size: clamp(38px, 5vw, 64px); font-weight: 800; line-height: 1.06; letter-spacing: -.03em; }
.px-headline em { display: block; font-style: normal; color: #fda4af; }

html body.task-login #layout-content {
	flex: 0 0 400px;
	width: 400px;
	height: auto;
	min-height: 0;
	box-sizing: border-box;
	padding: 36px 34px 26px;
	overflow: visible;
	background: #fff;
	color: #0F172A;
	border-radius: 16px;
	box-shadow: 0 2px 6px rgba(15, 23, 42, .06), 0 24px 60px rgba(0, 0, 0, .35);
	text-align: left;
}
html body.task-login #logo {
	display: block;
	width: 230px;
	max-width: 100%;
	max-height: none;
	height: auto;
	margin: 0 0 22px;
	position: static;
	top: 0;
	opacity: 1;
	filter: none;
}
.px-title { margin: 0 0 18px; font-size: 20px; font-weight: 700; letter-spacing: -.01em; color: #0F172A; }
html body.task-login #login-form { position: static; top: 0; width: 100%; max-width: none; margin: 0; }
html body.task-login #login-form table { width: 100%; }
html body.task-login #login-form td.input { padding: 0 0 12px; width: 100%; }
html body.task-login #login-form .form-control,
html body.task-login #login-form .input-group-text {
	background: #fff;
	color: #0F172A;
	border-color: #E2E8F0;
	border-radius: 10px;
}
html body.task-login #login-form .input-group > .form-control { border-top-left-radius: 0; border-bottom-left-radius: 0; }
html body.task-login #login-form .input-group-text { border-top-right-radius: 0; border-bottom-right-radius: 0; color: #64748B; }
html body.task-login #login-form .form-control {
	height: 46px;
	font-size: 16px;
	-webkit-text-fill-color: #0F172A;
	opacity: 1;
}
html body.task-login #login-form .form-control:focus { border-color: #E11D48; box-shadow: 0 0 0 3px rgba(225, 29, 72, .18); }
html body.task-login #login-form .form-control::placeholder { color: #64748B; -webkit-text-fill-color: #64748B; opacity: 1; }
html body.task-login #login-form .form-control:-webkit-autofill,
html body.task-login #login-form .form-control:-webkit-autofill:focus {
	-webkit-text-fill-color: #0F172A;
	-webkit-box-shadow: 0 0 0 1000px #fff inset;
}
html body.task-login #login-form .formbuttons { margin: 6px 0 0; padding: 0; }
html body.task-login #rcmloginsubmit {
	width: 100%;
	height: 48px;
	background: linear-gradient(#D50032, #F2295B);
	border: 0;
	border-radius: 999px;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	text-transform: none;
}
html body.task-login #rcmloginsubmit:hover,
html body.task-login #rcmloginsubmit:focus { background: #BE123C; }
html body.task-login #login-footer { margin-top: 18px; color: #475569; font-size: 12px; text-align: left; }
html body.task-login #login-footer a { color: #0E7C86; text-decoration: underline; }

@media (max-width: 900px) {
	html body.task-login #layout { justify-content: center; padding: 72px 16px 24px; }
	html body.task-login #layout-content { flex: 1 1 auto; width: 100%; max-width: 400px; padding: 28px 22px 22px; }
	.px-hero { display: none; }
	.px-topbar { padding: 12px 16px; font-size: 10px; }
	.px-topbar span { display: none; }
	.px-topbar a { margin-left: auto; }
}
