/* Reader surfaces follow the site's night-mode toggle. */
body.night-mode .flipbook-read-page .bg-white,
body.night-mode .flipbook-read-page .flipbook-page-sheet,
body.night-mode .flipbook-read-page .flipbook-page-footer {
  background: #1e293b !important;
  border-color: #334155;
}

body.night-mode .flipbook-read-page .flipbook-page-content,
body.night-mode .flipbook-read-page .text-dark:not(.badge):not(.btn) {
  color: #e2e8f0 !important;
}

body.night-mode .flipbook-read-page .text-muted,
body.night-mode .flipbook-read-page .text-secondary,
body.night-mode .flipbook-read-page .flipbook-page-footer {
  color: #aebed0 !important;
}

body.night-mode .flipbook-read-page .btn-outline-secondary {
  color: #cbd5e1;
  border-color: #64748b;
}

/* Book detail hero, with independent palettes for day and night. */
.flipbook-hero {
  --hero-ink: #32271f;
  --hero-muted: #736153;
  --hero-line: rgba(147, 94, 49, .18);
  position: relative;
  overflow: hidden;
  color: var(--hero-ink);
  background: radial-gradient(ellipse at 85% 30%, #fbd7a3 0, transparent 48%), linear-gradient(115deg, #fffaf1, #f6ead8);
  border-bottom: 1px solid var(--hero-line);
  padding: 42px 0 62px;
}
.flipbook-hero__layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: center; gap: 48px; }
.flipbook-hero__copy { min-width: 0; max-width: 850px; }
.flipbook-hero__eyebrow { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 9px; color: var(--hero-ink); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.flipbook-hero__eyebrow span { color: var(--hero-muted); font-weight: 400; }
.flipbook-hero__category { display: table; margin-top: 26px; padding: 6px 12px; border: 1px solid var(--hero-line); border-radius: 30px; color: var(--hero-muted); font-size: 12px; font-weight: 600; }
.flipbook-hero .flipbook-hero__title { color: var(--hero-ink); font-size: clamp(28px, 3.3vw, 48px); font-weight: 800; line-height: 1.45; margin: 14px 0; overflow-wrap: anywhere; }
.flipbook-hero__title[dir="rtl"] { line-height: 1.7; }
.flipbook-hero__meta { display: flex; flex-wrap: wrap; gap: 20px; font-size: 13px; color: var(--hero-muted); }
.flipbook-hero__meta a { color: inherit; }
.flipbook-hero__meta i { margin-inline-end: 5px; }
.flipbook-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 26px; }
.flipbook-hero__read { display: inline-flex; align-items: center; gap: 12px; padding: 13px 22px; border-radius: 30px; background: #ad380d; color: #fff; font-size: 14px; font-weight: 700; box-shadow: 0 8px 22px #ad380d26; transition: background .2s, transform .2s; }
.flipbook-hero__read:hover { background: #8c2b08; color: #fff; transform: translateY(-2px); text-decoration: none; }
.flipbook-hero a:focus-visible, .flipbook-hero button:focus-visible { outline: 3px solid #d97706; outline-offset: 4px; }
.flipbook-hero__art { position: relative; display: flex; align-items: center; justify-content: center; min-height: 280px; padding-bottom: 24px; }
.flipbook-hero__orbit { position: absolute; width: 280px; height: 280px; border: 1px solid var(--hero-line); border-radius: 50%; background: radial-gradient(circle, #e8a85430, transparent 70%); }
.flipbook-hero__orbit::after { content: ''; position: absolute; inset: 18px; border: 1px dashed var(--hero-line); border-radius: inherit; }
.flipbook-hero__book { position: relative; width: 170px; height: 234px; border-radius: 5px 12px 12px 5px; transform: rotate(8deg); background: #713e29; box-shadow: 6px 4px 0 #efe1ca, 9px 6px 0 #ba9d78, 16px 24px 30px #4a291f35; overflow: hidden; }
.flipbook-hero__book::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, #0004, #fff2 5%, transparent 12%); }
.flipbook-hero__book img { width: 100%; height: 100%; object-fit: cover; }
.flipbook-hero__fallback { display: grid; place-items: center; height: 100%; font-size: 56px; color: #ffddb1; }
.flipbook-hero__caption { position: absolute; bottom: 0; padding: 8px 16px; border: 1px solid var(--hero-line); border-radius: 30px; background: #fff7e8; color: var(--hero-muted); font-size: 11px; letter-spacing: .04em; }
.flipbook-hero__caption i { margin-inline-end: 6px; }
#flipbookStage { scroll-margin-top: 80px; }
body.night-mode .flipbook-hero { --hero-ink: #fff1de; --hero-muted: #c5b6a5; --hero-line: rgba(245, 190, 120, .18); background: radial-gradient(ellipse at 85% 30%, #493523 0, transparent 50%), linear-gradient(115deg, #171e2b, #24232a); }
body.night-mode .flipbook-hero__caption { background: #2e2a28; }
body.night-mode .flipbook-hero__read { background: #f9a65b; color: #28180c; }
body.night-mode .flipbook-hero__read:hover { background: #ffbd81; }
body.night-mode .flipbook-hero__actions .btn-light { background: #34313a; border-color: #62534a; color: #fff1de; }
@media (max-width: 767px) {
  .flipbook-hero { padding: 26px 0 50px; }
  .flipbook-hero__layout { grid-template-columns: minmax(0, 1fr) 110px; gap: 18px; }
  .flipbook-hero__art { min-height: 170px; padding-bottom: 0; }
  .flipbook-hero__book { width: 95px; height: 138px; }
  .flipbook-hero__orbit { width: 150px; height: 150px; }
  .flipbook-hero__caption { display: none; }
  .flipbook-hero__category { margin-top: 18px; font-size: 11px; }
  .flipbook-hero .flipbook-hero__title { font-size: 26px; }
  .flipbook-hero__meta { gap: 8px 14px; font-size: 12px; }
  .flipbook-hero__read { padding: 11px 16px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) { .flipbook-hero__read { transition: none; } }
/* Keep theme-wide link colors from overriding hero contrast. */
.flipbook-hero .flipbook-hero__eyebrow { color: var(--hero-ink) !important; }
.flipbook-hero .flipbook-hero__meta a { color: var(--hero-muted) !important; }
.flipbook-hero .flipbook-hero__read { color: #fff !important; }
body.night-mode .flipbook-hero .flipbook-hero__read { background: #f9a65b !important; color: #28180c !important; }
body.night-mode .flipbook-hero .flipbook-hero__read:hover { background: #ffbd81 !important; }
