/* =========================================================
   SportifyVN — sportify-v13.css (Trang chi tiết sân/địa điểm)
   Chỉ thêm mới — KHÔNG sửa file CSS cũ. Dùng biến :root có sẵn.
   Responsive: 1200 / 900 / 768 / 480.
   ========================================================= */

/* ---------- PHẦN 1: HERO ---------- */
.sfv13-hero{position:relative;min-height:320px;display:flex;align-items:flex-end;background-size:cover;background-position:center;color:#fff}
.sfv13-hero-ov{position:absolute;inset:0;background:rgba(10,20,40,.5)}
.sfv13-hero-bottom{position:relative;z-index:2;width:100%;padding:24px 0}
.sfv13-hero-grid{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.sfv13-hero-left{max-width:720px;position:relative}
.sfv13-hero-left .sf-crumbrow{color:rgba(255,255,255,.8);font-size:13px;margin-bottom:10px}
.sfv13-hero-left .sf-crumbrow a{color:rgba(255,255,255,.8)}
.sfv13-pill{display:inline-flex;align-items:center;gap:7px;background:#fff;color:var(--sf-navy);font-family:var(--sf-head);font-weight:700;font-size:12.5px;padding:6px 13px;border-radius:999px;margin-bottom:12px}
.sfv13-pill .sf-ic{color:var(--sf-coral)}
.sfv13-h1{font-family:var(--sf-head);font-size:clamp(24px,3.4vw,32px);line-height:1.12;margin:0 0 10px;font-weight:700;letter-spacing:-.3px}
.sfv13-hero-meta{display:flex;flex-wrap:wrap;gap:16px 22px;margin-bottom:12px}
.sfv13-hm{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:rgba(255,255,255,.92)}
.sfv13-hm .sf-ic{color:rgba(255,255,255,.85)}
.sfv13-star{color:#FFC53D}
.sfv13-hero-tags{display:flex;flex-wrap:wrap;gap:8px}
.sfv13-htag{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:12px;padding:4px 11px;border-radius:999px;backdrop-filter:blur(2px)}
.sfv13-hero-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.sfv13-hours-pill{display:inline-flex;align-items:center;gap:7px;background:rgba(10,20,40,.55);border:1px solid rgba(255,255,255,.25);color:#fff;font-family:var(--sf-mono);font-size:13px;padding:7px 14px;border-radius:999px}
.sfv13-status-pill{font-family:var(--sf-head);font-weight:700;font-size:12px;padding:6px 13px;border-radius:999px;color:#fff}
.sfv13-status-pill.is-open{background:#2DB557}
.sfv13-status-pill.is-free{background:#2B7FE8}
.sfv13-status-pill.is-closed{background:#D4655A}

/* ---------- PHẦN 2: WRAP 2 CỘT ---------- */
.sfv13-wrap{display:grid;grid-template-columns:65% 35%;gap:32px;padding-top:36px;padding-bottom:48px;align-items:start}
.sfv13-main{min-width:0}
.sfv13-aside{position:sticky;top:80px;display:flex;flex-direction:column;gap:20px}

.sfv13-block{margin-bottom:34px}
.sfv13-block-title{display:flex;align-items:center;gap:9px;font-family:var(--sf-head);font-size:19px;color:var(--sf-navy);margin:0 0 14px;font-weight:700}
.sfv13-block-title .sf-ic{color:var(--sf-coral)}
.sfv13-placeholder{color:#9aa7b4;font-style:italic;margin:0}
.sfv13-content{font-size:16px;line-height:1.8;color:#33445a}
.sfv13-content img{max-width:100%;height:auto;border-radius:12px}

/* Gallery */
.sfv13-gallery{display:grid;grid-template-columns:60% 40%;gap:10px}
.sfv13-gal-main{border-radius:14px;overflow:hidden;background:#eef2f6}
.sfv13-gal-main img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.sfv13-gal-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative}
.sfv13-gal-thumb{border:0;padding:0;cursor:pointer;border-radius:12px;overflow:hidden;background:#eef2f6;aspect-ratio:4/3}
.sfv13-gal-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 200ms ease}
.sfv13-gal-thumb:hover img{transform:scale(1.06)}
.sfv13-gal-more{position:absolute;right:10px;bottom:10px;background:rgba(10,20,40,.72);color:#fff;font-size:13px;padding:5px 11px;border-radius:999px}

/* Tiện ích */
.sfv13-amen{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sfv13-amen-item{display:flex;align-items:flex-start;gap:11px;background:#fff;border:1px solid rgba(11,28,44,.08);border-radius:12px;padding:14px}
.sfv13-amen-ic{flex:none;width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(200,240,0,.2);color:var(--sf-navy)}
.sfv13-amen-tx{display:flex;flex-direction:column;gap:2px}
.sfv13-amen-tx b{font-family:var(--sf-head);font-size:14px;color:var(--sf-navy)}
.sfv13-amen-tx small{font-size:12px;color:#7b8a99}

/* Điểm nổi bật */
.sfv13-hl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.sfv13-hl li{display:flex;align-items:flex-start;gap:9px;font-size:15px;color:#33445a}
.sfv13-hl li .sf-ic{color:#1c8a4e;flex:none;margin-top:2px}

/* Lịch & giá */
.sfv13-sched{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sfv13-sched-col{background:#f8f9fb;border-radius:12px;padding:18px}
.sfv13-sched-col h3{font-family:var(--sf-head);font-size:15px;color:var(--sf-navy);margin:0 0 10px}
.sfv13-sched-col p{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:14.5px;color:#42536a}
.sfv13-sched-col p .sf-ic{color:var(--sf-coral)}
.sfv13-pricing{font-size:14.5px;color:#42536a}
.sfv13-pricing p{margin:0 0 6px}
.sfv13-price{font-family:var(--sf-mono);color:#1c8a4e;font-weight:600}

/* Đánh giá */
.sfv13-review-total{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}
.sfv13-review-num{font-family:var(--sf-mono);font-size:38px;color:var(--sf-navy);line-height:1}
.sfv13-review-stars{color:#FFC53D;font-size:18px;letter-spacing:2px}
.sfv13-review-count{color:#7b8a99;font-size:13px}
.sfv13-reviews{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sfv13-review{display:flex;gap:12px}
.sfv13-avatar{flex:none;width:44px;height:44px;border-radius:50%;background:var(--sf-navy);color:var(--sf-lime);display:flex;align-items:center;justify-content:center;font-family:var(--sf-head);font-weight:700}
.sfv13-review-body{flex:1;background:#f8f9fb;border-radius:12px;padding:12px 14px}
.sfv13-review-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:4px}
.sfv13-review-head b{font-family:var(--sf-head);color:var(--sf-navy);font-size:14px}
.sfv13-review-date{font-family:var(--sf-mono);font-size:12px;color:#98a7b8}
.sfv13-review-body p{margin:0;font-size:14px;color:#42536a;line-height:1.6}

/* ---------- CARD SIDEBAR ---------- */
.sfv13-card{background:#fff;border:1px solid rgba(11,28,44,.1);border-radius:16px;padding:20px;box-shadow:0 8px 26px rgba(11,28,44,.05)}
.sfv13-card-title{font-family:var(--sf-head);font-size:17px;color:var(--sf-navy);margin:0 0 4px}
.sfv13-card-sub{font-size:13px;color:#7b8a99;margin:0 0 16px;line-height:1.5}
.sfv13-field{display:block;margin-bottom:12px}
.sfv13-field span{display:block;font-size:12.5px;font-weight:600;color:#51627a;margin-bottom:5px}
.sfv13-field select{width:100%;appearance:none;-webkit-appearance:none;border:1px solid #e2e6ea;background:#fafbfc;border-radius:10px;padding:11px 34px 11px 13px;font-family:var(--sf-body);font-size:14px;color:var(--sf-navy);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230B1C2C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color 160ms ease}
.sfv13-field select:hover{border-color:var(--sf-navy)}
.sfv13-btn-book{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:#1c8a4e;color:#fff;font-family:var(--sf-head);font-weight:700;font-size:15px;border-radius:11px;padding:14px;text-decoration:none;margin-top:6px;transition:background-color 160ms ease,transform 160ms ease}
.sfv13-btn-book:hover{background:#15703e;transform:translateY(-1px)}
.sfv13-btn-book.is-disabled{background:#c8d0d8;cursor:not-allowed}
.sfv13-secure{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:#7b8a99;margin-top:10px}
.sfv13-secure .sf-ic{color:#1c8a4e}
.sfv13-contact{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:11px}
.sfv13-contact li{display:flex;align-items:center;gap:10px;font-size:14px;color:#42536a}
.sfv13-contact a{color:var(--sf-navy);text-decoration:none}
.sfv13-contact a:hover{color:var(--sf-coral)}
.sfv13-cc-ic{flex:none;width:32px;height:32px;border-radius:9px;background:#f2f5f8;color:var(--sf-navy);display:flex;align-items:center;justify-content:center}
.sfv13-map{border-radius:12px;overflow:hidden;margin-top:10px}
.sfv13-map iframe{width:100%;height:200px;border:0;display:block}
.sfv13-btn-map{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:12px;border:1.5px solid var(--sf-navy);color:var(--sf-navy);border-radius:10px;padding:10px;font-family:var(--sf-head);font-weight:600;font-size:13.5px;text-decoration:none;transition:background-color 160ms ease,color 160ms ease}
.sfv13-btn-map:hover{background:var(--sf-navy);color:#fff}

/* ---------- PHẦN 3: TƯƠNG TỰ ---------- */
.sfv13-related{background:#f8f8f8;padding:44px 0}
.sfv13-related-title{font-family:var(--sf-head);font-size:22px;color:var(--sf-navy);margin:0 0 22px}
.sfv13-rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sfv13-rel-card{background:#fff;border-radius:14px;overflow:hidden;border:1px solid rgba(11,28,44,.08);display:flex;flex-direction:column;transition:transform 180ms ease,box-shadow 180ms ease}
.sfv13-rel-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(11,28,44,.1)}
.sfv13-rel-media{display:block;aspect-ratio:16/10;overflow:hidden;background:#eef2f6}
.sfv13-rel-media img,.sfv13-rel-media .sf-thumb-fallback,.sfv13-rel-media .sf-noimg{width:100%;height:100%;object-fit:cover;display:block}
.sfv13-rel-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.sfv13-rel-body h3{font-family:var(--sf-head);font-size:15.5px;margin:0;color:var(--sf-navy);line-height:1.35}
.sfv13-rel-body h3 a{color:inherit;text-decoration:none}
.sfv13-rel-body h3 a:hover{color:var(--sf-coral)}
.sfv13-rel-addr{font-size:13px;color:#7b8a99;margin:0}
.sfv13-rel-price{font-family:var(--sf-mono);color:#1c8a4e;font-size:13.5px;margin:0}
.sfv13-rel-btn{align-self:flex-start;margin-top:6px;background:var(--sf-navy);color:#fff;font-family:var(--sf-head);font-weight:600;font-size:13px;padding:8px 18px;border-radius:9px;text-decoration:none;transition:background-color 160ms ease}
.sfv13-rel-btn:hover{background:var(--sf-coral)}

/* ---------- Geo block kế thừa (đảm bảo spacing) ---------- */
.sfv13-main .sf-geo-card{margin-bottom:34px}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1200px){
	.sfv13-amen{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:900px){
	.sfv13-wrap{grid-template-columns:1fr;gap:26px}
	.sfv13-aside{position:static;top:auto;order:2}
	.sfv13-amen{grid-template-columns:repeat(2,1fr)}
	.sfv13-sched{grid-template-columns:1fr}
	.sfv13-hl{grid-template-columns:1fr}
	.sfv13-rel-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
	.sfv13-hero{min-height:260px}
	.sfv13-hero-grid{flex-direction:column;align-items:flex-start}
	.sfv13-hero-right{align-items:flex-start;flex-direction:row;flex-wrap:wrap}
	.sfv13-gallery{grid-template-columns:1fr}
	.sfv13-gal-main img{min-height:220px}
}
@media (max-width:480px){
	.sfv13-hero{min-height:220px}
	.sfv13-amen{grid-template-columns:1fr}
	.sfv13-rel-grid{grid-template-columns:1fr}
	.sfv13-review-num{font-size:30px}
}
/* Sao đánh giá bằng SVG: đổ đầy vàng (stroke theme mặc định là none) */
.sfv13-review-stars .sf-ic,.sfv13-star .sf-ic{fill:#FFC53D;stroke:#FFC53D}
.sfv13-review-stars{display:inline-flex;gap:2px;color:#FFC53D}
.sfv13-star{display:inline-flex;vertical-align:-2px}

/* =========================================================
   V14b — Bổ sung: fix dropdown, viewing counter, modal reviews,
   nút tài khoản, nút xem thêm đánh giá.
   ========================================================= */

/* Fix chữ trong dropdown "Đặt lịch ngay" bị cắt */
.sfv13-field select {
	height: auto;
	min-height: 44px;
	line-height: 1.4;
	padding-top: 12px;
	padding-bottom: 12px;
	text-overflow: ellipsis;
}

/* Dòng "X người đang xem" dưới Thanh toán an toàn */
.sfv13-viewing {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	font-size: 12.5px;
	color: #51627a;
	margin-top: 8px;
}
.sfv13-viewing .sf-ic { color: var(--sf-coral, #E8724A); }
.sfv13-viewing b { color: var(--sf-navy, #0B1C2C); font-family: var(--sf-mono, monospace); }
.sfv13-viewing b.tick { animation: sfv13Tick .3s ease; }
@keyframes sfv13Tick { from { opacity:.4; transform: translateY(-3px); } to { opacity:1; transform: translateY(0); } }

/* Sao nhỏ trong mỗi review */
.sfv13-review-mini { display: inline-flex; gap: 1px; color: #FFC53D; margin-bottom: 4px; }
.sfv13-review-mini .sf-ic { fill: #FFC53D; stroke: #FFC53D; }

/* Nút xem thêm đánh giá */
.sfv13-reviews-more {
	display: block;
	width: 100%;
	margin-top: 16px;
	padding: 12px;
	border: 1px solid #dde3ec;
	background: #fff;
	border-radius: 11px;
	font-family: var(--sf-head, inherit);
	font-weight: 600;
	font-size: 14px;
	color: var(--sf-navy, #0B1C2C);
	cursor: pointer;
	transition: background-color .16s ease, border-color .16s ease;
}
.sfv13-reviews-more:hover { background: #f4f6f9; border-color: #c4cdd9; }

/* CTA đăng nhập để đánh giá */
.sfv13-review-cta { margin: 14px 0 0; font-size: 13.5px; }
.sfv13-review-cta a { color: var(--sf-coral, #E8724A); font-weight: 600; text-decoration: none; }
.sfv13-review-cta a:hover { text-decoration: underline; }

/* Modal tất cả đánh giá */
.sfv13-modal {
	position: fixed;
	inset: 0;
	z-index: 2000;
	background: rgba(10,20,40,.5);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	animation: sfv13Fade .18s ease-out;
}
.sfv13-modal[hidden] { display: none; }
@keyframes sfv13Fade { from { opacity: 0; } to { opacity: 1; } }
.sfv13-modal-card {
	background: #fff;
	border-radius: 16px;
	width: 100%;
	max-width: 640px;
	max-height: 86vh;
	display: flex;
	flex-direction: column;
	box-shadow: 0 24px 60px rgba(11,28,44,.28);
	animation: sfv13Pop .18s ease-out;
}
@keyframes sfv13Pop { from { opacity:0; transform: translateY(10px) scale(.98); } to { opacity:1; transform:none; } }
.sfv13-modal-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px;
	border-bottom: 1px solid #eef1f6;
}
.sfv13-modal-head h3 { margin: 0; font-family: var(--sf-head, inherit); font-size: 18px; color: var(--sf-navy, #0B1C2C); }
.sfv13-modal-close {
	border: 0; background: transparent; cursor: pointer; color: #6b7686;
	padding: 6px; border-radius: 8px; transition: background-color .15s ease;
}
.sfv13-modal-close:hover { background: #f4f6f9; }
.sfv13-modal-body { padding: 18px 20px; overflow-y: auto; }
.sfv13-reviews--modal { gap: 14px; }

/* Nút Tài khoản trên header */
.sf-account-btn {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	height: 40px;
	padding: 0 16px;
	border-radius: 999px;
	border: 1px solid #dde3ec;
	background: #fff;
	color: var(--sf-navy, #0B1C2C);
	font-family: var(--sf-head, inherit);
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .02em;
	text-decoration: none;
	transition: background-color .16s ease, border-color .16s ease;
}
.sf-account-btn:hover { background: #f4f6f9; border-color: #c4cdd9; }
.sf-account-btn svg { color: #4a5568; }

@media (max-width: 900px) {
	.sf-account-btn span:last-child { display: none; }
	.sf-account-btn { padding: 0 12px; }
}
