/* ===== TRANG CÁ NHÂN CÔNG KHAI - PAGE ROUTE CHUẨN ===== */
body.is-account-public-profile-route .appHeader{display:none!important;}
body.is-account-public-profile-route .pageShell{min-height:100vh;padding-top:0;padding-left:0;padding-right:0;}
body.is-account-public-profile-route .routePage{padding-top:0;padding-bottom:0;min-height:calc(100vh - var(--bottom-nav-button-height));}
.publicProfilePageRoute{min-height:100%;background:#fff;padding:0 0 calc(var(--bottom-nav-button-height) + 10px + env(safe-area-inset-bottom));box-sizing:border-box;overflow:hidden;}
.publicProfilePageRoute--loading{display:flex;align-items:center;justify-content:center;min-height:320px;}
.publicProfilePage__hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 16px 6px;box-sizing:border-box;}
/* Avatar trang cá nhân - chỉnh kích thước tại đây */
.publicProfilePage__avatar{width:94px;height:94px;border-radius:999px;background:#e7dbc6;color:#252525;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:46px;font-weight:700;line-height:1;}
.publicProfilePage__avatar img{width:100%;height:100%;object-fit:cover;display:block;}
/* Nút đổi avatar - chỉ giữ icon máy ảnh nhỏ kế viền */
.publicProfilePage__avatarUploadBtn{appearance:none;-webkit-appearance:none;position:relative;border:none;background:transparent;padding:0;margin:0;display:flex;align-items:center;justify-content:center;border-radius:999px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.publicProfilePage__avatarUploadBtn:disabled{opacity:.68;}
.publicProfilePage__avatarCamera{position:absolute;right:2px;bottom:4px;width:22px;height:22px;border-radius:999px;background:#fff;color:#111;border:1px solid rgba(0,0,0,.16);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 5px rgba(0,0,0,.12);box-sizing:border-box;}
.publicProfilePage__avatarCamera svg{width:14px;height:14px;display:block;}
/* Tên trang cá nhân - cỡ chữ */
.publicProfilePage__name{margin-top:7px;font-size:20px;line-height:1.12;font-weight:588;color:#111;}
/* Số điện thoại trang cá nhân */
.publicProfilePage__phone{margin-top:4px;font-size:14px;line-height:1.25;font-weight:400;color:rgba(0,0,0,.62);}
.publicProfilePage__maskedPhone{appearance:none;-webkit-appearance:none;border:none;background:transparent;color:rgba(0,0,0,.62);font-size:14px;line-height:1.25;font-weight:400;padding:0;}
.publicProfilePage__maskedReveal{color:#ff2f6d;font-weight:588;}
.publicProfilePage__maskedPhone--revealed{color:#ff2f6d;font-weight:450;}
.publicProfilePage__maskedPhone--revealed .publicProfilePage__maskedDigits{color:#ff2f6d;font-weight:450;}
.publicProfilePage__phoneEmpty{color:rgba(0,0,0,.55);}
/* Dòng giới thiệu trang cá nhân */
.publicProfilePage__introRow{width:100%;max-width:340px;margin:5px auto 0;display:flex;align-items:center;justify-content:center;gap:6px;}
.publicProfilePage__introRow[data-profile-edit-intro]{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.publicProfilePage__intro{max-width:300px;color:#111;font-size:15px;line-height:1.25;font-weight:450;text-align:center;word-break:break-word;}
.publicProfilePage__introEdit{width:16px;height:16px;color:#111;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.publicProfilePage__introEdit svg{width:16px;height:16px;display:block;}
/* Thống kê Đang theo dõi / Người theo dõi */
.publicProfilePage__stats{width:100%;max-width:230px;margin:8px auto 0;display:grid;grid-template-columns:1fr 1px 1fr;align-items:center;gap:12px;}
.publicProfilePage__stat{text-align:center;min-width:0;}
.publicProfilePage__statNumber{font-size:18px;line-height:1.05;font-weight:700;color:#111;}
.publicProfilePage__statLabel{margin-top:2px;font-size:12px;line-height:1.15;font-weight:500;color:rgba(0,0,0,.55);}
.publicProfilePage__statDivider{width:1px;height:28px;background:rgba(0,0,0,.12);}
/* Nút Theo dõi / Chat */
.publicProfilePage__actions{width:100%;max-width:260px;margin:8px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.publicProfilePage__action{appearance:none;-webkit-appearance:none;min-height:32px;border-radius:0;border:none;background:transparent;box-shadow:none;outline:none;color:#111;font-size:16px;line-height:1.1;font-weight:588;display:flex;align-items:center;justify-content:center;padding:0 8px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.publicProfilePage__action--primary{background:transparent;color:#ff2f6d;}
.profileIntroSheet{position:fixed;inset:0;z-index:6100;display:flex;align-items:flex-end;justify-content:center;}
.profileIntroSheet[hidden]{display:none!important;}
.profileIntroSheet__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.28);}
.profileIntroSheet__panel{position:relative;width:100%;max-width:520px;background:#fff;border-radius:22px 22px 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -12px 36px rgba(0,0,0,.16);box-sizing:border-box;}
.profileIntroSheet__header{min-height:48px;display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;}
.profileIntroSheet__close{appearance:none;-webkit-appearance:none;width:44px;height:44px;border:none;background:transparent;color:#111;font-size:26px;line-height:1;font-weight:600;display:flex;align-items:center;justify-content:flex-start;padding:0;}
.profileIntroSheet__title{font-size:20px;line-height:1.2;font-weight:588;color:#111;text-align:center;}
.profileIntroSheet__save{appearance:none;-webkit-appearance:none;border:none;background:transparent;color:#ff2f6d;font-size:18px;line-height:1.2;font-weight:588;padding:10px 0;text-align:right;}
.profileIntroSheet__save:disabled{opacity:.55;}
.profileIntroSheet__input{width:100%;min-height:96px;margin-top:8px;border:1px solid rgba(0,0,0,.14);border-radius:14px;background:#fff;color:#111;font-size:16px;line-height:1.35;font-weight:400;padding:12px;resize:none;outline:none;box-sizing:border-box;}
.profileIntroSheet__input:focus{border-color:#ff2f6d;box-shadow:0 0 0 3px rgba(255,47,109,.12);}
.profileIntroSheet__count{margin-top:8px;text-align:right;color:rgba(0,0,0,.52);font-size:14px;line-height:1.2;font-weight:500;}
body.profileIntroSheet-open{overflow:hidden;}
/* ===== TRANG CÁ NHÂN - TIN ĐĂNG / VIDEO TRÀN 2 BÊN ===== */
.publicProfilePage__posts{width:100%;max-width:none;margin:6px 0 0;padding-top:0;border-top:1px solid rgba(0,0,0,.06);}
.publicProfilePage__contentTabs{width:auto;margin:5px 5px 8px;display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.publicProfilePage__contentTab{appearance:none;-webkit-appearance:none;min-width:0;min-height:36px;border-radius:10px;border:1px solid #ff2f6d;background:#fff;color:#111;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;font-size:16px;line-height:1.1;font-weight:588;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.publicProfilePage__contentTab--active{background:rgba(255,47,109,.05);}
.publicProfilePage__contentTabIcon{width:15px;height:15px;color:#111;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.publicProfilePage__contentTabIcon svg{width:15px;height:15px;display:block;}
.publicProfilePage__contentTabLabel{min-width:0;white-space:nowrap;}
.publicProfilePage__contentTabCount{color:#111;font-weight:700;white-space:nowrap;}
.publicProfilePage__postGrid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:2px;}
.publicProfilePage__postTile{appearance:none;-webkit-appearance:none;position:relative;width:100%;aspect-ratio:1/1;border:0;border-radius:0;background:#f2f2f2;overflow:hidden;padding:0;display:block;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.publicProfilePage__postImg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.publicProfilePage__postImg--empty{display:flex;align-items:center;justify-content:center;color:rgba(0,0,0,.46);font-size:13px;line-height:1.2;font-weight:500;text-align:center;padding:8px;box-sizing:border-box;}
.publicProfilePage__postShade{position:absolute;left:0;right:0;bottom:0;height:68%;background:linear-gradient(to top, rgba(0,0,0,.68), rgba(0,0,0,.30) 50%, rgba(0,0,0,0));pointer-events:none;}
.publicProfilePage__postCount{position:absolute;top:3px;left:3px;max-width:calc(100% - 6px);border-radius:999px;background:rgba(0,0,0,.48);color:#fff;font-size:10px;line-height:1;font-weight:588;padding:3px 5px;white-space:nowrap;}
.publicProfilePage__postText{position:absolute;left:4px;right:4px;bottom:4px;display:flex;flex-direction:column;gap:1px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.45);min-width:0;}
.publicProfilePage__postPrice{font-size:13px;line-height:1.05;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.publicProfilePage__postMeta,.publicProfilePage__postPlace{font-size:10px;line-height:1.08;font-weight:588;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.publicProfilePage__postsEmpty{min-height:92px;display:flex;align-items:center;justify-content:center;color:rgba(0,0,0,.52);font-size:16px;line-height:1.3;font-weight:500;text-align:center;background:#f7f7f7;border-radius:16px;margin:0 5px;}
/* Video trong trang cá nhân - dùng cùng lưới với Tin đăng */
.publicProfilePage__videoTile{appearance:none;-webkit-appearance:none;position:relative;width:100%;aspect-ratio:1/1;border:0;border-radius:0;background:#f2f2f2;overflow:hidden;padding:0;display:block;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.publicProfilePage__videoImg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.publicProfilePage__videoImg--empty{display:flex;align-items:center;justify-content:center;color:rgba(0,0,0,.46);font-size:13px;line-height:1.2;font-weight:500;text-align:center;padding:8px;box-sizing:border-box;}
.publicProfilePage__videoPlay{position:absolute;left:50%;top:50%;width:28px;height:28px;margin-left:-14px;margin-top:-14px;border-radius:999px;background:rgba(0,0,0,.54);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 6px rgba(0,0,0,.18);}
.publicProfilePage__videoPlay svg{width:15px;height:15px;display:block;margin-left:2px;}
