.jenh-small-order-fee-notice {
	border-inline-start: 2px solid currentColor;
	margin: 0 0 .8em;
	padding: .5em .7em;
	background: rgba(0, 0, 0, .035);
	font-size: .9em;
	line-height: 1.45;
}
.jenh-small-order-fee-notice .woocommerce-Price-amount { font-weight: 700; }
.jenh-small-order-fee-mini-cart-message .jenh-small-order-fee-notice { font-size: .85em; margin: .65em 0; }
.jenh-small-order-fee-blocks .jenh-small-order-fee-notice { margin-bottom: .75em; }
.jenh-small-order-fee-tooltip-wrap { display: inline-flex; position: relative; margin-inline-start: .4em; vertical-align: middle; }
.jenh-small-order-fee-tooltip-button { all: unset; display: inline-flex !important; visibility: visible !important; opacity: 1 !important; overflow: visible !important; box-sizing: border-box !important; width: 18px !important; min-width: 18px !important; max-width: 18px !important; height: 18px !important; min-height: 18px !important; max-height: 18px !important; align-items: center !important; justify-content: center !important; padding: 0 !important; margin: 0 !important; color: inherit !important; cursor: help; vertical-align: middle; }
.jenh-small-order-fee-tooltip-button svg { display: block !important; visibility: visible !important; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.jenh-small-order-fee-tooltip-button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

/* Closed tooltip content must never occupy layout space. This universal rule
 * also covers iPadOS Safari when it identifies itself as a desktop browser. */
.jenh-small-order-fee-tooltip-content {
	display: none !important;
	position: absolute;
	z-index: 1000;
	inset-inline-start: 50%;
	bottom: calc(100% + .65em);
	width: min(320px, 80vw);
	padding: .7em .8em;
	border: 1px solid rgba(0,0,0,.2);
	border-radius: 3px;
	background: #fff;
	color: #333;
	box-shadow: 0 4px 16px rgba(0,0,0,.16);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.45;
	text-align: start;
	transform: translateX(-50%);
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
}

/* The active explanation is created outside the cart/table and attached to
 * body, so tablet theme rules cannot turn it into inline cart content. */
.jenh-small-order-fee-tooltip-portal {
	display: block !important;
	position: fixed !important;
	z-index: 999999 !important;
	inset: auto !important;
	left: 50% !important;
	top: 50% !important;
	width: min(420px, calc(100vw - 32px)) !important;
	max-width: calc(100vw - 32px) !important;
	max-height: min(60vh, 360px) !important;
	box-sizing: border-box !important;
	padding: 14px 16px !important;
	border: 1px solid rgba(0,0,0,.2) !important;
	border-radius: 4px !important;
	background: #fff !important;
	color: #333 !important;
	box-shadow: 0 8px 32px rgba(0,0,0,.24) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	text-align: start !important;
	overflow-y: auto;
	transform: translate(-50%, -50%) !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	-webkit-overflow-scrolling: touch;
}

.jenh-small-order-fee-tooltip-portal--hover {
	left: var(--jenh-tooltip-left) !important;
	top: var(--jenh-tooltip-top) !important;
	width: min(320px, calc(100vw - 32px)) !important;
	max-height: min(50vh, 280px) !important;
	pointer-events: none !important;
}
.jenh-small-order-fee-tooltip-portal--above { transform: translate(-50%, -100%) !important; }
.jenh-small-order-fee-tooltip-portal--below { transform: translate(-50%, 0) !important; }

.jenh-small-order-fee-tooltip-wrap--fee-label { margin-inline-start: .45em; }
.cart_totals tr.fee th { overflow: visible; }
.jenh-small-order-fee-suggestions { margin: 1.2em 0 1.6em; }
.jenh-small-order-fee-suggestions > h2 { margin: 0 0 .75em; font-size: 1.2em; }
.jenh-small-order-fee-suggestions__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1em; }
.jenh-small-order-fee-product { display: flex; min-width: 0; flex-direction: column; padding: .85em; border: 1px solid rgba(0,0,0,.1); background: #fff; }
.jenh-small-order-fee-product__image { display: block; aspect-ratio: 1 / 1; margin-bottom: .65em; }
.jenh-small-order-fee-product__image img { width: 100%; height: 100%; object-fit: contain; }
.jenh-small-order-fee-product h3 { margin: 0 0 .4em; font-size: 1em; line-height: 1.3; }
.jenh-small-order-fee-product__price { margin-bottom: .35em; font-weight: 700; }
.jenh-small-order-fee-product__result { flex: 1; margin: 0 0 .75em; font-size: .82em; line-height: 1.4; }
.jenh-small-order-fee-product__result--reached { color: #367b16; font-weight: 600; }
.jenh-small-order-fee-product .button { align-self: flex-start; margin-top: auto; }
@media (max-width: 900px) { .jenh-small-order-fee-suggestions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .jenh-small-order-fee-suggestions__grid { grid-template-columns: 1fr; } }
