/* =========================================================
	TALENTHUB MAIN CONTENT
========================================================= */

.th-main-shell{
	min-height:calc(100vh - 44px);
	height:calc(100vh - 44px);
	width:100%;
	transition:.28s ease;
}

.th-main-card{
	height:100%;
	min-height:0;
	box-sizing:border-box;
	padding:16px 28px 24px;
	border-radius:30px;
	border:1px solid var(--th-border-base);
	background:var(--th-card-bg-glass);
	box-shadow:0 24px 70px var(--th-shadow-card);
	backdrop-filter:blur(22px);
	-webkit-backdrop-filter:blur(22px);
	overflow:hidden;
	display:flex;
	flex-direction:column;
}

.th-main-header{
	flex:0 0 auto;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:22px;
	margin-bottom:14px;
	padding-top:0;
	padding-bottom:14px;
	border-bottom:1px solid var(--th-border-base);
}

.th-main-heading{
	min-width:0;
}

.th-main-badge{
	width:max-content;
	max-width:100%;
	display:inline-flex;
	align-items:center;
	gap:8px;
	margin-bottom:6px;
	padding:5px 11px;
	border-radius:999px;
	border:1px solid var(--th-badge-border);
	background:var(--th-badge-bg);
	color:var(--th-badge-text);
	font-size:.7rem;
	font-weight:900;
	letter-spacing:.02em;
}

.th-main-title{
	margin:0;
	color:var(--th-color-text-main);
	font-size:clamp(1.45rem, 2.2vw, 2.2rem);
	font-weight:950;
	line-height:1.04;
	letter-spacing:-.04em;
}

.th-main-subtitle{
	max-width:760px;
	margin:8px 0 0;
	color:var(--th-color-text-soft);
	font-size:.9rem;
	font-weight:650;
	line-height:1.45;
}

.th-main-actions{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:12px;
	flex-wrap:wrap;
}

.th-main-content{
	position:relative;
	z-index:2;
	flex:1 1 0;
	min-height:0;
	max-height:100%;
	overflow-y:auto;
	overflow-x:hidden;
	padding:2px 8px 32px 2px;
	scrollbar-width:thin;
	scrollbar-color:var(--th-border-base) transparent;
}

.th-main-content > *:last-child{
	margin-bottom:24px;
}

.th-main-content::-webkit-scrollbar{
	width:8px;
}

.th-main-content::-webkit-scrollbar-track{
	background:transparent;
}

.th-main-content::-webkit-scrollbar-thumb{
	border-radius:999px;
	background:var(--th-border-base);
}

.th-main-content::-webkit-scrollbar-thumb:hover{
	background:var(--th-badge-text);
}

@media(max-width:991px){
	.th-main-card{
		padding:18px 22px 22px;
	}

	.th-main-shell{
		min-height:calc(100vh - 114px);
		height:calc(100vh - 114px);
	}
}

@media(max-width:767px){
	.th-main-header{
		flex-direction:column;
		align-items:stretch;
		gap:14px;
		margin-bottom:18px;
		padding-bottom:16px;
	}

	.th-main-actions{
		justify-content:flex-start;
	}

	.th-main-card{
		border-radius:24px;
		padding:18px;
	}

	.th-main-badge{
		margin-bottom:8px;
		padding:6px 11px;
		font-size:.68rem;
		line-height:1.2;
	}

	.th-main-title{
		font-size:clamp(1.25rem, 6vw, 1.65rem);
		line-height:1.12;
		letter-spacing:-.03em;
	}

	.th-main-subtitle{
		margin-top:7px;
		font-size:.86rem;
		line-height:1.45;
		max-width:100%;
	}

	.th-main-content{
		padding-right:4px;
	}
}

@media(max-width:420px){
	.th-main-card{
		padding:15px;
		border-radius:22px;
	}

	.th-main-header{
		gap:12px;
		margin-bottom:14px;
		padding-bottom:14px;
	}

	.th-main-badge{
		max-width:100%;
		font-size:.64rem;
		padding:6px 10px;
	}

	.th-main-title{
		font-size:1.22rem;
		line-height:1.08;
	}

	.th-main-subtitle{
		font-size:.8rem;
		line-height:1.35;
	}
}

/* =========================================================
	DARK MAIN CONTRAST
========================================================= */

html[data-theme="dark"] .th-main-card{
	background:var(--th-card-bg-glass);
	border-color:var(--th-border-base);
	box-shadow:
		0 26px 70px var(--th-shadow-card),
		inset 0 1px 0 var(--th-final-box-inset);
}

html[data-theme="dark"] .th-main-header{
	border-bottom-color:var(--th-border-base);
}

@media(max-width:991px){
	html[data-theme="dark"] .th-main-card{
		background:
			linear-gradient(180deg, rgba(6, 78, 59, .96), rgba(2, 44, 34, .98)),
			#022c22;
		border:1px solid rgba(134, 239, 172, .22);
		box-shadow:
			0 26px 70px rgba(0, 0, 0, .58),
			0 0 0 1px rgba(187, 247, 208, .08),
			inset 0 1px 0 rgba(255, 255, 255, .08);
	}
}