#tfm-wrap{display:block;margin:14px 0}
@media(max-width:900px){#tfm-wrap{grid-template-columns:1fr}}
#tfm-map{width:100%;border-radius:12px;min-height:400px}
#tfm-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
#tfm-input{flex:1;padding:10px;border:1px solid #ccc;border-radius:8px}
#tfm-radius{width:120px;padding:8px;border:1px solid #ccc;border-radius:8px}
#tfm-search-btn{padding:10px 14px;border:none;border-radius:10px;cursor:pointer}
.tfm-grid {
  display: flex;
  flex-wrap: wrap;
  margin: 16px -8px 0; /* gutters */
}
.tfm-col,
.col-sm-12,
.col-md-4 {
  padding: 0 8px;
  box-sizing: border-box;
}
.tfm-col,
.col-sm-12 {
  width: 100%;
}
@media (min-width: 768px) {
  .col-md-4 {
    width: 33.3333%;
  }
}
.tfm-card{border:1px solid #e5e5e5;border-radius:12px;padding:12px;margin:0 0 16px;background:#1111;}
.tfm-card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.tfm-distance{font-size:.9em;color:#666}
.tfm-price{margin:6px 0;font-weight:600}
.tfm-desc{font-size:.95em;color:#333}
.tfm-actions{margin-top:8px}
.tfm-btn{padding:10px 12px;border:0;border-radius:10px;background:#111;color:#fff;cursor:pointer}
.tfm-loading{padding:8px;color:#555}
.tfm-empty{padding:10px;border:1px dashed #ccc;border-radius:12px;margin-top:8px;}
.tfm-empty ul{margin:6px 0 0 18px}
