:root{--reading-size:16px}:root[data-size=xsmall]{--reading-size:12px}:root[data-size=small]{--reading-size:14px}:root[data-size=large]{--reading-size:18px}:root[data-size=xlarge]{--reading-size:21px}.novel-site{--paper:var(--main-bg);--surface:#fff;--ink:var(--main-color);--muted:#6b6b6b;--line:#e2e2e2;--line-strong:#8a8a8a;--soft:#f5f5f5;--accent:#1a1a1a;--accent-hover:#000;--on-accent:#fff}.novel-site main{box-sizing:border-box;background:var(--paper);width:calc(100% - 40px);max-width:860px;min-height:65vh;color:var(--ink);margin:110px auto 40px;padding:24px 50px 48px;font:15px/1.8 -apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}:root[data-theme=dark] .novel-site{--surface:#101820;--muted:#a3acb5;--line:#2a3440;--line-strong:#5d6976;--soft:#1b242e;--accent:#f2f2f2;--accent-hover:#fff;--on-accent:#101820}.novel-site main *{box-sizing:border-box}.novel-site main a{color:inherit;text-decoration:none}.novel-site main a:hover{color:var(--accent);text-underline-offset:5px;text-decoration:underline}.novel-site main p a,.novel-site main h2 a{border-bottom:0}.novel-site main h1{text-align:left}.novel-site main h2,.novel-site main h3{color:var(--ink);border-bottom:0}.novel-site main h2{padding-bottom:0}.novel-site main :focus-visible{outline:2px solid var(--accent);outline-offset:5px}.novel-site [hidden]{display:none!important}.skip-link{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);z-index:101;border-radius:6px;padding:12px 16px;position:absolute;top:-80px;left:20px}.skip-link:focus{top:8px}.page-heading{margin:24px 0 40px}.eyebrow{color:var(--muted);letter-spacing:.08em;font-size:12px}.novel-site :is(h1,h2,h3,p){margin-block-start:0}.novel-site h1,.book h2{font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-weight:600}.novel-site h1{letter-spacing:.08em;overflow-wrap:anywhere;margin-block-end:12px;font-size:34px;line-height:1.6}.muted,.byline{color:var(--muted);font-size:13px}.book{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-inline:-20px;padding:32px 20px;transition:background-color .18s;position:relative}.book+.book{border-block-start:0}.book:hover{background:var(--soft)}.book:has(a:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}.book h2 a:after{content:"";position:absolute;inset:0}.book h2{letter-spacing:.06em;margin-bottom:10px;font-size:26px}.book-lead{margin-block-end:16px;font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-size:16px;line-height:1.9}.book-meta{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.book-meta li{color:var(--muted);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:3px 12px;font-size:12px}.book-meta .genre{background:var(--soft);border-color:#0000}.breadcrumb{color:var(--muted);flex-wrap:wrap;gap:12px;padding-block-start:28px;font-size:12px;display:flex}.book-heading{padding:52px 0 48px}.book-heading h1{font-size:40px}.synopsis{white-space:pre-line;margin:32px 0;line-height:2.2}.book-synopsis{color:var(--muted);white-space:normal;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:18px 0 0;font-size:14px;line-height:1.95;display:-webkit-box;overflow:hidden}.notes{color:var(--muted);margin:24px 0 0;padding-inline-start:1.2em;font-size:13px;line-height:2}.book-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.resume-episode{opacity:.85;font-size:12px;font-weight:400}.button{border:1px solid var(--line-strong);border-radius:6px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:10px 20px;font-size:14px;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.novel-site main .button:hover{background:var(--soft);border-color:var(--ink);color:var(--ink);text-decoration:none}.novel-site main .primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600}.novel-site main .primary:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover);text-decoration:none}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.section-heading h2{margin:0;font-size:18px;font-weight:500}.chapter-title{background:var(--soft);align-items:center;gap:12px;margin:24px 0 0;padding:13px 18px;font-size:14px;font-weight:500;display:flex}.chapter-count{color:var(--muted);margin-left:auto;font-size:12px;font-weight:400}.novel-site .chapter>summary{cursor:pointer;padding:0;list-style:none}.novel-site .chapter>summary::-webkit-details-marker{display:none}.chapter-title:after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);flex:none;width:7px;height:7px;transition:transform .18s;transform:translateY(-2px)rotate(45deg)}.chapter[open]>summary .chapter-title:after{transform:translateY(1px)rotate(225deg)}.novel-site .chapter>summary:hover .chapter-title:after{border-color:var(--ink)}.episode-list{margin:0;padding:0;list-style:none}.episode-list a{border-bottom:1px solid var(--line);grid-template-columns:65px 1fr 12px;align-items:baseline;gap:14px;padding:17px 18px;display:grid}.episode-list a:hover{background:var(--soft);text-decoration:none}.story-list a,.episode-list a.no-number{grid-template-columns:1fr 12px}.episode-number,.episode-arrow{color:var(--muted);font-size:12px}.reader-toolbar{border-block-end:1px solid var(--line);justify-content:space-between;align-items:center;margin-block-start:24px;padding-block-end:14px;font-size:13px;display:flex;position:relative}.reader-toolbar>a,.novel-site summary{padding:8px 0}.novel-site summary{cursor:pointer}.settings-panel{inset-inline:auto 0;background:var(--surface);border:1px solid var(--line);z-index:2;grid-template-columns:1fr 150px;align-items:center;gap:16px;width:310px;max-width:calc(100vw - 64px);padding:20px;display:grid;position:absolute;top:100%;box-shadow:0 8px 24px #0000000c}.novel-site select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);min-height:38px;padding:4px 8px}.episode-heading{margin-block:52px 56px}.work-title{color:var(--accent);font-size:14px}.episode-heading .eyebrow{margin-block:24px 12px}.episode-heading h1{letter-spacing:.04em;font-size:27px}.novel-body{font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,Noto Serif CJK JP,serif;font-size:var(--reading-size);letter-spacing:.04em;white-space:pre-wrap;overflow-wrap:anywhere;line-break:strict;font-weight:400;line-height:2}.episode-navigation{border-block-start:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin-block-start:64px;padding-block-start:32px;display:grid}.episode-navigation .button{flex-direction:column;gap:2px}.episode-navigation .button span{letter-spacing:.06em;color:var(--muted);font-size:11px}.episode-navigation-top{border-block-start:0;gap:12px;margin-block-start:0;padding-block-start:14px}.episode-navigation-top .button{min-height:0;color:var(--muted);border:0;border-radius:0;flex-direction:row;gap:6px;padding:4px 0;font-size:12px}.episode-navigation-top .button span{font-size:12px}.novel-site main .episode-navigation-top .button:hover{color:var(--ink);text-underline-offset:4px;background:0 0;border:0;text-decoration:underline}.episode-navigation-top .end-note{font-size:12px}.current-episode{text-align:center;color:var(--muted);font-size:12px}:root[data-writing=vertical] .novel-site main:has(.reader-sheet){border-radius:0;width:100%;max-width:none;margin-inline:0}:root[data-writing=vertical] .reader-sheet{writing-mode:vertical-rl;text-combine-upright:digits 2;width:100%;height:calc(100vh - 300px);min-height:320px;padding:36px 0 32px;overflow:auto hidden}:root[data-writing=vertical] .reader-sheet:focus-visible{outline-offset:2px}:root[data-writing=vertical] .episode-heading{margin-block:0 40px}:root[data-writing=vertical] .novel-body{line-height:1.9}:root[data-writing=vertical] .reader-sheet{scrollbar-width:thin;scrollbar-color:var(--line) transparent}:root[data-writing=vertical] .reader-sheet::-webkit-scrollbar{height:10px}:root[data-writing=vertical] .reader-sheet::-webkit-scrollbar-thumb{background:var(--line);border-radius:5px}.toc-link{padding:12px;font-size:13px}.end-note{text-align:center;color:var(--muted);font-size:13px}.empty-state{color:var(--muted);margin:40px 0}@media (width<=600px){.novel-site main{width:calc(100% - 24px);padding:20px 20px 32px}.page-heading{margin-top:16px}.book-heading{padding:36px 0}.book-heading h1{font-size:32px}.book-actions .button{padding:10px 16px}.episode-list a{grid-template-columns:52px 1fr 10px;gap:8px;padding:16px 4px;font-size:14px}.chapter-title{padding:12px}.episode-heading{margin-block:36px 40px}.episode-heading h1{font-size:23px}.episode-heading .eyebrow{font-size:11px}:root[data-writing=vertical] .novel-site main:has(.reader-sheet){width:100%;padding:20px 16px 28px}:root[data-writing=vertical] .reader-sheet{height:calc(100vh - 230px)}.episode-navigation{gap:10px}.episode-navigation-top{gap:8px;padding-block-start:12px}.episode-navigation-top .button{padding:4px 0}.episode-navigation-top .button,.episode-navigation-top .button span,.current-episode,.episode-navigation-top .end-note{font-size:11px}.episode-navigation .button{padding:10px 8px}}@media print{.novel-site>header,.novel-site>footer,.reader-toolbar,.episode-navigation,.breadcrumb{display:none}html .novel-site main{--paper:#fff;--surface:#fff;--ink:#000;--muted:#555;--accent:#000;width:100%;margin:0;padding:0}html[data-writing=vertical] .reader-sheet{writing-mode:horizontal-tb;height:auto;min-height:0;overflow:visible}}.novel-site main{border-radius:0}.novel-site main p{text-indent:0}.novel-site .settings-panel{background:var(--surface)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .novel-site{--surface:#101820;--ink:#fff;--muted:#a3acb5;--line:#2a3440;--line-strong:#5d6976;--soft:#1b242e;--accent:#f2f2f2;--accent-hover:#fff;--on-accent:#101820}}
