.books-table{--h:48px;--a:8rem;--s:4rem;--top:var(--ft-site-header,48px);margin:.8rem 0 1.5rem}
@media(max-width:700px){.books-table{--a:6.5rem;--s:3.5rem}}

.ft-head,.books-table th{position:sticky;background:var(--md-default-bg-color--light);backdrop-filter:blur(.4rem)}
.ft-head{top:var(--top);z-index:2;display:grid;grid-template-columns:1fr var(--a) var(--s);align-items:center;height:var(--h);border-bottom:2px solid var(--md-default-fg-color--light);font-size:.8rem;font-weight:700}

.books-table table{width:100%;table-layout:fixed;border-spacing:0}
.books-table :is(span,th,td){padding:.65rem .5rem}
.books-table :is(th,td){border-bottom:1px solid var(--md-default-fg-color--lightest);font-weight:400;text-align:left;vertical-align:middle}
.books-table :is(span,th,td):nth-child(2){width:var(--a);padding-inline:.4rem;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.books-table :is(span,th,td):nth-child(3){width:var(--s);text-align:center}

.books-table th{top:calc(var(--top) + var(--h));z-index:1;padding-bottom:.25rem;border:0;box-shadow:0 1px var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);font-size:.6rem}
.books-table td{transition:background .15s}
.books-table tr:hover>td{background:var(--md-default-fg-color--lightest)}
.books-table tr:last-child>td{border:0}
.books-table small{display:block;margin-top:.2rem;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.books-table svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.books-table .todo{color:var(--md-default-fg-color--light);opacity:.9}
.books-table .done svg{color:#4caf50}
.books-table .reading svg{color:var(--md-primary-fg-color);animation:r 5s linear infinite}
@keyframes r{to{rotate:1turn}}