/* ============================================================
   Auth — css/frontend/pages/auth.css
   ============================================================
   Styles for the auth layout and login form card.
   Reused by all pages using the auth.php layout.
   ============================================================ */

/* ---------------------------------------------------------
   Auth layout — shared by login, forgot password, etc.
   --------------------------------------------------------- */

/* Brand gradient strip at top of page */
.ce-auth-strip {
	height: 0.25rem;
	background: linear-gradient(to right, var(--ce-color-primary), var(--ce-color-primary-hover));
	flex-shrink: 0;
}

/* Centered main area — fills available space */
.ce-auth-main {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex: 1;
	padding: var(--ce-space-lg);
}

/* Minimal footer */
.ce-auth-footer {
	text-align: center;
	padding: var(--ce-space-base) var(--ce-space-lg);
	color: var(--ce-color-text-muted);
	font-size: var(--ce-font-size-sm);
	flex-shrink: 0;
}


/* ---------------------------------------------------------
   Login card
   --------------------------------------------------------- */

.ce-login {
	width: 100%;
	max-width: 24rem;
}

.ce-login__logo {
	display: block;
	margin: 0 auto var(--ce-space-xl);
	width: max-content;
}

.ce-login__logo img {
	display: block;
	height: 5rem;
	width: auto;
}

.ce-login__card {
	background: var(--ce-color-bg-white);
	border-radius: var(--ce-radius-lg);
	box-shadow: var(--ce-shadow-lg);
	padding: var(--ce-space-xl);
}

.ce-login__header {
	text-align: center;
	margin-bottom: var(--ce-space-lg);
}

.ce-login__title {
	font-size: var(--ce-font-size-2xl);
	font-weight: var(--ce-font-weight-bold);
	color: var(--ce-color-text);
	margin: 0 0 var(--ce-space-sm);
}

.ce-login__subtitle {
	font-size: var(--ce-font-size-sm);
	color: var(--ce-color-text-secondary);
	margin: 0;
	line-height: var(--ce-line-height-normal);
}

/* Alert inside the login card — constrain width */
.ce-login__card .ce-alert {
	margin-bottom: var(--ce-space-base);
}

/* Form actions — no divider on login card */
.ce-login .ce-form__actions {
	border-top: none;
	padding-top: var(--ce-space-sm);
}

/* Forgot password link */
.ce-login__forgot {
	display: block;
	text-align: center;
	margin-top: var(--ce-space-md);
	font-size: var(--ce-font-size-sm);
	color: var(--ce-color-text-link);
}

.ce-login__forgot:hover {
	color: var(--ce-color-text-link-hover);
}

.ce-login__forgot:focus-visible {
	outline: var(--ce-focus-ring);
	outline-offset: var(--ce-focus-ring-offset);
	border-radius: var(--ce-radius-sm);
}

/* Footer contacts row */
.ce-auth-footer__contacts {
	display: flex;
	justify-content: center;
	gap: var(--ce-space-md);
	margin-bottom: var(--ce-space-xs);
}

.ce-auth-footer__link {
	color: var(--ce-color-text-muted);
}

.ce-auth-footer__link:hover {
	color: var(--ce-color-text-link-hover);
}

.ce-auth-footer__link:focus-visible {
	outline: var(--ce-focus-ring);
	outline-offset: var(--ce-focus-ring-offset);
	border-radius: var(--ce-radius-sm);
}


/* ---------------------------------------------------------
   Logout card
   --------------------------------------------------------- */

.ce-logout {
	width: 100%;
	max-width: 24rem;
}

.ce-logout__logo {
	display: block;
	margin: 0 auto var(--ce-space-xl);
	width: max-content;
}

.ce-logout__logo img {
	display: block;
	height: 5rem;
	width: auto;
}

.ce-logout__card {
	background: var(--ce-color-bg-white);
	border-radius: var(--ce-radius-lg);
	box-shadow: var(--ce-shadow-lg);
	padding: var(--ce-space-xl);
	text-align: center;
}

.ce-logout__title {
	font-size: var(--ce-font-size-2xl);
	font-weight: var(--ce-font-weight-bold);
	color: var(--ce-color-text);
	margin: 0 0 var(--ce-space-base);
}

.ce-logout__message {
	font-size: var(--ce-font-size-sm);
	color: var(--ce-color-text-secondary);
	margin: 0 0 var(--ce-space-lg);
	line-height: var(--ce-line-height-normal);
}


/* ---------------------------------------------------------
   Responsive — small screens
   --------------------------------------------------------- */

@media (max-width: 30em) {
	.ce-login__card,
	.ce-logout__card {
		padding: var(--ce-space-lg) var(--ce-space-base);
		box-shadow: none;
		border-radius: 0;
	}

	.ce-auth-main {
		padding: var(--ce-space-base);
	}
}
