/* Novel-only refinements. Approved control frames and manuscript styles stay intact. */
.novel-full-cover{display:block;width:100%;height:auto;object-fit:contain;object-position:center;aspect-ratio:auto;max-width:100%;background:#080b11;filter:none}
.novel-relationship{display:block;font-family:'Agency FB',sans-serif;font-size:15px;line-height:1.3;font-weight:700;letter-spacing:1.1px;color:#a8c6ff;margin-bottom:8px}
.story-novel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}
.story-novel-link{display:flex;flex-direction:column;align-items:center;gap:15px;text-decoration:none;padding:18px 14px;background:#0d1522;border:1px solid #3d6dff55;min-width:0}
.story-novel-link .novel-full-cover{height:190px;width:100%;max-width:150px}.story-novel-link>span{width:100%;text-align:center}.story-novel-link strong{display:block;font-family:'Orbitron',sans-serif;font-size:15px;line-height:1.5;color:#f4f7ff;overflow-wrap:break-word}
.story-novel-link:hover,.story-novel-link:focus-visible{border-color:#91b4ff;background:#13223a}
.story-orientation-wrap.section{grid-template-columns:minmax(0,1fr)}
.story-novels-section.section{padding-block:18px 28px}
.story-novels-section .section-heading{margin-bottom:14px}
#view-chapters .story-novels-section h2{font-size:29px;margin:0}
.story-novels-intro{font-size:14px;line-height:1.75;max-width:780px;margin:0}
.story-novels-section .story-novel-grid{margin:20px 0 0}
.novel-product .product-art-button{height:350px;background:#080d16;padding:22px;box-sizing:border-box}
.novel-product .book-cover{max-width:230px;height:100%;width:100%;aspect-ratio:auto;object-fit:contain;box-shadow:none}
.novel-product.is-book-target{border-color:#89b2ff;box-shadow:0 0 0 1px #3d6dff55}
.novel-product .product-copy .eyebrow{font-size:12px;line-height:1.4;letter-spacing:1px}
.novel-product .product-copy p{line-height:1.7}.novel-product .product-buttons{margin-top:auto}
dialog.book-details{--book-details-inset:30px;width:min(960px,calc(100vw - 32px));max-width:960px;box-sizing:border-box}
.novel-current-meta{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:20px;color:#aab9ce}
.novel-current-meta p{font-size:12px!important;margin:0!important}
.book-details .dialog-top{position:sticky;top:calc(0px - var(--book-details-inset));z-index:6;padding-block:8px;background:#101c2ef5;backdrop-filter:blur(8px);box-shadow:0 1px 0 #3d6dff44}
.novel-details-intro{display:grid;grid-template-columns:220px minmax(0,1fr);gap:34px;align-items:center}
.novel-details-intro>div{min-width:0}.novel-details-copy{grid-column:2;grid-row:1}.novel-artwork figure{margin:0}.novel-artwork-frame{height:350px;display:flex;align-items:center;justify-content:center;background:#080b11}
.novel-details-intro .novel-artwork{grid-column:1;grid-row:1;width:220px;max-width:100%;justify-self:center}
.novel-details-intro .novel-artwork-frame{height:280px}.novel-details-intro .novel-artwork-frame img{max-height:280px}
.novel-artwork-frame .novel-full-cover{width:100%;height:100%;max-height:350px;object-fit:contain}
.novel-artwork figcaption{font-size:12px;line-height:1.5;color:#aab3c5;margin-top:10px}
.novel-cover-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.novel-cover-controls .quiet-button{padding:10px 12px;min-width:0}
.novel-cover-controls [aria-pressed=true]{--face-top:#1d3e7c}.novel-artwork>.small{font-size:12px!important;line-height:1.5;margin-top:9px}
.novel-details-copy h2{margin-top:0}.novel-details-copy>p{line-height:1.7}
.novel-about-story,.novel-reading-guide,.novel-editions{padding-top:24px;margin-top:28px;border-top:1px solid #3d6dff33;min-width:0}
#detail-dialog.book-details :is(.novel-about-story,.novel-reading-guide,.novel-editions)>h3{font-size:21px;margin:0 0 17px}
#detail-dialog.book-details :is(.novel-about-story,.novel-reading-guide)>p{font-size:15px;line-height:1.85;margin:0 0 16px;color:#c8d3e3}
.novel-cinematic-tagline{padding:19px 24px;margin:26px 0;border-block:1px solid #3d6dff55;border-left:2px solid #3d6dff;background:linear-gradient(100deg,#3d6dff12,#080b1100)}
#detail-dialog.book-details .novel-cinematic-tagline p{margin:0;font-family:'Orbitron',sans-serif;font-weight:500;font-size:clamp(17px,2vw,23px);line-height:1.55;color:#dbe8ff;text-shadow:0 0 18px #3d6dff20}
#detail-dialog.book-details .novel-series-position{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;font-size:12px;margin-top:18px;color:#9fb7dc}
.novel-series-position span{font-family:'Agency FB',sans-serif;letter-spacing:.8px;font-weight:700;font-size:15px;color:#afcaff}
.novel-editions .edition-availability{margin-bottom:20px}.novel-editions dd{overflow-wrap:break-word}
.novel-details-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.novel-details-actions.no-print{grid-template-columns:minmax(0,1fr)}
.novel-details-actions>.button{width:100%;box-sizing:border-box;min-width:0;gap:12px;justify-content:space-between}
.novel-details-actions>.novel-all-books-action{grid-column:1/-1}
#detail-dialog.book-details .novel-retailer-note{font-size:12px;line-height:1.7;margin:14px 0 0}
.novel-book-navigation{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:24px;margin-top:24px;border-top:1px solid #3d6dff44}
.novel-book-navigation .button{justify-content:center;gap:10px;padding:13px 15px;min-width:0}
.novel-completion{border-top:1px solid #3d6dff66;margin-top:32px;padding-top:28px;color:#f5f7fa;font-family:Arial,sans-serif}
.novel-completion h3,.novel-completion h4{font-family:'Orbitron',sans-serif;overflow-wrap:break-word;color:#f5f7fa;line-height:1.4;letter-spacing:-.025em}
.novel-completion>h3{font-size:25px;margin:0 0 14px}.novel-completion>p{font-size:14px!important;line-height:1.75!important;color:#bcc9dc!important;margin:0 0 22px}
.novel-purchase-card{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px 22px;background:linear-gradient(135deg,#132440,#0b111d);border:1px solid #3d6dff77;padding:22px}
.novel-purchase-art,.novel-path-art{border:0;padding:0;background:#080b11;display:flex;align-items:center;justify-content:center;cursor:pointer;min-width:0}
.novel-purchase-art{grid-row:1/3;align-self:start}.novel-purchase-art img{height:148px;width:100%;object-fit:contain}
.novel-purchase-copy{min-width:0}.novel-purchase-copy h4{font-size:19px;margin:0 0 12px}.novel-purchase-copy p{font-size:13px!important;line-height:1.6!important;margin:0!important;color:#bcc9dc!important}
.novel-purchase-actions{grid-column:2;min-width:0}.novel-purchase-actions>.button{width:100%;box-sizing:border-box;justify-content:space-between;gap:12px}
.novel-purchase-actions>.small{font-size:11px!important;line-height:1.6!important;margin:12px 0 0;color:#aab9ce!important}
.novel-reading-paths{margin-top:30px;padding-top:24px;border-top:1px solid #3d6dff33}.novel-reading-paths>h3{font-size:21px;margin:0 0 20px}
.novel-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.novel-path-card{display:grid;grid-template-columns:70px minmax(0,1fr);grid-template-rows:1fr auto;gap:16px 14px;padding:18px;background:#0d1522;border:1px solid #3d6dff44;min-width:0}
.novel-path-card.is-primary-path{border-color:#729dff;background:linear-gradient(135deg,#142640,#0c1421)}
.novel-path-art{align-self:start;height:108px}.novel-path-art img{width:100%;height:100%;object-fit:contain}
.novel-path-card>div{min-width:0}.novel-path-card h4{font-size:16px;margin:0 0 10px}.novel-path-card p{font-size:12px!important;line-height:1.65!important;margin:0!important;color:#bbc8db!important}
.novel-path-card>.button{grid-column:1/-1;width:100%;box-sizing:border-box;justify-content:space-between;gap:10px;padding:13px 15px}
.novel-path-card .novel-relationship{font-size:12px;letter-spacing:.8px}
.sample-reader .sample-foot{display:flex;align-items:center;gap:14px 25px;flex-wrap:wrap}.sample-reader .sample-foot p{width:100%}
@media(max-width:700px){
 dialog.book-details{--book-details-inset:22px}
 .novel-product .product-art-button{height:315px}.novel-details-intro{grid-template-columns:minmax(0,1fr);gap:26px}
 .novel-artwork{max-width:300px;width:100%;margin-inline:auto}.novel-artwork-frame{height:310px}.novel-artwork-frame img{max-height:310px}
 .novel-current-meta{align-items:start;flex-direction:column;gap:8px}.novel-current-meta p{font-size:11px!important}
 .novel-details-actions{grid-template-columns:minmax(0,1fr)}.novel-cinematic-tagline{padding:18px}.novel-about-story,.novel-reading-guide,.novel-editions{margin-top:24px;padding-top:22px}
 .novel-book-navigation{gap:8px}.novel-book-navigation .button{font-size:16px;padding:13px 8px}
 .novel-path-grid{grid-template-columns:minmax(0,1fr)}.novel-path-card{grid-template-columns:72px minmax(0,1fr)}
 .novel-completion>h3{font-size:22px}.novel-reading-paths>h3{font-size:19px}
 .novel-purchase-card{grid-template-columns:72px minmax(0,1fr);padding:17px;gap:16px}.novel-purchase-art{grid-row:auto}.novel-purchase-art img{height:110px}
 .novel-purchase-actions{grid-column:1/-1}.novel-purchase-copy h4{font-size:17px}
}
@media(max-width:600px){.story-novel-grid{grid-template-columns:minmax(0,1fr);gap:12px}.story-novel-link{display:grid;grid-template-columns:70px minmax(0,1fr);padding:14px;gap:16px}.story-novel-link .novel-full-cover{height:104px;width:70px}.story-novel-link>span{text-align:left}.story-novel-link strong{font-size:15px}}

/* The dialog itself is the sole scrolling region; navigation stays in flow. */
dialog.book-details{overflow-y:auto;overscroll-behavior:contain}
.novel-books-exit{margin-top:12px}.novel-books-exit>.button{width:100%;min-width:0;justify-content:space-between}
.novel-book-navigation .button{white-space:normal;overflow-wrap:anywhere;line-height:1.4;min-height:48px}
@media(max-width:700px){
 dialog.book-details{max-height:calc(100dvh - 32px)}
 .novel-details-intro .novel-artwork{grid-column:auto;grid-row:auto;width:260px}
 .novel-details-copy{display:contents}
 .novel-details-heading{order:-1;min-width:0}
 .novel-details-copy>.edition-author{order:1;margin:0}
 .novel-details-copy>.novel-intro-description{order:2;margin:0}
 .novel-details-intro{gap:18px}
 .novel-details-copy>p{line-height:1.7}
}

/* Shadowfall's two authorized openings share the existing novel reader. */
.sample-sections{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0;padding:0;border:0;background:none}
.sample-sections .quiet-button{min-width:0;min-height:44px;margin:0;padding:10px 14px}
.sample-sections [aria-pressed=true]{--edge:#6ea0ff;--face-top:#1d3e7c}
.sample-reader .prologue-completion .button{max-width:100%;white-space:normal;min-width:0;justify-content:space-between}
@media(max-width:430px){.sample-reader .shadowfall-toolbar{flex-wrap:wrap}.sample-reader .shadowfall-toolbar span{flex-basis:100%;order:-1;text-align:center}.sample-reader .shadowfall-toolbar button{flex:1}.sample-reader .prologue-completion .button{width:100%}}
