/*
 * fajerwerkisklep (eTrade) — logowanie, rejestracja, przypomnienie hasła, konto klienta (my-account.html).
 * Formularze auth: axil-signin-form z sign-in.html / sign-up.html / forgot-password.html w zwykłym układzie sklepu
 * (eTrade ma je jako osobne strony bez nagłówka — pozycjonowanie fixed z .axil-signin-area nie jest używane).
 * Konto: axil-dashboard-* z my-account.html, menu boczne = linki do podstron (member/_nav_etrade.phtml).
 */

/* ---------- logowanie, rejestracja, przypomnienie hasła ---------- */
.fs-auth-area .axil-signin-form {
	max-width: 520px;
	padding: 0;
}
.fs-auth-area .axil-signin-form .title {
	margin-bottom: 12px;
}
.fs-auth-area .axil-signin-form .singin-form {
	padding-bottom: 0;
}
/* eTrade: .axil-signin-form p w --color-gray (#999FAE, 2,65:1 na bieli) — tekst wprowadzający w kolorze treści (5,1:1) */
.fs-auth-area .axil-signin-form p,
.fs-auth-area .fs-auth-lead {
	color: var(--color-body);
}
.fs-auth-area .fs-auth-lead {
	margin-bottom: 45px;
}
.fs-auth-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 15px 30px;
}
.fs-auth-area .axil-signin-form .fs-check + .fs-auth-actions {
	margin-top: 35px;
}
.fs-auth-actions .forgot-btn i {
	margin-right: 4px;
}
.fs-auth-area .fs-auth-resend {
	margin: 0 0 30px;
}
.fs-auth-area .singin-form .fs-auth-resend {
	margin: 35px 0 0;
}
.fs-auth-divider {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 35px 0 25px;
	font-size: 14px;
	color: var(--color-body);
}
.fs-auth-divider::before,
.fs-auth-divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background-color: var(--color-border-light);
}
.fs-auth-area a.axil-btn.fs-social-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 14px 20px;
	font-size: 15px;
	background-color: var(--color-white);
	border: 1px solid var(--color-light);
	color: var(--color-heading);
}
.fs-auth-area a.axil-btn.fs-social-btn .fs-social-icon {
	flex-shrink: 0;
	width: 11px;
	height: 18px;
	margin-right: 10px;
	color: #1877F2;
}
.fs-auth-area a.axil-btn.fs-social-btn:hover {
	border-color: var(--color-primary);
	color: var(--color-primary);
}
.fs-auth-area .loading_icon:not(.d-none) {
	display: block;
	margin: 20px auto 0;
	color: var(--color-primary);
}

/* panel korzyści konta (w miejscu axil-signin-banner) */
.fs-auth-banner {
	padding: 50px 40px;
	border-radius: var(--radius-big);
	background: linear-gradient(160deg, var(--fs-primary-soft) 0%, var(--color-lighter) 55%);
}
.fs-auth-banner-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	margin-bottom: 25px;
	border-radius: 50%;
	font-size: 24px;
	color: var(--color-white);
	background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
}
.fs-auth-banner .title {
	margin-bottom: 15px;
}
.fs-auth-banner p {
	margin-bottom: 15px;
	color: var(--color-heading);
	font-weight: 500;
}
.fs-auth-benefits {
	list-style: none;
	margin: 0 0 30px;
	padding: 0;
}
/* na gradiencie panelu (#FDECEA → #F6F7FB) kolor treści ma 4,46:1 — ciemniejszy tekst */
.fs-auth-benefits li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 14px;
	font-size: var(--font-size-b1);
	line-height: 1.5;
	color: var(--color-heading);
}
.fs-auth-benefits li i {
	margin-top: 4px;
	color: var(--color-primary);
}
.fs-auth-banner .fs-auth-banner-note {
	margin-bottom: 12px;
}
@media only screen and (max-width: 991px) {
	.fs-auth-area .axil-signin-form {
		max-width: none;
	}
	.fs-auth-area .fs-auth-banner {
		margin-top: 60px;
		padding: 40px 30px;
	}
}
@media only screen and (max-width: 575px) {
	.fs-auth-area .fs-auth-lead {
		margin-bottom: 35px;
	}
	.fs-auth-banner {
		padding: 30px 20px;
	}
}

/* zgody: checkbox eTrade (input + label for) z długim opisem */
.fs-check {
	position: relative;
	margin-bottom: 22px;
}
.fs-check input[type="checkbox"] ~ label {
	display: block;
	font-size: var(--font-size-b2);
	line-height: 22px;
	color: var(--color-heading);
}
.fs-check input[type="checkbox"] ~ label::before {
	top: 3px;
}
.fs-check input[type="checkbox"] ~ label::after {
	top: 6px;
}
.fs-check label a {
	color: var(--color-primary);
	text-decoration: underline;
}
.fs-check label small {
	display: block;
	margin-top: 6px;
	font-size: var(--font-size-b3);
	line-height: 1.6;
	font-weight: 400;
	color: var(--color-body);
}
.fs-check-prompt .formError.inline {
	margin: 4px 0 0 28px;
}
/* fokus klawiatury na checkboksie zgody: obrys z odstępem, żeby nie zlewał się z ramką pola (label::before) */
html body .fs-check input:is([type="checkbox"], [type="radio"]):focus-visible ~ label::before {
	outline-offset: 3px;
}

/* ---------- konto klienta: powitanie i menu (member/_nav_etrade.phtml) ---------- */
.axil-dashboard-warp .axil-dashboard-author {
	margin-bottom: 30px;
}
.fs-account-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	font-size: 24px;
	color: var(--color-white);
	background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
}
.axil-dashboard-author .media-body .title {
	margin-top: 6px;
}
.axil-dashboard-aside .nav-link i {
	width: 20px;
	text-align: center;
}
/* aktywna pozycja: czerwony eTrade na tle --color-lighter ma 4,39:1 — ciemniejszy czerwony (5,3:1) */
.axil-dashboard-aside .nav-link.active,
.axil-dashboard-aside .nav-link:hover {
	color: var(--fs-primary-dark);
}
/* „Wyloguj się” w powitaniu: eTrade --color-chart03 (3,3:1) */
.axil-dashboard-overview .welcome-text a {
	color: var(--color-primary);
}
.axil-dashboard-overview .welcome-text a:hover {
	color: var(--color-heading);
}
/* węższa kolumna menu (768–991 i 1200–1399): mniejsze wcięcia, żeby „Moje powiadomienia” / „Moje listy zakupów” mieściły się w linii */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
	.axil-dashboard-aside {
		padding: 30px 20px 22px;
	}
	.axil-dashboard-aside .nav-link {
		padding: 9px 8px 9px 44px;
	}
	.axil-dashboard-aside .nav-link i {
		left: 14px;
	}
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
	.axil-dashboard-aside .nav-link {
		padding: 9px 6px 9px 34px;
		font-size: 13px;
	}
	.axil-dashboard-aside .nav-link i {
		left: 8px;
		font-size: 15px;
	}
}
@media only screen and (max-width: 767px) {
	.axil-dashboard-warp .axil-dashboard-author {
		margin-bottom: 20px;
	}
	.axil-dashboard-warp .axil-dashboard-author .media {
		display: flex;
		align-items: center;
		gap: 15px;
	}
	.axil-dashboard-warp .axil-dashboard-author .thumbnail {
		margin-bottom: 0;
	}
	.fs-account-avatar {
		width: 52px;
		height: 52px;
		font-size: 20px;
	}
	.axil-dashboard-aside {
		padding: 12px;
	}
	.axil-dashboard-aside .nav-tabs {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 4px;
	}
	.axil-dashboard-aside .nav-link {
		margin-bottom: 0;
		padding: 8px 6px 8px 34px;
		font-size: 13px;
		line-height: 1.4;
	}
	.axil-dashboard-aside .nav-link i {
		top: 10px;
		left: 8px;
		font-size: 14px;
	}
}

/* ---------- konto klienta: treść ---------- */
.axil-dashboard-area button.axil-btn {
	width: auto;
}
.axil-dashboard-area .axil-btn i {
	margin-right: 8px;
}
.axil-dashboard-area a.axil-btn.fs-btn-small,
.axil-dashboard-area button.axil-btn.fs-btn-small {
	padding: 12px 26px;
	font-size: var(--font-size-b2);
}
.axil-dashboard-area a.axil-btn.view-btn,
.axil-dashboard-area button.axil-btn.view-btn {
	padding: 9px 20px;
	border: 1px solid var(--color-body);
	background-color: transparent;
	color: var(--color-dark);
	font-size: var(--font-size-b2);
}
.axil-dashboard-area a.axil-btn.view-btn::before,
.axil-dashboard-area a.axil-btn.view-btn::after {
	display: none;
}
.axil-dashboard-area a.axil-btn.view-btn:hover {
	background-color: var(--color-primary);
	border-color: var(--color-primary);
	color: var(--color-white);
}
/* przyciski formularzy (Zapisz / Anuluj): ta sama wysokość i tekst, także na telefonie (eTrade zmniejsza .axil-btn ≤ 767 px) */
.axil-dashboard-area .fs-account-buttons a.axil-btn,
.axil-dashboard-area .fs-account-buttons button.axil-btn {
	padding: 15px 32px;
	border: 1px solid transparent;
	font-size: var(--font-size-b1);
	line-height: var(--line-height-b1);
}
.axil-dashboard-area .fs-account-buttons a.axil-btn.view-btn {
	border-color: var(--color-body);
}
@media only screen and (max-width: 767px) {
	.axil-dashboard-area .fs-account-buttons a.axil-btn,
	.axil-dashboard-area .fs-account-buttons button.axil-btn {
		padding: 11px 24px;
		font-size: var(--font-size-b2);
	}
}
.axil-dashboard-area .fs-account-box .fs-account-buttons a.axil-btn.view-btn {
	padding: 9px 20px;
	font-size: var(--font-size-b2);
}
.fs-account-buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 15px;
}
.fs-account-box {
	margin-top: 50px;
}
.fs-account-heading {
	margin-bottom: 25px;
	font-size: var(--h5);
	font-weight: 500;
}
.fs-account-note {
	margin-bottom: 25px;
	font-size: var(--font-size-b2);
	color: var(--color-heading);
}
.axil-dashboard-overview p a,
.fs-account-note a {
	color: var(--color-primary);
}
/* formularze konta (profil, hasło, adres, lista) — jedna szerokość jak formularz w col-lg-9 my-account.html */
.fs-account-narrow {
	max-width: 720px;
}
/* pierwsza etykieta pola eTrade „pływa” nad ramką (ok. 11 px w górę) — ok. 35 px odstępu od nagłówka */
.axil-dashboard-account .fs-account-heading {
	margin-bottom: 46px;
}
.axil-dashboard-account .form-group .form-control:disabled {
	background-color: var(--color-lighter);
}
.axil-dashboard-account .fs-check {
	margin-bottom: 35px;
}

/* kafle: rabat, punkty, newsletter */
.fs-account-stats {
	margin-top: 10px;
}
.fs-account-stat {
	display: flex;
	align-items: center;
	gap: 16px;
	height: 100%;
	padding: 22px 24px;
	border: 1px solid var(--color-light);
	border-radius: var(--radius);
}
.fs-account-stat .icon {
	display: inline-flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	font-size: 20px;
	color: var(--color-primary);
	background-color: var(--fs-primary-soft);
}
.fs-account-stat .label {
	display: block;
	font-size: var(--font-size-b2);
	color: var(--color-body);
}
.fs-account-stat .value {
	display: block;
	font-size: 22px;
	line-height: 1.3;
	color: var(--color-heading);
}
.fs-account-stat.fs-account-stat-large {
	display: inline-flex;
	height: auto;
	margin-bottom: 30px;
	padding: 28px 40px 28px 30px;
	background: linear-gradient(160deg, var(--fs-primary-soft) 0%, var(--color-lighter) 70%);
	border: 0;
}
.fs-account-stat.fs-account-stat-large .icon {
	width: 64px;
	height: 64px;
	font-size: 26px;
	color: var(--color-white);
	background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
}
.fs-account-stat.fs-account-stat-large .value {
	font-size: 32px;
}
.fs-account-stat.fs-account-stat-large .label {
	color: var(--color-heading);
}
@media only screen and (max-width: 1199px) {
	.fs-account-stats .fs-account-stat {
		padding: 14px 18px;
	}
	.fs-account-stats .fs-account-stat .icon {
		width: 42px;
		height: 42px;
		font-size: 17px;
	}
	.fs-account-stats .fs-account-stat .value {
		font-size: 19px;
	}
}
/* trzy kafle obok siebie w wąskiej kolumnie (768–1199): ikona nad tekstem */
@media only screen and (min-width: 768px) and (max-width: 1199px) {
	.fs-account-stats .fs-account-stat {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		padding: 16px;
	}
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
	.fs-account-stats .fs-account-stat .value {
		font-size: 17px;
	}
}

/* dane konta i adresy (axil-dashboard-address) */
.axil-dashboard-address .address-details li {
	word-break: break-word;
}
.fs-account-box .address-info .fs-account-buttons {
	margin-top: 20px;
}
.fs-address-tools {
	display: flex;
	align-items: center;
	gap: 8px;
}
.fs-address-defaults {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	margin-top: 20px;
	font-size: var(--font-size-b2);
}
.fs-address-defaults a {
	color: var(--color-primary);
	text-decoration: underline;
}
.fs-address-defaults a:hover {
	color: var(--color-heading);
}
.fs-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 12px;
	border-radius: 20px;
	font-size: 13px;
	font-weight: 500;
	color: var(--fs-primary-dark);
	background-color: var(--fs-primary-soft);
}

/* pusty stan */
.fs-account-empty {
	padding: 45px 30px;
	text-align: center;
	border-radius: var(--radius);
	background-color: var(--color-lighter);
}
.fs-account-empty > i {
	display: block;
	margin-bottom: 15px;
	font-size: 36px;
	color: var(--color-primary);
	opacity: .5;
}
.fs-account-empty p {
	margin-bottom: 0;
	font-size: var(--font-size-b1);
	color: var(--color-heading);
}
.fs-account-empty .axil-btn {
	margin-top: 20px;
}

/* tabele (axil-dashboard-order) — mniejsze nagłówki niż w my-account.html, bo kolumn jest więcej */
.axil-dashboard-order .fs-account-table {
	margin-bottom: 30px;
}
.axil-dashboard-order .fs-account-table thead th {
	padding: 16px 14px;
	font-size: var(--font-size-b1);
	text-transform: none;
	white-space: nowrap;
}
.axil-dashboard-order .fs-account-table tbody tr td,
.axil-dashboard-order .fs-account-table tbody tr th {
	min-width: 0;
	padding: 16px 14px;
}
.axil-dashboard-order .fs-account-table tbody tr th a {
	color: var(--color-primary);
}
.axil-dashboard-order .fs-account-table tbody tr td a:not(.axil-btn) {
	color: var(--color-heading);
}
.axil-dashboard-order .fs-account-table tbody tr td a:not(.axil-btn):hover {
	color: var(--color-primary);
}
.fs-account-actions {
	white-space: nowrap;
}
.axil-dashboard-area .fs-account-actions a.axil-btn.view-btn {
	padding: 7px 16px;
	font-size: 13px;
}
.fs-account-actions .axil-btn + .axil-btn,
.fs-account-actions .fs-icon-btn + .fs-icon-btn {
	margin-left: 8px;
}
.axil-dashboard-area a.axil-btn.view-btn.fs-pay-btn {
	border-color: var(--color-primary);
	background-color: var(--color-primary);
	color: var(--color-white);
}
.axil-dashboard-area a.axil-btn.view-btn.fs-pay-btn:hover {
	border-color: var(--fs-primary-dark);
	background-color: var(--fs-primary-dark);
}
.fs-icon-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 2px solid var(--color-lighter);
	background-color: var(--color-lighter);
	font-size: 14px;
	color: var(--color-heading);
	transition: var(--transition);
}
.fs-icon-btn:hover {
	border-color: var(--color-primary);
	color: var(--color-primary);
}
.axil-dashboard-order .fs-account-table td[data-title="Wartość"] {
	white-space: nowrap;
}
/* 1200–1399 px: kolumna treści ok. 780 px — mniejsze odstępy, nagłówki i akcje mogą się zawijać */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
	.axil-dashboard-order .fs-account-table thead th {
		padding: 14px 9px;
		font-size: 15px;
		white-space: normal;
	}
	.axil-dashboard-order .fs-account-table tbody tr td,
	.axil-dashboard-order .fs-account-table tbody tr th {
		padding: 14px 9px;
	}
	.axil-dashboard-order .fs-account-table thead th:last-child,
	.axil-dashboard-order .fs-account-table tbody tr td:last-child {
		padding-right: 9px;
	}
	.fs-account-actions {
		white-space: normal;
	}
	.fs-account-actions .axil-btn + .axil-btn {
		margin: 6px 0 0 6px;
	}
}
/* do 1199 px kolumna treści konta jest wąska — wiersze tabel jako karty (etykiety z data-title) */
@media only screen and (max-width: 1199px) {
	.axil-dashboard-order .fs-account-table thead {
		display: none;
	}
	.axil-dashboard-order .fs-account-table,
	.axil-dashboard-order .fs-account-table tbody,
	.axil-dashboard-order .fs-account-table tbody tr {
		display: block;
		width: 100%;
	}
	.axil-dashboard-order .fs-account-table tbody tr {
		margin-bottom: 15px;
		padding: 4px 16px;
		border: 1px solid var(--color-light);
		border-radius: var(--radius);
	}
	.axil-dashboard-order .fs-account-table tbody tr td,
	.axil-dashboard-order .fs-account-table tbody tr th {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 6px 15px;
		padding: 10px 0;
		text-align: right;
		border-bottom: 1px solid var(--color-lighter);
	}
	.axil-dashboard-order .fs-account-table tbody tr td:last-child,
	.axil-dashboard-order .fs-account-table tbody tr th:last-child {
		border-bottom: 0;
	}
	.axil-dashboard-order .fs-account-table tbody tr td::before,
	.axil-dashboard-order .fs-account-table tbody tr th::before {
		content: attr(data-title);
		flex-shrink: 0;
		text-align: left;
		text-transform: none;
		font-size: 13px;
		font-weight: 400;
		color: var(--color-body);
	}
	.axil-dashboard-order .fs-account-table tbody tr td.dataTables_empty {
		justify-content: center;
	}
	.axil-dashboard-order .fs-account-table tbody tr td.fs-account-actions {
		justify-content: flex-end;
		white-space: normal;
	}
	.axil-dashboard-order .fs-account-table tbody tr td.fs-account-actions::before {
		margin-right: auto;
	}
	.fs-account-actions .axil-btn + .axil-btn {
		margin-left: 0;
	}
}

/* DataTables (global_assets/js/datatables, klasy datatable-basic / datatable-nosort) */
.axil-dashboard-order .dataTables_wrapper .datatable-header,
.axil-dashboard-order .dataTables_wrapper .datatable-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	font-size: var(--font-size-b2);
	color: var(--color-body);
}
.axil-dashboard-order .dataTables_wrapper .datatable-header {
	margin-bottom: 20px;
}
.axil-dashboard-order .dataTables_wrapper .datatable-header label {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
}
.axil-dashboard-order .dataTables_filter {
	order: 2;
}
.axil-dashboard-order .dataTables_wrapper .dataTables_filter input {
	width: 290px;
	height: 44px;
	line-height: 44px;
	padding: 0 16px;
	font-size: var(--font-size-b2);
	border: 1px solid var(--color-light);
	border-radius: var(--radius);
	background-color: var(--color-white);
}
.axil-dashboard-order .dataTables_wrapper .dataTables_length select {
	width: auto;
	height: 44px;
	padding: 0 34px 0 14px;
	font-size: var(--font-size-b2);
	border-color: var(--color-light);
	background-position: right 12px center;
}
.axil-dashboard-order .dataTables_wrapper .datatable-footer {
	margin-bottom: 30px;
}
.axil-dashboard-order .dataTables_paginate {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}
.axil-dashboard-order .dataTables_paginate > span {
	display: flex;
	gap: 6px;
}
.axil-dashboard-order .dataTables_paginate .paginate_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 12px;
	border: 1px solid var(--color-light);
	border-radius: var(--radius);
	font-weight: 500;
	color: var(--color-heading);
	cursor: pointer;
	transition: var(--transition);
}
.axil-dashboard-order .dataTables_paginate .paginate_button:hover {
	border-color: var(--color-primary);
	color: var(--color-primary);
}
.axil-dashboard-order .dataTables_paginate .paginate_button.current {
	border-color: var(--color-primary);
	background-color: var(--color-primary);
	color: var(--color-white);
}
/* nieaktywne „Poprzednia” / „Następna”: szare tło zamiast przezroczystości (czytelny tekst 4,8:1) */
.axil-dashboard-order .dataTables_paginate .paginate_button.disabled {
	border-color: var(--color-lighter);
	background-color: var(--color-lighter);
	color: var(--color-body);
	pointer-events: none;
}
.axil-dashboard-order .fs-account-table thead th.sorting,
.axil-dashboard-order .fs-account-table thead th.sorting_asc,
.axil-dashboard-order .fs-account-table thead th.sorting_desc {
	cursor: pointer;
}
.axil-dashboard-order .fs-account-table thead th.sorting::after,
.axil-dashboard-order .fs-account-table thead th.sorting_asc::after,
.axil-dashboard-order .fs-account-table thead th.sorting_desc::after {
	margin-left: 8px;
	font-family: var(--font-awesome);
	font-size: 12px;
	font-weight: 900;
	opacity: .6;
	content: "\f0dc";
}
.axil-dashboard-order .fs-account-table thead th.sorting_asc::after {
	opacity: .9;
	content: "\f0de";
}
.axil-dashboard-order .fs-account-table thead th.sorting_desc::after {
	opacity: .9;
	content: "\f0dd";
}
@media only screen and (max-width: 575px) {
	.axil-dashboard-order .dataTables_wrapper .dataTables_filter,
	.axil-dashboard-order .dataTables_wrapper .dataTables_filter label {
		width: 100%;
	}
	.axil-dashboard-order .dataTables_wrapper .dataTables_filter input {
		width: 100%;
	}
}

/* ---------- lista zakupów (member/listazakupow.phtml, tabela z cart.html) ---------- */
.fs-list-share {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 30px;
	padding: 16px 20px;
	border-radius: var(--radius);
	background-color: var(--color-lighter);
	font-size: var(--font-size-b2);
	color: var(--color-heading);
	word-break: break-all;
}
.fs-list-share > i,
.fs-list-share .color {
	color: var(--fs-primary-dark);
}
/* podgląd koszyka z linku (basket/podglad.phtml): tekst bez łamania w środku słowa, na telefonie główny przycisk nad „Zastąp”, „Wróć” na końcu */
.fs-list-share.fs-import-note {
	word-break: normal;
}
@media only screen and (max-width: 575px) {
	.fs-import-actions > .axil-btn {
		order: 1;
	}
	.fs-import-actions .fs-list-summary .fs-list-total {
		width: 100%;
	}
	.fs-import-actions .fs-list-summary .btn-bg-primary {
		order: 1;
	}
	.fs-import-actions .fs-list-summary .btn-outline {
		order: 2;
	}
}
.axil-dashboard-area .fs-list-table tbody td {
	font-size: var(--font-size-b1);
}
.axil-dashboard-area .fs-list-table tbody td.product-title {
	font-size: var(--font-size-b1);
	line-height: 1.4;
}
.axil-dashboard-area .fs-list-table tbody td.product-title a {
	color: var(--color-heading);
}
.axil-dashboard-area .fs-list-table tbody td.product-title a:hover {
	color: var(--color-primary);
}
.axil-dashboard-area .fs-list-table td.product-subtotal .sum {
	font-style: normal;
	font-weight: 700;
	color: var(--color-primary);
}
.axil-dashboard-area .fs-list-table .remove-wishlist {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.fs-shopping-list div.quantity {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.fs-shopping-list div.quantity .quantity_button {
	display: inline-flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 2px solid transparent;
	border-radius: 50%;
	background-color: var(--color-lighter);
	font-size: 12px;
	line-height: 1;
	color: var(--color-black);
	cursor: pointer;
	transition: var(--transition);
}
.fs-shopping-list div.quantity .quantity_button:hover {
	border-color: var(--color-primary);
}
.fs-shopping-list div.quantity input.quantity {
	width: 48px;
	height: 32px;
	padding: 0;
	line-height: 32px;
	text-align: center;
	font-size: 18px;
	font-weight: 500;
	color: var(--color-dark);
	border: 0;
	background-color: transparent;
}
.fs-list-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 30px;
}
.fs-list-summary {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
	margin-left: auto;
}
.fs-list-total {
	font-size: var(--font-size-b1);
	color: var(--color-heading);
}
.fs-list-total .price {
	font-size: 22px;
	color: var(--color-primary);
	white-space: nowrap;
}
/* „Zapisz” (btn-outline) i „Dodaj do koszyka” — ta sama wysokość (50 px) */
.fs-list-actions .axil-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 13px 28px;
	border-width: 1px;
	border-style: solid;
	font-size: var(--font-size-b2);
	line-height: 22px;
}
.fs-list-actions .axil-btn.btn-bg-primary {
	border-color: transparent;
}
/* eTrade button.axil-btn.btn-outline ma ramkę 2 px (wyższa specyficzność) — „Zapisz” równy z „Dodaj do koszyka” */
.fs-list-actions .axil-btn.btn-outline {
	border-width: 1px;
}
.fs-account-guest {
	margin-bottom: 40px;
}
/* panel korzyści gościa (zamówienie, lista): węższy odstęp w kolumnie col-lg-4, poniżej 992 px pod treścią */
@media only screen and (max-width: 1199px) {
	.fs-account-guest {
		padding: 30px 24px;
	}
}
@media only screen and (max-width: 991px) {
	.fs-account-guest {
		margin: 50px 0 0;
	}
}
.fs-account-guest .title {
	font-size: var(--h5);
}
.fs-account-guest .fs-auth-benefits li {
	font-size: var(--font-size-b2);
}
.fs-account-guest .sign-up-btn {
	padding: 12px 26px;
	font-size: var(--font-size-b2);
}
@media only screen and (max-width: 767px) {
	.fs-list-summary {
		width: 100%;
		justify-content: space-between;
		margin-left: 0;
	}
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
	.axil-dashboard-area .fs-list-table td.product-price,
	.axil-dashboard-area .fs-list-table td.product-subtotal {
		min-width: 110px;
	}
	.axil-dashboard-area .fs-list-table th:last-child,
	.axil-dashboard-area .fs-list-table td:last-child {
		padding-right: 20px;
	}
}
/* 768–1199 px: obok menu konta tabela się nie mieści — układ kart z cart.html (eTrade robi go dopiero ≤ 767 px) */
@media only screen and (min-width: 768px) and (max-width: 1199px) {
	.axil-dashboard-area .fs-list-table {
		margin-top: 20px;
	}
	.axil-dashboard-area .fs-list-table thead {
		display: none;
	}
	.axil-dashboard-area .fs-list-table tbody tr {
		position: relative;
		display: block;
		margin-bottom: 30px;
		padding-left: 120px;
		border-bottom: 1px solid var(--color-lighter);
	}
	.axil-dashboard-area .fs-list-table tbody tr:last-child {
		margin-bottom: 0;
	}
	.axil-dashboard-area .fs-list-table tbody td {
		position: relative;
		display: block;
		min-width: 0;
		padding: 10px 10px 10px 0;
		font-size: 16px;
		text-align: right;
	}
	.axil-dashboard-area .fs-list-table tbody td:last-child {
		padding-right: 10px;
		border-bottom: none;
	}
	.axil-dashboard-area .fs-list-table tbody td::before {
		content: attr(data-title) ":";
		position: absolute;
		left: 0;
		font-size: 13px;
		color: var(--color-black);
	}
	.axil-dashboard-area .fs-list-table tbody td.product-remove {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 1;
		border-bottom: none;
	}
	.axil-dashboard-area .fs-list-table tbody td.product-remove .remove-wishlist {
		width: 25px;
		height: 25px;
		line-height: 22px;
		font-size: 10px;
	}
	.axil-dashboard-area .fs-list-table tbody td.product-thumbnail {
		position: absolute;
		top: 0;
		left: 0;
		width: 100px;
		min-width: 80px;
		border-bottom: none;
	}
	.axil-dashboard-area .fs-list-table tbody td.product-title {
		width: 100%;
		padding-right: 40px;
		text-align: left;
	}
	.axil-dashboard-area .fs-list-table tbody td.product-remove::before,
	.axil-dashboard-area .fs-list-table tbody td.product-thumbnail::before,
	.axil-dashboard-area .fs-list-table tbody td.product-title::before {
		display: none;
	}
}

/* ---------- szczegóły zamówienia (member/zamowienie.phtml) ---------- */
.fs-order-notice {
	margin-bottom: 30px;
	padding: 24px 28px;
	border-radius: var(--radius);
	background-color: var(--color-lighter);
	text-align: center;
}
.fs-order-notice p {
	margin-bottom: 15px;
	font-size: var(--font-size-b1);
	color: var(--color-heading);
}
.fs-order-notice .title {
	margin-bottom: 0;
	font-weight: 500;
}
.fs-order-notice.fs-order-notice-pay {
	border-left: 4px solid var(--color-primary);
	background-color: var(--fs-primary-soft);
}
/* #loader z fs-engine.css jest pozycjonowany na środek ekranu (left/top 50%, margin -60 px) — tu w ramce komunikatu */
.fs-order-loader {
	display: flex;
	justify-content: center;
	padding: 15px 0 0;
}
.fs-order-loader #loader {
	position: relative;
	top: auto;
	left: auto;
	margin: 0;
}
.fs-order-overview {
	margin-bottom: 45px;
}
.fs-order-box,
.fs-order-summary {
	height: 100%;
}
.fs-order-box {
	padding: 30px;
	border: 1px solid var(--color-light);
	border-radius: var(--radius);
}
.fs-order-section .fs-order-box {
	height: auto;
	padding: 24px 28px;
}
.fs-order-box p {
	margin-bottom: 10px;
	font-size: var(--font-size-b1);
	color: var(--color-heading);
}
.fs-order-facts {
	list-style: none;
	margin: 0;
	padding: 0;
}
.fs-order-facts li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 6px 20px;
	margin: 0;
	padding: 12px 0;
	border-bottom: 1px solid var(--color-lighter);
	font-size: var(--font-size-b2);
	color: var(--color-body);
}
.fs-order-facts li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}
.fs-order-facts li b {
	font-weight: 500;
	text-align: right;
	color: var(--color-heading);
}
.fs-order-facts li b.fs-badge {
	color: var(--fs-primary-dark);
}
.fs-order-link {
	font-weight: 500;
	color: var(--color-primary);
}
.fs-order-box .fs-order-link {
	display: inline-block;
	margin-top: 20px;
}
.fs-order-summary {
	padding: 30px;
}
.fs-order-summary .summery-table {
	--bs-table-bg: transparent;
	margin-bottom: 0;
}
.fs-order-summary .summery-table tbody td {
	min-width: 0;
	padding: 14px 15px 14px 0;
}
.fs-order-summary .summery-table tbody td:last-child {
	padding-right: 0;
	text-align: right;
	white-space: nowrap;
}
.fs-order-summary .summery-table tr.order-total td {
	border-bottom: 0;
}
.fs-order-summary .order-total-amount {
	font-size: 22px;
	font-weight: 700;
	color: var(--color-primary);
}
.fs-order-section {
	margin-bottom: 45px;
}
.fs-order-history {
	list-style: none;
	margin: 0;
	padding: 0;
}
.fs-order-history li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	margin: 0;
	padding: 14px 0;
	border-bottom: 1px solid var(--color-lighter);
	font-size: var(--font-size-b2);
	color: var(--color-heading);
}
.fs-order-history li:first-child {
	padding-top: 0;
}
.fs-order-history li b {
	font-weight: 700;
}
.fs-order-history .axil-btn {
	margin-left: auto;
}
.fs-order-state {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-weight: 500;
	color: var(--color-body);
}
.fs-order-state i {
	color: var(--color-primary);
}
/* kolory stanów eTrade (--color-success / -danger / -warning) mają 2,3–4:1 na bieli — ciemniejsze odpowiedniki ≥ 4,5:1 */
.fs-order-state.fs-order-state-success,
.fs-order-state.fs-order-state-success i {
	color: var(--bs-success);
}
.fs-order-state.fs-order-state-danger,
.fs-order-state.fs-order-state-danger i {
	color: var(--fs-primary-dark);
}
.fs-order-state.fs-order-state-warning,
.fs-order-state.fs-order-state-warning i {
	color: var(--fs-secondary-text);
}
.fs-order-date {
	color: var(--color-body);
}
.fs-order-hours p {
	margin-bottom: 0;
	font-size: var(--font-size-b2);
}
.fs-nowrap {
	white-space: nowrap;
}
.axil-dashboard-area .fs-order-products td.product-price .price del {
	display: block;
	color: var(--color-body);
}
.axil-dashboard-area .fs-order-products td.product-quantity b {
	font-weight: 500;
	color: var(--color-heading);
}
.fs-order-products .fs-order-discount {
	display: block;
	margin-top: 4px;
	font-size: 13px;
	font-weight: 400;
	color: var(--color-body);
}
.fs-order-address {
	height: 100%;
	padding: 24px 26px;
	border: 1px solid var(--color-light);
	border-radius: var(--radius);
}
.axil-dashboard-address .fs-order-address .title {
	margin-bottom: 14px;
	font-size: var(--font-size-b1);
	font-weight: 700;
	text-transform: none;
}
.axil-dashboard-address .fs-order-address .address-details li {
	margin: 0 0 6px;
	font-size: var(--font-size-b2);
	line-height: 1.6;
}
.fs-order-notes {
	margin-bottom: 0;
	font-size: var(--font-size-b2);
	color: var(--color-heading);
	word-break: break-word;
}
@media only screen and (max-width: 767px) {
	.fs-order-box,
	.fs-order-summary {
		padding: 22px 18px;
	}
	.fs-order-history .axil-btn {
		margin-left: 0;
	}
}

/* ---------- akceptacja regulaminu ---------- */
.fs-regulations-content {
	max-height: 420px;
	margin-bottom: 30px;
	padding: 30px;
	overflow-y: auto;
	border: 1px solid var(--color-light);
	border-radius: var(--radius);
}
.fs-regulations button.axil-btn {
	width: auto;
	white-space: normal;
	text-align: left;
}
@media only screen and (max-width: 575px) {
	.fs-regulations-content {
		padding: 20px 15px;
	}
}
/* długie adresy i e-maile w treści regulaminu (np. polubowne.uokik.gov.pl) nie przewijają pola w poziomie */
.fs-regulations-content,
.fs-regulations-content a {
	overflow-wrap: anywhere;
	word-break: break-word;
}

/* ---------- linki w tekście i walidacja (konto, logowanie) ---------- */
.axil-dashboard-overview p a,
.fs-account-note a {
	text-decoration: underline;
	text-underline-offset: 3px;
}
/* pole z komunikatem walidacji (validationEngine inline lub błąd z serwera w .formError obok pola) — czerwona ramka bez fokusu */
:is(.axil-dashboard-area, .fs-auth-area) .form-group:has(.formError) :is(.form-control, input[type="text"], input[type="password"], textarea, select) {
	border-color: var(--fs-primary-dark);
	box-shadow: 0 0 0 1px var(--fs-primary-dark);
}
:is(.axil-dashboard-area, .fs-auth-area) .fs-check:has(.formError) input[type="checkbox"] ~ label::before {
	border-color: var(--fs-primary-dark);
}

/* ---------- cele dotyku ≥ 44 px (ekrany dotykowe) ---------- */
@media only screen and (max-width: 1199px) {
	.axil-dashboard-area .fs-list-table tbody td.product-remove .remove-wishlist {
		width: 44px;
		height: 44px;
		line-height: 1;
		font-size: 14px;
	}
	.fs-shopping-list div.quantity .quantity_button {
		width: 44px;
		height: 44px;
		font-size: 14px;
	}
}
@media only screen and (max-width: 991px) {
	.axil-dashboard-aside .nav-link {
		display: flex;
		align-items: center;
		min-height: 44px;
	}
	.axil-dashboard-aside .nav-link i {
		top: 50%;
		transform: translateY(-50%);
	}
	.axil-dashboard-area a.axil-btn.view-btn,
	.axil-dashboard-area .fs-account-actions a.axil-btn.view-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
	}
	.fs-icon-btn {
		width: 44px;
		height: 44px;
	}
	.axil-dashboard-order .dataTables_paginate .paginate_button {
		min-width: 44px;
		height: 44px;
	}
}
.fs-order-link,
.fs-address-defaults a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}
.fs-order-box .fs-order-link {
	margin-top: 10px;
}
@media only screen and (max-width: 1199px) {
	.axil-dashboard-area .fs-list-table tbody td.product-title a,
	.axil-dashboard-order .fs-account-table tbody tr :is(td, th) a:not(.axil-btn, .fs-icon-btn) {
		display: inline-block;
		padding: 10px 0;
	}
	.fs-shopping-list div.quantity input.quantity {
		height: 44px;
		line-height: 44px;
	}
}
