/**
 * AUTOBOSS Side Cart — original stylesheet.
 * Geometry/type-scale tokens follow docs/anker-reference.md; accent comes
 * from the Blocksy palette. Bottom-sheet media query for non-default
 * breakpoints is emitted inline by Frontend\Assets.
 */

#autoboss-side-cart {
	--absc-width: 460px;
	--absc-pad-x: 36px;
	--absc-dur: .32s;
	--absc-sheet-dur: .36s;
	--absc-ease: cubic-bezier(.4, 0, .2, 1);
	--absc-z: 999990;
	--absc-text: #1d1d1f;
	--absc-text-2: #777;
	--absc-text-3: #999;
	--absc-line: #e8e8e8;
	--absc-line-2: #ddd;
	--absc-bg-soft: #f7f8f9;
	--absc-deal: #f90;
	--absc-link: #0082ff;
	--absc-accent: var(--theme-palette-color-1, #feb511);
	--absc-price: var(--theme-palette-color-2, var(--absc-accent));
	--absc-accent-text: #1d1d20;
	--absc-radius: 4px;
	--absc-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);

	position: fixed;
	inset: 0;
	z-index: var(--absc-z);
	pointer-events: none;
	font-family: inherit;

	/* The closed sheet sits only 2% of its height past the viewport edge;
	 * iOS Safari repositions fixed elements with a frame of lag while the
	 * toolbar collapses on scroll, which can flash that edge (the "My Cart"
	 * header) into view. visibility makes the closed drawer unpaintable;
	 * the delay keeps the close animation on screen until it finishes. */
	visibility: hidden;
	transition: visibility 0s var(--absc-dur);
}

html.absc-locked,
html.absc-locked body {
	overflow: hidden;
}

/* ------------------------------------------------------------ overlay/panel */

#autoboss-side-cart .absc__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .5);
	opacity: 0;
	transition: opacity var(--absc-dur) var(--absc-ease);
}

#autoboss-side-cart .absc__panel {
	position: absolute;
	inset: 0 0 0 auto;
	width: var(--absc-width);
	max-width: 100%;
	display: flex;
	flex-direction: column;
	background: #fff;
	box-shadow: var(--absc-shadow);
	transform: translateX(102%);
	transition: transform var(--absc-dur) var(--absc-ease);
	outline: none;
}

#autoboss-side-cart.is-open {
	pointer-events: auto;
	visibility: visible;
	transition-delay: 0s;
}

#autoboss-side-cart.is-open .absc__overlay {
	opacity: 1;
}

#autoboss-side-cart.is-open .absc__panel {
	transform: none;
}

#autoboss-side-cart.is-busy .absc__content {
	pointer-events: none;
}

/* The bottom-sheet media query is NOT here.
 *
 * It is emitted by Frontend\Assets::inline_props(), always, using the
 * configured breakpoint. It used to be hardcoded at 767px in this file with
 * the inline emitter bolted on top for custom breakpoints, which broke in both
 * directions: a breakpoint above 768 left the band [768, bp-1] without the
 * pad-x/duration tokens, and a breakpoint BELOW 768 did not work at all --
 * this query still fired and turned the drawer into a sheet between bp and
 * 767px regardless of the setting.
 *
 * A CSS custom property cannot parameterize an @media condition, so the whole
 * block moved to the one place that knows the setting. Keep it there.
 */

@media (prefers-reduced-motion: reduce) {
	#autoboss-side-cart .absc__overlay,
	#autoboss-side-cart .absc__panel {
		transition: none;
	}
}

/* ----------------------------------------------------------------- content */

#autoboss-side-cart .absc__content {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-height: 0;
	color: var(--absc-text);
}

#autoboss-side-cart .absc__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;
	height: 56px;
	padding: 0 var(--absc-pad-x);
	border-bottom: 1px solid var(--absc-line);
}

#autoboss-side-cart .absc__title {
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
}

#autoboss-side-cart .absc__count {
	font-weight: 500;
}

#autoboss-side-cart .absc__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	margin-right: -6px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--absc-text);
	cursor: pointer;
}

#autoboss-side-cart .absc__body {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	background: var(--absc-bg-soft);
}

/* ------------------------------------------------------------------- items */

#autoboss-side-cart .absc__items {
	background: #fff;
	padding: 0 var(--absc-pad-x);
}

#autoboss-side-cart .absc__item {
	display: flex;
	gap: 16px;
	padding: 24px 0;
}

#autoboss-side-cart .absc__item + .absc__item {
	border-top: 1px solid var(--absc-line);
}

#autoboss-side-cart .absc__item-media {
	flex: 0 0 96px;
}

#autoboss-side-cart .absc__item-media img {
	display: block;
	width: 96px;
	height: 96px;
	object-fit: contain;
	border-radius: var(--absc-radius) !important;
}

#autoboss-side-cart .absc__item-main {
	flex: 1;
	min-width: 0;
}

#autoboss-side-cart .absc__item-title {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	color: var(--absc-text);
	text-decoration: none;
}

#autoboss-side-cart a.absc__item-title:hover {
	text-decoration: underline;
}

#autoboss-side-cart .absc__item-meta {
	margin-top: 2px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6;
	color: var(--absc-text-3);
}

#autoboss-side-cart .absc__item-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 12px;
}

#autoboss-side-cart .absc__qty {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid var(--absc-line-2);
	border-radius: 2px;
}

#autoboss-side-cart .absc__qty--fixed {
	padding: 5px 14px;
	font-size: 15px;
}

/* :where(button) resets in the theme fight generic buttons — keep ours
   scoped with equal-or-higher specificity and explicit resets. */
#autoboss-side-cart .absc__qty-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 0 !important;
	background: #fff;
	color: var(--absc-text);
	cursor: pointer;
}

#autoboss-side-cart .absc__qty-btn[disabled] {
	color: var(--absc-line-2);
	cursor: default;
}

#autoboss-side-cart .absc__qty-input {
	width: 34px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 0 !important;
	background: #fff;
	font-size: 15px;
	font-weight: 700;
	text-align: center;
	color: var(--absc-text);
	-moz-appearance: textfield;
	appearance: textfield;
}

#autoboss-side-cart .absc__qty-input::-webkit-outer-spin-button,
#autoboss-side-cart .absc__qty-input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

#autoboss-side-cart .absc__item-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--absc-text);
	cursor: pointer;
}


#autoboss-side-cart .absc__item-pricing {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
}

#autoboss-side-cart .absc__item-price {
	font-size: 19px;
	font-weight: 700;
	line-height: 1.25;
}

/* Woo may emit <del>/<ins> pairs inside the filtered price. */
#autoboss-side-cart .absc__item-price del {
	font-size: 14px;
	color: var(--absc-line-2);
}

#autoboss-side-cart .absc__item-price ins {
	text-decoration: none;
}

#autoboss-side-cart .absc__item-compare {
	font-size: 14px;
	font-weight: 700;
	color: var(--absc-line-2);
	text-decoration: line-through;
}

/* Server rendering no longer emits this label. Keep the defensive hide for
   shoppers whose WooCommerce sessionStorage still holds an older fragment. */
#autoboss-side-cart .absc__item-save {
	display: none !important;
}

/* ---------------------------------------------------------- recommendations */

#autoboss-side-cart .absc__reco {
	padding: 20px 0 24px;
}

#autoboss-side-cart .absc__reco-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 0 var(--absc-pad-x) 12px;
}

#autoboss-side-cart .absc__reco-title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	border: 0;
	background: none;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.6;
	color: #333;
	cursor: pointer;
	text-align: left;
}

#autoboss-side-cart .absc__reco.is-open .absc__reco-title .absc__chevron {
	transform: rotate(180deg);
}

#autoboss-side-cart .absc__reco-nav {
	display: none;
	gap: 8px;
}

#autoboss-side-cart .absc__reco.is-open .absc__reco-nav {
	display: inline-flex;
}

#autoboss-side-cart .absc__reco-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 1px solid var(--absc-line);
	border-radius: 50% !important;
	background: #fff;
	color: var(--absc-text);
	cursor: pointer;
}

#autoboss-side-cart .absc__reco-arrow[disabled],
#autoboss-side-cart .absc__reco-arrow[aria-disabled="true"] {
	border-color: var(--absc-line);
	background: var(--absc-bg-soft);
	color: var(--absc-text-3);
	opacity: .45;
	cursor: not-allowed;
}

#autoboss-side-cart .absc__reco-body {
	display: none;
}

#autoboss-side-cart .absc__reco.is-open .absc__reco-body {
	display: block;
}

#autoboss-side-cart .absc__reco-track {
	display: flex;
	gap: 14px;
	margin: 0;
	padding: 2px var(--absc-pad-x) 6px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding-left: var(--absc-pad-x);
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

#autoboss-side-cart .absc__reco-track::-webkit-scrollbar {
	display: none;
}

#autoboss-side-cart .absc__reco-card {
	display: flex;
	flex-direction: column;
	flex: 0 0 186px;
	margin: 0;
	padding: 10px 0 0;
	border-radius: var(--absc-radius);
	background: #fff;
	scroll-snap-align: start;
}

#autoboss-side-cart .absc__reco-media {
	display: block;
	position: relative;
	width: 110px;
	height: 110px;
	aspect-ratio: 1 / 1;
	margin: 0 auto;
	overflow: hidden;
	border-radius: var(--absc-radius) !important;
}

#autoboss-side-cart .absc__reco-media img {
	display: block;
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	min-width: 0;
	min-height: 0;
	max-width: none;
	object-fit: contain;
	object-position: center;
	border-radius: inherit !important;
}

#autoboss-side-cart .absc__reco-name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	flex: 1;
	margin: 12px 12px 6px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	color: #333;
	text-decoration: none;
}

#autoboss-side-cart .absc__reco-add {
	display: flex;
	align-items: center;
	gap: 6px;
	width: 100%;
	min-height: 42px;
	padding: 0 12px;
	border: 0;
	border-top: 1px solid var(--absc-bg-soft);
	border-radius: 0 0 var(--absc-radius) var(--absc-radius) !important;
	background: #fff;
	color: #333;
	cursor: pointer;
	text-decoration: none;
	text-align: left;
}


#autoboss-side-cart .absc__reco-price {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
}

#autoboss-side-cart .absc__reco-price del {
	margin-left: 4px;
	font-size: 12px;
	font-weight: 600;
	color: var(--absc-text-3);
}

#autoboss-side-cart .absc__reco-price ins {
	text-decoration: none;
}

/* ------------------------------------------------------------------- empty */

#autoboss-side-cart .absc__empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-height: 100%;
	padding: 48px var(--absc-pad-x);
	background: #fff;
	text-align: center;
}

#autoboss-side-cart .absc__empty-icon {
	color: var(--absc-text-3);
}

#autoboss-side-cart .absc__empty-text {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	color: var(--absc-text-2);
}

/* ------------------------------------------------------------------ footer */

#autoboss-side-cart .absc__footer {
	flex-shrink: 0;
	padding: 20px var(--absc-pad-x) 24px;
	background: #fff;
	border-top: 1px solid rgba(222, 222, 222, .8);
}

/* ------------------------------------------------------------------ coupon */

#autoboss-side-cart .absc__coupon {
	margin-bottom: 12px;
}

#autoboss-side-cart .absc__coupon-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 0 0 4px;
	border: 0;
	background: none;
	cursor: pointer;
	font-size: 16px;
	line-height: 1.5;
}

#autoboss-side-cart .absc__coupon-label {
	font-weight: 600;
	color: var(--absc-text);
}

/* Discount-code actions use the theme accent (not Anker's blue). */
#autoboss-side-cart .absc__coupon-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-weight: 600;
	color: var(--absc-accent);
}

#autoboss-side-cart .absc__chevron {
	transition: transform .15s var(--absc-ease);
}

#autoboss-side-cart .absc__coupon.is-open .absc__chevron {
	transform: rotate(180deg);
}

#autoboss-side-cart .absc__coupon-body {
	display: none;
	padding: 2px 0 4px;
}

#autoboss-side-cart .absc__coupon.is-open .absc__coupon-body {
	display: block;
}

#autoboss-side-cart .absc__coupon-group {
	display: flex;
	align-items: stretch;
	border: 1px solid var(--absc-line);
	border-radius: 2px;
	background: #eaeaec;
}

#autoboss-side-cart .absc__coupon-input {
	flex: 1;
	min-width: 0;
	height: 40px;
	padding: 0 12px;
	border: 0;
	border-radius: 0 !important;
	background: transparent;
	font-size: 14px;
	font-weight: 600;
	color: var(--absc-text);
}

#autoboss-side-cart .absc__coupon-input:focus {
	outline: none;
}

#autoboss-side-cart .absc__coupon-apply {
	padding: 0 14px;
	border: 0;
	border-radius: 0 !important;
	background: transparent;
	font-size: 14px;
	font-weight: 700;
	color: var(--absc-accent);
	cursor: pointer;
}

#autoboss-side-cart .absc__coupon-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}

#autoboss-side-cart .absc__coupon-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 3px 8px;
	border-radius: 3px;
	background: #eaeaec;
	font-size: 12px;
	font-weight: 700;
	color: #000;
}

#autoboss-side-cart .absc__coupon-chip-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	padding: 0;
	border: 0;
	border-radius: 50% !important;
	background: #9a9a9d;
	color: #fff;
	cursor: pointer;
}

#autoboss-side-cart .absc__coupon-notices:empty {
	display: none;
}

#autoboss-side-cart .absc__coupon-notices {
	margin-bottom: 8px;
	font-size: 13px;
	line-height: 1.45;
}

#autoboss-side-cart .absc__coupon-notices ul,
#autoboss-side-cart .absc__coupon-notices li,
#autoboss-side-cart .absc__coupon-notices .woocommerce-error,
#autoboss-side-cart .absc__coupon-notices .woocommerce-message,
#autoboss-side-cart .absc__coupon-notices .woocommerce-info {
	margin: 0;
	padding: 0;
	list-style: none;
	background: none;
	border: 0;
}

#autoboss-side-cart .absc__coupon-notices .woocommerce-error,
#autoboss-side-cart .absc__coupon-notices .wc-block-components-notice-banner.is-error {
	color: #c00;
}

#autoboss-side-cart .absc__coupon-notices .woocommerce-message,
#autoboss-side-cart .absc__coupon-notices .wc-block-components-notice-banner.is-success {
	color: #1a7f37;
}

/* ----------------------------------------------------------------- summary */

/* Detail rows collapse behind the footer "Check Details" toggle (Anker). */
#autoboss-side-cart .absc__summary-rows {
	display: none;
	padding-bottom: 4px;
}

#autoboss-side-cart .absc__summary.is-open .absc__summary-rows {
	display: block;
}

#autoboss-side-cart .absc__summary-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 3px 0;
	font-size: 16px;
	line-height: 1.5;
}

#autoboss-side-cart .absc__summary-label {
	font-weight: 500;
}

#autoboss-side-cart .absc__summary-value {
	font-weight: 700;
	text-align: right;
}

#autoboss-side-cart .absc__summary-row--discount .absc__summary-value {
	color: var(--absc-deal);
}

#autoboss-side-cart .absc__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-top: 8px;
	font-size: 16px;
	line-height: 1.5;
}

#autoboss-side-cart .absc__total-label {
	font-weight: 600;
}

#autoboss-side-cart .absc__total-value {
	font-size: 22px;
	font-weight: 700;
}

#autoboss-side-cart .absc__total-dec {
	font-size: 16px;
}

#autoboss-side-cart .absc__actions {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 16px;
}

/* "Check Details ⌃" text button left of the checkout button. Chevron points
   up while collapsed (the rows expand upward, Anker-style), down when open. */
#autoboss-side-cart .absc__details-toggle {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	min-height: 48px;
	padding: 0;
	border: 0;
	background: none;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--absc-text);
	cursor: pointer;
	white-space: nowrap;
}

#autoboss-side-cart .absc__details-toggle .absc__chevron {
	transform: rotate(180deg);
}

#autoboss-side-cart .absc__details-toggle[aria-expanded="true"] .absc__chevron {
	transform: rotate(0deg);
}

#autoboss-side-cart .absc__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 8px 20px;
	border: 1px solid transparent;
	border-radius: var(--absc-radius) !important;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	gap: 8px;
}

#autoboss-side-cart .absc__button--primary {
	flex: 1;
	background: var(--absc-accent);
	color: var(--absc-accent-text);
}

#autoboss-side-cart .absc__button--primary:hover {
	color: var(--absc-accent-text);
}

#autoboss-side-cart .absc__checkout {
	position: relative;
	white-space: nowrap;
	flex-wrap: nowrap;
	min-width: 0;
	font-size: 14px;
	padding-inline: 28px;
}

#autoboss-side-cart .absc__checkout.is-loading {
	cursor: progress;
}

/* Match the detail button's hover/press overlay and leading 14px spinner. */
#autoboss-side-cart :is(.absc__button, button) { position: relative; }
#autoboss-side-cart :is(.absc__button, button)::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
	background: transparent;
	transition: background .15s;
}
@media (hover: hover) {
	#autoboss-side-cart :is(.absc__button, button):not(:disabled):hover::after { background: rgba(255, 255, 255, .24); }
}
#autoboss-side-cart :is(.absc__button, button):not(:disabled):active::after { background: rgba(0, 0, 0, .08); }
#autoboss-side-cart .is-loading { opacity: 1; cursor: progress; }
#autoboss-side-cart .is-loading::before {
	content: "";
	display: inline-block;
	flex: 0 0 14px;
	box-sizing: border-box;
	width: 14px;
	height: 14px;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: absc-checkout-spin .7s linear infinite;
}
#autoboss-side-cart .is-loading > svg { display: none; }

@keyframes absc-checkout-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (max-width: 480px) {
	#autoboss-side-cart .absc__actions { flex-wrap: wrap; gap: 8px; }
	#autoboss-side-cart .absc__checkout { flex-basis: 100%; }
	#autoboss-side-cart .absc__details-toggle { min-height: 28px; }
}

#autoboss-side-cart .absc__item-price,
#autoboss-side-cart .absc__reco-price,
#autoboss-side-cart .absc__total-value,
#autoboss-side-cart .absc__summary-row .amount { color: var(--absc-price); }
#autoboss-side-cart :is(.absc__item-price, .absc__reco-price, .absc__total-value) .amount { color: inherit; }

.absc-feedback { position: fixed; z-index: 1000001; left: 50%; top: 42%; transform: translate(-50%, -50%); max-width: 85vw; padding: 12px 18px; border-radius: 10px; background: rgba(0, 0, 0, .8); color: #fff; font-size: 14px; line-height: 22px; text-align: center; pointer-events: none; }
.absc-feedback[hidden] { display: none !important; }

#autoboss-side-cart .absc__button--ghost {
	background: #fff;
	border-color: var(--absc-text);
	color: var(--absc-text);
}

/* ---------------------------------------------------------- custom blocks */

#autoboss-side-cart .absc__block {
	padding: 14px 0;
	border-bottom: 1px solid var(--absc-line);
	font-size: 14px;
	line-height: 1.5;
	color: var(--absc-text);
}

#autoboss-side-cart .absc__block-heading {
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 700;
	color: var(--absc-text);
}

#autoboss-side-cart .absc__block--collapsible .absc__block-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 0;
	background: none;
	border: 0;
	font-size: 16px;
	font-weight: 700;
	color: var(--absc-text);
	cursor: pointer;
}

#autoboss-side-cart .absc__block--collapsible .absc__block-head .absc__chevron {
	transition: transform .18s ease;
}

#autoboss-side-cart .absc__block--collapsible.is-open .absc__block-head .absc__chevron {
	transform: rotate(180deg);
}

#autoboss-side-cart .absc__block--collapsible .absc__block-body {
	display: none;
	padding-top: 10px;
}

#autoboss-side-cart .absc__block--collapsible.is-open .absc__block-body {
	display: block;
}

#autoboss-side-cart .absc__block img {
	max-width: 100%;
	height: auto;
}

/* ----------------------------------------------------------- installments */

#autoboss-side-cart .absc__inst {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 10px 0;
	border-bottom: 1px solid var(--absc-line);
	font-size: 13px;
	text-align: center;
	color: var(--absc-text);
}

/* Circled "?" right after the text — the only way into the overlay. */
#autoboss-side-cart .absc__inst-help {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	padding: 0;
	border: 1px solid currentColor;
	border-radius: 50% !important;
	background: none;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	color: var(--absc-text-3);
	cursor: pointer;
}

#autoboss-side-cart .absc__inst-help:hover {
	color: var(--absc-text);
}

#autoboss-side-cart .absc__inst-panel {
	position: absolute;
	inset: 0;
	z-index: 6;
	display: flex;
	flex-direction: column;
	background: #fff;
	transform: translateX(100%);
	visibility: hidden;
	transition: transform var(--absc-dur) var(--absc-ease), visibility 0s linear var(--absc-dur);
}

#autoboss-side-cart .absc__inst-panel.is-open {
	transform: none;
	visibility: visible;
	transition: transform var(--absc-dur) var(--absc-ease);
}

#autoboss-side-cart .absc__inst-head {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 0 0 auto;
	padding: 14px var(--absc-pad-x);
	border-bottom: 1px solid var(--absc-line);
	font-size: 16px;
	font-weight: 700;
	color: var(--absc-text);
}

#autoboss-side-cart .absc__inst-back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	margin-left: -8px;
	padding: 0;
	background: none;
	border: 0;
	color: var(--absc-text);
	cursor: pointer;
}

#autoboss-side-cart .absc__inst-content {
	flex: 1 1 auto;
	overflow-y: auto;
	padding: 16px var(--absc-pad-x) 24px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--absc-text);
}

#autoboss-side-cart .absc__inst-content img {
	max-width: 100%;
	height: auto;
}

@media (prefers-reduced-motion: reduce) {
	#autoboss-side-cart .is-loading::before {
		animation: none;
	}

	#autoboss-side-cart .absc__inst-panel {
		transition: none;
	}
}

/* Confirmed cart success: a clear theme badge, never used for validation errors. */
.absc-feedback { display: flex; flex-direction: column; align-items: center; gap: 14px; box-sizing: border-box; width: 236px; max-width: calc(100vw - 40px); padding: 24px 20px; border: 1px solid rgba(0, 0, 0, .06); border-radius: 18px; background: #fff; color: var(--theme-palette-color-4, #212529); box-shadow: 0 16px 48px rgba(0, 0, 0, .2); font-size: 17px; font-weight: 700; line-height: 24px; text-align: center; }
.absc-success-mark { display: grid; place-items: center; flex: none; width: 60px; height: 60px; border-radius: 50%; background: var(--theme-palette-color-1, #feb511); color: var(--theme-palette-color-4, #212529); box-shadow: 0 0 0 7px color-mix(in srgb, var(--theme-palette-color-1, #feb511) 18%, transparent); }
.absc-success-mark svg { display: block; width: 32px; height: 32px; }
.absc-success-mark path { stroke-dasharray: 26; stroke-dashoffset: 0; animation: absc-success-check .32s ease-out both; }
@keyframes absc-success-check { from { stroke-dashoffset: 26; } to { stroke-dashoffset: 0; } }
@keyframes absc-success-enter { from { opacity: 0; transform: translate(-50%, calc(-50% + 12px)) scale(.92); } to { opacity: 1; transform: translate(-50%, -50%) scale(1); } }
.absc-feedback:not([hidden]) { animation: absc-success-enter .24s ease-out both; }
@media (prefers-reduced-motion: reduce) { .absc-feedback, .absc-feedback.is-on, .absc-feedback:not([hidden]), .absc-success-mark path { animation: none; transition: none; } }
