/*
Theme Name: PP – Kadence Child
Theme URI: https://pp.novaedu.pl/
Description: Motyw potomny Kadence dla PP NovaEdu.
Author: NovaEdu
Author URI: https://novaedu.pl/
Template: kadence
Version: 1.0.0
Text Domain: pp-kadence-child
*/

/*
 * Własne style PP dodawaj poniżej.
 */

 /* =========================================================
 * NovaEdu — panel programu partnerskiego
 * ======================================================= */

body.novaedu-pp-dashboard-page #inner-wrap {
	background: #f5f7fb;
}

/* Usunięcie dużego nagłówka/hero Kadence. */
body.novaedu-pp-dashboard-page .entry-hero,
body.novaedu-pp-dashboard-page .page-hero-section {
	display: none !important;
}

body.novaedu-pp-dashboard-page #primary,
body.novaedu-pp-dashboard-page .content-area {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

body.novaedu-pp-dashboard-page .entry-content-wrap {
	padding: clamp(24px, 4vw, 56px) !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.novaedu-pp-dashboard-page .entry-content {
	max-width: 1480px;
	margin: 0 auto;
}

/* Nagłówek podobny do AcademyLMS. */
.novaedu-pp-dashboard-title {
	margin: 0 0 24px !important;
	padding: 24px 30px;
	background: #fff;
	border: 1px solid #e6e9ef;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(30, 41, 59, 0.06);
	color: #171c29;
	font-size: clamp(26px, 3vw, 36px);
	line-height: 1.2;
}

/* Główny układ: menu po lewej, treść po prawej. */
#slicewp-affiliate-account.slicewp-menu-left {
	align-items: flex-start;
	gap: 24px !important;
}

/* Lewa nawigacja. */
#slicewp-affiliate-account.slicewp-menu-left
#slicewp-affiliate-account-nav-tab {
	flex: 0 0 270px;
	position: sticky;
	top: 24px;
	padding: 18px;
	background: #fff;
	border: 1px solid #e6e9ef;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(30, 41, 59, 0.06);
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper {
	width: 100%;
	margin: 0 !important;
	gap: 7px;
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab {
	width: 100%;
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab a {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 12px 14px !important;
	border: 0 !important;
	border-radius: 10px;
	color: #273247;
	font-weight: 600;
	transition: background-color 0.18s ease, color 0.18s ease;
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab a:hover,
#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab.slicewp-active a {
	background: #f0edff;
	color: #6754e9;
}

#slicewp-affiliate-account .slicewp-nav-tab svg {
	flex: 0 0 21px;
	width: 21px;
	height: 21px;
	margin: 0;
}

/* Wyróżnienie powrotu do platformy. */
#slicewp-affiliate-account
.slicewp-nav-tab:has(a[href^="https://platforma.novaedu.pl"]) {
	margin-top: 8px !important;
	padding-top: 14px !important;
	border-top: 1px solid #e6e9ef;
}

#slicewp-affiliate-account
a[href^="https://platforma.novaedu.pl"] {
	color: #6754e9;
}

/* Prawa karta z treścią. */
#slicewp-affiliate-account.slicewp-menu-left
#slicewp-affiliate-account-tab {
	flex: 1;
	min-width: 0;
	min-height: 520px;
	padding: clamp(20px, 3vw, 32px);
	background: #fff;
	border: 1px solid #e6e9ef;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(30, 41, 59, 0.06);
}

#slicewp-affiliate-account-tab > .slicewp-tab.slicewp-active {
	margin-top: 0;
}

#slicewp-affiliate-account .slicewp-card,
#slicewp-affiliate-account .slicewp-list-table-wrapper {
	overflow: hidden;
	border-radius: 12px;
}

/* Telefon i tablet: przewijane menu nad treścią. */
@media screen and (max-width: 900px) {
	body.novaedu-pp-dashboard-page .entry-content-wrap {
		padding: 18px !important;
	}

	.novaedu-pp-dashboard-title {
		padding: 20px;
		margin-bottom: 16px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left {
		display: block !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-nav-tab {
		position: static;
		width: 100%;
		padding: 10px;
		overflow-x: auto;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper {
		display: flex !important;
		flex-flow: row nowrap !important;
		width: max-content !important;
		min-width: 100%;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper .slicewp-nav-tab {
		width: auto;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper .slicewp-nav-tab a {
		white-space: nowrap;
	}

	#slicewp-affiliate-account
	.slicewp-nav-tab-wrapper .slicewp-nav-tab span:last-of-type {
		display: inline !important;
	}

	#slicewp-affiliate-account
	.slicewp-nav-tab:has(a[href^="https://platforma.novaedu.pl"]) {
		margin-top: 0 !important;
		padding-top: 0 !important;
		border-top: 0;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-tab {
		margin-top: 16px;
		min-height: 0;
		padding: 18px;
	}
}/* =========================================================
 * NovaEdu — panel programu partnerskiego
 * ======================================================= */

body.novaedu-pp-dashboard-page #inner-wrap {
	background: #f5f7fb;
}

/* Usunięcie dużego nagłówka/hero Kadence. */
body.novaedu-pp-dashboard-page .entry-hero,
body.novaedu-pp-dashboard-page .page-hero-section {
	display: none !important;
}

body.novaedu-pp-dashboard-page #primary,
body.novaedu-pp-dashboard-page .content-area {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

body.novaedu-pp-dashboard-page .entry-content-wrap {
	padding: clamp(24px, 4vw, 56px) !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.novaedu-pp-dashboard-page .entry-content {
	max-width: 1480px;
	margin: 0 auto;
}

/* Nagłówek podobny do AcademyLMS. */
.novaedu-pp-dashboard-title {
	margin: 0 0 24px !important;
	padding: 24px 30px;
	background: #fff;
	border: 1px solid #e6e9ef;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(30, 41, 59, 0.06);
	color: #171c29;
	font-size: clamp(26px, 3vw, 36px);
	line-height: 1.2;
}

/* Główny układ: menu po lewej, treść po prawej. */
#slicewp-affiliate-account.slicewp-menu-left {
	align-items: flex-start;
	gap: 24px !important;
}

/* Lewa nawigacja. */
#slicewp-affiliate-account.slicewp-menu-left
#slicewp-affiliate-account-nav-tab {
	flex: 0 0 270px;
	position: sticky;
	top: 24px;
	padding: 18px;
	background: #fff;
	border: 1px solid #e6e9ef;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(30, 41, 59, 0.06);
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper {
	width: 100%;
	margin: 0 !important;
	gap: 7px;
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab {
	width: 100%;
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab a {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 12px 14px !important;
	border: 0 !important;
	border-radius: 10px;
	color: #273247;
	font-weight: 600;
	transition: background-color 0.18s ease, color 0.18s ease;
}

#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab a:hover,
#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper .slicewp-nav-tab.slicewp-active a {
	background: #f0edff;
	color: #6754e9;
}

#slicewp-affiliate-account .slicewp-nav-tab svg {
	flex: 0 0 21px;
	width: 21px;
	height: 21px;
	margin: 0;
}

/* Wyróżnienie powrotu do platformy. */
#slicewp-affiliate-account
.slicewp-nav-tab:has(a[href^="https://platforma.novaedu.pl"]) {
	margin-top: 8px !important;
	padding-top: 14px !important;
	border-top: 1px solid #e6e9ef;
}

#slicewp-affiliate-account
a[href^="https://platforma.novaedu.pl"] {
	color: #6754e9;
}

/* Prawa karta z treścią. */
#slicewp-affiliate-account.slicewp-menu-left
#slicewp-affiliate-account-tab {
	flex: 1;
	min-width: 0;
	min-height: 520px;
	padding: clamp(20px, 3vw, 32px);
	background: #fff;
	border: 1px solid #e6e9ef;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(30, 41, 59, 0.06);
}

#slicewp-affiliate-account-tab > .slicewp-tab.slicewp-active {
	margin-top: 0;
}

#slicewp-affiliate-account .slicewp-card,
#slicewp-affiliate-account .slicewp-list-table-wrapper {
	overflow: hidden;
	border-radius: 12px;
}

/* Telefon i tablet: przewijane menu nad treścią. */
@media screen and (max-width: 900px) {
	body.novaedu-pp-dashboard-page .entry-content-wrap {
		padding: 18px !important;
	}

	.novaedu-pp-dashboard-title {
		padding: 20px;
		margin-bottom: 16px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left {
		display: block !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-nav-tab {
		position: static;
		width: 100%;
		padding: 10px;
		overflow-x: auto;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper {
		display: flex !important;
		flex-flow: row nowrap !important;
		width: max-content !important;
		min-width: 100%;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper .slicewp-nav-tab {
		width: auto;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper .slicewp-nav-tab a {
		white-space: nowrap;
	}

	#slicewp-affiliate-account
	.slicewp-nav-tab-wrapper .slicewp-nav-tab span:last-of-type {
		display: inline !important;
	}

	#slicewp-affiliate-account
	.slicewp-nav-tab:has(a[href^="https://platforma.novaedu.pl"]) {
		margin-top: 0 !important;
		padding-top: 0 !important;
		border-top: 0;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-tab {
		margin-top: 16px;
		min-height: 0;
		padding: 18px;
	}
}
/* Nagłówek generowany wewnątrz panelu SliceWP. */
.novaedu-pp-dashboard-title h1 {
	margin: 0;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

/* Układ identyczny koncepcyjnie z AcademyLMS:
 * menu po lewej, nagłówek i treść po prawej.
 */
@media screen and (min-width: 901px) {
	#slicewp-affiliate-account.slicewp-menu-left {
		display: grid !important;
		grid-template-columns: 270px minmax(0, 1fr);
		grid-template-areas:
			"navigation heading"
			"navigation content";
		align-items: start;
		gap: 24px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	.novaedu-pp-dashboard-title {
		grid-area: heading;
		margin: 0 !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-nav-tab {
		grid-area: navigation;
	}

	#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-tab {
		grid-area: content;
	}
}
/* =========================================================
 * NovaEdu PP — strona logowania
 * ======================================================= */

body.novaedu-pp-login-home #inner-wrap,
body.novaedu-pp-login-home .site-main {
	background: #f5f7fb !important;
}

body.novaedu-pp-login-home .entry-hero,
body.novaedu-pp-login-home .entry-hero-container-inner,
body.novaedu-pp-login-home .page-hero-section,
body.novaedu-pp-login-home .entry-header {
	display: none !important;
}

body.novaedu-pp-login-home #primary,
body.novaedu-pp-login-home .content-area {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

body.novaedu-pp-login-home .content-container {
	max-width: none !important;
	padding: 0 !important;
}

body.novaedu-pp-login-home .entry-content-wrap {
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.novaedu-pp-login-home .entry-content {
	margin: 0 !important;
}

/* Główny układ. */

.novaedu-pp-login-page {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: calc(100svh - 80px);
	padding: 48px 20px;
	background:
		radial-gradient(
			circle at top,
			rgba(103, 84, 233, 0.09),
			transparent 38%
		),
		#f5f7fb;
}

.novaedu-pp-login-card {
	width: 100%;
	max-width: 640px;
	padding: clamp(28px, 5vw, 48px);
	background: #fff;
	border: 1px solid #e6e9ef;
	border-radius: 20px;
	box-shadow: 0 18px 50px rgba(30, 41, 59, 0.09);
}

.novaedu-pp-login-brand {
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	margin: 0 auto 20px;
	color: #fff;
	background: linear-gradient(135deg, #7968ef, #5744dd);
	border-radius: 18px;
	box-shadow: 0 12px 25px rgba(103, 84, 233, 0.25);
	font-size: 34px;
	font-weight: 800;
	line-height: 1;
}

.novaedu-pp-login-header {
	margin-bottom: 28px;
	text-align: center;
}

.novaedu-pp-login-header h1 {
	margin: 0 0 10px;
	color: #171c29;
	font-size: clamp(30px, 5vw, 40px);
	font-weight: 750;
	line-height: 1.2;
}

.novaedu-pp-login-header p {
	margin: 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.6;
}

/* OIDC / Authentik. */

.novaedu-pp-login-sso .openid-connect-login-button {
	margin: 0 !important;
	text-align: initial !important;
}

.novaedu-pp-login-sso
.openid-connect-login-button
a.button.button-large {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 100%;
	min-height: 56px;
	margin: 0;
	padding: 12px 20px !important;
	color: #fff !important;
	background: #6754e9 !important;
	border: 0 !important;
	border-radius: 12px !important;
	box-shadow: 0 10px 22px rgba(103, 84, 233, 0.22) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	transition:
		transform 0.18s ease,
		background-color 0.18s ease,
		box-shadow 0.18s ease;
}

.novaedu-pp-login-sso
.openid-connect-login-button
a.button.button-large::before {
	content: "N";
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	color: #6754e9;
	background: #fff;
	border-radius: 8px;
	font-size: 17px;
	font-weight: 800;
}

.novaedu-pp-login-sso
.openid-connect-login-button
a.button.button-large:hover {
	background: #5946dc !important;
	box-shadow: 0 13px 28px rgba(103, 84, 233, 0.3) !important;
	transform: translateY(-1px);
}

/* Separator. */

.novaedu-pp-login-divider {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 28px 0;
	color: #7b8496;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
}

.novaedu-pp-login-divider::before,
.novaedu-pp-login-divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: #e6e9ef;
}

/* Formularz SliceWP. */

.novaedu-pp-login-traditional form {
	margin: 0;
}

.novaedu-pp-login-traditional .slicewp-field-wrapper {
	margin: 0 0 18px !important;
}

.novaedu-pp-login-traditional .slicewp-field-label-wrapper {
	margin-bottom: 8px;
}

.novaedu-pp-login-traditional
.slicewp-field-label-wrapper label {
	color: #273247;
	font-size: 14px;
	font-weight: 650;
}

.novaedu-pp-login-traditional
.slicewp-field-wrapper input[type="text"],
.novaedu-pp-login-traditional
.slicewp-field-wrapper input[type="email"],
.novaedu-pp-login-traditional
.slicewp-field-wrapper input[type="password"],
.novaedu-pp-login-traditional
.slicewp-field-wrapper input[type="url"],
.novaedu-pp-login-traditional
.slicewp-field-wrapper select,
.novaedu-pp-login-traditional
.slicewp-field-wrapper textarea {
	width: 100% !important;
	min-height: 52px;
	margin: 0;
	padding: 0 16px !important;
	color: #171c29;
	background: #fbfcfe !important;
	border: 1px solid #dfe3ea !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	font-size: 15px;
	transition:
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		background-color 0.18s ease;
}

.novaedu-pp-login-traditional
.slicewp-field-wrapper input:hover,
.novaedu-pp-login-traditional
.slicewp-field-wrapper input:focus,
.novaedu-pp-login-traditional
.slicewp-field-wrapper select:focus,
.novaedu-pp-login-traditional
.slicewp-field-wrapper textarea:focus {
	background: #fff !important;
	border-color: #6754e9 !important;
	box-shadow: 0 0 0 4px rgba(103, 84, 233, 0.1) !important;
	outline: none !important;
}

.novaedu-pp-login-traditional input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	margin-right: 8px;
	accent-color: #6754e9;
}

.novaedu-pp-login-traditional a {
	color: #6754e9;
	font-weight: 600;
	text-decoration: none;
}

.novaedu-pp-login-traditional a:hover {
	text-decoration: underline;
}

/* Przycisk SliceWP. */

.novaedu-pp-login-traditional .slicewp-button-primary,
.novaedu-pp-login-traditional input[type="submit"] {
	width: 100% !important;
	min-height: 52px;
	padding: 12px 20px !important;
	color: #6754e9 !important;
	background: #f0edff !important;
	border: 1px solid rgba(103, 84, 233, 0.18) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	cursor: pointer;
	transition:
		background-color 0.18s ease,
		transform 0.18s ease;
}

.novaedu-pp-login-traditional .slicewp-button-primary:hover,
.novaedu-pp-login-traditional input[type="submit"]:hover {
	background: #e6e0ff !important;
	transform: translateY(-1px);
}

/* Komunikaty formularza. */

.novaedu-pp-login-traditional .slicewp-form-message,
.novaedu-pp-login-traditional .slicewp-user-notice {
	margin: 0 0 18px;
	padding: 12px 14px;
	border-radius: 10px;
	font-size: 14px;
}

.novaedu-pp-login-already-logged {
	text-align: center;
}

.novaedu-pp-login-already-logged a {
	display: inline-flex;
	padding: 14px 22px;
	color: #fff;
	background: #6754e9;
	border-radius: 12px;
	font-weight: 700;
	text-decoration: none;
}

/* Telefon. */

@media screen and (max-width: 600px) {
	.novaedu-pp-login-page {
		min-height: calc(100svh - 40px);
		padding: 20px 14px;
	}

	.novaedu-pp-login-card {
		padding: 28px 20px;
		border-radius: 16px;
	}

	.novaedu-pp-login-brand {
		width: 56px;
		height: 56px;
		border-radius: 15px;
		font-size: 29px;
	}

	.novaedu-pp-login-divider {
		gap: 10px;
	}
}
/* =========================================================
 * PP NovaEdu — jednolite tło całej aplikacji
 * ======================================================= */

html,
body.novaedu-pp-login-home,
body.novaedu-pp-dashboard-page,
body.novaedu-pp-login-home #page,
body.novaedu-pp-dashboard-page #page,
body.novaedu-pp-login-home #inner-wrap,
body.novaedu-pp-dashboard-page #inner-wrap,
body.novaedu-pp-login-home .site-main,
body.novaedu-pp-dashboard-page .site-main,
body.novaedu-pp-login-home .content-area,
body.novaedu-pp-dashboard-page .content-area,
body.novaedu-pp-login-home .content-container,
body.novaedu-pp-dashboard-page .content-container {
	background-color: #f5f7fb !important;
}

body.novaedu-pp-login-home #page,
body.novaedu-pp-dashboard-page #page,
body.novaedu-pp-login-home #inner-wrap,
body.novaedu-pp-dashboard-page #inner-wrap {
	min-height: 100vh;
}
/* =========================================================
 * PP NovaEdu — jednolite tło całej aplikacji
 * ======================================================= */

html,
body.novaedu-pp-login-home,
body.novaedu-pp-dashboard-page,
body.novaedu-pp-login-home #page,
body.novaedu-pp-dashboard-page #page,
body.novaedu-pp-login-home #inner-wrap,
body.novaedu-pp-dashboard-page #inner-wrap,
body.novaedu-pp-login-home .site-main,
body.novaedu-pp-dashboard-page .site-main,
body.novaedu-pp-login-home .content-area,
body.novaedu-pp-dashboard-page .content-area,
body.novaedu-pp-login-home .content-container,
body.novaedu-pp-dashboard-page .content-container {
	background-color: #f5f7fb !important;
}

body.novaedu-pp-login-home #page,
body.novaedu-pp-dashboard-page #page,
body.novaedu-pp-login-home #inner-wrap,
body.novaedu-pp-dashboard-page #inner-wrap {
	min-height: 100vh;
}
/* PP — pełne szare tło panelu SliceWP */

html:has(#slicewp-affiliate-account),
body:has(#slicewp-affiliate-account) {
	background: #f5f7fb !important;
}

body:has(#slicewp-affiliate-account) :is(
	#page,
	#wrapper,
	#inner-wrap,
	#primary,
	#main,
	.site,
	.site-content,
	.site-main,
	.content-area,
	.content-container,
	.site-container,
	.content-bg,
	article.entry,
	.entry-content-wrap,
	.entry-content
) {
	background-color: #f5f7fb !important;
	background-image: none !important;
}


/* NOVAEDU PP BLUE V1 START */

/* Wspólne tło PP */
html:has(body.novaedu-pp-login-home),
body.novaedu-pp-login-home,
body.novaedu-pp-dashboard-page,
body.novaedu-pp-login-home #page,
body.novaedu-pp-dashboard-page #page,
body.novaedu-pp-login-home #inner-wrap,
body.novaedu-pp-dashboard-page #inner-wrap,
body.novaedu-pp-login-home .site-main,
body.novaedu-pp-dashboard-page .site-main,
html:has(#slicewp-affiliate-account),
body:has(#slicewp-affiliate-account) {
	background-color: #f4f7fb !important;
	background-image: none !important;
}

/* Nawigacja panelu PP */
#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper
.slicewp-nav-tab a:hover,
#slicewp-affiliate-account.slicewp-menu-left
.slicewp-nav-tab-wrapper
.slicewp-nav-tab.slicewp-active a {
	color: #006f9b !important;
	background: #e7f7fc !important;
}

#slicewp-affiliate-account
.slicewp-nav-tab.slicewp-active svg,
#slicewp-affiliate-account
.slicewp-nav-tab:hover svg {
	color: #008bc2 !important;
	stroke: currentColor;
}

#slicewp-affiliate-account a[href^="https://platforma.novaedu.pl"] {
	color: #006f9b !important;
}

body.novaedu-pp-dashboard-page
#slicewp-affiliate-account
.slicewp-button-primary,
body.novaedu-pp-dashboard-page
#slicewp-affiliate-account
input[type="submit"] {
	color: #fff !important;
	background: #008bc2 !important;
	border-color: #008bc2 !important;
}

body.novaedu-pp-dashboard-page
#slicewp-affiliate-account
.slicewp-button-primary:hover,
body.novaedu-pp-dashboard-page
#slicewp-affiliate-account
input[type="submit"]:hover {
	background: #006f9b !important;
	border-color: #006f9b !important;
}

body.novaedu-pp-dashboard-page
#slicewp-affiliate-account
input:focus,
body.novaedu-pp-dashboard-page
#slicewp-affiliate-account
select:focus,
body.novaedu-pp-dashboard-page
#slicewp-affiliate-account
textarea:focus {
	border-color: #008bc2 !important;
	box-shadow: 0 0 0 4px rgba(0, 139, 194, 0.12) !important;
}

/* Ekran logowania PP */
.novaedu-pp-login-page {
	background:
		radial-gradient(circle at 15% 8%, rgba(0, 139, 194, 0.15), transparent 32%),
		radial-gradient(circle at 88% 92%, rgba(0, 139, 194, 0.09), transparent 34%),
		#f4f7fb !important;
}

.novaedu-pp-login-brand {
	background: linear-gradient(135deg, #008bc2, #006f9b) !important;
	box-shadow: 0 12px 26px rgba(0, 139, 194, 0.24) !important;
}

.novaedu-pp-login-sso .openid-connect-login-button a.button.button-large {
	color: #fff !important;
	background: linear-gradient(135deg, #008bc2, #006f9b) !important;
	box-shadow: 0 11px 24px rgba(0, 139, 194, 0.23) !important;
}

.novaedu-pp-login-sso .openid-connect-login-button a.button.button-large::before {
	color: #006f9b !important;
}

.novaedu-pp-login-sso .openid-connect-login-button a.button.button-large:hover {
	background: linear-gradient(135deg, #006f9b, #005574) !important;
	box-shadow: 0 14px 29px rgba(0, 111, 155, 0.28) !important;
}

.novaedu-pp-login-traditional
.slicewp-field-wrapper input:hover,
.novaedu-pp-login-traditional
.slicewp-field-wrapper input:focus,
.novaedu-pp-login-traditional
.slicewp-field-wrapper select:focus,
.novaedu-pp-login-traditional
.slicewp-field-wrapper textarea:focus {
	border-color: #008bc2 !important;
	box-shadow: 0 0 0 4px rgba(0, 139, 194, 0.12) !important;
}

.novaedu-pp-login-traditional input[type="checkbox"] {
	accent-color: #008bc2 !important;
}

.novaedu-pp-login-traditional a {
	color: #006f9b !important;
}

/* Tradycyjny przycisk zgodny ze sklepem. */
.novaedu-pp-login-traditional .slicewp-button-primary,
.novaedu-pp-login-traditional input[type="submit"] {
	color: #fff !important;
	background: #172033 !important;
	border: 1px solid #172033 !important;
}

.novaedu-pp-login-traditional .slicewp-button-primary:hover,
.novaedu-pp-login-traditional input[type="submit"]:hover {
	color: #fff !important;
	background: #006f9b !important;
	border-color: #006f9b !important;
}

.novaedu-pp-login-already-logged a {
	color: #fff !important;
	background: #008bc2 !important;
}

/* NOVAEDU PP BLUE V1 END */


/* NOVAEDU PP UNIFIED V3 START */

html:has(#slicewp-affiliate-account),
body:has(#slicewp-affiliate-account) {
	--novaedu-brand: #008bc2;
	--novaedu-brand-dark: #006f9b;
	--novaedu-soft: #e7f7fc;
	--novaedu-bg: #f4f7fb;
	--novaedu-text: #273247;
	--novaedu-border: #d9e4ee;
	--novaedu-shadow: 0 14px 38px rgba(23, 32, 51, 0.07);

	overflow-x: clip;
	background: var(--novaedu-bg) !important;
}

body:has(#slicewp-affiliate-account)
	:is(
		#page,
		#wrapper,
		#inner-wrap,
		#primary,
		#main,
		.site,
		.site-content,
		.site-main,
		.content-area,
		.content-container,
		.site-container,
		.content-bg,
		article.entry,
		.entry-content-wrap,
		.entry-content
	) {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	background: var(--novaedu-bg) !important;
	background-image: none !important;
	box-shadow: none !important;
	float: none !important;
}

body.novaedu-pp-dashboard-page .content-container {
	display: block !important;
	padding: 0 !important;
}

body.novaedu-pp-dashboard-page .entry-content-wrap {
	box-sizing: border-box !important;
	width: 100vw !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw) !important;
	margin-left: calc(50% - 50vw) !important;
	padding: clamp(24px, 2.5vw, 40px)
		clamp(18px, 2.4vw, 42px)
		64px !important;
	background: var(--novaedu-bg) !important;
}

body.novaedu-pp-dashboard-page .entry-content {
	width: 100% !important;
	max-width: 1920px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

/* Te same proporcje kolumn co na platformie. */
@media screen and (min-width: 901px) {
	#slicewp-affiliate-account.slicewp-menu-left {
		display: grid !important;
		grid-template-columns: minmax(280px, 340px) minmax(0, 1fr) !important;
		grid-template-areas:
			"navigation heading"
			"navigation content" !important;
		column-gap: clamp(24px, 2.6vw, 44px) !important;
		row-gap: 0 !important;
		align-items: start !important;
		width: 100% !important;
		max-width: none !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		#slicewp-affiliate-account-nav-tab {
		grid-area: navigation;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		.novaedu-pp-dashboard-title {
		grid-area: heading;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		#slicewp-affiliate-account-tab {
		grid-area: content;
	}
}

/* Lewy panel. */
#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-nav-tab {
	box-sizing: border-box !important;
	position: sticky !important;
	top: 24px !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	min-height: min(780px, calc(100svh - 76px)) !important;
	padding: 22px 20px !important;
	background: #fff !important;
	border: 1px solid var(--novaedu-border) !important;
	border-radius: 24px !important;
	box-shadow: var(--novaedu-shadow) !important;
}

#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	width: 100% !important;
	margin: 0 !important;
}

#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper
	.slicewp-nav-tab {
	box-sizing: border-box !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 2px 0 !important;
}

#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper
	.slicewp-nav-tab
	a {
	display: flex !important;
	align-items: center !important;
	gap: 13px !important;
	width: 100% !important;
	min-height: 49px !important;
	padding: 11px 14px !important;
	color: var(--novaedu-text) !important;
	border: 0 !important;
	border-radius: 13px !important;
	font-size: 15px !important;
	font-weight: 650 !important;
	line-height: 1.3 !important;
}

#slicewp-affiliate-account .slicewp-nav-tab svg {
	flex: 0 0 21px !important;
	width: 21px !important;
	height: 21px !important;
	margin: 0 !important;
	color: var(--novaedu-text) !important;
}

#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper
	.slicewp-nav-tab
	a:hover,
#slicewp-affiliate-account.slicewp-menu-left
	.slicewp-nav-tab-wrapper
	.slicewp-nav-tab.slicewp-active
	a {
	color: var(--novaedu-brand-dark) !important;
	background: var(--novaedu-soft) !important;
}

#slicewp-affiliate-account .slicewp-nav-tab.slicewp-active svg,
#slicewp-affiliate-account .slicewp-nav-tab:hover svg {
	color: var(--novaedu-brand) !important;
	stroke: currentColor !important;
}

#slicewp-affiliate-account
	.slicewp-nav-tab:has(a[href*="//platforma.novaedu.pl"]),
#slicewp-affiliate-account
	.slicewp-nav-tab:has(a[href*="//new.novaedu.pl"]),
#slicewp-affiliate-account
	.slicewp-nav-tab:has(a[href*="//novaedu.pl"]),
#slicewp-affiliate-account
	.slicewp-nav-tab:has(a[href*="logout"]) {
	margin-top: 7px !important;
	padding-top: 10px !important;
	border-top: 1px solid var(--novaedu-border) !important;
}

/* Prawa karta. */
#slicewp-affiliate-account .novaedu-pp-dashboard-title {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(28px, 2.7vw, 42px)
		clamp(30px, 3.2vw, 52px) !important;
	color: #172033 !important;
	background: #fff !important;
	border: 1px solid var(--novaedu-border) !important;
	border-bottom: 0 !important;
	border-radius: 24px 24px 0 0 !important;
	box-shadow: none !important;
	font-size: clamp(31px, 2.5vw, 38px) !important;
	font-weight: 750 !important;
	line-height: 1.15 !important;
}

#slicewp-affiliate-account .novaedu-pp-dashboard-title h1 {
	margin: 0 !important;
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

#slicewp-affiliate-account.slicewp-menu-left
	#slicewp-affiliate-account-tab {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	min-height: min(680px, calc(100svh - 180px)) !important;
	margin: 0 !important;
	padding: clamp(28px, 3vw, 48px) !important;
	background: #fff !important;
	border: 1px solid var(--novaedu-border) !important;
	border-radius: 0 0 24px 24px !important;
	box-shadow: var(--novaedu-shadow) !important;
}

/* Elementy wewnętrzne również mogą się rozciągać. */
#slicewp-affiliate-account-tab
	:is(
		.slicewp-tab,
		.slicewp-card,
		.slicewp-list-table-wrapper,
		.slicewp-chart-wrapper
	) {
	box-sizing: border-box !important;
	max-width: none !important;
}

#slicewp-affiliate-account .slicewp-card,
#slicewp-affiliate-account .slicewp-list-table-wrapper {
	border-radius: 14px !important;
}

/* Mniejszy laptop. */
@media screen and (min-width: 901px) and (max-width: 1200px) {
	#slicewp-affiliate-account.slicewp-menu-left {
		grid-template-columns: minmax(250px, 300px) minmax(0, 1fr) !important;
		column-gap: 24px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		#slicewp-affiliate-account-nav-tab {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		.slicewp-nav-tab-wrapper
		.slicewp-nav-tab
		a {
		padding-right: 12px !important;
		padding-left: 12px !important;
		font-size: 14px !important;
	}
}

/* Tablet i telefon — przewijane menu poziome. */
@media screen and (max-width: 900px) {
	body.novaedu-pp-dashboard-page .entry-content-wrap {
		width: 100% !important;
		margin: 0 !important;
		padding: 16px 14px 36px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left {
		display: block !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		#slicewp-affiliate-account-nav-tab {
		position: static !important;
		width: 100% !important;
		min-height: 0 !important;
		padding: 10px !important;
		overflow-x: auto !important;
		border-radius: 20px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		.slicewp-nav-tab-wrapper {
		display: flex !important;
		flex-flow: row nowrap !important;
		width: max-content !important;
		min-width: 100% !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		.slicewp-nav-tab-wrapper
		.slicewp-nav-tab {
		width: auto !important;
		padding: 0 !important;
		border: 0 !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		.slicewp-nav-tab-wrapper
		.slicewp-nav-tab
		a {
		min-height: 46px !important;
		padding: 10px 13px !important;
		white-space: nowrap !important;
	}

	#slicewp-affiliate-account .novaedu-pp-dashboard-title {
		margin-top: 16px !important;
		padding: 25px 23px !important;
		border-radius: 20px 20px 0 0 !important;
		font-size: 29px !important;
	}

	#slicewp-affiliate-account.slicewp-menu-left
		#slicewp-affiliate-account-tab {
		min-height: 0 !important;
		padding: 22px !important;
		border-radius: 0 0 20px 20px !important;
	}
}

/* NOVAEDU PP UNIFIED V3 END */

/* NOVAEDU PP AFFILIATE REGISTRATION V1 START */

/*
 * Formularz rejestracji SliceWP.
 * Zakres jest celowo bardzo precyzyjny:
 * - użytkownik musi być zalogowany,
 * - strona musi być panelem PP,
 * - musi istnieć formularz SliceWP inny niż formularz logowania.
 */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) {
    --nova-primary: #008bc2;
    --nova-primary-dark: #0076a5;
    --nova-primary-soft: #e3f6fc;
    --nova-heading: #172238;
    --nova-text: #34425c;
    --nova-muted: #748198;
    --nova-border: #d8e3ed;
    --nova-background: #f4f7fb;

    min-height: 100vh;
    color: var(--nova-text);
    background: var(--nova-background) !important;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) #page,
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) #inner-wrap {
    min-height: 100vh;
    background: var(--nova-background) !important;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) :where(
    #primary,
    #main,
    .site-main,
    .content-wrap,
    .content-container,
    article.entry,
    .entry-content-wrap
) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .content-container {
    padding: 0 !important;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .entry-content-wrap {
    padding: clamp(28px, 5vw, 72px) clamp(18px, 4vw, 56px) !important;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) article.entry .entry-header {
    display: none !important;
}

/* Główna karta formularza */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .entry-content {
    width: 100%;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: clamp(28px, 4vw, 52px) !important;
    background: #fff !important;
    border: 1px solid var(--nova-border);
    border-radius: 26px;
    box-shadow:
        0 24px 60px rgba(28, 51, 78, 0.10),
        0 5px 18px rgba(28, 51, 78, 0.05);
}

/* Tytuł, którego brakuje w standardowym widoku SliceWP */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .entry-content::before {
    content: "Dołącz do programu partnerskiego";
    display: block;
    margin: 0 0 28px;
    padding: 0 0 24px;
    color: var(--nova-heading);
    border-bottom: 1px solid var(--nova-border);
    font-size: clamp(30px, 4vw, 48px);
    font-weight: 750;
    line-height: 1.12;
    letter-spacing: -0.035em;
}

/* Komunikat informacyjny */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .slicewp-user-notice {
    width: 100%;
    margin: 0 0 30px !important;
    padding: 18px 20px !important;
    color: var(--nova-text) !important;
    background: #f2fbfe !important;
    border: 1px solid #bce4f2 !important;
    border-left: 5px solid var(--nova-primary) !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 26px rgba(0, 139, 194, 0.08);
    font-size: 16px;
    line-height: 1.6;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .slicewp-user-notice.slicewp-error {
    color: #8f2430 !important;
    background: #fff5f6 !important;
    border-color: #efc5cb !important;
    border-left-color: #d74455 !important;
}

/* Układ formularza */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 0;
    width: 100%;
    max-width: none !important;
    margin: 0 !important;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
.slicewp-field-wrapper {
    min-width: 0;
    margin: 0 0 22px !important;
}

/* Dłuższe elementy zajmują obie kolumny */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
.slicewp-field-wrapper:has(textarea),

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
.slicewp-field-wrapper:has(input[type="checkbox"]),

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
.slicewp-field-wrapper:has(input[type="submit"]),

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
.slicewp-field-wrapper:has(button[type="submit"]),

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
> :where(p, .slicewp-user-notice) {
    grid-column: 1 / -1;
}

/* Etykiety */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form) label {
    display: inline-block;
    margin: 0 0 8px;
    color: var(--nova-heading);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
}

/* Pola */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
:where(
    input[type="text"],
    input[type="email"],
    input[type="url"],
    input[type="password"],
    input[type="tel"],
    input[type="number"],
    select,
    textarea
) {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 54px;
    margin: 0 !important;
    padding: 0 16px !important;
    color: var(--nova-heading) !important;
    background: #fbfdff !important;
    border: 1px solid #cddae6 !important;
    border-radius: 11px !important;
    outline: none !important;
    box-shadow: none !important;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.4;
    transition:
        border-color 160ms ease,
        box-shadow 160ms ease,
        background-color 160ms ease;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form) textarea {
    min-height: 140px;
    padding: 14px 16px !important;
    resize: vertical;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
:where(
    input[type="text"],
    input[type="email"],
    input[type="url"],
    input[type="password"],
    input[type="tel"],
    input[type="number"],
    select,
    textarea
):focus {
    background: #fff !important;
    border-color: var(--nova-primary) !important;
    box-shadow: 0 0 0 4px rgba(0, 139, 194, 0.13) !important;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
:where(input, textarea)::placeholder {
    color: #94a1b3;
    opacity: 1;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
:where(input, textarea)[readonly] {
    color: #69768a !important;
    background: #f2f5f8 !important;
}

/* Checkbox */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 1px 9px 0 0;
    accent-color: var(--nova-primary);
    vertical-align: top;
}

/* Opisy i błędy */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .slicewp-field-description {
    margin-top: 7px;
    color: var(--nova-muted);
    font-size: 13px;
    line-height: 1.5;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) .slicewp-field-error-message {
    margin-top: 7px;
    color: #c73545;
    font-size: 13px;
    font-weight: 650;
}

/* Przycisk rejestracji */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
:where(
    input[type="submit"],
    button[type="submit"],
    .slicewp-button-primary
) {
    grid-column: 1 / -1;
    width: auto !important;
    min-width: 220px;
    min-height: 54px;
    margin: 4px 0 0 !important;
    padding: 13px 28px !important;
    color: #fff !important;
    background: linear-gradient(
        135deg,
        var(--nova-primary),
        var(--nova-primary-dark)
    ) !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 28px rgba(0, 139, 194, 0.22) !important;
    cursor: pointer;
    font-family: inherit;
    font-size: 16px;
    font-weight: 750;
    line-height: 1.2;
    text-align: center;
    transition:
        transform 160ms ease,
        box-shadow 160ms ease,
        filter 160ms ease;
}

body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
:where(
    input[type="submit"],
    button[type="submit"],
    .slicewp-button-primary
):hover {
    filter: brightness(1.04);
    transform: translateY(-1px);
    box-shadow: 0 15px 32px rgba(0, 139, 194, 0.28) !important;
}

/* Tablet i telefon */
@media (max-width: 820px) {
    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) form.slicewp-form:not(#slicewp-affiliate-login-form) {
        grid-template-columns: minmax(0, 1fr);
    }

    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) form.slicewp-form:not(#slicewp-affiliate-login-form)
    .slicewp-field-wrapper {
        grid-column: 1 / -1;
    }
}

@media (max-width: 600px) {
    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) .entry-content-wrap {
        padding: 16px 12px 28px !important;
    }

    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) .entry-content {
        padding: 24px 18px !important;
        border-radius: 19px;
    }

    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) .entry-content::before {
        margin-bottom: 22px;
        padding-bottom: 19px;
        font-size: 30px;
    }

    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) form.slicewp-form:not(#slicewp-affiliate-login-form)
    :where(
        input[type="submit"],
        button[type="submit"],
        .slicewp-button-primary
    ) {
        width: 100% !important;
        min-width: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}

/* NOVAEDU PP AFFILIATE REGISTRATION V1 END */


/* NOVAEDU PP REGISTRATION CTA V1 START */

/* Pełna szerokość wiersza zawierającego przycisk. */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
.slicewp-field-wrapper:has(
    input[type="submit"],
    button[type="submit"],
    .slicewp-button-primary
) {
    display: flex !important;
    grid-column: 1 / -1 !important;
    justify-content: center !important;
    width: 100% !important;
}

/* Wyśrodkowany przycisk o rozsądnej szerokości. */
body.logged-in.novaedu-pp-dashboard-page:has(
    .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
) form.slicewp-form:not(#slicewp-affiliate-login-form)
:is(
    input[type="submit"],
    button[type="submit"],
    .slicewp-button-primary
) {
    display: block !important;
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: min(100%, 360px) !important;
    min-width: 280px !important;
    margin: 10px auto 0 !important;
    text-align: center !important;
}

@media (max-width: 600px) {
    body.logged-in.novaedu-pp-dashboard-page:has(
        .entry-content form.slicewp-form:not(#slicewp-affiliate-login-form)
    ) form.slicewp-form:not(#slicewp-affiliate-login-form)
    :is(
        input[type="submit"],
        button[type="submit"],
        .slicewp-button-primary
    ) {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* NOVAEDU PP REGISTRATION CTA V1 END */
