/* Phase 45.47.22 — marketplace + workflow UI polish */
:root{
  --lfp-4722-green:#174b38;
  --lfp-4722-green-2:#23654d;
  --lfp-4722-gold:#c8a44a;
  --lfp-4722-ink:#173a2d;
  --lfp-4722-muted:#687a71;
  --lfp-4722-line:#dce5df;
  --lfp-4722-soft:#f6f9f7;
  --lfp-4722-radius:16px;
  --lfp-4722-shadow:0 8px 24px rgba(20,63,47,.07);
}

/* ---------- Marketplace product cards ---------- */
body.lfp454721-shop .lfp454721-market,
body.lfp454721-shop .lfp454721-product,
body.lfp454721-checkout .lfp454721-checkout-shell{
  width:100%;
  max-width:1360px;
}
body.lfp454721-shop .lfp454721-grid{
  gap:14px!important;
}
.lfp454721-card{
  min-height:100%;
  border-color:rgba(200,164,74,.34);
  border-radius:17px;
  box-shadow:var(--lfp-4722-shadow);
  isolation:isolate;
}
.lfp454721-photo{
  aspect-ratio:4/3;
  min-height:150px;
  background:#f5f7f5;
  border-bottom:1px solid #e9efeb;
  overflow:hidden!important;
}
.lfp454721-photo img{
  width:100%!important;
  height:100%!important;
  padding:5px;
  box-sizing:border-box;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
@media(hover:hover) and (pointer:fine){
  .lfp454721-photo:hover img{transform:scale(1.035)!important}
}
.lfp454721-card-copy{
  padding:10px 10px 6px;
}
.lfp454721-card-copy h2{
  min-height:2.5em;
  margin-bottom:6px;
  font-size:13.5px;
  line-height:1.25;
}
.lfp454721-card-copy>strong{
  margin-bottom:7px;
  font-size:16px;
}
.lfp454721-meta{
  min-height:22px;
  align-items:center;
}
.lfp454721-meta span{
  font-size:9.5px;
  line-height:1.15;
}
.lfp454721-card-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  padding:8px 9px 10px!important;
}
.lfp454721-qty{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(66px,auto)!important;
  gap:6px!important;
  width:100%;
}
.lfp454721-stepper{
  min-width:0;
  height:38px;
  grid-template-columns:34px minmax(34px,1fr) 34px;
  border-radius:11px;
}
.lfp454721-stepper button{
  min-width:34px;
  padding:0!important;
  font-size:19px;
  line-height:1;
}
.lfp454721-stepper input{
  font-size:12px!important;
}
.lfp454721-cart-action{
  width:auto!important;
  min-width:66px;
  height:38px;
  padding:0 10px!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:5px;
  border-radius:11px;
  font-size:11px!important;
  font-weight:900;
  white-space:nowrap;
}
.lfp454721-cart-action [data-lfp454721-cart-icon]{
  display:inline-grid;
  place-items:center;
  min-width:13px;
  font-size:15px;
  line-height:1;
}
.lfp454721-cart-action.in-cart{
  background:var(--lfp-4722-green-2)!important;
}
.lfp454721-store{
  width:100%;
  min-height:31px;
  height:auto;
  padding:6px 9px;
  box-sizing:border-box;
  border-radius:10px;
  font-size:10px;
}

/* Desktop hover stays inside the image frame; click/tap opens the full lightbox. */
.lfp454721-hover-preview{display:none!important}
.lfp454721-lightbox{
  padding:clamp(10px,2vw,22px)!important;
  backdrop-filter:blur(2px);
}
.lfp454721-lightbox figure{
  width:min(94vw,980px)!important;
  height:min(90vh,860px)!important;
  border:1px solid rgba(200,164,74,.5);
  box-shadow:0 24px 80px rgba(0,0,0,.34);
}
.lfp454721-lightbox img{
  padding:12px;
  box-sizing:border-box;
  object-fit:contain!important;
  background:#fff!important;
}
.lfp454721-product-media{
  aspect-ratio:4/3!important;
  max-height:560px!important;
  background:#f5f7f5!important;
}
.lfp454721-product-media img{
  padding:8px;
  box-sizing:border-box;
  object-fit:contain!important;
  object-position:center!important;
}

/* ---------- Always-visible floating basket ---------- */
.lfp454721-mobile-basket{
  position:fixed!important;
  right:18px!important;
  bottom:18px!important;
  left:auto!important;
  z-index:999990!important;
  display:grid!important;
  grid-template-columns:minmax(92px,1fr) auto 28px!important;
  align-items:center!important;
  gap:9px!important;
  width:min(330px,calc(100vw - 36px))!important;
  min-height:54px!important;
  padding:8px 12px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--lfp-4722-green),#0f3f2d)!important;
  color:#fff!important;
  text-decoration:none!important;
  box-shadow:0 16px 42px rgba(14,54,38,.30)!important;
}
.lfp454721-mobile-basket .lfp454721-float-title{
  min-width:0;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.lfp454721-mobile-basket .lfp454721-float-title em{
  font-style:normal;
}
.lfp454721-mobile-basket strong{
  font-size:12px!important;
  white-space:nowrap;
}
.lfp454721-mobile-basket b{
  display:grid!important;
  place-items:center!important;
  min-width:26px!important;
  height:26px!important;
  border-radius:999px!important;
  background:var(--lfp-4722-gold)!important;
  color:#173a2d!important;
  font-size:10px!important;
}
body.lfp454721-shop .lfpv8-phase427-launcher.lfp4527-lethabo-launcher{
  bottom:82px!important;
}

/* ---------- Checkout / basket ---------- */
.lfp454721-checkout-layout{
  gap:18px!important;
}
.lfp454721-checkout-card,
.lfp454721-summary{
  border-radius:17px!important;
  box-shadow:var(--lfp-4722-shadow)!important;
}
.lfp454721-checkout-line{
  grid-template-columns:78px minmax(0,1fr) minmax(154px,auto)!important;
  gap:12px!important;
  padding:10px!important;
  overflow:hidden;
}
.lfp454721-line-image{
  width:78px!important;
  height:78px!important;
  border:1px solid #e1e9e4!important;
  background:#fff!important;
}
.lfp454721-line-image img{
  padding:3px;
  box-sizing:border-box;
  object-fit:contain!important;
}
.lfp454721-line-controls{
  min-width:154px;
  gap:6px!important;
}
.lfp454721-qty--checkout .lfp454721-stepper{
  width:138px!important;
  height:38px!important;
}
.lfp454721-remove{
  min-height:28px;
  padding:3px 7px!important;
  border-radius:8px!important;
  text-decoration:none!important;
  background:#fff3f3!important;
  color:#963e3e!important;
  font-weight:800;
}
.lfp454721-summary{
  top:84px!important;
}
.lfp454721-summary button,
.lfp454721-place,
.lfp454721-mobile-checkout{
  min-height:46px!important;
  padding:10px 14px!important;
  border-radius:12px!important;
}

/* ---------- Framework-wide workflow polish ---------- */
body.lfp454722-ui-polish .lfp-front-wrap,
body.lfp454722-ui-polish .lfp-front-inner{
  box-sizing:border-box;
  min-width:0;
}
body.lfp454722-ui-polish .lfp-front-inner{
  width:100%!important;
  max-width:1440px!important;
  margin-inline:auto!important;
  padding-inline:clamp(10px,1.8vw,22px)!important;
}
body.lfp454722-ui-polish .lfp-box,
body.lfp454722-ui-polish .lfp-card,
body.lfp454722-ui-polish .lfp4514-panel,
body.lfp454722-ui-polish .lfp4519-panel,
body.lfp454722-ui-polish [class*="lfp45"][class*="-card"]{
  min-width:0;
  box-sizing:border-box;
  border-radius:var(--lfp-4722-radius);
}
body.lfp454722-ui-polish .lfp-box,
body.lfp454722-ui-polish .lfp-card{
  overflow-wrap:anywhere;
}
body.lfp454722-ui-polish .lfp-grid,
body.lfp454722-ui-polish .lfp-grid-cards,
body.lfp454722-ui-polish .lfp-cards,
body.lfp454722-ui-polish [class*="lfp"][class*="grid"]{
  gap:clamp(10px,1.5vw,18px);
  min-width:0;
}
body.lfp454722-ui-polish .lfp-actions,
body.lfp454722-ui-polish .lfp-inline-actions,
body.lfp454722-ui-polish [class*="actions"]{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  min-width:0;
}
body.lfp454722-ui-polish .lfp-btn,
body.lfp454722-ui-polish button.lfp-btn,
body.lfp454722-ui-polish a.lfp-btn,
body.lfp454722-ui-polish .lfp-btn-alt,
body.lfp454722-ui-polish .lfp-btn-soft,
body.lfp454722-ui-polish .lfp-btn-danger{
  min-height:42px;
  max-width:100%;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:9px 14px;
  border-radius:11px;
  line-height:1.2;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
  vertical-align:middle;
}
body.lfp454722-ui-polish button,
body.lfp454722-ui-polish input,
body.lfp454722-ui-polish select,
body.lfp454722-ui-polish textarea{
  box-sizing:border-box;
  max-width:100%;
}
body.lfp454722-ui-polish .lfp-form input:not([type="checkbox"]):not([type="radio"]),
body.lfp454722-ui-polish .lfp-form select,
body.lfp454722-ui-polish .lfp-form textarea,
body.lfp454722-ui-polish .lfp-inline-form input:not([type="checkbox"]):not([type="radio"]),
body.lfp454722-ui-polish .lfp-inline-form select{
  min-height:42px;
  border-radius:10px;
}
body.lfp454722-ui-polish img{
  max-width:100%;
}
body.lfp454722-ui-polish .lfp-table,
body.lfp454722-ui-polish table.lfp-table{
  max-width:100%;
}
body.lfp454722-ui-polish .lfp-table-wrap,
body.lfp454722-ui-polish [class*="scroll"]{
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
body.lfp454722-ui-polish .lfp454722-repaired-label{
  font-size:inherit;
  font-weight:inherit;
}

@media(max-width:1050px){
  .lfp454721-checkout-line{grid-template-columns:70px minmax(0,1fr) minmax(142px,auto)!important}
  .lfp454721-line-image{width:70px!important;height:70px!important}
}
@media(max-width:780px){
  .lfp454721-mobile-basket{
    right:10px!important;
    bottom:10px!important;
    width:min(320px,calc(100vw - 20px))!important;
  }
  .lfp454721-checkout-line{
    grid-template-columns:64px minmax(0,1fr)!important;
    align-items:start!important;
  }
  .lfp454721-line-image{width:64px!important;height:64px!important}
  .lfp454721-line-controls{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    min-width:0!important;
    width:100%!important;
  }
  .lfp454721-qty--checkout .lfp454721-stepper{width:100%!important}
}
@media(max-width:600px){
  body.lfp454721-shop .lfp454721-grid{gap:9px!important}
  .lfp454721-photo{aspect-ratio:1/1;min-height:0}
  .lfp454721-card-copy{padding:8px 8px 5px}
  .lfp454721-card-copy h2{font-size:11.5px!important;min-height:2.45em}
  .lfp454721-card-copy>strong{font-size:14.5px!important}
  .lfp454721-card-actions{padding:6px 7px 8px!important}
  .lfp454721-qty{grid-template-columns:minmax(0,1fr) 58px!important;gap:5px!important}
  .lfp454721-stepper{height:34px!important;grid-template-columns:29px minmax(28px,1fr) 29px!important}
  .lfp454721-stepper button{min-width:29px;font-size:17px!important}
  .lfp454721-cart-action{min-width:58px!important;height:34px!important;padding:0 7px!important;font-size:10px!important}
  .lfp454721-cart-action [data-lfp454721-cart-icon]{font-size:13px}
  .lfp454721-store{min-height:29px!important;padding:5px 7px!important}
  .lfp454721-mobile-basket{
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    width:auto!important;
    min-height:50px!important;
    border-radius:14px!important;
  }
  body.lfp454721-shop .lfpv8-phase427-launcher.lfp4527-lethabo-launcher,
  body.lfp454721-checkout .lfpv8-phase427-launcher.lfp4527-lethabo-launcher{bottom:66px!important}
  body.lfp454722-ui-polish .lfp-front-inner{padding-inline:8px!important}
  body.lfp454722-ui-polish .lfp-actions,
  body.lfp454722-ui-polish .lfp-inline-actions{align-items:stretch}
  body.lfp454722-ui-polish .lfp-actions>.lfp-btn,
  body.lfp454722-ui-polish .lfp-inline-actions>.lfp-btn{flex:1 1 140px}
}
@media(max-width:380px){
  .lfp454721-qty{grid-template-columns:1fr!important}
  .lfp454721-cart-action{width:100%!important}
}

/* ---------- Phase 45.47.24: Seller Studio > My Products compact fixed-card grid ----------
   Standalone selectors intentionally do not depend on the seller body class. This keeps
   the listing grid compact even when a theme/page builder alters body_class output. */
#lfp-seller-listings.lfp454717-seller-products{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
#lfp-seller-listings .lfp454717-seller-products-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin:0 0 10px!important;
}
#lfp-seller-listings .lfp454717-seller-products-head h3{
  margin:0!important;
  font-size:20px!important;
  line-height:1.2!important;
}
#lfp-seller-listings .lfp454717-seller-products-head p{
  margin:3px 0 0!important;
  font-size:12px!important;
  line-height:1.35!important;
}
#lfp-seller-listings .lfp454717-seller-products-head .lfp-btn{
  min-height:36px!important;
  padding:7px 11px!important;
  border-radius:10px!important;
  font-size:12px!important;
  line-height:1!important;
}
#lfp-seller-listings .lfp454717-seller-counts{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0 0 12px!important;
}
#lfp-seller-listings .lfp454717-seller-counts span{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-height:27px!important;
  padding:5px 8px!important;
  margin:0!important;
  border:1px solid #d9e5dd!important;
  border-radius:999px!important;
  background:#edf4ef!important;
  color:#34594b!important;
  font-size:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#lfp-seller-listings .lfp454717-seller-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(170px,210px))!important;
  justify-content:start!important;
  align-items:start!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
}
#lfp-seller-listings .lfp454717-seller-product-card{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:210px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(185,145,45,.34)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(18,58,43,.07)!important;
}
#lfp-seller-listings .lfp454717-seller-product-media{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:132px!important;
  min-height:132px!important;
  max-height:132px!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#f3f6f4!important;
  border-bottom:1px solid #e7ece8!important;
}
#lfp-seller-listings .lfp454717-seller-product-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:132px!important;
  margin:0!important;
  padding:4px!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
#lfp-seller-listings .lfp454717-seller-product-media>span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  padding:8px!important;
  box-sizing:border-box!important;
  color:#6b7d74!important;
  font-size:11px!important;
  text-align:center!important;
}
#lfp-seller-listings .lfp454717-seller-product-media>b{
  position:absolute!important;
  top:7px!important;
  left:7px!important;
  z-index:2!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:22px!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.95)!important;
  color:#405b50!important;
  box-shadow:0 2px 8px rgba(0,0,0,.08)!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#lfp-seller-listings .lfp454717-seller-product-media>b.status-approved{
  background:#dff4e7!important;
  color:#12623d!important;
}
#lfp-seller-listings .lfp454717-seller-product-media>b.status-pending{
  background:#fff1c7!important;
  color:#7a5812!important;
}
#lfp-seller-listings .lfp454717-seller-product-copy{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  min-width:0!important;
  padding:8px 9px 9px!important;
}
#lfp-seller-listings .lfp454717-seller-product-copy h4{
  display:-webkit-box!important;
  min-height:2.35em!important;
  margin:0 0 2px!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:#173f31!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.18!important;
}
#lfp-seller-listings .lfp454717-seller-product-copy>small{
  display:block!important;
  margin:0!important;
  overflow:hidden!important;
  color:#718179!important;
  font-size:10px!important;
  line-height:1.2!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
#lfp-seller-listings .lfp454717-product-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:6px!important;
  min-width:0!important;
  margin:7px 0!important;
  font-size:10px!important;
  line-height:1.2!important;
}
#lfp-seller-listings .lfp454717-product-meta strong{
  min-width:0!important;
  color:#174b38!important;
  font-size:13px!important;
  font-weight:900!important;
}
#lfp-seller-listings .lfp454717-product-meta span{
  color:#6b7d74!important;
  font-size:9.5px!important;
  white-space:nowrap!important;
}
#lfp-seller-listings .lfp454717-admin-note{
  margin:3px 0 6px!important;
  color:#695d3d!important;
  font-size:10px!important;
  line-height:1.3!important;
}
#lfp-seller-listings .lfp454717-product-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin-top:auto!important;
  padding-top:7px!important;
  border-top:1px solid #edf0ed!important;
  font-size:10px!important;
}
#lfp-seller-listings .lfp454717-product-actions>a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:29px!important;
  padding:5px 7px!important;
  border-radius:8px!important;
  background:#edf5f0!important;
  color:#1b654a!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
  text-decoration:none!important;
}
#lfp-seller-listings .lfp454717-product-actions>span{
  color:#718179!important;
  font-size:9px!important;
  line-height:1.2!important;
}
#lfp-seller-listings .lfp454717-product-actions form{
  display:block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
}
#lfp-seller-listings .lfp454717-archive{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:54px!important;
  min-height:29px!important;
  margin:0!important;
  padding:5px 7px!important;
  border:1px solid #eadede!important;
  border-radius:8px!important;
  background:#fff7f7!important;
  color:#8b4e4e!important;
  font-size:10px!important;
  font-weight:750!important;
  line-height:1!important;
  cursor:pointer!important;
}
#lfp-seller-listings .lfp454717-empty{
  grid-column:1/-1!important;
  max-width:620px!important;
}
@media(max-width:900px){
  #lfp-seller-listings .lfp454717-seller-grid{
    grid-template-columns:repeat(auto-fill,minmax(160px,200px))!important;
    gap:10px!important;
  }
  #lfp-seller-listings .lfp454717-seller-product-card{max-width:200px!important}
  #lfp-seller-listings .lfp454717-seller-product-media,
  #lfp-seller-listings .lfp454717-seller-product-media img{height:122px!important;min-height:122px!important;max-height:122px!important}
}
@media(max-width:600px){
  #lfp-seller-listings .lfp454717-seller-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    justify-content:stretch!important;
    gap:8px!important;
  }
  #lfp-seller-listings .lfp454717-seller-product-card{max-width:none!important;border-radius:12px!important}
  #lfp-seller-listings .lfp454717-seller-product-media,
  #lfp-seller-listings .lfp454717-seller-product-media img{height:108px!important;min-height:108px!important;max-height:108px!important}
  #lfp-seller-listings .lfp454717-seller-product-copy{padding:7px!important}
  #lfp-seller-listings .lfp454717-seller-product-copy h4{font-size:11.5px!important}
  #lfp-seller-listings .lfp454717-product-meta strong{font-size:12px!important}
  #lfp-seller-listings .lfp454717-product-actions{grid-template-columns:1fr!important}
  #lfp-seller-listings .lfp454717-product-actions form,
  #lfp-seller-listings .lfp454717-archive,
  #lfp-seller-listings .lfp454717-product-actions>a{width:100%!important}
}

/* ---------- Phase 45.47.25: Client catalogue floating selected-items navigator ----------
   Selected catalogue lines no longer grow a tall right-hand rail. The client sees a
   persistent count + estimated-total navigator over the catalogue and opens a bounded
   overlay grid to review/remove/change quantities without losing scroll position. */
.lfp-catalogue-live .lfp-selection-float{
  position:fixed!important;
  right:22px!important;
  bottom:22px!important;
  z-index:9990!important;
  width:min(430px,calc(100vw - 44px))!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(14px)!important;
  pointer-events:none!important;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;
}
.lfp-catalogue-live.has-live-selection .lfp-selection-float{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0)!important;
  pointer-events:auto!important;
}
.lfp-catalogue-live .lfp-selection-float-button{
  display:grid!important;
  grid-template-columns:36px minmax(96px,1fr) minmax(96px,auto) auto!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-height:64px!important;
  margin:0!important;
  padding:9px 10px!important;
  border:1px solid rgba(199,165,75,.78)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#123d30,#1f6a50)!important;
  color:#fff!important;
  box-shadow:0 18px 46px rgba(18,61,48,.28),0 4px 14px rgba(15,23,42,.16)!important;
  cursor:pointer!important;
  text-align:left!important;
}
.lfp-catalogue-live .lfp-selection-float-icon{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:36px!important;height:36px!important;border-radius:12px!important;
  background:#f1d684!important;color:#163d30!important;font-size:18px!important;font-weight:900!important;
}
.lfp-catalogue-live .lfp-selection-float-copy,
.lfp-catalogue-live .lfp-selection-float-total{display:flex!important;flex-direction:column!important;gap:1px!important;min-width:0!important}
.lfp-catalogue-live .lfp-selection-float-button small{font-size:10px!important;line-height:1.15!important;color:rgba(255,255,255,.72)!important;font-weight:650!important;letter-spacing:.02em!important}
.lfp-catalogue-live .lfp-selection-float-button strong{font-size:13px!important;line-height:1.2!important;color:#fff!important;font-weight:850!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.lfp-catalogue-live .lfp-selection-float-action{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:38px!important;padding:7px 11px!important;border-radius:12px!important;
  background:#fff!important;color:#174b39!important;font-size:11px!important;font-weight:850!important;white-space:nowrap!important;
}
.lfp-selection-overlay{
  position:fixed!important;inset:0!important;z-index:10020!important;display:none!important;
  align-items:center!important;justify-content:center!important;padding:22px!important;
}
.lfp-selection-overlay.is-open{display:flex!important}
.lfp-selection-overlay-backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;margin:0!important;padding:0!important;background:rgba(9,18,14,.60)!important;backdrop-filter:blur(7px)!important;cursor:default!important}
.lfp-selection-overlay-panel{
  position:relative!important;z-index:1!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;
  width:min(1080px,calc(100vw - 44px))!important;max-height:min(82vh,780px)!important;
  overflow:hidden!important;border:1px solid rgba(199,165,75,.52)!important;border-radius:24px!important;
  background:#f8faf8!important;color:#17241d!important;box-shadow:0 30px 85px rgba(8,20,15,.35)!important;
}
.lfp-selection-overlay-head{
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important;
  padding:18px 20px!important;border-bottom:1px solid #e5ece7!important;background:#fff!important;
}
.lfp-selection-overlay-head h3{margin:2px 0 4px!important;color:#173e31!important;font-size:24px!important;line-height:1.1!important}
.lfp-selection-overlay-head p{margin:0!important;color:#64746b!important;font-size:12px!important}
.lfp-selection-overlay-head .lfp-ui-kicker{color:#9b7624!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.09em!important;font-size:9px!important}
.lfp-selection-overlay-head-stats{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:wrap!important}
.lfp-selection-overlay-head-stats .lfp-chip{margin:0!important;background:#eef5f1!important;color:#245942!important;border:1px solid #d7e8df!important}
.lfp-selection-overlay-head-stats .lfp-selection-total-chip{background:#fff5d8!important;color:#765914!important;border-color:#ead493!important}
.lfp-selection-overlay-close{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;
  margin:0!important;padding:0!important;border:1px solid #dce5df!important;border-radius:12px!important;background:#fff!important;color:#34483d!important;
  font-size:23px!important;line-height:1!important;cursor:pointer!important;
}
.lfp-catalogue-live .lfp-selection-grid{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;
  align-content:start!important;overflow:auto!important;overscroll-behavior:contain!important;padding:16px 18px!important;
  max-height:none!important;background:#f7faf8!important;
}
.lfp-catalogue-live .lfp-selection-grid>.lfp-muted{grid-column:1/-1!important;margin:16px!important;text-align:center!important}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-item{
  position:relative!important;display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;grid-template-rows:auto auto!important;
  gap:9px 10px!important;align-items:start!important;min-width:0!important;margin:0!important;padding:9px!important;
  border:1px solid #dfe9e3!important;border-radius:15px!important;background:#fff!important;color:#1d2a23!important;box-shadow:0 5px 16px rgba(31,75,57,.06)!important;
}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-thumb{
  width:62px!important;height:62px!important;border-radius:11px!important;overflow:hidden!important;background:#f0f4f1!important;border:1px solid #e2e9e4!important;
}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#fff!important}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-thumb-empty{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;font-size:9px!important;color:#7c8b82!important;text-align:center!important}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-copy{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important;padding-right:0!important}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-copy strong{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;color:#1d372b!important;font-size:11.5px!important;line-height:1.22!important}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-copy span{font-size:9.5px!important;line-height:1.2!important;color:#6d7d74!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-copy .lfp-selection-line-total{font-size:12px!important;font-weight:850!important;color:#1d684d!important}
.lfp-selection-card-controls{grid-column:1/-1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;border-top:1px solid #edf1ee!important;padding-top:7px!important}
.lfp-selection-qty{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;color:#65766c!important;font-size:9px!important;font-weight:750!important}
.lfp-selection-qty input{width:58px!important;min-width:0!important;height:30px!important;min-height:30px!important;margin:0!important;padding:3px 6px!important;border:1px solid #dbe5df!important;border-radius:8px!important;background:#fff!important;color:#213d30!important;font-size:11px!important;font-weight:800!important;text-align:center!important}
.lfp-catalogue-live .lfp-selection-grid .lfp-selection-remove{
  position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:30px!important;
  min-height:30px!important;margin:0!important;padding:4px 8px!important;border:1px solid #ebdede!important;border-radius:8px!important;background:#fff8f8!important;color:#8b5050!important;font-size:9.5px!important;font-weight:800!important;
}
.lfp-selection-overlay-summary{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;flex-wrap:wrap!important;
  margin:0!important;padding:14px 18px!important;border-top:1px solid #dfe8e2!important;background:#fff!important;color:#233b30!important;
}
.lfp-selection-summary-copy{display:flex!important;align-items:center!important;gap:24px!important;flex-wrap:wrap!important}
.lfp-selection-summary-copy>span{display:flex!important;flex-direction:column!important;gap:1px!important}
.lfp-selection-summary-copy small{font-size:9.5px!important;color:#75857c!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-weight:750!important}
.lfp-selection-summary-copy strong{font-size:16px!important;color:#1d5e47!important;line-height:1.2!important}
.lfp-selection-overlay-summary .lfp-side-cart-actions{display:flex!important;gap:8px!important;align-items:center!important;margin:0!important}
.lfp-selection-overlay-summary .lfp-btn{min-height:38px!important;margin:0!important;padding:8px 12px!important;font-size:11px!important}
body.lfp-selection-overlay-open{overflow:hidden!important}
/* Keep the request-cart rail bounded. It can scroll internally instead of making the whole catalogue page extremely tall. */
.lfp-catalogue-live .lfp-catalogue-side .lfp-side-cart-panel[open] .lfp-side-cart-box{max-height:calc(100vh - 110px)!important;overflow:auto!important;overscroll-behavior:contain!important}
@media(max-width:980px){
  .lfp-catalogue-live .lfp-selection-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .lfp-catalogue-live .lfp-selection-float{left:10px!important;right:10px!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;width:auto!important}
  .lfp-catalogue-live .lfp-selection-float-button{grid-template-columns:32px minmax(82px,1fr) minmax(82px,auto) auto!important;gap:7px!important;min-height:58px!important;border-radius:16px!important;padding:7px 8px!important}
  .lfp-catalogue-live .lfp-selection-float-icon{width:32px!important;height:32px!important;border-radius:10px!important;font-size:15px!important}
  .lfp-catalogue-live .lfp-selection-float-action{min-height:34px!important;padding:6px 8px!important;font-size:10px!important}
  .lfp-selection-overlay{padding:0!important;align-items:flex-end!important}
  .lfp-selection-overlay-panel{width:100vw!important;max-height:86vh!important;border-radius:22px 22px 0 0!important;border-left:0!important;border-right:0!important;border-bottom:0!important}
  .lfp-selection-overlay-head{padding:14px!important;gap:10px!important}
  .lfp-selection-overlay-head h3{font-size:20px!important}
  .lfp-selection-overlay-head>div:first-child p:not(.lfp-ui-kicker){display:none!important}
  .lfp-selection-overlay-head-stats .lfp-selection-total-chip{display:none!important}
  .lfp-catalogue-live .lfp-selection-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:10px!important}
  .lfp-catalogue-live .lfp-selection-grid .lfp-selection-item{grid-template-columns:52px minmax(0,1fr)!important;gap:7px!important;padding:7px!important;border-radius:12px!important}
  .lfp-catalogue-live .lfp-selection-grid .lfp-selection-thumb{width:52px!important;height:52px!important;border-radius:9px!important}
  .lfp-selection-overlay-summary{padding:10px!important;gap:9px!important}
  .lfp-selection-summary-copy{gap:15px!important}
  .lfp-selection-overlay-summary .lfp-side-cart-actions{width:100%!important;display:grid!important;grid-template-columns:1fr auto!important}
  .lfp-selection-overlay-summary .lfp-side-cart-actions .lfp-btn{width:100%!important}
}
@media(max-width:430px){
  .lfp-catalogue-live .lfp-selection-float-button{grid-template-columns:30px minmax(0,1fr) auto!important}
  .lfp-catalogue-live .lfp-selection-float-total{display:none!important}
  .lfp-catalogue-live .lfp-selection-float-button strong{font-size:12px!important}
  .lfp-catalogue-live .lfp-selection-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .lfp-catalogue-live .lfp-selection-grid .lfp-selection-item{grid-template-columns:1fr!important}
  .lfp-catalogue-live .lfp-selection-grid .lfp-selection-thumb{width:100%!important;height:86px!important}
  .lfp-selection-card-controls{grid-column:1!important}
}
