/* FIX2786 source: fix189-mobile-reader.css */
/* FIX189: reader-only mobile presentation; no editor or stored HTML changes. */
@media (max-width: 760px) {
 body.lesson-page .lesson-layout,body.lesson-page .lesson-layout .content-block,body.lesson-page .lesson-layout .reader-content{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
 body.lesson-page .lesson-layout .reader-content{font-size:16px;line-height:1.68;overflow-wrap:break-word;word-break:normal}
 body.lesson-page .lesson-layout .reader-content :is(p,ul,ol,blockquote){margin-block:0 1em}
 body.lesson-page .lesson-layout .reader-content :is(ul,ol){padding-inline-start:1.35em}
 body.lesson-page .lesson-layout .reader-content li{padding-inline-start:.12em;margin-block:.38em;overflow-wrap:anywhere}
 body.lesson-page .lesson-layout .reader-content li> :is(ul,ol){margin-top:.4em}
 body.lesson-page .lesson-layout .reader-content :is(h1,h2,h3,h4){overflow-wrap:break-word;word-break:normal;margin-top:1.45em;margin-bottom:.65em;line-height:1.32}
 body.lesson-page .lesson-layout .reader-content :is(h1,h2,h3,h4):first-child{margin-top:0}
 body.lesson-page .lesson-layout .reader-content :is(pre,.nga-command-box,.code-block){max-width:100%;min-width:0;box-sizing:border-box;overflow-x:auto!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;tab-size:2}
 body.lesson-page .lesson-layout .reader-content pre,body.lesson-page .lesson-layout .reader-content pre code{white-space:pre!important;overflow-wrap:normal!important;word-break:normal!important;font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace!important;font-size:12.5px!important;line-height:1.65!important}
 body.lesson-page .lesson-layout .reader-content .nga189-code-wrap{position:relative;max-width:100%;min-width:0;margin:1em 0}
 body.lesson-page .lesson-layout .reader-content .nga189-code-wrap>pre{margin:0; padding-top:2.65rem!important}
 body.lesson-page .lesson-layout .reader-content .nga189-copy{position:absolute;top:.45rem;right:.5rem;z-index:2;border:1px solid #b7c9da;border-radius:7px;background:#f7fbff;color:#15334f;padding:5px 11px;font-size:12px;font-weight:650;min-height:32px;cursor:pointer}
 body.lesson-page .lesson-layout .reader-content .nga189-table-wrap{position:relative;max-width:100%;min-width:0;margin:1em 0}
 body.lesson-page .lesson-layout .reader-content .nga189-table-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-radius:8px;border:1px solid #d9e3ee}
 body.lesson-page .lesson-layout .reader-content .nga189-table-scroll>table{width:max-content!important;min-width:100%!important;max-width:none!important;margin:0!important;table-layout:auto!important;border-collapse:collapse}
 body.lesson-page .lesson-layout .reader-content .nga189-table-scroll th,body.lesson-page .lesson-layout .reader-content .nga189-table-scroll td{min-width:105px;max-width:290px;padding:9px 12px!important;white-space:normal;overflow-wrap:normal;word-break:normal;vertical-align:top}
 body.lesson-page .lesson-layout .reader-content .nga189-table-scroll :is(th,td):first-child{min-width:90px}
 body.lesson-page .lesson-layout .reader-content .nga189-swipe-hint{display:flex;justify-content:flex-end;align-items:center;gap:.4em;margin:0 2px 5px;color:#506780;font-size:12px}
 body.lesson-page .lesson-layout .reader-content .nga189-swipe-hint[hidden]{display:none}
 body.lesson-page .lesson-layout .reader-content :is(img,svg,video){max-width:100%;height:auto}
 body.lesson-page .unified-lesson-nav{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
 body.lesson-page .unified-lesson-nav a{max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;text-align:center;min-height:44px;display:flex;align-items:center;justify-content:center}
}
@media (prefers-reduced-motion:reduce){body.lesson-page .nga189-table-scroll{scroll-behavior:auto!important}}

/* FIX2786 source: fix190-editor-compact.css */
/* FIX190: compact Word-style ribbon in FIX184 viewport fullscreen only.
   Preserve all existing ribbon controls and event handlers. */
@media (min-width:701px) {
 body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon {
   max-height:min(34dvh,210px)!important;
 }
 body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon-panel {
   padding:4px 9px!important;
   gap:5px!important;
   align-items:flex-start!important;
 }
 body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon-group {
   padding:2px 7px!important;
   gap:3px!important;
 }
 body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon-tools {
   gap:4px!important;
 }
 body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon button,
 body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon select {
   min-height:30px;
   padding:4px 7px;
   font-size:13px;
 }
}
/* Hide the separate command-box action strip seen below the editor ribbon.
   The commands and handlers remain in command-box.js; only the extra strip is hidden.
   Scope to maximized editor; normal mode is unchanged. */
body > .rte.nga184-viewport.rte-fullscreen .rte-command-actions {
 display:none!important;
}

/* FIX2786 source: fix191-editor.css */

/* FIX191: final fullscreen ribbon override, after FIX189 rules */
body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon .rte-toolbar {
  display:flex!important; flex-wrap:wrap!important; align-content:flex-start!important;
  align-items:flex-start!important; justify-content:flex-start!important;
  gap:3px!important; padding:3px 6px!important;
}
body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon-group {
  flex-grow:0!important; flex-shrink:0!important; align-self:flex-start!important;
  padding:0 5px 0 0!important; margin:0!important; gap:3px!important;
}
body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon-tools {gap:3px!important}
body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon .nga-ribbon-tools button,
body > .rte.nga184-viewport.rte-fullscreen .nga-ribbon .nga-ribbon-tools select {
 height:28px!important;min-height:28px!important;padding:2px 5px!important;font-size:12px!important;
}
body > .rte.nga184-viewport.rte-fullscreen .rte-command-actions:not(.nga191-open),
body > .rte.nga184-viewport.rte-fullscreen .rte-command-help {display:none!important}
body > .rte.nga184-viewport.rte-fullscreen .rte-command-actions.nga191-open {
 display:flex!important;flex-wrap:wrap!important;gap:5px!important;
 position:fixed!important;right:12px!important;top:58px!important;z-index:2147483500!important;
 background:white!important;padding:9px!important;border:1px solid #cbd5e1!important;
 border-radius:8px!important;box-shadow:0 10px 28px #0003!important;
}
body > .rte.nga184-viewport.rte-fullscreen .nga191-toggle {display:inline-flex!important}
.nga191-toggle {display:none!important;cursor:pointer}

/* FIX2786 source: fix192-reader-width.css */
/* FIX192: published learning content should use the available course width.
   Editor styling and site header are intentionally unaffected. */
@media (min-width: 801px) {
 body.lesson-page .lesson-layout,
 body.lesson-page .lesson-section > .wrap {max-width: min(96vw, 1600px)!important;width:100%!important;box-sizing:border-box!important}
 body.lesson-page .lesson-layout > .content-block {width:100%!important;min-width:0!important;max-width:none!important;box-sizing:border-box!important}
 body.lesson-page .lesson-layout .article-body.reader-content,
 body.lesson-page .lesson-layout .lesson-topic .reader-content {width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}
}
/* White reading surface prevents the old grey/white split on saved lesson content. */
body.lesson-page .lesson-section,
body.lesson-page .lesson-layout,
body.lesson-page .lesson-layout > .content-block,
body.lesson-page .reader-content,
body.course-preview-page .course-preview-panel .reader-content,
body.resource-page .reader-content,
body.product-page .reader-content {background:#fff!important}
body.lesson-page .reader-content,
body.course-preview-page .reader-content {box-sizing:border-box!important}
body.lesson-page .reader-content table,
body.course-preview-page .reader-content table {width:100%!important;max-width:100%!important;box-sizing:border-box!important;border-collapse:collapse}
body.lesson-page .reader-content .nga-mobile-table-scroll,
body.course-preview-page .reader-content .nga-mobile-table-scroll {width:100%!important;max-width:100%!important;box-sizing:border-box!important;overflow-x:auto!important}
body.lesson-page .reader-content img,
body.lesson-page .reader-content video,
body.course-preview-page .reader-content img {max-width:100%!important;height:auto}
@media(max-width:800px){
 body.lesson-page .reader-content table,
 body.course-preview-page .reader-content table {min-width:0!important}
 body.lesson-page .reader-content .nga-mobile-table-scroll > table {min-width:100%!important;width:max-content!important}
}

/* FIX2786 source: fix193-reader-margin.css */
/* FIX193 — balanced published lesson margins; editor unchanged. */
@media (min-width: 801px) {
 body.lesson-page .lesson-section > .wrap,
 body.lesson-page .lesson-layout {
   width: calc(100% - 64px)!important;
   max-width: 1536px!important;
   margin-inline: auto!important;
   box-sizing: border-box!important;
 }
 body.lesson-page .lesson-layout > .content-block {min-width:0!important;max-width:100%!important;}
 body.lesson-page .lesson-layout .reader-content {box-sizing:border-box!important;max-width:100%!important;}
 body.lesson-page .lesson-layout .reader-content .nga189-copy {display:none!important;}
}
@media (min-width: 801px) and (max-width: 1100px) {
 body.lesson-page .lesson-section > .wrap,
 body.lesson-page .lesson-layout {width:calc(100% - 40px)!important;}
}
@media (max-width: 800px) {
 body.lesson-page .lesson-section > .wrap,
 body.lesson-page .lesson-layout {width:100%!important;max-width:100%!important;}
}

/* FIX2786 source: fix194-reader-copy.css */
/* FIX194: redundant Copy commands buttons on published lesson pages, all screens */
body.lesson-page .lesson-layout .reader-content [data-nga194-hidden="1"] {display:none!important;}

/* FIX2786 source: fix195-lesson-page.css */
/* FIX195 — readable page layout for published lessons only. */
@media (min-width: 801px) {
 body.lesson-page .lesson-section > .wrap.lesson-layout {
   width:calc(100% - 64px)!important;max-width:1440px!important;
   margin-left:auto!important;margin-right:auto!important;
   padding:0!important;box-sizing:border-box!important;
 }
 body.lesson-page .lesson-layout > article.content-block {
   width:100%!important;min-width:0!important;max-width:100%!important;
   margin:0!important;padding:32px 40px!important;
   box-sizing:border-box!important;background:#fff!important;
 }
 body.lesson-page .lesson-layout .reader-content {
   width:100%!important;max-width:100%!important;min-width:0!important;
   margin-inline:0!important;padding-inline:0!important;
   box-sizing:border-box!important;background:#fff!important;
 }
 body.lesson-page .lesson-layout .reader-content > * {max-width:100%;box-sizing:border-box}
 body.lesson-page .lesson-layout .reader-content table {width:100%!important;max-width:100%!important}
 body.lesson-page .lesson-layout .reader-content pre {max-width:100%;overflow-x:auto}
 body.lesson-page .lesson-layout > article.content-block button[data-nga195-copy] {display:none!important}
}
@media (min-width: 801px) and (max-width: 1100px) {
 body.lesson-page .lesson-layout > article.content-block {padding:24px!important}
}
@media (max-width:800px) {
 body.lesson-page .lesson-layout > article.content-block button[data-nga195-copycommands] {display:none!important}
}

/* FIX2786 source: fix196-lesson-document.css */
/* FIX196: approved Example 2 — centered document-like course reader. */
/* Desktop: one coherent white reading sheet, balanced outer gutters. */
@media (min-width: 1101px) {
 body.lesson-page .lesson-section > .wrap.lesson-layout,
 body.lesson-page .lesson-layout {
   width:84%!important; max-width:1440px!important;
   margin-left:auto!important; margin-right:auto!important;
   padding:0!important; box-sizing:border-box!important;
 }
 body.lesson-page .lesson-layout > article.content-block,
 body.lesson-page .lesson-layout > .content-block {
   width:100%!important; max-width:none!important; min-width:0!important;
   margin:0!important; padding:44px 52px!important;
   box-sizing:border-box!important; background:#fff!important;
 }
}
@media (min-width: 801px) and (max-width: 1100px) {
 body.lesson-page .lesson-section > .wrap.lesson-layout,
 body.lesson-page .lesson-layout {
   width:90%!important;max-width:none!important;
   margin-inline:auto!important;padding:0!important;box-sizing:border-box!important;
 }
 body.lesson-page .lesson-layout > article.content-block,
 body.lesson-page .lesson-layout > .content-block {
   width:100%!important;max-width:none!important;
   margin:0!important;padding:30px 32px!important;
   box-sizing:border-box!important;background:#fff!important;
 }
}
@media (max-width: 800px) {
 body.lesson-page .lesson-section > .wrap.lesson-layout,
 body.lesson-page .lesson-layout {
   width:100%!important;max-width:100%!important;
   margin-inline:auto!important;padding:0!important;box-sizing:border-box!important;
 }
 body.lesson-page .lesson-layout > article.content-block,
 body.lesson-page .lesson-layout > .content-block {
   width:100%!important;max-width:100%!important;
   margin:0!important;padding:20px 16px!important;
   box-sizing:border-box!important;background:#fff!important;
 }
}
/* Align all lesson elements to the same inner content edge. */
body.lesson-page .lesson-layout .reader-content,
body.lesson-page .lesson-layout .lesson-topic,
body.lesson-page .lesson-layout .article-body.reader-content {
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin-left:0!important;margin-right:0!important;
 padding-left:0!important;padding-right:0!important;
 box-sizing:border-box!important;background:#fff!important;
}
body.lesson-page .lesson-layout .reader-content > * {
 max-width:100%;box-sizing:border-box;
}
body.lesson-page .lesson-layout .reader-content img,
body.lesson-page .lesson-layout .reader-content video,
body.lesson-page .lesson-layout .reader-content iframe {
 max-width:100%!important;height:auto;
}
body.lesson-page .lesson-layout .reader-content pre,
body.lesson-page .lesson-layout .reader-content .nga-command-box {
 max-width:100%!important;box-sizing:border-box!important;overflow-x:auto;
}
/* Keep existing mobile table scrolling; never allow tables to escape the sheet. */
body.lesson-page .lesson-layout .reader-content table {
 max-width:100%!important;box-sizing:border-box!important;
}
body.lesson-page .lesson-layout .reader-content .nga-mobile-table-scroll {
 max-width:100%!important;overflow-x:auto!important;
}

/* FIX2786 source: fix197-lesson-width.css */
/* FIX197 staging: content element width normalization, preserve FIX196 outer margins. */
body.lesson-page .lesson-layout .reader-content { width:100%!important; min-width:0!important; box-sizing:border-box!important; }
/* Rich-text content boxes commonly arrive with inline pixel/percentage widths from the editor. */
body.lesson-page .lesson-layout .reader-content > :is(div,section,aside,blockquote,figure),
body.lesson-page .lesson-layout .reader-content > div[style*="width"],
body.lesson-page .lesson-layout .reader-content > p[style*="width"] {
  width:100%!important; max-width:100%!important; min-width:0!important; box-sizing:border-box!important;
}
body.lesson-page .lesson-layout .reader-content > div > :is(div,section,aside,blockquote)[style*="width"] {
  width:100%!important; max-width:100%!important; min-width:0!important; box-sizing:border-box!important;
}
/* Keep deliberate compact tables compact; full-width tables fill the reader. */
body.lesson-page .lesson-layout .reader-content table:not([data-nga185-fit="content"]):not([data-nga186-width]):not([data-nga187-width]):not([data-nga188-width]) {
  width:100%!important; max-width:100%!important; box-sizing:border-box!important;
}
body.lesson-page .lesson-layout .reader-content :is(.nga-mobile-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-table-scroll) {
  width:100%!important; max-width:100%!important; overflow-x:auto!important; box-sizing:border-box!important;
}
body.lesson-page .lesson-layout .reader-content :is(img,video,svg) { max-width:100%!important; height:auto!important; }
@media(max-width:800px){
 body.lesson-page .lesson-layout .reader-content > :is(div,section,aside,blockquote,figure){max-width:100%!important;}
}

/* FIX2786 source: fix198-lesson-content-width.css */
/* FIX198: student reader only. FIX196 page geometry is unchanged. */
body.lesson-page .lesson-layout .reader-content {
  width:100%!important;max-width:100%!important;min-width:0!important;
}
/* Word/pasted content can contain nested width=, inline styles and fixed tables. */
body.lesson-page .lesson-layout .reader-content :is(div,section,aside,blockquote,figure)[style*="width"],
body.lesson-page .lesson-layout .reader-content :is(div,section,aside,blockquote,figure)[width],
body.lesson-page .lesson-layout .reader-content > :is(div,section,aside,blockquote,figure),
body.lesson-page .lesson-layout .reader-content > p[style*="width"] {
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;
}
/* Reader tables default to full available width, including saved editor width metadata. */
body.lesson-page .lesson-layout .reader-content table:not([data-nga185-fit="content"]),
body.lesson-page .lesson-layout .reader-content table[width]:not([data-nga185-fit="content"]) {
  width:100%!important;min-width:0!important;max-width:100%!important;
  box-sizing:border-box!important;table-layout:auto!important;
}
/* Wrappers should fill the sheet, with scrolling only where required. */
body.lesson-page .lesson-layout .reader-content :is(.nga-mobile-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-table-scroll,.nga189-table-wrap) {
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;overflow-x:auto!important;
}
/* Existing mobile JS intentionally uses wide intrinsic tables for scrolling. */
@media(max-width:800px){
 body.lesson-page .lesson-layout .reader-content :is(.nga-mobile-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-table-scroll) > table {
   width:max-content!important;min-width:100%!important;max-width:none!important;
 }
}

/* FIX2786 source: fix199-resource-content-width.css */
/* FIX199: resource content reader parity with FIX198 lessons.
   Scoped to authored resource content, not navigation, previews, or editor. */
.resource-topic-reader .resource-topic-body,
.resource-topic-reader .resource-topic-main .reader-content,
.resource-library-section .resource-category-intro {
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;
}
.resource-topic-reader .reader-content :is(div,section,aside,blockquote,figure)[style*="width"],
.resource-topic-reader .reader-content :is(div,section,aside,blockquote,figure)[width],
.resource-topic-reader .reader-content > :is(div,section,aside,blockquote,figure),
.resource-topic-reader .reader-content > p[style*="width"],
.resource-library-section .reader-content :is(div,section,aside,blockquote,figure)[style*="width"],
.resource-library-section .reader-content :is(div,section,aside,blockquote,figure)[width] {
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;
}
.resource-topic-reader .reader-content table:not([data-nga185-fit="content"]),
.resource-library-section .reader-content table:not([data-nga185-fit="content"]) {
  width:100%!important;min-width:0!important;max-width:100%!important;
  box-sizing:border-box!important;table-layout:auto!important;
}
.resource-topic-reader .reader-content :is(.nga-mobile-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-table-scroll,.nga189-table-wrap),
.resource-library-section .reader-content :is(.nga-mobile-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-table-scroll,.nga189-table-wrap) {
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;overflow-x:auto!important;
}
.resource-topic-reader .reader-content :is(img,video,iframe),
.resource-library-section .reader-content :is(img,video,iframe) {
  max-width:100%!important;height:auto;
}
@media(max-width:800px) {
 .resource-topic-reader .reader-content :is(.nga-mobile-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-table-scroll)>table,
 .resource-library-section .reader-content :is(.nga-mobile-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-table-scroll)>table {
   width:max-content!important;min-width:100%!important;max-width:none!important;
 }
}

/* FIX2786 source: fix201-reader-tables.css */
/* FIX201: Word-pasted tables in Course and Resource readers; keep FIX196 geometry. */
body.lesson-page .reader-content :is(.nga-table-scroll,.nga189-table-wrap,.nga189-table-scroll,.nga190-table-scroll,.nga-mobile-table-scroll),
body .resource-topic-reader .reader-content :is(.nga-table-scroll,.nga189-table-wrap,.nga189-table-scroll,.nga190-table-scroll,.nga-mobile-table-scroll){width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin-inline:0!important}
body.lesson-page .reader-content table.nga-pasted-table:not([data-nga185-fit="content"]),
body .resource-topic-reader .reader-content table.nga-pasted-table:not([data-nga185-fit="content"]),
body.lesson-page .reader-content table[data-nga201-full="1"],
body .resource-topic-reader .reader-content table[data-nga201-full="1"]{display:table!important;width:100%!important;min-width:100%!important;max-width:100%!important;table-layout:auto!important;box-sizing:border-box!important;margin-inline:0!important}
body.lesson-page .reader-content table[data-nga201-full="1"] :is(td,th),
body .resource-topic-reader .reader-content table[data-nga201-full="1"] :is(td,th){max-width:none!important;min-width:0!important;box-sizing:border-box!important}
@media(max-width:800px){
body.lesson-page .reader-content :is(.nga-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-mobile-table-scroll),
body .resource-topic-reader .reader-content :is(.nga-table-scroll,.nga189-table-scroll,.nga190-table-scroll,.nga-mobile-table-scroll){overflow-x:auto!important;-webkit-overflow-scrolling:touch}
body.lesson-page .reader-content table[data-nga201-wide="1"],body .resource-topic-reader .reader-content table[data-nga201-wide="1"]{width:max-content!important;min-width:100%!important;max-width:none!important}
}

