﻿.eparkeia-um-account-page .um,
.eparkeia-um-account-page .um-form,
.eparkeia-um-account-page .um-form form {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
}

/* Keep account controls inside their containers. */
body.eparkeia-um-account-page .site-content,
.eparkeia-um-account-page .eparkeia-um-account-panels,
.eparkeia-um-account-page .um-account-main * {
	box-sizing: border-box;
}

.eparkeia-um-account-page .um-account-tab,
.eparkeia-um-account-page .um-field,
.eparkeia-um-account-page .um-field-area {
	min-width: 0;
	max-width: 100%;
}

.eparkeia-um-account-page .um-account-main input,
.eparkeia-um-account-page .um-account-main select,
.eparkeia-um-account-page .um-account-main textarea,
.eparkeia-account-section-nav a {
	max-width: 100%;
}

.eparkeia-account-section-nav a {
	overflow-wrap: anywhere;
}

.eparkeia-um-account-page .entry-content > .um {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1320px !important;
	padding: 2.25rem 1.25rem 3rem;
}

.eparkeia-um-account-page .eparkeia-account-brand {
	margin: 0 0 1rem;
}

.eparkeia-um-account-page .eparkeia-account-brand a,
.eparkeia-um-account-page .eparkeia-account-brand a:visited {
	align-items: center;
	color: #243447;
	display: inline-flex;
	gap: 0.75rem;
	text-decoration: none !important;
}

.eparkeia-um-account-page .eparkeia-account-brand img {
	display: block;
	height: 58px;
	object-fit: contain;
	width: 58px;
}

.eparkeia-um-account-page .eparkeia-account-brand span {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}

.eparkeia-um-account-page .eparkeia-account-brand strong {
	font-size: 1.05rem;
}

.eparkeia-um-account-page .eparkeia-account-brand small {
	color: #667085;
	font-size: 0.82rem;
	margin-top: 0.15rem;
}

.eparkeia-um-account-page .eparkeia-um-account-panels {
	align-items: flex-start;
	display: flex;
	gap: 1.1rem;
	width: 100%;
}

.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-main {
	background: #ffffff;
	border: 1px solid #d9e1ec;
	border-radius: 18px;
	box-shadow: 0 12px 32px rgba(17, 24, 39, 0.06);
	box-sizing: border-box;
	float: none !important;
	flex: 1 1 auto;
	margin: 0 !important;
	max-width: none !important;
	min-width: 0;
	padding: 1.5rem;
	width: auto !important;
}

.eparkeia-account-section-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0 0 1.4rem;
	padding: 0 0 1rem;
	border-bottom: 1px solid #e3e9f0;
}

.eparkeia-account-section-nav a,
.eparkeia-account-section-nav a:visited {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0.55rem 0.85rem;
	border: 1px solid #d2dce7;
	border-radius: 8px;
	background: #ffffff;
	color: #405167;
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none !important;
}

.eparkeia-account-section-nav a:hover,
.eparkeia-account-section-nav a:focus,
.eparkeia-account-section-nav a.is-active {
	border-color: #2f80b7;
	background: #eaf6fc;
	color: #1f6f8b;
}

.eparkeia-account-section-nav a:focus-visible {
	outline: 2px solid #2f80b7;
	outline-offset: 2px;
}

/* UM removes bottom borders from account links, including these tab buttons. */
.eparkeia-um-account-page .um-account-main .eparkeia-account-section-nav a {
	border-bottom: 1px solid #d2dce7 !important;
}

.eparkeia-um-account-page .um-account-main .eparkeia-account-section-nav a:hover,
.eparkeia-um-account-page .um-account-main .eparkeia-account-section-nav a:focus,
.eparkeia-um-account-page .um-account-main .eparkeia-account-section-nav a.is-active {
	border-bottom-color: #2f80b7 !important;
}

.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	float: none !important;
	flex: 0 0 300px;
	margin: 0 !important;
	padding: 0;
	transform: none;
	width: 300px !important;
}

.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side ul {
	background: #ffffff;
	border: 1px solid #d9e1ec;
	border-radius: 18px;
	box-shadow: 0 12px 32px rgba(17, 24, 39, 0.06);
	list-style: none;
	margin: 0;
	overflow: hidden;
	padding: 0;
}

.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side li a {
	align-items: center;
	border-bottom: 1px solid #edf2f7;
	border-radius: 0;
	color: #405167;
	display: flex;
	font-weight: 700;
	margin: 0;
	min-height: 54px;
	padding: 0.85rem 1rem;
	text-decoration: none;
}

.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side li:last-child a {
	border-bottom: 0;
}

.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side li a.current,
.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side li a:hover,
.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side li a:focus {
	background: #eaf6fc;
	color: #1f6f8b;
}

.eparkeia-um-account-page .epik-competition,
.eparkeia-um-account-page .eparkeia-competition {
	margin-top: 0;
}

.eparkeia-um-login-page .um,
.eparkeia-um-register-page .um {
	background: #ffffff;
	border: 1px solid #d9e1ec;
	border-radius: 18px;
	box-shadow: 0 12px 32px rgba(17, 24, 39, 0.06);
	padding: 1.5rem;
}

.eparkeia-password-rules {
	background: #f8fbfd;
	border: 1px solid #d7e3ef;
	border-radius: 12px;
	box-shadow: 0 8px 20px rgba(17, 24, 39, 0.04);
	box-sizing: border-box;
	margin: 0 auto 1rem;
	max-width: 600px;
	padding: 0.85rem;
}

.eparkeia-password-rules-title {
	color: #243447;
	font-size: 0.95rem;
	font-weight: 700;
	margin-bottom: 0.55rem;
}

.eparkeia-password-rules-list {
	display: grid;
	gap: 0.25rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.eparkeia-password-rule {
	align-items: center;
	background: #ffffff;
	border: 1px solid #e4ebf3;
	border-radius: 7px;
	color: #405167;
	display: flex;
	font-size: 0.92rem;
	gap: 0.55rem;
	line-height: 1.35;
	min-height: 34px;
	padding: 0.38rem 0.55rem;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.eparkeia-password-rules.is-active .eparkeia-password-rule:not(.is-met) {
	background: #fff5f4;
	border-color: #f4c7c3;
	color: #8f1f17;
	font-weight: 600;
}

.eparkeia-password-rule-icon {
	align-items: center;
	color: #9aa8b8;
	display: inline-flex;
	flex: 0 0 18px;
	font-size: 0.9rem;
	font-weight: 700;
	justify-content: center;
	opacity: 0.35;
	transform: scale(0.9);
	transition: color 160ms ease, opacity 160ms ease, transform 160ms ease;
}

.eparkeia-password-rule.is-met {
	background: #e2f7e8;
	border-color: #b9e8c8;
	color: #07552c;
	font-weight: 600;
}

.eparkeia-password-rule.is-met .eparkeia-password-rule-icon {
	color: #116d36;
	opacity: 1;
	transform: scale(1);
}

.eparkeia-um-register-page .um input[type="submit"].eparkeia-password-disabled,
.eparkeia-um-register-page .um button[type="submit"].eparkeia-password-disabled,
.eparkeia-um-register-page .um .um-button.eparkeia-password-disabled {
	cursor: not-allowed !important;
	filter: grayscale(0.25);
	opacity: 0.55 !important;
}

.eparkeia-um-register-page .um input.eparkeia-password-confirm-mismatch {
	border-color: #d93025 !important;
	box-shadow: 0 0 0 1px rgba(217, 48, 37, 0.18) !important;
}

@media (max-width: 720px) {
	.eparkeia-um-account-page .eparkeia-account-brand {
		text-align: center;
	}

	.eparkeia-um-account-page .eparkeia-account-brand a,
	.eparkeia-um-account-page .eparkeia-account-brand a:visited {
		justify-content: center;
	}

	.eparkeia-um-account-page .eparkeia-um-account-panels {
		display: block;
	}

	.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side,
	.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-main {
		max-width: none !important;
		transform: none;
		width: 100% !important;
	}

	.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-side {
		margin: 0 0 1rem !important;
	}

	.eparkeia-um-account-page .eparkeia-um-account-panels .um-account-main {
		padding: 1rem;
	}

	.eparkeia-account-section-nav {
		display: grid;
		grid-template-columns: 1fr;
	}

	.eparkeia-account-section-nav a,
	.eparkeia-account-section-nav a:visited {
		justify-content: center;
	}

	.eparkeia-password-rules {
		border-radius: 10px;
		padding: 0.75rem;
	}
}
