:root {
	--kereso-placeholder: #22222266;
	--kereso-button:      var(--ksh-primary);
	--kereso-bg:          #fffffff3;
	--kereso-bg-shadow:   #00000033;
	--kereso-hover:       #d4d9df;   /* HSL 212, 0.15, 0.85 */
	--kereso-active:      var(--ksh-primary);
	--kereso-active-text: var(--main-bg);
	--button-disabled:    var(--kereso-placeholder);

	--zebra-odd-sel:      #eef1f2;
	--zebra-even-sel:     #dbe2e3;
	--zebra-hover-bg:     #d4dbdf;   /* HSL 204, 0.15, 0.85 */
	--table-nodata:       #ffc107;   /* HSL  45, 1.00, 0.51 */

	--chart-icon-hover:   #ff2022;   /* 3.83 - AA fail */
	--chart-modal-bg:     #000000b2;
	--chart-bg:           var(--main-bg);
	--chart-header-bg:    #ffffffe6;
	--chart-button-text:  #666666;   /* ua. mint HC export gomb */
	--chart-button-bg:    var(--main-bg);
	--chart-button-hover: #e6e6e6;   /* ua. mint HC export gomb */
}

/********************************************/
/* mini app layout                          */
/********************************************/
html, body {
	height: 100%;
}

#page {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-flex-wrap: nowrap;
	    -ms-flex-wrap: nowrap;
	        flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	          -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-align-items: center;
	     -ms-flex-align: center;
	        align-items: center;
}
#page > header, #page > nav, #page > footer {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	    flex: 0 0 auto;
	width: 100%;
}
#page > main {
	-webkit-box-flex: 1;
	-ms-flex: 1 0 auto;
	    flex: 1 0 auto;
	width: 100%;
}
#page {
	position: relative;
	font: 16px/22px Roboto, Arial, sans-serif;
	color: var(--text-color);
	height: 100%;
}
#page > header {
	height: 5rem; /* 80 / 16 */
}
@media (max-width: 575px) {
	#page > header {
		height: 3.75rem; /* 60 / 16 */
	}
}
#page > nav {
	position: relative;
	background-color: var(--ksh-primary);
}
#page > nav > .container {
	z-index: 50;
}
#page > footer {
	position: relative;
	color: var(--footer-text-color);
	background-color: var(--footer-bgcolor);
}
#page > footer a,
#page > footer a:hover {
	color: var(--footer-text-color);
}

img {
	max-width: 100%;
}

/********************************************/
/* navigáció átugrása                       */
/********************************************/
.jump-to-content {
	display: inline-block;
	position: absolute;
	top: -70px;
	left: 50%;
	width: 300px;
	margin-left: -150px;
	text-align: center;
	font-size: 120%;
	line-height: 250%;
	z-index: 1000;
	cursor: pointer;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	transition: top 0.3s linear;
	background-color: var(--jump-bgcolor);
	color: var(--jump-text-color);
}
.jump-to-content:hover {
	color: var(--jump-text-color);
}
.jump-to-content:focus {
	top: 0;
	outline: none;
	text-decoration: underline;
}

/********************************************/
/* fejléc                                   */
/********************************************/
#page header h1 {
	-webkit-flex: 1 1 auto;
	        flex: 1 1 auto;
	-webkit-align-self: auto;
	        align-self: auto;
	margin-bottom: 0;
	font-size: 2.5rem;
	font-weight: 300;
}
#page header h1 a {
	color: var(--text-color);
}
#page header h1 a:hover {
	text-decoration: none;
}
#page header h1 img {
	height: 3.75rem;
	padding-right: 10px;
}
#page header h1 span {
	position: relative;
	top: 0.1em;
}

/* teljes szélességű border-bottom helyett */
#page header::after {
	display: block;
	content: "";
	position: absolute;
	left: 1vw;
	top: 5rem;
	width: 97vw;
	height: 2px;
	background-color: var(--ksh-primary);
}

@media (max-width: 575px) {
	#page header h1 {
		font-size: 2rem;
	}
	#page header h1 img {
		height: 2.5rem;
	}
	#page header::after {
		top: 3.75rem;
	}
}

@media (max-width: 360px) {
	#page header h1 {
		font-size: 1.5rem;
	}
}

/********************************************/
/* menü                                     */
/********************************************/
ul#menu {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

ul#menu > li > a, ul#menu > li.active-menu-item {
	font-size: 1.125rem;
	font-weight: 400;
	text-decoration: none;
}

ul#menu > li > a:hover, ul#menu > li > a:focus, ul#menu > li.active-menu-item {
	background-color: var(--ksh-primary-hover);
	color: var(--text-color);
}

@media (min-width: 768px) {
	ul#menu {
		height: 2.25rem;
	}

	ul#menu > li {
		float: left;
	}

	ul#menu > li > a, ul#menu > li.active-menu-item {
		display: inline-block;
		padding: 0 1rem;
		line-height: 2.25rem;
		color: var(--menu-text-color);
		text-decoration: none;
	}

	ul#menu > li.active-menu-item {
		color: var(--text-color);
		cursor: default;
	}
}

@media (max-width: 767px) {
	#page > nav {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 99;
		background-color: var(--main-bg) !important;
		visibility: hidden;
		opacity: 0;
		transition: visibility 0s linear 0.2s, opacity 0.2s linear;
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	#page > nav > .container {
		position: relative;
		margin: 0 auto -1px auto;
		padding: 0 0 1px 0;
		min-height: 100%;
		border-left: 2px solid var(--ksh-primary-hover);
		border-right: 2px solid var(--ksh-primary-hover);
		box-shadow: 0 0 20px var(--nav-shadow-color);
	}

	.close-page-menu-wrapper {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: row;
			-ms-flex-direction: row;
				flex-direction: row;
		-webkit-flex-wrap: nowrap;
			-ms-flex-wrap: nowrap;
				flex-wrap: nowrap;
		-webkit-justify-content: flex-end;
				  -ms-flex-pack: end;
				justify-content: flex-end;
		-webkit-align-items: center;
			 -ms-flex-align: center;
				align-items: center;

		height: 5rem;
	}

	html.mobile-menu-open #page > nav {
		visibility: visible;
		opacity: 1;
		transition-delay: 0s;
	}

	#page {
		transition: visibility 0s linear 0s;
	}

	html.mobile-menu-open #page {
		visibility: hidden;
		transition-delay: 0.2s;
		overflow-x: hidden;
		overflow-y: auto;
	}

	.mobile-menu-closed #page {
		-webkit-animation: delayed-overflow-auto-to-initial 1s forwards;
		animation: delayed-overflow-auto-to-initial 1s forwards;
	}

	@keyframes delayed-overflow-auto-to-initial {
		0% {
			overflow-x: hidden;
			overflow-y: auto;
		}
		100% {
			overflow: initial;
		}
	}

	ul#menu > li {
		border-bottom: 1px solid var(--ksh-primary);
	}

	ul#menu > li > a, ul#menu > li.active-menu-item {
		display: block;
		padding: 1rem;
		color: var(--ksh-primary);
	}

	ul#menu > li.active-menu-item {
		color: var(--text-color);
	}

}

@media (max-width: 576px) {
	.close-page-menu-wrapper {
		height: 3.75rem;
	}
}

/********************************************/

#page > header .open-page-menu,
#page > nav    .close-page-menu {
	cursor: pointer;
	padding: 0;
	margin: 0;
	border: 0;
	background: none;
	-webkit-appearance: none;
	appearance: none;
}
#page > nav .close-page-menu {
	margin-right: 0.8125rem;
}
#page > header .open-page-menu svg,
#page > nav    .close-page-menu svg {
	pointer-events: none;
	width: 48px;
	height: 48px;
	fill: var(--text-color);
	vertical-align: middle;
}

/********************************************/
/* lábléc                                   */
/********************************************/
#page > footer > .container {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	     -ms-flex-align: center;
	        align-items: center;
}
#page > footer .footer-logo {
	padding-top: 10px;
	padding-bottom: 10px;
}

#page > footer .footer-logo img {
	height: 60px;
	margin-right: 0.5rem;
}

#page > footer .title {
	-webkit-box-flex: 1;
	-ms-flex: 1 0 auto;
	    flex: 1 0 auto;
	width: 30%;
	font-weight: 300;
	font-size: 1.25rem;
	font-size: clamp(1rem, 5vw, 1.25rem);
	text-align: center;
}

@media (max-width: 576px) {
	#page > footer .footer-logo img {
		height: 40px;
	}
}

/********************************************/
/* oldal                                    */
/********************************************/
#page > main {
	padding-top: 1rem;
}

#page > main p {
	text-align: left;
	hyphens: none;
}

#page > main ul, #page > main ol {
	margin-left: 0.5em;
	padding-left: 0;
	list-style: none;
	counter-reset: li;
}

#page > main ul li, #page > main ol li {
	position: relative;
	margin: .5em 0;
	padding-left: 1em;
	counter-increment: li;
}

#page > main ul li:before {
	position: absolute;
	content: "\25CF";
	top: 0;
	left: 0;
	color: var(--bullet-color);
}

#page > main ol li:before {
	position: absolute;
	content: counter(li)".";
	top: 0;
	left: 0;
	color: var(--listnumber-color);
}

:is(main, #main) a[target="_blank"]:is(.popout)::after {
	--a11y-popout-icon: url("data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%2016%2016%27%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%3E%3Cpath%20fill%3D%27%23000%27%20d%3D%27M8.636%203.5a.5.5%200%200%200-.5-.5H1.5A1.5%201.5%200%200%200%200%204.5v10A1.5%201.5%200%200%200%201.5%2016h10a1.5%201.5%200%200%200%201.5-1.5V7.864a.5.5%200%200%200-1%200V14.5a.5.5%200%200%201-.5.5h-10a.5.5%200%200%201-.5-.5v-10a.5.5%200%200%201%20.5-.5h6.636a.5.5%200%200%200%20.5-.5z%27/%3E%3Cpath%20fill%3D%27%23000%27%20d%3D%27M16%20.5a.5.5%200%200%200-.5-.5h-5a.5.5%200%200%200%200%201h3.793L6.146%209.146a.5.5%200%201%200%20.708.708L15%201.707V5.5a.5.5%200%200%200%201%200v-5z%27/%3E%3C/svg%3E");
	content: "";
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	margin-left: 0.25em;
	-webkit-mask-image: var(--a11y-popout-icon);
	        mask-image: var(--a11y-popout-icon);
	-webkit-mask-size: contain;
	        mask-size: contain;
	-webkit-mask-position: center center;
	        mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	background-color: currentColor;
}

:is(main, #main) a:focus {
	outline: 2px solid var(--ksh-complementary);
}
:is(main, #main) a:active {
	outline: none;
}

/********************************************/
/* zebra tábla                              */
/********************************************/
table.zebra {
	border-spacing: 0 !important;
	border-collapse: separate !important;
}

table.zebra caption {
	caption-side: top;
	padding-top: 0rem;
	padding-bottom: 0.5rem;
	text-align: center;
	font-weight: 700;
}

table.zebra > thead > tr > th,
table.zebra > thead > tr > td,
table.zebra > tbody > tr > th,
table.zebra > tbody > tr > td {
	padding: 0.25em 0.5em;
	font-weight: 400;
	border-style: solid;
	border-width: 0 1px 1px 0;
}
table.zebra > thead > tr > th {
	color: var(--zebra-head-color);
	background-color: var(--ksh-primary);
	border-color: var(--zebra-head-color);
}

table.zebra > thead > tr:first-child > th:last-child,
table.zebra > thead:has(> tr:nth-child(1) > th:not([rowspan]):last-child) > tr:nth-child(2) > th:last-child,
table.zebra > thead:has(> tr:nth-child(1) > th[rowspan="2"]:last-child)	  > tr:nth-child(3) > th:last-child,
table.zebra > thead:has(> tr:nth-child(1) > th[rowspan="3"]:last-child)	  > tr:nth-child(4) > th:last-child,
table.zebra > thead:has(> tr:nth-child(1) > th[rowspan="4"]:last-child)	  > tr:nth-child(5) > th:last-child,
table.zebra > thead:has(> tr:nth-child(1) > th[rowspan="5"]:last-child)	  > tr:nth-child(6) > th:last-child,
table.zebra > thead:has(> tr:nth-child(1) > th[rowspan="6"]:last-child)	  > tr:nth-child(7) > th:last-child,
table.zebra > thead:has(> tr:nth-child(1) > th[rowspan="7"]:last-child)	  > tr:nth-child(8) > th:last-child,
table.zebra > thead:has(> tr:nth-child(2) > th:not([rowspan]):last-child) > tr:nth-child(3) > th:last-child,
table.zebra > thead:has(> tr:nth-child(2) > th[rowspan="2"]:last-child)	  > tr:nth-child(4) > th:last-child,
table.zebra > thead:has(> tr:nth-child(2) > th[rowspan="3"]:last-child)	  > tr:nth-child(5) > th:last-child,
table.zebra > thead:has(> tr:nth-child(2) > th[rowspan="4"]:last-child)	  > tr:nth-child(6) > th:last-child,
table.zebra > thead:has(> tr:nth-child(2) > th[rowspan="5"]:last-child)	  > tr:nth-child(7) > th:last-child,
table.zebra > thead:has(> tr:nth-child(2) > th[rowspan="6"]:last-child)	  > tr:nth-child(8) > th:last-child,
table.zebra > thead:has(> tr:nth-child(3) > th:not([rowspan]):last-child) > tr:nth-child(4) > th:last-child,
table.zebra > thead:has(> tr:nth-child(3) > th[rowspan="2"]:last-child)	  > tr:nth-child(5) > th:last-child,
table.zebra > thead:has(> tr:nth-child(3) > th[rowspan="3"]:last-child)	  > tr:nth-child(6) > th:last-child,
table.zebra > thead:has(> tr:nth-child(3) > th[rowspan="4"]:last-child)	  > tr:nth-child(7) > th:last-child,
table.zebra > thead:has(> tr:nth-child(3) > th[rowspan="5"]:last-child)	  > tr:nth-child(8) > th:last-child,
table.zebra > thead:has(> tr:nth-child(4) > th:not([rowspan]):last-child) > tr:nth-child(5) > th:last-child,
table.zebra > thead:has(> tr:nth-child(4) > th[rowspan="2"]:last-child)	  > tr:nth-child(6) > th:last-child,
table.zebra > thead:has(> tr:nth-child(4) > th[rowspan="3"]:last-child)	  > tr:nth-child(7) > th:last-child,
table.zebra > thead:has(> tr:nth-child(4) > th[rowspan="4"]:last-child)	  > tr:nth-child(8) > th:last-child,
table.zebra > thead:has(> tr:nth-child(5) > th:not([rowspan]):last-child) > tr:nth-child(6) > th:last-child,
table.zebra > thead:has(> tr:nth-child(5) > th[rowspan="2"]:last-child)	  > tr:nth-child(7) > th:last-child,
table.zebra > thead:has(> tr:nth-child(5) > th[rowspan="3"]:last-child)	  > tr:nth-child(8) > th:last-child,
table.zebra > thead:has(> tr:nth-child(6) > th:not([rowspan]):last-child) > tr:nth-child(7) > th:last-child,
table.zebra > thead:has(> tr:nth-child(6) > th[rowspan="2"]:last-child)	  > tr:nth-child(8) > th:last-child,
table.zebra > thead:has(> tr:nth-child(7) > th:not([rowspan]):last-child) > tr:nth-child(8) > th:last-child {
	border-width: 0 0 1px 0;
}

table.zebra > tbody > tr > th,
table.zebra > tbody > tr > td {
	color: var(--text-color);
}
table.zebra > tbody > tr > th:last-child,
table.zebra > tbody > tr > td:last-child {
	border-width: 0 0 1px 0;
}
table.zebra > tbody > tr:nth-child(odd) > th,
table.zebra > tbody > tr:nth-child(odd) > td {
	background-color: var(--main-bg);
	border-color: var(--ksh-panel-bg);
}
table.zebra > tbody > tr:nth-child(even) > th,
table.zebra > tbody > tr:nth-child(even) > td {
	background-color: var(--ksh-panel-bg);
	border-color: var(--zebra-head-color);
}
table.zebra > tbody > tr.section > th {
	color: var(--zebra-head-color);
	background-color: var(--ksh-primary);
	border-color: var(--zebra-head-color);
}

table.numbers thead th {
	text-align: center;
}

table.numbers tbody td {
	text-align: right;
}

/********************************************/
/* széles, görgethető tábla                 */
/********************************************/
.scrollable-wrap {
	position: relative;
	overflow: hidden;
}
.scrollable-wrap::before, .scrollable-wrap::after {
	content: '';
	position: absolute;
	top: 0;
	width: 10px;
	height: 100%;
}
.scrollable-left::before {
	left: -10px;
	border-radius: 0 10px 10px 0 / 0 50% 50% 0;
	box-shadow: 0 0 20px var(--nav-shadow-color);
}
.scrollable-right::after {
	right: -10px;
	border-radius: 10px 0 0 10px / 50% 0 0 50%;
	box-shadow: 0 0 15px var(--nav-shadow-color);
}
.scrollable {
	overflow-x: auto;
}

/********************************************/
/* vegyes kiegészítők                       */
/********************************************/
.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

.nowrap {
	white-space: nowrap;
}

@media (max-width: 767px) {
	.desktop {
		display: none;
	}
}
@media (min-width: 768px) {
	.mobile {
		display: none;
	}
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	#page > * {
		width: 100vw !important;
	}
	#page .container {
		width: 100vw !important;
	}
	img[src*=".svg"] {
		width: 100%;
	}
}

/******************************************/
/* eszközsáv(ok) és kiválasztók           */
/******************************************/
.tools {
	width: 100%;
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: stretch;
	   -ms-flex-align: stretch;
	      align-items: stretch;
	 -webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	  justify-content: space-between;
}

.tools .selection {
	padding: 0;
	line-height: 2;
}

.tools .selection label {
	margin-right: 0.25rem;
	margin-bottom: 0;
}

.tools .selection select {
	height: 2rem;
	margin-bottom: 1rem;
	padding-left: 0.25rem;
	padding-right: 0.25rem;
	font-size: 1rem;
	line-height: 2;
	color: var(--text-color);
	background-color: var(--main-bg);
	border: 1px solid var(--ksh-primary);
	border-radius: 5px;
}

.tools .selection select:hover,
.tools .selection select:focus,
.tools .selection select:focus-visible {
	outline: 2px solid var(--ksh-primary);
}

@media (max-width: 1023px) {
	.inga-top .selection label {
		display: block;
	}
}

@media (max-width: 767px) {
	.inga-top .selection {
		-webkit-box-flex: 0;
		        -ms-flex: 0 0 100%;
		            flex: 0 0 100%;
		max-width: 100%;
	}
	.inga-top .selection label {
		display: inline-block;
		width: 12em;
	}
}

/******************************************/
/* településkereső                        */
/******************************************/
#telep-kereso {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 0;
	        -ms-flex: 0 1 23rem;
	            flex: 0 1 23rem;
	-ms-flex-item-align: auto;
	  ms-grid-row-align: auto;
	         align-self: auto;
		margin-bottom: 0.2rem;
	margin-bottom: 1rem;
	padding-left: 0;
	padding-right: 0;
}

#telep-kereso input {
	width: 20rem;
	height: 2rem;
	font-size: 1rem;
	outline: none;
}

#telep-kereso input::placeholder {
	font-style: italic;
	color: var(--kereso-placeholder);
	opacity: 1;
}

#telep-kereso button {
	width: 3rem;
	height: 2rem;
	padding: 0;
	color: var(--main-bg);
	background-color: var(--kereso-button);
	border: none;
}

#telep-kereso button svg {
	width: 1.25rem;
	height: 1.25rem;
	fill: currentColor;
	vertical-align: -4px;
}

#telep-kereso input:active,
#telep-kereso input:hover,
#telep-kereso input:focus,
#telep-kereso input:focus-visible,
#telep-kereso input:active ~ button,
#telep-kereso input:hover  ~ button,
#telep-kereso input:focus  ~ button,
#telep-kereso input:focus-visible button {
	outline: 2px solid var(--ksh-primary);
}

.autocomplete {
	position: relative;
	display: inline-block;
}

.autocomplete-items {
	position: absolute;
	top: 2.2em;
	width: 100%;
	max-height: 10.5em;
	background: var(--kereso-bg);
	box-shadow: 3px 5px 5px var(--kereso-bg-shadow);
	overflow-y: auto;
	z-index: 99;
}

.autocomplete-items div {
	padding: 2px;
	line-height: 1.5rem;
	cursor: pointer;
}

.autocomplete-items div:hover {
	color: var(--text-color);
	background-color: var(--kereso-hover);
}

.autocomplete-active {
	color: var(--kereso-active-text) !important;
	background-color: var(--kereso-active) !important;
}

/******************************************/
/* export gomb                            */
/******************************************/
#csv-export {
	display: inline-block;
	margin-bottom: 1rem;
	padding: .25rem .5rem;
	font-size: 1rem;
	white-space: nowrap;
	color: var(--text-color);
	border: 2px solid var(--ksh-primary);
	border-radius: .2rem;
	background-color: var(--main-bg);
	-webkit-appearance: none;
	transition: color .15s ease-in-out, background-color .15s ease-in-out;
}

button:disabled {
	color: var(--text-color) !important;
	background-color: var(--button-disabled) !important;
}

	button:not(:disabled) {
		cursor: pointer;
	}

	#csv-export:hover {
		color: var(--main-bg);
		background-color: var(--ksh-primary);
	}

	svg.download-icon {
		display: inline-block;
		width: 14px;
		height: 14px;
		fill: currentColor;
	}

/******************************************/
/* kenyérmorzsa                           */
/******************************************/
#breadcrumbs {
	margin-bottom: 1rem;
	padding-left: 0;
	-ms-flex-item-align: center;
	 -ms-grid-row-align: center;
	         align-self: center;
}

/******************************************/
/* a táblázat beállításai                 */
/******************************************/
#ingaTable {
	width: 100%;
	margin: 0 auto 2em;
	border-collapse: collapse;
	border-spacing: 0;
}

#ingaTable thead th {
	text-align: center;
	vertical-align: middle;
}

/******************************************/

#ingaTable tbody th {
	text-align: left;
	vertical-align: top;
}

#ingaTable tbody th div {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}

/******************************************/
#ingaTable tbody th span.idx {
	display: inline-block;
	margin-right: 0.3em;
	text-align: right;
}
/******************************************/

#ingaTable tbody th div .telname {
	-webkit-box-flex: 1;
	        -ms-flex: 1;
	            flex: 1;
	margin-right: 0.5rem;
}

#ingaTable tbody th.varos {
	font-weight: 700;
}

#ingaTable tbody th.megyeszekhely {
	text-transform: uppercase;
	font-weight: 700;
}

#ingaTable tbody th.osszesen,
#ingaTable tbody th.osszesen ~ td {
	font-weight: 700;
	border-bottom: none;
}

#ingaTable tbody tr:not(:first-child) th.osszesen,
#ingaTable tbody tr:not(:first-child) th.osszesen ~ td {
	border-top: 3px double var(--ksh-primary);
}

/******************************************/

	#ingaTable tbody tr:nth-child(odd) td.sort {
		background-color: var(--zebra-odd-sel);
	}
	#ingaTable tbody tr:nth-child(even) td.sort {
		background-color: var(--zebra-even-sel);
	}

	#ingaTable tbody tr:hover td.sort {
		background-color: var(--zebra-hover-bg);
	}

/******************************************/

#ingaTable tbody th div.icons {
	-webkit-box-pack: justify;
	   -ms-flex-pack: justify;
	 justify-content: space-between;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
	width: 2.5rem;
}

#ingaTable tbody th span.icon,
#ingaTable tbody th button.icon {
	color: var(--link-color);
	cursor: pointer;

	padding: 0;
	background-color: transparent;
	border: none;
}

#ingaTable tbody th span.icon svg,
#ingaTable tbody th button.icon svg {
	display: inline-block;
	width: 18px;
	height: 18px;
	fill: currentColor;
}

#ingaTable tbody th span.icon svg:hover,
#ingaTable tbody th button.icon svg:hover {
	position: relative;
	top: -0.1rem;
	color: var(--chart-icon-hover);
}

#ingaTable tbody th button.icon:focus {
	outline: 2px solid var(--ksh-complementary);
}
#ingaTable tbody th button.icon:active {
	outline: none;
}


/******************************************/

	#ingaTable tbody th.empty {
		padding: 0;
	}
	#ingaTable tbody tr:hover th.empty {
		background-color: var(--main-bg);
	}
		#ingaTable tbody th.empty hr {
			margin: .8em 0;
			border-width: 3px 0 0 0;
			border-style: dotted;
			border-color: var(--ksh-primary);
		}

/******************************************/

#ingaTable tbody td {
	text-align: right;
	vertical-align: top;
}

/******************************************/

#ingaTable tbody tr:hover th, #ingaTable tbody tr:hover td {
	background-color: var(--zebra-hover-bg);
}

/* nincs adat  */
#ingaTable tbody tr th.nodata {
	padding-top: .5em;
	padding-bottom: .5em;
	background-color: var(--table-nodata);
}

#ingaTable tbody tr th.nodata:hover {
	background-color: var(--table-nodata);
}

/******************************************/
/* minden ami a grafikonhoz kell          */
/******************************************/
#chart {
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	background-color: var(--chart-modal-bg);
	z-index: 999;
}

#chart.show {
	transition: opacity ease-in-out 0.5s;
	visibility: visible;
	opacity: 1;
}

#chart.hide {
	transition: opacity ease-in-out 0.5s, visibility linear 0s 0.5s;
	visibility: hidden;
	opacity: 0;
}

#chartContent {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 96vw;
	max-width: 80rem;
	height: 96vh;
	max-height: 50rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	    flex-direction: column;
	-ms-flex-line-pack: start;
	     align-content: flex-start;
	color: #263238;
	background: var(--chart-bg);
	overflow-y: auto;
}

	#chartContent header {
		position: sticky;
		top: 0;
		padding: 0.2rem 0.4rem 0;
		-webkit-box-flex: 0;
		        -ms-flex: 0 1 auto;
		            flex: 0 1 auto;
		text-align: right;
		background: var(--chart-header-bg);
		z-index: 1;
	}

	#chartContent header button {
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1.2;
		color: var(--chart-button-text);
		background: var(--chart-button-bg);
		border: 0;
		cursor: pointer;
	}

		#chartContent header button:hover {
			background: var(--chart-button-hover);
		}

	#charContainer {
		-webkit-box-flex: 1;
		        -ms-flex: 1 1 auto;
		            flex: 1 1 auto;
		min-height: 400px;
		padding: 0.5em;
	}

/******************************************/
/* a térkép teljes magasságú legyen       */
/******************************************/
#page.bigmap {
	min-height: 100vh;
	padding: 0;
}

#page.bigmap > main {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-flex-wrap: nowrap;
	    -ms-flex-wrap: nowrap;
	        flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	          -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-align-items: center;
	     -ms-flex-align: center;
	        align-items: center;
}

#page.bigmap > main > #mapContainer {
	 -webkit-box-flex: 1;
	-ms-flex-positive: 1;
	        flex-grow: 1;
	width: 100%;
	min-height: 20rem;
	padding: 0 0.5rem 0.5rem;
}

/******************************************/
/* archívum - felsorolás és ikonok        */
/******************************************/
#page > main > #archivum {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin-top: 1rem;
}
#page > main > #archivum ul:not(:last-child) {
	margin-bottom: -0.5em;
}
#page > main > #archivum li {
	margin-right: 3rem;
	margin-bottom: 0.5rem;
	padding-left: 0;
	line-height: 1.5rem;
}
#page > main > #archivum li:before {
	content: "";
}
#page > main > #archivum a svg {
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 0.5rem;
	vertical-align: middle;
	fill: currentColor;
}
#page > main > #archivum a:hover svg {
	position: relative;
	top: -0.1rem;
	color: var(--svg-icon-hover);
}
