/* =========================================================================
   Next Class bar — [lh_next_class_bar] (inc/next-class-bar.php).
   Reproduces the approved nextclass-bar mock: compact 66px date chip sitting
   close to the text, countdown segments with colons, and Join Zoom + Go To
   Class right-aligned together. Colours from Avada global vars only.
   Enqueued from inc/next-class-dd.php on pages containing the bar.
   ========================================================================= */
.lh-ncb
{
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	background: var(--awb-color1);
	border: 1px solid var(--awb-color3);
	border-radius: 18px;
	padding: 18px 22px;
	box-shadow: 0 12px 34px -20px rgba( 1, 47, 69, 0.4 );
}

/* ---- date chip (navy square, 66px like the mock) ---- */
.lh-ncb-cal
{
	flex: 0 0 auto;
	width: 66px;
	height: 66px;
	border-radius: 16px;
	background: var(--awb-custom_color_1);
	color: var(--awb-color1);
	display: grid;
	place-items: center;
	align-content: center;
	text-align: center;
	line-height: 1;
}
.lh-ncb-cal b
{
	font-size: 1.6rem;
	font-weight: 800;
	line-height: 1;
}
.lh-ncb-cal span
{
	font-size: 0.6rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	opacity: 0.85;
	margin-top: 3px;
}

/* ---- info block ---- */
.lh-ncb-info
{
	flex: 1 1 220px;
	min-width: 0;
}
.lh-ncb-label
{
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 0.66rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--awb-color5);
}
.lh-ncb-name
{
	font-size: 1.15rem;
	font-weight: 800;
	color: var(--awb-custom_color_1);
	margin: 2px 0;
	line-height: 1.25;
}
.lh-ncb-meta
{
	font-size: 0.86rem;
	font-weight: 600;
	color: var(--awb-custom_color_12);
}
.lh-ncb-dot
{
	margin: 0 3px;
	color: var(--awb-color3);
}
/* live dot in the eyebrow (only when class has started) */
.lh-ncb-livedot
{
	display: none;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--awb-color5);
	animation: lh-ncb-blink 1.1s infinite;
}
@keyframes lh-ncb-blink
{
	50%
	{
		opacity: 0.25;
	}
}

/* ---- middle: countdown + actions, pushed right ---- */
.lh-ncb-mid
{
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
}
.lh-ncb-cd
{
	display: flex;
	align-items: center;
	gap: 6px;
}
.lh-ncb-seg
{
	background: var(--awb-color2);
	border: 1px solid var(--awb-color3);
	border-radius: 11px;
	padding: 8px 10px;
	min-width: 52px;
	text-align: center;
}
.lh-ncb-seg b
{
	display: block;
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1;
	color: var(--awb-custom_color_1);
	font-variant-numeric: tabular-nums;
}
.lh-ncb-seg span
{
	font-size: 0.54rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-weight: 700;
	color: var(--awb-custom_color_12);
}
.lh-ncb-cln
{
	font-weight: 800;
	font-size: 1.2rem;
	color: var(--awb-color3);
}

/* "Class is live" replaces the countdown once started */
.lh-ncb-livebig
{
	display: none;
	align-items: center;
	gap: 9px;
	font-size: 1.05rem;
	font-weight: 800;
	color: var(--awb-color5);
}
.lh-ncb-dotbig
{
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--awb-color5);
	animation: lh-ncb-blink 1.1s infinite;
}
.lh-ncb.is-live .lh-ncb-cd
{
	display: none;
}
.lh-ncb.is-live .lh-ncb-livebig
{
	display: flex;
}
.lh-ncb.is-live .lh-ncb-livedot
{
	display: inline-block;
}

/* ---- buttons: side by side, right aligned ---- */
.lh-ncb-acts
{
	display: flex;
	align-items: flex-start;
	gap: 10px;
	flex-wrap: wrap;
}
.lh-ncb-zoomwrap
{
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
}
.lh-ncb-btn
{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
	font-size: 0.92rem;
	font-weight: 800;
	padding: 12px 18px;
	border-radius: 13px;
	border: 0;
	text-decoration: none;
	transition: filter 0.15s, transform 0.15s;
}
.lh-ncb-btn:hover
{
	filter: brightness( 1.06 );
	transform: translateY( -1px );
}
.lh-ncb-btn svg
{
	width: 18px;
	height: 18px;
}
.lh-ncb-zoom
{
	background: #2d8cff;
	color: var(--awb-color1);
}
.lh-ncb-zoom.is-locked
{
	background: var(--awb-color3);
	color: var(--awb-custom_color_12);
	pointer-events: none;
	cursor: not-allowed;
	filter: none;
	transform: none;
}
.lh-ncb-start
{
	background: var(--awb-custom_color_1);
	color: var(--awb-color1);
}
.lh-ncb-locknote
{
	margin-top: 8px;
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--awb-custom_color_12);
}

/* ---- empty state ---- */
.lh-ncb--empty .lh-ncb-info
{
	flex: 1 1 auto;
}

/* ---- responsive — Avada's own breakpoints: medium/tablet 1024, small/phone 767 ---- */
@media ( max-width: 1024px )
{
	/* tablet: countdown + buttons drop to their own full-width row under the text */
	.lh-ncb-mid
	{
		margin-left: 0;
		width: 100%;
		justify-content: flex-start;
	}
}
@media ( max-width: 767px )
{
	/* phone: tighter, and the two buttons share the row evenly */
	.lh-ncb
	{
		gap: 14px;
		padding: 16px;
	}
	.lh-ncb-mid
	{
		gap: 14px;
	}
	.lh-ncb-acts
	{
		width: 100%;
	}
	.lh-ncb-zoomwrap
	{
		flex: 1 1 auto;
	}
	.lh-ncb-btn
	{
		flex: 1 1 auto;
		justify-content: center;
	}
	.lh-ncb-locknote
	{
		text-align: center;
		width: 100%;
	}
}
