/**
 * Tour Location Manager — Frontend Styles
 */

.tlm-location-menu {
	margin: 1em 0;
}

.tlm-location-menu-title {
	margin-bottom: 0.5em;
}

.tlm-location-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.tlm-location-list.tlm-level-1 {
	border-top: 1px solid #e2e2e2;
}

.tlm-location-item {
	border-bottom: 1px solid #e2e2e2;
}

.tlm-location-row {
	display: flex;
	align-items: center;
	padding: 0.4em 0;
}

.tlm-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.5em;
	height: 1.5em;
	margin-right: 0.5em;
	flex: 0 0 auto;
	border: 1px solid #ccc;
	background: #f7f7f7;
	border-radius: 3px;
	cursor: pointer;
	font-size: 0.9em;
	line-height: 1;
	padding: 0;
}

.tlm-toggle-empty {
	width: 1.5em;
	height: 1.5em;
	margin-right: 0.5em;
	border: none;
	background: transparent;
}

.tlm-location-link {
	text-decoration: none;
	font-weight: 500;
}

.tlm-location-link:hover {
	text-decoration: underline;
}

.tlm-count {
	margin-left: 0.4em;
	color: #777;
	font-size: 0.9em;
}

.tlm-location-children {
	display: none;
	margin-left: 1.75em;
}

/* Expanded state (toggled via JS, or forced via .tlm-expanded) */
.tlm-location-item.tlm-expanded > .tlm-location-children,
.tlm-location-menu.tlm-expanded .tlm-location-children {
	display: block;
}

.tlm-location-item.tlm-expanded > .tlm-location-row .tlm-toggle span::before {
	content: "\2212"; /* minus sign */
}

/* Breadcrumb */
.tlm-breadcrumb {
	margin-bottom: 0.75em;
	font-size: 0.9em;
	color: #666;
}

.tlm-breadcrumb a {
	text-decoration: none;
}

.tlm-breadcrumb a:hover {
	text-decoration: underline;
}

.tlm-breadcrumb-current {
	font-weight: 600;
	color: #333;
}

/* Empty state */
.tlm-empty,
.tlm-no-products {
	color: #777;
}
