/* Frontend styles: opening hours shortcode */

.elmur-bh-display {
	margin: 1.5em 0;
}

.elmur-bh-display__table {
	border-collapse: collapse;
	width: auto;
}

.elmur-bh-display__day {
	padding: 0 1em 0.4em 0;
	font-weight: 600;
	white-space: nowrap;
	vertical-align: top;
	text-align: left;
}

.elmur-bh-display__times {
	padding: 0 0 0.4em 0;
	vertical-align: top;
	line-height: 1.7;
}

.elmur-bh-display__table tr:last-child .elmur-bh-display__day,
.elmur-bh-display__table tr:last-child .elmur-bh-display__times {
	padding-bottom: 0;
}

/* Inline label after times (e.g. "Lunch break") */
.elmur-bh-label {
	margin-left: 0.25rem;
	font-style: italic;
	opacity: 0.75;
}

/* Label-only row (e.g. "Closed") */
.elmur-bh-label--closed {
	margin-left: 0;
	font-style: normal;
	opacity: 1;
}

/* Empty state */
.elmur-bh-empty {
	color: #666;
	font-style: italic;
}

/* Multi-location wrapper */
.elmur-bh-locations {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.elmur-bh-locations__item {
	margin: 0.75rem 0 0;
}

.elmur-bh-locations__item:first-child {
	margin-top: 0;
}

.elmur-bh-locations__name {
	margin: 0 0 0.25rem;
	font-weight: 700;
	color: var(--color-accent);
}

/* Remove default top/bottom margin from the business-hours table
   inside the multi-location wrapper — spacing is handled by the items. */
.elmur-bh-locations .elmur-bh-display {
	margin: 0;
}

/* Responsive: stack on very small screens */
@media (max-width: 25rem) {
	.elmur-bh-display__table,
	.elmur-bh-display__table tbody,
	.elmur-bh-display__table tr,
	.elmur-bh-display__day,
	.elmur-bh-display__times {
		display: block;
		width: 100%;
	}

	.elmur-bh-display__day {
		padding-bottom: 0.125rem;
	}

	.elmur-bh-display__times {
		padding-top: 0;
		padding-left: 0.75rem;
	}
}
