/* ============================================
   010 Platform — Business page styles
   Loaded conditionally on single-business only
   ============================================ */

/* Business hero section */
.biz-hero { background: var(--card); border: 1px solid var(--border); border-radius: var(--radius-lg); overflow: hidden; margin-bottom: var(--gap-lg); }
.biz-hero__img { width: 100%; height: 220px; object-fit: cover; background: var(--border); }
.biz-hero__info { padding: var(--gap-md) var(--gap-md) var(--gap-sm); }
.biz-hero__top { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--gap-sm); }
.biz-hero__name { font-size: 20px; font-weight: 700; line-height: 1.2; }
.biz-hero__meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 6px; font-size: 12px; color: var(--sub); }
.biz-hero__open { font-size: 11px; font-weight: 600; padding: 2px 8px; border-radius: 3px; }
.biz-hero__open--open { background: var(--accent-soft); color: var(--accent); }
.biz-hero__open--closed { background: #FEF2F2; color: var(--red); }

/* Direct action button (category-adaptive) */
.biz-action { margin: var(--gap-md) 0; }
.biz-action__btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 20px; border-radius: var(--radius-md);
  font-size: 13px; font-weight: 600; border: none; cursor: pointer;
  color: #fff; transition: opacity 0.2s;
}
.biz-action__btn:hover { opacity: 0.9; }
.biz-action__btn--order { background: var(--accent); }
.biz-action__btn--book { background: var(--blue); }
.biz-action__btn--appointment { background: var(--purple); }
.biz-action__btn--tickets { background: var(--orange); }
.biz-action__btn--shop { background: var(--amber); }
.biz-action__btn--quote { background: var(--accent); }

/* Summary section with language toggle */
.biz-summary { margin-bottom: var(--gap-lg); }
.biz-summary__text { font-size: 14px; line-height: 1.7; color: var(--sub); }
.biz-summary__toggle { margin-bottom: var(--gap-sm); }

/* Opening hours */
.biz-hours { margin-bottom: var(--gap-lg); }
.biz-hours__grid { display: grid; grid-template-columns: auto 1fr; gap: 4px 12px; font-size: 12px; }
.biz-hours__day { font-weight: 600; color: var(--text); }
.biz-hours__time { color: var(--sub); }
.biz-hours__time--today { font-weight: 600; color: var(--accent); }
.biz-hours__toggle { cursor: pointer; font-size: 12px; color: var(--accent); font-weight: 600; list-style: none; }
.biz-hours__toggle::-webkit-details-marker { display: none; }

/* Map section */
.biz-map { margin-bottom: var(--gap-lg); }
.biz-map__embed {
  width: 100%; height: 200px; border: none;
  border-radius: var(--radius-md); background: var(--border);
}
.biz-map__address { font-size: 12px; color: var(--sub); margin-top: 6px; }

/* Photo gallery */
.biz-gallery { margin-bottom: var(--gap-lg); }
.biz-gallery__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: var(--gap-sm); }
.biz-gallery__item {
  display: block; border-radius: var(--radius-md); overflow: hidden;
  aspect-ratio: 4/3; background: var(--border);
}
.biz-gallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.2s; }
.biz-gallery__item:hover img { transform: scale(1.05); }

/* Vacatures section on business page */
.biz-vacatures { margin-bottom: var(--gap-lg); }

/* Related articles on business page */
.biz-articles { margin-bottom: var(--gap-lg); }

/* Nearby businesses */
.biz-nearby { margin-bottom: var(--gap-lg); }
.biz-nearby__grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap-sm); }

/* Claim CTA banner */
.biz-claim-cta {
  background: var(--accent-soft); border: 1px dashed var(--accent);
  border-radius: var(--radius-lg); padding: var(--gap-lg);
  text-align: center; margin: var(--gap-lg) 0;
}
.biz-claim-cta__title { font-size: 15px; font-weight: 700; margin-bottom: 4px; }
.biz-claim-cta__desc { font-size: 12px; color: var(--sub); margin-bottom: var(--gap-md); }

/* Upgrade CTA for claimed pages */
.biz-upgrade-cta {
  background: linear-gradient(135deg, var(--dark), #1a2a1a);
  color: #fff; border-radius: var(--radius-lg);
  padding: var(--gap-lg); text-align: center;
  margin: var(--gap-lg) 0;
}
.biz-upgrade-cta__title { font-size: 14px; font-weight: 700; margin-bottom: 4px; }
.biz-upgrade-cta__desc { font-size: 12px; color: rgba(255,255,255,0.6); margin-bottom: var(--gap-md); }

/* Contact info sidebar */
.biz-contact { font-size: 12px; }
.biz-contact__row { display: flex; gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--border); }
.biz-contact__row:last-child { border-bottom: none; }
.biz-contact__label { color: var(--muted); min-width: 60px; }
.biz-contact__value a { color: var(--accent); }
.biz-contact__value a:hover { text-decoration: underline; }

/* Responsive */
@media (max-width: 639px) {
  .biz-hero__img { height: 160px; }
  .biz-hero__name { font-size: 18px; }
  .biz-nearby__grid { grid-template-columns: 1fr; }
  .biz-gallery__grid { grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); }
}
