/*
 * kazuko.pl – odświeżony wygląd (2026)
 * Ładowany po starych arkuszach; nadpisuje układ strony, kolory i typografię.
 * Kolory i odstępy zmienia się w jednym miejscu – w zmiennych poniżej.
 */
:root {
	--k-tlo: #eceff2;
	--k-karta: #ffffff;
	--k-tekst: #2c3640;
	--k-tekst-jasny: #66717c;
	--k-linia: #e1e5ea;
	--k-akcent: #1f73a9;
	--k-akcent-jasny: #2b8acb;
	--k-akcent-tlo: #eaf3fa;
	--k-zielony: #7cae1a;
	--k-naglowek: #2d3238;
	--k-naglowek-tekst: #f2f4f6;
	--k-cien: 0 1px 2px rgba(20, 30, 40, .06), 0 2px 8px rgba(20, 30, 40, .06);
	--k-promien: 8px;
	--k-szerokosc: 1230px;
	--k-bok: 250px;
	--k-czcionka: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* --- podstawy ------------------------------------------------------------- */
html, body { height: auto; }
body {
	display: flex; flex-direction: column; min-height: 100vh;
	background: var(--k-tlo);
	color: var(--k-tekst);
	font: 15px/1.65 var(--k-czcionka);
	-webkit-font-smoothing: antialiased;
}
a { color: var(--k-akcent); }
a:hover { color: var(--k-akcent-jasny); text-decoration: underline; }
img { max-width: 100%; height: auto; }
.k-wrap { width: var(--k-szerokosc); margin: 0 auto; padding: 0 20px; }

/* --- nagłówek --------------------------------------------------------------- */
.k-naglowek { background: var(--k-naglowek); box-shadow: 0 2px 6px rgba(0, 0, 0, .18); position: relative; z-index: 20; }
.k-naglowek-in { display: flex; align-items: center; gap: 24px; min-height: 72px; }
.k-logo { display: block; flex: 0 0 auto; line-height: 0; }
.k-logo img { height: 58px; width: auto; }
.k-logo:hover { text-decoration: none; }

.k-menu { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.k-menu p { margin: 0; }
.k-menu p a {
	display: block;
	padding: 8px 14px;
	border-radius: 6px;
	color: var(--k-naglowek-tekst);
	font-weight: 600;
	font-size: 15px;
	line-height: 1.2;
	transition: background-color .15s;
}
.k-menu p a:hover { background: rgba(255, 255, 255, .12); color: #fff; text-decoration: none; }
.k-menu p a.active { background: var(--k-akcent-jasny); color: #fff; }

.k-ikony { display: flex; align-items: center; gap: 10px; }
.k-ikony a { display: block; line-height: 0; opacity: .9; transition: opacity .15s, transform .15s; }
.k-ikony a:hover { opacity: 1; transform: translateY(-1px); }
.k-ikony img { width: 24px; height: 24px; }
.k-koszyk { position: relative; }
.k-licznik {
	position: absolute; top: -8px; right: -10px;
	min-width: 18px; height: 18px; padding: 0 5px;
	border-radius: 9px; background: #d43a3a; color: #fff;
	font: 700 11px/18px var(--k-czcionka); text-align: center;
}

.k-burger { display: none; }

/* --- pasek „Polecane” ----------------------------------------------------- */
.k-polecane { background: #fff; border-bottom: 1px solid var(--k-linia); }
.k-polecane .k-wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 10px; padding-top: 10px; padding-bottom: 10px; }
.k-polecane-tytul { color: var(--k-tekst-jasny); font-size: 13px; text-transform: uppercase; letter-spacing: .04em; margin-right: 4px; }
.k-polecane a {
	display: inline-block; padding: 4px 12px; border-radius: 999px;
	background: var(--k-akcent-tlo); color: var(--k-akcent); font-weight: 600; font-size: 14px;
}
.k-polecane a:hover { background: var(--k-akcent); color: #fff; text-decoration: none; }

.k-ogloszenie { background: #fff8e1; border-bottom: 1px solid #f0dca0; text-align: center; font-weight: 600; padding: 8px 0; }

/* --- układ: menu działu + treść ------------------------------------------ */
.k-glowna { flex: 1 0 auto; display: flex; align-items: flex-start; gap: 24px; padding-top: 24px; padding-bottom: 24px; }
.k-bok { flex: 0 0 var(--k-bok); width: var(--k-bok); }
.k-tresc { flex: 1 1 auto; min-width: 0; }
.k-bez-boku .k-tresc { width: 100%; }
.k-bok-przycisk { display: none; }

/* menu działu (stare klasy .pLeft) */
.k-bok.pLeft { padding: 0; font-size: 14px; color: var(--k-tekst); }
.k-bok-tresc {
	background: var(--k-karta); border-radius: var(--k-promien); box-shadow: var(--k-cien);
	padding: 16px 18px 10px;
}
.k-bok.pLeft h3 {
	background: none; border-bottom: 2px solid var(--k-akcent);
	font: 700 13px/1.4 var(--k-czcionka); letter-spacing: .06em; color: var(--k-tekst);
	margin: 0 0 6px; padding: 0 0 8px;
}
.k-bok.pLeft ul { margin: 0 0 14px; }
.k-bok.pLeft ul li {
	background: none; float: none; width: auto; padding: 0;
	border-bottom: 1px solid var(--k-linia);
}
.k-bok.pLeft ul li:last-child { border-bottom: 0; }
.k-bok.pLeft ul li a, .k-bok.pLeft ul li a.active {
	display: block; padding: 7px 8px; margin: 0 -8px; border-radius: 5px;
	color: var(--k-tekst); line-height: 1.35; white-space: normal;
}
.k-bok.pLeft ul li a:hover { background: var(--k-akcent-tlo); color: var(--k-akcent); text-decoration: none; }
.k-bok.pLeft ul li a.active { background: var(--k-akcent-tlo); color: var(--k-akcent); font-weight: 700; }
.k-bok.pLeft div[style*="width: 10px"] { display: none; }

/* --- karty z treścią (stare tabele z klasami pRight / nRight / fRight) ----- */
.k-tresc table:has(> tbody > tr > td:is(.pRight, .nRight, .fRight)) {
	width: 100%; height: auto !important; margin-bottom: 20px;
	background: var(--k-karta); border-radius: var(--k-promien); box-shadow: var(--k-cien);
	border-collapse: separate; border-spacing: 0; overflow: hidden;
	table-layout: fixed;	/* długi kod czy tabela nie rozpycha karty – przewija się wewnątrz */
}
.k-tresc :is(.pRight, .nRight, .fRight) { background: transparent; padding: 22px 28px 16px; }
.k-tresc :is(.nRightBottom, .pRightBottom, .fRightBottom) {
	background: transparent; padding: 0 28px 18px; height: auto !important; width: auto !important; max-width: none !important;
}
.k-tresc .nRightBottom a { font-weight: 600; }
.k-tresc .nRightBottom a::after { content: " \2192"; }
.k-tresc > br { display: none; }

.k-tresc h1, .pRight h1, .nRight h1, .fRight h1 {
	width: auto; white-space: normal;
	font: 700 23px/1.3 var(--k-czcionka); color: #1f2a35; margin-bottom: 4px;
}
.k-tresc h1 a { color: inherit; }
.k-tresc h1 a:hover { color: var(--k-akcent); text-decoration: none; }
.k-tresc h1 font[style*="9cc300"] { color: var(--k-zielony) !important; }
.k-tresc h2 { font: 700 19px/1.35 var(--k-czcionka); margin: 18px 0 8px; }
.k-tresc h3 { font: 700 16px/1.4 var(--k-czcionka); margin: 16px 0 6px; }
.k-tresc p { margin: 0 0 12px; }
.k-tresc ul, .k-tresc ol { margin: 0 0 12px 22px; }
.k-tresc ul { list-style: disc; }
.k-tresc ol { list-style: decimal; }

.pRightDateStatistics { background: none; color: var(--k-tekst-jasny); font-size: 13px; }
.pRightDateStatistics img { vertical-align: -2px; opacity: .8; }

/* kod (<pre class='brush: …'> kolorowany przez highlight.js) */
.k-tresc div[style*="width: 870px"] { width: auto !important; }
.k-tresc pre { width: auto; max-width: 100%; }
.k-tresc pre.k-kod {
	margin: 4px 0 14px; padding: 0; border: 1px solid var(--k-linia); border-radius: 6px;
	background: #f7f9fb; overflow-x: auto; white-space: pre;
}
.k-tresc pre.k-kod code.hljs {
	display: block; padding: 12px 14px; background: transparent;
	font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
}
.k-kod-kopiuj {
	display: block; margin: 12px 0 0 auto; padding: 2px 10px;
	border: 1px solid var(--k-linia); border-bottom: 0; border-radius: 6px 6px 0 0;
	background: #eef2f6; color: var(--k-tekst-jasny); font: 600 12px var(--k-czcionka); cursor: pointer;
}
.k-kod-kopiuj:hover { color: var(--k-akcent); }
.k-kod-kopiuj + pre.k-kod { margin-top: 0; border-top-right-radius: 0; }

/* powiększone zdjęcie (GLightbox): podpis i numer zdjęcia */
.glightbox-clean .gslide-title { font-family: var(--k-czcionka); font-size: 15px; margin-bottom: 4px; }
.glightbox-clean .gslide-desc { font-family: var(--k-czcionka); font-size: 13px; color: var(--k-tekst-jasny); }

/* --- lista plików --------------------------------------------------------- */
.k-tresc table:has(> tbody > tr.listPlikTop) { border-collapse: collapse; }
.listPlikTop td {
	border-bottom: 2px solid var(--k-linia); color: var(--k-tekst-jasny);
	font-size: 12px; line-height: 1.3; text-transform: uppercase; letter-spacing: .03em; padding-bottom: 8px !important;
}
.listPlikTop td b { font-weight: 700; }
.listPlikTop td.k-kol-status { min-width: 120px; }
tr.listPlik td { padding: 7px 10px; border-bottom: 1px solid var(--k-linia); }
tr.listPlik:not(.listPlikTop) { cursor: pointer; }
tr.listPlik:not(.listPlikTop):hover td { background: var(--k-akcent-tlo); }
tr.listPlik a { font-weight: 600; }
/* podświetlenie wiersza (klasa highlightPlik ze starego stylu) – jasne tło, tekst czytelny */
tr.listPlik.highlightPlik td, tr.listPlik.highlightPlik td:first-child, tr.listPlik.highlightPlik td:last-child {
	background: var(--k-akcent-tlo) !important; color: var(--k-tekst) !important; font-weight: normal; border-radius: 0 !important;
}
tr.listPlik.highlightPlik a, tr.listPlik.highlightPlik a:hover { background: transparent !important; color: var(--k-akcent) !important; font-weight: 600; }

/* --- przyciski, formularze, stronicowanie -------------------------------- */
.button { border-radius: 6px; font-family: var(--k-czcionka); }
.k-tresc input[type="text"], .k-tresc input[type="email"], .k-tresc textarea, .k-tresc select {
	border: 1px solid #c9d0d7; border-radius: 6px; padding: 7px 10px; font: 15px var(--k-czcionka); color: var(--k-tekst); background: #fff;
}
.k-tresc input[type="text"]:focus, .k-tresc textarea:focus, .k-tresc select:focus {
	outline: none; border-color: var(--k-akcent-jasny); box-shadow: 0 0 0 3px rgba(43, 138, 203, .18);
}
#nrpage { font: 13px var(--k-czcionka); padding: 6px 0 14px; text-align: center; }
#nrpage a, #nrpage .current { border-radius: 6px; border-color: var(--k-linia); background: #fff; padding: 5px 11px; }
#nrpage a:hover, #nrpage .current { background: var(--k-akcent); border-color: var(--k-akcent); color: #fff; }
#nrpage a, #nrpage .current, #nrpage .k-nieaktywny { display: inline-block; line-height: 1.4; vertical-align: middle; }
#nrpage .k-nieaktywny { margin-left: 3px; padding: 5px 11px; border: 1px solid var(--k-linia); border-radius: 6px; background: #fff; color: #000; opacity: .35; cursor: default; }
#nrpage a.k-strzalka, #nrpage .k-nieaktywny { font-weight: bold; }
#nrpage center { line-height: 2.4; }

/* --- stopka --------------------------------------------------------------- */
.k-stopka { background: var(--k-naglowek); color: #b9c1c9; text-align: center; padding: 18px 0; font: 13px/1.5 var(--k-czcionka); }
.k-stopka a, .k-stopka a:hover { color: #fff; }

/* przycisk „do góry” */
#scrollUp { bottom: 20px; right: 20px; }

/* --- wyszukiwarka --------------------------------------------------------- */
.k-ukryte { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.k-ikony a.k-szukaj-przycisk { color: var(--k-naglowek-tekst); display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; }
.k-ikony a.k-szukaj-przycisk[aria-expanded="true"] { color: var(--k-akcent-jasny); }
.k-szukaj-pasek { background: var(--k-naglowek); border-top: 1px solid rgba(255, 255, 255, .1); padding: 10px 0 12px; }
.k-szukaj-pasek[hidden] { display: none; }
.k-szukaj-pasek form, .k-szukaj-form { display: flex; gap: 8px; }
.k-szukaj-pasek input, .k-szukaj-form input {
	flex: 1 1 auto; min-width: 0; padding: 9px 12px; border: 1px solid #c9d0d7; border-radius: 6px;
	font: 16px var(--k-czcionka); color: var(--k-tekst); background: #fff;
}
.k-szukaj-pasek input:focus, .k-szukaj-form input:focus { outline: none; border-color: var(--k-akcent-jasny); box-shadow: 0 0 0 3px rgba(43, 138, 203, .25); }
.k-szukaj-pasek button {
	padding: 9px 18px; border: 0; border-radius: 6px; background: var(--k-akcent-jasny); color: #fff;
	font: 600 15px var(--k-czcionka); cursor: pointer;
}
.k-szukaj-pasek button:hover { background: var(--k-akcent); }
.k-szukaj-form { margin: 0 0 14px; max-width: 640px; }
.k-szukaj-info { color: var(--k-tekst-jasny); }
.k-tresc ol.k-szukaj-wyniki { list-style: none; margin: 0; padding: 0; }
.k-szukaj-wyniki li { padding: 12px 0; border-bottom: 1px solid var(--k-linia); }
.k-szukaj-wyniki li:last-child { border-bottom: 0; }
.k-szukaj-wyniki li > a { font-weight: 700; font-size: 16px; }
.k-szukaj-wyniki li p { margin: 4px 0 0; color: var(--k-tekst-jasny); font-size: 14px; overflow-wrap: break-word; }
.k-szukaj-typ {
	display: inline-block; margin-right: 6px; padding: 1px 8px; border-radius: 999px; vertical-align: 1px;
	background: var(--k-akcent-tlo); color: var(--k-akcent); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
}
.k-szukaj-wyniki mark { background: #fff1a8; color: inherit; padding: 0 1px; border-radius: 2px; }
.k-szukaj-podpowiedz { margin: -6px 0 12px; color: var(--k-tekst-jasny); font-size: 13px; }
.k-szukaj-podpowiedz code { background: var(--k-akcent-tlo); padding: 0 4px; border-radius: 3px; }
