.vncz-wrap, .vncz-wrap *{
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  box-sizing:border-box;
}
.vncz-wrap{max-width:900px;margin:16px auto;color:#111}

.vncz-topbox{
  display:flex; gap:10px; align-items:stretch;
  border:1px solid #e5e7eb; border-radius:8px;
  padding:8px; background:#fff;
}

.vncz-top-input{
  flex:1;
  border:1px solid #e5e7eb;
  border-radius:6px;
  padding:10px 14px;
  background:#f3f4f6;
  cursor:pointer;
  outline:none;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.vncz-top-summary{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  justify-content:space-between;
}

.vncz-top-count{
  font-size:22px;
  font-weight:900;
  color:#111;
  line-height:1;
}

/* Cloud avatar */
.vncz-cloud{display:flex;align-items:center;justify-content:flex-end;}
.vncz-cloud-ava{
  width:34px;height:34px;border-radius:999px;
  border:2px solid #f3f4f6;
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  background:#fff;
  margin-left:-10px;
}
.vncz-cloud-img{width:100%;height:100%;object-fit:cover;display:block}
.vncz-cloud-fallback{font-weight:900;color:#111;font-size:14px}

.vncz-top-btn{
  width:150px; border:none; border-radius:6px;
  background:#2f2f2f; color:#fff; font-weight:800;
  letter-spacing:.5px; cursor:pointer;
}

.vncz-list{margin-top:10px;display:flex;flex-direction:column;gap:10px}

.vncz-item{display:flex;gap:10px;align-items:flex-start}
.vncz-ava{
  width:40px;height:40px;border-radius:999px; overflow:hidden;
  border:1px solid #e5e7eb; background:#f3f4f6;
  display:flex;align-items:center;justify-content:center; flex:0 0 auto;
}
.vncz-avatar-img{width:100%;height:100%;object-fit:cover}
.vncz-avatar-fallback{font-weight:900;color:#111}

.vncz-body{flex:1; min-width:0}
.vncz-bubble{
  background:#f3f4f6; border:1px solid #e5e7eb;
  border-radius:14px; padding:10px 12px;
}
.vncz-name{font-weight:900;font-size:14px;margin-bottom:4px}
.vncz-text{font-size:14px;line-height:1.5;color:#111}

.vncz-subrow{
  margin-top:4px;
  display:flex; gap:12px; align-items:center;
  font-size:13px; color:#6b7280;
}
.vncz-time{min-width:36px}

.vncz-link{
  border:none; background:transparent; padding:0;
  color:#6b7280; cursor:pointer; font-weight:700;

  display:inline-flex;
  align-items:center;
  gap:6px;
  line-height:1;
}
.vncz-link:hover{color:#111}
.vncz-like-count{margin-left:2px;font-weight:700}

.vncz-ico{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center}
.vncz-ico svg{width:16px;height:16px;display:block}

/* Thumbnail strip */
.vncz-photos{
  margin-top:8px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.vncz-photo-wrap{
  width:64px;height:64px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  flex:0 0 auto;
}
.vncz-photo-wrap a{display:block;width:100%;height:100%;cursor:pointer}
.vncz-photo-wrap a:hover{opacity:.9}
.vncz-photo{width:100%;height:100%;object-fit:cover;display:block}

/* Replies */
.vncz-replies{margin-top:8px; padding-left:44px}
.vncz-reply{display:flex;gap:10px;align-items:flex-start;margin-top:8px}
.vncz-reply-ava{
  width:32px;height:32px;border-radius:999px; overflow:hidden;
  border:1px solid #e5e7eb; background:#f3f4f6;
  display:flex;align-items:center;justify-content:center;
}
.vncz-reply-img{width:100%;height:100%;object-fit:cover}
.vncz-reply-fallback{font-weight:900;color:#111;font-size:13px}

.vncz-reply-bubble{
  background:#f3f4f6; border:1px solid #e5e7eb;
  border-radius:14px; padding:8px 10px;
  flex:1; min-width:0;
}
.vncz-reply-name{font-weight:900;font-size:13px;margin-bottom:3px}
.vncz-reply-text{font-size:13px;line-height:1.5;color:#111}

/* Forms */
.vncz-form{margin-top:10px}
.vncz-field{margin-bottom:10px}
.vncz-field label{display:block;font-weight:800;font-size:13px;margin-bottom:6px;color:#111}
.vncz-field input[type=text], .vncz-field input[type=email], .vncz-field textarea{
  width:100%;
  border:1px solid #e5e7eb; border-radius:8px;
  padding:10px 12px; outline:none; background:#fff;
}
.vncz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.vncz-hint{font-size:12px;color:#9ca3af;margin-top:6px}

.vncz-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center}
.vncz-btn{
  border:none; border-radius:8px;
  padding:10px 14px; cursor:pointer; font-weight:900;
}
.vncz-btn-primary{background:#111;color:#fff}
.vncz-btn-ghost{background:#fff;border:1px solid #e5e7eb;color:#111}
.vncz-form-msg{font-size:13px;color:#111;margin-top:6px}

.vncz-empty{
  padding:14px;border:1px dashed #e5e7eb;border-radius:10px;color:#6b7280;background:#fff;
}

/* Modal */
.vncz-modal{display:none}
.vncz-modal.is-open{display:block}
.vncz-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9998}
.vncz-modal-card{
  position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(720px,calc(100% - 24px));
  border-radius:12px;border:1px solid #e5e7eb;background:#fff;z-index:9999;
  padding:14px;
}
.vncz-modal-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:8px}
.vncz-modal-title{font-weight:900}
.vncz-modal-close{border:none;background:transparent;font-size:24px;cursor:pointer;line-height:1}

/* Xem thêm */
.vncz-more-wrap{margin-top:12px; display:flex; justify-content:center;}
.vncz-more-btn{
  border:1px solid #e5e7eb;
  background:#fff;
  border-radius:10px;
  padding:10px 16px;
  font-weight:900;
  cursor:pointer;
}
.vncz-more-btn:disabled{opacity:.6; cursor:not-allowed;}

@media (max-width:640px){
  .vncz-grid{grid-template-columns:1fr}
  .vncz-top-btn{width:120px}
  .vncz-replies{padding-left:0}
}
