.fsm-theme-menu {
	position: fixed;
	left: 10px;
	bottom: 0;
	z-index: 100000;
	font-family: Tahoma, sans-serif;
	font-size: 12px;
	text-align: left;
}

.fsm-theme-menu details {
	position: relative;
}

.fsm-theme-menu summary {
	display: block;
	min-width: 72px;
	box-sizing: border-box;
	padding: .35em .75em .4em;
	border: 1px solid #bbb;
	border-bottom: 0;
	border-radius: 4px 4px 0 0;
	background-color: #eee;
	box-shadow: 2px -2px 4px rgb(0 0 0 / 0.25);
	color: #000;
	cursor: pointer;
	opacity: 0.5;
	text-align: center;
	text-transform: capitalize;
	user-select: none;
}

.fsm-theme-menu summary::-webkit-details-marker {
	display: none;
}

.fsm-theme-menu details[open] summary {
	background-color: #ddd;
}

.fsm-theme-menu-panel {
	position: absolute;
	bottom: calc(100% - 1px);
	left: 0;
	display: grid;
	min-width: 190px;
	padding: 0;
	border: 1px solid #bbb;
	background-color: rgb(240 240 240 / .95);
	box-shadow: 3px -3px 5px rgb(0 0 0 / 0.6);
}

.fsm-theme-menu-item {
	display: block;
	padding: .25em 25px;
	color: #000;
	text-decoration: none;
	white-space: nowrap;
}

.fsm-theme-menu-item:hover,
.fsm-theme-menu-item:focus {
	background-color: #ddd;
	color: #000;
	outline: none;
}

.fsm-theme-menu-item.active {
	background-color: #ddd;
	color: #000;
}

.fsm-theme-menu-item.active::after {
	content: " current";
	margin-left: 8px;
	color: #666;
	font-size: 0.82em;
}

.fsm-theme-menu-separator {
	display: block;
	height: 1px;
	margin: 1px 2px;
	border-top: 1px solid #bbb;
}

@media all and (max-width: 659px) {
	.fsm-theme-menu {
		left: 6px;
		font-size: 11px;
	}
}
