/* 广场页面样式 - 微信朋友圈风格 */
.page-container {
  min-height: 100vh;
  background: #fff;
}

/* 自定义导航栏 */
.custom-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: #ededed;
  border-bottom: 1rpx solid #d9d9d9;
}

.nav-bar {
  height: 88rpx;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 32rpx;
}

.nav-left, .nav-right {
  width: 80rpx;
}

.nav-title {
  font-size: 34rpx;
  font-weight: 600;
  color: #000;
}

.nav-right {
  display: flex;
  justify-content: flex-end;
}

.create-btn {
  width: 56rpx;
  height: 56rpx;
  display: flex;
  align-items: center;
  justify-content: center;
}

.create-icon {
  width: 48rpx;
  height: 48rpx;
}

/* 内容滚动区域 */
.content-scroll {
  height: 100vh;
  background: #fff;
}

/* 动态列表 */
.post-list {
  padding-bottom: 220rpx;
}

.post-item {
  display: flex;
  padding: 32rpx 32rpx 0;
  border-bottom: 1rpx solid #ededed;
}

/* 头像 */
.post-avatar {
  width: 84rpx;
  height: 84rpx;
  border-radius: 8rpx;
  flex-shrink: 0;
  margin-right: 20rpx;
}

/* 右侧内容区 */
.post-main {
  flex: 1;
  min-width: 0;
  padding-bottom: 24rpx;
}

/* 用户名 - 微信蓝色链接样式 */
.post-username {
  font-size: 32rpx;
  font-weight: 600;
  color: #576b95;
  line-height: 1.4;
  display: block;
  margin-bottom: 8rpx;
}

/* 内容文字 */
.post-content {
  margin-bottom: 16rpx;
}

.post-text {
  font-size: 30rpx;
  color: #111;
  line-height: 1.5;
  word-break: break-all;
}

/* 图片区域 - 九宫格布局 */
.post-images {
  display: flex;
  flex-wrap: wrap;
  gap: 8rpx;
  margin-bottom: 16rpx;
  max-width: 480rpx;
}

.post-image {
  border-radius: 6rpx;
  background: #f5f5f5;
}

/* 单张图片 */
.post-images.images-1 .post-image {
  width: 360rpx;
  height: 360rpx;
}

/* 两张图片 */
.post-images.images-2 .post-image {
  width: 236rpx;
  height: 236rpx;
}

/* 三张图片 */
.post-images.images-3 .post-image {
  width: 156rpx;
  height: 156rpx;
}

/* 四张图片 - 2x2 */
.post-images.images-4 .post-image {
  width: 236rpx;
  height: 236rpx;
}

/* 五张及以上 - 3列 */
.post-images.images-5 .post-image,
.post-images.images-6 .post-image,
.post-images.images-7 .post-image,
.post-images.images-8 .post-image,
.post-images.images-9 .post-image {
  width: 156rpx;
  height: 156rpx;
}

/* 底部信息栏 */
.post-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12rpx;
}

.post-time {
  font-size: 24rpx;
  color: #b2b2b2;
}

/* 操作按钮 - 两个小点 */
.post-actions-btn {
  padding: 12rpx 16rpx;
  background: #f7f7f7;
  border-radius: 6rpx;
}

.action-dots {
  display: flex;
  gap: 6rpx;
}

.dot {
  width: 10rpx;
  height: 10rpx;
  background: #576b95;
  border-radius: 50%;
}

/* 操作面板 */
.action-panel {
  display: none;
  background: #4c4c4c;
  border-radius: 8rpx;
  margin-bottom: 12rpx;
  overflow: hidden;
  flex-direction: row;
}

.action-panel.show {
  display: flex;
}

.action-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8rpx;
  padding: 16rpx 24rpx;
}

.action-btn-icon {
  width: 32rpx;
  height: 32rpx;
  filter: brightness(0) invert(1);
}

.action-btn-text {
  font-size: 26rpx;
  color: #fff;
}

.action-divider {
  width: 1rpx;
  background: #666;
  margin: 8rpx 0;
}

/* 点赞和评论区域 */
.post-interact {
  background: #f7f7f7;
  border-radius: 6rpx;
  overflow: hidden;
}

/* 点赞区域 */
.likes-section {
  display: flex;
  align-items: flex-start;
  padding: 12rpx 16rpx;
  gap: 8rpx;
}

.likes-icon {
  width: 28rpx;
  height: 28rpx;
  flex-shrink: 0;
  margin-top: 4rpx;
}

.likes-text {
  font-size: 28rpx;
  color: #576b95;
  line-height: 1.4;
  word-break: break-all;
}

/* 评论区域 */
.comments-section {
  padding: 0 16rpx 12rpx;
  border-top: 1rpx solid #e5e5e5;
}

.likes-section + .comments-section {
  border-top: 1rpx solid #e5e5e5;
}

.post-interact > .comments-section:first-child {
  border-top: none;
  padding-top: 12rpx;
}

.comment-item {
  padding: 6rpx 0;
  font-size: 28rpx;
  line-height: 1.5;
}

.comment-user {
  color: #576b95;
}

.comment-reply {
  color: #111;
  margin: 0 4rpx;
}

.comment-colon {
  color: #111;
}

.comment-text {
  color: #111;
  word-break: break-all;
}

/* 底部占位 */
.bottom-placeholder {
  height: 48rpx;
}

/* 评论弹窗 */
.comment-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 64rpx;
}

.comment-modal-mask {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
}

.comment-modal-content {
  position: relative;
  width: 100%;
  max-width: 620rpx;
  background: #fff;
  border-radius: 24rpx;
  overflow: hidden;
  animation: fadeIn 0.2s ease;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

.comment-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 28rpx 32rpx;
  border-bottom: 1rpx solid #e5e5e5;
}

.comment-modal-cancel {
  font-size: 32rpx;
  color: #666;
  padding: 8rpx 16rpx;
}

.comment-modal-title {
  font-size: 34rpx;
  font-weight: 600;
  color: #111;
}

.comment-modal-send {
  font-size: 32rpx;
  color: #b2b2b2;
  padding: 8rpx 16rpx;
}

.comment-modal-send.active {
  color: #576b95;
  font-weight: 600;
}

.comment-modal-body {
  padding: 24rpx 32rpx;
  min-height: 240rpx;
}

.comment-textarea {
  width: 100%;
  min-height: 200rpx;
  font-size: 32rpx;
  line-height: 1.6;
  color: #111;
}

.comment-textarea::placeholder {
  color: #b2b2b2;
}

.comment-modal-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16rpx 32rpx 24rpx;
  border-top: 1rpx solid #f0f0f0;
}

.comment-toolbar {
  display: flex;
  gap: 24rpx;
}

.toolbar-btn {
  padding: 8rpx;
}

.toolbar-icon {
  width: 48rpx;
  height: 48rpx;
  opacity: 0.6;
}

.comment-count {
  font-size: 24rpx;
  color: #b2b2b2;
}

/* 发布动态弹窗 */
.create-modal {
  position: fixed;
  inset: 0;
  z-index: 300;
}

.create-modal-mask {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.5);
}

.create-modal-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: #fff;
  border-radius: 24rpx 24rpx 0 0;
  padding-bottom: env(safe-area-inset-bottom);
  max-height: 80vh;
  overflow-y: auto;
}

.create-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 28rpx 32rpx;
  border-bottom: 1rpx solid #e5e5e5;
}

.create-cancel {
  font-size: 32rpx;
  color: #111;
}

.create-title {
  font-size: 34rpx;
  font-weight: 600;
  color: #111;
}

.create-submit {
  font-size: 32rpx;
  color: #b2b2b2;
}

.create-submit.active {
  color: #576b95;
  font-weight: 600;
}

.create-textarea {
  width: 100%;
  min-height: 240rpx;
  padding: 24rpx 32rpx;
  font-size: 32rpx;
  line-height: 1.5;
  box-sizing: border-box;
}

.create-images {
  display: flex;
  flex-wrap: wrap;
  gap: 16rpx;
  padding: 0 32rpx 32rpx;
}

.create-image-item {
  position: relative;
  width: calc(33.33% - 12rpx);
  aspect-ratio: 1;
}

.create-image {
  width: 100%;
  height: 100%;
  border-radius: 8rpx;
}

.create-image-delete {
  position: absolute;
  top: -12rpx;
  right: -12rpx;
  width: 40rpx;
  height: 40rpx;
  background: rgba(0,0,0,0.6);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28rpx;
}

.create-image-add {
  width: calc(33.33% - 12rpx);
  aspect-ratio: 1;
  background: #f7f7f7;
  border-radius: 8rpx;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1rpx dashed #d9d9d9;
}

.create-image-add-empty {
  margin: 0 32rpx 32rpx;
  padding: 48rpx;
  background: #f7f7f7;
  border-radius: 8rpx;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16rpx;
  border: 1rpx dashed #d9d9d9;
}

.add-icon {
  width: 56rpx;
  height: 56rpx;
  opacity: 0.4;
}

.add-text {
  font-size: 28rpx;
  color: #b2b2b2;
}


/* 自定义底部导航栏 */
.custom-tabbar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 210rpx;
  background: #fff;
  border-radius: 60rpx 60rpx 0 0;
  box-shadow: 0 -10rpx 30rpx rgba(0,0,0,0.04);
  display: flex;
  align-items: flex-start;
  justify-content: space-around;
  padding-top: 24rpx;
  z-index: 999;
}

.tabbar-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8rpx;
  width: 128rpx;
}

.tabbar-icon {
  width: 72rpx;
  height: 72rpx;
}

.tabbar-text {
  font-size: 34rpx;
  font-weight: 700;
  color: #a58aa5;
}

.tabbar-text.active {
  color: #b06ab3;
}

.tabbar-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8rpx;
  margin-top: -80rpx;
}

.center-btn {
  width: 144rpx;
  height: 144rpx;
  background: linear-gradient(180deg, #c984cd 0%, #b06ab3 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 0 12rpx #faf8fc, 0 16rpx 40rpx rgba(176,106,179,0.4);
}

.center-icon {
  width: 80rpx;
  height: 80rpx;
}