/*
------------------------------------------------
Trainer Session View
------------------------------------------------
*/

.tl-session-view {
	width: 100%;
}


/*
------------------------------------------------
Session Overview
------------------------------------------------
*/

.tl-session-title {
	margin: 0;
	padding: 0 0 6px;

	font-size: 1.125em;
	line-height: 1.25;
}


.tl-session-overview {
	display: flex;
	flex-direction: column;
	gap: 20px;

	padding: 0 0 24px;
}


.tl-session-overview-main {
	flex: 1 1 auto;
	min-width: 0;
}


/*
------------------------------------------------
Edit Session
------------------------------------------------
*/

.tl-session-edit-wrap {
	margin: 0 0 20px;
}


.tl-session-edit {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-height: 38px;
	padding: 8px 14px;

	box-sizing: border-box;

	background: var(--tl-color-dark);
	border-radius: var(--tl-radius);

	color: #fff;
	font-size: .8125em;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}


a.tl-session-edit,
a.tl-session-edit:visited {
	color: #fff;
}


a.tl-session-edit:hover,
a.tl-session-edit:focus {
	background: var(--tl-color-dark-hover);
	color: #fff;
}


/*
------------------------------------------------
Session Meta
------------------------------------------------
*/

.tl-session-meta {
	display: flex;
	flex-direction: column;
	gap: 5px;
}


.tl-session-meta-item {
	margin: 0;

	color: var(--tl-color-text-secondary);

	font-size: .875em;
	line-height: 1.4;
}


.tl-session-meta-item strong {
	color: var(--tl-color-text);
	font-weight: 600;
}


/*
------------------------------------------------
Session Status
------------------------------------------------
*/

.tl-session-status-value {
	display: inline-block;
}


/*
------------------------------------------------
Training Section
------------------------------------------------
*/

.tl-session-training {
	width: 100%;
}


.tl-session-training-title {
	margin: 0;
	padding: 0 0 14px;

	font-size: 1em;
	line-height: 1.2;
}


/*
------------------------------------------------
Add Training Update
------------------------------------------------
*/

.tl-session-add-update {
	width: 100%;
}


.tl-session-add-update-button {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	min-height: 48px;
	padding: 12px 18px;

	box-sizing: border-box;

	background: var(--tl-color-primary);
	border-radius: var(--tl-radius);

	color: #fff;
	font-size: .9375em;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}


.tl-app a.tl-session-add-update-button,
.tl-app a.tl-session-add-update-button:visited {
	background: var(--tl-color-primary);
	color: #fff;
}


.tl-app a.tl-session-add-update-button:hover,
.tl-app a.tl-session-add-update-button:focus {
	background: var(--tl-color-primary-hover);
	color: #fff;
}


/*
------------------------------------------------
Owner Preview
------------------------------------------------
*/

.tl-session-owner-previews {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;

	padding-top: 20px;

	border-top: 1px solid var(--tl-color-border-soft);
}


.tl-session-owner-previews-title {
	flex: 0 0 100%;

	color: var(--tl-color-text);

	font-size: .875em;
	font-weight: 700;
}


.tl-owner-preview-button {
	display: inline-block;

	font-size: .875em;
	font-weight: 600;
	line-height: 1.3;
}


/*
------------------------------------------------
Larger Screens
------------------------------------------------
*/

@media (min-width: 768px) {

	.tl-session-title {
		font-size: 1.25em;
	}


	.tl-session-overview {
		flex-direction: row;
		align-items: flex-start;
		justify-content: space-between;
		gap: 40px;

		padding-bottom: 28px;
	}


	.tl-session-add-update {
		flex: 0 0 220px;
	}


	.tl-session-add-update-button {
		min-height: 50px;
		padding: 14px 20px;
	}


	.tl-session-owner-previews {
		padding-top: 24px;
	}


	.tl-session-owner-previews-title {
		flex: 0 0 auto;
	}

}