:root {
	--tabmenu-width: 500px;
	--tab-size: 60px;
	--tab-color: rgb(245, 245, 245);
	--tab-color-active: rgb(255, 255, 255);
	--tab-color-hover: rgb(238, 238, 238);
}
/*tabmenu*/
.leaflet-tabmenu {
	position: absolute;
	top: 0;
	bottom: 0;
	width: var(--tabmenu-width);
	max-width: var(--tabmenu-width);
	overflow: hidden;
	z-index: 9999;
}
.leaflet-tabmenu.collapsed {
	width: var(--tab-size);
}

.leaflet-tabmenu-left {
	left: 0;
}

.leaflet-tabmenu-right {
	right: 0;
}

.leaflet-tabmenu:not(.collapsed).leaflet-tabmenu-left > .leaflet-tabmenu-tabs {
	left: calc(var(--tabmenu-width) - var(--tab-size));
}

.leaflet-tabmenu:not(.collapsed).leaflet-tabmenu-right > .leaflet-tabmenu-tabs {
	right: calc(var(--tabmenu-width) - var(--tab-size));
}

/*tabmenu-tabs*/
.leaflet-tabmenu-tabs {
	height: inherit;
	background-color: var(--tab-color);
	position: absolute;
	width: var(--tab-size);
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.leaflet-tabmenu-left .leaflet-tabmenu-tabs {
	left: 0;
}
.leaflet-tabmenu-right .leaflet-tabmenu-tabs {
	right: 0;
}

.leaflet-tabmenu-tabs > li {
	height: var(--tab-size);
	color: #333;
	font-size: 14pt;
	overflow: hidden;
	border-bottom: 1px solid #ccc;
}

.leaflet-tabmenu-tabs > li > a > span {
	font-size: 9pt;
	font-weight: 600;
}

.leaflet-tabmenu-tabs > li:hover {
	color: #000;
	background-color: var(--tab-color-hover);
}
.leaflet-tabmenu-tabs > li.active {
	background-color: var(--tab-color-active);
}
.leaflet-tabmenu-tabs > li.active {
	color: rgb(0, 0, 128);
}

/*tabmenu-tab*/
.leaflet-tabmenu-tab.hidden {
	display: none;
}

.leaflet-tabmenu-left .leaflet-tabmenu-tab {
	border-right: 1px solid #ccc;
}

.leaflet-tabmenu-right .leaflet-tabmenu-tab {
	border-left: 1px solid #ccc;
}

.leaflet-tabmenu-left .leaflet-tabmenu-tabs > li.active {
	box-shadow: inset -2px 0 0 rgb(0, 0, 128);
}

.leaflet-tabmenu-right .leaflet-tabmenu-tabs > li.active {
	box-shadow: inset 2px 0 0 rgb(0, 0, 128);
}

.leaflet-tabmenu-tabs > li.disabled {
	color: rgb(200, 200, 200);
}

.leaflet-tabmenu-tabs > li.disabled:hover {
	background: transparent;
}

.leaflet-tabmenu-tabs > li.disabled > a {
	cursor: default;
}

.leaflet-tabmenu-tabs > li > a {
	display: block;
	width: 68px;
	height: 100%;
	color: inherit;
	top: 24%;
	text-decoration: none;
	text-align: center;
	cursor: pointer;
	align-items: center;
	position: relative;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-pack: center;
	justify-content: center;
}

.leaflet-tabmenu-panels {
	position: absolute;
	top: 0;
	bottom: 0;
	background-color: rgba(255, 255, 255, 0.95);
	overflow-x: hidden;
	overflow-y: auto;
}
.leaflet-tabmenu-left .leaflet-tabmenu-panels {
	left: var(--tab-size);
	right: 0;
}

.leaflet-tabmenu:not(.collapsed).leaflet-tabmenu-left > .leaflet-tabmenu-panels {
	left: 0;
	right: var(--tab-size);
}

.leaflet-tabmenu-right .leaflet-tabmenu-panels {
	left: 0;
	right: var(--tab-size);
}

.leaflet-tabmenu:not(.collapsed).leaflet-tabmenu-right > .leaflet-tabmenu-panels {
	left: var(--tab-size);
	right: 0;
}

.leaflet-tabmenu.collapsed > .leaflet-tabmenu-panels {
	overflow-y: hidden;
}

.collapsed > .leaflet-tabmenu-panels {
	overflow-y: hidden;
}

.leaflet-tabmenu-panel {
	display: none;
	left: 0;
	right: 0;
	padding: 0.5rem;
}
.leaflet-tabmenu-panel.active {
	display: block;
}

.leaflet-tabmenu-left.collapsed ~ .leaflet-control-container .leaflet-left {
	left: var(--tab-size);
}

.leaflet-tabmenu-right.collapsed ~ .leaflet-control-container .leaflet-right {
	right: var(--tab-size);
}

.leaflet-tabmenu-right.collapsed ~ .leaflet-control-container .leaflet-bottom.leaflet-right {
	right: 0;
}

.leaflet-tabmenu-left ~ .leaflet-control-container .leaflet-left {
	left: var(--tabmenu-width);
}

.leaflet-tabmenu-right ~ .leaflet-control-container .leaflet-right {
	right: var(--tabmenu-width);
}

.leaflet-tabmenu-right ~ .leaflet-control-container .leaflet-bottom.leaflet-right {
	right: calc(var(--tabmenu-width) - var(--tab-size));
}
