/*
Theme Name: SZAP
*/

body {
	margin:0; padding:0; font-family:'Roboto', sans-serif; color:#323232;
	background-color:#FFF; font-weight:300; font-size:16px; line-height:1.5;
}

h1,h2,h3,h4,h5,h6 {
	line-height:1.2; margin-top:0; margin-bottom:.5em; padding:0; font-weight:400; text-transform:uppercase;
}
h1 { font-size:1.6em; margin-top:.5em; }
h2 { font-size:1.4em; }
h3 { font-size:1.2em; }
h4,h5,h6 { font-size:1em; }

p { margin:0 0 1em 0; }
b { font-weight:500; }

a { color:inherit; text-decoration:none; }

/* WCAG 1.4.1: csak a szövegkörnyezeti linkek kapjanak kötelező aláhúzást/színt */
.site-content p a,
.site-content li a,
.site-content td a,
.site-content dd a,
footer .footer-main-menu .sub-menu a,
footer .contact a,
p a, .post-more a {
	color:#0050A0;
	text-decoration:underline;
	text-underline-offset:.12em;
	text-decoration-thickness:.08em;
}

.site-content p a:hover,
.site-content li a:hover,
.site-content td a:hover,
.site-content dd a:hover,
footer .footer-main-menu .sub-menu a:hover,
footer .contact a:hover,
p a:hover, .post-more a:hover {
	text-decoration-thickness:.12em;
}

.site-content p a:visited,
.site-content li a:visited,
.site-content td a:visited,
.site-content dd a:visited,
footer .footer-main-menu .sub-menu a:visited,
footer .contact a:visited,
p a:visited, .post-more a:visited {
	color:#4b2c85;
}

/* A kártya- és szekciócím linkek örököljék a kontrasztos címszínt */
.site-content h1 a,
.site-content h2 a,
.site-content h3 a,
.site-content h4 a,
.site-content h5 a,
.site-content h6 a,
footer .footer-main-menu > li > a {
	color:inherit;
	text-decoration:none;
}

ul, ol { margin:.5em 0; padding:0 0 0 1em; }

img, iframe { max-width:100% !important; }
img { height:auto; vertical-align:top; }

input:not([type=hidden]),select,textarea,.btn {
	font-family:inherit; font-size:inherit; color:inherit; padding:.25em .5em;
	border: 1px solid #BBB; background: #FFF; line-height:inherit; border-radius:.25em;
}
input[type=checkbox],input[type=radio] {
	cursor:pointer; display:inline-block; line-height:0; height:1.25em; width:1.25em; min-width:1.25em;
	margin:0; outline:0; padding:0; text-align:center; vertical-align:middle;
	-webkit-appearance:none;
}
input[type=checkbox]:checked:before, input[type=radio]:checked:before {
	content:'\2714'; width:1.25em; line-height:1.25; float:left; margin-left:-1px;
}

.field { margin-top:1em; }
.field .wide { width:20em; max-width:100%; }
.field > label {display:block; max-width:15rem; padding:.2em .5em .2em 0; }
.field > .help { font-size:.875em; }
.field.required > label { font-weight:500; }
.field ~ .btn { margin-top:1em; }
.field .checklist { width:30em; max-width:100%; }
.field .checklist > div { display:inline-flex; align-items:center; padding:.3em 1em .3em 0; }
.field .checklist > div > *:not(:last-child) { margin-right:.2em; }
@media (min-width:40em) {
	.field { display:flex; align-items:center; flex-wrap:wrap; }
	.field > label { width:15rem; min-width:15rem; }
	.field > .help { width:100%; padding-left:15rem; }
}

form .field.ex:not(.open) { height:0; margin:0; overflow:hidden; opacity:0; }

.hidden { display:none !important; }

/*
select {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKBAMAAAB/HNKOAAAAMFBMVEUAAAAAAAAAAAAAAAAJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABh1RG6AAAAD3RSTlMA36UgDvPvx8ODfFxYPDge1qlhAAAALUlEQVQI12NABvr/////xOAIJEUYeIHkAwaG+f9/ASXY/zcASeYwA5CqPTDlAC0eEL71fLc0AAAAAElFTkSuQmCC);
	background-repeat:no-repeat;
	background-position:95% 50%;
	-moz-appearance: none; -webkit-appearance: none; appearance: none;
} */

body .btn {
	display:inline-block;	cursor:pointer; font-weight:500; font-size:1.1em;
	background:#ffc800; color:#000; border-color:#ffc800; text-transform:uppercase;
}

.screen-reader-text { display:none; }

* { box-sizing:border-box; transition:all .2s ease; }
a * { transition:none; }
body.resize * { transition:none; }

#body { margin:0; }

strong, b {
	font-weight: 500;
	color: #000000; /* Fekete szövegszín */
	background-color: #FFFFFF; /* Fehér háttér */
}

.cw { max-width:75rem; margin:0 auto; padding:0 .5em; }

ul.menu, ul.menu li { margin:0; padding:0; list-style:none; line-height:1.2; }
li.current-menu-ancestor > a, li.current-menu-item > a, li.current-post-parent > a { font-weight:500; }

.cw:before, .cw:after, article::before, article:after, .box:before, .box:after { content:''; clear:both; display:table; }

.widget-linkbox .widget-title { margin:0; font-weight:500; text-transform:uppercase; line-height:1.2; }

header { border-bottom:2px solid #080; margin-bottom:1em; }
header:after { content:''; display:block; height:2px; border-top:2px solid #F00; clear:both; margin-top:.5em; }

header .cw { display:flex; align-items:center; flex-wrap:wrap; }
header .logo, header .actions { flex:1 1; display:flex; align-items:center; min-width:18rem; }
header .logo { text-transform:uppercase; font-size:1.25em; }
header .actions { justify-content:flex-end; }

header #searchform { position:relative; margin-right:.5rem; }
header #searchform #s { padding:0 2em 0 .5em; line-height:2; }
header #searchform .submit { position:absolute; top:.125em; right:.5em; padding:0 .5rem; line-height:1.8; }
header .navbar-toggle { margin-left:.5rem; font-size:2rem; padding-bottom:.125em; }

/* Kanonikus submenu lathatosag: .is-open class alapjan, border/padding megtartva */
aside ul.menu ul.sub-menu { border-left-style:solid; border-left-width:1px; padding-left:.5em; display:none; }
aside ul.menu ul.sub-menu.is-open { display:block; }
aside ul.menu li { padding:.2em 0; }
aside .sidebar-nav { display:block; }
aside .sidebar-nonheading {
	margin: 0 0 .5em;
	font-weight: 500;
	text-transform: uppercase;
	line-height: 1.2;
}

footer { border-top:2px solid #F00; margin-top:50px; }
footer:before { content:''; display:block; border-bottom:2px solid #080; height:2px; margin-bottom:1em; }

footer .footer-summary { margin:0 0 1em; font-size:.95em; opacity:.9; }
footer .footer-links-nav { padding:0 1em 1em 0; }
footer ul.footer-main-menu {
	list-style:none;
	margin:0;
	padding:0;
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr));
	gap:1rem 1.5rem;
}
footer ul.footer-main-menu > li { display:block; }
footer ul.footer-main-menu > li > a {
	font-weight:500;
	display:inline-block;
	margin-bottom:.4em;
}
footer ul.footer-main-menu .sub-menu {
	display:block;
	list-style:none;
	margin:0;
	padding:0;
}
footer ul.footer-main-menu .sub-menu li {
	display:block;
	margin:0 0 .35em;
}

footer .contact { padding:0 1em 1em 0; }
footer .contact a { display:inline-flex; align-items:center; justify-content:flex-start; margin-right:1em; }
footer .contact .ico { width:1.2em; text-align:center; margin-right:.3em; font-size:1.05em; }

.szechenyi {
	height: 200px;
	position: absolute;
	bottom: 0;
	right: 0;
	margin: 0;
}

#content, aside { margin-top:1rem; }

section, article { position:relative; }

.box { padding:0 1rem; padding-bottom:2rem; margin-bottom:2rem; position:relative; }
.box .post-image { text-align:center; margin-bottom:.5rem; }
.box .post-date, .box .post-info h2, .box .post-title h1 { background:#0050A0; color:#FFF; padding:0 1.5rem; }
.box .post-date { font-size:.9em; padding-top:1rem; }
.box .post-info h2:first-child, .box .post-title h1 { padding-top:1rem; }
.box .post-info h2:after, .box .post-title  h1:after, .box.slideshow h2:after {
	content:''; display:block; width:4em; border-top:2px solid #ffc800; margin-top:1rem; padding-top:1rem;
}
.box .post-foot { display:flex; align-items:center; justify-content:space-between; }
.box .post-more { text-align:right; padding:.5em 0; }

.box:not(:last-of-type):after {
	content:''; position:absolute; display:block; left:0; right:0; bottom:0; width:8em; height:2px; margin:0 auto;
	background:#ffc800; clear:both;
}

.flex { display:flex; }
.flex.center { align-items:center; }

.flex-right { display:flex; margin:1em 0; align-items:center; justify-content:flex-end; }
.flex-right > *:not(:last-child) { margin-right:.25em; }

.load-more:after { content:''; display:block; clear:both; }
.load-more { margin-bottom:2rem; }
.load-more a { margin:.5em 0; }
a.load-prev { float:left; }
a.load-next { float:right; }


ul.pagination { margin:0 0 1rem; padding:.5em; display:flex; justify-content:center; list-style:none; }
ul.pagination a {display:block; width:2em; line-height:2; text-align:center; margin:0 .3em; border:1px solid #BBB; border-radius:.25em; }
ul.pagination .disabled a { background:rgba(160,160,160,.2); }
ul.pagination .active a { background:#ffc800; border-color:#ffc800; }

@media (min-width:60em) {
	.navbar-toggle { display:none !important; }
	#page { display:flex; align-items:flex-start; }
	aside { margin-right:1rem; border-right:2px solid #ffc800; max-width:25vw; }
	#content { flex:1 1; margin:1rem auto 0; max-width:60rem; }
}

@media (min-width:40em) {
	.box.thumb { display:flex; }
	.box.thumb .post-info { flex:1 1; }
	.box.thumb .post-image { min-width:15rem; margin:0 1rem 0 0; }
	.box.thumb .post-image img { width:15rem; }
	.szechenyi { position:fixed; float:none; bottom:0; right:0; z-index:5;}
	.navbar-footer { max-width:calc(100vw - 300px); }
}

@media (max-width:59.99em) {
	.navbar-toggle.is-open .ico:before { content:'\e906'; }
	aside:not(.is-open) { display:none; }
	aside {
		position:absolute; background-color:#FFF; left:0; right:0; z-index:10;
		border-bottom:2px solid #BBB; border-radius:0 0 .2rem .2rem; margin:0;
		padding-top:1rem;
	}
	#content { margin-top:.5rem; }
	.box { margin-bottom:1rem; }
	.box:not(:last-of-type):after { margin-top:1rem; }
	#page.cw { padding:0; }
}

.sum { padding:0 1rem; font-size:1.25em; }

.item-intezmenykereso { border:1px solid #BBB; padding:1rem; margin-bottom:2rem !important; }
.item-intezmenykereso:after { bottom:-17px !important; }
.item-intezmenykereso .flex-right { margin-bottom:0; }

.item-intezmenykereso .flex > * { flex:1 1; }
.item-intezmenykereso .flex > *:not(:last-child) { padding-right:1rem; }
.item-intezmenykereso .item-head { background: rgba(0,80,160,.9); color:#FFF; margin:-1rem -1rem 1rem; padding:.5rem 1rem; }
.item-intezmenykereso .item-head a { color:inherit; }
.item-intezmenykereso hr { border:0; border-bottom:1px solid #BBB; }
.item-intezmenykereso h2 { margin:0; }
.item-intezmenykereso h2 + ul { margin:0; padding:0 0 1em; font-size:.9em; list-style:none; }
.item-intezmenykereso h2 + ul li:before { content:'\251C'; padding-right:.2em; }
.item-intezmenykereso h2 + ul li:last-child:before { content:'\2514'; }
.item-intezmenykereso p { margin-bottom:.5em; }
.item-intezmenykereso table { border-spacing:0; width:100%; }
.item-intezmenykereso table tr > * { border-top:1px solid #BBB; padding:.3em 0; }
.item-intezmenykereso table th { font-weight:400; text-align:left; vertical-align:top; }
.item-intezmenykereso table td { font-weight:700; padding-left:1em; }
.item-intezmenykereso:not(.open) .details { display:none; }
@media (max-width:39.99em) {
	.item-intezmenykereso .flex { flex-direction:column; }
}

.item-intezmenykereso.szakmai .szolg:not(.open) .details { display:none; }
.item-intezmenykereso.szakmai > small:not(:first-child) { display:block; margin-top:1em; }

.cal-date { width:4em; text-align:center; line-height:1.2; margin-right:1em; background:rgba(255,255,255,.85); border-radius:5px; }
.cal-date .Y { background:#FD6566; color:#FFF; display:block; border-radius:.3em .3em 0 0; }
.cal-date .MD { border:1px solid #FD6566; border-top:0; display:block; border-radius:0 0 .3em .3em; }
.cal-date .M { font-size:1.2em; display:block; }
.cal-date .D { font-size:2em; font-weight:500; display:block; }
.cal-date ~ .cal-date { margin-left:1em; }

.box.real-thumb .cal-date { position:absolute; top:0; left:1rem; }


article.event .check { display:inline-block; padding:0 1em .5em 0; }
article.event .check:before { content:'\2714\00A0'; }
article.event .event-location { margin:0 0 .5em; font-weight:500; }

article.event table { border-spacing:0; font-size:1.2em; }
article.event table th, article.event table td { padding:.3em 0; }
article.event table th { vertical-align:top; text-align:left; padding-right:.5em; font-weight:500; }

@media (max-width:40em) {
	article.event.list-item .post-image { display:none; }
}

.item-helyszin { border:1px solid #BBB; padding:1rem; margin-bottom:2rem !important; }
.item-helyszin:after { bottom:-17px !important; }
.item-helyszin > .flex > * { flex:1 1; }
.item-helyszin > .flex > *:not(:last-child) { padding-right:1rem; }
.item-helyszin .item-head { background: rgba(0,80,160,.9); color:#FFF; margin:-1rem -1rem 1rem; padding:.5rem 1rem; }
.item-helyszin .cal-date { background:#FFF; color:#000; }
@media (max-width:39.99em) {
	.item-helyszin > .flex { flex-direction:column; }
}

.page-szolg-terkep .pvc_stats { display:none; }

#map { margin:2em 0; height:400px; max-height:50vh; z-index: 0; }
#map ~ .list-item:not(.selected) { display: none; }

body.access, body.access * { background-color:black !important; color:yellow !important; }
body.access img { display:none !important; }
body.access .accessibility-css img { display:initial !important; }
body.access input, body.access select, body.access textarea, body.access .btn { border:1px solid yellow; }
body.access input::placeholder { color:yellow !important; }

body.access .slideshow .available a { width:2em; height:2em; background-color:yellow !important; }
body.access .slideshow .selected .text { top:0; padding:0 0 1rem 0; }
body.access ul.pagination li:not(.disabled) a { background:transparent; border:1px solid yellow; }


/*

.wp-block-gallery { max-width:80em; align-items:center; }

input:not([type=hidden]):not([type=submit]), textarea, select {
	width:100%; max-width:40em; padding:1em 1.5em; line-height:1.2;
	border:1px solid #DDD;
}
input[type=checkbox], input[type=radio] {
	padding:0 !important; width:auto !important; margin:0 3px; display:inline-block; vertical-align:middle;
}
textarea { height:10em; }

@media (min-width:50em) {
	.flex { display:flex; justify-content:center; }
	.flex > * { line-height:3rem; margin:0 .5em; }
}

@media (max-width:49.99em) {
	.flex { margin-bottom:2em; }
}

*/

.slideshow { position:relative; }
.slideshow .selected { position:relative; overflow:hidden; }
.slideshow .selected > img { width:100%; height:100%; object-fit:cover; object-position:center; }
.slideshow .selected > img ~ img { position:absolute; z-index:2; top:0; left:0; }
.slideshow .selected > .text {
	position:absolute; bottom:0; left:0; right:0; background:rgba(0,80,160,.9); padding:1rem;
	color:#FFF; z-index:1;
}
.slideshow .selected > .text ~ .text { z-index:3; }
.slideshow .selected > .text h2 { color:#FFF; }

.slideshow .available { margin-top:.2em; margin-right:.2em; white-space:nowrap; overflow:hidden; }
.slideshow .available a { margin:.2em; display:inline-block; vertical-align:top; border:2px solid transparent; }
.slideshow .available a.active { border-color:#ffc800; }
.slideshow .available img { height:5rem; width:auto; display:block; }
.slideshow .available .text { display:none; }
.slideshow .list-prev, .slideshow .list-next {
	position:absolute; z-index:1; color:#555; bottom:2.5rem; font-size:2rem;
	padding:.3rem;
}
.slideshow .list-prev { left:0; }
.slideshow .list-next { right:0; }

/* WCAG 2.2.2 – Slideshow Pause/Stop gomb */
.slideshow-pause {
	position: absolute;
	z-index: 2;
	top: .4rem;
	right: .4rem;
	min-width: 44px;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, .55);
	color: #FFF;
	border: 2px solid #FFF;
	border-radius: .25rem;
	cursor: pointer;
	font-size: 1.1rem;
	padding: 0 .4rem;
	line-height: 1;
}
.slideshow-pause:hover {
	background: rgba(0, 0, 0, .8);
}
.slideshow-pause:focus,
.slideshow-pause:focus-visible {
	outline: 3px solid #ffc800;
	outline-offset: 2px;
}
/* Akadálymentesítési módban: sárga/fekete kontraszt */
body.access .slideshow-pause {
	background: #000 !important;
	color: #ff0 !important;
	border-color: #ff0 !important;
}
.slideshow .removing, .slideshow .removing-alt { animation:fadeOut 1s ease; }
.slideshow .inserting, .slideshow .inserting-alt { animation:fadeIn 1s ease; }
@keyframes fadeOut { to { opacity:0; } }
@keyframes fadeIn { 0% { opacity:0; } }
.slideshow.fit .available { margin-left:-.2em; }
.slideshow.fit .list-next, .slideshow.fit .list-prev { display:none; }

/* pdf paginator */
.pdf-preview { position:relative; margin-bottom:1em; }
.pdf-preview canvas { display:block; }
.pdf-preview .ico {
	position:absolute; background:#FFFFFF80; line-height:1.5; font-size:2.5em;
	width:1em; text-align:center;
}
.pdf-preview .ico { top:calc(50% - .75em); }
.pdf-preview .ico-sleft { left:5px; }
.pdf-preview .ico-sright { right:5px; }

/* chosen plugin */
.chosen-container { font-size:inherit; }
.chosen-container .chosen-single {
	background:none !important; box-shadow:none !important; border-radius:.25em; border:1px solid #BBB;
	padding-top:.25em; height:2em;
}
.chosen-container .chosen-drop { box-shadow:none !important; border-radius:0; margin-top:-3px; }
.chosen-container-single.chosen-container-single-nosearch .chosen-drop { padding-top:4px; border-top:1px solid #BBB; }
.chosen-container-single .chosen-single div { height:24px; margin-top:4px; }
.chosen-container-single .chosen-search input[type=text] { height:24px; }
.chosen-container-multi .chosen-choices { background:none; border-radius:.25em; border:1px solid #BBB; padding:2px 5px; }
.chosen-container-multi .chosen-choices li.search-field input[type="text"] { font-weight:inherit !important; font-family:inherit !important; }
.chosen-container-multi .chosen-choices li.search-choice { color:inherit; background:none; line-height:1.25; border-color:inherit; padding-right:24px; }
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close { background:none; color:inherit; font-size:1em; width:1em; height:1em; }
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before { content:'\2715'; }
body.access .chosen-container .chosen-single, body.access .chosen-container-single.chosen-container-single-nosearch .chosen-drop,
body.access .chosen-container-multi .chosen-choices { border-color:yellow; }
body.access .chosen-container-multi .chosen-choices li.search-field input[type="text"] { color:yellow !important; }
body.access .chosen-container .chosen-results li em { background:none; }
body.access .chosen-container .chosen-results li.no-results { opacity:.8; }

.pvc_clear { display:none; }
p.pvc_stats { opacity:.6; margin:0; }
.pvc-stats-icon { display:inline-block; }

@font-face {
  font-family: 'icons'; src: url('assets/icons.woff') format('woff');
  font-weight: normal; font-style: normal;
}

.ico {
  font-family: 'icons' !important; font-style: normal; font-weight: normal; font-variant: normal;
  text-transform:none; display:inline-block; vertical-align:middle;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}

.ico-sleft:before,
.ico-sright:before {
	font-family: sans-serif;
	padding-bottom: 0.2em;
	display: inline-block;
}

.ico-sleft:before {
	content: '\2039'; /* Bal nyíl */
}

.ico-sright:before {
	content: '\203A'; /* Jobb nyíl */
}

.list-prev, .list-next {
	width: 48px; /* Minimum érintési terület méret */
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 10px; /* Megfelelő távolság az interaktív elemek között */
}

.list-prev:hover, .list-next:hover {
	background-color: #003f5f; /* Sötétebb kék hover */
	color: #ffcc00; /* Arany szöveg */
}

.list-prev:focus, .list-next:focus {
	outline: 2px solid #ffcc00; /* Fókusz kiemelés */
	outline-offset: 3px;
}

.ico-envelope:before {
  content: "\e907";
}
.ico-search:before {
  content: "\e908";
}
.ico-phone:before {
  content: "\e909";
}
.ico-close:before {
  content: "\e906";
}
.ico-marker:before {
  content: "\e902";
}
.ico-bars:before {
  content: "\e903";
}
.ico-instagram:before {
  content: "\e904";
}
.ico-linkedin:before {
  content: "\e901";
}
.ico-twitter:before {
  content: "\e900";
}
.ico-facebook:before {
  content: "\e905";
}

.actions ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.actions ul li {
	display: inline-block; /* Elemei egymás mellé kerülnek */
	margin: 0;
	padding: 0;
}
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* Doboz háttérszíne */
.news-box {
	background-color: #004085; /* Sötétebb kék háttér a jobb kontraszt érdekében */
	color: #ffffff; /* Fehér szöveg */
}

/* Dátum stílusa */
.news-box .date {
	color: #f2f2f2; /* Világos szürke a kontraszt fenntartásához */
	font-size: 14px; /* Igény szerint méretezhető */
}

/* Címsor stílusa */
.news-box h2 {
	color: #ffffff; /* Tiszta fehér szöveg a maximális kontraszt érdekében */
	font-size: 18px; /* Igény szerint méretezhető */
}

#error-message {
	background-color: #FFFFFF; /* Fehér háttér hozzáadása */
	color: #323232; /* Meglévő szövegszín megtartása */
}

aside strong {
	color: #323232;
	background-color: #FFFFFF;
}

.menu .arrow {
	display: inline-block;
	margin-left: 0.5em;
	transition: transform 0.2s;
}

.menu [aria-expanded="true"] .arrow {
	transform: rotate(180deg);
}

.sub-menu {
	display: none;
}

.sub-menu.is-open {
	display: block;
}

/* Fókusz jelzése */
.menu a:focus {
	outline: 2px solid #ffc800;
	outline-offset: 2px;
}

.submenu-indicator {
	display: inline-block;
	margin-left: 5px;
	font-size: 0.8em;
}

.sidebar-nav .menu-item-has-children > a {
	display: inline-flex;
	align-items: center;
	gap: .25em;
}

.sidebar-nav .submenu-indicator {
	color: inherit;
	line-height: 1;
	pointer-events: none;
}

.menu-item-has-children > a:focus {
	outline: 2px solid #007bff;
}

/* lasd feljebb (sor ~506): .sub-menu kanonikus szabaly */

/* Fókusz stílusok hozzáadása az interaktív elemekhez */
input[type="checkbox"]:focus,
input[type="radio"]:focus,
select:focus,
button:focus,
a:focus {
	outline: 2px solid #007bff;
	outline-offset: 2px;
	box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}

/* PDF ikonok fókusz keretének javítása */
a[href$=".pdf"]:focus {
	outline: 2px solid #007bff;
	outline-offset: 2px;
	display: inline-block; /* Teljes területre kiterjedő fókusz */
}

/* Összetett keresés checkbox javítása */
#searchex:focus {
	outline: 2px solid #007bff;
	outline-offset: 2px;
}

/* Chosen select plugin fókusz stílusának felülírása */
.chosen-container-active .chosen-single {
	border-color: #007bff !important;
	box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25) !important;
}

/* Globális kontrasztarány javítás */
span {
	color: #000000; /* Fekete szöveg */
	background-color: transparent; /* Átlátszó háttér */
}

/* Specifikus javítás az adott elemre */
#main > article > div > span {
	color: #000000;
	background-color: transparent;
}

/* Ha világos háttéren sötét szöveg kell */
.light-bg span {
	color: #000000; /* Fekete szöveg */
}

/* Ha sötét háttéren világos szöveg kell */
.dark-bg span {
	color: #FFFFFF; /* Fehér szöveg */
}

/* Interaktív elemek minimális méretének biztosítása */
.menu a,
button,
input[type="checkbox"],
input[type="radio"] {
	min-height: 44px;
	min-width: 44px;
	padding: 12px;
}

/* Fókuszálható elemek állapotainak kezelése */
.menu a:focus-visible,
button:focus-visible,
input:focus-visible {
	outline: 3px solid #007bff;
	outline-offset: 2px;
	box-shadow: none;
}

/* Almenü jelzés pozicionálása */
.submenu-indicator {
	position: relative;
	left: 0.5em;
	top: 0.1em;
	width: 0.8em;
	height: 0.8em;
}

/* Állapotjelzések javítása */
[aria-expanded="true"] .submenu-indicator {
	transform: rotate(180deg);
}

/* Kontrasztarány további javítása */
.dark-theme {
	background-color: #1a1a1a;
	color: #ffffff;
}

.post-image a {
	display: block;
	text-decoration: none;
}

.post-image img {
	max-width: 100%;
	height: auto;
}
.skip-link {
	position: absolute;
	left: -999px;
	width: 1px;
	height: 1px;
	top: auto;
	/* overflow:hidden szükséges, hogy képernyőn kívül ne okozzon scrollt */
	overflow: hidden;
}

.skip-link:focus {
	/* position:fixed biztosítja, hogy görgetéstől függetlenül a viewport tetején látszik */
	position: fixed;
	left: 0;
	top: 0;
	width: auto;
	height: auto;
	overflow: visible;
	padding: 8px 15px;
	background: #007bff;
	color: #fff;
	/* z-index magasabb, mint bármely header/overlay elem */
	z-index: 10000;
	text-decoration: underline;
	font-weight: 500;
}

/* Kapcsolódó CSS */
.actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
}

#searchform {
	position: relative;
	display: flex;
	align-items: center;
}

#searchform .submit {
	position: absolute;
	right: 0.5em;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	padding: 0.5em;
	cursor: pointer;
}



/* Fókusz kezelés */
input:focus,
button:focus,
a:focus {
	outline: 3px solid #007bff;
	outline-offset: 2px;
}
