.reader-root{--reader-bg:#0e0c0c;--reader-text:#ddd4c5;--reader-font:"Cormorant Garamond",serif;--reader-size:20px;--reader-lh:1.95;--sidebar-w:280px;position:fixed;inset:0;background:var(--reader-bg);color:var(--reader-text);font-family:var(--font-ui);overflow:hidden}.reader-root #topbar{position:fixed;top:0;left:0;right:0;height:56px;z-index:100;background:rgba(8,8,8,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 20px;gap:16px}.reader-root .tb-back{color:var(--muted);font-size:18px;cursor:pointer;transition:color .2s;display:flex;align-items:center;justify-content:center;width:36px;height:36px}.reader-root .tb-back:hover{color:var(--text)}.reader-root .tb-book{font-family:var(--font-deco);font-size:13px;letter-spacing:2px;color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-root .tb-sep{width:1px;height:20px;background:var(--border)}.reader-root .tb-chapter{font-family:var(--font-ui);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-root .tb-actions{display:flex;gap:8px;align-items:center;margin-left:auto}.reader-root .tb-btn{width:36px;height:36px;border:1px solid var(--border);background:none;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:color .2s,border-color .2s}.reader-root .tb-btn.active,.reader-root .tb-btn:hover{color:var(--gold);border-color:var(--gold-dim)}.reader-root .tb-nav-btns{display:flex;gap:4px}.reader-root .tb-nav-btn{padding:6px 14px;border:1px solid var(--border);background:none;color:var(--muted);cursor:pointer;font-family:var(--font-ui);font-size:9px;letter-spacing:2px;text-transform:uppercase;transition:color .2s,border-color .2s}.reader-root .tb-nav-btn:hover{color:var(--text);border-color:hsla(0,0%,100%,.2)}.reader-root .tb-nav-btn:disabled{opacity:.3;pointer-events:none}.reader-root #progressBar{position:fixed;top:55px;left:0;right:0;height:2px;z-index:101;background:var(--border)}.reader-root #progressFill{height:100%;background:var(--red);width:0;transition:width .1s}.reader-root #layout{display:flex;height:100vh;padding-top:57px}.reader-root #sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);height:100%;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;transform:translateX(0);transition:transform .3s ease;overflow:hidden}.reader-root #sidebar.hidden{transform:translateX(calc(-1 * var(--sidebar-w)));position:absolute;z-index:50}.reader-root .sidebar-book-info{padding:24px 20px;border-bottom:1px solid var(--border)}.reader-root .sb-cover{width:80px;margin-bottom:14px;filter:drop-shadow(0 8px 20px rgba(0,0,0,.6))}.reader-root .sb-book-title{font-family:var(--font-deco);font-size:13px;letter-spacing:2px;color:var(--gold);margin-bottom:4px}.reader-root .sb-author{font-family:var(--font-ui);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.reader-root .sidebar-chapters{flex:1 1;overflow-y:auto;padding:16px 0}.reader-root .sidebar-chapters::-webkit-scrollbar{width:4px}.reader-root .sidebar-chapters::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.reader-root .ch-section-label{font-family:var(--font-ui);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);padding:8px 20px 4px}.reader-root .ch-item{display:flex;align-items:center;gap:12px;padding:12px 20px;cursor:pointer;transition:background .2s;border-left:2px solid transparent}.reader-root .ch-item:hover{background:hsla(0,0%,100%,.03)}.reader-root .ch-item.active{background:rgba(201,168,76,.06);border-left-color:var(--gold)}.reader-root .ch-num{font-family:var(--font-ui);font-size:10px;color:var(--muted);min-width:24px}.reader-root .ch-title{font-family:var(--font-body);font-size:15px;color:var(--text);line-height:1.3}.reader-root .ch-sub{color:var(--muted);margin-top:2px}.reader-root .ch-read-count,.reader-root .ch-sub{font-family:var(--font-ui);font-size:9px;letter-spacing:1px}.reader-root .ch-read-count{display:inline-flex;align-items:center;gap:6px;color:var(--gold-dim);margin-top:6px}.reader-root .ch-read-count i{font-size:9px;opacity:.8}.reader-root #main{flex:1 1;overflow-y:auto;height:100%;padding:60px 40px 120px}.reader-root #main::-webkit-scrollbar{width:4px}.reader-root #main::-webkit-scrollbar-thumb{background:var(--border)}.reader-root .reader-content{max-width:680px;margin:0 auto}.reader-root .ch-header{margin-bottom:60px}.reader-root .ch-header-num{font-family:var(--font-ui);font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:16px}.reader-root .ch-header-title{font-family:var(--font-deco);font-size:clamp(22px,4vw,36px);letter-spacing:2px;line-height:1.2;margin-bottom:20px}.reader-root .ch-header-rule{width:48px;height:1px;background:var(--gold);opacity:.6;margin-bottom:48px}.reader-root .reader-body{font-family:var(--reader-font);font-size:var(--reader-size);line-height:var(--reader-lh);color:var(--reader-text)}.reader-root .reader-block{position:relative;padding-right:46px;border-left:1px solid transparent;transition:border-color .2s,background .2s}.reader-root .reader-block.is-current{border-left-color:rgba(201,168,76,.22)}.reader-root .reader-block-html p{margin-bottom:28px;text-wrap:pretty}.reader-root .reader-block-html h1,.reader-root .reader-block-html h2,.reader-root .reader-block-html h3{font-family:var(--font-deco);letter-spacing:2px;color:var(--gold);margin:1.4em 0 .6em;line-height:1.2}.reader-root .reader-block-html strong{color:#f0e8d5;font-weight:600}.reader-root .reader-block-html em{font-style:italic}.reader-root .reader-block-html img{margin:24px auto;max-width:100%}.reader-root .reader-block.first-text-block .reader-block-html>p:first-of-type:first-letter{font-family:var(--font-deco);font-size:4.5em;line-height:.75;float:left;margin-right:8px;margin-top:4px;color:var(--gold)}.reader-root .reader-comment-trigger{position:absolute;right:0;top:.25em;width:32px;min-height:32px;border:1px solid var(--border);color:var(--muted);background:hsla(0,6%,7%,.82);display:flex;align-items:center;justify-content:center;gap:3px;flex-direction:column;font-size:11px;opacity:.62;transition:opacity .15s,color .15s,border-color .15s,transform .15s}.reader-root .reader-comment-trigger span{font-family:var(--font-ui);font-size:9px;line-height:1}.reader-root .reader-block:hover .reader-comment-trigger,.reader-root .reader-comment-trigger:hover{opacity:1;color:var(--gold);border-color:var(--gold-dim);transform:translateY(-1px)}.reader-root .chapter-separator{text-align:center;color:var(--gold-dim);font-size:18px;opacity:.4;margin:48px 0;letter-spacing:12px}.reader-root .chapter-end{margin-top:80px;padding-top:40px;border-top:1px solid var(--border);text-align:center}.reader-root .chapter-end-label{font-family:var(--font-ui);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.reader-root .chapter-end-title{font-family:var(--font-deco);font-size:24px;letter-spacing:2px;margin-bottom:28px}.reader-root .next-btn{display:inline-block;padding:14px 40px;background:var(--red);color:var(--text);font-family:var(--font-ui);font-size:10px;letter-spacing:3px;text-transform:uppercase;border:none;cursor:pointer;transition:background .2s}.reader-root .next-btn:hover{background:#c0392b}.reader-root .wattpad-cta{margin-top:24px;font-family:var(--font-ui);font-size:10px;letter-spacing:2px;color:var(--muted)}.reader-root .wattpad-cta a{color:var(--gold)}.reader-root .wattpad-cta a:hover{text-decoration:underline}.reader-root .reader-empty{max-width:680px;margin:0 auto;text-align:center;padding-top:80px;color:var(--muted)}.reader-root #settingsPanel{position:fixed;top:60px;right:16px;z-index:200;background:hsla(0,6%,7%,.97);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:24px;width:260px;display:none}.reader-root #settingsPanel.open{display:block}.reader-root .sp-title{font-family:var(--font-ui);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:20px}.reader-root .sp-row{margin-bottom:20px}.reader-root .sp-label{font-family:var(--font-ui);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:10px;display:block}.reader-root .sp-slider{width:100%;accent-color:var(--gold);cursor:pointer}.reader-root .sp-chips{display:flex;gap:8px;flex-wrap:wrap}.reader-root .sp-chip{padding:6px 14px;border:1px solid var(--border);cursor:pointer;font-family:var(--font-ui);font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);background:transparent;transition:border-color .2s,color .2s}.reader-root .sp-chip.active{border-color:var(--gold-dim);color:var(--gold)}.reader-root .resume-toast{position:fixed;top:68px;left:50%;transform:translateX(-50%);z-index:220;display:flex;align-items:center;gap:12px;background:hsla(0,3%,6%,.96);border:1px solid var(--gold-dim);padding:10px 14px;box-shadow:0 14px 40px rgba(0,0,0,.35);color:var(--text)}.reader-root .resume-toast,.reader-root .resume-toast button{font-family:var(--font-ui);font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.reader-root .resume-toast button{color:var(--gold);border:none;background:none;cursor:pointer}.reader-root .comment-panel-backdrop{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.42);display:flex;justify-content:flex-end}.reader-root .comment-panel{width:min(430px,100vw);height:100%;background:hsla(0,3%,6%,.98);border-left:1px solid var(--border);box-shadow:-24px 0 70px rgba(0,0,0,.55);display:flex;flex-direction:column;animation:readerPanelIn .22s ease}@keyframes readerPanelIn{0%{transform:translateX(28px);opacity:0}to{transform:translateX(0);opacity:1}}.reader-root .comment-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 18px;border-bottom:1px solid var(--border)}.reader-root .comment-panel-label{font-family:var(--font-ui);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:6px}.reader-root .comment-panel-title{font-family:var(--font-title);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--text)}.reader-root .comment-panel-close{color:var(--muted);font-size:28px;line-height:1;cursor:pointer}.reader-root .comment-panel-close:hover{color:var(--text)}.reader-root .comment-context{margin:18px 24px;padding:16px 18px;border-left:2px solid var(--gold-dim);background:hsla(0,0%,100%,.025);color:hsla(35,27%,84%,.74);font-family:var(--font-body);font-size:15px;line-height:1.6;max-height:140px;overflow:auto}.reader-root .comment-list{flex:1 1;overflow-y:auto;padding:0 24px 18px;display:flex;flex-direction:column;gap:12px}.reader-root .comment-card{display:grid;grid-template-columns:34px 1fr;grid-gap:12px;gap:12px;padding:14px;background:hsla(0,0%,100%,.028);border:1px solid var(--border)}.reader-root .comment-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold-dim);background:rgba(201,168,76,.08)}.reader-root .comment-meta{display:flex;align-items:baseline;gap:10px;margin-bottom:5px}.reader-root .comment-meta strong{font-family:var(--font-ui);font-size:11px;color:var(--gold);letter-spacing:1px}.reader-root .comment-meta span{font-family:var(--font-ui);font-size:9px;color:var(--muted)}.reader-root .comment-copy p{font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--text);white-space:pre-wrap}.reader-root .comment-empty{padding:36px 18px;color:var(--muted);text-align:center;font-family:var(--font-ui);font-size:10px;letter-spacing:2px;text-transform:uppercase;border:1px dashed var(--border)}.reader-root .comment-form{border-top:1px solid var(--border);padding:18px 24px 24px;display:flex;flex-direction:column;gap:10px}.reader-root .comment-form input,.reader-root .comment-form textarea{width:100%;background:rgba(8,8,8,.72);border:1px solid var(--border);color:var(--text);padding:11px 13px;outline:none;font-family:var(--font-ui);font-size:12px;resize:vertical}.reader-root .comment-form input:focus,.reader-root .comment-form textarea:focus{border-color:var(--gold-dim)}.reader-root .comment-compose{display:grid;grid-template-columns:1fr 42px;grid-gap:8px;gap:8px;align-items:stretch}.reader-root .comment-compose button{border:1px solid var(--gold-dim);background:var(--gold-dim);color:var(--text);cursor:pointer;font-size:14px}.reader-root .comment-compose button:disabled{opacity:.55;cursor:not-allowed}@media (max-width:768px){.reader-root #sidebar{position:absolute;z-index:50}.reader-root #sidebar:not(.hidden){box-shadow:8px 0 32px rgba(0,0,0,.6)}.reader-root #main{padding:40px 20px 100px}.reader-root .tb-chapter,.reader-root .tb-nav-btns,.reader-root .tb-sep{display:none}.reader-root .reader-block{padding-right:38px}.reader-root .reader-comment-trigger{width:29px;min-height:29px}.reader-root .comment-panel-backdrop{align-items:flex-end}.reader-root .comment-panel{width:100%;height:min(82vh,720px);border-left:none;border-top:1px solid var(--border);animation:readerSheetIn .22s ease}@keyframes readerSheetIn{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.reader-root .resume-toast{left:12px;right:12px;transform:none;justify-content:space-between}}