/* Public profile of a Visitor or Driver (profile_view.php + profile-public-view.php): builds on css/account.css */
.pv-public .ac-wrap.pv-one { grid-template-columns: minmax(0, 1fr); max-width: 1000px; }
.pv-public .pv-back { min-height: 38px; padding: 0 14px; }
.pv-public .ac-hero { align-items: center; }
.pv-public .ac-av { flex: none; }
.pv-public .pv-h1 { font-size: 26px; font-weight: 800; line-height: 1.2; color: #111216; text-transform: none; letter-spacing: 0; margin: 0; }
.pv-public .ac-chip i.fa-star { color: #e8a317; }
.pv-public .ac-chip i.fa-star.off { color: #d2d3d8; }
.pv-public .pv-stars { gap: 2px; padding: 4px 10px; }
.pv-public .ac-btn.pv-on { background: #fdecec; border-color: #f0b3b6; color: #b3111a; }
.pv-public .ac-actions { margin-inline-start: auto; }
.pv-public .pv-text { line-height: 1.75; color: #2a2c32; font-size: 15.5px; }
.pv-public .pv-text.ac-muted { color: #6b6e76; }
.pv-public .pv-contact { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.pv-public .pv-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; }
.pv-public .pv-tile { display: flex; flex-direction: column; gap: 8px; color: #111216; background: #f7f7f9; border: 1px solid #eeeef1; border-radius: 14px; padding: 10px; }
.pv-public .pv-tile:hover { border-color: #f0b3b6; background: #fff; }
.pv-public .pv-tile .im { display: flex; align-items: center; justify-content: center; aspect-ratio: 16 / 10; border-radius: 10px; background: #e9e9ee; overflow: hidden; color: #9a9ca3; font-size: 28px; }
.pv-public .pv-tile .im img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pv-public .pv-tile b { font-size: 14px; font-weight: 700; line-height: 1.3; }
.pv-public .pv-badges { margin-top: 14px; }
.pv-public .pv-photos { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px; }
.pv-public .pv-photos a { display: block; border-radius: 12px; overflow: hidden; aspect-ratio: 1; background: #e9e9ee; }
.pv-public .pv-photos img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 640px) {
  .pv-public .ac-hero { flex-direction: column; align-items: flex-start; }
  .pv-public .ac-actions { margin-inline-start: 0; width: 100%; }
  .pv-public .ac-actions .ac-btn { flex: 1 1 auto; }
  .pv-public .pv-h1 { font-size: 22px; }
}
