/* pages/cabinet-course.css — страница курса (/course/<id>/). */

.reclaim-cabinet-app #cabinet-app .cabinet-course__block {
	margin-top: 1.45rem;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__cta {
	margin: 0.85rem 0 0;
}

.reclaim-cabinet-app #cabinet-app a.cabinet-settings__save {
	width: auto;
	text-decoration: none;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lectures {
	--mark: 1.7rem;
	--pad-top: 0.45rem;
	--pad-bot: 0.7rem;
	--rail-inset: 0.15rem;
	--rail-gap: 0.12rem;
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lectures > li {
	position: relative;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lectures > li:not( :last-child )::before {
	content: "";
	position: absolute;
	left: calc( var( --rail-inset ) + var( --mark ) / 2 );
	top: calc( var( --pad-top ) + var( --mark ) + var( --rail-gap ) );
	bottom: calc( -1 * var( --pad-top ) + var( --rail-gap ) );
	z-index: 0;
	width: 3px;
	height: auto;
	border-radius: 999px;
	background: linear-gradient( 180deg, #e07070 0%, #c44848 55%, #a63a3a 100% );
	box-shadow: 0 0 10px color-mix( in srgb, #c44848 42%, transparent );
	transform: translateX( -50% );
	pointer-events: none;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lectures > li.is-open:not( :last-child )::before {
	background: linear-gradient( 180deg, #5ee08a 0%, #3dcf6a 50%, #2bb85a 100% );
	box-shadow: 0 0 10px color-mix( in srgb, #3dcf6a 48%, transparent );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lectures > li.is-open:has( + .is-locked )::before {
	background: linear-gradient(
		180deg,
		#5ee08a 0%,
		#3dcf6a 28%,
		#d4b04a 58%,
		#c44848 82%,
		#a63a3a 100%
	);
	box-shadow: 0 0 10px color-mix( in srgb, #d4b04a 40%, transparent );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lectures > li.is-pending:not( :last-child )::before {
	background: linear-gradient( 180deg, #ffa066 0%, #ff7a33 50%, #e8641f 100% );
	box-shadow: 0 0 10px color-mix( in srgb, #ff7a33 45%, transparent );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lectures > li.is-pending:has( + .is-locked )::before {
	background: linear-gradient(
		180deg,
		#ffa066 0%,
		#ff7a33 35%,
		#e0704a 65%,
		#c44848 85%,
		#a63a3a 100%
	);
	box-shadow: 0 0 10px color-mix( in srgb, #ff7a33 40%, transparent );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lecture {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: var( --mark ) minmax( 0, 1fr );
	align-items: start;
	gap: 0.75rem;
	padding: var( --pad-top ) var( --rail-inset ) var( --pad-bot );
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var( --ink );
	text-decoration: none;
}

.reclaim-cabinet-app #cabinet-app a.cabinet-course__lecture:hover,
.reclaim-cabinet-app #cabinet-app a.cabinet-course__lecture:focus-visible {
	border-color: transparent;
	background: color-mix( in srgb, var( --primary-bg ) 6%, transparent );
	border-radius: 8px;
	outline: none;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__mark {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: var( --mark );
	height: var( --mark );
	overflow: hidden;
	border: 1.5px solid #3dcf6a;
	border-radius: 999px;
	background: var( --surface );
	box-shadow: 0 0 0 3px var( --surface );
	color: #2ea85a;
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1;
}

.reclaim-cabinet-app #cabinet-app .is-locked .cabinet-course__mark {
	border-color: #c44848;
	color: #c44848;
}

.reclaim-cabinet-app #cabinet-app .is-pending .cabinet-course__mark {
	border-color: #ff7a33;
	color: #d4600f;
}

.reclaim-cabinet-app #cabinet-app .is-passed .cabinet-course__mark {
	border-color: #3dcf6a;
	background: color-mix( in srgb, #3dcf6a 14%, var( --surface ) );
	color: #1a7f37;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lecture.is-locked {
	opacity: 1;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__copy {
	display: flex;
	flex-direction: column;
	gap: 0.18rem;
	min-width: 0;
	padding-top: 0.18rem;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__lecture-name {
	flex: none;
	font-size: 0.92rem;
	font-weight: 550;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.reclaim-cabinet-app #cabinet-app .is-locked .cabinet-course__lecture-name {
	color: var( --muted );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__badge {
	color: var( --muted );
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.35;
	white-space: normal;
}

.reclaim-cabinet-app #cabinet-app .is-passed .cabinet-course__badge {
	color: #1a7f37;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__table th,
.reclaim-cabinet-app #cabinet-app .cabinet-course__table td {
	padding: 0.45rem 0.6rem;
	text-align: left;
	border-bottom: 1px solid color-mix( in srgb, var( --ink ) 10%, transparent );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__muted {
	color: var( --muted );
	font-size: 0.9rem;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__attach {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem 0.65rem;
	align-items: center;
	margin: 0 0 1rem;
	padding: 0.75rem 0.85rem;
	border: 1px solid var( --line );
	border-radius: 12px;
	background: color-mix( in srgb, var( --ink ) 2.5%, var( --surface ) );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__attach select {
	flex: 1 1 12rem;
	min-height: 2.15rem;
	margin: 0;
	padding: 0.35rem 0.7rem;
	border: 1px solid var( --line );
	border-radius: 8px;
	background: var( --surface );
	color: var( --ink );
	font: inherit;
	font-size: 0.86rem;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__attach .cabinet-course__muted {
	flex: 1 1 12rem;
	margin: 0;
	font-size: 0.86rem;
	line-height: 1.4;
}

.reclaim-cabinet-app #cabinet-app div.cabinet-course__person,
.reclaim-cabinet-app #cabinet-app a.cabinet-course__person {
	padding: 0;
	text-align: left;
	cursor: default;
	overflow: hidden;
}

.reclaim-cabinet-app #cabinet-app a.cabinet-course__person {
	cursor: pointer;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person .cabinet-person-card__head {
	flex-direction: row;
	align-items: center;
	gap: 0.75rem;
	padding: 0.9rem 1rem 0.8rem;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person .cabinet-person-avatar {
	flex: 0 0 auto;
	width: 2.75rem;
	height: 2.75rem;
	font-size: 0.82rem;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person .cabinet-person-card__who {
	align-items: flex-start;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person .cabinet-person-card__name,
.reclaim-cabinet-app #cabinet-app .cabinet-course__person .cabinet-person-card__login {
	text-align: left;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person .cabinet-person-card__name {
	font-size: 0.98rem;
	font-weight: 700;
	line-height: 1.3;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person .cabinet-person-card__login {
	font-size: 0.8rem;
}

.reclaim-cabinet-app #cabinet-app div.cabinet-course__person:hover,
.reclaim-cabinet-app #cabinet-app div.cabinet-course__person:focus-visible {
	transform: none;
	border-color: var( --line );
	box-shadow: 0 6px 16px color-mix( in srgb, var( --ink ) 5%, transparent );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-actions {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 0;
	margin: 0;
	border-top: 1px solid color-mix( in srgb, var( --ink ) 8%, transparent );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 2.4rem;
	margin: 0;
	padding: 0.4rem 0.4rem;
	border: 0;
	border-right: 1px solid color-mix( in srgb, var( --ink ) 8%, transparent );
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var( --ink );
	cursor: pointer;
	font: inherit;
	font-size: 0.74rem;
	font-weight: 650;
	letter-spacing: 0.01em;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-btn:last-child {
	border-right: 0;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-btn:hover,
.reclaim-cabinet-app #cabinet-app .cabinet-course__person-btn:focus-visible {
	background: color-mix( in srgb, var( --primary-bg ) 8%, transparent );
	color: var( --ink );
	outline: none;
	transform: none;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-btn--danger {
	color: var( --accent-rose );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-btn--danger:hover,
.reclaim-cabinet-app #cabinet-app .cabinet-course__person-btn--danger:focus-visible {
	background: color-mix( in srgb, var( --accent-rose ) 10%, transparent );
	color: var( --accent-rose );
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-details {
	padding: 0.7rem 0.75rem 0.8rem;
	border-top: 1px solid color-mix( in srgb, var( --ink ) 8%, transparent );
	color: var( --muted );
	font-size: 0.82rem;
	line-height: 1.4;
	overflow-x: auto;
}

.reclaim-cabinet-app #cabinet-app .cabinet-course__person-details[ hidden ] {
	display: none;
}

.reclaim-cabinet-app #cabinet-app .cbx-page {
	max-width: 46rem;
}
