/* Two deliberate instruments: a partition for evidence, a circuit for learning. */
/* Frozen-weight experiments reuse the instrument, with a compact evidence ledger. */
#perceptron-lab{border-top:1px solid #617688;margin-top:18px;padding-top:16px;min-width:0;font-size:13px;line-height:1.5}
#perceptron-lab h3{font:400 22px/1.2 var(--font-display,Georgia);margin:6px 0 10px;scroll-margin-block:100px 120px}
#perceptron-lab p{margin:7px 0}.lab-eyebrow{font:10px/1.4 var(--font-mono,monospace);color:#ffcfab;letter-spacing:.1em}.lab-small{font-size:11px;color:#c2d0df}.lab-weights{padding:9px;border:1px solid #5a7385;border-radius:4px;font:12px/1.6 var(--font-mono,monospace);background:#14283a}
#perceptron-lab button{min-height:44px;padding:9px 11px;background:#1e354a;border:1px solid #7a96aa;border-radius:4px;color:#eff6ff;font:inherit;cursor:pointer;margin:3px 0;max-width:100%}
#perceptron-lab button:disabled{opacity:.5;cursor:default}#perceptron-lab button[aria-pressed=true]{border-color:#f4cf9e;background:#385468;box-shadow:inset 3px 0 #f4cf9e}
.lab-samples{display:grid;gap:12px;margin:14px 0}.lab-samples fieldset{margin:0;padding:10px;min-width:0;border:1px solid #5a7385;border-radius:5px}.lab-samples legend{font-weight:600;color:#ffdbb9;padding:0 5px}.lab-prediction{display:flex;align-items:center;gap:8px}.lab-prediction span{flex:1}.lab-prediction button{width:46px;font:18px monospace!important}.lab-result{font-size:12px;line-height:1.65;min-height:36px}.lab-inspect{font-size:11px!important}.lab-exit{background:transparent!important;font-size:11px!important;margin-top:14px!important}
#perceptron-lab-explanation{margin:12px 0}#perceptron-lab-explanation label{display:block;margin:12px 0 5px;font-weight:600;font-size:12px}#perceptron-lab-explanation select,#perceptron-lab-explanation textarea{width:100%;min-height:44px;box-sizing:border-box;font:12px/1.5 var(--font-body,sans-serif);background:#142538;color:#f0f5fc;border:1px solid #7590a3;border-radius:4px;padding:10px}#perceptron-lab-explanation textarea{resize:vertical;scroll-margin-block:100px 180px}
#perceptron-lab-history{margin-top:15px;font-size:12px}#perceptron-lab-history summary{cursor:pointer;padding:10px 0;color:#ffdbb9}.lab-record{border-left:2px solid #83a999;padding:5px 0 5px 12px;margin:10px 0;overflow-wrap:anywhere}.lab-record h4{font-size:12px;margin:4px 0}.lab-record p{white-space:pre-wrap}.lab-record small{color:#b9cad9}
body[data-room=perceptron] #perceptron-lab-active:not([hidden])~details{scroll-margin-top:100px}
body[data-perceptron-lab=true] .focus-inputs,body[data-perceptron-lab=true] #focused-visual .visual-input-controls{display:none}
#perceptron-lab .lab-samples p{margin:5px 0}#perceptron-lab .lab-samples .lab-small{font-size:10px}.lab-samples .lab-inspect{min-height:44px!important;padding:5px 9px!important}
body[data-focus-active=true] #lesson-progress,body[data-focus-active=true] #connection-note,body[data-focus-active=true] #exhibit-intro{display:none}
#focused-lesson{color:#e8edf5;scroll-margin-top:76px}
#focused-lesson h2{font:400 21px/1.3 var(--font-display,Georgia);letter-spacing:-.025em;margin:0 0 12px}
.focus-kicker{display:none}
.focus-replies{display:flex;gap:15px;margin-bottom:12px}.focus-replies p{flex:1;margin:0;padding:10px 0;border-block:1px solid #544960;font-size:13px;line-height:1.5}.focus-replies b{display:block;color:#d2b7d6;font:11px monospace;margin-bottom:6px}
.focus-choices{display:flex;gap:8px;align-items:center;margin:10px 0}.focus-choices button,.focus-inputs button,.visual-input-controls button{font:inherit;font-size:12px;text-align:left;color:#dfebf6;border:1px solid #516278;background:#15263b;padding:10px 12px;border-radius:4px;min-height:42px;cursor:pointer;line-height:1.35}.focus-choices button{flex:1}.focus-choices button[aria-pressed=true],.focus-inputs button[aria-pressed=true]{background:#304a61;border-color:#f1c696;color:white;box-shadow:inset 3px 0 #f1c696}
#focus-predictions span{font-size:12px;flex:2}#focus-predictions button{flex:0 0 52px;text-align:center;font:20px monospace}
.focus-inputs{display:flex;gap:10px}.focus-inputs button{flex:1;text-align:center}.focus-equation{font:15px/1.5 'JetBrains Mono',monospace;margin:12px 0 3px;color:#ffccaa}.focus-rule{font-size:11px;color:#b6c8da;margin:0 0 10px}
#focus-feedback{border-left:2px solid var(--room-accent);padding:8px 0 8px 12px;margin-top:12px;outline-offset:4px}#focus-feedback strong{font-size:14px;font-weight:600;line-height:1.4}#focus-feedback p{font-size:13px;line-height:1.55;color:#c6d4e7;margin:5px 0 0}#focus-feedback[data-complete=true]{border-color:#a7d9bc}
body[data-focus-active=true] .exhibit-controls{margin-top:0}#focused-audio{font-size:11.5px;margin:7px 0;color:#c3d0e0}#focused-audio summary{cursor:pointer;padding:4px 0}#focused-audio[open]{max-height:180px;overflow:auto}#focused-audio .era-audio{margin:8px 0}#focused-audio .audio-transcript{font-size:12px}
body[data-focus-active=true] button:focus-visible,body[data-focus-active=true] summary:focus-visible,#focus-feedback:focus-visible{outline:2px solid #ffe0a5;outline-offset:4px}
#focused-visual{display:none;min-width:0}.visual-overline{font-size:10px;letter-spacing:.17em;color:#b8c8d9;line-height:1.5}.visual-footnote{font-size:13px;line-height:1.6;color:#b5c7db;max-width:560px}
body[data-view=flat][data-focus-active=true] #focused-visual{display:block;position:absolute;top:65px;left:44%;right:4%}body[data-view=flat][data-focus-active=true] #museum{padding:32px 4% 125px;min-height:calc(100svh - 68px);background:radial-gradient(ellipse at 80% 40%,#1c2a4055,transparent 65%)}body[data-view=flat][data-focus-active=true] .exhibit-copy{margin:0;width:35%;max-width:400px}
body[data-focus-active=true] h1,body[data-view=flat][data-focus-active=true] h1{font-size:30px;line-height:1.15;margin-bottom:16px}
body[data-focus-active=true] .eyebrow{font-size:9px;margin-bottom:8px}body[data-focus-active=true] .exhibit-limit{font-size:10px}
body[data-view=flat][data-focus-active=true] .actions{grid-template-columns:1fr auto}body[data-view=flat][data-focus-active=true] .actions .primary{grid-column:1/-1;width:100%}body[data-view=flat][data-focus-active=true] #source-details{font-size:11.5px}
.partition-visual{display:grid;grid-template-columns:1fr 40px 1fr;min-height:275px;align-items:stretch;margin:28px 0 20px}.remote-voice{padding:24px 20px;background:linear-gradient(135deg,#293045,#162034);border-top:2px solid #d2b7d6;border-bottom:1px solid #665a70;box-shadow:0 18px 40px #0003}.remote-voice>span{font:11px monospace;letter-spacing:.15em;color:#d2b7d6}.remote-voice blockquote{font:400 clamp(21px,2.1vw,30px)/1.4 var(--font-display,Georgia);margin:25px 0;color:#f2eaf5}.remote-voice i{font-size:10px;color:#b9acbf;font-style:normal}.partition-seam{display:flex;flex-direction:column;align-items:center;justify-content:center;background:repeating-linear-gradient(90deg,#293044 0 2px,#0c1526 2px 6px);color:#decbe4}.partition-seam>span{font:40px Georgia}.partition-seam small{font:8px/1.6 monospace;text-align:center;margin-top:20px}.evidence-line{display:flex;justify-content:space-between;border-bottom:1px solid #36455b;padding-bottom:18px;gap:12px}.evidence-line span{font:9px/1.5 monospace;color:#a9bbd0}.evidence-line b{display:block;font:13px/1.5 var(--font-body,sans-serif);color:#e4d2e9;margin-top:6px}
#focused-visual svg{width:100%;height:auto;display:block;margin:30px 0 5px;overflow:visible;font-size:14px;fill:#dce9f7}#focused-visual svg text{font-family:'JetBrains Mono',monospace}.visual-input-controls{display:flex;gap:12px;justify-content:center}.visual-input-controls button{min-width:130px;text-align:center}
#focused-visual [role=button]{cursor:pointer}#focused-visual [role=button]:focus-visible{outline:2px solid #ffe0a5;outline-offset:6px}
body[data-focus-active=true] .exhibit-reading{flex-shrink:0}
@media(min-width:701px){body[data-view=museum][data-focus-active=true] h1{font-size:27px;margin-bottom:12px}body[data-view=museum][data-focus-active=true] .focus-replies p{padding:7px 0}body[data-view=museum][data-focus-active=true] .focus-choices button{padding:8px 10px;min-height:38px}body[data-view=museum][data-focus-active=true] #focus-feedback{margin-top:10px}body[data-view=museum][data-focus-active=true] #focus-feedback p{font-size:12.5px;line-height:1.5}}
@media(min-width:701px){body[data-view=museum][data-focus-active=true] .exhibit-copy{gap:12px;top:24px;max-height:calc(100% - 112px);width:350px}body[data-view=museum][data-focus-active=true] .exhibit-reading{overflow:visible}body[data-focus-active=true] .exhibit-copy[data-more=true] .exhibit-controls::before{display:none}body[data-view=museum][data-focus-active=true] #focused-lesson h2{font-size:18px}body[data-view=museum][data-focus-active=true] .focus-kicker{display:none}}
@media(max-width:700px){
 body[data-focus-active=true] #scene{position:relative;top:auto;height:230px;min-height:230px;max-height:230px}
 body[data-focus-active=true] .exhibit-copy,body[data-view=flat][data-focus-active=true] .exhibit-copy{width:auto;max-width:none;padding:12px 22px 0;margin:0}
 body[data-view=flat][data-focus-active=true] #museum{padding:0 0 115px;display:flex;flex-direction:column}
 body[data-view=flat][data-focus-active=true] #focused-visual{position:relative;left:auto;right:auto;top:auto;order:-1;padding:20px 22px 0}
 body[data-focus-active=true] h1,body[data-view=flat][data-focus-active=true] h1{font-size:27px;margin-bottom:12px}
 body[data-focus-active=true] .exhibit-controls{position:static;box-shadow:none;margin-top:12px}
 body[data-focus-active=true] #focus-feedback p{font-size:13px}.focus-kicker{display:none}.visual-overline{font-size:8px}.visual-footnote{font-size:11px;margin-bottom:0}
 .partition-visual{grid-template-columns:1fr 22px 1fr;min-height:150px;margin:14px 0 12px}.remote-voice{padding:12px 10px}.remote-voice>span{font-size:8px}.remote-voice blockquote{font-size:16px;margin:12px 0}.remote-voice i{font-size:8px}.partition-seam small{font-size:6px}.partition-seam>span{font-size:26px}.evidence-line{padding-bottom:10px;gap:8px}.evidence-line span{font-size:7px}.evidence-line b{font-size:10px}
 #focused-visual svg{margin:10px 0 0}.visual-input-controls button{min-height:36px;font-size:11px}.visual-footnote{margin:8px 0}
 #focused-audio[open]{max-height:none;overflow:visible}
}
/* Field Quest retains its established layout and controls. */
body[data-quest=true] #focused-lesson,body[data-quest=true] #focused-visual,body[data-quest=true] #focused-audio{display:none!important}
body[data-quest=true][data-view=flat] .exhibit-copy{width:650px;max-width:100%;margin:auto}body[data-quest=true] .exhibit-reading{overflow:auto}
@media(min-width:701px){
 body[data-view=museum][data-focus-active=true] .exhibit-copy{gap:8px}
 body[data-view=museum][data-focus-active=true] .exhibit-controls{padding-top:6px}
 body[data-view=museum][data-focus-active=true] .actions .primary{min-height:40px;padding-block:10px}
 body[data-view=museum][data-focus-active=true] .actions .text-button{min-height:24px;padding-block:2px}
 body[data-view=museum][data-focus-active=true] #focused-lesson h2{margin-bottom:8px}
 body[data-view=museum][data-focus-active=true] .eyebrow{margin-bottom:5px}
 body[data-view=museum][data-focus-active=true] #focused-audio[open],body[data-view=museum][data-focus-active=true] #source-details[open]{position:fixed;bottom:90px;left:4.5vw;width:350px;max-height:340px;z-index:9;background:#132137;border:1px solid #546680;padding:14px;box-shadow:0 0 0 100vmax #07102255;overflow:auto}
}

/* The canvas owns an unobstructed stage. Results and Continue share page flow. */
body{--stage-left:clamp(400px,34vw,480px)}
body[data-view=museum] #museum{height:auto;min-height:calc(100svh - 68px);overflow:visible;padding-bottom:110px}
body[data-view=museum] #scene{position:fixed;inset:140px 0 82px var(--stage-left);height:auto;min-height:0;max-height:none;background:#111a2a}
body[data-view=museum] #scene canvas{mask-image:none}
body[data-view=museum] .scene-shade{display:none}
body[data-view=museum] .exhibit-copy,
body[data-view=museum][data-inspecting=true] .exhibit-copy,
body[data-view=museum][data-focus-active=true] .exhibit-copy,
body[data-view=museum][data-quest=true] .exhibit-copy{position:relative;inset:auto;transform:none;width:calc(var(--stage-left) - 48px);max-width:none;max-height:none;overflow:visible;margin:0;padding:28px 0 18px 28px;display:flex;flex-direction:column;gap:16px}
body[data-view=museum] .exhibit-reading,
body[data-view=museum][data-quest=true] .exhibit-reading{overflow:visible;max-height:none;padding:0;flex-shrink:0;overscroll-behavior:auto}
body[data-view=museum] .exhibit-controls{position:static;box-shadow:none;max-height:none;margin-top:0;padding-top:14px}
body[data-view=museum] .exhibit-copy[data-more=true] .exhibit-controls::before{display:none}
body[data-view=museum] #source-details[open],
body[data-view=museum][data-focus-active=true] #source-details[open],
body[data-view=museum][data-focus-active=true] #focused-audio[open]{position:static;inset:auto;width:auto;max-height:none;overflow:visible;box-shadow:none;background:transparent;border:0;padding:0}
body[data-view=museum] .journey{position:fixed;z-index:8}
body[data-view=museum] .look-hint{position:fixed;left:calc(var(--stage-left) + 16px);right:16px;bottom:94px;width:fit-content;max-width:calc(100vw - var(--stage-left) - 32px);padding:9px 12px;background:#111c30;color:#e5e9f2;border:1px solid #52637c;border-radius:5px;text-shadow:none;font-size:12px;line-height:1.5;z-index:3}
.travel-tools{position:fixed;top:78px;left:calc(var(--stage-left) + 12px);right:12px;z-index:6;display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;background:#0b1326;color:#e5e9f2;padding:6px 8px;border-radius:6px;font-size:12px;line-height:1.5}
.travel-tools label{display:flex;align-items:center;gap:8px;white-space:nowrap}
.travel-tools button,.travel-tools select{min-height:40px;border:1px solid #637695;border-radius:4px;background:#15263b;color:#f1f5ff;padding:8px 10px;font:inherit}
.travel-tools button:hover,.travel-tools select:hover{border-color:#aecaff;background:#243c5e}
.travel-tools select:focus-visible{outline:2px solid #93b4f8;outline-offset:3px}
#travel-status{position:static;width:auto;height:auto;clip-path:none;overflow:visible;flex:1;min-width:135px;font-size:12px;color:#dbe8ff;line-height:1.5;margin:0}
body[data-view=flat] .travel-tools{position:relative;inset:auto;max-width:900px;margin:0 auto 24px}
body[data-view=flat][data-focus-active=true] #focused-visual{top:130px}
.passage-note{background:#111c30;border:1px solid #56657c;border-radius:8px;padding:16px;text-shadow:none;left:calc(var(--stage-left) + (100vw - var(--stage-left))/2);width:min(470px,calc(100vw - var(--stage-left) - 40px))}
body[data-traveling=true] .exhibit-copy{opacity:.6;filter:none}
.result,.discovery-result,#focus-feedback{scroll-margin-block:90px 120px}
#journey-ending{width:min(630px,calc(100vw - 32px));max-height:calc(100svh - 32px);overflow:auto;background:#111c30;color:#e5e9f2;border:1px solid #637695;border-radius:14px;padding:clamp(22px,4vw,40px);box-shadow:0 24px 100px #0009;line-height:1.65}
#journey-ending::backdrop{background:#030914d9}
#journey-ending h2{font:400 clamp(27px,4vw,36px)/1.2 var(--font-display,Georgia);letter-spacing:-.03em;margin:8px 0 20px}
#journey-ending p{color:#cdd9eb}
#journey-ending button{min-height:44px;background:#243c5e;color:#f1f5ff;border:1px solid #7b95b9;border-radius:5px;padding:10px 15px;margin:8px 10px 0 0}
#journey-ending button.primary{display:inline-flex;background:#2563eb}
@media(max-width:1000px){
 body[data-view=museum] #museum{min-height:calc(100svh - 68px);padding-bottom:122px;display:flex;flex-direction:column}
 body[data-view=museum] #scene,
 body[data-view=museum][data-inspecting=true] #scene,
 body[data-view=museum][data-focus-active=true] #scene,
 body[data-view=museum][data-quest=true] #scene,
 body[data-view=museum]:not([data-inspecting=true]) #scene{position:relative;inset:auto;order:1;flex:none;width:100%;height:clamp(270px,40svh,410px);min-height:270px;max-height:410px;touch-action:pan-y}
 body[data-view=museum] .travel-tools{position:relative;inset:auto;order:0;flex:none;margin:0;width:100%;padding:12px 20px;min-height:62px;border-bottom:1px solid #34445f;border-radius:0}
 body[data-view=museum] .exhibit-copy,
 body[data-view=museum][data-inspecting=true] .exhibit-copy,
 body[data-view=museum][data-focus-active=true] .exhibit-copy,
 body[data-view=museum][data-quest=true] .exhibit-copy{order:3;width:100%;max-width:700px;padding:24px;margin:0 auto;gap:18px}
 body[data-view=museum] .look-hint{position:relative;inset:auto;order:2;display:block;max-width:calc(100% - 40px);margin:8px 20px 0;font-size:12px}
 body[data-view=museum] .passage-note{position:fixed;top:210px;bottom:auto;left:50%;width:calc(100vw - 48px);max-width:500px;z-index:7}
 body[data-view=flat][data-focus-active=true] #museum{display:flex;flex-direction:column;padding:0 0 120px}
 body[data-view=flat][data-focus-active=true] #focused-visual{position:relative;inset:auto;order:1;padding:24px;width:100%;max-width:700px;margin:auto}
 body[data-view=flat][data-focus-active=true] .exhibit-copy{order:2;width:100%;max-width:700px;margin:auto;padding:24px}
 body[data-view=flat] .travel-tools{inset:auto;width:100%;padding:12px 20px;margin:0}
}
@media(max-width:700px){
 body[data-view=museum] .travel-tools{padding:10px 16px;gap:6px 10px}
 .travel-tools label{font-size:12px}.travel-tools button,.travel-tools select{min-height:42px;padding:8px}
 #travel-status{flex-basis:100%;font-size:12px;min-height:18px}
 body[data-view=museum] .exhibit-copy,
 body[data-view=museum][data-inspecting=true] .exhibit-copy,
 body[data-view=museum][data-focus-active=true] .exhibit-copy{padding:20px 22px}
 body[data-view=museum] .rule-note{font-size:12px;line-height:1.6}
 body[data-view=museum] .exhibit-limit{font-size:11px}
}

body[data-imitation-lab=true] #focus-question,body[data-imitation-lab=true] #focus-interview,body[data-imitation-lab=true] #focus-evidence,body[data-imitation-lab=true] #focus-feedback{display:none}

#focus-equation{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:12px;line-height:1.6}#focus-equation button{min-height:44px;max-width:100%;padding:7px;border:1px solid #6d889b;border-radius:5px;background:#162a3d;color:#dce8f3;font:inherit;cursor:pointer;white-space:normal}#focus-equation button[aria-pressed=true]{background:#425037;color:#fff0ca;border:2px solid #f1d299}#focus-equation button:focus-visible{outline:2px solid #f1d299;outline-offset:3px}#focus-inspection{min-height:3em;line-height:1.5}

#focused-visual [data-circuit-part][data-selected=true]{stroke:#fff0a8;stroke-width:5px;filter:drop-shadow(0 0 5px #ffe6a0)}#focused-visual text[data-circuit-part][data-selected=true]{stroke:none;fill:#fff0a8;font-weight:bold;text-decoration:underline}
