/* TourTrack report: the journal spreads take the product's own V2 system (packages/design-tokens/src/v2.ts).
   White page, Inter, teal for structure and action; semantic colour stays for exceptions. */
/* The report is read one A4 page at a time, so each journal page simply starts the next page. */
.sys-jr-page { page: stage; break-before: page; }
.book-root .book-content .sys-jr-page { position: relative; width: 210mm; height: 297mm; margin: 0; overflow: hidden; box-sizing: border-box; background: #FFFFFF; color: #1A1917; }
.book-root .book-reading-layout .sys-jr-page { width: 210mm; max-width: 100%; overflow: hidden; }
.book-root .pagedjs_stage_page:has(.sys-jr-page), .book-root .pagedjs_stage_page:has(.sys-jr-page) .pagedjs_pagebox, .book-root .pagedjs_stage_page:has(.sys-jr-page) .pagedjs_area { background: #FFFFFF !important; }
.book-root .book-content .jr-world-tourtrack .jr-title { padding-bottom: 2.6mm; border-bottom: .25mm solid #D9D5CF; color: #1A1917; font: 600 22pt/26pt "Journal Inter", Arial, sans-serif; letter-spacing: -.028em; }
.book-root .book-content .jr-world-tourtrack .jr-text { color: #625D56; }
.book-root .book-content .jr-world-tourtrack .jr-text p { margin-bottom: 2.4mm; font: 400 8.4pt/12.4pt "Journal Inter", Arial, sans-serif; letter-spacing: -.004em; }
.book-root .book-content .jr-world-tourtrack .jr-text-s p { font-size: 7.2pt; line-height: 10.4pt; }
.book-root .book-content .jr-world-tourtrack .jr-text-l p { font-size: 10.6pt; line-height: 15pt; color: #1A1917; letter-spacing: -.012em; }
.book-root .book-content .jr-world-tourtrack .jr-text b { color: #1A1917; font-weight: 600; }
.book-root .book-content .jr-world-tourtrack .jr-tag { color: #2E5B62; font: 600 6.2pt/8pt "Journal Inter", Arial, sans-serif; letter-spacing: .1em; }
.book-root .book-content .jr-world-tourtrack .jr-frame { border: .3mm dashed rgba(46, 91, 98, .45); }
.book-root .book-content .jr-world-tourtrack .jr-line { border-top: .25mm solid #D9D5CF; }
.book-root .book-content .jr-world-tourtrack .jr-folio { color: #2E5B62; font: 600 6.4pt/1 "Journal Inter", Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.book-root .book-content .jr-world-tourtrack svg text { font-family: "Journal Inter", Arial, sans-serif; }

/* Cover and front matter */
.book-root .book-content[data-book="tourtrack"] .book-cover h1 { font-family: "Journal Inter", Arial, sans-serif; font-weight: 600; letter-spacing: -.055em; color: #1A1917; }
.book-root .book-content[data-book="tourtrack"] .book-cover-subtitle { font-family: "Journal Inter", Arial, sans-serif; color: #2E5B62; letter-spacing: -.015em; }
.book-root .book-content[data-book="tourtrack"] .book-cover-footer { border-top-color: #2E5B62; }

/* Front matter on light pages instead of the Perfect World dark master. */
/* Paged.js matches named pages against the manuscript alone, so these selectors cannot start at .book-root. */
.book-content[data-book="tourtrack"] .book-cover, .book-content[data-book="tourtrack"] .book-contents, .book-content[data-book="tourtrack"] .book-opening-lead, .book-content[data-book="tourtrack"] .book-opening-summary { page: ttfront; }
@page ttfront { background: #FFFFFF; margin: 20mm 18mm 22mm;
  @bottom-left { content: "Team 19"; font: 7.5pt "Journal Inter", Arial, sans-serif; color: #7A756E; }
  @bottom-center { content: "TourTrack · Final report"; font: 7.5pt "Journal Inter", Arial, sans-serif; color: #7A756E; }
  @bottom-right { content: counter(page); font: 7.5pt "Journal Inter", Arial, sans-serif; color: #7A756E; }
}
@page ttfront:left { margin-left: 18mm; margin-right: 22mm; }
@page ttfront:right { margin-left: 22mm; margin-right: 18mm; }
.book-root .pagedjs_page.pagedjs_ttfront_page, .book-root .pagedjs_ttfront_page .pagedjs_pagebox, .book-root .pagedjs_ttfront_page .pagedjs_area { background: #FFFFFF !important; }
.book-root .pagedjs_ttfront_page .book-content { background: transparent !important; }
.book-root .book-content[data-book="tourtrack"] .book-cover, .book-root .book-content[data-book="tourtrack"] .book-contents, .book-root .book-content[data-book="tourtrack"] .book-opening-lead, .book-root .book-content[data-book="tourtrack"] .book-opening-summary { color: #1A1917; }
.book-root .book-content[data-book="tourtrack"] .book-cover > .book-label { color: #2E5B62; border-color: #D9D5CF; font-family: "Journal Inter", Arial, sans-serif; }
.book-root .book-content[data-book="tourtrack"] .book-cover h1 { font: 600 82pt/.9 "Journal Inter", Arial, sans-serif; letter-spacing: -.06em; }
.book-root .book-content[data-book="tourtrack"] .book-cover h1 span, .book-root .book-content[data-book="tourtrack"] .book-cover h1 span:last-child { color: #1A1917; margin-left: 0; }
.book-root .book-content[data-book="tourtrack"] .book-cover h1 span:last-child::before { display: none; }
.book-root .book-content[data-book="tourtrack"] .book-cover-subtitle { font: 400 17pt/23pt "Journal Inter", Arial, sans-serif !important; color: #2E5B62 !important; letter-spacing: -.015em !important; }
.book-root .book-content[data-book="tourtrack"] .book-cover-footer { color: #1A1917; border-color: #2E5B62; font-family: "Journal Inter", Arial, sans-serif; }
.book-root .book-content[data-book="tourtrack"] .book-university-logo { filter: invert(1) brightness(.2); }
.book-root .book-content[data-book="tourtrack"] .book-contents a, .book-root .book-content[data-book="tourtrack"] .book-contents span, .book-root .book-content[data-book="tourtrack"] .book-contents h2, .book-root .book-content[data-book="tourtrack"] .book-contents .book-label { color: #1A1917; font-family: "Journal Inter", Arial, sans-serif; }
.book-root .book-content[data-book="tourtrack"] .book-contents .book-toc-act span { color: #2E5B62; }
.book-root .book-content[data-book="tourtrack"] .book-opening-lead h2, .book-root .book-content[data-book="tourtrack"] .book-opening-lead p { color: #1A1917; }
.book-root .book-content[data-book="tourtrack"] .book-opening-statement p { font: 500 26pt/33pt "Journal Inter", Arial, sans-serif; letter-spacing: -.03em; }
.book-root .book-content[data-book="tourtrack"] .book-opening-summary h2, .book-root .book-content[data-book="tourtrack"] .book-opening-summary p, .book-root .book-content[data-book="tourtrack"] .book-opening-summary figcaption { font-family: "Journal Inter", Arial, sans-serif; }
/* Paged.js keeps the cover and contents on the shared dark master, so repaint those pages when they hold this book. */
.book-root .pagedjs_page:has([data-book="tourtrack"]), .book-root .pagedjs_page:has([data-book="tourtrack"]) .pagedjs_pagebox, .book-root .pagedjs_page:has([data-book="tourtrack"]) .pagedjs_area { background: #FFFFFF !important; }
.book-root .pagedjs_page:has([data-book="tourtrack"]) .pagedjs_margin-content { color: #7A756E !important; }
.book-root .book-content[data-book="tourtrack"] .book-cover h1 { text-transform: none; }

/* Section overview on one page (BookContent AbstractSpread, report-style books). */
.book-root .book-content[data-book="tourtrack"] .book-overview-single { display: block; height: auto; }
.book-root .book-content[data-book="tourtrack"] .book-overview-kicker { margin: 0 0 9mm; padding-bottom: 2.4mm; border-bottom: .25mm solid #D9D5CF; font: 600 6.6pt/1 "Journal Inter", Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #2E5B62; }
.book-root .book-content[data-book="tourtrack"] .book-overview-premise p { margin: 0; font: 500 16pt/22pt "Journal Inter", Arial, sans-serif; letter-spacing: -.018em; color: #1A1917; text-indent: 0; }
.book-root .book-content[data-book="tourtrack"] .book-overview-title { margin: 12mm 0 5mm; padding-bottom: 2.6mm; border-bottom: .25mm solid #D9D5CF; font: 600 20pt/24pt "Journal Inter", Arial, sans-serif; letter-spacing: -.025em; color: #1A1917; text-transform: none; }
.book-root .book-content[data-book="tourtrack"] .book-overview-copy { column-count: 2; column-gap: 7mm; }
.book-root .book-content[data-book="tourtrack"] .book-overview-copy p { margin: 0 0 3.6mm; font: 400 9pt/13.4pt "Journal Inter", Arial, sans-serif; color: #625D56; text-indent: 0; }
.book-root .book-content[data-book="tourtrack"] .book-overview-edition { margin-top: 8mm; padding-top: 2.4mm; border-top: .25mm solid #D9D5CF; font: 400 7.4pt/10.6pt "Journal Inter", Arial, sans-serif; color: #7A756E; }

/* Report chapters (Sections 1–7, references, appendices): flowing text in the same system as the design pages.
   Paged.js fragments these itself, so long tables and text continue onto the next page. */
.book-content[data-book="tourtrack"] .book-chapter { page: ttfront; break-before: page; }
.book-root .book-content[data-book="tourtrack"] .book-chapter { --tt-ink: #1A1917; --tt-body: #36332F; --tt-brand: #2E5B62; --tt-quiet: #7A756E; --tt-line: #E4E1DD;
  display: block; height: auto; min-height: 0; margin: 0; padding: 0; background: #FFFFFF; color: var(--tt-body); font-family: "Journal Inter", Arial, sans-serif; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-section-heading { display: block; margin: 0 0 6mm; padding: 0 0 2.6mm; border-bottom: .25mm solid #D9D5CF; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-section-heading .book-label { display: none; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-section-heading h2 { margin: 0; color: var(--tt-ink); font: 600 22pt/26pt "Journal Inter", Arial, sans-serif; letter-spacing: -.028em; text-transform: none; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose { display: block; columns: auto; max-width: none; margin: 0; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > p { margin: 0 0 2.6mm; color: var(--tt-body); font: 400 9pt/13.6pt "Journal Inter", Arial, sans-serif; letter-spacing: -.004em; text-indent: 0 !important; text-align: left; hyphens: manual; orphans: 2; widows: 2; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose strong { color: var(--tt-ink); font-weight: 600; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > h3 { margin: 7mm 0 2.4mm; padding: 0; border: 0; color: var(--tt-ink); font: 600 12.5pt/16pt "Journal Inter", Arial, sans-serif; letter-spacing: -.015em; text-transform: none; break-after: avoid; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > h3::after, .book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > h3::before { content: none; display: none; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > h4 { margin: 5mm 0 1.6mm; color: var(--tt-brand); font: 600 9.6pt/13pt "Journal Inter", Arial, sans-serif; letter-spacing: 0; text-transform: none; break-after: avoid; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > :first-child { margin-top: 0; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose ul, .book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose ol { margin: 0 0 3mm; padding-left: 5mm; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose li { margin: 0 0 1.4mm; padding-left: 1mm; color: var(--tt-body); font: 400 9pt/13.4pt "Journal Inter", Arial, sans-serif; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose ul > li { list-style: disc; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose ol > li { list-style: decimal; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose li::marker { color: var(--tt-brand); font-weight: 600; }
/* Captions: "_**Table 3.1:**_ text" in the manuscript */
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > p:has(> em:first-child > strong) { margin: 4mm 0 1.6mm; color: var(--tt-quiet); font: 400 7.4pt/10.4pt "Journal Inter", Arial, sans-serif; break-after: avoid; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > p:has(> em:first-child > strong) em { font-style: normal; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > p:has(> em:first-child > strong) strong { color: var(--tt-brand); font-weight: 600; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > p:has(> img) + p:has(> em:first-child > strong) { margin: 1.4mm 0 5mm; text-align: center; break-after: auto; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose > p:has(> img) { margin: 4mm 0 0; text-align: center; break-inside: avoid; break-after: avoid; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose img { display: inline-block; max-width: 100%; max-height: 150mm; width: auto; height: auto; margin: 0; object-fit: contain; }
/* Tables */
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose table { width: 100%; margin: 0 0 5mm; border-collapse: collapse; border-bottom: .3mm solid var(--tt-ink); font: 400 7.6pt/10.6pt "Journal Inter", Arial, sans-serif; color: var(--tt-body); }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose thead th { padding: 1.6mm 2mm; background: #EAF3F0; color: var(--tt-brand); font: 600 6.3pt/8.4pt "Journal Inter", Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; text-align: left; vertical-align: bottom; border: 0; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose td { padding: 1.6mm 2mm; border: 0; border-bottom: .2mm solid var(--tt-line); vertical-align: top; text-align: left; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose tr { break-inside: avoid; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose td:first-child { color: var(--tt-ink); font-weight: 500; }
/* Code */
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose pre { margin: 3mm 0 0; padding: 3mm 4mm; background: #F5F4F2; border-left: .6mm solid var(--tt-brand); white-space: pre-wrap; break-inside: avoid; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose pre code { color: var(--tt-ink); font: 400 7.2pt/10.6pt "Journal Mono", monospace; font-variant-ligatures: none; }
/* References: numbered entries with a hanging indent */
.book-root .book-content[data-book="tourtrack"] #tt-references .book-prose > p { padding-left: 7mm; text-indent: -7mm !important; font-size: 8pt; line-height: 11.6pt; margin-bottom: 1.8mm; overflow-wrap: anywhere; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose table { table-layout: auto; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose em, .book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose strong { font-family: inherit; letter-spacing: inherit; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-section-heading .book-label { display: block; margin: 0 0 2.4mm; padding: 0; border: 0; color: #2E5B62; font: 600 6.6pt/1 "Journal Inter", Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose th, .book-root .book-content[data-book="tourtrack"] .book-chapter .book-prose td { min-width: 20mm; word-break: normal; overflow-wrap: normal; hyphens: manual; }
