/* Classroom: controls and observable evidence before long-form reading. */
.classroom-page #main{padding-top:27px}.classroom-page .lesson-header{margin-bottom:22px;border-bottom:0;padding-bottom:0}.classroom-page .lesson-header h1{font-size:clamp(22px,2.1vw,31px);letter-spacing:-.6px}.classroom-page .lesson-header .eyebrow{margin-bottom:8px;font-size:11px}.classroom-page .lesson-header .definition{display:flex;gap:14px;margin:12px 0 0;font-size:12px}.lesson-format{color:var(--purple)}
#classroom{border:1px solid #d8d2e7;background:#fcfbff;box-shadow:0 7px 24px #3d236407;border-radius:8px;overflow:hidden;scroll-margin-top:100px}.classroom-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;border-bottom:1px solid #e4deef;background:white}.stage-tabs{display:flex;gap:8px;flex-wrap:wrap}.stage-tabs button{border:0;background:transparent;color:var(--muted);font-size:13px;display:flex;gap:7px;align-items:center;padding:8px 10px}.stage-tabs button span{font:11px ui-monospace,monospace;opacity:.7}.stage-tabs button[aria-pressed=true]{background:var(--tint);color:var(--purple);font-weight:650}.reset-experiment{font-size:12px;min-height:36px;padding:5px 8px;border:0;color:var(--muted)}
.classroom-panel{padding:28px 30px 24px;min-height:400px;outline:none;animation:lesson-enter .23s ease-out}.experiment-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--purple);margin-bottom:12px}.classroom-panel h2{font-size:clamp(25px,2.2vw,34px);line-height:1.35;margin-bottom:17px;letter-spacing:-.7px}.experiment-question{font-size:18px;line-height:1.8;max-width:700px;margin-bottom:23px}.prediction-options{display:grid;gap:9px}.prediction-options button{text-align:left;display:flex;align-items:center;gap:13px;font-size:16px;padding:12px 15px;min-height:55px;background:white;transition:background .18s,border-color .18s}.prediction-options button>span{display:grid;place-items:center;width:27px;height:27px;background:#f1edf8;color:var(--purple);border-radius:4px;font:13px ui-monospace,monospace;flex-shrink:0}.prediction-options button b{font-size:11px;margin-left:auto;white-space:nowrap}.prediction-options button[aria-pressed=true]{background:var(--tint);border-color:var(--purple);color:var(--ink)}.prediction-feedback{min-height:61px;margin-top:18px}.prediction-feedback strong{font-size:14px}.prediction-feedback p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:4px}.classroom-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;background:white;border-top:1px solid #e4deef;padding:14px 20px}.classroom-bottom span{font:12px ui-monospace,monospace;color:var(--muted)}.classroom-bottom button{font-size:13px}.condition-controls{display:flex;gap:7px;flex-wrap:wrap;margin:19px 0}.condition-controls button{font-size:13px;min-height:39px;padding:7px 12px}.condition-controls button:last-child{margin-left:auto}.observation{padding:24px;background:white;border:1px solid var(--line);border-radius:5px;min-width:0}.observation-label{font-size:11px;letter-spacing:.07em;color:var(--purple);margin-bottom:8px}.experiment-input{font-size:15px;line-height:1.7;color:var(--muted)}.observation h3{font-size:21px;margin:20px 0 10px;line-height:1.5}.observation-why{font-size:15px;line-height:1.8;color:var(--muted)}.simulation-note{font-size:11px;color:var(--muted);margin-top:13px}.open-exercise{margin-top:14px;font-size:13px}.scene-visual{display:flex;gap:20px;margin:26px 0;align-items:stretch}.scene-node{position:relative;flex:1;min-width:0;border:1px solid #dcd5ec;border-bottom:3px solid #a899d1;padding:17px 13px;background:#f7f4ff;display:flex;flex-direction:column;gap:8px;justify-content:center;overflow-wrap:anywhere}.scene-node:not(:last-child):after{content:'→';position:absolute;right:-17px;color:#8c77bc;top:calc(50% - 13px)}.node-index{font:10px ui-monospace,monospace;color:#877a9d}.scene-node strong{font-size:16px;font-weight:550;line-height:1.6}.scene-classify{flex-direction:column;gap:8px}.scene-classify .scene-node{flex-direction:row;justify-content:flex-start;align-items:center;border-bottom:1px solid #dcd5ec;border-left:3px solid #a899d1}.scene-classify .scene-node:after,.scene-evidence .scene-node:after,.scene-tokens .scene-node:after{content:none}.scene-evidence{display:grid;grid-template-columns:1fr;gap:8px}.scene-evidence .scene-node{background:#faf9fc;border:0;border-left:3px solid #9787ba;flex-direction:row;justify-content:flex-start;align-items:center}.scene-tokens{flex-wrap:wrap;gap:7px}.scene-tokens .scene-node{flex:1 0 90px;min-height:75px;text-align:center}.scene-decision .scene-node:last-child{border-color:#96b7a9;background:#f1f8f4}.model-gauges{display:grid;grid-template-columns:1fr 1fr .8fr;gap:25px;align-items:center;margin:26px 0}.model-gauges>div{min-width:0}.model-gauges span{display:block;font-size:12px;color:var(--muted)}.model-gauges strong{display:block;font:36px/1.5 ui-monospace,monospace;letter-spacing:-2px;color:var(--purple)}.gauge{height:9px;background:#eeebf4;margin-top:8px}.gauge i{display:block;height:100%;background:#7758cf;transition:width .25s}.gauge.context i{background:#a39bb4}.unknown-score{border-left:1px solid var(--line);padding-left:20px;font-size:12px;color:var(--muted)}.unknown-score strong{color:#92859b}.unknown-score span{font-size:11px}.observations.comparing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.comparing .observation{padding:15px}.comparing .scene-visual{flex-direction:column;gap:8px;display:flex}.comparing .scene-node:after{content:none}.comparing .scene-node strong{font-size:14px}.comparing .observation h3{font-size:17px}.comparing .observation p{font-size:13px}.comparing .model-gauges{display:flex;flex-direction:column;align-items:stretch;gap:18px}.comparing .unknown-score{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}.takeaway{border-left:4px solid var(--purple);padding:8px 0 8px 20px;margin:25px 0}.takeaway span,.analogy span,.boundary span{font-size:11px;display:block;letter-spacing:.07em;margin-bottom:7px;color:var(--purple)}.takeaway p{font-size:23px;line-height:1.7}.analogy,.boundary{margin:23px 0}.analogy p,.boundary p{font-size:16px;line-height:1.85}.boundary{padding:18px;background:#f1eef6}.boundary span{color:#706278}.full-reading,.extra-exercise{margin-top:17px;border:1px solid var(--line);border-radius:5px;padding:0 20px;scroll-margin-top:90px}.full-reading>summary,.extra-exercise>summary{padding:17px 0;font-size:15px;cursor:pointer;font-weight:600}.full-reading>summary span,.extra-exercise>summary span{font-size:12px;font-weight:400;color:var(--muted);margin-left:12px}.extra-exercise .lab{margin:0 0 20px}.full-reading .source-detail{margin-bottom:20px}.classroom-page #outline button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:9px 6px;font-size:13px;color:var(--muted);margin-bottom:5px}.classroom-page #outline button[aria-pressed=true]{background:var(--tint);color:var(--purple)}.classroom-page #outline button span{font:10px ui-monospace,monospace;margin-right:5px}.classroom-page .lesson-notes{margin-top:24px}.classroom-page .note-field{min-height:85px}.classroom-page .lesson-done{margin-top:24px}
body.present.classroom-page #main{padding:25px 50px}body.present.classroom-page #content{max-width:1250px}body.present.classroom-page .lesson-header h1{font-size:25px}body.present.classroom-page .classroom-panel{min-height:460px;padding:32px 45px}body.present.classroom-page .classroom-panel h2{font-size:40px}body.present.classroom-page .experiment-question{font-size:24px}body.present.classroom-page .prediction-options button{font-size:22px}body.present.classroom-page .prediction-feedback p{font-size:18px}body.present.classroom-page .scene-node strong{font-size:22px}body.present.classroom-page .observation p{font-size:20px}body.present.classroom-page .simulation-note{font-size:11px}body.present.classroom-page .lesson-notes,body.present.classroom-page .lesson-done{display:none}body.present.classroom-page .takeaway p{font-size:29px}body.present.classroom-page .analogy p,body.present.classroom-page .boundary p{font-size:22px}
@keyframes lesson-enter{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.observations.comparing{grid-template-columns:1fr}.comparing .model-gauges{display:grid;grid-template-columns:1fr 1fr .8fr}.comparing .scene-visual{flex-direction:row}}
@media(max-width:760px){.classroom-page #main,body.present.classroom-page #main{padding:24px 16px}.classroom-page .lesson-header h1,body.present.classroom-page .lesson-header h1{font-size:24px}.classroom-top{padding:10px 8px;gap:0}.stage-tabs{gap:0;flex-wrap:nowrap}.stage-tabs button{font-size:11px;padding:7px 8px;gap:4px}.stage-tabs button span{font-size:9px}.reset-experiment{font-size:11px;padding:5px}.classroom-panel,body.present.classroom-page .classroom-panel{padding:23px 17px;min-height:390px}.classroom-panel h2,body.present.classroom-page .classroom-panel h2{font-size:26px}.experiment-question,body.present.classroom-page .experiment-question{font-size:17px}.prediction-options button,body.present.classroom-page .prediction-options button{font-size:15px;padding:11px;gap:10px}.prediction-options button>span{width:24px;height:24px}.prediction-feedback p,body.present.classroom-page .prediction-feedback p{font-size:14px}.classroom-bottom{padding:12px;gap:6px}.classroom-bottom button{font-size:12px;padding:8px 11px}.classroom-bottom span{font-size:11px}.observation{padding:17px}.model-gauges,.comparing .model-gauges{grid-template-columns:1fr 1fr;gap:20px}.unknown-score{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:12px 0 0;display:flex;align-items:center;gap:15px}.unknown-score strong{font-size:26px}.condition-controls button{font-size:12px;padding:7px 10px}.condition-controls button:last-child{margin-left:0}.scene-visual,.comparing .scene-visual{flex-direction:column;gap:14px;margin:20px 0}.scene-node:not(:last-child):after{content:'↓';right:50%;top:auto;bottom:-20px;font-size:15px}.scene-node strong,body.present.classroom-page .scene-node strong{font-size:16px}.scene-node{padding:12px;gap:5px}.scene-tokens{flex-direction:row}.scene-tokens .scene-node{min-width:60px;flex-basis:60px}.scene-classify,.scene-evidence{gap:8px}.scene-classify .scene-node:after,.scene-evidence .scene-node:after,.scene-tokens .scene-node:after{content:none}.observation h3{font-size:20px}.observation p,body.present.classroom-page .observation p{font-size:15px}.takeaway p,body.present.classroom-page .takeaway p{font-size:21px}.analogy p,.boundary p,body.present.classroom-page .analogy p,body.present.classroom-page .boundary p{font-size:16px}.full-reading,.extra-exercise{padding:0 14px}.full-reading>summary span,.extra-exercise>summary span{display:block;margin:4px 0 0 15px}.extra-exercise .lab{padding:17px 12px}.takeaway{padding-left:15px}}
@media(prefers-reduced-motion:reduce){.classroom-panel{animation:none}.gauge i{transition:none}}
@media print{#classroom,.extra-exercise{display:none}.full-reading{border:0;padding:0}.full-reading>summary{display:none}.full-reading:not([open])>*{display:block}.classroom-page .reading-body{display:block}}
.live-widget{margin-top:25px;border-top:2px solid #b9aade;padding-top:24px}.widget-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:18px}.widget-heading h3{font-size:20px}.widget-heading>span,.widget-caption{font-size:12px;color:var(--muted)}.widget-controls,.time-controls{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}.widget-controls label,.widget-range,.time-controls label,.widget-select{font-size:14px;display:block}.widget-controls input,.widget-range input,.time-controls input{display:block;width:100%;padding:10px 0;accent-color:var(--purple)}.widget-controls select,.widget-select select{display:block;width:100%;margin:7px 0 16px;font-size:14px}.live-widget output{float:right;color:var(--purple);font-variant-numeric:tabular-nums}.live-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:22px 0}.live-metrics strong{display:block;font:34px ui-monospace,monospace;color:var(--purple);margin:9px 0}.live-metrics small,.live-metrics span{font-size:11px;color:var(--muted)}#widget-result p{font-size:14px;line-height:1.9}#widget-result{margin-top:18px}.history-bars>div{display:flex;gap:10px;align-items:center;margin:6px 0}.history-bars small{flex-shrink:0;width:40px;font-size:11px}.history-bars span{display:block;max-width:calc(100% - 50px);min-width:35px;background:#7961bd;color:white;padding:3px 7px;font:12px/1.6 ui-monospace,monospace;transition:width .18s}.history-total strong{font-size:27px;color:var(--purple)}.widget-actions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}.widget-actions button{font-size:12px;min-height:39px}.context-desk{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:16px 0}.context-desk>div{border:1px dashed #c1b6d6;color:var(--muted);min-height:75px;display:grid;place-items:center;font-size:12px;text-align:center;padding:6px}.context-desk .filled{background:#eae2fa;border-style:solid;color:var(--purple)}.retrieval-result{display:grid;gap:12px;background:white;border-left:3px solid var(--purple);padding:20px}.retrieval-result>span{font-size:11px;color:var(--muted)}.retrieval-result strong{font-size:20px}.agent-timeline{padding:0;list-style:none;margin:16px 0}.agent-timeline li{display:flex;gap:12px;align-items:center;padding:9px 0;color:#97909e;font-size:14px}.agent-timeline li span{border:1px solid var(--line);width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-size:12px}.agent-timeline .executed{color:var(--ink)}.agent-timeline .executed span{background:#e6f2ec;color:var(--good);border-color:#acd3bf}.time-controls{grid-template-columns:repeat(3,1fr);gap:17px}.time-stack{height:28px;display:flex;gap:2px;margin:16px 0}.time-stack>div{min-width:0;transition:flex .18s}.stack-0{background:#684cb6}.stack-1{background:#aa95dc}.stack-2{background:#cfc4e5}.time-legend{display:flex;gap:13px;flex-wrap:wrap;font-size:12px;margin-bottom:13px}
@media(max-width:760px){.widget-controls,.time-controls{grid-template-columns:1fr;gap:12px}.widget-heading{gap:5px}.live-metrics{gap:9px}.live-metrics strong{font-size:26px}.live-metrics small,.live-metrics span{font-size:10px}.context-desk{grid-template-columns:1fr 1fr}.live-widget{padding-top:20px}}
