/* Perfect World report composition contract.
   One master, five modules. Research: 1 note + 2 + 2 reading modules.
   Evidence: 1 caption + 4 visual modules. Plates and transitions: 5 modules.
   All actual page composition rules are here; legacy illustration internals
   cannot choose page widths, text rails or heading positions. */
.book-report-measure { position: absolute; left: -100000px; top: 0; visibility: hidden; width: 170mm; }
.book-report-measure .book-content { width: 170mm; }
.book-editorial-page { page: editorial; break-before: page; break-after: page; break-inside: avoid; }
.book-root .book-editorial-page {
  --rail: 0mm; box-sizing: border-box; width: 170mm; height: 255mm;
  margin: 0; padding: 0; display: flex; flex-direction: column;
  font: 400 11.5pt/15.5pt "Book Barlow", Arial, sans-serif; color: #171715;
}
.book-root .book-editorial-header { height: 51mm; flex: none; margin: 0; padding: 0; }
.book-root .book-editorial-header .book-label { margin: 0 0 6mm; font: 400 9pt/13pt "Book Barlow", Arial, sans-serif; color: #e10600; letter-spacing: .04em; }
.book-root .book-editorial-header h2 { margin: 0; padding: 0; font: 400 28pt/32pt "Book Barlow", Arial, sans-serif; font-style: normal; letter-spacing: -.015em; text-transform: none; string-set: chapter-title content(text); }
.book-root .book-editorial-continuation .book-editorial-header { height: 25.5mm; }
.book-root .book-editorial-continuation .book-editorial-header .book-label { margin-bottom: 2mm; }
.book-root .book-editorial-continuation .book-editorial-header h2 { font: 400 14pt/18pt "Book Barlow", Arial, sans-serif; }
.book-root .book-editorial-body { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 6mm; }
.book-root .book-report-band { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); column-gap: 4.5mm; align-items: start; flex: none; min-width: 0; }
.book-root .book-report-band > * { min-width: 0; }
.book-root .book-report-annotation { grid-column: 1; font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; color: #60605b; }
.book-root .book-report-annotation p { margin: 0; text-indent: 0; font: inherit; color: inherit; }
.book-root .book-report-annotation > p:first-child { color: #e10600; }
.book-root .book-report-annotation strong , .book-root .book-report-annotation em { font: inherit; color: inherit; }
.book-root .book-report-annotation figcaption { margin: 3mm 0 0; padding: 0; border: 0; font: inherit; }
.book-root .book-report-annotation .book-report-sources-label { margin-top: 6mm; font-weight: 600; color: #171715; }
.book-root .book-report-annotation a { color: inherit; text-decoration: none; }
.book-root .book-report-annotation h3, .book-root .book-report-annotation h4 { font: 600 9pt/12.5pt "Book Barlow", Arial, sans-serif; color: #e10600; margin: 0; padding: 0; border: 0; font-style: normal; text-transform: none; }
.book-root .book-report-annotation .book-stats { margin: 5mm 0 0; padding: 0; }
.book-root .book-report-annotation .book-stats-heading { font: inherit; }
.book-root .book-report-annotation .book-stats dl > div { display: flex; justify-content: space-between; gap: 2mm; }
.book-root .book-report-annotation .book-stats dt { font: 600 12pt/15.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-report-annotation .book-stats dd { font: inherit; }
.book-root .book-report-main { grid-column: 2 / -1; min-width: 0; }
.book-root .book-report-copy { column-count: 2; column-gap: 4.5mm; column-fill: balance; font: 400 11.5pt/15.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-report-copy p , .book-root .book-report-copy ul , .book-root .book-report-copy ol { margin: 0; font: inherit; text-indent: 0; color: inherit; widows: 3; orphans: 3; }
.book-root .book-report-copy p + p { text-indent: 4mm; }
.book-root .book-report-copy h3, .book-root .book-report-copy h4 { margin: 5mm 0 2mm; padding: 0; border: 0; font: 600 12pt/15.5pt "Book Barlow", Arial, sans-serif; font-style: normal; text-transform: none; letter-spacing: 0; color: #e10600; break-after: avoid; }
.book-root .book-report-copy h3:first-child , .book-root .book-report-copy h4:first-child { margin-top: 0; }
.book-root .book-report-copy h3::after , .book-root .book-report-copy h4::after { content: none; }
.book-root .book-report-copy h3 + p , .book-root .book-report-copy h4 + p { text-indent: 0; }
.book-root .book-report-copy blockquote { margin: 4mm 0; padding: 0; border: 0; background: none; font: 400 14pt/18pt "Book Literata", Georgia, serif; text-transform: none; }
.book-root .book-report-copy blockquote::before { content: none; }
.book-root .book-report-copy .book-evidence-note { border: 0; border-top: .2mm solid #e10600; background: none; padding: 3mm 0 0; margin: 4mm 0 0; font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; color: #60605b; }
.book-root .book-report-copy .book-evidence-note::before { content: none; }
.book-root .book-editorial-page .book-figure { margin: 0; width: 100%; }
.book-root .book-editorial-page .book-figure-heading { display: block; width: 100%; margin: 0 0 4mm; }
.book-root .book-editorial-page .book-figure-heading p { margin: 0; max-width: none; font: 400 12pt/15.5pt "Book Barlow", Arial, sans-serif; text-transform: none; letter-spacing: 0; }
.book-root .book-editorial-page .book-figure-heading em { font-style: normal; }
.book-root .book-editorial-page .book-figure-drawing,
.book-root .book-editorial-page .book-figure-images { padding: 0; border: 0; background: none; }
.book-root .book-editorial-page .book-figure-drawing::before,
.book-root .book-editorial-page .book-figure-images::before { content: none; }
.book-root .book-editorial-page .book-panel-label { max-width: none; margin: 2mm 0 0 !important; font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif !important; letter-spacing: 0; text-transform: none; }
.book-root .book-editorial-page .vd-kicker , .book-root .book-editorial-page .vd-kick , .book-root .book-editorial-page .vd-foot , .book-root .book-editorial-page .vd-n , .book-root .book-editorial-page .hd-label , .book-root .book-editorial-page .hd-tag , .book-root .book-editorial-page .hd-foot , .book-root .book-editorial-page .hd-small { font-family: "Book Barlow", Arial, sans-serif; font-size: 8.5pt; line-height: 11.5pt; letter-spacing: 0; text-transform: none; }
.book-root .book-editorial-page .vd-bar-row { grid-template-columns: 40mm minmax(0,1fr); gap: 4.5mm; }
.book-root .book-editorial-page .vd-questions li { grid-template-columns: 8mm minmax(0,1fr); }
.book-root .book-editorial-page .vd-track { grid-column: 2; margin-top: 2mm; }
.book-root .book-editorial-page .vd-seq { gap: 4.5mm; }
.book-root .book-editorial-page .vd-seq .vd-word { font-size: 17pt; line-height: 20pt; }
.book-root .book-editorial-page .vd-loop { --D: 48mm; }
.book-root .book-editorial-page .vd-loop::before { height: 61mm; }
.book-root .book-editorial-page table { margin: 0; width: 100%; font: 400 10pt/13.5pt "Book Barlow", Arial, sans-serif; table-layout: fixed; }
.book-root .book-editorial-page th , .book-root .book-editorial-page td { padding: 2.5mm 2mm; overflow-wrap: anywhere; }
.book-root .book-editorial-page th { font-weight: 600; letter-spacing: 0; text-transform: none; }
.book-root .book-report-wide .book-report-main { grid-column: 1 / -1; }
.book-root .book-report-wide .book-report-annotation { grid-column: 1 / -1; margin-bottom: 4mm; column-count: 2; column-gap: 4.5mm; }
.book-root .book-report-wide .book-report-annotation:empty { display: none; }
.book-root .book-editorial-insert { break-inside: auto; }
/* Five-column content anchors, not equal-width half-page subgrids. */
.book-root .book-content .book-spread-kicker , .book-root .book-content .book-study-kicker { font: 400 9pt/13pt "Book Barlow", Arial, sans-serif; letter-spacing: .04em; margin: 0; }
.book-root .book-content .book-spread-title , .book-root .book-content .book-process-heading , .book-root .book-content .book-study-title { grid-row: 4 / 11; font: 400 28pt/32pt "Book Barlow", Arial, sans-serif; font-style: normal; text-transform: none; letter-spacing: -.015em; }
.book-root .book-pilot .pilot-kicker { font: 400 9pt/13pt "Book Barlow", Arial, sans-serif; margin-bottom: 6mm; }
.book-root .book-pilot .pilot-heading h2 { font: 400 28pt/32pt "Book Barlow", Arial, sans-serif; letter-spacing: -.015em; text-wrap: auto; }
.book-root .book-pilot .pilot-copy { font: 400 11.5pt/15.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-pilot .pilot-copy p + p { margin-top: 0; text-indent: 4mm; }
.book-root .book-pilot .pilot-copy h3 { font: 600 12pt/15.5pt "Book Barlow", Arial, sans-serif; margin: 0 0 2mm; }
.book-root .book-pilot .pilot-source { margin-top: 4mm; }
.book-root .book-iteration-image { grid-row: 12 / 35; }
.book-root .book-iteration-reflection { grid-column: 2 / 4; }
.book-root .book-iteration-question,
.book-root .book-iteration-status { grid-column: 4 / -1; }
.book-root .book-iteration-reflection,
.book-root .book-iteration-question { font: 400 11.5pt/15.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-comparison-images,
.book-root .book-comparison-readings { grid-column: 2 / -1; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4.5mm; }
.book-root .book-comparison-note { grid-column: 1; grid-row: 12 / 51; font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-study-concept-route .book-study-items > li { grid-template-columns: 65.3mm minmax(0,1fr); gap: 4.5mm; }
.book-root .book-study-exhibition-route .book-study-items { grid-column: 2 / -1; gap: 8mm 4.5mm; }
.book-root .book-study-film-versions .book-study-stage { grid-template-columns: 65.3mm 1fr; gap: 4.5mm; }
.book-root .book-study-reflections { grid-column: 2 / -1; gap: 4.5mm; }
.book-root .book-process-images { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 5mm 4.5mm; }
.book-root .book-process-tile-1,
.book-root .book-process-tile-3,
.book-root .book-process-tile-4 { grid-column: 1 / 3; }
.book-root .book-process-tile-2,
.book-root .book-process-tile-5 { grid-column: 3 / -1; }
.book-root .book-process-method { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 4.5mm; }
.book-root .book-process-method > div:nth-child(1) { grid-column: 1; }
.book-root .book-process-method > div:nth-child(2) { grid-column: 2 / 4; }
.book-root .book-process-method > div:nth-child(3) { grid-column: 4 / -1; }
.book-root .book-process-milestones li { grid-template-columns: 30.4mm minmax(0,1fr); gap: 4.5mm; }
@media print { .book-root .book-report-annotation { display: block !important; } }
.book-root .book-editorial-header > h2:first-child { padding-top: 12mm; }
.book-root .book-report-section .book-reference-entry { font: 400 10.5pt/14.5pt "Book Barlow", Arial, sans-serif; }
/* Common heading anchor: a quarter of the 51 mm horizontal module. */
.book-root .book-editorial-header { position: relative; }
.book-root .book-editorial-header h2 { position: absolute; left: 0; right: 0; top: 12.75mm; margin: 0; padding: 0; }
.book-root .book-editorial-header > h2:first-child { padding: 0; }
.book-root .book-editorial-continuation .book-editorial-header h2 { top: 7mm; }
.book-root .book-pilot .pilot-heading { position: relative; height: 51mm; }
.book-root .book-pilot .pilot-heading h2 { position: absolute; left: 0; right: 0; top: 12.75mm; }
.book-root .book-content .book-spread-title,
.book-root .book-content .book-process-heading,
.book-root .book-content .book-study-title { grid-row: 3 / 11; margin-top: 2.75mm; }
@media print { .book-root .book-editorial-page .book-evidence-note { display: block !important; } }
/* Keep the continuous edition responsive; page anchors belong to the book view. */
.book-root .book-reading-layout .pilot-heading { height: auto; }
.book-root .book-reading-layout .pilot-heading h2 { position: static; }
/* Source notes share the process writing frame and never spill to a new sheet. */
.book-root .book-pilot .pilot-source { margin-top: .5mm; }
/* Retained opening designs use the same column edges as the report. */
.book-root .book-opening-copy { grid-column: 2 / -1; grid-row: 26 / 52; }
.book-root .book-opening-edition { grid-column: 1; grid-row: 26 / 52; border: 0; padding: 0; font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-part .book-section-image-square { width: 135.1mm; }
.book-root .book-content .book-part .book-section-image-square img { height: 127.5mm; }
.book-root .book-content .book-cover-art { width: 100.2mm; }
.book-root .book-reading-layout .book-part .book-section-image-square { width: 100%; max-width: 600px; }
.book-root .book-reading-layout .book-opening-edition { margin-top: 24px; }
.book-root .book-reading-layout .book-contents { width: 100%; max-width: 100%; height: auto; min-height: 0; padding-left: 0; }
.book-root .book-reading-layout .book-contents > h2 { position: static; writing-mode: horizontal-tb; transform: none; font-size: 38px; margin-bottom: 24px; }
@media screen and (max-width: 700px) {
  .book-root .book-reading-layout .vd-mornings { grid-template-columns: 1fr; gap: 24px; }
  .book-root .book-reading-layout .vd-mornings > div { min-width: 0; border-left: 0; padding: 0; }
  .book-root .book-reading-layout .vd-bar { flex-wrap: wrap; height: auto; }
  .book-root .book-reading-layout .vd-seg { min-width: 0; white-space: normal; min-height: 30px; }
  .book-root .book-reading-layout .vd-contrast { grid-template-columns: minmax(0,1fr) 24px minmax(0,1fr); }
  .book-root .book-reading-layout .vd-open,
  .book-root .book-reading-layout .vd-gate { max-width: 100%; }
}
.book-root .book-reading-layout .book-iteration-spread { width: 100%; max-width: 100%; margin: 0; }
.book-root .book-reading-layout .book-cover h1 { font-size: clamp(56px, 12vw, 100px); line-height: .9; }
.book-root .book-reading-layout .book-content { overflow-wrap: anywhere; }
/* Image placement is independent of the number of reading columns. */
.book-root .book-editorial-page .book-report-copy > .book-figure {
  display: block; break-inside: avoid; margin: 5mm 0; padding: 0;
  width: 65.3mm; max-width: 100%; column-span: none;
}
.book-root .book-editorial-page .book-report-copy > .book-figure:first-child { margin-top: 0; }
.book-root .book-editorial-page .book-report-copy > .book-figure .book-figure-heading { margin: 0 0 3mm; }
.book-root .book-editorial-page .book-report-copy > .book-figure .book-figure-heading p { font: 400 12pt/15pt "Book Barlow", Arial, sans-serif; }
.book-root .book-editorial-page .book-report-copy > .book-figure .book-figure-heading p:first-child { font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; color: #e10600; margin-bottom: 1mm; }
.book-root .book-editorial-page .book-report-copy > .book-figure figcaption,
.book-root .book-editorial-page .book-report-copy > .book-figure figcaption p { font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; color: #60605b; text-indent: 0; }
.book-root .book-editorial-page .book-report-copy > .book-figure figcaption { margin: 3mm 0 0; padding: 0; border: 0; }
.book-root .book-editorial-page .book-report-copy > .book-figure .book-panel-label { font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif !important; }
.book-root .book-editorial-page .book-report-copy > .book-figure img { width: 100%; height: auto; max-height: 80mm; object-fit: contain; }
.book-root .book-editorial-page .book-report-copy-single { column-count: 1; }
.book-root .book-editorial-page .book-report-copy-single > :is(p,h3,h4,ol,ul,blockquote,aside) { max-width: 100.2mm; }
.book-root .book-pilot .pilot-page[data-reading-layout="single"] .pilot-copy { column-count: 1; max-width: 100.2mm; font: 400 10.5pt/14pt "Book Barlow", Arial, sans-serif; }
.book-root .book-editorial-page .book-report-visual-single .book-figure-images { grid-template-columns: 1fr; }
.book-root .book-editorial-page .book-report-visual-single img { max-height: 145mm; object-fit: contain; }
/* Compact figure typography is authored at column size, never scaled down. */
.book-root .book-report-copy .book-html-drawing { gap: 3mm; }
.book-root .book-report-copy .book-html-drawing :is(.vd-big,.vd-word) { font: 600 12pt/15pt "Book Barlow", Arial, sans-serif; }
.book-root .book-report-copy .book-html-drawing .vd-serif { font: 400 13pt/17pt "Book Literata", Georgia, serif; }
.book-root .book-report-copy .book-html-drawing :is(.vd-kicker,.vd-kick,.vd-foot,.vd-text) { font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-report-copy .vd-contrast { grid-template-columns: 1fr; gap: 3mm; }
.book-root .book-report-copy .vd-contrast-rule { display: none; }
.book-root .book-report-copy .vd-mountain { height: 39mm; }
.book-root .book-report-copy .vd-script li { font: 400 13pt/17pt "Book Literata", Georgia, serif; }
.book-root .book-report-copy .vd-branch { grid-template-columns: 1fr; gap: 4mm; }
.book-root .book-report-copy .vd-branch .vd-quote { font-size: 20pt; line-height: 24pt; }
.book-root .book-report-copy .vd-questions li { grid-template-columns: 6mm 1fr; }
.book-root .book-report-copy .vd-q-title { font: 600 11.5pt/15pt "Book Barlow", Arial, sans-serif; }
.book-root .book-report-copy .vd-q { font: 400 10pt/13pt "Book Barlow", Arial, sans-serif; }
.book-root .vd-symbols { display: grid; gap: 4.5mm; }
.book-root .vd-symbols > div { min-width: 0; text-align: center; }
.book-root .vd-symbols svg { display: block; width: 14mm; height: 14mm; margin: 0 auto 4mm; }
.book-root .vd-symbols .vd-word { font: 500 13pt/16pt "Book Barlow", Arial, sans-serif; }
.book-root .book-report-copy .vd-symbols { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
.book-root .book-reading-layout .vd-symbols svg { width: 44px; height: 44px; }
/* A tall source capture is an evidence variant of the same five-module master.
   Its notes sit alongside the image; the reflection occupies the last module. */
.book-root .book-pilot .pilot-record .pilot-artefact { grid-column: 2 / -1; grid-row: 2 / 5; }
.book-root .book-pilot .pilot-record .pilot-artefact img { width: 100%; height: 140mm; object-fit: contain; object-position: top left; }
.book-root .book-pilot .pilot-record .pilot-notes { grid-row: 2 / 5; }
.book-root .book-pilot .pilot-record .pilot-writing { grid-row: 5; }
.book-root .book-pilot .pilot-record .pilot-copy { font: 400 10.5pt/14pt "Book Barlow", Arial, sans-serif; }
.book-root .book-pilot .pilot-record .pilot-copy { column-count: 1; max-width: 100.2mm; }
.book-root .book-pilot :is(.pilot-image-board,.pilot-visual-slots) .pilot-notes { grid-row: 5; }
.book-root .book-pilot :is(.pilot-image-board,.pilot-visual-slots) .pilot-writing { grid-row: 5; }
.book-root .book-pilot :is(.pilot-image-board,.pilot-visual-slots) .pilot-copy { font: 400 10.5pt/14pt "Book Barlow", Arial, sans-serif; }
.book-root .book-pilot .development-board { grid-column: 1 / -1; grid-row: 2 / 5; width: 170mm; height: 143mm; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); grid-template-rows: repeat(2,minmax(0,1fr)); gap: 4.5mm; }
.book-root .book-pilot .development-board figure { display: flex; flex-direction: column; min-height: 0; }
.book-root .book-pilot .development-board a { flex: 1; min-height: 0; display: block; }
.book-root .book-pilot .development-board img { width: 100%; height: 100%; object-fit: contain; object-position: left top; }
.book-root .book-pilot .development-board figcaption { flex: none; font: 400 9pt/12pt "Book Barlow", Arial, sans-serif; margin-top: 2mm; }
.book-root .book-pilot .development-board-mosaic .development-board-image-1 { grid-column: 1 / 3; grid-row: 1; }
.book-root .book-pilot .development-board-mosaic .development-board-image-2 { grid-column: 1 / 3; grid-row: 2; }
.book-root .book-pilot .development-board-mosaic .development-board-image-3 { grid-column: 3 / -1; grid-row: 1 / 3; }
.book-root .book-pilot .development-board-mosaic:has(> :nth-child(4)) { grid-template-rows: repeat(3,minmax(0,1fr)); }
.book-root .book-pilot .development-board-mosaic:has(> :nth-child(4)) .development-board-image-3 { grid-row: 1 / 4; }
.book-root .book-pilot .development-board-mosaic .development-board-image-4 { grid-column: 1 / 3; grid-row: 3; }
.book-root .book-pilot .development-board-hero .development-board-image-1 { grid-column: 1 / -1; grid-row: 1; }
.book-root .book-pilot .development-board-hero .development-board-image-2 { grid-column: 1 / 3; grid-row: 2; }
.book-root .book-pilot .development-board-hero .development-board-image-3 { grid-column: 3 / -1; grid-row: 2; }
.book-root .book-pilot .development-visual-slots { grid-column: 1 / -1; grid-row: 2 / 5; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 4.5mm; }
.book-root .book-pilot .development-visual-slots figure { box-sizing: border-box; min-height: 132mm; border: .25mm dashed #8a8a86; padding: 8mm 5mm; background: #f2f2ef; display: flex; flex-direction: column; justify-content: center; }
.book-root .book-pilot .development-visual-slots figure:first-child { grid-column: 1 / 3; }
.book-root .book-pilot .development-visual-slots figure:nth-child(2) { grid-column: 3 / -1; }
.book-root .book-pilot .development-visual-slots svg { width: 12mm; height: 12mm; margin-bottom: 6mm; color: #60605b; }
.book-root .book-pilot .development-visual-slots .development-slot-status { font: 400 9pt/12.5pt "Book Barlow", Arial, sans-serif; color: #e10600; margin-bottom: 3mm; }
.book-root .book-pilot .development-visual-slots h3 { font: 400 17pt/21pt "Book Barlow", Arial, sans-serif; margin: 0 0 4mm; }
.book-root .book-pilot .development-visual-slots figcaption { font: 400 10pt/14pt "Book Barlow", Arial, sans-serif; }
.book-root .book-reading-layout .book-pilot .development-board { width: 100%; height: auto; grid-template-rows: repeat(2,minmax(180px,auto)); margin: 28px 0; }
.book-root .book-reading-layout .book-pilot .development-board img { height: auto; max-height: 500px; }
.book-root .book-reading-layout .book-pilot .development-visual-slots { margin: 28px 0; }
.book-root .book-pilot .development-gallery-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.book-root .book-reading-layout .book-pilot .pilot-record .pilot-artefact img { height: auto; max-height: 650px; }
@media screen and (max-width: 600px) {
  .book-root .book-reading-layout .book-pilot .development-gallery-2 { grid-template-columns: 1fr; }
  .book-root .book-reading-layout .book-pilot :is(.development-board,.development-visual-slots) { display: block; }
  .book-root .book-reading-layout .book-pilot :is(.development-board,.development-visual-slots) figure { min-height: 0; margin: 24px 0; }
}

/* Dedicated photographic collections. Their two/three-module spans are the
   same page master; reflection belongs on the facing or subsequent page. */

.book-root .book-pilot .report-photo-collection {
  grid-column: 1 / -1; grid-row: 2 / 6; width: 170mm; height: 192mm;
  display: grid; grid-template-columns: repeat(5,minmax(0,1fr));
  grid-template-rows: repeat(3,minmax(0,1fr)); gap: 4.5mm;
}
.book-root .book-pilot .report-photo-collection figure { display: flex; flex-direction: column; min-height: 0; min-width: 0; }
.book-root .book-pilot .report-photo-collection a { display: block; min-height: 0; flex: 1; }
.book-root .book-pilot .report-photo-collection img { width: 100%; height: 100%; object-fit: contain; object-position: left bottom; }
.book-root .book-pilot .report-photo-collection[data-image-fit="cover"] a { overflow: hidden; }
.book-root .book-pilot .report-photo-collection[data-image-fit="cover"] img { object-fit: cover; object-position: center; }
.book-root .book-pilot .report-photo-collection figcaption { margin: 2mm 0 0; font: 400 9pt/12pt "Book Barlow", Arial, sans-serif; color: #60605b; }
.book-root .book-pilot .report-photo-collection figcaption span { color: #e10600; margin-right: 2mm; }
.book-root .book-pilot .photo-collection-placeholder { box-sizing: border-box; flex: 1; min-height: 0; padding: 4mm; border: .2mm dashed #96968e; background: #f2f2ef; display: flex; flex-direction: column; justify-content: center; gap: 2mm; }
.book-root .book-pilot .photo-collection-placeholder .photo-placeholder-status { color: #e10600; font: 400 8.5pt/11.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-pilot .photo-collection-placeholder h3 { margin: 0; font: 400 13pt/16pt "Book Barlow", Arial, sans-serif; }
.book-root .book-pilot .photo-collection-placeholder p { font: 400 10pt/13.5pt "Book Barlow", Arial, sans-serif; }
.book-root .book-pilot .report-photo-collection-6 figure:nth-child(odd) { grid-column: 1 / 3; }
.book-root .book-pilot .report-photo-collection-6 figure:nth-child(even) { grid-column: 3 / -1; }
.book-root .book-pilot .report-photo-collection-5 figure:nth-child(1) { grid-column: 1 / 3; grid-row: 1; }
.book-root .book-pilot .report-photo-collection-5 figure:nth-child(2) { grid-column: 1 / 3; grid-row: 2; }
.book-root .book-pilot .report-photo-collection-5 figure:nth-child(3) { grid-column: 3 / -1; grid-row: 1 / 3; }
.book-root .book-pilot .report-photo-collection-5 figure:nth-child(4) { grid-column: 1 / 3; grid-row: 3; }
.book-root .book-pilot .report-photo-collection-5 figure:nth-child(5) { grid-column: 3 / -1; grid-row: 3; }
.book-root .book-pilot .report-photo-collection-5 figure:nth-child(3) img { object-position: left top; }
.book-root .book-pilot .photo-collection-source { grid-column: 1 / -1; grid-row: 5; align-self: end; margin: 0; font: 400 8.5pt/11.5pt "Book Barlow", Arial, sans-serif; color: #60605b; }
.book-root .book-pilot .pilot-photo-gallery-dark { color: #f4f4f0; }
.book-root .pagedjs_page:has(.pilot-photo-gallery-dark),
.book-root .pagedjs_page:has(.pilot-photo-gallery-dark) :is(.pagedjs_pagebox,.pagedjs_area) { background: #0a0a0a !important; }
.book-root .pagedjs_page:has(.pilot-photo-gallery-dark) .book-content { background: transparent !important; }
.book-root .pagedjs_page:has(.pilot-photo-gallery-dark) .pagedjs_margin-content { color: #aaa !important; }
.book-root .book-pilot .pilot-photo-gallery-dark :is(figcaption,.photo-collection-source) { color: #aaa; }
.book-root .book-reading-layout .book-pilot .report-photo-collection { width: 100%; height: auto; grid-template-rows: repeat(3,minmax(180px,auto)); margin: 28px 0; }
.book-root .book-reading-layout .book-pilot .report-photo-collection img { height: auto; max-height: 620px; }
.book-root .book-reading-layout .book-pilot .pilot-photo-gallery-dark { background: #0a0a0a; padding: 24px; }
@media screen and (max-width: 600px) {
  .book-root .book-reading-layout .book-pilot .report-photo-collection { display: block; }
  .book-root .book-reading-layout .book-pilot .report-photo-collection figure { margin: 24px 0; }
  .book-root .book-reading-layout .book-pilot .pilot-photo-gallery-dark { padding: 16px; }
}
