dialog.tome-popup{position:fixed;inset:0;margin:auto;width:min(540px,calc(100vw - 20px));max-width:none;max-height:calc(100dvh - 30px);padding:22px 12px;border:0;background:transparent;box-shadow:none;color:#fff1d0;text-align:center;overflow-y:auto;overflow-x:hidden;font-family:inherit;box-sizing:border-box}
dialog.tome-popup::backdrop{background:#071429b8;backdrop-filter:blur(8px)}
.tome-popup .tome-title{margin:0 0 28px;font-size:clamp(25px,6vw,40px);font-weight:1000;color:#ffd74e;text-shadow:2px 3px #241006,-2px -1px #241006,0 5px 12px #000;line-height:1.15}
.tome-stage{position:relative;margin:0 4px 20px;padding-top:108px;filter:drop-shadow(0 0 15px #ffb32370)}
.tome-book{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;position:relative;padding:8px 9px 17px;border:7px ridge #a88850;border-bottom:13px ridge #e1c181;border-radius:15px 15px 28px 28px;background:linear-gradient(90deg,#dca348,#705128 47%,#372b27 50%,#705128 53%,#dca348);box-shadow:0 8px 0 #333440,inset 0 0 15px #fdbc47,0 0 25px #ffb00055}
.tome-book:after{content:'';position:absolute;top:0;bottom:-17px;left:calc(50% - 5px);width:10px;background:linear-gradient(90deg,#2b2730,#958879,#2b2730);border-radius:8px;pointer-events:none}
.tome-popup .tome-choice{position:relative;min-width:0;margin:0;padding:0 5px 9px;overflow:visible;border:3px solid #cc8c37;border-radius:10px;background:linear-gradient(#392e2c,#755339);color:#fff4df;text-shadow:0 2px 2px #000;box-shadow:inset 0 0 12px #0009;cursor:pointer;transition:filter .2s,transform .2s}
.tome-choice:hover,.tome-choice:focus-visible{outline:3px solid #ffe78a;filter:brightness(1.2)}
.tome-choice.tome-chosen{filter:brightness(1.45);transform:translateY(-7px)}
.tome-art{position:relative;height:95px;margin-top:0}
.tome-art img{position:absolute;width:100%;height:210px;max-width:none;object-fit:contain;left:0;bottom:14px;z-index:2;filter:drop-shadow(0 4px 5px #0008);pointer-events:none}
.tome-plinth{position:absolute;left:5%;right:5%;height:30px;bottom:9px;border-radius:50%;background:linear-gradient(#8d8897 0 45%,#415cc5 48% 65%,#243578 70%);border:3px solid #8f7a6b;box-shadow:0 5px 0 #252027}
.tome-cost{position:absolute;bottom:0;left:calc(50% - 14px);z-index:3;min-width:28px;font-size:23px;line-height:29px;background:#c48a23;clip-path:polygon(18% 0,78% 0,100% 30%,85% 100%,13% 92%,0 30%);color:#fff1be}
.tome-mini-name{display:block;min-height:30px;font-size:clamp(11px,2.8vw,15px);margin:6px 0 5px;line-height:1.1}
.tome-xp-track{position:relative;height:21px;margin-left:9px;background:#24212c;border:2px solid #ad9c7a;border-radius:5px;font-size:11px;line-height:17px}
.tome-xp-track i{position:absolute;inset:0 auto 0 0;background:linear-gradient(#d36bf2,#6e23aa);border-radius:3px;transition:width .35s}
.tome-xp-track>span{position:relative;z-index:1;font-weight:900}.tome-mini-level{position:absolute;left:-14px;top:-5px;z-index:2;background:#762db0;border:2px solid #dba0f5;border-radius:5px;padding:1px 3px;font-size:14px;line-height:22px}
.tome-book-rail{display:flex;position:relative;justify-content:center;align-items:center;gap:62px;margin-top:-3px;z-index:4}.tome-reward,.tome-page-count{background:linear-gradient(#665a47,#25282e);border:4px ridge #a39373;padding:4px 10px;min-width:64px;font-size:17px}.tome-reward{color:#e8aeff}.tome-seal{position:absolute;left:calc(50% - 29px);top:-10px;width:52px;height:52px;line-height:52px;background:linear-gradient(#746c59,#34353c);border:5px ridge #b1a687;border-radius:50%;font-size:33px;color:#fff5d9}
.tome-popup .tome-instruction{font-size:13px;min-height:20px;margin:24px 0 12px;color:#f2e2bd;text-shadow:0 2px 4px #000}
.tome-popup .tome-dismiss{background:linear-gradient(#24567b,#112b43);color:#f4ead4;border:2px solid #8a96a3;border-radius:8px;padding:8px 18px;font:inherit;font-size:13px;cursor:pointer}
.tome-double .tome-stage{filter:drop-shadow(0 0 22px #ffd52eaa)}.tome-double .tome-title{color:#ffdf26}.tome-double .tome-book{box-shadow:0 8px 0 #333440,inset 0 0 20px #ffe856,0 0 35px #ffc40088}
@media(max-width:380px){.tome-stage{margin-inline:0}.tome-book{gap:9px;padding-inline:5px}.tome-art img{height:180px}.tome-xp-track{font-size:9px}.tome-book-rail{gap:55px}.tome-reward,.tome-page-count{font-size:14px;min-width:54px;padding-inline:6px}}
@media(max-height:550px){.tome-popup .tome-title{margin-bottom:8px;font-size:25px}.tome-stage{padding-top:60px}.tome-art img{height:150px}.tome-art{height:75px}.tome-popup .tome-instruction{margin-top:15px}}
@media(prefers-reduced-motion:reduce){.tome-choice,.tome-xp-track i{transition:none!important}}

.tome-art img{object-position:center bottom}
