body:has(.bp){overflow-x:clip}.bp{isolation:isolate;padding-top:20px;position:relative}.bp-backdrop{z-index:-1;top:calc(-1 * var(--space-2));pointer-events:none;width:100vw;height:clamp(420px,70vh,760px);position:absolute;left:50%;overflow:hidden;translate:-50%;-webkit-mask-image:linear-gradient(#000 30%,#0000);mask-image:linear-gradient(#000 30%,#0000)}.bp-backdrop img{object-fit:cover;object-position:50% 30%;filter:blur(28px)saturate(1.1);opacity:.4;width:100%;height:100%;transform:scale(1.12)}.bp-backdrop:after{content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--color-bg) 70%, transparent), transparent 60%);position:absolute;inset:0}.bp-grid{grid-template-columns:112px minmax(0,1fr);grid-template-areas:"cover title""meta meta""buy buy""nav nav""about about""similar similar""discussion discussion""side side";align-items:start;column-gap:16px;display:grid}.bp-left{display:contents}.bp-cover{grid-area:cover;min-width:0}.bp-title{grid-area:title;min-width:0}.bp-meta{grid-area:meta;min-width:0}.bp-buy{grid-area:buy;min-width:0}.bp-nav{grid-area:nav}.bp-about{grid-area:about;min-width:0}.bp-similar{grid-area:similar;min-width:0}.bp-discussion{grid-area:discussion;min-width:0}.bp-side{grid-area:side;min-width:0}.bp-about,.bp-buy,.bp-side,.bp-meta,.bp-chapters__body{grid-template-columns:minmax(0,1fr)}.bp-cover .cover{width:100%;max-width:none;margin:0;box-shadow:0 18px 44px #06041061}.bp-series{font-size:var(--text-sm);margin:0 0 4px}.bp-series a{color:var(--color-link);font-weight:700;text-decoration:none}.bp-genre{letter-spacing:.12em;text-transform:uppercase;color:var(--color-link);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:.72rem;font-weight:800;display:flex}.bp-h1{font:600 clamp(1.75rem, 1.2rem + 2.6vw, 3.5rem)/1.04 var(--font-display);letter-spacing:-.01em;text-wrap:balance;overflow-wrap:anywhere;margin:6px 0 10px}.bp-author{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.bp-author__link{color:var(--color-text);min-height:var(--tap-min);align-items:center;gap:8px;font-weight:700;text-decoration:none;display:inline-flex}.bp-author__link:hover span{color:var(--color-link)}.bp-author__link--co{color:var(--color-text-muted)}.bp-author .follow-action small{display:block}.bp-meta{gap:12px;margin-top:14px;display:grid}.star-action{align-items:center;gap:8px;display:inline-flex}.star-btn{border:1px solid var(--color-border);background:var(--color-surface);min-height:36px;color:var(--color-text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 10px;font-weight:700;transition:border-color .15s,background-color .15s;display:inline-flex}.star-btn svg{color:var(--ll-gold)}.star-btn svg path{fill:#0000;stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round}.star-btn:hover:not(:disabled){border-color:var(--ll-gold)}.star-btn[aria-pressed=true]{border-color:var(--ll-gold);background:color-mix(in srgb, var(--ll-gold) 14%, var(--color-surface))}.star-btn[aria-pressed=true] svg path{fill:currentColor}.star-btn:disabled{cursor:progress}.star-btn__n{font-variant-numeric:tabular-nums;color:var(--color-text-muted);font-weight:650}.bp-stats{font-size:var(--text-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 16px;margin:0;display:flex}.bp-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.bp-chips li{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-surface-2) 80%, transparent);white-space:nowrap;align-items:center;min-height:28px;padding:0 11px;font-size:.78rem;font-weight:700;display:inline-flex}.bp-buy{gap:10px;margin-top:16px;display:grid}.bp-buy__price{flex-wrap:wrap;align-items:center;gap:4px 12px;min-height:0;display:flex}.bp-buy__price:empty{display:none}.bp-buy__price small{color:var(--color-text-muted);font-size:var(--text-sm)}.bp-buy__owned{color:var(--color-link);font-weight:700}.bp-buy__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bp-buy__actions .bp-read{flex:100%;justify-content:center}.bp-buy__purchase{flex:auto;justify-content:center}.bp-buy__support{flex:auto;justify-content:center;align-self:stretch}.bp-buy__library{display:flex}.bp-quiet{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.bp-quiet>*{margin:0}.bp-quiet .btn{min-height:32px;box-shadow:none;color:var(--color-text-muted);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:.8rem;font-weight:600}.bp-quiet .btn:hover{color:var(--color-text)}.bp-quiet .btn[aria-pressed=true]{color:var(--color-link)}.bp-quiet p{margin:0;font-size:.8rem}.bp-nav{top:var(--site-header-height,64px);z-index:5;scrollbar-width:none;margin:22px calc(-1 * var(--gutter)) 0;padding:0 var(--gutter);background:color-mix(in srgb, var(--color-bg) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);gap:2px;display:flex;position:sticky;overflow-x:auto}.bp-nav::-webkit-scrollbar{display:none}.bp-nav a{min-height:46px;color:var(--color-text-muted);font-size:var(--text-sm);border-bottom:2px solid #0000;flex:none;align-items:center;gap:5px;padding:0 12px;font-weight:750;text-decoration:none;display:inline-flex}.bp-nav a small{opacity:.8;font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:650}.bp-nav a[aria-current=true]{color:var(--color-text);border-color:var(--color-accent)}.bp-nav a:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}#about,#chapters,#discussion,#similar{scroll-margin-top:calc(var(--site-header-height,64px) + 56px)}.bp-about{gap:16px;margin-top:20px;display:grid}.bp-label{font:800 .72rem/1.2 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 6px}.bp-annotation{max-width:72ch}.bp-clamp{white-space:pre-line;-webkit-line-clamp:var(--clamp,5);-webkit-box-orient:vertical;margin:0;font-size:1.02rem;line-height:1.65;display:-webkit-box;overflow:hidden}.bp-clamp[data-open]{-webkit-line-clamp:unset;display:block}.bp-link{color:var(--color-link);font:750 var(--text-sm) var(--font-ui);cursor:pointer;background:0 0;border:0;padding:4px 0;text-decoration:none}.bp-link:hover{text-decoration:underline}.bp-about .content-notice{max-width:72ch;color:var(--color-text-muted);margin:0;font-size:.72rem}.bp-about .ai-disclosure{max-width:72ch;margin:0}.bp-tags{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.bp-tags li{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-surface) 70%, transparent);align-items:center;gap:6px;min-height:34px;padding:0 12px 0 9px;font-size:.82rem;font-weight:650;display:inline-flex}.bp-tags svg{width:16px;height:16px;color:var(--color-link)}.bp-media .media-strip{margin:0}.bp-series-order{gap:10px;display:grid}.bp-chapters{margin-top:32px}.bp-h2{font:600 clamp(1.5rem, 1.2rem + 1vw, 2rem)/1.1 var(--font-display);margin:0 0 12px}.bp-h2 small{font:700 var(--text-sm) var(--font-ui);color:var(--color-text-muted);margin-left:4px}.bp-chapters__body{justify-items:start;gap:12px;display:grid}.bp-chapters__search{width:min(100%,420px);min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);padding:0 14px}.bp-toc{border-top:1px solid var(--color-border);width:100%;margin:0;padding:0;list-style:none}.bp-toc li{border-bottom:1px solid var(--color-border)}.bp-toc__item{min-height:52px;color:var(--color-text);grid-template-columns:2.2em minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 4px;text-decoration:none;display:grid}.bp-toc__item:hover{background:color-mix(in srgb, var(--color-surface) 60%, transparent)}.bp-toc__item:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px;border-radius:8px}.bp-toc__n{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:var(--text-sm);text-align:right}.bp-toc__title{overflow-wrap:anywhere;gap:2px;font-weight:650;display:grid}.bp-toc__title small{color:var(--color-text-muted);font-size:.74rem;font-weight:500}.bp-toc__meta{color:var(--color-text-muted);white-space:nowrap;align-items:center;font-size:.78rem;display:inline-flex}.bp-toc__meta--free{color:var(--color-link);font-weight:700}.bp-discussion{margin-top:36px}.bp .book-discussion{max-width:none;margin:0;padding:0}.bp-side{align-content:start;gap:16px;margin-top:32px;display:grid}.bp-author-card{display:none}.bp-similar{margin-top:32px}.bp-similar .discovery-sidebar{background:0 0;border:0;padding:0}.bp-similar .discovery-sidebar h2{margin-bottom:12px;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}.bp-similar .discovery-sidebar a{grid-template-columns:1fr;align-items:start;gap:8px}.bp-similar .discovery-sidebar .cover{border-radius:10px;width:100%;max-width:none}@media (max-width:1023px){.bp-similar .discovery-sidebar ul{grid-auto-flow:column;grid-auto-columns:max(var(--shelf-cover), 132px);gap:var(--shelf-gap);scrollbar-width:none;scroll-snap-type:x proximity;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);overflow-x:auto}.bp-similar .discovery-sidebar ul::-webkit-scrollbar{display:none}.bp-similar .discovery-sidebar li{scroll-snap-align:start}}.bp-sticky{z-index:calc(var(--z-chrome) - 1);left:0;right:0;bottom:var(--bottom-nav-h,0px);padding:10px max(var(--gutter), env(safe-area-inset-right)) 10px max(var(--gutter), env(safe-area-inset-left));background:color-mix(in srgb, var(--color-surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--color-border);visibility:hidden;align-items:center;gap:12px;display:flex;position:fixed;transform:translateY(110%)}.bp-sticky[data-show]{visibility:visible;transform:none}.bp-sticky .cover{flex:none;width:34px}.bp-sticky__text{flex:1;gap:1px;min-width:0;display:grid}.bp-sticky__text strong{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bp-sticky__text small{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}@media (prefers-reduced-motion:no-preference){.bp-sticky{transition:transform var(--dur-base) var(--ease-out), visibility var(--dur-base)}}@media (min-width:600px){.bp-sticky{padding-bottom:calc(10px + env(safe-area-inset-bottom))}.bp-grid{grid-template-columns:200px minmax(0,1fr);grid-template-areas:"cover title""cover meta""cover buy""nav nav""about about""similar similar""discussion discussion""side side";column-gap:28px}.bp-buy__actions .bp-read{flex:0 auto;min-width:200px}.bp-chips li{font-size:.8rem}}@media (min-width:1024px){.bp{padding-top:36px}.bp-grid{grid-template:"left title""left meta""left about""left similar""left discussion"1fr"side side"/240px minmax(0,1fr);column-gap:40px}.bp-left{grid-area:left;align-content:start;align-self:stretch;gap:18px;display:grid}.bp-cover,.bp-buy{grid-area:auto}.bp-buy{top:calc(var(--site-header-height,64px) + 16px);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-top:0;padding:16px;position:sticky;box-shadow:0 18px 40px #06041024}.bp-buy__price{font-size:1.15rem}.bp-buy__actions{display:grid}.bp-buy__actions .bp-read,.bp-buy__purchase{width:100%;min-width:0}.bp-buy__library>*{width:100%}.bp-buy__library .btn{justify-content:center;width:100%}.bp-nav{display:none}.bp-meta{margin-top:16px}.bp-about{margin-top:26px}.bp-sticky{display:none}.bp-side{margin-top:40px}.bp-similar{margin-top:36px}.bp-similar .discovery-sidebar ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:24px 20px}}@media (min-width:1280px){.bp-grid{grid-template-columns:260px minmax(0, 1fr) var(--rail-w);grid-template-rows:auto auto auto auto 1fr;grid-template-areas:"left title side""left meta side""left about side""left similar side""left discussion side";column-gap:36px}.bp-side{margin-top:0}.bp-author-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;gap:10px;padding:16px;display:grid}.bp-author-card__head{color:var(--color-text);align-items:center;gap:12px;text-decoration:none;display:flex}.bp-author-card__head strong{font:600 1.15rem/1.15 var(--font-display)}.bp-side{top:calc(var(--site-header-height,64px) + 16px);max-height:calc(100dvh - var(--site-header-height,64px) - 32px);overscroll-behavior:contain;scrollbar-width:thin;align-self:start;position:sticky;overflow-y:auto}.bp-side .bp-chapters{border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;margin-top:0;padding:16px}.bp-side .bp-chapters .bp-h2{font-size:1.35rem}.bp-side .bp-toc__item{grid-template-columns:1.6em minmax(0,1fr);gap:2px 10px;min-height:0;padding-block:10px}.bp-side .bp-toc__meta{grid-column:2;justify-self:start;font-size:.74rem}.bp-side .bp-toc__title{overflow-wrap:break-word}.bp-side .bp-chapters__search{width:100%}}@media (min-width:1440px){.bp-grid{grid-template-columns:300px minmax(0, 1fr) var(--rail-w);column-gap:44px}}@media (min-width:1920px){.bp-grid{grid-template-columns:300px minmax(0, 1fr) minmax(400px, 440px) var(--rail-w);grid-template-rows:auto auto auto 1fr;grid-template-areas:"left title discussion side""left meta discussion side""left about discussion side""left similar discussion side";column-gap:40px}.bp-discussion{top:calc(var(--site-header-height,64px) + 16px);max-height:calc(100dvh - var(--site-header-height,64px) - 32px);overscroll-behavior:contain;border:1px solid var(--color-border);background:var(--color-surface);scrollbar-width:thin;border-radius:18px;align-self:start;margin-top:0;padding:18px;position:sticky;overflow-y:auto}.bp-similar{margin-top:36px}}@media (min-width:2400px){.bp-grid{grid-template-columns:340px minmax(0, 1fr) minmax(480px, 560px) var(--rail-w);column-gap:48px}}.bp-buy__purchase{gap:6px}.bp-buy__purchase .price-text{font-variant-numeric:tabular-nums;font-weight:800}.price-text s{opacity:.6;margin-left:4px;font-weight:600}.bp-buy__note{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.bp-buy__note.bp-buy__owned{color:var(--color-link);font-weight:700}.bp-genre a{color:inherit;border-bottom:1px solid color-mix(in srgb, currentColor 35%, transparent);text-decoration:none}.bp-genre a:hover{border-bottom-color:currentColor}
