/* =====================================================================================
   Reszponzív dizájn.
   Minden oldalon betöltődik (parts/head.php); a szabályok a html.uj alatt vannak (a <html> mindig "uj" osztályú).
   A tartalmat nem változtatja, csak a megjelenést.
   Töréspontok: 600 / 768 / 1024 / 1100 / 1240 px.
   ===================================================================================== */

/* --- Betűtípus: Open Sans a saját szerverről (latin + latin-ext a magyar ő/ű miatt) --------- */
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/open-sans-latin-ext-400-normal.woff2) format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/open-sans-latin-400-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Open Sans"; font-style: italic; font-weight: 400; font-display: swap; src: url(../fonts/open-sans-latin-ext-400-italic.woff2) format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Open Sans"; font-style: italic; font-weight: 400; font-display: swap; src: url(../fonts/open-sans-latin-400-italic.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url(../fonts/open-sans-latin-ext-600-normal.woff2) format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url(../fonts/open-sans-latin-600-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/open-sans-latin-ext-700-normal.woff2) format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/open-sans-latin-700-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Open Sans"; font-style: italic; font-weight: 700; font-display: swap; src: url(../fonts/open-sans-latin-ext-700-italic.woff2) format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Open Sans"; font-style: italic; font-weight: 700; font-display: swap; src: url(../fonts/open-sans-latin-700-italic.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* --- Színek és méretek: a meglévő narancs paletta, olvasható kontraszttal ---------------------- */
.uj {
	--fejlec: #e7a351;          /* a fejléc eredeti színe */
	--fejlec-vilagos: #edbe85;  /* a menüpontok eredeti színe */
	--cim: #9a5200;             /* címek (kontraszt fehéren kb. 5,8:1) */
	--link: #a65a00;            /* linkek (kb. 5,2:1) */
	--link-hover: #6f3c00;
	--sotet: #4a2600;           /* sötét szöveg a narancs háttéren (kb. 6,6:1) */
	--szoveg: #222;
	--halvany: #6b5a48;
	--keret: #e7a351;
	--hasab: 380px;
	--res: 16px;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
/* Border-box csak az átméretezett elemeken: a régi, fix méretű elemek (menüsáv, oldalsó fülek)
   a régi méretezéssel jók maradnak. */
.uj .content-box, .uj #multi-box, .uj .menu-gomb, .uj .left-tag, .uj .hir-torzs,
.uj textarea, .uj input, .uj select, .uj iframe { box-sizing: border-box; }

/* --- Alap ------------------------------------------------------------------------------------- */
.uj body {
	font: 17px/1.6 "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	color: var(--szoveg);
	background-color: #fef6e0;
	background-size: cover;
	background-position: center top;
	background-attachment: scroll; /* mobilon a "fixed" háttér akadozik */
	overflow-x: hidden;
}
@media (min-width: 1101px) and (hover: hover) {
	.uj body { background-attachment: fixed; }
}
.uj a { color: var(--link); }
.uj a:hover { color: var(--link-hover); }
.uj h2 { color: var(--cim); font-size: 1.3rem; line-height: 1.3; margin: .6em 0 .4em; }
.uj h3 { color: var(--link); font-size: 1.12rem; line-height: 1.35; margin: .6em 0 .35em; }
.uj h4 { color: var(--halvany); }
.uj img { max-width: 100%; }
.uj :focus-visible { outline: 3px solid var(--link); outline-offset: 2px; }

/* --- Betöltőképernyő: rövid (a JS a HTML elkészültekor elrejti; JS nélkül is eltűnik 1,2 mp után) - */
@keyframes uj-elrejt { to { opacity: 0; visibility: hidden; } }
.uj #loading-screen { animation: uj-elrejt .25s ease 1.2s forwards; }
.uj #loading-screen h1 { left: 0; right: 0; text-align: center; font-family: inherit; }

/* --- Konténerek és hasábok --------------------------------------------------------------------- */
.uj .header .limiter,
.uj .content .limiter,
.uj .footer .limiter {
	width: auto;
	max-width: 1200px;
	margin: 0 auto;
	padding-left: var(--res);
	padding-right: var(--res);
}
/* A hasábok közvetlen gyerek-szelektorral: a "left"/"right" osztályt a galéria nyilai is használják. */
.uj .content > .limiter { display: flex; gap: 20px; align-items: flex-start; }
.uj .content > .limiter > .left { flex: 1 1 auto; min-width: 0; width: auto; display: block; }
.uj .content > .limiter > .right { flex: 0 0 var(--hasab); width: var(--hasab); display: block; }
@media (max-width: 1024px) {
	.uj .content > .limiter { flex-direction: column; align-items: stretch; gap: 0; }
	.uj .content > .limiter > .right { flex: none; width: auto; }
}

/* --- Tartalmi dobozok ---------------------------------------------------------------------------- */
.uj .content .limiter .content-box,
.uj .content .limiter .left .content-box,
.uj #multi-box {
	width: auto;
	max-width: 100%;
	display: block;
	padding: 14px 18px 16px;
	border-radius: 4px;
	overflow-wrap: break-word;
}
.uj #multi-box { padding: 0; }
@media (max-width: 600px) {
	.uj .content .limiter .content-box,
	.uj .content .limiter .left .content-box { padding: 12px 12px 14px; }
}
/* Cím sor: ikon + cím egy sorban; a dátum keskeny képernyőn a cím alá, jobbra kerül */
.uj .content .limiter .content-box .title { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; padding-bottom: 6px; }
.uj .content .limiter .content-box .title img { flex: 0 0 25px; align-self: flex-start; margin-top: .2em; }
.uj .content .limiter .content-box .title h1 {
	color: var(--cim);
	font-size: clamp(1.2rem, 1.05rem + .9vw, 1.55rem);
	line-height: 1.25;
	flex: 1 1 0;
	min-width: 0;
}
.uj .content .limiter .content-box .title h1 a { color: var(--cim); }
.uj .content .limiter .content-box .title h4 { float: none; color: var(--halvany); font-size: 13px; flex: 1 0 100%; text-align: right; }
@media (min-width: 768px) {
	.uj .content .limiter .content-box .title h4 { flex: 0 0 auto; margin-left: auto; }
}
.uj .content .limiter .content-box .title h4 a { color: var(--link); }
.uj .content .limiter .content-box p { padding: 0; margin: 0 0 .85em; text-align: left; }
@media (min-width: 768px) {
	.uj .content .limiter .left .content-box p { text-align: justify; -webkit-hyphens: auto; hyphens: auto; }
}
.uj .content .limiter .content-box ul,
.uj .content .limiter .content-box ol { padding-left: 1.4em; margin: .4em 0 .9em; }
.uj .content .limiter .content-box ul li,
.uj .content .limiter .content-box ol li { font-size: inherit; margin: 0 0 .35em; }
.uj .content .limiter .content-box ul li p { font-size: inherit; }
.uj .content-box p a,
.uj .content-box li a { text-decoration: underline; text-underline-offset: 2px; }
.uj .content .limiter .content-box .author { padding: 0 4px; }

/* A jobb oldalsáv dobozai kicsit kisebb betűvel */
.uj .content .limiter .right .content-box { font-size: 16px; }

/* --- Hírek lenyitása (JS: a cím alatti rész a .hir-torzs burkolóba kerül; a szöveg nem változik) -- */
.uj.js .content-box.overflow { max-height: none !important; overflow: visible; }
.uj.js .content-box.overflow::after { display: none; }
.uj.js .content-box.closed > .hir-torzs { display: none; }
.uj.js .content-box.closed .title { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.uj .content-box .title h1 a[onclick] { cursor: pointer; }

/* Belépett admin: "Szerkesztés" gomb a hírek fejlécében */
.uj .content .limiter .content-box .title .hir-szerkesztes {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	height: 32px;
	margin-left: 4px;
	padding: 0 14px;
	font-size: 14px;
	font-weight: 700;
	color: var(--link);
	text-decoration: none;
	background: #fff7ec;
	border: 2px solid var(--fejlec-vilagos);
	border-radius: 16px;
	transition: background-color .2s, color .2s;
}
.uj .content .limiter .content-box .title .hir-szerkesztes:hover { color: #fff; background: var(--gomb); border-color: var(--gomb); }
@media (max-width: 767px) { .uj .content .limiter .content-box .title .hir-szerkesztes { margin-left: auto; } }

/* Admin: hírek kezelése (lista) és szerkesztés */
.uj .admin-szuro { display: block; width: 100%; max-width: 420px; height: 42px; margin: 0 0 10px; padding: 0 12px; font: 400 16px/1 "Open Sans", system-ui, sans-serif; border: 2px solid var(--fejlec-vilagos); border-radius: 6px; box-sizing: border-box; }
.uj .admin-szuro:focus { outline: none; border-color: var(--link); }
.uj .admin-tabla-keret { max-height: 70vh; overflow: auto; border: 1px solid #f1dfc6; border-radius: 6px; -webkit-overflow-scrolling: touch; }
.uj .admin-tabla { width: 100%; border-collapse: collapse; font-size: 15px; }
.uj .content .limiter .content-box .admin-tabla th,
.uj .content .limiter .content-box .admin-tabla td { padding: 8px 10px; text-align: left; border: 0; border-bottom: 1px solid #f1dfc6; vertical-align: middle; }
.uj .admin-tabla th { position: sticky; top: 0; background: #fff3e2; color: var(--sotet); font-weight: 700; z-index: 1; }
.uj .admin-tabla tr.rejtett td { background: #ece9e5; color: #6b625a; }
.uj .admin-tabla tr[hidden] { display: none; }
.uj .content .limiter .content-box .admin-tabla td:nth-child(2) { white-space: nowrap; }
.uj .admin-szerk-link { display: inline-block; padding: 5px 12px; font-weight: 700; font-size: 14px; color: var(--link); text-decoration: none; border: 1px solid var(--fejlec-vilagos); border-radius: 14px; background: #fff7ec; white-space: nowrap; }
.uj .admin-szerk-link:hover { color: #fff; background: var(--gomb); border-color: var(--gomb); }
@media (max-width: 600px) { .uj .admin-tabla th:nth-child(3), .uj .admin-tabla td:nth-child(3) { display: none; } }
.uj .admin-db-frissites { margin: 10px 0 0; padding: 0; width: auto; }
.uj .admin-szerk-fej { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 6px; padding: 10px 12px; background: #fff7ec; border: 1px solid #f1dfc6; border-radius: 6px; }
.uj .admin-allapot { font-weight: 700; padding: 4px 12px; border-radius: 14px; }
.uj .admin-allapot.lathato { color: #1e5a22; background: #eaf6e9; }
.uj .admin-allapot.rejtett { color: #5a524b; background: #e2ded9; }
.uj .admin-lathatosag { margin: 0; padding: 0; width: auto; }
.uj .admin-lathatosag button { height: 40px; padding: 0 16px; font: 700 15px/1 "Open Sans", system-ui, sans-serif; border-radius: 6px; cursor: pointer; }
.uj .admin-lathatosag .admin-ki { color: #8e1c1c; background: #fff; border: 2px solid #c62828; }
.uj .admin-lathatosag .admin-ki:hover { color: #fff; background: #c62828; }
.uj .admin-lathatosag .admin-be { color: #fff; background: #2e7d32; border: 2px solid #2e7d32; }
.uj .admin-lathatosag .admin-be:hover { color: #2e7d32; background: #fff; }
.uj .admin-megtekint { display: inline-flex; align-items: center; margin-left: auto; text-decoration: none; }
.uj .admin-urlap input.admin-rovid { max-width: 140px; }
.uj .admin-urlap input[type="datetime-local"] { display: block; width: 100%; max-width: 280px; height: 44px; padding: 0 10px; font: 400 16px/1 "Open Sans", system-ui, sans-serif; border: 2px solid var(--fejlec-vilagos); border-radius: 6px; box-sizing: border-box; }
.uj .admin-cimkek label { display: inline-flex; margin-right: 18px; }

/* Belépett admin: Szerkesztés gomb a hírek fejlécében; a rejtett hírek szürkék */
@media (max-width: 767px) {
	/* Csak a gombos (admin) fejlécben: a cím az első sorban, alatta a dátum és a gomb egy sorban */
	.uj .content .limiter .content-box .title.hir-admin-cim h1 { flex: 1 1 calc(100% - 40px); }
	.uj .content .limiter .content-box .title.hir-admin-cim h4 { flex: 1 0 auto; }
}
.uj .content .limiter .content-box.hir-rejtett { background-color: #e6e3df; border-color: #b0a79e; }
.uj .content .limiter .content-box.hir-rejtett .title h1 a,
.uj .content .limiter .content-box.hir-rejtett .title h1 { color: #6b625a; }
.uj .content .limiter .content-box.hir-rejtett .title h1::after {
	content: "rejtett";
	display: inline-block;
	margin-left: 10px;
	padding: 2px 8px;
	font-size: 12px;
	font-weight: 700;
	vertical-align: middle;
	color: #fff;
	background: #8a8178;
	border-radius: 10px;
	text-transform: uppercase;
	letter-spacing: .05em;
}
.uj .content-box.hir-rejtett img, .uj .content-box.hir-rejtett iframe { opacity: .7; }
/* Ha a cím #hírre ugrik (pl. KI/BE után), a fejléc ne takarja el a hír címét */
.uj .content-box { scroll-margin-top: 96px; }

/* Hosszú hírek a listákban: kb. 900 px után elhalványul, alatta "Tovább olvasom" gomb (JS: responsive.js).
   Az önálló hír oldalán (.hir-egyedi) nincs korlát. */
.uj.js .hir-torzs-korlat { max-height: 900px; overflow: hidden; }
@media (max-width: 600px) { .uj.js .hir-torzs-korlat { max-height: 820px; } }  /* mobilon a cím és a gomb magasabb */
.uj.js .hir-torzs-korlat.levagva {
	-webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 180px), rgba(0, 0, 0, .12) calc(100% - 20px), transparent);
	mask-image: linear-gradient(to bottom, #000 calc(100% - 180px), rgba(0, 0, 0, .12) calc(100% - 20px), transparent);
}
.uj .hir-tovabb { display: none; }
.uj .hir-tovabb.lathato { display: flex; justify-content: center; margin-top: 6px; padding-top: 12px; border-top: 1px dashed #edcfa6; }
.uj .content .limiter .content-box .hir-tovabb a {
	display: inline-flex;
	align-items: center;
	min-height: 46px;
	padding: 0 26px;
	font-weight: 700;
	font-size: 17px;
	color: #fff;
	text-decoration: none;
	background: var(--gomb);
	border: 2px solid var(--gomb);
	border-radius: 6px;
	transition: background-color .2s, color .2s;
}
.uj .content .limiter .content-box .hir-tovabb a:hover,
.uj .content .limiter .content-box .hir-tovabb a:focus-visible { background: #fff; color: var(--gomb); }
@media (max-width: 600px) { .uj .content .limiter .content-box .hir-tovabb a { width: 100%; justify-content: center; } }

/* --- Képek, videók, beágyazások ------------------------------------------------------------------ */
.uj .content img { height: auto; }
.uj .content .limiter .left img,
.uj .content .limiter .left .content-box img { max-width: 100%; }
.uj .content .limiter .left .content-box .img-medium img { max-width: min(300px, 100%); }
.uj .content .limiter .content-box .inline-block .img-small { max-width: min(210px, 100%); }
.uj .content .limiter .content-box .inline-block { max-width: 100%; margin-left: 10px; margin-right: 10px; }
.uj .content iframe { max-width: 100%; }
.uj .content iframe[src*="youtube"] { display: block; width: 100%; max-width: 640px; height: auto; aspect-ratio: 16 / 9; margin: 8px auto 14px; border: 0; }
.uj .fb-page, .uj .fb-video { max-width: 100%; }
.uj .fb-page { width: 100% !important; height: auto; }
.uj .fb-page > span, .uj .fb-page iframe,
.uj .fb-video > span, .uj .fb-video iframe { max-width: 100% !important; }
.uj .content table { max-width: 100%; }
@media (max-width: 600px) {
	.uj .content table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

/* --- Gombok: sötétebb narancs, hogy a fehér felirat jól olvasható legyen ------------------------- */
.uj { --gomb: #b8661a; }
.uj .content .limiter .button { max-width: 100%; border-radius: 4px; background-color: var(--gomb); border-color: var(--gomb); }
.uj .content .limiter .button:hover,
.uj .content .limiter .right .content-box .button:hover { background-color: #fff; border-color: var(--gomb); color: var(--gomb); }
.uj .content .limiter .right .content-box .button { background-color: var(--gomb); border-color: var(--gomb); }
.uj .left-tag #music { background-color: var(--gomb); }
.uj .left-tag #music:hover { background-color: #fff; color: var(--gomb); border-color: var(--gomb); }
.uj .content .limiter .right .content-box .button { width: auto; max-width: 100%; padding: 6px 14px; }
.uj .content .limiter .content-box .youtube-button { width: auto; max-width: 100%; }

/* --- Galéria (albumok) és az oldalsáv képváltója --------------------------------------------------- */
.uj .content .limiter .content-box .album { width: calc(50% - 14px); max-width: 250px; margin: 6px; vertical-align: top; }
.uj .content .limiter .content-box img.album-thumb { width: 100%; height: auto; aspect-ratio: 5 / 6; object-fit: cover; }
.uj .content .limiter .content-box .album h3 { font-size: 1rem; }
.uj .content .limiter .spot-galeria { display: flex; align-items: center; }
.uj .content .limiter .spot-galeria > a { flex: 0 0 40px; }
.uj .content .limiter .spot-galeria .arrow { float: none; height: auto; line-height: normal; padding: 40px 0; }
.uj .content .limiter .spot-galeria .album { flex: 1 1 auto; width: auto; max-width: 260px; margin: 0 auto; }
.uj .content .limiter .spot-galeria .album-thumb { width: 100%; height: auto; aspect-ratio: 5 / 6; background-size: cover; background-position: center; }

/* --- Főoldal: fülek (Ajánló / Heti hirdetések / Linkek) ------------------------------------------- */
.uj #multi-box-menu { display: flex; align-items: stretch; }
.uj #multi-box-menu > a { flex: 1 1 0; min-width: 0; display: flex; }
.uj .multi-box-element { display: flex; align-items: center; justify-content: center; flex: 1 1 auto; width: auto; padding: 12px 8px; font-size: clamp(15px, 1rem + .6vw, 22px); text-align: center; line-height: 1.25; }
.uj .multi-box-content { padding: 16px 18px; }
/* Az ajánló bevezetője az eredetihez hasonlóan egy sor, "…"-tal; a cím tördelődik, balra igazítva */
.uj .ajanlo-element .ajanlo-element-text { display: block; width: auto; padding-left: 0; max-height: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: left; }
.uj .ajanlo-element .ajanlo-element-text h3,
.uj .ajanlo-element .ajanlo-element-text h4 { white-space: normal; text-align: left; }
.uj #multi-box-menu .selected { color: var(--link); }
.uj #multi-box-menu .deselected:hover { color: var(--link); }
.uj #multi-box-content-esemenyek a { overflow-wrap: anywhere; }

/* --- Hírkereső (főoldal, hírek oldal): egy sor, nagyító ikon a mezőben, mellette a gomb ----------- */
.uj .sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.uj .content .limiter .content-box.kereso-doboz { padding: 10px; }
.uj form.hir-kereso { display: flex; gap: 8px; width: auto; margin: 0; padding: 0; }
.uj .hir-kereso input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	height: 46px;
	padding: 0 12px 0 42px;
	font: 400 17px/1 "Open Sans", system-ui, sans-serif;
	color: var(--szoveg);
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a5200' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 21 21'/%3E%3C/svg%3E") no-repeat 12px center / 21px 21px;
	border: 2px solid var(--fejlec-vilagos);
	border-radius: 6px;
	-webkit-appearance: none;
	appearance: none;
}
.uj .hir-kereso input[type="search"]::placeholder { color: #8a7a68; opacity: 1; }
.uj .hir-kereso input[type="search"]:focus { border-color: var(--link); outline: none; box-shadow: 0 0 0 3px rgba(166, 90, 0, .18); }
.uj .hir-kereso button {
	flex: 0 0 auto;
	height: 46px;
	padding: 0 20px;
	font: 600 17px/1 "Open Sans", system-ui, sans-serif;
	color: #fff;
	background: var(--gomb);
	border: 2px solid var(--gomb);
	border-radius: 6px;
	cursor: pointer;
	transition: background-color .2s, color .2s;
}
.uj .hir-kereso button:hover, .uj .hir-kereso button:focus-visible { background: #fff; color: var(--gomb); }
@media (max-width: 400px) {
	.uj .hir-kereso input[type="search"] { padding-left: 38px; background-position: 10px center; }
	.uj .hir-kereso button { padding: 0 14px; }
}
.uj .content .limiter .content-box.kereso-eredmeny { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 16px; padding: 10px 18px; }
.uj .content .limiter .content-box.kereso-eredmeny p { margin: 0; font-weight: 600; }
.uj .kereso-torles { white-space: nowrap; }

/* --- Hírek oldal: önálló hír, vissza link, lapozó ------------------------------------------------- */
.uj .content .limiter .content-box.hir-navigacio { padding: 10px 18px; }
.uj .hir-navigacio a { font-weight: 600; text-decoration: none; }
.uj .hir-navigacio a:hover { text-decoration: underline; }
.uj .content .limiter .content-box.lapozo-doboz { padding: 12px 10px; }
.uj .lapozo { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; }
.uj .lapozo a, .uj .lapozo span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 10px;
	font-weight: 600;
	border-radius: 6px;
	text-decoration: none;
	box-sizing: border-box;
}
.uj .lapozo a { color: var(--link); background: #fff7ec; border: 1px solid var(--fejlec-vilagos); }
.uj .lapozo a:hover { color: var(--sotet); background: var(--fejlec-vilagos); }
.uj .lapozo .lap-aktiv { color: #fff; background: var(--gomb); border: 1px solid var(--gomb); }
.uj .lapozo .lap-kihagyas { min-width: 22px; padding: 0; color: var(--halvany); }
.uj .lapozo .lap-nyil { padding: 0 14px; }
.uj .lapozo .tiltott { color: #b5a99c; background: transparent; border: 1px solid #eee3d6; }
@media (max-width: 600px) {
	.uj .lapozo a, .uj .lapozo span { min-width: 40px; height: 42px; padding: 0 8px; }
	.uj .lapozo .lap-nyil { flex: 1 1 40%; order: 2; }  /* Előző/Következő egy külön sorban, alul */
	.uj .lapozo .lap-kihagyas { min-width: 16px; }
}
@media (max-width: 480px) {
	.uj .lapozo .lap-szel { display: none; }  /* 1 … 27 28 29 … 56 */
}

/* --- Admin felület (admin.php): teljes szélesség, fülek, űrlapok ----------------------------------- */
.uj .content .limiter .content-box.admin-panel { padding: 0 0 18px; overflow: hidden; }
.uj .admin-panel > .title, .uj .admin-panel > .admin-uzenet, .uj .admin-panel > form { margin-left: 18px; margin-right: 18px; }
.uj .admin-panel > .title { margin-top: 14px; }
.uj .admin-fejlec { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 18px; }
.uj .admin-fejlec h1 { margin: 0; color: var(--cim); font-size: 1.5rem; }
.uj .admin-kilepes { margin: 0; padding: 0; width: auto; }
.uj .admin-kilepes button { height: 40px; padding: 0 16px; font: 600 15px/1 "Open Sans", system-ui, sans-serif; color: var(--link); background: #fff7ec; border: 1px solid var(--fejlec-vilagos); border-radius: 6px; cursor: pointer; }
.uj .admin-kilepes button:hover { background: var(--fejlec-vilagos); color: var(--sotet); }

.uj .admin-fulek { display: flex; flex-wrap: wrap; background: var(--fejlec); }
.uj .admin-fulek a {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 10px 14px;
	font-size: clamp(15px, .9rem + .4vw, 19px);
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	color: #fff;
	text-decoration: none;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .25);
	transition: background-color .2s, color .2s;
	box-sizing: border-box;
}
.uj .admin-fulek a:hover { background: #fff3e2; color: var(--link); text-shadow: none; }
.uj .admin-fulek a.aktiv { background: #fff; color: var(--link); text-shadow: none; }
@media (max-width: 600px) { .uj .admin-fulek a { flex: 1 1 45%; min-height: 46px; } }

.uj .admin-ful-panel { padding: 16px 18px 0; }
.uj .admin-ful-panel[hidden] { display: none; }
.uj .admin-uzenet { margin: 0 0 14px; padding: 12px 14px; border-radius: 6px; font-weight: 600; border-left: 5px solid; }
.uj .admin-uzenet.siker { background: #eaf6e9; border-color: #2e7d32; color: #1e5a22; }
.uj .admin-uzenet.hiba { background: #fdecea; border-color: #c62828; color: #8e1c1c; }
.uj .admin-sugo { color: var(--halvany); margin: 0 0 12px; }

.uj form.admin-urlap, .uj form.admin-belepes { width: auto; margin: 0; padding: 0; }
.uj .admin-urlap label, .uj .admin-belepes label { display: block; margin: 14px 0 5px; font-weight: 600; color: var(--sotet); }
.uj .admin-urlap label.admin-jelolo, .uj .admin-mod label { display: flex; align-items: center; gap: 8px; font-weight: 400; margin: 12px 0 6px; cursor: pointer; }
.uj .admin-urlap input[type="text"], .uj .admin-belepes input[type="password"], .uj .admin-urlap textarea {
	display: block;
	width: 100%;
	max-width: 100%;
	padding: 9px 11px;
	font: 400 16px/1.45 "Open Sans", system-ui, sans-serif;
	color: var(--szoveg);
	background: #fff;
	border: 2px solid var(--fejlec-vilagos);
	border-radius: 6px;
	box-sizing: border-box;
}
.uj .admin-urlap textarea { height: auto; min-height: 3.2em; resize: vertical; white-space: pre-wrap; }
.uj .admin-urlap input:focus, .uj .admin-urlap textarea:focus, .uj .admin-belepes input:focus { outline: none; border-color: var(--link); box-shadow: 0 0 0 3px rgba(166, 90, 0, .18); }
.uj .admin-urlap input[type="file"] { display: block; margin: 4px 0 6px; font-size: 15px; }
.uj .admin-urlap input[type="checkbox"], .uj .admin-urlap input[type="radio"] { width: 20px; height: 20px; accent-color: var(--gomb); }
.uj .admin-sor { display: flex; gap: 10px; align-items: flex-end; flex-wrap: wrap; }
.uj .admin-sor > div { flex: 0 1 160px; }
.uj .admin-belepes .admin-sor input { flex: 1 1 220px; width: auto; }
.uj .admin-mod { margin: 16px 0 4px; padding: 6px 14px 10px; border: 1px solid #f1dfc6; border-radius: 6px; }
.uj .admin-mod legend { padding: 0 6px; font-weight: 600; color: var(--sotet); }
.uj .admin-mod-resz[hidden] { display: none; }
.uj .admin-pontok { margin: 12px 0 8px; padding-left: 1.6em; }
.uj .admin-pontok li { margin: 0 0 10px; }
.uj .admin-pontok li textarea { display: inline-block; width: calc(100% - 96px); vertical-align: top; }
.uj .admin-pontok .pont-torles { width: 84px; margin-left: 8px; height: 40px; vertical-align: top; font: 600 14px/1 "Open Sans", system-ui, sans-serif; color: #8e1c1c; background: #fff; border: 1px solid #e8b4b4; border-radius: 6px; cursor: pointer; }
.uj .admin-pontok .pont-torles:hover { background: #fdecea; }
@media (max-width: 600px) {
	.uj .admin-pontok li textarea { width: 100%; }
	.uj .admin-pontok .pont-torles { margin: 6px 0 0; }
}
.uj .admin-masodlagos, .uj .admin-eszkozok button {
	height: 40px;
	padding: 0 14px;
	font: 600 15px/1 "Open Sans", system-ui, sans-serif;
	color: var(--link);
	background: #fff7ec;
	border: 1px solid var(--fejlec-vilagos);
	border-radius: 6px;
	cursor: pointer;
}
.uj .admin-masodlagos:hover, .uj .admin-eszkozok button:hover { background: var(--fejlec-vilagos); color: var(--sotet); }
.uj .admin-masodlagos:disabled { opacity: .55; cursor: default; }
.uj .admin-eszkozok { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 8px; }
.uj .admin-gombok { display: flex; justify-content: flex-end; margin-top: 18px; padding-top: 14px; border-top: 1px solid #f1dfc6; }
.uj .admin-panel button.mehet {
	min-width: 160px;
	height: 48px;
	padding: 0 28px;
	font: 700 18px/1 "Open Sans", system-ui, sans-serif;
	color: #fff;
	background: var(--gomb);
	border: 2px solid var(--gomb);
	border-radius: 6px;
	cursor: pointer;
	transition: background-color .2s, color .2s;
}
.uj .admin-panel button.mehet:hover, .uj .admin-panel button.mehet:focus-visible { background: #fff; color: var(--gomb); }
@media (max-width: 600px) { .uj .admin-gombok .mehet { width: 100%; } }
/* Belépő kártya: kompakt, középen; mező és gomb egymás alatt */
.uj .content .limiter .content-box.admin-belepo { max-width: 440px; margin: 48px auto 0; padding: 4px 0 24px; }
.uj .admin-belepo > .title, .uj .admin-belepo > .admin-uzenet, .uj .admin-belepo > form.admin-belepes { margin-left: 24px; margin-right: 24px; }
.uj .admin-belepo > .title { justify-content: center; }
.uj .admin-belepo > .title h1 { flex: 0 1 auto; }
.uj .admin-belepo > .admin-uzenet { margin-top: 10px; }
.uj .admin-belepes .admin-sor { flex-direction: column; align-items: stretch; gap: 12px; }
.uj .admin-belepes .admin-sor input { flex: none; width: 100%; height: 48px; }
.uj .admin-belepes .mehet { width: 100%; }
@media (max-width: 600px) { .uj .content .limiter .content-box.admin-belepo { margin-top: 20px; } }

/* Rövid oldalakon a lábléc a képernyő aljára kerül */
.uj body { display: flex; flex-direction: column; min-height: 100vh; }
.uj body > .content { flex: 1 0 auto; }
.uj body > .footer { flex-shrink: 0; }

/* --- Űrlapok (admin) ------------------------------------------------------------------------------ */
.uj form { width: auto; max-width: 100%; }
.uj textarea, .uj input[type="text"], .uj input[type="password"], .uj input[type="number"], .uj input[type="file"] { max-width: 100%; font: inherit; }

/* --- Lábléc ------------------------------------------------------------------------------------- */
.uj .footer { height: auto; padding: 24px 0 90px; font-size: 15px; }
.uj .footer .limiter { display: flex; flex-wrap: wrap; gap: 20px 32px; }
.uj .footer .limiter .credits { flex: 1 1 460px; width: auto; float: none; margin: 0; padding-top: 0; }
.uj .footer .limiter .links { flex: 1 1 260px; width: auto; float: none; padding-top: 0; }
.uj .footer .limiter .credits img { height: auto; }

/* --- Széchenyi-logó: mobilon kisebb ------------------------------------------------------------- */
@media (max-width: 1024px) { .uj #szechenyi-overlay { width: 210px; height: 140px; } }
@media (max-width: 600px)  { .uj #szechenyi-overlay { width: 150px; height: 100px; } }

/* =====================================================================================
   FEJLÉC ÉS MENÜ
   ===================================================================================== */
.uj .header, .uj #tinyHeader { font-family: inherit; }
.uj .header .limiter .logo h1 { font-family: inherit; color: var(--sotet); }
.uj .header .limiter .logo span { color: #fff; text-shadow: 0 1px 2px rgba(0, 0, 0, .35); }
.uj .header .limiter .logo:hover h1 { font-size: 28px; color: var(--sotet); }
.uj .header .limiter .logo:hover span { color: var(--link); text-shadow: none; }
.uj #tinyHeader .limiter .logo:hover h1 { font-size: 18px; }
.uj .header .limiter nav a, .uj .header .limiter nav .almenu { color: var(--sotet); }
.uj .header .limiter nav a:hover, .uj .header .limiter nav .almenu:hover { font-size: 20px; color: var(--link); }
.uj .header .limiter nav .almenu .almenusor a { color: var(--sotet); background-color: var(--fejlec-vilagos); }
.uj .header .limiter nav .almenu .almenusor a:hover { font-size: 18px; color: var(--link); background-color: #fff; }
.uj .header .limiter nav .almenu:focus-within .almenusor { max-height: 400px; }
.uj .menu-gomb { display: none; }

/* Asztali lenyíló menü: olyan széles, mint a leghosszabb pont, balra igazítva, fehér háttérrel */
@media (min-width: 1101px) {
	.uj .header .limiter nav .almenu .almenusor { min-width: 100%; width: max-content; z-index: 300; background: #fff; border-radius: 0 0 6px 6px; box-shadow: 0 8px 18px rgba(0, 0, 0, .18); }
	.uj .header .limiter nav .almenu .almenusor a,
	.uj .header .limiter nav .plebania .almenusor a,
	.uj .header .limiter nav .kozseg .almenusor a,
	.uj .header .limiter nav .media .almenusor a {
		float: none;
		display: block;
		width: auto;
		min-width: 0;
		height: auto;
		margin: 0;
		padding: 9px 18px;
		white-space: nowrap;
		text-align: left;
		font-size: 17px;
		line-height: 1.3;
		color: var(--sotet);
		background-color: #fff;
		background-image: none;
		border-bottom: 1px solid #f1dfc6;
		border-radius: 0;
	}
	.uj .header .limiter nav .almenu .almenusor a:hover { font-size: 17px; color: var(--sotet); background-color: var(--fejlec-vilagos); }

	/* Görgetéskor megjelenő vékony fejléc: ott a lista "fixed" (a fejléc overflow:hidden), ezért nem
	   lehet a képernyő szélességéhez mért minimum; az ID-s régi szabályokat is felül kell írni. */
	.uj #tinyHeader .limiter nav .almenu .almenusor { min-width: 0; width: max-content; top: 40px; }
	.uj #tinyHeader .limiter nav .almenu .almenusor a {
		width: auto;
		min-width: 0;
		height: auto;
		margin: 0;
		padding: 9px 18px;
		text-align: left;
		font-size: 17px;
		line-height: 1.3;
		color: var(--sotet);
		background-color: #fff;
		border-bottom: 1px solid #f1dfc6;
	}
	.uj #tinyHeader .limiter nav .almenu .almenusor a:hover { font-size: 17px; background-color: var(--fejlec-vilagos); }
}

/* Széles képernyőn a profilkép csak akkor, ha elfér */
@media (max-width: 1240px) { .uj .header .limiter .profile { display: none; } }

/* --- Mobil és tablet: kompakt, tapadó fejléc "Menü" gombbal ------------------------------------- */
@media (max-width: 1100px) {
	.uj #tinyHeader { display: none; }
	.uj .header { height: auto; position: sticky; top: 0; z-index: 200; border-bottom: 2px solid #c98a3e; box-shadow: 0 3px 10px rgba(0, 0, 0, .25); }
	/* Egérrel (gépen, keskeny ablakban) is legyen visszajelzés */
	.uj .header .limiter .logo a { padding: 4px 10px 4px 4px; border-radius: 8px; transition: background-color .2s; }
	.uj .header .limiter .logo a:hover { background-color: rgba(255, 255, 255, .92); }
	.uj .header .limiter .logo a:hover h1 { color: var(--link); }
	.uj .header .limiter .logo a:hover span { color: var(--link); text-shadow: none; }
	.uj .header .limiter {
		height: auto;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		padding-top: 6px;
		padding-bottom: 6px;
	}
	.uj .header .limiter .logo { float: none; width: auto; height: auto; padding: 0; border-radius: 0; }
	.uj .header .limiter .logo:hover { background: none; }
	.uj .header .limiter .logo a { display: flex; align-items: center; gap: 10px; }
	.uj .header .limiter .logo img { order: -1; float: none; height: 50px; width: auto; margin: 0; }
	.uj .header .limiter .logo h1,
	.uj .header .limiter .logo:hover h1 { float: none; font-size: 17px; line-height: 1.2; }

	.uj .menu-gomb {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		min-height: 44px;
		padding: 8px 14px;
		font: 600 17px/1 "Open Sans", system-ui, sans-serif;
		color: var(--sotet);
		background: var(--fejlec-vilagos);
		border: 0;
		border-radius: 6px;
		cursor: pointer;
	}
	.uj .menu-gomb { transition: background-color .2s, color .2s; }
	.uj .menu-gomb:hover,
	.uj .menu-gomb[aria-expanded="true"] { background: #fff; color: var(--link); }
	.uj .menu-gomb::before { content: "\2630"; font-size: 20px; }
	.uj .menu-gomb[aria-expanded="true"]::before { content: "\2715"; }

	.uj .header .limiter nav { display: none; flex: 1 0 100%; width: 100%; margin-top: 6px; }
	.uj .header .limiter nav.nyitva { display: block; max-height: calc(100vh - 80px); overflow-y: auto; -webkit-overflow-scrolling: touch; }
	.uj .header .limiter nav > a,
	.uj .header .limiter nav .almenu,
	.uj .header .limiter nav .plebania,
	.uj .header .limiter nav .kozseg,
	.uj .header .limiter nav .media {
		float: none;
		display: block;
		width: auto;
		min-width: 0;
		height: auto;
		margin: 0;
		padding: 12px 14px;
		text-align: left;
		font-size: 18px;
		line-height: 1.3;
		background-image: none;
		background-color: var(--fejlec-vilagos);
		border-top: 1px solid rgba(74, 38, 0, .12);
		border-radius: 0;
		cursor: pointer;
	}
	.uj .header .limiter nav > a:hover,
	.uj .header .limiter nav .almenu:hover { font-size: 18px; background-image: none; background-color: #fff; }
	.uj .header .limiter nav .almenu { position: relative; }
	.uj .header .limiter nav .almenu::after { content: "\25BE"; position: absolute; right: 14px; top: 12px; }
	.uj .header .limiter nav .almenu.nyitva::after { content: "\25B4"; }
	.uj .header .limiter nav .almenu.nyitva { background-color: var(--fejlec-vilagos); color: var(--sotet); }
	.uj .header .limiter nav .almenu .almenusor,
	.uj .header .limiter nav .almenu:hover .almenusor,
	.uj .header .limiter nav .almenu:focus-within .almenusor { display: none; position: static; max-height: none; width: auto; margin: 10px -14px -12px; }
	.uj .header .limiter nav .almenu.nyitva .almenusor { display: block; }
	.uj .header .limiter nav .almenu .almenusor a,
	.uj .header .limiter nav .plebania .almenusor a,
	.uj .header .limiter nav .kozseg .almenusor a,
	.uj .header .limiter nav .media .almenusor a {
		float: none;
		display: block;
		width: auto;
		padding: 11px 14px 11px 30px;
		text-align: left;
		font-size: 17px;
		line-height: 1.3;
		background-color: #fff7ec;
		border-bottom: 1px solid rgba(74, 38, 0, .1);
		border-radius: 0;
	}
	.uj .header .limiter nav .almenu .almenusor a:hover { font-size: 17px; }
}

/* --- Gombsor (Zene / Facebook / YouTube): mobilon a fejléc alatt, egy sorban ------------------- */
@media (max-width: 1100px) {
	.uj .left-tag {
		position: static;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 8px;
		padding: 10px var(--res);
		background: rgba(255, 255, 255, .85);
	}
	.uj .left-tag > a { flex: 1 1 0; min-width: 0; max-width: 220px; }
	.uj .left-tag .button,
	.uj .left-tag #music, .uj .left-tag #facebook, .uj .left-tag #youtube,
	.uj .left-tag #music:hover, .uj .left-tag #facebook:hover, .uj .left-tag #youtube:hover {
		position: static;
		left: auto;
		top: auto;
		display: flex;
		align-items: center;
		width: auto;
		height: auto;
		min-height: 44px;
		margin: 0;
		padding: 8px 10px 8px 42px;
		font-size: 15px;
		line-height: 1.2;
		border-radius: 8px;
		background-position: 8px center;
		background-size: 28px 28px;
	}
}
