/*
 * Special Sarv — Floating Mini-Cart Trigger  v1.0
 * ─────────────────────────────────────────────────────────────────
 * Fixed pill shown site-wide (except /cart & /checkout) whenever the
 * cart has at least one item. Purely additive — every selector here is
 * prefixed `ss-mc` / `ss-mini-cart` so it cannot collide with theme or
 * other plugin styles.
 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@600;700;800;900&display=swap');

#ss-mini-cart{
	--mc-g:#0f4a2e;
	--mc-gd:#0b3a24;
	--mc-g2:#237049;
	--mc-glow:#3aa06a;
	--mc-amber:#f4c22c;
	--mc-bottom-mobile:84px;
	--mc-ff:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
	position:fixed;
	left:50%;
	bottom:20px;
	bottom:calc(20px + env(safe-area-inset-bottom));
	transform:translate(-50%,130%) scale(.92);
	z-index:8500;
	opacity:0;
	pointer-events:none;
	transition:transform .42s cubic-bezier(.19,1.2,.32,1), opacity .32s ease;
	max-width:calc(100vw - 20px);
}
#ss-mini-cart.show{
	transform:translate(-50%,0) scale(1);
	opacity:1;
	pointer-events:auto;
}
#ss-mini-cart.ss-mc-closed{
	transform:translate(-50%,130%) scale(.92)!important;
	opacity:0!important;
	pointer-events:none!important;
}
/* hide behind the cart/checkout drawer overlay if it happens to still be in the DOM */
html.ss-open #ss-mini-cart,
html.ss-drawer-open #ss-mini-cart{
	opacity:0!important;
	pointer-events:none!important;
	transform:translate(-50%,130%) scale(.92)!important;
}

/* keep clear of fixed bottom mobile nav bars */
@media (max-width:768px){
	#ss-mini-cart{ bottom:var(--mc-bottom-mobile); }
	#ss-mini-cart.show{ bottom:var(--mc-bottom-mobile); }
}

@keyframes ss-mc-bump{
	0%{ transform:translate(-50%,0) scale(1); box-shadow:0 12px 32px -8px rgba(8,40,26,.55),0 0 0 0 rgba(58,160,106,.55); }
	30%{ transform:translate(-50%,-6px) scale(1.06); box-shadow:0 18px 40px -6px rgba(8,40,26,.6),0 0 0 10px rgba(58,160,106,.22); }
	65%{ transform:translate(-50%,0) scale(.995); box-shadow:0 12px 32px -8px rgba(8,40,26,.55),0 0 0 4px rgba(58,160,106,.12); }
	100%{ transform:translate(-50%,0) scale(1); box-shadow:0 12px 32px -8px rgba(8,40,26,.55),0 0 0 0 rgba(58,160,106,0); }
}
#ss-mini-cart.ss-mc-bump{ animation:ss-mc-bump .55s cubic-bezier(.24,1.4,.4,1); }

.ss-mc-inner{
	position:relative;
	display:flex;
	align-items:center;
	gap:11px;
	background:linear-gradient(150deg,var(--mc-g2) 0%,var(--mc-g) 48%,var(--mc-gd) 100%);
	border:1px solid rgba(255,255,255,.14);
	border-radius:999px;
	padding:6px 8px 6px 15px;
	box-shadow:0 12px 32px -8px rgba(8,40,26,.55),0 2px 6px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.16);
	backdrop-filter:blur(14px) saturate(150%);
	-webkit-backdrop-filter:blur(14px) saturate(150%);
	text-decoration:none!important;
	font-family:var(--mc-ff);
	color:#fff;
	-webkit-tap-highlight-color:transparent;
	transition:box-shadow .2s,transform .16s;
}
.ss-mc-inner:hover{ box-shadow:0 16px 40px -8px rgba(8,40,26,.62),0 2px 8px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.2); transform:translateY(-1px); }
.ss-mc-inner:active{ transform:scale(.97); }

.ss-mc-thumbs{ display:flex; align-items:center; flex-shrink:0; }
.ss-mc-thumb{
	width:33px;height:33px;border-radius:50%;
	background:#fff;
	border:2px solid var(--mc-g);
	overflow:hidden;
	display:flex;align-items:center;justify-content:center;
	margin-left:-13px;
	box-shadow:0 3px 8px rgba(0,0,0,.22);
	transition:transform .18s;
}
.ss-mc-thumb:first-child{ margin-left:0; }
.ss-mc-inner:hover .ss-mc-thumb{ transform:translateY(-1px); }
.ss-mc-thumb img{ width:100%;height:100%;object-fit:cover;display:block; }
.ss-mc-extra{
	background:rgba(255,255,255,.16);
	color:#fff;font-size:10.5px;font-weight:800;
	border-color:rgba(255,255,255,.55);
}

.ss-mc-info{ display:flex; flex-direction:column; line-height:1.22; padding-right:2px; min-width:0; }
.ss-mc-count{ font-size:10.5px; font-weight:700; letter-spacing:.02em; text-transform:uppercase; color:rgba(255,255,255,.72); white-space:nowrap; }
.ss-mc-total{ font-size:15px; font-weight:900; letter-spacing:-.01em; white-space:nowrap; }
.ss-mc-total .woocommerce-Price-amount{ color:#fff!important; }

.ss-mc-cta{
	display:flex; align-items:center; gap:6px;
	background:linear-gradient(150deg,#ffd75e,var(--mc-amber) 55%,#d99b00);
	color:#1a1204;
	border-radius:999px;
	padding:10px 14px;
	flex-shrink:0;
	box-shadow:0 4px 12px -2px rgba(217,155,0,.5);
	transition:transform .16s,box-shadow .16s;
}
.ss-mc-inner:hover .ss-mc-cta{ box-shadow:0 6px 16px -2px rgba(217,155,0,.6); }
.ss-mc-cta svg:last-child{ transition:transform .18s; }
.ss-mc-inner:hover .ss-mc-cta svg:last-child{ transform:translateX(2px); }

.ss-mc-close{
	position:absolute;
	top:-7px;
	right:-6px;
	width:22px;height:22px;
	border-radius:50%;
	background:#12331f;
	border:1.5px solid rgba(255,255,255,.5);
	color:rgba(255,255,255,.9);
	display:flex;align-items:center;justify-content:center;
	cursor:pointer;
	padding:0;
	box-shadow:0 2px 6px rgba(0,0,0,.3);
	transition:transform .15s,background .15s;
}
.ss-mc-close:hover{ background:#1a4a2c; transform:scale(1.08); }
.ss-mc-close:active{ transform:scale(.92); }

@media (max-width:480px){
	.ss-mc-inner{ padding:5px 6px 5px 11px; gap:9px; }
	.ss-mc-thumb{ width:29px;height:29px; }
	.ss-mc-total{ font-size:14px; }
	.ss-mc-cta{ padding:9px 12px; }
}

@media (prefers-reduced-motion: reduce){
	#ss-mini-cart, #ss-mini-cart.ss-mc-bump{ transition:opacity .2s ease; animation:none!important; }
}
