:root{--pink:#f27bb4}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 50% 0,#512744 0,#271424 45%,#160d17 100%);color:#fff;font-family:'Noto Sans JP',sans-serif;min-height:100vh}
.reader-header{height:70px;padding:0 clamp(16px,4vw,52px);display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;background:rgba(23,12,23,.75);border-bottom:1px solid rgba(255,209,232,.18);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}
.back{color:#ffd8e9;text-decoration:none;font-weight:900;font-size:11px;letter-spacing:.08em}
.reader-title{text-align:center}.reader-title small{display:block;color:#f5a5c9;font-size:8px;font-weight:900;letter-spacing:.15em}.reader-title b{font-family:'DM Serif Display','Noto Sans JP',serif;font-size:23px;font-weight:400}
.thumb-toggle{justify-self:end;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.27);border-radius:999px;padding:9px 12px;font-size:9px;font-weight:900;letter-spacing:.1em;cursor:pointer}
.information{min-height:76px;padding:12px clamp(16px,4vw,52px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;background:rgba(46,20,40,.72);border-bottom:1px solid rgba(255,209,232,.16)}
.information-title span,.history-header span{display:block;color:#f5a5c9;font-size:9px;font-weight:900;letter-spacing:.15em}.information-title h2,.history-header h2{margin:2px 0 0;font-family:'DM Serif Display','Noto Sans JP',serif;font-size:21px;font-weight:400}
.information-latest{min-width:0;margin:0;display:flex;gap:10px;align-items:baseline;font-size:12px;color:#f5dce8;white-space:nowrap;overflow:hidden}.information-latest time{color:#f89ac8;font-size:10px;font-weight:900;letter-spacing:.08em}.information-latest strong{color:#fff;font-size:13px}.information-latest span{overflow:hidden;text-overflow:ellipsis}
.history-button{padding:8px 11px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-family:inherit;font-size:11px;font-weight:900;cursor:pointer}.history-button:hover{background:#ef78b2;border-color:#ef78b2}
.reader{display:grid;grid-template-columns:0px 1fr;min-height:calc(100vh - 202px);transition:grid-template-columns .25s ease}.reader.show-thumbs{grid-template-columns:minmax(180px,22vw) 1fr}
.thumbs{overflow:auto;background:rgba(21,10,21,.75);border-right:1px solid transparent;padding:0;opacity:0;pointer-events:none;transition:opacity .2s ease,padding .25s ease}.show-thumbs .thumbs{padding:18px 14px;opacity:1;pointer-events:auto;border-right-color:rgba(255,209,232,.14)}
.thumbs button{display:block;width:100%;margin:0 0 11px;padding:0;border:2px solid transparent;border-radius:8px;background:none;overflow:hidden;cursor:pointer}.thumbs button.active{border-color:#f486bb;box-shadow:0 0 0 2px rgba(244,134,187,.22)}.thumbs img{display:block;width:100%;height:auto}
.stage{min-width:0;position:relative;display:grid;place-items:center;padding:34px 6vw 26px;touch-action:pan-y}.page-frame{position:relative;margin:0;max-width:min(69vh,610px);filter:drop-shadow(0 24px 34px rgba(0,0,0,.38));transition:transform .18s ease,opacity .18s ease}.page-frame.turning{transform:translateX(-12px) scale(.985);opacity:.45}.page-frame img{display:block;max-width:100%;max-height:calc(100vh - 306px);width:auto;height:auto;border-radius:3px;background:#fff}.page-frame figcaption{width:max-content;margin:9px auto 0;padding:5px 10px;border-radius:999px;background:rgba(24,12,23,.72);color:#ffe0ed;font-size:9px;font-weight:900;letter-spacing:.12em}
.tap-zone{position:absolute;top:0;bottom:0;width:25%;border:0;background:transparent;cursor:pointer}.tap-prev{left:0}.tap-next{right:0}.reader-hint{position:absolute;bottom:3px;margin:0;color:#f0bfd5;font-size:10px;letter-spacing:.03em;text-align:center}
.reader-controls{position:sticky;z-index:12;bottom:0;height:56px;padding:0 5vw;display:flex;gap:10px;justify-content:center;align-items:center;background:rgba(21,10,21,.96);border-top:1px solid rgba(255,209,232,.2);box-shadow:0 -10px 24px rgba(0,0,0,.2)}.reader-controls button{min-width:118px;padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font-family:inherit;font-size:11px;font-weight:900;cursor:pointer}.reader-controls button:hover{background:#ef78b2;border-color:#ef78b2}.reader-controls button:disabled{opacity:.35;cursor:default}.reader-controls button:disabled:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28)}
.chapter-next{margin:0;padding:15px clamp(16px,4vw,52px);display:flex;gap:12px;align-items:center;justify-content:center;background:rgba(25,12,24,.78);border-top:1px solid rgba(255,209,232,.12);color:#fff}.chapter-next span{color:#f5a5c9;font-size:9px;font-weight:900;letter-spacing:.14em}.chapter-next b{font-size:13px}.chapter-next em{padding:5px 8px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#ffd7e7;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.08em}
.history-dialog{width:min(680px,calc(100vw - 32px));max-height:min(680px,calc(100vh - 48px));padding:0;border:1px solid rgba(255,211,233,.28);border-radius:16px;background:#2b1728;color:#fff;box-shadow:0 24px 80px rgba(0,0,0,.55)}.history-dialog::backdrop{background:rgba(10,4,10,.72);backdrop-filter:blur(3px)}.history-header{padding:23px 25px 18px;display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid rgba(255,211,233,.15)}.dialog-close{width:33px;height:33px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font:400 24px/1 sans-serif;cursor:pointer}.dialog-close:hover{background:#ef78b2;border-color:#ef78b2}.history-list{margin:0;padding:7px 25px 22px;list-style:none}.history-list li{padding:17px 0;display:grid;grid-template-columns:86px 1fr;gap:15px;border-bottom:1px solid rgba(255,211,233,.11)}.history-list li:last-child{border-bottom:0}.history-list time{color:#f89ac8;font-size:11px;font-weight:900;letter-spacing:.06em}.history-list b{font-size:14px}.history-list p{margin:5px 0 0;color:#e9c9d9;font-size:12px;line-height:1.65}
@media(max-width:720px){.reader-header{grid-template-columns:1fr auto;height:64px}.reader-title{grid-column:1;grid-row:1;text-align:left}.reader-title small{display:none}.reader-title b{font-size:19px}.back{display:none}.information{min-height:0;padding:10px 14px;grid-template-columns:1fr auto;gap:6px 12px}.information-title h2{font-size:18px}.information-latest{grid-column:1/-1;grid-row:2;font-size:10px;gap:7px}.information-latest strong{font-size:11px}.information-latest span{display:none}.history-button{font-size:10px;padding:7px 9px}.reader.show-thumbs{grid-template-columns:0 1fr}.reader.show-thumbs .thumbs{position:fixed;z-index:8;top:64px;bottom:56px;left:0;width:min(270px,75vw);box-shadow:20px 0 50px rgba(0,0,0,.38)}.stage{padding:20px 10px 28px;min-height:calc(100vh - 186px)}.page-frame img{max-height:calc(100vh - 274px)}.tap-zone{width:18%}.reader-hint{font-size:8px;bottom:5px}.reader-controls{padding:0 12px}.reader-controls button{min-width:0;flex:1;font-size:10px;padding:10px 5px}.reader-controls #indexButton{display:none}.history-header{padding:20px 18px 15px}.history-list{padding:7px 18px 18px}.history-list li{grid-template-columns:1fr;gap:5px;padding:14px 0}}
