/* ===================================
   SUPPORT PAGE STYLES
   =================================== */

.support-page {
	padding-top: 120px;
	min-height: 100vh;
	background-color: var(--color-white);
}

.support-page .container {
	max-width: 900px;
}

/* Header */
.support-header {
	text-align: center;
	margin-bottom: var(--spacing-xl);
	animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.support-badge {
	display: inline-block;
	font-family: var(--font-mono);
	font-size: 0.875rem;
	font-weight: 700;
	padding: 0.5rem 1.5rem;
	background-color: var(--color-cyan);
	color: var(--color-black);
	border: var(--border-width) solid var(--color-black);
	box-shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-black);
	margin-bottom: var(--spacing-md);
	letter-spacing: 0.1em;
}

.support-title {
	font-family: var(--font-display);
	font-size: clamp(3rem, 8vw, 6rem);
	line-height: 0.95;
	margin-bottom: var(--spacing-sm);
}

.support-title-line {
	display: block;
	position: relative;
}

.support-subtitle {
	font-family: var(--font-body);
	font-size: 1.25rem;
	color: var(--color-dark-gray);
	font-weight: 500;
}

/* Supported Apps List */
.support-apps {
	margin-top: var(--spacing-md);
	padding: var(--spacing-sm) var(--spacing-md);
	background-color: var(--color-gray);
	border: var(--border-width) solid var(--color-black);
	display: inline-block;
}

.support-apps-label {
	font-family: var(--font-mono);
	font-size: 0.875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	display: block;
	margin-bottom: 0.5rem;
}

.support-apps-list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
	justify-content: center;
}

.support-apps-list li {
	font-family: var(--font-body);
	font-size: 1rem;
	font-weight: 600;
}

.support-apps-list a {
	color: var(--color-black);
	text-decoration: none;
	border-bottom: 2px solid var(--color-cyan);
	transition: all var(--transition-base);
}

.support-apps-list a:hover {
	background-color: var(--color-cyan);
	color: var(--color-black);
}

/* Content */
.support-content {
	animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.2s both;
}

/* Main Support Card */
.support-card-main {
	background-color: var(--color-gray);
	border: var(--border-width) solid var(--color-black);
	box-shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-black);
	padding: var(--spacing-lg);
	margin-bottom: var(--spacing-lg);
	text-align: center;
}

.support-icon {
	width: 120px;
	height: 120px;
	margin: 0 auto var(--spacing-md);
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--color-yellow);
	border: var(--border-width) solid var(--color-black);
	box-shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-black);
}

.support-icon svg {
	color: var(--color-black);
}

.support-heading {
	font-family: var(--font-display);
	font-size: 2rem;
	margin-bottom: var(--spacing-sm);
	text-transform: uppercase;
}

.support-text {
	font-family: var(--font-body);
	font-size: 1.125rem;
	line-height: 1.8;
	max-width: 600px;
	margin: 0 auto var(--spacing-md);
	color: var(--color-black);
}

/* Email Link */
.support-email {
	display: inline-flex;
	align-items: center;
	gap: var(--spacing-sm);
	font-family: var(--font-mono);
	font-size: 1.25rem;
	font-weight: 700;
	text-decoration: none;
	color: var(--color-black);
	background-color: var(--color-cyan);
	padding: 1rem 2rem;
	border: var(--border-width) solid var(--color-black);
	box-shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-black);
	transition: all var(--transition-base);
}

.support-email:hover {
	transform: translate(3px, 3px);
	box-shadow: 3px 3px 0 var(--color-black);
	background-color: var(--color-yellow);
}

.email-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

.email-address {
	letter-spacing: 0.02em;
}

/* Info Grid */
.support-info-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--spacing-md);
	margin-bottom: var(--spacing-lg);
}

.support-card {
	background-color: var(--color-white);
	border: var(--border-width) solid var(--color-black);
	padding: var(--spacing-md);
	transition: all var(--transition-base);
}

.support-card:nth-child(1) {
	box-shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-cyan);
}

.support-card:nth-child(2) {
	box-shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-magenta);
}

.support-card:nth-child(3) {
	box-shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-yellow);
}

.support-card:hover {
	transform: translate(3px, 3px);
}

.support-card:nth-child(1):hover {
	box-shadow: 3px 3px 0 var(--color-cyan);
}

.support-card:nth-child(2):hover {
	box-shadow: 3px 3px 0 var(--color-magenta);
}

.support-card:nth-child(3):hover {
	box-shadow: 3px 3px 0 var(--color-yellow);
}

.support-card-icon {
	width: 56px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--color-black);
	color: var(--color-white);
	border: var(--border-width) solid var(--color-black);
	margin-bottom: var(--spacing-sm);
}

.support-card-title {
	font-family: var(--font-display);
	font-size: 1.125rem;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
}

.support-card-text {
	font-family: var(--font-body);
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--color-dark-gray);
}

/* Back Button */
.support-back {
	text-align: center;
	padding-top: var(--spacing-md);
}

/* Dark Mode Adjustments */
[data-theme="dark"] .support-badge {
	color: #18181b !important;
}

[data-theme="dark"] .support-icon {
	color: #18181b !important;
}

[data-theme="dark"] .support-email {
	color: #18181b !important;
}

[data-theme="dark"] .support-card-icon {
	background-color: #18181b;
	color: #fafafa;
}

/* Responsive */
@media (max-width: 768px) {
	.support-page {
		padding-top: 100px;
	}

	.support-info-grid {
		grid-template-columns: 1fr;
	}

	.support-card-main {
		padding: var(--spacing-md);
	}

	.support-icon {
		width: 100px;
		height: 100px;
	}

	.support-icon svg {
		width: 48px;
		height: 48px;
	}

	.support-email {
		font-size: 1rem;
		padding: 0.875rem 1.5rem;
	}
}

@media (max-width: 480px) {
	.support-email {
		flex-direction: column;
		gap: 0.5rem;
	}
}