/* Original storybook panels; standard system fonts, no external assets. */
.jrpg-box{background:#050505;color:#fff;border:6px double #eee;border-radius:0;padding:24px 30px;font-family:ui-monospace,"Hiragino Kaku Gothic ProN",Meiryo,monospace;line-height:1.9;letter-spacing:.06em;box-shadow:0 8px 30px #000}
#jrpg{z-index:80;background:rgba(0,0,0,.65)}
#jrpg .jrpg-box{width:930px;max-height:570px;overflow:auto}
#jrpgtext{font-size:23px;white-space:pre-line;min-height:94px}
#jrpgpage{font-size:13px;color:#c3b59b;margin-bottom:12px}
#jrpgactions{display:flex;justify-content:flex-end;gap:16px;margin-top:16px}
.jrpg-box button{border:2px solid #eee;border-radius:0;background:#111;color:white;padding:8px 20px;font:inherit;cursor:pointer}
.jrpg-box button:focus-visible,.jrpg-box button:hover{outline:2px solid var(--gold);color:var(--gold)}
#jrpgflash{position:absolute;inset:0;background:white;z-index:90;pointer-events:none;opacity:0}
#jrpgflash.on{animation:jflash .55s ease-out}
@keyframes jflash{from{opacity:.85}to{opacity:0}}
@media(prefers-reduced-motion:reduce){#jrpgflash.on{animation:none}}
#bestiary,#spell{background:radial-gradient(circle at 50% 35%,#201329,#050308);padding:22px 45px;justify-content:flex-start}
#booklist{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:1130px;overflow-y:auto;max-height:525px;padding:6px}
.bookentry{border:2px solid #aa8240;background:#110c18;padding:12px;min-height:208px;border-radius:5px}
.bookentry img{float:left;width:72px;height:86px;object-fit:contain;margin:0 12px 6px 0}
.bookentry h2{font-size:17px;color:var(--gold);margin-bottom:7px}
.bookentry p{font-size:12px;line-height:1.7;color:#d2c7db}
.bookentry .lore{clear:both;border-top:1px solid #59422e;padding-top:8px;margin-top:6px;color:#eee4cf}
.bookentry.unknown img{filter:brightness(0);opacity:.65}
.bookentry.unknown{background:#251d30;border-color:#51445d}
#spell .jrpg-box{width:940px;padding:18px 26px}
#spelltext{width:100%;height:340px;resize:none;background:#111;color:#fff;border:1px solid #b09b78;padding:14px;font:18px/1.7 ui-monospace,Meiryo,monospace;letter-spacing:.12em;user-select:text}
#spellstatus{min-height:32px;font-size:15px;color:#ffe1a0}
#spellhelp{font-size:14px;margin:6px 0 12px}
.spellnav{display:flex;gap:12px;justify-content:center;margin-top:14px}
.monster-art{object-fit:contain!important;background:radial-gradient(#433250,#100b19)}
.seedbar{font-size:13px;color:#d9cb97;margin-bottom:10px}
.seedrow{font-size:11px;line-height:1.8;color:#c6dbb4;display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:5px}
.seedrow button{font:inherit;background:#15251b;color:#d5ecc3;border:1px solid #81976b;border-radius:3px;padding:2px 7px;cursor:pointer}
.seedrow button:disabled{opacity:.4;cursor:default}
#growlist .gw{min-height:132px}
.st .hint{font-size:11px;color:#d4e5af;margin-top:5px;line-height:1.45}
#stagelist{max-height:474px;overflow-y:auto;padding:3px}
#rgain{max-height:126px;overflow-y:auto}
#rchurch{font-size:16px;color:#f2dba2;margin-bottom:7px}
#rchurch:empty{display:none}
#restlist{flex-wrap:wrap;max-width:1120px}

#growlist .gi{flex:1;min-width:0;width:auto}
#growlist .gb{flex:0 0 390px;width:390px}
.monster-art ~ .plate .nm{font-size:10px;letter-spacing:0;white-space:nowrap}
#floorbanner.stray-banner{top:140px;font-size:22px;letter-spacing:.08em;padding:8px 18px;background:rgba(10,12,22,.88);border:1px solid #bac8dc;color:#e1edff}
