/*
 * Panel "Koło Zadań" w WooCommerce -> Moje konto.
 *
 * Wszystko pod .sw-ma i z własnymi nazwami klas - motyw sklepu ma własne
 * style tabel, list i przycisków i bez tego zakresu potrafi je nadpisać
 * albo odwrotnie: nasze reguły wyciekłyby na resztę Mojego konta.
 */

.sw-ma {
	--sw-ma-zielen: #1b6e2f;
	--sw-ma-zielen-jasna: #eaf4ec;
	--sw-ma-tekst: #1b2220;
	--sw-ma-szary: #63736b;
	--sw-ma-linia: #e2e8e3;
	--sw-ma-tlo: #f6f8f6;
	--sw-ma-uwaga: #a8631a;

	color: var(--sw-ma-tekst);
	font-size: 15px;
	line-height: 1.55;
}

.sw-ma * { box-sizing: border-box; }
.sw-ma h2 { font-size: 1.4em; margin: 0 0 4px; }
.sw-ma h3 { font-size: 1.05em; margin: 0 0 12px; font-weight: 600; }
.sw-ma p { margin: 0 0 10px; }

.sw-ma-drobne { color: var(--sw-ma-szary); font-size: .88em; }

/* --- nagłówek ------------------------------------------------------ */
.sw-ma-head {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 20px;
	align-items: flex-start;
	justify-content: space-between;
	padding-bottom: 16px;
	border-bottom: 2px solid var(--sw-ma-linia);
	margin-bottom: 22px;
}
.sw-ma-head p { margin: 0; }
.sw-ma-head-prawa { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }

.sw-ma-plakietka {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 999px;
	font-size: .82em;
	font-weight: 600;
	white-space: nowrap;
}
.sw-ma-plakietka--ok { background: var(--sw-ma-zielen-jasna); color: var(--sw-ma-zielen); }
.sw-ma-plakietka--stop { background: #fbeaea; color: #9b2226; }

/* --- kafelki ------------------------------------------------------- */
.sw-ma-kafelki {
	display: grid;
	/* Od 1.51.0 próg jest niski (96px), bo kafelki mają zmieścić się w JEDNYM
	   rzędzie. Dwa rzędy wysokich kart zajmowały 259px i spychały pasek zakładek
	   poza pierwszy ekran - a to on jest tu nawigacją. Kafelki zostają na górze,
	   bo odpowiadają na „czy mogę dziś zagrać", ale w wersji na jedną linijkę. */
	grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
	gap: 8px;
	margin-bottom: 18px;
}
@media (max-width: 700px) {
	/* Ponizej tej szerokosci piec kafelkow i tak sie nie zmiesci w jednym
	   rzedzie - dwie rowne kolumny wygladaja lepiej niz przypadkowe 3 + 2. */
	.sw-ma-kafelki { grid-template-columns: repeat(2, 1fr); }
}
.sw-ma-kafel {
	background: #fff;
	border: 1px solid var(--sw-ma-linia);
	border-radius: 10px;
	padding: 10px 11px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.sw-ma-kafel-etykieta {
	font-size: .66em;
	text-transform: uppercase;
	letter-spacing: .07em;
	color: var(--sw-ma-szary);
	font-weight: 600;
}
.sw-ma-kafel-liczba {
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1.15;
	color: var(--sw-ma-zielen);
	font-variant-numeric: tabular-nums;
}
.sw-ma-kafel-liczba--tekst { font-size: 1em; line-height: 1.3; overflow-wrap: anywhere; }
.sw-ma-kafel-liczba.sw-ma-uwaga { color: var(--sw-ma-uwaga); }
.sw-ma-kafel-z { font-size: .5em; font-weight: 600; color: var(--sw-ma-szary); }
.sw-ma-kafel-opis { font-size: .74em; line-height: 1.3; color: var(--sw-ma-szary); }

/* --- sekcje -------------------------------------------------------- */
.sw-ma-sekcja {
	background: #fff;
	border: 1px solid var(--sw-ma-linia);
	border-radius: 12px;
	padding: 18px 20px;
	margin-bottom: 16px;
}

/* --- zakładki ------------------------------------------------------ */
.sw-ma [hidden] { display: none !important; }

.sw-ma-zakladki-blok { margin-top: 22px; }

.sw-ma-zakladki {
	display: flex;
	/* Jeden rząd, zawsze. Zawijanie robiło z paska zakładek dwuwierszową listę,
	   w której nie widać już, że to jeden zestaw przycisków. Gdyby na bardzo
	   wąskim ekranie i tak się nie mieściły, pasek przewija się w poziomie -
	   to nadal czytelniejsze niż złamany rząd. */
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: thin;
	gap: 0;
	/* Linia bazowa jako cień WEWNĄTRZ, nie border: overflow-x:auto włącza też
	   przewijanie w pionie, a aktywna zakładka wystawała 2px pod spodem (ujemny
	   margines na border-bottom) - i przy pasku pojawiał się pionowy suwak.
	   Cień nie zajmuje miejsca w układzie, więc nie ma czego przewijać. */
	box-shadow: inset 0 -2px 0 var(--sw-ma-linia);
}
.sw-ma-zakladka {
	appearance: none;
	background: none;
	border: none;
	border-bottom: 3px solid transparent;
	padding: 10px 12px;
	font: inherit;
	font-size: .9em;
	font-weight: 600;
	color: var(--sw-ma-szary);
	cursor: pointer;
	line-height: 1.4;
	white-space: nowrap;
}
.sw-ma-zakladka:hover { color: var(--sw-ma-tekst); }
.sw-ma-zakladka--wybrana {
	color: var(--sw-ma-zielen);
	border-bottom-color: var(--sw-ma-zielen);
}
.sw-ma-zakladka:focus-visible {
	outline: 2px solid var(--sw-ma-zielen);
	outline-offset: -3px;
	border-radius: 4px;
}

.sw-ma-zakladki-tresc {
	background: #fff;
	border: 1px solid var(--sw-ma-linia);
	border-top: none;
	border-radius: 0 0 12px 12px;
	padding: 18px 20px;
}
.sw-ma-panel:focus-visible { outline: 2px solid var(--sw-ma-zielen); outline-offset: 4px; border-radius: 6px; }

/* Bez JavaScriptu panele leżą jeden pod drugim - wtedy potrzebują odstępu
   i własnej kreski, żeby nie zlewały się w jedną ścianę tekstu. */
.sw-ma-panel + .sw-ma-panel {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--sw-ma-linia);
}

/* --- kody dostępu -------------------------------------------------- */
.sw-ma-kody, .sw-ma-nagrody, .sw-ma-poziomy, .sw-ma-odznaki, .sw-ma-oferta {
	list-style: none;
	margin: 0;
	padding: 0;
}
.sw-ma-kody li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	padding: 10px 0;
	border-bottom: 1px solid var(--sw-ma-linia);
}
.sw-ma-kody li:last-child { border-bottom: none; }

.sw-ma-kod {
	font-family: Consolas, Menlo, monospace;
	font-size: 1.02em;
	font-weight: 700;
	letter-spacing: .04em;
	color: var(--sw-ma-zielen);
	background: var(--sw-ma-zielen-jasna);
	padding: 4px 10px;
	border-radius: 6px;
	overflow-wrap: anywhere;
}
.sw-ma-kod-opis { color: var(--sw-ma-szary); font-size: .88em; }
.sw-ma-kod-status { font-size: .78em; color: var(--sw-ma-szary); margin-left: auto; }
.sw-ma-kod-status--nowy { color: var(--sw-ma-zielen); font-weight: 600; }

.sw-ma-kopiuj {
	border: 1px solid var(--sw-ma-linia);
	background: #fff;
	color: var(--sw-ma-tekst);
	border-radius: 6px;
	padding: 5px 12px;
	font-size: .82em;
	cursor: pointer;
	line-height: 1.4;
}
.sw-ma-kopiuj:hover { border-color: var(--sw-ma-zielen); color: var(--sw-ma-zielen); }
.sw-ma-kopiuj.sw-ma-skopiowane { background: var(--sw-ma-zielen); border-color: var(--sw-ma-zielen); color: #fff; }

/* --- wykres -------------------------------------------------------- */
.sw-ma-wykres { width: 100%; height: 110px; display: block; }
.sw-ma-wykres-os { stroke: var(--sw-ma-linia); stroke-width: .3; }
.sw-ma-slupek { fill: var(--sw-ma-zielen); }
.sw-ma-slupek--pusty { fill: var(--sw-ma-linia); }
.sw-ma-wykres-osie {
	display: flex;
	justify-content: space-between;
	font-size: .76em;
	color: var(--sw-ma-szary);
	margin-top: 2px;
}

/* --- poziomy ------------------------------------------------------- */
.sw-ma-poziomy li { padding: 12px 0; border-bottom: 1px solid var(--sw-ma-linia); }
.sw-ma-poziomy li:last-child { border-bottom: none; }
.sw-ma-poziom--zamkniety { opacity: .62; }
.sw-ma-poziom-top {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	align-items: baseline;
	margin-bottom: 6px;
}
.sw-ma-poziom-nazwa { font-weight: 600; }
.sw-ma-poziom-liczby { font-variant-numeric: tabular-nums; color: var(--sw-ma-szary); font-size: .9em; }
.sw-ma-pasek {
	height: 8px;
	background: var(--sw-ma-tlo);
	border-radius: 999px;
	overflow: hidden;
}
.sw-ma-pasek > span {
	display: block;
	height: 100%;
	background: var(--sw-ma-zielen);
	border-radius: 999px;
}
.sw-ma-poziom-dol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: 8px;
}

/* --- nagrody ------------------------------------------------------- */
.sw-ma-nagrody li {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
	align-items: center;
	padding: 12px 0;
	border-bottom: 1px solid var(--sw-ma-linia);
}
.sw-ma-nagrody li:last-child { border-bottom: none; }
.sw-ma-nagroda-opis { display: flex; flex-direction: column; margin-right: auto; min-width: 0; }
.sw-ma-nagroda-nazwa { font-weight: 600; }
.sw-ma-nagroda-akcja { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sw-ma-nagroda-nota { flex-basis: 100%; margin: 0; }

/* --- odznaki ------------------------------------------------------- */
.sw-ma-odznaki {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
	gap: 14px;
}
.sw-ma-odznaki li {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 4px;
}
.sw-ma-odznaki img { width: 52px; height: 52px; object-fit: contain; display: block; }
.sw-ma-odznaka-tytul { font-size: .8em; font-weight: 600; line-height: 1.3; }
.sw-ma-odznaka--brak img { filter: grayscale(1); opacity: .38; }
.sw-ma-odznaka--brak .sw-ma-odznaka-tytul { color: var(--sw-ma-szary); font-weight: 500; }

/* --- tabela historii ----------------------------------------------- */
.sw-ma-tabela-scroll { overflow-x: auto; }
.sw-ma-tabela { width: 100%; border-collapse: collapse; font-size: .9em; }
.sw-ma-tabela th {
	text-align: left;
	font-size: .76em;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--sw-ma-szary);
	padding: 6px 10px 6px 0;
	white-space: nowrap;
}
.sw-ma-tabela td { padding: 8px 10px 8px 0; border-top: 1px solid var(--sw-ma-linia); vertical-align: top; }

/* --- oferta zakupu -------------------------------------------------- */
.sw-ma-oferta li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 14px;
	padding: 11px 0;
	border-bottom: 1px solid var(--sw-ma-linia);
}
.sw-ma-oferta li:last-child { border-bottom: none; }
.sw-ma-oferta li > div { display: flex; flex-direction: column; margin-right: auto; min-width: 0; }
.sw-ma-oferta-nazwa { font-weight: 600; }
.sw-ma-oferta-cena { font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }

/* --- polecenia ----------------------------------------------------- */
.sw-ma-polec {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 10px;
	margin: 0 0 18px;
}
.sw-ma-kod--link {
	font-size: .85em;
	font-weight: 500;
	letter-spacing: 0;
	flex: 1 1 260px;
	min-width: 0;
	padding: 8px 10px;
}

/* --- przyciski ------------------------------------------------------ */
.sw-ma-btn {
	display: inline-block;
	border: 1px solid var(--sw-ma-zielen);
	color: var(--sw-ma-zielen);
	background: #fff;
	border-radius: 6px;
	padding: 6px 14px;
	font-size: .86em;
	font-weight: 600;
	text-decoration: none;
	line-height: 1.5;
}
.sw-ma-btn:hover { background: var(--sw-ma-zielen-jasna); color: var(--sw-ma-zielen); }
.sw-ma-btn--glowny { background: var(--sw-ma-zielen); color: #fff; }
.sw-ma-btn--glowny:hover { background: #14532a; color: #fff; }

/* --- stan pusty ------------------------------------------------------ */
.sw-ma-pusty { max-width: 620px; }
.sw-ma-aktywacja { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 6px; }
.sw-ma-aktywacja input {
	flex: 1 1 220px;
	min-width: 0;
	padding: 9px 12px;
	border: 1px solid var(--sw-ma-linia);
	border-radius: 6px;
	font-family: Consolas, Menlo, monospace;
	font-size: 1em;
}
.sw-ma-msg { min-height: 1.4em; font-size: .9em; }
.sw-ma-msg--ok { color: var(--sw-ma-zielen); font-weight: 600; }
.sw-ma-msg--blad { color: #9b2226; }

@media (max-width: 600px) {
	.sw-ma-zakladka { padding: 10px 9px; font-size: .84em; }
	.sw-ma-zakladki-tresc { padding: 16px 14px; }

	.sw-ma-kafel-liczba { font-size: 1.6em; }
	.sw-ma-kod-status { margin-left: 0; }
	.sw-ma-head { flex-direction: column; }
}

/* --- postęp w zadaniach: odhaczanie i notatki ----------------------- */

/* Etykieta widoczna tylko dla czytników ekranu - checkbox bez opisu jest
   dla nich bezużyteczny, ale wypisany tytuł zadania zdublowałby kolumnę obok. */
.sw-ma-ukryte {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.sw-ma-hist-pasek {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	margin: 0 0 12px;
}
.sw-ma-hist-pasek p { margin: 0; }
.sw-ma-hist-filtr {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: .88em;
	color: var(--sw-ma-szary);
	cursor: pointer;
	white-space: nowrap;
}
.sw-ma-hist-filtr input { margin: 0; }

.sw-ma-tabela--historia td { vertical-align: top; }
/* Szerokość podyktowana nagłówkiem "ZROBIONE", nie samym polem wyboru -
   kolumna z checkboxami bez podpisu nie mówi nic o tym, co robi. */
.sw-ma-th-check { width: 76px; text-align: center !important; }
.sw-ma-hist-check { width: 76px; text-align: center; padding-right: 4px !important; }
/* Ten sam malowany checkbox co na kole - appearance:none zamiast atrapy,
   żeby Tab, spacja i etykieta nadal działały. */
.sw-ma-hist-check input {
	appearance: none;
	-webkit-appearance: none;
	width: 22px;
	height: 22px;
	margin: 1px 0 0;
	border: 2px solid #c3d2c7;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
	display: inline-grid;
	place-content: center;
	transition: background .15s ease, border-color .15s ease;
}
.sw-ma-hist-check input:hover { border-color: var(--sw-ma-zielen); }
.sw-ma-hist-check input::before {
	content: '';
	width: 12px;
	height: 12px;
	transform: scale(0);
	transition: transform .12s ease-in-out;
	background: #fff;
	clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
.sw-ma-hist-check input:checked { background: var(--sw-ma-zielen); border-color: var(--sw-ma-zielen); }
.sw-ma-hist-check input:checked::before { transform: scale(1); }
.sw-ma-hist-check input:focus-visible { outline: 2px solid var(--sw-ma-zielen); outline-offset: 2px; }

/* Filtr nad tabelą dostaje ten sam wygląd, żeby dwa checkboxy obok siebie
   nie wyglądały jak z dwóch różnych stron. */
.sw-ma-hist-filtr input {
	appearance: none;
	-webkit-appearance: none;
	width: 18px;
	height: 18px;
	border: 2px solid #c3d2c7;
	border-radius: 5px;
	background: #fff;
	cursor: pointer;
	display: inline-grid;
	place-content: center;
}
.sw-ma-hist-filtr input::before {
	content: '';
	width: 10px;
	height: 10px;
	transform: scale(0);
	transition: transform .12s ease-in-out;
	background: #fff;
	clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
.sw-ma-hist-filtr input:checked { background: var(--sw-ma-zielen); border-color: var(--sw-ma-zielen); }
.sw-ma-hist-filtr input:checked::before { transform: scale(1); }
.sw-ma-hist-filtr input:focus-visible { outline: 2px solid var(--sw-ma-zielen); outline-offset: 2px; }

/* Pobieranie pliku zadania - goły odnośnik ginął w tabeli obok dat. */
.sw-ma-pobierz {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px;
	border: 1px solid #c8e0ce;
	border-radius: 8px;
	background: var(--sw-ma-zielen-jasna);
	color: var(--sw-ma-zielen);
	font-size: .88em;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.sw-ma-pobierz::before { content: '\2193'; font-weight: 700; }
.sw-ma-pobierz:hover { background: var(--sw-ma-zielen); border-color: var(--sw-ma-zielen); color: #fff; }
.sw-ma-pobierz:focus-visible { outline: 2px solid var(--sw-ma-zielen); outline-offset: 2px; }
.sw-ma-hist-check label { display: block; }

.sw-ma-hist-tytul { display: inline; }
/* Zrobione zadanie ma zejść na drugi plan, ale zostać czytelne - samo
   przekreślenie przy 200 pozycjach zamienia listę w gąszcz. */
.sw-ma-hist-wiersz--zrobione .sw-ma-hist-tytul {
	color: var(--sw-ma-szary);
	text-decoration: line-through;
	text-decoration-color: var(--sw-ma-linia);
}

.sw-ma-notatka-toggle {
	display: inline-block;
	margin-left: 8px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--sw-ma-zielen);
	font-size: .85em;
	cursor: pointer;
	white-space: nowrap;
}
.sw-ma-notatka-toggle:hover { text-decoration: underline; }
.sw-ma-notatka-toggle:focus-visible { outline: 2px solid var(--sw-ma-zielen); outline-offset: 2px; border-radius: 3px; }

.sw-ma-notatka-podglad {
	display: block;
	margin-top: 3px;
	padding-left: 10px;
	border-left: 2px solid var(--sw-ma-linia);
	color: var(--sw-ma-szary);
	font-size: .85em;
	font-style: italic;
}

.sw-ma-notatka { margin-top: 8px; max-width: 420px; }
.sw-ma-notatka-pole {
	width: 100%;
	padding: 7px 9px;
	border: 1px solid var(--sw-ma-linia);
	border-radius: 6px;
	font: inherit;
	font-size: .92em;
	line-height: 1.45;
	resize: vertical;
}
.sw-ma-notatka-pole:focus {
	outline: 2px solid var(--sw-ma-zielen);
	outline-offset: 1px;
	border-color: var(--sw-ma-zielen);
}
.sw-ma-notatka-stan {
	display: block;
	min-height: 1.2em;
	margin-top: 3px;
	font-size: .8em;
	color: var(--sw-ma-szary);
}

/* --- zmiana adresu e-mail ------------------------------------------ */

.sw-ma-email-teraz {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin: 0 0 10px;
}
.sw-ma-email-form {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid var(--sw-ma-linia);
}
.sw-ma-email-form label {
	display: block;
	font-size: .88em;
	font-weight: 600;
	color: var(--sw-ma-szary);
}
.sw-ma-email-form .sw-ma-aktywacja { margin-top: 6px; }

.sw-ma-msg--duzy {
	margin: 0 0 18px;
	padding: 12px 14px;
	border-radius: 8px;
	background: var(--sw-ma-zielen-jasna);
}
.sw-ma-msg--duzy.sw-ma-msg--blad { background: #fdecec; }


/* --- pobranie kompletu zadań --------------------------------------- */

.sw-ma-eksport {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 16px;
	padding: 14px 16px;
	border: 1px solid #c8e0ce;
	border-radius: 10px;
	background: var(--sw-ma-zielen-jasna);
}
.sw-ma-eksport > div { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sw-ma-eksport .sw-ma-btn { white-space: nowrap; }

/* --- certyfikat ---------------------------------------------------- */

.sw-ma-certyfikaty { list-style: none; margin: 14px 0 0; padding: 0; }
.sw-ma-certyfikaty > li + li {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid var(--sw-ma-linia);
}
.sw-ma-cert-top {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 6px;
}
.sw-ma-cert-nazwa { font-weight: 600; }

/* Procent to najważniejsza liczba w tym bloku - czerwony, dopóki brakuje
   do progu, zielony od progu w górę. Kolor jest tu informacją, nie ozdobą,
   więc obok zawsze stoi też liczba "X z Y" dla osób nierozróżniających barw. */
.sw-ma-cert-procent {
	font-size: 1.15em;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.sw-ma-cert--brak { color: #b3261e; }
.sw-ma-cert--ok { color: var(--sw-ma-zielen); }

.sw-ma-pasek--brak { background: #d9534f !important; }

.sw-ma-cert-dol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-top: 8px;
}
.sw-ma-cert-dol .sw-ma-btn { white-space: nowrap; }
.sw-ma-btn[disabled] {
	opacity: .55;
	cursor: not-allowed;
	border-style: dashed;
}
.sw-ma-btn[disabled]:hover { background: none; color: inherit; }

.sw-ma-podtytul {
	margin: 18px 0 6px;
	font-size: .95em;
	font-weight: 700;
	color: var(--sw-ma-tekst);
}
.sw-ma-panel > .sw-ma-podtytul:first-child { margin-top: 0; }

/* --- obce bloki na stronie „Moje konto" ----------------------------

   Strona konta bywa jedną stroną kreatora: nasz panel renderuje się w środku
   [woocommerce_my_account], a obok, jako osobne sekcje, stoją bloki nie należące
   do żadnej zakładki (profil i lista kursów LearnDash). Widnieją więc pod każdą
   opcją konta - także pod naszą. PHP wygasza ich shortcody i zostawia znacznik
   .sw-obcy-blok; tutaj chowamy całą sekcję, żeby nie została po niej dziura.

   Selektory celowo nie używają żadnego ID sekcji kreatora - te zmieniają się przy
   każdej przebudowie strony. Zamiast tego pytamy o TREŚĆ: sekcję zawierającą nasz
   znacznik oraz przycisk prowadzący do kotwicy, której na tej zakładce już nie ma
   (wraz z akapitem, który ten przycisk zapowiada). */

.sw-konto-kolo-zadan .elementor-section:has( .sw-obcy-blok ),
.sw-konto-kolo-zadan .elementor-widget-button:has( a[href$="#szkolenia"] ),
.sw-konto-kolo-zadan .elementor-widget-text-editor:has( + .elementor-widget-button a[href$="#szkolenia"] ) {
	display: none !important;
}

/* --- bloki przeniesione z góry strony do zakładek (1.51.0) -----------

   „Twoje kody dostępu", „Adres e-mail dostępu" i wykres aktywności były
   osobnymi kartami nad paskiem zakładek. Teraz siedzą w panelach („Dostęp"
   i „Postęp"), więc nie potrzebują własnego tła ani ramki - panel już je ma.
   Zostaje sam odstęp między nimi i podtytuły jako rozdzielacze. */

.sw-ma-panel > .sw-ma-podtytul:not(:first-child) { margin-top: 26px; }
.sw-ma-email { margin-top: 0; }
.sw-ma-aktywnosc { margin-top: 4px; }
