/*
 * Cateromedia – wycena linków zewnętrznych (front)
 *
 * Arkusz jest celowo "samowystarczalny": nic nie dziedziczy po motywie.
 * Hello Elementor ustawia body{color:#333}, button{color:#c36} oraz szare tła
 * komórek tabel, a jego style ładują się PO naszych, dlatego każda reguła jest
 * zagnieżdżona pod .cm-blp (min. 2 klasy w selektorze) – to pobija motyw
 * niezależnie od kolejności arkuszy.
 */

.cm-blp {
	/* Paleta pod ciemne tło strony (#00040F). */
	--cm-blp-page: #00040f;
	--cm-blp-text: #ffffff;
	--cm-blp-muted: #b8bcc8;
	--cm-blp-accent: #ff0460;
	/* Wypełnienia z białym tekstem: #FF0460 daje tylko 3,86:1, #D9004F ponad 5:1. */
	--cm-blp-accent-fill: #d9004f;
	--cm-blp-accent-fill-hover: #b80042;
	--cm-blp-accent-soft: rgba(255, 4, 96, .14);
	--cm-blp-border: rgba(255, 255, 255, .15);
	--cm-blp-border-strong: rgba(255, 255, 255, .28);
	/* Obramowanie elementów interaktywnych (pola, chipy): .15 daje tylko 1,42:1
	 * względem #00040F, a WCAG 1.4.11 wymaga 3:1, żeby dało się je dostrzec. */
	--cm-blp-border-control: rgba(255, 255, 255, .35);
	--cm-blp-panel: rgba(255, 255, 255, .05);
	--cm-blp-panel-strong: rgba(255, 255, 255, .08);
	--cm-blp-field: rgba(255, 255, 255, .06);
	--cm-blp-radius: 10px;

	box-sizing: border-box;
	background: transparent;
	color: var(--cm-blp-text);
	font-size: 15px;
	line-height: 1.5;
}

.cm-blp *,
.cm-blp *::before,
.cm-blp *::after {
	box-sizing: inherit;
}

.cm-blp .cm-blp-title {
	color: var(--cm-blp-text);
	margin: 0 0 8px;
}

.cm-blp .cm-blp-intro,
.cm-blp .cm-blp-intro p {
	color: var(--cm-blp-muted);
}

.cm-blp .cm-blp-intro {
	margin-bottom: 20px;
}

.cm-blp .cm-blp-intro p:last-child {
	margin-bottom: 0;
}

.cm-blp .cm-blp-alert {
	background: rgba(255, 180, 0, .12);
	border: 1px solid rgba(255, 180, 0, .4);
	border-radius: var(--cm-blp-radius);
	color: #ffd79a;
	padding: 12px 14px;
}

/* ------------------------------------------------------------------
 * Tabele – zerujemy pasiaste/szare tła i padding 15px z motywu
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-overview table,
.cm-blp .cm-blp-cart-table,
.cm-blp .cm-blp-report-table,
.cm-blp .cm-blp-totals {
	background: transparent;
	border-collapse: collapse;
	font-size: 14px;
	margin: 0;
	width: 100%;
}

.cm-blp .cm-blp-overview td,
.cm-blp .cm-blp-overview th,
.cm-blp .cm-blp-cart-table td,
.cm-blp .cm-blp-cart-table th,
.cm-blp .cm-blp-report-table td,
.cm-blp .cm-blp-report-table th,
.cm-blp .cm-blp-totals td,
.cm-blp .cm-blp-totals th {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--cm-blp-border);
	color: var(--cm-blp-text);
	line-height: 1.45;
	vertical-align: top;
}

.cm-blp .cm-blp-overview tbody tr:nth-child(odd) td,
.cm-blp .cm-blp-overview tbody tr:nth-child(odd) th,
.cm-blp .cm-blp-overview tbody tr:hover td,
.cm-blp .cm-blp-cart-table tbody tr:nth-child(odd) td,
.cm-blp .cm-blp-cart-table tbody tr:hover td,
.cm-blp .cm-blp-report-table tbody tr:nth-child(odd) td,
.cm-blp .cm-blp-report-table tbody tr:hover td,
.cm-blp .cm-blp-totals tbody tr:nth-child(odd) td,
.cm-blp .cm-blp-totals tbody tr:nth-child(odd) th,
.cm-blp .cm-blp-totals tbody tr:hover td,
.cm-blp .cm-blp-totals tbody tr:hover th {
	background: transparent;
}

.cm-blp .cm-blp-overview tbody tr:hover td {
	background: var(--cm-blp-panel);
}

/* ---------- Podsumowanie katalogu ---------- */

.cm-blp .cm-blp-overview {
	background: var(--cm-blp-panel);
	border: 1px solid var(--cm-blp-border);
	border-radius: var(--cm-blp-radius);
	margin: 0 0 24px;
	overflow-x: auto;
}

.cm-blp .cm-blp-overview td,
.cm-blp .cm-blp-overview th {
	padding: 10px 14px;
	text-align: left;
}

.cm-blp .cm-blp-overview thead th {
	background: var(--cm-blp-panel-strong);
	color: var(--cm-blp-muted);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	white-space: nowrap;
}

.cm-blp .cm-blp-overview .num,
.cm-blp .cm-blp-overview th.num {
	text-align: right;
	white-space: nowrap;
}

.cm-blp .cm-blp-overview tfoot td {
	background: var(--cm-blp-accent-soft);
	border-bottom: 0;
	color: var(--cm-blp-text);
	font-weight: 700;
}

/* ------------------------------------------------------------------
 * Układ
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-layout {
	align-items: start;
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
}

@media (max-width: 900px) {
	.cm-blp .cm-blp-layout {
		grid-template-columns: 1fr;
	}
}

/* ------------------------------------------------------------------
 * Przyciski – motyw daje color:#c36 i hover z różowym tłem
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-tab,
.cm-blp .cm-blp-chip,
.cm-blp .cm-blp-btn,
.cm-blp .cm-blp-link,
.cm-blp .cm-blp-remove {
	-webkit-appearance: none;
	appearance: none;
	box-shadow: none;
	cursor: pointer;
	font-family: inherit;
	letter-spacing: 0;
	line-height: 1.3;
	text-shadow: none;
	text-transform: none;
	transition: background-color .15s, color .15s, border-color .15s;
	white-space: nowrap;
}

/* ------------------------------------------------------------------
 * Przełącznik katalogów
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-sites {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	margin: 0 0 18px;
}

.cm-blp .cm-blp-site {
	-webkit-appearance: none;
	appearance: none;
	background: var(--cm-blp-panel);
	border: 1px solid var(--cm-blp-border-control);
	border-radius: var(--cm-blp-radius);
	box-shadow: none;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	font-family: inherit;
	gap: 3px;
	letter-spacing: 0;
	padding: 12px 14px;
	text-align: left;
	text-transform: none;
	transition: background-color .15s, border-color .15s, color .15s;
	white-space: normal;
}

.cm-blp .cm-blp-site:hover,
.cm-blp .cm-blp-site:focus {
	background: var(--cm-blp-panel-strong);
	border-color: var(--cm-blp-accent);
	color: var(--cm-blp-text);
}

.cm-blp .cm-blp-site:focus-visible {
	outline: 2px solid var(--cm-blp-accent);
	outline-offset: 2px;
}

.cm-blp .cm-blp-site-name {
	color: var(--cm-blp-text);
	font-size: 14px;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.cm-blp .cm-blp-site-count {
	color: var(--cm-blp-muted);
	font-size: 12px;
}

.cm-blp .cm-blp-site.is-active,
.cm-blp .cm-blp-site.is-active:hover,
.cm-blp .cm-blp-site.is-active:focus {
	background: var(--cm-blp-accent-fill);
	border-color: var(--cm-blp-accent-fill);
}

.cm-blp .cm-blp-site.is-active .cm-blp-site-name,
.cm-blp .cm-blp-site.is-active .cm-blp-site-count {
	color: #fff;
}

/* Stan aktywny czytelny też bez kolorów. */
.cm-blp .cm-blp-site.is-active::after {
	background: #fff;
	content: "";
	display: block;
	height: 2px;
	margin-top: 6px;
	width: 28px;
}

/* Zakładki */

.cm-blp .cm-blp-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 14px;
}

.cm-blp .cm-blp-tab {
	background: var(--cm-blp-panel);
	border: 1px solid var(--cm-blp-border-control);
	border-radius: 999px;
	color: var(--cm-blp-muted);
	font-size: 14px;
	font-weight: 500;
	padding: 9px 18px;
}

.cm-blp .cm-blp-tab:hover,
.cm-blp .cm-blp-tab:focus {
	background: var(--cm-blp-panel-strong);
	border-color: var(--cm-blp-border-strong);
	color: var(--cm-blp-text);
}

.cm-blp .cm-blp-tab.is-active,
.cm-blp .cm-blp-tab.is-active:hover,
.cm-blp .cm-blp-tab.is-active:focus {
	background: var(--cm-blp-accent-fill);
	border-color: var(--cm-blp-accent-fill);
	color: #fff;
	font-weight: 600;
}

/* Przycisk główny */

.cm-blp .cm-blp-btn {
	background: var(--cm-blp-accent-fill);
	border: 1px solid var(--cm-blp-accent);
	border-radius: 8px;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	margin-top: 14px;
	padding: 13px 20px;
	width: 100%;
}

.cm-blp .cm-blp-btn:hover,
.cm-blp .cm-blp-btn:focus {
	background: var(--cm-blp-accent-fill-hover);
	border-color: var(--cm-blp-accent-fill-hover);
	color: #fff;
}

.cm-blp .cm-blp-btn:disabled,
.cm-blp .cm-blp-btn:disabled:hover {
	background: rgba(255, 255, 255, .12);
	border-color: transparent;
	color: var(--cm-blp-muted);
	cursor: not-allowed;
}

.cm-blp .cm-blp-paste-add {
	width: auto;
}

/* Linki-przyciski */

.cm-blp .cm-blp-link {
	background: transparent;
	border: 0;
	border-radius: 0;
	color: var(--cm-blp-accent);
	font-size: 13px;
	font-weight: 600;
	padding: 0;
	text-decoration: underline;
}

.cm-blp .cm-blp-link:hover,
.cm-blp .cm-blp-link:focus {
	background: transparent;
	color: var(--cm-blp-text);
}

.cm-blp .cm-blp-remove {
	background: transparent;
	border: 0;
	border-radius: 4px;
	color: var(--cm-blp-muted);
	font-size: 20px;
	padding: 0 4px;
}

.cm-blp .cm-blp-remove:hover,
.cm-blp .cm-blp-remove:focus {
	background: transparent;
	color: var(--cm-blp-accent);
}

.cm-blp .cm-blp-tab:focus-visible,
.cm-blp .cm-blp-chip:focus-visible,
.cm-blp .cm-blp-btn:focus-visible,
.cm-blp .cm-blp-link:focus-visible,
.cm-blp .cm-blp-remove:focus-visible {
	outline: 2px solid var(--cm-blp-accent);
	outline-offset: 2px;
}

/* ------------------------------------------------------------------
 * Pola formularza – motyw daje border #666 i padding .5rem 1rem
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-search-input,
.cm-blp .cm-blp-paste,
.cm-blp .cm-blp-days,
.cm-blp .cm-blp-fields input,
.cm-blp .cm-blp-fields textarea {
	-webkit-appearance: none;
	appearance: none;
	background: var(--cm-blp-field);
	border: 1px solid var(--cm-blp-border-control);
	border-radius: 8px;
	box-shadow: none;
	color: var(--cm-blp-text);
	font-family: inherit;
	font-size: 14px;
	padding: 10px 12px;
	transition: border-color .15s, background-color .15s;
	width: 100%;
}

.cm-blp .cm-blp-search-input:focus,
.cm-blp .cm-blp-paste:focus,
.cm-blp .cm-blp-days:focus,
.cm-blp .cm-blp-fields input:focus,
.cm-blp .cm-blp-fields textarea:focus {
	background: rgba(255, 255, 255, .09);
	border-color: var(--cm-blp-accent);
	color: var(--cm-blp-text);
	outline: none;
}

.cm-blp .cm-blp-search-input::placeholder,
.cm-blp .cm-blp-paste::placeholder,
.cm-blp .cm-blp-fields input::placeholder,
.cm-blp .cm-blp-fields textarea::placeholder {
	color: rgba(184, 188, 200, .7);
	opacity: 1;
}

/* Autouzupełnianie w Chrome zamalowuje pole na biało. */
.cm-blp .cm-blp-fields input:-webkit-autofill,
.cm-blp .cm-blp-fields input:-webkit-autofill:hover,
.cm-blp .cm-blp-fields input:-webkit-autofill:focus {
	-webkit-text-fill-color: var(--cm-blp-text);
	caret-color: var(--cm-blp-text);
	transition: background-color 9999s;
}

.cm-blp input[type="checkbox"] {
	accent-color: var(--cm-blp-accent);
	flex: 0 0 auto;
	height: 16px;
	margin: 0;
	width: 16px;
}

/* ------------------------------------------------------------------
 * Szukajka
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-search {
	align-items: center;
	display: flex;
	gap: 10px;
	margin-bottom: 12px;
}

.cm-blp .cm-blp-search-input {
	flex: 1 1 auto;
	min-width: 0;
}

.cm-blp .cm-blp-search-count {
	color: var(--cm-blp-muted);
	font-size: 13px;
	white-space: nowrap;
}

/* ------------------------------------------------------------------
 * Grupy podstron
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-noresults {
	background: var(--cm-blp-panel);
	border: 1px dashed var(--cm-blp-border-control);
	border-radius: var(--cm-blp-radius);
	margin-bottom: 12px;
	padding: 14px 16px;
}

.cm-blp .cm-blp-noresults p {
	color: var(--cm-blp-text);
	margin: 0 0 6px;
}

.cm-blp .cm-blp-noresults .cm-blp-noresults-hint {
	color: var(--cm-blp-muted);
	font-size: 13px;
}

.cm-blp .cm-blp-group {
	background: var(--cm-blp-panel);
	border: 1px solid var(--cm-blp-border);
	border-radius: var(--cm-blp-radius);
	margin-bottom: 10px;
}

.cm-blp .cm-blp-group > summary {
	align-items: center;
	color: var(--cm-blp-text);
	cursor: pointer;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style: none;
	padding: 13px 15px;
}

.cm-blp .cm-blp-group > summary::-webkit-details-marker {
	display: none;
}

.cm-blp .cm-blp-group > summary::after {
	color: var(--cm-blp-muted);
	content: "+";
	font-size: 18px;
	margin-left: auto;
}

.cm-blp .cm-blp-group[open] > summary::after {
	content: "–";
}

.cm-blp .cm-blp-group-name {
	color: var(--cm-blp-text);
	font-weight: 600;
}

.cm-blp .cm-blp-group-price {
	background: var(--cm-blp-accent-soft);
	border-radius: 999px;
	color: var(--cm-blp-accent);
	font-size: 13px;
	font-weight: 700;
	padding: 3px 11px;
}

.cm-blp .cm-blp-group-num {
	color: var(--cm-blp-muted);
	font-size: 13px;
}

.cm-blp .cm-blp-group-actions {
	display: flex;
	gap: 16px;
	padding: 0 15px 10px;
}

.cm-blp .cm-blp-items {
	list-style: none;
	margin: 0;
	max-height: 340px;
	overflow-y: auto;
	padding: 0 15px 14px;
	scrollbar-color: rgba(255, 255, 255, .25) transparent;
	scrollbar-width: thin;
}

.cm-blp .cm-blp-items::-webkit-scrollbar {
	width: 8px;
}

.cm-blp .cm-blp-items::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, .2);
	border-radius: 4px;
}

.cm-blp .cm-blp-items li {
	border-top: 1px solid var(--cm-blp-border);
	list-style: none;
	margin: 0;
}

.cm-blp .cm-blp-items li:first-child {
	border-top: 0;
}

.cm-blp .cm-blp-items label {
	align-items: center;
	color: var(--cm-blp-text);
	cursor: pointer;
	display: flex;
	gap: 10px;
	margin: 0;
	padding: 8px 0;
}

.cm-blp .cm-blp-item-text {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.cm-blp .cm-blp-item-text strong {
	color: var(--cm-blp-text);
	font-weight: 600;
}

.cm-blp .cm-blp-item-url {
	color: var(--cm-blp-muted);
	font-size: 12px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cm-blp .cm-blp-item-price {
	color: var(--cm-blp-muted);
	font-size: 13px;
	margin-left: auto;
	white-space: nowrap;
}

/* ------------------------------------------------------------------
 * Wklejanie adresów
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-hint {
	color: var(--cm-blp-muted);
	font-size: 14px;
	margin-top: 0;
}

.cm-blp .cm-blp-paste {
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 13px;
}

.cm-blp .cm-blp-report-summary {
	color: var(--cm-blp-text);
	font-weight: 600;
	margin: 14px 0 8px;
}

.cm-blp .cm-blp-report-summary.is-warn {
	color: #ffc266;
}

.cm-blp .cm-blp-report-table {
	font-size: 13px;
}

.cm-blp .cm-blp-report-table td {
	padding: 7px 8px;
}

.cm-blp .cm-blp-report-table .num {
	text-align: right;
	white-space: nowrap;
}

.cm-blp .cm-blp-report-url {
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	word-break: break-all;
}

.cm-blp .cm-blp-report-status {
	color: var(--cm-blp-muted);
}

.cm-blp .cm-blp-report-table tr.is-fallback .cm-blp-report-status {
	color: #ffc266;
}

.cm-blp .cm-blp-report-table tr.is-foreign .cm-blp-report-status,
.cm-blp .cm-blp-report-table tr.is-unknown .cm-blp-report-status {
	color: #ff8a8a;
}

.cm-blp .cm-blp-report-table tr.is-foreign td,
.cm-blp .cm-blp-report-table tr.is-unknown td {
	color: var(--cm-blp-muted);
}

.cm-blp .cm-blp-report-note {
	color: var(--cm-blp-muted);
	font-size: 13px;
}

/* ------------------------------------------------------------------
 * Koszyk
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-cart {
	background: var(--cm-blp-panel);
	border: 1px solid var(--cm-blp-border);
	border-radius: var(--cm-blp-radius);
	color: var(--cm-blp-text);
	padding: 18px;
	position: sticky;
	top: 20px;
}

@media (max-width: 900px) {
	.cm-blp .cm-blp-cart {
		position: static;
	}
}

.cm-blp .cm-blp-cart h3 {
	color: var(--cm-blp-text);
	font-size: 18px;
	margin: 0 0 12px;
}

.cm-blp .cm-blp-cart h4 {
	color: var(--cm-blp-text);
	font-size: 15px;
	margin: 0 0 10px;
}

.cm-blp .cm-blp-cart-count {
	background: var(--cm-blp-accent-fill);
	border-radius: 999px;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	padding: 2px 10px;
	vertical-align: middle;
}

.cm-blp .cm-blp-empty {
	color: var(--cm-blp-muted);
	font-size: 14px;
	margin: 0;
}

.cm-blp .cm-blp-cart-items {
	max-height: 320px;
	overflow-y: auto;
	scrollbar-color: rgba(255, 255, 255, .25) transparent;
	scrollbar-width: thin;
}

.cm-blp .cm-blp-cart-items::-webkit-scrollbar {
	width: 8px;
}

.cm-blp .cm-blp-cart-items::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, .2);
	border-radius: 4px;
}

.cm-blp .cm-blp-cart-site + .cm-blp-cart-site {
	margin-top: 14px;
}

.cm-blp .cm-blp-cart-site-head {
	align-items: baseline;
	border-bottom: 1px solid var(--cm-blp-accent);
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	justify-content: space-between;
	padding-bottom: 5px;
}

.cm-blp .cm-blp-cart-site-name {
	color: var(--cm-blp-text);
	font-size: 13px;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.cm-blp .cm-blp-cart-site-sum {
	color: var(--cm-blp-muted);
	font-size: 12px;
	white-space: nowrap;
}

.cm-blp .cm-blp-cart-group {
	color: var(--cm-blp-muted);
	font-size: 11px;
}

.cm-blp .cm-blp-report-site {
	color: var(--cm-blp-muted);
	overflow-wrap: anywhere;
}

.cm-blp .cm-blp-cart-table {
	font-size: 13px;
}

.cm-blp .cm-blp-cart-table th {
	color: var(--cm-blp-muted);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .04em;
	padding: 5px 6px;
	text-align: left;
	text-transform: uppercase;
}

.cm-blp .cm-blp-cart-table td {
	padding: 7px 6px;
}

.cm-blp .cm-blp-cart-table .num,
.cm-blp .cm-blp-cart-table th.num {
	text-align: right;
	white-space: nowrap;
}

.cm-blp .cm-blp-cart-name {
	max-width: 180px;
}

.cm-blp .cm-blp-cart-name a {
	color: var(--cm-blp-text);
	display: block;
	font-weight: 600;
	overflow: hidden;
	text-decoration: none;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cm-blp .cm-blp-cart-name a:hover {
	color: var(--cm-blp-accent);
	text-decoration: underline;
}

.cm-blp .cm-blp-clear {
	margin-top: 10px;
}

/* ------------------------------------------------------------------
 * Okres
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-period {
	border-top: 1px solid var(--cm-blp-border);
	margin-top: 14px;
	padding-top: 14px;
}

.cm-blp .cm-blp-period-label {
	color: var(--cm-blp-muted);
	display: block;
	font-size: 12px;
	letter-spacing: .04em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.cm-blp .cm-blp-period-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.cm-blp .cm-blp-chip {
	background: var(--cm-blp-field);
	border: 1px solid var(--cm-blp-border-control);
	border-radius: 999px;
	color: var(--cm-blp-text);
	font-size: 13px;
	font-weight: 500;
	padding: 7px 14px;
}

.cm-blp .cm-blp-chip:hover,
.cm-blp .cm-blp-chip:focus {
	background: var(--cm-blp-panel-strong);
	border-color: var(--cm-blp-border-strong);
	color: var(--cm-blp-text);
}

.cm-blp .cm-blp-chip.is-active,
.cm-blp .cm-blp-chip.is-active:hover,
.cm-blp .cm-blp-chip.is-active:focus {
	background: var(--cm-blp-accent-fill);
	border-color: var(--cm-blp-accent-fill);
	color: #fff;
	font-weight: 700;
}

.cm-blp .cm-blp-period-custom {
	align-items: center;
	color: var(--cm-blp-muted);
	display: flex;
	font-size: 13px;
	gap: 8px;
	margin: 10px 0 0;
}

.cm-blp .cm-blp-days {
	flex: 0 0 auto;
	padding: 7px 10px;
	width: 96px;
}

/* ------------------------------------------------------------------
 * Promocja – progi rabatowe
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-promo {
	background: var(--cm-blp-accent-soft);
	border: 1px solid rgba(255, 4, 96, .35);
	border-radius: var(--cm-blp-radius);
	margin-top: 16px;
	padding: 13px 15px;
}

.cm-blp .cm-blp-promo-title {
	color: var(--cm-blp-text);
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	margin-bottom: 9px;
	text-transform: uppercase;
}

.cm-blp .cm-blp-promo-tiers {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cm-blp .cm-blp-promo-tiers li {
	align-items: baseline;
	background: rgba(255, 255, 255, .06);
	border: 1px solid transparent;
	border-radius: 7px;
	color: var(--cm-blp-muted);
	display: flex;
	flex-direction: column;
	font-size: 11px;
	gap: 1px;
	list-style: none;
	margin: 0;
	padding: 6px 10px;
}

.cm-blp .cm-blp-promo-tiers li strong {
	color: var(--cm-blp-text);
	font-size: 15px;
	font-weight: 700;
}

.cm-blp .cm-blp-promo-tiers li.is-active {
	background: var(--cm-blp-accent-fill);
	border-color: var(--cm-blp-accent-fill);
	color: #fff;
}

.cm-blp .cm-blp-promo-tiers li.is-active strong {
	color: #fff;
}

.cm-blp .cm-blp-promo-tiers li.is-next {
	border-color: var(--cm-blp-accent);
	border-style: dashed;
}

.cm-blp .cm-blp-promo-note {
	color: var(--cm-blp-muted);
	font-size: 12px;
	margin: 9px 0 0;
}

.cm-blp .cm-blp-upsell {
	background: rgba(255, 255, 255, .06);
	border-left: 3px solid var(--cm-blp-accent);
	border-radius: 0 7px 7px 0;
	color: var(--cm-blp-text);
	font-size: 13px;
	margin: 12px 0 0;
	padding: 9px 12px;
}

.cm-blp .cm-blp-discount-row th,
.cm-blp .cm-blp-discount-row td,
.cm-blp .cm-blp-net-monthly-row th,
.cm-blp .cm-blp-net-monthly-row td {
	color: var(--cm-blp-accent);
	font-weight: 700;
}

.cm-blp .cm-blp-discount-percent {
	font-weight: 700;
}

/* ------------------------------------------------------------------
 * Sumy
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-totals {
	margin-top: 16px;
}

.cm-blp .cm-blp-totals th {
	border-bottom: 1px solid var(--cm-blp-border);
	color: var(--cm-blp-muted);
	font-size: 13px;
	font-weight: 500;
	padding: 8px 0;
	text-align: left;
}

.cm-blp .cm-blp-totals td {
	border-bottom: 1px solid var(--cm-blp-border);
	color: var(--cm-blp-text);
	font-weight: 700;
	padding: 8px 0;
	text-align: right;
	white-space: nowrap;
}

.cm-blp .cm-blp-totals .cm-blp-total-row th,
.cm-blp .cm-blp-totals .cm-blp-total-row td {
	border-bottom: 0;
	border-top: 2px solid var(--cm-blp-accent);
	color: var(--cm-blp-text);
	font-size: 18px;
	font-weight: 700;
	padding-top: 12px;
}

.cm-blp .cm-blp-totals .cm-blp-total-period {
	color: var(--cm-blp-accent);
}

/* ------------------------------------------------------------------
 * Formularz
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-form {
	border-top: 1px solid var(--cm-blp-border);
	margin-top: 18px;
	padding-top: 16px;
}

.cm-blp .cm-blp-fields {
	display: grid;
	gap: 10px;
	grid-template-columns: 1fr 1fr;
}

.cm-blp .cm-blp-fields label {
	color: var(--cm-blp-muted);
	display: flex;
	flex-direction: column;
	font-size: 13px;
	gap: 5px;
	margin: 0;
}

.cm-blp .cm-blp-fields .cm-blp-full {
	grid-column: 1 / -1;
}

.cm-blp .cm-blp-fields em,
.cm-blp .cm-blp-consent em {
	color: var(--cm-blp-accent);
	font-style: normal;
}

.cm-blp .cm-blp-consent {
	align-items: flex-start;
	color: var(--cm-blp-muted);
	display: flex;
	font-size: 13px;
	gap: 9px;
	margin: 14px 0 0;
}

.cm-blp .cm-blp-consent a {
	color: var(--cm-blp-accent);
}

/* Honeypot – pole-pułapka, musi być niewidoczne, ale wypełnialne przez boty. */
.cm-blp .cm-blp-hp {
	border: 0 !important;
	clip: rect(0, 0, 0, 0) !important;
	height: 1px !important;
	left: -9999px !important;
	opacity: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	pointer-events: none !important;
	position: absolute !important;
	top: auto !important;
	width: 1px !important;
}

.cm-blp .cm-blp-message {
	border-radius: 8px;
	font-size: 14px;
	margin-top: 12px;
	padding: 11px 13px;
}

.cm-blp .cm-blp-message.is-error {
	background: rgba(255, 90, 90, .14);
	border: 1px solid rgba(255, 90, 90, .35);
	color: #ffb3b3;
}

.cm-blp .cm-blp-message.is-success {
	background: var(--cm-blp-accent-soft);
	border: 1px solid rgba(255, 4, 96, .4);
	color: #ffd1e0;
}

/* ------------------------------------------------------------------
 * Wariant na jasnym tle – gdy ktoś wstawi shortcode na białą sekcję
 * --------------------------------------------------------------- */

.cm-blp.cm-blp-light {
	--cm-blp-page: #ffffff;
	--cm-blp-text: #14181f;
	--cm-blp-muted: #5b6270;
	--cm-blp-border: rgba(0, 0, 0, .14);
	--cm-blp-border-strong: rgba(0, 0, 0, .3);
	--cm-blp-panel: rgba(0, 0, 0, .03);
	--cm-blp-panel-strong: rgba(0, 0, 0, .06);
	--cm-blp-field: #ffffff;
}

/* ------------------------------------------------------------------
 * Sprzedaż domen i serwisów
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-anchor-line {
	margin: -8px 0 20px;
}

.cm-blp .cm-blp-anchor {
	color: var(--cm-blp-accent);
	font-weight: 600;
	text-decoration: underline;
}

.cm-blp .cm-blp-anchor:hover,
.cm-blp .cm-blp-anchor:focus {
	color: var(--cm-blp-text);
}

.cm-blp .cm-blp-domains {
	background: var(--cm-blp-panel);
	border: 1px solid var(--cm-blp-border);
	border-radius: var(--cm-blp-radius);
	margin-top: 28px;
	padding: 20px;
	scroll-margin-top: 20px;
}

.cm-blp .cm-blp-domains-title {
	color: var(--cm-blp-text);
	font-size: 20px;
	margin: 0 0 8px;
}

.cm-blp .cm-blp-domains-intro {
	color: var(--cm-blp-muted);
	margin: 0 0 18px;
	max-width: 70ch;
}

.cm-blp .cm-blp-domains-table {
	background: transparent;
	border-collapse: collapse;
	font-size: 14px;
	margin: 0;
	width: 100%;
}

.cm-blp .cm-blp-domains-table td,
.cm-blp .cm-blp-domains-table th {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--cm-blp-border);
	color: var(--cm-blp-text);
	padding: 11px 12px;
	text-align: left;
	vertical-align: middle;
}

.cm-blp .cm-blp-domains-table tbody tr:nth-child(odd) td,
.cm-blp .cm-blp-domains-table tbody tr:hover td {
	background: transparent;
}

.cm-blp .cm-blp-domains-table tbody tr:hover td {
	background: var(--cm-blp-panel-strong);
}

.cm-blp .cm-blp-domains-table thead th {
	background: var(--cm-blp-panel-strong);
	color: var(--cm-blp-muted);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	white-space: nowrap;
}

.cm-blp .cm-blp-domains-table .num,
.cm-blp .cm-blp-domains-table th.num {
	text-align: right;
	white-space: nowrap;
}

.cm-blp .cm-blp-domains-name {
	font-weight: 700;
	overflow-wrap: anywhere;
}

.cm-blp .cm-blp-domains-price {
	display: block;
	font-size: 16px;
	font-weight: 700;
}

.cm-blp .cm-blp-ask {
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border: 1px solid var(--cm-blp-accent);
	border-radius: 999px;
	box-shadow: none;
	color: var(--cm-blp-accent);
	cursor: pointer;
	display: inline-block;
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.3;
	margin-top: 5px;
	padding: 5px 12px;
	text-transform: none;
	transition: background-color .15s, color .15s, border-color .15s;
	white-space: nowrap;
}

.cm-blp .cm-blp-ask:hover,
.cm-blp .cm-blp-ask:focus {
	background: var(--cm-blp-accent-fill);
	border-color: var(--cm-blp-accent-fill);
	color: #fff;
}

.cm-blp .cm-blp-ask:focus-visible {
	outline: 2px solid var(--cm-blp-accent);
	outline-offset: 2px;
}

.cm-blp .cm-blp-domains-note {
	color: var(--cm-blp-muted);
	font-size: 13px;
	margin: 16px 0 0;
	padding-left: 18px;
}

.cm-blp .cm-blp-domains-note li {
	margin-bottom: 4px;
}

.cm-blp .cm-blp-domains-note strong {
	color: var(--cm-blp-text);
}

/* Wybrane zapytanie o zakup w formularzu */

.cm-blp .cm-blp-purchase {
	align-items: baseline;
	background: var(--cm-blp-accent-soft);
	border: 1px solid var(--cm-blp-accent);
	border-radius: 8px;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	margin: 0 0 14px;
	padding: 10px 12px;
}

.cm-blp .cm-blp-purchase-label {
	color: var(--cm-blp-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	width: 100%;
}

.cm-blp .cm-blp-purchase-value {
	color: var(--cm-blp-text);
	font-weight: 700;
	overflow-wrap: anywhere;
}

.cm-blp .cm-blp-purchase-clear {
	margin-left: auto;
}

/* ------------------------------------------------------------------
 * Formularz zapisu na pakiet (cennik)
 * --------------------------------------------------------------- */

.cm-blp .cm-blp-pkg-anchor {
	display: block;
	height: 0;
	scroll-margin-top: 24px;
}

.cm-blp .cm-blp-pkg {
	background: var(--cm-blp-panel);
	border: 1px solid var(--cm-blp-border);
	border-radius: var(--cm-blp-radius);
	margin: 0 auto;
	max-width: 760px;
	padding: 22px;
	scroll-margin-top: 24px;
}

.cm-blp .cm-blp-pkg-title {
	color: var(--cm-blp-text);
	font-size: 22px;
	margin: 0 0 8px;
}

.cm-blp .cm-blp-pkg-intro {
	color: var(--cm-blp-muted);
	margin: 0 0 20px;
}

.cm-blp .cm-blp-pkg-choice {
	border: 0;
	margin: 0 0 18px;
	padding: 0;
}

.cm-blp .cm-blp-pkg-choice legend {
	color: var(--cm-blp-muted);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	margin-bottom: 8px;
	padding: 0;
	text-transform: uppercase;
}

.cm-blp .cm-blp-pkg-options {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.cm-blp .cm-blp-pkg-option {
	align-items: flex-start;
	background: var(--cm-blp-field);
	border: 1px solid var(--cm-blp-border-control);
	border-radius: var(--cm-blp-radius);
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	padding: 11px 13px;
	position: relative;
	transition: background-color .15s, border-color .15s;
}

.cm-blp .cm-blp-pkg-option:hover {
	border-color: var(--cm-blp-accent);
}

/* Radio zostaje dostępny dla klawiatury i czytników, ale nie zajmuje miejsca. */
.cm-blp .cm-blp-pkg-option input[type="radio"] {
	height: 1px;
	margin: 0;
	opacity: 0;
	position: absolute;
	width: 1px;
}

.cm-blp .cm-blp-pkg-option-name {
	color: var(--cm-blp-text);
	font-size: 14px;
	font-weight: 700;
}

.cm-blp .cm-blp-pkg-option-price {
	color: var(--cm-blp-muted);
	font-size: 12px;
}

.cm-blp .cm-blp-pkg-option.is-active {
	background: var(--cm-blp-accent-fill);
	border-color: var(--cm-blp-accent-fill);
}

.cm-blp .cm-blp-pkg-option.is-active .cm-blp-pkg-option-name,
.cm-blp .cm-blp-pkg-option.is-active .cm-blp-pkg-option-price {
	color: #fff;
}

.cm-blp .cm-blp-pkg-option:focus-within {
	outline: 2px solid var(--cm-blp-accent);
	outline-offset: 2px;
}

.cm-blp .cm-blp-pkg-form select {
	-webkit-appearance: none;
	appearance: none;
	background: var(--cm-blp-field);
	border: 1px solid var(--cm-blp-border-control);
	border-radius: 8px;
	box-shadow: none;
	color: var(--cm-blp-text);
	font-family: inherit;
	font-size: 14px;
	padding: 10px 12px;
	width: 100%;
}

.cm-blp .cm-blp-pkg-form select:focus {
	border-color: var(--cm-blp-accent);
	outline: none;
}

.cm-blp .cm-blp-pkg-form option {
	background: #0b1220;
	color: #fff;
}

.cm-blp .cm-blp-pkg-hint {
	color: var(--cm-blp-muted);
	font-size: 12px;
	min-height: 1em;
}

.cm-blp .cm-blp-pkg-note {
	color: var(--cm-blp-muted);
	font-size: 13px;
	margin: 10px 0 0;
}

.cm-blp .cm-blp-pkg-submit {
	max-width: 320px;
}

/* ------------------------------------------------------------------
 * Telefon (<=480 px): tabela cen zamienia się w karty, żeby przy 390 px
 * nie trzeba było przewijać w bok.
 * --------------------------------------------------------------- */

@media (max-width: 480px) {
	.cm-blp .cm-blp-sites {
		grid-template-columns: 1fr;
	}

	.cm-blp .cm-blp-overview {
		overflow-x: visible;
	}

	.cm-blp .cm-blp-overview table,
	.cm-blp .cm-blp-overview tbody,
	.cm-blp .cm-blp-overview tfoot,
	.cm-blp .cm-blp-overview tr,
	.cm-blp .cm-blp-overview td {
		display: block;
		width: auto;
	}

	.cm-blp .cm-blp-overview thead {
		display: none;
	}

	.cm-blp .cm-blp-overview tbody tr,
	.cm-blp .cm-blp-overview tfoot tr {
		border-bottom: 1px solid var(--cm-blp-border);
		padding: 10px 14px;
	}

	.cm-blp .cm-blp-overview tbody tr:last-child {
		border-bottom: 0;
	}

	.cm-blp .cm-blp-overview td,
	.cm-blp .cm-blp-overview tfoot td {
		border: 0;
		display: flex;
		gap: 12px;
		justify-content: space-between;
		padding: 2px 0;
		text-align: left;
	}

	.cm-blp .cm-blp-overview td.num {
		text-align: left;
	}

	.cm-blp .cm-blp-overview td:first-child {
		font-weight: 700;
		margin-bottom: 4px;
	}

	.cm-blp .cm-blp-overview td:not(:first-child)::before {
		color: var(--cm-blp-muted);
		content: attr(data-label);
		font-size: 12px;
	}

	.cm-blp .cm-blp-overview tfoot tr {
		background: var(--cm-blp-accent-soft);
	}

	.cm-blp .cm-blp-cart {
		padding: 14px;
	}

	.cm-blp .cm-blp-cart-name {
		max-width: none;
	}

	.cm-blp .cm-blp-fields {
		grid-template-columns: 1fr;
	}

	.cm-blp .cm-blp-promo-tiers {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.cm-blp .cm-blp-report-table,
	.cm-blp .cm-blp-report-table tbody,
	.cm-blp .cm-blp-report-table tr,
	.cm-blp .cm-blp-report-table td {
		display: block;
		width: auto;
	}

	.cm-blp .cm-blp-report-table tr {
		border-bottom: 1px solid var(--cm-blp-border);
		padding: 8px 0;
	}

	.cm-blp .cm-blp-report-table td {
		border: 0;
		padding: 1px 0;
	}

	.cm-blp .cm-blp-report-table td.num {
		text-align: left;
	}

	.cm-blp .cm-blp-domains {
		padding: 16px 14px;
	}

	.cm-blp .cm-blp-domains-table,
	.cm-blp .cm-blp-domains-table tbody,
	.cm-blp .cm-blp-domains-table tr,
	.cm-blp .cm-blp-domains-table td {
		display: block;
		width: auto;
	}

	.cm-blp .cm-blp-domains-table thead {
		display: none;
	}

	.cm-blp .cm-blp-domains-table tbody tr {
		background: var(--cm-blp-panel-strong);
		border: 1px solid var(--cm-blp-border);
		border-radius: 8px;
		margin-bottom: 10px;
		padding: 12px 14px;
	}

	.cm-blp .cm-blp-domains-table td {
		border: 0;
		padding: 0;
	}

	.cm-blp .cm-blp-domains-table .cm-blp-domains-name {
		font-size: 15px;
		margin-bottom: 8px;
	}

	.cm-blp .cm-blp-domains-table td.num {
		align-items: center;
		border-top: 1px solid var(--cm-blp-border);
		display: flex;
		gap: 10px;
		justify-content: space-between;
		padding: 8px 0 0;
		text-align: left;
	}

	.cm-blp .cm-blp-domains-table td.num::before {
		color: var(--cm-blp-muted);
		content: attr(data-label);
		font-size: 12px;
	}

	.cm-blp .cm-blp-domains-table td.num .cm-blp-domains-price {
		margin-left: auto;
	}

	.cm-blp .cm-blp-ask {
		margin-top: 0;
	}

	.cm-blp .cm-blp-pkg {
		padding: 16px 14px;
	}

	.cm-blp .cm-blp-pkg-options {
		grid-template-columns: 1fr 1fr;
	}

	.cm-blp .cm-blp-pkg-submit {
		max-width: none;
	}
}
