/* ---------- بلوک خودکار انتهای محتوا ---------- */
.gu-single-extra { margin-top: 24px; }
.gu-meta-row { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }
.gu-sign-title { font-size: 15px; margin: 4px 0 14px; display: flex; align-items: center; gap: 6px; color: #444; }
.gu-section-title { margin: 24px 0 10px; font-size: 16px; }

/* ---------- نقشه و مسیریابی ---------- */
.gu-map-wrap { margin: 20px 0; }
.gu-map-canvas { width: 100%; height: 320px; border-radius: 8px; margin-bottom: 12px; }
.gu-route-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.gu-route-btn {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 8px 14px; border-radius: 6px; text-decoration: none;
	font-size: 13px; font-weight: 600; color: #fff; background: #444;
}
.gu-route-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.gu-route-google { background: #1a73e8; }
.gu-route-neshan { background: #00b09b; }
.gu-route-balad  { background: #ff6d00; }

/* ---------- امتیاز ---------- */
.gu-stars { display: inline-flex; gap: 2px; }
.gu-star-full, .gu-star-half { color: #f7b500; }
.gu-star-empty { color: #d9d9d9; }
.gu-rating-widget { margin: 16px 0; }
.gu-rating-display { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.gu-rating-text { font-size: 13px; color: #666; }
.gu-rating-input-stars { margin-top: 8px; display: inline-flex; gap: 4px; direction: ltr; cursor: pointer; }
.gu-rating-input-stars .dashicons { font-size: 22px; width: 22px; height: 22px; color: #d9d9d9; transition: color .1s; }
.gu-rating-input-stars .dashicons.gu-active,
.gu-rating-input-stars .dashicons:hover,
.gu-rating-input-stars .dashicons:hover ~ .dashicons { color: #f7b500; }
.gu-rating-msg { font-size: 13px; margin-top: 6px; }
.gu-rating-voted { color: #1a7431; }

/* ---------- ساعات کاری ---------- */
.gu-hours-view { width: 100%; border-collapse: collapse; margin: 16px 0; }
.gu-hours-view td, .gu-hours-view th { padding: 6px 10px; border-bottom: 1px solid #eee; font-size: 13px; }
.gu-hours-view tr.gu-today { font-weight: 700; background: #f7f9fb; }
.gu-hours-closed { color: #c0392b; }

/* ---------- گالری ---------- */
.gu-gallery-grid { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0; }
.gu-gallery-grid a { display: block; width: 110px; height: 110px; border-radius: 8px; overflow: hidden; }
.gu-gallery-grid img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---------- بازدید و جواز ---------- */
.gu-views-count { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; color: #777; }
.gu-license-badge { display: inline-block; padding: 3px 12px; border-radius: 14px; font-size: 12px; font-weight: 600; }
.gu-license-badge.gu-badge-valid { background: #d7f5df; color: #1a7431; }
.gu-license-badge.gu-badge-expiring_soon { background: #fff3cd; color: #8a6400; }
.gu-license-badge.gu-badge-expired { background: #fbdada; color: #a31414; }
.gu-license-badge.gu-badge-unknown { background: #eee; color: #666; }

/* ---------- نوار انتخاب منطقه شهرداری ---------- */
.gu-region-filter { margin: 0 0 24px; }
.gu-region-filter-title { font-size: 14px; font-weight: 700; margin-bottom: 10px; display: flex; align-items: center; gap: 6px; color: #333; }
.gu-region-filter-list { display: flex; flex-wrap: wrap; gap: 8px; }
.gu-region-btn {
	display: inline-flex; align-items: center; gap: 4px;
	padding: 6px 14px; border-radius: 20px; text-decoration: none;
	font-size: 13px; background: #f1f1f1; color: #333; border: 1px solid #e2e2e2;
	transition: background .15s, color .15s;
}
.gu-region-btn:hover { background: #e6f0fa; color: #1a6fc4; }
.gu-region-btn.gu-active { background: #2271b1; border-color: #2271b1; color: #fff; }
.gu-region-count { opacity: .75; font-size: 11px; }

/* ---------- خلاصه اطلاعات در فهرست آرشیو ---------- */
.gu-archive-extra { margin-top: 10px; }
.gu-archive-meta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font-size: 13px; }
.gu-archive-region, .gu-archive-phone { display: inline-flex; align-items: center; gap: 4px; color: #555; }
.gu-archive-phone { direction: ltr; }

/* ---------- دایرکتوری مستقل واحدهای صنفی ([gu_business_units]) ---------- */
.gu-directory-search { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.gu-directory-search input[type="text"] { flex: 1 1 260px; padding: 9px 12px; border: 1px solid #ddd; border-radius: 6px; font-size: 14px; }
.gu-directory-search button {
	display: inline-flex; align-items: center; gap: 4px; padding: 9px 18px;
	border: none; border-radius: 6px; background: #2271b1; color: #fff; cursor: pointer; font-size: 14px;
}
.gu-directory-search button:hover { background: #195583; }
.gu-directory-clear { align-self: center; font-size: 13px; color: #a31414; text-decoration: none; }
.gu-directory-meta { font-size: 13px; color: #777; margin-bottom: 14px; }
.gu-directory-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.gu-directory-card {
	display: block; border: 1px solid #eee; border-radius: 10px; overflow: hidden;
	text-decoration: none; color: inherit; background: #fff; transition: box-shadow .15s, transform .15s;
}
.gu-directory-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.08); transform: translateY(-2px); }
.gu-directory-card-img { width: 100%; height: 140px; background-size: cover; background-position: center; background-color: #f4f4f4; }
.gu-directory-card-noimg { display: flex; align-items: center; justify-content: center; }
.gu-directory-card-noimg .dashicons { font-size: 36px; width: 36px; height: 36px; color: #ccc; }
.gu-directory-card-body { padding: 12px 14px; }
.gu-directory-card-body h3 { margin: 0 0 8px; font-size: 15px; }
.gu-directory-card-region, .gu-directory-card-phone { display: flex; align-items: center; gap: 4px; font-size: 12px; color: #666; margin-bottom: 4px; }
.gu-directory-card-phone { direction: ltr; justify-content: flex-end; }
.gu-directory-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 8px; }
.gu-directory-empty { padding: 30px 0; text-align: center; color: #777; }
.gu-directory-pagination { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 20px; justify-content: center; }
.gu-page-btn { display: inline-flex; padding: 6px 12px; border-radius: 6px; background: #f1f1f1; color: #333; text-decoration: none; font-size: 13px; }
.gu-page-btn.gu-active { background: #2271b1; color: #fff; }

/* ---------- شبکه‌های اجتماعی ---------- */
.gu-social-icons { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.gu-social-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 34px; height: 34px; border-radius: 50%; background: #f1f1f1; color: #444;
	text-decoration: none;
}
.gu-social-icon:hover { background: #2271b1; color: #fff; }
