/* Book controls own their layout; shared directory panels have a different grid. */
.book-browse-tools{display:flex;align-items:flex-start;gap:10px;margin-bottom:24px}
main.book-room .book-browse-tools .book-browse-switch{margin-bottom:0}
.book-browse-info{position:relative;flex:none;margin:4px 0 0 auto}
.book-browse-info>summary{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;color:var(--a-muted);cursor:pointer;list-style:none}
.book-browse-info>summary::-webkit-details-marker{display:none}
.book-browse-info>summary:hover{background:var(--a-surface);color:var(--a-ink)}
.book-browse-info>summary:focus-visible{outline:2px solid var(--room-accent);outline-offset:2px}
.book-browse-info-panel{position:absolute;z-index:50;top:calc(100% + 8px);right:0;box-sizing:border-box;width:min(360px,calc(100vw - 40px));padding:18px;border:1px solid var(--a-line);border-radius:12px;background:var(--a-card);box-shadow:0 14px 40px #0002}
.book-browse-info-panel p{font:400 .875rem/1.65 var(--type-sans,system-ui);margin:0;color:var(--a-muted)}
main.book-room .book-browse-switch{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 24px;padding:4px;border:1px solid var(--a-line);border-radius:12px;background:var(--a-card);width:fit-content;max-width:100%;box-sizing:border-box}
main.book-room .book-browse-switch button{font:500 .875rem/1.4 var(--type-sans,system-ui);border:1px solid transparent;border-radius:8px;background:transparent;color:var(--a-muted);padding:10px 15px;min-height:44px;cursor:pointer}
main.book-room .book-browse-switch button[aria-pressed=true]{background:var(--a-surface);border-color:var(--a-line);color:var(--a-ink)}
main.book-room #resource-filters{display:block;position:relative;gap:12px;padding:0;border:0;background:transparent;box-shadow:none;margin:0 0 14px;min-width:0}
main.book-room .book-search{width:calc(100% - 130px);max-width:none;min-width:0;display:block;font:500 .8125rem/1.5 var(--type-sans,system-ui);color:var(--a-muted)}
main.book-room #resource-q{display:block;width:100%;box-sizing:border-box;min-height:48px;margin-top:0;padding:11px 14px;background:var(--a-card);color:var(--a-ink);border:1px solid var(--a-line);border-radius:9px;font:400 1rem/1.5 var(--type-sans,system-ui)}
main.book-room #resource-more-filters{display:block;min-width:0;margin:0;padding:0;border:0;background:transparent}
main.book-room #resource-more-filters>summary{position:absolute;right:0;top:0;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;width:118px;box-sizing:border-box;padding:8px 14px;border:1px solid var(--a-line);border-radius:9px;background:var(--a-card);color:var(--a-ink);cursor:pointer;list-style:none;font:500 .875rem/1.5 var(--type-sans,system-ui);white-space:nowrap}
.book-room #resource-more-filters>summary::-webkit-details-marker{display:none}
.book-room #resource-more-filters[open]>summary{background:var(--a-selected)}
.book-room #resource-more-filters>summary svg{flex:none;display:block}
.book-room #resource-more-filters[open] .book-filter-chevron{transform:rotate(180deg)}
main.book-room .book-filter-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px;padding:20px;background:var(--a-card);border:1px solid var(--a-line);border-radius:10px;box-sizing:border-box}
main.book-room .book-filter-fields label{font:500 .8125rem/1.5 var(--type-sans,system-ui);display:block;min-width:0}
main.book-room .book-filter-fields select{display:block;width:100%;margin-top:6px;min-height:40px}
main.book-room .book-filter-fields .book-free-filter{grid-column:1/-1;display:flex;align-items:center;gap:10px}
main.book-room .book-free-filter input{flex:none;accent-color:var(--room-accent);width:18px;height:18px;margin:0}
main.book-room .resource-filter-foot{grid-column:1/-1;justify-content:flex-end;padding:0;margin:0;border:0;min-height:0}
.book-room .resource-filter-foot:has(>button[hidden]):not(:has(>button:not([hidden]))){display:none}
main.book-room #resource-reset{font:500 .875rem/1.5 var(--type-sans,system-ui);padding:9px 18px;min-height:44px;border:1px solid var(--a-line);border-radius:8px;background:var(--a-card);text-decoration:none;color:var(--room-accent);cursor:pointer}
main.book-room #resource-reset:hover{background:var(--a-surface)}
main.book-room #resource-more-filters:not([open]) .book-filter-fields{display:none}
main.book-room #resource-filters [hidden]{display:none!important}
.book-room .resource-results-heading{border-bottom:1px solid var(--a-line);padding-bottom:14px;margin:20px 0 26px}
.book-room .resource-results-heading strong{font-weight:500;color:var(--a-muted)}
.book-room #resource-context:empty,.book-room #resource-status:empty{display:none}
.book-room .book-grid{--book-column-gap:24px;--shelf-top:color-mix(in srgb,var(--room-accent) 16%,var(--a-card));--shelf-front:color-mix(in srgb,var(--room-accent) 28%,var(--a-surface));--shelf-edge:color-mix(in srgb,var(--room-accent) 40%,var(--a-line));display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:36px var(--book-column-gap);align-items:start;padding:8px 0 0}
.book-room .book-tile{position:relative;min-width:0;border:0;padding:0;background:none;scroll-margin-top:24px}
.book-tile summary{cursor:pointer;list-style:none;color:var(--a-ink)}
.book-tile summary::-webkit-details-marker{display:none}
.book-cover{height:218px;display:flex;justify-content:center;align-items:flex-end;position:relative;padding:12px 8px 17px;margin-bottom:22px;background:none}
/* Adjacent segments meet across the grid gap, forming one ledge per row.
   Native full-width book details keep their own surface, without a ledge. */
.book-disclosure:not([open]) .book-cover::before,.book-disclosure:not([open]) .book-cover::after{content:"";position:absolute;left:calc(var(--book-column-gap)/-2);right:calc(var(--book-column-gap)/-2);pointer-events:none}
.book-disclosure:not([open]) .book-cover::before{bottom:11px;height:6px;background:linear-gradient(to bottom,var(--shelf-top),var(--shelf-front));border-top:1px solid var(--shelf-edge)}
.book-disclosure:not([open]) .book-cover::after{bottom:0;height:11px;background:linear-gradient(to bottom,var(--shelf-front),var(--shelf-edge));border-top:1px solid var(--shelf-top);box-shadow:0 9px 10px -6px #23110c38}
html[data-theme=dark] .book-disclosure:not([open]) .book-cover::after{box-shadow:0 9px 12px -5px #0009}
.book-cover img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;box-shadow:2px 4px 6px #23110c24,5px 12px 18px #23110c18;border-radius:1px 3px 3px 1px;transition:transform .18s ease,box-shadow .18s ease}
.book-open-mark{display:grid;place-items:center;position:absolute;bottom:23px;right:0;z-index:1;width:26px;height:26px;border:1px solid var(--a-line);border-radius:50%;background:var(--a-card);color:var(--room-accent);font-size:18px;line-height:1}
.book-caption{display:block}
html body[data-atlas-room] main .book-tile h3{font:600 .9375rem/1.45 var(--type-sans,system-ui)!important;letter-spacing:0;margin:0 0 5px;color:var(--a-ink);text-wrap:pretty}
.book-author{display:block;font-size:.8125rem;line-height:1.5;color:var(--a-muted)}
.book-one-line{display:block;font-size:.75rem;line-height:1.5;margin-top:8px;color:var(--a-muted)}
.book-close-label{display:none}
.book-room .book-save{font:500 .75rem/1.5 var(--type-sans,system-ui);min-height:40px;padding:7px 0;margin-top:4px;border:0;background:transparent;color:var(--room-accent);cursor:pointer}
.book-room .book-save[aria-pressed=true]{font-weight:650}
.book-cover-fallback{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:24px;aspect-ratio:2/3;max-height:100%;padding:20px 16px;border:1px solid var(--a-line);border-left:5px solid var(--room-accent);background:var(--a-card);color:var(--a-ink);font:500 1rem/1.4 var(--type-sans,system-ui);box-shadow:3px 8px 14px #23110c18}
.book-cover-fallback small{font-size:.75rem;color:var(--a-muted)}
.book-room .book-tile:has(>.book-disclosure[open]){grid-column:1/-1;background:var(--a-card);border:1px solid var(--a-line);border-radius:12px;padding:28px 32px;box-shadow:0 8px 28px #23110c08}
.book-disclosure[open]>summary{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:26px;max-width:820px}
.book-disclosure[open] .book-cover{height:164px;padding:0;margin:0;background:none;border:0}
.book-disclosure[open] .book-open-mark{display:none}
html body[data-atlas-room] main .book-disclosure[open]>summary h3{font-size:1.375rem!important;line-height:1.35!important}
.book-disclosure[open] .book-author{font-size:.9375rem}
.book-disclosure[open] .book-one-line{font-size:.8125rem}
.book-disclosure[open] .book-close-label{display:inline-flex;gap:10px;align-items:center;font-size:.8125rem;color:var(--room-accent);margin-top:14px}
.book-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;border-top:1px solid var(--a-line);margin-top:24px;padding-top:26px}
.book-panel :is(p,li){font-size:.9375rem;line-height:1.7}
.book-panel p{margin:0 0 16px}
.book-panel h4,.book-panel strong{font-size:.8125rem;line-height:1.5;font-weight:600;margin:0 0 7px;color:var(--a-ink)}
.book-panel .book-tradition-context{font-size:.8125rem;line-height:1.6;color:var(--a-muted);padding-left:12px;border-left:2px solid var(--a-line)}
.book-tradition-context strong{display:block;margin-bottom:3px}
.book-panel .book-description{font-size:1rem;color:var(--a-ink)}
.book-why,.book-panel .book-first-read{padding:0;border:0;background:transparent;margin:22px 0}
.book-panel .book-first-read p{font-size:.9375rem}
.book-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:24px 0 12px}
.book-actions a{font-size:.875rem;color:var(--room-accent)}
.book-actions .resource-source{display:inline-flex;align-items:center;gap:20px;border:1px solid var(--room-accent);border-radius:7px;padding:10px 16px;min-height:44px;box-sizing:border-box;background:var(--room-accent);color:var(--a-card);text-decoration:none;font-weight:600}
html[data-theme=dark] .book-actions .resource-source{color:var(--a-paper)}
.book-panel .book-access-note{font-size:.8125rem;color:var(--a-muted)}
.book-edition{font-size:.8125rem;border-top:1px solid var(--a-line);margin-top:24px;padding-top:15px}
.book-edition>summary{list-style:revert;color:var(--a-muted);font-size:.8125rem;padding:4px 0}
.book-edition>summary::-webkit-details-marker{display:inline}
.book-edition[open]>summary{margin-bottom:14px}
.book-edition :is(p,li,a){font-size:.8125rem}
.book-edition ul{padding-left:18px}
.book-explore{border-left:1px solid var(--a-line);padding-left:32px}
html body[data-atlas-room] main .book-explore>h3{font-size:1rem!important;margin:0 0 22px}
.book-explore section{margin-bottom:22px}
.book-explore ul{list-style:none;padding:0;margin:0}
.book-explore li{margin:0 0 12px}
.book-explore li>a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.875rem;font-weight:500;text-decoration:none;color:var(--room-accent)}
.book-explore li>a:hover{text-decoration:underline;text-underline-offset:4px}
.book-explore li>a>span{font-size:.8125rem;flex-shrink:0}
.book-explore li>p{font-size:.8125rem;line-height:1.55;margin:4px 0 0;color:var(--a-muted)}
.book-explore .talk-connection-backlinks{border:0;background:transparent;padding:0;margin:0}
.book-explore :is(.talk-connection-backlinks a,.resource-secondary-source){display:block;font-size:.875rem;margin:8px 0;color:var(--room-accent)}
.book-explore .talk-connection-backlinks svg{display:none}
.book-tradition-links{display:flex;gap:7px;flex-wrap:wrap}
.book-tradition-links a{font-size:.75rem;text-decoration:none;padding:4px 9px;border:1px solid var(--a-line);border-radius:5px;color:var(--a-muted)}
.book-shelf{margin-bottom:56px}
.book-shelf+.book-shelf{padding-top:28px;border-top:1px solid var(--a-line)}
.book-shelf>header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 22px;padding-top:8px}
html body[data-atlas-room] main.book-room .book-shelf>header h2{font-family:var(--a-display,Georgia,serif)!important;font-size:calc(1.875rem * var(--reading-scale,1))!important;font-weight:600!important;line-height:1.2!important;margin:0;color:var(--a-ink)}
/* Metadata only: glossary spans inside the heading must inherit its size. */
.book-shelf>header>span{font-size:.875rem;color:var(--a-muted);flex-shrink:0}
.book-shelf>header button{padding:8px 0;min-height:44px;border:0;background:transparent;cursor:pointer;color:var(--room-accent)}
.book-shelf>header button span{font:inherit;color:inherit}
.book-room .book-shelf-note{font-size:.8125rem;color:var(--a-muted);margin:0 0 24px}
.book-room .book-curation-note{font-size:.8125rem;max-width:780px;color:var(--a-muted);margin-top:40px;border-top:1px solid var(--a-line);padding-top:20px}
.book-room .book-curation-note summary{cursor:pointer}
.book-room :is(button,summary,a,input,select):focus-visible{outline:2px solid var(--room-accent);outline-offset:5px;border-radius:4px}
@media(hover:hover){.book-disclosure:not([open])>summary:hover .book-cover img{transform:translateY(-5px);box-shadow:3px 6px 7px #23110c24,6px 15px 24px #23110c20}.book-disclosure:not([open])>summary:hover h3{text-decoration:underline;text-underline-offset:4px}}
@media(max-width:1150px){.book-room .book-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.book-cover{height:216px}}
@media(max-width:800px){.book-room .book-grid{--book-column-gap:20px;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}.book-cover{height:200px}.book-panel{grid-template-columns:1fr;gap:24px}.book-explore{border-left:0;border-top:1px solid var(--a-line);padding:24px 0 0}main.book-room .book-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){main.book-room #resource-q,main.book-room .book-filter-fields select,main.book-room #resource-more-filters>summary{min-height:44px}main.book-room #resource-q{padding-block:9px}main.book-room #resource-more-filters>summary{padding-block:10px}}
@media(max-width:560px){.book-room .book-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px}.book-cover{height:196px;padding-inline:4px}main.book-room .book-browse-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:4px;margin-bottom:20px}main.book-room .book-browse-switch button{padding:10px 8px;white-space:normal;min-width:0}main.book-room #resource-filters{grid-template-columns:minmax(0,1fr) max-content;gap:10px}main.book-room #resource-more-filters>summary{padding:10px 12px}main.book-room #resource-more-filters>summary>svg:first-child{display:none}main.book-room .book-filter-fields{grid-template-columns:1fr;padding:16px}.book-room .book-tile:has(>.book-disclosure[open]){padding:20px}.book-disclosure[open]>summary{grid-template-columns:80px minmax(0,1fr);gap:18px}.book-disclosure[open] .book-cover{height:120px}html body[data-atlas-room] main .book-disclosure[open]>summary h3{font-size:1.125rem!important}.book-panel{margin-top:20px;padding-top:20px}.book-shelf>header{align-items:baseline;gap:12px;margin-bottom:16px}html body[data-atlas-room] main.book-room .book-shelf>header h2{font-size:calc(1.625rem * var(--reading-scale,1))!important}.book-room .book-shelf>header button{white-space:nowrap;flex-shrink:0}}
@media(prefers-reduced-motion:reduce){.book-cover img{transition:none!important;transform:none!important}}

@media(max-width:360px){main.book-room #resource-filters{grid-template-columns:minmax(0,1fr)}main.book-room #resource-more-filters{justify-self:start}}

@media(max-width:560px){main.book-room .book-search{width:calc(100% - 110px)}main.book-room #resource-more-filters>summary{width:100px}}

.talk-connection-backlinks{display:grid;gap:.45rem;margin:1rem 0;font-size:.88rem}.talk-connection-backlinks strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.talk-atlas-connections{margin-top:1rem;border-top:1px solid var(--line,#d8ded5);padding-top:.8rem}.talk-atlas-connections summary{cursor:pointer;font-weight:600}.talk-atlas-connections>div{margin-top:1rem}.talk-atlas-connections ul{padding-left:1.2rem}.talk-atlas-connections li{margin:.55rem 0}.talk-atlas-connections small{display:block;opacity:.78}.talk-atlas-connections .editorial-note{font-size:.8rem;line-height:1.5}.talk-connection-status{padding:.7rem 0;font-size:.92rem}.talk-connection-backlinks a,.talk-atlas-connections a{overflow-wrap:anywhere}
.teacher-recording-links{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;margin:.65rem 0;font-size:.9rem}
.teacher-recording-links a{display:inline-flex;align-items:center;gap:.4rem;min-height:40px;color:var(--a-accent,#235c48);text-underline-offset:4px}
.teacher-recording-count{color:var(--a-muted,#617169);font-size:.85em;font-variant-numeric:tabular-nums}
.teacher-recording-links a:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}

/* Generated by scripts/build-themes.mjs; edit the authored stylesheet instead. */
@media screen{:where(html[data-theme="dark"]) .talk-atlas-connections{border-top:1px solid var(--line,hsl(100 12% 30% / 1))}
:where(html[data-theme="dark"]) .teacher-recording-links a{color:var(--a-accent,hsl(159 45% 84% / 1))}
:where(html[data-theme="dark"]) .teacher-recording-count{color:var(--a-muted,hsl(150 8% 80% / 1))}}
