/* pages/read/read.wxss */

.read-container {
  height: 100vh;
  display: flex;
  flex-direction: column;
  background: #000000;
}

/* 顶部导航 */
.read-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24rpx 32rpx;
  background: rgba(0, 0, 0, 0.95);
  backdrop-filter: blur(20rpx);
  border-bottom: 2rpx solid rgba(255, 255, 255, 0.1);
  position: sticky;
  top: 0;
  z-index: 100;
}

.header-left,
.header-right {
  width: 80rpx;
  text-align: center;
}

.back-icon,
.menu-icon {
  font-size: 40rpx;
  color: #ffffff;
}

.header-title {
  flex: 1;
  text-align: center;
  font-size: 28rpx;
  color: #ffffff;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 内容区域 */
.content-scroll {
  flex: 1;
  height: 100%;
}

.content-wrapper {
  padding: 48rpx 32rpx 120rpx;
}

/* 骨架屏 */
.content-skeleton {
  padding: 48rpx 32rpx;
}

.skeleton-title {
  width: 80%;
  height: 60rpx;
  margin: 0 auto 40rpx;
}

.skeleton-line {
  width: 100%;
  height: 32rpx;
  margin-bottom: 24rpx;
}

.skeleton-line.short {
  width: 60%;
}

/* 章节标题 */
.chapter-title {
  font-size: 48rpx;
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  margin-bottom: 24rpx;
  line-height: 1.4;
}

.chapter-meta {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16rpx;
  margin-bottom: 48rpx;
  font-size: 24rpx;
  color: rgba(255, 255, 255, 0.5);
}

.meta-divider {
  color: rgba(255, 255, 255, 0.3);
}

/* 章节内容 */
.chapter-content {
  font-size: 32rpx;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.85);
  text-align: justify;
}

.markdown-body {
  word-break: break-word;
}

.markdown-body h1 {
  font-size: 44rpx;
  font-weight: 700;
  margin: 48rpx 0 24rpx;
  color: #ffffff;
}

.markdown-body h2 {
  font-size: 40rpx;
  font-weight: 600;
  margin: 40rpx 0 20rpx;
  color: #ffffff;
}

.markdown-body h3 {
  font-size: 36rpx;
  font-weight: 600;
  margin: 32rpx 0 16rpx;
  color: rgba(255, 255, 255, 0.9);
}

.markdown-body strong {
  color: #FF4D4F;
  font-weight: 600;
}

.markdown-body em {
  color: rgba(255, 255, 255, 0.7);
  font-style: italic;
}

.markdown-body blockquote {
  padding: 24rpx 32rpx;
  margin: 32rpx 0;
  background: rgba(255, 77, 79, 0.1);
  border-left: 6rpx solid #FF4D4F;
  border-radius: 8rpx;
  color: rgba(255, 255, 255, 0.8);
}

/* 章节导航 */
.chapter-nav {
  display: flex;
  gap: 24rpx;
  margin-top: 64rpx;
  margin-bottom: 32rpx;
}

.nav-btn {
  flex: 1;
  padding: 28rpx;
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
  border: 2rpx solid rgba(255, 255, 255, 0.2);
  border-radius: 16rpx;
  font-size: 30rpx;
}

.nav-btn.disabled {
  opacity: 0.3;
}

/* 推广提示 */
.promotion-tip {
  display: flex;
  align-items: center;
  gap: 24rpx;
  padding: 32rpx;
  margin-top: 32rpx;
  background: linear-gradient(135deg, rgba(255, 77, 79, 0.2) 0%, rgba(255, 120, 117, 0.1) 100%);
  border: 2rpx solid rgba(255, 77, 79, 0.3);
}

.tip-icon {
  font-size: 64rpx;
}

.tip-content {
  flex: 1;
}

.tip-title {
  font-size: 32rpx;
  font-weight: 600;
  color: #ffffff;
  margin-bottom: 8rpx;
}

.tip-desc {
  font-size: 24rpx;
  color: rgba(255, 255, 255, 0.7);
}

.tip-btn {
  padding: 16rpx 32rpx;
  background: #FF4D4F;
  color: #ffffff;
  border: none;
  border-radius: 12rpx;
  font-size: 26rpx;
}

/* 底部工具栏 */
.read-toolbar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-around;
  padding: 24rpx 32rpx;
  padding-bottom: calc(24rpx + env(safe-area-inset-bottom));
  background: rgba(0, 0, 0, 0.95);
  border-top: 2rpx solid rgba(255, 255, 255, 0.1);
  z-index: 100;
}

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

.toolbar-icon {
  font-size: 40rpx;
}

.toolbar-label {
  font-size: 22rpx;
  color: rgba(255, 255, 255, 0.7);
}

/* 目录弹窗 */
.catalog-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 999;
  display: flex;
  justify-content: flex-end;
}

.catalog-content {
  width: 70%;
  height: 100%;
  background: #0a0a0a;
  display: flex;
  flex-direction: column;
  animation: slideInRight 0.3s ease-out;
}

@keyframes slideInRight {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}

.catalog-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 32rpx;
  border-bottom: 2rpx solid rgba(255, 255, 255, 0.1);
}

.catalog-title {
  font-size: 32rpx;
  font-weight: 600;
  color: #ffffff;
}

.catalog-close {
  font-size: 56rpx;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1;
}

.catalog-list {
  flex: 1;
  padding: 16rpx 0;
}

.catalog-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 32rpx;
  border-left: 4rpx solid transparent;
  transition: all 0.3s;
}

.catalog-item.active {
  background: rgba(255, 77, 79, 0.1);
  border-left-color: #FF4D4F;
}

.catalog-item:active {
  background: rgba(255, 255, 255, 0.05);
}

.catalog-item-title {
  font-size: 28rpx;
  color: #ffffff;
  flex: 1;
}

.catalog-item.active .catalog-item-title {
  color: #FF4D4F;
  font-weight: 600;
}

.catalog-item-icon {
  font-size: 32rpx;
  margin-left: 16rpx;
}
