/* ==================================================
   EFLC V2 ABOVE-THE-FOLD + BUYBOX (CLEANED / MERGED)
   - ordered by: layout -> buybox isolation -> typography -> price -> shipping -> CTA -> legacy -> trust
   - duplicates removed, bad rules fixed
   ================================================== */

/* ===============================
   LAYOUT
   =============================== */
.eflc-pi2-top{
  display:grid;
  grid-template-columns:1fr 564px;
  gap:0px;
  align-items:start;
}

.pi-above{
  display:flex;
  gap:24px;
  align-items:flex-start;
}

.pi-left{
  flex:1;
  min-width:0;
}

.pi-right{
  width:520px;
  max-width:520px;
}

/* Safety clearfix */
.pi-right::after{
  content:"";
  display:block;
  clear:both;
}

@media (max-width:900px){
  .eflc-pi2-top{ grid-template-columns:1fr; }
  .pi-above{ display:block; }
  .pi-right{
    width:auto;
    max-width:none;
  }
}

/* ===============================
   BUYBOX FLOW LOCK (CONFLICT SHIELD)
   =============================== */
/* Keep legacy float/position chaos from leaking into the buybox */
.pi-right,
.pi-right *{
  box-sizing:border-box;
  float:none !important;
  position:static !important;
}

/* Legacy product stylesheet conflict fix */
#infoPrice{
  height:auto !important;
  background:none !important;
}
.button_sold_out, .button_sold_outHover {width: 100%;background-color: lightgray;border:0;}
/* ===============================
   TITLE + CONDITION
   =============================== */
.bb-title{
  font-size:22px;
  font-weight:700;
  line-height:1.3;
  margin:0 0 4px 0;
}

.bb-condition{
  font-size:15px;
  font-weight:600;
  color:gray;
  margin:0 0 12px 0;
}

/* ===============================
   PRICE (NEUTRALIZE FUNCTIONS_PRICES OUTPUT)
   =============================== */
.eflc-buybox-price{
  display:block;
  clear:both;
  width:100%;
  margin:0 0 12px 0;
}

.bb-price-row{
  display:block;
  margin:0 0 6px 0;
}

#productPrices{
  text-align:left !important;
}

/* kill legacy float/box styles coming from core templates */
#productPrices,
#productPrices *{
  float:none !important;
  position:static !important;
  display:inline-block !important;
  margin:0 !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  white-space:nowrap;
}

/* Old price */
#productPrices .normalprice,
#productPrices .productOldPrice{
  font-size:15px;
  font-weight:600;
  text-decoration:line-through;
  opacity:.55;
  margin-right:8px !important;
}

/* Current price */
#productPrices,
#productPrices .productSalePrice,
#productPrices .productSpecialPrice{
  font-size:34px;
  font-weight:800;
  color:#cc0000;
}

/* Stock */
.bb-stock{
  font-size:13px;
  font-weight:600;
  margin:4px 0 0 0;
}

/* Kill one-page checkout + payment junk inside price block */
.bb-meta,
.bb-secure,
.productInfoPaymentType,
.lock,
.infoIcon.lockicon{
  display:none !important;
}

/* ===============================
   SHIPPING / DELIVERY (COMPACT)
   =============================== */
.bb-shipping{
  display:block;
  clear:both;
  width:100%;
  margin:10px 0 14px 0;
  font-size:14px;
  line-height:1.35;
}

.bb-shipping .bb-row{
  display:block;
  margin:4px 0;
}

.bb-shipping .bb-label{
  display:inline;
  font-weight:700;
  margin-right:6px;
}

.bb-shipping .bb-value{
  display:inline;
}

/* Optional one-line quick ship */
.bb-quickship{
  margin:6px 0 12px;
  font-size:15px;
  line-height:1.35;
}

.bb-quickship .bb-ship{
  font-weight:700;
  color:#2f7d32;
}

.bb-quickship .bb-dot{
  padding:0 8px;
  opacity:.7;
}

.bb-quickship .bb-delivery{
  font-weight:600;
  color:#333;
}

.bb-quickship .bb-shiplink{
  font-weight:700;
  color:#2f7d32;
  text-decoration:underline;
  cursor:pointer;
}

/* ===============================
   CTA / FLEXITI / PROMOS STACK
   =============================== */
.bb-cta,
#flexiti,
.coupondisp,
#countdown{
  display:block;
  clear:both;
  width:100%;
  margin-top:10px;
}

/* Payment icons block (keep if you re-add later) */
.eflc_cartbuttonpayment{
  width:171px;
  height:26px;
  background:url(/images/item_info_details_sprite.png?v5) no-repeat 0 0 transparent;
  position:absolute;
  right:22px;
  top:5px;
  display:block;
  margin:0 auto;
}

/* Flexiti mini buybox */
.flexiti-mini-wrap{
  display:flex;
  align-items:center;
  gap:0px;
  justify-content: center;
  /*    margin-top: -9px; */
}

.flexiti-mini-bg{
  width:37%;
  height:17px;
  background:url('/images/banners/buy_box_core_bg.gif?v1') no-repeat center center;
  background-size:contain;
  flex-shrink:0;
}

.flexiti-mini-text{
  font-size: 14px;
line-height: 1.2;
white-space: nowrap;
font-weight: bold;
color: #e6476c;
}
.flexiti-mini-text a {
    color: #e6476c!important;
}

/* ===============================
   LEGACY TAB UI (IF STILL USED)
   =============================== */
.usual{ margin:15px 0; }
.usual ul{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
}
.usual li a{
  padding:.5em 1.2em;
  border:1px solid #ddd;
  border-bottom:0;
  background:#f9f9f9;
  font-weight:bold;
  text-decoration:none;
}
.usual li a.selected{ background:#fff; }
.usual div{
  border:1px solid #ddd;
  padding:15px;
  font-size:13px;
  color:#555;
}
.eflc-buybox-price{   padding: 10px;
   border: 1px #f3f3f3 solid;
   border-radius: 6px;
   box-shadow: 0 1px 2px rgb(0 0 0 / 2%), 0 4px 12px rgb(0 0 0 / 2%);
   background: #fbfbfb !important;
}
/* ===============================
   MOBILE PATCHES
   =============================== */
@media (max-width:900px){

  /* Reduce severity of the “flow lock” on mobile
     (still kills floats; keeps layout from getting weird) */
  .pi-right,
  .pi-right *{
    position:static !important;
    max-width:100%;
  }

  /* Title/price scale down */
  .bb-title{
    font-size:18px;
    line-height:1.25;
  }

  .bb-condition{
    font-size:12px;
    margin-bottom:8px;
  }

  #productPrices,
  #productPrices .productSalePrice,
  #productPrices .productSpecialPrice{
    font-size:28px;
  }

  #productPrices .normalprice,
  #productPrices .productOldPrice{
    font-size:14px;
  }

  /* Shipping lines tighter */
  .bb-shipping{
    font-size:13px;
    margin:8px 0 12px 0;
  }
  .bb-shipping .bb-row{ margin:3px 0; }

  /* Add-to-cart: big thumb-friendly button */
  .bb-cta input[type="submit"]{
    width:100%;
    min-height:48px;
    font-size:18px;
    font-weight:800;
    border-radius: 5px;
  }

  /* Prevent long legacy spans causing scroll */
  .coupondisp,
  #countdown{
    word-break:break-word;
  }
}

@media (max-width:420px){
  .bb-title{ font-size:17px; }
  #productPrices,
  #productPrices .productSalePrice,
  #productPrices .productSpecialPrice{ font-size:26px; }
}

/* ===============================
   OPTIONAL: PRICE STACK (VERTICAL)
   NOTE: This uses :has() (modern browsers). If you need legacy support, tell me.
   =============================== */
#productPrices{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start;
  gap:2px;
}

#productPrices .normalprice{
  order:1;
}

#productPrices #coup{
  order:2;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
}

#productPrices .productSpecialPrice,
#productPrices .productSalePrice{
  order:3;
}

/* Single-price products (no normalprice): go back to a row */
#productPrices:not(:has(.normalprice)){
  flex-direction:row !important;
  align-items:baseline;
  gap:8px;
}

/* ===============================
   BUYBOX TRUST LIST
   =============================== */
.eflc-buybox-trust{
  padding: 1px 13px;
    font-size: 15px;
    line-height: 1.35;
    color: #222;
}

.eflc-buybox-trust .bb-list{
  list-style:none;
  margin:0;
  padding:0;
}

.eflc-buybox-trust .bb-item{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin:6px 0;
}

.eflc-buybox-trust .bb-check{
  width:18px;
  min-width:18px;
  line-height:1.1;
  font-weight:700;
  color:#1a9b3f;
  margin-top:2px;
}

.eflc-buybox-trust .bb-text{
  flex:1;
}

.eflc-buybox-trust .bb-text a{
  color:#000ec5;
  text-decoration:underline;
  cursor:pointer;
}

.eflc-buybox-trust .bb-trustline{
  margin-top:12px;
  font-size:15px;
  color:#5a5a5a;
}

.eflc-buybox-trust .bb-trustline strong{
  color:#222;
}

.eflc-ask-expert-btn{
  align-items: center;
    margin-top: 12px;
    padding: 16px 16px;
    background: #f2f2f2;
    border: 1px solid #d5d5d5;
    border-radius: 8px;
    font-size: 18px;
    font-weight: 600;
    color: #111;
    text-decoration: none;
    transition: background .15s ease, box-shadow .15s ease, transform .05s ease;
    display: block;
}
.eflc-ask-expert-btn span {display:block;}
.eflc-ask-expert-btn:hover{
  background:#e9e9e9;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
}

.eflc-ask-expert-btn:active{
  transform:translateY(1px);
}

/* Optional subtle icon */
.eflc-ask-expert-btn span.ask-q::before{
  content:"💬";
  font-size:16px;
  line-height:1;
  margin-right:5px;
}
/* =========================================================
   EFLC PHONE FIX (≤768px) — DESKTOP UNTOUCHED
   ========================================================= */
@media (max-width:768px){

  /* 1) Stack the columns */
  .eflc-pi2-top{
    display:block !important;
  }

  /* 2) Make buybox full width */
  .pi-right{
    width:100% !important;
    max-width:none !important;
  }

  /* 3) STOP the global "position:static" bulldozer on phones
        (this is the big one) */
  .pi-right *{
    position:relative !important; /* overrides your position:static !important */
    float:none !important;
    max-width:100%;
    box-sizing:border-box;
    z-index: 1000 !important;

  }
.coupondisp {font-size: 3vw;}
  /* 4) Image must scale */
  #productMainImage img{
    width:85% !important;
    max-width:520px !important;
    height:auto !important;
    margin:0 auto !important;
    display:block !important;
  }
  #productMainImage br,
  #productMainImage .imgLink{ display:none !important; }

  /* 5) Thumbs become swipe row */
  #productsdAdditionalImages{
    display:flex !important;
    gap:8px !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    padding:6px 0 10px !important;
  }
  #productsdAdditionalImages img{
    width:52px !important;
    height:52px !important;
    object-fit:cover !important;
    border-radius:8px;
  }

  /* 6) Phone-friendly CTA */
  .bb-cta input[type="submit"],
  #trackButton{
    width:100% !important;
    min-height:52px !important;
    font-size:18px !important;
    font-weight:800 !important;
    border-radius: 8px !important;
  }
        .button_in_cart {        background: #55A32A url(/images/button_in_cart.png) 87% 18px no-repeat;}
  /* 7) Prevent sideways scroll from price/coupon */
  #productPrices,
  #productPrices *{
    white-space:normal !important; /* overrides nowrap */
  }
  #productinfoBody #productMainImage {min-height: inherit!important;}
  .eflc-buybox-price,    #productPrices, #infoPrice {border:0;box-shadow: none;}
  .eflc-buybox-trust .bb-trustline{  font-size: 3.5vw;}
}



/* =========================
   EFLC Product Details Layout (LEFT accordion, RIGHT buybox + inbox)
   ========================= */
#eflcProductDetails .eflc-details-layout{
  margin-top:20px;
  display:grid;
  grid-template-columns: 1fr 340px;
  gap: 20px;
  align-items:start;
}

@media (max-width: 900px){
  #eflcProductDetails .eflc-details-layout{
    grid-template-columns: 1fr;
    padding: 0 10px;
  }
}

/* RIGHT column stack */
#eflcProductDetails .eflc-details-side{
  display:flex;
  flex-direction:column;
  gap: 14px;
}

/* Wrap buybox output nicely even if include only prints <ul> */
#eflcProductDetails .eflc-buybox-details{
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  padding: 12px 14px;
  background: #fff;
}

/* "What's in the Box?" side box */
#eflcProductDetails .eflc-whatsbox{
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  padding: 14px 16px;
  background: #fafafa;
  font-size: 14px;
}

#eflcProductDetails .eflc-whatsbox h4{
  margin: 0 0 10px;
  font-size: 15px;
}

#eflcProductDetails .eflc-whatsbox ul{
  margin: 0 0 0 18px;
}

/* =========================
   EFLC Product Details Accordion
   ========================= */
#eflcProductDetails .eflcAcc {
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}

#eflcProductDetails details {
  border-top: 1px solid #eee;
}

#eflcProductDetails details:first-child {
  border-top: 0;
}

#eflcProductDetails summary {
  padding: 14px 16px;
  cursor: pointer;
  font-weight: 700;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  user-select: none;
}

#eflcProductDetails summary::-webkit-details-marker {
  display: none;
}

#eflcProductDetails summary::after {
  content: "+";
  font-weight: 900;
  opacity: 0.6;
}

#eflcProductDetails details[open] > summary::after {
  content: "–";
}

#eflcProductDetails .eflcAccBody {
  padding: 0 16px 16px;
}

#eflcProductDetails .eflcAccBody ul {
  margin-left: 18px;
}

/* =========================================================
   EFLC Product Details Content Styling
   Applies inside accordion bodies only
   ========================================================= */

#eflcProductDetails .eflcAccBody {
  font-size: 15px;
  line-height: 1.55;
  color: #222;
}

/* Paragraph spacing */
#eflcProductDetails .eflcAccBody p {
  margin: 0 0 10px;
}

/* Lists (Features, Specs, In the Box, etc.) */
#eflcProductDetails .eflcAccBody ul {
  margin: 8px 0 12px 20px;
  padding: 0;
}

#eflcProductDetails .eflcAccBody li {
  margin: 4px 0;
}

/* Definition-style specs (if any <strong>Label:</strong> Value) */
#eflcProductDetails .eflcAccBody strong {
  font-weight: 600;
  color: #000;
}

/* Spec group headers (you already use <h4> in specs) */
#eflcProductDetails .eflcAccBody h4 {
  margin: 14px 0 6px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #444;
}

/* Horizontal rules if they appear */
#eflcProductDetails .eflcAccBody hr {
  border: 0;
  border-top: 1px solid #e5e5e5;
  margin: 14px 0;
}

/* Links inside details */
#eflcProductDetails .eflcAccBody a {
  color: #c40000; /* EFLC red */
  text-decoration: none;
  font-weight: 500;
}

#eflcProductDetails .eflcAccBody a:hover {
  text-decoration: underline;
}

/* Small-print notes (warranty, shipping, open-box notes) */
#eflcProductDetails .eflcAccBody .note,
#eflcProductDetails .eflcAccBody em {
  font-size: 14px;
  color: #555;
}

/* Tighten spacing for spec-heavy blocks */
#eflcProductDetails .eflcAccBody ul ul {
  margin-top: 4px;
  margin-bottom: 6px;
}


/* =========================================================
   Accordion headers (summary)
   ========================================================= */

#eflcProductDetails summary {
  font-size: 15px;
  letter-spacing: 0.02em;
  background: #fafafa;
}

#eflcProductDetails details[open] > summary {
  background: #f5f5f5;
}

/* Optional subtle divider between sections */
#eflcProductDetails details:not(:last-child) {
  box-shadow: inset 0 -1px 0 #eee;
}

/* =========================================================
   EFLC Right Column Tiles
   Product Details + What's in the Box
   ========================================================= */

#eflcProductDetails .eflc-buybox-details,
#eflcProductDetails .eflc-whatsbox {
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  background: #f9f9f9;
  padding: 14px 16px;
}

/* Headings */
 h4.eflc-data-details ,
#eflcProductDetails .eflc-whatsbox h4 {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #333;
  margin: 0 0 10px;
}

/* List reset */
#eflcProductDetails .bbd-list,
#eflcProductDetails .eflc-whatsbox ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Product Details list items */
#eflcProductDetails .bbd-item {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 4px 0;
  font-size: 14px;
  line-height: 1.4;
  color: #111;
}

/* Checkmark */
#eflcProductDetails .bbd-check {
  color: #2e7d32; /* subtle green */
  font-weight: 700;
  line-height: 1.4;
}

/* Text wrapper */
#eflcProductDetails .bbd-text {
  flex: 1;
}

/* Links inside Product Details */
#eflcProductDetails .eflc-buybox-details a {
  color: #c40000; /* EFLC red */
  text-decoration: none;
  font-weight: 600;
}

#eflcProductDetails .eflc-buybox-details a:hover {
  text-decoration: underline;
}

/* What's in the Box list items */
#eflcProductDetails .eflc-whatsbox li {
  margin: 4px 0;
  font-size: 14px;
  line-height: 1.45;
}

/* Subtle separation when stacked */
#eflcProductDetails .eflc-buybox-details + .eflc-whatsbox {
  margin-top: 14px;
}
div.eflcWarrantyTile {
    font-size: 14px;
    line-height: 24px;
    display: block;
}
div.eflcWarrantyTile ul{
    list-style: none;
}
/* Mobile adjustments */
@media (max-width: 900px) {
  #eflcProductDetails .eflc-buybox-details,
  #eflcProductDetails .eflc-whatsbox {
    padding: 12px 14px;
  }
}
.eflcMoreProductOptions {display: block;}
/* Reviews tile (match Product Details tile) */
#eflcProductDetails .eflc-reviewsbox{
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  background: #f9f9f9;
  padding: 14px 16px;
}

/* Heading matches your other right-tile headings */
#eflcProductDetails .eflc-reviewsbox h4{
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #333;
  margin: 0 0 10px;
}

/* If your reviews include outputs its own "boxed" wrapper, flatten it so it blends */
#eflcProductDetails .eflc-reviewsbox [data-eflc-reviews],
#eflcProductDetails .eflc-reviewsbox .productReviewHover{
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}
#eflcProductDetails summary{
  text-transform: uppercase;
  margin-bottom: 6px;
}

#eflcProductDetails .eflcAccBody{
  padding-top: 8px; /* more space after the header */
}
#eflcProductDetails .eflc-reviewsbox, .eflcWarrantyTile{
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  background: #f9f9f9;
  padding: 14px 16px;
}

#eflcProductDetails .eflc-reviewsbox h4{
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #333;
  margin: 0 0 10px;
}

/* flatten any internal widget styling so it blends into the tile */
#eflcProductDetails .eflc-reviewsbox [data-eflc-reviews],
#eflcProductDetails .eflc-reviewsbox .productReviewHover{
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}
img.pimage, img.ipmage {
    padding: 0;
    margin: 8px auto;
    display: block;
    max-width: 77%;
    border-radius: 10px !important;
  }
.eflc-reviewsbox img {
    margin: 10px 0;
  }



  .productlinebox-cta, .openbox-cta{
    margin-top:12px;
  }

  .productlinebox-cta a, .openbox-cta a{
    display:block;                 /* ← KEY FIX */
    position:relative;
    padding:12px 10px 12px 14px;   /* room for arrow */
    border:1px solid #dcdcdc;
    border-radius:8px;
    background:#ffffff;
    color:#222;
    font-size:14px;
    font-weight:500;
    text-decoration:none;
    transition:background .15s ease, border-color .15s ease;
    white-space:nowrap;            /* keep sentence together */
  }

  .productlinebox-cta a:hover, .openbox-cta a:hover{
    background:#f7f7f7;
    border-color:#cfcfcf;
  }

  .openbox-cta a::after{
    content:"⮞";
    font-size:18px;
    float: right;
    line-height: 1;
  }
  .productlinebox-cta a::after{
    content:"⮟";
    font-size:18px;
    float: right;
    line-height: 1;
  }



  /* =========================================================
     EFLC VARIANT BUTTONS (LIKE YOUR SCREENSHOT)
     - Color: small colour swatch "pill" + text label (NO images)
     - Size: text only (NO swatch)
     - Optional "(Open Box)" suffix
     ========================================================= */

  /* Group + label */
  .eflc-variant-group{ margin:12px 0; }
  .eflc-variant-label{
    display:block;
    font-size:14px;
    font-weight:600;
    margin:0 0 6px;
  }

  /* Button row */
  .eflc-variant-options{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }

  /* Base button */
  .eflc-variant-btn{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:0 14px;
    border:1px solid #cfcfcf;
    border-radius:6px;
    background:#fff;
    color:#111;
    font-size:14px;
    font-weight:500;
    line-height:1;
    text-decoration:none;
    cursor:pointer;
    white-space:nowrap;
    transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
  }

  .eflc-variant-btn:hover{ border-color:#9b9b9b; }

  /* Selected (green outline like your screenshot) */
  .eflc-variant-btn.is-active{
    border-color:#2fa14f;
    box-shadow: inset 0 0 0 1px #2fa14f;
    background:#f6fff9;
  }

  /* =========================
     COLOR BUTTON (swatch + text)
     ========================= */
  .eflc-variant-btn.is-color{ gap:10px; }

  .eflc-variant-btn.is-color .eflc-swatch{
    width:18px;
    height:18px;
    border-radius:999px;
    border:1px solid rgba(0,0,0,.18);
    flex:0 0 auto;
  }

  /* Use on White/Ivory etc so the swatch edge is visible */
  .eflc-variant-btn.is-color .eflc-swatch.is-light{
    border-color: rgba(0,0,0,.28);
  }

  .eflc-variant-btn .eflc-label{ display:inline-block; }

  /* Open Box suffix */
  .eflc-variant-btn .ob-suffix{
    margin-left:6px;
    font-size:12px;
    font-weight:600;
    color:gray;
  }

  /* =========================
     SIZE BUTTON (text only)
     ========================= */
  .eflc-variant-btn.is-size{
    gap:0; /* no swatch spacing */
  }

  /* Keyboard focus */
  .eflc-variant-btn:focus{
    outline:none;
    box-shadow:0 0 0 3px rgba(47,161,79,.25);
  }
  /* =========================================================
     EFLC SERIES "LINE" TILES — NORMAL GRID
     ========================================================= */

  .eflc-line-wrap{
    margin:14px 0 6px;
    border:1px solid #e6e6e6;
    border-radius:6px;
    background:#fff;
  }

  .eflc-line-head{
    padding:10px 12px;
    font-size:14px;
    font-weight:600;
    color:#333;
    border-bottom:1px solid #eee;
    background: #fbfbfb;
  }

  /* Normal tile grid (auto-fit) */
  .eflc-line-grid{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap:12px;
    padding:12px;
    background: #fbfbfb;
  }

  /* Tile */
  .eflc-line-tile{
    border:1px solid #ededed;
    border-radius:6px;
    background:#fff;
    padding:10px 12px;
    transition:border-color .15s ease, box-shadow .15s ease;
  }

  .eflc-line-tile:hover{
    border-color:#d6d6d6;
    box-shadow:0 1px 6px rgba(0,0,0,.06);
  }

  .eflc-line-tile a{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
    color:#111;
    min-height:56px;
  }

  .eflc-line-img{
    width:64px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
  }

  .eflc-line-img img{
    max-width:64px;
    max-height:44px;
    width:auto;
    height:auto;
    display:block;
  }

  .eflc-line-model{
    font-size:13px;
    font-weight:600;
    color:#333;
    line-height:1.2;
  }
  .eflc-line-text {
    display: inline-block;
    vertical-align: middle;
    margin-left: 8px;
  }

  .eflc-line-model {
    display: block;
    font-size: 14px;
    color: #111;
  }

  .eflc-line-openbox {
    display: block;
    font-size: 12px;
    color: #d32f2f; /* or #666 if you want subtle */
    margin-top: 2px;
  }
