/* mapsviet-directory.css — chỉ chứa CSS đặc thù trang địa điểm, mọi lớp
   dùng chung (card/grid/section/badge...) đã có ở mapsviet-core.css */
.mv-place-header{ margin-top:8px; padding:22px 24px; background:var(--mv-surface); border:1px solid var(--mv-border); border-radius:18px; box-shadow:var(--mv-shadow-sm); }
.mv-place-header h1{ font-size:clamp(24px,3vw,34px); line-height:1.25; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.mv-place-heading-row{ display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.mv-place-eyebrow{ margin:0 0 7px; color:var(--mv-map-blue,#168bd2); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.045em; }
.mv-place-eyebrow i{ margin-right:5px; }
.mv-verified-badge{ display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; color:#0b66c3; background:#eaf4ff; border:1px solid #b8d9fb; border-radius:999px; padding:7px 12px; font-size:12px; font-weight:800; white-space:nowrap; }
.mv-verified-badge i{ font-size:14px; }
.mv-place-card .mv-verified,.mv-nearby-name .mv-verified{ color:#0b66c3; }
.mv-place-address-summary,.mv-place-old-address-summary{ margin:9px 0 0; display:flex; align-items:flex-start; gap:7px; color:var(--mv-text-secondary); font-size:13.5px; }
.mv-place-address-summary > i{ color:var(--mv-map-blue,#168bd2); margin-top:4px; }
.mv-place-old-address-summary{ color:#687684; font-size:12.5px; }
.mv-place-old-address-summary > i{ color:#7a8b9a; margin-top:3px; }
.mv-place-address-summary a{ color:#0b66c3; font-weight:650; }
.mv-page-content{ color:var(--mv-text-secondary); line-height:1.75; }
.mv-page-content p{ margin:0 0 14px; }
#mv-qa-form textarea{ height:auto; padding:12px 16px; }
.mv-save-place-btn.mv-saved{ background:var(--mv-accent-light); color:var(--mv-accent-dark); border-color:var(--mv-accent); }

/* Bản đồ + bảng thông tin nhanh sau H1: đầy đủ dữ liệu nhưng không lấn át tên địa điểm. */
.mv-place-map-shell{ display:grid; grid-template-columns:minmax(0,2fr) minmax(260px,1fr); gap:18px; margin-top:18px; }
.mv-place-map-hero{ min-height:330px; position:relative; overflow:hidden; border:1px solid var(--mv-border); border-radius:18px; background:var(--mv-surface-alt); }
.mv-place-map-hero iframe{ width:100%; height:100%; min-height:330px; border:0; display:block; }
.mv-map-google-btn{ position:absolute; right:14px; bottom:14px; display:inline-flex; align-items:center; gap:7px; padding:9px 14px; border-radius:999px; color:#174ea6; background:#fff; border:1px solid #c9daf5; box-shadow:var(--mv-shadow-md); font-size:12.5px; font-weight:750; }
.mv-map-google-btn i{ color:#4285f4; }
.mv-place-trust-panel{ padding:20px; background:linear-gradient(155deg,#fff 0%,#f1f8ff 100%); border:1px solid #d9eafb; border-radius:18px; }
.mv-place-trust-panel h2{ font-size:16px; margin:0 0 13px; }
.mv-place-trust-item{ display:flex; gap:11px; align-items:flex-start; padding:11px 0; border-bottom:1px solid #dcebf8; color:inherit; }
.mv-place-trust-item > i{ width:30px; height:30px; border-radius:9px; display:flex; align-items:center; justify-content:center; color:#0b66c3; background:#e3f1ff; flex:0 0 auto; }
.mv-place-trust-item div{ min-width:0; display:flex; flex-direction:column; }
.mv-place-trust-item span{ color:var(--mv-text-muted); font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.035em; }
.mv-place-trust-item strong{ color:var(--mv-text-primary); font-size:12.5px; line-height:1.45; overflow-wrap:anywhere; }
.mv-place-verified-note{ display:flex; align-items:center; gap:10px; padding:12px; margin-top:13px; color:#0b66c3; background:#e4f2ff; border:1px solid #b8d9fb; border-radius:12px; }
.mv-place-verified-note > i{ font-size:20px; }
.mv-place-verified-note span{ display:flex; flex-direction:column; font-size:10.5px; line-height:1.4; }
.mv-place-verified-note strong{ font-size:12.5px; }

/* Địa chỉ hiện tại ↔ địa chỉ cũ là nội dung trọng tâm riêng của MapsViet. */
.mv-section-kicker{ color:#0b66c3; font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.mv-address-timeline{ position:relative; display:grid; gap:10px; margin-top:15px; }
.mv-address-entry{ display:grid; grid-template-columns:42px 1fr; gap:13px; padding:15px; border:1px solid var(--mv-border); border-radius:14px; background:#fff; }
.mv-address-icon{ width:42px; height:42px; display:flex; align-items:center; justify-content:center; border-radius:12px; }
.mv-address-entry.is-current .mv-address-icon{ color:#0b66c3; background:#e8f3ff; }
.mv-address-entry.is-legacy .mv-address-icon{ color:#687684; background:#f0f3f6; }
.mv-address-entry > div{ display:flex; flex-direction:column; min-width:0; }
.mv-address-label{ color:var(--mv-text-muted); font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.mv-address-entry strong{ margin-top:2px; font-size:13.5px; line-height:1.5; }
.mv-address-entry p{ margin:5px 0 0; color:var(--mv-text-secondary); font-size:12px; line-height:1.55; }
.mv-address-links{ display:flex; flex-wrap:wrap; gap:7px; margin-top:8px; }
.mv-address-links a{ padding:4px 9px; color:#0b66c3; background:#edf6ff; border-radius:999px; font-size:11px; font-weight:700; }

.mv-contact-card h3{ font-size:15px; margin:0 0 6px; }
.mv-contact-row{ display:flex; align-items:flex-start; gap:10px; padding:11px 0; color:inherit; border-bottom:1px solid var(--mv-border); }
.mv-contact-row:last-child{ border-bottom:0; }
.mv-contact-row > i{ width:28px; height:28px; display:flex; align-items:center; justify-content:center; flex:0 0 auto; color:#0b66c3; background:#eaf4ff; border-radius:9px; }
.mv-contact-row.is-old > i{ color:#687684; background:#f0f3f6; }
.mv-contact-row div{ display:flex; flex-direction:column; min-width:0; }
.mv-contact-row span{ color:var(--mv-text-muted); font-size:10.5px; font-weight:700; text-transform:uppercase; }
.mv-contact-row strong{ color:var(--mv-text-primary); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
@media (max-width:820px){
	.mv-place-heading-row{ display:block; }
	.mv-verified-badge{ margin-top:12px; }
	.mv-place-map-shell{ grid-template-columns:1fr; }
	.mv-place-map-hero,.mv-place-map-hero iframe{ min-height:260px; }
}
@media (max-width:520px){
	.mv-place-header{ padding:18px 16px; }
	.mv-place-header h1{ font-size:24px; }
	.mv-place-actions{ gap:7px !important; }
	.mv-place-actions .mv-btn-outline,.mv-place-actions .mv-btn-primary{ padding:9px 13px; }
	.mv-place-map-hero,.mv-place-map-hero iframe{ min-height:220px; }
}

/* Hàng chip "Chuyên mục" trên trang chủ */
.mv-catchip-head{ margin-bottom:12px; }
.mv-catchip-head h2{ font-size:18px; font-weight:700; margin:0; }
.mv-catchip-row{ display:flex; gap:10px; overflow-x:auto; padding-bottom:6px; margin-bottom:28px; width:100%; min-width:0; }
.mv-catchip{ flex-shrink:0; display:flex; align-items:center; gap:9px; padding:9px 16px 9px 9px; background:var(--mv-surface); border:1px solid var(--mv-border); border-radius:999px; text-decoration:none; color:inherit; transition:border-color .15s ease, transform .15s ease; }
.mv-catchip:hover{ border-color:var(--mv-accent); transform:translateY(-2px); }
.mv-catchip.mv-active{ border-color:var(--mv-accent); background:var(--mv-accent-light); }
.mv-catchip.mv-active .mv-catchip-ic{ background:var(--mv-accent); color:#fff; }
.mv-catchip-ic{ width:32px; height:32px; border-radius:9px; background:var(--mv-accent-light); color:var(--mv-accent-dark); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:14px; }
.mv-catchip span:last-child{ font-size:13.5px; font-weight:600; white-space:nowrap; }

/* Thẻ địa điểm — trạng thái mở/đóng cửa + nút gọi/Zalo */
.mv-grid-2col{ grid-template-columns:repeat(2,1fr); }
.mv-place-card .mv-card-top{ align-items:flex-start; }
.mv-status-row{ display:flex; align-items:center; gap:6px; font-size:11.5px; margin:2px 0 4px; }
.mv-status-dot{ width:6px; height:6px; border-radius:50%; flex-shrink:0; }
.mv-dot-open{ background:var(--mv-success); }
.mv-dot-closed{ background:var(--mv-danger); }
.mv-status-open{ color:var(--mv-success); font-weight:600; }
.mv-status-closed{ color:var(--mv-danger); font-weight:600; }
.mv-card-actions{ display:flex; align-items:center; gap:6px; margin-left:auto; }
.mv-pill-action{ display:flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:9px; background:var(--mv-surface-alt); color:var(--mv-text-secondary); border:1px solid var(--mv-border); text-decoration:none; font-size:11px; font-weight:800; flex-shrink:0; }
.mv-pill-call{ color:var(--mv-success); border-color:#bfe5c8; }
.mv-pill-call:hover{ background:var(--mv-success); color:#fff; }
.mv-pill-zalo{ color:var(--mv-accent); border-color:#bfd8fb; }
.mv-pill-zalo:hover{ background:var(--mv-accent); color:#fff; }

/* Đánh giá mới nhất (trang chủ) */
.mv-review-scroll{ display:flex; gap:14px; overflow-x:auto; padding-bottom:8px; width:100%; min-width:0; }
.mv-review-card{ flex:0 0 260px; background:var(--mv-surface); border:1px solid var(--mv-border); border-radius:var(--mv-radius); padding:16px; }
.mv-review-card:hover{ box-shadow:var(--mv-shadow-md); }
.mv-review-head{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.mv-review-avatar{ width:36px; height:36px; border-radius:50%; background:var(--mv-accent-light); color:var(--mv-accent-dark); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:13px; flex-shrink:0; }
.mv-review-head div{ display:flex; flex-direction:column; }
.mv-review-name{ font-size:13px; font-weight:600; }
.mv-review-time{ font-size:11px; color:var(--mv-text-muted); }
.mv-review-stars{ color:var(--mv-warning); font-size:12px; margin-bottom:8px; }
.mv-review-text{ font-size:12.5px; color:var(--mv-text-secondary); line-height:1.55; margin:0 0 12px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.mv-review-place{ display:flex; align-items:center; gap:6px; font-size:12px; font-weight:600; color:var(--mv-accent-dark); text-decoration:none; }
.mv-review-place:hover{ text-decoration:underline; }

@media (max-width:820px){ .mv-grid-2col{ grid-template-columns:1fr; } }

/* Thẻ 1 đánh giá trong trang chi tiết (khác .mv-review-card carousel trang chủ) */
.mv-review-item{ background:var(--mv-surface); border:1px solid var(--mv-border); border-radius:var(--mv-radius); padding:14px 16px; margin-bottom:10px; }
.mv-review-item-head{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.mv-review-item-head > div{ display:flex; flex-direction:column; flex:1; min-width:0; }
.mv-review-item-head b{ font-size:13.5px; font-weight:700; }
.mv-review-item-stars{ color:var(--mv-warning); font-size:13px; flex-shrink:0; }
.mv-review-item-title{ font-size:14px; font-weight:700; margin:0 0 6px; }
.mv-review-item-body{ font-size:13px; color:var(--mv-text-secondary); line-height:1.6; margin:0; }
.mv-review-item-foot{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; padding-top:12px; border-top:1px solid var(--mv-border); flex-wrap:wrap; }
.mv-review-helpful-btn{ display:flex; align-items:center; gap:6px; font-size:12px; font-weight:600; color:var(--mv-text-secondary); background:none; border:1px solid var(--mv-border); border-radius:999px; padding:6px 12px; cursor:pointer; font-family:inherit; }
.mv-review-helpful-btn:hover{ border-color:var(--mv-accent); color:var(--mv-accent-dark); }
.mv-review-helpful-btn.mv-voted{ background:var(--mv-accent-light); border-color:var(--mv-accent); color:var(--mv-accent-dark); }
.mv-review-helpful-btn:disabled{ cursor:default; opacity:.85; }

/* Hộp URL có thể copy — dùng ở header trang địa điểm/doanh nghiệp */
.mv-copy-url-box{ display:flex; align-items:center; gap:8px; background:var(--mv-surface-alt); border:1px solid var(--mv-border); border-radius:999px; padding:8px 8px 8px 16px; font-size:12px; color:var(--mv-text-muted); max-width:100%; }
.mv-copy-url-box[hidden]{ display:none; } /* Lỗi đã sửa: cùng pattern lỗi [hidden] bị display:flex ghi đè — khung copy URL trước đây LUÔN HIỆN thay vì ẩn cho tới khi bấm nút chia sẻ. */
.mv-copy-url-box[hidden]{ display:none !important; }
.mv-copy-url-box span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; }
.mv-copy-url-btn{ flex-shrink:0; width:30px; height:30px; border-radius:50%; border:1px solid var(--mv-border); background:var(--mv-surface); color:var(--mv-text-secondary); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.mv-copy-url-btn:hover{ border-color:var(--mv-accent); color:var(--mv-accent-dark); }
.mv-copy-url-btn.mv-copied{ background:var(--mv-success); border-color:var(--mv-success); color:#fff; }

/* Khung "chưa có ảnh đại diện" — thay cho ảnh stock ngẫu nhiên không liên quan trước đây. */
.mv-place-hero-placeholder{
	width:100%; aspect-ratio:900/400; border-radius:16px; background:linear-gradient(135deg, var(--mv-accent-light) 0%, var(--mv-surface-alt) 100%);
	display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; color:var(--mv-text-muted);
}
.mv-place-hero-placeholder i{ font-size:34px; color:var(--mv-accent); opacity:.5; }
.mv-place-hero-placeholder span{ font-size:13px; font-weight:600; }

/* Trạng thái rỗng dạng khung nhẹ — dùng khi 1 mục chưa có dữ liệu (thuộc tính, giờ mở cửa...). */
.mv-empty-inline{ background:var(--mv-surface-alt); border:1px dashed var(--mv-border); border-radius:var(--mv-radius); padding:18px 20px; text-align:center; }
.mv-empty-inline i{ font-size:20px; color:var(--mv-text-muted); margin-bottom:8px; display:block; }
.mv-empty-inline p{ font-size:12.5px; color:var(--mv-text-secondary); margin:0 0 8px; }
.mv-empty-inline a{ font-size:12.5px; font-weight:700; color:var(--mv-accent-dark); text-decoration:none; }
.mv-empty-inline a:hover{ text-decoration:underline; }

/* ============ Style form đánh giá (comment_form() tuỳ biến, xem class-mv-directory-reviews.php) ============ */
#respond.comment-respond{ background:var(--mv-surface); border:1px solid var(--mv-border); border-radius:var(--mv-radius); padding:18px 20px; margin-top:14px; }
#respond .comment-reply-title{ font-size:14.5px; font-weight:800; margin:0 0 12px; font-family:var(--mv-font-display); }
#respond .comment-reply-title small{ font-size:12px; font-weight:500; margin-left:8px; }
#respond .comment-notes, #respond .logged-in-as{ font-size:11.5px; color:var(--mv-text-muted); margin:0 0 12px; }
#respond .logged-in-as a{ color:var(--mv-accent-dark); }
.comment-form p{ margin:0 0 12px; }
.comment-form label{ display:block; font-size:12px; font-weight:700; color:var(--mv-text-primary); margin-bottom:5px; }
.comment-form label .mv-req{ color:var(--mv-danger); }
.comment-form input[type=text], .comment-form input[type=email], .comment-form input[type=url], .comment-form input[type=date], .comment-form textarea{
	width:100%; border:1px solid var(--mv-border); border-radius:9px; padding:9px 12px; font-family:inherit; font-size:13px; color:var(--mv-text-primary); background:var(--mv-surface-alt); box-sizing:border-box;
}
.comment-form textarea{ resize:vertical; min-height:76px; }
.comment-form input:focus, .comment-form textarea:focus{ outline:none; border-color:var(--mv-accent); background:var(--mv-surface); }
.comment-form .form-submit{ margin-bottom:0; margin-top:2px; }
.comment-form #submit{
	background:var(--mv-accent); color:#fff; border:none; border-radius:999px; padding:10px 24px; font-family:inherit; font-size:13px; font-weight:700; cursor:pointer;
}
.comment-form #submit:hover{ background:var(--mv-accent-dark); }

/* Chọn sao bằng icon bấm được — thay dropdown cũ, đúng chuẩn mọi form đánh giá thật */
.mv-star-rating{ display:inline-flex; gap:4px; }
.mv-star-btn{ background:none; border:none; padding:2px; cursor:pointer; font-size:22px; color:var(--mv-border-strong); line-height:1; }
.mv-star-btn:hover, .mv-star-btn.mv-hover{ color:var(--mv-warning); transform:scale(1.08); }
.mv-star-btn.mv-selected{ color:var(--mv-warning); }

/* Tiêu đề + ngày trải nghiệm nằm cùng 1 hàng cho gọn */
.mv-review-row2{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:12px; }
.mv-review-row2 p{ margin-bottom:0; }
@media (max-width:480px){ .mv-review-row2{ grid-template-columns:1fr; } }

/* ============================================================
   Thiết kế mới trang chi tiết địa điểm
   ============================================================ */

.mv-cat-tag{ font-size:14px; color:var(--mv-text-secondary); margin:8px 0 0; font-weight:500; }
.mv-cat-tag i{ margin-right:5px; color:var(--mv-text-muted); }

/* Gallery 3 ảnh */
.mv-gallery-hero{ display:grid; grid-template-columns:2fr 1fr; gap:8px; border-radius:16px; overflow:hidden; }
.mv-gallery-main{ position:relative; aspect-ratio:4/3; overflow:hidden; }
.mv-gallery-main img{ width:100%; height:100%; object-fit:cover; }
.mv-gallery-side{ display:grid; grid-template-rows:1fr 1fr; gap:8px; }
.mv-gallery-side > div{ position:relative; overflow:hidden; }
.mv-gallery-side img{ width:100%; height:100%; object-fit:cover; }
.mv-gallery-more-btn{ position:absolute; bottom:10px; right:10px; background:rgba(0,0,0,.6); color:#fff; padding:6px 12px; border-radius:999px; font-size:11.5px; font-weight:600; display:flex; align-items:center; gap:6px; }
@media (max-width:820px){ .mv-gallery-hero{ grid-template-columns:1fr; } .mv-gallery-side{ grid-template-columns:1fr 1fr; grid-template-rows:auto; } .mv-gallery-side > div{ aspect-ratio:4/3; } }

/* Lightbox xem đủ ảnh (gallery + thư viện ảnh) */
.mv-lightbox{ position:fixed; inset:0; background:rgba(0,0,0,.92); z-index:9999; display:flex; align-items:center; justify-content:center; }
.mv-lightbox[hidden]{ display:none; } /* Lỗi đã sửa: cùng pattern lỗi [hidden] bị display:flex ghi đè — lightbox trước đây LUÔN HIỆN che kín màn hình thay vì ẩn cho tới khi bấm mở ảnh. */
.mv-lightbox[hidden]{ display:none !important; }
.mv-lightbox img{ max-width:88vw; max-height:86vh; object-fit:contain; border-radius:6px; }
.mv-lightbox-close{ position:absolute; top:18px; right:22px; width:40px; height:40px; border-radius:50%; background:rgba(255,255,255,.12); color:#fff; border:none; font-size:18px; cursor:pointer; }
.mv-lightbox-close:hover{ background:rgba(255,255,255,.22); }
.mv-lightbox-nav{ position:absolute; top:50%; transform:translateY(-50%); width:46px; height:46px; border-radius:50%; background:rgba(255,255,255,.12); color:#fff; border:none; font-size:18px; cursor:pointer; }
.mv-lightbox-nav:hover{ background:rgba(255,255,255,.22); }
.mv-lightbox-nav.mv-prev{ left:18px; }
.mv-lightbox-nav.mv-next{ right:18px; }
.mv-lightbox-count{ position:absolute; bottom:20px; left:50%; transform:translateX(-50%); color:rgba(255,255,255,.8); font-size:13px; font-weight:600; }

/* Dropdown "Chỉ đường" chọn phương tiện — chỉ liên kết Google Maps thật, KHÔNG hiện ETA giả */
.mv-action-wrap{ position:relative; }
.mv-directions-menu{
	display:none; position:absolute; top:calc(100% + 8px); left:0; background:var(--mv-surface);
	border:1px solid var(--mv-border); border-radius:14px; box-shadow:var(--mv-shadow-md); padding:8px; min-width:220px; z-index:10;
}
.mv-directions-menu.mv-open{ display:block; }
.mv-directions-menu a{ display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:9px; font-size:13.5px; font-weight:600; color:var(--mv-text-primary); text-decoration:none; }
.mv-directions-menu a:hover{ background:var(--mv-surface-alt); }
.mv-directions-menu hr{ border:none; border-top:1px solid var(--mv-border); margin:6px 0; }

/* Bảng giá tham khảo */
.mv-menu-list{ display:flex; flex-direction:column; gap:2px; }
.mv-menu-item{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--mv-border); }
.mv-menu-item:last-child{ border-bottom:none; }
.mv-mname{ font-size:14.5px; font-weight:600; color:var(--mv-text-primary); }
.mv-mdesc{ font-size:12.5px; color:var(--mv-text-muted); margin-top:2px; }
.mv-mprice{ font-size:14.5px; font-weight:700; color:var(--mv-accent-dark); white-space:nowrap; flex-shrink:0; }

/* Thư viện ảnh dạng masonry */
.mv-masonry{ column-count:3; column-gap:10px; }
@media (max-width:820px){ .mv-masonry{ column-count:2; } }
.mv-masonry-item{ break-inside:avoid; margin-bottom:10px; border-radius:12px; overflow:hidden; }
.mv-masonry-item img{ width:100%; display:block; }

/* Thanh phân bổ sao đánh giá */
.mv-rating-breakdown{ display:flex; gap:24px; align-items:center; margin-bottom:18px; flex-wrap:wrap; }
.mv-rating-breakdown-score{ display:flex; flex-direction:column; align-items:center; gap:4px; flex-shrink:0; min-width:90px; }
.mv-rating-breakdown-score b{ font-size:32px; font-weight:800; line-height:1; font-family:var(--mv-font-display); }
.mv-rating-breakdown-stars{ font-size:13px; }
.mv-rating-breakdown-bars{ flex:1; min-width:220px; display:flex; flex-direction:column; gap:6px; }
.mv-rating-bar-row{ display:flex; align-items:center; gap:10px; font-size:12px; color:var(--mv-text-secondary); }
.mv-rating-bar-row > span:first-child{ width:42px; flex-shrink:0; }
.mv-rating-bar-row > span:last-child{ width:36px; flex-shrink:0; text-align:right; }
.mv-rating-bar-track{ flex:1; height:7px; border-radius:999px; background:var(--mv-surface-alt); overflow:hidden; }
.mv-rating-bar-fill{ height:100%; background:var(--mv-warning); border-radius:999px; }

/* Chip thuộc tính "Về địa điểm này" */
.mv-attr-chip-group{ margin-bottom:18px; }
.mv-attr-chip-group h4{ font-size:13px; font-weight:700; color:var(--mv-text-secondary); margin-bottom:8px; }
.mv-attr-chips{ display:flex; gap:8px; flex-wrap:wrap; }
.mv-attr-chip{ display:flex; align-items:center; gap:6px; font-size:12.5px; font-weight:600; color:var(--mv-accent-dark); background:var(--mv-accent-light); padding:6px 12px; border-radius:999px; }
.mv-attr-chip i{ font-size:10px; }

/* Câu hỏi thường gặp (FAQ do chủ tự soạn) */
.mv-faq-item{ margin-bottom:14px; }
.mv-faq-q{ font-size:14.5px; font-weight:700; display:flex; align-items:center; gap:8px; margin-bottom:6px; color:var(--mv-text-primary); }
.mv-faq-q i{ color:var(--mv-accent); }
.mv-faq-a{ font-size:13.5px; color:var(--mv-text-secondary); margin:0 0 0 24px; line-height:1.65; }

/* Khung "Bạn là chủ địa điểm này?" */
.mv-claim-box{ background:var(--mv-accent-light); border-radius:var(--mv-radius); padding:16px; font-size:13px; color:var(--mv-text-secondary); line-height:1.6; margin-top:14px; }
.mv-claim-box i{ color:var(--mv-accent-dark); margin-right:6px; }
.mv-claim-box a{ color:var(--mv-accent-dark); font-weight:700; }

/* Carousel "Điểm tham quan" — cuộn ngang, card dọc ảnh lớn phía trên */
.mv-carousel-nav{ display:flex; gap:8px; }
.mv-carousel-arrow{ width:34px; height:34px; border-radius:50%; border:1px solid var(--mv-border); background:var(--mv-surface); color:var(--mv-text-secondary); cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:13px; }
.mv-carousel-arrow:hover{ background:var(--mv-surface-alt); color:var(--mv-text-primary); }
.mv-attraction-carousel{ display:flex; gap:14px; overflow-x:auto; scroll-behavior:smooth; padding-bottom:6px; scrollbar-width:none; width:100%; min-width:0; }
.mv-attraction-carousel::-webkit-scrollbar{ display:none; }
.mv-attraction-card{ flex:0 0 220px; text-decoration:none; color:inherit; border-radius:var(--mv-radius); overflow:hidden; border:1px solid var(--mv-border); background:var(--mv-surface); transition:box-shadow .15s; }
.mv-attraction-card:hover{ box-shadow:var(--mv-shadow-sm); }
.mv-attraction-card-img{ width:100%; height:140px; background:var(--mv-surface-alt); overflow:hidden; }
.mv-attraction-card-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.mv-attraction-card-body{ padding:12px 14px; }
.mv-attraction-card-name{ font-size:13.5px; font-weight:700; color:var(--mv-text-primary); margin:0 0 5px; line-height:1.35; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.mv-attraction-card-rating{ font-size:12.5px; margin:0 0 3px; color:var(--mv-text-primary); }
.mv-attraction-card-rating i{ color:#f5a623; font-size:11px; }
.mv-attraction-card-cat{ font-size:11.5px; margin:0 0 4px; }
.mv-attraction-card-price{ font-size:12.5px; font-weight:600; color:var(--mv-text-primary); margin:0; }
@media (max-width:640px){ .mv-attraction-card{ flex-basis:170px; } .mv-attraction-card-img{ height:110px; } }
