/* The shared reader supplies typography, navigation, and both colour themes. */
.qe-lab,.qe-scene{--lab-blue:#24769a;--lab-gold:#ad621d;--lab-violet:#7756a6;margin:2rem 0;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden;font:15px/1.6 var(--sans);color:var(--ink)}
.qe-lab header,.qe-scene header{padding:22px 24px 8px}.qe-lab h3,.qe-scene-heading{margin:4px 0 10px!important;font:600 21px/1.35 var(--sans)!important;color:var(--ink)}.qe-eyebrow{font:10px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0}
.qe-scroll{overflow:auto;max-width:100%;overscroll-behavior-x:contain}.qe-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.qe-apparatus{display:block;width:100%;min-width:570px;height:auto;color:var(--ink)}
.qe-apparatus text{fill:currentColor;stroke:none;font:17px var(--sans)}.qe-apparatus text.small{font-size:13px;fill:var(--muted)}.qe-apparatus .accent{fill:var(--accent);font-weight:600}.qe-apparatus .svg-fo,.qe-chart .svg-fo{overflow:visible;pointer-events:none}.qe-apparatus .svg-math,.qe-chart .svg-math{font:16px/1.2 var(--sans);color:currentColor;white-space:nowrap}.qe-apparatus .svg-math.small,.qe-chart .svg-math{font-size:13px;color:var(--muted)}.qe-apparatus .svg-math.accent{color:var(--accent);font-weight:600}.qe-apparatus .svg-math mjx-container,.qe-chart .svg-math mjx-container,.qe-metric small mjx-container,.qe-model-note mjx-container,.qe-live mjx-container{display:inline!important;margin:0!important}.qe-apparatus .node rect{fill:var(--sidebar);stroke:var(--line);stroke-width:1.5}.qe-apparatus .ray{stroke:var(--lab-blue);stroke-width:2;fill:none}.qe-apparatus .axis{stroke:var(--muted);stroke-width:1.2;fill:none}.qe-apparatus .alternative{stroke:var(--lab-blue);stroke-width:1;fill:none;opacity:.35}.qe-apparatus .splitter,.qe-apparatus .filter-axis{stroke:var(--lab-gold);stroke-width:5;fill:none}.qe-apparatus .source,.qe-apparatus .traveller,.qe-apparatus .state-tip{fill:var(--accent)}.qe-apparatus .sphere-ring{stroke:var(--muted);stroke-width:1;fill:none;opacity:.65}.qe-apparatus .state-vector{stroke:var(--accent);stroke-width:4;fill:none}.qe-apparatus .coherence-link{stroke:var(--lab-violet);stroke-width:7;stroke-dasharray:8 5}.qe-apparatus .lab-boundary{fill:none;stroke:var(--lab-blue);stroke-width:1.5;stroke-dasharray:7 5}.qe-apparatus .potential,.qe-apparatus .filter{fill:var(--sidebar);stroke:var(--lab-gold);stroke-width:2}.qe-apparatus .energy-line{stroke:var(--lab-gold);stroke-width:1.5;stroke-dasharray:5 5}.qe-apparatus .tunnel-wave{stroke:var(--lab-blue);stroke-width:2.5;fill:none}.qe-apparatus .packet{fill:var(--lab-blue);opacity:.55}.qe-apparatus .secondary{fill:var(--lab-gold)}.qe-apparatus .barrier{stroke:var(--ink);stroke-width:6;fill:none}.qe-apparatus .active-stage rect{stroke:var(--accent);stroke-width:3}
.qe-scroll-hint{font:12px/1.5 var(--sans);color:var(--muted);margin:0!important;padding:4px 24px 16px}.qe-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px 24px;background:var(--sidebar);border-block:1px solid var(--line)}.qe-controls label{font:600 13px/1.5 var(--sans);display:block}.qe-controls input[type=range]{display:block;width:100%;margin:14px 0 5px;accent-color:var(--accent);min-height:24px}.qe-controls output{float:right;font-variant-numeric:tabular-nums;color:var(--accent)}.qe-controls select{display:block;width:100%;margin-top:7px;padding:8px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);min-height:40px}.qe-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.qe-actions button{min-height:42px;padding:8px 15px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);cursor:pointer}.qe-actions button:first-child{background:var(--accent);color:var(--paper);border-color:var(--accent)}.qe-actions button:hover{filter:brightness(.95)}.qe-live{margin:0!important;padding:10px 24px 0;min-height:30px;font-size:12px;color:var(--muted)}
.qe-chart{display:block;width:100%;min-width:0;height:auto}.qe-chart text{font:13px var(--sans);fill:var(--muted)}.qe-chart .grid{stroke:var(--line);stroke-width:1}.qe-chart .curve{stroke:var(--lab-blue);stroke-width:2.5;fill:none}.qe-chart .curve.secondary{stroke:var(--lab-gold);stroke-dasharray:7 4}.qe-chart .curve.tertiary{stroke:var(--lab-violet);stroke-dasharray:3 4}.qe-chart .point{fill:var(--lab-gold);stroke:var(--paper);stroke-width:1.5}.qe-chart .bar{fill:var(--lab-blue);opacity:.75}.qe-chart .bound{stroke:var(--lab-gold);stroke-width:1.5;stroke-dasharray:5 4}.qe-readout{padding:0 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.qe-metric{border-top:2px solid var(--line);padding:9px 0;min-width:0}.qe-metric small{display:block;color:var(--muted);font-size:12px}.qe-metric strong{display:block;font:500 23px/1.4 var(--sans);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.qe-model-note{padding:0 24px;font-size:13px}.qe-data{margin:16px 24px;font-size:13px}.qe-data summary{cursor:pointer}.qe-table-wrap{overflow:auto}.qe-lab table{width:100%;font:13px/1.5 var(--sans)!important;border-collapse:collapse}.qe-lab td,.qe-lab th{border-bottom:1px solid var(--line);text-align:left;padding:7px!important}.qe-lab figcaption,.qe-scene figcaption{padding:16px 24px;background:var(--sidebar);border-top:1px solid var(--line);font:12px/1.6 var(--sans)!important;margin:0!important}.qe-lab noscript p,.qe-scene noscript p{padding:10px 24px}.qe-scene-controls{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}.qe-apparatus .stage-box{transition:stroke .2s,stroke-width .2s,fill .2s}.qe-apparatus .stage-active .stage-box{stroke:var(--accent);stroke-width:2.6;stroke-dasharray:none}.worked-answer{border-left:3px solid var(--accent);padding:1px 22px;background:var(--sidebar)}.exercise{margin:28px 0}.qe-cover-stat{display:flex;gap:26px;margin-top:35px;flex-wrap:wrap;font:12px/1.6 var(--sans);color:var(--muted)}.qe-cover-stat strong{display:block;font-size:28px;font-weight:500;color:var(--accent)}.qe-chapters{list-style:none;padding:0!important}.qe-chapters li{border-bottom:1px solid var(--line)}.qe-chapters a{display:grid;grid-template-columns:32px 1fr 20px;gap:14px;padding:20px 0;text-decoration:none!important;align-items:start}.qe-chapters strong{font:500 20px/1.4 var(--reading-font)}.qe-chapters small{display:block;color:var(--muted);font:13px/1.6 var(--sans);margin-top:5px}.qe-chapter-number{font:12px/2 var(--sans);color:var(--muted)}
html[data-theme=dark] .qe-lab,html[data-theme=dark] .qe-scene{--lab-blue:#7ac6e2;--lab-gold:#f2bb76;--lab-violet:#c8abf1}
@media(max-width:600px){.qe-controls{grid-template-columns:1fr;padding:16px}.qe-lab header{padding:18px 16px 8px}.qe-readout{padding:0 16px;grid-template-columns:1fr 1fr}.qe-model-note,.qe-scroll-hint,.qe-live{padding-left:16px;padding-right:16px}.qe-data{margin-inline:16px}.qe-lab figcaption{padding:16px}.qe-chapters strong{font-size:18px}.qe-chapters a{gap:8px}.qe-actions button{flex:1 0 auto}}
@media print{.qe-controls,.qe-live,.qe-scroll-hint{display:none!important}.qe-scroll{overflow:visible}.qe-apparatus,.qe-chart{min-width:0;width:100%}.qe-lab{break-inside:auto}.qe-data{display:block}.qe-lab figcaption{color:#333}}
