/**
 * MyPage layout with clearer contrast for content areas.
 * Dark sidebar (template default) + lighter main content.
 */
:root {
	--background-color: #f4f6f9;
	--default-color: #374151;
	--heading-color: #111827;
	--accent-color: #0d9488;
	--surface-color: #ffffff;
	--contrast-color: #ffffff;
	--nav-color: #e5e7eb;
	--nav-hover-color: #2dd4bf;
	--nav-mobile-background-color: #1c2737;
}

.header.dark-background {
	--background-color: #1c2737;
	--default-color: #ffffff;
	--heading-color: #ffffff;
	--surface-color: #151f2b;
	--contrast-color: #ffffff;
	--accent-color: #2dd4bf;
}

.light-background {
	--background-color: #e8edf3;
	--surface-color: #ffffff;
	--default-color: #374151;
	--heading-color: #111827;
}

body {
	background-color: var(--background-color);
}

.lang-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 16px;
	padding: 6px 14px;
	border-radius: 999px;
	border: 1px solid color-mix(in srgb, var(--default-color), transparent 70%);
	background: transparent;
	color: var(--default-color);
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
}

.lang-toggle:hover {
	background: var(--accent-color);
	color: var(--contrast-color);
	border-color: var(--accent-color);
}

.portfolio-card-simple {
	background: var(--surface-color);
	border-radius: 16px;
	padding: 1.5rem;
	height: 100%;
	border: 1px solid color-mix(in srgb, var(--heading-color), transparent 90%);
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.portfolio-card-simple:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.1);
}

.portfolio-card-simple .icon-wrap {
	width: 56px;
	height: 56px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: color-mix(in srgb, var(--accent-color), transparent 88%);
	margin-bottom: 1rem;
	font-size: 1.5rem;
}

.portfolio-card-simple h3 {
	font-size: 1.25rem;
	margin-bottom: 0.5rem;
}

.portfolio-card-simple p {
	color: color-mix(in srgb, var(--default-color), transparent 20%);
	margin-bottom: 1rem;
}

.tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tag-list span {
	font-size: 0.75rem;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	background: color-mix(in srgb, var(--accent-color), transparent 88%);
	color: color-mix(in srgb, var(--accent-color), black 25%);
}

.contact-form-status {
	margin-top: 1rem;
	padding: 0.85rem 1rem;
	border-radius: 10px;
	font-weight: 600;
}

.contact-form-status.success {
	background: #059652;
	color: #fff;
}

.contact-form-status.error {
	background: #df1529;
	color: #fff;
}

.skills-animation .progress .progress-bar,
.skills .skills-container .skill-category .skills-list .skill-row .progress .progress-bar {
	width: 0;
	transition: width 1s ease;
}

.skills-animation.is-visible .progress .progress-bar {
	width: var(--skill-width) !important;
}

.skills .skills-container .skill-category .skills-list .skill-row .progress {
	height: 8px;
	border-radius: 999px;
}

.skills .skills-container .skill-category .skills-list .skill-row .progress .progress-bar {
	border-radius: 999px;
}

/* Phone: no gap between hero stats (BSc) and About */
@media (max-width: 992px) {
	.hero {
		padding-bottom: 0;
		min-height: auto;
	}

	.hero .container {
		padding-bottom: 0;
	}

	.about.section {
		padding-top: 2rem;
	}
}
