/* Standardize It: /templates/ search and filters ([si_template_browse]). Since 1.0.102.
   Brand teal #1C878C (hover #176F73), Poppins. Cards match the SureCart product list cards. */
.si-browse {
	--sib-teal: var(--si-brand-teal, #1C878C);
	--sib-teal-hover: var(--si-brand-teal-hover, #176F73);
	--sib-tint: var(--si-brand-teal-tint, #E8F3F4);
	--sib-border: var(--si-brand-teal-border, #C6E1E2);
	--sib-ink: #111a33;
	--sib-copy: #5E6A72;
	--sib-line: #e6ebea;
	--sib-pale: #F6F9F9;
	box-sizing: border-box; width: 100%; font-family: Poppins, sans-serif; color: var(--sib-ink);
	padding-top: 28px;
}
.si-browse *, .si-browse *::before, .si-browse *::after { box-sizing: border-box; }
.si-browse [hidden] { display: none !important; }
.si-browse button, .si-browse input, .si-browse select { font-family: inherit; }
.si-browse .si-browse__sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.si-browse .si-browse__icon { width: 18px; height: 18px; flex: none; }
.si-browse :is(a, button, input, select, [role="button"]):focus-visible { outline: 2px solid var(--sib-teal); outline-offset: 2px; }

/* Search */
.si-browse__search-form { display: flex; align-items: center; justify-content: center; gap: 18px; margin: 0 0 26px; } /* 1.0.108: row centred */
.si-browse__field { position: relative; flex: 1; max-width: 860px; }
.si-browse__field > .si-browse__icon--search { position: absolute; left: 18px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; color: var(--sib-teal); pointer-events: none; }
.si-browse .si-browse__input {
	width: 100%; height: 54px; margin: 0; border: 1.5px solid var(--sib-border); border-radius: 10px;
	padding: 0 96px 0 50px; font-size: 16px; font-weight: 400; color: var(--sib-ink); background: #fff;
	box-shadow: none; -webkit-appearance: none; appearance: none;
}
.si-browse .si-browse__input::placeholder { color: #6B767D; opacity: 1; }
.si-browse .si-browse__input::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.si-browse .si-browse__input:focus { border-color: var(--sib-teal); box-shadow: 0 0 0 4px rgba(28, 135, 140, .15); outline: none; }
.si-browse__kbd { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); font-size: 12px; color: var(--sib-copy); display: flex; gap: 6px; align-items: center; pointer-events: none; }
.si-browse__kbd kbd { font: 600 11px Poppins, sans-serif; border: 1px solid var(--sib-line); border-bottom-width: 2px; border-radius: 5px; padding: 1px 7px; background: var(--sib-pale); color: var(--sib-ink); }
.si-browse .si-browse__clear-q {
	position: absolute; right: 12px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; min-width: 0; padding: 0; margin: 0;
	border: 0; border-radius: 50%; background: var(--sib-pale); color: var(--sib-copy); display: flex; align-items: center; justify-content: center; cursor: pointer; line-height: 1;
}
.si-browse .si-browse__clear-q:hover { background: var(--sib-tint); color: var(--sib-teal-hover); }
.si-browse .si-browse__clear-q .si-browse__icon { width: 16px; height: 16px; }
.si-browse__help { margin: 0; font-size: 13px; color: var(--sib-copy); white-space: nowrap; }
.si-browse .si-browse__search-form .si-browse__help { margin: 0; padding: 0; align-self: center; } /* 1.0.108: the theme's p margin-bottom pushed the note up */
.si-browse__help a { color: var(--sib-teal); font-weight: 600; text-decoration: none; }
.si-browse__help a:hover { color: var(--sib-teal-hover); text-decoration: underline; }

/* Topic pills */
.si-browse__topics { margin: 0 0 26px; }
.si-browse .si-browse__topics-title { font-size: 18px; font-weight: 600; letter-spacing: -.01em; margin: 0 0 12px; color: var(--sib-ink); line-height: 1.3; }
.si-browse__pills { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.si-browse__pills li { margin: 0; padding: 0; }
.si-browse .si-browse__pill {
	display: inline-flex; align-items: center; min-height: 40px; padding: 8px 18px; border: 1px solid var(--sib-line); border-radius: 999px;
	background: #fff; color: var(--sib-ink); font-size: 14px; font-weight: 500; text-decoration: none; line-height: 1.2; white-space: nowrap;
	transition: border-color .15s, background-color .15s, color .15s;
}
.si-browse .si-browse__pill:hover { border-color: var(--sib-teal); color: var(--sib-teal-hover); }
.si-browse .si-browse__pill.is-on { background: var(--sib-teal); border-color: var(--sib-teal); color: #fff; }
.si-browse .si-browse__pill.is-on:hover { background: var(--sib-teal-hover); border-color: var(--sib-teal-hover); color: #fff; }

/* Layout */
.si-browse__body { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 32px; align-items: start; }
.si-browse__results--full { grid-column: 1 / -1; }

/* Filters sidebar */
.si-browse__filters { position: sticky; top: 24px; border: 1px solid var(--sib-line); border-radius: 12px; background: #fff; max-height: calc(100vh - 48px); display: flex; flex-direction: column; }
.si-browse__filters:focus { outline: none; }
.si-browse__filters-head { display: flex; align-items: center; gap: 10px; padding: 14px 18px 12px; border-bottom: 1px solid var(--sib-line); }
.si-browse .si-browse__filters-head h2 { margin: 0 auto 0 0; font-size: 16px; font-weight: 600; display: flex; gap: 8px; align-items: center; color: var(--sib-ink); line-height: 1.3; }
.si-browse__filters-head h2 .si-browse__icon { color: var(--sib-teal); width: 17px; height: 17px; }
.si-browse__filters-scroll { overflow: auto; overscroll-behavior: contain; }
.si-browse .si-browse__link { background: none; border: 0; padding: 2px 0; margin: 0; min-height: 0; color: var(--sib-teal); font-size: 13px; font-weight: 600; cursor: pointer; text-decoration: none; line-height: 1.4; }
.si-browse .si-browse__link:hover { color: var(--sib-teal-hover); text-decoration: underline; background: none; }
.si-browse .si-browse__close { display: none; }
.si-browse__group { padding: 12px 18px; border-bottom: 1px solid var(--sib-line); }
.si-browse__group:last-child { border-bottom: 0; }
.si-browse .si-browse__group-title { margin: 0; font-size: 14px; font-weight: 600; line-height: 1.3; }
.si-browse .si-browse__toggle {
	display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 8px; padding: 4px 0; margin: 0; min-height: 0;
	background: none; border: 0; color: var(--sib-ink); font-size: 14px; font-weight: 600; text-align: left; cursor: pointer; line-height: 1.3;
}
.si-browse .si-browse__toggle:hover { background: none; color: var(--sib-teal-hover); }
.si-browse__toggle .si-browse__icon { width: 16px; height: 16px; color: var(--sib-copy); transform: rotate(180deg); transition: transform .15s; }
.si-browse__toggle[aria-expanded="false"] .si-browse__icon { transform: none; }
.si-browse__opts { padding-top: 6px; }
.si-browse__opt { display: flex; align-items: center; gap: 10px; padding: 5px 0; margin: 0; font-size: 14px; line-height: 1.35; color: #2E353B; cursor: pointer; }
.si-browse .si-browse__opt input { width: 17px; height: 17px; margin: 0; flex: none; accent-color: var(--sib-teal); cursor: pointer; }
.si-browse__opt.is-on { color: var(--sib-ink); font-weight: 600; }
.si-browse__opt.is-empty { color: #9AA4AA; cursor: default; }
.si-browse__opt-name { flex: 1; min-width: 0; }
.si-browse__n { margin-left: auto; font-size: 12px; color: #6B767D; background: var(--sib-pale); border-radius: 99px; padding: 1px 8px; font-weight: 400; }
.si-browse__more-opts { margin-top: 4px; }
.si-browse__note { margin: 8px 0 0; font-size: 12px; line-height: 1.45; color: var(--sib-copy); }
.si-browse__opt--switch input { appearance: none; -webkit-appearance: none; width: 36px !important; height: 20px !important; border-radius: 99px; background: #C9D2D4; position: relative; transition: background-color .15s; }
.si-browse__opt--switch input::after { content: ""; position: absolute; left: 3px; top: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; transition: transform .15s; }
.si-browse__opt--switch input:checked { background: var(--sib-teal); }
.si-browse__opt--switch input:checked::after { transform: translateX(16px); }
.si-browse__drawer-foot { display: none; }
.si-browse__overlay { display: none; }

/* Buttons */
.si-browse .si-browse__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 10px 22px; margin: 0;
	border: 1.5px solid var(--sib-teal); border-radius: 9px; background: var(--sib-teal); color: #fff; font-size: 15px; font-weight: 600; cursor: pointer; line-height: 1.2; text-decoration: none;
}
.si-browse .si-browse__btn:hover { background: var(--sib-teal-hover); border-color: var(--sib-teal-hover); color: #fff; }
.si-browse .si-browse__btn--outline { background: #fff; color: var(--sib-teal); }
.si-browse .si-browse__btn--outline:hover { background: var(--sib-tint); color: var(--sib-teal-hover); }
.si-browse .si-browse__btn--ghost { background: #fff; color: var(--sib-ink); border-color: var(--sib-line); }
.si-browse .si-browse__btn--ghost:hover { background: var(--sib-pale); color: var(--sib-ink); border-color: #cfd8d9; }

/* Toolbar */
.si-browse__toolbar { display: flex; align-items: center; gap: 16px; margin-bottom: 14px; min-height: 42px; }
.si-browse .si-browse__count { margin: 0 auto 0 0; font-size: 15px; color: var(--sib-copy); }
.si-browse__count b { color: var(--sib-ink); font-weight: 600; }
.si-browse__sort { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--sib-copy); }
.si-browse__sort label { margin: 0; font-size: 14px; color: var(--sib-copy); white-space: nowrap; }
.si-browse .si-browse__sort select {
	height: 42px; margin: 0; padding: 0 36px 0 12px; border: 1px solid var(--sib-line); border-radius: 8px; background-color: #fff;
	color: var(--sib-ink); font-size: 14px; font-weight: 500; cursor: pointer; min-width: 0; max-width: 220px;
}
.si-browse .si-browse__filters-btn { display: none; }
.si-browse__chips { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0 0 18px; }
.si-browse .si-browse__chip {
	display: inline-flex; align-items: center; gap: 7px; margin: 0; min-height: 32px; padding: 4px 8px 4px 13px; border: 1px solid var(--sib-border); border-radius: 99px;
	background: var(--sib-tint); color: var(--sib-teal-hover); font-size: 13px; font-weight: 500; cursor: pointer; line-height: 1.2;
}
.si-browse .si-browse__chip:hover { border-color: var(--sib-teal); background: #DDEEEF; color: var(--sib-teal-hover); }
.si-browse__chip small { color: var(--sib-copy); font-weight: 400; font-size: 13px; }
.si-browse__chip .si-browse__icon { width: 14px; height: 14px; }

/* Grid and cards (same look as the SureCart product list cards). */
.si-browse .si-browse__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(224px, 1fr)); gap: 24px; }
.si-browse .si-browse__card { margin: 0; padding: 0; border: 1px solid var(--sib-line); border-radius: 12px; background: #fff; overflow: hidden; min-width: 0; transition: box-shadow .15s, border-color .15s; }
.si-browse .si-browse__card:hover { border-color: #d5dedf; box-shadow: 0 8px 22px -14px rgba(17, 26, 51, .35); }
.si-browse .si-browse__card .sc-product-item-link { display: block; height: 100%; padding: 16px; color: var(--sib-ink); text-decoration: none; }
.si-browse .si-browse__card .sc-product-item-link:focus-visible { outline-offset: -2px; }
.si-browse .si-browse__media { position: relative; border-radius: 10px; background-color: #0000000d; padding: 0; margin: 0; }
.si-browse .si-browse__cover { position: relative; aspect-ratio: 1; min-height: 0; height: auto; margin: 0 0 15px; padding: 12px; border-radius: 10px; overflow: hidden; display: flex; align-items: flex-end; justify-content: flex-end; }
.si-browse .si-browse__cover .wp-block-cover__background { position: absolute; inset: 0; opacity: 0; }
.si-browse .si-browse__cover .wp-block-cover__image-background { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; margin: 0; object-fit: cover; object-position: 50% 50%; border: 0; }
.si-browse .si-browse__cover .wp-block-cover__inner-container { position: relative; z-index: 1; width: auto; margin: 0; color: inherit; }
/* "+ Add": see the 1.0.104 button styles at the end (it sits in the price row, not on the image). */
.si-browse .si-browse__card .wp-block-surecart-product-title { margin: 0 0 5px; font-size: 15px; font-weight: 400; line-height: 1.4; color: var(--sib-ink); }
.si-browse .si-browse__price-row { display: flex; margin: 0; line-height: 1; }
.si-browse .si-browse__card .wp-block-surecart-product-list-price { margin: 5px 0; font-size: 18px; font-weight: 600; color: var(--sib-ink); }

/* Empty, load more */
.si-browse__empty { margin: 8px 0 0; padding: 34px 24px; border: 1px dashed var(--sib-border); border-radius: 12px; background: var(--sib-pale); text-align: center; }
.si-browse__empty p { margin: 0 0 6px; color: var(--sib-copy); font-size: 15px; }
.si-browse .si-browse__empty-title { color: var(--sib-ink); font-size: 17px; font-weight: 600; }
.si-browse__empty .si-browse__btn { margin-top: 12px; }
.si-browse__more { text-align: center; margin: 36px 0 0; }

@media (max-width: 1200px) {
	.si-browse__body { grid-template-columns: 240px minmax(0, 1fr); gap: 26px; }
}

/* Mobile and tablet: filters become a drawer, 2 cards per row. */
@media (max-width: 921px) {
	.si-browse { padding-top: 20px; }
	.si-browse__help { display: none; }
	/* 1.0.108: stacked and centred */
	.si-browse__search-form { flex-direction: column; align-items: center; gap: 10px; }
	.si-browse__field { flex: none; width: 100%; }
	.si-browse__body { grid-template-columns: minmax(0, 1fr); }
	.si-browse__filters {
		position: fixed; top: 0; bottom: 0; left: 0; z-index: 100000; width: 88%; max-width: 380px; max-height: none; border: 0; border-radius: 0 16px 16px 0;
		transform: translateX(-105%); visibility: hidden; transition: transform .22s ease, visibility 0s linear .22s; box-shadow: 0 20px 50px rgba(17, 26, 51, .3);
	}
	.si-browse.is-drawer-open .si-browse__filters { transform: none; visibility: visible; transition: transform .22s ease; }
	.si-browse.is-drawer-open .si-browse__overlay { display: block; position: fixed; inset: 0; z-index: 99999; background: rgba(17, 26, 51, .55); }
	.si-browse__filters-head { padding: 14px 16px 14px 18px; }
	.si-browse .si-browse__filters-head h2 { font-size: 18px; }
	.si-browse .si-browse__filters-head .si-browse__clear-all { display: none; }
	.si-browse .si-browse__close { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; min-width: 0; padding: 0; margin: 0; border: 0; border-radius: 50%; background: var(--sib-pale); color: var(--sib-ink); cursor: pointer; }
	.si-browse .si-browse__close:hover { background: var(--sib-tint); color: var(--sib-ink); }
	.si-browse__filters-scroll { flex: 1; }
	.si-browse__group { padding: 14px 18px; }
	.si-browse__opt { padding: 8px 0; font-size: 15px; }
	.si-browse .si-browse__opt input { width: 20px; height: 20px; }
	.si-browse__drawer-foot { display: flex; gap: 10px; padding: 14px 16px calc(14px + env(safe-area-inset-bottom)); border-top: 1px solid var(--sib-line); background: #fff; border-radius: 0 0 16px 0; }
	.si-browse__drawer-foot .si-browse__btn--ghost { flex: 1; padding: 10px 12px; }
	.si-browse__drawer-foot .si-browse__show { flex: 1.7; padding: 10px 12px; }
	html.si-browse-locked, html.si-browse-locked body { overflow: hidden; }

	.si-browse__toolbar { flex-wrap: wrap; gap: 10px; }
	.si-browse .si-browse__filters-btn {
		display: inline-flex; align-items: center; justify-content: center; gap: 8px; flex: 1 1 0; order: 1; height: 44px; margin: 0; padding: 0 14px;
		border: 1.5px solid var(--sib-ink); border-radius: 9px; background: #fff; color: var(--sib-ink); font-size: 15px; font-weight: 600; cursor: pointer;
	}
	.si-browse .si-browse__filters-btn:hover { background: var(--sib-pale); color: var(--sib-ink); }
	.si-browse__badge { background: var(--sib-teal); color: #fff; border-radius: 99px; font-size: 12px; min-width: 20px; height: 20px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center; }
	.si-browse__sort { flex: 1 1 0; order: 2; }
	.si-browse__sort label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.si-browse .si-browse__sort select { width: 100%; max-width: none; height: 44px; padding: 0 26px 0 10px; background-position: right 8px center; text-overflow: ellipsis; }
	.si-browse .si-browse__count { order: 3; flex-basis: 100%; font-size: 14px; }
	.si-browse .si-browse__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
@media (max-width: 600px) {
	.si-browse__search-form { margin-bottom: 20px; }
	.si-browse .si-browse__input { height: 50px; font-size: 16px; padding: 0 48px 0 44px; }
	.si-browse__field > .si-browse__icon--search { left: 14px; }
	.si-browse__kbd { display: none; }
	.si-browse__topics { margin: 0 -20px 20px; }
	.si-browse .si-browse__topics-title { font-size: 16px; padding: 0 20px; margin-bottom: 10px; }
	.si-browse__pills { flex-wrap: nowrap; overflow-x: auto; padding: 2px 20px 6px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	.si-browse__pills::-webkit-scrollbar { display: none; }
	.si-browse .si-browse__pill { min-height: 38px; padding: 7px 15px; font-size: 13.5px; }
	.si-browse .si-browse__grid { gap: 12px; }
	.si-browse .si-browse__card .sc-product-item-link { padding: 10px; }
	.si-browse .si-browse__cover { padding: 7px; margin-bottom: 10px; border-radius: 8px; }
	.si-browse .si-browse__media { border-radius: 8px; }
	.si-browse .si-browse__card .wp-block-surecart-product-title { font-size: 13.5px; line-height: 1.35; }
	.si-browse .si-browse__card .wp-block-surecart-product-list-price { font-size: 16px; }
	.si-browse__chips { margin-bottom: 14px; }
}
@media (prefers-reduced-motion: reduce) {
	.si-browse *, .si-browse *::before, .si-browse *::after { transition: none !important; }
}

/* 1.0.103: desktop filters sidebar runs full length, no inner scrollbar. Mobile drawer unchanged. */
@media (min-width: 922px) {
	.si-browse__filters { position: static; max-height: none; align-self: start; }
	.si-browse__filters-scroll { overflow: visible; }
}

/* 1.0.104: cards end after their content. The card link no longer takes height: 100% of the
   card (with the member panel after it, that pushed the panel out of the card and left a tall
   empty area). Cards in a row stay the same height: the price, or the member panel, sits at
   the bottom of each card. */
.si-browse .si-browse__card { display: flex; flex-direction: column; }
.si-browse .si-browse__card .sc-product-item-link { display: flex; flex-direction: column; flex: 1 1 auto; height: auto; min-height: 0; }
.si-browse .si-browse__card .si-browse__card-inner { display: flex; flex-direction: column; flex: 1 1 auto; }
/* Flex items keep their margins inside, so the image gap moves from the cover to its wrapper. */
.si-browse .si-browse__card .si-browse__media { flex: 0 0 auto; margin: 0 0 15px; }
.si-browse .si-browse__card .si-browse__media > .si-browse__cover { margin-bottom: 0; }
.si-browse .si-browse__card .si-browse__price-row { margin-top: auto; }
.si-browse .si-browse__card.si-library-included .si-browse__price-row { display: none; }
.si-browse .si-browse__card > .si-library-access { flex: 0 0 auto; margin: 0; padding: 0 16px 16px; }
.si-browse .si-browse__card > .si-library-access > p { margin: 0 0 10px; font-size: 13px; line-height: 1.35; }
/* 1.0.104: "Pick your province" on province-specific templates (the version is chosen on the product page). */
.si-browse .si-browse__card .si-browse__pick { align-self: flex-start; margin: 2px 0 8px; padding: 2px 8px; border: 1px solid rgba(28, 135, 140, .45); border-radius: 99px; color: var(--sib-teal, #1C878C); font-size: 11.5px; font-weight: 600; line-height: 1.5; letter-spacing: .01em; }
@media (max-width: 600px) {
	.si-browse .si-browse__card .si-browse__pick { margin: 0 0 6px; padding: 1px 7px; font-size: 10.5px; }
	.si-browse .si-browse__card .si-browse__media { margin-bottom: 10px; }
	.si-browse .si-browse__card > .si-library-access { padding: 0 10px 10px; }
	.si-browse .si-browse__card > .si-library-access > p { font-size: 12px; margin-bottom: 8px; }
}

/* 1.0.104: one button style for the /templates/ browse UI and its quick-add dialog.
   36px tall, 14px semibold, sentence case, 6px radius. Primary: teal fill (#1C878C, hover #176F73).
   Secondary: teal outline. !important because theme and SureCart button styles set the same properties. */
.si-browse .si-browse__card .si-browse__price-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.si-browse .si-browse__card .si-browse__price-row .wp-block-surecart-product-list-price { margin: 0; }
.si-browse .si-browse__card .si-browse__price-row .si-browse__add { margin-left: auto; }
.si-browse :is(.si-browse__add, .si-browse__btn, .si-browse__filters-btn, .si-browse__clear-all),
body .si-browse .si-library-access > :is(button, .si-library-access__get),
:is(.si-template-catalog-page, body:has(#si-browse)) .wp-block-surecart-product-quick-view :is(.wp-block-surecart-product-buy-button .wp-block-button__link, .wp-block-surecart-product-buy-button .sc-button__link, .wp-block-button__link.sc-button__link) {
	display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important;
	box-sizing: border-box !important; height: 36px !important; min-height: 36px !important; width: auto !important; min-width: 0 !important; margin: 0 !important; padding: 0 14px !important;
	border: 1.5px solid var(--si-brand-teal, #1C878C) !important; border-radius: 6px !important; background: var(--si-brand-teal, #1C878C) !important; color: #fff !important;
	font-family: inherit !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1 !important; letter-spacing: 0 !important; text-transform: none !important;
	text-decoration: none !important; white-space: nowrap !important; box-shadow: none !important; filter: none !important; cursor: pointer; transition: background-color .15s, border-color .15s, color .15s;
}
.si-browse :is(.si-browse__add, .si-browse__btn, .si-browse__filters-btn, .si-browse__clear-all):hover,
body .si-browse .si-library-access > :is(button, .si-library-access__get):hover,
:is(.si-template-catalog-page, body:has(#si-browse)) .wp-block-surecart-product-quick-view :is(.wp-block-surecart-product-buy-button .wp-block-button__link, .wp-block-surecart-product-buy-button .sc-button__link, .wp-block-button__link.sc-button__link):hover {
	background: var(--si-brand-teal-hover, #176F73) !important; border-color: var(--si-brand-teal-hover, #176F73) !important; color: #fff !important;
}
/* Secondary actions: Load more, Clear all, Clear search and filters, the mobile Filters button,
   and SureCart's outline-style button in the quick-add dialog. */
:is(.si-template-catalog-page, body:has(#si-browse)) .wp-block-surecart-product-quick-view .is-style-outline .wp-block-button__link { background: #fff !important; color: var(--si-brand-teal, #1C878C) !important; }
:is(.si-template-catalog-page, body:has(#si-browse)) .wp-block-surecart-product-quick-view .is-style-outline .wp-block-button__link:hover { background: var(--si-brand-teal-tint, #E8F3F4) !important; color: var(--si-brand-teal-hover, #176F73) !important; }
:is(.si-template-catalog-page, body:has(#si-browse)) .wp-block-surecart-product-quick-view .wp-block-surecart-product-buy-buttons { gap: 10px; }
:is(.si-template-catalog-page, body:has(#si-browse)) .wp-block-surecart-product-quick-view .wp-block-surecart-product-buy-button { flex: 1 1 0; }
:is(.si-template-catalog-page, body:has(#si-browse)) .wp-block-surecart-product-quick-view .wp-block-surecart-product-buy-button .wp-block-button__link { width: 100% !important; }
.si-browse :is(.si-browse__btn--outline, .si-browse__btn--ghost, .si-browse__filters-btn, .si-browse__clear-all) { background: #fff !important; color: var(--si-brand-teal, #1C878C) !important; }
.si-browse :is(.si-browse__btn--outline, .si-browse__btn--ghost, .si-browse__filters-btn, .si-browse__clear-all):hover { background: var(--si-brand-teal-tint, #E8F3F4) !important; color: var(--si-brand-teal-hover, #176F73) !important; border-color: var(--si-brand-teal-hover, #176F73) !important; }
.si-browse :is(.si-browse__add, .si-browse__btn, .si-browse__filters-btn) .si-browse__icon { width: 14px; height: 14px; }
.si-browse :is(.si-browse__add, .si-browse__btn, .si-browse__filters-btn, .si-browse__clear-all, .si-library-access > *):focus-visible { outline: 2px solid var(--si-brand-teal, #1C878C) !important; outline-offset: 2px !important; }
.si-browse .si-browse__card .si-browse__add[hidden], .si-browse .si-browse__clear-all[hidden] { display: none !important; }
.si-browse .si-browse__filters-head .si-browse__clear-all { padding: 0 12px !important; }
.si-browse .si-browse__filters-btn .si-browse__badge { margin-left: 2px; }
.si-browse__drawer-foot .si-browse__btn { flex: 1 1 0 !important; }
@media (max-width: 921px) {
	.si-browse .si-browse__filters-btn { display: inline-flex !important; }
	.si-browse .si-browse__filters-head .si-browse__clear-all { display: none !important; }
	.si-browse .si-browse__sort select { height: 36px; }
}
@media (min-width: 922px) {
	.si-browse .si-browse__filters-btn { display: none !important; }
}
@media (max-width: 600px) {
	/* Narrow cards: price and "+ Add" share the row when they fit, otherwise the button drops below. */
	.si-browse .si-browse__card .si-browse__price-row { gap: 6px; }
	.si-browse .si-browse__card .si-browse__add { padding: 0 10px !important; }
}
.si-browse__drawer-foot .si-browse__show { flex: 1.7 1 0 !important; }
/* 1.0.134: free sign-up cards ("Free" price, "Get it free" button in place of "+ Add"; the whole card is the link)
   and the Price filter (one choice, radio buttons in the same rows as the other filters). */
.si-browse .si-browse__card .si-browse__get { pointer-events: none; }
.si-browse .si-browse__card--free .sc-product-item-link:hover .si-browse__get { background: var(--si-brand-teal-hover, #176F73) !important; border-color: var(--si-brand-teal-hover, #176F73) !important; }
.si-browse .si-browse__opt--radio input { border-radius: 50%; }
