The rightwing Swiss People's Party has failed to add to large gains it made in parliamentary elections last month, losing a Senate seat in run-off elections.
In canton Zurich, the People's Party president, Ueli Maurer, was unable to win the seat previously held by party colleague Hans Hofmann.
Instead, Verena Diener of the recently formed liberal Greens who was also a long-time member of the cantonal government won Zurich's second Senate seat.
The first seat was taken by Felix Gutzwiller of the centre-right Radical Party in the first round of voting on October 21.
Diener finished just shy of 200,000 votes, about 30,000 more than Maurer. She benefited from the clear support of her former party, the Greens, as well as the centre-right Christian Democrats and centre-left Social Democrats.
Upon hearing the result, Maurer regretted that he was unable to win the backing of Radical voters even though he had the official support of the cantonal wing of the party.
The People's Party was also left out in the cold in canton St Gallen where the incumbents – the Radical member Erika Forster and Christian Democrat Eugen David – held on to their Senate seats.
The People's Party candidate, Toni Brunner, who received the most votes in the first round, had to settle for third place.
The results confirm the Christian Democrats place as the largest party in the 46-seat Senate ahead of the centre-right Radicals, the centre-left Social Democrats and the People's Party.
For the first time in Swiss history, the Green Party is also represented with two members.
House of Representatives
The People's Party emerged as the biggest of the four parties in the government in last month's elections to the other parliamentary chamber, the House of Representatives. It took a record 29 per cent of the votes, winning 62 seats.
The second biggest group, the Social Democrats, lost nine seats compared with the 2003 polls. The four main political parties hold 167 seats in the House.
The Greens, the biggest non-government party, won an additional six seats and now have 20 seats in the 200-member House.
The new parliament will meet for the first time in the capital, Bern, on December 3. During its winter session the House of Representatives and the Senate are jointly due to elect the seven-member government for a four-year term and appoint a new president – a largely ceremonial post on a rotating one-year basis.
The incumbent ministers are widely expected to be re-elected despite various calls for several long-serving cabinet members to step down and announcements by the centre-left that they will not support the controversial justice minister, Christoph Blocher.
Interior Minister Pascal Couchepin is set to become Swiss president for 2008 – the second time in his career and succeed Foreign Minister Micheline Calmy-Rey. Under a system based on seniority Blocher is set to be named vice-president.
Parliament will also elect a new chief-of-staff for the cabinet, known as the Federal Chancellor. The position is contested by several political parties.
The incumbent, Annemarie Huber-Hotz of the Radical Party, has announced her resignation after seven years in the prestigious post.
swissinfo with agencies
On October 21, voters chose the 200 members of the House of Representatives and most members of the Senate for the next four-year term.
Run-off elections took place in several cantons over the past few weeks following inconclusive results for the Senate.
The four main Swiss parties – People's Party, Social Democrats, Radicals and Christian Democrats – control more than 80 per cent of the seats in the new House of Representatives and share the seven cabinet posts.
They also hold all but two seats in the Senate.
The Greens are the biggest opposition group.
Christian Democratic Party: 15 seats
Radical Party: 12 seats
Social Democratic Party: 9 seats
Swiss People's Party: 7 seats
Green Party: 2 seats
Others: 1 seat
Total: 46 seats
House of Representatives
Swiss People's Party: 62 seats
Social Democratic Party: 43 seats
Christian Democratic Party: 31 seats
Radical Party: 31 seats
Green Party: 20 seats
Others: 13 seats
Total: 200 seats