/* Phase 45.47.51 — responsive card spacing harmonisation */
body.lfp454751-card-spacing{
 --lfp51-gap-xl:clamp(18px,1.65vw,24px);
 --lfp51-gap:clamp(14px,1.25vw,18px);
 --lfp51-pad:clamp(15px,1.45vw,20px);
 --lfp51-pad-compact:clamp(11px,1vw,15px);
 --lfp51-radius:18px;
 --lfp51-line:rgba(31,80,59,.13);
 --lfp51-shadow:0 8px 24px rgba(23,75,56,.065);
}

/* Shared rhythm. Keep cards visually separate and prevent controls/text from colliding. */
body.lfp454751-card-spacing .lfp-front-wrap *,
body.lfp454751-card-spacing .lfp454721-market *,
body.lfp454751-card-spacing .lfp454721-product *,
body.lfp454751-card-spacing .lfp454721-checkout-shell *{box-sizing:border-box}
body.lfp454751-card-spacing :where(.lfp-grid-cards,.lfp-card-grid,.lfp-dashboard-grid,.lfp-step-grid,.lfp-market-grid,.lfp-store-grid,.lfp-blog-grid,.lfp-related-grid,.lfp-catalogue-live-grid,.lfp-catalogue-grid){gap:var(--lfp51-gap)!important}
body.lfp454751-card-spacing :where(.lfp-market-card,.lfp-store-card,.lfp-product-card,.lfp-order-card,.lfp-wishlist-card,.lfp-step-card,.lfp-summary-card,.lfp-field-task-card,.lfp-market-command-card,.lfp-blog-card,.lfp454717-seller-product-card){min-width:0}
body.lfp454751-card-spacing :where(.lfp-actions,.lfp-inline-actions,.lfp-market-card-foot,.lfp-card-foot,.lfp454717-product-actions,.lfp454716-store-actions){column-gap:10px!important;row-gap:9px!important}
body.lfp454751-card-spacing :where(.lfp-market-card,.lfp-store-card,.lfp-product-card,.lfp-order-card,.lfp-wishlist-card,.lfp-step-card,.lfp-summary-card,.lfp-field-task-card,.lfp-market-command-card,.lfp-blog-card) :where(h2,h3,h4,p){overflow-wrap:anywhere}

/* Current quick-shop marketplace cards. */
body.lfp454751-card-spacing.lfp454721-shop .lfp454721-grid{gap:16px!important}
body.lfp454751-card-spacing .lfp454721-card{border-radius:17px!important;box-shadow:var(--lfp51-shadow)!important}
body.lfp454751-card-spacing .lfp454721-card-copy{padding:13px 13px 8px!important}
body.lfp454751-card-spacing .lfp454721-card-copy h2{margin:0 0 8px!important;font-size:13px!important;line-height:1.3!important}
body.lfp454751-card-spacing .lfp454721-card-copy>strong{margin:0 0 8px!important}
body.lfp454751-card-spacing .lfp454721-meta{gap:6px!important;margin:0!important}
body.lfp454751-card-spacing .lfp454721-meta span{padding:4px 6px!important}
body.lfp454751-card-spacing .lfp454721-card-actions{gap:9px!important;padding:9px 12px 13px!important}
body.lfp454751-card-spacing .lfp454721-qty.lfp454750-purchase-control{gap:8px!important}
body.lfp454751-card-spacing .lfp454750-purchase-actions{gap:8px!important}
body.lfp454751-card-spacing .lfp454750-purchase-actions .lfp454721-cart-action{min-height:40px!important;padding:8px 9px!important;font-size:11.5px!important;border-radius:11px!important}
body.lfp454751-card-spacing .lfp454721-store{min-height:39px!important;padding:8px 10px!important;font-size:10.5px!important;border-radius:11px!important}
body.lfp454751-card-spacing .lfp454721-stepper{min-height:38px!important}

/* Older marketplace card family retained by some hubs/search surfaces. */
body.lfp454751-card-spacing .lfp-market-card:not(.lfp454721-card) .lfp-market-card-body{padding:14px 14px 10px!important}
body.lfp454751-card-spacing .lfp-market-card:not(.lfp454721-card) .lfp-market-card-foot{gap:9px!important;padding:3px 14px 14px!important}
body.lfp454751-card-spacing .lfp-market-card:not(.lfp454721-card) .lfp-market-card-foot .lfp-btn{min-height:40px!important;padding:8px 10px!important}
body.lfp454751-card-spacing .lfp-market-card .lfp-price{margin-top:7px!important;margin-bottom:7px!important}

/* Seller/store identity cards: more visible branding without oversized dead space. */
body.lfp454751-card-spacing .lfp-store-card-banner{min-height:118px!important}
body.lfp454751-card-spacing .lfp-store-card-head{padding:14px!important;gap:12px!important}
body.lfp454751-card-spacing .lfp-store-card-avatar{width:60px!important;height:60px!important;min-width:60px!important}
body.lfp454751-card-spacing .lfp-store-card .lfp-market-card-foot{padding:2px 14px 14px!important}
body.lfp454751-card-spacing.lfp454716-storefront .lfp454716-store-identity{padding:22px!important;gap:20px!important}

/* Seller Studio product cards: readable management actions, still compact. */
body.lfp454751-card-spacing #lfp-seller-listings .lfp454717-seller-grid{gap:15px!important}
body.lfp454751-card-spacing #lfp-seller-listings .lfp454717-seller-product-card{border-radius:16px!important;box-shadow:var(--lfp51-shadow)!important}
body.lfp454751-card-spacing #lfp-seller-listings .lfp454717-seller-product-copy{padding:11px 12px 12px!important;gap:8px!important}
body.lfp454751-card-spacing #lfp-seller-listings .lfp454717-product-actions{gap:9px!important;padding-top:10px!important}

/* Catalogue / auction selection cards. */
body.lfp454751-card-spacing .lfp-product-card{padding:15px!important;border-radius:16px!important}
body.lfp454751-card-spacing .lfp-product-card .lfp-card-foot{gap:10px!important;padding-top:12px!important;margin-top:9px!important}
body.lfp454751-card-spacing .lfp-catalogue-live-grid,
body.lfp454751-card-spacing .lfp-catalogue-grid{gap:16px!important}
body.lfp454751-card-spacing .lfp-catalogue-live-filters,
body.lfp454751-card-spacing .lfp-catalogue-filters{gap:12px!important;padding-block:4px!important}

/* Checkout cards and cart lines. */
body.lfp454751-card-spacing .lfp454721-checkout-layout{gap:22px!important}
body.lfp454751-card-spacing .lfp454721-checkout-layout main{gap:18px!important}
body.lfp454751-card-spacing .lfp454721-checkout-card,
body.lfp454751-card-spacing .lfp454721-summary{padding:20px!important;border-radius:18px!important}
body.lfp454751-card-spacing .lfp454721-cart-lines{gap:12px!important}
body.lfp454751-card-spacing .lfp454721-checkout-line{gap:14px!important;padding:12px!important}
body.lfp454751-card-spacing .lfp454721-form-grid{gap:14px!important}
body.lfp454751-card-spacing .lfp454721-form-grid label,
body.lfp454751-card-spacing .lfp454721-note{gap:6px!important}

/* Dashboard / buyer / fulfilment cards. */
body.lfp454751-card-spacing .lfp-front-wrap :where(.lfp-order-card,.lfp-wishlist-card,.lfp-step-card,.lfp-summary-card,.lfp-field-task-card,.lfp-market-command-card){padding:var(--lfp51-pad)!important;border-radius:var(--lfp51-radius)!important}
body.lfp454751-card-spacing :where(.lfp-seller-command-centre,.lfp-client-command-centre,.lfp-supplier-command-centre,.lfp-driver-command-centre){gap:18px!important}
body.lfp454751-card-spacing .lfp-market-command-head{gap:16px!important;margin-bottom:10px!important}

/* Blog cards should share the same page rhythm as commerce cards. */
body.lfp454751-card-spacing .lfp-blog-grid,
body.lfp454751-card-spacing .lfp-related-grid{gap:20px!important}
body.lfp454751-card-spacing .lfp-blog-card-body{padding:18px 19px 20px!important}
body.lfp454751-card-spacing .lfp-blog-card h2{margin-bottom:10px!important}
body.lfp454751-card-spacing .lfp-blog-card p{margin-bottom:16px!important}

/* Tablet: preserve breathing room without making cards huge. */
@media(max-width:900px){
 body.lfp454751-card-spacing{--lfp51-gap:13px;--lfp51-pad:16px}
 body.lfp454751-card-spacing.lfp454721-shop .lfp454721-grid{gap:13px!important}
 body.lfp454751-card-spacing .lfp454721-card-copy{padding:11px 11px 7px!important}
 body.lfp454751-card-spacing .lfp454721-card-actions{padding:8px 10px 11px!important}
 body.lfp454751-card-spacing #lfp-seller-listings .lfp454717-seller-grid{gap:12px!important}
 body.lfp454751-card-spacing .lfp-store-card-head{padding:12px!important}
 body.lfp454751-card-spacing .lfp-store-card-avatar{width:54px!important;height:54px!important;min-width:54px!important}
}

/* Phones: controls remain thumb-sized; two-column product grids stay readable. */
@media(max-width:600px){
 body.lfp454751-card-spacing{--lfp51-gap:10px;--lfp51-pad:14px;--lfp51-radius:15px}
 body.lfp454751-card-spacing.lfp454721-shop .lfp454721-grid{gap:9px!important}
 body.lfp454751-card-spacing .lfp454721-card-copy{padding:10px 9px 7px!important}
 body.lfp454751-card-spacing .lfp454721-card-copy h2{font-size:11.5px!important;margin-bottom:6px!important}
 body.lfp454751-card-spacing .lfp454721-card-copy>strong{font-size:14px!important;margin-bottom:6px!important}
 body.lfp454751-card-spacing .lfp454721-meta{gap:4px!important}
 body.lfp454751-card-spacing .lfp454721-card-actions{gap:7px!important;padding:7px 8px 10px!important}
 body.lfp454751-card-spacing .lfp454750-purchase-actions{gap:6px!important}
 body.lfp454751-card-spacing .lfp454750-purchase-actions .lfp454721-cart-action{min-height:38px!important;padding:7px 6px!important;font-size:10.5px!important}
 body.lfp454751-card-spacing .lfp454721-store{min-height:36px!important;padding:7px!important;font-size:10px!important}
 body.lfp454751-card-spacing .lfp454721-stepper{min-height:36px!important}
 body.lfp454751-card-spacing .lfp-market-card:not(.lfp454721-card) .lfp-market-card-body{padding:10px 10px 7px!important}
 body.lfp454751-card-spacing .lfp-market-card:not(.lfp454721-card) .lfp-market-card-foot{padding:2px 10px 10px!important;gap:7px!important}
 body.lfp454751-card-spacing .lfp-store-card-banner{min-height:92px!important}
 body.lfp454751-card-spacing .lfp-store-card-head{padding:10px!important;gap:9px!important}
 body.lfp454751-card-spacing .lfp-store-card-avatar{width:48px!important;height:48px!important;min-width:48px!important}
 body.lfp454751-card-spacing .lfp-store-card .lfp-market-card-foot{padding:2px 10px 10px!important}
 body.lfp454751-card-spacing #lfp-seller-listings .lfp454717-seller-grid{gap:9px!important}
 body.lfp454751-card-spacing #lfp-seller-listings .lfp454717-seller-product-copy{padding:9px!important;gap:6px!important}
 body.lfp454751-card-spacing .lfp-product-card{padding:11px!important;border-radius:14px!important}
 body.lfp454751-card-spacing .lfp-product-card .lfp-card-foot{gap:8px!important;padding-top:9px!important}
 body.lfp454751-card-spacing .lfp-catalogue-live-grid,
 body.lfp454751-card-spacing .lfp-catalogue-grid{gap:10px!important}
 body.lfp454751-card-spacing .lfp454721-checkout-card,
 body.lfp454751-card-spacing .lfp454721-summary{padding:14px!important}
 body.lfp454751-card-spacing .lfp454721-checkout-line{gap:10px!important;padding:10px!important}
 body.lfp454751-card-spacing .lfp454721-form-grid{gap:10px!important}
 body.lfp454751-card-spacing .lfp-front-wrap :where(.lfp-order-card,.lfp-wishlist-card,.lfp-step-card,.lfp-summary-card,.lfp-field-task-card,.lfp-market-command-card){padding:14px!important;border-radius:15px!important}
 body.lfp454751-card-spacing .lfp-blog-grid,
 body.lfp454751-card-spacing .lfp-related-grid{gap:13px!important}
 body.lfp454751-card-spacing .lfp-blog-card-body{padding:15px 15px 17px!important}
}

/* Narrow phones: avoid two tiny purchase buttons fighting for horizontal room. */
@media(max-width:440px){
 body.lfp454751-card-spacing .lfp454750-purchase-actions{grid-template-columns:1fr!important}
 body.lfp454751-card-spacing .lfp454750-purchase-actions .lfp454721-cart-action{width:100%!important;min-height:38px!important;font-size:11px!important}
 body.lfp454751-card-spacing .lfp454721-card-actions{padding-bottom:11px!important}
}

/* SourceFlora Admin pages: modest, consistent spacing only; no layout/routing changes. */
body.lfp454751-admin-card-spacing :where(.lfp-box,.lfp-admin-card,.lfp-market-command-card,.lfp-order-card,.lfp-summary-card){box-sizing:border-box;padding:18px!important;border-radius:16px!important}
body.lfp454751-admin-card-spacing :where(.lfp-grid-cards,.lfp-card-grid,.lfp-dashboard-grid,.lfp-step-grid){gap:16px!important}
body.lfp454751-admin-card-spacing :where(.lfp-actions,.lfp-inline-actions){display:flex;gap:9px!important;flex-wrap:wrap;align-items:center}
body.lfp454751-admin-card-spacing :where(.lfp-actions,.lfp-inline-actions) .button{margin:0!important}
@media(max-width:782px){
 body.lfp454751-admin-card-spacing :where(.lfp-box,.lfp-admin-card,.lfp-market-command-card,.lfp-order-card,.lfp-summary-card){padding:14px!important;border-radius:14px!important}
 body.lfp454751-admin-card-spacing :where(.lfp-grid-cards,.lfp-card-grid,.lfp-dashboard-grid,.lfp-step-grid){gap:11px!important}
}

@media(print){
 body.lfp454751-card-spacing .lfp-front-wrap :where(.lfp-order-card,.lfp-wishlist-card,.lfp-step-card,.lfp-summary-card,.lfp-field-task-card,.lfp-market-command-card){padding:0!important;border-radius:0!important}
}
