/* ============================================================
   THE e-SHOP
   ------------------------------------------------------------
   A shelf of free files rather than a shop aisle. Almost none
   of these titles has a cover, so the card leads with what the
   file actually is -- PDF, DOC -- on a tinted tile the same
   shape a cover would be. The one title that does have a cover
   drops straight into the same slot, so a mixed shelf still
   lines up.
   ============================================================ */

/* ---------- the hero ---------- */
body.bookzilla-site .bz-eshop__hero{padding-block:clamp(44px,6vw,76px)}
body.bookzilla-site .bz-eshop__hero h1{
  color:#fff;max-width:16ch;margin:.3rem 0 0;
}
body.bookzilla-site .bz-eshop__hero .bz-sec-sub{
  max-width:58ch;margin:.9rem 0 0;font-size:1.02rem;line-height:1.65;
  color:rgba(255,255,255,.86);
}

.bz-eshop__facts{
  display:flex;flex-wrap:wrap;gap:.5rem;
  margin:1.5rem 0 0;padding:0;list-style:none;
}
.bz-eshop__facts li{
  display:inline-flex;align-items:center;gap:.45rem;
  padding:.45rem .85rem;border-radius:var(--bz-r-pill);
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;font-size:.85rem;font-weight:650;
}
.bz-eshop__facts svg{width:15px;height:15px;flex:none;opacity:.9}

/* ---------- the body ---------- */
.bz-eshop__body{padding-block:clamp(28px,4vw,48px)}
.bz-eshop__empty{color:var(--bz-muted);font-size:1rem}

/* ---------- filter bar ---------- */
.bz-eshop__bar{
  display:flex;flex-wrap:wrap;align-items:center;gap:1rem;
  justify-content:space-between;
  padding-bottom:1.1rem;margin-bottom:1.6rem;
  border-bottom:1px solid var(--bz-line);
}
.bz-eshop__pills{flex:1 1 420px;min-width:0}
body.bookzilla-site .bz-eshop__pills .bz-pill{
  gap:.45rem;font-size:.86rem;
}
body.bookzilla-site .bz-eshop__pills .bz-pill.is-on{
  background:var(--bz-teal);border-color:var(--bz-teal);color:#fff;
}
body.bookzilla-site .bz-eshop__pills .bz-pill.is-on:hover{
  background:var(--bz-teal-600);border-color:var(--bz-teal-600);color:#fff;
}
.bz-eshop__n{
  display:inline-grid;place-items:center;min-width:19px;height:19px;
  padding:0 5px;margin-left:.15rem;border-radius:var(--bz-r-pill);
  background:var(--bz-surface-2);color:var(--bz-muted);
  font-size:11px;font-weight:800;
}
body.bookzilla-site .bz-pill.is-on .bz-eshop__n{
  background:rgba(255,255,255,.2);color:#fff;
}

.bz-eshop__find{
  position:relative;display:flex;align-items:center;
  flex:0 1 300px;min-width:220px;
}
.bz-eshop__find svg{
  position:absolute;left:.85rem;width:17px;height:17px;
  color:var(--bz-muted-2);pointer-events:none;
}
body.bookzilla-site .bz-eshop__find input{
  width:100%;min-height:44px;
  padding:.55rem .9rem .55rem 2.5rem;
  border:1px solid var(--bz-line-2);border-radius:var(--bz-r-pill);
  background:#fff;font-family:var(--bz-ff);font-size:.9rem;color:var(--bz-ink);
  box-shadow:none;outline:0;
}
body.bookzilla-site .bz-eshop__find input:focus{
  border-color:var(--bz-teal);box-shadow:0 0 0 3px rgba(14,110,107,.14);
}

/* ---------- sections ---------- */
.bz-eshop__sec + .bz-eshop__sec{margin-top:2.6rem}
.bz-eshop__sechead{
  display:flex;align-items:baseline;gap:.7rem;margin-bottom:1rem;
}
body.bookzilla-site .bz-eshop__sechead h2{
  font-size:1.32rem;letter-spacing:-.02em;margin:0;
}
.bz-eshop__sechead p{
  margin:0;font-size:.8rem;font-weight:650;color:var(--bz-muted-2);
}
.bz-eshop__none{
  margin:2.5rem 0;text-align:center;color:var(--bz-muted);font-size:.95rem;
}

.bz-eshop__grid{
  display:grid;gap:14px;
  grid-template-columns:repeat(auto-fill,minmax(330px,1fr));
}

/* ---------- a title ---------- */
.bz-dcard{
  display:grid;grid-template-columns:84px 1fr;gap:1rem;
  padding:1rem;
  background:#fff;border:1px solid var(--bz-line);border-radius:var(--bz-r);
  transition:border-color var(--bz-t1),box-shadow var(--bz-t1),transform var(--bz-t1);
}
.bz-dcard:hover{
  border-color:var(--bz-line-2);box-shadow:var(--bz-sh);transform:translateY(-2px);
}

.bz-dcard__media{
  display:grid;place-items:center;
  aspect-ratio:3/4;border-radius:var(--bz-r-sm);overflow:hidden;
  background:var(--bz-orange-50);color:var(--bz-orange-700);
}
.bz-dcard__media img{width:100%;height:100%;object-fit:cover;display:block}
.bz-dcard__kind{
  font-family:var(--bz-ff-d);font-size:.78rem;font-weight:800;
  letter-spacing:.06em;
}
.bz-dcard__media--pdf{background:var(--bz-rose-50);color:#9F1046}
.bz-dcard__media--doc{background:var(--bz-blue-50);color:var(--bz-blue-700)}
.bz-dcard__media--xls{background:var(--bz-green-50);color:#0A6B4A}
.bz-dcard__media--epub,
.bz-dcard__media--mobi{background:var(--bz-purple-50);color:var(--bz-purple)}

.bz-dcard__b{display:flex;flex-direction:column;min-width:0}
body.bookzilla-site .bz-dcard__t{
  font-size:.99rem;font-weight:750;line-height:1.32;
  letter-spacing:-.01em;margin:0 0 .3rem;
}
body.bookzilla-site .bz-dcard__t a:hover{color:var(--bz-teal)}
.bz-dcard__d{
  margin:0 0 .5rem;font-size:.84rem;line-height:1.55;color:var(--bz-muted);
}

.bz-dcard__m{
  display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;
  margin:0 0 .8rem;font-size:.76rem;font-weight:600;color:var(--bz-muted-2);
}
.bz-dcard__m span + span::before{content:"\00B7";margin-right:.4rem}
.bz-dchip{
  padding:.15rem .45rem;border-radius:var(--bz-r-xs);
  background:var(--bz-surface-2);color:var(--bz-ink-2);
  font-size:10.5px;font-weight:800;letter-spacing:.05em;
}
.bz-dcard__m .bz-dchip + span::before{content:""; margin:0}

.bz-dcard__a{margin-top:auto}
body.bookzilla-site .bz-dcard__a .bz-btn{min-height:42px;font-size:.88rem}
body.bookzilla-site .bz-dcard__a .bz-btn svg{width:16px;height:16px}

.bz-dcard__src{
  display:flex;align-items:center;gap:.35rem;
  margin:.55rem 0 0;font-size:.72rem;color:var(--bz-muted-2);
}
.bz-dcard__src svg{width:13px;height:13px;flex:none}

.bz-dcard__warn{
  display:flex;align-items:flex-start;gap:.4rem;
  margin:.6rem 0 0;padding:.5rem .6rem;border-radius:var(--bz-r-xs);
  background:var(--bz-amber-50);color:#8A4B06;
  font-size:.72rem;line-height:1.45;
}
.bz-dcard__warn svg{width:14px;height:14px;flex:none;margin-top:1px}
.bz-dcard__warn span{display:block;opacity:.75;font-weight:700}

/* ---------- the closing ask ---------- */
.bz-eshop__ask{text-align:center}
body.bookzilla-site .bz-eshop__ask .bz-sec-sub{
  max-width:52ch;margin-inline:auto;
}
.bz-eshop__askrow{
  display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;margin-top:1.5rem;
}

/* ---------- narrow ---------- */
@media(max-width:640px){
  .bz-eshop__grid{grid-template-columns:1fr}
  .bz-eshop__bar{gap:.8rem}
  .bz-eshop__find{flex:1 1 100%}
  .bz-dcard{grid-template-columns:68px 1fr;gap:.85rem}
}
