.book-byline{margin:.2rem 0 .6rem;color:var(--secondary)}.book-badges{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0 1rem}.badge-muted{opacity:.75}.badge-model{border-style:dashed}.badge-inferred{border-style:dashed;color:#b45309;border-color:#b45309}[data-theme=dark] .badge-inferred,.dark .badge-inferred{color:#fbbf24;border-color:#fbbf24}.book-layout{display:block}.book-layout::after{content:"";display:table;clear:both}.book-cover{float:right;margin:0 0 1rem 1.5rem;max-width:180px}.book-cover img{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:6px;background:var(--entry)}.book-cover figcaption{font-size:.7rem;color:var(--secondary);margin-top:.25rem}.book-section{margin:1.6rem 0}.book-section h2{margin-bottom:.5rem}.book-section h3{margin:1.1rem 0 .3rem;font-size:1.05rem}.book-note{color:var(--secondary);font-size:.9rem;margin:.2rem 0 .6rem}.book-conf{color:var(--secondary);font-size:.8rem}.book-why{color:var(--secondary);font-size:.85rem}.book-facts{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0}.book-facts dt{color:var(--secondary);font-size:.9rem}.book-facts dd{margin:0}.book-table{border-collapse:collapse;width:100%;font-size:.95rem}.book-table th,.book-table td{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--border);vertical-align:top}.book-table th{width:38%;font-weight:600}.book-evidence{margin-top:.6rem;font-size:.9rem}.book-evidence summary{cursor:pointer}.book-links{padding-left:1.2rem;margin:.3rem 0}.book-links li{margin:.25rem 0}.books-explorer{margin:1.5rem 0}.books-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem;align-items:end;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--entry)}.bf-field{display:flex;flex-direction:column;gap:.2rem;min-width:0}.bf-wide{grid-column:1/-1}.bf-field label{font-size:.8rem;color:var(--secondary)}.bf-field input,.bf-field select{width:100%;padding:.5rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--theme);color:var(--primary);font-size:1rem}.bf-field input:focus-visible,.bf-field select:focus-visible,.bx-btn:focus-visible,.book-card a:focus-visible,.books-graph button:focus-visible,.bg-node:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.bx-btn{padding:.5rem 1rem;border:1px solid var(--border);border-radius:8px;background:var(--theme);color:var(--primary);cursor:pointer;font-size:.95rem}.bx-btn:hover{border-color:#3b82f6}.books-count{color:var(--secondary);font-size:.9rem;margin:.8rem 0 .4rem;min-height:1.3em}.books-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.book-card{display:grid;grid-template-columns:64px 1fr;gap:.8rem;padding:.9rem;border:1px solid var(--border);border-radius:12px;background:var(--entry);min-width:0}.book-card:hover,.book-card:focus-within{border-color:#3b82f6}.book-card-cover{width:64px;height:96px;border-radius:4px;background:var(--border);object-fit:cover}.book-card-cover.is-empty{display:block}.book-card h3{margin:0 0 .2rem;font-size:1rem;line-height:1.25;overflow-wrap:anywhere}.book-card h3 a{color:var(--primary)}.book-card-meta{margin:0 0 .35rem;color:var(--secondary);font-size:.82rem}.book-card-blurb{margin:.35rem 0 0;font-size:.85rem;color:var(--secondary)}.book-card .score-badge{margin:0 .25rem .25rem 0}.books-more{text-align:center;margin:1.2rem 0}.books-static-topic{margin:1.2rem 0 .3rem;font-size:1.05rem}.books-static-list{padding-left:1.2rem}.books-static-list li{margin:.2rem 0}.books-js .books-static{display:none}.books-graph{position:relative;border:1px solid var(--border);border-radius:12px;background:var(--entry);padding:.6rem;margin:.6rem 0 1rem}.bg-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end;margin-bottom:.5rem}.bg-toolbar .bf-field{flex:1 1 160px}.bg-btns{display:flex;gap:.3rem}.bg-stage{position:relative;touch-action:none}.bg-svg{width:100%;height:440px;display:block;background:var(--theme);border:1px solid var(--border);border-radius:8px;cursor:grab;touch-action:none;user-select:none}.bg-svg.is-panning{cursor:grabbing}.books-graph[data-mode=explorer] .bg-svg{height:min(70vh,640px)}.bg-edge{stroke:var(--secondary);stroke-width:1.4;fill:none}.bg-edge.inferred{stroke-dasharray:5 4;opacity:.8}.bg-edge.verified{stroke-width:2.2}.bg-node{cursor:pointer}.bg-node circle{stroke:var(--primary);stroke-width:1.5}.bg-node.is-center circle{stroke-width:3.5}.bg-node.type-book circle{fill:#3b82f6}.bg-node.type-person circle{fill:#10b981}.bg-node.type-paper circle{fill:#f59e0b}.bg-node.type-topic circle{fill:#8b5cf6}.bg-node.type-method circle{fill:#ec4899}.bg-node.type-edition circle{fill:#94a3b8}.bg-glyph{fill:#fff;font:700 11px system-ui,sans-serif;text-anchor:middle;dominant-baseline:central;pointer-events:none}.bg-label{fill:var(--primary);font:11px system-ui,sans-serif;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:var(--theme);stroke-width:3px}.bg-node.is-dim,.bg-edge.is-dim{opacity:.12}.bg-tip{position:absolute;z-index:5;pointer-events:none;max-width:260px;padding:.35rem .55rem;border:1px solid var(--border);border-radius:6px;background:var(--theme);color:var(--primary);font-size:.8rem;box-shadow:0 2px 8px rgba(0,0,0,.2)}.bg-legend{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin:.5rem 0;font-size:.8rem;color:var(--secondary);align-items:center}.bg-legend svg{vertical-align:middle}.bg-detail{margin:.5rem 0;font-size:.9rem;min-height:1.4em}.bg-list{font-size:.88rem;padding-left:1.2rem;max-height:16rem;overflow:auto;margin:.3rem 0}.bg-status{color:var(--secondary);font-size:.85rem;min-height:1.2em}.books-graph-fallback{color:var(--secondary);font-size:.9rem;margin:.3rem}@media(max-width:600px){.book-cover{float:none;margin:0 0 1rem;max-width:140px}.book-facts{grid-template-columns:1fr;gap:.1rem}.book-facts dd{margin-bottom:.5rem}.book-table th{width:auto;display:block;border-bottom:0;padding-bottom:0}.book-table td{display:block}.bg-svg{height:340px}.books-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}