.book-detail-card{margin-top:-4px}

.book-page-header{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin:6px 14px -4px;
}

.book-page-heading{margin:0}

.home-link{
  flex:0 0 auto;
  color:#7272FF;
  font-size:15px;
  font-weight:700;
  text-decoration:underline;
}


.download-heading{
  margin:0 0 14px;
  color:var(--text);
  font-size:25px;
  font-weight:800;
}

.download-label{
  margin:0 0 10px;
  font-size:15px;
}

.litres-card .section{padding:16px}

.litres-card p{
  margin:0;
  line-height:1.5;
}

.litres-button{
  display:flex;
  min-height:56px;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-top:14px;
  padding:10px 14px;
  border-radius:14px;
  background:var(--button);
  color:#fff;
  font-weight:800;
  text-decoration:none;
}

.litres-button:hover,
.litres-button:focus-visible{background:var(--button-hover)}

.litres-button:focus-visible{outline:2px solid #fff;outline-offset:2px}

.litres-button img{
  display:block;
  width:116px;
  max-width:42%;
  height:24px;
}

.download-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.format-button{
  display:flex;
  min-height:72px;
  align-items:center;
  gap:10px;
  padding:10px;
  border-radius:14px;
  border:0;
  background:var(--button);
  color:#fff;
  font-weight:800;
  text-decoration:none;
}

.read-book-button{
  width:50%;
  box-sizing:border-box;
  margin:0 auto;
  justify-content:center;
}

.format-button:hover,
.format-button:focus-visible{background:var(--button-hover)}

.format-button svg{
  width:42px;
  height:42px;
  flex:0 0 42px;
  fill:none;
  stroke:#fff;
  stroke-width:2.5;
  stroke-linejoin:round;
}

.format-button text{
  fill:#fff;
  stroke:none;
  font-family:Arial,sans-serif;
  font-size:13px;
  font-weight:800;
  text-anchor:middle;
}

.format-button[data-book-download="docx"] svg{stroke:#2B579A}
.format-button[data-book-download="docx"] text{fill:#2B579A}

.format-button[data-book-download="pdf"] svg{stroke:#E1251B}
.format-button[data-book-download="pdf"] text{fill:#E1251B}

.format-button[data-book-download="fb2"] svg{stroke:#5B6FBE}
.format-button[data-book-download="fb2"] text{fill:#5B6FBE}

.format-button[data-book-download="epub"] svg{stroke:#5B9E3B}
.format-button[data-book-download="epub"] text{fill:#5B9E3B}

.audio-card .section{padding:16px}
.audio-card p{margin:0;line-height:1.5}
.audio-disclaimer-label{color:#ff5555;font-weight:800;white-space:nowrap}
.audio-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.audio-button{
  display:flex;min-height:56px;align-items:center;justify-content:center;
  gap:9px;padding:10px 12px;border:0;border-radius:14px;
  background:var(--button);color:#fff;font:inherit;font-weight:800;
  text-align:center;text-decoration:none;cursor:pointer;
}
.audio-button:hover,.audio-button:focus-visible{background:var(--button-hover)}
.audio-button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.audio-button svg{
  width:22px;height:22px;flex:0 0 22px;fill:none;stroke:#ed872d;
  stroke-width:2;stroke-linecap:round;stroke-linejoin:round;
}
.audio-player{display:block;width:100%;margin-top:14px}
.audio-player[hidden]{display:none}
.audio-error{margin-top:10px!important;color:#ffb6b6;font-size:14px}
@media(max-width:380px){.audio-actions{grid-template-columns:1fr}}

.reader-contact-card .section{padding:16px}

.reader-contact-card p{
  margin:0;
  line-height:1.5;
}

.reader-contact-form{margin-top:14px}

.reader-contact-form > label:first-of-type{
  display:block;
  margin-bottom:7px;
  color:var(--text);
  font-size:14px;
  font-weight:700;
}

.reader-contact-form textarea{
  display:block;
  width:100%;
  min-height:112px;
  padding:11px 12px;
  border:1px solid #555;
  border-radius:12px;
  background:#242424;
  color:var(--text);
  font:inherit;
  line-height:1.4;
  resize:vertical;
}

.reader-contact-form textarea:focus-visible,
.reader-contact-form button:focus-visible,
.reader-contact-card a:focus-visible{
  outline:2px solid #fff;
  outline-offset:2px;
}

.reader-consent{
  display:grid;
  grid-template-columns:20px 1fr;
  gap:9px;
  align-items:start;
  margin-top:13px;
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
}

.reader-consent input{
  width:18px;
  height:18px;
  margin:1px 0 0;
}

.reader-contact-form button{
  width:100%;
  margin-top:14px;
  padding:11px 14px;
  border:2px solid #ed872d;
  border-radius:12px;
  background:var(--button);
  color:var(--text);
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

.reader-contact-form button:hover,
.reader-contact-form button:focus-visible{background:var(--button-hover)}

.reader-contact-form[aria-busy="true"]{opacity:.7}

.reader-consent a{color:#7272FF}

.reader-contact-status{
  margin-top:14px;
  padding:12px;
  border:1px solid #486a53;
  border-radius:12px;
  background:#1c2a20;
  color:var(--text);
  font-size:14px;
  line-height:1.45;
}

.reader-contact-status.error{
  border-color:#744747;
  background:#2b1d1d;
  color:#ffb6b6;
}

.reader-contact-status[hidden]{display:none}

.book-hp-field{
  position:absolute;
  left:-10000px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.author-card{
  display:grid;
  grid-template-columns:1fr 25%;
  align-items:stretch;
  overflow:hidden;
}

.author-copy{padding:14px}

.author-copy p{
  margin:0;
  line-height:1.5;
}

.author-photo{
  min-height:184px;
  background:#000;
}

.author-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

@media (max-width:380px){
  .book-page-heading{font-size:20px}
  .home-link{font-size:14px}
  .download-grid{grid-template-columns:1fr}
  .author-photo{min-height:160px}
}
