.enemy-book{color:#574c48;background:linear-gradient(100deg,#d3b585,#eee0bd 44%,#e1c99f);border:7px solid #6b4d40;border-radius:15px;box-shadow:inset 0 0 0 2px #d3b177,0 7px 0 #423d3b;overflow:hidden;max-width:1100px;margin:auto}
.enemy-book-head{display:flex;align-items:center;gap:16px;padding:16px 22px;background:repeating-linear-gradient(3deg,#785343 0 14px,#805b49 15px 18px,#785343 20px 33px);color:#f2dfb9;border-bottom:3px solid #b99969;flex-wrap:wrap}
.enemy-book-head h2{margin:4px 0;font-size:26px;color:inherit}.enemy-book-head small{letter-spacing:.15em}.enemy-book-head>span{margin-left:auto;font-size:14px}.enemy-book-head button{min-height:44px}
.enemy-book-body{display:grid;grid-template-columns:260px minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:65dvh;min-height:0;max-height:65dvh}
.enemy-book-index{padding:16px;overflow:auto;border-right:8px double #a88760;background:repeating-linear-gradient(0deg,#d8c39e 0 31px,#cdb88f 32px,#d8c39e 33px)}
.enemy-book-index h3{font-size:16px;margin:0 0 14px}.enemy-book-index button{display:block;width:100%;text-align:left;margin:7px 0;min-height:44px;background:#e9d8b6;border-color:#ae916c;color:#66546a}.enemy-book-index button.selected{background:#b1c5bb;box-shadow:inset 4px 0 #617c79,0 3px #81978d}
.enemy-book-page{position:relative;overflow:auto;padding:22px 28px;background:linear-gradient(90deg,#baa27a55,transparent 22px),repeating-linear-gradient(0deg,transparent 0 27px,#ae976913 28px,transparent 29px)}
.enemy-book-caption{text-align:center}.enemy-book-caption small{letter-spacing:.18em;color:#83735e}.enemy-book-caption h3{font-size:24px;margin:8px 0 14px}.enemy-book-page canvas{display:block;width:100%;max-height:32dvh;object-fit:contain;border-radius:46% 46% 12px 12px;margin:auto}
.enemy-book-description{max-width:580px;line-height:1.9;font-size:16px;margin:18px auto}.enemy-book-stamp{display:block;width:max-content;margin:10px 0 0 auto;border:2px solid #957287;border-radius:4px;padding:5px 12px;color:#957287;transform:rotate(-5deg)}
.enemy-book-empty{text-align:center;padding:70px 12px;font-size:20px;color:#8f7c67}.enemy-book-empty p{font-size:15px}#bookIndexBack{display:none}
@media(max-width:700px),(max-height:500px){.enemy-book-head{padding:9px 12px;gap:8px}.enemy-book-head h2{font-size:19px}.enemy-book-head small{display:none}.enemy-book-head>span{font-size:12px}.enemy-book-body{display:block;min-height:180px;max-height:65dvh}.enemy-book-index{max-height:60dvh;border:0}.enemy-book-page{display:none;padding:12px 16px}.enemy-book.reading .enemy-book-index{display:none}.enemy-book.reading .enemy-book-page{display:block;max-height:60dvh}#bookIndexBack{display:block;position:sticky;top:0;z-index:1;min-height:42px}.enemy-book-page canvas{max-height:39dvh}.enemy-book-description{font-size:14px}.enemy-book-caption h3{font-size:20px}}
/* Isolate the book index from the game's horizontal navigation rules. */
.enemy-book-index{display:block!important;min-width:0}.enemy-book-index button{height:auto;flex:none;white-space:normal;font-size:14px;padding:10px 12px}.enemy-book-index h3{display:block;width:auto;white-space:normal}
#modal:has(.enemy-book){width:min(1140px,96vw);max-height:94dvh;padding:10px;overflow:hidden}#modal:has(.enemy-book) #modalContent{padding:0;max-height:none;overflow:visible}
@media(max-width:700px),(max-height:500px){.enemy-book{border-width:4px}.enemy-book-head{min-height:44px}.enemy-book-body{height:calc(88dvh - 76px);min-height:0;max-height:none}.enemy-book-index,.enemy-book.reading .enemy-book-page{height:100%;max-height:none;box-sizing:border-box}.enemy-book-head button{padding:6px 10px}.enemy-book-page #bookIndexBack{margin-bottom:5px}}
@media(max-height:500px) and (min-width:600px){#bookEntry{display:grid;grid-template-columns:45% minmax(0,1fr);gap:8px 16px;align-items:start}.enemy-book-caption{grid-column:2;text-align:left}.enemy-book-page canvas{grid-column:1;grid-row:1/4;max-height:43dvh}.enemy-book-description{grid-column:2;margin:0;font-size:13px;line-height:1.6}.enemy-book-stamp{grid-column:2;font-size:12px;margin-top:0}.enemy-book-caption h3{margin:2px 0 4px}.enemy-book-caption small{font-size:11px}}
@media(max-width:700px),(max-height:500px){.enemy-book.reading .enemy-book-index{display:none!important}}

.enemy-book-index,.enemy-book-page{min-height:0;box-sizing:border-box;overscroll-behavior:contain;touch-action:pan-y;scrollbar-gutter:stable}
