:root {
	--bg-color: #0f172a;
	--card-bg: #1e293b;
	--accent-primary: #38bdf8;
	--accent-secondary: #818cf8;
	--text-main: #f8fafc;
	--text-muted: #94a3b8;
	--border-color: #334155;
	--font-stack: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

body {
	background-color: #0f172a; /* Slate 900 */
	color: #f8fafc; /* Slate 50 */
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

.project-card {
	background-color: #1e293b; /* Slate 800 */
	border: 1px solid #334155; /* Slate 700 */
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.project-card:hover {
	transform: translateY(-4px);
	border-color: #38bdf8; /* Sky 400 */
	box-shadow: 0 10px 20px rgba(56, 189, 248, 0.1);
}

.tech-badge {
	background-color: rgba(51, 65, 85, 0.5);
	color: #94a3b8;
	font-size: 0.8rem;
	font-weight: 500;
}

.hub-header {
	border-bottom: 1px solid #334155;
	background: linear-gradient(180deg, #131c2e 0%, #0f172a 100%);
}

.back-link {
	color: #38bdf8;
	text-decoration: none;
	font-size: 0.9rem;
	transition: color 0.2s;
}

.back-link:hover {
	color: #818cf8;
	text-decoration: underline;
}

p.lead {
	color: #94a3b8 !important;
}

.card-text {
	color: #94a3b8 !important;
}


/* Footer */
footer {
	border-top: 1px solid var(--border-color);
	padding: 1.4rem 0 1.2rem 0;
	text-align: center;
	margin-top: 3rem;
	text-align: center;
}

footer p {
    color: var(--text-muted);
    font-size: 0.92rem;
}

footer .social-row {
    display: flex;
    justify-content: center;
    margin-top: 0.75rem;
} 

.social-icon {
	color: var(--text-muted);
	font-size: 1.35rem;
	transition: color 0.2s ease;
	text-decoration: none;
}

.social-icon:hover {
	color: var(--accent-primary);
}

.social-row {
	display: flex;
	gap: 1.25rem;
	align-items: center;
} 
