@font-face{font-family:WenKai;src:url('assets/wenkai-catalog380.woff') format('woff');font-display:swap}
:root{color-scheme:light;--paper:#faf7ed;--ink:#204d43;--muted:#798578;--green:#167e69;--line:#e5e4d5}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#eeeede;color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;-webkit-tap-highlight-color:transparent}
button,input,a{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #d0913a;outline-offset:4px}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}
.shelf-app{max-width:960px;min-height:100dvh;margin:auto;padding:28px 32px 20px;background:radial-gradient(ellipse at 100% 0,#f6e7b953,transparent 35%),var(--paper);box-shadow:0 0 70px #3752420c}
.shelf-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.brand{display:flex;align-items:center;gap:13px}.brand-symbol{width:49px;height:49px;background:#e0eddd;border:1px solid #c8deca;border-radius:15px;display:grid;place-items:center;transform:rotate(-5deg);box-shadow:2px 3px 0 #cbdcc2}.brand-symbol svg{width:28px;height:28px}.brand h1{font-family:WenKai,KaiTi,serif;font-size:31px;font-weight:600;letter-spacing:2px;margin:0 0 5px}.brand p{margin:0;color:var(--muted);font-size:12px;letter-spacing:1px}.library-count{text-align:right;display:grid;gap:5px;color:var(--muted);font-size:10px}.library-count strong{font-family:Georgia,serif;font-size:27px;color:#45806a;letter-spacing:1px}.library-count strong span{font-family:system-ui,sans-serif;font-size:11px;font-weight:400;margin-left:5px;letter-spacing:0}
.search-box{display:flex;align-items:center;min-width:0;height:45px;border:1px solid #d8dfcc;border-radius:13px;background:#fffef8;box-shadow:0 2px 0 #e4e7d6;padding:0 12px;gap:9px;margin-bottom:9px}.search-box>svg{width:19px;color:#608270}.search-box input{width:100%;min-width:0;border:0;outline:0;background:none;height:42px;color:var(--ink);font-size:13px}.search-box input::placeholder{color:#93a18f}.search-box input::-webkit-search-cancel-button{display:none}.search-box:focus-within{border-color:#5ca88b;box-shadow:0 0 0 3px #7baa871d}.search-box button{height:40px;width:32px;padding:0;font-size:23px;color:#76917c}
/* Primary story tabs, then a visibly smaller reading-level filter. */
.filter-dock{position:sticky;top:0;z-index:5;background:#faf7edf7;backdrop-filter:blur(12px);padding:12px 0 14px;border-bottom:1px solid #e1e4d1}
.filter-row{display:flex;align-items:center;gap:12px}.filter-label{flex:0 0 48px;font-size:11px;color:#7d8878;white-space:nowrap;line-height:1.5}.type-row>.filter-label{font-weight:600;color:#4f6f5d}
.category-filters{flex:1;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.category-chip{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:60px;padding:10px;border:1px solid #e4e5d8;border-radius:12px;background:#fffdf7;text-align:center;transition:background .18s,border-color .18s,box-shadow .18s}
.category-symbol{display:grid;place-items:center;width:27px;height:29px;color:var(--accent);flex-shrink:0}.category-symbol svg{width:25px;height:25px}.category-chip strong{font-size:14px;font-weight:500;line-height:1.4;color:#657a6b;white-space:nowrap}
.category-chip[aria-pressed=true]{border-color:var(--linecolor);background:var(--soft);box-shadow:0 3px 0 var(--tint)}.category-chip[aria-pressed=true]:after{content:"";position:absolute;left:calc(50% - 13px);bottom:0;width:26px;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}.category-chip[aria-pressed=true] strong{font-weight:600;color:var(--accent)}
.difficulty-row{margin-top:12px;padding-top:11px;border-top:1px solid #e9e8dc}
.level-filters{display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-width:0}.level-filters button{padding:7px 13px;font-size:12px;white-space:nowrap;border:1px solid transparent;border-radius:20px;min-height:34px;line-height:1.4;color:#82907e}.level-filters [aria-pressed=true]{background:#e1eddf;color:#286650;border-color:#bcd4b7;font-weight:600}
.shelf-content{min-width:0;margin-top:20px}
.continue-reading{display:flex;align-items:center;gap:12px;background:#eaf2e4;border:1px solid #d8e4ce;border-radius:12px;padding:10px 14px;margin:0 0 21px}.continue-reading img{border-radius:3px;box-shadow:1px 2px 3px #436c4930}.continue-reading small{display:block;color:#788c72;font-size:10px;margin-bottom:4px}.continue-reading strong{font-family:WenKai,KaiTi,serif;font-size:17px;font-weight:500}.continue-page{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:12px;white-space:nowrap}.continue-page svg{width:19px}
.results-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin:0 0 19px}.results-heading>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 13px;min-width:0}.results-heading h2{font-family:WenKai,KaiTi,serif;font-size:22px;font-weight:600;margin:0;scroll-margin-top:160px;overflow-wrap:anywhere}.results-heading p{font-size:11px;color:var(--muted);line-height:1.6;margin:0;overflow-wrap:anywhere}.text-button{display:flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap;min-height:36px;color:#70836e;padding:5px 0}
.books-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:27px 21px;padding:5px 6px 22px 8px}.book-card{min-width:0}.book-link{display:block;border-radius:8px;outline-offset:7px}.cover-wrap{display:block;position:relative}.book-cover{display:block;position:relative;container-type:inline-size;aspect-ratio:3/4;border-radius:3px 7px 7px 3px;background:var(--tint);box-shadow:3px 4px 0 #e7e3d6,6px 8px 13px #40533c1a;transition:transform .18s,box-shadow .18s;isolation:isolate;overflow:hidden}.book-cover:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 3px 0 5px #193f3b14,inset -1px 0 0 #ffffff9c;border:1px solid #445b3c10;border-radius:inherit;z-index:2}.book-cover img{display:block;width:100%;height:100%;object-fit:cover}.book-number{position:absolute;left:-8px;top:8px;z-index:3;min-width:27px;padding:4px 3px;border-radius:4px;background:#fffdf3;color:var(--accent);box-shadow:0 2px 5px #25452e18;font-size:9px;font-variant-numeric:tabular-nums;text-align:center;border:1px solid #e5deca}.book-title{display:block;margin:11px 0 4px;font-family:WenKai,KaiTi,serif;font-size:16px;line-height:1.4;font-weight:500;overflow-wrap:anywhere}.book-caption{display:block;font-size:10px;color:#899180;line-height:1.6}
.placeholder-title{font-size:clamp(11px,27cqw,31px)}.placeholder-title.unnamed{font-size:clamp(9px,21cqw,24px)}.placeholder-seal{width:clamp(13px,22cqw,28px);height:clamp(13px,22cqw,28px)}.placeholder-seal svg{width:70%;height:70%}.placeholder-caption{font-size:clamp(5px,6.5cqw,8px);letter-spacing:1px}
.shelf-footnote{padding:12px 0 18px;text-align:center;font-family:WenKai,KaiTi,serif;font-size:14px;line-height:1.7;color:#8a957d}.shelf-footnote small{display:block;font-family:system-ui,sans-serif;font-size:10px;margin-top:7px;color:#9aa28f}.empty-state{min-height:280px;display:grid;place-content:center;text-align:center;gap:10px}.empty-state>span{margin:auto;width:60px;height:60px;display:grid;place-items:center;background:#e6eddc;border-radius:50%;font-size:30px;color:#799472}.empty-state h2{font-size:20px;margin:8px 0 0}.empty-state p{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 10px}.primary-button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:11px 21px;color:#fffdf2;background:#187d67;border-radius:10px;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(hover:hover){.book-link:hover .book-cover{transform:translateY(-4px) rotate(-1deg);box-shadow:3px 5px 0 #e7e3d6,7px 13px 17px #40533c20}.category-chip:hover{background:var(--soft);border-color:var(--linecolor)}}
@media(min-width:621px) and (max-width:799px){.shelf-app{padding-left:24px;padding-right:24px}.category-chip{gap:7px;padding:9px 7px}.category-chip strong{font-size:13px}.books-grid{gap:25px 18px}.book-title{font-size:16px}.book-caption{font-size:9px}}
@media(max-width:620px){
  .shelf-app{padding:22px 12px 14px}.shelf-heading{margin-bottom:14px;padding:0 3px}.brand h1{font-size:27px}.brand-symbol{width:42px;height:42px}.brand{gap:10px}.brand p{font-size:11px}.library-count strong{font-size:25px}.library-count>span{font-size:9px}
  .search-box{height:43px;margin-bottom:6px}.search-box input{height:40px}.filter-dock{padding:10px 0 12px}.filter-row{gap:8px}.filter-label{flex-basis:42px;font-size:10px}.category-filters{gap:6px}.category-chip{flex-direction:column;gap:5px;padding:7px 4px;min-height:62px;border-radius:10px}.category-symbol{width:21px;height:21px}.category-symbol svg{width:20px;height:20px}.category-chip strong{font-size:12px;line-height:1.4}.category-chip[aria-pressed=true]:after{width:20px;left:calc(50% - 10px);height:2px}
  .difficulty-row{margin-top:10px;padding-top:8px}.level-filters{gap:5px}.level-filters button{padding:6px 9px;min-height:32px;font-size:11px}.shelf-content{margin-top:17px}
  .results-heading{gap:8px;min-height:32px;margin-bottom:15px}.results-heading>div{gap:4px 10px}.results-heading h2{font-size:18px;scroll-margin-top:150px}.results-heading p{font-size:9px}.text-button{font-size:10px;min-height:32px}
  .books-grid{gap:22px 10px;padding:4px 3px 16px 5px}.book-cover{border-radius:2px 5px 5px 2px;box-shadow:2px 3px 0 #e7e3d6,3px 5px 8px #40533c16}.book-number{left:-5px;top:5px;min-width:21px;font-size:8px;padding:3px 2px;border-radius:3px}.book-title{font-size:clamp(10px,3.1vw,15px);margin-top:9px;margin-bottom:3px}.book-caption{font-size:clamp(8px,2.1vw,10px)}.placeholder-art{justify-content:center;padding:10% 8% 25%}.placeholder-seal,.placeholder-caption{display:none}
  .continue-reading{gap:8px;padding:8px;margin-bottom:16px;border-radius:10px}.continue-reading img{width:27px;height:36px}.continue-reading small{font-size:8px;margin-bottom:3px}.continue-reading strong{font-size:13px}.continue-page{gap:3px;font-size:9px}.continue-page svg{width:14px;height:14px}
  .shelf-footnote{font-size:11px;padding-top:8px}.shelf-footnote small{font-size:8px}.empty-state{min-height:250px}.empty-state h2{font-size:16px}.empty-state p{font-size:10px}.primary-button{font-size:12px}
}
@media(max-width:359px){.shelf-app{padding-left:9px;padding-right:9px}.filter-row{gap:7px}.filter-label{flex-basis:40px;font-size:9.5px}.category-chip{padding:7px 3px}.category-chip strong{font-size:11px}.level-filters{gap:4px}.level-filters button{padding-left:7px;padding-right:7px}.books-grid{column-gap:8px}.brand h1{font-size:24px}.library-count strong{font-size:22px}.results-heading h2{font-size:16px}.book-number{font-size:7px;min-width:19px}.continue-page{font-size:8px}.continue-page svg{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Illustrated collections, warm paper and a clear route to downloads. */
.shelf-app{background:radial-gradient(ellipse at 95% 0,#ffe7a454,transparent 32%),radial-gradient(ellipse at 0 50%,#e7efd841,transparent 52%),#fffaf0}.brand-symbol{position:relative;background:#e9efcf;border-color:#c6d9a5;box-shadow:3px 4px 0 #ceddb2}.brand-symbol:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#e7a65b;right:-4px;top:-4px;box-shadow:0 0 0 4px #fffaf0}.brand h1{color:#285f4c;letter-spacing:3px}.brand p{color:#90a080}
.shelf-header-actions{display:flex;align-items:center;gap:19px}.shelf-header-actions .library-count{display:flex;align-items:baseline;gap:7px;font-size:10px}.shelf-header-actions .library-count strong{font-size:24px;color:#7b956c}.shelf-header-actions .library-count strong span{font-size:10px}.shelf-download{display:flex;align-items:center;justify-content:center;gap:7px;min-height:43px;padding:10px 15px;border:1px solid #d7b875;border-radius:13px;background:#fff0c4;color:#95652e;box-shadow:0 3px 0 #e8d6a4;font-size:12px;white-space:nowrap}.shelf-download svg{width:18px;height:18px}.shelf-download:hover{background:#ffe9ad}
.filter-dock{background:#fffaf0f5;border-bottom-color:#dddcc4}.search-box{background:#fffef9;border-color:#d8dec4;box-shadow:0 3px 0 #e8ead8}.filter-label{color:#9a987c}.type-row>.filter-label{color:#6b7d59}.category-chip{overflow:visible;background:linear-gradient(135deg,var(--soft),#fffdf6 85%);border-color:#e4e4d1;box-shadow:0 2px 0 #e8e5d545;min-height:68px;gap:11px}.category-symbol{width:43px;height:43px;border-radius:14px 18px 13px 10px;background:var(--tint);transform:rotate(-4deg);box-shadow:inset 0 0 0 1px #fff9}.category-symbol svg.category-art{width:37px;height:37px;stroke-width:1.65;transform:rotate(4deg)}.category-chip strong{font-family:WenKai,KaiTi,serif;font-size:17px;color:#6b7a63}.category-chip[aria-pressed=true]{background:linear-gradient(125deg,var(--tint),var(--soft));border-color:var(--accent);box-shadow:0 4px 0 var(--linecolor),0 6px 14px #4f60300b}.category-check{position:absolute;top:-5px;right:7px;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--accent);border:2px solid #fffaf0;color:#fffdf1;font-size:9px;opacity:0}.category-chip[aria-pressed=true] .category-check{opacity:1}.category-chip[aria-pressed=true]:after{width:28px;left:calc(50% - 14px);background:var(--accent)}.difficulty-row{border-top-color:#eae5ce}.level-filters [aria-pressed=true]{background:#e5efcf;border-color:#bbd19f;color:#466e3e}
.results-heading{gap:10px;margin-bottom:20px;padding-top:1px}.collection-emblem{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;border-radius:11px 7px 11px 7px;background:var(--tint);color:var(--accent);border:1px solid var(--linecolor);transform:rotate(-4deg)}.collection-emblem svg{width:29px;height:29px;stroke-width:1.7;transform:rotate(4deg)}.results-heading>div{flex:1}.results-heading h2{color:var(--accent)}.results-heading p{color:#92967b}.books-grid{row-gap:30px}.book-cover{box-shadow:3px 4px 0 #e5dfc9,5px 9px 15px #475b321a}.book-number{background:#fffbed;border-color:#dfd4ac;color:var(--accent)}.book-title{color:#365e47}.shelf-footnote{color:#8a9b72}
@media(min-width:621px) and (max-width:799px){.category-chip{gap:7px;padding-left:6px;padding-right:6px}.category-chip strong{font-size:14px}.category-symbol{width:34px;height:35px;border-radius:11px}.category-symbol svg.category-art{width:30px;height:30px}.shelf-header-actions{gap:12px}.shelf-header-actions .library-count{display:grid;gap:0}.shelf-download{font-size:11px;padding-left:12px;padding-right:12px}}
@media(max-width:620px){.shelf-heading{gap:10px}.shelf-header-actions{flex-direction:column-reverse;gap:8px;align-items:flex-end}.shelf-header-actions .library-count{gap:5px;font-size:8px}.shelf-header-actions .library-count strong{font-size:17px;line-height:1}.shelf-header-actions .library-count strong span{font-size:8px}.shelf-download{min-height:36px;border-radius:11px;padding:7px 11px;font-size:11px;gap:5px}.shelf-download svg{width:16px;height:16px}.category-chip{min-height:73px;gap:5px;padding-top:7px;padding-bottom:8px}.category-symbol{width:31px;height:30px;border-radius:10px 12px 9px 8px}.category-symbol svg.category-art{width:28px;height:28px;stroke-width:1.7}.category-chip strong{font-size:12.5px}.category-check{width:14px;height:14px;right:3px;top:-5px;font-size:8px}.category-chip[aria-pressed=true]{box-shadow:0 3px 0 var(--linecolor)}.results-heading{margin-bottom:15px;gap:8px}.collection-emblem{width:29px;height:29px;border-radius:9px 6px}.collection-emblem svg{width:23px;height:23px}.results-heading h2{font-size:17px}.results-heading p{font-size:8.5px}.books-grid{row-gap:24px}}
@media(max-width:359px){.brand h1{font-size:23px;letter-spacing:1px}.brand-symbol{width:36px;height:39px}.shelf-header-actions .library-count{font-size:8px}.shelf-download{font-size:10px;padding-left:8px;padding-right:8px}.category-chip strong{font-size:11px}.collection-emblem{width:25px;height:25px}.collection-emblem svg{width:21px;height:21px}.results-heading h2{font-size:15px}}

/* The same covers become checkable, without changing the shelf or its filters. */
.selecting-books .shelf-app{padding-bottom:260px}.shelf-download[aria-pressed=true]{background:#fffdf5;box-shadow:0 2px 0 #eadfc7}.shelf-download:disabled{opacity:.65;cursor:wait}
.selection-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;padding:11px 13px;margin:-2px 0 18px;border:1px dashed #e4c993;border-radius:12px;background:#fff8e7;font-size:11px;color:#96764b}.selection-toolbar>label{display:flex;align-items:center;gap:7px;min-height:26px;cursor:pointer;color:#79572f}.selection-toolbar input{margin:0;width:17px;height:17px;accent-color:#be803b}.selection-toolbar>button{margin-left:auto;font-size:11px;min-height:30px;color:#987750}.selection-toolbar>button:disabled{opacity:.4;cursor:default}
.book-choice{position:relative;cursor:pointer}.book-checkbox{position:absolute;opacity:0;width:1px;height:1px;margin:0}.book-selection-mark{position:absolute;z-index:4;top:7px;right:5px;width:25px;height:25px;display:grid;place-items:center;border:2px solid #d4b47b;border-radius:50%;background:#fffef5;box-shadow:0 2px 4px #8c642b23;pointer-events:none}.book-selection-mark svg{width:16px;height:16px;stroke-width:2.4;color:transparent}.book-checkbox:checked~.cover-wrap .book-selection-mark{background:#bd7b32;border-color:#fff6d9;box-shadow:0 0 0 2px #bd7b32}.book-checkbox:checked~.cover-wrap .book-selection-mark svg{color:#fff9e8}.book-checkbox:checked~.cover-wrap .book-cover{outline:3px solid #ce9b55;outline-offset:3px}.book-checkbox:focus-visible~.cover-wrap{outline:3px solid #c07e2d;outline-offset:6px;border-radius:6px}.selection-unavailable{cursor:default}.selection-unavailable .book-cover{opacity:.64}.selection-unavailable:hover .book-cover{transform:none}
.selection-bar{position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:15;width:min(100%,960px);padding:14px 30px max(14px,env(safe-area-inset-bottom));border-top:1px solid #e4d9bf;background:#fffaf0f7;backdrop-filter:blur(12px);box-shadow:0 -8px 28px #8062350c}.selection-bottom-row{display:flex;align-items:center;gap:12px}.selection-count{margin-right:auto;min-width:0}.selection-count strong{display:block;font-size:14px;font-weight:600;color:#695337}.selection-count small{display:block;font-size:10px;line-height:1.6;color:#9a896d;margin-top:5px}.selection-buttons{display:flex;align-items:center;gap:10px;flex-shrink:0}.selection-exit{font-size:12px;min-height:44px;padding:8px;color:#8b7b63}.selection-download{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:139px;padding:11px 17px;border:1px solid #d2a86b;border-radius:12px;background:linear-gradient(135deg,#ffe6ae,#fff1cf);box-shadow:0 3px 0 #ead3a6;color:#805524;font-size:13px;font-weight:500}.selection-download:disabled{background:#efeadf;border-color:#e2dbcc;color:#aaa18e;box-shadow:none;cursor:default}
.selection-progress{max-height:38dvh;overflow:auto;padding:0 0 12px;margin:0 0 12px;border-bottom:1px solid #e9dfc9}.selection-progress p{font-size:12px;line-height:1.7;color:#8b724d;margin:0 0 8px}.selection-progress progress{display:block;width:100%;height:6px;accent-color:#c68e44;margin:8px 0 10px}.package-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px}.save-download{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border-radius:8px;background:#f7e5bd;border:1px solid #e3c88f;font-size:11px;color:#89612f}.package-actions button{font-size:11px;color:#8e733d;min-height:36px;padding:7px 0;text-decoration:underline;text-underline-offset:3px}
@media(max-width:620px){.selection-toolbar{padding:8px 10px;gap:5px 9px;font-size:10px;margin-bottom:17px}.selection-toolbar>button{font-size:10px}.book-selection-mark{top:3px;right:2px;width:20px;height:20px;border-width:1.5px}.book-selection-mark svg{width:13px;height:13px}.book-checkbox:checked~.cover-wrap .book-cover{outline-width:2px;outline-offset:2px}.selection-bar{padding:12px 15px max(12px,env(safe-area-inset-bottom))}.selection-bottom-row{gap:8px}.selection-count strong{font-size:13px}.selection-count small{font-size:9px;max-width:135px}.selection-buttons{gap:5px}.selection-exit{font-size:11px;padding:7px 6px}.selection-download{font-size:12px;min-width:120px;padding:10px 12px}.selection-progress p{font-size:11px}.selecting-books .shelf-app{padding-bottom:250px}}
@media(max-width:359px){.selection-bar{padding-left:10px;padding-right:10px}.selection-count strong{font-size:12px}.selection-count small{font-size:8px;max-width:105px}.selection-download{min-width:108px;padding-left:9px;padding-right:9px}.selection-toolbar{gap:4px 7px}.selection-toolbar>span{font-size:9px}.book-selection-mark{width:18px;height:18px;right:1px;top:2px}}
/* Compact subtitle cards: preserve full text in the DOM, clamp visually only. */
.books-grid{row-gap:18px}
.book-title{margin-top:8px;margin-bottom:3px}
.book-caption{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;line-height:1.45;min-height:2.9em;color:#78816e}
#shelfResults{scroll-margin-top:112px}
@media(max-width:620px){.books-grid{row-gap:12px}.book-title{margin-top:6px;margin-bottom:2px}.book-caption{font-size:9px}.shelf-content{margin-top:12px}.results-heading{margin-bottom:11px}}
