:root{
  --ifl-bg0:#080c0f; --ifl-bg1:#0b1216;
  --ifl-text:#eaf7f1; --ifl-muted:#9fb0aa; --ifl-accent:#18e27b;
  --ifl-border:rgba(255,255,255,.10);
}

.ifl-wrap,
.ifl-field input, .ifl-field select,
.ifl-btn,
.ifl-card,
.ifl-fs__map,
.ifl-mcard{ border-radius:0 !important; }

.ifl-wrap{
  background:
    radial-gradient(900px 450px at 18% 0%, rgba(24,226,123,.07), transparent 62%),
    radial-gradient(900px 450px at 80% 40%, rgba(24,226,123,.04), transparent 60%),
    linear-gradient(180deg, var(--ifl-bg0), #000);
  padding:20px;
  border:1px solid var(--ifl-border);
  box-shadow: 0 18px 44px rgba(0,0,0,.55);
  color:var(--ifl-text);
}

.ifl-fs__filters{ display:flex; flex-wrap:nowrap; gap:12px; align-items:flex-end; width:100%; }
.ifl-field{ display:flex; flex-direction:column; gap:6px; min-width:150px; flex: 1 1 170px; }
.ifl-field label{ font-size:12px; color:var(--ifl-muted); }

.ifl-field input, .ifl-field select{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,.25));
  border:1px solid var(--ifl-border);
  padding:11px 12px;
  color:var(--ifl-text);
  outline:none;
  width:100%;
  height:44px;
  box-sizing:border-box;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
}

.ifl-field select{
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,.25)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23cfe6dd' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat,no-repeat;
  background-position: 0 0, calc(100% - 12px) 50%;
  padding-right:34px;
}

.ifl-field select option{ background:#0b1216; color:#eaf7f1; }
input::-webkit-calendar-picker-indicator { filter: invert(1); opacity:.85; }

.ifl-field--keyword{ flex: 2 1 320px; min-width:240px; }
.ifl-field--case   { flex: 1 1 190px; min-width:160px; }
.ifl-field--county { flex: 1 1 200px; min-width:170px; }
.ifl-field--city   { flex: 1 1 220px; min-width:180px; }
.ifl-field--date   { flex: 0 0 170px; min-width:170px; }
.ifl-field--quick  { flex: 0 0 190px; min-width:190px; }
.ifl-field--search { flex: 0 0 150px; min-width:150px; }

.ifl-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px; cursor:pointer;
  border:1px solid rgba(24,226,123,.35);
  color:#04160c;
  background:linear-gradient(180deg, rgba(24,226,123,.95), rgba(24,226,123,.72));
  font-weight:900;
  height:44px;
  min-width:140px;
  white-space:nowrap;
}
.ifl-btn--ghost{
  border:1px solid var(--ifl-border);
  color:var(--ifl-text);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.2));
}
.ifl-field--search .ifl-btn{ width:100%; min-width:0; }

.ifl-fs__actions{ display:flex; gap:12px; margin-top:12px; align-items:center; justify-content:flex-end; flex-wrap:wrap; }
@media(max-width:1100px){
  .ifl-fs__filters{ flex-wrap:wrap; }
  .ifl-field{ flex: 1 1 calc(50% - 12px); min-width:0; }
  .ifl-field--keyword{ flex-basis:100%; }
  .ifl-field--search{ flex: 1 1 100%; }
}

.ifl-muted{ color:var(--ifl-muted); }
.ifl-card{ background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,.25)); border:1px solid var(--ifl-border); padding:14px; }

.ifl-layout{ margin-top:12px; }
.ifl-layout.is-list .ifl-mapCol{ display:none; }
.ifl-layout.is-list .ifl-listCol{ width:100%; }

.ifl-layout.is-halfmap{
  display:grid;
  grid-template-columns: 1fr 760px;
  grid-template-areas: "map list";
  gap:12px;
  align-items:start;
}
.ifl-mapCol{ grid-area: map; position: sticky; top: 90px; }
.ifl-listCol{ grid-area: list; max-height: 660px; overflow:auto; padding-right:6px; }

.ifl-fs__mapBar{ display:flex; justify-content:space-between; gap:12px; align-items:center; margin:0 0 10px; flex-wrap:wrap; }
.ifl-check{ display:flex; gap:8px; align-items:center; cursor:pointer; user-select:none; }
.ifl-check input{ width:16px; height:16px; }
.ifl-fs__map{ width:100%; height:660px; border:1px solid var(--ifl-border); overflow:hidden; background:#000; }

.ifl-grid-mock{
  display:grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap:14px;
}
@media(max-width:1600px){ .ifl-grid-mock{ grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media(max-width:1260px){ .ifl-grid-mock{ grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media(max-width:900px){  .ifl-grid-mock{ grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media(max-width:520px){  .ifl-grid-mock{ grid-template-columns: 1fr; } }

.ifl-layout.is-halfmap .ifl-listCol .ifl-grid-mock{
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
}
@media(max-width:520px){
  .ifl-layout.is-halfmap .ifl-listCol .ifl-grid-mock{ grid-template-columns:1fr; }
}

.ifl-mcard{
  border:1px solid rgba(24,226,123,.30);
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,.25));
  overflow:hidden;
  box-shadow: 0 14px 42px rgba(0,0,0,.42);
}

.ifl-mtop{
  display:block; width:100%;
  position:relative;
  height:210px;
  background:#000; overflow:hidden;
  text-decoration:none !important;
}
.ifl-layout.is-halfmap .ifl-mtop{ height:155px; }

.ifl-hot-ribbon{
  position:absolute;
  top:12px; left:12px;
  z-index:6;
  padding:8px 12px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:#fff;
  background:linear-gradient(180deg, rgba(255,59,59,.95), rgba(180,0,0,.95));
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 8px 18px rgba(255,0,0,.22), inset 0 1px 0 rgba(255,255,255,.18);
  pointer-events:none;
}

.ifl-mimg{
  width:100%; height:100%;
  object-fit:cover; display:block;
  filter: contrast(1.06) saturate(1.06) brightness(1.04);
}

/* ✅ Missing in your original: you output .ifl-mbody but never styled it */
.ifl-mbody{ background: transparent; }

.ifl-mbadges{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:8px; }
.ifl-mbadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:11px;
  letter-spacing:.08em;
  font-weight:900;
  text-transform:uppercase;
  color:#d7ffe9;
  background: rgba(0,0,0,.75);
  border:1px solid rgba(24,226,123,.45);
}
.ifl-mbadge--canceled{
  border-color: rgba(255,255,255,.20);
  color:#cfd7d3;
}

.ifl-mhead{ padding:10px 12px 2px; }
.ifl-maddr{
  margin:0;
  font-size:16px;
  font-weight:900;
  line-height:1.15;
  color: var(--ifl-accent);
}

/* ✅ NEW: note line under date/time */
.ifl-adminNote{
  width:100%;
  margin-top:2px;
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.25);
  color: rgba(234,247,241,.78);
  font-size:12px;
  font-weight:800;
  letter-spacing:.01em;
}

/* Opening bid row */
.ifl-opening-row{
  margin-top:6px;
  display:flex;
  align-items:baseline;
  gap:10px;
  width:100%;
}
.ifl-opening-label{
  color:rgba(255,255,255,.70);
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.ifl-opening{
  color:var(--ifl-accent);
  font-size:18px;
  font-weight:900;
  text-shadow:0 0 8px rgba(24,226,123,.25);
}

.ifl-minfo{
  display:flex; align-items:center; justify-content:space-between;
  gap:10px; padding:10px 12px;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.35);
  font-weight:800;
}
.ifl-minfo-left{ display:flex; flex-wrap:wrap; gap:10px; color:rgba(234,247,241,.86); font-size:12px; }

.ifl-mfooter{
  display:flex; align-items:center; justify-content:space-between;
  gap:10px; padding:10px 12px;
  background: rgba(0,0,0,.22);
}

.ifl-mmetrics{
  display:flex; flex-wrap:wrap;
  gap:10px; font-size:12px;
  color: rgba(234,247,241,.72);
}
.ifl-mmetrics b{ color: rgba(24,226,123,.95); font-weight:900; }

.ifl-mcta{
  display:inline-flex; align-items:center; justify-content:center;
  padding:9px 12px; font-weight:900;
  color:#eaf7f1; text-decoration:none !important;
  border:1px solid rgba(24,226,123,.45);
  background: rgba(0,0,0,.30);
  min-width:120px;
  white-space:nowrap;
}
.ifl-mcta:hover{ background: rgba(24,226,123,.10); }

/* ✅ NEW: CTA row so View Deal + Bid Now look clean */
.ifl-mctaRow{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}

/* ✅ NEW: Bid Now styling */
.ifl-mcta--bidnow{
  color:#04160c;
  border:1px solid rgba(24,226,123,.60);
  background: linear-gradient(180deg, rgba(24,226,123,.92), rgba(24,226,123,.70));
}
.ifl-mcta--bidnow:hover{
  background: linear-gradient(180deg, rgba(24,226,123,.98), rgba(24,226,123,.78));
}

.ifl-ico{ display:inline-flex; align-items:center; gap:6px; }
.ifl-ico:before{
  content:""; width:14px; height:14px;
  display:inline-block; opacity:.9;
  background-size:14px 14px; background-repeat:no-repeat;
}
.ifl-ico--cal:before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23cfe6dd' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E");
}
.ifl-ico--clock:before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23cfe6dd' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E");
}

/* Admin editor */
.ifl-adminbox{
  margin-top:8px;
  padding-top:8px;
  border-top:1px dashed rgba(255,255,255,.14);
}
.ifl-adminrow{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:8px;
}

/* ✅ NEW: extra admin row spans nicely (Bid URL + Note) */
.ifl-adminrow--extra{
  margin-top:8px;
  grid-template-columns: 1fr 1fr;
}
@media(max-width:520px){
  .ifl-adminrow,
  .ifl-adminrow--extra{
    grid-template-columns: 1fr;
  }
}

.ifl-adminrow input,
.ifl-adminrow select{
  height:34px;
  width:100%;
  box-sizing:border-box;
  background: rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.14);
  color: var(--ifl-text);
  padding: 0 10px;
  outline:none;
  font-size:12px;
}

.ifl-adminrow input[readonly]{ opacity:.85; cursor:not-allowed; }
.ifl-adminactions{
  display:flex; justify-content:flex-end; gap:8px; margin-top:8px;
}
.ifl-savebtn{
  height:34px; padding:0 12px; font-weight:900;
  border:1px solid rgba(24,226,123,.45);
  background: rgba(24,226,123,.12);
  color: rgba(234,247,241,.95);
  cursor:pointer;
}
.ifl-saving{ opacity:.75; pointer-events:none; }
.ifl-saved{
  color: rgba(24,226,123,.95);
  font-weight:900;
  font-size:12px;
  margin-left:auto;
  align-self:center;
}

.ifl-savedBox{
  display:flex; gap:10px; align-items:center; justify-content:flex-end;
  margin-top:10px; flex-wrap:wrap;
}
.ifl-savedBox .ifl-btn{ height:40px; padding:10px 14px; }
.ifl-pill{
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.25);
  padding:8px 10px;
  font-size:12px;
  color: rgba(234,247,241,.85);
}

/* Mobile MINIMAL mode */
@media (max-width: 680px){
  .ifl-fs__filters--desktop{ display:none !important; }

  .ifl-fs__mobilebar{
    display:grid !important;
    grid-template-columns: 1fr 1fr;
    gap:12px;
    align-items:end;
  }
  .ifl-fs__mobilebar .ifl-field{ margin:0 !important; }
  .ifl-fs__mobilebar label{ font-size:12px; opacity:.85; }

  #fsQuickMobile{ height:56px !important; font-size:18px !important; }
  #iflFsSearchMobile{ height:56px !important; font-size:18px !important; }

  .ifl-advToggle{
    width:100%;
    margin: 10px 0 12px;
    padding: 14px 16px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(255,255,255,.03);
    color: var(--ifl-accent);
    font-weight: 900;
    letter-spacing: .3px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
  }
  .ifl-advToggle__icon{ font-size:18px; line-height:1; }

  .ifl-fs__advanced{
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    padding: 12px;
    background: rgba(0,0,0,.35);
  }
  .ifl-fs__advanced .ifl-field{ display:block; width:100%; margin: 0 0 12px 0; }
  .ifl-fs__advanced input,
  .ifl-fs__advanced select{ height:56px !important; font-size:16px !important; }

  .ifl-fs__advActions{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:12px;
    margin-top: 6px;
  }
  #fsAdvReset, #fsAdvApply{ height:56px !important; font-size:18px !important; }

  .ifl-fs__actions,
  .ifl-savedBox,
  #fsCount,
  #fsMapStatus,
  .ifl-fs__mapBar,
  .ifl-mapCol{ display:none !important; }

  #fsLayout{ margin-top: 12px !important; }

  body.ifl-fs-page .houzez-mobile-menu,
  body.ifl-fs-page .mobile-menu,
  body.ifl-fs-page .mobile-nav,
  body.ifl-fs-page .footer-mobile-menu,
  body.ifl-fs-page .bottom-nav,
  body.ifl-fs-page .mobile-footer,
  body.ifl-fs-page .sticky-footer,
  body.ifl-fs-page .fave-mobile-footer,
  body.ifl-fs-page .fave-footer-mobile{
    display:none !important;
  }

  body.ifl-fs-page footer,
  body.ifl-fs-page #footer-section,
  body.ifl-fs-page .elementor-location-footer,
  body.ifl-fs-page .footer-bottom,
  body.ifl-fs-page .main-footer{
    display:none !important;
  }
}

/* Mobile opening bid layout */
@media(max-width:520px){
  .ifl-minfo-left{
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }
  .ifl-opening-row{
    width:100%;
    justify-content:flex-start;
    margin-top:0;
  }
  .ifl-opening{
    font-size:20px;
    line-height:1.05;
    white-space:nowrap;
  }

  /* ✅ NEW: keep buttons full width on tiny screens */
  .ifl-mctaRow{
    width:100%;
    justify-content:stretch;
  }
  .ifl-mcta{
    flex:1 1 auto;
    min-width:0;
  }
}
/* --- NEW: note line under date/time (logged-in only) --- */
.ifl-note-line{
  width:100%;
  margin-top:6px;
  padding:8px 10px;
  background: rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.12);
  color: rgba(234,247,241,.88);
  font-size:12px;
  font-weight:700;
  letter-spacing:.2px;
}

/* --- NEW: CTA group so Bid Now can sit with View Deal --- */
.ifl-mctas{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}

/* --- NEW: Bid Now style (slightly more “action”) --- */
.ifl-mcta--bid{
  border-color: rgba(24,226,123,.65);
  background: rgba(24,226,123,.10);
}

/* --- NEW: admin row for bid url + note --- */
.ifl-adminrow--two{
  margin-top:8px;
}
