/* Newsletter Custom Styles */
.newsletter-message {
	border-radius: 8px;
	border: none;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	animation: slideInDown 0.3s ease-out;
}

@keyframes slideInDown {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.newsletter-message.alert-success {
	background: linear-gradient(135deg, #28a745, #20c997);
	color: white;
	border-left: 4px solid #155724;
}

.newsletter-message.alert-danger {
	background: linear-gradient(135deg, #dc3545, #e83e8c);
	color: white;
	border-left: 4px solid #721c24;
}

.newsletter-message .fa {
	font-size: 1.1em;
	margin-right: 8px;
}

.newsletter-form button[disabled] {
	opacity: 0.7;
	cursor: not-allowed;
}

.newsletter-form .fa-spinner {
	animation: spin 1s linear infinite;
}

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

/* Dashboard Card Styles */
.card {
	border: none;
	border-radius: 12px;
	box-shadow: 0 4px 20px rgba(0,0,0,0.08);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 30px rgba(0,0,0,0.12);
}

.badge {
	font-size: 0.8em;
	padding: 0.4em 0.8em;
	border-radius: 20px;
}
