html {
	/* background: url(foto/<?php echo $foto; ?>) no-repeat center center fixed; 
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover; */
}

body {
	margin: 0px;
	padding: 0px;
	text-align: center;
	font-family: sans-serif;
	/* background-image: url('./images/m_logga.png'); */
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: bottom -120px right -50px;		
}

h1 {
	 text-shadow: -1px 0 white, 0 1px white, 1px 0 white, 0 -1px white;
}

.page-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5em;
	padding: 0.15em 0.6em 0.05em;
	text-align: left;
}

.page-head-title {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.45em 0.8em;
	min-width: 0;
}

.page-head h1 {
	display: inline;
	margin: 0;
	font-size: 115%;
}

.page-head-updated {
	font-size: 80%;
	white-space: nowrap;
}

.page-head-tools {
	display: flex;
	align-items: center;
	gap: 0.7em;
	margin-left: auto;
	flex-shrink: 0;
}

.page-head .nav {
	margin: 0;
	font-size: 80%;
}

.page-head .nav a {
	margin-right: 0.55em;
}

.page-head .nav a:last-child {
	margin-right: 0;
}

.reload-toggle {
	position: static;
	background: rgba(255,255,255,0.9);
	padding: 0.2em 0.5em;
	font-size: 80%;
	border: 1px solid #888;
	white-space: nowrap;
}

.status {
	font-size: 80%;
	color: #333;
	background: rgba(255,255,255,0.7);
	display: inline-block;
	padding: 0.2em 0.7em;
	margin: 0.15em 0.6em;
}

.error {
	color: red;
	font-size: 135%;
}

.valdistrikt {
	font-stretch: ultra-condensed;
	font-size: 90%;
	font-weight: bold;
	width: 270px;
	text-align: center;
	background-color: rgba(140, 140, 140, 0.8);
	color: rgb(255, 255, 255);
	margin-bottom: 1px;
	display: inline-block;
	white-space: nowrap;
	overflow: clip;
}

.valdistrikt_rubrik {
	font-weight: bold;
	width: 270px;
	text-align: center;
	background-color: rgba(140, 140, 140, 0.8);
	color: rgb(255, 255, 255);
	margin-bottom: 1px;
	display: inline-block;
}

.typ_container {
	display: inline-block;
	max-width: 426px;
}

.valda_container {
	width: fit-content;
	display: inline-block;
	vertical-align: top;
	margin: 0.2em;
	padding-right: 4px;
	padding-left: 4px;
	background-color: rgba(230, 240, 244, 0.2);
}

.valda_table {
	display: table;
}

.valda_row {
	display: table-row;
}


.rubrik {
	text-align: center;
	font-weight: bold;
	font-size: 110%;
	border-bottom-style: solid;
	border-top-style: solid;
	border-bottom-width: 1px;
	border-top-width: 1px;
	border-bottom-color: black;
	border-top-color: black;
	margin-bottom: 1px;
}

.valda{
	width: 4.5em;
	text-align: right;
	display: inline-block;
	background-color: rgba(212, 236, 244, 0.8);
}
.valda_rubrik {
	width: 4.5em;
	text-align: center;
	background-color: rgba(140, 140, 140, 0.8);
	color: rgb(255, 255, 255);
	font-weight: bold;
	display: inline-block;
}
.parti {
	/* sätt färger som motsvarar övrigt ifall inte partiet har egen färg (skrivs över) */
	background-color: rgb(140, 140, 140);
	color: rgb(255, 255, 255);
	font-weight: bold;
	width: 7.2em;
	text-align: center;
	margin-bottom: 1px;
	display: inline-block;
}

.parti_vts {
	background-color: rgb(140, 140, 140);
	color: rgb(255, 255, 255);
	width: 7.2em;
	text-align: center;
	margin-bottom: 1px;
	display: inline-block;
}

.valda_container .parti,
.valda_container .parti_vts {
	position: relative;
	box-sizing: border-box;
	padding-right: 1.45em;
}

.valda_container .parti_vts.styre-exact {
	background-color: #d4efd4;
	color: #143214;
}

.styre-mark {
	position: absolute;
	right: 0.16em;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	padding: 0;
	overflow: hidden;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
	font-size: 13px;
	font-weight: normal;
	line-height: 1;
	z-index: 1;
}

.namn {
	background-color: rgba(212, 236, 244, 0.8);
	text-align: left;
}

.ersattare {
	color: rgb(100, 100, 140);
	font-style: italic;
}

.lottning {
	color: red;
	font-size: 110%;
	font-weight: bold;
}

.district_board.valda_container {
	width: calc(100% - 1em);
	max-width: 100%;
	display: block;
	box-sizing: border-box;
}

.district_board .valda_table {
	display: grid;
	grid-template-columns: max-content repeat(var(--parties, 12), minmax(7.2em, 1fr));
	width: 100%;
	align-items: stretch;
}

.district_board .valda_row {
	display: contents;
}

.district_board .valdistrikt,
.district_board .valdistrikt_rubrik {
	display: flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 0;
	padding: 0 0.7em;
	white-space: nowrap;
	overflow: hidden;
	box-sizing: border-box;
}

.district_board .valda_rubrik {
	display: flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 0;
	font-size: 85%;
	box-sizing: border-box;
}

.district_board .valda.valda-party {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) 2.9em minmax(calc(var(--balls, 2) * 1.1em), auto);
	width: 100%;
	min-width: 0;
	padding: 0;
	font-size: 75%;
	line-height: 1.35;
	text-align: right;
	font-variant-numeric: tabular-nums;
	box-sizing: border-box;
}

.district_board .valda-party .vd-now,
.district_board .valda-party .vd-dnow,
.district_board .valda-party .vd-balls,
.district_board .valda-party .trend {
	padding: 0.05em 0.12em;
}

.district_board .valda-party .vd-now,
.district_board .valda-party .vd-dnow {
	display: flex;
	align-items: center;
}

.district_board .valda-party .vd-now {
	justify-content: flex-end;
}

.district_board .valda-party .vd-dnow {
	justify-content: center;
	padding: 0.05em 0.08em;
}

.vd-delta-oval {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.35em;
	height: 1.35em;
	padding: 0 0.35em;
	border-radius: 999px;
	font-weight: 700;
	font-size: 90%;
	line-height: 1;
	box-sizing: border-box;
}

.vd-delta-oval.vd-delta-up {
	background: #1a8f1a;
	color: #fff;
}

.vd-delta-oval.vd-delta-down {
	background: #c00;
	color: #fff;
}

.vd-delta-oval.vd-delta-na {
	background: rgba(140, 140, 140, 0.45);
	color: #555;
}

.district_board .valda-party .vd-balls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
}

.district_board .valda-party .trend {
	text-align: center;
	font-size: 90%;
	line-height: 1.35;
	cursor: help;
}

.district_board .vd-sum .valdistrikt,
.district_board .vd-sum .valda.valda-party {
	font-weight: 700;
	background: rgba(125, 190, 225, 0.8);
	color: #000;
}

.district_board .valda-party .vd-prev {
	color: #6a6a6a;
	background: rgba(90, 90, 90, 0.12);
}

.district_board .valda-party .trend.vd-prev {
	opacity: 0.75;
	background: transparent;
	font-weight: bold;
}

.district_board .valda-party .trend.vd-prev.trend-up {
	color: #1a8f1a;
}

.district_board .valda-party .trend.vd-prev.trend-down {
	color: #c00;
}

.district_board .valda-party .trend-none {
	color: #bbb;
}

.district_board .valdistrikt,
.district_board .valdistrikt_rubrik,
.district_board .valda_rubrik,
.district_board .valda.valda-party {
	border-right: 1px solid #000;
}

.district_board .valdistrikt,
.district_board .valda.valda-party {
	border-bottom: 3px double #000;
}

.district_board .valdistrikt,
.district_board .valdistrikt_rubrik {
	border-left: 1px solid #000;
}

.district_board .valdistrikt_rubrik,
.district_board .valda_rubrik,
.district_board .vd-map-rubrik {
	border-bottom: 1px solid #000;
}

.district_board .vd-map,
.district_board .vd-map-rubrik {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: auto;
	min-width: 0;
	padding: 0.12em 0.45em;
	box-sizing: border-box;
	border-right: 1px solid #000;
	text-align: left;
	line-height: 1.25;
}

.district_board .vd-map-rubrik {
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 85%;
	background-color: rgba(140, 140, 140, 0.8);
	color: #fff;
}

.district_board .vd-map {
	align-items: flex-start;
	font-size: 70%;
	font-weight: normal;
	white-space: normal;
	overflow: hidden;
	color: #222;
	background-color: rgba(230, 240, 244, 0.85);
	border-bottom: 3px double #000;
}

.district_board .vd-map-empty {
	align-items: center;
	color: #888;
}

.district_board .vd-map-line {
	white-space: normal;
	max-width: 100%;
}

.page-tabs {
	display: flex;
	gap: 0.25em;
	margin: 0.25em 0.6em 0.2em;
	flex-wrap: wrap;
	align-items: center;
}

.page-tabs button {
	font: inherit;
	font-weight: bold;
	font-size: 90%;
	padding: 0.35em 0.9em;
	border: 1px solid #8cbcde;
	background: rgba(230, 240, 244, 0.7);
	color: #123;
	cursor: pointer;
}

.page-tabs button.is-on {
	background: #2a6aa3;
	color: #fff;
	border-color: #2a6aa3;
}

.kf-tools {
	display: flex;
	align-items: center;
	gap: 0.7em;
	font-size: 90%;
	margin-left: 0.35em;
}

.kf-tools[hidden] {
	display: none;
}

.kf-tools label {
	display: flex;
	align-items: center;
	gap: 0.35em;
}

.kf-tools select {
	font: inherit;
	max-width: 16em;
}

.kf-rotate-name {
	color: #234;
	font-size: 90%;
}

.styre-legend {
	margin-left: auto;
	font-size: 80%;
	font-weight: normal;
	color: #234;
	white-space: nowrap;
}

.styre-legend[hidden] {
	display: none;
}

.tab-panel[hidden],
.vd-view[hidden],
.vd-view-bar[hidden],
.vd-metric-bar[hidden],
.vd-valtyp-bar[hidden],
.district_board[hidden] {
	display: none !important;
}

.tab-panel.panel-pending .status {
	margin-top: 1em;
}

.vd-valtyp-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 1px;
	margin: 0.15em 0.8em 0;
}

.vd-valtyp-bar button {
	border: 1px solid #888;
	background: rgba(255, 255, 255, 0.9);
	padding: 0.25em 0.7em;
	cursor: pointer;
	font: inherit;
	font-size: 80%;
}

.vd-valtyp-bar button.is-on {
	background: rgba(125, 190, 225, 0.85);
	border-color: #2a6aa3;
	font-weight: 700;
}

.vd-metric-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 1px;
	margin: 0.2em 0.8em 0.15em;
}

.vd-metric-bar button {
	border: 1px solid #888;
	background: rgba(255, 255, 255, 0.9);
	padding: 0.25em 0.7em;
	cursor: pointer;
	font: inherit;
	font-size: 80%;
}

.vd-metric-bar button.is-on {
	background: rgba(125, 190, 225, 0.85);
	border-color: #2a6aa3;
	font-weight: 700;
}

.vd-raknade {
	display: inline-flex;
	align-items: center;
	gap: 0.35em;
	margin-left: 0.6em;
	font-size: 80%;
	user-select: none;
	cursor: pointer;
}

.vd-view-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 1px;
	margin: 0.2em 0.8em 0.4em;
}

.vd-view-bar button {
	border: 1px solid #888;
	padding: 0.25em 0.7em;
	cursor: pointer;
	font: inherit;
	font-size: 80%;
}

.vd-view-bar button:not(.vd-view-party) {
	background: rgba(255, 255, 255, 0.9);
}

.vd-view-bar button.is-on {
	outline: 2px solid #111;
	outline-offset: -2px;
	font-weight: 700;
}

.vd-wrap.vd-only-counted .valda_row[data-counted="0"] > * {
	display: none !important;
}

.vd-wrap:not(.vd-only-counted) .vd-sum-counted > * {
	display: none !important;
}

.district_board .vd-stat .valdistrikt {
	font-size: 75%;
	font-weight: 600;
}

.vd-geo-note,
.vd-geo-left {
	margin: 0.15em 0.8em 0.45em;
	font-size: 80%;
	max-width: 70em;
}

.district_geo .valda_table {
	grid-template-columns: max-content minmax(4em, 0.5fr) repeat(2, minmax(7.5em, 1fr)) minmax(8em, 1.1fr) repeat(2, minmax(7.5em, 1fr)) minmax(8em, 1.1fr);
}

.district_geo .vd-num,
.district_geo .vd-ftype {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0.35em;
	width: auto;
	min-width: 0;
	padding: 0.15em 0.4em;
	background-color: rgba(212, 236, 244, 0.8);
	border-right: 1px solid #000;
	border-bottom: 3px double #000;
	font-size: 80%;
	font-variant-numeric: tabular-nums;
	box-sizing: border-box;
}

.vd-fball {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 0.9em;
	flex: 0 0 0.9em;
	font-size: 110%;
	line-height: 1;
}

.vd-fball-good {
	color: #1a8f1a;
}

.vd-fball-bad {
	color: #c00;
}

.vd-fball-mid,
.vd-fball-na {
	color: #888;
}

.vd-ftype-friendly {
	background-color: rgba(180, 230, 180, 0.75);
}

.vd-ftype-unfriendly {
	background-color: rgba(240, 190, 190, 0.75);
}

.vd-ftype-swing,
.vd-ftype-nomap,
.vd-ftype-wait {
	background-color: rgba(212, 236, 244, 0.8);
}

.vd-hint {
	display: block;
	font-size: 65%;
	font-weight: normal;
	opacity: 0.85;
	line-height: 1.1;
}

.district_karta .valda_table {
	grid-template-columns: max-content repeat(var(--maps, 2), minmax(14em, 1fr));
}

.district_board .vd-elig,
.district_board .vd-elig-rubrik {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: auto;
	min-width: 0;
	padding: 0.12em 0.35em;
	box-sizing: border-box;
	border-right: 1px solid #000;
	font-variant-numeric: tabular-nums;
}

.district_board .vd-elig-rubrik {
	justify-content: center;
	font-weight: bold;
	font-size: 75%;
	background-color: rgba(140, 140, 140, 0.8);
	color: #fff;
	border-bottom: 1px solid #000;
	text-align: center;
}

.district_board .vd-elig {
	font-size: 75%;
	background-color: rgba(230, 240, 244, 0.85);
	border-bottom: 3px double #000;
}

.night_board.valda_container {
	display: grid;
	grid-template-columns:
		7.2em
		4.3em 4.3em minmax(4.3em, max-content) 4.3em
		5em 5em
		4.3em minmax(6.5em, max-content) minmax(4.3em, max-content);
	width: max-content;
	max-width: 100%;
	column-gap: 1px;
	row-gap: 1px;
	background-color: #fff;
	text-align: center;
}

.night_board.valda_container.night_board-guess {
	grid-template-columns:
		7.2em
		4.3em 4.3em minmax(4.3em, max-content) 4.3em
		5em 5em
		4.3em minmax(6.5em, max-content) minmax(4.3em, max-content)
		minmax(6.5em, max-content);
}

.night_board.valda_container.night_board-no-prognos {
	grid-template-columns:
		7.2em
		4.3em 4.3em minmax(4.3em, max-content) 4.3em
		5em 5em;
}

.night_board.valda_container.night_board-no-prognos.night_board-guess {
	grid-template-columns:
		7.2em
		4.3em 4.3em minmax(4.3em, max-content) 4.3em
		5em 5em
		minmax(6.5em, max-content);
}

.night_board .rubrik {
	grid-column: 1 / -1;
}

.night_board .night-corner {
	grid-row: 2 / 4;
	grid-column: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0;
}

.night_board .night-g {
	grid-row: 2;
	color: #fff;
	font-weight: bold;
	font-size: 85%;
	background-color: rgba(140, 140, 140, 0.8);
	padding: 0.2em 0.15em;
	box-sizing: border-box;
}

.night_board > .valda_rubrik {
	grid-row: 3;
}

.night_board .night-g.counted {
	grid-column: 2 / 6;
	white-space: nowrap;
}

.night_board .night-g.result {
	grid-column: 6 / 8;
	background-color: rgba(100, 100, 100, 0.85);
}

.night_board .night-g.prognos {
	grid-column: 8 / 11;
	white-space: nowrap;
}

.night_board.night_board-guess .night-g.guess,
.night_board.night_board-guess .guess-leaders,
.night_board.night_board-guess .guess-names {
	grid-column: 11;
}

.night_board.night_board-no-prognos.night_board-guess .night-g.guess,
.night_board.night_board-no-prognos.night_board-guess .guess-leaders,
.night_board.night_board-no-prognos.night_board-guess .guess-names {
	grid-column: 8;
}

.night_board.night_board-guess .night-g.guess {
	background-color: rgba(80, 110, 140, 0.9);
}

.night_board.night_board-guess .guess-leaders {
	grid-row: 3;
}

.night_board .valda_rubrik,
.night_board .valda {
	width: auto;
	min-width: 0;
	box-sizing: border-box;
}

.night_board .valda.roster,
.night_board .valda_rubrik.roster {
	white-space: nowrap;
	min-width: min-content;
	padding-inline: 0.25em;
}

.night_board .andel-ci {
	white-space: nowrap;
}

.night_board .andel-ci-sigma {
	font-style: italic;
	color: #888;
	font-weight: normal;
}

.night_board .sista-cell {
	white-space: nowrap;
}

.night_board .sista-star,
.night_board .sista-ban {
	margin-right: 0.15em;
	font-size: 90%;
}

.night_board .guess-leaders,
.night_board .guess-names {
	font-size: 80%;
	line-height: 1.2;
	white-space: normal;
	word-break: break-word;
	padding: 0.15em 0.25em;
}

.guess-page .guess-msg {
	margin: 0.6em 0.8em;
	padding: 0.5em 0.8em;
	background: rgba(255,255,255,0.8);
	display: inline-block;
}
.guess-page .guess-msg.ok { border-left: 4px solid #2a7; }
.guess-page .guess-msg.err { border-left: 4px solid #c33; }
.guess-page .guess-note { margin: 0.4em 0.8em; font-size: 85%; max-width: 52em; color: #222; }
.guess-page .guess-form { margin: 0.8em; }
.guess-page .guess-name { font-size: 110%; padding: 0.2em 0.4em; min-width: 14em; }
.guess-page .guess-cols {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2em;
	align-items: flex-start;
	margin-top: 0.8em;
}
.guess-page .guess-col h2 { font-size: 110%; margin: 0 0 0.4em; color: #111; }
.guess-page .guess-row {
	display: grid;
	grid-template-columns: 0.9em minmax(9em, 16em) 5.5em;
	gap: 0.35em;
	align-items: center;
	margin: 0.15em 0;
	font-size: 90%;
	color: #111;
	text-align: left;
}
.guess-page .guess-row .guess-party {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.guess-page .guess-row input { width: 5em; text-align: right; }
.guess-page .guess-swatch {
	width: 0.7em;
	height: 1.1em;
	display: inline-block;
	border-radius: 1px;
	flex-shrink: 0;
}
.guess-page .guess-total {
	display: grid;
	grid-template-columns: 0.9em minmax(9em, 16em) 5.5em;
	gap: 0.35em;
	align-items: center;
	margin-top: 0.45em;
	padding: 0.25em 0.2em;
	background: #111;
	color: #fff;
	font-weight: bold;
	font-size: 90%;
	text-align: left;
}
.guess-page .guess-total-sum {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.night_board .lottning {
	grid-column: 1 / -1;
}

.night_board .vd-delta {
	display: inline;
}

.night_board.valda_container.night_board-pair,
.night_board.valda_container.night_board-pair.night_board-guess,
.night_board.valda_container.night_board-pair.night_board-no-prognos,
.night_board.valda_container.night_board-pair.night_board-no-prognos.night_board-guess {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	grid-auto-columns: minmax(0, 1fr);
	grid-template-columns:
		max-content 1.5em
		minmax(0, 0.6fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr)
		minmax(0, 0.6fr) minmax(0, 1fr) minmax(0, 0.6fr) minmax(0, 1fr) minmax(0, 1fr) max-content
		minmax(0, 0.6fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr)
		minmax(0, 0.6fr) minmax(0, 1fr) minmax(0, 0.6fr) minmax(0, 1fr);
}

.night_board-pair .night-corner {
	grid-row: 1 / 4;
	grid-column: 1 / span 2;
	width: auto;
	min-width: 0;
	font-size: 80%;
	padding-right: 0.2em;
}

.night_board-pair .rubrik {
	grid-column: auto;
	margin-bottom: 0;
	font-size: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.night_board-pair .rubrik.geo-total {
	background-color: rgba(230, 240, 244, 0.7);
}

.night_board-pair .rubrik.geo-krets {
	background-color: rgba(240, 244, 230, 0.75);
}

.night_board-pair .night-g.geo-krets {
	background-color: rgba(120, 130, 100, 0.85);
}

.night_board-pair .night-g.counted.geo-krets {
	background-color: rgba(170, 190, 115, 0.85);
}

.night_board-pair .night-g.result.geo-krets {
	background-color: rgba(90, 95, 70, 0.88);
}

.night_board-pair .valda.geo-total,
.night_board-pair .valda_rubrik.geo-total {
	background-color: rgba(212, 236, 244, 0.8);
}

.night_board-pair .valda_rubrik.geo-total {
	background-color: rgba(140, 140, 140, 0.8);
	color: #fff;
}

.night_board-pair .valda.geo-krets {
	background-color: rgba(232, 240, 212, 0.85);
}

.night_board-pair .valda_rubrik.geo-krets {
	background-color: rgba(120, 130, 100, 0.85);
	color: #fff;
}

.night_board-pair .valda.geo-empty,
.night_board-no-krets .valda.geo-krets {
	background-color: #fff;
}

.night_board-no-krets .rubrik.geo-krets,
.night_board-no-krets .night-g.geo-krets,
.night_board-no-krets .valda_rubrik.geo-krets {
	background-color: #f4f4f4;
	color: #666;
}

.night_board-pair .valda,
.night_board-pair .valda_rubrik {
	width: auto;
	min-width: 0;
	font-size: 80%;
	overflow: hidden;
	text-overflow: ellipsis;
}

.night_board-pair .valda.roster,
.night_board-pair .valda_rubrik.roster,
.night_board-pair .valda.osak,
.night_board-pair .valda_rubrik.osak {
	font-size: 75%;
	min-width: 0;
}

.night_board-pair .parti,
.night_board-pair .parti_vts {
	width: auto;
	min-width: max-content;
	box-sizing: border-box;
	padding-right: 0.25em;
	white-space: nowrap;
}

.night_board-pair .parti_vts {
	font-size: 70%;
	line-height: 1.15;
	padding: 0.1em 0.3em 0.1em 0.2em;
}

.night_board-pair .styre-cell {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	box-sizing: border-box;
}

.night_board-pair .styre-cell:not(.styre-exact) {
	background-color: transparent;
}

.night_board-pair .styre-mark {
	position: static;
	transform: none;
	width: 16px;
	height: 16px;
	font-size: 11px;
	flex-shrink: 0;
}

.night_board.night_board-pair.night_board-guess .night-g.guess,
.night_board.night_board-pair.night_board-guess .guess-leaders,
.night_board.night_board-pair.night_board-guess .guess-names {
	grid-column: 13;
	background-color: #fff3b0;
	color: #333;
}

.night_board.night_board-pair.night_board-guess .guess-names.guess-empty {
	background-color: #fff;
}

.night_board.night_board-pair.night_board-no-prognos.night_board-guess .night-g.guess,
.night_board.night_board-pair.night_board-no-prognos.night_board-guess .guess-leaders,
.night_board.night_board-pair.night_board-no-prognos.night_board-guess .guess-names {
	grid-column: 9;
}

.night_board-pair .party-repeat-head {
	background-color: #fff;
}

.night_board-pair .parti-repeat {
	width: auto;
	min-width: 1.4em;
	box-sizing: border-box;
	padding: 0.1em 0.25em;
	white-space: nowrap;
	font-size: 80%;
}

.night_board-pair .parti-repeat.geo-empty {
	background-color: #fff;
}

.night_board-pair .night-valsedel {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 8em;
	padding: 0.35em 0.4em;
	box-sizing: border-box;
	background-color: rgba(240, 244, 230, 0.45);
}

.night_board-pair .night-valsedel.night-valsedel-guess {
	background-color: rgba(255, 248, 210, 0.55);
	align-items: flex-start;
	justify-content: flex-start;
}

.night_board-pair .night-valsedel.geo-krets {
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	padding-top: 1em;
}

.night_board-pair .night-party-logo {
	display: block;
	max-width: 100%;
	height: auto;
}

.night_board-pair .night-valsedel.night-trapp {
	container-type: inline-size;
	overflow: hidden;
	min-width: 0;
}

.night_board-disco .night-valsedel.night-trapp {
	overflow: visible;
}

.night_board-disco .night-valsedel.night-trapp:has(.cand-clip-walk) {
	position: relative;
	z-index: 30;
	overflow: visible;
}

.cand-disco.cand-clip-walk {
	position: relative;
	z-index: 30;
	overflow: visible;
}

.night_board-pair .night-valsedel .cand-trapp {
	margin: 0;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	--cand-size: calc(100cqi / 3.5);
	--cand-overlap: calc(var(--cand-size) * 0.62);
	--cand-lift: calc(var(--cand-size) * 0.34);
	height: calc(var(--cand-size) + (var(--cand-rows, 1) - 1) * var(--cand-lift));
}

.night_board-pair .night-valsedel.geo-krets:has(.night-party-logo) .cand-trapp,
.night_board-pair .night-valsedel.geo-krets:has(.night-party-logo) .valsedel-embed {
	margin-top: 1em;
}

.night-valsedel-guess .valsedel-embed {
	max-width: none;
}

.night-valsedel-guess .valsedel-embed .rubrik,
.night-valsedel-guess .valsedel-embed .namn {
	white-space: nowrap;
}

.night_board-no-krets .night-valsedel {
	background-color: #fff;
}

.valsedel-embed {
	max-width: 100%;
	text-align: left;
	font-size: 85%;
	background: transparent;
}

.valsedel-embed .rubrik {
	font-size: 100%;
	margin-bottom: 0.25em;
	white-space: nowrap;
}

.valsedel-embed .namn {
	display: block;
	padding: 0.05em 0.2em;
	background: transparent;
	white-space: nowrap;
}

.district_analysis .valda_table {
	grid-template-columns: max-content repeat(7, minmax(4.2em, 1fr)) minmax(13em, 2.4fr) minmax(9em, 1.8fr);
}

.district_analysis-no-rd .valda_table {
	grid-template-columns: max-content repeat(3, minmax(4.2em, 1fr)) minmax(13em, 2.4fr) minmax(9em, 1.8fr);
}

.district_analysis .vd-num,
.district_analysis .vd-trend,
.district_analysis .vd-fn {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: auto;
	min-width: 0;
	padding: 0.15em 0.4em;
	background-color: rgba(212, 236, 244, 0.8);
	border-right: 1px solid #000;
	border-bottom: 3px double #000;
	font-size: 80%;
	font-variant-numeric: tabular-nums;
	box-sizing: border-box;
}

.district_analysis .vd-trend,
.district_analysis .vd-fn {
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	text-align: left;
	font-size: 70%;
	line-height: 1.25;
	white-space: normal;
}

.vd-delta-up {
	color: #1a8f1a;
	font-weight: bold;
}

.vd-delta-down {
	color: #c00;
	font-weight: bold;
}

.vd-delta-na {
	color: #888;
}

.vd-trend-alt,
.vd-fn-q,
.vd-fn-r {
	color: #666;
	font-size: 95%;
}

.vd-wait {
	color: #888;
	font-style: italic;
}

.early_board {
	width: calc(100% - 1em);
	max-width: 100%;
	display: block;
	overflow-x: auto;
	box-sizing: border-box;
}

.early_board .valda_table {
	display: grid;
	grid-template-columns: minmax(14em, max-content) repeat(var(--dates, 8), minmax(4.4em, 1fr));
	width: 100%;
	align-items: stretch;
	gap: 1px;
	background: #fff;
	border: none;
}

.early_board .valda_row {
	display: contents;
}

.early_board .valdistrikt_rubrik,
.early_board .valda_rubrik,
.early_board .valdistrikt,
.early_board .vd-num {
	display: flex;
	align-items: center;
	width: auto;
	min-width: 0;
	box-sizing: border-box;
	border: none;
	margin: 0;
}

.early_board .valdistrikt_rubrik,
.early_board .valda_rubrik {
	justify-content: center;
	font-size: 85%;
}

.early_board .valdistrikt {
	justify-content: center;
	padding: 0 0.7em;
	white-space: nowrap;
	overflow: hidden;
}

.early_board .vd-num {
	justify-content: flex-end;
	padding: 0.15em 0.45em;
	background-color: rgba(212, 236, 244, 0.8);
	font-size: 80%;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.early_board .vd-num.early-sum,
.early_board .valdistrikt.early-sum {
	font-weight: 700;
	background: rgba(125, 190, 225, 0.8);
	color: #000;
}

.early_board .vd-num.early-andel,
.early_board .valdistrikt.early-andel {
	background: rgba(125, 190, 225, 0.8);
	color: #000;
	font-weight: normal;
}

.cand-trapp {
	--cand-size: 200px;
	--cand-overlap: calc(var(--cand-size) * 0.62);
	--cand-lift: calc(var(--cand-size) * 0.34);
	display: flex;
	justify-content: center;
	margin: 0.4em 0.6em 0.8em;
	overflow: visible;
}

.cand-trapp-stack {
	position: relative;
	width: 100%;
	max-width: 100%;
	height: calc(var(--cand-size) + (var(--cand-rows, 1) - 1) * var(--cand-lift));
}

.cand-trapp-row {
	position: absolute;
	left: 0;
	right: 0;
	bottom: calc(var(--cand-ri, 0) * var(--cand-lift));
	display: flex;
	justify-content: center;
	align-items: flex-end;
	height: var(--cand-size);
	pointer-events: none;
}

.cand-trapp-pic {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	width: var(--cand-size);
	height: var(--cand-size);
	margin-left: calc(0px - var(--cand-overlap));
	overflow: visible;
	pointer-events: auto;
	flex: 0 0 var(--cand-size);
}

.cand-trapp-pic:first-child {
	margin-left: 0;
}

.cand-trapp-pic img {
	display: block;
	width: 100%;
	height: 66.666%;
	object-fit: contain;
	object-position: center top;
}

.cand-trapp-pic.cand-ersattare img {
	filter: grayscale(1);
}

.cand-trapp-row-6 {
	padding-left: calc((var(--cand-size) - var(--cand-overlap)) / 2);
}

@keyframes cand-wobble {
	0%, 100% { transform: rotate(-5deg); }
	50% { transform: rotate(5deg); }
}

.cand-disco .cand-trapp-pic img {
	position: relative;
	z-index: 1;
	transform-origin: 50% 100%;
	animation: cand-wobble 2.4s ease-in-out infinite;
}

.cand-disco {
	--stick-body: var(--stick-bg);
	--stick-outline: var(--stick-fg);
}

.cand-disco .cand-trapp-pic:nth-child(even) {
	--stick-body: var(--stick-fg);
	--stick-outline: var(--stick-bg);
}

.cand-stick {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	overflow: visible;
	z-index: 0;
	transform: translateY(-5%);
}

.cand-stick-outline {
	stroke: var(--stick-outline);
}

.cand-stick-body {
	stroke: var(--stick-body);
}

.cand-disco .cand-stick-arm-l,
.cand-disco .cand-stick-arm-r,
.cand-disco .cand-stick-leg-l,
.cand-disco .cand-stick-leg-r {
	transform-box: view-box;
}

.cand-disco .cand-stick-arm-l,
.cand-disco .cand-stick-arm-r {
	transform-origin: 50% 60%;
}

.cand-disco .cand-stick-leg-l,
.cand-disco .cand-stick-leg-r {
	transform-origin: 50% 72%;
}

.cand-disco .cand-stick-arm-l {
	animation: stick-arm-l 0.7s ease-in-out infinite;
}

.cand-disco .cand-stick-arm-r {
	animation: stick-arm-r 0.7s ease-in-out infinite;
}

.cand-disco .cand-stick-leg-l {
	animation: stick-leg-l 0.7s ease-in-out infinite;
}

.cand-disco .cand-stick-leg-r {
	animation: stick-leg-r 0.7s ease-in-out infinite;
}

.cand-disco .cand-trapp-pic:nth-child(2n) .cand-stick-arm-l,
.cand-disco .cand-trapp-pic:nth-child(2n) .cand-stick-arm-r,
.cand-disco .cand-trapp-pic:nth-child(2n) .cand-stick-leg-l,
.cand-disco .cand-trapp-pic:nth-child(2n) .cand-stick-leg-r {
	animation-delay: -0.2s;
}

.cand-disco .cand-trapp-pic:nth-child(3n) .cand-stick-arm-l,
.cand-disco .cand-trapp-pic:nth-child(3n) .cand-stick-arm-r,
.cand-disco .cand-trapp-pic:nth-child(3n) .cand-stick-leg-l,
.cand-disco .cand-trapp-pic:nth-child(3n) .cand-stick-leg-r {
	animation-delay: -0.45s;
}

@keyframes stick-arm-l {
	0%, 100% { transform: rotate(18deg); }
	50% { transform: rotate(-28deg); }
}

@keyframes stick-arm-r {
	0%, 100% { transform: rotate(-18deg); }
	50% { transform: rotate(28deg); }
}

@keyframes stick-leg-l {
	0%, 100% { transform: rotate(-12deg); }
	50% { transform: rotate(14deg); }
}

@keyframes stick-leg-r {
	0%, 100% { transform: rotate(12deg); }
	50% { transform: rotate(-14deg); }
}

.cand-disco .cand-trapp-pic:nth-child(2n) img {
	animation-duration: 2.8s;
	animation-delay: -0.4s;
}

.cand-disco .cand-trapp-pic:nth-child(3n) img {
	animation-duration: 3.1s;
	animation-delay: -1.1s;
}

.cand-disco .cand-trapp-pic:nth-child(5n) img {
	animation-duration: 2.2s;
	animation-delay: -0.8s;
}

@media (prefers-reduced-motion: reduce) {
	.cand-disco .cand-trapp-pic img,
	.cand-disco .cand-stick-arm-l,
	.cand-disco .cand-stick-arm-r,
	.cand-disco .cand-stick-leg-l,
	.cand-disco .cand-stick-leg-r {
		animation: none;
	}
}

.cand-trapp.cand-await .cand-trapp-pic,
.cand-trapp-pic.is-pending {
	visibility: hidden;
}

.cand-trapp-pic.is-walking,
.cand-trapp-pic.is-leaving {
	z-index: 200;
}

.cand-disco .cand-trapp-pic.is-walking img,
.cand-disco .cand-trapp-pic.is-leaving img {
	animation: none;
}

.cand-disco .cand-trapp-pic.is-walking .cand-stick-arm-l,
.cand-disco .cand-trapp-pic.is-walking .cand-stick-arm-r,
.cand-disco .cand-trapp-pic.is-leaving .cand-stick-arm-l,
.cand-disco .cand-trapp-pic.is-leaving .cand-stick-arm-r {
	animation: none;
}

.cand-disco .cand-trapp-pic.is-walking .cand-stick-leg-l,
.cand-disco .cand-trapp-pic.is-leaving .cand-stick-leg-l {
	animation: stick-walk-leg-l 0.5s linear infinite;
}

.cand-disco .cand-trapp-pic.is-walking .cand-stick-leg-r,
.cand-disco .cand-trapp-pic.is-leaving .cand-stick-leg-r {
	animation: stick-walk-leg-r 0.5s linear infinite;
}

@keyframes stick-walk-leg-l {
	0%, 100% { transform: rotate(-16deg); }
	50% { transform: rotate(16deg); }
}

@keyframes stick-walk-leg-r {
	0%, 100% { transform: rotate(16deg); }
	50% { transform: rotate(-16deg); }
}

.cand-trapp-pic.is-rearranging {
	transition: transform 0.45s ease;
	z-index: 80;
}

.cand-trapp-pic.cand-fx-enter,
.cand-trapp-pic.cand-fx-leave {
	/* Extra enter/leave effects — fill in later */
}

.night_board .valda,
.night_board .night-g.counted,
.district_board .valda,
.early_board .valda {
	position: relative;
}

.night_board .valda.data-flash-up::after,
.night_board .night-g.counted.data-flash-up::after,
.district_board .valda.data-flash-up::after,
.early_board .valda.data-flash-up::after,
.vd-now.data-flash-up::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(180, 230, 180, 0.85);
	animation: data-flash-fade 3s ease-out forwards;
	pointer-events: none;
	z-index: 2;
}

.night_board .valda.data-flash-down::after,
.night_board .night-g.counted.data-flash-down::after,
.district_board .valda.data-flash-down::after,
.early_board .valda.data-flash-down::after,
.vd-now.data-flash-down::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(240, 190, 190, 0.85);
	animation: data-flash-fade 3s ease-out forwards;
	pointer-events: none;
	z-index: 2;
}

.vd-now {
	position: relative;
}

@keyframes data-flash-fade {
	0% { opacity: 1; }
	100% { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.cand-disco .cand-trapp-pic.is-walking .cand-stick-arm-l,
	.cand-disco .cand-trapp-pic.is-walking .cand-stick-arm-r,
	.cand-disco .cand-trapp-pic.is-walking .cand-stick-leg-l,
	.cand-disco .cand-trapp-pic.is-walking .cand-stick-leg-r,
	.cand-disco .cand-trapp-pic.is-leaving .cand-stick-arm-l,
	.cand-disco .cand-trapp-pic.is-leaving .cand-stick-arm-r,
	.cand-disco .cand-trapp-pic.is-leaving .cand-stick-leg-l,
	.cand-disco .cand-trapp-pic.is-leaving .cand-stick-leg-r {
		animation: none;
	}

	.cand-trapp-pic.is-rearranging {
		transition: none;
	}
}

body.has-news-ticker {
	padding-bottom: 3.1em;
}

.news-ticker {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 300;
	display: flex;
	align-items: stretch;
	height: auto;
	background: #141414;
	color: #f4f1e8;
	border-top: 3px solid #c9a227;
	font-size: 200%;
	overflow: hidden;
	text-align: left;
	line-height: 1.15;
}

.news-ticker[hidden] {
	display: none;
}

.news-ticker-label {
	flex: 0 0 auto;
	background: #c9a227;
	color: #111;
	font-weight: 700;
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: stretch;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	font-size: 0.42em;
	white-space: nowrap;
	line-height: 1.15;
}

.news-ticker-label-row {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 0.65em;
}

.news-ticker-label-row + .news-ticker-label-row {
	border-top: 1px solid rgba(17, 17, 17, 0.22);
}

.news-ticker-rows {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.news-ticker-viewport {
	flex: 0 0 auto;
	height: 1.2em;
	overflow: hidden;
	position: relative;
}

.news-ticker-viewport + .news-ticker-viewport {
	border-top: 1px solid rgba(201, 162, 39, 0.35);
}

.news-ticker-track {
	display: inline-flex;
	white-space: nowrap;
	align-items: center;
	height: 100%;
	will-change: transform;
}

.news-ticker-track.is-run {
	animation: news-marquee 40s linear infinite;
}

.news-item {
	padding: 0 1.8em;
}

.news-item-breaking {
	color: #ffe08a;
	font-weight: 600;
}

@keyframes news-marquee {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
	.news-ticker-track.is-run {
		animation: none;
	}
	.news-ticker-track {
		will-change: auto;
	}
}

			