/*
 Theme Name:   Maraton Pisania Listów
 Author:       Amnesty International
 Author URI:   amnesty.org.pl
 Template:     hello-elementor
 Version: 1.0.0
 Text Domain: maraton
*/

/* Frontend authentication forms */
.event-auth-panel {
	width: 100%;
	max-width: 480px;
	min-width: 0;
	margin: 0 auto;
}

.e-con-inner > .elementor-widget-shortcode:has(.event-auth-panel) {
	width: 0;
	min-width: 0;
	flex: 1 1 0;
}

.event-auth-panel h3 {
	margin: 0 0 24px;
}

.event-auth-panel form,
.event-login-error,
.register-error {
	width: 100%;
	box-sizing: border-box;
}

.event-auth-panel form > p,
.event-auth-panel .register-error,
.event-auth-panel .event-login-error {
	margin: 0 0 18px;
}

.event-auth-panel label {
	display: block;
	margin: 0 0 7px;
	font-weight: 600;
}

.event-auth-panel input[type="text"],
.event-auth-panel input[type="email"],
.event-auth-panel input[type="password"] {
	display: block;
	box-sizing: border-box;
	width: 100%;
	height: 50px;
	min-height: 50px;
	padding: 12px 16px;
}

/* One checkbox size and one secondary text size for both panels (login + registration) */
.event-auth-panel input[type="checkbox"] {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	min-height: 20px;
	margin: 0;
	padding: 0;
}

.event-auth-panel input[type="checkbox"]:checked::after {
	width: 10px;
	height: 10px;
}

.event-auth-panel .login-remember label {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: 15px;
	font-weight: 400;
}

.event-auth-panel .required {
	color: #dc0032;
}

/* Registration: password hint and "show password" on one quiet line under the field */
.event-auth-panel .login-password {
	margin: 0 0 18px;
}

.event-auth-panel .password-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 6px 16px;
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.4;
	color: #555;
}

.event-auth-panel .password-meta .show-password {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: 15px;
	font-weight: 400;
	color: #1a1a1a;
	cursor: pointer;
}

/* Registration: Terms of Service checkbox + information clause note */
.event-auth-panel .registration-consents {
	margin: 24px 0;
	padding-top: 20px;
	border-top: 1px solid #ddd;
}

.event-auth-panel .consent-label {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
	margin: 0 0 10px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.45;
	cursor: pointer;
}

/* Aligns the box with the first line of text (15px * 1.45 line height) */
.event-auth-panel .consent-label input {
	margin-top: 1px;
}

.event-auth-panel .consent-note {
	margin: 0 0 0 30px;
	font-size: 14px;
	line-height: 1.5;
	color: #555;
}

/* Global link styles (Elementor kit) set their own size: links follow the surrounding text */
.event-auth-panel .consent-label a,
.event-auth-panel .consent-note a {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.event-auth-panel .login-submit {
	margin-bottom: 0;
}

.event-auth-panel .login-submit .amnesty-card-button {
	width: 100%;
}

.event-auth-panel .login-lost-password {
	margin: 20px 0 0;
	text-align: center;
}

.event-login-notice,
.register-success {
	padding: 14px 16px;
	margin: 0 0 18px;
	border: 1px solid #9fd3a8;
	border-radius: 4px;
	background: #effaf1;
	color: #1d5e2a;
}

.event-login-error,
.register-error {
	padding: 14px 16px;
	border: 1px solid #e5a4a4;
	border-radius: 4px;
	background: #fff1f1;
	color: #8a1f1f;
}
