.teaching-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:30px 0 65px}.teaching-card{display:block;border:1px solid var(--line);border-radius:18px;background:white;padding:30px;color:var(--ink);transition:transform .18s,box-shadow .18s}.teaching-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #16346612}.teaching-card h2{font-size:23px;line-height:1.3;max-width:430px;margin:14px 0}.teaching-card>p:not(.section-label){color:var(--soft);min-height:75px}.teaching-card strong{color:var(--blue)}.card-art{height:150px;border-radius:12px;margin-bottom:25px;display:flex;align-items:center;justify-content:center;gap:35px}.brain-art{background:#eaf0fa;color:#2563c9;font-size:70px}.pulse-art{background:#e7f5f3}.card-art svg{width:100%;height:100%;display:block}.physics-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;align-items:start}.physics-main{display:grid;gap:20px}.physics-layout>.controls{position:sticky;top:15px}.physics-layout .controls label{margin:15px 0 5px}.physics-layout .controls summary{font-size:12px;font-weight:650;cursor:pointer;margin-top:15px}.encoding{background:#e7effb;border-radius:9px;padding:16px;margin-top:18px;text-align:center}.encoding span{display:block;font-size:11px;color:var(--soft)}.encoding strong{font-size:30px;color:var(--blue);font-variant-numeric:tabular-nums}.preset-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.preset-buttons button,.playback button{border:1px solid var(--line);background:#f5f7fb;color:var(--ink);border-radius:7px;padding:8px 10px;cursor:pointer}.playback button{background:var(--blue);color:white;min-width:140px}.playback button:disabled{opacity:.5;cursor:wait}.playback{display:flex;align-items:center;gap:12px;margin-top:14px}.playback input{flex:1;min-width:40px;accent-color:var(--blue)}.playback label,.playback output{font-size:11px;white-space:nowrap}.playback output{min-width:60px}#simStatus{font-size:11px;color:var(--soft);margin-bottom:0}#sequence,#phasors,#coherence{width:100%;display:block}.media-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px}.media-pair h3{font-size:14px}.media-pair p{font-size:12px;color:var(--soft)}.media-pair canvas{width:100%;background:#09182b;border-radius:10px;display:block}.echo-stat{display:flex;justify-content:space-between;align-items:center;margin-top:13px;gap:10px}.echo-stat span{font-size:11px;color:var(--soft)}.echo-stat strong{font-size:29px;font-weight:550;font-variant-numeric:tabular-nums}.phase-key{display:flex;align-items:center;justify-content:center;gap:10px;font-size:10px;color:var(--soft);margin:20px 0 0}.phase-key i{width:140px;height:8px;border-radius:5px;background:linear-gradient(90deg,hsl(0 75% 60%),hsl(60 75% 60%),hsl(120 75% 60%),hsl(180 75% 60%),hsl(240 75% 60%),hsl(300 75% 60%),hsl(360 75% 60%))}.math{font-family:Georgia,serif;font-size:22px;overflow-wrap:anywhere}.equations>div>p:last-child{font-size:12px;color:var(--soft)}@media(max-width:900px){.physics-layout{grid-template-columns:1fr}.physics-layout>.controls{position:static;display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.physics-layout>.controls>label,.physics-layout>.controls>input,.physics-layout>.controls>details,.physics-layout>.controls>h2,.physics-layout>.controls>.section-label,.physics-layout>.controls>.small{grid-column:1/-1}.physics-layout>.controls .encoding{margin:10px 0}.teaching-grid{gap:16px}.teaching-card{padding:22px}.teaching-card h2{font-size:19px}}@media(max-width:580px){.teaching-grid,.media-pair{grid-template-columns:1fr}.teaching-card>p:not(.section-label){min-height:0}.playback{flex-wrap:wrap}.playback input{flex-basis:45%}.card-art{height:110px}.math{font-size:18px}}

.direction-form{grid-column:1/-1;margin-top:18px}.direction-form fieldset{border:0;padding:0;margin:0;min-width:0}.direction-form legend{font-size:12px;font-weight:650}.direction-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.direction-inputs input{display:block;width:100%;box-sizing:border-box;padding:7px 4px;border:1px solid var(--line);border-radius:5px;font:inherit}.direction-form button{margin-top:10px;padding:7px 10px;border:1px solid var(--line);border-radius:6px;background:#f5f7fb;cursor:pointer}.direction-form .small{overflow-wrap:anywhere}
.direction-inputs input{font-size:11px;font-weight:400;font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}.direction-inputs input::-webkit-inner-spin-button,.direction-inputs input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* Compact teaching workspace: encoding, phase/signal, then motion. */
.physics-page header{height:50px}
.physics-page main{max-width:1510px;padding:16px 3vw 20px}
.physics-page .intro{max-width:none;margin-bottom:14px}
.physics-page .intro .eyebrow{margin:0}
.physics-page h1{font-size:32px;margin:5px 0}
.physics-page .intro>p:last-child{max-width:1100px;margin:4px 0;font-size:12px}
.physics-page .physics-layout{grid-template-columns:220px minmax(0,1fr);gap:12px}
.physics-page .physics-main{gap:10px}
.physics-page .panel{padding:12px;border-radius:10px}
.physics-page h2{font-size:15px;margin:2px 0 6px}

.physics-page .controls label{margin:10px 0 3px;font-size:11px}
.physics-page .direction-form{margin-top:12px}
.physics-page .direction-form .small{margin:5px 0}
.physics-page .direction-inputs{gap:5px}
.physics-page .direction-inputs input{padding:6px 3px;font-size:10px}
.physics-page .encoding{padding:7px;margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.physics-page .encoding strong{font-size:27px}
.physics-page .encoding span{font-size:9px}
.physics-page .preset-buttons{margin-top:12px}
.physics-page .preset-buttons button{padding:6px 8px;font-size:11px}
.physics-page .playback{margin-top:3px;gap:8px}
.physics-page .playback button{padding:6px 8px;min-width:120px;font-size:11px}
.physics-page #simStatus{margin:3px 0 0;font-size:10px}
.panel-explainer{font-size:10px;color:var(--soft);margin-top:4px}
.panel-explainer summary{cursor:pointer;width:fit-content}
.panel-explainer .note{margin:5px 0;padding:7px}
.signal-plots{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:12px}
.physics-page .media-pair{gap:14px}
.physics-page .media-pair h3{font-size:12px;margin:0}
.physics-page .media-pair p{font-size:10px;line-height:1.4;margin:2px 0 5px;min-height:28px}
.physics-page .media-pair canvas{width:100%;max-height:155px;object-fit:contain;background:#09182b}
.physics-page .echo-stat{margin-top:3px}
.physics-page .echo-stat strong{font-size:21px}
.physics-page .echo-stat span{font-size:10px}
.physics-page .phase-key{margin:6px 0}
.physics-page .equation-details{margin:14px 0 8px}
.physics-page .methods{margin:12px 0}
@media(min-width:1200px){.physics-page #sequence{max-height:210px;object-fit:contain}.physics-page .signal-plots canvas{max-height:155px;object-fit:contain}}
@media(max-width:760px){.physics-page .physics-layout{grid-template-columns:1fr}.physics-page .physics-layout>.controls{position:static;display:block}.physics-page .controls{max-height:none}.signal-plots{grid-template-columns:1fr}.physics-page .media-pair canvas{max-height:none}.physics-page .intro>p:last-child{font-size:12px}}
@media(min-width:761px){.physics-page .physics-layout>.controls{display:block;max-height:calc(100vh - 30px);overflow-y:auto;position:sticky;top:15px}}
@media(min-width:761px){
.physics-page .physics-main .section-label{display:inline-block;margin-right:10px;line-height:18px}
.physics-page .physics-main h2{display:inline;font-size:14px;line-height:20px;margin:0}
.physics-page .physics-main .panel-head{margin-bottom:3px}
.physics-page #sequence{max-height:160px;object-fit:contain}
.physics-page .signal-plots canvas{max-height:110px;object-fit:contain}
.physics-page .signal-plots{margin-top:5px}
.physics-page .media-pair{margin-top:6px}
.physics-page .media-pair canvas{max-height:115px}
.physics-page .media-pair>div>p{min-height:0;height:auto;font-size:9px;line-height:1.2}
.physics-page .echo-stat strong{font-size:17px;line-height:22px}
}

@media(min-width:761px){.physics-page #sequence{max-height:180px}.physics-page main{padding-top:10px}.physics-page .intro{margin-bottom:10px}}
/* Sequence and phase panels share the left column; motion stays alongside. */
.physics-page .phase-explanation{font-size:11px;line-height:1.5;color:var(--soft);margin:8px 0 4px}
@media(min-width:950px){
.physics-page .physics-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
.physics-page .sequence-panel{grid-column:1;grid-row:1}
.physics-page #sequence{max-height:none;height:auto}
.physics-page .phase-panel{grid-column:1;grid-row:2}
.physics-page .motion-panel{grid-column:2;grid-row:1 / span 2}
.physics-page .signal-plots{grid-template-columns:1fr;gap:8px}
.physics-page .signal-plots canvas{max-height:none;height:auto;object-fit:contain}
.physics-page #phasors{height:180px}
.physics-page #coherence{height:185px}
.physics-page .media-pair{grid-template-columns:1fr;gap:12px}
.physics-page .media-pair canvas{height:auto;max-height:275px;object-fit:contain}
.physics-page .physics-main .section-label{display:block}
.physics-page .physics-main h2{display:block;margin:0 0 5px}
.physics-page .sequence-panel .section-label,.physics-page .sequence-panel h2{display:inline-block}
.physics-page .media-pair>div>p{font-size:10px}
}
@media(max-width:949px){
.physics-page .physics-layout{grid-template-columns:1fr}
.physics-page .physics-layout>.controls{position:static;max-height:none;display:block}
.physics-page .signal-plots{grid-template-columns:1fr}
.physics-page .signal-plots canvas{max-height:none;height:auto}
.physics-page .media-pair canvas{max-height:none;height:auto}
}

.motion-directions{display:flex;align-items:center;gap:6px;margin:8px 0 3px;font-size:11px;color:var(--soft)}.motion-directions button{min-width:34px;padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:#f5f7fb;color:var(--ink);cursor:pointer}.motion-directions button[aria-pressed="true"]{background:#e7effb;border-color:#9ab6e3;color:var(--blue);font-weight:700}.physics-page .axis-key{font-size:10px;color:var(--soft);margin:3px 0 8px}

.motion-zoom{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:6px 0;font-size:11px;color:var(--soft)}.motion-zoom button{padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:#f5f7fb;color:var(--ink);cursor:pointer}.motion-zoom button:disabled{opacity:.4;cursor:default}.motion-zoom output{white-space:nowrap}

.motion-zoom button[aria-pressed="true"]{background:#e7effb;border-color:#9ab6e3;color:var(--blue);font-weight:700}

.teaching-card strong { font-size: 1rem; }
.motion-directions button, .motion-zoom button { font-size: 15px; }
