.layout-shop-footer__swipe-button {
	display: block;
	height: 1.5rem;
	width: 100%;
}[dir] .layout-shop-footer__swipe-button {
	background-color: var(--color-background-base);
}

.layout-shop-footer__swipe-icon {
	display: block;
}

[dir] .layout-shop-footer__swipe-icon {
	margin: auto;
}

.layout-shop-alerts__block {
	width: 100%;
}[dir] .layout-shop-alerts__block {
	margin-bottom: var(--spacing-02);
}

[dir] .layout-shop-alerts__block:last-child {
	margin-bottom: 0;
}

/* TODO: Remove when marketing remove their margins */
/* stylelint-disable-next-line selector-max-compound-selectors */
.layout-shop-alerts__block .mk-spot > * {
	/* stylelint-disable-next-line declaration-no-important */
}
[dir] .layout-shop-alerts__block .mk-spot > * {
	margin: 0 !important;
}

@media screen and (min-width: 120rem) {
	[dir] .layout-shop-alerts ~ .order-totals-table-lines {
		margin-bottom: 0;
	}
}

.order-totals-table-lines .order-totals-table-lines__order-line {
	display: flex;
	justify-content: space-between;
}[dir] .order-totals-table-lines .order-totals-table-lines__order-line {
	margin-bottom: var(--spacing-02);
}

.order-totals-table-lines__name {
	white-space: nowrap;
}

.order-totals-table-lines__name,
.order-totals-table-lines__amount {
	font-size: var(--font-size-label-m);
	text-transform: uppercase;
	line-height: var(--line-height-label-m);
	letter-spacing: var(--letter-spacing-label-m);
	font-stretch: var(--font-stretch-label-m);
	font-weight: var(--font-weight-label-m);
}

.order-totals-table-lines__amount {
	white-space: nowrap;
}

[dir=ltr] .order-totals-table-lines__amount {
	text-align: right;
}

[dir=rtl] .order-totals-table-lines__amount {
	text-align: left;
}

@media screen and (min-width: 48rem) {
	[dir] .order-totals-table-lines {
		margin-bottom: var(--spacing-01);
	}
	[dir=ltr] .order-totals-table-lines {
		text-align: right;
	}
	[dir=rtl] .order-totals-table-lines {
		text-align: left;
	}

	.order-totals-table-lines__name,
	.order-totals-table-lines__amount {
		font-size: var(--font-size-label-s);
		text-transform: uppercase;
		line-height: var(--line-height-label-s);
		letter-spacing: var(--letter-spacing-label-s);
		font-stretch: var(--font-stretch-label-s);
		font-weight: var(--font-weight-label-s);
	}

	.order-totals-table-lines .order-totals-table-lines__order-line {
		justify-content: end;
	}

	[dir] .order-totals-table-lines .order-totals-table-lines__order-line {
		margin-bottom: var(--spacing-01);
	}
}

@media screen and (min-width: 120rem) {
	.order-totals-table-lines .order-totals-table-lines__order-line {
		justify-content: space-between;
	}
}

.order-totals-table__lines {
	width: 100%;
}[dir] .order-totals-table__lines {
	background-color: var(--color-background-base);
	padding: var(--spacing-05) var(--spacing-05) 0 var(--spacing-05);
}

.order-totals-table__lines__button {
	width: 100%;
}

@media screen and (min-width: 48rem) {
	[dir=ltr] .order-totals-table__lines {
		padding-right: calc(var(--spacing-08) + var(--spacing-09) + var(--spacing-05) + var(--shop-footer-button-min-width));
	}
	[dir=rtl] .order-totals-table__lines {
		padding-left: calc(var(--spacing-08) + var(--spacing-09) + var(--spacing-05) + var(--shop-footer-button-min-width));
	}

	[dir] .order-totals-table__lines__button {
		padding-top: var(--spacing-05);
	}
}

@media screen and (min-width: 120rem) {
	[dir] .order-totals-table__lines {
		margin-top: var(--spacing-07);
		padding: 0 var(--spacing-07);
	}

	[dir] .order-totals-table__lines__button {
		padding-top: 0;
	}
}

[dir=ltr] .layout-shop-footer__header-banner .zds-selection-cell {
	padding-left: var(--spacing-05);
	padding-right: var(--spacing-05);
}[dir=rtl] .layout-shop-footer__header-banner .zds-selection-cell {
	padding-right: var(--spacing-05);
	padding-left: var(--spacing-05);
}

:root {
	/* SS2026 Redesign - Fixed footer button width (225px for all resolutions < 1920px) */
	--shop-footer-button-min-width: 14.0625rem;
	--shop-footer-button-max-width-extra-small: 12.5rem;
}

.layout-shop-footer__body-button {
	height: 2rem;
	min-width: var(--shop-footer-button-min-width);
}

/* Extra small screens (e.g. Galaxy S8+, <375px): adjust button width */
@media (max-width: 23.375rem) {
	.layout-shop-footer__body-button {
		min-width: var(--shop-footer-button-max-width-extra-small);
	}
}

@media screen and (min-width: 48rem) {
	.layout-shop-footer__body-button {
		height: 2.5rem;
	}
}

/* Floating footer (>=1920px): button adapts to container width via width: 100% in layout-shop-footer-base.css */

.layout-shop-ss26 .layout-ss26-content {
	height: 100%;
}

.layout-shop-ss26 .layout-ss26-content__article {
	display: flex;
	flex-direction: column;
	height: 100%;
}

[dir] .layout-shop-ss26 .layout-ss26-content__article {
	margin: 0 auto;
}

.layout-shop-ss26 .layout-ss26-content__main {
	height: 100%;
}

.layout-shop-ss26__content-block {
	height: 100%;
}

[dir] .layout-shop-ss26__content {
	padding: var(--spacing-06) 0 var(--spacing-16) 0;
}

[dir] .layout-shop-ss26__mobile-subheader {
	margin-bottom: 0;
	padding: 0 var(--spacing-05);
}

[dir] .layout-shop-ss26 .layout-shop-alerts {
	margin-bottom: 0;
}

/*
 * layout-shop-ss26__alerts--regular-size is a contextual hook class without base styles.
 * It allows specific components (e.g., shop-cart-view, order-summary-view) to apply
 * custom layout styles to alerts based on their specific requirements.
 * Used only when !isSizeExtraLarge to differentiate from extra-large layout behavior.
 */

[dir] .layout-shop-ss26__alerts--spacing {
	margin-bottom: var(--spacing-08);
}

[dir] .layout-shop-ss26__content-header {
	margin-bottom: var(--spacing-05);
}

.chat .tray__button,
.zrc-minimized-widget-std {
	display: none;
}

@media screen and (min-width: 48rem) {
	[dir] .layout-shop-ss26__content-header {
		margin-bottom: var(--spacing-10);
	}

	[dir] .layout-shop-ss26__content {
		padding: var(--spacing-08) 0 var(--spacing-16) 0;
	}

	[dir] .layout-shop-ss26 .layout-ss26-content {
		padding-top: var(--spacing-15);
	}

	[dir] .layout-shop-ss26.layout-shop-ss26--with-spot .layout-ss26-content {
		padding-top: var(--spacing-07);
	}
}

/* Chat Legacy positioning - prevent overlap with floating footer */
/* stylelint-disable declaration-no-important, selector-max-compound-selectors */
@media screen and (min-width: 48rem) {
	.shop-area .chat .tray,
	.shop-area .chat .chat-panel {
		bottom: 10.625rem !important;
	}
}

@media screen and (min-width: 120rem) {
	.shop-area .chat .tray,
	.shop-area .chat .chat-panel {
		bottom: 25rem !important;
	}
}
/* stylelint-enable declaration-no-important, selector-max-compound-selectors */

.layout-shop-footer {
	bottom: 0;
	position: fixed;
	width: 100vw;
	z-index: 3;
}[dir] .layout-shop-footer {
	transition-duration: var(--transition-duration-normal, 300ms);
	transition-property: opacity, transform;
	transition-timing-function: ease-in-out;
}[dir=ltr] .layout-shop-footer {
	left: 0;
	right: 0;
}[dir=rtl] .layout-shop-footer {
	right: 0;
	left: 0;
}

/* SS2026 - Hide footer when XSell is visible (all resolutions) */
.layout-shop-footer--hidden {
	opacity: 0;
	pointer-events: none;
}
[dir] .layout-shop-footer--hidden {
	transform: translateY(100%);
}

.layout-shop-footer__container {
	align-items: center;
	display: flex;
}

[dir] .layout-shop-footer__container {
	background-color: var(--color-background-base);
	padding: var(--spacing-05);
}

.layout-shop-footer__terms,
.layout-shop-footer__gift-options,
.layout-shop-footer__totals {
	flex: 1;
}

.shop-cart-view__footer .layout-shop-footer__terms {
	display: none;
}

.layout-shop-footer__totals {
	align-items: center;
	display: flex;
	gap: var(--spacing-05);
	justify-content: space-between;
}

.layout-shop-footer__totals--reversed {
	flex-direction: row-reverse;
}

[dir] .layout-shop-footer__header-swipe-icon {
	background-color: var(--color-background-base);
}

@media screen and (min-width: 48rem) {
	.shop-area .zds-toast-content {
		/* overriding this ZDS prop for correct positioning of the toast */
		--zds-toast-content-padding: 0;
	}

	[dir=ltr] .layout-shop-footer__notification {
		left: 0;
	}

	[dir=rtl] .layout-shop-footer__notification {
		right: 0;
	}

	.layout-shop-footer__container {
		gap: var(--spacing-08);
		justify-content: space-between;
	}

	[dir=ltr] .layout-shop-footer__container {
		padding-left: var(--spacing-08);
		padding-right: var(--spacing-08);
	}

	[dir=rtl] .layout-shop-footer__container {
		padding-right: var(--spacing-08);
		padding-left: var(--spacing-08);
	}

	.layout-shop-footer__totals {
		flex-direction: row;
		justify-content: flex-end;
	}

	.layout-shop-footer__app-notification {
		position: absolute;
		width: 32rem;
	}

	[dir=ltr] .layout-shop-footer__app-notification {
		right: var(--spacing-08);
	}

	[dir=rtl] .layout-shop-footer__app-notification {
		left: var(--spacing-08);
	}

	.layout-shop-footer .layout-shop-footer__body-button {
		--shop-footer-button-min-width: 14.0625rem;

		min-width: var(--shop-footer-button-min-width);
	}

	[dir=ltr] [dir='rtl'] .layout-shop-footer__app-notification {
		left: var(--spacing-08);
		right: unset;
	}

	[dir=rtl] [dir='rtl'] .layout-shop-footer__app-notification {
		right: var(--spacing-08);
		left: unset;
	}
}

/* ApplePay custom style */
/* stylelint-disable selector-max-compound-selectors */
.layout-shop-footer__totals--full-width {
	flex-direction: column;
	gap: var(--spacing-04);
}

.layout-shop-footer__totals--full-width .layout-shop-footer__totals-container {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.layout-shop-footer__totals--full-width .layout-shop-footer__body-button {
	flex: 1;
	min-width: auto;
	width: auto;
}

@media (--media-xs) {
	.layout-shop-footer__totals {
		gap: unset;
	}
}

/* SS2026 Redesign - Floating footer only for large desktop (--media-xxxl) */
@media screen and (min-width: 120rem) {
	.layout-shop-footer--floating {
		bottom: 0;
		display: flex;
		flex-direction: column;
		gap: 0;
		position: fixed;
		width: 24.25rem;
	}
	[dir] .layout-shop-footer--floating {
		border-radius: 0;
		box-shadow: none;
		padding-top: 0;
		transition-duration: var(--transition-duration-normal, 300ms);
		transition-property: opacity, transform;
		transition-timing-function: ease-in-out;
	}
	[dir=ltr] .layout-shop-footer--floating {
		left: auto;
		right: 0;
	}
	[dir=rtl] .layout-shop-footer--floating {
		right: auto;
		left: 0;
	}

	.layout-shop-footer--floating:has(.layout-shop-footer__payment-buttons-container--two-buttons) {
		width: 26.875rem;
	}

	.layout-shop-footer--floating.layout-shop-footer--hidden {
		opacity: 0;
		pointer-events: none;
	}

	[dir] .layout-shop-footer--floating.layout-shop-footer--hidden {
		transform: translateY(100%);
	}

	.layout-shop-footer--floating .layout-shop-footer__container {
		align-items: stretch;
		flex-direction: column;
		gap: var(--spacing-04);
	}

	[dir] .layout-shop-footer--floating .layout-shop-footer__container {
		padding: var(--spacing-07);
	}

	/* Hide gift options in floating footer */
	.layout-shop-footer--floating .layout-shop-footer__gift-options {
		display: none;
	}

	/* Terms below button (order: 3) */
	.layout-shop-footer--floating .layout-shop-footer__terms {
		display: block;
		flex: unset;
		order: 3;
	}

	[dir] .layout-shop-footer__totals {
		padding-top: var(--spacing-07);
	}

	/* Totals above button (order: 1) */
	.layout-shop-footer--floating .layout-shop-footer__totals {
		flex: unset;
		flex-direction: column;
		gap: var(--spacing-06);
		justify-content: flex-start;
		order: 1;
		width: 100%;
	}

	.layout-shop-footer--floating .layout-shop-footer__totals-container {
		display: flex;
		justify-content: space-between;
		width: 100%;
	}

	/* Button full width (order: 2) */
	.layout-shop-footer--floating .layout-shop-footer__continue {
		order: 2;
		width: 100%;
	}

	.layout-shop-footer--floating .layout-shop-footer__body-button {
		min-width: unset;
		width: 100%;
	}

	[dir] .layout-shop-footer--floating:has(.layout-shop-footer__container--show-order-lines) .layout-shop-alerts {
		margin-bottom: var(--spacing-04);
	}

	[dir=ltr] .layout-shop-footer--floating:has(.layout-shop-footer__container--show-order-lines) .layout-shop-alerts {
		padding-left: var(--spacing-07);
		padding-right: var(--spacing-07);
	}

	[dir=rtl] .layout-shop-footer--floating:has(.layout-shop-footer__container--show-order-lines) .layout-shop-alerts {
		padding-right: var(--spacing-07);
		padding-left: var(--spacing-07);
	}

	[dir=ltr] .layout-shop-footer--floating:has(.layout-shop-footer__container--show-order-lines) .layout-shop-footer__header-banner {
		padding-left: var(--spacing-07);
		padding-right: var(--spacing-07);
	}

	[dir=rtl] .layout-shop-footer--floating:has(.layout-shop-footer__container--show-order-lines) .layout-shop-footer__header-banner {
		padding-right: var(--spacing-07);
		padding-left: var(--spacing-07);
	}

	.layout-shop-footer__app-notification {
		position: absolute;
		width: calc(100% - 2 * var(--spacing-07));
	}

	[dir=ltr] .layout-shop-footer__app-notification {
		left: var(--spacing-07);
		right: unset;
	}

	[dir=rtl] .layout-shop-footer__app-notification {
		right: var(--spacing-07);
		left: unset;
	}

	[dir=ltr] [dir='rtl'] .layout-shop-footer__app-notification {
		left: unset;
		right: var(--spacing-07);
	}

	[dir=rtl] [dir='rtl'] .layout-shop-footer__app-notification {
		right: unset;
		left: var(--spacing-07);
	}

	[dir] .layout-shop-footer--floating:has(.layout-shop-footer__container--show-order-lines) .layout-shop-footer__container {
		padding-top: 0;
	}
}

/* SS2026 - Wider floating footer for extra large screens (--media-xxxxxl >= 2560px) */
@media screen and (min-width: 160rem) {
	.layout-shop-footer--floating {
		width: 26.875rem;
	}
}

