/**
 * Login / Registrazione Ultimate Member — stile Ardesia
 * Allineato a form-shell (scuro + oro + magenta).
 */

:root {
	--ardesia-um-bg: #0b0614;
	--ardesia-um-card: #160818;
	--ardesia-um-field: #1e0b23;
	--ardesia-um-gold: #f1cf92;
	--ardesia-um-gold-dim: rgba(241, 207, 146, 0.22);
	--ardesia-um-magenta: #e879f9;
	--ardesia-um-text: #f5e9d8;
	--ardesia-um-muted: rgba(245, 233, 216, 0.72);
	--ardesia-um-radius: 20px;
}

/* Contenitore form */
body.page .um.um-login,
body.page .um.um-register,
body.um-page-login .um,
body.um-page-register .um,
.um.um-login,
.um.um-register {
	position: relative !important;
	max-width: 440px !important;
	margin: 28px auto !important;
	padding: 28px 24px 22px !important;
	overflow: hidden !important;
	background:
		radial-gradient(circle at top center, rgba(116, 27, 56, 0.42), transparent 42%),
		radial-gradient(circle at top right, rgba(212, 169, 93, 0.14), transparent 32%),
		linear-gradient(180deg, #1a0a1f 0%, #0b0614 55%, #140816 100%) !important;
	border: 1px solid var(--ardesia-um-gold-dim) !important;
	border-radius: var(--ardesia-um-radius) !important;
	box-shadow:
		0 24px 56px rgba(0, 0, 0, 0.38),
		inset 0 1px 0 rgba(255, 236, 190, 0.07) !important;
	color: var(--ardesia-um-text) !important;
}

body.page .um.um-login::after,
body.page .um.um-register::after,
body.um-page-login .um::after,
body.um-page-register .um::after,
.um.um-login::after,
.um.um-register::after {
	content: "" !important;
	position: absolute !important;
	left: -12% !important;
	right: -12% !important;
	bottom: -10% !important;
	height: 42% !important;
	pointer-events: none !important;
	z-index: 0 !important;
	background: radial-gradient(
		ellipse at center bottom,
		rgba(140, 36, 70, 0.45) 0%,
		rgba(212, 169, 93, 0.12) 40%,
		transparent 72%
	) !important;
}

body.page .um.um-login > *,
body.page .um.um-register > *,
body.um-page-login .um > *,
body.um-page-register .um > *,
.um.um-login > *,
.um.um-register > * {
	position: relative !important;
	z-index: 1 !important;
}

/* Avviso verifica */
.um-telegram-notice,
.ardesia-um-verify-notice {
	margin: 0 0 22px !important;
	padding: 14px 16px !important;
	border-radius: 14px !important;
	border: 1px solid rgba(241, 207, 146, 0.28) !important;
	background:
		linear-gradient(135deg, rgba(232, 121, 249, 0.12), rgba(241, 207, 146, 0.08)),
		rgba(11, 6, 20, 0.55) !important;
	color: var(--ardesia-um-text) !important;
	text-align: left !important;
}

.um-telegram-notice p,
.ardesia-um-verify-notice p {
	margin: 0 !important;
	font-size: 14px !important;
	line-height: 1.55 !important;
	color: var(--ardesia-um-muted) !important;
}

.um-telegram-notice strong,
.ardesia-um-verify-notice strong {
	color: var(--ardesia-um-gold) !important;
	font-weight: 700 !important;
}

.ardesia-um-verify-notice__title {
	display: block !important;
	margin-bottom: 6px !important;
	font-size: 13px !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: var(--ardesia-um-gold) !important;
}

.ardesia-um-verify-notice a {
	color: #f0abfc !important;
	text-decoration: underline !important;
	text-underline-offset: 2px !important;
}

/* Label e campi */
.um.um-login .um-field-label,
.um.um-register .um-field-label,
.um.um-login label,
.um.um-register label {
	color: var(--ardesia-um-text) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: 0.01em !important;
	margin-bottom: 6px !important;
}

.um.um-login .um-form input[type="text"],
.um.um-login .um-form input[type="tel"],
.um.um-login .um-form input[type="number"],
.um.um-login .um-form input[type="password"],
.um.um-login .um-form input[type="email"],
.um.um-register .um-form input[type="text"],
.um.um-register .um-form input[type="tel"],
.um.um-register .um-form input[type="number"],
.um.um-register .um-form input[type="password"],
.um.um-register .um-form input[type="email"],
.um.um-login .um-form textarea,
.um.um-register .um-form textarea {
	width: 100% !important;
	min-height: 48px !important;
	padding: 12px 14px !important;
	border-radius: 12px !important;
	border: 1px solid rgba(241, 207, 146, 0.18) !important;
	background: var(--ardesia-um-field) !important;
	color: var(--ardesia-um-text) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03) !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease !important;
}

.um.um-login .um-form input::placeholder,
.um.um-register .um-form input::placeholder {
	color: rgba(245, 233, 216, 0.38) !important;
}

.um.um-login .um-form input:focus,
.um.um-register .um-form input:focus,
.um.um-login .um-form textarea:focus,
.um.um-register .um-form textarea:focus {
	outline: none !important;
	border-color: rgba(241, 207, 146, 0.55) !important;
	box-shadow:
		0 0 0 3px rgba(232, 121, 249, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
	background: #241028 !important;
}

/* Eye toggle password UM */
.um.um-login .um-field-area,
.um.um-register .um-field-area {
	position: relative !important;
}

.um.um-login .um-field-password .um-toggle-password,
.um.um-register .um-field-password .um-toggle-password,
.um.um-login span.um-field-icon,
.um.um-register span.um-field-icon {
	color: var(--ardesia-um-gold) !important;
	opacity: 0.85 !important;
}

/* Errori */
.um.um-login .um-field-error,
.um.um-register .um-field-error,
.um.um-login .um-notice,
.um.um-register .um-notice {
	border-radius: 10px !important;
}

.um.um-login .um-field-error,
.um.um-register .um-field-error {
	background: rgba(127, 29, 29, 0.35) !important;
	color: #fecaca !important;
	border: 1px solid rgba(248, 113, 113, 0.35) !important;
}

/* Pulsanti */
.um.um-login .um-button,
.um.um-register .um-button,
.um.um-login input[type="submit"].um-button,
.um.um-register input[type="submit"].um-button,
.um.um-login a.um-button,
.um.um-register a.um-button {
	min-height: 48px !important;
	padding: 12px 18px !important;
	border-radius: 12px !important;
	border: none !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	letter-spacing: 0.01em !important;
	cursor: pointer !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease !important;
}

.um.um-login .um-button.um-alt,
.um.um-register .um-button.um-alt,
.um.um-login a.um-button.um-alt,
.um.um-register a.um-button.um-alt {
	background: rgba(255, 255, 255, 0.06) !important;
	color: var(--ardesia-um-text) !important;
	border: 1px solid rgba(241, 207, 146, 0.28) !important;
	box-shadow: none !important;
}

.um.um-login .um-button:not(.um-alt),
.um.um-register .um-button:not(.um-alt),
.um.um-login input[type="submit"].um-button,
.um.um-register input[type="submit"].um-button {
	background: linear-gradient(135deg, #c026d3 0%, #a21caf 45%, #7c1d4a 100%) !important;
	color: #fff !important;
	box-shadow: 0 10px 24px rgba(192, 38, 211, 0.28) !important;
}

.um.um-login .um-button:hover,
.um.um-register .um-button:hover,
.um.um-login input[type="submit"].um-button:hover,
.um.um-register input[type="submit"].um-button:hover {
	transform: translateY(-1px) !important;
	filter: brightness(1.05) !important;
}

.um.um-login .um-button:active,
.um.um-register .um-button:active {
	transform: translateY(0) !important;
}

/* Link secondari (password dimenticata, ecc.) */
.um.um-login .um-right a,
.um.um-register .um-right a,
.um.um-login .um-center a,
.um.um-register .um-center a,
.um.um-login .um-col-alt a,
.um.um-register .um-col-alt a {
	color: #f0abfc !important;
}

.um.um-login .um-field-checkbox .um-field-checkbox-option,
.um.um-register .um-field-checkbox .um-field-checkbox-option,
.um.um-login .um-field-checkbox label,
.um.um-register .um-field-checkbox label {
	color: var(--ardesia-um-muted) !important;
}

/* Spaziatura campi */
.um.um-login .um-field,
.um.um-register .um-field {
	margin-bottom: 14px !important;
}

.um.um-login .um-col-alt,
.um.um-register .um-col-alt {
	margin-top: 8px !important;
}

@media (max-width: 600px) {
	body.page .um.um-login,
	body.page .um.um-register,
	.um.um-login,
	.um.um-register {
		margin: 16px 12px !important;
		padding: 22px 16px 18px !important;
		border-radius: 16px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.um.um-login .um-button,
	.um.um-register .um-button,
	.um.um-login .um-form input,
	.um.um-register .um-form input {
		transition: none !important;
	}
}
