/**
 * Estilos del frontend de CUME Core.
 *
 * Nomenclatura BEID (bloque__elemento--modificador) para no colisionar
 * con Elementor ni con el tema. Deliberadamente neutro: ajusta colores
 * a la marca CUME donde se indica.
 */

/* ---------- Formulario de login (/login-cume/) ---------- */

.cume-login {
	--cume-accent: #0a5c99; /* Color de marca CUME; el widget puede sobreescribirlo. */
	--cume-accent-dark: #08487a;
	max-width: 420px;
	margin: 0 auto;
}

/* Alineación del bloque (controlada desde el widget de Elementor). */
.cume-login--align-left {
	margin-left: 0;
	margin-right: auto;
}
.cume-login--align-right {
	margin-left: auto;
	margin-right: 0;
}
.cume-login--align-center {
	margin-left: auto;
	margin-right: auto;
}

.cume-login__form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding: 1.75rem;
	border: 1px solid #e2e2e2;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
}

.cume-login__field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.cume-login__field--inline {
	flex-direction: row;
	align-items: center;
}

.cume-login__field label {
	font-size: 0.9rem;
	font-weight: 600;
}

.cume-login__input {
	width: 100%;
	padding: 0.65rem 0.8rem;
	border: 1px solid #cfcfcf;
	border-radius: 6px;
	font-size: 1rem;
	line-height: 1.4;
}

.cume-login__input:focus {
	outline: none;
	border-color: var(--cume-accent);
	box-shadow: 0 0 0 3px rgba(10, 92, 153, 0.15);
}

.cume-login__remember {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-weight: 400;
	font-size: 0.9rem;
}

.cume-login__actions {
	margin-top: 0.25rem;
}

.cume-login__submit {
	width: 100%;
	padding: 0.75rem 1rem;
	border: none;
	border-radius: 6px;
	background: var(--cume-accent);
	color: #fff;
	font-size: 1rem;
	font-weight: 600;
	cursor: pointer;
	transition: filter 0.15s ease-in-out;
}

.cume-login__submit:hover,
.cume-login__submit:focus {
	filter: brightness(0.9);
}

/* ---------- Avisos ---------- */

.cume-login__notice {
	margin-bottom: 1rem;
	padding: 0.75rem 1rem;
	border-radius: 6px;
	font-size: 0.92rem;
}

.cume-login__notice--error {
	background: #fdecea;
	border: 1px solid #f5c2c0;
	color: #8a1f1a;
}

.cume-login__notice--info {
	background: #eaf4fd;
	border: 1px solid #b8dcf7;
	color: #0a5c99;
}

/* ---------- Estado de sesión en el header ---------- */

.cume-session {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	font-size: 0.9rem;
}

.cume-session--align-left {
	justify-content: flex-start;
}
.cume-session--align-center {
	justify-content: center;
}
.cume-session--align-right {
	justify-content: flex-end;
}

.cume-session__greeting {
	font-weight: 600;
}

.cume-session__link {
	text-decoration: none;
}

.cume-session__logout {
	opacity: 0.85;
}

.cume-session__link:hover {
	text-decoration: underline;
}
