/**
 * This CSS file was auto-generated via PostCSS
 *
 * Contributors should avoid editing this file, but instead edit the associated
 * src/resources/postcss/ file. For more information, check out our engineering
 * docs on how we handle CSS in our engineering docs.
 *
 * @see: https://the-events-calendar.github.io/products-engineering/docs/code-standards/css/
 */

/*
 * Event Schedule Manager Views CSS
 * -------------------------------------------------------------
 */

/*
 * Variables
 * -------------------------------------------------------------
 */

:root {
	--tec-color-white: #fff;
	--tec-color-black: #000;
	--tec-color-gray-darkest: #212529;
	--tec-color-gray-darker: #2c2f33;
	--tec-color-gray-dark: #32383e;
	--tec-color-gray-medium: #757575;
	--tec-color-gray-light: #727272;
	--tec-color-gray-lighter: #d5d5d5;
	--tec-color-gray-lightest: #f9f9f9;
	--tec-color-blue: #334aff;
	--tec-color-editor-blue: #2271B1;
	--tec-color-blue-light: #bfdcea;

	/* Strucutral variables */
	--tec-color-table-background: transparent;
	--tec-color-table-border: var(--tec-color-gray-lighter);
	--tec-color-table-text: var(--tec-color-gray-darker);
	--tec-color-table-header-text: var(--tec-color-gray-darker);

	/* Tabs */
	--tec-color-tabs-button-background: var(--tec-color-white);
	--tec-color-tabs-button-text: var(--tec-color-blue);
	--tec-color-tabs-border: var(--tec-color-blue);

	/* Sessions */
	--tec-color-mainstage-border: var(--tec-color-blue);
	--tec-color-session-tag-link-background: var(--tec-color-blue);
	--tec-color-session-tag-link-text: var(--tec-color-white);
}

:root .tec-color-scheme-light {
		--tec-color-table-background: var(--tec-color-white);
	}

:root .tec-color-scheme-dark {
		--tec-color-table-background: var(--tec-color-gray-darker);
		--tec-color-table-text: var(--tec-color-white);
		--tec-color-table-header-text: var(--tec-color-white);

		/* Tabs */
		--tec-color-tabs-button-background: var(--tec-color-white);
		--tec-color-tabs-button-text: var(--tec-color-gray-darkest);
		--tec-color-tabs-border: var(--tec-color-gray-darkest);

		/* Sessions */
		--tec-color-mainstage-border: var(--tec-color-blue);
		--tec-color-session-tag-link-background: var(--tec-color-white);
		--tec-color-session-tag-link-text: var(--tec-color-black);
	}

/* -----------------------------------------------------------------------------
 * Hidden: Hide from both screenreaders and browsers
 * ----------------------------------------------------------------------------- */

/* -----------------------------------------------------------------------------
 * Visually Hide: Hide only visually, but have it available for screenreaders
 * ----------------------------------------------------------------------------- */

/* -----------------------------------------------------------------------------
 * Visually Show: Show element after has been hidden with %visually-hide
 * ----------------------------------------------------------------------------- */

.tec-hidden {
	display: none !important;
	visibility: hidden;
}

.tec-visually-hide {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.tec-tabs.alignwide,
	.tec-tabs.alignfull,
	.tec-layout-grid.alignwide,
	.tec-layout-grid.alignfull,
	.tec-schedule-wrapper.alignwide,
	.tec-schedule-wrapper.alignfull {
		margin: 0 calc(50% - 50vw);
		max-width: 100vw;
		padding: 15px;
		width: 100vw;
	}

.tec-track-description {
	font-size: 0.9em;
}

.tec-session-content {
	font-size: 0.9em;
	line-height: 1.2em;
	margin-bottom: 8px;
}

.tec-session-content p {
		margin-bottom: 8px;
	}

.tec-session-speaker-name {
	font-weight: 700;
}

.tec-session-speaker {
	margin-bottom: 8px;
}

.tec-session-speakers {
	font-size: 1em;
	line-height: 1.4em;
	margin-bottom: 4px;
}

.tec-session-sponsor-label {
	font-size: 0.9em;
	line-height: 1.4em;
}

.tec-session-sponsor {
	font-size: 1.1em;
}

.tec-promo {
	text-align: right;
}

.tec-session-tags {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.tec-session-tags .tec-session-tags-tag {
		display: inline-block;
	}

.tec-event-schedule-shortcode .tribe-events-single > .tribe_events {
		overflow: visible;
	}

.tec-layout-table {
	background-color: var(--tec-color-table-background);
	border-collapse: collapse;
	border-color: var(--tec-color-table-border);
	border-spacing: 0;
	border-style: solid;
	border-width: 1px;
	color: var(--tec-color-table-text);
	margin: 0 auto;
	max-width: 100%;
	padding: 0;
	table-layout: fixed;
	width: 100%;
}

.tec-layout-table thead th {
			border-width: 1px;
			color: var(--tec-color-table-header-text);
			font-weight: 300;
			padding-bottom: 10px;
			padding-top: 10px;
		}

.tec-layout-table tbody,
	.tec-layout-table tr,
	.tec-layout-table td,
	.tec-layout-table th {
		border: 1px solid var(--tec-color-table-border);
		text-align: center;
		vertical-align: top;
	}

.tec-layout-table tr td {
			border-color: inherit;
			padding: 15px 10px;
		}

.tec-layout-table .tec-session-empty {
		border-right: 1px solid var(--tec-color-gray-lighter);
	}

.tec-layout-table .tec-col-time {
		border-width: 0;
		border-bottom-width: 1px;
		width: 7em;
	}

.tec-layout-table .tec-time {
		border: 0;
		border-width: 1px 1px 0 1px;
		min-width: 105px;
	}

.tec-layout-table .tec-session-cell-content h3 {
			color: inherit;
			font-size: 1.75em;
			line-height: 1.5;
			margin: 0 0 8px 0;
		}

.tec-layout-table .tec-session-cell-content .tec-session-title {
			color: inherit;
			text-decoration: none;
		}

.tec-layout-table .tec-track-description,
	.tec-layout-table .tec-session-speakers {
		display: inline-block;
	}

.tec-layout-table .tec-session-speakers:before {
			content: '-';
		}

.tec-layout-table .tec-session-type-mainstage {
		border-top: 7px solid var(--tec-color-mainstage-border);
	}

.tec-layout-grid {
	background-color: var(--tec-color-table-background);
	margin: 0 auto;
	max-width: 100%;
	position: relative;
	width: 1238px;
}

.tec-layout-grid:after {
		border-bottom: 1px solid var(--tec-color-gray-lighter);
		border-right: 1px solid var(--tec-color-gray-lighter);
		bottom: 0;
		content: '';
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
		z-index: -1;
	}

.tec-layout-grid .tec-time {
		display: none;
		position: relative;
	}

.tec-layout-grid .tec-time:after {
			border-bottom: 1px solid var(--tec-color-white);
			bottom: 0;
			content: '';
			left: 0;
			position: absolute;
			right: 0;
			top: 0;
			z-index: 10;
		}

.tec-layout-grid .tec-col-track {
		display: none;
	}

@supports (display:grid) {
		}

.tec-layout-grid [class*="tec-session-type-"] {
		background-color: rgba(var(--tec-color-white), 1);
		border: 1px solid var(--tec-color-gray-lighter);
		font-size: 14px;
		margin: -1px 0 0 0;
		padding: 24px;
	}

@supports (display:grid) {
		}

.tec-layout-grid .tec-session-cell-content h3 {
			font-size: 1.75em;
			line-height: 1.5;
			margin: 0 0 8px 0;
		}

.tec-layout-grid .tec-session-title {
		text-decoration: none;
	}

.tec-layout-grid .tec-session-title:focus {
			outline: 2px dotted rgba(255, 255, 255, 0.8);
		}

.tec-layout-grid .tec-session-time {
		color: var(--tec-color-gray-light);
		font-size: 0.9em;
		line-height: 1.4em;
	}

.tec-layout-grid .tec-session-track {
		font-size: 0.9em;
		line-height: 1.4em;
		margin-bottom: 12px;
	}

.tec-layout-grid .tec-global-session td {
			padding: 20px 0 !important;
		}

.tec-layout-grid .tec-session-type-mainstage {
		border-top: 7px solid var(--tec-color-mainstage-border);
	}

.tec-layout-grid.tec-color-scheme-dark a {
			color: var(--tec-color-white);
		}

.tec-layout-grid.tec-color-scheme-dark [class*="tec-session-type-"] {
			border: solid 1px var(--tec-color-white);
		}

.tec-layout-grid.tec-color-scheme-dark .tec-session-cell-content {
			color: var(--tec-color-white);
		}

.tec-layout-grid.tec-color-scheme-dark .tec-col-track,
		.tec-layout-grid.tec-color-scheme-dark .tec-time,
		.tec-layout-grid.tec-color-scheme-dark .tec-session-title {
			color: var(--tec-color-white);
		}

.tec-layout-grid.tec-color-scheme-dark .tec-time:after {
				border-bottom: 1px solid var(--tec-color-gray-darkest);
			}

.tec-layout-grid.tec-color-scheme-dark .tec-session-time {
			color: mix(var(--tec-color-black), var(--tec-color-white), 30%);
		}

.tec-site-main {
	margin: 0 auto;
	max-width: 100%;
	padding: 0 20px;
	width: 1100px;
}

.tec-site-main .tec-return-link {
		font-size: 20px;
		font-weight: 700;
		line-height: 26px;
		margin-bottom: 18px;
	}

.tec-site-main .tec-entry-header {
		margin-bottom: 40px;
	}

.tec-site-main .tec-single-title {
		font-size: 42px;
		font-weight: 700;
		line-height: 48px;
		margin-bottom: 25px;
	}

.tec-site-main .tec-single-session-time {
		font-size: 16px;
		font-weight: 400;
		margin-bottom: 25px;
		text-align: left;
	}

.tec-site-main .tec-single-session-taxonomies {
		list-style-type: none;
		margin: 10px 0 10px 0;
		padding: 0;
	}

.tec-site-main .tec-single-session-taxonomies .tec-single-session-taxonomy-term {
			display: inline;
			font-size: 16px;
			font-weight: 400;
			line-height: 26px;
		}

.tec-site-main .tec-single-session-taxonomies .tec-single-session-taxonomy-term i {
				margin-right: 8px;
			}

.tec-site-main .tec-single-session-heading {
		font-size: 16px;
		font-weight: 700;
		line-height: 26px;
		margin-bottom: 8px;
	}

.tec-site-main .tec-single-session-speakers,
	.tec-site-main .tec-single-entry-content {
		border-bottom: 1px solid var(--tec-color-gray-lighter);
		font-size: 18px;
		font-weight: 400;
		line-height: 18px;
		margin-bottom: 32px;
		padding-bottom: 40px;
	}

/*
 * Sessions
 * -------------------------------------------------------------
 */

#conference_session_time {
	width: 80px;
}

#tec-session-date {
	margin-bottom: 15px;
}

.tec-session-tags {
	display: none; /* Hide tags per TEC-4925 and will add better support later. */
	list-style-type: none;
	margin-bottom: 0;
	padding: 0;
}

.tec-session-tags-tag {
		display: inline-block;
		font-size: 0.8em;
		font-weight: 700;
		line-height: 0.8em;
		margin: 0 5px 10px 0;
	}

.tec-session-tags-tag-link,
		.tec-session-tags-tag-link:visited {
			background-color: var(--tec-color-session-tag-link-background);
			border-radius: 3px;
			color: var(--tec-color-session-tag-link-text);
			display: block;
			padding: 10px;
			text-decoration: none;
		}

.tec-tax-icon {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	height: 20px;
	margin-right: 5px;
	vertical-align: text-bottom;
	width: 15px;
}

.tec-map-icon {
	background-image: url("../images/map-pin-icon.svg");
}

.tec-location-icon {
	background-image: url("../images/location-icon.svg");
}

.tec-single-session-speakers__names {
	width: 100%;
}

.tec-session-speaker:first-child {
		margin-top: 10px;
	}

.tec-session-speaker-name {
		font-weight: 700;
	}

.tec-session-speaker-title-organization {
		font-size: 0.9em;
	}

.tec-tabs.alignwide,
.tec-layout-grid.alignwide,
.tec-schedule-wrapper.alignwide {
	margin: 0 calc(50% - 50vw);
	max-width: 100vw;
	padding: 15px;
	width: 100vw;
}

/*
 * Speakers
 * -------------------------------------------------------------
 */

.single-tec_speaker .entry .entry-content > * {
		max-width: 100%;
	}

.single-tec_speaker .entry h2 {
			font-size: 1.2em;
		}

.single-tec_speaker .tec-speaker-details p {
			font-size: 1.1em;
			font-weight: 700;
			margin: 0;
		}

.single-tec_speaker .tec-speaker-social {
		list-style-type: none;
		margin: 0.75em 0;
		padding-left: 0;
	}

.single-tec_speaker .tec-speaker-social-icon {
			display: inline-block;
			font-size: 1em;
			padding: 0 2px;
		}

.single-tec_speaker .tec-speaker-social-icon-link {
				text-decoration: none !important;
			}

.single-tec_speaker .tec-speaker-links .tec-speaker-link {
			display: block;
		}

.tec-speakers {
	display: block;
}

.tec-speakers .tec-speaker-image {
			border-radius: 50%;
			height: auto;
			margin-bottom: 15px;
			max-width: none;
			object-fit: cover;
		}

.tec-speakers .tec-speaker-name {
			font-size: 1em;
			overflow-wrap: break-word;
		}

.tec-speakers .tec-speaker-title-organization {
			font-size: 0.9em;
		}

.tec-single-session-speakers {
	display: flex;
	flex-wrap: wrap;
	margin: -12px;
}

.tec-single-session-speakers .tec-single-session-speakers-title {
		font-size: 1.2em;
		text-align: left;
	}

.tec-single-session-speakers .tec-single-session-speakers-speaker {
		align-items: center;
		border: 1px solid #d5d5d5;
		border-radius: 4px;
		display: flex;
		flex: 0 0 100%;
		margin: 12px;
		max-width: 100%;
		padding: 20px 24px 20px 24px;
	}

.tec-single-session-speakers .tec-single-session-speakers-speaker-image {
			border-radius: 50%;
			height: 124px;
			margin: 0 15px 0 0;
			width: 124px;
		}

.tec-single-session-speakers .tec-single-session-speakers-speaker .tec-single-session-speakers-speaker-name_wrap {
			display: flex;
			flex-direction: column;
		}

.tec-single-session-speakers .tec-single-session-speakers-speaker-name {
			font-size: 1em;
			font-weight: 700;
			margin: 0 0 8px;
		}

.tec-single-session-speakers .tec-single-session-speakers-speaker-title-organization {
			font-size: 0.9em;
		}

/*
 * Sponsors
 * -------------------------------------------------------------
 */

.tec-sponsors .tec-sponsor-level .tec-sponsor-level-heading {
			position: relative;
			text-align: center;
		}

.tec-sponsors .tec-sponsor-level .tec-sponsor-level-heading:before,
			.tec-sponsors .tec-sponsor-level .tec-sponsor-level-heading:after {
				display: none;
			}

.tec-sponsors .tec-sponsor-level .tec-sponsor-level-heading:before {
				background-color: var(--tec-color-gray-light);
				display: block;
				height: 1px;
				margin: 0;
				padding: 0;
				position: absolute;
				top: 50%;
				width: 100%;
				z-index: -1;
			}

.tec-sponsors .tec-sponsor-level .tec-sponsor-level-heading span {
				background-color: #fff;
				padding: 0 20px;
			}

.tec-sponsors .tec-sponsor-level .tec-sponsor-list {
			list-style-type: none;
			padding-left: 0;
			text-align: center;
		}

.tec-sponsors .tec-sponsor-level .tec-sponsor-list .tec-sponsor {
				display: inline-block;
				margin: 10px;
			}

.tec-sponsors .tec-sponsor-level .tec-sponsor-list .tec-sponsor .tec-sponsor-image {
					max-width: 100%;
				}

.tec-sponsor-single-image {
		text-align: center;
	}

.tec-sponsor-single-image img {
			max-height: 75px;
		}

.single-tec_sponsor .entry .entry-content > * {
		max-width: 100%;
	}

.single-tec_sponsor .entry h2 {
			font-size: 1.2em;
		}

.single-tec_sponsor .entry-title {
			font-size: 2em;
		}

.single-tec_sponsor .has-post-thumbnail .tec-sponsor-grid .wp-post-image {
				max-width: 100%;
			}

.single-tec_sponsor .has-post-thumbnail .tec-sponsor-level {
			font-size: 1.5em;
		}

/*
 * Tabs
 * -------------------------------------------------------------
 */

.tec-tabs .tec-tabs-list {
		background-color: var(--tec-color-table-background);
		display: grid;
		grid-template-columns: repeat(var(--tec-tabs-grid-template-columns), 1fr);
		margin-bottom: 14px;
		text-align: center;
	}

.tec-tabs .tec-tabs-list .tec-tabs-list-button {
			background-color: var(--tec-color-tabs-button-background);
			border: 1px solid var(--tec-color-tabs-border);
			border-radius: 0;
			color: var(--tec-color-tabs-button-text);
			font-size: 0.9em;
			line-height: 1.4em;
			margin: 0;
			padding: 12px 16px;
		}

.tec-tabs .tec-tabs-list .tec-tabs-list-button:hover,
			.tec-tabs .tec-tabs-list .tec-tabs-list-button[aria-selected="true"] {
				background-color: var(--tec-color-tabs-button-text);
				color: var(--tec-color-tabs-button-background);
			}

.tec-tabs .tec-tabs-list .tec-tabs-list-button + .tec-tabs-list-button {
				border-left-width: 0;
			}

@media screen and (min-width: 700px) {

.tec-layout-table {
		border-width: 0
}

.tec-layout-table tr td {
				border-width: 1px
		}

.tec-layout-grid .tec-time {
			background-color: transparent;
			border: 0;
			border-right: 1px solid var(--tec-color-gray-lighter);
			display: block;
			font-size: 0.75em;
			font-weight: 400;
			grid-column: times;
			margin: 0
	}

@supports (display:grid) {

.tec-layout-grid .tec-col-track {
				background-color: transparent;
				border: 1px solid var(--tec-color-gray-lighter);
				border-left: 0;
				display: block;
				font-size: 0.75em;
				font-weight: 400;
				padding: 16px;
				position: sticky;
				text-transform: uppercase;
				top: 0;
				z-index: 1000
	}

				.tec-layout-grid .tec-col-track:first-child {
					border-left: 1px solid var(--tec-color-gray-lighter);
					margin-left: -1px;
				}
	}

@supports (display:grid) {

.tec-layout-grid [class*="tec-session-type-"] {
				margin: -1px 0 0 -1px
	}
	}

.tec-tabs .tec-tabs-list {
			grid-template-columns: repeat(var(--tec-tabs-grid-template-columns), 1fr)
	}

.tec-tabs .tec-tabs-list .tec-tabs-list-button {
				width: auto
		}
	}

@media screen and (max-width: 700px) {

.tec-layout-table thead {
			display: none
	}

.tec-layout-table tbody,
	.tec-layout-table tr,
	.tec-layout-table td,
	.tec-layout-table th {
			display: block
	}

.tec-layout-table tr {
			margin-bottom: 16px
	}

.tec-layout-table .tec-session-empty {
			display: none
	}

.tec-layout-table .tec-time {
			border-width: 0 0 1px 0;
			font-size: 22px;
			padding: 0 16px
	}

.tec-layout-table .tec-session-type-session {
			line-height: 1.4;
			margin-bottom: 16px
	}

.tec-layout-table .tec-session-type-session:before {
			border-bottom: 1px dashed var(--tec-color-gray-lighter);
			border-top: 1px dashed var(--tec-color-gray-lighter);
			color: mix(var(--tec-color-gray-darkest), var(--tec-color-white), 50%);
			content: attr(data-track-title);
			display: block;
			font-size: 110%;
			line-height: 1;
			margin-bottom: 8px;
			padding: 3px 10px
	}

.tec-layout-table .tec-global-session .tec-session-type-session:before {
			display: none
	}

.tec-layout-table .tec-session-cell-content .tec-session-title {
				display: block;
				padding: 10px
		}

.tec-layout-table .tec-session-speakers {
			display: block;
			padding-left: 20px
	}
		}

@media (min-width: 768px) {

.tec-site-main .tec-single-session-heading {
			font-size: 22px;
			line-height: 33px
	}

.single-tec_speaker .has-post-thumbnail .tec-speaker-grid {
				display: grid;
				grid-column-gap: 30px;
				grid-template-columns: 1fr 2fr
		}

.single-tec_speaker .tec-speaker-links .tec-speaker-link {
				display: inline-block
		}

.single-tec_speaker .tec-speaker-links .tec-speaker-link-speakers {
					margin-right: 40px
			}

.tec-speakers {
		display: grid
}

.tec-speakers .tec-speaker-title-organization {
				margin-bottom: 0
		}

.tec-single-session-speakers .tec-single-session-speakers-speaker {
			flex: 0 0 391px
	}

.tec-sponsors .tec-sponsor-level .tec-sponsor-list .tec-sponsor {
					margin: 20px
			}

.tec-sponsor-single-row {
			align-content: center;
			grid-column-gap: 30px;
			column-gap: 30px;
			display: flex;
			justify-content: left
	}

.single-tec_sponsor .has-post-thumbnail .tec-sponsor-grid {
				display: grid;
				grid-column-gap: 30px;
				grid-template-columns: 1fr 2fr
		}

.single-tec_sponsor .has-post-thumbnail .tec-sponsor-grid .wp-post-image {
					height: auto;
					max-width: 350px
			}
	}

@media (min-width: 960px) {
	.tec-tabs.alignwide,
	.tec-layout-grid.alignwide,
	.tec-schedule-wrapper.alignwide {
		margin: 0 -15px;
		max-width: 1270px;
		width: 1270px;
	}
}

@media (min-width: 1140px) {

.single-tec_speaker .has-post-thumbnail .tec-speaker-grid {
				grid-column-gap: 50px
		}

.single-tec_sponsor .has-post-thumbnail .tec-sponsor-grid {
				grid-column-gap: 50px
		}
	}
