
/* Cards */
.ilft-card { border-radius: 18px; overflow: hidden; }
.ilft-card-img-wrap { position: relative; overflow:hidden; }
.ilft-card-img { transition: transform .35s ease; height: 210px; object-fit: cover; }
.ilft-card:hover .ilft-card-img { transform: scale(1.05); }
.ilft-card .card-body { padding: 16px; }

.ilft-live-badge{
  position:absolute; left:12px; top:12px;
  background: rgba(17, 17, 17, .85);
  color:#fff; font-size:12px; padding:6px 10px; border-radius: 999px;
  display:flex; align-items:center; gap:8px;
}
.ilft-pulse-dot{
  width:10px; height:10px; border-radius: 999px; background: #32d74b;
  box-shadow: 0 0 0 rgba(50, 215, 75, 0.6);
  animation: ilftPulse 1.4s infinite;
}
@keyframes ilftPulse{
  0% { box-shadow: 0 0 0 0 rgba(50, 215, 75, .65); }
  70% { box-shadow: 0 0 0 12px rgba(50, 215, 75, 0); }
  100% { box-shadow: 0 0 0 0 rgba(50, 215, 75, 0); }
}

.ilft-verified-badge{
  position:absolute; right:12px; top:12px;
  background: rgba(13, 110, 253, .92);
  color:#fff; font-size:12px; padding:6px 10px; border-radius: 999px;
}

.ilft-grid .col-12 { display:flex; }

/* Modal */
.ilft-modal-img img{ height: 240px; object-fit: cover; }

.ilft-hours{
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  padding: 10px 12px;
  background: rgba(0,0,0,.02);
}
.ilft-hours > div + div{ margin-top: 6px; }

/* Dashboard small polish */
.ilft-dashboard .card { border-radius: 18px; }
.ilft-metric { border-radius: 16px; }
