/* Shared reading controls. Adventure covers retain their own visual identities. */
.reading-edition { margin: 0 0 24px; padding: 16px 18px; border: 1px solid currentColor; border-color: color-mix(in srgb, currentColor 20%, transparent); border-radius: 8px; }
.reading-edition h3 { margin-top: 0; }
.reading-edition-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 0; color: inherit; font-size: 14px; text-underline-offset: 4px; }
.reading-edition-link:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.reading-edition-link + .reading-edition-link { margin-top: 8px; }
.reading-preservation-notice { margin: 65px auto 16px; max-width: 760px; padding: 18px; border: 1px solid #bfa574; border-radius: 10px; background: #192b30; color: #f2ebd9; font: 15px/1.6 Arial,sans-serif; }
.reading-preservation-notice p { margin: 0 0 8px; }
.reading-preservation-notice a { display: inline-flex; align-items: center; min-height: 44px; color: #f0d796; }
html[data-reading-size] :is(#story-view, #ending-view) :is(.story-prose, #ending-body) {
  font-size: var(--reading-size, 21px) !important;
  line-height: 1.78 !important;
  letter-spacing: 0 !important;
  text-wrap: pretty;
  overflow-wrap: break-word;
  max-width: 66ch;
}
html[data-reading-spacing="spacious"] :is(#story-view, #ending-view) :is(.story-prose, #ending-body) { line-height: 2 !important; }
html[data-reading-width="wide"] :is(#story-view, #ending-view) :is(.story-prose, #ending-body) { max-width: 82ch; }
html[data-reading-font="sans"] :is(#story-view, #ending-view) :is(.story-prose, #ending-body),
html[data-reading-font="sans"] #story-choices .choice-copy strong { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important; }
:is(#story-view, #ending-view) :is(.story-prose, #ending-body) p { margin-bottom: 1.15em; }
#story-view #story-choices .choice { min-height: 88px; }
#story-view #story-choices .choice-copy { min-width: 0; text-align: left; }
#story-view #story-choices .choice-copy strong { font-size: clamp(19px, 1.3vw, 23px) !important; line-height: 1.4 !important; overflow-wrap: break-word; }
#story-view #story-choices .choice-copy :is(small, .choice-detail, .choice-impact, .choice-requires, .choice-heat) { font-size: 12px !important; line-height: 1.6 !important; letter-spacing: 0 !important; }
#story-view #story-choices .choice-copy small { color: inherit; opacity: .82; }
#story-view #story-choices .choice:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
#story-view #story-choices .choice:disabled { opacity: .68; }
#story-view :is(.scene-eyebrow, .scene-eyebrow #location-label, .back-link, .undo-button, .autosave-note, .scene-count, #scene-count, .scene-illustration figcaption, .scene-illustration figcaption button) { font-size: 11px !important; line-height: 1.6 !important; }
#story-view :is(.back-link, .undo-button, .scene-illustration figcaption button) { min-height: 44px; }
#story-view .chapter-track > span { font-size: 10px; line-height: 1.6; }
#story-view .speaker-chip small { font-size: 11px !important; line-height: 1.5; letter-spacing: .5px; }
#story-view .speaker-chip strong { font-size: 24px !important; line-height: 1.2; }
#story-view .reader-sidebar :is(.eyebrow, .sidebar-section-title, .stat-label) { font-size: 11px !important; line-height: 1.5; }
#story-view .reader-sidebar :is(.ally-copy small, .hull-note, .journal-button small) { font-size: 11px !important; line-height: 1.6; }
#story-view .reader-sidebar :is(.sidebar-links button, .sidebar-links a) { min-height: 44px; font-size: 12px !important; line-height: 1.5; }
#story-view .reader-sidebar .ally { min-height: 60px; }
#story-view .reader-sidebar .ally-copy strong { font-size: 19px !important; line-height: 1.3; }
body:is([data-view="story-view"], [data-view="ending-view"]) :is(.mobile-tools, .mobile-reader-tools, .mobile-journal) button { min-height: 44px; font-size: 12px !important; }
body:is([data-view="story-view"], [data-view="ending-view"]) .site-header .icon-button { min-width: 40px; min-height: 44px; }
.reading-scene-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin: 0 0 24px; font: 12px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; color: inherit; }
.reading-estimate { font: inherit; color: inherit; opacity: .78; }
.reading-scene-meta .reading-jump { min-height: 44px; padding: 8px 0; color: inherit; background: transparent; border: 0; cursor: pointer; font: inherit; text-decoration: underline; text-underline-offset: 4px; }

/* Two consistent, high contrast reading palettes. */
html[data-reading-theme="paper"] { --reading-bg: #f5f0e5; --reading-panel: #fffaf0; --reading-ink: #292b28; --reading-muted: #5d6258; --reading-line: #8a8a713f; --reading-accent: #35594c; --reading-soft: #e8e7d9; --reading-cost: #9a452d; --reading-gain: #32634d; }
html[data-reading-theme="night"] { --reading-bg: #111c23; --reading-panel: #192831; --reading-ink: #eeeade; --reading-muted: #b6c4c3; --reading-line: #a7bfb938; --reading-accent: #b9d7c5; --reading-soft: #21363c; --reading-cost: #f0b797; --reading-gain: #b1d6b8; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) body:is([data-view="story-view"], [data-view="ending-view"]) { background: var(--reading-bg) !important; color: var(--reading-ink) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) :is(#story-view, #ending-view) {
  background: var(--reading-bg) !important; color: var(--reading-ink) !important;
  --paper: var(--reading-bg); --paper-light: var(--reading-panel); --paper-shade: var(--reading-soft); --panel: var(--reading-panel); --panel-soft: var(--reading-soft); --ink: var(--reading-ink); --cream: var(--reading-ink); --muted: var(--reading-muted); --gold: var(--reading-accent); --gold-light: var(--reading-accent); --green-light: var(--reading-accent); --claret: var(--reading-accent); --line: var(--reading-line);
}
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) :is(#story-view, #ending-view) :is(.story-prose, #ending-body, .scene-title, .ending-content h1, .ending-heading h1, #ending-title, .ending-subtitle, .speaker-chip strong, .choice-copy strong, .choice-key, .choice-arrow) { color: var(--reading-ink) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) :is(#story-view, #ending-view) :is(.scene-eyebrow, .scene-eyebrow #location-label, .scene-eyebrow #chapter-label, .chapter-track > span, .scene-illustration figcaption, .scene-illustration figcaption button, .autosave-note, .reader-bottom, .reader-bottom button, .reader-bottom span, .story-topline, .story-topline button, .choice-copy small, .choice-requires, .choice-heat, .speaker-chip small, .reading-estimate, .ending-summary, .ending-content > .eyebrow, .ending-heading > .eyebrow) { color: var(--reading-muted) !important; opacity: 1; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view :is(.choice, .speaker-chip, .reader-sidebar, .journal-button) { background: var(--reading-panel) !important; border-color: var(--reading-line) !important; color: var(--reading-ink) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view .choice:hover:not(:disabled) { background: var(--reading-soft) !important; border-color: var(--reading-accent) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view .choice-detail { color: var(--reading-muted) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view .choice-impact { color: var(--reading-accent) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view :is(.choice-impact.cost, .choice-heat.rising) { color: var(--reading-cost) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view :is(.choice-impact.gain, .choice-heat.cooling) { color: var(--reading-gain) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view :is(.mobile-tools, .mobile-reader-tools, .mobile-journal, .mobile-journal button) { background: var(--reading-panel) !important; color: var(--reading-ink) !important; border-color: var(--reading-line) !important; box-shadow: 0 6px 24px #00000024; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view :is(.mobile-tools, .mobile-reader-tools, .mobile-journal) button { color: var(--reading-ink) !important; border-color: var(--reading-line) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view :is(.mobile-tools, .mobile-reader-tools, .mobile-journal) button > :is(span, svg) { color: var(--reading-accent) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view .reader-sidebar :is(h2, h3, strong, button, .stat-value, .ally-value) { color: var(--reading-ink) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view .reader-sidebar :is(p, small, .eyebrow, .stat-label, .sidebar-links button, .ally-copy small) { color: var(--reading-muted) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view :is(.stat-top > span, .speaker-more) { color: var(--reading-muted) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view .chapter-track :is(.active, .complete) { color: var(--reading-accent) !important; border-color: var(--reading-accent) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) :is(#story-view, #ending-view) :is(.scene-illustration, .ending-illustration) { background: var(--reading-panel) !important; border-color: var(--reading-line) !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #story-view #story-art { opacity: .035 !important; }
html:is([data-reading-theme="paper"], [data-reading-theme="night"]) #ending-view :is(.secondary-button, .text-button) { background: var(--reading-panel); color: var(--reading-ink) !important; border-color: var(--reading-line) !important; }

/* One small, permanent way back to the controls, including in focus mode. */
.collection-bookbar .collection-reading-tools,
.collection-bookbar :is(.reading-focus-exit, .collection-focus-toggle) { display: inline-flex; align-items: center; justify-content: center; gap: 7px; flex-shrink: 0; min-height: 44px; padding: 4px 13px; border: 1px solid #b9c2bd50; border-radius: 4px; color: #f2eddf; background: #ffffff08; font: 12px/1.25 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; letter-spacing: 0; cursor: pointer; }
.collection-bookbar .collection-reading-tools:hover,
.collection-bookbar :is(.reading-focus-exit, .collection-focus-toggle):hover { background: #ffffff18; border-color: #d8c59b; }
.collection-bookbar button:focus-visible { outline: 2px solid #edcd85; outline-offset: 2px; }
.collection-bookbar :is(.reading-focus-exit, .collection-focus-toggle)[hidden] { display: none; }
.collection-bookbar .collection-focus-toggle[aria-pressed="true"] { color: #fff3cb; border-color: #ddc48b; background: #d7b46a14; }
body.reading-focus:is([data-view="story-view"], [data-view="ending-view"]) :is(.site-header, .reader-sidebar, .mobile-tools, .mobile-reader-tools, .mobile-journal, .story-topline, .collection-navigation) { display: none !important; }
body.reading-focus:is([data-view="story-view"], [data-view="ending-view"]) #story-view { width: 100%; max-width: 1160px; margin: 0 auto; padding: 36px 5.5% 80px !important; }
body.reading-focus[data-view="story-view"] .reader-layout { display: block !important; max-width: 920px !important; margin: 0 auto !important; padding: 0 !important; }
body.reading-focus[data-view="story-view"] .reader-main { max-width: none; width: 100%; }
body.reading-focus[data-view="story-view"] .scene-title { margin-top: 22px; }
body.reading-focus[data-view="ending-view"] #ending-view { max-width: 1100px; margin: 0 auto; padding-top: 36px !important; }
body.reading-focus[data-view="ending-view"] .ending-layout { grid-template-columns: minmax(0, 1fr); }
body.reading-focus[data-view="ending-view"] :is(.ending-body, .ending-content) { margin-left: auto; margin-right: auto; }

/* A calm control sheet, intentionally independent of every book's dialog theme. */
#reading-tools-dialog { box-sizing: border-box; width: min(720px, calc(100vw - 32px)); max-width: 720px; max-height: min(88svh, 940px); margin: auto; padding: 0; border: 1px solid #8e9f974d; border-radius: 14px; background: #f7f4eb; color: #263630; box-shadow: 0 30px 100px #020c2070; overflow: auto; overscroll-behavior: contain; color-scheme: light; font: 15px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; text-align: left; }
#reading-tools-dialog *, #reading-tools-dialog *::before, #reading-tools-dialog *::after { box-sizing: border-box; }
#reading-tools-dialog::backdrop { background: #07151acc; backdrop-filter: blur(5px); }
#reading-tools-dialog [hidden] { display: none !important; }
#reading-tools-dialog button, #reading-tools-dialog label, #reading-tools-dialog input { font: inherit; }
#reading-tools-dialog button { cursor: pointer; touch-action: manipulation; }
#reading-tools-dialog button:disabled { cursor: not-allowed; opacity: .5; }
#reading-tools-dialog :is(button, input, a):focus-visible { outline: 3px solid #527761; outline-offset: 3px; }
#reading-tools-dialog h2, #reading-tools-dialog h3, #reading-tools-dialog p { color: inherit; }
#reading-tools-dialog h2 { margin: 4px 0 0; font: 500 32px/1.15 Georgia, "Times New Roman", serif; letter-spacing: -.6px; }
#reading-tools-dialog h3 { margin: 0 0 8px; font: 650 17px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
#reading-tools-dialog p { margin: 0 0 16px; }
#reading-tools-dialog .reading-tools-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 27px 30px 21px; }
#reading-tools-dialog .reading-kicker { display: block; color: #5f6e61; font-size: 10px; font-weight: 650; line-height: 1.5; letter-spacing: 1.8px; text-transform: uppercase; }
#reading-tools-dialog .reading-close { flex: 0 0 44px; width: 44px; height: 44px; padding: 0; background: transparent; color: #41584b; border: 1px solid #738c6c4a; border-radius: 50%; font-size: 26px; line-height: 1; }
#reading-tools-dialog .reading-close:hover { background: #e6eadc; }
#reading-tools-dialog .reading-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 0; position: sticky; top: 0; z-index: 2; padding: 0 30px; border-bottom: 1px solid #76816740; background: #f7f4ebf5; }
#reading-tools-dialog .reading-tabs button { min-height: 48px; padding: 10px 14px; color: #617065; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; font-size: 14px; font-weight: 600; }
#reading-tools-dialog .reading-tabs button[aria-selected="true"] { color: #254b3e; border-bottom-color: #35594c; }
#reading-tools-dialog .reading-panel { padding: 25px 30px 30px; }
#reading-tools-dialog :is(.reading-description, .reading-hint) { color: #5b695f; font-size: 13px; line-height: 1.7; }
#reading-tools-dialog .reading-hint { margin: 12px 0 0; }
#reading-tools-dialog .reading-setting { display: grid; gap: 10px; padding: 19px 0; border-bottom: 1px solid #7681672b; }
#reading-tools-dialog .reading-setting > :is(label, .reading-setting-label, span:first-child) { color: #334e40; font-size: 13px; font-weight: 650; }
#reading-tools-dialog .reading-options { display: flex; flex-wrap: wrap; gap: 8px; }
#reading-tools-dialog .reading-options button { display: inline-flex; justify-content: center; align-items: center; min-width: 76px; min-height: 44px; padding: 9px 16px; color: #4c5e51; border: 1px solid #8c9b8259; border-radius: 5px; background: #fffdf6; font-size: 13px; line-height: 1.3; }
#reading-tools-dialog .reading-options button:hover { border-color: #4a6e57; background: #ecede2; }
#reading-tools-dialog .reading-options button[aria-pressed="true"] { color: #fffdf3; border-color: #35594c; background: #35594c; box-shadow: 0 2px 6px #29473512; }
#reading-tools-dialog .reading-checkrow { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding: 15px 0; border-bottom: 1px solid #7681672b; color: #334e40; font-size: 13px; }
#reading-tools-dialog .reading-checkrow label { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; min-height: 44px; cursor: pointer; }
#reading-tools-dialog .reading-checkrow input[type="checkbox"] { flex-shrink: 0; height: 22px; width: 22px; margin: 0; accent-color: #35594c; cursor: pointer; }
#reading-tools-dialog .reading-checkrow button { min-height: 44px; }
#reading-tools-dialog .reading-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 20px; }
#reading-tools-dialog :is(.reading-primary, .reading-secondary, .reading-file-label, .reading-shortcuts button, .reading-slot button) { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 11px 16px; border: 1px solid #8c9b826b; border-radius: 5px; background: #fffdf6; color: #35594c; font-size: 13px; font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; }
#reading-tools-dialog .reading-primary { color: #fffdf3; background: #35594c; border-color: #35594c; }
#reading-tools-dialog :is(.reading-secondary, .reading-file-label, .reading-shortcuts button, .reading-slot button):hover { background: #e7eadc; border-color: #567b5d; }
#reading-tools-dialog .reading-primary:hover { background: #244536; }
#reading-tools-dialog .reading-link { min-height: 44px; padding: 10px 0; background: transparent; border: 0; color: #35594c; text-decoration: underline; text-underline-offset: 4px; font-size: 13px; }
#reading-tools-dialog .reading-current-book { padding: 17px 19px; margin-bottom: 24px; border: 1px solid #829b7352; border-radius: 7px; background: #eceee1; overflow-wrap: anywhere; }
#reading-tools-dialog .reading-current-book h3 { font: 500 24px/1.2 Georgia, "Times New Roman", serif; }
#reading-tools-dialog .reading-current-book p { margin: 0; color: #546653; font-size: 13px; }
#reading-tools-dialog .reading-path { margin: 23px 0; }
#reading-tools-dialog .reading-path ol { list-style: none; margin: 14px 0 0; padding: 0 0 0 12px; }
#reading-tools-dialog .reading-path li { position: relative; padding: 0 0 17px 22px; border-left: 1px solid #91a07a66; font-size: 14px; }
#reading-tools-dialog .reading-path li:last-child { border-left-color: transparent; padding-bottom: 0; }
#reading-tools-dialog .reading-path li::before { content: ""; position: absolute; left: -4px; top: 8px; width: 7px; height: 7px; border-radius: 50%; background: #9ba88c; }
#reading-tools-dialog .reading-path li:last-child::before { background: #35594c; box-shadow: 0 0 0 3px #35594c16; }
#reading-tools-dialog .reading-path-chapter { display: block; color: #687660; font-size: 10px; font-weight: 600; letter-spacing: .6px; text-transform: uppercase; }
#reading-tools-dialog .reading-path li > small { display: block; margin-top: 3px; color: #5b695f; font-size: 11px; line-height: 1.5; }
#reading-tools-dialog .reading-place { margin: 0 0 24px; }
#reading-tools-dialog .reading-place h3 { margin-top: 7px; font: 500 25px/1.25 Georgia, "Times New Roman", serif; }
#reading-tools-dialog .reading-place > p { color: #5b695f; font-size: 13px; }
#reading-tools-dialog .reading-shortcuts { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 24px; }
#reading-tools-dialog .reading-saves { display: grid; gap: 12px; margin: 18px 0 25px; }
#reading-tools-dialog .reading-slot { padding: 17px 19px; border: 1px solid #84967945; border-radius: 7px; background: #fffdf6; }
#reading-tools-dialog .reading-slot :is(h4, strong) { margin: 0; color: #34503e; font-size: 14px; line-height: 1.5; }
#reading-tools-dialog .reading-slot header { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
#reading-tools-dialog .reading-slot p { margin: 5px 0 0; color: #5d6d59; font-size: 13px; }
#reading-tools-dialog .reading-slot small { display: block; color: #65755d; font-size: 11px; line-height: 1.6; }
#reading-tools-dialog .reading-slot .reading-actions { margin-top: 12px; gap: 8px; }
#reading-tools-dialog .reading-confirm { padding: 18px; margin-top: 18px; border: 1px solid #a58b596b; border-radius: 6px; background: #f2e9d6; }
#reading-tools-dialog .reading-confirm p { color: #685235; font-size: 13px; margin-bottom: 10px; }
#reading-tools-dialog .reading-confirm .reading-actions { margin-top: 10px; }
#reading-tools-dialog :is(.reading-status, .reading-alert) { min-height: 0; margin-top: 16px; padding: 11px 14px; color: #355440; border-radius: 5px; background: #e7ecde; font-size: 13px; line-height: 1.6; }
#reading-tools-dialog .reading-status:empty { display: none; }
#reading-tools-dialog .reading-alert { color: #82482d; border: 1px solid #a56e3959; background: #f3e6d4; }
#reading-tools-dialog .reading-file-label { cursor: pointer; }
#reading-tools-dialog input[type="file"] { display: block; width: 100%; max-width: 100%; min-height: 44px; color: #526950; font-size: 13px; }
#reading-tools-dialog input[type="file"]::file-selector-button { min-height: 44px; margin-right: 10px; padding: 10px 14px; border: 1px solid #8c9b826b; border-radius: 4px; color: #35594c; background: #fffdf6; cursor: pointer; }

html[data-reading-theme="night"] #reading-tools-dialog { background: #182830; color: #eeeade; border-color: #a8bfb84a; color-scheme: dark; }
html[data-reading-theme="night"] #reading-tools-dialog .reading-tabs { background: #182830f5; border-color: #a8bfb833; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-kicker, .reading-description, .reading-hint, .reading-path-chapter, .reading-slot p, .reading-slot small, .reading-current-book p) { color: #b2c4bd; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-path li > small, .reading-place > p) { color: #b2c4bd; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-setting, .reading-checkrow) { border-color: #a8bfb829; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-setting > label, .reading-setting-label, .reading-setting > span:first-child, .reading-checkrow, .reading-slot h4, .reading-slot strong) { color: #dfebdf; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-close, .reading-options button, .reading-secondary, .reading-shortcuts button, .reading-slot button, .reading-file-label),
html[data-reading-theme="night"] #reading-tools-dialog input[type="file"]::file-selector-button { background: #20363d; color: #d4e6d5; border-color: #a8bfb84a; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-options button[aria-pressed="true"], .reading-primary) { background: #b9d7c5; color: #19362a; border-color: #b9d7c5; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-tabs button, .reading-link, input[type="file"]) { color: #b6c8bf; }
html[data-reading-theme="night"] #reading-tools-dialog .reading-tabs button[aria-selected="true"] { color: #e0eddf; border-bottom-color: #b9d7c5; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-slot, .reading-current-book) { background: #1c3037; border-color: #a8bfb838; }
html[data-reading-theme="night"] #reading-tools-dialog :is(.reading-status, .reading-confirm) { color: #d1e2cb; background: #2b3e36; border-color: #a8bfb849; }
html[data-reading-theme="night"] #reading-tools-dialog .reading-confirm p { color: #d1e2cb; }
html[data-reading-theme="night"] #reading-tools-dialog .reading-alert { color: #efd4b6; background: #44362c; border-color: #d9b48259; }
html[data-reading-theme="night"] #reading-tools-dialog .reading-path li:last-child::before { background: #b9d7c5; }
html[data-reading-theme="night"] #reading-tools-dialog :is(button, input, a):focus-visible { outline-color: #c5e7c1; }

@media (max-width: 650px) {
  #story-view #story-choices .choice { padding: 17px 13px; gap: 12px; }
  #story-view #story-choices .choice-copy strong { font-size: 20px !important; }
  #story-view #story-choices .choice-copy small { margin-top: 5px; }
  #story-view .scene-eyebrow { flex-wrap: wrap; }
  #story-view .scene-illustration figcaption { flex-wrap: wrap; }
  #story-view .chapter-track { gap: 8px; }
  #story-view .chapter-track > span { font-size: 0; }
  #story-view .chapter-track > span b { font-size: 13px; }
  #story-view .reader-bottom { align-items: center; flex-wrap: wrap; gap: 4px 12px; }
  .collection-bookbar .collection-reading-tools, .collection-bookbar :is(.reading-focus-exit, .collection-focus-toggle) { min-height: 44px; padding: 4px 10px; font-size: 11px; }
  .collection-bookbar .collection-book-title { min-width: 0; }
  body.reading-focus[data-view="story-view"] #story-view { padding-top: 26px !important; }
  body.reading-focus[data-view="ending-view"] #ending-view { padding-top: 30px !important; }
  #reading-tools-dialog { width: calc(100vw - 16px); max-height: 92svh; border-radius: 10px; }
  #reading-tools-dialog .reading-tools-head { padding: 22px 20px 18px; }
  #reading-tools-dialog h2 { font-size: 29px; }
  #reading-tools-dialog .reading-tabs { padding: 0 20px; }
  #reading-tools-dialog .reading-panel { padding: 20px 20px max(24px, env(safe-area-inset-bottom)); }
  #reading-tools-dialog .reading-options { gap: 7px; }
  #reading-tools-dialog .reading-options button { flex: 1 1 auto; min-width: 67px; padding: 10px 12px; }
  #reading-tools-dialog :is(.reading-current-book, .reading-slot) { padding: 15px; }
  #reading-tools-dialog .reading-actions :is(.reading-primary, .reading-secondary, .reading-file-label) { flex: 1 1 130px; }
}
@media (max-width: 390px) {
  .collection-bookbar:has(:is(.reading-focus-exit, .collection-focus-toggle):not([hidden])) .collection-book-title { display: none; }
  #reading-tools-dialog .reading-panel { padding-left: 17px; padding-right: 17px; }
  #reading-tools-dialog .reading-tools-head { padding-left: 17px; padding-right: 17px; }
  #reading-tools-dialog .reading-tabs { padding-left: 17px; padding-right: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  :is(#story-view, #ending-view, #reading-tools-dialog) *, :is(#story-view, #ending-view, #reading-tools-dialog) *::before, :is(#story-view, #ending-view, #reading-tools-dialog) *::after { animation: none !important; transition: none !important; }
}
html[data-reading-motion="reduced"] { scroll-behavior: auto !important; }
html[data-reading-motion="reduced"] :is(#story-view, #ending-view, #reading-tools-dialog) *, html[data-reading-motion="reduced"] :is(#story-view, #ending-view, #reading-tools-dialog) *::before, html[data-reading-motion="reduced"] :is(#story-view, #ending-view, #reading-tools-dialog) *::after { animation: none !important; transition: none !important; }
/* Keep Forgotten Shore's decorative compass inside the tablet viewport. */
@media (min-width: 701px) and (max-width: 1150px) {
  body[data-collection-book="forgotten-shore"] .chart-compass { right: 0; }
}
