:root{--pink:#ff65ad;--cyan:#62e9ff;--ink:#12101b}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% 0,#30203f 0,#161321 42%,#0d0c13 100%);color:#fff;font-family:'Noto Sans JP',sans-serif}.reader-header{height:72px;padding:0 clamp(18px,5vw,62px);display:flex;align-items:center;justify-content:space-between;background:rgba(13,12,19,.78);border-bottom:1px solid rgba(255,140,195,.25);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.reader-title small{display:block;color:#ff9acb;font-size:9px;font-weight:900;letter-spacing:.16em}.reader-title b{font-family:'DM Serif Display','Noto Sans JP',serif;font-size:25px;font-weight:400}.thumb-toggle{color:#fff;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:9px 13px;font:900 10px 'Noto Sans JP',sans-serif;letter-spacing:.11em;cursor:pointer}.notice{min-height:45px;padding:8px clamp(18px,5vw,62px);display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(90deg,rgba(255,70,157,.16),rgba(92,225,255,.12),rgba(255,70,157,.16));border-bottom:1px solid rgba(255,255,255,.12)}.notice span{color:#ffc5e0;font-size:9px;font-weight:900;letter-spacing:.16em}.notice p{margin:0;color:#eee2ed;font-size:11px}.reader{display:grid;grid-template-columns:0 1fr;min-height:calc(100vh - 173px);transition:grid-template-columns .25s ease}.reader.show-thumbs{grid-template-columns:minmax(180px,22vw) 1fr}.thumbs{overflow:auto;background:rgba(12,10,18,.82);border-right:1px solid transparent;padding:0;opacity:0;pointer-events:none;transition:.25s}.show-thumbs .thumbs{padding:18px 14px;opacity:1;pointer-events:auto;border-right-color:rgba(255,147,204,.2)}.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:var(--pink);box-shadow:0 0 0 2px rgba(255,101,173,.25)}.thumbs img{display:block;width:100%;height:auto}.stage{min-width:0;position:relative;display:grid;place-items:center;padding:25px 6vw;touch-action:pan-y}.page-frame{margin:0;max-width:min(69vh,610px);filter:drop-shadow(0 24px 34px rgba(0,0,0,.48));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 - 255px);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(10,8,15,.76);border:1px solid rgba(98,233,255,.25);color:#d9f9ff;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:#e8cadd;font-size:10px;letter-spacing:.03em;text-align:center}.reader-controls{height:56px;padding:0 5vw;display:flex;gap:10px;justify-content:center;align-items:center;background:rgba(10,9,15,.88);border-top:1px solid rgba(255,142,199,.16)}.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:900 11px 'Noto Sans JP',sans-serif;cursor:pointer}.reader-controls button:hover{background:var(--pink);border-color:var(--pink)}.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)}@media(max-width:720px){.reader-header{height:64px;padding:0 16px}.reader-title small{display:none}.reader-title b{font-size:20px}.notice{min-height:42px;padding:7px 14px;justify-content:flex-start}.notice p{font-size:10px}.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:16px 10px 28px;min-height:calc(100vh - 162px)}.page-frame img{max-height:calc(100vh - 246px)}.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}}
