.filterbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:40;background:#fbfaf6eb;position:sticky;top:0}.filterbar .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:18px 0;display:flex}.filterbar .chips{flex-wrap:wrap;gap:8px;display:flex}.filterbar .chip{border:1px solid var(--line-2);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:9px 18px;font-size:13px;font-weight:500;transition:all .2s}.filterbar .chip.on,.filterbar .chip:hover{background:var(--green-700);color:#fff;border-color:var(--green-700)}.filterbar .total{color:var(--muted);font-size:13px;font-weight:600}.filterbar .total strong{color:var(--green-700)}.library{padding:100px 0 140px}.lib-grid{grid-template-columns:repeat(5,1fr);gap:32px;display:grid}.book{cursor:pointer;flex-direction:column;transition:transform .25s;display:flex}.book:hover{transform:translateY(-6px)}.book .cover{aspect-ratio:3/4;background:var(--paper-3);border-radius:10px;position:relative;overflow:hidden;box-shadow:8px 8px 28px #0a14102e,0 2px 4px #0a14101a}.book .cover img{object-fit:cover;width:100%;height:100%;display:block}.book .cover .overlay{opacity:0;background:linear-gradient(#0000 55%,#0a1410b3 100%);transition:opacity .25s;position:absolute;inset:0}.book:hover .cover .overlay{opacity:1}.book .cover .dl-btn{opacity:0;background:var(--yellow-400);color:var(--green-900);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:700;transition:all .25s;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)translateY(8px)}.book:hover .cover .dl-btn{opacity:1;transform:translate(-50%)translateY(0)}.book .cover .cat{letter-spacing:.14em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:6px;padding:5px 10px;font-size:10px;font-weight:700;display:none;position:absolute;top:12px;left:12px}.book .cover .cat.g{color:#fff;background:#0e5b2ee0}.book .cover .cat.b{color:#fff;background:#2868c7e0}.book .cover .cat.y{color:var(--green-900);background:#f5c518f2}.book .info{padding:18px 4px 0}.book .info .title{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);margin-bottom:6px;font-size:18px;font-weight:500;line-height:1.15}.book .info .desc{color:var(--ink-soft);margin-bottom:14px;font-size:13px;line-height:1.5}.book .info .dl-link{color:var(--green-700);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.book .info .dl-link:hover{color:var(--green-900)}.featured{padding:0 0 80px}.sdiv{align-items:center;gap:24px;padding:0 0 48px;display:flex}.sdiv h2{font-family:var(--serif);letter-spacing:-.015em;white-space:nowrap;font-size:36px;font-weight:300}.sdiv h2 .em{color:var(--green-700);font-style:italic}.sdiv .line{background:var(--line);flex:1;height:1px}.sdiv .cnt{color:var(--muted);letter-spacing:.04em;white-space:nowrap;font-size:13px;font-weight:600}@media (max-width:860px){.filterbar .row{flex-direction:column;align-items:flex-start;gap:12px}.filterbar .chips{flex-wrap:wrap}.lib-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:600px){.lib-grid{grid-template-columns:repeat(2,1fr)}}
