/** * Soul创业实验 - 目录页样式 * 1:1还原Web版本UI */ .page { min-height: 100vh; background: #000000; padding-bottom: 200rpx; } /* ===== 自定义导航栏 ===== */ .nav-bar { position: fixed; top: 0; left: 0; right: 0; z-index: 100; background: rgba(0, 0, 0, 0.9); backdrop-filter: blur(40rpx); -webkit-backdrop-filter: blur(40rpx); border-bottom: 1rpx solid rgba(255, 255, 255, 0.05); } .nav-content { height: 88rpx; display: flex; align-items: center; justify-content: center; } .nav-title { font-size: 36rpx; font-weight: 600; } .brand-color { color: #00CED1; } .nav-placeholder { width: 100%; } /* ===== 书籍信息卡 ===== */ .book-info-card { display: flex; align-items: center; gap: 24rpx; margin: 32rpx; padding: 32rpx; } .card-gradient { background: linear-gradient(135deg, #1c1c1e 0%, #2c2c2e 100%); border-radius: 32rpx; border: 2rpx solid rgba(0, 206, 209, 0.2); } .book-icon { width: 96rpx; height: 96rpx; border-radius: 24rpx; background: linear-gradient(135deg, #00CED1 0%, #20B2AA 100%); display: flex; align-items: center; justify-content: center; flex-shrink: 0; } .book-icon-inner { font-size: 48rpx; } .book-info { flex: 1; min-width: 0; } .book-title { font-size: 32rpx; font-weight: 600; color: #ffffff; display: block; margin-bottom: 4rpx; } .book-subtitle { font-size: 22rpx; color: rgba(255, 255, 255, 0.4); } .book-count { text-align: right; } .count-value { font-size: 40rpx; font-weight: 700; display: block; } .count-label { font-size: 20rpx; color: rgba(255, 255, 255, 0.4); } /* ===== 目录内容 ===== */ .chapters-content { padding: 0 32rpx; width: 100%; box-sizing: border-box; } /* ===== 章节项 ===== */ .chapter-item { display: flex; align-items: center; justify-content: space-between; padding: 24rpx; background: #1c1c1e; border-radius: 24rpx; border: 2rpx solid rgba(255, 255, 255, 0.05); margin-bottom: 24rpx; } .chapter-item:active { background: #2c2c2e; } .item-left { display: flex; align-items: center; gap: 24rpx; flex: 1; min-width: 0; } .item-icon { width: 64rpx; height: 64rpx; border-radius: 16rpx; display: flex; align-items: center; justify-content: center; font-size: 32rpx; flex-shrink: 0; } .icon-brand { background: rgba(0, 206, 209, 0.2); } .item-title { font-size: 28rpx; font-weight: 500; color: #ffffff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .item-right { display: flex; align-items: center; gap: 16rpx; flex-shrink: 0; } .item-arrow { font-size: 32rpx; color: rgba(255, 255, 255, 0.4); } /* ===== 标签 ===== */ .tag { display: inline-flex; align-items: center; justify-content: center; font-size: 22rpx; padding: 6rpx 16rpx; min-width: 80rpx; border-radius: 8rpx; box-sizing: border-box; text-align: center; } .tag-free { background: rgba(0, 206, 209, 0.1); color: #00CED1; } .text-brand { color: #00CED1; } .text-muted { color: rgba(255, 255, 255, 0.4); } .text-xs { font-size: 22rpx; } /* ===== 篇章列表 ===== */ .part-list { margin-bottom: 24rpx; } .part-item { margin-bottom: 24rpx; } .part-header { display: flex; align-items: center; justify-content: space-between; padding: 24rpx; background: #1c1c1e; border-radius: 24rpx; border: 2rpx solid rgba(255, 255, 255, 0.05); } .part-header:active { background: #2c2c2e; } .part-left { display: flex; align-items: center; gap: 24rpx; } .part-icon { width: 64rpx; height: 64rpx; border-radius: 16rpx; background: linear-gradient(135deg, #00CED1 0%, #20B2AA 100%); display: flex; align-items: center; justify-content: center; font-size: 28rpx; font-weight: 700; color: #ffffff; flex-shrink: 0; } .part-info { display: flex; flex-direction: column; } .part-title { font-size: 28rpx; font-weight: 600; color: #ffffff; } .part-subtitle { font-size: 20rpx; color: rgba(255, 255, 255, 0.4); margin-top: 4rpx; } .part-right { display: flex; align-items: center; gap: 16rpx; } .part-count { font-size: 22rpx; color: rgba(255, 255, 255, 0.4); } .part-arrow { font-size: 32rpx; color: rgba(255, 255, 255, 0.4); transition: transform 0.3s ease; } .arrow-down { transform: rotate(90deg); } /* ===== 章节组 ===== */ .chapters-list { margin-top: 16rpx; margin-left: 16rpx; } .chapter-group { background: rgba(28, 28, 30, 0.5); border-radius: 16rpx; border: 2rpx solid rgba(255, 255, 255, 0.05); overflow: hidden; margin-bottom: 8rpx; } .chapter-header { padding: 16rpx 24rpx; font-size: 24rpx; font-weight: 500; color: rgba(255, 255, 255, 0.6); border-bottom: 1rpx solid rgba(255, 255, 255, 0.05); } .section-list { /* 小节列表 */ } .section-item { display: flex; flex-direction: row; align-items: center; justify-content: space-between; padding: 20rpx 24rpx; border-bottom: 1rpx solid rgba(255, 255, 255, 0.05); } .section-item:last-child { border-bottom: none; } .section-item:active { background: rgba(255, 255, 255, 0.05); } .section-left { display: flex; flex-direction: row; align-items: center; gap: 16rpx; flex: 1; min-width: 0; } .section-icon { width: 40rpx; height: 40rpx; min-width: 40rpx; font-size: 26rpx; flex-shrink: 0; display: flex; align-items: center; justify-content: center; } .icon-unlocked { color: #00CED1; } .icon-locked { color: rgba(255, 255, 255, 0.4); } .section-title { font-size: 26rpx; color: #ffffff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; line-height: 40rpx; flex: 1; vertical-align: middle; } .section-right { display: flex; align-items: center; gap: 16rpx; flex-shrink: 0; margin-left: 16rpx; } .section-arrow { font-size: 28rpx; color: rgba(255, 255, 255, 0.3); } /* ===== 附录 ===== */ .card { background: #1c1c1e; border-radius: 24rpx; border: 2rpx solid rgba(255, 255, 255, 0.05); margin: 0 0 24rpx 0; width: 100%; box-sizing: border-box; } .appendix-card { padding: 24rpx; width: 100%; box-sizing: border-box; margin: 0 0 24rpx 0; } .appendix-title { font-size: 24rpx; font-weight: 500; color: rgba(255, 255, 255, 0.6); display: block; margin-bottom: 16rpx; } .appendix-list { /* 附录列表 */ } .appendix-item { display: flex; align-items: center; justify-content: space-between; padding: 16rpx 0; border-bottom: 1rpx solid rgba(255, 255, 255, 0.05); } .appendix-item:last-child { border-bottom: none; } .appendix-item:active { opacity: 0.7; } .appendix-text { font-size: 24rpx; color: rgba(255, 255, 255, 0.8); } .appendix-arrow { font-size: 28rpx; color: rgba(255, 255, 255, 0.3); } /* ===== 底部留白 ===== */ .bottom-space { height: 40rpx; }