.detail-shell{min-height:100vh;max-width:1200px;margin:0 auto;padding:var(--space-16) var(--space-8) var(--space-16)}@media (max-width:720px){.detail-shell{padding:var(--space-12) var(--space-4)}}.detail-crumb{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--reader-fg-muted);margin-bottom:var(--space-8)}.detail-crumb a{color:inherit;text-decoration:none;transition:color var(--motion-fast) var(--easing-default)}.detail-crumb a:hover{color:var(--reader-fg)}.detail-crumb .sep{margin:0 var(--space-2);opacity:.5}.detail-hero{display:grid;grid-template-columns:240px 1fr;grid-gap:var(--space-12);gap:var(--space-12);align-items:start}@media (max-width:720px){.detail-hero{grid-template-columns:1fr;gap:var(--space-8)}}.cover{width:240px;max-width:100%;aspect-ratio:2/3;border-radius:var(--radius-md);overflow:hidden;position:relative;border:1px solid var(--reader-border);background:repeating-linear-gradient(135deg,color-mix(in oklab,var(--reader-fg) 6%,var(--reader-border)) 0 8px,color-mix(in oklab,var(--reader-fg) 3%,var(--reader-border)) 8px 16px);box-shadow:var(--shadow-md);transition:border-color var(--motion-slow) var(--easing-default)}.cover:after{content:"cover";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--reader-fg-muted);opacity:.8}.cover.has-image{background:var(--reader-bg)}.cover.has-image:after{content:none}.cover .cover-img{object-fit:cover}.hero-info{min-width:0}.novel-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--reader-fg-muted);margin-bottom:var(--space-3)}.novel-title-h1{font-weight:600;font-size:clamp(32px,4.2vw,46px);line-height:1.15;letter-spacing:-.015em;margin:0 0 var(--space-6) 0;color:var(--reader-fg);max-width:22ch;text-wrap:pretty}.novel-byline,.novel-title-h1{font-family:var(--reader-font-family)}.novel-byline{font-size:15px;line-height:1.5;color:var(--reader-fg-muted);margin:0 0 var(--space-8) 0}.novel-byline .sep{margin:0 var(--space-3);opacity:.5}.novel-meta-groups{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-8)}.novel-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.genre-meta{gap:var(--space-2)}.genre-chip{font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;color:var(--reader-fg);background:color-mix(in oklab,var(--reader-fg) 6%,transparent);border:1px solid transparent;border-radius:var(--radius-pill)}.info-meta{gap:var(--space-2)}.info-item,.info-meta{align-items:baseline;font-size:13px;color:var(--reader-fg-muted)}.info-item{letter-spacing:0;text-transform:none;padding:0;border:none;border-radius:0;display:inline-flex}.info-item.status-ongoing{color:var(--reader-accent);font-weight:500}.info-sep{opacity:.5}.info-sep,.meta-chip{color:var(--reader-fg-muted)}.meta-chip{font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border:1px solid var(--reader-border);border-radius:var(--radius-pill);transition:border-color var(--motion-slow) var(--easing-default),color var(--motion-slow) var(--easing-default)}.meta-chip.status-ongoing{color:var(--reader-accent);border-color:color-mix(in oklab,var(--reader-accent) 40%,var(--reader-border))}.info-item .dot-live,.meta-chip.status-ongoing .dot-live{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--reader-accent);margin-right:6px;transform:translateY(-1px);animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.novel-synopsis{max-width:660px;margin-bottom:var(--space-12)}.novel-synopsis p{font-family:var(--reader-font-family);font-size:17px;line-height:1.65;color:var(--reader-fg);margin:0 0 var(--space-4) 0}.novel-synopsis p:last-child{margin-bottom:0;color:var(--reader-fg-muted);font-style:italic}.cta-row{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-8);flex-wrap:wrap}.btn-primary{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);font-family:var(--reader-font-family);font-size:14px;letter-spacing:.04em;color:var(--reader-bg);background:var(--reader-fg);border:1px solid var(--reader-fg);border-radius:var(--radius-md);transition:transform var(--motion-fast) var(--easing-default),background-color var(--motion-slow) var(--easing-default),color var(--motion-slow) var(--easing-default),border-color var(--motion-slow) var(--easing-default);text-decoration:none}.btn-primary:hover{transform:translateY(-1px)}.btn-primary svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.btn-primary .chapter-hint{font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.7;margin-left:var(--space-2);padding-left:var(--space-3);border-left:1px solid color-mix(in oklab,var(--reader-bg) 30%,transparent)}.btn-ghost{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4);font-family:var(--reader-font-family);font-size:13px;color:var(--reader-fg-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);transition:color var(--motion-fast) var(--easing-default),border-color var(--motion-fast) var(--easing-default);text-decoration:none}.btn-ghost:hover{color:var(--reader-fg);border-color:var(--reader-border)}.chapters-section{margin-top:var(--space-16);padding-top:var(--space-8);border-top:1px solid var(--reader-border);transition:border-color var(--motion-slow) var(--easing-default)}.chapters-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-6);gap:var(--space-4);flex-wrap:wrap}.chapters-header h2{font-family:var(--reader-font-family);font-weight:600;font-size:20px;margin:0;color:var(--reader-fg)}.chapters-header .count{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--reader-fg-muted)}.chapters-header .sort-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-size:12px;letter-spacing:.04em;color:var(--reader-fg-muted);padding:var(--space-2) var(--space-3);border:1px solid var(--reader-border);border-radius:var(--radius-md);transition:color var(--motion-fast) var(--easing-default),border-color var(--motion-fast) var(--easing-default)}.sort-toggle:hover{color:var(--reader-fg);border-color:var(--reader-fg-muted)}.chapter-table{list-style:none;margin:0;padding:0}.chapter-row{display:grid;grid-template-columns:56px 1fr auto auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:baseline;padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--reader-border);color:var(--reader-fg);cursor:pointer;transition:background-color var(--motion-fast) var(--easing-default),border-color var(--motion-slow) var(--easing-default),padding var(--motion-fast) var(--easing-default);text-decoration:none;position:relative}.chapter-row:first-child{border-top:1px solid var(--reader-border)}.chapter-row:hover{background:color-mix(in oklab,var(--reader-fg) 3%,transparent);padding-left:calc(var(--space-4) + 4px)}.chapter-row .ch-num{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;letter-spacing:.04em;color:var(--reader-fg-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chapter-row .ch-title{font-family:var(--reader-font-family);font-size:16px;line-height:1.35;color:var(--reader-fg);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-row .ch-status{font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:2px 0}.chapter-row .ch-date,.chapter-row .ch-status{color:var(--reader-fg-muted);white-space:nowrap}.chapter-row .ch-date{font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chapter-row.is-unread .ch-num:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--reader-accent);margin-right:var(--space-2);transform:translateY(-1px)}.chapter-row.is-unread .ch-title{color:var(--reader-fg)}.chapter-row.is-read .ch-num,.chapter-row.is-read .ch-title{color:var(--reader-fg-muted)}.chapter-row.is-read .ch-title{font-weight:400}.chapter-row.is-last-read{background:color-mix(in oklab,var(--reader-accent) 6%,transparent)}.chapter-row.is-last-read:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--reader-accent)}.chapter-row.is-last-read .ch-title{color:var(--reader-fg);font-weight:500}.chapter-row.is-last-read .ch-status{color:var(--reader-accent);font-weight:500}@media (max-width:720px){.chapter-row{grid-template-columns:40px 1fr auto}.chapter-row .ch-date{display:none}.chapter-row .ch-title{white-space:normal}}