:root{--ntr-bg:#fbf8f0;--ntr-panel:#fff;--ntr-text:#1d1a16;--ntr-muted:#746f66;--ntr-gold:#c69a3e;--ntr-border:#dfd7c6;--ntr-page:#fff;--ntr-font:100%}
body.nt-reader-standalone{margin:0;background:var(--ntr-bg);color:var(--ntr-text);font-family:Heebo,Arial,sans-serif;overflow:hidden}.nt-reader-theme-dark{--ntr-bg:#111;--ntr-panel:#181818;--ntr-text:#f7f0df;--ntr-muted:#bdb5a5;--ntr-border:#39352e;--ntr-page:#171717}.nt-reader-theme-sepia{--ntr-bg:#eee1c5;--ntr-panel:#f5ead2;--ntr-text:#392f22;--ntr-muted:#74634b;--ntr-border:#cdbb96;--ntr-page:#f7ecd5}
.nt-reader-app{height:100vh;height:100dvh;min-height:480px;display:grid;grid-template-rows:64px auto 1fr 58px;background:var(--ntr-bg);color:var(--ntr-text)}.nt-reader-topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:0 18px;border-bottom:1px solid var(--ntr-border);background:var(--ntr-panel);z-index:20}.nt-reader-brand a{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#17130d;color:#d6ab52;text-decoration:none;font-size:22px}.nt-reader-book-title{min-width:0;display:flex;flex-direction:column}.nt-reader-book-title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Georgia,serif;font-size:17px}.nt-reader-book-title span{font-size:12px;color:var(--ntr-muted)}.nt-reader-toolbar{display:flex;align-items:center;gap:6px}.nt-reader-toolbar button,.nt-reader-close{border:0;background:transparent;color:var(--ntr-text);font:inherit;font-weight:700;min-width:38px;height:38px;border-radius:9px;display:grid;place-items:center;text-decoration:none;cursor:pointer}.nt-reader-toolbar button:hover,.nt-reader-close:hover{background:rgba(128,128,128,.12)}
.nt-reader-preview-banner{display:flex;justify-content:center;gap:10px;align-items:center;padding:7px 16px;background:#c69a3e;color:#17130d;font-size:13px}.nt-reader-main{min-height:0;position:relative;display:grid;grid-template-columns:1fr}.nt-reader-stage{position:relative;min-height:0;padding:14px 18px 8px;display:grid;grid-template-rows:auto 1fr}.nt-reader-chapter-title{max-width:900px;width:100%;margin:0 auto 8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ntr-muted);font-weight:700}.nt-reader-viewport{max-width:900px;width:100%;height:100%;margin:0 auto;overflow:hidden;background:var(--ntr-page);border:1px solid var(--ntr-border);border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.08);scroll-behavior:smooth}.nt-reader-content{box-sizing:border-box;height:100%;padding:42px clamp(28px,6vw,74px);overflow-y:auto;font-family:Georgia,'Times New Roman',serif;font-size:calc(18px * var(--ntr-font));line-height:1.75;color:var(--ntr-text)}.nt-reader-content p{margin:0 0 1.15em}.nt-reader-content h1,.nt-reader-content h2,.nt-reader-content h3{line-height:1.2;margin:1.4em 0 .65em}.nt-reader-content img{max-width:100%;height:auto;display:block;margin:1.25em auto}.nt-reader-content blockquote{border-left:3px solid var(--ntr-gold);margin:1.4em 0;padding:.2em 1.2em;color:var(--ntr-muted)}.nt-reader-content a{color:#a67b26}.nt-reader-loading{position:absolute;left:50%;top:64px;transform:translateX(-50%) translateY(-4px);display:flex;align-items:center;justify-content:center;min-width:108px;padding:9px 14px;border:1px solid var(--ntr-border);border-radius:999px;background:color-mix(in srgb,var(--ntr-panel) 94%,transparent);box-shadow:0 8px 28px rgba(0,0,0,.12);font-weight:700;font-size:13px;z-index:15;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease}.nt-reader-loading.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}.nt-reader-loading[hidden]{display:none!important}.nt-reader-error{max-width:560px;margin:40px auto;padding:24px;border:1px solid var(--ntr-border);border-radius:12px;background:var(--ntr-panel);font-family:Heebo,Arial,sans-serif;text-align:center}.nt-reader-error strong{font-family:Georgia,serif;font-size:22px}.nt-reader-error button{margin-top:8px;padding:9px 14px;border:0;border-radius:8px;background:var(--ntr-gold);color:#17130d;font-weight:800;cursor:pointer}
.nt-reader-footer{display:grid;grid-template-columns:58px 1fr 58px;align-items:center;gap:12px;padding:0 18px;border-top:1px solid var(--ntr-border);background:var(--ntr-panel)}.nt-reader-footer>button{border:1px solid var(--ntr-border);background:var(--ntr-page);color:var(--ntr-text);height:38px;border-radius:9px;font-size:20px;cursor:pointer}.nt-reader-progress{display:flex;align-items:center;gap:10px}.nt-reader-progress>div{height:6px;background:rgba(128,128,128,.18);border-radius:99px;overflow:hidden;flex:1}.nt-reader-progress span{display:block;height:100%;width:0;background:var(--ntr-gold);transition:width .2s}.nt-reader-progress small{min-width:42px;text-align:right;color:var(--ntr-muted)}
.nt-reader-drawer{position:absolute;left:0;top:0;bottom:0;width:min(360px,88vw);background:var(--ntr-panel);border-right:1px solid var(--ntr-border);z-index:30;transform:translateX(-102%);transition:.18s ease;box-shadow:20px 0 50px rgba(0,0,0,.13);overflow:auto}.nt-reader-drawer.is-open{transform:none}.nt-reader-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--ntr-border)}.nt-reader-drawer-head button{border:0;background:none;color:var(--ntr-text);font-size:24px}.nt-reader-drawer nav{padding:8px}.nt-reader-drawer nav button{width:100%;border:0;background:none;color:var(--ntr-text);text-align:left;padding:11px 12px;border-radius:8px;cursor:pointer}.nt-reader-drawer nav button:hover,.nt-reader-drawer nav button.is-current{background:rgba(198,154,62,.14);color:var(--ntr-text)}
.nt-reader-settings{position:absolute;right:16px;top:12px;width:260px;background:var(--ntr-panel);border:1px solid var(--ntr-border);border-radius:12px;padding:16px;z-index:35;box-shadow:0 18px 50px rgba(0,0,0,.18)}.nt-reader-settings label{display:grid;gap:8px;margin:15px 0}.nt-reader-theme-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.nt-reader-theme-buttons button{padding:8px;border:1px solid var(--ntr-border);background:var(--ntr-page);color:var(--ntr-text);border-radius:7px;cursor:pointer}
.nt-reader-access-gate{display:flex;align-items:center;justify-content:center;gap:28px;padding:40px;grid-row:2/5}.nt-reader-access-gate img{width:min(220px,38vw);height:auto;border-radius:8px;box-shadow:0 12px 40px rgba(0,0,0,.18)}.nt-reader-access-gate h1{font-family:Georgia,serif;font-size:36px;margin:.2em 0}.nt-reader-primary{display:inline-flex;padding:11px 16px;background:var(--ntr-gold);color:#17130d;border-radius:8px;text-decoration:none;font-weight:800}.nt-reader-preview-end{position:fixed;inset:0;background:rgba(10,10,10,.72);z-index:100;display:grid;place-items:center;padding:20px}.nt-reader-preview-end>div{max-width:520px;background:var(--ntr-panel);color:var(--ntr-text);padding:32px;border-radius:16px;text-align:center;box-shadow:0 24px 90px rgba(0,0,0,.35)}.nt-reader-preview-end strong{font-family:Georgia,serif;font-size:28px}
.nt-reader-owned-action{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0}.nt-reader-owned-action span{font-size:12px;color:#6f685d}.nt-reader-read-now{background:#c69a3e!important;color:#17130d!important}.nt-reader-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:22px}.nt-reader-library-card img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover}.nt-reader-library-card h3{font-family:Georgia,serif;margin:10px 0 2px}.nt-reader-library-card p{margin:0 0 10px;color:#756d62}
@media(max-width:700px){.nt-reader-topbar{grid-template-columns:auto minmax(0,1fr) auto;padding:0 8px;gap:8px}.nt-reader-book-title span{display:none}.nt-reader-stage{padding:8px}.nt-reader-viewport{border-radius:7px}.nt-reader-content{padding:28px 22px;font-size:calc(17px * var(--ntr-font))}.nt-reader-preview-banner{font-size:12px;align-items:flex-start}.nt-reader-preview-banner span{display:none}.nt-reader-access-gate{flex-direction:column;text-align:center}.nt-reader-toolbar{gap:0}.nt-reader-toolbar button,.nt-reader-close{min-width:34px}}

.nt-reader-app [hidden]{display:none!important}


/* 0.1.3: Reader owns its theme/navigation controls.
   Hide the site-wide floating theme switcher so it never blocks reader navigation. */
body.nt-reader-standalone .nt-theme-toggle,
body.nt-reader-standalone #nt-theme-toggle{display:none!important}

.nt-reader-preview-inline-cta{
    margin:48px 0 10px;padding:28px clamp(20px,4vw,34px);
    border:1px solid var(--ntr-border);border-top:4px solid var(--ntr-gold);
    border-radius:14px;background:var(--ntr-panel);color:var(--ntr-text);
    text-align:center;font-family:Heebo,Arial,sans-serif
}
.nt-reader-preview-inline-cta h2{
    margin:.35em 0 .45em!important;font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(24px,4vw,34px);color:var(--ntr-text)
}
.nt-reader-preview-inline-cta p{max-width:650px;margin:0 auto 18px!important;color:var(--ntr-muted)}
.nt-reader-preview-complete{
    display:inline-block;text-transform:uppercase;letter-spacing:.12em;
    font-size:11px;font-weight:800;color:var(--ntr-gold)
}
.nt-reader-preview-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.nt-reader-secondary{
    display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;
    border:1px solid var(--ntr-border);border-radius:8px;background:transparent;
    color:var(--ntr-text);font-weight:800;cursor:pointer
}
.nt-reader-preview-end>div{position:relative}
.nt-reader-preview-dismiss{
    position:absolute;right:12px;top:10px;width:36px;height:36px;border:0;border-radius:999px;
    background:rgba(128,128,128,.12);color:var(--ntr-text);font-size:22px;cursor:pointer
}
.nt-reader-preview-end[hidden]{display:none!important}
@media(max-width:700px){
    .nt-reader-preview-inline-cta{margin-top:34px;padding:22px 18px}
    .nt-reader-preview-actions{display:grid}
    .nt-reader-preview-actions>*{width:100%;box-sizing:border-box}
}

/* 0.1.4 reader refinements */
:root{--ntr-line:1.75;--ntr-width:900px}
.nt-reader-viewport,.nt-reader-chapter-title{max-width:var(--ntr-width)}
.nt-reader-content{line-height:var(--ntr-line)}
.nt-reader-settings select{width:100%;padding:8px 10px;border:1px solid var(--ntr-border);border-radius:7px;background:var(--ntr-page);color:var(--ntr-text)}
.nt-reader-drawer-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.22);z-index:25;opacity:0;transition:opacity .18s ease}.nt-reader-drawer-backdrop.is-visible{opacity:1}.nt-reader-drawer-backdrop[hidden]{display:none!important}
.nt-reader-annotations{position:absolute;right:0;top:0;bottom:0;width:min(390px,90vw);background:var(--ntr-panel);border-left:1px solid var(--ntr-border);z-index:30;transform:translateX(102%);transition:.18s ease;box-shadow:-20px 0 50px rgba(0,0,0,.13);overflow:auto}.nt-reader-annotations.is-open{transform:none}.nt-reader-annotations-empty{padding:22px;color:var(--ntr-muted);font-size:14px;line-height:1.55}.nt-reader-annotations-list{padding:10px}.nt-reader-annotation-card{border:1px solid var(--ntr-border);border-left:5px solid #f0c94d;border-radius:10px;padding:12px;margin-bottom:10px;background:var(--ntr-page)}.nt-reader-annotation-card[data-color="blue"]{border-left-color:#73b8ff}.nt-reader-annotation-card[data-color="pink"]{border-left-color:#ff94be}.nt-reader-annotation-card[data-color="green"]{border-left-color:#7fd694}.nt-reader-annotation-quote{display:block;width:100%;padding:0;border:0;background:none;color:var(--ntr-text);text-align:left;font-family:Georgia,'Times New Roman',serif;font-size:15px;line-height:1.45;cursor:pointer}.nt-reader-annotation-card small{display:block;margin-top:8px;color:var(--ntr-muted)}.nt-reader-annotation-note{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--ntr-border);font-size:14px;line-height:1.5}.nt-reader-annotation-actions{display:flex;gap:8px;margin-top:10px}.nt-reader-annotation-actions button{border:0;background:none;color:var(--ntr-gold);font-weight:800;cursor:pointer;padding:4px 0}.nt-reader-annotation-actions button+button{color:var(--ntr-muted)}
.nt-reader-selection-menu{position:fixed;z-index:120;display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--ntr-border);border-radius:999px;background:var(--ntr-panel);box-shadow:0 12px 35px rgba(0,0,0,.25);color:var(--ntr-text);font-family:Heebo,Arial,sans-serif;font-size:12px}.nt-reader-selection-menu[hidden]{display:none!important}.nt-reader-selection-menu>span{font-weight:800;margin-right:1px}.nt-reader-selection-menu button[data-reader-highlight]{width:24px;height:24px;border-radius:50%;border:2px solid rgba(0,0,0,.14);cursor:pointer}.nt-reader-selection-menu .is-yellow{background:#f7dc72}.nt-reader-selection-menu .is-blue{background:#87c6ff}.nt-reader-selection-menu .is-pink{background:#ffa4c8}.nt-reader-selection-menu .is-green{background:#92dda3}.nt-reader-add-note{border:0;background:none;color:var(--ntr-gold);font-weight:800;cursor:pointer;padding:5px 6px}
.nt-reader-note-dialog{position:fixed;inset:0;background:rgba(10,10,10,.72);z-index:130;display:grid;place-items:center;padding:20px}.nt-reader-note-dialog[hidden]{display:none!important}.nt-reader-note-dialog>div{position:relative;width:min(560px,94vw);background:var(--ntr-panel);color:var(--ntr-text);padding:28px;border-radius:16px;box-shadow:0 24px 90px rgba(0,0,0,.35)}.nt-reader-note-dialog strong{font-family:Georgia,'Times New Roman',serif;font-size:26px}.nt-reader-note-dialog blockquote{margin:16px 0;padding:12px 14px;border-left:4px solid var(--ntr-gold);background:var(--ntr-page);color:var(--ntr-muted);max-height:130px;overflow:auto}.nt-reader-note-dialog textarea{box-sizing:border-box;width:100%;resize:vertical;border:1px solid var(--ntr-border);border-radius:10px;background:var(--ntr-page);color:var(--ntr-text);padding:12px;font:inherit}.nt-reader-note-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
::highlight(nt-yellow){background:#f7dc72;color:#17130d}::highlight(nt-blue){background:#87c6ff;color:#17130d}::highlight(nt-pink){background:#ffa4c8;color:#17130d}::highlight(nt-green){background:#92dda3;color:#17130d}
@media(max-width:700px){.nt-reader-selection-menu{max-width:calc(100vw - 16px);gap:5px}.nt-reader-selection-menu>span{display:none}.nt-reader-selection-menu button[data-reader-highlight]{width:28px;height:28px}.nt-reader-note-actions{display:grid}.nt-reader-note-actions>*{width:100%;box-sizing:border-box}.nt-reader-annotations{width:92vw}}

/* 0.1.8 refund-awareness notices */
.nt-reader-refund-notice{position:fixed;inset:0;background:rgba(10,10,10,.68);z-index:140;display:grid;place-items:center;padding:20px}
.nt-reader-refund-notice[hidden]{display:none!important}
.nt-reader-refund-notice>div{width:min(520px,calc(100vw - 40px));box-sizing:border-box;background:var(--ntr-panel);color:var(--ntr-text);padding:30px;border:1px solid var(--ntr-border);border-radius:16px;box-shadow:0 24px 90px rgba(0,0,0,.38);text-align:center}
.nt-reader-refund-kicker{display:inline-block;margin-bottom:10px;padding:5px 9px;border-radius:999px;background:rgba(198,154,62,.16);color:var(--ntr-gold);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.nt-reader-refund-notice strong{display:block;font-family:Georgia,serif;font-size:27px;line-height:1.18;margin-bottom:12px}
.nt-reader-refund-notice p{line-height:1.55;margin:0 0 14px}
.nt-reader-refund-notice .nt-reader-refund-legal{font-size:12px;color:var(--ntr-muted);margin-bottom:20px}
.nt-reader-refund-notice .nt-reader-primary{border:0;cursor:pointer}
.nt-reader-refund-notice .nt-reader-primary:disabled{opacity:.65;cursor:wait}

/* Fixed-layout EPUB book mode: preserve original viewport/aspect ratio exactly. */
.nt-reader-app.is-fixed-layout .nt-reader-viewport{max-width:none;background:color-mix(in srgb,var(--ntr-bg) 92%,#000 8%)}
.nt-reader-content.is-fixed-layout{padding:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:initial;line-height:normal}
.nt-reader-content.is-fixed-layout .nt-reader-fixed-page-wrap{position:relative;flex:0 0 auto;overflow:visible;margin:auto}
.nt-reader-fixed-page-frame{display:block;border:0;background:#fff;position:absolute;left:0;top:0;transform-origin:top left;box-shadow:0 8px 28px rgba(0,0,0,.16)}
.nt-reader-app.is-fixed-layout [data-reader-settings],
.nt-reader-app.is-fixed-layout [data-reader-annotations]{display:none!important}
.nt-reader-app.is-fixed-layout .nt-reader-chapter-title{max-width:none;text-align:center}
@media(max-width:700px){.nt-reader-content.is-fixed-layout{padding:8px}.nt-reader-stage{padding-left:8px;padding-right:8px}}


/* 1.0.2 fixed-layout sizing correction.
   Keep the reading stage at the real browser height and center the intact page. */
.nt-reader-app.is-fixed-layout{
    height:100dvh;
    min-height:480px;
}
.nt-reader-app.is-fixed-layout .nt-reader-main,
.nt-reader-app.is-fixed-layout .nt-reader-stage{
    min-height:0;
    height:100%;
}
.nt-reader-app.is-fixed-layout .nt-reader-stage{
    overflow:hidden;
}
.nt-reader-app.is-fixed-layout .nt-reader-viewport{
    width:100%;
    height:100%;
    min-height:320px;
    overflow:hidden;
}
.nt-reader-content.is-fixed-layout{
    width:100%;
    height:100%;
    min-height:0;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}
.nt-reader-content.is-fixed-layout .nt-reader-fixed-page-wrap{
    position:relative;
    flex:0 0 auto;
    margin:auto;
}


/* 1.1.1 Novel Thunder managed opening cover.
   The catalog cover is presented by the Reader without modifying the EPUB package. */
.nt-reader-opening-cover{position:absolute;inset:0;z-index:24;display:grid;place-items:center;padding:18px;background:var(--ntr-bg);box-sizing:border-box}
.nt-reader-opening-cover[hidden]{display:none!important}
.nt-reader-opening-cover-inner{height:100%;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.nt-reader-opening-cover img{display:block;max-width:min(420px,82vw);max-height:calc(100% - 58px);width:auto;height:auto;object-fit:contain;border-radius:5px;box-shadow:0 16px 48px rgba(0,0,0,.18)}
.nt-reader-start-reading{border:0;min-width:170px;padding:11px 18px;cursor:pointer;font:inherit}
.nt-reader-app.is-showing-opening-cover .nt-reader-footer{visibility:hidden}
.nt-reader-app.is-showing-opening-cover .nt-reader-chapter-title{visibility:hidden}
@media(max-width:700px){.nt-reader-opening-cover{padding:10px}.nt-reader-opening-cover img{max-width:88vw;max-height:calc(100% - 54px)}.nt-reader-start-reading{width:min(320px,88vw)}}

.nt-reader-rating-prompt{position:fixed;inset:0;z-index:10020;background:rgba(0,0,0,.58);display:grid;place-items:center;padding:18px}.nt-reader-rating-prompt[hidden]{display:none}.nt-reader-rating-prompt>div{position:relative;width:min(420px,92vw);background:#fffaf0;color:#17110a;border-radius:20px;padding:24px;box-shadow:0 22px 70px rgba(0,0,0,.35)}.nt-reader-rating-prompt strong{display:block;font:700 25px/1.08 Georgia,serif;margin:8px 28px 8px 0}.nt-reader-rating-stars{display:flex;gap:7px;margin:14px 0}.nt-reader-rating-stars button{border:0;background:transparent;color:#d39a18;font-size:34px;cursor:pointer;padding:0}.nt-reader-rating-prompt textarea{box-sizing:border-box;width:100%;border:1px solid #ddcfb2;border-radius:12px;padding:12px;background:#fffdf8;color:#17110a}

.nt-reader-complete-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.nt-reader-complete-actions a{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #ddcfb2;border-radius:11px;color:#17110a;text-decoration:none;font-weight:800;background:#fffdf8}.nt-reader-complete-actions a:first-child{background:#17110a;color:#fffaf0;border-color:#17110a}

.nt-reader-complete-inline{margin:48px 0 18px;padding:28px clamp(20px,4vw,34px);border:1px solid var(--ntr-border);border-top:4px solid var(--ntr-gold);border-radius:14px;background:var(--ntr-panel);color:var(--ntr-text);text-align:center;font-family:Heebo,Arial,sans-serif}
.nt-reader-complete-inline[hidden]{display:none!important}
.nt-reader-complete-inline h2{margin:.35em 0 .45em!important;font-family:Georgia,'Times New Roman',serif;font-size:clamp(24px,4vw,34px);color:var(--ntr-text)}
.nt-reader-complete-inline p{margin:0 auto 14px!important;color:var(--ntr-muted)}
.nt-reader-complete-inline textarea{box-sizing:border-box;width:100%;border:1px solid var(--ntr-border);border-radius:12px;padding:12px;background:var(--ntr-page);color:var(--ntr-text);margin:0 0 12px}
.nt-reader-inline-stars{justify-content:center}
.nt-reader-complete-inline>[data-reader-inline-rating-status]{display:block;margin-top:10px}
body.nt-reader-standalone .nt-app-nav,
body.nt-reader-standalone .ntv4-bottom-nav,
body.nt-reader-standalone nav.nt-app-bottom,
body.nt-reader-standalone .nt-app-bottom-nav{display:none!important}
@media(max-width:700px){.nt-reader-complete-inline{margin-top:34px;padding:22px 18px}}
