.books-page .jp span{display:block}
.books-page .jp i{font-style:normal;display:inline-block}
.books-page .pr{display:inline-block;margin-left:6px;padding:0 6px;border:1px solid rgba(176,141,87,.6);border-radius:4px;font-size:10px;letter-spacing:.1em;color:var(--brass);vertical-align:middle}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 6px;padding:0;list-style:none}
.toc a{display:block;padding:5px 12px;border:1px solid rgba(176,141,87,.45);border-radius:999px;font-size:12.5px;color:var(--cream);text-decoration:none}
.sh{margin:34px 0 10px;scroll-margin-top:60px}
.sh h2{font-size:18px;letter-spacing:.08em;color:var(--gold);margin:0 0 12px}
.stand{position:relative;container-type:inline-size;height:clamp(140px,38vw,220px);border-radius:3px;overflow:hidden;margin:0 0 18px;
 background:linear-gradient(180deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.2) 22%,rgba(0,0,0,0) 45%,rgba(0,0,0,.35) 100%),url(/books/wall.webp) 50% 20%/cover,#24170d;
 box-shadow:0 10px 22px rgba(0,0,0,.6),inset 0 0 22px rgba(0,0,0,.6)}
.plank{position:absolute;left:0;right:0;bottom:0;height:21%;background:url(/books/plank.webp) center top/100% 100%,#4a2f1a;box-shadow:0 -10px 16px rgba(0,0,0,.45)}
.row{position:absolute;left:0;right:0;bottom:17.5%;z-index:1;display:flex;justify-content:safe center;align-items:flex-end;gap:min(2.8cqw,18px);padding:0 10px;overflow-x:auto;scrollbar-width:none}
.row::-webkit-scrollbar{display:none}
.vol{flex:0 0 auto;width:min(13cqw,84px);aspect-ratio:2/3;display:block}
.vol__c{position:relative;display:block;width:100%;height:100%;border-radius:1px 3px 3px 1px;background:#1a1510;box-shadow:2px 0 0 #120d08,3px 1px 0 rgba(216,204,180,.35),5px 4px 8px rgba(0,0,0,.65);transition:transform .25s ease}
.vol:hover .vol__c,.vol:focus-visible .vol__c{transform:translateY(-6px)}
.vol__c::before{content:"";position:absolute;z-index:1;top:0;bottom:0;left:0;width:5px;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(255,255,255,.12) 60%,rgba(0,0,0,.15))}
.vol__img,.bk2__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.vol__txt,.bk2__txt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:6px 5px;overflow:hidden;text-align:center;box-shadow:inset 0 0 0 3px rgba(0,0,0,.2),inset 0 0 0 4px rgba(255,214,140,.3)}
.vol__txt b{font-size:clamp(8.5px,2.45cqw,13px);line-height:1.4;color:var(--gold);word-break:break-all;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
.vol__txt small{display:none}
.bk2__txt b{font-size:13px;line-height:1.5;color:var(--gold)}
.bk2__txt small{font-size:10px;color:var(--brass)}
.t0{background:#2b3a4a}.t1{background:#4a2b33}.t2{background:#2f4436}.t3{background:#4a3d26}.t4{background:#3a2f4a}.t5{background:#24414a}.t6{background:#4a2f24}.t7{background:#353a2a}
.bk2{display:grid;grid-template-columns:104px 1fr;gap:6px 16px;padding:18px 0;border-top:1px dashed rgba(176,141,87,.25);scroll-margin-top:60px}
.bk2__cover{position:relative;display:block;aspect-ratio:2/3;border-radius:3px;overflow:hidden;background:#1a1510;box-shadow:0 8px 22px rgba(0,0,0,.55),0 0 0 1px rgba(176,141,87,.4)}
.bk2__name{margin:0;font-size:17px;line-height:1.5;color:var(--cream)}
.bk2__by{margin:2px 0 8px;font-size:12px;color:var(--brass)}
.bk2__note{margin:0;font-size:14px;line-height:1.9}
.bk2__from{margin:6px 0 0;font-size:11px;letter-spacing:.2em;color:var(--brass);text-align:right}
.bk2__nights{grid-column:1/-1;margin-top:6px}
.bk2__nights p{margin:0 0 6px;font-size:11.5px;letter-spacing:.1em;color:var(--brass)}
.bk2__nights ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.bk2__nights a{display:block;padding:3px 10px;border:1px solid rgba(176,141,87,.35);border-radius:999px;font-size:12px;color:var(--cream);text-decoration:none}
.bk2__btns{grid-column:1/-1;display:flex;gap:10px;margin-top:8px}
.bk2__btns a{flex:1;display:block;padding:10px 6px;text-align:center;border:1px solid rgba(176,141,87,.6);border-radius:999px;color:var(--gold);font-size:13.5px;letter-spacing:.06em;text-decoration:none}
.note-small{font-size:11.5px;opacity:.7;line-height:1.8}
@media (max-width:380px){.bk2{grid-template-columns:88px 1fr}}
