/* Phase 45.47.21 — retail-style marketplace ergonomics in the SourceFlora theme */
:root{--lfp-shop-green:#174b38;--lfp-shop-green2:#246a50;--lfp-shop-gold:#c8a44a;--lfp-shop-ink:#173a2d;--lfp-shop-muted:#6d7d75;--lfp-shop-bg:#f6f8f6;--lfp-shop-line:#dce5df}
body.lfp454721-shop .lfp454721-market,body.lfp454721-shop .lfp454721-product,body.lfp454721-checkout .lfp454721-checkout-shell{max-width:1280px;margin:0 auto;padding:12px 16px 90px;box-sizing:border-box}
.lfp454721-top{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:4px 0 12px}.lfp454721-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#71837a}.lfp454721-top h1{margin:3px 0 0;font-size:clamp(23px,3vw,34px);line-height:1.05;color:var(--lfp-shop-ink)}.lfp454721-basket{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid rgba(200,164,74,.45);border-radius:13px;background:#fff;color:var(--lfp-shop-green);font-weight:850;text-decoration:none}.lfp454721-basket b{display:grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:var(--lfp-shop-green);color:#fff;font-size:10px}
.lfp454721-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;background:#fff;border:1px solid var(--lfp-shop-line);border-radius:14px;padding:5px 6px 5px 11px;box-shadow:0 6px 18px rgba(24,70,53,.05)}.lfp454721-search span{font-size:24px;color:#60746a}.lfp454721-search input{min-width:0;height:38px;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;font-size:14px!important;padding:0!important}.lfp454721-search button{height:36px;border:0;border-radius:10px;padding:0 14px;background:var(--lfp-shop-green);color:#fff;font-weight:800}.lfp454721-chips{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding:10px 1px 13px}.lfp454721-chips::-webkit-scrollbar{display:none}.lfp454721-chips a{flex:0 0 auto;padding:7px 11px;border:1px solid var(--lfp-shop-line);border-radius:999px;background:#fff;color:#49685b;text-decoration:none;font-size:11.5px;font-weight:800}.lfp454721-chips a.active{background:var(--lfp-shop-green);color:#fff;border-color:var(--lfp-shop-green)}
body.lfp454721-shop .lfp454721-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;align-items:stretch!important}.lfp454721-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(200,164,74,.28);border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(24,70,53,.055)}.lfp454721-photo{display:block;position:relative;width:100%;aspect-ratio:1/1;border:0;padding:0;margin:0;background:#eef3ef;overflow:hidden;cursor:zoom-in}.lfp454721-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .18s ease}.lfp454721-photo:hover img{transform:scale(1.035)}.lfp454721-photo span{display:grid;height:100%;place-items:center;font-size:11px;color:#7b8b83}.lfp454721-card-copy{padding:8px 9px 4px}.lfp454721-card-copy h2{font-size:12.5px;line-height:1.22;min-height:2.44em;margin:0 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lfp454721-card-copy h2 a{color:var(--lfp-shop-ink);text-decoration:none}.lfp454721-card-copy>strong{display:block;font-size:16px;line-height:1.1;color:var(--lfp-shop-green);margin:0 0 5px}.lfp454721-meta{display:flex;gap:4px;flex-wrap:wrap}.lfp454721-meta span{padding:3px 5px;border-radius:999px;background:#f0f5f2;color:#66786f;font-size:9px}.lfp454721-card-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;margin-top:auto;padding:7px 8px 9px}.lfp454721-store{display:inline-grid;place-items:center;height:34px;padding:0 7px;border:1px solid var(--lfp-shop-line);border-radius:9px;color:#557064;text-decoration:none;font-size:9.5px;font-weight:800}
.lfp454721-qty{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:5px;align-items:center;min-width:0}.lfp454721-stepper{display:grid;grid-template-columns:30px minmax(34px,1fr) 30px;align-items:center;height:34px;border:1px solid #cfe0d6;border-radius:10px;overflow:hidden;background:#f8fbf9}.lfp454721-stepper button{height:100%;border:0;background:transparent;color:var(--lfp-shop-green);font-size:18px;font-weight:850;padding:0}.lfp454721-stepper input{width:100%;min-width:0;height:100%;border:0!important;background:transparent!important;box-shadow:none!important;text-align:center;font-size:11px!important;font-weight:850;color:var(--lfp-shop-ink);padding:0!important;-moz-appearance:textfield}.lfp454721-stepper input::-webkit-outer-spin-button,.lfp454721-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lfp454721-cart-action{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:10px;background:var(--lfp-shop-green);color:#fff;font-size:14px;box-shadow:none}.lfp454721-cart-action.in-cart{background:var(--lfp-shop-green2)}.lfp454721-qty.is-busy{opacity:.6;pointer-events:none}.lfp454721-quote,.lfp454721-view{display:grid;place-items:center;min-height:34px;border-radius:9px;background:var(--lfp-shop-green);color:#fff;text-decoration:none;font-size:10.5px;font-weight:850}.lfp454721-empty{grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;padding:18px;border:1px dashed #cddbd2;border-radius:14px;background:#fff}.lfp454721-empty a{color:var(--lfp-shop-green)}
/* Desktop hover image preview and click lightbox */
.lfp454721-hover-preview{position:fixed;z-index:999998;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,64vw);height:min(620px,72vh);padding:8px;border:1px solid rgba(200,164,74,.45);border-radius:18px;background:#fff;box-shadow:0 24px 80px rgba(10,35,25,.28);pointer-events:none;opacity:0;transition:opacity .12s}.lfp454721-hover-preview.show{opacity:1}.lfp454721-hover-preview img{width:100%;height:100%;object-fit:contain;border-radius:12px}.lfp454721-lightbox{position:fixed;inset:0;z-index:1000000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(8,25,18,.86)}.lfp454721-lightbox.open{display:flex}.lfp454721-lightbox figure{position:relative;margin:0;width:min(94vw,920px);height:min(88vh,820px);display:grid;grid-template-rows:minmax(0,1fr) auto;background:#fff;border-radius:18px;overflow:hidden}.lfp454721-lightbox img{width:100%;height:100%;object-fit:contain;background:#f5f7f5}.lfp454721-lightbox figcaption{padding:9px 14px;color:var(--lfp-shop-ink);font-weight:800}.lfp454721-lightbox button{position:absolute;right:10px;top:10px;z-index:2;width:38px;height:38px;border:0;border-radius:999px;background:rgba(23,75,56,.9);color:#fff;font-size:24px}
/* Product detail */
.lfp454721-back{display:inline-flex;margin:0 0 10px;color:#557064;text-decoration:none;font-size:12px;font-weight:800}.lfp454721-product-grid{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);gap:24px;align-items:start;max-width:1000px;margin:0 auto}.lfp454721-product-media{position:relative;width:100%;aspect-ratio:1/1;max-height:520px;border:1px solid rgba(200,164,74,.35);border-radius:18px;overflow:hidden;background:#f1f5f2;padding:0;cursor:zoom-in}.lfp454721-product-media img{width:100%;height:100%;object-fit:cover}.lfp454721-product-media small{position:absolute;left:10px;bottom:10px;padding:5px 8px;border-radius:999px;background:rgba(23,75,56,.86);color:#fff;font-size:9.5px}.lfp454721-product-copy{padding:6px 0}.lfp454721-seller{font-size:11px}.lfp454721-seller a{color:#61766b;text-decoration:none}.lfp454721-product-copy h1{margin:5px 0 8px;font-size:clamp(25px,4vw,38px);line-height:1.08;color:var(--lfp-shop-ink)}.lfp454721-product-price{font-size:26px;font-weight:900;color:var(--lfp-shop-green);margin-bottom:9px}.lfp454721-product-tags{display:flex;gap:5px;flex-wrap:wrap}.lfp454721-product-tags span{padding:4px 7px;border-radius:999px;background:#edf4ef;color:#567064;font-size:10px}.lfp454721-desc{font-size:13px;line-height:1.55;color:#5a6e64;max-width:60ch}.lfp454721-detail-buy{max-width:370px;margin:14px 0}.lfp454721-qty--detail{grid-template-columns:minmax(0,1fr) 46px}.lfp454721-qty--detail .lfp454721-stepper{height:44px;grid-template-columns:40px minmax(50px,1fr) 40px}.lfp454721-qty--detail .lfp454721-cart-action{width:46px;height:44px}.lfp454721-details{border-top:1px solid var(--lfp-shop-line);border-bottom:1px solid var(--lfp-shop-line);padding:9px 0;margin:9px 0}.lfp454721-details summary{cursor:pointer;color:var(--lfp-shop-ink);font-weight:800}.lfp454721-details dl{display:grid;grid-template-columns:90px 1fr;gap:7px 12px;font-size:12px}.lfp454721-details dt{color:#7b8a83}.lfp454721-details dd{margin:0;color:#395a4b}.lfp454721-store-detail{display:inline-flex;margin-top:6px;color:var(--lfp-shop-green);font-size:12px;font-weight:800}
/* Basket / checkout */
body.lfp454721-checkout .site-footer,body.lfp454721-checkout footer.site-footer,body.lfp454721-checkout #colophon{display:none!important}.lfp454721-checkout-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px}.lfp454721-checkout-head>a{color:#567064;text-decoration:none;font-size:12px;font-weight:800}.lfp454721-checkout-head>div{text-align:right}.lfp454721-checkout-head span{display:block;font-size:20px;font-weight:900;color:var(--lfp-shop-ink)}.lfp454721-checkout-head strong{font-size:10px;color:#708179}.lfp454721-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start;max-width:1060px;margin:0 auto}.lfp454721-checkout-layout main{display:grid;gap:12px}.lfp454721-checkout-card,.lfp454721-summary{border:1px solid rgba(200,164,74,.28);border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(24,70,53,.045);padding:14px}.lfp454721-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.lfp454721-section-title h1,.lfp454721-section-title h2{margin:0;font-size:17px;color:var(--lfp-shop-ink)}.lfp454721-section-title span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:#edf4ef;color:var(--lfp-shop-green);font-size:10px;font-weight:850}.lfp454721-cart-lines{display:grid;gap:9px}.lfp454721-checkout-line{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px;border:1px solid #e4ebe6;border-radius:13px;background:#fbfcfb}.lfp454721-line-image{width:72px;height:72px;border:0;border-radius:10px;overflow:hidden;padding:0;background:#eef3ef;cursor:zoom-in}.lfp454721-line-image img{width:100%;height:100%;object-fit:cover}.lfp454721-line-copy{min-width:0}.lfp454721-line-copy h2{font-size:12.5px;line-height:1.25;margin:0 0 3px;color:var(--lfp-shop-ink)}.lfp454721-line-copy small{display:block;font-size:9.5px;color:#7a8982;margin-bottom:4px}.lfp454721-line-copy strong{font-size:11px;color:var(--lfp-shop-green)}.lfp454721-line-controls{display:grid;justify-items:end;gap:4px}.lfp454721-qty--checkout{display:block}.lfp454721-qty--checkout .lfp454721-stepper{width:112px}.lfp454721-line-total{font-size:11px;color:var(--lfp-shop-ink)}.lfp454721-remove{border:0;background:transparent;color:#a64b4b;font-size:9px;text-decoration:underline}.lfp454721-quote-chip{padding:4px 7px;border-radius:999px;background:#f4efe0;color:#8d6d19;font-size:9px}.lfp454721-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.lfp454721-form-grid label,.lfp454721-note{display:grid;gap:4px;color:#536b60;font-size:10.5px;font-weight:800}.lfp454721-form-grid input,.lfp454721-form-grid select,.lfp454721-note textarea{width:100%;box-sizing:border-box;border:1px solid #d7e1da!important;border-radius:10px!important;background:#fff!important;min-height:40px;padding:8px 10px!important;font-size:13px!important;box-shadow:none!important}.lfp454721-note{margin-top:9px}.lfp454721-deadline .lfp4530-buyer-protection{margin:9px 0 0!important;padding:9px!important;border:1px solid #e2e9e4!important;border-radius:11px!important;background:#f8faf8!important}.lfp454721-deadline h5{margin:0 0 6px!important;font-size:11px!important}.lfp454721-deadline p{margin:5px 0!important}.lfp454721-deadline .lfp-muted{display:none!important}.lfp454721-deadline label{font-size:10px!important}.lfp454721-deadline input,.lfp454721-deadline select{min-height:38px!important;border-radius:9px!important}.lfp454721-confirm p{margin:0 0 9px;font-size:11px;color:#66786f}.lfp454721-place,.lfp454721-summary button{width:100%;min-height:42px;border:0;border-radius:11px;background:var(--lfp-shop-green);color:#fff;font-weight:850}.lfp454721-summary{position:sticky;top:90px}.lfp454721-summary h2{margin:0 0 11px;color:var(--lfp-shop-ink);font-size:17px}.lfp454721-summary>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #edf1ee;font-size:11px;color:#61756b}.lfp454721-summary>div.total{padding:12px 0;font-size:13px;color:var(--lfp-shop-ink);border-bottom:0}.lfp454721-summary small{display:block;margin-top:8px;font-size:9px;line-height:1.4;color:#819088}.lfp454721-checkout-empty{display:grid;justify-items:center;gap:9px;padding:55px 20px;border:1px solid var(--lfp-shop-line);border-radius:16px;background:#fff;text-align:center}.lfp454721-checkout-empty span{font-size:34px}.lfp454721-checkout-empty h1{margin:0;color:var(--lfp-shop-ink);font-size:22px}.lfp454721-checkout-empty a{padding:9px 14px;border-radius:10px;background:var(--lfp-shop-green);color:#fff;text-decoration:none;font-weight:850}
.lfp454721-mobile-basket,.lfp454721-mobile-checkout{display:none}.lfp454721-toast{position:fixed;z-index:1000002;left:50%;bottom:88px;transform:translateX(-50%) translateY(14px);opacity:0;pointer-events:none;padding:9px 13px;border-radius:999px;background:#173f31;color:#fff;font-size:11px;font-weight:800;box-shadow:0 12px 34px rgba(0,0,0,.18);transition:.18s}.lfp454721-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.lfp454721-toast.error{background:#913d3d}
@media(max-width:1050px){body.lfp454721-shop .lfp454721-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.lfp454721-checkout-layout{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:780px){body.lfp454721-shop .lfp454721-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.lfp454721-product-grid{grid-template-columns:1fr}.lfp454721-product-media{max-width:480px;margin:0 auto}.lfp454721-checkout-layout{grid-template-columns:1fr}.lfp454721-summary{position:static}.lfp454721-summary button{display:none}.lfp454721-form-grid{grid-template-columns:1fr}}
@media(max-width:600px){body.lfp454721-shop .lfp454721-market,body.lfp454721-shop .lfp454721-product,body.lfp454721-checkout .lfp454721-checkout-shell{padding:8px 8px 86px!important}.lfp454721-top{align-items:center}.lfp454721-top h1{font-size:22px}.lfp454721-top .lfp454721-kicker{font-size:9px}.lfp454721-basket{display:none}.lfp454721-search{position:sticky;top:0;z-index:25;margin:0 -1px}.lfp454721-search input{font-size:13px!important}.lfp454721-search button{padding:0 10px}.lfp454721-chips{padding-bottom:9px}.lfp454721-chips a{font-size:10.5px;padding:6px 9px}body.lfp454721-shop .lfp454721-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.lfp454721-card{border-radius:13px}.lfp454721-card-copy{padding:7px 7px 3px}.lfp454721-card-copy h2{font-size:11px}.lfp454721-card-copy>strong{font-size:14px}.lfp454721-meta span{font-size:8px;padding:2px 4px}.lfp454721-card-actions{grid-template-columns:1fr;padding:5px 6px 7px;gap:4px}.lfp454721-store{height:28px}.lfp454721-qty{grid-template-columns:minmax(0,1fr) 31px}.lfp454721-stepper{height:31px;grid-template-columns:27px minmax(30px,1fr) 27px}.lfp454721-stepper input{font-size:9.5px!important}.lfp454721-stepper button{font-size:16px}.lfp454721-cart-action{width:31px;height:31px}.lfp454721-mobile-basket{position:fixed;left:8px;right:8px;bottom:8px;z-index:999990;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;min-height:48px;padding:7px 12px;border-radius:15px;background:var(--lfp-shop-green);color:#fff;text-decoration:none;box-shadow:0 14px 36px rgba(18,59,43,.25)}.lfp454721-mobile-basket span{font-size:12px;font-weight:850}.lfp454721-mobile-basket strong{font-size:12px}.lfp454721-mobile-basket b{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:var(--lfp-shop-gold);font-size:10px}.lfpv8-phase427-launcher.lfp4527-lethabo-launcher{bottom:66px!important}.lfp454721-product-media{max-width:none;max-height:330px}.lfp454721-product-copy h1{font-size:26px}.lfp454721-product-price{font-size:22px}.lfp454721-product-media small{display:none}.lfp454721-checkout-head{margin-bottom:9px}.lfp454721-checkout-line{grid-template-columns:58px minmax(0,1fr);align-items:start}.lfp454721-line-image{width:58px;height:58px}.lfp454721-line-controls{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;justify-items:stretch;width:100%}.lfp454721-qty--checkout .lfp454721-stepper{width:100%}.lfp454721-line-total{text-align:right}.lfp454721-remove{text-align:right}.lfp454721-checkout-card{padding:11px}.lfp454721-summary{padding:11px;margin-bottom:60px}.lfp454721-mobile-checkout{position:fixed;left:8px;right:8px;bottom:8px;z-index:999991;display:flex;align-items:center;justify-content:space-between;min-height:49px;border:0;border-radius:15px;padding:8px 14px;background:var(--lfp-shop-green);color:#fff;font-size:13px;font-weight:850;box-shadow:0 14px 36px rgba(18,59,43,.25)}body.lfp454721-checkout .lfpv8-phase427-launcher.lfp4527-lethabo-launcher{bottom:66px!important}}
@media(hover:none){.lfp454721-hover-preview{display:none!important}}

/* Phase 45.47.135 checkout transparency and touch accessibility. */
.sf135-checkout-status:empty{display:none}.sf135-checkout-status{padding:11px 12px!important;margin:7px 0 12px!important;border-radius:10px;border:1px solid #b7d2c5;background:#edf6f0;color:#174b38!important;font-size:13px!important;font-weight:650;line-height:1.5}.sf135-checkout-status.is-error{color:#8c3030!important;background:#fff3f1;border-color:#ecc1bd}.lfp454721-checkout-shell button[aria-busy="true"]{opacity:.72;cursor:progress}.lfp454721-checkout-shell :is(button,input,textarea,select):focus-visible{outline:3px solid #a88032!important;outline-offset:2px}.lfp454721-place:disabled,.lfp454721-mobile-checkout:disabled,.lfp454721-summary button:disabled{opacity:.58;cursor:not-allowed}@media(max-width:600px){.lfp454721-checkout-shell .lfp454721-form-grid input,.lfp454721-checkout-shell .lfp454721-form-grid select,.lfp454721-checkout-shell .lfp454721-note textarea{min-height:45px!important;font-size:16px!important}.lfp454721-checkout-shell .lfp454721-place,.lfp454721-mobile-checkout{min-height:50px}.lfp454721-confirm p{font-size:12px;line-height:1.55}}

/* Phase 45.47.176 — seller storefront uses the canonical marketplace card, with no duplicate legacy cards. */
body.lfp454721-shop .sf176-store-products.lfp454721-market{max-width:none;margin:0;padding:0 0 72px!important;background:transparent}
.sf176-store-listings-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sf176-store-listings-head .lfp454721-basket{flex-shrink:0}
body.lfp454721-shop .sf176-store-products .lfp454721-grid{width:100%;margin:0;box-sizing:border-box}
.sf176-store-products .lfp454721-card-actions{grid-template-columns:minmax(0,1fr)}
.sf176-nojs-buy{padding:8px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sf176-nojs-buy input{max-width:60px}
.sf176-nojs-buy button{background:#186148;color:white;border:0;border-radius:8px;padding:8px 10px}
@media(max-width:600px){body.lfp454721-shop .sf176-store-products.lfp454721-market{padding:0 0 76px!important}.sf176-store-listings-head .lfp454721-basket{font-size:11px}}

/* Phase 45.47.177 — image-fill and typographic hierarchy on shared marketplace/store cards.
   Phase 45.47.22 used object-fit:contain!important and padding, leaving green gutters.
   This scoped selector overrides that older rule without affecting product zoom views. */
body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-photo{display:block!important;width:100%!important;aspect-ratio:4/3!important;min-height:0!important;max-height:none!important;padding:0!important;border-radius:0!important;background:#f2f4f1!important;overflow:hidden!important}
body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-photo > img{display:block!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;object-fit:cover!important;object-position:center center!important;box-sizing:border-box!important}
body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-card-copy h2{font-size:clamp(13px,.9vw,15px)!important;line-height:1.35!important;font-weight:750!important;letter-spacing:0!important;text-transform:none!important;min-height:0!important;max-height:none!important;overflow-wrap:anywhere!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important;margin:0 0 8px!important;text-wrap:wrap!important}
body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-card-copy h2 a{font-size:inherit!important;line-height:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;overflow-wrap:anywhere!important}
body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-card-copy{padding:12px 12px 5px!important;min-width:0!important}
body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-card-copy > strong{font-size:15px!important;line-height:1.25!important;margin-bottom:7px!important}
body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-meta span{font-size:10px!important;line-height:1.3!important}
@media(max-width:600px){body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-card-copy h2{font-size:12px!important;-webkit-line-clamp:3!important}body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-card-copy{padding:9px 8px 4px!important}body.lfp454721-shop .lfp454721-market .lfp454721-card .lfp454721-card-copy > strong{font-size:13px!important}}

/* Phase 45.47.178 — compact guest/client marketplace checkout ONLY.
   This supersedes the oversized phase454722 and phase454751 row rules and
   ignores global decorative typography without removing Visual Studio from
   the rest of SourceFlora. Existing checkout AJAX handlers remain untouched. */
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-head{margin:0 auto 10px!important;max-width:1360px!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-head span{font-size:clamp(16px,1.35vw,20px)!important;line-height:1.2!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-layout{max-width:1360px!important;width:100%!important;grid-template-columns:minmax(0,1fr) clamp(270px,25vw,320px)!important;gap:14px!important;align-items:start!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-layout>main{min-width:0!important;gap:12px!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-card.sf178-basket-section{min-width:0!important;padding:14px!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-section-title{gap:12px!important;align-items:center!important;margin-bottom:12px!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-section-title h1{font-size:clamp(20px,1.55vw,26px)!important;line-height:1.18!important;font-weight:800!important;letter-spacing:-.025em!important;overflow-wrap:normal!important;max-width:100%!important;margin:0!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-section-title h2{font-size:18px!important;line-height:1.3!important;margin:0!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-summary h2{font-size:21px!important;line-height:1.25!important;margin:0 0 14px!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-cart-lines.sf178-compact-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr))!important;gap:10px!important;align-items:stretch!important;min-width:0!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item{position:relative!important;display:grid!important;grid-template-columns:68px minmax(0,1fr)!important;grid-template-rows:minmax(75px,auto) auto!important;align-content:start!important;align-items:start!important;min-width:0!important;gap:8px 10px!important;padding:11px!important;margin:0!important;border:1px solid #dce8dd!important;border-radius:13px!important;box-shadow:0 1px 3px rgba(21,72,49,.05)!important;background:#fff!important;background-image:none!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-image{display:block!important;grid-column:1!important;grid-row:1!important;width:68px!important;height:75px!important;margin:0!important;padding:0!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;border:0!important;border-radius:9px!important;background:#eef5ef!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-image img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-copy{grid-column:2!important;grid-row:1!important;min-width:0!important;max-width:100%!important;padding:0 18px 0 0!important;margin:0!important;align-self:start!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-copy h2{font-family:inherit!important;font-size:13px!important;line-height:1.3!important;font-weight:750!important;letter-spacing:0!important;min-height:0!important;max-height:none!important;margin:0 0 5px!important;overflow-wrap:anywhere!important;word-break:normal!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-copy small{font-size:10px!important;line-height:1.3!important;margin:0 0 4px!important;display:block!important;overflow-wrap:anywhere!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-copy strong{font-size:11.5px!important;line-height:1.3!important;font-weight:700!important;display:block!important;color:#225943!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-controls{display:grid!important;grid-column:1 / -1!important;grid-row:2!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important;justify-items:stretch!important;align-items:center!important;min-width:0!important;width:100%!important;margin:0!important;padding-top:7px!important;border-top:1px solid #eff2ee!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-qty--checkout{display:block!important;min-width:0!important;width:100%!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-qty--checkout .lfp454721-stepper{display:grid!important;grid-template-columns:30px minmax(26px,1fr) 30px!important;width:100%!important;min-width:0!important;max-width:136px!important;height:33px!important;border-radius:9px!important;overflow:hidden!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-stepper button{min-height:32px!important;padding:0!important;font-size:16px!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-stepper input{width:100%!important;min-width:0!important;font-size:12px!important;line-height:1!important;height:100%!important;padding:0!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-total{font-size:12px!important;line-height:1.2!important;font-weight:850!important;color:#183f30!important;text-align:right!important;white-space:nowrap!important;min-width:0!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-remove{position:absolute!important;top:7px!important;right:7px!important;width:auto!important;min-width:0!important;min-height:26px!important;padding:3px 5px!important;border:1px solid #f3d9d9!important;border-radius:6px!important;background:#fff9f9!important;color:#8f4141!important;font-size:9px!important;line-height:1.1!important;font-weight:700!important;text-decoration:none!important;box-shadow:none!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-quote-chip{font-size:10px!important;justify-self:start!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-summary{top:90px!important;padding:16px!important;min-width:0!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-summary>div{font-size:12px!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-summary>div.total{font-size:13px!important}
@media(max-width:980px){body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-layout{grid-template-columns:minmax(0,1fr)!important}body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-summary{position:static!important}}
@media(max-width:560px){body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-cart-lines.sf178-compact-grid{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item{grid-template-columns:68px minmax(0,1fr)!important;grid-template-rows:minmax(76px,auto) auto!important;padding:10px!important}body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-card.sf178-basket-section{padding:11px!important}body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-section-title h1{font-size:21px!important}}

/* The remove affordance is an accessible small icon: never sit over card titles. */
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-remove{display:grid!important;place-items:center!important;width:23px!important;height:23px!important;min-height:23px!important;max-width:23px!important;padding:0!important;font-size:16px!important;font-weight:700!important;line-height:1!important}
body.lfp454721-checkout .lfp454721-checkout-shell .lfp454721-checkout-line.sf178-basket-item .lfp454721-line-copy{padding-right:27px!important}


/* Phase 45.47.185 — approved client Request Cart UX mapped onto canonical MARKETPLACE basket.
   The existing Phase 45.47.19/21 API, checkout and guest cookie remain authoritative. */
body.lfp454721-shop .lfp454721-mobile-basket{display:none!important}
.sf185-market-cart-trigger{
  position:fixed!important;right:14px!important;bottom:88px!important;z-index:10025!important;
  display:flex!important;align-items:center!important;gap:9px!important;box-sizing:border-box!important;
  min-width:158px!important;min-height:52px!important;padding:7px 12px!important;
  border:1px solid rgba(232,212,151,.58)!important;border-radius:16px!important;
  background:#155741!important;color:#fff!important;text-decoration:none!important;
  box-shadow:0 10px 26px rgba(17,58,42,.22)!important;max-width:calc(100vw - 32px)!important;
}
.sf185-market-cart-trigger:hover,.sf185-market-cart-trigger:focus-visible{background:#0e4935!important;color:#fff!important;outline:2px solid #c79e40!important;outline-offset:2px!important}
.sf185-market-cart-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(255,255,255,.12);font-size:18px}
.sf185-market-cart-copy{display:flex;flex-direction:column;line-height:1.15!important;text-align:left!important;gap:2px}
.sf185-market-cart-copy small{color:#e4eee7!important;font-size:10px!important}
.sf185-market-cart-copy strong{color:#fff!important;font-size:13px!important}
.sf185-market-layer{display:none;position:fixed;inset:0;z-index:100050;overscroll-behavior:contain}
.sf185-market-layer.is-open{display:block}
.sf185-market-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(10,35,27,.43);cursor:pointer}
.sf185-market-drawer{box-sizing:border-box;position:absolute;top:0;right:0;width:min(450px,100vw);height:100%;height:100dvh;display:flex;flex-direction:column;gap:0;overflow:hidden;background:#fffdf9;box-shadow:-22px 0 55px rgba(15,51,36,.25);color:#16392c;border-left:1px solid #deeadf}
.sf185-market-drawer-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px 14px;border-bottom:1px solid #e5eee7}
.sf185-market-drawer-head small{font-size:11px!important;color:#607869!important}
.sf185-market-drawer-head h2{font-family:inherit!important;margin:4px 0 0!important;font-size:24px!important;line-height:1.18!important;color:#173e30!important}
.sf185-market-close{display:grid;place-items:center;width:35px;height:35px;border:1px solid #d7e6db;border-radius:10px;background:#fff;color:#204935;font-size:25px;cursor:pointer}
.sf185-market-items{padding:12px 14px;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;display:grid;align-content:start;gap:9px}
.sf185-market-item{border:1px solid #dae7dc;background:#fff;border-radius:14px;padding:10px;display:grid;gap:10px;min-width:0}
.sf185-market-item-top{display:flex;gap:9px;align-items:flex-start;min-width:0}
.sf185-market-item-photo{flex:0 0 54px;width:54px;height:54px;display:grid;place-items:center;border-radius:10px;background:#edf5ef;overflow:hidden}
.sf185-market-item-photo img{display:block;width:100%;height:100%;object-fit:cover}
.sf185-market-item-detail{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.sf185-market-item-detail strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere;color:#173e30}
.sf185-market-item-detail small{font-size:10px;color:#6b7c70}
.sf185-market-item-detail span{font-size:11px;font-weight:800;color:#18563d}
.sf185-market-item-foot{display:flex;gap:7px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.sf185-market-qty{display:grid;grid-template-columns:30px 52px 30px;align-items:center;overflow:hidden;border:1px solid #b7d3c4;border-radius:9px;background:white;min-height:33px}
.sf185-market-qty button{width:30px;height:33px;min-height:33px;padding:0;border:0;background:#286a51;color:#fff;font-size:16px;cursor:pointer}
.sf185-market-qty input{box-sizing:border-box;width:52px;height:33px;min-height:33px;min-width:0;padding:0 2px;border:0!important;border-radius:0!important;text-align:center;background:#fff;color:#193d2c;font-size:12px;font-weight:800;-moz-appearance:textfield}
.sf185-market-qty input::-webkit-inner-spin-button,.sf185-market-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.sf185-market-qty [disabled]{opacity:.6;cursor:wait}
.sf185-market-quote{font-size:11px;white-space:nowrap;color:#526e5e;grid-column:1/-1;padding:0 9px}
.sf185-market-item-total{font-size:12px;color:#17523c}
.sf185-market-remove{border:1px solid #d6e6d9;background:#f8fbf7;color:#345d48;border-radius:9px;padding:6px 9px;font-size:11px;font-weight:700;cursor:pointer}
.sf185-market-remove:hover{background:#fff5ee;color:#904a30}
.sf185-market-message{min-height:0;color:#1e6c49;font-size:11px;padding:0 16px;line-height:1.4}
.sf185-market-message:not(:empty){padding:7px 16px}
.sf185-market-message.is-error{color:#9b322c}
.sf185-market-empty{font-size:13px;line-height:1.5;color:#607869;padding:15px;text-align:center}
.sf185-market-drawer-foot{padding:12px 16px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #d8e7dc;background:#f8fbf8;display:grid;gap:9px}
.sf185-market-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.sf185-market-summary span{display:flex;flex-direction:column;gap:3px;padding:8px;border:1px solid #e0ebe2;background:#fff;border-radius:10px;min-width:0}
.sf185-market-summary small{font-size:9px;line-height:1.25;color:#678073}
.sf185-market-summary strong{font-size:12px;color:#18513a;overflow-wrap:anywhere}
.sf185-market-review{display:flex;justify-content:center;align-items:center;min-height:43px;border-radius:11px;background:#1d644a;color:#fff!important;font-size:13px!important;font-weight:800;text-decoration:none!important}
.sf185-market-review.is-empty{pointer-events:none;opacity:.5}
.sf185-market-continue{width:100%;min-height:38px;background:#fff;border:1px solid #ceded1;border-radius:10px;color:#24533f;font-size:12px;font-weight:700;cursor:pointer}
.sf185-market-drawer-foot>small{font-size:10px;color:#65796b;line-height:1.4}
body.sf185-market-drawer-open{overflow:hidden!important}
.sf185-market-steps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.sf185-market-steps span{display:flex;gap:7px;align-items:center;border-radius:11px;background:#f3f8f4;border:1px solid #e0e9e2;padding:8px 11px;font-size:11px;color:#41624f;font-weight:800}
.sf185-market-steps b{display:grid;place-items:center;border-radius:50%;background:#28674b;color:#fff;height:20px;width:20px;font-size:10px}
@media(max-width:600px){.sf185-market-cart-trigger{right:9px!important;bottom:73px!important;min-width:124px!important;min-height:44px!important;padding:5px 8px!important;border-radius:13px!important}.sf185-market-cart-icon{width:28px;height:28px;font-size:15px}.sf185-market-cart-copy small{display:none}.sf185-market-cart-copy strong{font-size:11px!important}.sf185-market-drawer{width:100vw}.sf185-market-drawer-head{padding:11px 14px}.sf185-market-items{padding:9px 10px}.sf185-market-drawer-foot{padding:10px 12px calc(12px + env(safe-area-inset-bottom))}.sf185-market-steps{gap:5px}.sf185-market-steps span{padding:6px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.sf185-market-layer *{scroll-behavior:auto!important}}
@media print{.sf185-market-cart-trigger,.sf185-market-layer{display:none!important}}
