/* Business Open/Closed status widget – button style, dot, pulse */
.trinity-bi-open-status {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	text-align: inherit;
	gap: 0.35em;
}

/* Default: next open below */
.trinity-bi-open-status-next-below {
	flex-direction: column;
	align-items: inherit;
}
.trinity-bi-open-status-next-below .trinity-bi-open-status-inner { order: 1; }
.trinity-bi-open-status-next-below .trinity-bi-open-status-next {
	order: 2;
	margin-top: 0.35em;
}

/* Next open above */
.trinity-bi-open-status-next-above {
	flex-direction: column;
	align-items: inherit;
}
.trinity-bi-open-status-next-above .trinity-bi-open-status-inner { order: 2; }
.trinity-bi-open-status-next-above .trinity-bi-open-status-next {
	order: 1;
	margin-bottom: 0.35em;
}

/* Next open left */
.trinity-bi-open-status-next-left {
	flex-direction: row;
}
.trinity-bi-open-status-next-left .trinity-bi-open-status-inner { order: 2; }
.trinity-bi-open-status-next-left .trinity-bi-open-status-next {
	order: 1;
	margin-top: 0;
	margin-right: 0.35em;
}

/* Next open right */
.trinity-bi-open-status-next-right {
	flex-direction: row;
}
.trinity-bi-open-status-next-right .trinity-bi-open-status-inner { order: 1; }
.trinity-bi-open-status-next-right .trinity-bi-open-status-next {
	order: 2;
	margin-top: 0;
	margin-left: 0.35em;
}

.trinity-bi-open-status-inner {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	padding: 0.5em 1em;
	border-radius: 9999px;
	border: none;
	transition: box-shadow 0.2s ease;
}

.trinity-bi-open-status-dot {
	display: inline-block;
	width: 0.5em;
	height: 0.5em;
	border-radius: 50%;
	flex-shrink: 0;
	animation: trinity-bi-open-status-pulse 1.5s ease-in-out infinite;
}

@keyframes trinity-bi-open-status-pulse {
	0%, 100% {
		opacity: 1;
	}
	50% {
		opacity: 0.4;
	}
}

.trinity-bi-open-status-label {
	display: inline-block;
	font-weight: 600;
}

.trinity-bi-open-status-next {
	opacity: 0.9;
}
