/*!********************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/block-library/custom/course-calendar/style.css ***!
  \********************************************************************************************************************************************************************************************************/
/** ======================
 ** LAYOUT
 ** ==================== */
.course-calendar {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--wp--preset--spacing--40);
	justify-content: space-between;

	border-top: 2px solid var(--wp--preset--color--primary);

	margin-top: var(--wp--preset--spacing--30);
}

@media screen and (min-width: 1150px) {
	.course-calendar {
		grid-template-columns: 0.25fr fit-content(100%);
	}

	.course-calendar:has([data-status="loading"].course__results) {
		grid-template-columns: 0.25fr 1fr;
	}
}

/** ======================
 ** FILTERS
 ** ==================== */
.course__filters {
	min-width: 20rem;
}

.course__filter h3 {
	font-size: var(--wp--preset--font-size--large);
	margin-top: 1em;
}

.course__filter {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
}

.course__filter-item {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.course__filter-checkbox {
	display: flex;
	gap: 0.5rem;
	align-items: center;
	line-height: 1.2;
}

/** ======================
 ** RESULTS
 ** ==================== */
.course__results {
	display: grid;
	gap: var(--wp--preset--spacing--30);
}

[data-status="loading"].course__results {
	align-items: center;
	justify-items: center;
}

.course__list-container {
	max-width: 100%;
}

.course__list-container > h2 {
	font-size: var(--wp--preset--font-size--huge);
	color: var(--wp--preset--color--white);

	background-color: var(--wp--preset--color--primary);

	padding: 0.175em 0.5em;
}

.course__list {
	list-style: none;
	padding: 0;
	gap: var(--wp--preset--spacing--40);
}

.course-list__item {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--wp--preset--spacing--30);

	position: relative;
}

.course-list__item__content {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-areas:
		"heading"
		"meta"
		"date"
		"venue"
		"category"
		"description"
		"buttons";
	-moz-column-gap: 1em;
	     column-gap: 1em;
	row-gap: 0em;
}

.course-list__item__content-heading {
	-ms-grid-row: 1;
	-ms-grid-column: 1;
	grid-area: heading;

	font-size: var(--wp--preset--font-size--large);
	line-height: 1.2;

	margin-top: 0;
	margin-bottom: 0.175em;
}

.course-list__item__content-meta {
	-ms-grid-row: 3;
	-ms-grid-column: 1;
	grid-area: meta;

	font-size: calc(var(--wp--preset--font-size--medium) * 0.875);
	text-transform: uppercase;
	font-weight: 700;
}

.course-list__item__content-closing-soon {
	color: #ff0000;
}

.course-list__item__content-description {
	-ms-grid-row: 11;
	-ms-grid-column: 1;
	grid-area: description;
	font-size: var(--wp--preset--font-size--medium);
	margin-block: var(--wp--preset--spacing--10);
}

.course-list__item__image img {
	width: 100%;
	height: auto;

	-o-object-fit: cover;

	   object-fit: cover;
	aspect-ratio: 5 / 4;
}

.course-list__item__content-status {
	--_background: var(--wp--preset--color--white);
	--_color: var(--wp--preset--color--black);
	position: absolute;
	top: 0.5rem;
	left: 0.5rem;

	background-color: var(--_background);
	color: var(--_color);

	padding: 0.25em 0.5em;
	border-radius: var(--wp--custom--border-radius);

	text-transform: uppercase;
	font-weight: 600;
}

.course-list__item__content-status--confirmed {
	--_background: #008240;
	--_color: var(--wp--preset--color--white);
}

.course-list__item__content-status--fully-booked {
	--_background: #ff0000;
	--_color: var(--wp--preset--color--white);
}

.course-list__item__content-status--cancelled {
	--_background: #ff0000;
	--_color: var(--wp--preset--color--white);
}

.course-list__item__content-category {
	display: flex;
	flex-direction: column;

	font-size: var(--wp--preset--font-size--medium);
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.2;
}

.course-list__item__content-category-label {
	text-transform: uppercase;
	font-size: calc(var(--wp--preset--font-size--medium) * 0.675);
	font-weight: 700;
	line-height: 1.2;
}

.course-list__item__content-date {
	-ms-grid-row: 5;
	-ms-grid-column: 1;
	display: flex;
	flex-direction: column;

	grid-area: date;
}

.course-list__item__content-venue {
	-ms-grid-row: 7;
	-ms-grid-column: 1;
	display: flex;
	flex-direction: column;

	grid-area: venue;
	margin-top: 0.375rem;
}

.course-list__item__content-date > span,
.course-list__item__content-venue > span {
	text-transform: uppercase;
	font-size: calc(var(--wp--preset--font-size--medium) * 0.675);
	font-weight: 700;
	line-height: 1.2;
}

.course-list__item__content-date > div,
.course-list__item__content-venue > div {
	display: flex;
	align-items: center;
	gap: 0.375rem;

	font-size: var(--wp--preset--font-size--medium);
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.2;
}

.course-list__item__content-buttons {
	-ms-grid-row: 13;
	-ms-grid-column: 1;
	grid-area: buttons;
	display: flex;
	flex-direction: column;
	gap: 1rem;

	margin-top: var(--wp--preset--spacing--10);
}

.course-list__item__content-buttons .wp-block-button__link {
	--_padding-block-start: 0.375em;
	--_padding-block-end: 0.375em;
	--_padding-inline-start: 1.25em;
	--_padding-inline-end: 1.25em;
	--_min-width: 100%;
}

@media screen and (min-width: 450px) {
	.course-list__item__content-buttons {
		flex-direction: row;
	}

	.course-list__item__content-buttons .wp-block-button__link {
		--_min-width: revert;
	}
}

@media screen and (min-width: 800px) {
	.course-list__item {
		grid-template-columns: 0.33fr 0.66fr;
	}

	.course-list__item__content {
		grid-template-columns: fit-content(100%) 1fr;
		grid-template-areas:
			"heading heading"
			"meta meta"
			"date venue"
			"category category"
			"description description"
			"buttons buttons";
	}

	.course-list__item__content-date,
	.course-list__item__content-venue {
		margin-top: var(--wp--preset--spacing--10);
		margin-bottom: var(--wp--preset--spacing--10);
	}

	.course-list__item__content-heading {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
	}

	.course-list__item__content-meta {
		-ms-grid-row: 2;
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
	}

	.course-list__item__content-description {
		-ms-grid-row: 5;
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
	}

	.course-list__item__content-date {
		-ms-grid-row: 3;
		-ms-grid-column: 1;
	}

	.course-list__item__content-venue {
		-ms-grid-row: 3;
		-ms-grid-column: 2;
	}

	.course-list__item__content-buttons {
		-ms-grid-row: 6;
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
	}
}

/** ======================
 ** TOOLTIP
 ** ==================== */
.tooltip {
	position: relative;
	display: inline-flex;
	align-items: center;

	margin-left: 0.25rem;
}

.tooltip__icon {
	cursor: pointer;
	width: 1rem;
	height: 1rem;
}

.tooltip__text {
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translateX(-50%);
	padding: 0.5em 1em;
	background-color: #333;
	color: white;
	border-radius: 4px;
	font-size: 0.875rem;
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.3s;

	width: 40ch;
	text-transform: none;
	font-weight: 500;
}

.tooltip:hover .tooltip__text {
	visibility: visible;
	opacity: 1;
}

.tooltip__text::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	border-width: 5px;
	border-style: solid;
	border-color: #333 transparent transparent transparent;
}


/*# sourceMappingURL=style-index.css.map*/