/*////////////////////*/
/*///Standard css////*/
/*//////////////////*/
.gwp_inline {
	display: inline;
}

.gwp_inline-block {
	display: inline-block;
}

.gwp_float-right {
	float: right;
}

.gwp_float-left {
	float: left;
}

.gwp_block {
	display: block;
	width: 100%;
	clear: left;
}

.container-wrap {
	background-color: #f5f6f8;
}

.gwp_container-wrap {
	padding-top: 0px !important;
	background-color: #f5f6f8;
}

/*//////////////////////*/
/*/// Page container ///*/
/*////////////////////*/
#gwp_schedule-item {
	position: relative;
	padding: 32px 36px;
	font-size: 15px;
	width: 100%;
	max-width: 860px;
	margin: 24px auto;
	font-family: 'Lato', sans-serif;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	line-height: 1.6;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	color: #333;
	overflow: hidden;
}

#gwp_activity-item {
	position: relative;
	padding: 32px 36px;
	font-size: 15px;
	width: 100%;
	max-width: 860px;
	margin: 24px auto;
	font-family: 'Lato', sans-serif;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	line-height: 1.6;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	color: #333;
}

#gwp_activity-item a {
	color: var(--accent1);
	text-decoration: none;
	transition: color 0.15s;
}

#gwp_activity-item a:hover {
	text-decoration: underline;
}

/*////////////////////*/
/*///// Header //////*/
/*//////////////////*/
#gwp_header {
	width: 100%;
	margin: 0 auto 20px;
}

.gwp_subheader {
	display: block;
	margin: 0 0 8px 0;
	font-family: 'Lato', sans-serif;
}

.gwp_item_header {
	display: block;
	width: 100%;
	margin-bottom: 20px;
	page-break-after: avoid;
}

.gwp_item_sheader {
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	padding-bottom: 4px;
	color: #1a1a1a;
}

.gwp_item_hr {
	font-family: 'Lato', sans-serif;
	font-size: 22px;
	font-weight: 600;
	display: block;
	border: none;
	width: 100%;
	margin: 0 0 16px 0;
	padding-bottom: 8px;
	color: #1a1a1a;
}

/* ============================
   COLOR THEME ACCENT BAR
   ============================ */
.gwp_accent_bar {
	height: 4px;
	margin: -32px -36px 24px -36px;
}

/* ============================
   TITLE UNDERLINE
   ============================ */
.gwp_title_wrap {
	display: inline-block;
}

.gwp_title_wrap h1 {
	margin: 0;
}

.gwp_title_underline {
	width: 100%;
	height: 3px;
	background: var(--schedule-accent, var(--accent1));
	border-radius: 2px;
	margin-top: 8px;
}

/*////////////////////*/
/*/// Print button ///*/
/*//////////////////*/
.gwp_item_print {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 28px;
	right: 28px;
	cursor: pointer;
	width: 40px;
	height: 40px;
	border-radius: 8px;
	border: 1px solid #e5e7eb;
	background: #fff;
	transition: all 0.15s;
	z-index: 2;
}

.gwp_item_print:hover {
	border-color: var(--accent1);
	background: color-mix(in srgb, var(--accent1) 5%, white);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.gwp_icon_print {
	font-size: 20px;
	color: #666;
	transition: color 0.15s;
}

.gwp_icon_print:hover {
	color: var(--accent1);
}

.gwp_icon_print:active {
	position: relative;
	top: 1px;
}

/*////////////////////*/
/*/// Taxonomy tags ///*/
/*//////////////////*/
.gwp_topicwrap {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-right: 6px;
	margin-bottom: 8px;
	background: #f2f2f2;
	border: 1px solid #e5e7eb;
	border-radius: 20px;
	color: #444;
	font-family: 'Lato', sans-serif;
	font-size: 13px;
	padding: 4px 12px;
	line-height: 1.5;
}

.gwp_topictext {
	color: #444;
	font-family: 'Lato', sans-serif;
	font-size: 13px;
}

.gwp_topictext b {
	font-weight: 600;
	color: #333;
}

.gwp_topictext>a {
	color: var(--accent1);
	text-decoration: none;
}

.gwp_topictext>a:hover {
	text-decoration: underline;
}

.gwp_serieswrap {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-right: 6px;
	margin-bottom: 8px;
	background: #f2f2f2;
	border: 1px solid #e5e7eb;
	border-radius: 20px;
	color: #444;
	font-family: 'Lato', sans-serif;
	font-size: 13px;
	padding: 4px 12px;
	line-height: 1.5;
}

.gwp_seriestext {
	color: #444;
	font-family: 'Lato', sans-serif;
	font-size: 13px;
}

.gwp_seriestext b {
	font-weight: 600;
	color: #333;
}

.gwp_seriestext>a {
	color: var(--accent1);
	text-decoration: none;
}

.gwp_seriestext>a:hover {
	text-decoration: underline;
}

.gwp_durationwrap {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-right: 6px;
	margin-bottom: 8px;
	background: #f2f2f2;
	border: 1px solid #e5e7eb;
	border-radius: 20px;
	color: #444;
	font-family: 'Lato', sans-serif;
	font-size: 13px;
	padding: 4px 12px;
	line-height: 1.5;
}

.gwp_durationtext {
	color: #444;
	font-family: 'Lato', sans-serif;
	font-size: 13px;
}

.gwp_durationimg {
	display: block;
	line-height: 0;
	border-collapse: collapse;
	height: 14px;
	padding: 0;
	margin: 0 3px 0 0;
}

/*////////////////////////*/
/*/// Schedule rows /////*/
/*//////////////////////*/
.gwp_schedulewrap {
	margin-top: 20px;
	padding-top: 16px;
	border-top: 1px solid #f0f0f0;
	overflow: hidden;
}

.gwp_schedulerow {
	background-color: #ffffff;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 8px;
	border-radius: 6px;
	padding: 10px 14px;
	margin-top: 4px;
	box-sizing: border-box;
	overflow: hidden;
	page-break-inside: avoid;
}

.gwp_schedulerow_alt {
	background-color: #f8f9fa;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 8px;
	border-radius: 6px;
	padding: 10px 14px;
	margin-top: 4px;
	box-sizing: border-box;
	overflow: hidden;
	page-break-inside: avoid;
}

.gwp_srlen {
	width: 100%;
}

.gwp_scheduleitem {
	display: inline-block;
	margin: 2px 16px 2px 0;
	max-width: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
	font-size: 14px;
}

.gwp_scheduleitem b {
	font-weight: 600;
	color: #1a1a1a;
}

/* ============================
   HEADER / SUBHEADER / SPACE ROWS
   ============================ */
.gwp_header_row {
	background: none;
	padding: 0;
	margin-top: 20px;
}

.gwp_sheader {
	margin-top: 0;
	margin-bottom: 4px;
	display: block;
	font-size: 16px;
	font-weight: 700;
	color: #1a1a1a;
	padding-bottom: 6px;
	border-bottom: 1px solid #e5e7eb;
	width: 100%;
	page-break-after: avoid;
}

.gwp_subheader_row {
	background: none;
	padding: 0;
	margin-top: 14px;
}

.gwp_ssheader {
	display: block;
	margin-top: 0;
	margin-bottom: 2px;
	font-size: 14px;
	font-weight: 600;
	color: #555;
	text-transform: uppercase;
	letter-spacing: 0.3px;
	page-break-after: avoid;
}

.gwp_space_row {
	background: none;
	padding: 0;
}

.gwp_sspace {
	height: 16px;
}

/* ============================
   ITEM NUMBER CIRCLE
   ============================ */
.gwp_item_number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	margin-right: 10px;
	background: var(--schedule-accent, var(--accent1));
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	border-radius: 50%;
	flex-shrink: 0;
}

/* ============================
   TIME COLUMN
   ============================ */
.gwp_time_col {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-width: 140px;
	font-size: 13px;
	font-weight: 600;
	color: #555;
	padding-top: 2px;
	flex-shrink: 0;
}

.gwp_time_col i {
	font-size: 14px;
	color: var(--schedule-accent, var(--accent1));
}

/* ============================
   MAIN CONTENT COLUMN
   ============================ */
.gwp_main_col {
	flex: 1;
	min-width: 0;
	font-size: 14px;
}

.gwp_item_name {
	font-size: 14px;
	margin-bottom: 2px;
}

.gwp_item_name b {
	font-weight: 600;
	color: #1a1a1a;
}

.gwp_people_row {
	font-size: 13px;
	color: #555;
	margin-top: 2px;
}

.gwp_person_lead,
.gwp_person_helpers {
	margin-right: 12px;
}

.gwp_person_lead i,
.gwp_person_helpers i {
	margin-right: 3px;
	color: #999;
}

.gwp_inline_meta {
	font-size: 12px;
	color: #666;
	margin-left: 8px;
}

.gwp_inline_meta i {
	margin-right: 2px;
	color: #999;
}

.gwp_inline_notes {
	font-size: 12px;
	color: #888;
	font-style: italic;
	margin-top: 4px;
}

.gwp_inline_notes i {
	font-style: normal;
	margin-right: 3px;
	color: #999;
}

/*////////////////////////*/
/*/// Content sections ///*/
/*//////////////////////*/
.gwp_standard_space {
	padding: 12px 0;
	max-width: 100%;
}

.gwp_fieldtitle {
	font-size: 14px;
	color: #666;
}

.gwp_fieldtitle b {
	font-weight: 600;
	color: #333;
}

.gwp_fieldcontent {
	font-size: 15px;
	color: #333;
	line-height: 1.6;
}

.gwp_goalbox {
	margin-top: 20px;
	padding: 14px 18px;
	background: #f2f2f2;
	border-radius: 8px;
	page-break-inside: avoid;
}

.gwp_descriptionbox {
	margin-top: 20px;
	padding: 14px 18px;
	background: #f2f2f2;
	border-radius: 8px;
	page-break-inside: avoid;
}

.gwp_equipmentbox {
	margin-top: 20px;
	padding: 14px 18px;
	background: #f2f2f2;
	border-radius: 8px;
	page-break-inside: avoid;
}

.gwp_attachmentslist {
	margin-top: 20px;
	padding: 14px 18px;
	background: #f2f2f2;
	border-radius: 8px;
	page-break-inside: avoid;
}

.gwp_attachment {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 4px 8px 4px 0;
	padding: 6px 12px;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	font-size: 13px;
	color: #444;
	transition: border-color 0.15s;
}

.gwp_attachment:hover {
	border-color: var(--accent1);
}

.gwp_attachment a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-decoration: none;
	color: #444;
}

.gwp_attachmenticon {
	font-size: 16px;
	color: var(--accent1);
}

.gwp_scheduledescription {
	display: block;
	margin: 20px 0;
	background: #f2f2f2;
	padding: 14px 18px;
	border-radius: 8px;
}

/* ============================
   DESCRIPTION CARD
   ============================ */
.gwp_description_card {
	margin: 20px 0;
	padding: 16px 20px;
	background: #f8f9fa;
	border-radius: 8px;
	border-left: 3px solid var(--schedule-accent, var(--accent1));
}

.gwp_description_label {
	font-size: 13px;
	font-weight: 600;
	color: #666;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 8px;
}

.gwp_description_label i {
	margin-right: 4px;
	color: var(--schedule-accent, var(--accent1));
}

.gwp_description_content {
	font-size: 14px;
	color: #333;
	line-height: 1.7;
}

/* ============================
   PROGRAMME SECTION
   ============================ */
.gwp_scheduleprogramme {
	display: block;
}

.gwp_programme_heading {
	display: block;
	margin: 0 0 16px 0;
	font-family: 'Lato', sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: #1a1a1a;
	padding-bottom: 12px;
}

.gwp_items {
	width: 100%;
}

/* ============================
   SECTION DIVIDER
   ============================ */
.gwp_section_divider {
	height: 1px;
	background: linear-gradient(to right, #e5e7eb, transparent);
	margin: 24px 0;
}

/*////////////////////////*/
/*///// Print / Hide ////*/
/*//////////////////////*/
#printable {
	display: none;
}

#non-printable {
	display: inline;
}

/*////////////////////////*/
/*/// Print media ///////*/
/*//////////////////////*/
@media print {
	#non-printable {
		display: none;
	}

	#printable {
		display: inline;
	}

	#header,
	#header-space,
	#header-outer,
	#search-outer,
	#top,
	#comments,
	#sidebar,
	#footer,
	#footer-outer,
	#menu,
	#commentform,
	#to-top {
		display: none;
	}

	/* Preserve background colours in print */
	* {
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	.container-wrap,
	.gwp_container-wrap {
		background-color: #fff;
	}

	#gwp_schedule-item {
		padding: 10px 16px;
		font-size: 14px;
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		display: block;
		border: none;
		border-radius: 0;
		box-shadow: none;
		overflow: visible;
		page-break-inside: auto;
		page-break-after: auto;
	}

	#gwp_activity-item {
		padding: 10px 16px;
		font-size: 14px;
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		display: block;
		border: none;
		border-radius: 0;
		box-shadow: none;
		page-break-inside: avoid;
		page-break-after: auto;
	}

	/* Keep everything together */
	.gwp_item_header {
		page-break-after: avoid;
	}

	.gwp_schedulewrap {
		page-break-inside: avoid;
	}

	.gwp_schedulerow,
	.gwp_schedulerow_alt {
		page-break-inside: avoid;
	}

	.gwp_sheader,
	.gwp_ssheader {
		page-break-after: avoid;
	}

	.gwp_goalbox,
	.gwp_descriptionbox,
	.gwp_equipmentbox,
	.gwp_attachmentslist {
		page-break-inside: avoid;
	}

	.gwp_topicwrap,
	.gwp_serieswrap,
	.gwp_durationwrap {
		page-break-inside: avoid;
	}

	.gwp_icon_print,
	.gwp_item_print {
		display: none !important;
	}

	.gwp_standard_space {
		padding-top: 8px;
		padding-bottom: 8px;
		max-width: 100%;
	}

	/* Accent bar: adjust for print padding */
	.gwp_accent_bar {
		margin: -10px -16px 16px -16px;
		border-radius: 0;
	}

	/* Description card: reduce padding */
	.gwp_description_card {
		padding: 10px 14px;
		background: #f8f8f8;
	}

	/* Metadata badges: preserve colors */
	.gwp_metabadge {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}

	/* Numbering circles: preserve colors */
	.gwp_item_number {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}

	/* Title underline: preserve */
	.gwp_title_underline {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}

	/* Programme heading border: preserve */
	.gwp_programme_heading {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}

	/* Media: videos become text note, no iframe */
	.gwp_video_embed iframe {
		display: none;
	}
	.gwp_media_video::after {
		content: "Video \2014  view online";
		display: block;
		padding: 12px;
		font-size: 12px;
		color: #666;
		font-style: italic;
	}

	/* Images: limit height for print */
	.gwp_media_image img {
		max-height: 200px;
		object-fit: contain;
	}

	/* Media grid: single column for print */
	.gwp_media_grid {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	/* Item type print rules */
	.gwp_sbreak { border-top: 1px dashed #ccc; border-bottom: 1px dashed #ccc; }
	.gwp_sdecision { background: #fffde7; border-left: 3px solid #ffc107; }
}

/* Schedule print page setup — portrait, override calendar landscape */
@page {
	size: auto;
	margin: 1cm;
}

/*////////////////////////*/
/*///// Mobile //////////*/
/*//////////////////////*/
@media only screen and (max-width: 600px) {

	#gwp_schedule-item,
	#gwp_activity-item {
		padding: 16px;
		margin: 12px 8px;
		border-radius: 8px;
	}

	.gwp_item_hr {
		font-size: 18px;
	}

	.gwp_item_print {
		position: static;
		display: inline-flex;
		margin-bottom: 12px;
	}

	.gwp_item_header {
		display: block;
		width: 100%;
	}

	.gwp_scheduleitem {
		display: block;
		margin: 2px 0;
	}

	.gwp_goalbox,
	.gwp_descriptionbox,
	.gwp_equipmentbox,
	.gwp_attachmentslist {
		padding: 10px 12px;
	}

	.gwp_standard_space {
		max-width: 100%;
	}

	/* Accent bar: adjust for smaller padding */
	.gwp_accent_bar {
		margin: -16px -16px 16px -16px;
	}

	/* Rows: allow wrapping so time + content stack */
	.gwp_schedulerow,
	.gwp_schedulerow_alt {
		flex-wrap: wrap;
		row-gap: 4px;
	}

	/* Time column: full width, above content */
	.gwp_time_col {
		min-width: unset;
		width: 100%;
	}

	/* Main col: full width */
	.gwp_main_col {
		width: 100%;
	}

	/* Numbering: smaller */
	.gwp_item_number {
		min-width: 24px;
		height: 24px;
		font-size: 11px;
	}

	/* Metadata badges: wrap and stack */
	.gwp_schedule_metabadges { display: flex; flex-wrap: wrap; gap: 4px; }
	.gwp_metabadge {
		font-size: 12px;
		padding: 3px 10px;
	}

	/* Media grid: single column */
	.gwp_media_grid {
		grid-template-columns: 1fr;
	}

	.gwp_media_item {
		border-radius: 6px;
	}

	/* New item types: full width */
	.gwp_sdecision { padding: 6px 8px; font-size: 13px; }
	.gwp_stask { font-size: 13px; }
	.gwp_stext { font-size: 13px; }
	.gwp_sbreak { font-size: 13px; padding: 8px 0; }

	/* Status/priority badges: smaller */
	.gwp_sstatus, .gwp_spriority { font-size: 10px; padding: 1px 6px; }

	/* Task extra details: stack */
	.gwp_stask_assignee, .gwp_stask_notes { font-size: 12px; }
	.gwp_inline_notes, .gwp_inline_meta { font-size: 11px; }
}

/* ============================
   NEW SCHEDULE ITEM TYPES (DISPLAY)
   ============================ */

/* Text block */
.gwp_stext { font-size: 14px; color: #333; line-height: 1.6; white-space: pre-wrap; padding: 4px 0; }

/* Break/interval */
.gwp_sbreak { display: flex; align-items: center; gap: 8px; padding: 10px 0; color: #888; font-style: italic; border-top: 1px dashed #ddd; border-bottom: 1px dashed #ddd; margin: 4px 0; }
.gwp_sbreak i { font-size: 16px; }
.gwp_break_duration { font-size: 12px; color: #999; }

/* Link */
.gwp_slink { font-size: 14px; padding: 2px 0; }
.gwp_slink a { color: var(--schedule-accent, var(--accent1)); text-decoration: none; }
.gwp_slink a:hover { text-decoration: underline; }
.gwp_slink i { margin-right: 4px; color: #999; }
.gwp_slink_notes { font-size: 12px; color: #888; font-style: italic; margin-top: 2px; }

/* Decision */
.gwp_sdecision { font-size: 14px; padding: 8px 12px; background: #fff8e1; border-radius: 6px; border-left: 4px solid #ffc107; margin: 4px 0; }
.gwp_sdecision_notes { font-size: 12px; color: #888; font-style: italic; margin-top: 4px; }

/* Task */
.gwp_stask { font-size: 14px; }
.gwp_stask_name { font-weight: 600; }
.gwp_stask_assignee { font-size: 13px; color: #666; margin-top: 2px; }
.gwp_stask_notes { font-size: 13px; color: #666; font-style: italic; margin-top: 2px; }

/* Status badges (shared) */
.gwp_sstatus { display: inline-block; font-size: 11px; font-weight: 600; padding: 2px 8px; border-radius: 10px; margin-left: 6px; text-transform: uppercase; vertical-align: middle; }
.gwp_sstatus.pending { background: #fff3cd; color: #856404; }
.gwp_sstatus.approved { background: #d4edda; color: #155724; }
.gwp_sstatus.rejected { background: #f8d7da; color: #721c24; }
.gwp_sstatus.deferred { background: #e2e3e5; color: #383d41; }
.gwp_sstatus.in-progress { background: #cce5ff; color: #004085; }
.gwp_sstatus.complete { background: #d4edda; color: #155724; }

/* Priority badges (shared) */
.gwp_spriority { display: inline-block; font-size: 11px; font-weight: 600; padding: 2px 8px; border-radius: 10px; margin-left: 6px; text-transform: uppercase; vertical-align: middle; }
.gwp_spriority.low { background: #e2e3e5; color: #383d41; }
.gwp_spriority.medium { background: #fff3cd; color: #856404; }
.gwp_spriority.high { background: #f8d7da; color: #721c24; }
.gwp_spriority.critical { background: #721c24; color: #fff; }

/* ============================
   MEDIA RENDERING
   ============================ */
.gwp_media_row {
	padding: 12px 14px;
}

.gwp_sitemmedia_block {
	width: 100%;
}

.gwp_media_caption {
	font-size: 14px;
	font-weight: 600;
	color: #333;
	margin-bottom: 10px;
}

.gwp_media_caption i {
	color: var(--schedule-accent, var(--accent1));
	margin-right: 4px;
}

.gwp_media_grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 12px;
}

.gwp_media_item {
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	overflow: hidden;
	background: #fff;
}

/* Images */
.gwp_media_image img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
	max-height: 300px;
}

/* Video embeds: 16:9 responsive wrapper */
.gwp_video_embed {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
	overflow: hidden;
}

.gwp_video_embed iframe,
.gwp_video_embed video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}

/* Audio */
.gwp_media_audio {
	padding: 12px;
}

.gwp_media_audio audio {
	width: 100%;
}

/* File download links */
.gwp_media_file {
	padding: 12px 14px;
}

.gwp_media_file a {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #333;
	text-decoration: none;
	font-size: 13px;
	transition: color 0.15s;
}

.gwp_media_file a:hover {
	color: var(--schedule-accent, var(--accent1));
}

.gwp_media_file_icon {
	font-size: 24px;
	color: var(--schedule-accent, var(--accent1));
}

/* Media labels */
.gwp_media_label {
	font-size: 12px;
	color: #666;
	padding: 6px 10px;
	border-top: 1px solid #f0f0f0;
}

.gwp_media_label i {
	margin-right: 4px;
}

/* ── Inline PDF embed ── */
.gwp_media_pdf_embed {
	grid-column: 1 / -1;
}

.gwp_pdf_header,
.gwp_doc_header {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 14px;
	font-size: 13px;
	font-weight: 600;
	color: #333;
	border-bottom: 1px solid #e5e7eb;
}

.gwp_pdf_header i,
.gwp_doc_header i {
	font-size: 18px;
	color: var(--schedule-accent, var(--accent1));
}

.gwp_pdf_open,
.gwp_doc_open {
	margin-left: auto;
	font-size: 12px;
	font-weight: 400;
	color: var(--schedule-accent, var(--accent1));
	text-decoration: none;
}

.gwp_pdf_open:hover,
.gwp_doc_open:hover {
	text-decoration: underline;
}

.gwp_pdf_iframe,
.gwp_doc_iframe {
	display: block;
	width: 100%;
	height: 85vh;
	min-height: 500px;
	border: none;
}

/* ── Inline Office doc embed ── */
.gwp_media_doc_embed {
	grid-column: 1 / -1;
}

/* ── Inline schedule embed ── */
.gwp_media_schedule_embed {
	grid-column: 1 / -1;
}

.gwp_embed_schedule_header {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 14px;
	font-size: 14px;
	font-weight: 700;
	color: #333;
	border-bottom: 1px solid #e5e7eb;
	letter-spacing: 0.03em;
}

.gwp_embed_schedule_header i {
	font-size: 18px;
	color: var(--schedule-accent, var(--accent1));
}

.gwp_embed_schedule_date {
	font-size: 12px;
	font-weight: 400;
	color: #888;
}

.gwp_embed_schedule_link {
	margin-left: auto;
	color: var(--schedule-accent, var(--accent1));
	font-size: 14px;
	text-decoration: none;
}

.gwp_embed_schedule_link:hover {
	opacity: 0.7;
}

.gwp_embed_schedule_body {
	padding: 4px 0;
}

.gwp_embed_sch_header {
	padding: 8px 14px 4px;
	font-size: 13px;
	font-weight: 700;
	color: #333;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border-top: 2px solid var(--schedule-accent, var(--accent1));
	margin-top: 4px;
}

.gwp_embed_sch_subheader {
	padding: 6px 14px 2px;
	font-size: 12px;
	font-weight: 600;
	color: #555;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.gwp_embed_sch_space {
	height: 8px;
}

.gwp_embed_sch_row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 14px;
	font-size: 13px;
	color: #444;
}

.gwp_embed_sch_row_alt {
	background: #f9fafb;
}

.gwp_embed_sch_num {
	font-weight: 600;
	color: var(--schedule-accent, var(--accent1));
	min-width: 24px;
}

.gwp_embed_sch_time {
	font-size: 11px;
	color: #888;
	min-width: 44px;
	white-space: nowrap;
}

.gwp_embed_sch_name {
	font-weight: 500;
	flex: 1;
}

.gwp_embed_sch_person {
	font-size: 12px;
	color: #777;
	white-space: nowrap;
}

.gwp_embed_sch_break {
	color: #999;
	font-style: italic;
}

.gwp_embed_sch_text {
	color: #555;
	font-style: italic;
}

.gwp_embed_sch_empty {
	padding: 16px 14px;
	color: #aaa;
	font-style: italic;
	text-align: center;
}

/* Link items (when embed fails / generic remote) */
.gwp_media_link_item {
	padding: 12px 14px;
}

.gwp_media_link_item a {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--schedule-accent, var(--accent1));
	text-decoration: none;
	font-size: 13px;
}

.gwp_media_link_item a:hover {
	text-decoration: underline;
}

/* ============================
   METADATA BADGES
   ============================ */
.gwp_schedule_metabadges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 16px 0 8px 0;
}

.gwp_metabadge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #f8f9fa;
	border: 1px solid #e5e7eb;
	border-radius: 20px;
	color: #444;
	font-family: 'Lato', sans-serif;
	font-size: 13px;
	padding: 5px 14px;
	line-height: 1.4;
}

.gwp_metabadge i {
	font-size: 14px;
	color: var(--schedule-accent, var(--accent1));
}

/* Tag badge variant */
.gwp_tagwrap {
	background: #eef6ff;
	border-color: #d0e3f7;
}

/* Duration meta badge */
.gwp_durationmetawrap i {
	font-size: 14px;
}

/* Color stripe on item row */
.gwp_schedulerow[style*="border-left"], .gwp_schedulerow_alt[style*="border-left"] { padding-left: 10px; }

/* ============================
   MEDIA — CARD PREVIEW OVERRIDES
   Scoped to the compact schedule card on the schedules list page.
   Full-page sizing (above) is unchanged.
   ============================ */
.gwp_schedule_card .gwp_media_grid {
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 8px;
}
.gwp_schedule_card .gwp_media_image img {
	max-height: 150px;
	object-fit: cover;
}
.gwp_schedule_card .gwp_media_label {
	font-size: 11px;
	padding: 4px 8px;
}
.gwp_schedule_card .gwp_media_audio {
	padding: 8px;
}
.gwp_schedule_card .gwp_media_file {
	padding: 8px 10px;
}
.gwp_schedule_card .gwp_pdf_iframe,
.gwp_schedule_card .gwp_doc_iframe {
	height: 180px;
}

/* Collapsed preview: clip div2 height and fade bottom edge */
.gwp_schedule_card {
	box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

.gwp_sched_preview_clip {
	max-height: 220px;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(to bottom, black 65%, transparent 100%);
	mask-image: linear-gradient(to bottom, black 65%, transparent 100%);
}

