@charset "UTF-8";
/* @version 10.0 [rev.01] */
/* @version 10.0 [rev.01] */
/* @version 10.0 [rev.02] */
/* @version 10.0 [rev.01] */
/* @version 9.0 [rev.9.0.01] */
/* @version 9.0 [rev.9.0.01] */
/* @version 10.0 [rev.02] */
/* @version 10.0 [rev.01] */
/* colors array: V10 */
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Work+Sans:wght@300;400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lexend:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=PT+Serif+Caption:ital@0;1&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,100..900;1,100..900&display=swap");
:root {
  --pb-color-white: #fff;
  --pb-color-gray-50: #f9fafb;
  --pb-color-gray-100: #f3f4f6;
  --pb-color-gray-200: #e5e7eb;
  --pb-color-gray-300: #d1d5db;
  --pb-color-gray-400: #9ca3af;
  --pb-color-gray-500: #6b7280;
  --pb-color-gray-600: #4b5563;
  --pb-color-gray-700: #374151;
  --pb-color-gray-800: #1f2937;
  --pb-color-gray-900: #111827;
  --pb-color-black: #000;
  --pb-color-primary-50: #e6f2ff;
  --pb-color-primary-100: #cce5ff;
  --pb-color-primary-200: #b8daff;
  --pb-color-primary-300: #93c5fd;
  --pb-color-primary-400: #60a5fa;
  --pb-color-primary-500: #3b82f6;
  --pb-color-primary-600: #1673f5;
  --pb-color-primary-700: #0065d3;
  --pb-color-primary-800: #0054af;
  --pb-color-primary-900: #004080;
  --pb-color-success-50: #f3fbe8;
  --pb-color-success-100: #e6f6d1;
  --pb-color-success-200: #d6efb0;
  --pb-color-success-300: #b8e17a;
  --pb-color-success-400: #95cf44;
  --pb-color-success-500: #7ec326;
  --pb-color-success-600: #6bb913;
  --pb-color-success-700: #5aa100;
  --pb-color-success-800: #4a8500;
  --pb-color-success-900: #376300;
  --pb-color-warning-50: #fff8e6;
  --pb-color-warning-100: #fff1cc;
  --pb-color-warning-200: #ffe7a3;
  --pb-color-warning-300: #ffda66;
  --pb-color-warning-400: #ffce33;
  --pb-color-warning-500: #ffc107;
  --pb-color-warning-600: #e2ab00;
  --pb-color-warning-700: #bd8e00;
  --pb-color-warning-800: #9b7500;
  --pb-color-warning-900: #735700;
  --pb-color-danger-50: #fdecef;
  --pb-color-danger-100: #fbd7dc;
  --pb-color-danger-200: #f7b5bd;
  --pb-color-danger-300: #f18895;
  --pb-color-danger-400: #ea5b6d;
  --pb-color-danger-500: #e13f52;
  --pb-color-danger-600: #dc3545;
  --pb-color-danger-700: #c22939;
  --pb-color-danger-800: #a1212f;
  --pb-color-danger-900: #7a1823;
  --pb-color-info-50: #e9f7fa;
  --pb-color-info-100: #d3eff5;
  --pb-color-info-200: #a9dfeb;
  --pb-color-info-300: #7ccfdf;
  --pb-color-info-400: #4dbdcf;
  --pb-color-info-500: #2faec3;
  --pb-color-info-600: #17a2b8;
  --pb-color-info-700: #148ca0;
  --pb-color-info-800: #107080;
  --pb-color-info-900: #0b5260;
  --pb-color-blue-50: #e8f1fe;
  --pb-color-blue-100: #d0e2fd;
  --pb-color-blue-200: #a2c6fb;
  --pb-color-blue-300: #73a9f9;
  --pb-color-blue-400: #458df7;
  --pb-color-blue-500: #1673f5;
  --pb-color-blue-600: #125fcb;
  --pb-color-blue-700: #0e4ca3;
  --pb-color-blue-800: #09387a;
  --pb-color-blue-900: #052552;
  --pb-color-blue: #1673f5;
  --pb-color-indigo-50: #f0e8fe;
  --pb-color-indigo-100: #e0d0fd;
  --pb-color-indigo-200: #c2a1fb;
  --pb-color-indigo-300: #a371f8;
  --pb-color-indigo-400: #8542f6;
  --pb-color-indigo-500: #6610f2;
  --pb-color-indigo-600: #550dc9;
  --pb-color-indigo-700: #440aa1;
  --pb-color-indigo-800: #330878;
  --pb-color-indigo-900: #220550;
  --pb-color-indigo: #6610f2;
  --pb-color-purple-50: #f1ecf9;
  --pb-color-purple-100: #e2daf4;
  --pb-color-purple-200: #c6b4e8;
  --pb-color-purple-300: #a98fdc;
  --pb-color-purple-400: #8d69cf;
  --pb-color-purple-500: #6f42c1;
  --pb-color-purple-600: #5c369f;
  --pb-color-purple-700: #482b7c;
  --pb-color-purple-800: #35205a;
  --pb-color-purple-900: #211438;
  --pb-color-purple: #6f42c1;
  --pb-color-pink-50: #fcecf4;
  --pb-color-pink-100: #f9d8e8;
  --pb-color-pink-200: #f4b2d1;
  --pb-color-pink-300: #ee8bba;
  --pb-color-pink-400: #e965a3;
  --pb-color-pink-500: #e83e8c;
  --pb-color-pink-600: #bf3374;
  --pb-color-pink-700: #97285c;
  --pb-color-pink-800: #6f1e45;
  --pb-color-pink-900: #47132d;
  --pb-color-pink: #e83e8c;
  --pb-color-red-50: #fbecee;
  --pb-color-red-100: #f7d7da;
  --pb-color-red-200: #efafb5;
  --pb-color-red-300: #e78891;
  --pb-color-red-400: #df606c;
  --pb-color-red-500: #dc3545;
  --pb-color-red-600: #b62c39;
  --pb-color-red-700: #8f232d;
  --pb-color-red-800: #691a21;
  --pb-color-red-900: #421114;
  --pb-color-red: #dc3545;
  --pb-color-orange-50: #fff2e8;
  --pb-color-orange-100: #fee5d0;
  --pb-color-orange-200: #fdcba1;
  --pb-color-orange-300: #fcb172;
  --pb-color-orange-400: #fb9743;
  --pb-color-orange-500: #fd7e14;
  --pb-color-orange-600: #cf670f;
  --pb-color-orange-700: #a1500c;
  --pb-color-orange-800: #733a09;
  --pb-color-orange-900: #452206;
  --pb-color-orange: #fd7e14;
  --pb-color-yellow-50: #fff9e6;
  --pb-color-yellow-100: #fff3cc;
  --pb-color-yellow-200: #ffe799;
  --pb-color-yellow-300: #ffda66;
  --pb-color-yellow-400: #ffce33;
  --pb-color-yellow-500: #ffc107;
  --pb-color-yellow-600: #d19f06;
  --pb-color-yellow-700: #a37c05;
  --pb-color-yellow-800: #755a03;
  --pb-color-yellow-900: #473702;
  --pb-color-yellow: #ffc107;
  --pb-color-green-50: #f0f8e7;
  --pb-color-green-100: #e1f1d0;
  --pb-color-green-200: #c3e3a1;
  --pb-color-green-300: #a6d573;
  --pb-color-green-400: #88c744;
  --pb-color-green-500: #6bb913;
  --pb-color-green-600: #58980f;
  --pb-color-green-700: #45770c;
  --pb-color-green-800: #325608;
  --pb-color-green-900: #1f3505;
  --pb-color-green: #6bb913;
  --pb-color-teal-50: #e9fbf5;
  --pb-color-teal-100: #d2f6ea;
  --pb-color-teal-200: #a5edd5;
  --pb-color-teal-300: #78e4bf;
  --pb-color-teal-400: #4bdbaa;
  --pb-color-teal-500: #20c997;
  --pb-color-teal-600: #1aa57d;
  --pb-color-teal-700: #148163;
  --pb-color-teal-800: #0f5d48;
  --pb-color-teal-900: #09392e;
  --pb-color-teal: #20c997;
  --pb-color-cyan-50: #e8f6f8;
  --pb-color-cyan-100: #d1edf1;
  --pb-color-cyan-200: #a2dbe3;
  --pb-color-cyan-300: #74c9d5;
  --pb-color-cyan-400: #45b7c7;
  --pb-color-cyan-500: #17a2b8;
  --pb-color-cyan-600: #138597;
  --pb-color-cyan-700: #0f6876;
  --pb-color-cyan-800: #0a4b54;
  --pb-color-cyan-900: #062e33;
  --pb-color-cyan: #17a2b8;
  --pb-color-gold-50: #fff9e6;
  --pb-color-gold-100: #fff2cc;
  --pb-color-gold-200: #fee699;
  --pb-color-gold-300: #feda66;
  --pb-color-gold-400: #fdcd33;
  --pb-color-gold-500: #fbc404;
  --pb-color-gold-600: #cfa103;
  --pb-color-gold-700: #a37e03;
  --pb-color-gold-800: #775c02;
  --pb-color-gold-900: #4b3901;
  --pb-color-gold: #fbc404;
  --pb-color-primary: #1673f5;
  --pb-color-secondary: #4b5563;
  --pb-color-success: #6bb913;
  --pb-color-info: #17a2b8;
  --pb-color-warning: #ffc107;
  --pb-color-danger: #dc3545;
  --pb-color-light: #f3f4f6;
  --pb-color-dark: #1f2937;
  --pb-color-rgba-white-10: rgba(255, 255, 255, 0.1);
  --pb-color-rgba-white-20: rgba(255, 255, 255, 0.2);
  --pb-color-rgba-white-30: rgba(255, 255, 255, 0.3);
  --pb-color-rgba-white-40: rgba(255, 255, 255, 0.4);
  --pb-color-rgba-white-50: rgba(255, 255, 255, 0.5);
  --pb-color-rgba-white-60: rgba(255, 255, 255, 0.6);
  --pb-color-rgba-white-70: rgba(255, 255, 255, 0.7);
  --pb-color-rgba-white-80: rgba(255, 255, 255, 0.8);
  --pb-color-rgba-white-90: rgba(255, 255, 255, 0.9);
  --pb-color-rgba-gray-10: rgba(156, 163, 175, 0.1);
  --pb-color-rgba-gray-20: rgba(156, 163, 175, 0.2);
  --pb-color-rgba-gray-30: rgba(156, 163, 175, 0.3);
  --pb-color-rgba-gray-40: rgba(156, 163, 175, 0.4);
  --pb-color-rgba-gray-50: rgba(156, 163, 175, 0.5);
  --pb-color-rgba-gray-60: rgba(156, 163, 175, 0.6);
  --pb-color-rgba-gray-70: rgba(156, 163, 175, 0.7);
  --pb-color-rgba-gray-80: rgba(156, 163, 175, 0.8);
  --pb-color-rgba-gray-90: rgba(156, 163, 175, 0.9);
  --pb-color-rgba-black-10: rgba(0, 0, 0, 0.1);
  --pb-color-rgba-black-20: rgba(0, 0, 0, 0.2);
  --pb-color-rgba-black-30: rgba(0, 0, 0, 0.3);
  --pb-color-rgba-black-40: rgba(0, 0, 0, 0.4);
  --pb-color-rgba-black-50: rgba(0, 0, 0, 0.5);
  --pb-color-rgba-black-60: rgba(0, 0, 0, 0.6);
  --pb-color-rgba-black-70: rgba(0, 0, 0, 0.7);
  --pb-color-rgba-black-80: rgba(0, 0, 0, 0.8);
  --pb-color-rgba-black-90: rgba(0, 0, 0, 0.9);
  --pb-body-color: var(--pb-color-black);
  --pb-body-bg: var(--pb-color-white);
  --pb-link-color: var(--pb-color-primary);
  --pb-link-hover-color: var(--pb-color-primary-500);
}

/* @version 10.0 [rev.01] */
:root {
  --pb-font-primary: Inter;
  --pb-font-secondary: Inter;
  --pb-font-heading: Inter, sans-serif;
  --pb-font-size: 1rem;
  --pb-font-size-sm: 0.875rem;
  --pb-font-size-xs: 0.75rem;
  --pb-font-size-lg: 1.2rem;
  --pb-font-size-btn: 15px;
  --pb-font-size-btn-xs: 10px;
  --pb-font-size-btn-sm: 12px;
  --pb-font-size-btn-lg: 18px;
  --pb-font-size-70: 70%;
  --pb-font-size-btn-70: 70%;
  --pb-font-size-80: 80%;
  --pb-font-size-btn-80: 80%;
  --pb-font-size-90: 90%;
  --pb-font-size-btn-90: 90%;
  --pb-font-size-95: 95%;
  --pb-font-size-btn-95: 95%;
  --pb-font-size-100: 100%;
  --pb-font-size-btn-100: 100%;
  --pb-font-size-105: 105%;
  --pb-font-size-btn-105: 105%;
  --pb-font-size-110: 110%;
  --pb-font-size-btn-110: 110%;
  --pb-font-size-125: 125%;
  --pb-font-size-btn-125: 125%;
  --pb-font-size-150: 150%;
  --pb-font-size-btn-150: 150%;
  --pb-font-size-175: 175%;
  --pb-font-size-btn-175: 175%;
  --pb-font-size-200: 200%;
  --pb-font-size-btn-200: 200%;
  --pb-font-weight-light: 300;
  --pb-font-weight-normal: 400;
  --pb-font-weight-medium: 500;
  --pb-font-weight-semibold: 600;
  --pb-font-weight-bold: 700;
  --pb-box-shadow-spread: 0;
  --pb-box-shadow-size: .25rem;
  --pb-flex-gap: 0.25rem;
  --pb-flex-label-width: 225px;
  --pb-navbar-height: 4rem;
  --pb-sidebar-width: 275px;
  --pb-border-radius: 0.375rem;
  --pb-border-radius-sm: 4px;
  --pb-border-radius-lg: 0.75rem;
  --pb-default-box-bg: rgba(255, 255, 255, 0.7);
  --pb-default-box-border-color: rgba(156, 163, 175, 0.2);
}
@media (max-width: 991.98px) {
  :root {
    --pb-navbar-height: 3.5rem;
    --pb-sidebar-width: 80vw;
  }
}

@media (min-width: 768px) {
  .animate {
    animation-duration: 0.3s;
    animation-fill-mode: both;
  }
}
@keyframes slideIn {
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
  100% {
    transform: translateY(0rem);
    opacity: 1;
  }
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.slideIn {
  animation-name: slideIn;
}

.fadeIn {
  animation-name: fadeIn;
}

.fadeOut {
  animation-name: fadeOut;
}

/* @version 10.0 [rev.01] */
body {
  color: var(--pb-body-color);
  background-color: var(--pb-body-bg);
  font-size: var(--pb-font-size);
  font-family: var(--pb-font-primary), sans-serif;
  margin: 0;
}

a {
  --pb-link-color: var(--pb-color-primary);
  --pb-link-text-decoration: none;
  color: var(--pb-link-color);
  text-decoration: var(--pb-link-text-decoration);
}
a:hover {
  --pb-link-color: var(--pb-color-primary-500);
}

/* NO-WRAP */
.nowrap {
  white-space: nowrap;
}

/* /NO-WRAP */
/* ADD GAP ON FLEX ITEMS */
.d-flex {
  gap: var(--pb-flex-gap);
}

/* /ADD GAP ON FLEX ITEMS */
.backdrop {
  z-index: 5;
  color: var(--pb-backdrop-color, var(--pb-color-black));
}

small, .small {
  font-size: var(--pb-font-size-sm);
}

.text-right {
  text-align: right !important;
}

/* @version 9.0 [rev.9.0.01] */
/* PRINT */
@media print {
  .tab-content > .tab-pane {
    display: block !important;
    opacity: 1 !important;
  }
  .print-only {
    display: block !important;
  }
  .no-print {
    display: none !important;
  }
  a:link:after, a:visited:after {
    display: none;
    content: "";
  }
  .img-thumbnail {
    padding: 0;
    width: 75%;
    border: none;
  }
  .slick-arrow {
    display: none !important;
  }
}
@media screen {
  .print-only {
    display: none !important;
  }
}
/* /PRINT */
/* @version 10.0 [rev.01] */
/* ANCHOR */
.anchor {
  padding: 0 0.175rem;
  opacity: 0;
  transition: color 0.15s ease-in-out, opacity 0.15s ease-in-out;
}
.anchor::after {
  content: "@";
}
.anchor:focus, .anchor:hover, :target > .anchor {
  opacity: 1;
  color: var(--pb-anchor-hover-color, var(--pb-color-primary-500));
}

/* /ANCHOR */
/* @version 10.0 [rev.01] */
.badge {
  --pb-badge-font-size: var(--pb-font-size-90);
  --pb-badge-font-weight: var(--pb-font-weight-normal);
  --pb-badge-text-color: var(--pb-color-black);
  --pb-badge-bg: transparent;
  --pb-badge-color: inherit;
  --pb-badge-padding-y: 0.25rem;
  --pb-badge-padding-x: 0.5rem;
  font-size: var(--pb-badge-font-size);
  font-weight: var(--pb-badge-font-weight);
  white-space: normal;
  text-align: left;
  padding: var(--pb-badge-padding-y) var(--pb-badge-padding-x);
  background-color: var(--pb-badge-bg) !important;
  color: var(--pb-badge-color) !important;
}
.btn .badge {
  top: var(--pb-badge-btn-top, 0);
  --pb-badge-font-size: 80%;
}
.badge-text {
  color: var(--pb-badge-text-color);
}
.badge-slim {
  --pb-badge-font-weight: var(--pb-font-weight-light);
}
.badge.text-bg-primary {
  --pb-badge-bg: var(--pb-color-primary);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-primary, .badge.text-bg-primary.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-primary);
}
.badge.text-bg-secondary {
  --pb-badge-bg: var(--pb-color-secondary);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-secondary, .badge.text-bg-secondary.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-secondary);
}
.badge.text-bg-success {
  --pb-badge-bg: var(--pb-color-success);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-success, .badge.text-bg-success.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-success);
}
.badge.text-bg-danger {
  --pb-badge-bg: var(--pb-color-danger);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-danger, .badge.text-bg-danger.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-danger);
}
.badge.text-bg-warning {
  --pb-badge-bg: var(--pb-color-warning);
  --pb-badge-color: var(--pb-color-black);
}
.badge-group .badge.text-bg-warning, .badge.text-bg-warning.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-warning-700);
}
.badge.text-bg-info {
  --pb-badge-bg: var(--pb-color-info-200);
  --pb-badge-color: var(--pb-color-info-700);
}
.badge-group .badge.text-bg-info, .badge.text-bg-info.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-info-200);
}
.badge.text-bg-light {
  --pb-badge-bg: var(--pb-color-light);
  --pb-badge-color: var(--pb-color-black);
}
.badge-group .badge.text-bg-light, .badge.text-bg-light.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-light);
}
.badge.text-bg-dark {
  --pb-badge-bg: var(--pb-color-dark);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-dark, .badge.text-bg-dark.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-dark);
}
.badge.text-bg-open {
  --pb-badge-bg: var(--pb-color-success-700);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-open, .badge.text-bg-open.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-success-700);
}
.badge.text-bg-closing {
  --pb-badge-bg: var(--pb-color-gray-300);
  --pb-badge-color: var(--pb-color-red-700);
}
.badge-group .badge.text-bg-closing, .badge.text-bg-closing.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red-700);
}
.badge.text-bg-closed {
  --pb-badge-bg: var(--pb-color-red-700);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-closed, .badge.text-bg-closed.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red-700);
}
.badge.text-bg-scheduled {
  --pb-badge-bg: var(--pb-color-blue-700);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-scheduled, .badge.text-bg-scheduled.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-700);
}
.badge.text-bg-preferred {
  --pb-badge-bg: var(--pb-color-blue-500);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-preferred, .badge.text-bg-preferred.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-500);
}
.badge.text-bg-verified {
  --pb-badge-bg: var(--pb-color-blue-400);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-verified, .badge.text-bg-verified.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-400);
}
.badge.text-bg-live-mode {
  --pb-badge-bg: var(--pb-color-red-800);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-live-mode, .badge.text-bg-live-mode.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red-800);
}
.badge.text-bg-account-mode {
  --pb-badge-bg: var(--pb-color-blue-800);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-account-mode, .badge.text-bg-account-mode.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-800);
}
.badge.text-bg-store-info {
  --pb-badge-bg: var(--pb-color-gray-500);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-store-info, .badge.text-bg-store-info.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-gray-500);
}
.badge.text-bg-seller {
  --pb-badge-bg: var(--pb-color-blue);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-seller, .badge.text-bg-seller.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue);
}
.badge.text-bg-buyer {
  --pb-badge-bg: var(--pb-color-red);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-buyer, .badge.text-bg-buyer.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red);
}
.badge.text-bg-draft {
  --pb-badge-bg: var(--pb-color-light);
  --pb-badge-color: var(--pb-color-black);
}
.badge-group .badge.text-bg-draft, .badge.text-bg-draft.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-gray-500);
}
.badge.text-bg-pending {
  --pb-badge-bg: var(--pb-color-gray-400);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-pending, .badge.text-bg-pending.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-gray-400);
}
.badge.text-bg-declined {
  --pb-badge-bg: var(--pb-color-red-800);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-declined, .badge.text-bg-declined.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red-800);
}
.badge.text-bg-withdrawn {
  --pb-badge-bg: var(--pb-color-yellow-500);
  --pb-badge-color: var(--pb-color-black);
}
.badge-group .badge.text-bg-withdrawn, .badge.text-bg-withdrawn.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-yellow-500);
}
.badge.text-bg-product {
  --pb-badge-bg: var(--pb-color-blue);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-product, .badge.text-bg-product.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue);
}
.badge.text-bg-classified {
  --pb-badge-bg: var(--pb-color-red);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-classified, .badge.text-bg-classified.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red);
}
.badge.text-bg-auction {
  --pb-badge-bg: var(--pb-color-green);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-auction, .badge.text-bg-auction.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green);
}
.badge.text-bg-activity-bids {
  --pb-badge-bg: var(--pb-color-green-500);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-activity-bids, .badge.text-bg-activity-bids.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green-500);
}
.badge.text-bg-activity-offers {
  --pb-badge-bg: var(--pb-color-orange-400);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-activity-offers, .badge.text-bg-activity-offers.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-orange-400);
}
.badge.text-bg-activity-sales {
  --pb-badge-bg: var(--pb-color-blue-400);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-activity-sales, .badge.text-bg-activity-sales.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-400);
}
.badge.text-bg-count-lots {
  --pb-badge-bg: var(--pb-color-yellow-300);
  --pb-badge-color: var(--pb-color-yellow-800);
}
.badge-group .badge.text-bg-count-lots, .badge.text-bg-count-lots.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-yellow-300);
}
.badge.text-bg-listin-site {
  --pb-badge-bg: var(--pb-color-blue-600);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-listin-site, .badge.text-bg-listin-site.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-600);
}
.badge.text-bg-listin-store {
  --pb-badge-bg: var(--pb-color-blue-700);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-listin-store, .badge.text-bg-listin-store.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-700);
}
.badge.text-bg-listin-both {
  --pb-badge-bg: var(--pb-color-pink-500);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-listin-both, .badge.text-bg-listin-both.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-pink-500);
}
.badge.text-bg-homepage-featured {
  --pb-badge-bg: var(--pb-color-green-600);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-homepage-featured, .badge.text-bg-homepage-featured.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green-600);
}
.badge.text-bg-category-featured {
  --pb-badge-bg: var(--pb-color-red-600);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-category-featured, .badge.text-bg-category-featured.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red-600);
}
.badge.text-bg-offer {
  --pb-badge-bg: var(--pb-color-green-600);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-offer, .badge.text-bg-offer.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green-600);
}
.badge.text-bg-counter {
  --pb-badge-bg: var(--pb-color-red-700);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-counter, .badge.text-bg-counter.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red-700);
}
.badge.text-bg-blue {
  --pb-badge-bg: var(--pb-color-blue);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-blue, .badge.text-bg-blue.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue);
}
.badge.text-bg-green {
  --pb-badge-bg: var(--pb-color-green);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-green, .badge.text-bg-green.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green);
}
.badge.text-bg-red {
  --pb-badge-bg: var(--pb-color-red);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-red, .badge.text-bg-red.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red);
}
.badge.text-bg-gold {
  --pb-badge-bg: var(--pb-color-gold);
  --pb-badge-color: var(--pb-color-gold-800);
}
.badge-group .badge.text-bg-gold, .badge.text-bg-gold.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-gold);
}
.badge.text-bg-black {
  --pb-badge-bg: var(--pb-color-gray-700);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-black, .badge.text-bg-black.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-gray-700);
}
.badge.text-bg-orange {
  --pb-badge-bg: var(--pb-color-orange);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-orange, .badge.text-bg-orange.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-orange);
}
.badge.text-bg-activity-in-cart {
  --pb-badge-bg: var(--pb-color-blue-700);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-activity-in-cart, .badge.text-bg-activity-in-cart.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-blue-700);
}
.badge.text-bg-activity-paid {
  --pb-badge-bg: var(--pb-color-green-600);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-activity-paid, .badge.text-bg-activity-paid.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green-600);
}
.badge.text-bg-activity-sold {
  --pb-badge-bg: var(--pb-color-green-400);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-activity-sold, .badge.text-bg-activity-sold.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green-400);
}
.badge.text-bg-high-bid {
  --pb-badge-bg: var(--pb-color-green-500);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-high-bid, .badge.text-bg-high-bid.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-green-500);
}
.badge.text-bg-outbid {
  --pb-badge-bg: var(--pb-color-red-500);
  --pb-badge-color: var(--pb-color-white);
}
.badge-group .badge.text-bg-outbid, .badge.text-bg-outbid.inverted {
  --pb-badge-bg: #f3f4f6;
  --pb-badge-color: var(--pb-color-red-500);
}

.badge-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--pb-badge-group-gap-y, 0.2rem) var(--pb-badge-group-gap-x, 0.35rem);
}

/* @version 10.0 [rev.02] */
/* BLOCKQUOTES */
.bq {
  --pb-blockquote-background-color: var(--pb-color-gray-100);
  --pb-blockquote-border-left-color: var(--pb-color-gray-500);
  --pb-blockquote-border-left-width: 5px;
  --pb-blockquote-border-left-style: solid;
  --pb-blockquote-padding: 12px;
  background-color: var(--pb-blockquote-background-color);
  border-left-color: var(--pb-blockquote-border-left-color);
  border-left-width: var(--pb-blockquote-border-left-width);
  border-left-style: var(--pb-blockquote-border-left-style);
  padding: var(--pb-blockquote-padding);
}
.bq.bq-info {
  --pb-blockquote-background-color: var(--pb-color-info-100);
  --pb-blockquote-border-left-color: var(--pb-color-info-600);
}
.bq.bq-success {
  --pb-blockquote-background-color: var(--pb-color-success-100);
  --pb-blockquote-border-left-color: var(--pb-color-success-600);
}
.bq.bq-danger {
  --pb-blockquote-background-color: var(--pb-color-danger-100);
  --pb-blockquote-border-left-color: var(--pb-color-danger-600);
}

/* /BLOCKQUOTES */
/* @version 10.0 [rev.02] */
/* BUTTONS */
:root {
  --pb-btn-box-shadow-focus-spread: var(--pb-box-shadow-spread);
  --pb-btn-box-shadow-focus-size: var(--pb-box-shadow-size);
  --pb-btn-box-shadow-focus-color: var(--pb-color-primary-100);
}

.btn {
  --pb-btn-padding-x: 0.75rem;
  --pb-btn-padding-y: 0.375rem;
  --pb-btn-font-family: ;
  --pb-btn-font-size: var(--pb-font-size-btn, 1rem);
  --pb-btn-font-weight: 400;
  --pb-btn-line-height: 1.5;
  --pb-btn-color: var(--pb-body-color);
  --pb-btn-background-color: transparent;
  --pb-btn-border-width: 1px;
  --pb-btn-border-color: transparent;
  --pb-btn-border-radius: inherit;
  --pb-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --pb-btn-disabled-opacity: 0.65;
  --pb-btn-box-shadow-color: transparent;
  --pb-btn-flex-gap: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--pb-btn-flex-gap);
  transition: box-shadow 0.25s ease-in-out;
  font-family: var(--pb-btn-font-family), sans-serif;
  font-size: var(--pb-btn-font-size);
  font-weight: var(--pb-btn-font-weight);
  line-height: var(--pb-btn-line-height);
  padding: var(--pb-btn-padding-y) var(--pb-btn-padding-x);
  border-width: var(--pb-btn-border-width);
  border-radius: var(--pb-btn-border-radius);
}
.btn, .btn:hover, .btn:focus, .btn:active, .btn:first-child:active, :not(.btn-check) + .btn:active {
  color: var(--pb-btn-color);
  background-color: var(--pb-btn-background-color);
  border-color: var(--pb-btn-border-color);
}
.btn:focus {
  box-shadow: 0 0 var(--pb-btn-box-shadow-focus-spread) var(--pb-btn-box-shadow-focus-size) var(--pb-btn-box-shadow-color);
}

.btn-primary, .btn-primary:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-primary);
  --pb-btn-border-color: var(--pb-color-primary);
}
.btn-primary:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-primary-700);
  --pb-btn-border-color: var(--pb-color-primary-700);
}
.btn-primary:focus, .btn-primary:active, .btn-primary:first-child:active, :not(.btn-check) + .btn-primary:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-primary-500);
  --pb-btn-border-color: var(--pb-color-primary-500);
  --pb-btn-box-shadow-color: var(--pb-color-primary-100);
}

.btn-secondary, .btn-secondary:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-secondary);
  --pb-btn-border-color: var(--pb-color-secondary);
}
.btn-secondary:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-gray-400);
  --pb-btn-border-color: var(--pb-color-gray-400);
}
.btn-secondary:focus, .btn-secondary:active, .btn-secondary:first-child:active, :not(.btn-check) + .btn-secondary:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-gray-400);
  --pb-btn-border-color: var(--pb-color-gray-400);
  --pb-btn-box-shadow-color: var(--pb-color-gray-200);
}

.btn-success, .btn-success:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-success);
  --pb-btn-border-color: var(--pb-color-success);
}
.btn-success:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-success-700);
  --pb-btn-border-color: var(--pb-color-success-700);
}
.btn-success:focus, .btn-success:active, .btn-success:first-child:active, :not(.btn-check) + .btn-success:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-success-500);
  --pb-btn-border-color: var(--pb-color-success-500);
  --pb-btn-box-shadow-color: var(--pb-color-success-100);
}

.btn-danger, .btn-danger:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-danger);
  --pb-btn-border-color: var(--pb-color-danger);
}
.btn-danger:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-danger-700);
  --pb-btn-border-color: var(--pb-color-danger-700);
}
.btn-danger:focus, .btn-danger:active, .btn-danger:first-child:active, :not(.btn-check) + .btn-danger:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-danger-500);
  --pb-btn-border-color: var(--pb-color-danger-500);
  --pb-btn-box-shadow-color: var(--pb-color-danger-100);
}

.btn-warning, .btn-warning:disabled {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-warning);
  --pb-btn-border-color: var(--pb-color-warning);
}
.btn-warning:hover {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-warning-700);
  --pb-btn-border-color: var(--pb-color-warning-700);
}
.btn-warning:focus, .btn-warning:active, .btn-warning:first-child:active, :not(.btn-check) + .btn-warning:active {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-warning-500);
  --pb-btn-border-color: var(--pb-color-warning-500);
  --pb-btn-box-shadow-color: var(--pb-color-warning-100);
}

.btn-info, .btn-info:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-info);
  --pb-btn-border-color: var(--pb-color-info);
}
.btn-info:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-info);
  --pb-btn-border-color: var(--pb-color-info);
}
.btn-info:focus, .btn-info:active, .btn-info:first-child:active, :not(.btn-check) + .btn-info:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-info);
  --pb-btn-border-color: var(--pb-color-info);
  --pb-btn-box-shadow-color: var(--pb-color-cyan-100);
}

.btn-light, .btn-light:disabled {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-light);
  --pb-btn-border-color: var(--pb-color-light);
}
.btn-light:hover {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-gray-200);
  --pb-btn-border-color: var(--pb-color-gray-200);
}
.btn-light:focus, .btn-light:active, .btn-light:first-child:active, :not(.btn-check) + .btn-light:active {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-gray-100);
  --pb-btn-border-color: var(--pb-color-gray-100);
  --pb-btn-box-shadow-color: var(--pb-color-gray-200);
}

.btn-dark, .btn-dark:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-dark);
  --pb-btn-border-color: var(--pb-color-dark);
}
.btn-dark:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-gray-700);
  --pb-btn-border-color: var(--pb-color-gray-700);
}
.btn-dark:focus, .btn-dark:active, .btn-dark:first-child:active, :not(.btn-check) + .btn-dark:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-gray-800);
  --pb-btn-border-color: var(--pb-color-gray-800);
  --pb-btn-box-shadow-color: var(--pb-color-gray-400);
}

.btn-link, .btn-link:disabled {
  --pb-btn-color: var(--pb-color-primary);
  --pb-btn-background-color: transparent;
  --pb-btn-border-color: transparent;
}
.btn-link:hover {
  --pb-btn-color: var(--pb-color-primary-700);
  --pb-btn-background-color: transparent;
  --pb-btn-border-color: transparent;
}
.btn-link:focus, .btn-link:active, .btn-link:first-child:active, :not(.btn-check) + .btn-link:active {
  --pb-btn-color: var(--pb-color-primary-500);
  --pb-btn-background-color: transparent;
  --pb-btn-border-color: transparent;
  --pb-btn-box-shadow-color: var(--pb-color-primary-100);
}

.btn-blue, .btn-blue:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #0d6efd;
  --pb-btn-border-color: #0d6efd;
}
.btn-blue:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #0b5ed7;
  --pb-btn-border-color: #0b5ed7;
}
.btn-blue:focus, .btn-blue:active, .btn-blue:first-child:active, :not(.btn-check) + .btn-blue:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #3d8bfd;
  --pb-btn-border-color: #3d8bfd;
  --pb-btn-box-shadow-color: #b6d4fe;
}

.btn-green, .btn-green:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #00a651;
  --pb-btn-border-color: #00a651;
}
.btn-green:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #008a44;
  --pb-btn-border-color: #008a44;
}
.btn-green:focus, .btn-green:active, .btn-green:first-child:active, :not(.btn-check) + .btn-green:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #33b87a;
  --pb-btn-border-color: #33b87a;
  --pb-btn-box-shadow-color: #b2e5cb;
}

.btn-red, .btn-red:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #d42020;
  --pb-btn-border-color: #d42020;
}
.btn-red:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #b51b1b;
  --pb-btn-border-color: #b51b1b;
}
.btn-red:focus, .btn-red:active, .btn-red:first-child:active, :not(.btn-check) + .btn-red:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #de4d4d;
  --pb-btn-border-color: #de4d4d;
  --pb-btn-box-shadow-color: #f3bcbc;
}

.btn-gold, .btn-gold:disabled {
  --pb-btn-color: #846e20;
  --pb-btn-background-color: #fcd036;
  --pb-btn-border-color: #fcd036;
}
.btn-gold:hover {
  --pb-btn-color: #846e20;
  --pb-btn-background-color: #e2bb30;
  --pb-btn-border-color: #e2bb30;
}
.btn-gold:focus, .btn-gold:active, .btn-gold:first-child:active, :not(.btn-check) + .btn-gold:active {
  --pb-btn-color: #846e20;
  --pb-btn-background-color: #fcd95e;
  --pb-btn-border-color: #fcd95e;
  --pb-btn-box-shadow-color: #fdecae;
}

.btn-black, .btn-black:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #303641;
  --pb-btn-border-color: #303641;
}
.btn-black:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #282d36;
  --pb-btn-border-color: #282d36;
}
.btn-black:focus, .btn-black:active, .btn-black:first-child:active, :not(.btn-check) + .btn-black:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #595e67;
  --pb-btn-border-color: #595e67;
  --pb-btn-box-shadow-color: #c6c7ca;
}

.btn-orange, .btn-orange:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #ff9600;
  --pb-btn-border-color: #ff9600;
}
.btn-orange:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #d97f00;
  --pb-btn-border-color: #d97f00;
}
.btn-orange:focus, .btn-orange:active, .btn-orange:first-child:active, :not(.btn-check) + .btn-orange:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #ffab33;
  --pb-btn-border-color: #ffab33;
  --pb-btn-box-shadow-color: #ffd8a3;
}

.btn-default, .btn-default:disabled {
  --pb-btn-color: var(--pb-color-gray-800);
  --pb-btn-background-color: var(--pb-color-white);
  --pb-btn-border-color: var(--pb-color-gray-300);
}
.btn-default:hover {
  --pb-btn-color: var(--pb-color-gray-800);
  --pb-btn-background-color: var(--pb-color-gray-100);
  --pb-btn-border-color: var(--pb-color-gray-300);
}
.btn-default:focus, .btn-default:active, .btn-default:first-child:active, :not(.btn-check) + .btn-default:active {
  --pb-btn-color: var(--pb-color-gray-800);
  --pb-btn-background-color: var(--pb-color-gray-100);
  --pb-btn-border-color: var(--pb-color-gray-50);
  --pb-btn-box-shadow-color: var(--pb-color-gray-200);
}

.btn-place-bid, .btn-place-bid:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-success);
  --pb-btn-border-color: var(--pb-color-success);
}
.btn-place-bid:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-success-700);
  --pb-btn-border-color: var(--pb-color-success-700);
}
.btn-place-bid:focus, .btn-place-bid:active, .btn-place-bid:first-child:active, :not(.btn-check) + .btn-place-bid:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: var(--pb-color-success-500);
  --pb-btn-border-color: var(--pb-color-success-500);
  --pb-btn-box-shadow-color: var(--pb-color-success-100);
}

.btn-make-offer, .btn-make-offer:disabled {
  --pb-btn-color: #846e20;
  --pb-btn-background-color: #fcd036;
  --pb-btn-border-color: #fcd036;
}
.btn-make-offer:hover {
  --pb-btn-color: #846e20;
  --pb-btn-background-color: #e2bb30;
  --pb-btn-border-color: #e2bb30;
}
.btn-make-offer:focus, .btn-make-offer:active, .btn-make-offer:first-child:active, :not(.btn-check) + .btn-make-offer:active {
  --pb-btn-color: #846e20;
  --pb-btn-background-color: #fcd95e;
  --pb-btn-border-color: #fcd95e;
  --pb-btn-box-shadow-color: #fdecae;
}

.btn-buy-out, .btn-buy-out:disabled {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #0d6efd;
  --pb-btn-border-color: #0d6efd;
}
.btn-buy-out:hover {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #0b5ed7;
  --pb-btn-border-color: #0b5ed7;
}
.btn-buy-out:focus, .btn-buy-out:active, .btn-buy-out:first-child:active, :not(.btn-check) + .btn-buy-out:active {
  --pb-btn-color: var(--pb-color-white);
  --pb-btn-background-color: #3d8bfd;
  --pb-btn-border-color: #3d8bfd;
  --pb-btn-box-shadow-color: #b6d4fe;
}

.btn-wishlist-default, .btn-wishlist-default:disabled {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-white);
  --pb-btn-border-color: var(--pb-color-white);
}
.btn-wishlist-default:hover {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-gray-200);
  --pb-btn-border-color: var(--pb-color-gray-200);
}
.btn-wishlist-default:focus, .btn-wishlist-default:active, .btn-wishlist-default:first-child:active, :not(.btn-check) + .btn-wishlist-default:active {
  --pb-btn-color: var(--pb-color-black);
  --pb-btn-background-color: var(--pb-color-gray-100);
  --pb-btn-border-color: var(--pb-color-gray-100);
  --pb-btn-box-shadow-color: var(--pb-color-gray-200);
}

.btn-wishlist-active, .btn-wishlist-active:disabled {
  --pb-btn-color: var(--pb-color-red-600);
  --pb-btn-background-color: var(--pb-color-gray-200);
  --pb-btn-border-color: var(--pb-color-gray-200);
}
.btn-wishlist-active:hover {
  --pb-btn-color: var(--pb-color-red-600);
  --pb-btn-background-color: var(--pb-color-red-100);
  --pb-btn-border-color: var(--pb-color-red-100);
}
.btn-wishlist-active:focus, .btn-wishlist-active:active, .btn-wishlist-active:first-child:active, :not(.btn-check) + .btn-wishlist-active:active {
  --pb-btn-color: var(--pb-color-red-600);
  --pb-btn-background-color: var(--pb-color-red-100);
  --pb-btn-border-color: var(--pb-color-red-100);
  --pb-btn-box-shadow-color: var(--pb-color-red-100);
}

/* button sizes */
.btn-group-sm > .btn, .btn-sm {
  --pb-btn-padding-y: 0.25rem;
  --pb-btn-padding-x: 0.5rem;
  --pb-btn-font-size: var(--pb-font-size-btn-sm, 0.875rem);
  --pb-btn-border-radius: var(--bs-border-radius-sm);
}

.btn-group-lg > .btn, .btn-lg {
  --pb-btn-padding-y: 0.5rem;
  --pb-btn-padding-x: 1rem;
  --pb-btn-font-size: var(--pb-font-size-btn-lg, 1.25rem);
  --pb-btn-border-radius: var(--bs-border-radius-lg);
}

/* Button Group States */
.btn-group .btn {
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --pb-btn-border-color: #d1d5db !important;
}
.btn-group .btn.active {
  --pb-btn-color: #374151;
  --pb-btn-background-color: #e5e7eb;
  --pb-btn-border-color: #d1d5db;
}
.btn-group .btn-filter-title {
  z-index: 2;
  margin-right: -1px;
}
.btn-group .btn-filter-title, .btn-group .btn-filter-title:hover {
  --pb-btn-background-color: #f3f4f6;
  --pb-btn-color: #1f2937;
  --pb-btn-border-color: #d1d5db;
  border-right-color: var(--pb-btn-filter-title-border-right, #f3f4f6);
}
.btn-group .btn-filter-title:after {
  content: ":";
}

.btn-toolbar {
  gap: var(--pb-btn-toolbar-gap, var(--pb-flex-gap));
}

.bootbox-close-button {
  float: right;
}

/* BUTTON LOADING DISABLED */
.btn-loading-disabled {
  opacity: 1 !important;
}

/* /BUTTON LOADING DISABLED */
/* BUTTONS STICKY BOTTOM */
.buttons-sticky-bottom {
  position: sticky;
  background-color: var(--pb-buttons-sticky-bottom-bg, #fff);
  padding: 0.75rem 0;
  margin-bottom: 1rem;
  border-top: 1px solid var(--pb-buttons-sticky-bottom-border-top-color, #d1d5db);
  bottom: 0;
  width: 100%;
  z-index: 15;
}
@media (max-width: 1199.98px) {
  .buttons-sticky-bottom {
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
  }
  .buttons-sticky-bottom button {
    display: inline-block;
  }
}
.form-sticky-buttons .buttons-sticky-bottom {
  display: none;
}
.buttons-sticky-bottom.bg-transparent {
  --pb-buttons-sticky-bottom-border-top-color: #f3f4f6;
  background-color: rgba(255, 255, 255, 0.8) !important;
}

/* /BUTTONS STICKY BOTTOM */
.btn-email {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
}
.btn-email .btn {
  width: 100%;
  font-size: 1.25rem;
  padding: 0.5rem 1rem;
}

.buttons-grouped {
  display: flex;
  flex-wrap: wrap;
  gap: var(--pb-buttons-grouped-gap, var(--pb-flex-gap));
}
.buttons-grouped.buttons-icons-only span:not(.feather) {
  display: none;
}
.buttons-grouped .dropdown-item span {
  background-color: transparent;
}
.buttons-grouped.buttons-stacked {
  flex-direction: column;
  align-items: flex-start;
}
.buttons-grouped.buttons-stacked-full-width {
  flex-direction: column;
}

.sidebar .sidebar-close {
  color: var(--pb-header-button-color, #1f2937) !important;
  background-color: transparent;
  border: none;
  font-size: var(--pb-header-button-font-size, 28px);
}

/* @version 10.0 [rev.01] */
.listings-cards,
.stores-cards,
.events-cards {
  --pb-cards-padding-x: 20px;
  --pb-cards-padding-y: 24px;
}
@media (max-width: 767.98px) {
  .listings-cards,
  .stores-cards,
  .events-cards {
    --pb-cards-padding-x: 12px;
    --pb-cards-padding-y: 16px;
  }
}
.listings-cards .heading,
.stores-cards .heading,
.events-cards .heading {
  grid-column: 1/-1;
}
.listings-cards,
.stores-cards,
.events-cards {
  display: grid;
  grid-template-columns: repeat(var(--pb-cards-cols-phone, 1), minmax(0, 1fr));
  gap: var(--pb-cards-gap, 1rem);
}
@media (min-width: 992px) {
  .listings-cards,
  .stores-cards,
  .events-cards {
    grid-template-columns: repeat(var(--pb-cards-cols-desktop, var(--pb-cards-cols-phone, 1)), minmax(0, 1fr));
  }
}
.listings-cards.cards-grid-phone-1,
.stores-cards.cards-grid-phone-1,
.events-cards.cards-grid-phone-1 {
  --pb-cards-cols-phone: 1;
}
@media (min-width: 992px) {
  .listings-cards.cards-grid-desktop-1,
  .stores-cards.cards-grid-desktop-1,
  .events-cards.cards-grid-desktop-1 {
    --pb-cards-cols-desktop: 1;
  }
}
.listings-cards.cards-grid-phone-2,
.stores-cards.cards-grid-phone-2,
.events-cards.cards-grid-phone-2 {
  --pb-cards-cols-phone: 2;
}
@media (min-width: 992px) {
  .listings-cards.cards-grid-desktop-2,
  .stores-cards.cards-grid-desktop-2,
  .events-cards.cards-grid-desktop-2 {
    --pb-cards-cols-desktop: 2;
  }
}
.listings-cards.cards-grid-phone-3,
.stores-cards.cards-grid-phone-3,
.events-cards.cards-grid-phone-3 {
  --pb-cards-cols-phone: 3;
}
@media (min-width: 992px) {
  .listings-cards.cards-grid-desktop-3,
  .stores-cards.cards-grid-desktop-3,
  .events-cards.cards-grid-desktop-3 {
    --pb-cards-cols-desktop: 3;
  }
}
.listings-cards.cards-grid-phone-4,
.stores-cards.cards-grid-phone-4,
.events-cards.cards-grid-phone-4 {
  --pb-cards-cols-phone: 4;
}
@media (min-width: 992px) {
  .listings-cards.cards-grid-desktop-4,
  .stores-cards.cards-grid-desktop-4,
  .events-cards.cards-grid-desktop-4 {
    --pb-cards-cols-desktop: 4;
  }
}
.listings-cards.cards-grid-phone-5,
.stores-cards.cards-grid-phone-5,
.events-cards.cards-grid-phone-5 {
  --pb-cards-cols-phone: 5;
}
@media (min-width: 992px) {
  .listings-cards.cards-grid-desktop-5,
  .stores-cards.cards-grid-desktop-5,
  .events-cards.cards-grid-desktop-5 {
    --pb-cards-cols-desktop: 5;
  }
}
.listings-cards.cards-grid-phone-6,
.stores-cards.cards-grid-phone-6,
.events-cards.cards-grid-phone-6 {
  --pb-cards-cols-phone: 6;
}
@media (min-width: 992px) {
  .listings-cards.cards-grid-desktop-6,
  .stores-cards.cards-grid-desktop-6,
  .events-cards.cards-grid-desktop-6 {
    --pb-cards-cols-desktop: 6;
  }
}
.listings-cards .card,
.stores-cards .card,
.events-cards .card {
  container-type: inline-size;
  background-color: var(--pb-card-background-color, var(--pb-default-box-bg));
  border-color: var(--pb-card-border-color, var(--pb-default-box-border-color));
  border-radius: var(--pb-card-border-radius, 0.375rem);
}
.listings-cards .card .card-img,
.stores-cards .card .card-img,
.events-cards .card .card-img {
  background-color: var(--pb-card-img-background-color, #fff);
  border-radius: var(--pb-card-img-border-radius);
}
.listings-cards .card .card-img .card-img-top,
.stores-cards .card .card-img .card-img-top,
.events-cards .card .card-img .card-img-top {
  border-radius: var(--pb-card-img-border-radius) !important;
  aspect-ratio: var(----pb-media-aspect-ratio, 1/1);
}
.listings-cards .card .card-body,
.stores-cards .card .card-body,
.events-cards .card .card-body {
  display: flex;
  flex-direction: column;
  gap: var(--pb-card-body-gap, 0.25rem);
  padding: 0;
  font-size: var(--pb-card-body-font-size, var(--pb-font-size));
}
.listings-cards .card .card-footer,
.stores-cards .card .card-footer,
.events-cards .card .card-footer {
  gap: var(--pb-card-footer-gap, 0.5rem);
}
.listings-cards .card .card-title,
.stores-cards .card .card-title,
.events-cards .card .card-title {
  font-size: var(--pb-card-title-font-size, 1.1rem);
  font-weight: var(--pb-card-title-font-weight, var(--pb-font-weight-semibold));
  margin-bottom: var(--pb-card-title-margin-bottom, 0.5rem);
}
.listings-cards .card .card-title a,
.stores-cards .card .card-title a,
.events-cards .card .card-title a {
  color: var(--pb-card-title-color, var(--pb-link-color));
}
.listings-cards .card .card-title a:hover,
.stores-cards .card .card-title a:hover,
.events-cards .card .card-title a:hover {
  color: var(--pb-card-title-hover-color, var(--pb-link-hover-color));
}
.listings-cards .card .price,
.stores-cards .card .price,
.events-cards .card .price {
  font-size: var(--pb-card-price-font-size, var(--pb-font-size-lg));
  line-height: var(--pb-card-price-line-height, 1.4);
  font-weight: var(--pb-card-price-font-weight, 500);
}
.listings-cards .card .seller,
.stores-cards .card .seller,
.events-cards .card .seller {
  font-size: var(--pb-card-seller-font-size, var(--pb-font-size-sm));
  color: var(--pb-card-seller-color, #374151);
}
.listings-cards .card .bidding,
.stores-cards .card .bidding,
.events-cards .card .bidding {
  display: flex;
  align-items: center;
  gap: var(--pb-card-bidding-gap, 0.5rem);
  font-size: var(--pb-card-bidding-font-size, var(--pb-font-size-sm));
}
.listings-cards .card .bidding .badge,
.stores-cards .card .bidding .badge,
.events-cards .card .bidding .badge {
  font-size: var(--pb-card-bidding-badge-font-size, var(--pb-font-size-sm));
}
.listings-cards .card .end-time,
.stores-cards .card .end-time,
.events-cards .card .end-time {
  font-size: var(--pb-card-listing-end-time-font-size, var(--pb-font-size-sm));
}
.listings-cards .card:hover .btn-wishlist-async,
.stores-cards .card:hover .btn-wishlist-async,
.events-cards .card:hover .btn-wishlist-async {
  visibility: visible !important;
}
.listings-cards .card-grid,
.stores-cards .card-grid,
.events-cards .card-grid {
  display: flex;
  flex-direction: column;
  gap: var(--pb-card-grid-gap, 1rem);
  padding: var(--pb-cards-padding-y) var(--pb-cards-padding-x);
  width: auto;
}
.listings-cards .card-grid .card-title,
.stores-cards .card-grid .card-title,
.events-cards .card-grid .card-title {
  white-space: normal !important;
  font-size: 1.2rem;
  line-height: 1.25;
  height: calc(1.2rem * 1.25 * 3);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.listings-cards .card-grid .card-short-description,
.stores-cards .card-grid .card-short-description,
.events-cards .card-grid .card-short-description {
  display: none;
}
.listings-cards .card-grid .bidding,
.stores-cards .card-grid .bidding,
.events-cards .card-grid .bidding {
  display: flex;
  align-items: center;
  gap: 4px;
}
.listings-cards .card-grid .card-footer,
.stores-cards .card-grid .card-footer,
.events-cards .card-grid .card-footer {
  border-top: none;
  margin: 0 calc(var(--pb-cards-padding-x) * -1) calc(var(--pb-cards-padding-y) * -1);
  padding: calc(var(--pb-cards-padding-y) / 2) var(--pb-cards-padding-x);
  display: flex;
  justify-content: space-between;
}
.listings-cards .card-grid .card-footer .btn,
.stores-cards .card-grid .card-footer .btn,
.events-cards .card-grid .card-footer .btn {
  flex: 1;
}
.listings-cards .card-grid .btn-wishlist-async,
.stores-cards .card-grid .btn-wishlist-async,
.events-cards .card-grid .btn-wishlist-async {
  position: absolute;
  top: 1rem;
  right: 1rem;
  box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.05);
}
.listings-cards .card-grid .listing-status,
.stores-cards .card-grid .listing-status,
.events-cards .card-grid .listing-status {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 1;
}
.listings-cards .card-list,
.stores-cards .card-list,
.events-cards .card-list {
  --pb-card-list-padding-x: 1rem;
  --pb-card-list-padding-y: 1rem;
  --pb-card-list-gap: 1rem;
}
@media (max-width: 991.98px) {
  .listings-cards .card-list,
  .stores-cards .card-list,
  .events-cards .card-list {
    --pb-card-list-padding-x: 0.5rem;
    --pb-card-list-padding-y: 0.5rem;
    --pb-card-list-gap: 0.5rem;
  }
}
.listings-cards .card-list,
.stores-cards .card-list,
.events-cards .card-list {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: 20% 1fr auto;
  grid-template-areas: "img body footer";
  padding: var(--pb-card-list-padding-y) var(--pb-card-list-padding-x);
  gap: var(--pb-card-list-gap);
  width: 100%;
  align-items: center;
}
.listings-cards .card-list .card-img,
.stores-cards .card-list .card-img,
.events-cards .card-list .card-img {
  grid-area: img;
  width: auto;
}
.listings-cards .card-list .card-body,
.stores-cards .card-list .card-body,
.events-cards .card-list .card-body {
  grid-area: body;
}
.listings-cards .card-list .card-body .listing-info, .listings-cards .card-list .card-body .listing-price,
.stores-cards .card-list .card-body .listing-info,
.stores-cards .card-list .card-body .listing-price,
.events-cards .card-list .card-body .listing-info,
.events-cards .card-list .card-body .listing-price {
  display: flex;
  flex-direction: column;
  gap: var(--pb-card-list-body-gap, 0.25rem);
}
.listings-cards .card-list .card-footer,
.stores-cards .card-list .card-footer,
.events-cards .card-list .card-footer {
  grid-area: footer;
  display: flex;
  background-color: transparent;
  border-top: none;
  flex-direction: column;
  padding: 0;
}
.listings-cards .card-list .btn-wishlist-async,
.stores-cards .card-list .btn-wishlist-async,
.events-cards .card-list .btn-wishlist-async {
  position: absolute;
  top: var(--pb-card-list-padding-y);
  right: var(--pb-card-list-padding-x);
}
.listings-cards:not(.no-highlighting) .card-highlighted,
.stores-cards:not(.no-highlighting) .card-highlighted,
.events-cards:not(.no-highlighting) .card-highlighted {
  border-color: var(--pb-card-highlighted-border-color, #b8daff) !important;
  background-color: var(--pb-card-highlighted-background-color, #e6f2ff) !important;
}
.listings-cards:not(.no-highlighting) .card-home-page-featured,
.stores-cards:not(.no-highlighting) .card-home-page-featured,
.events-cards:not(.no-highlighting) .card-home-page-featured {
  border-color: var(--pb-card-home-page-featured-border-color, #ffe7a3) !important;
  background-color: var(--pb-card-home-page-featured-background-color, #fff8e6) !important;
}
.listings-cards:not(.no-highlighting) .card-category-page-featured,
.stores-cards:not(.no-highlighting) .card-category-page-featured,
.events-cards:not(.no-highlighting) .card-category-page-featured {
  border-color: var(--pb-card-category-page-featured-border-color, #f7b5bd) !important;
  background-color: var(--pb-card-home-page-featured-background-color, #fdecef) !important;
}

.stores-cards .card-grid .card-seller {
  font-weight: 500;
  margin-bottom: 0;
}

/* CATEGORIES CARD COLUMNS */
.categories-cards {
  --pb-categories-card-columns-column-count: 1;
}
@media (min-width: 768px) {
  .categories-cards {
    --pb-categories-card-columns-column-count: 2;
  }
}
@media (min-width: 992px) {
  .categories-cards {
    --pb-categories-card-columns-column-count: 3;
  }
}
@media (min-width: 1200px) {
  .categories-cards {
    --pb-categories-card-columns-column-count: 4;
  }
}
.categories-cards {
  column-count: var(--pb-categories-card-columns-column-count);
}
.categories-cards .card {
  display: inline-block;
  width: 100%;
  margin-bottom: var(--pb-categories-cards-card-mb, 1rem);
  border: none;
  background-color: var(--pb-categories-cards-card-bg, #fff);
}
.categories-cards .card .card-title {
  margin-bottom: 0;
}
.categories-cards .card .card-title a {
  color: var(--pb-categories-cards-card-title-link-color, #1f2937);
}
.categories-cards .card .card-text {
  margin-top: 0.75rem;
}

/* /CATEGORIES CARD COLUMNS */
/* EVENTS CARDS */
.events-cards {
  /* ## -- ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-25, revised 2026-08-25 round 2)
     TSS-98: cards-grid-phone-2 (hardcoded on the home shelves in HomePage.php
     and themes/tss-10/app/index/index.phtml, and on /current-events in
     addons/live-auctions .../browse/index.phtml) forces two columns, cramming
     title, image, status, lots, countdown and location into a narrow tile.

     Round 1 only forced 1 column below the 576px xs breakpoint. Round-2 Codex
     adversarial review correctly found that --pb-cards-cols-phone governs the
     ENTIRE sub-992px range (--pb-cards-cols-desktop only takes over at
     media-md-up()/992px, below), so cards-grid-phone-2 is still live and still
     two-up from 576-991px -- which includes real phones in landscape (iPhone
     14 Pro Max lands at 926px) and would still be cramped there. This
     component has no separate tablet tier: the grid-column system is a strict
     phone(<992px)/desktop(>=992px) binary, and media-mobile-breakpoint() below
     is the mixin already used elsewhere in this file (see .card-list) for
     exactly that boundary. So the deliberate, complete fix is a single column
     for the WHOLE phone bucket, not just the ~480px the ticket's audit
     happened to test at (that number came from one portrait-only screenshot,
     not a hard requirement) -- anything narrower leaves a real device width
     still two-up. Nothing below 992px is left multi-column; only the true
     desktop breakpoint (>=992px, cards-grid-desktop-4) is left unchanged. */
}
@media (max-width: 991.98px) {
  .events-cards.cards-grid-phone-2, .events-cards.cards-grid-phone-3 {
    --pb-cards-cols-phone: 1;
  }
}
.events-cards {
  /* ## -- ./ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] */
}
.events-cards .card {
  --pb-card-background-color: var(--pb-event-card-background-color, var(--pb-default-box-bg));
}
@media (min-width: 992px) {
  .events-cards .card {
    --pb-card-title-font-size: 1.75rem;
    --pb-card-body-font-size: 1rem;
  }
}
.events-cards .card .au-status {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 1;
}
.events-cards .card .card-title {
  font-weight: var(--pb-event-card-title-font-weight, var(--pb-font-weight-semibold));
  margin-bottom: 1rem;
}
.events-cards .card .card-title a {
  color: var(--pb-event-card-title-color, var(--pb-color-gray-800));
}
.events-cards .card .event-details .bi {
  color: var(--pb-event-details-icon-color, var(--pb-color-gray-400));
  margin-right: 0.25rem;
}
.events-cards .card .event-details .event-details-label {
  font-weight: 500;
}
.events-cards .card .event-details .event-details-label::after {
  content: ":";
}
.events-cards .card-list {
  grid-column: auto;
  grid-template-areas: "img body";
  grid-template-columns: 25% 1fr;
  --pb-thumbnail-img-background-color: var(--pb-color-gray-50);
}
.events-cards .card-list .card-body {
  align-self: center;
}
.events-cards .card-list .card-body .card-title {
  order: 0;
}
.events-cards .card-list .lots-in-event {
  display: none;
}
.events-cards .card-list.with-lots .lots-in-event {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.confirm-event-lots .card .card-seller, .confirm-event-lots .card .end-time, .confirm-event-lots .card .bidding, .confirm-event-lots .card .action-buttons {
  display: none !important;
}

/* /EVENTS CARDS */
.listing-list h6, .cart-box h6 {
  font-family: var(--pb-font-primary), sans-serif;
}

.listing-list .price {
  display: flex;
  flex-direction: column;
  text-align: right;
  font-size: var(--pb-listing-list-price-font-size, var(--pb-font-size-lg));
  font-weight: var(--pb-listing-list-price-font-weight, var(--pb-font-weight-medium));
}
.listing-list .listing-times {
  font-size: var(--pb-listing-list-times-font-size, var(--pb-font-size-90));
}

.listing-list-email {
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #f3f4f6;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.sale-email {
  border-top: 1px solid #e5e7eb;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
}
.sale-email.with-bottom {
  border-bottom: 1px solid #f3f4f6;
  margin-bottom: 1.5rem;
}

/* @version 10.0 [rev.01] */
/* LISTINGS CAROUSEL */
.carousel {
  --pb-carousel-control-width: 40px;
}
.carousel .carousel-control-prev,
.carousel .carousel-control-next {
  position: relative;
  width: var(--pb-carousel-control-width);
  opacity: 1;
}
.carousel .carousel-control-prev .bi,
.carousel .carousel-control-next .bi {
  width: var(--pb-carousel-control-width);
  height: var(--pb-carousel-control-height, var(--pb-carousel-control-width));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-size: var(--pb-carousel-control-icon-font-size, calc(1px + var(--pb-carousel-control-width) / 2));
  border-radius: var(--pb-carousel-icon-border-radius, 999px);
  color: var(--pb-carousel-control-icon-color, var(--pb-color-gray-600));
  background-color: var(--pb-carousel-control-icon-background-color, var(--pb-color-white));
  box-shadow: var(--pb-carousel-control-icon-box-shadow, 0 0 0 0.25rem rgba(0, 0, 0, 0.02)) !important;
  border: 1px solid var(--pb-color-rgba-black-20);
}

/* @version 10.0 [rev.01] */
/* SHOPPING CART DROPDOWN (DEFAULT PARTIAL) */
.cart-dropdown .cart-box .feather, .cart-sidebar .cart-box .feather {
  color: #0b0b0b;
  height: 15px;
  width: 15px;
}
.cart-dropdown .cart-box + .cart-box, .cart-sidebar .cart-box + .cart-box {
  border-top: 1px solid #dee2e6;
  margin-top: 1rem;
  padding-top: 1rem;
}
.cart-dropdown .cart-item + .cart-item, .cart-sidebar .cart-item + .cart-item {
  margin-top: 0.5rem;
}
.cart-dropdown .cart-total, .cart-sidebar .cart-total {
  border-top: 1px solid #e7ebef;
  font-size: 1.1rem;
}
.cart-dropdown .media, .cart-sidebar .media {
  font-size: 85%;
}
.cart-summary .cart-dropdown, .cart-summary .cart-sidebar {
  margin-bottom: 0.9rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid #e5e7eb;
}

/* /SHOPPING CART DROPDOWN (DEFAULT PARTIAL) */
/* HEADER CART DROPDOWN BUTTON */
header .cart-sidebar .cart-nb-items {
  font-size: var(--pb-font-size-sm);
  color: #374151 !important;
  background-color: #f3f4f6 !important;
  /* display absolute option */
  line-height: 16px;
  border-radius: 12px;
  width: 24px;
  text-align: center;
  position: absolute;
  left: 32px;
}
header .cart-sidebar .btn {
  border: none !important;
  position: relative;
}

/* /HEADER CART DROPDOWN BUTTON */
/* CART TOTALS BOX (CART / CHECKOUT PAGES) */
.dl-cart-totals {
  margin-bottom: 0;
}
.dl-cart-totals > dd {
  font-size: 0.925rem;
  margin-bottom: 0.25rem;
  text-align: right;
}
.dl-cart-totals > dd a {
  color: #374151;
}
.dl-cart-totals .col-total {
  font-size: 1.4em;
  margin-top: 0.5rem;
}
.dl-cart-totals .calculate-shipping {
  text-align: left;
  margin-top: 0.75rem;
}
.dl-cart-totals .calculate-shipping > div {
  border-top: 1px solid #edf1f5;
  border-bottom: 1px solid #edf1f5;
  padding: 0.75rem 0;
}
.dl-cart-totals .calculate-shipping dt {
  font-weight: 400;
  font-size: 90%;
}
.dl-cart-totals .form-check {
  padding-top: 0;
}

/* /CART TOTALS BOX (CART / CHECKOUT PAGES) */
/* @version 10.0 [rev.01] */
.cookie-usage {
  --pb-font-size-cookie-usage: var(--pb-font-size-sm);
  --pb-background-color-cookie-usage: var(--pb-color-gray-800);
  --pb-color-cookie-usage: var(--pb-color-white);
  --pb-border-radius-cookie-usage: 4px;
  --pb-padding-cookie-usage: 8px;
  --pb-width-cookie-usage: 350px;
  --pb-box-shadow-cookie-usage: 0 4px 10px rgba(0, 0, 0, .25) !important;
}
@media (max-width: 575.98px) {
  .cookie-usage {
    --pb-width-cookie-usage: calc(100% - 16px);
  }
}
.cookie-usage {
  width: var(--pb-width-cookie-usage);
  bottom: 8px;
  right: 8px;
  position: fixed;
  z-index: 20;
  box-shadow: var(--pb-box-shadow-cookie-usage);
  border-radius: var(--pb-border-radius-cookie-usage);
  padding: var(--pb-padding-cookie-usage);
  background-color: var(--pb-background-color-cookie-usage);
  color: var(--pb-color-cookie-usage);
  font-size: var(--pb-font-size-cookie-usage);
}

/* @version 10.0 [rev.01] */
.custom-fields {
  --pb-custom-fields-label-font-size: 1.05rem;
  --pb-custom-fields-label-padding-bottom: .2rem;
  --pb-custom-fields-label-font-weight: 500;
  --pb-custom-fields-description-padding-bottom: .5rem;
  --pb-custom-fields-subtitle-margin-top: 1rem;
  --pb-custom-fields-margin-top: .5rem;
  --pb-custom-fields-label-separator: ":";
  --pb-custom-fields-description-margin-left: .25rem;
  --pb-custom-fields-description-font-weight: 400;
  --pb-custom-fields-table-font-size: .875rem;
  --pb-custom-fields-offer-font-size: .925rem;
  --pb-custom-fields-bid-font-size: .925rem;
}
.custom-fields .label {
  font-size: var(--pb-custom-fields-label-font-size);
  padding-bottom: var(--pb-custom-fields-label-padding-bottom);
  font-weight: var(--pb-custom-fields-label-font-weight);
}
.custom-fields .description {
  padding-bottom: var(--pb-custom-fields-description-padding-bottom);
}
.custom-fields .subtitle:not(:first-child) {
  margin-top: var(--pb-custom-fields-subtitle-margin-top);
}

.table-sale .custom-fields,
.offer-details .custom-fields,
.bid-details .custom-fields {
  margin-top: var(--pb-custom-fields-margin-top);
}
.table-sale .custom-fields .custom-field-divider,
.offer-details .custom-fields .custom-field-divider,
.bid-details .custom-fields .custom-field-divider {
  display: flex;
  flex-wrap: wrap;
}
.table-sale .custom-fields .subtitle,
.offer-details .custom-fields .subtitle,
.bid-details .custom-fields .subtitle {
  display: none;
}
.table-sale .custom-fields .label:after,
.offer-details .custom-fields .label:after,
.bid-details .custom-fields .label:after {
  content: var(--pb-custom-fields-label-separator);
}
.table-sale .custom-fields .description,
.offer-details .custom-fields .description,
.bid-details .custom-fields .description {
  margin-left: var(--pb-custom-fields-description-margin-left);
  font-weight: var(--pb-custom-fields-description-font-weight);
}

.table-sale .custom-fields .label, .table-sale .custom-fields .description {
  font-size: var(--pb-custom-fields-table-font-size);
  padding: 0;
}

.offer-details .custom-fields .label, .offer-details .custom-fields .description {
  font-size: var(--pb-custom-fields-offer-font-size);
  padding: 0;
}

.bid-details .custom-fields .label, .bid-details .custom-fields .description {
  font-size: var(--pb-custom-fields-bid-font-size);
  padding: 0;
}

/* @version 10.0 [rev.01] */
.dropdown-item span {
  color: var(--pb-dropdown-item-span-color, var(--pb-color-gray-700));
  background-color: var(--pb-dropdown-item-span-bg-color, var(--pb-color-gray-200));
}
.dropdown-item:hover {
  color: var(--pb-dropdown-item-hover-color, var(--pb-color-gray-900));
  background-color: var(--pb-dropdown-item-hover-bg-color, var(--pb-color-gray-100));
}

.language-dropdown .btn,
.user-dropdown .btn {
  font-size: var(--pb-custom-dropdown-btn-font-size, var(--pb-font-size)) !important;
}
.language-dropdown .btn:hover, .language-dropdown .btn:focus, .language-dropdown .btn:active,
.user-dropdown .btn:hover,
.user-dropdown .btn:focus,
.user-dropdown .btn:active {
  background-color: var(--pb-custom-dropdown-btn-hover-bg-color, var(--pb-color-gray-100));
  border-color: var(--pb-custom-dropdown-btn-active-color, var(--pb-color-gray-100));
  box-shadow: none;
}
.language-dropdown .dropdown-item,
.user-dropdown .dropdown-item {
  padding: var(--pb-custom-dropdown-padding-y, 0.125rem) var(--pb-custom-dropdown-padding-x, 1rem);
}
.language-dropdown .dropdown-menu-end,
.user-dropdown .dropdown-menu-end {
  position: absolute;
  right: 0;
}

/* ----- header categories menu ----- */
.categories-menu {
  position: relative;
}
.categories-menu .nav-item:first-child .nav-link {
  padding-left: 0;
}
.categories-menu {
  /* FS-DROPDOWN */
}
.categories-menu .fs-dropdown {
  position: static !important;
}
.categories-menu .fs-dropdown > .fs-dropdown-menu {
  margin-top: -0.25rem;
  padding-top: 20px;
  font-weight: 400;
  left: 0;
  width: 100%;
  max-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: var(--pb-categories-menu-dropdown-bg, var(--pb-color-white));
  display: block;
  position: absolute;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.15s ease-in-out, visibility 0.15s ease-in-out;
  transition-delay: 0.4s; /* delay before fade-out */
  border: 1px solid var(--pb-categories-menu-dropdown-border, var(--pb-color-gray-300));
  border-radius: 3px;
  z-index: 20;
}
.categories-menu .fs-dropdown:hover > .fs-dropdown-menu {
  visibility: visible;
  opacity: 1;
  transition-delay: 0.2s; /* delay before fade-in */
}
.categories-menu {
  /* /FS-DROPDOWN */
}
.categories-menu .masonry-layout {
  column-count: 4;
  column-gap: 0;
}
.categories-menu .masonry-layout__panel {
  -webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
  page-break-inside: avoid; /* Firefox */
  break-inside: avoid; /* IE 10+ */
  padding-left: 1rem;
}
.categories-menu .subcategory-header {
  color: var(--pb-categories-menu-dropdown-subcategory-header-color, var(--pb-color-gray-800));
  font-weight: 600;
  font-size: 1.1rem;
}
.categories-menu .subcategory-header a {
  color: var(--pb-categories-menu-dropdown-subcategory-header-link-color, var(--pb-color-gray-800));
  text-shadow: none;
}
.categories-menu .dropdown-toggle::after {
  display: none;
}

/** @version 10.0 [rev.02] */
.form-control,
.form-select {
  --pb-form-control-font-family: inherit;
  --pb-form-control-font-size: inherit;
  --pb-form-element-border-radius: 0.375rem;
  font-size: var(--pb-form-control-font-size);
  border-radius: var(--pb-form-element-border-radius);
  font-weight: var(--pb-form-element-font-weight, 300);
  background-color: var(--pb-form-element-background-color, #fff);
  border: 1px solid #d1d5db;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  outline: none;
}
.form-control:focus,
.form-select:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(45, 129, 246, 0.1);
  outline: none;
}
.form-control::placeholder,
.form-select::placeholder {
  color: #9ca3af;
}

.table .form-control, .table .form-select {
  padding: 0.375rem 0.75rem;
}

.form-subtitle {
  font-size: 1.2rem !important;
  margin-bottom: 12px !important;
  font-weight: 400 !important;
  border-bottom: 1px solid #e5e7eb;
}

.form-check-label {
  color: #111827;
  font-size: 95%;
  margin-left: 2px;
}

.form-check-input:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 0.25rem rgba(45, 129, 246, 0.1) !important;
}

.form-check-input:checked {
  background-color: #3b82f6;
  border-color: #3b82f6;
}

.form-group {
  margin-bottom: 1rem;
}
.form-inline .form-group {
  margin-bottom: 0;
}

.form-check {
  padding-top: calc(0.375rem + 1px);
}
.form-vertical .form-check {
  padding-top: 0;
}

@media (min-width: 1400px) {
  .col-form-label {
    flex: 0 1 var(--pb-col-form-label-width, var(--pb-flex-label-width));
  }
  .col-form-input {
    flex: 1;
    max-width: 100%;
  }
}
.input-group {
  display: flex !important;
}
.input-group .input-group-text {
  font-size: inherit;
}

.form-inline {
  display: flex;
  flex-flow: wrap;
  gap: 0.25rem;
}
@media (max-width: 575.98px) {
  .form-inline {
    width: 100%;
    flex-flow: column;
  }
}

/* FLOATING LABELS */
.form-label-group {
  --pb-form-label-group-input-padding-x: 0.75rem;
  --pb-form-label-group-input-padding-y: 0.75rem;
  position: relative;
  margin-bottom: 1rem;
}
.form-label-group > input {
  height: auto;
}
.form-label-group > input, .form-label-group > label {
  padding: var(--pb-form-label-group-input-padding-y) var(--pb-form-label-group-input-padding-x);
}
.form-label-group > label {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  margin-bottom: 0; /* Override default `<label>` margin */
  line-height: 1.5;
  color: #374151;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  transition: all 0.1s ease-in-out;
  pointer-events: none;
}
.form-label-group input::-webkit-input-placeholder {
  color: transparent;
}
.form-label-group input:-ms-input-placeholder {
  color: transparent;
}
.form-label-group input::-ms-input-placeholder {
  color: transparent;
}
.form-label-group input::-moz-placeholder {
  color: transparent;
}
.form-label-group input::placeholder {
  color: transparent;
}
.form-label-group input:not(:placeholder-shown) {
  padding-top: calc(var(--pb-form-label-group-input-padding-y) + var(--pb-form-label-group-input-padding-x) * 0.6666666667);
  padding-bottom: calc(var(--pb-form-label-group-input-padding-y) / 3);
}
.form-label-group input:not(:placeholder-shown) ~ label {
  padding-top: calc(var(--pb-form-label-group-input-padding-y) / 3);
  padding-bottom: calc(var(--pb-form-label-group-input-padding-y) / 3);
  font-size: 12px;
  color: #777;
}
.form-label-group {
  /* Fallback for Edge  */
}
@supports (-ms-ime-align: auto) {
  .form-label-group > label {
    display: none;
  }
  .form-label-group input::-ms-input-placeholder {
    color: #777;
  }
}
.form-label-group {
  /* Fallback for IE  */
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .form-label-group > label {
    display: none;
  }
  .form-label-group input:-ms-input-placeholder {
    color: #777;
  }
}

/* /FLOATING LABELS */
/* INPUT FIELDS */
.input-tiny {
  display: inline-block;
  max-width: 100%;
}

@media (min-width: 576px) {
  .input-tiny {
    width: 60px;
  }
  .input-group-prefix-suffix.input-tiny {
    width: calc(60px + 90px);
  }
}
.input-mini {
  display: inline-block;
  max-width: 100%;
}

@media (min-width: 576px) {
  .input-mini {
    width: 85px;
  }
  .input-group-prefix-suffix.input-mini {
    width: calc(85px + 90px);
  }
}
.input-small {
  display: inline-block;
  max-width: 100%;
}

@media (min-width: 576px) {
  .input-small {
    width: 115px;
  }
  .input-group-prefix-suffix.input-small {
    width: calc(115px + 90px);
  }
}
.input-default {
  display: inline-block;
  max-width: 100%;
}

@media (min-width: 576px) {
  .input-default {
    width: 190px;
  }
  .input-group-prefix-suffix.input-default {
    width: calc(190px + 90px);
  }
}
.input-medium {
  display: inline-block;
  max-width: 100%;
}

@media (min-width: 576px) {
  .input-medium {
    width: 270px;
  }
  .input-group-prefix-suffix.input-medium {
    width: calc(270px + 90px);
  }
}
.input-large {
  display: inline-block;
  max-width: 100%;
}

@media (min-width: 576px) {
  .input-large {
    width: 400px;
  }
  .input-group-prefix-suffix.input-large {
    width: calc(400px + 90px);
  }
}
.input-xlarge {
  display: inline-block;
  max-width: 100%;
}

@media (min-width: 576px) {
  .input-xlarge {
    width: 500px;
  }
  .input-group-prefix-suffix.input-xlarge {
    width: calc(500px + 90px);
  }
}
/* /INPUT FIELDS */
/* FORM TEXT FIELDS WITH ICONS */
.has-icons {
  --pb-has-icons-icon-size: 16px;
  position: relative;
  display: inline-block;
}
.has-icons.has-icons-block {
  display: block !important;
}
.has-icons .bi {
  color: #1f2937;
}
.has-icons .hidden {
  visibility: hidden;
}
.has-icons .icon-left, .has-icons .icon-right {
  position: absolute;
  width: var(--pb-has-icons-icon-size);
  height: var(--pb-has-icons-icon-size);
  top: 50%;
  transform: translateY(-50%);
  line-height: 1;
}
.has-icons .icon-left:hover, .has-icons .icon-right:hover {
  cursor: pointer;
}
.has-icons .icon-left {
  left: calc(var(--pb-has-icons-icon-size) * 0.75);
}
.has-icons .icon-right {
  right: calc(var(--pb-has-icons-icon-size) * 0.75);
}
.has-icons .has-icon-left {
  padding-left: calc(var(--pb-has-icons-icon-size) * 2.25) !important;
}
.has-icons .has-icon-right {
  padding-right: calc(var(--pb-has-icons-icon-size) * 2.25) !important;
}

/* /FORM TEXT FIELDS WITH ICONS */
/* CUSTOM FORMS */
.form-sign-in {
  width: 100%;
  max-width: 450px;
}
.bootbox-body .form-sign-in {
  max-width: 100%;
}

/* /CUSTOM FORMS */
.form-floating label::after {
  background-color: transparent !important;
}

/* FORM FLOATING STANDARD HEIGHT */
.form-floating-standard > .form-control {
  padding: 0.375rem 0.75rem;
  height: inherit;
  min-height: inherit;
  line-height: inherit;
}
.form-floating-standard > .form-control-plaintext:focus, .form-floating-standard > .form-control-plaintext:not(:placeholder-shown), .form-floating-standard > .form-control:focus, .form-floating-standard > .form-control:not(:placeholder-shown) {
  padding: 0.375rem 0.75rem;
}
.form-floating-standard > .form-control-plaintext ~ label, .form-floating-standard > .form-control:focus ~ label, .form-floating-standard > .form-control:not(:placeholder-shown) ~ label, .form-floating-standard > .form-select ~ label {
  padding: 0 4px;
  top: 0;
  left: 7px;
  line-height: 1;
  height: 20px;
  background-color: #fff;
  opacity: 1;
  color: #4b5563;
}
.form-floating-standard > label {
  padding: 0.375rem 0.75rem;
  color: #4b5563;
}

/* .FORM FLOATING STANDARD HEIGHT */
.password-eye {
  position: relative;
  display: inline-block;
}
.password-eye .icon-right {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1rem;
  cursor: pointer;
  color: #4b5563;
}

.form-floating.password-eye {
  display: block;
}

/* VERTICAL FORMS */
.form-vertical .col-form-label {
  font-size: 1.05rem;
  padding: 0;
}
.form-vertical hr {
  border-top-color: #6b7280;
}

.birthdayPicker {
  display: flex;
  gap: 3px;
}

.form-full-width .form-control:not(.input-full-name):not(.input-localized-numeric), .form-full-width .form-select:not(.input-birthdate), .form-full-width .input-group {
  width: 100% !important;
  margin-bottom: 4px;
}
.form-full-width .birthdayPicker {
  width: 100% !important;
}
.form-full-width .btn {
  width: 100%;
}
.form-full-width .password-eye {
  display: block;
}

.form-contact-us,
.form-user {
  max-width: 600px;
}

/* /VERTICAL FORMS */
.form-steps-header-wrapper {
  background-color: #f3f4f6;
  border-radius: 5px;
  margin-top: 30px;
  margin-bottom: 45px;
  padding: 15px 0 7.5px;
  z-index: -2;
  position: relative;
}

#form-steps-header {
  overflow: hidden;
  /*CSS counters to number the steps*/
  counter-reset: step;
  padding: 0;
  margin: 0;
}
#form-steps-header li {
  list-style-type: none;
  text-transform: uppercase;
  font-size: 12px;
  float: left;
  position: relative;
  letter-spacing: 0.7px;
  text-align: center;
}
#form-steps-header.steps-2 li {
  width: 50%;
}
#form-steps-header.steps-3 li {
  width: 33.33%;
}
#form-steps-header.steps-4 li {
  width: 25%;
}
#form-steps-header.steps-5 li {
  width: 20%;
}
#form-steps-header.steps-6 li {
  width: 16.65%;
}
#form-steps-header li:before {
  content: counter(step);
  counter-increment: step;
  width: 32px;
  height: 32px;
  line-height: 32px;
  display: block;
  font-size: 14px;
  color: #fff;
  background: #4b5563;
  border-radius: 32px;
  margin: 0 auto 10px auto;
}
#form-steps-header li:after {
  content: "";
  width: 100%;
  height: 2px;
  background: #4b5563;
  position: absolute;
  left: -50%;
  top: 15px;
  z-index: -1; /*put it behind the numbers*/
}
#form-steps-header li:first-child:after {
  /*connector not needed before the first step*/
  content: none;
}
#form-steps-header li.prev:before,
#form-steps-header li.prev:after {
  background: #1673f5;
  color: #fff;
}
#form-steps-header li.active:before,
#form-steps-header li.active:after {
  background: #6bb913;
  color: #fff;
}

@media (min-width: 1200px) {
  .form-install {
    margin-left: 150px;
    margin-right: 150px;
  }
}
.form-install .col-form-label {
  font-size: 1.1rem;
}
.form-install ul:not(.nav) {
  list-style-type: none;
  position: relative;
  padding-left: 25px;
}
.form-install ul:not(.nav) li:before {
  content: "✓";
  position: absolute;
  left: 5px;
}
.form-install ul:not(.nav) li {
  margin-bottom: 0.5rem;
}
.form-install ul:not(.nav) li li:before {
  content: "o";
}

@media (min-width: 1200px) {
  .form-cart,
  .form-checkout,
  .form-payment {
    margin-left: 100px;
    margin-right: 100px;
  }
}
.form-cart .col-form-label,
.form-checkout .col-form-label,
.form-payment .col-form-label {
  padding-bottom: 0;
}

.form-checkout .form-group {
  margin-bottom: 0 !important;
}
.form-checkout .form-group .subtitle {
  padding-top: 1.2rem;
  margin-bottom: 0.4rem;
}

.form-buttons {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 20px;
}
@media (max-width: 991.98px) {
  .form-buttons {
    flex-direction: column;
  }
}
@media (min-width: 992px) {
  .form-buttons .btn:last-child {
    margin-left: auto;
  }
}

.form-check small, .form-group small {
  font-size: 95%;
  color: #4d5358 !important;
}

.input-group {
  display: flex !important;
}
.input-group .input-group-text {
  font-size: inherit;
}

.invalid-pill {
  color: #dc3545;
}
.invalid-pill.active {
  background-color: #dc3545 !important;
  color: #fff;
}

#purchaseForm > div:last-child {
  margin-bottom: 0 !important;
}

.sidebar-row {
  gap: 0.625rem; /* space between icon and text */
}

.is-invalid .input-group-text {
  border-color: #dc3545;
  color: #bd2130;
}

.form-listing {
  --pb-form-listing-setup-sidebar-sticky-top: 30px;
  display: grid;
  grid-template-columns: 1fr 4fr;
  gap: 20px;
  position: relative;
}
@media (max-width: 991.98px) {
  .form-listing {
    display: block;
  }
  .form-listing .left-sidebar {
    display: none;
  }
}
.form-listing .elements {
  background-color: var(--pb-form-listing-elements-background-color, #fff);
}
.form-listing .elements .form-group:not(:first-child) .subtitle {
  margin-top: 1rem;
}
.form-listing .setup-sidebar {
  position: sticky;
  top: var(--pb-form-listing-setup-sidebar-sticky-top);
  align-self: start;
  overflow: hidden;
  margin-top: 20px;
  margin-left: 10px;
}
@media (max-width: 991.98px) {
  .form-listing .setup-sidebar {
    display: none;
  }
}
.form-listing .setup-sidebar .section-errors,
.form-listing .setup-sidebar .section-errors a {
  color: #dc3545 !important;
}
.form-listing .setup-sidebar .section-errors .setup-sidebar-icon {
  background-color: #bd2130 !important;
  color: #fff !important;
}
.form-listing .setup-sidebar .nav-item {
  position: relative;
  padding-bottom: 1.5rem;
}
.form-listing .setup-sidebar .nav-item .setup-sidebar-icon {
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.5rem; /* prevents shrinking in flex */
  border-radius: 999px; /* fully rounded */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f3f4f6; /* chip background */
  color: #1f2937; /* icon color */
  line-height: 1;
  z-index: 2;
}
.form-listing .setup-sidebar .nav-item .setup-sidebar-icon i {
  font-size: 1.15rem;
  line-height: 1;
}
.form-listing .setup-sidebar .nav-item .vertical-line {
  position: absolute;
  background-color: #d1d5db;
  width: 1px;
  height: 100%;
  margin-left: -1px;
  top: 1.5rem;
  left: 1.25rem;
}
.form-listing .setup-sidebar .nav-item .circle {
  background-color: #fff;
  border: 0.125rem solid #d1d5db;
  border-radius: 9999px;
  width: 1.5rem;
  height: 1.5rem;
  justify-content: center;
  align-items: center;
  display: flex;
  z-index: 2;
}
.form-listing .setup-sidebar .nav-item.listing-active .setup-sidebar-icon {
  background: #e5e7eb;
}
.form-listing .setup-sidebar .nav-item.listing-active .sidebar-link {
  font-weight: 600;
}
.form-listing .setup-sidebar .nav-item:last-child {
  padding-bottom: 0;
}
.form-listing .setup-sidebar .nav-link {
  margin-left: 0.5rem;
  color: rgba(33, 37, 41, 0.65);
  padding: 0;
  line-height: 1.2;
  font-size: 0.9rem;
}
.form-listing .setup-sidebar .nav-link.active {
  font-weight: 600;
}
@media (min-width: 992px) {
  .form-listing .section-title {
    margin: 0 20px 10px;
  }
  .form-listing .elements {
    padding: 10px 20px 20px 20px;
    border-radius: 10px;
  }
  .form-listing .form-buttons {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.form-listing .listing-uploader {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 2rem;
  padding-bottom: 2rem;
  border: 2px dotted #374151;
  border-radius: 5px;
}
.form-listing .listing-uploader .fileinput-button span {
  text-wrap: nowrap;
}
.form-listing .listing-uploader .fileinput-desc {
  margin-top: 0.5rem;
  font-size: 0.875rem;
}
.form-listing .listing-uploader-thumbs {
  margin-top: 1rem;
  padding: 1rem;
  background-color: #fff;
  border-radius: 5px;
}
.form-listing .listing-uploader-thumbs .alert {
  border: none !important;
  background-color: transparent !important;
  padding: 0 !important;
}
.form-listing .listing-uploader-thumbs .jq-thumbs {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.form-listing .listing-uploader-thumbs .jq-thumbs .jq-thumb {
  margin: 0 !important;
  padding: 0 0 0.5rem;
}
.form-listing .listing-uploader-thumbs .jq-thumbs .jq-thumb .img-md {
  width: 128px !important;
  height: 128px !important;
}
.form-listing .listing-uploader-thumbs .click-and-drag {
  color: #4b5563;
  margin-top: 0.25rem;
  font-size: 0.825rem;
}
.form-listing .location-group {
  border-radius: 4px;
  background-color: #fefefe;
}
.form-listing :target {
  padding-top: var(--pb-form-listing-setup-sidebar-sticky-top);
}

.location-group h6 {
  font-size: 1.05rem;
}
.location-group {
  margin: 0 -8px 8px -8px;
  padding: 8px;
}

/* Subsection toggle styles */
.toggle-subsection {
  cursor: pointer;
  user-select: none;
  transition: opacity 0.2s ease;
}
.toggle-subsection:hover {
  opacity: 0.7;
}
.toggle-subsection i {
  font-size: 1.2rem;
}

.subsection-minimized {
  color: #495057;
  font-style: italic;
  margin-left: 0.5rem;
}

.subsection-expanded {
  display: none;
}

/* @version 10.0 [rev.01] */
.sidebar-layout {
  display: grid;
  --pb-grid-gap: 1rem;
  --pb-grid-sidebar-width: var(--pb-sidebar-width, 250px);
  --pb-grid-main-width: 1fr;
  --pb-grid-column-padding: 1rem;
  --pb-grid-padding: 0;
  --pb-grid-align-items: auto;
  --pb-grid-background-color: transparent;
  grid-template-columns: var(--pb-grid-sidebar-width) var(--pb-grid-main-width);
  grid-template-rows: auto 1fr;
  grid-template-areas: "sidebar content";
  gap: var(--pb-grid-gap);
  align-items: var(--pb-grid-align-items);
}
@media (max-width: 991.98px) {
  .sidebar-layout {
    display: block;
  }
}
.sidebar-layout .sidebar {
  grid-area: sidebar;
  --pb-grid-sidebar-padding-x: var(--pb-grid-padding);
  --pb-grid-sidebar-padding-y: var(--pb-grid-padding);
  --pb-grid-sidebar-background-color: var(--pb-grid-background-color);
  --pb-grid-sidebar-border-radius: var(--pb-border-radius);
  --pb-grid-sidebar-z-index: 1;
  padding: var(--pb-grid-sidebar-padding-y) var(--pb-grid-sidebar-padding-x);
  background-color: var(--pb-grid-sidebar-background-color);
  border-radius: var(--pb-grid-sidebar-border-radius);
  z-index: var(--pb-grid-sidebar-z-index);
}
.sidebar-layout .main {
  grid-area: content;
  --pb-grid-main-padding-x: var(--pb-grid-padding);
  --pb-grid-main-padding-y: var(--pb-grid-padding);
  --pb-grid-main-background-color: var(--pb-grid-background-color);
  --pb-grid-main-border-radius: var(--pb-grid-border-radius);
  --pb-grid-main-z-index: 1;
  padding: var(--pb-grid-main-padding-y) var(--pb-grid-main-padding-x);
  background-color: var(--pb-grid-main-background-color);
  border-radius: var(--pb-border-radius);
  z-index: var(--pb-grid-main-z-index);
}

/** @version 10.0 [rev.01] */
/* GLYPHICONS */
@font-face {
  font-family: "Glyphicons Halflings";
  src: url("../../fonts/glyphicons-halflings-regular.eot");
  src: url("../../fonts/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../../fonts/glyphicons-halflings-regular.woff2") format("woff2"), url("../../fonts/glyphicons-halflings-regular.woff") format("woff"), url("../../fonts/glyphicons-halflings-regular.ttf") format("truetype"), url("../../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg");
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: "Glyphicons Halflings";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.glyphicon-asterisk:before {
  content: "*";
}

.glyphicon-plus:before {
  content: "+";
}

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "€";
}

.glyphicon-minus:before {
  content: "−";
}

.glyphicon-cloud:before {
  content: "☁";
}

.glyphicon-envelope:before {
  content: "✉";
}

.glyphicon-pencil:before {
  content: "✏";
}

.glyphicon-glass:before {
  content: "\e001";
}

.glyphicon-music:before {
  content: "\e002";
}

.glyphicon-search:before {
  content: "\e003";
}

.glyphicon-heart:before {
  content: "\e005";
}

.glyphicon-star:before {
  content: "\e006";
}

.glyphicon-star-empty:before {
  content: "\e007";
}

.glyphicon-user:before {
  content: "\e008";
}

.glyphicon-film:before {
  content: "\e009";
}

.glyphicon-th-large:before {
  content: "\e010";
}

.glyphicon-th:before {
  content: "\e011";
}

.glyphicon-th-list:before {
  content: "\e012";
}

.glyphicon-ok:before {
  content: "\e013";
}

.glyphicon-remove:before {
  content: "\e014";
}

.glyphicon-zoom-in:before {
  content: "\e015";
}

.glyphicon-zoom-out:before {
  content: "\e016";
}

.glyphicon-off:before {
  content: "\e017";
}

.glyphicon-signal:before {
  content: "\e018";
}

.glyphicon-cog:before {
  content: "\e019";
}

.glyphicon-trash:before {
  content: "\e020";
}

.glyphicon-home:before {
  content: "\e021";
}

.glyphicon-file:before {
  content: "\e022";
}

.glyphicon-time:before {
  content: "\e023";
}

.glyphicon-road:before {
  content: "\e024";
}

.glyphicon-download-alt:before {
  content: "\e025";
}

.glyphicon-download:before {
  content: "\e026";
}

.glyphicon-upload:before {
  content: "\e027";
}

.glyphicon-inbox:before {
  content: "\e028";
}

.glyphicon-play-circle:before {
  content: "\e029";
}

.glyphicon-repeat:before {
  content: "\e030";
}

.glyphicon-refresh:before {
  content: "\e031";
}

.glyphicon-list-alt:before {
  content: "\e032";
}

.glyphicon-lock:before {
  content: "\e033";
}

.glyphicon-flag:before {
  content: "\e034";
}

.glyphicon-headphones:before {
  content: "\e035";
}

.glyphicon-volume-off:before {
  content: "\e036";
}

.glyphicon-volume-down:before {
  content: "\e037";
}

.glyphicon-volume-up:before {
  content: "\e038";
}

.glyphicon-qrcode:before {
  content: "\e039";
}

.glyphicon-barcode:before {
  content: "\e040";
}

.glyphicon-tag:before {
  content: "\e041";
}

.glyphicon-tags:before {
  content: "\e042";
}

.glyphicon-book:before {
  content: "\e043";
}

.glyphicon-bookmark:before {
  content: "\e044";
}

.glyphicon-print:before {
  content: "\e045";
}

.glyphicon-camera:before {
  content: "\e046";
}

.glyphicon-font:before {
  content: "\e047";
}

.glyphicon-bold:before {
  content: "\e048";
}

.glyphicon-italic:before {
  content: "\e049";
}

.glyphicon-text-height:before {
  content: "\e050";
}

.glyphicon-text-width:before {
  content: "\e051";
}

.glyphicon-align-left:before {
  content: "\e052";
}

.glyphicon-align-center:before {
  content: "\e053";
}

.glyphicon-align-right:before {
  content: "\e054";
}

.glyphicon-align-justify:before {
  content: "\e055";
}

.glyphicon-list:before {
  content: "\e056";
}

.glyphicon-indent-left:before {
  content: "\e057";
}

.glyphicon-indent-right:before {
  content: "\e058";
}

.glyphicon-facetime-video:before {
  content: "\e059";
}

.glyphicon-picture:before {
  content: "\e060";
}

.glyphicon-map-marker:before {
  content: "\e062";
}

.glyphicon-adjust:before {
  content: "\e063";
}

.glyphicon-tint:before {
  content: "\e064";
}

.glyphicon-edit:before {
  content: "\e065";
}

.glyphicon-share:before {
  content: "\e066";
}

.glyphicon-check:before {
  content: "\e067";
}

.glyphicon-move:before {
  content: "\e068";
}

.glyphicon-step-backward:before {
  content: "\e069";
}

.glyphicon-fast-backward:before {
  content: "\e070";
}

.glyphicon-backward:before {
  content: "\e071";
}

.glyphicon-play:before {
  content: "\e072";
}

.glyphicon-pause:before {
  content: "\e073";
}

.glyphicon-stop:before {
  content: "\e074";
}

.glyphicon-forward:before {
  content: "\e075";
}

.glyphicon-fast-forward:before {
  content: "\e076";
}

.glyphicon-step-forward:before {
  content: "\e077";
}

.glyphicon-eject:before {
  content: "\e078";
}

.glyphicon-chevron-left:before {
  content: "\e079";
}

.glyphicon-chevron-right:before {
  content: "\e080";
}

.glyphicon-plus-sign:before {
  content: "\e081";
}

.glyphicon-minus-sign:before {
  content: "\e082";
}

.glyphicon-remove-sign:before {
  content: "\e083";
}

.glyphicon-ok-sign:before {
  content: "\e084";
}

.glyphicon-question-sign:before {
  content: "\e085";
}

.glyphicon-info-sign:before {
  content: "\e086";
}

.glyphicon-screenshot:before {
  content: "\e087";
}

.glyphicon-remove-circle:before {
  content: "\e088";
}

.glyphicon-ok-circle:before {
  content: "\e089";
}

.glyphicon-ban-circle:before {
  content: "\e090";
}

.glyphicon-arrow-left:before {
  content: "\e091";
}

.glyphicon-arrow-right:before {
  content: "\e092";
}

.glyphicon-arrow-up:before {
  content: "\e093";
}

.glyphicon-arrow-down:before {
  content: "\e094";
}

.glyphicon-share-alt:before {
  content: "\e095";
}

.glyphicon-resize-full:before {
  content: "\e096";
}

.glyphicon-resize-small:before {
  content: "\e097";
}

.glyphicon-exclamation-sign:before {
  content: "\e101";
}

.glyphicon-gift:before {
  content: "\e102";
}

.glyphicon-leaf:before {
  content: "\e103";
}

.glyphicon-fire:before {
  content: "\e104";
}

.glyphicon-eye-open:before {
  content: "\e105";
}

.glyphicon-eye-close:before {
  content: "\e106";
}

.glyphicon-warning-sign:before {
  content: "\e107";
}

.glyphicon-plane:before {
  content: "\e108";
}

.glyphicon-calendar:before {
  content: "\e109";
}

.glyphicon-random:before {
  content: "\e110";
}

.glyphicon-comment:before {
  content: "\e111";
}

.glyphicon-magnet:before {
  content: "\e112";
}

.glyphicon-chevron-up:before {
  content: "\e113";
}

.glyphicon-chevron-down:before {
  content: "\e114";
}

.glyphicon-retweet:before {
  content: "\e115";
}

.glyphicon-shopping-cart:before {
  content: "\e116";
}

.glyphicon-folder-close:before {
  content: "\e117";
}

.glyphicon-folder-open:before {
  content: "\e118";
}

.glyphicon-resize-vertical:before {
  content: "\e119";
}

.glyphicon-resize-horizontal:before {
  content: "\e120";
}

.glyphicon-hdd:before {
  content: "\e121";
}

.glyphicon-bullhorn:before {
  content: "\e122";
}

.glyphicon-bell:before {
  content: "\e123";
}

.glyphicon-certificate:before {
  content: "\e124";
}

.glyphicon-thumbs-up:before {
  content: "\e125";
}

.glyphicon-thumbs-down:before {
  content: "\e126";
}

.glyphicon-hand-right:before {
  content: "\e127";
}

.glyphicon-hand-left:before {
  content: "\e128";
}

.glyphicon-hand-up:before {
  content: "\e129";
}

.glyphicon-hand-down:before {
  content: "\e130";
}

.glyphicon-circle-arrow-right:before {
  content: "\e131";
}

.glyphicon-circle-arrow-left:before {
  content: "\e132";
}

.glyphicon-circle-arrow-up:before {
  content: "\e133";
}

.glyphicon-circle-arrow-down:before {
  content: "\e134";
}

.glyphicon-globe:before {
  content: "\e135";
}

.glyphicon-wrench:before {
  content: "\e136";
}

.glyphicon-tasks:before {
  content: "\e137";
}

.glyphicon-filter:before {
  content: "\e138";
}

.glyphicon-briefcase:before {
  content: "\e139";
}

.glyphicon-fullscreen:before {
  content: "\e140";
}

.glyphicon-dashboard:before {
  content: "\e141";
}

.glyphicon-paperclip:before {
  content: "\e142";
}

.glyphicon-heart-empty:before {
  content: "\e143";
}

.glyphicon-link:before {
  content: "\e144";
}

.glyphicon-phone:before {
  content: "\e145";
}

.glyphicon-pushpin:before {
  content: "\e146";
}

.glyphicon-usd:before {
  content: "\e148";
}

.glyphicon-gbp:before {
  content: "\e149";
}

.glyphicon-sort:before {
  content: "\e150";
}

.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}

.glyphicon-sort-by-order:before {
  content: "\e153";
}

.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}

.glyphicon-sort-by-attributes:before {
  content: "\e155";
}

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}

.glyphicon-unchecked:before {
  content: "\e157";
}

.glyphicon-expand:before {
  content: "\e158";
}

.glyphicon-collapse-down:before {
  content: "\e159";
}

.glyphicon-collapse-up:before {
  content: "\e160";
}

.glyphicon-log-in:before {
  content: "\e161";
}

.glyphicon-flash:before {
  content: "\e162";
}

.glyphicon-log-out:before {
  content: "\e163";
}

.glyphicon-new-window:before {
  content: "\e164";
}

.glyphicon-record:before {
  content: "\e165";
}

.glyphicon-save:before {
  content: "\e166";
}

.glyphicon-open:before {
  content: "\e167";
}

.glyphicon-saved:before {
  content: "\e168";
}

.glyphicon-import:before {
  content: "\e169";
}

.glyphicon-export:before {
  content: "\e170";
}

.glyphicon-send:before {
  content: "\e171";
}

.glyphicon-floppy-disk:before {
  content: "\e172";
}

.glyphicon-floppy-saved:before {
  content: "\e173";
}

.glyphicon-floppy-remove:before {
  content: "\e174";
}

.glyphicon-floppy-save:before {
  content: "\e175";
}

.glyphicon-floppy-open:before {
  content: "\e176";
}

.glyphicon-credit-card:before {
  content: "\e177";
}

.glyphicon-transfer:before {
  content: "\e178";
}

.glyphicon-cutlery:before {
  content: "\e179";
}

.glyphicon-header:before {
  content: "\e180";
}

.glyphicon-compressed:before {
  content: "\e181";
}

.glyphicon-earphone:before {
  content: "\e182";
}

.glyphicon-phone-alt:before {
  content: "\e183";
}

.glyphicon-tower:before {
  content: "\e184";
}

.glyphicon-stats:before {
  content: "\e185";
}

.glyphicon-sd-video:before {
  content: "\e186";
}

.glyphicon-hd-video:before {
  content: "\e187";
}

.glyphicon-subtitles:before {
  content: "\e188";
}

.glyphicon-sound-stereo:before {
  content: "\e189";
}

.glyphicon-sound-dolby:before {
  content: "\e190";
}

.glyphicon-sound-5-1:before {
  content: "\e191";
}

.glyphicon-sound-6-1:before {
  content: "\e192";
}

.glyphicon-sound-7-1:before {
  content: "\e193";
}

.glyphicon-copyright-mark:before {
  content: "\e194";
}

.glyphicon-registration-mark:before {
  content: "\e195";
}

.glyphicon-cloud-download:before {
  content: "\e197";
}

.glyphicon-cloud-upload:before {
  content: "\e198";
}

.glyphicon-tree-conifer:before {
  content: "\e199";
}

.glyphicon-tree-deciduous:before {
  content: "\e200";
}

.glyphicon-cd:before {
  content: "\e201";
}

.glyphicon-save-file:before {
  content: "\e202";
}

.glyphicon-open-file:before {
  content: "\e203";
}

.glyphicon-level-up:before {
  content: "\e204";
}

.glyphicon-copy:before {
  content: "\e205";
}

.glyphicon-paste:before {
  content: "\e206";
}

.glyphicon-alert:before {
  content: "\e209";
}

.glyphicon-equalizer:before {
  content: "\e210";
}

.glyphicon-king:before {
  content: "\e211";
}

.glyphicon-queen:before {
  content: "\e212";
}

.glyphicon-pawn:before {
  content: "\e213";
}

.glyphicon-bishop:before {
  content: "\e214";
}

.glyphicon-knight:before {
  content: "\e215";
}

.glyphicon-baby-formula:before {
  content: "\e216";
}

.glyphicon-tent:before {
  content: "⛺";
}

.glyphicon-blackboard:before {
  content: "\e218";
}

.glyphicon-bed:before {
  content: "\e219";
}

.glyphicon-apple:before {
  content: "\f8ff";
}

.glyphicon-erase:before {
  content: "\e221";
}

.glyphicon-hourglass:before {
  content: "⌛";
}

.glyphicon-lamp:before {
  content: "\e223";
}

.glyphicon-duplicate:before {
  content: "\e224";
}

.glyphicon-piggy-bank:before {
  content: "\e225";
}

.glyphicon-scissors:before {
  content: "\e226";
}

.glyphicon-bitcoin:before {
  content: "\e227";
}

.glyphicon-btc:before {
  content: "\e227";
}

.glyphicon-xbt:before {
  content: "\e227";
}

.glyphicon-yen:before {
  content: "¥";
}

.glyphicon-jpy:before {
  content: "¥";
}

.glyphicon-ruble:before {
  content: "₽";
}

.glyphicon-rub:before {
  content: "₽";
}

.glyphicon-scale:before {
  content: "\e230";
}

.glyphicon-ice-lolly:before {
  content: "\e231";
}

.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}

.glyphicon-education:before {
  content: "\e233";
}

.glyphicon-option-horizontal:before {
  content: "\e234";
}

.glyphicon-option-vertical:before {
  content: "\e235";
}

.glyphicon-menu-hamburger:before {
  content: "\e236";
}

.glyphicon-modal-window:before {
  content: "\e237";
}

.glyphicon-oil:before {
  content: "\e238";
}

.glyphicon-grain:before {
  content: "\e239";
}

.glyphicon-sunglasses:before {
  content: "\e240";
}

.glyphicon-text-size:before {
  content: "\e241";
}

.glyphicon-text-color:before {
  content: "\e242";
}

.glyphicon-text-background:before {
  content: "\e243";
}

.glyphicon-object-align-top:before {
  content: "\e244";
}

.glyphicon-object-align-bottom:before {
  content: "\e245";
}

.glyphicon-object-align-horizontal:before {
  content: "\e246";
}

.glyphicon-object-align-left:before {
  content: "\e247";
}

.glyphicon-object-align-vertical:before {
  content: "\e248";
}

.glyphicon-object-align-right:before {
  content: "\e249";
}

.glyphicon-triangle-right:before {
  content: "\e250";
}

.glyphicon-triangle-left:before {
  content: "\e251";
}

.glyphicon-triangle-bottom:before {
  content: "\e252";
}

.glyphicon-triangle-top:before {
  content: "\e253";
}

.glyphicon-console:before {
  content: "\e254";
}

.glyphicon-superscript:before {
  content: "\e255";
}

.glyphicon-subscript:before {
  content: "\e256";
}

.glyphicon-menu-left:before {
  content: "\e257";
}

.glyphicon-menu-right:before {
  content: "\e258";
}

.glyphicon-menu-down:before {
  content: "\e259";
}

.glyphicon-menu-up:before {
  content: "\e260";
}

/* @version 10.0 [rev.01] */
:root {
  --pb-icon-size-md: 1rem;
  --pb-icon-size-sm: 0.875rem;
  --pb-icon-size-lg: 1.5rem;
}

/* FEATHER */
.feather {
  width: var(--pb-icon-size-md);
  height: var(--pb-icon-size-md);
  vertical-align: middle;
}
.feather.feather-lg {
  width: var(--pb-icon-size-lg);
  height: var(--pb-icon-size-lg);
}
.feather.feather-sm, small .feather, .btn-sm .feather {
  width: var(--pb-icon-size-sm);
  height: var(--pb-icon-size-sm);
}

/* /FEATHER */
/* BI */
.btn .bi {
  font-size: var(--pb-icon-size-md);
  line-height: 1;
}
.btn.btn-sm .bi, dt .bi {
  font-size: var(--pb-icon-size-sm);
  line-height: 1;
}

/* /BI */
/* USER REPUTATION STARS */
.star-yellow {
  color: var(--pb-color-yellow);
}
.star-green {
  color: var(--pb-color-green);
}
.star-blue {
  color: var(--pb-color-blue);
}
.star-red {
  color: var(--pb-color-red);
}
.star-gold {
  color: var(--pb-color-gold-600);
}

/* /USER REPUTATION STARS */
/* @version 10.0 [rev.01] */
:root {
  --pb-thumbnail-img-background-color: var(--pb-color-white);
  --pb-img-xs-width: 24px;
  --pb-img-xs-height: 24px;
  --pb-img-sm-width: 64px;
  --pb-img-sm-height: 64px;
  --pb-img-md-width: 96px;
  --pb-img-md-height: 96px;
  --pb-img-lg-width: 128px;
  --pb-img-lg-height: 128px;
  --pb-jq-thumb-gap: 0.5rem;
  --pb-jq-thumb-padding: 0.5rem;
  --pb-jq-thumb-border-radius: 0.25rem;
  --pb-jq-thumb-delete-offset: 1rem;
  --pb-jq-thumb-border-color: var(--pb-color-gray-100);
  --pb-media-aspect-ratio: 1 / 1;
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

/* IMAGE RETINA DISPLAY CLASSES */
.img-xs {
  width: var(--pb-img-xs-width) !important;
  height: var(--pb-img-xs-height) !important;
}

.img-sm {
  width: var(--pb-img-sm-width) !important;
  height: var(--pb-img-sm-height) !important;
}

.img-md {
  width: var(--pb-img-md-width) !important;
  height: var(--pb-img-md-height) !important;
}

.img-lg {
  width: var(--pb-img-lg-width) !important;
  height: var(--pb-img-lg-height) !important;
}

/* /IMAGE RETINA DISPLAY CLASSES */
/* MEDIA THUMBNAIL DIVS */
.jq-thumbs {
  overflow: hidden;
  gap: var(--pb-jq-thumbs-gap);
}
.jq-thumbs.ui-sortable .jq-thumb {
  cursor: move;
}

.jq-thumb {
  overflow: hidden;
  float: left;
  padding: var(--pb-jq-thumb-padding);
  border: 1px solid var(--pb-jq-thumb-border-color);
  border-radius: var(--pb-jq-thumb-border-radius);
  text-align: center;
}
.jq-thumb .jq-thumb-delete {
  margin-top: var(--pb-jq-thumb-delete-offset);
  text-align: center;
  cursor: pointer;
  display: block;
}

/* /MEDIA THUMBNAIL DIVS */
.listing-details .carousel-item, .listing-details .card-img, .listing-card .carousel-item, .listing-card .card-img, .store-card .carousel-item, .store-card .card-img, .listing-list .carousel-item, .listing-list .card-img, .event-card .carousel-item, .event-card .card-img {
  align-items: center;
  justify-content: center;
  aspect-ratio: var(--pb-media-aspect-ratio); /* aspect ratio */
}
.listing-details img, .listing-card img, .store-card img, .listing-list img, .event-card img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: 100%;
  object-fit: contain;
  display: block;
  margin: auto;
  background-color: var(--pb-thumbnail-img-background-color);
}

/* @version 10.0 [rev.01] */
/* LISTS RESET */
ul {
  display: block;
  list-style-type: disc;
  margin: 0 0 1em;
  padding-left: 40px;
}

ol {
  display: block;
  list-style-type: decimal;
  margin: 0 0 1em;
  padding-left: 40px;
}

ul ul, ol ul {
  list-style-type: circle;
  padding-left: 20px;
  margin-top: 1em;
  margin-bottom: 1em;
}

ol ol, ul ol {
  list-style-type: lower-roman;
  padding-left: 20px;
  margin-top: 1em;
  margin-bottom: 1em;
}

/* /LISTS RESET */
/* DEFINITION LISTS */
/* definition list with variable title width */
.dl-variable {
  max-width: 500px;
  overflow: auto;
  margin: 0;
}
.dl-variable dt {
  float: left;
  clear: left;
  line-height: 1.4;
  font-weight: 500;
}
.dl-variable dt .feather {
  width: 14px;
  height: 14px;
}
.dl-variable dt span:after {
  content: ":";
}
.dl-variable dd {
  display: table-cell;
  padding-left: 0.5rem;
  padding-bottom: 0.25rem;
  line-height: 1.4;
}

.dl-condensed {
  margin-bottom: 0;
}
.dl-condensed dt {
  padding-right: 0.25rem;
}
.dl-condensed dd {
  display: inherit;
  padding-bottom: 0;
  margin-bottom: 0;
}

/* large definition list */
.dl-lg dt .feather,
.dt-lg dt .feather {
  width: 24px;
  height: 24px;
}

.dl-lg dd {
  font-size: 1rem;
}

/* /large definition list */
.dl-indented dd {
  margin-left: 0.25rem;
  margin-bottom: 0.5rem;
}

dl dt {
  font-weight: 700;
}

@media (min-width: 992px) {
  .dl-flex dt {
    flex: 0 1 var(--pb-dl-flex-dt-width, var(--pb-flex-label-width));
  }
  .dl-flex dd {
    flex: 1;
    max-width: 100%;
  }
}
/* @version 10.0 [rev.01] */
/* SIDEBAR (GLOBAL) */
.sidebar {
  --pb-sidebar-height: calc(100vh - var(--pb-navbar-height));
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  transform: translateX(-100%);
  box-shadow: none;
  position: var(--pb-sidebar-position, fixed);
  top: var(--pb-sidebar-top, 0);
  left: var(--pb-siderbar-left, 0);
  width: var(--pb-sidebar-width);
  height: var(--pb-sidebar-height);
  overflow-x: hidden;
  overflow-y: hidden;
}
.sidebar.border-right {
  border-right: var(--pb-sidebar-border-right, 1px solid var(--pb-color-rgba-black-10));
}
.sidebar {
  color: var(--pb-sidebar-color, #000);
  background-color: var(--pb-sidebar-bg, var(--pb-color-white));
  z-index: 1010;
}
.sidebar.sidebar-right {
  right: 0;
  left: auto;
  transform: translateX(100%);
}
.sidebar:not(.show) {
  --pb-sidebar-height: 0;
}
.sidebar.show {
  transform: translateX(0) !important;
  box-shadow: 1px 0 15px 1px rgba(0, 0, 0, 0.1);
}
.sidebar.sidebar-fixed-desktop > .heading, .sidebar.sidebar-fixed-mobile > .heading {
  padding-top: 0.5rem;
  position: sticky;
  top: 0;
  background-color: var(--pb-sidebar-bg, var(--pb-color-rgba-white-80));
  z-index: 1;
}
.sidebar.sidebar-fixed-desktop, .sidebar.sidebar-fixed-mobile {
  --pb-sidebar-top: 0;
  --pb-sidebar-height: 0;
  --pb-sidebar-position: fixed;
}
.sidebar.sidebar-fixed-desktop .sidebar-menu > .heading, .sidebar.sidebar-fixed-mobile .sidebar-menu > .heading {
  display: none;
}
.sidebar.sidebar-fixed-desktop, .sidebar.sidebar-fixed-mobile {
  overflow-y: auto;
}
.sidebar.sidebar-fixed-desktop.show, .sidebar.sidebar-fixed-mobile.show {
  --pb-sidebar-height: 100vh;
}
@media (min-width: 992px) {
  .sidebar.sidebar-fixed-desktop.show, .sidebar.sidebar-fixed-mobile.show {
    --pb-sidebar-width: 400px;
    box-shadow: 1px 0 5px 1px var(--pb-color-rgba-black-10);
    padding-right: 1.5rem;
  }
}
@media (max-width: 991.98px) {
  .sidebar.sidebar-fixed-desktop.show, .sidebar.sidebar-fixed-mobile.show {
    --pb-sidebar-width: 85vw;
  }
}
@media (max-width: 991.98px) {
  .sidebar.sidebar-fixed-mobile {
    position: fixed;
    padding: 0 1rem 1rem;
    z-index: 1020;
    background-color: var(--pb-color-white);
    border-radius: 0;
  }
}
@media (min-width: 992px) {
  .sidebar.sidebar-fixed-desktop {
    position: fixed;
    padding: 0 1rem 1rem;
    z-index: 1020;
  }
  .sidebar.sidebar-visible-desktop {
    transform: translateX(0);
    --pb-sidebar-height: auto;
  }
}
.sidebar .sidebar-heading {
  cursor: pointer;
  font-size: var(--pb-sidebar-heading-font-size);
  font-weight: var(--pb-sidebar-heading-font-weight, var(--pb-font-weight-medium));
  padding: var(--pb-sidebar-heading-padding-y, 0.25rem) var(--pb-sidebar-heading-padding-x, 0.5rem);
  margin-bottom: var(--pb-sidebar-heading-margin-bottom, 0.25rem);
  color: var(--pb-sidebar-heading-color, var(--pb-color-gray-800));
  gap: var(--pb-sidebar-heading-gap, 0.5rem);
}
.sidebar .sidebar-heading .bi {
  color: var(--pb-sidebar-heading-icon-color, var(--pb-color-gray-400));
  font-size: var(--pb-sidebar-heading-icon-font-size, 1rem);
}
.sidebar .sidebar-heading.open .bi {
  color: var(--pb-sidebar-heading-open-icon-color, var(--pb-color-primary));
}
.sidebar .sidebar-heading .icon-animate .bi {
  transition: 0.25s linear;
  transform: rotate(0deg);
}
.sidebar .sidebar-heading.open .icon-animate .bi {
  transform: rotate(-90deg);
}
.sidebar .sidebar-heading .sidebar-heading-label {
  flex-grow: 2;
}
.sidebar ul {
  padding: 0;
  list-style: none;
}
.sidebar .sidebar-menu > ul {
  padding-left: var(--pb-sidebar-menu-ul-padding-left, 0);
  margin-bottom: var(--pb-sidebar-menu-ul-margin-bottom, 0.5rem);
}
.sidebar .sidebar-menu li > ul {
  margin: 0 0 0 var(--pb-sidebar-menu-li-ul-margin-left, -0.25rem);
  padding-left: var(--pb-sidebar-menu-li-ul-padding-left, 0.25rem);
}
.sidebar .nav-item.open > a,
.sidebar .nav-item > a:hover {
  color: var(--pb-sidebar-menu-link-color-hover, var(--pb-color-primary));
}
.sidebar .nav-link {
  padding: var(--pb-sidebar-nav-link-padding, 0.4rem);
  line-height: var(--pb-sidebar-nav-link-line-height, 1.2);
  font-size: var(--pb-sidebar-nav-link-font-size);
  font-weight: var(--pb-sidebar-nav-link-font-weight, var(--pb-font-weight-light));
  color: var(--pb-sidebar-nav-link-color, var(--pb-color-gray-700));
}
.sidebar .nav-link.active {
  color: var(--pb-sidebar-nav-link-active-color, var(--pb-color-primary));
  background-color: var(--pb-sidebar-nav-link-active-bg);
  border-radius: var(--pb-sidebar-nav-link-active-border-radius, 0.25rem);
}
.sidebar .nav-link .bi {
  color: var(--pb-sidebar-chevron-icon-color, var(--pb-color-gray-400));
  margin-right: var(--pb-sidebar-chevron-icon-margin-right, 0.25rem);
  transition: 0.25s linear;
  transform: rotate(0deg);
}
.sidebar .nav-link.open .bi {
  transform: rotate(-90deg);
}
.sidebar .nav-dropdown > .nav-link {
  color: var(--pb-sidebar-submenu-nav-link-color, var(--pb-color-gray-800));
  font-weight: var(--pb-sidebar-submenu-nav-link-font-weight, 400);
}

/* /SIDEBAR */
.navbar-inline-filter {
  display: flex;
  justify-content: end;
  padding: 0;
  margin-bottom: var(--pb-navbar-inline-filter-mb, 1rem);
}
.navbar-inline-filter .form-inline {
  justify-content: flex-end !important;
}
.navbar-inline-filter.navbar-inline-filter-hidden-mobile .btn-filter {
  display: none;
}
@media (max-width: 575.98px) {
  .navbar-inline-filter.navbar-inline-filter-hidden-mobile .form-inline {
    opacity: 0;
    height: 0;
    z-index: -1;
  }
  .navbar-inline-filter.navbar-inline-filter-hidden-mobile .form-inline-visible {
    opacity: 1;
    height: auto;
    z-index: 1;
    transition-timing-function: ease-in;
    transition: 0.5s;
  }
  .navbar-inline-filter.navbar-inline-filter-hidden-mobile .btn-filter {
    display: inline-flex;
    width: 100%;
    margin-bottom: 1rem;
    box-shadow: 0 1px 1px rgba(226, 226, 230, 0.5);
    border-color: #e5e7eb;
  }
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  background-color: var(--pb-nav-pills-active-bg, var(--pb-color-primary));
}

.nav-link, .nav-link:focus, .nav-link:hover {
  color: var(--pb-nav-link-color, var(--pb-color-primary));
}

/* SIDEBAR SEARCH */
.sidebar-search .nav-item > .label {
  display: block;
  font-weight: var(--pb-sidebar-search-nav-item-label-font-weight, var(--pb-font-weight-medium));
  color: var(--pb-sidebar-search-nav-item-label-color, var(--pb-color-gray-700));
  margin-bottom: var(--pb-sidebar-search-nav-item-label-margin-bottom, 0.15rem);
}
.sidebar-search .nav-item:not(:last-child) {
  margin-bottom: var(--pb-sidebar-search-nav-item-margin-bottom, 0.75rem);
}
.sidebar-search .nav-item > div {
  padding: 0;
  max-height: 30rem;
  overflow-y: auto;
}
.sidebar-search .form-check {
  padding-top: 0;
}

/* /SIDEBAR SEARCH */
/* SIDEBAR BACKDROP (MOBILE) */
.sidebar-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -2;
  opacity: 0;
}
@media (max-width: 575.98px) {
  .sidebar-backdrop.show {
    opacity: 0.5;
    background-color: var(--pb-sidebar-backdrop-bg, #000);
    z-index: 10;
    transition: opacity 0.25s;
  }
}

/* SIDEBAR BACKDROP (MOBILE) */
.filtered-by {
  display: inline-block;
  padding: 3px 5px;
  background-color: #fafafa;
  color: var(--pb-filtered-by-color, var(--pb-color-gray-800));
  margin-bottom: 0.25rem;
  font-size: var(--pb-filtered-by-font-size, var(--pb-font-size-90));
  border-radius: 3px;
  background-clip: padding-box; /* stops bg color from leaking outside the border: */
}

.categories-breadcrumb {
  --pb-categories-breadcrumb-font-size: var(--pb-font-size-sm);
  font-size: var(--pb-categories-breadcrumb-font-size);
  background-color: transparent;
  padding: 0;
  margin-bottom: 0.5rem;
}
.categories-breadcrumb .breadcrumb-item {
  color: var(--pb-categories-breadcrumb-breadcrumb-item-color, var(--pb-color-gray-500));
}
.categories-breadcrumb .breadcrumb-item a {
  color: var(--pb-categories-breadcrumb-breadcrumb-item-link-color, var(--pb-color-gray-700)) !important;
}
.categories-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  color: var(--pb-categories-breadcrumbs-breadcrumb-item-separator-color, var(--pb-color-gray-400));
}

/* @version 10.0 [rev.01] */
/* CODE TEXTAREA */
textarea.textarea-code {
  font-family: Monaco, Consolas, monospace !important;
  font-size: 12px;
  line-height: 1.2;
  background-color: #FAF8CC;
}

/* /CODE TEXTAREA */
/* SCROLLABLE WELL */
.well-scrollable {
  max-height: 300px;
  overflow-y: scroll;
}

/* /SCROLLABLE WELL */
/* ALERT */
.alert .feather {
  vertical-align: text-top;
  width: 24px;
  height: 24px;
}

/* /ALERT */
/* LOADING MODAL */
body.loading {
  overflow: hidden;
}

.loading-modal {
  display: none;
  position: fixed;
  z-index: 5000;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.6);
  background-image: url("../images/svg-loaders/oval.svg");
  background-size: 75px 75px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
body.loading .loading-modal {
  display: block;
}

/* /LOADING MODAL */
/* DATE & DATETIME FORM ELEMENTS */
.element-date,
.datetimepicker-input {
  cursor: pointer;
  background-color: #fafafa !important;
}

/* /DATE & DATETIME FORM ELEMENTS */
/* VIDEO.JS CONTAINER */
.video-js {
  width: 100%;
}

/* /VIDEO.JS CONTAINER */
/* PRODUCT ATTRIBUTES PARTIAL */
.product-attribute-element .col-form-label {
  padding-top: 0;
  padding-bottom: 0.25rem;
}

/* /PRODUCT ATTRIBUTES PARTIAL */
/* INVOICE DESIGN */
.invoice-billing-headline {
  padding: 0.5rem;
  font-weight: 700;
  font-size: 1.1rem;
  border-bottom: 1px solid #dee2e6;
}
.invoice-billing-headline .badge {
  font-weight: 400;
  font-size: 1.25rem;
  margin-right: 0.5rem;
}
.invoice-billing-content {
  padding: 0.5rem;
}
.invoice-billing-content strong {
  font-weight: 500 !important;
}
.invoice-billing-logo {
  max-width: 200px;
  max-height: 50px;
}

/* /INVOICE DESIGN */
/* SELECTIZE CONTAINER */
.loading .selectize-input::after {
  display: inline-block;
  width: 22px;
  height: 22px;
  background-image: url("../images/svg-loaders/tail-spin.svg");
  background-size: 20px 20px;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-left: 4px;
}

/* /SELECTIZE CONTAINER */
/* MAINTENANCE MODE */
.maintenance-mode {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 500px;
  min-height: 100vh;
  margin: auto;
}
.maintenance-mode .content {
  text-align: center;
}
.maintenance-mode .content img {
  width: 150px;
}
@media (max-width: 767.98px) {
  .maintenance-mode {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* /MAINTENANCE MODE */
/* FEES TOTAL */
.fees-total {
  padding-top: 0.5rem;
  font-size: 1.4rem !important;
}

/* /FEES TOTAL */
/* HONEYPOT FIELDS */
.hpt {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  width: 0;
  z-index: -1;
  /* ## -- ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-12) TSS-100
     the width/height zeroing above loses to higher-specificity form-control
     sizing rules, which inflated the invisible field to full content width
     right over the breadcrumb row, so every breadcrumb click landed on the
     honeypot instead of the link. A honeypot must never take pointer input
     from a human, bots fill it through the DOM regardless. */
  pointer-events: none;
  /* ## -- ./ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] */
}

/* /HONEYPOT FIELDS */
.text-all-categories {
  font-weight: 500;
}
.text-all-categories a {
  color: #B81D2C !important;
}

.currency-code {
  margin-left: var(--bs-currency-code-margin-left, 0.15em);
  font-size: var(--bs-currency-code-font-size, 85%);
  font-weight: var(--bs-currency-code-font-weight, 400);
}

.original-price {
  font-size: 85%;
  color: #777;
  font-weight: 300;
  font-style: italic;
  text-decoration: line-through;
}

.reputation-score {
  font-size: 0.875em;
}

/* AUTOCOMPLETE SPINNER (PLACEHOLDER) */
.autocomplete-spinner {
  position: absolute;
  top: 0;
  right: 0;
}
.autocomplete-spinner.hidden {
  visibility: hidden;
}

/* /AUTOCOMPLETE SPINNER (PLACEHOLDER) */
.d-flex .form-check:not(:last-child):after {
  margin-left: 10px;
  margin-right: 10px;
  color: #ccc;
  content: "∶";
}

.accordion.accordion-sm button {
  font-size: 100%;
  padding: 0;
}
.accordion.accordion-sm .accordion-body {
  padding: 10px 0;
}
.accordion.accordion-sm .accordion-button {
  align-items: flex-start;
}

.site-logo-email {
  max-width: 250px;
}

.trumbowyg-editor {
  background-color: #fff;
}

/* @version 10.0 [rev.01] */
.pagination .page-item .page-link {
  color: var(--pb-pagination-link-color, var(--pb-color-primary));
}
.pagination .page-item .page-link:focus, .pagination .page-item .page-link:active {
  background-color: var(--pb-pagination-link-focus-bg, var(--pb-color-primary-500));
  border-color: var(--pb-pagination-link-focus-border-color, var(--pb-color-primary-500));
  box-shadow: 0 0 var(--pb-box-shadow-spread) var(--pb-box-shadow-focus-size) var(--pb-pagination-link-focus-shadow, var(--pb-color-primary-100)) !important;
}
.pagination .page-item.active .page-link {
  color: var(--pb-pagination-active-link-color, var(--pb-color-white));
  background-color: var(--pb-pagination-active-link-bg, var(--pb-color-primary));
  border-color: var(--pb-pagination-active-link-border-color, var(--pb-color-primary));
}
.pagination .page-item.active .page-link:hover {
  background-color: var(--pb-pagination-active-link-hover-bg, var(--pb-color-primary-500));
  border-color: var(--pb-pagination-active-link-hover-border-color, var(--pb-color-primary-500));
}

/* @version 10.0 [rev.01] */
/* PAYMENT BOX */
.payment-box {
  --pb-payment-box-margin-y: .75rem;
  display: block;
  margin-bottom: var(--pb-payment-box-margin-y);
}
.payment-box .payment-logo {
  max-width: var(--pb-payment-box-logo-max-width, 150px);
}
.payment-box {
  cursor: pointer;
}

.payment-box + .payment-box {
  margin-top: var(--pb-payment-box-margin-y);
}

/* /PAYMENT BOX */
.form-payment .cart-summary {
  position: sticky;
  top: 25px;
}
.form-payment .payment-description {
  font-size: var(--pb-form-payment-payment-description-font-size, 1rem);
}

.Stripe {
  --body-color: rgb(247, 250, 252);
  --button-color: #0062cc;
  --accent-color: #0069d9;
  --link-color: #ffffff;
  --font-color: rgb(105, 115, 134);
  --radius: 6px;
  --form-width: 400px;
  /* Layout */
}
.Stripe .sr-root {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-content: center;
  justify-content: center;
  margin: 0 auto;
}
.Stripe .sr-main {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  align-self: center;
  padding: 15px 20px;
  background: var(--body-color);
  width: 100%;
  border-radius: var(--radius);
  box-shadow: 0px 0px 0px 0.5px rgba(50, 50, 93, 0.1), 0px 2px 5px 0px rgba(50, 50, 93, 0.1), 0px 1px 1.5px 0px rgba(0, 0, 0, 0.07);
}
.Stripe .sr-field-error {
  color: #cd0000;
  text-align: left;
  font-size: 13px;
  line-height: 17px;
  margin-top: 12px;
}
.Stripe {
  /* Inputs */
}
.Stripe .sr-input,
.Stripe input[type=text] {
  border: 1px solid var(--gray-border);
  border-radius: var(--radius);
  padding: 5px 12px;
  height: 44px;
  width: 100%;
  transition: box-shadow 0.2s ease;
  background: white;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}
.Stripe .sr-input:focus,
.Stripe input[type=text]:focus,
.Stripe button:focus,
.Stripe .focused {
  box-shadow: 0 0 0 1px rgba(50, 151, 211, 0.3), 0 1px 1px 0 rgba(0, 0, 0, 0.07), 0 0 0 4px rgba(50, 151, 211, 0.3);
  outline: none;
  z-index: 9;
}
.Stripe .sr-input::placeholder,
.Stripe input[type=text]::placeholder {
  color: var(--gray-light);
}
.Stripe .sr-result {
  height: 44px;
  -webkit-transition: height 1s ease;
  -moz-transition: height 1s ease;
  -o-transition: height 1s ease;
  transition: height 1s ease;
  color: var(--font-color);
  overflow: auto;
}
.Stripe .sr-result code {
  overflow: scroll;
}
.Stripe .sr-result.expand {
  height: 350px;
}
.Stripe .sr-combo-inputs-row {
  box-shadow: 0px 0px 0px 0.5px rgba(50, 50, 93, 0.1), 0px 2px 5px 0px rgba(50, 50, 93, 0.1), 0px 1px 1.5px 0px rgba(0, 0, 0, 0.07);
  border-radius: 7px;
}
.Stripe {
  /* Buttons and links */
}
.Stripe button {
  background: var(--accent-color);
  border-radius: var(--radius);
  color: white;
  border: 0;
  padding: 12px 16px;
  margin-top: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  display: block;
  box-shadow: 0px 4px 5.5px 0px rgba(0, 0, 0, 0.07);
  width: 100%;
}
.Stripe button:hover {
  filter: contrast(115%);
}
.Stripe button:active {
  transform: translateY(0px) scale(0.98);
  filter: brightness(0.9);
}
.Stripe button:disabled {
  opacity: 0.5;
  cursor: none;
}
.Stripe a {
  color: var(--link-color);
  text-decoration: none;
  transition: all 0.2s ease;
}
.Stripe a:hover {
  filter: brightness(0.8);
}
.Stripe a:active {
  filter: brightness(0.5);
}
.Stripe {
  /* Code block */
}
.Stripe code,
.Stripe pre {
  font-family: "SF Mono", "IBM Plex Mono", "Menlo", monospace;
  font-size: 12px;
}
.Stripe {
  /* Stripe Element placeholder */
}
.Stripe .sr-card-element {
  padding-top: 15px;
}
.Stripe {
  /* Responsiveness */
}
@media (max-width: 720px) {
  .Stripe .sr-root {
    flex-direction: column;
    justify-content: flex-start;
    padding: 48px 20px;
    min-width: 320px;
  }
  .Stripe .sr-header__logo {
    background-position: center;
  }
  .Stripe .sr-payment-summary {
    text-align: center;
  }
  .Stripe .sr-content {
    display: none;
  }
  .Stripe .sr-main {
    width: 100%;
    height: 305px;
    background: rgb(247, 250, 252);
    box-shadow: 0px 0px 0px 0.5px rgba(50, 50, 93, 0.1), 0px 2px 5px 0px rgba(50, 50, 93, 0.1), 0px 1px 1.5px 0px rgba(0, 0, 0, 0.07);
    border-radius: 6px;
  }
}
.Stripe {
  /* todo: spinner/processing state, errors, animations */
}
.Stripe .spinner,
.Stripe .spinner:before,
.Stripe .spinner:after {
  border-radius: 50%;
}
.Stripe .spinner {
  color: #ffffff;
  font-size: 22px;
  text-indent: -99999px;
  margin: 0px auto;
  position: relative;
  width: 20px;
  height: 20px;
  box-shadow: inset 0 0 0 2px;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}
.Stripe .spinner:before,
.Stripe .spinner:after {
  position: absolute;
  content: "";
}
.Stripe .spinner:before {
  width: 10.4px;
  height: 20.4px;
  background: var(--accent-color);
  border-radius: 20.4px 0 0 20.4px;
  top: -0.2px;
  left: -0.2px;
  -webkit-transform-origin: 10.4px 10.2px;
  transform-origin: 10.4px 10.2px;
  -webkit-animation: loading 2s infinite ease 1.5s;
  animation: loading 2s infinite ease 1.5s;
}
.Stripe .spinner:after {
  width: 10.4px;
  height: 10.2px;
  background: var(--accent-color);
  border-radius: 0 10.2px 10.2px 0;
  top: -0.1px;
  left: 10.2px;
  -webkit-transform-origin: 0px 10.2px;
  transform-origin: 0px 10.2px;
  -webkit-animation: loading 2s infinite ease;
  animation: loading 2s infinite ease;
}
@-webkit-keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.Stripe {
  /* Animated form */
}
.Stripe .sr-root {
  animation: 0.4s form-in;
  animation-fill-mode: both;
  animation-timing-function: ease;
}
.Stripe .hidden {
  display: none;
}
@keyframes field-in {
  0% {
    opacity: 0;
    transform: translateY(8px) scale(0.95);
  }
  100% {
    opacity: 1;
    transform: translateY(0px) scale(1);
  }
}
@keyframes form-in {
  0% {
    opacity: 0;
    transform: scale(0.98);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

/* @version 10.0 [rev.01] */
@media print {
  body {
    width: 1024px !important;
    margin: 0 auto !important;
  }
}
.mobile-title {
  display: none;
}

.invoice-sale .table {
  table-layout: fixed;
}

@media screen and (max-width: 768px) {
  .invoice-sale .mobile-title {
    display: inline;
  }
  .invoice-sale .mobile-title:after {
    content: ":";
  }
  .invoice-sale .table th {
    display: none;
  }
  .invoice-sale .table tr {
    display: flex;
    flex-direction: column;
  }
  .invoice-sale .table tr td {
    padding-top: 0.1rem;
    padding-bottom: 0;
    border-bottom: none;
  }
  .invoice-sale .table tr td:first-child {
    padding-top: 0.5rem;
    padding-bottom: 0.25rem;
    border-top: 1px solid #d1d5db;
  }
  .invoice-sale .table tr td:last-child {
    padding-bottom: 0.5rem;
  }
  .invoice-sale .table tr td:not(:first-child) {
    font-size: 0.9em;
  }
  .invoice-sale .table tr:not(.line-item) {
    flex-direction: row;
    justify-content: end;
  }
  .invoice-sale .table tr:not(.line-item) td {
    font-size: 1rem;
    padding: 0.5rem;
  }
  .invoice-sale .table .colspan {
    display: none;
  }
}
/* @version 10.0 [rev.01] */
.text-xs {
  font-size: var(--pb-font-size-xs) !important;
}

.text-sm {
  font-size: var(--pb-font-size-sm) !important;
}

.text-lg {
  font-size: var(--pb-font-size-lg) !important;
}

.text-light {
  font-weight: var(--pb-font-weight-light) !important;
}

.text-normal {
  font-weight: var(--pb-font-weight-normal) !important;
}

.text-medium {
  font-weight: var(--pb-font-weight-medium) !important;
}

.text-semibold {
  font-weight: var(--pb-font-weight-semibold) !important;
}

.text-bold {
  font-weight: var(--pb-font-weight-bold) !important;
}

.text-buyout {
  color: var(--pb-text-color-buyout, var(--pb-color-blue-600)) !important;
}

.text-product {
  color: var(--pb-text-color-product, var(--pb-color-gray-800)) !important;
}

.text-classified {
  color: var(--pb-text-color-classified, var(--pb-color-orange-600)) !important;
}

.text-under-reserve {
  color: var(--pb-text-color-under-reserve, var(--pb-color-red-600)) !important;
}

.text-over-reserve {
  color: var(--pb-text-color-over-reserve, var(--pb-color-green-600)) !important;
}

.text-disabled {
  color: var(--pb-text-color-disabled, var(--pb-color-gray-400)) !important;
}

/* @version 10.0 [rev.01] */
.table {
  --bs-table-bg: none;
  --pb-table-responsive-min-width: 1200px;
}
.table caption {
  padding: var(--pb-table-caption-padding-y, 0.75rem) var(--pb-table-caption-padding-x, 0.5rem);
  caption-side: top;
}
.table.table-sm th, .table.table-sm td {
  font-size: var(--pb-table-sm-font-size, var(--pb-font-size-sm));
}
.table.table-sm th {
  font-weight: var(--pb-table-sm-th-font-weight, var(--pb-font-weight-medium));
}
.table .size-40 {
  width: var(--pb-table-size-40-width, 40px);
}
.table .size-min-40 {
  min-width: var(--pb-table-size-min-40-width, 40px);
}
.table .size-60 {
  width: var(--pb-table-size-60-width, 60px);
}
.table .size-min-60 {
  min-width: var(--pb-table-size-min-60-width, 60px);
}
.table .size-70 {
  width: var(--pb-table-size-70-width, 70px);
}
.table .size-min-70 {
  min-width: var(--pb-table-size-min-70-width, 70px);
}
.table .size-80 {
  width: var(--pb-table-size-80-width, 80px);
}
.table .size-min-80 {
  min-width: var(--pb-table-size-min-80-width, 80px);
}
.table .size-90 {
  width: var(--pb-table-size-90-width, 90px);
}
.table .size-min-90 {
  min-width: var(--pb-table-size-min-90-width, 90px);
}
.table .size-100 {
  width: var(--pb-table-size-100-width, 100px);
}
.table .size-min-100 {
  min-width: var(--pb-table-size-min-100-width, 100px);
}
.table .size-120 {
  width: var(--pb-table-size-120-width, 120px);
}
.table .size-min-120 {
  min-width: var(--pb-table-size-min-120-width, 120px);
}
.table .size-140 {
  width: var(--pb-table-size-140-width, 140px);
}
.table .size-min-140 {
  min-width: var(--pb-table-size-min-140-width, 140px);
}
.table .size-160 {
  width: var(--pb-table-size-160-width, 160px);
}
.table .size-min-160 {
  min-width: var(--pb-table-size-min-160-width, 160px);
}
.table .size-180 {
  width: var(--pb-table-size-180-width, 180px);
}
.table .size-min-180 {
  min-width: var(--pb-table-size-min-180-width, 180px);
}
.table .size-200 {
  width: var(--pb-table-size-200-width, 200px);
}
.table .size-min-200 {
  min-width: var(--pb-table-size-min-200-width, 200px);
}
.table .size-250 {
  width: var(--pb-table-size-250-width, 250px);
}
.table .size-min-250 {
  min-width: var(--pb-table-size-min-250-width, 250px);
}
.table .size-300 {
  width: var(--pb-table-size-300-width, 300px);
}
.table .size-min-300 {
  min-width: var(--pb-table-size-min-300-width, 300px);
}
.table .size-tiny {
  width: var(--pb-table-size-tiny-width, 40px);
}
.table .size-min-tiny {
  min-width: var(--pb-table-size-min-tiny-width, 40px);
}
.table .size-mini {
  width: var(--pb-table-size-mini-width, 80px);
}
.table .size-min-mini {
  min-width: var(--pb-table-size-min-mini-width, 80px);
}
.table .size-small {
  width: var(--pb-table-size-small-width, 140px);
}
.table .size-min-small {
  min-width: var(--pb-table-size-min-small-width, 140px);
}
.table .size-medium {
  width: var(--pb-table-size-medium-width, 240px);
}
.table .size-min-medium {
  min-width: var(--pb-table-size-min-medium-width, 240px);
}
.table .size-large {
  width: var(--pb-table-size-large-width, 360px);
}
.table .size-min-large {
  min-width: var(--pb-table-size-min-large-width, 360px);
}
.table .size-actions {
  width: var(--pb-table-size-actions-width, 180px);
}
.table .size-min-actions {
  min-width: var(--pb-table-size-min-actions-width, 180px);
}
.table .h-100 {
  height: 100%;
}
@media (max-width: 1199.98px) {
  .table-responsive .table {
    min-width: var(--pb-table-responsive-min-width);
  }
}
.table .border-top-thick {
  border-top-width: 4px !important;
}
.table .no-border-bottom {
  border-bottom: none !important;
}
.table .no-border {
  border: none !important;
}

.table-sale {
  table-layout: fixed;
}
.table-sale > caption {
  margin-bottom: 0;
  padding: 1px 0 5px;
}
.table-sale > thead > tr > th {
  border-bottom: 1px dotted #ddd;
  padding: 5px 5px 5px 0;
}
.table-sale > tbody > tr > td {
  border-top: 0 none;
  padding: 5px 5px 5px 0;
}

/* @version 10.0 [rev.01] */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .headline {
  font-family: var(--pb-headline-font-family, var(--pb-font-heading)), sans-serif;
}

.heading {
  --pb-heading-display: flex;
  display: var(--pb-heading-display);
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--pb-heading-margin-bottom, 1rem);
  padding-bottom: var(--pb-heading-padding-bottom, 0.5rem);
  border-bottom-width: var(--pb-heading-border-bottom-width, 1px);
  border-bottom-style: var(--pb-heading-border-bottom-style, solid);
  border-bottom-color: var(--pb-heading-border-bottom-color, var(--pb-color-rgba-black-10));
  gap: var(--pb-heading-gap, 0.25rem);
  font-weight: var(--pb-heading-font-weight, var(--pb-font-weight-medium));
}
.heading h1, .heading h2, .heading h3, .heading h4, .heading h5, .heading h6, .heading .h1, .heading .h2, .heading .h3, .heading .h4, .heading .h5, .heading .h6 {
  margin-bottom: 0;
}
@media (max-width: 991.98px) {
  .heading {
    overflow-x: auto;
  }
}
.heading.heading-secondary h1, .heading.heading-secondary h2, .heading.heading-secondary h3, .heading.heading-secondary h4, .heading.heading-secondary h5, .heading.heading-secondary h6, .heading.heading-secondary .h1, .heading.heading-secondary .h2, .heading.heading-secondary .h3, .heading.heading-secondary .h4, .heading.heading-secondary .h5, .heading.heading-secondary .h6 {
  font-family: var(--pb-heading-secondary-font-family, var(--pb-font-heading)), sans-serif;
  font-weight: var(--pb-heading-secondary-font-weight, var(--pb-font-weight-medium));
}

.subtitle {
  display: var(--pb-subtitle-display, flex);
  align-items: center;
  margin-bottom: var(--pb-subtitle-margin-bottom, 0.75rem);
  padding-bottom: var(--pb-subtitle-padding-bottom, 0.375rem);
  border-bottom-width: var(--pb-subtitle-border-bottom-width, 1px);
  border-bottom-style: var(--pb-subtitle-border-bottom-style, solid);
  border-bottom-color: var(--pb-subtitle-border-bottom-color, var(--pb-color-gray-200));
  font-weight: var(--pb-subtitle-font-weight, 400);
  gap: var(--pb-subtitle-gap, 0.25rem);
}

@media (max-width: 991.98px) {
  .listings-browse .sidebar,
  .stores-browse .sidebar {
    --pb-sidebar-height: 100vh;
    overflow-y: auto;
  }
}
@media (min-width: 992px) {
  .listings-browse .sidebar,
  .stores-browse .sidebar {
    --pb-sidebar-position: flex;
    --pb-sidebar-width: auto;
    --pb-sidebar-height: auto;
  }
  .listings-browse .sidebar-toggler, .listings-browse .heading,
  .stores-browse .sidebar-toggler,
  .stores-browse .heading {
    display: none;
  }
}
.listings-browse .sidebar-menu,
.stores-browse .sidebar-menu {
  --pb-sidebar-menu-li-ul-padding-left: 0.25rem;
}
.listings-browse .sidebar-menu li > ul,
.stores-browse .sidebar-menu li > ul {
  margin-top: 0.15rem;
  margin-bottom: 0.75rem;
}
.listings-browse .sidebar-menu .nav-item a,
.stores-browse .sidebar-menu .nav-item a {
  font-size: var(--pb-font-size-sm);
}
.listings-browse .headline,
.stores-browse .headline {
  --pb-browse-page-headline-font-size: 1.75rem;
  font-size: var(--pb-browse-page-headline-font-size);
}
.listings-browse .active-filters,
.stores-browse .active-filters {
  --pb-active-filters-padding-x: 0;
  --pb-active-filters-padding-y: 0;
  --pb-active-filters-margin-bottom: 0.25rem;
  padding: var(--pb-sorting-and-filters-padding-y) var(--pb-sorting-and-filters-padding-x);
  margin-bottom: var(--pb-active-filters-margin-bottom);
}
.listings-browse .sorting-and-filters,
.stores-browse .sorting-and-filters {
  --pb-sorting-and-filters-padding-x: 0;
  --pb-sorting-and-filters-padding-y: 0;
  --pb-sorting-and-filters-margin-bottom: 1rem;
  padding: var(--pb-sorting-and-filters-padding-y) var(--pb-sorting-and-filters-padding-x);
  margin-bottom: var(--pb-sorting-and-filters-margin-bottom);
}

/* @version 10.0 [rev.01] */
.listing-details {
  --pb-listing-video-width: 100%;
  --pb-listing-video-height: 420px;
  --pb-carousel-indicators-margin-top: 1rem;
  --pb-carousel-indicators-gap: 5px;
  --pb-carousel-thumb-width: 120px;
  --pb-carousel-thumb-height: 120px;
  --pb-carousel-thumb-opacity-inactive: 0.75;
  --pb-carousel-thumb-border-color: var(--pb-color-rgba-gray-20);
}
.listing-details .video-js {
  width: var(--pb-listing-video-width);
  height: var(--pb-listing-video-height);
}
.listing-details {
  /* TITLE & SHORT DESCRIPTION */
  --pb-listing-details-title-font-size: clamp(1.8rem, 2.5vw, 2.5rem);
  --pb-listing-details-title-margin-bottom: 1rem;
  --pb-listing-details-short-description-font-size: var(--pb-font-size);
  --pb-listing-details-short-description-margin-bottom: 1rem;
  --pb-listing-details-short-description-color: var(--pb-color-gray-600);
}
.listing-details .title {
  font-size: var(--pb-listing-details-title-font-size);
  margin-bottom: var(--pb-listing-details-title-margin-bottom);
}
.listing-details .short-description {
  font-size: var(--pb-listing-details-short-description-font-size);
  margin-bottom: var(--pb-listing-details-short-description-margin-bottom);
  color: var(--pb-listing-details-short-description-color);
}
.listing-details {
  /* /TITLE & SHORT DESCRIPTION */
  /* BOOTSTRAP CAROUSEL */
}
.listing-details .carousel-indicators {
  display: block;
  white-space: nowrap;
  position: relative;
  bottom: auto;
  margin: var(--pb-carousel-indicators-margin-top) 0 0;
  gap: var(--pb-carousel-indicators-gap);
  overflow-x: auto;
}
.listing-details .carousel-indicators [data-bs-target] {
  background-color: transparent;
  width: var(--pb-carousel-thumb-width);
  height: var(--pb-carousel-thumb-height);
  border-top: none;
  border-bottom: none;
  margin: 0;
}
.listing-details .carousel-indicators [data-bs-target] img {
  border-color: var(--pb-carousel-thumb-border-color);
}
.listing-details .carousel-indicators [data-bs-target]:not(.active) {
  opacity: var(--pb-carousel-thumb-opacity-inactive);
}
.listing-details {
  /* /BOOTSTRAP CAROUSEL */
}
.listing-details .accordion-postage-rates {
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px solid var(--pb-color-rgba-gray-30);
}
.listing-details .event-lots-section .categories-breadcrumb, .listing-details .event-lots-section .card-seller {
  display: none;
}

.members-area {
  --pb-grid-background-color: var(--pb-default-box-bg);
  --pb-grid-padding: 0.75rem;
}
@media (min-width: 992px) {
  .members-area .main {
    --pb-grid-main-padding-x: 1rem;
  }
}
.members-area {
  --pb-table-size-actions-width: 50px;
}

/* @version 10.0 [rev.02] */
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-13) TSS-123 removed the two
   fonts.cdnfonts.com imports (Segoe UI, Geologica). The CDN answers them with
   ERR_BLOCKED_BY_RESPONSE.NotSameOrigin, printing two console errors on every
   page load, and neither family is referenced by any font-family declaration
   in this theme, its templates, or the site settings - the theme fonts are
   Inter and the Google families above. */
:root {
  --pb-font-primary: Inter, sans-serif;
  --pb-font-secondary: Inter, sans-serif;
  --pb-font-heading: Inter, sans-serif;
  --pb-sidebar-width: 250px;
  --pb-container-compact-border-color: var(--pb-color-rgba-black-10);
}

/* @version 10.0 [rev.01] */
/* ## -- ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-14) TSS-108 pass 1.
   A shared desktop spacing rhythm and type scale, exposed as custom properties
   so the pages swept under the TSS-108 umbrella reference one scale instead of
   ad hoc rem values. This is the umbrella type-scale foundation. TSS-107 and the
   5e92c241 tile pass already cleaned the home shelves and the event tiles, and
   this block gives the rest of the sweep a named vocabulary to normalize
   against.

   Declaring the tokens costs nothing on its own because no selector consumes a
   token until a component opts in, so this partial is safe to load theme wide.
   The type scale keeps body copy (15px) at or above the badge and label sizes,
   which was the ranking complaint in the ticket. Headings, metadata and labels
   must read as distinct, and body text must not be smaller than a badge.

   Applied in this PR to pages/_browse.scss (the current-events listing chrome)
   and pages/_listing-details.scss (the event / lot detail page), plus the base
   section margin in components/_base.scss. Every other surface is deferred to
   follow-up PRs under TSS-108. */
:root {
  /* spacing steps, desktop rhythm */
  --tss-space-3xs: 0.25rem;
  --tss-space-2xs: 0.5rem;
  --tss-space-xs: 0.75rem;
  --tss-space-sm: 1rem;
  --tss-space-md: 1.5rem;
  --tss-space-lg: 2rem;
  --tss-space-xl: 3rem;
  /* desktop type scale. Body sits at or above the badge and label rungs so the
     ranking reads heading, then body, then label, then badge. */
  --tss-text-badge: 0.75rem;
  --tss-text-label: 0.8125rem;
  --tss-text-body: 0.9375rem;
  --tss-text-h4: 1.15rem;
  --tss-text-h3: 1.35rem;
  --tss-text-h2: 1.6rem;
  --tss-text-h1: 2rem;
  /* line heights */
  --tss-leading-tight: 1.2;
  --tss-leading-body: 1.5;
  /* shared radius for normalized surfaces */
  --tss-radius: 0.5rem;
}

/* ## -- ./ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] */
/* @version 10.0 [rev.01] */
/* colors array: V10 */
/* @version 10.0 [rev.01] */
.dark {
  --pb-body-bg: #f7f2ef;
  --pb-header-color: #fff;
  --pb-header-bg: #000;
  --pb-header-desktop-main-navbar-bg: #000;
  --pb-header-nav-link-color: #f3f4f6;
  --pb-header-nav-link-hover-color: #d1d5db;
  --pb-header-desktop-links-navbar-color: #f3f4f6;
  --pb-header-desktop-links-navbar-bg: rgba(250, 247, 246, 0.3);
  --pb-header-desktop-search-input-border: none;
}
.dark header {
  --pb-sidebar-bg: #000;
  --pb-sidebar-color: #fff;
  --pb-sidebar-nav-link-color: #f3f4f6;
  --pb-sidebar-submenu-nav-link-color: #f3f4f6;
  --pb-header-button-color: #f3f4f6;
  --pb-mobile-navbar-border-bottom: none;
  --pb-my-account-dropdown-menu-bg: #000;
  --pb-heading-border-bottom-color: #1f2937;
  --pb-header-links-navbar-border-bottom-color: rgba(233, 226, 221, 0.3);
  --pb-header-desktop-main-navbar-border-bottom-color: rgba(233, 226, 221, 0.3);
}

.light {
  --pb-body-bg: #f8f6f5;
  --pb-header-bg: rgba(156, 163, 175, 0.1);
  --pb-header-desktop-main-navbar-bg: rgba(255, 255, 255, 0.8);
}
.light header {
  --pb-sidebar-bg: #fff;
}
.light {
  --pb-default-box-bg: rgba(255, 255, 255, 0.7);
}

/* @version 10.0 [rev.01] */
body {
  --pb-font-size: 15px;
  text-rendering: geometricPrecision;
  font-weight: 400;
  letter-spacing: -0.08px;
  --pb-body-bg: rgba(250, 247, 246, 0.4);
}

/* TSS-108 pass 1: section rhythm reads from the shared spacing scale
   (--tss-space-lg is 2rem, the prior value) so inner pages open on one step. */
body > main:not(.home-page) {
  margin-top: var(--tss-space-lg, 2rem);
}

/* @version 10.0 [rev.01] */
.btn {
  --pb-btn-border-radius: 3px;
}

.btn-group-sm > .btn, .btn-sm {
  --pb-btn-font-size: .8rem;
}

.btn-group-lg > .btn, .btn-lg {
  --pb-btn-font-size: 1.1rem;
}

.language-dropdown .btn {
  --pb-btn-color: #000;
  --pb-btn-padding-x: 5px;
}
.dark .language-dropdown .btn {
  --pb-btn-background-color: #1f2937;
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-18, rescoped 2026-08-20) TSS-95
   This file was forked byte for byte from themes/nine, and carries the unconditional

       .buttons-sticky-bottom { background-color: rgba(255, 255, 255, 0.8); // nine theme }

   which makes translucency the default for every sticky bar on the site. On the Selling
   Browse pages that reads badly: the bars are position: sticky at the bottom of the
   viewport with content scrolling under them, so at 80% white the rows read straight
   through and the text on the bar landed on top of them. Measured at 390x844 on
   members/selling/events, where a TSS-91 event card sat under the bulk-action bar and its
   badge showed through the hint text.

   First attempt deleted this rule outright, making every sticky bar site-wide opaque.
   Codex review on PR #182 caught that it changes bars nobody asked to change - Admin,
   App payment, THD tables, Members invoices/notifications/offers, and the live-auctions
   forms all rely on the translucent default and would visibly flip translucent -> opaque
   with no ticket behind it. The rule stays as originally forked; only the Selling Browse
   bar opts back out, scoped in _custom.scss under the TSS-95 part 3 comment via
   `.selling-bulk-actions.buttons-sticky-bottom`, the same compound-class pattern
   `.form-buttons.buttons-sticky-bottom` already uses a few lines below for the listing
   edit form's variant. */
.buttons-sticky-bottom {
  background-color: rgba(255, 255, 255, 0.8);
}

.dark .btn-wishlist {
  --pb-btn-color: #fff;
  --pb-btn-background-color: #1f2937;
}

/* @version 10.0 [rev.02] */
.dashboard-cards .card {
  border-color: var(--pb-color-rgba-gray-40);
}
.dashboard-cards .card .card-header {
  background-color: var(--pb-color-rgba-gray-10);
  border-bottom-color: var(--pb-color-rgba-gray-20);
}
.dashboard-cards .card .list-group-item {
  border-color: var(--pb-color-rgba-gray-20);
  background-color: var(--pb-color-rgba-white-50);
}

.listings-cards .card .card-title,
.stores-cards .card .card-title,
.events-cards .card .card-title {
  --pb-card-title-font-weight: 500;
}
.listings-cards .card .price,
.stores-cards .card .price,
.events-cards .card .price {
  --pb-card-price-font-size: 1.4rem;
}
.listings-cards .card-grid .action-buttons,
.stores-cards .card-grid .action-buttons,
.events-cards .card-grid .action-buttons {
  gap: 2px;
  flex-direction: column;
}
.listings-cards .card-grid .action-buttons .btn,
.stores-cards .card-grid .action-buttons .btn,
.events-cards .card-grid .action-buttons .btn {
  width: 100%;
}
.listings-cards .card-grid .card-seller,
.stores-cards .card-grid .card-seller,
.events-cards .card-grid .card-seller {
  margin-bottom: 0.5rem;
}
.listings-cards .card-list .card-info,
.stores-cards .card-list .card-info,
.events-cards .card-list .card-info {
  display: flex;
  flex-direction: column;
}
.listings-cards .card-list .card-info .card-seller,
.stores-cards .card-list .card-info .card-seller,
.events-cards .card-list .card-info .card-seller {
  order: -1;
}
.listings-cards .card-list .card-info .card-title,
.stores-cards .card-list .card-info .card-title,
.events-cards .card-list .card-info .card-title {
  order: -2;
  white-space: normal !important;
  font-size: var(--pb-card-list-title-font-size, var(--pb-font-size-lg));
  line-height: 1.2;
  height: calc(var(--pb-card-list-title-font-size, var(--pb-font-size-lg)) * 1.2 * 1);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  margin-top: 0;
}
.listings-cards .card-list .card-info .card-short-description,
.stores-cards .card-list .card-info .card-short-description,
.events-cards .card-list .card-info .card-short-description {
  color: var(--pb-color-gray-600);
  white-space: normal !important;
  font-size: var(--pb-card-list-short-description-font-size, var(--pb-font-size-sm));
  line-height: 1.2;
  height: calc(var(--pb-card-list-short-description-font-size, var(--pb-font-size-sm)) * 1.2 * 2);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  margin: 0.5rem 0 1rem;
}
.listings-cards .card-list .card-footer,
.stores-cards .card-list .card-footer,
.events-cards .card-list .card-footer {
  align-self: end;
}
.container-compact .listings-cards,
.container-compact .stores-cards,
.container-compact .events-cards {
  --pb-cards-gap: 0;
  --pb-card-border-radius: 0;
  background-color: var(--pb-default-box-bg);
}
.container-compact .listings-cards .card-grid,
.container-compact .stores-cards .card-grid,
.container-compact .events-cards .card-grid {
  border-top: none;
  border-right: 1px solid var(--pb-container-compact-border-color);
  border-bottom: 1px solid var(--pb-container-compact-border-color);
  border-left: none;
}
.container-compact .listings-cards .card-list,
.container-compact .stores-cards .card-list,
.container-compact .events-cards .card-list {
  border: none;
  border-bottom: 1px solid var(--pb-container-compact-border-color);
}

/* ## -- ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-07-25)
   Compact event tiles (home page + events browse) — flat, image-dominant cards:
   EVENT label + event name above the image, status badge overlaid on the image,
   total lots / date / location below. Markup: addons/live-auctions/module/Listings/view/partials/event-card.phtml */
.events-cards {
  --pb-cards-gap: 1.5rem 1rem;
}
.events-cards .event-card.card-grid {
  --pb-card-title-font-size: 1.15rem;
  --pb-card-body-font-size: var(--pb-font-size-sm);
  --pb-card-title-margin-bottom: 0;
  --pb-card-img-border-radius: 0.75rem;
  border: none;
  background-color: transparent;
  padding: 0;
  gap: 0.5rem;
  /* TSS-107: title is first and larger. The redundant "EVENT" label was
     removed from the markup, so its rule is gone with it. */
}
.events-cards .event-card.card-grid .event-card-header {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.events-cards .event-card.card-grid .event-card-header .card-title {
  white-space: normal !important;
  font-size: var(--pb-card-title-font-size);
  line-height: 1.3;
  height: calc(var(--pb-card-title-font-size) * 1.3 * 2);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  margin-bottom: 0;
  font-weight: var(--pb-font-weight-semibold);
}
.events-cards .event-card.card-grid {
  /* TSS-107: the poster no longer dominates the tile. A fixed aspect ratio
     caps its height, which used to run to about 300px on the four-across
     home grid and left the title and details as an afterthought. */
}
.events-cards .event-card.card-grid .card-img {
  position: relative;
  aspect-ratio: 16/10;
  border-radius: var(--pb-card-img-border-radius);
  overflow: hidden;
}
.events-cards .event-card.card-grid .card-img .card-img-top {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.events-cards .event-card.card-grid .au-status {
  top: 0.5rem;
  left: 0.5rem;
  right: auto;
}
.events-cards .event-card.card-grid .au-status .badge {
  --pb-badge-font-weight: var(--pb-font-weight-semibold);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-primary {
  --pb-badge-bg: var(--pb-color-primary);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-secondary {
  --pb-badge-bg: var(--pb-color-secondary);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-success {
  --pb-badge-bg: var(--pb-color-success);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-danger {
  --pb-badge-bg: var(--pb-color-danger);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-warning {
  --pb-badge-bg: var(--pb-color-warning);
  --pb-badge-color: var(--pb-color-black);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-info {
  --pb-badge-bg: var(--pb-color-info-200);
  --pb-badge-color: var(--pb-color-info-700);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-light {
  --pb-badge-bg: var(--pb-color-light);
  --pb-badge-color: var(--pb-color-black);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-dark {
  --pb-badge-bg: var(--pb-color-dark);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-open {
  --pb-badge-bg: var(--pb-color-success-700);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-closing {
  --pb-badge-bg: var(--pb-color-gray-300);
  --pb-badge-color: var(--pb-color-red-700);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-closed {
  --pb-badge-bg: var(--pb-color-red-700);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-scheduled {
  --pb-badge-bg: var(--pb-color-blue-700);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-preferred {
  --pb-badge-bg: var(--pb-color-blue-500);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-verified {
  --pb-badge-bg: var(--pb-color-blue-400);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-live-mode {
  --pb-badge-bg: var(--pb-color-red-800);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-account-mode {
  --pb-badge-bg: var(--pb-color-blue-800);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-store-info {
  --pb-badge-bg: var(--pb-color-gray-500);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-seller {
  --pb-badge-bg: var(--pb-color-blue);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-buyer {
  --pb-badge-bg: var(--pb-color-red);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-draft {
  --pb-badge-bg: var(--pb-color-light);
  --pb-badge-color: var(--pb-color-black);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-pending {
  --pb-badge-bg: var(--pb-color-gray-400);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-declined {
  --pb-badge-bg: var(--pb-color-red-800);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-withdrawn {
  --pb-badge-bg: var(--pb-color-yellow-500);
  --pb-badge-color: var(--pb-color-black);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-product {
  --pb-badge-bg: var(--pb-color-blue);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-classified {
  --pb-badge-bg: var(--pb-color-red);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-auction {
  --pb-badge-bg: var(--pb-color-green);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-activity-bids {
  --pb-badge-bg: var(--pb-color-green-500);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-activity-offers {
  --pb-badge-bg: var(--pb-color-orange-400);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-activity-sales {
  --pb-badge-bg: var(--pb-color-blue-400);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-count-lots {
  --pb-badge-bg: var(--pb-color-yellow-300);
  --pb-badge-color: var(--pb-color-yellow-800);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-listin-site {
  --pb-badge-bg: var(--pb-color-blue-600);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-listin-store {
  --pb-badge-bg: var(--pb-color-blue-700);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-listin-both {
  --pb-badge-bg: var(--pb-color-pink-500);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-homepage-featured {
  --pb-badge-bg: var(--pb-color-green-600);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-category-featured {
  --pb-badge-bg: var(--pb-color-red-600);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-offer {
  --pb-badge-bg: var(--pb-color-green-600);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-counter {
  --pb-badge-bg: var(--pb-color-red-700);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-blue {
  --pb-badge-bg: var(--pb-color-blue);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-green {
  --pb-badge-bg: var(--pb-color-green);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-red {
  --pb-badge-bg: var(--pb-color-red);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-gold {
  --pb-badge-bg: var(--pb-color-gold);
  --pb-badge-color: var(--pb-color-gold-800);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-black {
  --pb-badge-bg: var(--pb-color-gray-700);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-orange {
  --pb-badge-bg: var(--pb-color-orange);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-activity-in-cart {
  --pb-badge-bg: var(--pb-color-blue-700);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-activity-paid {
  --pb-badge-bg: var(--pb-color-green-600);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-activity-sold {
  --pb-badge-bg: var(--pb-color-green-400);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-high-bid {
  --pb-badge-bg: var(--pb-color-green-500);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .au-status .badge.text-bg-outbid {
  --pb-badge-bg: var(--pb-color-red-500);
  --pb-badge-color: var(--pb-color-white);
}
.events-cards .event-card.card-grid .event-details {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  color: var(--pb-color-gray-600);
}

/* ## -- ./ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] */
/* @version 10.0 [rev.01] */
.header-compact .categories-menu {
  justify-content: center;
}
body:not(.header-compact) .categories-menu .link__all-categories {
  margin-left: auto;
}
.categories-menu .link__all-categories {
  border-left: 1px solid var(--pb-color-gray-300);
}

.user-dropdown .form-sign-in {
  padding: 1rem;
}

/** @version 10.0 [rev.01] */
:root {
  --pb-form-element-border-radius: 3px;
}

.form-vertical {
  margin: 0 auto;
}

.form-voucher-fields {
  display: flex;
  gap: 4px;
}
.form-voucher-fields .btn {
  font-size: 15px;
  margin-bottom: 4px;
}

.form-purchase-confirm {
  width: 100%;
  max-width: 310px;
}

/* @version 10.0 [rev.01] */
.container-compact .sidebar-layout {
  --pb-grid-gap: 0;
  --pb-grid-background-color: var(--pb-color-white);
  --pb-grid-padding: 0.75rem;
}
.container-compact .sidebar-layout .main {
  --pb-grid-main-padding-x: 0;
}
@media (min-width: 992px) {
  .container-compact .sidebar-layout .sidebar {
    --pb-grid-sidebar-padding-x: 1rem;
    --pb-sidebar-border-right: 1px solid var(--pb-container-compact-border-color);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: var(--pb-sidebar-border-right);
  }
  .container-compact .sidebar-layout .main {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
}

/* @version 10.0 [rev.01] */
.sidebar-menu {
  --pb-sidebar-menu-li-ul-padding-left: 0.5rem;
}

.navbar-inline-filter .btn {
  font-size: 15px;
}

/* /SIDEBAR & CORRESPONDING MAIN ELEMENT */
header .desktop-navbar .user-dropdown {
  display: none !important;
}
header .desktop-navbar .fixed-top {
  border-bottom: 1px solid #95adc1;
  -webkit-box-shadow: 2px 1px 13px rgba(63, 130, 187, 0.7);
  -moz-box-shadow: 2px 1px 13px rgba(63, 130, 187, 0.7);
  box-shadow: 2px 1px 13px rgba(63, 130, 187, 0.7);
  background-color: #fff;
}
header .desktop-navbar .nav-search {
  padding: 0.65rem 1rem;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  background-clip: padding-box;
  border: none;
  border-bottom: 5px solid #4e555e;
  background: #cbdfef; /* Old browsers */
  background: -moz-linear-gradient(top, #cbdfef 0%, #818c99 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #cbdfef), color-stop(100%, #818c99)); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #cbdfef 0%, #818c99 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #cbdfef 0%, #818c99 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #cbdfef 0%, #818c99 100%); /* IE10+ */
  background: linear-gradient(to bottom, #cbdfef 0%, #818c99 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#cbdfef', endColorstr='#818c99', GradientType=0);
}
header .desktop-navbar .nav-search .btn-link,
header .desktop-navbar .nav-search #categoriesDropdown {
  color: #fff;
  font-weight: 500;
}
header .desktop-navbar .nav-menu {
  display: block;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
  background-clip: padding-box;
  padding: 0;
  border: 1px solid #e9e9e9;
  border-top: none;
}
header .desktop-navbar .nav-menu a {
  color: #21282F;
}
header .desktop-navbar .nav-menu a:hover {
  color: #21282F;
}
header .desktop-navbar .navbar-nav.nav-main-menu .nav-link {
  font-weight: 500;
  padding-left: 0;
  padding-right: 0;
  text-transform: uppercase;
}
header .desktop-navbar .navbar-nav.nav-main-menu .active .nav-link {
  color: #0056b3;
}

header .navbar-brand {
  max-width: 275px;
}
@media (max-width: 575.98px) {
  header .navbar-brand {
    max-width: 150px;
  }
}

.homepage-headline {
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
  background-clip: padding-box;
}
.homepage-headline > div {
  padding: 0.5rem 0.5rem 0.5rem 1rem;
}
.homepage-headline.hpfeat {
  background-color: #00b7eb;
}
.homepage-headline.hpfeat .h3 {
  color: #fff !important;
}
.homepage-headline.recent {
  background-color: #ffc904;
}
.homepage-headline.recent .h3 {
  color: #fff !important;
}
.homepage-headline.ending {
  background-color: #ec4000;
}
.homepage-headline.ending .h3 {
  color: #fff !important;
}
.homepage-headline.popular {
  background-color: #67bd2f;
}
.homepage-headline.popular .h3 {
  color: #fff !important;
}
.homepage-headline .h3 {
  font-size: 1.6rem;
  margin-bottom: 0;
}

.headline-categories {
  padding: 0.7rem 0.7rem 0.7rem 1rem;
  font-size: 1.2rem;
  font-weight: 600;
  background-color: rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: none;
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
  background-clip: padding-box;
  margin-bottom: 0;
}

.navbar-categories > li {
  font-size: 0.9rem;
  padding: 0.6rem 1.5rem;
}
.navbar-categories > li + li {
  border-left: 1px solid rgba(0, 0, 0, 0.1);
}
.navbar-categories .dropdown-toggle::after {
  display: none;
}
.navbar-categories .all-categories {
  font-weight: 500;
  background-color: rgba(0, 0, 0, 0.03);
}

.fs-dropdown:hover > .dropdown-menu {
  display: block;
}

.fs-dropdown-menu {
  margin-top: 0.05rem;
  padding-top: 20px;
  top: 100%;
  left: 0;
  width: 100%;
}

.masonry-layout {
  column-count: 3;
  column-gap: 0;
}

.masonry-layout__panel {
  -webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
  page-break-inside: avoid; /* Firefox */
  break-inside: avoid; /* IE 10+ */
  padding-left: 1rem;
}

.subcategory-header {
  color: #374151;
  font-weight: 500;
  font-size: 1.1rem;
}
.subcategory-header a {
  color: #374151;
  text-shadow: none;
}

.category-has-children .feather {
  color: #6b7280;
  width: 14px;
  height: 14px;
  margin-top: 4px;
}

.listing-card {
  position: relative;
}
.listing-card .card-seller {
  font-size: 0.9rem;
}
.card-grid .listing-card {
  border: none;
}
.card-grid .listing-card .btn-wishlist-async {
  position: absolute;
  right: 0.375rem;
  top: 0.375rem;
}
.listing-card .badge-vip-auction {
  position: absolute;
  z-index: 3;
  top: 0.375rem;
  left: 0.375rem;
}

main.container {
  position: relative;
}

#social-media-panel {
  left: -50px;
  position: absolute;
  top: 0;
  z-index: 20;
}
#social-media-panel a {
  display: block;
}
#social-media-panel a + a {
  margin-top: 0.5rem;
}

.fieldset {
  border: 3px solid #000;
  border-radius: 6px;
  padding: 30px 50px;
  position: relative;
}
.fieldset .legend {
  position: absolute;
  width: 330px;
  background-color: #fff;
  text-align: center;
  top: -17px;
  color: #000;
  font-size: 25px;
  text-transform: uppercase;
  font-weight: 600;
  left: 50%;
  margin-left: -165px;
}

.active-auctions-headline {
  font-weight: 500;
  margin: 1.5rem 0 3rem;
  text-align: center;
}

.card-listing-location {
  border-color: #dc3545;
  background-color: #fd7e14;
  color: #fff;
  font-weight: 700;
  font-size: 1.6rem;
}
.card-listing-location a {
  color: #fff !important;
}

.notifications-panel .feather {
  display: none;
}
@media (max-width: 575.98px) {
  .notifications-panel .feather {
    display: inherit;
  }
}
.notifications-panel .notification-text {
  display: inherit;
}
@media (max-width: 575.98px) {
  .notifications-panel .notification-text {
    display: none;
  }
}

@media (min-width: 992px) {
  .row-homepage-buttons .col-6 + .col-6 {
    padding-left: 0;
  }
}

.btn-homepage {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.5rem 1rem;
  color: #fff;
  font-size: 1.1rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  width: 100%;
  margin-bottom: 1rem;
}
@media (max-width: 991.98px) {
  .btn-homepage {
    white-space: normal;
  }
}
.btn-homepage:hover {
  color: #fff;
}
.btn-homepage .feather {
  width: 50px;
  height: 50px;
  display: block;
  margin: 0 auto 1rem;
}
.btn-homepage.btn-homepage-items {
  background-color: #253b51;
}
.btn-homepage.btn-homepage-items:hover {
  background-color: #131e29;
}
.btn-homepage.btn-homepage-pallets {
  background-color: #5e81a9;
}
.btn-homepage.btn-homepage-pallets:hover {
  background-color: #4d6a8b;
}
.btn-homepage.btn-homepage-truckloads {
  background-color: #85919d;
}
.btn-homepage.btn-homepage-truckloads:hover {
  background-color: #677079;
}
.btn-homepage.btn-homepage-vip-buyers {
  background-color: #8d9a66;
}
.btn-homepage.btn-homepage-vip-buyers:hover {
  background-color: #6c764e;
}
.btn-homepage.btn-homepage-live-sales {
  background-color: #5f6ba9;
}
.btn-homepage.btn-homepage-live-sales:hover {
  background-color: #4d5789;
}

.btn-lg .feather {
  width: 20px;
  height: 20px;
}

.listing-details .form-label-group input:not(:placeholder-shown) {
  font-size: 1.5rem;
  font-weight: 600;
}

.nav-pills-vip-buyer .nav-link {
  font-size: 24px !important;
  background-color: #f0f0f0 !important;
}
.nav-pills-vip-buyer .nav-link .feather {
  width: 24px;
  height: 24px;
  margin-right: 10px;
}
.nav-pills-vip-buyer .nav-link.active {
  background-color: #0E518B !important;
}
.nav-pills-vip-buyer .nav-item + .nav-item {
  margin-left: 1rem;
}

/* ── First Name / Last Name captions ──
   [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-07-29)
   The Name row is a composite element rendering two inputs (name[first] / name[last]).
   They used to sit unlabelled under a single "Name" label, which read as one field
   mysteriously split in two. addons/custom/library/Ppb/Form/Element/FullName.php now
   gives each input its own caption; this lays the pair out side by side. */
.full-name-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
}
.full-name-fields .full-name-field {
  flex: 1 1 12rem;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.full-name-fields .full-name-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: #6c757d;
  margin-bottom: 0.2rem;
}
.full-name-fields .input-full-name {
  width: 100%;
}

/* ══════════════════════════════════════════════════════════
   HOME PAGE  [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-07-29)
   Replaces two stacked full-width marketing images with a compact hero and
   three event shelves (Live Now / Upcoming / Date To Be Confirmed).
   ══════════════════════════════════════════════════════════ */
.home-hero {
  padding: 2.25rem 0 1.5rem;
  text-align: center;
}
.home-hero .home-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--pb-color-primary, #0065d3);
  background: var(--pb-color-primary-50, #e6f2ff);
  border-radius: 999px;
  padding: 0.28rem 0.8rem;
  margin-bottom: 0.85rem;
}
.home-hero .hh-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #e0245e;
  animation: hh-pulse 1.6s ease-in-out infinite;
}
.home-hero .home-hero-title {
  font-size: clamp(1.5rem, 3.6vw, 2.4rem);
  font-weight: 800;
  line-height: 1.15;
  margin: 0 auto 0.6rem;
  max-width: 22ch;
}
.home-hero .home-hero-sub {
  font-size: 0.95rem;
  color: var(--pb-color-gray-500, #6b7280);
  margin: 0 auto;
  max-width: 52ch;
}
@media (max-width: 575px) {
  .home-hero {
    padding: 1.5rem 0 1rem;
  }
}

@keyframes hh-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
/* admin-editable announcement slot (Home Page HTML setting) */
.home-announcement {
  margin: 0 0 1.5rem;
  padding: 0.85rem 1.1rem;
  background: var(--pb-color-gray-50, #f9fafb);
  border: 1px solid var(--pb-color-gray-200, #e5e7eb);
  border-radius: 10px;
  font-size: 0.9rem;
}
.home-announcement :last-child {
  margin-bottom: 0;
}
.home-announcement img {
  max-width: 100%;
  height: auto;
}

/* one shelf of event tiles */
.event-shelf {
  margin-bottom: 2.5rem;
}
.event-shelf .event-shelf-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.35rem 1rem;
  padding-bottom: 0.6rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid var(--pb-color-gray-200, #e5e7eb);
}
.event-shelf .event-shelf-title {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 1.15rem;
  font-weight: 700;
  margin: 0;
}
.event-shelf .event-shelf-count {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--pb-color-gray-500, #6b7280);
  background: var(--pb-color-gray-100, #f3f4f6);
  border-radius: 999px;
  padding: 0.1rem 0.5rem;
}
.event-shelf .event-shelf-meta {
  display: flex;
  align-items: baseline;
  gap: 0.9rem;
}
.event-shelf .event-shelf-note {
  font-size: 0.78rem;
  color: var(--pb-color-gray-500, #6b7280);
}
.event-shelf .event-shelf-all {
  font-size: 0.8rem;
  font-weight: 600;
  white-space: nowrap;
  text-decoration: none;
}
.event-shelf .event-shelf-all .bi {
  font-size: 0.7rem;
}
.event-shelf {
  /* the "live now" shelf gets the recording dot */
}
.event-shelf .shelf-live-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #e0245e;
  box-shadow: 0 0 0 3px rgba(224, 36, 94, 0.18);
  animation: hh-pulse 1.6s ease-in-out infinite;
  flex: 0 0 auto;
}
@media (max-width: 575px) {
  .event-shelf {
    margin-bottom: 1.75rem;
  }
  .event-shelf .event-shelf-note {
    display: none;
  }
}
.event-shelf {
  /* (2026-08-13) TSS-108: on desktop the titles must outrank the 16px tile
     titles, and the now-bordered tiles need more room between shelves */
}
@media (min-width: 992px) {
  .event-shelf {
    margin-bottom: 3rem;
  }
  .event-shelf .event-shelf-title {
    font-size: 1.35rem;
  }
}

/* ## -- ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-13) TSS-108 pass 1:
   on desktop the flat event tiles read as clutter (1/1 artwork filling 76% of
   the tile, no surface, 24x16px grid gaps, measured on dev-live at 1920x1080),
   so the home shelves and the events browse get a bordered tile with 4/3
   artwork and a ranked type scale. Scoped to those two surfaces: the
   listing-details event strip keeps its borderless look (_listing-details.scss
   sets --pb-card-border-color: transparent), and everything sits behind
   media-md-up so the phone tiles and the under-600px live overlay are
   untouched. */
@media (min-width: 992px) {
  .tss-fp-events .events-cards,
  .listings-browse .events-cards {
    --pb-cards-gap: 2rem 1.5rem;
  }
  .tss-fp-events .events-cards .event-card.card-grid,
  .listings-browse .events-cards .event-card.card-grid {
    --pb-media-aspect-ratio: 4 / 3;
    --pb-card-img-border-radius: 0.5rem;
    --pb-card-body-font-size: 0.8125rem;
    border: 1px solid var(--pb-color-gray-200);
    border-radius: var(--pb-border-radius-lg);
    background-color: var(--pb-color-white);
    padding: 0.875rem;
    gap: 0.75rem;
  }
  .tss-fp-events .events-cards .event-card.card-grid .event-details,
  .listings-browse .events-cards .event-card.card-grid .event-details {
    gap: 0.25rem;
  }
  .tss-fp-events .events-cards .event-card.card-grid .event-details-data,
  .listings-browse .events-cards .event-card.card-grid .event-details-data {
    font-weight: var(--pb-font-weight-semibold);
  }
}
/* ## -- ./ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] */
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-09) TSS-50 / TSS-54: seller "Live Events"
   list (members/selling/events) - sortable Status column header, and labelled (not
   icon-only) Actions buttons. Scoped to .table-selling-events so every other Selling
   Browse table (auction/product/classified), which shares this same markup, keeps the
   compact icon-only buttons it had before. Migrated from a hand-appended block at the
   tail of the compiled theme.css on 2026-08-12 (TSS-91): the old block claimed sass was
   unavailable here, but `npx sass` compiles this theme fine, and rules living only in
   the compiled file are silently dropped by the next legitimate recompile. */
.table-selling-events .sortable-column-header {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  color: inherit;
  text-decoration: none;
}
.table-selling-events .sortable-column-header:hover {
  text-decoration: underline;
}

.table-selling-events .size-actions {
  width: auto;
  min-width: 220px;
}

.table-selling-events .buttons-grouped.buttons-labeled-left {
  align-items: center;
}
.table-selling-events .buttons-grouped.buttons-labeled-left a {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 0.35rem;
  white-space: nowrap;
}
.table-selling-events .buttons-grouped.buttons-labeled-left span:not(.feather) {
  display: inline;
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-09) TSS-55: on the seller Create/Edit Event
   form's Content & Media section, the "Saved Images" and "Upload New Image" (renamed from
   "Images") field labels are sized up to match the "Pickup Location" section heading
   (h4.section-title, Bootstrap's h4 = 1.5rem / weight 500), so the three headings read at
   the same visual weight. Applied via a span wrapped around the label value in
   addons/live-auctions/library/Ppb/Model/Elements/Listing/AuctionEvents.php and
   addons/custom/library/Ppb/Model/Elements/Listing.php rather than a new .col-form-label
   override, so no other form on the site is affected. Migrated from the compiled-file
   tail on 2026-08-12, same as the TSS-50 block above. */
.tss-field-heading-lg {
  font-size: 1.5rem;
  font-weight: 500;
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-12) TSS-91: seller "Live Events" list
   (members/selling/events) on phones. At 390px the desktop table is 1200px wide
   (--pb-table-responsive-min-width) inside .table-responsive, so the Manage Event / Edit /
   List Similar / Delete buttons sit two viewports off-screen with no visible hint that
   the table pans sideways. Below 768px the events table restacks into one card per event
   so every action is on screen. Scoped to .table-selling-events so the other Selling
   Browse tables keep their desktop table layout. The base .buttons-grouped rule already
   provides flex plus wrap, only its gap token is widened here. */
@media (max-width: 767.98px) {
  .table-selling-events,
  .table-selling-events caption,
  .table-selling-events tbody,
  .table-selling-events tr,
  .table-selling-events td {
    display: block;
  }
  /* the header row collapses with the table, but its first cell keeps the
     select-all checkbox for the bulk actions bar, labelled by the
     events-scoped mobile-only span browse.phtml renders next to it. The
     remaining column headings duplicate what each card already shows (title,
     type badge, status badge, labelled buttons), so they stay hidden. */
  .table-selling-events thead,
  .table-selling-events thead tr {
    display: block;
  }
  .table-selling-events thead th {
    display: none;
  }
  .table-selling-events thead th:first-child {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border: 0;
    padding: 0.25rem 0 0.75rem;
    white-space: nowrap;
  }
  /* the base `.table-responsive .table` min-width rule has specificity
     (0,2,0), so this selector carries three classes rather than relying on
     source order alone */
  .table-responsive .table.table-selling-events {
    min-width: 0;
  }
  .table-selling-events tr {
    border: 1px solid var(--pb-default-box-border-color);
    border-radius: var(--pb-border-radius);
    padding: 0.75rem;
    margin-bottom: 1rem;
    background-color: var(--pb-default-box-bg);
  }
  .table-selling-events td {
    border: 0;
    padding: 0.25rem 0;
  }
  .table-selling-events .selling-events-actions {
    border-top: 1px solid var(--pb-default-box-border-color);
    margin-top: 0.5rem;
    padding-top: 0.75rem;
  }
  .table-selling-events .buttons-grouped.buttons-labeled-left {
    --pb-buttons-grouped-gap: 0.5rem;
  }
  .table-selling-events .buttons-grouped.buttons-labeled-left a {
    padding: 0.5rem 0.75rem;
    min-height: 44px;
    border: 1px solid var(--pb-default-box-border-color);
    border-radius: var(--pb-border-radius);
  }
}
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-12) TSS-92: the Create/Edit Event form is
   about nine phone screens tall and the base _forms.scss hides its section navigator
   (.setup-sidebar) entirely below 992px, so editing one field means scrolling the whole
   form blind. The navigator is re-shown on small screens as a horizontally scrollable
   chip bar stuck to the top of the viewport. Anchored section headings get
   scroll-margin-top so a tapped chip does not land the heading under the bar, and the
   sticky Proceed bar adds the safe-area inset where the browser reports one. This form
   (forms/listing.phtml) also serves lot and listing create/edit, so those forms gain the
   same chip bar below 992px on purpose, they are just as tall. */
@media (max-width: 991.98px) {
  .form-listing .setup-sidebar {
    display: block;
    position: sticky;
    top: 0;
    z-index: 16; /* one above the sticky Proceed bar (z-index 15) */
    margin: 0 0 1rem;
    padding: 0.5rem 0;
    background-color: var(--pb-body-bg);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .form-listing .setup-sidebar .nav {
    /* the ul carries Bootstrap's .flex-column utility, which is !important */
    flex-direction: row !important;
    flex-wrap: nowrap;
    gap: 0.5rem;
  }
  .form-listing .setup-sidebar .nav-item {
    padding-bottom: 0;
    white-space: nowrap;
  }
  .form-listing .setup-sidebar .nav-item .vertical-line {
    display: none;
  }
  .form-listing .setup-sidebar .sidebar-row {
    border: 1px solid var(--pb-default-box-border-color);
    border-radius: 999px;
    padding: 0.25rem 0.75rem 0.25rem 0.25rem;
    background-color: var(--pb-color-white);
  }
  .form-listing .setup-sidebar .nav-item .setup-sidebar-icon {
    width: 1.75rem;
    height: 1.75rem;
    min-width: 1.75rem;
  }
  .form-listing .section-title {
    scroll-margin-top: 4.5rem;
  }
}
.form-buttons.buttons-sticky-bottom {
  /* keeps the base .75rem and adds the inset where the browser reports one
     (0 until the page opts into viewport-fit=cover) */
  padding-bottom: calc(0.75rem + env(safe-area-inset-bottom, 0px));
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-12) TSS-93: the account drawer
   (.sidebar[data-id=main-navigation]) expands to ~57 links over two screens with about
   4px of indent per level, several branches open at once and collapse chevrons that
   point left whether open or closed. The base rule reads its indent from the
   --pb-sidebar-menu-li-ul-* tokens, so they are widened here token-level, the collapse
   chevrons follow the convention (right when closed, down when open, through the
   theme's existing `open`-class mechanism), rows get comfortable touch padding, and
   the pinned Events /
   Create Event shortcuts under the drawer heading get their row layout. One-branch-
   at-a-time collapsing lives in themes/tss-10/assets/js/theme.js. */
.sidebar[data-id=main-navigation] {
  --pb-sidebar-menu-li-ul-margin-left: 0;
  --pb-sidebar-menu-li-ul-padding-left: 1rem;
}
.sidebar[data-id=main-navigation] .au-sidebar-shortcuts {
  display: flex;
  gap: 0.5rem;
  padding: 0.25rem 0 0.75rem;
}
.sidebar[data-id=main-navigation] .au-sidebar-shortcuts .btn {
  flex: 1 1 0;
}
.sidebar[data-id=main-navigation] .nav-link {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.sidebar[data-id=main-navigation] {
  /* the theme already rotates the chevron through the toggle's `open`
     class (global.js toggles it, `.sidebar .nav-link.open .bi` rotates -90).
     These rules reuse that mechanism: collapsed chevrons turn from the stock
     leftward `<` to a conventional rightward `>`, and the open state keeps
     the theme's downward `v`, restated here because this block's selectors
     are more specific than the base open rule. */
}
.sidebar[data-id=main-navigation] .nav-dropdown-toggle .bi {
  transition: transform 0.2s ease;
  transform: rotate(180deg);
}
.sidebar[data-id=main-navigation] .nav-dropdown-toggle.open {
  font-weight: var(--pb-font-weight-medium);
}
.sidebar[data-id=main-navigation] .nav-dropdown-toggle.open .bi {
  transform: rotate(-90deg);
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-12) TSS-94 / TSS-96 mobile papercuts.
   TSS-94: the Lots In Event picker's add/remove controls are bare 16px icons, far
   under a usable touch size. TSS-96: the fixed cookie banner (z-index 20) sat on top
   of the sticky task bars (z-index 15), covering Proceed/bulk buttons until dismissed,
   so on pages that have a sticky bar the banner lifts above it instead (browsers
   without :has() keep today's behavior). */
.form-listing .jq-thumb .jq-thumb-add,
.form-listing .jq-thumb .jq-thumb-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  font-size: 1.5rem;
  cursor: pointer;
}

/* the click handler skips disabled remove controls, keep the honest cursor */
.form-listing .jq-thumb .jq-thumb-remove.disabled {
  cursor: not-allowed;
}

/* keyed to VISIBLE bars: .buttons-sticky-bottom-active is toggled by
   stickyButtons() in assets/js/functions.js alongside its display flips, and
   the edit form's #listingFormButtons only carries .buttons-sticky-bottom
   while it is stuck (listing-setup-form.js adds it past 250px of scroll), so
   a present-but-hidden bar no longer floats the banner. */
body:has(.buttons-sticky-bottom-active) .cookie-usage,
body:has(.form-buttons.buttons-sticky-bottom) .cookie-usage {
  bottom: 5.5rem;
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-12) centre the mobile header logo.
   The mobile navbar row is a Bootstrap space-between flex with the hamburger on the
   left and an empty trailing cart slot, so the logo lockup lands about 15px right of
   the true centre. Pin the toggler out of the centring flow and centre the lockup on
   the viewport. Scoped to the mobile navbar, the desktop header is untouched. */
.mobile__navbar > .d-flex.justify-content-between {
  position: relative;
  justify-content: center !important;
}
.mobile__navbar > .d-flex.justify-content-between > .sidebar-toggler {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-13) TSS-123 create/edit listing form,
   desktop. At 1280px the elements column is ~940px wide but the standard input size
   classes cap the main fields at 190-270px, leaving the right half of the form empty
   while addresses and dates render cramped. Widen the mid-size inputs inside the
   listing form only. The deliberately compact numeric fields (input-tiny/mini/small:
   zipcode, countdown seconds, bid increment) keep their sizes. */
@media (min-width: 1200px) {
  .form-listing .elements .input-default {
    width: min(320px, 100%);
  }
  .form-listing .elements .input-medium {
    width: min(420px, 100%);
  }
  .form-listing .elements .input-large {
    width: min(520px, 100%);
  }
}
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-13) TSS-123 the cookie banner (fixed,
   350px wide, z-index 20, bottom right) sat directly over the create form's field
   column at 1280px and swallowed clicks (Close Lot Countdown, the hide-lots checkbox)
   until dismissed. On pages carrying the listing wizard it becomes a slim full-width
   bottom bar with the button inline, and the page reserves matching bottom space, so
   every control can always be scrolled clear of it. The TSS-96 rule above still lifts
   it over a visible sticky button bar. Browsers without :has() keep stock behavior. */
body:has(.form-steps-header-wrapper) .cookie-usage {
  left: 8px;
  right: 8px;
  width: auto;
  display: flex;
  align-items: center;
  gap: 1rem;
}
body:has(.form-steps-header-wrapper) .cookie-usage > .mb-3 {
  margin-bottom: 0 !important;
  flex: 1 1 auto;
}

body:has(.form-steps-header-wrapper):has(.cookie-usage) {
  padding-bottom: 90px;
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-16) TSS-99 mobile drawer touch
   targets. The audit's third item: the drawer's togglers were already 44px, but
   every nav row rendered 34px tall and the pinned shortcut buttons 39px, both
   under the 44px minimum (WCAG 2.5.8 AAA / Apple HIG). Measured on dev-live at
   the audit's 390x844 viewport before this change.

   min-height rather than padding, so a row that wraps to two lines still grows.
   Flex centering keeps the label vertically centred inside the taller row, and
   the recursive accordion rows (App/view/navigation/sidebar.phtml) share these
   same .nav-link / .nav-dropdown-toggle classes, so one rule covers every depth.
   Scoped to the mobile breakpoint: the desktop sidebar is pointer-driven and its
   denser rows are deliberate. */
@media (max-width: 991.98px) {
  .sidebar.sidebar-fixed-mobile .nav-link {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
  .sidebar.sidebar-fixed-mobile .au-sidebar-shortcuts .btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
}
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-17) TSS-156: the Members invoices grid on
   phones. One template, members/invoices/browse.phtml, renders Selling > Sales
   (type=sold), Buying > Purchases (type=bought) and the admin sales grid, and all three
   overflowed the same way.

   Measured on dev-live at 390x844 before this change. The page itself did not scroll,
   documentElement.scrollWidth and clientWidth were both 390. The overflow lived inside
   .table-responsive, whose clientWidth at that viewport is 334px. The base rule
   `.table-responsive .table { min-width: var(--pb-table-responsive-min-width) }`
   (../../../../assets/css/components/_tables.scss, inside media-lg-down) matched TWO
   tables, not one: the invoices grid AND the nested per-sale table that
   partials/sale.phtml renders inside every Sale Details cell. The nested one alone was
   1200px, which widened its cell to 1216px and the grid to 1371px, so the whole Actions
   column sat between x=1188 and x=1392, roughly 1000px of sideways dragging to reach
   Edit, Update Shipping and the two payment and shipping status buttons, with no visible
   hint that the region pans.

   Below 768px the grid restacks into one card per invoice so every action is on screen.
   Scoped to .table-invoices so the other .table-responsive grids keep their desktop
   layout, and every selector below uses child combinators. A descendant selector would
   also restack the nested per-sale table, which is a real table of line items and totals
   and is supposed to stay a table.

   Mirrors the TSS-91 events-list block above deliberately, so the two phone card layouts
   in the members area read the same way. */
@media (max-width: 767.98px) {
  .table-invoices,
  .table-invoices > caption,
  .table-invoices > thead,
  .table-invoices > thead > tr,
  .table-invoices > tbody,
  .table-invoices > tbody > tr,
  .table-invoices > tbody > tr > td {
    display: block;
  }
  /* the header row collapses with the grid, but its first cell keeps the select-all
     checkbox that drives the Combine / Delete / Pay Sale Transaction Fees bulk bar,
     labelled by the mobile-only span browse.phtml renders next to it. The remaining
     headings (Sale Details, Origin, Actions) only repeat what each card already shows. */
  .table-invoices > thead > tr > th {
    display: none;
  }
  /* the two headings that stay on screen share their box, and differ only in how
     they lay their own contents out. */
  .table-invoices > thead > tr > th:first-child,
  .table-invoices > thead > tr > th.invoices-th-origin {
    border: 0;
    padding: 0.25rem 0 0.75rem;
    white-space: nowrap;
    width: auto;
  }
  .table-invoices > thead > tr > th:first-child {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  /* [ codex round 1, TSS-156 ] the hiding rule above is right for headings that only
     LABEL a column, which is what "Sale Details" and "Actions" are. It was wrong for
     the admin-only "Origin" heading, which carries a sort LINK, so below 768px an
     admin lost a control rather than a repeated word. The rule this repo works to is
     that no control may disappear on any viewport the page serves, and the before and
     after inventories missed it because they were taken as seller, buyer and guest,
     never as admin.

     So the header row stays a flex row and the Origin heading stays in it, pushed to
     the trailing edge beside the select-all checkbox. Non-admin views render no such
     cell and the row simply holds one item, which flex handles the same way block
     did. */
  .table-invoices > thead > tr {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
  }
  .table-invoices > thead > tr > th.invoices-th-origin {
    /* display, because the rule above hides every heading and `none` is not
       undone by a flex parent blockifying its items. */
    display: block;
    margin-left: auto;
  }
  /* the base `.table-responsive .table` min-width rule has specificity (0,2,0), so these
     selectors carry enough classes to win on specificity rather than source order alone.
     The second one is the nested per-sale table, which is the larger half of the problem,
     it is a descendant of the same .table-responsive and picks the rule up too. */
  .table-responsive .table.table-invoices,
  .table-responsive .table.table-invoices .table {
    min-width: 0;
  }
  .table-invoices > tbody > tr {
    border: 1px solid var(--pb-default-box-border-color);
    border-radius: var(--pb-border-radius);
    padding: 0.75rem;
    margin-bottom: 1rem;
    background-color: var(--pb-default-box-bg);
  }
  .table-invoices > tbody > tr > td {
    border: 0;
    padding: 0.25rem 0;
    width: auto;
  }
  .table-invoices > tbody > tr > td.invoices-select {
    display: flex;
    align-items: center;
    min-height: 44px;
  }
  .table-invoices > tbody > tr > td.invoices-actions {
    border-top: 1px solid var(--pb-default-box-border-color);
    margin-top: 0.5rem;
    padding-top: 0.75rem;
  }
  /* the buttons are a .buttons-grouped flex row that already wraps, only the gap token is
     widened and the targets are brought up to 44px, matching TSS-99. */
  .table-invoices .buttons-grouped {
    --pb-buttons-grouped-gap: 0.5rem;
  }
  .table-invoices .buttons-grouped .btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  /* The nested per-sale table stays a table, it is line items and totals. But it is
     table-layout:fixed carrying pixel column widths from the base `.table .size-NN`
     loop, 60px for Qty and 160px each for Price and Subtotal on top of an auto first
     column, so it could not go below 380px inside a card whose content box is about
     308px, and it still left about 87px of pan inside .table-responsive after the
     min-width fix. Those three widths
     are re-expressed as percentages of the card through the tokens the base rule
     already reads, which keeps table-layout:fixed and its predictable columns while
     letting the whole thing fit. The percentages leave the Listing column and the
     totals block about 165px and the two totals columns about 84px each, measured at
     390px, which is enough for "Buyers Premium" over two lines and any money value on
     one. The font drops one step for the same reason. Scoped under .table-invoices, so
     the same partial on the invoice detail page and in the e-mail templates is
     untouched. */
  .table-invoices .table-sale {
    --pb-table-size-60-width: 11%;
    --pb-table-size-160-width: 25%;
    width: 100%;
    font-size: var(--pb-font-size-sm);
  }
  /* only breaks a word that cannot fit on its own line, unlike word-break, which would
     hyphenless-split short headings such as Subtotal in a narrow column */
  .table-invoices .table-sale > thead > tr > th,
  .table-invoices .table-sale > tbody > tr > td {
    overflow-wrap: break-word;
  }
  /* .dl-variable floats its dt and makes the dd a table-cell, which is a good horizontal
     label/value pair on a wide screen and a bad one at 167px. The dt for "Pick-up
     Address" alone measures 118px there, leaving the first line of the value about 47px,
     so even a short word such as the city name got split across two lines. Stacked, the
     value gets the full card width and only a genuinely unbreakable token, a long e-mail
     address, still has to break. */
  .table-invoices .dl-variable dt {
    float: none;
    clear: none;
    padding-right: 0;
  }
  .table-invoices .dl-variable dd {
    display: block;
    padding-left: 0;
    margin-left: 0;
  }
}
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-17) TSS-156: the invoice detail page
   (members/invoices/view). This page DID overflow the document, 423px against a 390px
   viewport, measured on dev-live before the change. The offender was the Code 128 barcode
   PNG in the invoice headline, generated at 3px per bar so about 204px wide for a
   six-digit sale id. It sits in a `d-flex justify-content-between` row, and a flex item's
   default min-width:auto refuses to shrink below its content, so the row pushed the whole
   page 33px wider than the screen and the barcode was clipped anyway.

   Not scoped to a breakpoint, because on desktop the column is far wider than the image
   and max-width:100% is inert there.

   [ codex round 1, TSS-156 ] It IS scoped to screen. The earlier version of this comment
   argued print was unaffected because the generated PNG is unchanged and paper is wider
   than the image. That is reasoning about print, not a measurement of it, and a barcode
   that shrinks is a barcode a scanner may not read. @media screen puts the question
   beyond argument, at the cost of one nesting level. */
@media screen {
  .invoice-barcode {
    min-width: 0;
  }
  .invoice-barcode-image {
    max-width: 100%;
    height: auto;
  }
}
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-17) TSS-159 mobile drawer Sign Out.
   Sign Out is the last row of the members accordion inside the drawer, so its
   position depends on how many accordion branches the current page auto-expands.
   Measured on dev-live at 390x844 signed in as `seller` with the drawer open. On
   /members/selling/sales the drawer scrollHeight was 1225 against an 844
   clientHeight and the Sign Out row sat at y=1165, 321px below the fold, reachable
   only after 381px of scrolling past 26 rows with no scroll affordance on screen.
   On /members/summary and on / the same control sat at y=549 and was visible. The
   same control being present on one page and absent on another is what made it
   read as missing.

   Option taken, TSS-159 option 1, make the control ALWAYS VISIBLE WITHOUT SCROLLING.
   The row is emitted as the drawer last child in
   themes/tss-10/navigation/header-unified.phtml and made sticky to `bottom: 0` inside
   the drawer own scroll container, since .sidebar is `overflow-y: auto` and is
   therefore the scrollport. That mirrors the drawer heading, which is already sticky
   to `top: 0`.

   Be precise about what sticky does here, because the ticket wording says pinned and
   that is not quite what the code does. `bottom: 0` never pushes a naturally higher
   element DOWN, it only stops one being scrolled below the scrollport. So on a drawer
   whose content is shorter than the viewport the row sits at its natural place, y=558,
   with white space beneath it, and it is only visually at the bottom edge on a drawer
   that overflows. What is guaranteed on every page is that it is on screen and
   clickable at any scroll position, including scroll 0, which is what the ticket
   actually asked for.

   Genuine bottom anchoring was TRIED and REJECTED on evidence, on 2026-08-17. Making
   the drawer `display: flex; flex-direction: column` with `margin-top: auto` on this
   bar failed twice over, measured at 390x844. It did not even work, the row stayed at
   y=558 on the short pages because the nav list already consumes the free space. And
   it broke the long page, every one of the 27 rows below the heading shifted up 44px,
   the drawer scrollHeight fell from 1234 to 1190, and the sticky heading was dragged to
   y=-14 so the CLOSE MENU BUTTON became unreachable at every scroll position on
   /members/selling/sales. Losing a drawer control to a layout change is the exact
   failure the repo rule about preserving controls exists to prevent. Do not reapply
   flex here without re-measuring those numbers.

   The accordion no longer emits its own Sign Out row for this drawer at all, so the
   markup carries exactly ONE anchor and nothing here has to hide a duplicate. The
   opt-out is a view global set and cleared around the drawer render in
   themes/tss-10/navigation/header-unified.phtml and read in
   module/Members/view/partials/members-sidebar.phtml. Doing it in the markup rather
   than with a `display: none` matters because themes/tss-10/layout.phtml links this
   stylesheet at an UNVERSIONED url, so a browser holding the previous theme.css is a
   reachable state right after a deploy. Under a stale or missing stylesheet the drawer
   now degrades to one ordinary un-stuck Sign Out row, which is the pre-change
   behaviour, rather than to two.

   Guests are deliberately unchanged. Their drawer renders Sign In and Register
   instead of Sign Out and both already sit in the first screen, measured at y=321
   and y=277 at 390x844. */
.sidebar[data-id=main-navigation] .au-sidebar-account-actions {
  position: sticky;
  bottom: 0;
  /* the drawer heading is sticky at z-index 1. Match it, so this bar sits
     above the scrolling rows without ever covering the heading. */
  z-index: 1;
  /* the drawer own horizontal padding is 1rem, pull the bar full-bleed so
     its background covers the rows scrolling underneath it edge to edge */
  margin: 0.5rem -1rem 0;
  padding: 0 1rem;
  /* opaque, matching the drawer itself. The heading rgba-white-80 is
     deliberately not reused here, because content scrolls under this bar. */
  background-color: var(--pb-sidebar-bg, var(--pb-color-white));
  border-top: 1px solid var(--pb-color-rgba-black-10);
  /* The drawer also pads itself 1rem at the BOTTOM, and because the drawer is
     the scroll container, rows scroll up through that band. A sticky element
     cannot be pushed past its containing block, which ends at the drawer
     content box, so the bar stops 1rem short of the drawer bottom edge and the
     next row underneath showed as a sliver below it. Measured at 390x844 on
     /members/selling/sales, bar bottom y=828 against a drawer bottom of y=844.
     This paints the same background across that band, without changing layout
     or the drawer scroll height. */
}
.sidebar[data-id=main-navigation] .au-sidebar-account-actions::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 1rem;
  background-color: inherit;
}
.sidebar[data-id=main-navigation] .au-sidebar-account-actions .nav-link {
  /* TSS-99 44px minimum touch target, restated because that rule is
     scoped to rows inside the nav list */
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  padding-top: 0.5rem;
  /* keep the row clear of a gesture bar on notched phones */
  padding-bottom: calc(0.5rem + env(safe-area-inset-bottom, 0px));
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-18) TSS-95 part 1, applies to EVERY panel
   using the stock mobile filter pattern, not only the sheet below.

   assets/css/components/_navbars.scss hides the collapsed panel with `opacity: 0,
   height: 0, z-index: -1` and no `visibility`, so on a phone the controls keep their boxes,
   paint invisibly over whatever is behind them, and stay in the keyboard tab order.
   Measured on dev-live at 390x844 on members/selling/events before the change: tabbing
   forward from the Filter button walked through five invisible controls before reaching
   the table. That is a defect in the hiding primitive rather than a layout opinion, so it
   is fixed for every consumer, which is also Members invoices browse and Admin users
   browse. Nothing visible or measurable changes, only paint and focusability.

   Three classes rather than two so this wins outright instead of by import order. */
@media (max-width: 575.98px) {
  .navbar-inline-filter.navbar-inline-filter-hidden-mobile .form-inline {
    visibility: hidden;
  }
  .navbar-inline-filter.navbar-inline-filter-hidden-mobile .form-inline-visible {
    visibility: visible;
  }
}

/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-18) TSS-95 part 2, the mobile filter sheet
   for the Selling Browse pages (members/selling/events and its auction, product,
   classified and draft-lot siblings, which all render
   module/Members/view/members/selling/browse.phtml).

   The panel is an inline block, so opening it pushed the results the seller came for off
   the screen. Below 576px, which is the width at which .btn-filter is shown at all, it
   becomes a bottom sheet over a dimmer with Event Name leading, Event ID / SKU / Export to
   CSV behind a "More options" disclosure, and Search plus Reset pinned to the bottom edge.
   The measurements behind this are in TSSLive/CHANGELOG.md under TSS-95 rather than
   repeated here.

   No new javascript. The sheet is toggled by the stock .btn-filter handler in
   assets/js/global.js, which the header close control reuses by carrying that class, and
   the disclosure is Bootstrap's collapse data-api.

   DECISION worth recording rather than leaving implicit. Bootstrap's own
   `.navbar-expand-sm` plus `.offcanvas-bottom` expresses most of this component already,
   and would bring a focus trap, escape-to-close and a body scroll lock for free. Taking it
   would mean moving this nav off the shared .btn-filter handler that about twenty other
   templates use, and neutralising the stock .navbar-inline-filter-hidden-mobile rules for
   this one nav. That is a larger and riskier change than this ticket, so it is deferred
   deliberately. What this sheet does NOT do, stated plainly rather than claimed away, is
   trap focus. Tabbing past Reset walks on into the page behind the dimmer. The pre-change
   panel trapped nothing either. */
/* 576px and up, layout unchanged. The three wrappers exist only to give the phone layout
   something to group and order, so `display: contents` dissolves them and their children
   go back to being direct flex items of .form-inline, with its own gap and wrap rather
   than a hand-copied approximation of them. .tss-filter-more also has to beat Bootstrap's
   `.collapse:not(.show)` at (0,2,0), which is why that one selector carries three classes
   and the other does not. */
@media (min-width: 576px) {
  .tss-filter-sheet .form-inline .tss-filter-more,
  .tss-filter-sheet .tss-filter-sheet-actions {
    display: contents;
  }
}
@media (max-width: 575.98px) {
  /* the sheet pads itself at the sides and the top only. The pinned action row supplies
     the bottom padding, so `bottom: 0` puts it flush against the scrollport edge with no
     band of padding left underneath it. Both sticky bars pull themselves full bleed with
     a negative margin of exactly this value, so it lives in one place. */
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .form-inline {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1050;
    max-height: 85vh;
    display: flex;
    flex-flow: column;
    gap: 0.5rem;
    padding: 0 1rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    background-color: var(--pb-color-white);
    border-radius: var(--pb-border-radius) var(--pb-border-radius) 0 0;
    box-shadow: 0 -0.5rem 1.5rem var(--pb-color-rgba-black-10);
    justify-content: flex-start !important;
    height: auto;
    opacity: 0;
    transform: translateY(100%);
    transition: transform 0.25s ease-in, opacity 0.25s ease-in, visibility 0s linear 0.25s;
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .form-inline-visible {
    opacity: 1;
    transform: none;
    transition: transform 0.25s ease-out, opacity 0.25s ease-out;
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet:has(.form-inline-visible)::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 1049;
    opacity: 0.5;
    background-color: var(--pb-sidebar-backdrop-bg, #000);
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-sheet-header {
    order: -1;
    position: sticky;
    top: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin: 0 -1rem;
    padding: 0.75rem 1rem;
    background-color: inherit;
    border-bottom: 1px solid var(--pb-color-rgba-black-10);
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-sheet-header .btn-filter {
    width: auto;
    min-width: 44px;
    min-height: 44px;
    margin-bottom: 0;
    border: 0;
    box-shadow: none;
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-more-toggle {
    order: 1;
    align-self: flex-start;
    min-height: 44px;
    padding-left: 0;
    padding-right: 0;
    text-decoration: none;
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-more {
    order: 2;
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-more.show,
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-more.collapsing {
    display: flex;
    flex-flow: column;
    gap: 0.5rem;
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-more > .btn {
    min-height: 44px;
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-sheet-actions {
    order: 3;
    position: sticky;
    bottom: 0;
    z-index: 1;
    display: flex;
    gap: 0.5rem;
    margin: 0 -1rem;
    padding: 0.75rem 1rem calc(0.75rem + env(safe-area-inset-bottom, 0px));
    background-color: inherit;
    border-top: 1px solid var(--pb-color-rgba-black-10);
  }
  .navbar-inline-filter-hidden-mobile.tss-filter-sheet .tss-filter-sheet-actions > .btn {
    flex: 1 1 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
  }
}
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-18) TSS-95 part 3, the bulk-action bar
   under the Selling Browse table.

   assets/css/components/_buttons.scss makes the bar `white-space: nowrap` with
   `overflow-x: scroll` below 1200px so a row of management buttons can be swiped. The hint
   the stickyButtons() plugin appends is a sentence, and at 390x844 it needed 518px inside a
   334px box, so 184px of it was cut off with no indication that it continued. Only the
   appended sentence is allowed to wrap, the buttons keep their swipe. The breakpoint is the
   one that applies the nowrap being corrected rather than any of the card breakpoints, and
   `.message` is only ever produced by that plugin, so this reaches every bar that has one
   and nothing else.

   The other half of this defect, the bar reading through to the rows underneath, was the
   theme setting .buttons-sticky-bottom to rgba(255, 255, 255, 0.8) for every bar on the
   site. That is _buttons.scss's forked-from-nine default and other pages (Admin, App
   payment, THD tables, Members invoices/notifications/offers, live-auctions forms) rely
   on it, so it is not deleted - only this page's bar opts back out to opaque, below. */
@media (max-width: 1199.98px) {
  .buttons-sticky-bottom .message {
    white-space: normal;
  }
}
/* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-20) TSS-95, scoped per Codex review on
   PR #182. Selling Browse's bulk-action bar carries this extra class (added in
   module/Members/view/members/selling/browse.phtml) so this override reaches only that
   bar and leaves every other page's translucent .buttons-sticky-bottom default
   (assets/css/components/_buttons.scss) untouched. Same value stock's own opaque default
   resolves to (var(--pb-buttons-sticky-bottom-bg, $white)), restated directly since the
   theme-level rule above wins on specificity otherwise. */
.selling-bulk-actions.buttons-sticky-bottom {
  background-color: var(--pb-buttons-sticky-bottom-bg, #fff);
}

/* ============================================================================
   [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-09-01) TSS-311 / TSS-312
   Appended block. Three developers are editing this file in parallel tonight, so
   everything below is new rules at the tail rather than edits in place.
   ============================================================================ */
/* TSS-311: seller "Live Events" list (members/selling/events) Actions column.
   The buttons come out of App\View\Helper\ButtonsGrouped through
   module/App/view/partials/buttons-grouped.phtml as a plain .buttons-grouped flex
   row with flex-wrap, so each <a> sized to its own text: "Manage Event" took a
   whole row, "Edit" and "List Similar" shared the next at two different widths,
   and "Delete" sat alone on a third. Turning that one cell into a two-column grid
   makes every button the same width and the same height with one gutter value in
   both axes.

   Scoped to .selling-events-actions, the <td> class browse.phtml puts on the events
   list only, NOT to .buttons-grouped or .buttons-labeled-left generally: the same
   helper renders the auction / product / classified Selling Browse tables, the
   listing details dropdown (setDropdown) and the Manage Event action row
   (setExpanded), and those keep the flex row they have.

   Variable button count is handled by the grid rather than by counting: the helper
   emits a different set per listing state (a draft event adds Publish, a listing
   without delete rights drops Delete). An odd count leaves the last cell of the
   final row empty and every button keeps its column width - it never goes ragged. */
.table-selling-events .selling-events-actions .buttons-grouped.buttons-labeled-left {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: var(--pb-buttons-grouped-gap, var(--pb-flex-gap));
}
.table-selling-events .selling-events-actions .buttons-grouped.buttons-labeled-left a {
  /* the helper hangs Bootstrap spacing utilities off individual buttons
     ('btn btn-primary me-3', 'me-4', 'ms-auto'). In a flex row they were the
     gutter; in the grid they are a per-button offset that breaks the columns,
     so they are zeroed here and the grid gap is the only spacing. */
  margin: 0;
  width: 100%;
  justify-content: center;
  text-align: center;
  /* the base TSS-54 rule sets white-space: nowrap, which would overflow a
     narrow column instead of wrapping */
  white-space: normal;
}

/* the column has to be wide enough for two "Manage Event"-width buttons side by
   side, or the grid squeezes them and the labels wrap to three lines. Desktop only:
   below 768px the TSS-91 block turns every <td> into a block inside a card, where a
   min-width would push the card wider than the viewport. */
@media (min-width: 768px) {
  .table-selling-events .selling-events-actions {
    min-width: 21rem;
  }
}
/* phones: the TSS-91 block already restacks the table into one card per event and
   sets --pb-buttons-grouped-gap plus 44px targets, and the grid above reads that
   same token. The 2x2 is kept rather than stacking to four full-width rows, which
   would add roughly 100px of height per event card. */
@media (max-width: 767.98px) {
  .table-selling-events .selling-events-actions .buttons-grouped.buttons-labeled-left a {
    /* min-height is already 44px from the TSS-91 rule; centring the two
       lines a wrapped label produces keeps both rows flush */
    align-items: center;
  }
}
/* TSS-312: Manage Event (/sell/confirm) assets. The thumbnail card grid is gone from
   confirm.phtml, these rules style the list box that replaced it. One row per asset,
   full width of .confirm-event-lots, ID and title on one line at desktop and stacked
   on phones. No image rules here on purpose - the <img> is out of the markup, not
   hidden, so there is nothing to display:none. */
.tss-event-asset-list {
  margin: 0;
  border: 1px solid var(--pb-default-box-border-color);
  border-radius: var(--pb-border-radius);
  overflow: hidden;
  background-color: var(--pb-default-box-bg);
}

.tss-event-asset-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.625rem 0.875rem;
  border-top: 1px solid var(--pb-default-box-border-color);
}
.tss-event-asset-item:first-child {
  border-top: 0;
}

.tss-event-asset-link {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
  flex: 1 1 auto;
  min-width: 0;
  text-decoration: none;
}
.tss-event-asset-link:hover .tss-event-asset-title, .tss-event-asset-link:focus .tss-event-asset-title {
  text-decoration: underline;
}

.tss-event-asset-id {
  flex: 0 0 auto;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  color: var(--pb-body-color);
  opacity: 0.7;
  font-size: var(--pb-font-size-sm);
}

.tss-event-asset-title {
  flex: 1 1 auto;
  min-width: 0;
  overflow-wrap: anywhere;
}

/* the Wish List button is visibility:hidden until hover ONLY inside a
   .listings-cards .card (theme.css). Outside a card it has no such rule, so it is
   visible in every row here - that is deliberate: the control stays reachable
   without depending on a hover the phone cannot produce. */
.tss-event-asset-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}
.tss-event-asset-actions .btn-wishlist-async {
  position: static;
}

@media (max-width: 600px) {
  .tss-event-asset-link {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
  }
  .tss-event-asset-item {
    padding: 0.75rem 0.875rem;
    min-height: 44px;
  }
}
/* @version 10.0 [rev.01] */
/* ## -- ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-07-31) FRONT PAGE, SECOND PASS.
 *
 * Port of the REVISED Templates/tss-live-frontpage-layout/styles.css.
 *
 * This file was rewritten, not extended. The 2026-07-30 conversion targeted the
 * previous template (hero grid + stats strip + how-it-works steps + CTA band) and
 * that template was replaced wholesale. Every rule for a class the view no longer
 * emits has been deleted: `.tss-fp-announcement`, `.tss-fp-dot`,
 * `.tss-fp-hero-grid`, `.tss-fp-hero-sub`, `.tss-fp-hero-actions`,
 * `.tss-fp-hero-media`, `.tss-fp-hero-alert`, `.tss-fp-eyebrow`, `.tss-fp-stats`,
 * `.tss-fp-stat`, `.tss-fp-section`, `.tss-fp-section-head`, `.tss-fp-kicker`,
 * `.tss-fp-category-icon`, `.tss-fp-steps`, `.tss-fp-step`, `.tss-fp-step-number`,
 * `.tss-fp-cta`, `.tss-fp-cta-inner`, `.tss-fp-btn-lg`, `.tss-fp-btn-white`,
 * `.tss-fp-textlink`. `.tss-fp-trust` is gone as of TSS-107: the trust strip was
 * merged into the single feature strip, so its rules were deleted with it. The
 * one remaining benefit strip is `.tss-fp-features`, now rendered below the events.
 *
 * SCOPING CONTRACT -- read before adding anything to this file.
 *
 *   1. Page content AND the header restyle hang off `body.tss-fp-page`. The header
 *      renders outside `main.home-page` (layout.phtml), so `.home-page` cannot
 *      reach it, and a bare `header {}` rule would repaint every route on the
 *      site. Nothing in here is nested under `.home-page`.
 *   2. The guest splash at /welcome hangs off `body.tss-fp-landing`. That block is
 *      unchanged by this pass.
 *   3. `.tss-fp-shell` and the `.tss-fp-footer` block are deliberately SITE WIDE.
 *      navigation/footer.phtml renders on every route, and it uses `.tss-fp-shell`
 *      for its own width, so neither can live inside a body scope. Both names are
 *      `tss-fp-` prefixed, so there is no collision surface. The footer is
 *      unchanged by this pass -- the revised template did not touch it.
 *   4. The palette is exposed as custom properties on the BODY SCOPES, never on
 *      `:root`. The template's `:root` block redefines names this theme already
 *      uses. Site-wide rules (the footer) consume the SCSS variables directly.
 *
 * DELIBERATELY NOT PORTED from the revised styles.css, because each one repaints
 * the whole site: `:root`, `*`, `html`, `body`, `img`, `a`, bare `h1/h2/h3/p`,
 * bare `footer`, `main`, `.container`, `.sr-only`, and the template's own header
 * (`.site-header`, `.brand`, `.main-nav`, `.account-actions`, `.live-pill`,
 * `.sign-in`, `.user-icon`, `.register-button`, `.menu-toggle`). tss-10 already
 * ships a working header in navigation/header-unified.phtml with search, account,
 * language and the cross-site link, driven by theme.js, so it is restyled below
 * rather than replaced. The `pulse` keyframe stays renamed `tss-fp-pulse`.
 *
 * MOBILE IS THE PRIMARY TARGET. Where the template and phone ergonomics disagree
 * the phone wins, and each such call is commented inline. The three things the
 * template gets wrong on a phone are (a) 13px strip copy, (b) a hero montage
 * cropped to a letterbox by `object-fit: cover`, and (c) 21px chevron hit areas.
 * ------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------
 * PALETTE
 *
 * Two sets live here on purpose. The `$tss-fp-*` SCSS variables and the
 * `tss-fp-palette` mixin are the ORIGINAL palette and are still consumed by the
 * site-wide footer and by the /welcome splash, neither of which was redesigned.
 * The revised front page palette is declared as custom properties directly on
 * `body.tss-fp-page` further down, so the two cannot bleed into each other.
 * ------------------------------------------------------------------------ */
/* Footer text ramp, template values. */
/* The template's `.button` base. Shared by the Bootstrap buttons the guest splash
 * markup already carries (which must keep their existing classes and hrefs). */
@keyframes tss-fp-pulse {
  50% {
    box-shadow: 0 0 0 10px rgba(255, 51, 76, 0);
  }
}
/* ---------------------------------------------------------------------------
 * SITE WIDE: the width wrapper.
 *
 * This is the template's `.container`, renamed. It is NOT nested under a body
 * class because the footer partial uses it on every route.
 * ------------------------------------------------------------------------ */
.tss-fp-shell {
  width: min(100% - 40px, 1400px);
  margin-inline: auto;
}

@media (max-width: 650px) {
  .tss-fp-shell {
    width: min(100% - 28px, 1400px);
  }
}
/* ---------------------------------------------------------------------------
 * SITE WIDE: the dark footer.  UNCHANGED by the 2026-07-31 pass.
 *
 * navigation/footer.phtml renders on EVERY route, so this is intentionally not
 * body-scoped. Everything is nested inside `.tss-fp-footer` for two reasons. It
 * keeps the names together, and it buys the specificity needed to beat
 * layout/_shell.scss's `footer a:not(.btn)` rule at (0,1,2) -- a bare
 * `.tss-fp-footer a` at (0,1,1) would lose that fight and the links would render
 * dark grey on dark navy.
 * ------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------
   HEADER LOGO LOCKUP  -- SITE WIDE, deliberately not scoped to a body class.
   Ported from the production placeholder at live.theselectsource.com
   (/assets/css/landing.css, .ss-logo / .ss-logo-live / .ss-badge). The header
   renders on every route, so this must not sit under body.tss-fp-page.

   Values are the production ones. The only deviations are the namespaced
   keyframe, and a size step-down below 900px: at 15px with 0.34em tracking the
   badge is wider than the wordmark on a narrow phone.
   --------------------------------------------------------------------------- */
@keyframes tss-live-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.45;
    transform: scale(0.82);
  }
}
.tss-logo-lockup {
  display: inline-flex;
  flex-direction: column;
  gap: 5px;
  flex: 0 0 auto;
  text-decoration: none;
}
.tss-logo-lockup .logo {
  display: block;
}

.tss-live-rule {
  display: flex;
  align-items: center;
  gap: 8px;
}
.tss-live-rule .l,
.tss-live-rule .r {
  flex: 1;
  height: 2px;
  border-radius: 2px;
}
.tss-live-rule .l {
  background: linear-gradient(90deg, rgba(12, 36, 71, 0) 0%, #0c2447 100%);
}
.tss-live-rule .r {
  background: linear-gradient(270deg, rgba(12, 36, 71, 0) 0%, #0c2447 100%);
}

.tss-live-badge {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 2px 10px 3px;
  border-radius: 3px;
  background: #e01b24;
  flex: 0 0 auto;
}
.tss-live-badge i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #fff;
  animation: tss-live-pulse 1.6s ease-in-out infinite;
}
.tss-live-badge span {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.34em;
  /* the tracking adds a trailing gap after the final letter, which reads as
     the badge being off-centre. Pull it back. */
  margin-right: -0.34em;
  color: #fff;
  text-transform: uppercase;
  line-height: 1.25;
}

@media (prefers-reduced-motion: reduce) {
  .tss-live-badge i {
    animation: none;
  }
}
@media (max-width: 900px) {
  .tss-live-rule {
    gap: 6px;
  }
  .tss-live-badge {
    padding: 1px 8px 2px;
  }
  .tss-live-badge span {
    font-size: 12px;
    letter-spacing: 0.26em;
    margin-right: -0.26em;
  }
  .tss-live-badge i {
    width: 5px;
    height: 5px;
  }
}
.tss-fp-footer {
  /* margin-top is inherited from layout/_shell.scss's `footer` rule (3rem) and
     * left alone on purpose, so inner pages keep a gap before the dark band. */
  padding: 62px 0 28px;
  color: #cbd7e1;
  background-color: #082a49;
  border-top: 0;
  font-size: 14px;
}
.tss-fp-footer .tss-fp-footer-grid {
  display: grid;
  grid-template-columns: 1.8fr repeat(3, 1fr);
  gap: 60px;
}
.tss-fp-footer .tss-fp-footer-about p {
  max-width: 390px;
  margin-bottom: 0;
  color: #aebfcd;
  font-size: 14px;
  line-height: 1.65;
}
.tss-fp-footer .tss-fp-footer-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  text-decoration: none;
}
.tss-fp-footer .tss-fp-footer-brand img {
  display: block;
  width: 62px;
  height: 62px;
  object-fit: contain;
  border-radius: 16px;
}
.tss-fp-footer .tss-fp-brand-copy {
  display: flex;
  flex-direction: column;
  line-height: 0.9;
  letter-spacing: 0.07em;
}
.tss-fp-footer .tss-fp-brand-copy strong {
  color: #d9263d;
  font-size: 21px;
  font-weight: 950;
}
.tss-fp-footer .tss-fp-brand-copy span {
  margin-top: 6px;
  color: #fff;
  font-size: 16px;
  font-weight: 950;
}
.tss-fp-footer .tss-fp-footer-contact {
  margin-top: 16px;
  color: #aebfcd;
  font-size: 13px;
}
.tss-fp-footer .tss-fp-footer-contact a {
  color: #fff;
  font-weight: 700;
}
.tss-fp-footer .tss-fp-footer-contact a:hover {
  color: #cbd7e1;
}
.tss-fp-footer .tss-fp-footer-column {
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.tss-fp-footer .tss-fp-footer-column strong {
  margin-bottom: 6px;
  color: #fff;
  font-size: 14px;
}
.tss-fp-footer .tss-fp-footer-column a {
  color: #aebfcd;
  font-size: 13px;
  text-decoration: none;
}
.tss-fp-footer .tss-fp-footer-column a:hover {
  color: #fff;
}
.tss-fp-footer {
  /* Newsletter box. Kept behind its setting in the partial, only re-tinted here
     * so the stock form reads on a dark ground. */
}
.tss-fp-footer .tss-fp-footer-newsletter {
  margin-top: 40px;
  padding-top: 26px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.tss-fp-footer .tss-fp-footer-newsletter h1,
.tss-fp-footer .tss-fp-footer-newsletter h2,
.tss-fp-footer .tss-fp-footer-newsletter h3,
.tss-fp-footer .tss-fp-footer-newsletter h4,
.tss-fp-footer .tss-fp-footer-newsletter h5,
.tss-fp-footer .tss-fp-footer-newsletter label,
.tss-fp-footer .tss-fp-footer-newsletter strong {
  color: #fff;
}
.tss-fp-footer .tss-fp-footer-newsletter p,
.tss-fp-footer .tss-fp-footer-newsletter small {
  color: #aebfcd;
}
.tss-fp-footer .tss-fp-footer-newsletter .newsletter-subscription-box {
  padding: 20px;
  background-color: rgba(255, 255, 255, 0.06);
  border-radius: 14px;
}
.tss-fp-footer .tss-fp-footer-copyright {
  margin-top: 48px;
  padding-top: 23px;
  color: #879baa;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  font-size: 12px;
}
.tss-fp-footer .tss-fp-footer-copyright a {
  color: #cbd7e1;
  text-decoration: underline;
}
.tss-fp-footer .tss-fp-footer-copyright a:hover {
  color: #fff;
}
@media (max-width: 950px) {
  .tss-fp-footer .tss-fp-footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 650px) {
  .tss-fp-footer .tss-fp-footer-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
  .tss-fp-footer .tss-fp-footer-brand img {
    width: 51px;
    height: 51px;
  }
  .tss-fp-footer .tss-fp-brand-copy strong {
    font-size: 17px;
  }
  .tss-fp-footer .tss-fp-brand-copy span {
    font-size: 13px;
  }
}

/* ---------------------------------------------------------------------------
 * FRONT PAGE: body.tss-fp-page
 * ------------------------------------------------------------------------ */
body.tss-fp-page {
  /* The revised template palette, scoped. Names match the styles.css `:root`. */
  --tss-fp-navy: #071947;
  --tss-fp-blue: #0b4bd8;
  --tss-fp-bright-blue: #1462e5;
  --tss-fp-red: #e00000;
  --tss-fp-ink: #071334;
  --tss-fp-muted: #515b72;
  --tss-fp-line: #e4e9f2;
  --tss-fp-soft: #f7f9fc;
  --tss-fp-card-shadow: 0 6px 22px rgba(13, 38, 85, 0.09);
  /* One knob for every full-bleed section's side inset. `main.home-page` is NOT
     * a Bootstrap container (components/_base.scss only pads
     * `main:not(.home-page)`), so each section owns its own gutter. Redefined at
     * each breakpoint instead of repeating five margin rules. */
  --tss-fp-gutter: 30px;
  /* The template renders on white. Overriding the theme's own body-bg custom
     * property is the least invasive way to get that without a `body {}` rule. */
  --pb-body-bg: #fff;
  color: var(--tss-fp-ink);
  /* -- header restyle, CSS only ------------------------------------------
     * header-unified.phtml is untouched: it carries search, account, cart,
     * language and the cross-site link. This gives the existing chrome the
     * template's sticky translucent treatment, and enforces 44px hit areas on
     * everything tappable in it. Selectors are deliberately as deep as the
     * layout/_shell.scss rules they have to override. */
}
body.tss-fp-page header {
  position: sticky;
  top: 0;
  z-index: 100;
  background-color: rgba(255, 255, 255, 0.97);
  border-bottom: 1px solid var(--tss-fp-line);
  backdrop-filter: blur(12px);
  --pb-mobile-navbar-border-bottom: none;
}
body.tss-fp-page header .desktop__navbar .top-navbar {
  background-color: transparent;
  border-bottom: 1px solid var(--tss-fp-line);
}
body.tss-fp-page header .desktop__navbar .main-navbar {
  padding: 8px 0;
  background-color: transparent;
  border-bottom: 0;
  /* the template's 88px header band */
}
body.tss-fp-page header .desktop__navbar .main-navbar > .container > .row {
  min-height: 88px;
}
body.tss-fp-page header .desktop__navbar .links-navbar {
  background-color: transparent;
  border-bottom: 1px solid var(--tss-fp-line);
}
body.tss-fp-page header .desktop__navbar {
  /* Template weight for the nav, at a 44px minimum row height so the links
     * are already touch sized on a small tablet. */
}
body.tss-fp-page header .desktop__navbar .links-navbar .nav-link,
body.tss-fp-page header .desktop__navbar .top-navbar .nav-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-weight: 800;
}
body.tss-fp-page header {
  /* MOBILE. The burger is a bare <button> holding one <i> with no intrinsic
     * size, and the sidebar links carry stock Bootstrap padding. Both come out
     * under 44px on a phone. */
}
body.tss-fp-page header .mobile__navbar .sidebar-toggler {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}
body.tss-fp-page header .mobile__navbar {
  /* the home link wraps a bare <img>, so it inherits the image's 31px height */
}
body.tss-fp-page header .mobile__navbar > .d-flex > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
body.tss-fp-page header .mobile__navbar .logo {
  max-width: 190px;
  max-height: 46px;
  width: auto;
  height: auto;
}
body.tss-fp-page header .mobile__navbar {
  /* stock control height is 37px, which is under the touch floor */
}
body.tss-fp-page header .mobile__navbar .form-control {
  min-height: 44px;
}
body.tss-fp-page header .sidebar .nav-link {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
}
body.tss-fp-page header .sidebar .sidebar-toggler {
  min-width: 44px;
  min-height: 44px;
}
body.tss-fp-page {
  /* -- buttons ------------------------------------------------------------
     * Template `.button` / `.button-primary` / `.button-secondary`. 51px tall,
     * so already above the 44px floor at every width. */
}
body.tss-fp-page .tss-fp-btn {
  display: inline-flex;
  min-height: 51px;
  align-items: center;
  justify-content: center;
  padding: 0 23px;
  border-radius: 5px;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
body.tss-fp-page .tss-fp-btn:hover, body.tss-fp-page .tss-fp-btn:focus {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(8, 53, 149, 0.14);
}
body.tss-fp-page .tss-fp-btn {
  /* The template used a 32px "-" glyph in a <span>. The view emits a Bootstrap
     * Icons chevron instead, which is optically smaller, so it is scaled up and
     * given a comparable offset. */
}
body.tss-fp-page .tss-fp-btn .bi {
  margin-left: 14px;
  font-size: 1.25em;
  line-height: 0;
}
body.tss-fp-page .tss-fp-btn-primary {
  color: #fff;
  background: var(--tss-fp-blue);
  border: 2px solid var(--tss-fp-blue);
}
body.tss-fp-page .tss-fp-btn-primary:hover, body.tss-fp-page .tss-fp-btn-primary:focus {
  color: #fff;
  background: var(--tss-fp-bright-blue);
  border-color: var(--tss-fp-bright-blue);
}
body.tss-fp-page .tss-fp-btn-secondary {
  color: var(--tss-fp-blue);
  background: #fff;
  border: 2px solid var(--tss-fp-blue);
}
body.tss-fp-page .tss-fp-btn-secondary:hover, body.tss-fp-page .tss-fp-btn-secondary:focus {
  color: var(--tss-fp-bright-blue);
  border-color: var(--tss-fp-bright-blue);
}
body.tss-fp-page {
  /* -- hero ---------------------------------------------------------------
     * 39/61 split, copy left, product montage right, bled to both edges. */
}
body.tss-fp-page .tss-fp-hero {
  position: relative;
  min-height: 490px;
  display: grid;
  grid-template-columns: 39% 61%;
  align-items: stretch;
  overflow: hidden;
  background: radial-gradient(circle at 89% 25%, rgba(19, 93, 226, 0.1), transparent 27%), linear-gradient(165deg, #fff 0 48%, var(--tss-fp-soft) 48.2% 54%, #fff 54.2%);
}
body.tss-fp-page .tss-fp-hero-copy {
  position: relative;
  z-index: 3;
  /* A grid item defaults to min-width:auto and will not shrink past its widest
     * child. Without this the copy column pushes the montage off the viewport
     * and the page scrolls sideways. */
  min-width: 0;
  padding: 24px 10px 24px 66px;
}
body.tss-fp-page .tss-fp-hero-copy h1 {
  margin: 5px 0 16px;
  color: #1559c9;
  font-size: clamp(28px, 2.65vw, 43px);
  line-height: 1;
  font-style: italic;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
body.tss-fp-page .tss-fp-hero-copy h1 span {
  color: var(--tss-fp-navy);
}
body.tss-fp-page .tss-fp-hero-copy p {
  max-width: 530px;
  margin: 0 0 20px;
  color: var(--tss-fp-ink);
  font-size: clamp(17px, 1.28vw, 21px);
  line-height: 1.38;
}
body.tss-fp-page .tss-fp-hero-copy p strong {
  color: var(--tss-fp-navy);
  font-weight: 850;
}
body.tss-fp-page .tss-fp-live-logo {
  display: block;
  width: min(650px, 100%);
  max-height: 225px;
  object-fit: contain;
  object-position: left center;
  /* the artwork ships on a white plate, multiply drops it onto the gradient */
  mix-blend-mode: multiply;
}
body.tss-fp-page .tss-fp-hero-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
}
body.tss-fp-page .tss-fp-hero-products {
  position: relative;
  min-width: 0;
  align-self: end;
  display: flex;
  align-items: end;
  justify-content: flex-end;
  overflow: hidden;
}
body.tss-fp-page .tss-fp-hero-products img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}
body.tss-fp-page {
  /* -- side gutter for every full-bleed section --------------------------- */
}
body.tss-fp-page .tss-fp-features,
body.tss-fp-page .tss-fp-category-grid,
body.tss-fp-page .tss-fp-announce-block,
body.tss-fp-page .tss-fp-events {
  margin-left: var(--tss-fp-gutter);
  margin-right: var(--tss-fp-gutter);
}
body.tss-fp-page {
  /* -- feature strip ------------------------------------------------------ */
}
body.tss-fp-page .tss-fp-features {
  /* TSS-107: the one remaining benefit strip now sits BELOW the event shelves. It
     used to be two stacked strips tucked under the hero, which is where the old
     negative offset and raised stacking context came from. Both are dropped and a
     clear top margin takes their place. */
  position: relative;
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border: 1px solid var(--tss-fp-line);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.97);
  box-shadow: var(--tss-fp-card-shadow);
}
body.tss-fp-page .tss-fp-features article {
  position: relative;
  min-height: 100px;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  /* TSS-38: top-align each tile's icon and heading so a benefit whose title
     wraps to two lines does not float the shorter tiles' content to the
     vertical centre. The outer grid still stretches every tile to equal
     height, only the content within each tile is top-anchored. */
  align-items: start;
  gap: 15px;
  padding: 17px 24px;
}
body.tss-fp-page .tss-fp-features article:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 22%;
  height: 58%;
  width: 1px;
  background: var(--tss-fp-line);
}
body.tss-fp-page .tss-fp-line-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  color: var(--tss-fp-navy);
  border: 3px solid var(--tss-fp-navy);
  border-radius: 50%;
}
body.tss-fp-page .tss-fp-line-icon .bi {
  font-size: 27px;
  line-height: 1;
}
body.tss-fp-page {
  /* -- typography shared by the three strips ------------------------------ */
}
body.tss-fp-page .tss-fp-features h2,
body.tss-fp-page .tss-fp-category-card h2 {
  margin: 0 0 7px;
  color: var(--tss-fp-navy);
  font-size: 14px; /* TSS-108: was 13px, same as the p below */
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}
body.tss-fp-page .tss-fp-features p,
body.tss-fp-page .tss-fp-category-card p {
  margin: 0;
  color: var(--tss-fp-ink);
  font-size: 13px;
  line-height: 1.45;
}
body.tss-fp-page {
  /* -- categories ---------------------------------------------------------
     * Seven across: six live categories plus the static "And More" card. */
}
body.tss-fp-page .tss-fp-category-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
  padding-top: 9px;
}
body.tss-fp-page .tss-fp-category-card {
  min-height: 120px;
  display: grid;
  /* Seven across leaves about 100px for the words, and a one-word category
     * name like "IMPROVEMENT" needs 99 of them, so the artwork track is cut
     * back from the template's 76px here and restored below 1600px where the
     * grid drops to four across and the room exists. Same trade the template
     * itself documents, just measured against DB driven names. */
  grid-template-columns: 68px minmax(0, 1fr) 22px;
  align-items: center;
  gap: 6px;
  padding: 9px;
  border: 1px solid var(--tss-fp-line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(13, 38, 85, 0.04);
  overflow: hidden;
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}
body.tss-fp-page .tss-fp-category-card:hover, body.tss-fp-page .tss-fp-category-card:focus {
  transform: translateY(-2px);
  border-color: #c3d4ee;
  box-shadow: var(--tss-fp-card-shadow);
}
body.tss-fp-page .tss-fp-category-card {
  /* CRITICAL, carried over from the template's own fix. A grid item defaults
     * to min-width:auto, so it refuses to shrink below the width of its longest
     * unbreakable word. "IMPROVEMENT" is wider than the 1fr text column at
     * seven-across, so the card's text block overflowed leftwards on top of the
     * product photo instead of wrapping. min-width:0 lets it wrap.
     * Deliberately NO overflow-wrap:break-word here, that produced mid-word
     * breaks like "IMPROVEME / NT". */
}
body.tss-fp-page .tss-fp-category-card > div {
  min-width: 0;
}
body.tss-fp-page .tss-fp-category-card img {
  display: block;
  width: 66px;
  height: 96px;
  object-fit: contain;
  object-position: center;
  mix-blend-mode: multiply;
}
body.tss-fp-page .tss-fp-category-card {
  /* The category blurb is DB driven here, not the template's two fixed short
     * lines, so it is clamped. Without this a long category name turns one card
     * into a five-line card and drags the whole grid row taller. */
}
body.tss-fp-page .tss-fp-category-card p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}
body.tss-fp-page .tss-fp-category-card {
  /* the blue chevron disc */
}
body.tss-fp-page .tss-fp-category-card > span {
  width: 21px;
  height: 21px;
  display: grid;
  place-items: center;
  color: #fff;
  border-radius: 50%;
  background: var(--tss-fp-blue);
}
body.tss-fp-page .tss-fp-category-card > span .bi {
  font-size: 12px;
  line-height: 1;
}
body.tss-fp-page {
  /* -- admin editable announcement slot (Home Page HTML setting) ----------- */
}
body.tss-fp-page .tss-fp-announce-block {
  margin-top: 14px;
  padding: 20px 24px;
  color: var(--tss-fp-ink);
  background: #fff;
  border: 1px solid var(--tss-fp-line);
  border-radius: 9px;
  box-shadow: var(--tss-fp-card-shadow);
  font-size: 15px;
  line-height: 1.6;
}
body.tss-fp-page .tss-fp-announce-block > :last-child {
  margin-bottom: 0;
}
body.tss-fp-page .tss-fp-announce-block img {
  max-width: 100%;
  height: auto;
}
body.tss-fp-page {
  /* -- events shelves ------------------------------------------------------
     * Vertical rhythm and the side gutter only. `.event-shelf` and `.event-card`
     * already have their own styles in components/_custom.scss and
     * components/_cards.scss and are deliberately left alone. */
}
body.tss-fp-page .tss-fp-events {
  padding-block: 26px 24px;
}
body.tss-fp-page {
  /* -----------------------------------------------------------------------
   * RESPONSIVE. The template's own three breakpoints, plus the mobile
   * corrections listed at the top of this file.
   * -------------------------------------------------------------------- */
  /* The mockup is drawn at 1660px. Seven category cards across only has room
     * for the copy at roughly that width or more -- measured at 1440 the text
     * column collapses to 62px and every card's blurb is clipped, and the two
     * hero buttons no longer fit on one line inside a 39% copy column. Both are
     * corrected here rather than at the template's own 1280 breakpoint, which is
     * too late. */
}
@media (max-width: 1600px) {
  body.tss-fp-page .tss-fp-hero-buttons {
    gap: 14px;
  }
  body.tss-fp-page .tss-fp-btn {
    padding: 0 18px;
    font-size: 15px;
  }
  body.tss-fp-page .tss-fp-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  body.tss-fp-page {
    /* four across, so the artwork gets the template's full size back */
  }
  body.tss-fp-page .tss-fp-category-card {
    grid-template-columns: 76px minmax(0, 1fr) 22px;
  }
  body.tss-fp-page .tss-fp-category-card img {
    width: 74px;
    height: 105px;
  }
  body.tss-fp-page .tss-fp-category-card:last-child {
    grid-column: span 2;
  }
}
@media (max-width: 1280px) {
  body.tss-fp-page .tss-fp-hero {
    grid-template-columns: 44% 56%;
  }
  body.tss-fp-page .tss-fp-hero-copy {
    padding-left: 38px;
  }
  body.tss-fp-page .tss-fp-features {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body.tss-fp-page .tss-fp-features article::after {
    display: none;
  }
}
@media (max-width: 900px) {
  body.tss-fp-page {
    --tss-fp-gutter: 18px;
    /* HERO: stack, copy first, montage below. The template keeps
       * `object-fit: cover` here with a 370px min-height, which on a phone crops
       * a 1132x502 montage down to a letterbox showing two products. Switched to
       * intrinsic height plus contain so the whole montage reads as a band. */
  }
  body.tss-fp-page .tss-fp-hero {
    min-height: 0;
    grid-template-columns: 1fr;
  }
  body.tss-fp-page .tss-fp-hero-copy {
    padding: 24px 20px 12px;
  }
  body.tss-fp-page .tss-fp-live-logo {
    max-height: 190px;
  }
  body.tss-fp-page .tss-fp-hero-products {
    min-height: 0;
    justify-content: center;
    padding: 0 12px 18px;
  }
  body.tss-fp-page .tss-fp-hero-products img {
    width: 100%;
    height: auto;
    max-width: 640px;
    object-fit: contain;
  }
  body.tss-fp-page {
    /* 13px strip copy is unreadable on a phone. Everything textual goes to a
       * 15px floor below this breakpoint. */
  }
  body.tss-fp-page .tss-fp-features h2,
  body.tss-fp-page .tss-fp-category-card h2 {
    font-size: 15px;
  }
  body.tss-fp-page .tss-fp-features p,
  body.tss-fp-page .tss-fp-category-card p {
    font-size: 15px;
    line-height: 1.5;
  }
  body.tss-fp-page .tss-fp-features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.tss-fp-page .tss-fp-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  body.tss-fp-page .tss-fp-category-card:last-child {
    grid-column: auto;
  }
  body.tss-fp-page {
    /* The events shelves keep their own component styles from
       * components/_custom.scss, but that component was written for a desktop
       * shelf head and its furniture lands at 12-13px with a 19px tall "view all"
       * link. Corrected here only, and only on the front page, so the shared
       * component is not disturbed on browse. */
  }
  body.tss-fp-page .tss-fp-events .event-shelf-all {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 44px;
    font-size: 15px;
  }
  body.tss-fp-page .tss-fp-events .event-shelf-note,
  body.tss-fp-page .tss-fp-events .event-shelf-count {
    font-size: 15px;
  }
  body.tss-fp-page {
    /* 44px chevron hit area. The disc keeps its drawn size and the cell around
       * it grows. The whole card is the link, so this only has to satisfy the
       * target-size floor, it must not become a second control. */
  }
  body.tss-fp-page .tss-fp-category-card {
    grid-template-columns: 76px minmax(0, 1fr) 44px;
  }
  body.tss-fp-page .tss-fp-category-card > span {
    width: 44px;
    height: 44px;
    background: transparent;
  }
  body.tss-fp-page .tss-fp-category-card > span .bi {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--tss-fp-blue);
    font-size: 14px;
  }
}
@media (max-width: 560px) {
  body.tss-fp-page {
    --tss-fp-gutter: 12px;
  }
  body.tss-fp-page .tss-fp-hero-copy {
    padding: 16px 16px 8px;
  }
  body.tss-fp-page .tss-fp-live-logo {
    max-height: 150px;
  }
  body.tss-fp-page .tss-fp-hero-buttons {
    gap: 10px;
  }
  body.tss-fp-page .tss-fp-btn {
    width: 100%;
  }
  body.tss-fp-page .tss-fp-features,
  body.tss-fp-page .tss-fp-category-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  body.tss-fp-page .tss-fp-features article {
    padding: 14px 16px;
    gap: 13px;
  }
  body.tss-fp-page .tss-fp-category-card {
    min-height: 106px;
    /* one across, so the artwork gets the room the mockup gives it */
    grid-template-columns: 84px minmax(0, 1fr) 44px;
    gap: 10px;
  }
  body.tss-fp-page .tss-fp-announce-block {
    padding: 16px;
  }
  body.tss-fp-page .tss-fp-events {
    padding-block: 18px 16px;
  }
}

/* ---------------------------------------------------------------------------
 * GUEST SPLASH: body.tss-fp-landing  (/welcome)   UNCHANGED.
 *
 * Moved out of the inline <style> block that used to sit at the bottom of
 * addons/custom/module/App/view/app/index/landing.phtml, and restyled onto the
 * original template palette, type scale and button treatment.
 *
 * The markup is unchanged. The two calls to action keep their Bootstrap classes
 * and their existing hrefs, so the treatment is applied to `.btn-primary` and
 * `.btn-outline-light` rather than to new classes. The theme ships no
 * `.btn-outline-*` rule at all, so that one is built from scratch here, it is not
 * layered on top of anything.
 * ------------------------------------------------------------------------ */
body.tss-fp-landing {
  --tss-fp-navy: #103b63;
  --tss-fp-dark-navy: #082a49;
  --tss-fp-blue: #2871ad;
  --tss-fp-light-blue: #eaf3fa;
  --tss-fp-red: #d9263d;
  --tss-fp-off-white: #f5f8fa;
  --tss-fp-ink: #17222d;
  --tss-fp-muted: #667587;
  --tss-fp-line: #dfe6ed;
  --tss-fp-elevation: 0 16px 42px rgba(12, 48, 79, 0.11);
  --tss-fp-corner: 18px;
  --pb-body-bg: #f5f8fa;
}
body.tss-fp-landing .tss-landing {
  display: flex;
  justify-content: center;
  /* TSS-107: tightened. The card sat in a tall, mostly empty viewport, so the
     outer whitespace above and below it is cut back. */
  padding: 40px 20px 56px;
}
body.tss-fp-landing .tss-landing-hero {
  max-width: 640px;
  width: 100%;
  /* TSS-107: was 64px 40px 56px, trimmed so the card reads as compact. */
  padding: 48px 40px 44px;
  color: #fff;
  text-align: center;
  background: radial-gradient(circle at 80% 8%, rgba(255, 255, 255, 0.14), transparent 30%), var(--tss-fp-navy);
  border-radius: 28px;
  box-shadow: var(--tss-fp-elevation);
}
body.tss-fp-landing .tss-landing-live-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  padding: 5px 9px;
  color: #fff;
  background: var(--tss-fp-red);
  border-radius: 6px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
body.tss-fp-landing .tss-landing-live-dot {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.25);
  animation: tss-fp-pulse 1.7s infinite;
}
body.tss-fp-landing .tss-landing-title {
  margin: 0 0 20px;
  color: #fff;
  font-size: clamp(34px, 5vw, 54px);
  line-height: 1.05;
  letter-spacing: -0.045em;
  font-weight: 800;
  overflow-wrap: break-word;
}
body.tss-fp-landing .tss-landing-sub {
  max-width: 520px;
  margin: 0 auto 32px;
  color: #d5e3ee;
  font-size: 17px;
  line-height: 1.65;
}
body.tss-fp-landing .tss-landing-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-bottom: 40px;
}
body.tss-fp-landing .tss-landing-actions .btn {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border: 0;
  border-radius: 10px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: 0.2s;
  min-height: 54px;
  padding: 15px 25px;
  font-size: 15px;
}
body.tss-fp-landing .tss-landing-actions {
  /* primary call to action: the template's white button on navy */
}
body.tss-fp-landing .tss-landing-actions .btn-primary {
  color: var(--tss-fp-navy);
  background: #fff;
  border: 0;
}
body.tss-fp-landing .tss-landing-actions .btn-primary:hover, body.tss-fp-landing .tss-landing-actions .btn-primary:focus, body.tss-fp-landing .tss-landing-actions .btn-primary:active {
  color: var(--tss-fp-navy);
  background: #fff;
  transform: translateY(-2px);
  box-shadow: 0 12px 27px rgba(0, 0, 0, 0.17);
}
body.tss-fp-landing .tss-landing-actions {
  /* secondary: outline. Built here because tss-10 defines no
       * `.btn-outline-*` rules of any kind. */
}
body.tss-fp-landing .tss-landing-actions .btn-outline-light {
  color: #fff;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.55);
}
body.tss-fp-landing .tss-landing-actions .btn-outline-light:hover, body.tss-fp-landing .tss-landing-actions .btn-outline-light:focus, body.tss-fp-landing .tss-landing-actions .btn-outline-light:active {
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.8);
  transform: translateY(-2px);
}
body.tss-fp-landing .tss-landing-features {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 26px;
  margin: 0;
  padding: 24px 0 0;
  color: #cbd7e1;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  font-size: 13px;
  font-weight: 750;
}
body.tss-fp-landing .tss-landing-features li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
body.tss-fp-landing .tss-landing-features .bi {
  color: #b7d7ee;
  font-size: 16px;
}
@media (max-width: 650px) {
  body.tss-fp-landing .tss-landing {
    padding: 32px 14px 56px;
  }
  body.tss-fp-landing .tss-landing-hero {
    padding: 44px 22px 36px;
    border-radius: 22px;
  }
  body.tss-fp-landing .tss-landing-sub {
    font-size: 16px;
  }
  body.tss-fp-landing .tss-landing-actions {
    align-items: stretch;
    flex-direction: column;
  }
  body.tss-fp-landing .tss-landing-actions .btn {
    width: 100%;
  }
  body.tss-fp-landing .tss-landing-features {
    gap: 14px 22px;
  }
}

/* ## -- ./ADD -- [ CUSTOM WORK:- THE SELECT SOURCE ] */
.home-page .heading {
  padding: 1rem;
  margin-bottom: 0;
  border-bottom: none;
  border-radius: 6px 6px 0 0;
}
.container-compact .home-page .heading {
  border-bottom: 1px solid var(--pb-container-compact-border-color);
  background-color: rgba(255, 255, 255, 0.75);
}
.home-page .heading .btn {
  background-color: transparent;
  border: none;
  font-weight: 500;
}
.home-page .tab-content .heading h1 {
  visibility: hidden;
}
.home-page .nav-pills {
  font-size: 1.2rem;
}
.home-page .content-section .heading {
  display: none;
}

.members-area .heading h1 {
  font-size: 1.5rem;
}
.container-compact .members-area .main {
  --pb-grid-main-padding-x: 1rem;
}

.listings-browse,
.stores-browse {
  /* TSS-108 pass 1: the current-events listing chrome reads its rhythm from the
     shared spacing scale so the title, the results bar and the grid sit on
     even steps. Values track the shared tokens (the headline break widens by
     one quarter step, from 1.25rem to the 1.5rem md step). Card internals are
     left to the 5e92c241 tile pass, this only touches page chrome. */
}
.listings-browse .headline,
.stores-browse .headline {
  margin-bottom: var(--tss-space-md, 1.25rem);
}
.container-compact .listings-browse,
.container-compact .stores-browse {
  --pb-grid-background-color: var(--pb-default-box-bg);
}
.container-compact .listings-browse .active-filters,
.container-compact .stores-browse .active-filters {
  --pb-active-filters-padding-x: var(--tss-space-sm, 1rem);
}
.container-compact .listings-browse .sorting-and-filters,
.container-compact .stores-browse .sorting-and-filters {
  --pb-sorting-and-filters-padding-x: var(--tss-space-sm, 1rem);
  --pb-sorting-and-filters-padding-y: 0;
  border-bottom: 1px solid var(--pb-container-compact-border-color);
}
.listings-browse .pagination,
.stores-browse .pagination {
  margin-bottom: var(--tss-space-2xs, 0.5rem);
}

/* @version 10.0 [rev.01] */
/* TSS-108 pass 1: the event / lot detail page reads its spacing rhythm and its
   title size from the shared scale in config/_tokens.scss, so the title, the
   description break and the three section panels sit on even steps instead of
   ad hoc rem values. Every token falls back to the exact value it replaced, so
   this is a normalization and not a restyle. The mobile title size, the panel
   background and the transparent nested-event card are all untouched. */
.listing-details .title {
  font-size: var(--tss-text-h1, 2rem);
  margin-bottom: var(--tss-space-md, 1.5rem);
}
@media (max-width: 575.98px) {
  .listing-details .title {
    font-size: 1.5rem;
  }
}
.listing-details .short-description {
  margin-bottom: var(--tss-space-md, 1.5rem);
}
.listing-details .media-section,
.listing-details .information-section,
.listing-details .description-section {
  padding: var(--tss-space-sm, 1rem);
  background-color: var(--pb-listing-details-section-bg, var(--pb-default-box-bg));
  border-radius: 0.375rem;
}
.listing-details .events-cards .card {
  --pb-card-border-color: transparent;
}
@media (min-width: 768px) {
  .listing-details .events-cards {
    max-width: 35%;
  }
}
.listing-details .lot-parent-event .lot-parent-event-label {
  margin-bottom: var(--tss-space-xs, 0.75rem);
  color: var(--pb-color-gray-600);
  font-size: var(--pb-font-size-sm);
  font-weight: var(--pb-font-weight-semibold);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
@media (min-width: 768px) {
  .listing-details .lot-parent-event .events-cards.lot-parent-event-card {
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .listing-details .lot-parent-event .events-cards.lot-parent-event-card .event-card.card-grid {
    display: grid;
    grid-template-columns: minmax(0, 22%) minmax(0, 1fr);
    grid-template-areas: "img header" "img details";
    align-items: start;
    column-gap: var(--tss-space-md, 1.5rem);
    row-gap: 0.5rem;
  }
  .listing-details .lot-parent-event .events-cards.lot-parent-event-card .event-card.card-grid .event-card-header {
    grid-area: header;
  }
  .listing-details .lot-parent-event .events-cards.lot-parent-event-card .event-card.card-grid .card-img {
    grid-area: img;
  }
  .listing-details .lot-parent-event .events-cards.lot-parent-event-card .event-card.card-grid .card-body {
    grid-area: details;
  }
}
@media (min-width: 768px) {
  .listing-details .lot-parent-event .events-cards.lot-parent-event-card .event-card.card-grid .event-details {
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: var(--tss-space-lg, 2.5rem);
    row-gap: 0.5rem;
  }
}
.listing-details .lot-parent-event .lot-parent-event-nav {
  padding-top: var(--tss-space-xs, 0.75rem);
  border-top: 1px solid var(--pb-color-rgba-gray-20, #e5e7eb);
}
.listing-details .event-lots-section {
  padding-left: calc(var(--bs-gutter-x) * 0.5);
}
.listing-details .event-lots-section .card .card-seller {
  display: none;
}
.listing-details .media-section .carousel-item {
  background-color: #fff;
}
.listing-details .media-section .carousel-item .img-thumbnail {
  border: none;
  padding: 0;
  border-radius: 0;
}
.listing-details .media-section .carousel-indicators {
  border-top: 1px solid var(--pb-color-rgba-gray-20, #e5e7eb);
  padding-top: var(--tss-space-xs, 0.75rem);
}
.listing-details .information-section .tab-pane {
  max-height: 300px;
  overflow-y: auto;
}
.listing-details .buttons-section {
  padding: var(--tss-space-sm, 1rem);
}
.listing-details .form-purchase-confirm {
  max-width: 325px;
}
.listing-details .accordion-postage-rates {
  width: 100%;
  max-width: 325px;
}
.listing-details .accordion-postage-rates .accordion-button {
  font-size: inherit;
  padding: 0.6rem 0.75rem;
}
.listing-details .accordion-postage-rates .accordion-body {
  padding: 0.75rem 0.75rem 0.6rem;
}

/* @version 10.0 [rev.01] */
/* @version 10.0 [rev.01] */
/* HEADER */
header {
  color: var(--pb-header-color, #000);
  background-color: var(--pb-header-bg, #fff);
}
header .nav .nav-link {
  color: var(--pb-header-nav-link-color, #1f2937);
}
header .nav .nav-link:hover {
  color: var(--pb-header-nav-link-hover-color, #111827);
}
header {
  /* desktop */
}
header .desktop__navbar {
  display: var(--pb-desktop-navbar-display, block);
}
@media (max-width: 991.98px) {
  header .desktop__navbar {
    --pb-desktop-navbar-display: none;
  }
}
header .desktop__navbar .top-navbar {
  display: flex;
  align-items: center;
  height: 40px;
  border-bottom: 1px solid rgba(156, 163, 175, 0.2);
}
header .desktop__navbar .top-navbar .announcements {
  display: flex;
  align-items: center;
  justify-content: center;
}
header .desktop__navbar .top-navbar .announcements p {
  margin: 0;
}
header .desktop__navbar .top-navbar .nav .nav-item + .nav-item {
  border-left: 1px solid rgba(0, 0, 0, 0.5);
}
header .desktop__navbar .top-navbar .nav .nav-link {
  padding: 0 20px;
}
header .desktop__navbar .top-navbar {
  --pb-header-button-font-size: var(--pb-font-size);
}
header .desktop__navbar .main-navbar {
  background-color: var(--pb-header-desktop-main-navbar-bg, #fff);
  border-bottom: 1px solid var(--pb-header-desktop-main-navbar-border-bottom-color, rgba(156, 163, 175, 0.4));
  padding: 25px 0;
}
.header-compact header .desktop__navbar .main-navbar {
  padding: 15px 0;
}
header .desktop__navbar .main-navbar .logo {
  max-width: 250px;
}
.header-compact header .desktop__navbar .main-navbar .logo {
  max-width: 200px;
}
header .desktop__navbar .main-navbar .search {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  height: 50px;
  align-items: center;
  margin: 0 20px;
}
header .desktop__navbar .main-navbar .search input, header .desktop__navbar .main-navbar .search select {
  height: 44px;
  padding: 1px 9.8px 1px 15px;
  font-stretch: condensed;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  border: var(--pb-header-desktop-search-input-border, 1px solid var(--pb-color-rgba-gray-30));
}
header .desktop__navbar .main-navbar .search input {
  border-radius: 3px 0 0 3px;
}
header .desktop__navbar .main-navbar .search select {
  width: 220px;
  border-radius: 0;
  border-left: 1px solid rgba(233, 226, 221, 0.6);
  padding-right: 35px;
  text-overflow: ellipsis;
}
header .desktop__navbar .main-navbar .search .btn {
  flex: none;
  padding: 0 8px;
  height: 44px;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  border-radius: 0 3px 3px 0;
}
header .desktop__navbar .main-navbar .search .btn .feather {
  color: #fff !important;
  width: 28px;
  height: 28px;
}
header .desktop__navbar .main-navbar .my-account {
  display: flex;
  padding: 0 25px;
  flex-direction: column;
  position: relative;
}
header .desktop__navbar .main-navbar .my-account small {
  font-weight: 300;
}
header .desktop__navbar .main-navbar .my-account .btn-dropdown {
  display: block;
  font-weight: 500;
  cursor: pointer;
  width: 100%;
}
header .desktop__navbar .main-navbar .my-account .feather {
  margin-left: 5px;
  width: 24px;
  height: 24px;
}
header .desktop__navbar .main-navbar .my-account .reputation-score {
  background-color: #1f2937 !important;
}
header .desktop__navbar .main-navbar .my-account .reputation-score a {
  color: #d1d5db !important;
}
header .desktop__navbar .main-navbar .my-account .headline {
  padding: 0.25rem 1rem 0.75rem;
  border-bottom: 1px solid #e5e7eb;
}
header .desktop__navbar .main-navbar .my-account .form-sign-in {
  min-width: 400px;
}
header .desktop__navbar .main-navbar .my-account .dropdown-menu {
  min-width: max(175px, 100%);
}
header .desktop__navbar .main-navbar .my-account .sidebar .heading {
  display: none;
}
header .desktop__navbar .main-navbar .my-account .sidebar {
  transform: translateX(0);
  --pb-sidebar-position: relative;
  --pb-sidebar-top: 0;
  --pb-sidebar-height: auto;
  padding: 0 0.5rem;
}
header .desktop__navbar .main-navbar .my-account:before, header .desktop__navbar .main-navbar .cart-dropdown:before {
  content: "";
  height: 35px;
  width: 1px;
  position: absolute;
  left: 0;
  top: calc((100% - 35px) / 2);
  background-color: rgba(156, 163, 175, 0.3);
}
header .desktop__navbar .main-navbar .my-account .dropdown-menu, header .desktop__navbar .main-navbar .cart-dropdown .dropdown-menu {
  background-color: var(--pb-my-account-dropdown-menu-bg, var(--pb-color-white));
  border: 1px solid rgba(156, 163, 175, 0.3);
  box-shadow: 0 1px 5px 2px rgba(0, 0, 0, 0.1019607843);
  margin-top: 5px !important;
}
header .desktop__navbar .links-navbar {
  color: var(--pb-header-desktop-links-navbar-color, #000);
  background-color: var(--pb-header-desktop-links-navbar-bg, rgba(255, 255, 255, 0.8));
  border-bottom: 1px solid var(--pb-header-links-navbar-border-bottom-color, rgba(156, 163, 175, 0.3));
  padding: 10px 0;
}
.header-compact header .desktop__navbar .links-navbar {
  padding: 5px 0;
  --pb-header-desktop-links-navbar-bg: rgba(255, 255, 255, 0.2);
}
header .desktop__navbar .links-navbar .container {
  position: relative;
}
header .desktop__navbar .links-navbar .container .nav-link {
  padding-top: 5px;
  padding-bottom: 5px;
}
header {
  /* mobile */
}
header .mobile__navbar {
  display: var(--pb-mobile-navbar-display, flex);
  flex-direction: column;
  gap: 0.75rem;
  z-index: 100;
  border-bottom: var(--pb-mobile-navbar-border-bottom, 1px solid #e5e7eb);
  padding: 0.5rem 1rem 1rem;
}
@media (min-width: 992px) {
  header .mobile__navbar {
    --pb-mobile-navbar-display: none;
  }
}
header .mobile__navbar {
  --pb-sidebar-nav-link-font-weight: 400;
}
header .mobile__navbar .logo {
  width: 100%;
  max-width: var(--pb-navbar-logo-img-width, 150px);
  max-height: var(--pb-navbar-logo-img-height, 60px);
}
header .mobile__navbar {
  /* [ CUSTOM WORK:- THE SELECT SOURCE ] (2026-08-10) TSS-43 REVERTED at the
     requester's instruction. The mobile logo is centred again, which is what this
     row's `justify-content: space-between` does on its own: the trailing
     cart-dropdown slot is always empty today, so the slack falls either side of
     the lockup. The previous rule here was `.tss-logo-lockup { margin-right: auto }`,
     which absorbed that slack and pinned the button and logo flush left. Restore
     that one declaration to go back to left alignment. */
}
header .mobile__navbar .search-field {
  display: block;
}
header .mobile__navbar .search-field input {
  background-color: #f9fafb;
  border-color: #e5e7eb;
  border-radius: 5px;
  background-clip: padding-box; /* stops bg color from leaking outside the border: */
}
header .au-links-mobile .sidebar-container {
  margin-left: 1.5rem;
}
header .au-links-mobile .sidebar-container > .sidebar-menu > ul {
  margin-top: 0;
}

/* /HEADER */
header button, header .button, header .feather, header .btn .bi, .sidebar button, .sidebar .button, .sidebar .feather, .sidebar .btn .bi {
  color: var(--pb-header-button-color, #1f2937) !important;
  background-color: transparent;
  border: none;
  font-size: var(--pb-header-button-font-size, 28px);
}

/* SIDEBAR & CORRESPONDING MAIN ELEMENT */
@media (max-width: 991.98px) {
  .sidebar {
    --pb-sidebar-width: 85vw;
    --pb-sidebar-height: 100vh;
    padding: 0.5rem 1rem 1rem;
  }
}
@media (min-width: 992px) {
  .sidebar {
    flex: 0 0 var(--pb-sidebar-width);
    --pb-sidebar-top: 15px;
    --pb-sidebar-height: calc(100vh - 30px);
    --pb-sidebar-position: sticky;
    overflow-y: auto;
  }
}

.main {
  display: flex;
  flex-direction: column;
}

/* /SIDEBAR & CORRESPONDING MAIN ELEMENT */
/* CONTAINER */
@media (max-width: 991.98px) {
  .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
/* /CONTAINER */
/* FOOTER */
footer {
  margin-top: 3rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  font-size: 14px;
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: var(--pb-footer-border-color, rgba(230, 227, 226, 0.8));
  color: var(--pb-footer-color, #374151);
  background-color: var(--pb-footer-bg, rgba(230, 227, 226, 0.5));
}
footer a {
  font-weight: 400;
}
footer a:not(.btn) {
  color: #1f2937;
}
footer .footer-links.footer-links-horizontal {
  padding-left: 0;
}
footer .footer-links.footer-links-horizontal h4 {
  display: none;
}
footer .footer-links.footer-links-horizontal .nav {
  flex-direction: row !important;
  justify-content: center;
}
footer .footer-links.footer-links-horizontal li {
  display: inline-block;
}
footer .footer-links.footer-links-horizontal li + li {
  padding-left: 0.75rem;
}
footer .footer-links.footer-links-vertical h4 {
  font-size: 1.1rem;
  margin-bottom: 0.25rem;
}
footer .footer-links.footer-links-vertical ul {
  padding-left: 0;
}
footer .footer-links.footer-links-vertical li > a {
  padding: 0.2rem 1rem 0.2rem 0;
}
footer .footer-logo img {
  width: 200px;
}
footer .first-row > .col-md {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
footer .first-row .newsletter-subscription-box {
  background-color: var(--pb-color-rgba-black-20);
  padding: 1rem;
  border-radius: 6px;
}
footer .second-row {
  border-top: 1px solid var(--pb-color-rgba-gray-30);
  padding-top: 1.5rem;
  margin-top: 1rem;
}
footer .second-row .social-media-links {
  text-align: right;
}
footer .second-row .copyright-message {
  border-top: 1px solid var(--pb-color-rgba-gray-30);
  padding-top: 1rem;
  margin-top: 1rem;
  font-size: 12px;
}
@media (min-width: 992px) {
  footer .first-row,
  footer .second-row {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* /FOOTER */

/*# sourceMappingURL=theme.css.map */
