/**
 * Authentication Status Pages Styles
 * Styles for verify-email and registration-pending pages
 * Integrated with Aistros Celestial Palette (Light & Dark Mode)
 * @package Aistros
 * @since 1.2.0
 */

/* ========================================================================
   Base Page Styles
   ======================================================================== */

.auth-status-page {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
	background: var(--status-page-bg);
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

/* ========================================================================
   Containers
   ======================================================================== */

.verify-container,
.pending-container {
	background: var(--status-container-bg);
	border-radius: 20px;
	box-shadow: 0 20px 60px var(--status-shadow);
	width: 100%;
	padding: 50px 40px;
	text-align: center;
	animation: slideIn 0.5s ease-out;
}

.verify-container {
	max-width: 500px;
}

.pending-container {
	max-width: 600px;
}

@keyframes slideIn {
	from {
		opacity: 0;
		transform: translateY(-30px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ========================================================================
   Spinner
   ======================================================================== */

.spinner {
	width: 60px;
	height: 60px;
	border: 4px solid var(--status-border);
	border-top: 4px solid var(--status-accent);
	border-radius: 50%;
	animation: spin 1s linear infinite;
	margin: 0 auto 30px;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/* ========================================================================
   Icon
   ======================================================================== */

.icon {
	font-size: 80px;
	margin-bottom: 20px;
	animation: pulse 2s ease-in-out infinite;
}

@keyframes pulse {
	0%, 100% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.1);
	}
}

/* ========================================================================
   Headers & Text
   ======================================================================== */

.verify-container h1,
.pending-container h1 {
	color: var(--status-text-primary);
	margin-bottom: 15px;
	font-weight: 700;
}

.verify-container h1 {
	font-size: 28px;
}

.pending-container h1 {
	font-size: 32px;
	margin-bottom: 20px;
}

.verify-container p,
.pending-container p {
	color: var(--status-text-secondary);
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 20px;
}

.description {
	color: var(--status-text-secondary);
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 20px;
}

/* ========================================================================
   Email Display
   ======================================================================== */

.email-display {
	background: var(--status-email-bg);
	padding: 15px 25px;
	border-radius: 10px;
	margin: 25px 0;
	font-size: 16px;
	color: var(--status-email-text);
	font-weight: 600;
	word-break: break-all;
	border: 1px solid var(--status-border);
}

/* ========================================================================
   Info Box
   ======================================================================== */

.info-box {
	background: var(--status-info-bg);
	border-left: 4px solid var(--status-info-border);
	padding: 20px;
	margin: 25px 0;
	text-align: left;
	border-radius: 5-px;
}

.info-box h3 {
	color: var(--status-gold);
	margin-bottom: 10px;
	font-size: 18px;
}

.info-box ul {
	list-style: none;
	padding-left: 0;
}

.info-box li {
	padding: 8px 0;
	padding-left: 25px;
	position: relative;
	color: var(--status-info-text);
	line-height: 1.6;
}

.info-box li:before {
	content: '✓';
	position: absolute;
	left: 0;
	color: var(--status-success-bullet);
	font-weight: bold;
}

/* ========================================================================
   Button Group
   ======================================================================== */

.button-group {
	display: flex;
	gap: 15px;
	justify-content: center;
	margin-top: 30px;
}

/* ========================================================================
   Buttons
   ======================================================================== */

.btn {
	padding: 14px 30px;
	border: none;
	border-radius: 8px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-block;
}

.btn-primary {
	background: linear-gradient(135deg, var(--status-accent) 0%, var(--status-accent-hover) 100%);
	color: #FFFFFF;
}

.btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 20px rgba(17, 255, 246, 0.3); /* NEW PALETTE */
}

.btn-secondary {
	background: var(--status-btn-secondary);
	color: var(--status-text-secondary);
}

.btn-secondary:hover {
	background: var(--status-btn-secondary-hover);
}

/* ========================================================================
   Support Text
   ======================================================================== */

.support-text {
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid var(--status-support-border);
	color: var(--status-text-secondary);
	font-size: 14px;
}

.support-text a {
	color: var(--status-accent);
	text-decoration: none;
}

.support-text a:hover {
	text-decoration: underline;
	color: var(--status-accent-hover);
}

/* ========================================================================
   Responsive Design
   ======================================================================== */

@media (max-width: 600px) {
	.verify-container,
	.pending-container {
		padding: 40px 30px;
		margin: 20px;
	}

	.verify-container h1,
	.pending-container h1 {
		font-size: 26px;
	}

	.button-group {
		flex-direction: column;
	}

	.btn {
		width: 100%;
	}

	.icon {
		font-size: 60px;
	}
}

@import url("auth-status-pages-light.css");
@import url("auth-status-pages-dark.css");