/* ========== TrustFusion Frontend (Grid + List) ========== */
.tf-wrap{
  --tf-bg:#ffffff;
  --tf-text:#111827;
  --tf-muted:#6b7280;
  --tf-border:#e5e7eb;
  --tf-star:#f59e0b;
  --tf-shadow:0 1px 2px rgba(0,0,0,.04);
  max-width: 1000px;
  margin: 0 auto;
  padding: 16px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--tf-text);
}

/* ---------- Business header (optional) ---------- */
.tf-profile{
  border:1px solid var(--tf-border);
  border-radius: 12px;
  padding: 14px;
  background: var(--tf-bg);
  box-shadow: var(--tf-shadow);
  margin-bottom: 16px;
}
.tf-profile-main{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.tf-profile-name{font-size:18px;font-weight:700;margin-right:8px}
.tf-profile-rating{display:flex;gap:8px;align-items:center}
.tf-stars{color:var(--tf-star);letter-spacing:.5px}
.tf-rating-num{font-weight:600}
.tf-rating-total{color:var(--tf-muted)}
.tf-profile-address{width:100%;color:var(--tf-muted);font-size:14px;margin-top:4px}

/* ---------- GRID layout ---------- */
.tf-layout-grid .tf-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:16px;
}
.tf-card{
  border:1px solid var(--tf-border);
  border-radius:12px;
  padding:14px;
  background:var(--tf-bg);
  box-shadow:var(--tf-shadow);
}
.tf-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.08)}
.tf-card .tf-author{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.tf-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}
.tf-rating{font-size:14px;color:var(--tf-star);margin:6px 0}
.tf-text{font-size:14px;line-height:1.5}
.tf-time{font-size:12px;color:var(--tf-muted);margin-top:8px}

/* ---------- LIST layout ---------- */
.tf-layout-list .tf-list{
  display:flex;
  flex-direction:column;
  gap:14px;
  list-style:none;
  padding:0;
  margin:0;
}
.tf-row{
  border:1px solid var(--tf-border);
  border-radius:12px;
  background:var(--tf-bg);
  box-shadow:var(--tf-shadow);
  padding:14px;
}
.tf-row-head{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.tf-row .tf-author{display:flex;flex-direction:column}
.tf-row .tf-rating{margin-left:auto}

/* ---------- Notices ---------- */
.tf-notice{
  padding:12px;border-radius:8px;background:#f9fafb;border:1px solid var(--tf-border);color:#111827
}

/* ---------- Responsive tweaks ---------- */
@media (max-width: 640px){
  .tf-profile-main{align-items:flex-start}
  .tf-row-head{flex-wrap:wrap}
  .tf-row .tf-rating{margin-left:0}
}
