/* A reading choice follows navigation, help and same-origin workshops. */
body{--bm-text-scale:var(--bm-reading-scale,1);font-size:calc(1rem * var(--bm-text-scale));overflow-wrap:anywhere}
body.bm-lesson-calm{--bm-text-scale:1}
body[data-reading-palette=white]{color-scheme:light;--bm-reading-surface:var(--surface);--bm-reading-ink:var(--ink);--bm-reading-secondary:var(--ink2);--white:var(--surface)!important;--support:var(--bg2)!important;--rom-fill:var(--bg2)!important;--portal-accent:#4e3669!important;--portal-nav:var(--surface)!important;--portal-soft:var(--bg2)!important;--portal-line:var(--line)!important;--bg:#fff!important;--paper:#fff!important;--surface:#fff!important;--surface2:#f7f8fa!important;--bg2:#eef0f3!important;--ink:#202124!important;--ink2:#38404a!important;--muted:#48505b!important;--line:#b5bdc7!important;--line2:#a0a9b5!important;--forest:#304d42!important;--green:#4e3669!important;--rom-accent:#4e3669!important;--rom-on:#fff!important;--ok-bg:#eaf3e8!important;--ok-ink:#285021!important;--no-bg:#fff0ee!important;--no-ink:#942f28!important}
body[data-reading-palette=warm]{color-scheme:light;--bm-reading-surface:var(--surface);--bm-reading-ink:var(--ink);--bm-reading-secondary:var(--ink2);--white:var(--surface)!important;--support:var(--bg2)!important;--rom-fill:var(--bg2)!important;--portal-accent:#4e3669!important;--portal-nav:var(--surface)!important;--portal-soft:var(--bg2)!important;--portal-line:var(--line)!important;--bg:#fff8e8!important;--paper:#fff8e8!important;--surface:#fffcf4!important;--surface2:#fff8e8!important;--bg2:#f1e8d3!important;--ink:#26231d!important;--ink2:#494337!important;--muted:#514a3e!important;--line:#b7ac96!important;--line2:#a2967d!important;--forest:#304d42!important;--green:#4e3669!important;--rom-accent:#4e3669!important;--rom-on:#fff!important;--ok-bg:#eaf3e8!important;--ok-ink:#285021!important;--no-bg:#fff0ee!important;--no-ink:#942f28!important}
body[data-reading-palette=dark]{color-scheme:dark;--bm-reading-surface:var(--surface);--bm-reading-ink:var(--ink);--bm-reading-secondary:var(--ink2);--white:var(--surface)!important;--support:var(--bg2)!important;--rom-fill:var(--bg2)!important;--portal-accent:#4e3669!important;--portal-nav:var(--surface)!important;--portal-soft:var(--bg2)!important;--portal-line:var(--line)!important;--bg:#15181c!important;--paper:#15181c!important;--surface:#1e2329!important;--surface2:#292f37!important;--bg2:#292f37!important;--ink:#f4f4f2!important;--ink2:#d5dae0!important;--muted:#c5cbd3!important;--line:#727d8a!important;--line2:#8a959f!important;--forest:#b6dccb!important;--green:#d2b5f0!important;--rom-accent:#d2b5f0!important;--rom-on:#15181c!important;--ok-bg:#20301c!important;--ok-ink:#c2e3b4!important;--no-bg:#38201e!important;--no-ink:#ffc2ba!important}
body[data-reading-palette]:not([data-reading-palette=room]){background:var(--bg);color:var(--ink)}
.global-reading{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:600 16px/1.25 var(--font-body,system-ui);cursor:pointer;flex-shrink:0}
.global-reading:focus-visible,.reading-enlarge:focus-visible{outline:3px solid var(--ink2);outline-offset:3px}
.reading-enlarge{display:block;margin:12px 0 0 auto;min-height:44px;padding:8px 12px;font:inherit;font-size:.85em;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);cursor:pointer}
body.bm-reading-large header .hrow{flex-wrap:wrap;height:auto}
body.bm-reading-large :is(.design-course,.ef-topic-row,.ef-step,.design-setting,.ef-school-strip){min-width:0;height:auto;flex-wrap:wrap;gap:16px}
body.bm-reading-large :is(.design-course,.ef-topic-row,.ef-step,.design-setting) :is(button,a){white-space:normal;overflow-wrap:anywhere;height:auto}
body.bm-reading-large :is(.ef-row-meta,.design-actions,.ef-actions,.qmeta){flex-wrap:wrap;gap:12px}
body.bm-reading-large .fk-elev-rad{flex-wrap:wrap;gap:12px}
body.bm-reading-large .fk-elev-rad button{white-space:normal;max-width:100%}
body.bm-reading-large :is(.design-paper,.ef-topic-copy,.ef-step-copy,main,.view){min-width:0;overflow-wrap:anywhere}
body.bm-reading-large :is(.ef-search,input,textarea,select){max-width:100%;min-width:0}
body.bm-reading-large :is(.rb-tabs,.tabs){flex-wrap:wrap}
body.bm-reading-large :is(.ef-level-panel,.lesson-actions){max-height:75dvh;overflow:auto}
.reading-dialog{--bm-text-scale:1}
.reading-dialog{position:fixed;inset:0;margin:auto;width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);font:calc(16px * var(--lesson-scale,1))/1.6 system-ui;box-shadow:0 16px 70px #0004}
.reading-dialog::backdrop{background:#0008}.reading-head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.reading-head h2{font:600 calc(22px * var(--lesson-scale,1))/1.35 system-ui;margin:0}
.reading-dialog fieldset{border:0;padding:0;margin:24px 0}.reading-dialog legend{font-weight:600;margin-bottom:10px}.reading-choices{display:flex;gap:10px;flex-wrap:wrap}.reading-dialog button{min-height:48px;min-width:48px;font:inherit;padding:10px 14px;background:var(--bg);border:1px solid var(--ink2);border-radius:10px;color:var(--ink);cursor:pointer}.reading-dialog button[aria-pressed=true],.reading-dialog .reading-done{background:var(--ink);color:var(--surface)}.reading-dialog button:focus-visible{outline:3px solid var(--ink2);outline-offset:3px}.reading-dialog p{margin:20px 0;font-size:.875em;color:var(--ink2)}.reading-dialog .reading-done{width:100%}
.reading-entry-bar{display:flex;justify-content:flex-end;padding:12px 24px}
@media(max-width:600px){.site-header{flex-wrap:wrap}}
@media(max-width:360px){.site-header{gap:8px}.site-header .site-brand,.site-header .site-brand img{width:110px;min-width:0}}
body.bm-reading-large :is(.site-header,.room-header){flex-wrap:wrap;height:auto}
body[data-reading-palette]:not([data-reading-palette=room]) :is(#design-nav button[aria-current=page],.bm-mobile-nav button[aria-current=page]){background:var(--bg2)!important;color:var(--ink)!important}
body[data-reading-palette]:not([data-reading-palette=room]) .acct-btn.inn{color:var(--ink)!important}
body.bm-reading-large .hrow>.acct-btn{max-width:180px;height:auto;white-space:normal;overflow-wrap:anywhere}
body.bm-reading-large>header{position:relative}
body.bm-reading-large{overflow-wrap:anywhere}
body.bm-reading-large :is(.rb-wrap,.rb-kort,.site-footer-top>div,.bm-statistics>div){min-width:0}
body.bm-reading-large :is(.rb-tren,.bm-statistics-settings){max-width:100%;white-space:normal}
body.bm-reading-large :is(.bm-statistics-actions,.bm-statistics-dialog-head,.bm-statistics-category-head,.bm-statistics-links){flex-wrap:wrap;min-width:0;gap:12px}
body.bm-reading-large .bm-statistics-actions{grid-template-columns:minmax(0,1fr)}
body.bm-reading-large .site-footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
body .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}
body .katex{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle;padding-block:.18em}
body .rule>span:not(.rico){min-width:0;max-width:100%}
body[data-reading-palette]:not([data-reading-palette=room]) :is(.skip,.skip-link){background:var(--surface)!important;color:var(--ink)!important}
body[data-reading-palette]:not([data-reading-palette=room]){--kort:var(--surface)!important;--tekst:var(--ink)!important;--demp:var(--ink2)!important;--linje:var(--line)!important;--soft:var(--bg2)!important}
body[data-reading-palette=dark]{--forest:#304d42!important}
body[data-reading-palette]:not([data-reading-palette=room]) :is(a.primary,button.primary,.project-button:not(.secondary),.launch-button,.grade-picker [aria-pressed=true],.number[aria-pressed=true],.option[aria-pressed=true],.tick[aria-pressed=true]){background:var(--rom-accent)!important;color:var(--rom-on)!important;border-color:var(--rom-accent)!important}
body[data-reading-palette]:not([data-reading-palette=room]) :is(.recommend,.project-card){background:var(--surface)!important;color:var(--ink)}
body.bm-reading-large button{height:auto;min-height:44px;line-height:1.35;white-space:normal}
body.bm-reading-large .counter{flex-wrap:wrap;gap:12px}
body.bm-reading-large .counter button{display:inline-grid;place-items:center;min-width:1.5em;min-height:1.5em;width:auto;height:auto;line-height:1;padding:8px}
body.bm-reading-large .ten-columns .counter{grid-template-columns:minmax(0,1fr);justify-items:center}
body.bm-reading-large .ten-columns .counter button{grid-row:auto}
@media(max-width:600px){body.bm-reading-large .site-footer-top{grid-template-columns:minmax(0,1fr)}}
.reading-figure-dialog{box-sizing:border-box;width:min(1100px,calc(100% - 24px));max-width:calc(100% - 24px)}
.reading-figure-scroll{max-width:100%;max-height:65dvh;overflow:auto;padding:16px;background:var(--bm-figure-background,var(--surface));border:1px solid var(--line);border-radius:10px}
.reading-figure-dialog .reading-head h2{margin:0}
@media(max-width:600px){.reading-figure-dialog{padding:16px}}
.reading-figure-scroll :is(svg,img){display:block;width:100%;min-width:0;max-width:none!important;height:auto!important}
.reading-figure-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-block:12px}
.reading-figure-tools button{font:inherit;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--surface)}
.reading-figure-tools output{min-width:4ch;text-align:center;font-variant-numeric:tabular-nums}
.reading-figure-scroll:focus-visible{outline:3px solid var(--ink2);outline-offset:2px}
.study-figure-dialog{--bm-text-scale:var(--bm-reading-scale,1);font-size:calc(1rem * var(--bm-text-scale))}
body.bm-reading-large .study-figure-tools{flex-wrap:wrap}
body[data-reading-palette=dark] .study-figure-content{background:#fff;color:#202124;--ink:#202124;--ink2:#38404a;--muted:#48505b;--forest:#304d42;border-radius:8px}
/* Original diagrams use inks designed for a light drawing surface. */
:is(body.bm-lesson-calm,body[data-reading-palette]:not([data-reading-palette=room])) :is(figure,.figwrap,.fig-wrap,.construction-scene,.mv-figure,.ef-rule-visual,.rb-fig) svg{background:#fff;color:#202124;--ink:#202124;--ink2:#38404a;--muted:#48505b;--forest:#304d42;--surface:#fff;--surface2:#f7f8fa;--bg2:#eef0f3;--green:#4e3669;border-radius:8px}
@media(max-width:600px){body.bm-reading-large :is(.ef-topic-row,.ef-step,.design-setting){display:flex;flex-direction:column;align-items:stretch}body.bm-reading-large .design-setting input{align-self:flex-start}body.bm-reading-large :is(.design-course-grid,.ef-rule-grid){grid-template-columns:minmax(0,1fr)}body.bm-reading-large header .crumb{display:none}body.bm-reading-large .bm-mobile-nav{position:static!important;transform:none!important;margin:16px;width:calc(100% - 32px);display:grid;grid-template-columns:1fr 1fr;gap:12px}body.bm-reading-large .bm-mobile-nav button{min-width:0;white-space:normal;overflow-wrap:anywhere;min-height:64px;padding:12px}}

.study-figure>.figure-expand{position:static;width:auto;height:auto;min-height:44px;padding:8px 12px;margin:12px 0 0 auto;display:block;font:inherit;font-size:.85em;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
.global-reading{font-size:calc(16px * var(--lesson-scale,1))}

:is(.ef-rule-card,.rb-item) .katex{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle;padding-block:.18em}

body[data-reading-palette]:not([data-reading-palette=room]) #design-sidebar{background:var(--surface)!important}
body[data-reading-palette]:not([data-reading-palette=room]) :is(#design-nav button,#design-nav a,.design-sidebar-footer>button,.design-sidebar-footer>a,.design-brand>span){color:var(--ink2)!important}
body[data-reading-palette]:not([data-reading-palette=room]) :is(.btn-p,.action:not(.secondary):not(.text-button)){background:var(--rom-accent)!important;color:var(--rom-on)!important;border-color:var(--rom-accent)!important}
body[data-reading-palette]:not([data-reading-palette=room]) .action.secondary{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
body[data-reading-palette]:not([data-reading-palette=room]) .public-menu-button{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
body[data-reading-palette=dark]:not([data-rom]) :is(h1,h2,h3,p,small,a,summary,label){color:var(--ink)}
body[data-reading-palette=dark]:not([data-rom]) :is(.guide-example,.guide-note,.guide-callout,.public-paper,.public-card,.faq-row){background:var(--surface);border-color:var(--line);color:var(--ink)}
body[data-reading-palette=dark] .guide-figure{color:var(--ink)}
body[data-reading-palette=dark] .guide-figure figcaption{color:var(--ink2)}
body[data-reading-palette=dark] :is(.site-footer,.public-footer) :is(p,a,small){color:var(--ink2)}

body[data-reading-palette=dark] #room .mentor{background:#304d42;color:#fff}
body[data-reading-palette=dark] #room :is(a,.prerequisite-note){color:var(--ink2)}
body[data-reading-palette=dark] .role-nav button[aria-pressed=true]{background:var(--rom-accent);color:var(--rom-on)}
@media print{body[data-reading-palette]{--bg:#fff!important;--paper:#fff!important;--surface:#fff!important;--bg2:#eee!important;--ink:#000!important;--ink2:#222!important;--muted:#333!important;--rom-accent:#333!important;--rom-on:#fff!important;background:#fff!important;color:#000!important}.global-reading,.reading-enlarge,.reading-entry-bar,.reading-dialog,.figure-expand{display:none!important}}

/* Text labels remain distinct from all colored regions in original diagrams. */
:is(body.bm-lesson-calm,body[data-reading-palette]:not([data-reading-palette=room])) :is(figure,.figwrap,.fig-wrap,.construction-scene,.mv-figure,.ef-rule-visual,.rb-fig) svg text{fill:#202124!important;paint-order:stroke;stroke:#fff;stroke-width:2px;stroke-linejoin:round}
/* Highlighted formula text must stay readable; the operation is also named in the explanation. */
body.bm-lesson-calm .katex [style*="color:"],body[data-reading-palette]:not([data-reading-palette=room]) .katex [style*="color:"]{color:var(--ink)!important}
/* Keep visible diagram labels readable; zero-opacity states and inline animation styles retain control. */
:is(body.bm-lesson-calm,body[data-reading-palette]:not([data-reading-palette=room])) :is(figure,.figwrap,.fig-wrap,.construction-scene,.mv-figure,.ef-rule-visual,.rb-fig) svg text[opacity]:not([opacity="0"]):not([opacity="0.0"]):not([opacity="0.00"]){opacity:1}
.reading-lesson-return{display:flex;max-width:1180px;margin:0 auto;padding:12px 16px;font-size:calc(14px * var(--bm-text-scale,1))}.reading-lesson-return a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid var(--line,#b5bdc7);border-radius:12px;background:var(--surface,#fff);color:var(--ink,#202124);text-decoration:none;overflow-wrap:anywhere}
