:root{color-scheme:dark;font-family:system-ui,sans-serif;background:#140a13;color:#f9edf4}*{box-sizing:border-box}body{margin:0}a{color:#ff9bc4;text-decoration:none}a:hover{text-decoration:underline}button,a{touch-action:manipulation}button{background:#b51e68;color:#fff;border:0;border-radius:12px;padding:14px 22px;cursor:pointer}.site-top,main,footer{max-width:1120px;margin:auto;padding:24px}.site-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #4b2a40}.logo{font-weight:900;font-size:28px;color:#fff}.logo span{color:#ff6aa8}nav{display:flex;flex-wrap:wrap;gap:18px}h1{font-size:clamp(27px,4vw,42px);line-height:1.3}p{line-height:1.8}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:20px}.card{padding:18px;border:1px solid #4b2a40;border-radius:16px;background:#21101e}.card h2{font-size:17px}.card img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:10px}.tags{display:flex;flex-wrap:wrap;gap:12px}.chapters{display:grid;gap:10px;list-style:none;padding:0}.chapters a{display:block;padding:14px;background:#291222;border-radius:10px}.chapter-nav{padding:20px 0;justify-content:space-between;position:sticky;top:0;background:#140a13;z-index:1}.chapter-pages{max-width:860px;margin:auto}.chapter-pages figure{margin:0 0 12px}.chapter-pages img{display:block;width:100%;height:auto}.chapter-pages figcaption{font-size:12px;text-align:center;color:#bb9aaf;padding:6px}footer{color:#bb9aaf;border-top:1px solid #4b2a40;margin-top:36px}.age-overlay{position:fixed;inset:0;z-index:100;background:rgba(12,4,10,.97);display:grid;place-items:center;padding:20px}.age-overlay[hidden]{display:none}.age-overlay>div{max-width:480px;text-align:center;padding:32px;background:#291222;border:1px solid #5d2b49;border-radius:20px}.age-overlay a{display:block;margin-top:20px}.pager{margin:25px 0}.story-intro{max-width:820px}.story-intro img{float:left;max-width:180px;margin:0 24px 20px 0;border-radius:14px}.story-intro:after{content:'';display:block;clear:both}@media(max-width:600px){.site-top{display:block}.site-top nav{margin-top:16px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{padding:12px}.chapter-nav{font-size:13px;gap:10px}main{padding:18px}.story-intro img{max-width:120px}}
