/* Books page styles */
.books-hero.week-hero { padding:120px 0 80px; }
.books-section { padding:60px 0; }
.books-section.alt { background: var(--bg-light); }
.books-section.highlight { background:linear-gradient(135deg,#f5f7fa,#eef2f7); }
.books-section h2 { font-size:2.1rem; text-align:center; margin:0 0 48px; position:relative; font-weight:700; }
.books-section h2::after { content:''; position:absolute; width:90px; height:4px; background:linear-gradient(to right,var(--primary-color),var(--secondary-color)); bottom:-14px; left:50%; transform:translateX(-50%); border-radius:2px; }

.book-grid { display:grid; gap:30px; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); }
.book-card { background:#fff; border-radius:18px; box-shadow:var(--shadow); display:flex; flex-direction:column; overflow:hidden; border:1px solid var(--border-color); transition:var(--transition); position:relative; }
.book-card:hover { transform:translateY(-6px); box-shadow:0 12px 28px rgba(0,0,0,0.12); }
.book-cover { width:100%; height:200px; object-fit:contain; border-bottom:1px solid var(--border-color); }

.book-body { padding:22px 22px 20px; display:flex; flex-direction:column; gap:14px; flex:1; }
.book-body h3 { margin:0; font-size:1.15rem; color:var(--primary-color); letter-spacing:-.5px; }
.book-body h3 .en-title { display:block; font-size:.65rem; font-weight:500; letter-spacing:.5px; margin-top:4px; color:var(--text-light); text-transform:uppercase; }
.book-body .desc { margin:0; color:var(--text-light); font-size:0.9rem; line-height:1.55; }
.book-meta { margin:0; font-size:0.65rem; letter-spacing:.5px; color:var(--text-light); font-weight:600; opacity:.85; }
.why-read { margin:0 0 .8rem; font-size:0.75rem; color:var(--secondary-color); font-weight:600; }
.bullets { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
.bullets li { font-size:0.7rem; letter-spacing:.25px; color:var(--text-light); position:relative; padding-left:14px; line-height:1.3; }
.bullets li::before { content:'•'; position:absolute; left:0; top:0; color:var(--secondary-color); }
.meta-links { display:flex; gap:12px; flex-wrap:wrap; margin-top:auto; }
.meta-links a { font-size:0.7rem; background:var(--primary-color); color:#fff; padding:6px 12px; border-radius:20px; text-decoration:none; font-weight:500; letter-spacing:0.5px; transition:var(--transition); }
.meta-links a:hover { transform:translateY(-3px); box-shadow:0 4px 12px rgba(0,0,0,0.18); }

.reading-guide { max-width:800px; margin:0 auto; background:#fff; border:1px solid var(--border-color); padding:32px 36px 30px; border-radius:20px; box-shadow:var(--shadow); }
.reading-guide ol { margin:0 0 24px; padding-left:18px; display:flex; flex-direction:column; gap:10px; }
.reading-guide li { font-size:0.85rem; color:var(--text-light); line-height:1.5; }
.reading-guide strong { color:var(--secondary-color); }
.reading-guide .tip { margin:0; font-size:0.78rem; color:var(--text-light); background:linear-gradient(90deg,#f7f7f7,#fcfcfc); border:1px solid var(--border-color); padding:12px 16px; border-radius:12px; }

@media (max-width: 768px) {
  .books-hero.week-hero { padding:100px 0 60px; }
  .books-section { padding:50px 0; }
  .books-section h2 { font-size:1.9rem; }
  .book-grid { gap:24px; }
  .reading-guide { padding:26px 24px 24px; }
}
@media (max-width: 480px) {
  .books-section h2 { font-size:1.7rem; }
  .book-body h3 { font-size:1.05rem; }
  .book-body .desc { font-size:0.85rem; }
  .book-body h3 .en-title { font-size:.6rem; }
}

@media (prefers-color-scheme: dark) {
  .books-section.highlight { background:linear-gradient(135deg,#1f2937,#111827); }
  .book-card { background:#1d1f23; border-color:#2b2f36; box-shadow:0 2px 6px rgba(0,0,0,0.55); }
  .book-body h3 { color:#e6e8ea; }
  .book-body .desc, .bullets li, .reading-guide li, .reading-guide .tip { color:#b5bcc3; }
  .reading-guide { background:#1d1f23; border-color:#2b2f36; box-shadow:0 2px 6px rgba(0,0,0,0.55); }
  .reading-guide .tip { background:linear-gradient(90deg,#1e2024,#23252a); border-color:#2b2f36; }
}
