*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--font-serif);background:var(--bg);color:var(--text);min-height:100vh;line-height:1.8}

/* ── 导航 ── */
.
.nav a{color:var(--text-muted);text-decoration:none;font-size:.95rem;padding:6px 14px;border-radius:var(--radius-sm);transition:all var(--transition);letter-spacing:1px}
.nav a:hover{color:var(--gold);background:rgba(139,105,20,.15)}
.nav .back-btn{color:var(--gold-light);border:1px solid var(--border-gold);padding:6px 18px}

/* ── 书本信息头 ── */
.book-header{text-align:center;padding:2.5rem 2rem 1.5rem;position:relative}
.book-header::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 50% 0%,rgba(139,105,20,.12),transparent 70%);z-index:0}
.book-header h1{position:relative;z-index:1;color:var(--gold);font-size:2rem;letter-spacing:.12em;margin-bottom:.5rem}
.book-header .meta{position:relative;z-index:1;color:var(--text-secondary);font-size:.88rem;letter-spacing:.05em}
.book-header .meta span{margin:0 .6rem;color:var(--text-muted)}

/* ── 翻页控件 ── */
.viewer-container{max-width:900px;margin:0 auto;padding:0 1rem 2rem}
.viewer-
.nav-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:1.1rem;padding:.6rem 1.5rem;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);letter-spacing:.05em}
.nav-btn:hover{border-color:var(--border-gold);color:var(--gold);background:rgba(139,105,20,.1)}
.nav-btn:disabled{opacity:.3;cursor:not-allowed}
.page-counter{color:var(--text-secondary);font-size:.9rem;min-width:80px;text-align:center;letter-spacing:.05em}

/* ── 图片区域 ── */
.page-image{display:none;text-align:center;position:relative}
.page-image.active{display:block}
.page-image img{max-width:100%;max-height:75vh;object-fit:contain;border-radius:var(--radius-sm);box-shadow:0 4px 24px rgba(0,0,0,.4)}
.page-label{position:absolute;bottom:10px;right:10px;background:rgba(26,20,16,.85);color:var(--text-muted);padding:.25rem .75rem;border-radius:var(--radius-pill);font-size:.75rem;letter-spacing:.05em;border:1px solid var(--border)}

/* ── 指示点 ── */
.dots{display:flex;justify-content:center;gap:8px;margin-top:1.2rem;flex-wrap:wrap}
.dot{width:10px;height:10px;border-radius:50%;background:var(--border);cursor:pointer;transition:all var(--transition)}
.dot.active,.dot:hover{background:var(--gold);box-shadow:0 0 8px rgba(240,208,96,.4)}

/* ── 键盘提示 ── */
.kbd-hint{text-align:center;color:var(--text-muted);font-size:.75rem;margin-top:1rem;letter-spacing:.05em}
.kbd-hint kbd{display:inline-block;padding:.1rem .5rem;background:var(--surface);border:1px solid var(--border);border-radius:4px;font-family:monospace;margin:0 .2rem}

/* ── 返回 + 页脚 ── */
.back-section{text-align:center;padding:2rem 0 3rem}
.back-section a{display:inline-block;color:var(--gold-light);border:1px solid var(--border-gold);padding:.7rem 2rem;border-radius:var(--radius-pill);text-decoration:none;transition:all var(--transition);letter-spacing:.08em;font-size:.95rem}
.back-section a:hover{background:rgba(139,105,20,.15);box-shadow:0 0 20px rgba(139,105,20,.2)}
.footer{text-align:center;padding:2rem;color:#5a3e1a;font-size:.75rem;border-top:1px solid var(--border);letter-spacing:.05em}

@media(max-width:600px){
  .
  .nav a{font-size:.8rem;padding:5px 10px}
  .book-header h1{font-size:1.4rem}
  .nav-btn{padding:.5rem 1rem;font-size:.95rem}
}