/* Detalle del catálogo encuadrado en la pantalla, sin recortar contenido. */
.book-dialog {
  width:100vw; height:100svh; min-height:0; max-height:100svh;
  margin:0; padding:52px 5.7% 24px; overflow:hidden;
}
.book-dialog .book-detail {
  height:100%; min-height:0; grid-template-rows:minmax(0,1fr);
  align-items:stretch;
}
.book-dialog .cover-stage { min-height:0; padding:0; }
.book-dialog .detail-cover { height:100%; min-height:0; max-height:100%; }
.book-dialog .book-information {
  --detail-fit:1;
  display:flex; flex-direction:column; min-height:0; height:100%;
  padding:calc(20px * var(--detail-fit)) 0 0; align-self:stretch;
}
.book-dialog .book-information > * { flex-shrink:0; }
.book-dialog .book-information h2 { font-size:calc(clamp(28px,3.1vw,50px) * var(--detail-fit)); margin-bottom:calc(12px * var(--detail-fit)); }
.book-dialog .review-title { font-size:calc(16px * var(--detail-fit)); }
.book-dialog #book-description,.book-dialog .book-order-note,.book-dialog .book-values { font-size:calc(clamp(11px,.87vw,14px) * var(--detail-fit)); }
.book-dialog .book-specifications { font-size:calc(clamp(10px,.73vw,12px) * var(--detail-fit)); margin:calc(22px * var(--detail-fit)) 0; }
.book-dialog .book-order-note { margin-bottom:calc(10px * var(--detail-fit)); }
.book-information .book-formats + .book-order-note { margin-top:8px; }
.book-information .book-values + .book-formats { margin-top:2px; }
.book-information .book-formats .format-button { min-width:125px; }
.book-dialog .book-values { margin-bottom:calc(12px * var(--detail-fit)); }
.book-dialog .format-button { font-size:calc(13px * var(--detail-fit)); }
.book-donation-note { max-width:52ch; margin:8px 0 0; color:#fff8f6; font-size:clamp(12px,1vw,15px); font-weight:700; line-height:1.35; letter-spacing:.035em; text-align:left; text-transform:uppercase; }
.book-dialog .book-donation-note { margin-top:calc(8px * var(--detail-fit)); font-size:calc(clamp(11px,1vw,15px) * var(--detail-fit)); }
.book-dialog .book-information .preview-trigger {
  margin:auto 0 0 auto; padding-top:calc(18px * var(--detail-fit));
  min-height:36px; text-align:right; align-items:flex-end;
  font-size:calc(clamp(12px,1.25vw,18px) * var(--detail-fit));
}
.featured-book .book-information { padding-bottom:24px; }
.featured-book .book-information .preview-trigger { margin:22px 0 0 auto; text-align:right; align-items:flex-end; }
.preview-trigger span { display:block; animation:preview-float 2.8s ease-in-out infinite; }
.preview-trigger:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
@keyframes preview-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-5px); } }
.book-dialog > .dialog-close,.reader-dialog > .dialog-close {
  top:8px; right:12px; border-radius:0; background:transparent;
  transition:transform .3s ease,color .3s ease;
}
.book-dialog > .dialog-close:hover,.reader-dialog > .dialog-close:hover {
  background:transparent; color:#e2a0b5; transform:rotate(90deg);
}
@media(max-width:700px) {
  .book-dialog { padding:44px 32px 16px; }
  .book-dialog .book-detail { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:min(15svh,110px) minmax(0,1fr); gap:10px; }
  .book-dialog .cover-stage { width:100%; max-width:none; margin:0; }
  .book-dialog .detail-cover { width:100%; height:100%; }
  .book-dialog .book-information { padding:0; }
  .book-dialog .book-information h2 { font-size:calc(22px * var(--detail-fit)); line-height:1; margin-bottom:calc(8px * var(--detail-fit)); }
  .book-dialog .review-title { font-size:calc(13px * var(--detail-fit)); }
  .book-dialog #book-description,.book-dialog .book-order-note,.book-dialog .book-values { font-size:calc(11px * var(--detail-fit)); }
  .book-dialog .book-specifications { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 10px; font-size:calc(10px * var(--detail-fit)); line-height:1.25; margin:calc(12px * var(--detail-fit)) 0; }
  .book-dialog .book-specifications > div { gap:2px; }
  .book-dialog .book-formats { gap:8px; }
  .book-dialog .format-button { min-width:0; padding:5px 8px; font-size:calc(12px * var(--detail-fit)); }
  .book-dialog .book-information .preview-trigger { font-size:calc(12px * var(--detail-fit)); padding-top:calc(12px * var(--detail-fit)); }
  .book-dialog .book-arrow { top:calc(44px + min(7.5svh,55px)); }
}
@media(max-height:500px) and (min-width:701px) {
  .book-dialog { padding:44px 5.7% 16px; }
  .book-dialog .book-detail { grid-template-columns:32% minmax(0,1fr); }
  .book-dialog .book-information { padding:0; }
  .book-dialog .book-information h2 { font-size:calc(24px * var(--detail-fit)); margin-bottom:calc(8px * var(--detail-fit)); }
  .book-dialog .review-title { font-size:calc(13px * var(--detail-fit)); }
  .book-dialog #book-description,.book-dialog .book-order-note,.book-dialog .book-values { font-size:calc(11px * var(--detail-fit)); }
  .book-dialog .book-specifications { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 10px; font-size:calc(10px * var(--detail-fit)); margin:calc(10px * var(--detail-fit)) 0; }
  .book-dialog .book-information .preview-trigger { font-size:calc(12px * var(--detail-fit)); padding-top:calc(12px * var(--detail-fit)); }
}
@media(prefers-reduced-motion:reduce) {
  .preview-trigger span { animation:none; }
  .book-dialog > .dialog-close,.reader-dialog > .dialog-close { transition:none; }
}
/* Un mismo escenario rojo animado para el detalle de todos los títulos. */
.book-dialog,.book-dialog[data-book-id="juventud"],.featured-book { isolation:isolate; background:#720700; }
.book-dialog > .book-red-video,.featured-book > .book-red-video {
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  z-index:0; opacity:.9; pointer-events:none;
}
.book-dialog::before,.featured-book::before {
  content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:radial-gradient(ellipse 55% 70% at 43% 52%,#eed6d13d,transparent 78%),
    radial-gradient(ellipse 45% 55% at 78% 17%,#c64c363d,transparent 78%),
    linear-gradient(90deg,#35020a52,transparent 48%,#31000639);
}
.book-dialog > .book-detail,.featured-book > .book-detail { position:relative; z-index:2; }
.book-dialog .cover-stage,.featured-book .cover-stage { position:relative; isolation:isolate; }
.book-dialog .cover-stage::before,.featured-book .cover-stage::before {
  content:''; position:absolute; z-index:0; inset:11% 8% 10%; pointer-events:none;
  background:radial-gradient(ellipse at center,#fff4eed4 0%,#f9d9d48c 23%,#f8b8b038 45%,transparent 72%);
  filter:blur(16px); transform:rotate(-4deg);
}
.book-dialog .detail-cover,.featured-book .detail-cover { position:relative; z-index:1; filter:drop-shadow(-15px 18px 20px #230508b9); }
.book-dialog .book-information h2,.featured-book .book-information h2 { color:#1a0505; text-shadow:0 1px 0 #e7725766; }
.book-dialog .book-information,.featured-book .book-information { color:#fff8f6; }
.book-dialog #book-description,.featured-book .book-review { color:#fff0ed; }
@media(max-width:700px) {
  .book-dialog .cover-stage::before,.featured-book .cover-stage::before { inset:0 12%; filter:blur(10px); }
  .book-dialog .book-information h2,.featured-book .book-information h2 { color:#fff4ef; text-shadow:0 2px 10px #350309aa; }
}
