/* 小说站样式：仿纵横风格 */
.novel-main.container{max-width:1100px;margin:0 auto;padding:16px;font-family:-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;color:#333;}

/* 顶部分类导航 */
.novel-nav{background:#fff;border:1px solid #eee;border-radius:8px;padding:10px 16px;margin-bottom:16px;display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;box-shadow:0 1px 3px rgba(0,0,0,.04);}
.novel-nav a{color:#555;font-size:15px;text-decoration:none;padding:4px 2px;border-bottom:2px solid transparent;transition:.2s;}
.novel-nav a:hover,.novel-nav .nav-home{color:#e60012;border-bottom-color:#e60012;}
.novel-nav .nav-rank{margin-left:auto;color:#e60012;font-weight:600;}

/* Banner */
.novel-banner{position:relative;border-radius:10px;overflow:hidden;margin-bottom:24px;height:320px;background:#222;}
.novel-banner img{width:100%;height:100%;object-fit:cover;opacity:.85;}
.novel-banner .banner-mask{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 60%,transparent 100%);}
.novel-banner .banner-info{position:absolute;left:40px;top:50%;transform:translateY(-50%);max-width:420px;color:#fff;}
.novel-banner .banner-info h1{font-size:30px;margin:0 0 10px;}
.novel-banner .banner-meta{font-size:14px;opacity:.85;margin:0 0 10px;}
.novel-banner .banner-desc{font-size:14px;line-height:1.7;opacity:.9;margin:0 0 16px;}
.novel-banner .btn-read{display:inline-block;background:#e60012;color:#fff;padding:10px 28px;border-radius:6px;text-decoration:none;font-size:15px;font-weight:600;}
.novel-banner .btn-read:hover{background:#c40010;}

/* 分区标题 */
.novel-section{margin-bottom:32px;}
.section-title{font-size:20px;margin:0 0 16px;padding-left:12px;border-left:4px solid #e60012;}

/* 书封面墙 */
.book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.book-card{display:flex;background:#fff;border:1px solid #eee;border-radius:8px;overflow:hidden;text-decoration:none;color:#333;transition:.2s;height:140px;}
.book-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,.1);border-color:#e60012;}
.book-cover{width:100px;min-width:100px;background:#f0f0f0;overflow:hidden;}
.book-cover img{width:100%;height:100%;object-fit:cover;}
.book-cover .no-cover{display:flex;align-items:center;justify-content:center;height:100%;font-size:36px;color:#bbb;font-weight:700;}
.book-info{padding:10px 12px;flex:1;min-width:0;display:flex;flex-direction:column;}
.book-title{font-size:15px;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#222;}
.book-author{font-size:12px;color:#999;margin:0 0 6px;}
.book-desc{font-size:12px;color:#777;line-height:1.5;margin:0;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;}
.book-tag{display:inline-block;width:fit-content;font-size:11px;color:#e60012;background:#fff0f0;padding:1px 8px;border-radius:10px;margin-top:4px;}

/* 排行榜 */
.rank-list{background:#fff;border:1px solid #eee;border-radius:8px;overflow:hidden;margin:0;padding:0;list-style:none;}
.rank-list li{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid #f5f5f5;font-size:14px;}
.rank-list li:last-child{border-bottom:none;}
.rank-list li:hover{background:#fafafa;}
.rank-no{width:24px;text-align:center;font-weight:700;color:#aaa;}
.rank-no.top{color:#e60012;}
.rank-book{color:#666;min-width:120px;}
.rank-chapter{flex:1;color:#333;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rank-chapter:hover{color:#e60012;}
.rank-date{color:#999;font-size:12px;}

/* 书详情 */
.book-detail{display:flex;gap:24px;background:#fff;border:1px solid #eee;border-radius:10px;padding:24px;margin-bottom:24px;}
.book-detail-cover{width:180px;min-width:180px;height:240px;border-radius:6px;overflow:hidden;background:#f0f0f0;}
.book-detail-cover img{width:100%;height:100%;object-fit:cover;}
.book-detail-info{flex:1;min-width:0;}
.book-detail-title{font-size:26px;margin:0 0 12px;color:#222;}
.book-detail-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:14px;color:#888;margin:0 0 14px;}
.book-detail-desc{font-size:14px;line-height:1.8;color:#555;margin:0 0 16px;}
.book-detail-actions .btn-read{display:inline-block;background:#e60012;color:#fff;padding:10px 32px;border-radius:6px;text-decoration:none;font-size:15px;font-weight:600;}

/* 章节目录 */
.chapter-list{columns:3;column-gap:16px;background:#fff;border:1px solid #eee;border-radius:10px;padding:16px 20px;margin:0;list-style:none;}
.chapter-list li{break-inside:avoid;padding:6px 0;border-bottom:1px dashed #f0f0f0;}
.chapter-list a{color:#444;text-decoration:none;font-size:14px;}
.chapter-list a:hover{color:#e60012;}
.ch-no{color:#999;font-size:12px;margin-right:4px;}

/* 章节阅读页 */
.novel-breadcrumb{font-size:13px;color:#999;margin-bottom:12px;}
.novel-breadcrumb a{color:#666;text-decoration:none;}
.novel-breadcrumb a:hover{color:#e60012;}
.chapter-header{text-align:center;padding:16px 0 20px;border-bottom:1px solid #eee;margin-bottom:20px;}
.chapter-title{font-size:24px;margin:0 0 8px;color:#222;}
.chapter-book{font-size:13px;color:#999;margin:0;}
.chapter-book a{color:#666;text-decoration:none;}
.chapter-content{font-size:17px;line-height:2;color:#333;background:#fff;border:1px solid #eee;border-radius:10px;padding:28px 36px;}
.chapter-content p{margin:0 0 1.2em;}
.chapter-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0;padding:16px;background:#fff;border:1px solid #eee;border-radius:10px;}
.chapter-nav a{color:#e60012;text-decoration:none;padding:8px 18px;border:1px solid #e60012;border-radius:6px;font-size:14px;}
.chapter-nav a:hover{background:#e60012;color:#fff;}
.chapter-nav .btn-catalog{background:#f5f5f5;border-color:#ddd;color:#666;}
.chapter-nav .disabled{color:#ccc;padding:8px 18px;}

/* 语音朗读 */
.tts-bar{position:sticky;top:8px;z-index:30;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;background:rgba(255,255,255,.97);border:1px solid #eee;border-radius:10px;padding:10px 14px;margin-bottom:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);backdrop-filter:saturate(180%) blur(6px);}
.tts-bar.is-playing{border-color:#e60012;}
.tts-btn{border:1px solid #e60012;background:#e60012;color:#fff;border-radius:6px;padding:7px 16px;font-size:14px;cursor:pointer;line-height:1.2;transition:.2s;}
.tts-btn:hover{background:#c40010;border-color:#c40010;}
.tts-btn.tts-stop{background:#fff;color:#e60012;padding:7px 11px;font-size:12px;}
.tts-btn.tts-stop:hover{background:#e60012;color:#fff;}
.tts-field{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#666;}
.tts-field select{border:1px solid #ddd;border-radius:6px;padding:5px 6px;font-size:13px;color:#444;background:#fff;}
.tts-field.tts-auto{cursor:pointer;user-select:none;}
.tts-field.tts-auto input{accent-color:#e60012;}
.tts-pos{margin-left:auto;font-size:12px;color:#999;font-variant-numeric:tabular-nums;}
.tts-need-tap{animation:tts-tap 1.2s ease-in-out 2;}
@keyframes tts-tap{50%{box-shadow:0 0 0 3px rgba(230,0,18,.18);}}
.tts-sent.is-active{background:#fff3cd;border-radius:3px;box-decoration-break:clone;-webkit-box-decoration-break:clone;}
.chapter-content .tts-sent{cursor:pointer;}
.book-detail-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.book-detail-actions .btn-tts{display:inline-block;background:#fff;color:#e60012;border:1px solid #e60012;padding:9px 22px;border-radius:6px;text-decoration:none;font-size:15px;font-weight:600;line-height:1.4;}
.book-detail-actions .btn-tts:hover{background:#e60012;color:#fff;}
.chapter-list li{position:relative;padding-right:28px;}
.chapter-list .ch-play{position:absolute;right:0;top:5px;font-size:11px;color:#e60012;border:1px solid #f0c9cc;border-radius:50%;width:20px;height:20px;line-height:18px;text-align:center;text-decoration:none;background:#fff;}
.chapter-list .ch-play:hover{background:#e60012;color:#fff;border-color:#e60012;}

/* 响应式 */
@media(max-width:768px){
  .tts-bar{gap:8px 10px;padding:9px 10px;}
  .tts-btn{padding:7px 12px;font-size:13px;}
  .tts-pos{margin-left:0;width:100%;}
  .book-detail-actions .btn-read,.book-detail-actions .btn-tts{flex:1 1 auto;text-align:center;}
  .book-grid{grid-template-columns:repeat(2,1fr);}
  .book-detail{flex-direction:column;}
  .book-detail-cover{margin:0 auto;}
  .chapter-list{columns:1;}
  .chapter-content{padding:18px 16px;font-size:16px;}
  .novel-banner{height:220px;}
  .novel-banner .banner-info{left:16px;max-width:90%;}
  .novel-banner .banner-info h1{font-size:22px;}
}
