/* ── Theme Toggle Button ────────────────────────────────────── */
.theme-toggle {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  z-index: 9999;
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .55rem 1rem .55rem .75rem;
  border-radius: 2rem;
  border: none;
  cursor: pointer;
  font-family: inherit;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 4px 16px rgba(0,0,0,.25);
  transition: transform .2s ease, box-shadow .2s ease;
  user-select: none;
}
.theme-toggle:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0,0,0,.35);
}
.theme-toggle:active { transform: translateY(0); }

/* Neubauer → switch to Meister: dark button */
.theme-toggle--to-meister {
  background: #1a1916;
  color: #e8e4dc;
  border: 1px solid #3a3832;
}
.theme-toggle--to-meister .tt-dot {
  display: inline-block;
  width: 10px; height: 10px;
  border-radius: 1px;
  background: linear-gradient(135deg, #DC7901 0%, #077351 50%, #0A84CD 100%);
  flex-shrink: 0;
}

/* Meister → switch to Neubauer: light button */
.theme-toggle--to-neubauer {
  background: #ffffff;
  color: #1a1a1a;
  border: 1px solid #e0e0e0;
}
.theme-toggle--to-neubauer .tt-dot {
  display: inline-block;
  width: 10px; height: 10px;
  border-radius: 1px;
  background: linear-gradient(135deg, #D4601A 0%, #D4A017 50%, #2E9BB5 100%);
  flex-shrink: 0;
}

/* Label chip */
.tt-current {
  font-size: .65rem;
  opacity: .6;
  font-weight: 400;
  margin-right: .15rem;
}
