﻿/* Bafleh Shop UI Polish B8 - loaded last after B4/B7.
   Purpose: closer visual parity with bafleh.com/Flatsome while retaining the .NET filter engine. */

/* Product cards: the legacy shop is image/title/price-led. Avoid heavy black CTA blocks. */
.bafleh-wp-shop .live-product-card {
    transition: transform .18s ease, box-shadow .18s ease !important;
}
@media (hover:hover) {
    .bafleh-wp-shop .live-product-card:hover { transform: translateY(-2px); box-shadow: 0 7px 20px rgba(0,0,0,.055) !important; }
}
.bafleh-wp-shop .live-card-cart-form { margin: 8px 0 0 !important; text-align: left !important; }
.bafleh-wp-shop .live-add-cart,
.bafleh-wp-shop .live-card-cta {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 7px 0 0 !important;
    padding: 4px 0 3px !important;
    border: 0 !important;
    border-bottom: 1px solid #999 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #2d2d2d !important;
    font-family: Arial,Helvetica,sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    letter-spacing: .015em !important;
    text-transform: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: color .18s ease,border-color .18s ease !important;
}
.bafleh-wp-shop .live-add-cart:hover,
.bafleh-wp-shop .live-add-cart:focus,
.bafleh-wp-shop .live-card-cta:hover,
.bafleh-wp-shop .live-card-cta:focus { color:#000 !important; border-bottom-color:#000 !important; outline:none !important; }
.bafleh-wp-shop .live-card-cta-view::after { content:"\2192"; margin-left:7px; font-size:13px; line-height:1; }
.bafleh-wp-shop .live-card-cta-cart::after { content:"+"; margin-left:7px; font-size:13px; font-weight:400; line-height:1; }

/* Filter chrome: custom square controls instead of browser-dependent accent-color. */
.bafleh-wp-shop .live-filter-option {
    position: relative !important;
    gap: 9px !important;
    padding: 5px 0 !important;
    color: #343434 !important;
    transition: color .15s ease !important;
}
.bafleh-wp-shop .live-filter-option:hover { color:#000 !important; }
.bafleh-wp-shop .live-filter-option input[type="checkbox"],
.bafleh-wp-shop .live-filter-option input[type="radio"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-grid !important;
    place-content: center !important;
    width: 15px !important;
    height: 15px !important;
    margin: 2px 0 0 !important;
    border: 1px solid #9b9b9b !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: border-color .15s ease,background-color .15s ease,box-shadow .15s ease !important;
}
.bafleh-wp-shop .live-filter-option input[type="checkbox"]::before,
.bafleh-wp-shop .live-filter-option input[type="radio"]::before {
    content: "";
    width: 7px;
    height: 7px;
    transform: scale(0);
    background: #111;
    transition: transform .12s ease-in-out;
}
.bafleh-wp-shop .live-filter-option input[type="checkbox"]:checked,
.bafleh-wp-shop .live-filter-option input[type="radio"]:checked { border-color:#111 !important; }
.bafleh-wp-shop .live-filter-option input[type="checkbox"]:checked::before,
.bafleh-wp-shop .live-filter-option input[type="radio"]:checked::before { transform:scale(1); }
.bafleh-wp-shop .live-filter-option input[type="checkbox"]:focus-visible,
.bafleh-wp-shop .live-filter-option input[type="radio"]:focus-visible { outline:2px solid rgba(0,0,0,.22) !important; outline-offset:2px !important; }
.bafleh-wp-shop .live-filter-option:has(input:checked) span { color:#111 !important; font-weight:500 !important; }

.bafleh-wp-shop .filter-category-link::before {
    width: 15px !important;
    height: 15px !important;
    top: 5px !important;
    border-color: #9b9b9b !important;
}
.bafleh-wp-shop .filter-category-link.active::before { border-color:#111 !important; background:#fff !important; box-shadow:inset 0 0 0 3px #fff !important; }
.bafleh-wp-shop .filter-category-link.active::after {
    content:""; position:absolute; left:4px; top:9px; width:7px; height:7px; background:#111;
}
.bafleh-wp-shop .filter-title-row { align-items:center !important; }
.bafleh-wp-shop .filter-title-row > a {
    color:#8b8b8b !important; font-size:10px !important; text-decoration:none !important;
    border-bottom:1px solid #d1d1d1 !important; padding-bottom:1px !important;
}
.bafleh-wp-shop .filter-title-row > a:hover { border-bottom-color:#111 !important; }
.bafleh-wp-shop .filter-option-list,
.bafleh-wp-shop .filter-category-list { scrollbar-color:#b6b6b6 transparent; }
.bafleh-wp-shop .filter-option-list::-webkit-scrollbar,
.bafleh-wp-shop .filter-category-list::-webkit-scrollbar { width:4px; }
.bafleh-wp-shop .filter-option-list::-webkit-scrollbar-thumb,
.bafleh-wp-shop .filter-category-list::-webkit-scrollbar-thumb { background:#b6b6b6; border-radius:4px; }

/* Softer filter inputs/chips consistent with the legacy shop rather than admin UI. */
.bafleh-wp-shop .price-filter-row input,
.bafleh-wp-shop .catalog-sort-form select { border-color:#cfcfcf !important; }
.bafleh-wp-shop .price-filter-row input:focus,
.bafleh-wp-shop .catalog-sort-form select:focus { border-color:#777 !important; outline:0 !important; box-shadow:0 0 0 2px rgba(0,0,0,.04) !important; }
.bafleh-wp-shop .catalog-filter-chip { border-color:#e2e2e2 !important; background:#fafafa !important; color:#575757 !important; }

/* Mobile filter trigger: small professional filter bars icon; remove the Unicode glyph. */
.catalog-mobile-filter-button .b8-filter-icon {
    position:relative; width:17px; height:14px; display:inline-block; flex:0 0 17px;
    background:linear-gradient(#222,#222) left 1px top 1px/17px 1px no-repeat,
               linear-gradient(#222,#222) left 1px center/12px 1px no-repeat,
               linear-gradient(#222,#222) left 1px bottom 1px/7px 1px no-repeat;
}
.catalog-mobile-filter-button .b8-filter-icon::before,
.catalog-mobile-filter-button .b8-filter-icon::after { content:""; position:absolute; width:3px; height:3px; border:1px solid #222; border-radius:50%; background:#fff; }
.catalog-mobile-filter-button .b8-filter-icon::before { top:-1px; left:10px; }
.catalog-mobile-filter-button .b8-filter-icon::after { top:5px; left:6px; }

/* Product detail: keep typography spacious enough to match current WordPress pages. */
.product-summary-live h1 { font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif !important; font-size:clamp(31px,2.6vw,42px) !important; line-height:1.14 !important; }
.product-short-description,.live-product-tab-panel { font-size:14px !important; line-height:1.75 !important; }
.live-product-meta-lines p { font-size:12px !important; line-height:1.55 !important; }
.live-product-attributes th,.live-product-attributes td { font-size:12px !important; }

@media (max-width:980px) {
    .bafleh-wp-shop .live-filter-option input[type="checkbox"],
    .bafleh-wp-shop .live-filter-option input[type="radio"] { width:18px !important; height:18px !important; margin-top:0 !important; }
    .bafleh-wp-shop .live-filter-option input[type="checkbox"]::before,
    .bafleh-wp-shop .live-filter-option input[type="radio"]::before { width:9px; height:9px; }
    .bafleh-wp-shop .live-add-cart,.bafleh-wp-shop .live-card-cta { width:auto !important; min-height:0 !important; font-size:11px !important; }
    .product-summary-live h1 { font-size:32px !important; }
}
@media (max-width:560px) {
    .bafleh-wp-shop .live-product-card { padding:8px !important; }
    .bafleh-wp-shop .live-add-cart,.bafleh-wp-shop .live-card-cta { font-size:10px !important; }
    .product-summary-live h1 { font-size:29px !important; }
}

/* B9 showroom directory polish */
.live-location-directory{grid-template-columns:minmax(280px,.8fr) minmax(0,2.2fr);background:#f7f7f7;min-height:0}
.live-location-directory .live-map-faux{min-height:360px;background:#151515;color:#fff;padding:44px;display:flex;align-items:center;justify-content:center;text-align:left}
.live-location-directory .live-map-faux>div{display:flex;flex-direction:column;gap:8px}
.live-location-directory .live-map-faux span{font:500 11px/1.3 var(--bafleh-font-ui,"Montserrat",Arial,sans-serif);letter-spacing:.18em}
.live-location-directory .live-map-faux strong{font:400 38px/1.05 var(--bafleh-font-editorial,"Cormorant Garamond",Georgia,serif);letter-spacing:0}
.live-location-directory .live-map-faux small{font:400 12px/1.5 Arial,sans-serif;opacity:.75}
.live-location-directory .live-store-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;background:#fff;padding:0;overflow:visible}
.live-location-directory .live-store-location-card{padding:28px 30px;border-right:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8;min-height:170px}
.live-location-directory .live-store-location-card h3{font:500 13px/1.4 var(--bafleh-font-ui,"Montserrat",Arial,sans-serif);letter-spacing:.025em;margin:0 0 10px;color:#111}
.live-location-directory .live-store-location-card p{font:400 13px/1.65 Arial,sans-serif;color:#555;margin:0 0 8px}
.live-location-directory .live-store-location-card a{color:#111;text-decoration:none;border-bottom:1px solid #bbb}
.live-location-directory .live-store-location-card a:hover{border-color:#111}
@media(max-width:980px){.live-location-directory{grid-template-columns:1fr}.live-location-directory .live-map-faux{min-height:210px}.live-location-directory .live-store-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.live-location-directory .live-store-list{grid-template-columns:1fr}.live-location-directory .live-store-location-card{min-height:0;padding:24px 22px}.live-location-directory .live-map-faux{padding:30px 24px}.live-location-directory .live-map-faux strong{font-size:32px}}
