.tm-theme-switcher {
  position: relative;
  display: inline-block;
  font: inherit;
  
}

.tm-theme-trigger {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: 2px 5px;
  border-radius: .5rem;
  border: 1px solid var(--ts-border, rgba(125,125,125,.35));
  background: var(--ts-bg, rgba(255,255,255,.04));
  color: inherit;
  cursor: pointer;
  font-size: 13px;
  	text-transform: inherit !important;
}

.tm-theme-caret { line-height: 1; }

.tm-theme-menu {
  position: absolute;
  right: 0;                /* rechtsbündig am Button */
  top: 100%;               /* direkt unterhalb */
  margin-top: .35rem;
  min-width: 11rem;
  z-index: 1000;
  background: var(--ts-menu-bg, rgba(20,20,20,.98));
  color: var(--ts-menu-fg, #fff);
  border: 1px solid var(--ts-border, rgba(125,125,125,.35));
  border-radius: .6rem;
  padding: .35rem;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}


[data-theme="light"] .tm-theme-menu {
  --ts-menu-bg: #fff;
  --ts-menu-fg: #111;
}

.tm-theme-option {
	width: 100%;
	display: flex;
	align-items: center;
	gap: .6rem;
	padding: 3px 5px;
	border: 0;
	background: transparent;
	color: inherit;
	border-radius: .45rem;
	cursor: pointer;
	text-transform: inherit !important;
	font-size: 14px;
}

.tm-theme-option[aria-checked="true"] {
  outline: 2px solid var(--contrast-2);
  outline-offset: 1px;
}

.tm-theme-option:hover,
.tm-theme-option:focus {
  background: rgba(127,127,127,.15);
}
.tm-theme-option svg {
	height: 15px;
}
.tm-theme-icon {
  width: 1rem;
  display: inline-block;
  text-align: center;
  	height: 15px;
}
