.proof-page h2{margin-top:2.8rem}.recorder-lab h2,.recorder-explanation h2,.recorder-proof h2{scroll-margin-top:7rem}.recorder-opening{max-width:53rem}.recorder-opening h1{font-size:clamp(2.8rem,6.6vw,5rem);max-width:13ch}.recorder-opening .lead{max-width:39rem}.recorder-lab{border:1px solid var(--line);margin-bottom:4rem}.lab-heading{display:flex;justify-content:space-between;gap:1.5rem;padding:1.6rem 2rem;align-items:center}.lab-heading h2{font:400 1.6rem var(--rpi-sans)!important;letter-spacing:-.035em;margin:0}.count-readout{display:flex;align-items:center;gap:1rem;font-size:.85rem}.count-readout output{font:500 3rem var(--mono);line-height:1}.signal-bank{background:#1b2431;color:#f3f4f7;padding:1rem 2rem}.port-row{display:grid;grid-template-columns:10rem minmax(0,1fr);gap:1.5rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid #46515f}.port-row:last-child{border:0}.row-label strong{display:block;font-weight:500;font-size:1rem}.row-label small{color:#c3cad5;font-size:.8rem;line-height:1.45;display:block;margin-top:.35rem}.ports{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:0;margin:0;gap:.55rem;min-height:4.9rem;list-style:none;align-items:center}.port{display:flex;flex-direction:column;align-items:center;gap:.55rem;font:.7rem var(--mono)}.port-orb{display:block;position:relative;width:2.8rem;height:2.8rem;border:1px solid #b3becf;border-radius:50%}.input .port-orb{background:#efeee8}.port-orb i{display:block;position:absolute;left:calc(50% - 1px);bottom:50%;height:1rem;width:2px;background:#1b2431;transform-origin:50% 100%}.output .port-orb{background:#bdc7d8;border:1px solid #bdc7d8}.cell .port-orb{border-radius:.3rem;border-style:dashed}.cell.written .port-orb{background:#bdb7f5;border:1px solid #bdb7f5}.cell.written .port-orb:after{content:'●';display:block;text-align:center;font-size:1.2rem;line-height:2.7rem;color:#1b2431}.empty-ports{grid-column:1/-1;font-size:.875rem;color:#c3cad5}.energy-account{padding:1.5rem 2rem;background:#e4e5e2}.energy-bar{display:flex;width:100%;height:.9rem;overflow:hidden;background:#d4d9df}.energy-bar span{min-width:0;transition:flex-basis .2s ease}.energy-bar #unused-segment{background:#596775}.energy-bar #stored-segment{background:#6860a8}.energy-bar #outgoing-segment{background:#8d9baf}.energy-figures{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1rem 0 0}.energy-figures dt{font-size:.76rem;color:#45515e}.energy-figures dd{margin:.2rem 0 0;font:1.2rem var(--mono);color:#172333}.lab-actions{padding:1.5rem 2rem}.lab-actions .controls{margin-top:0}.lab-actions .status{min-height:3.2rem;margin-bottom:0}.recorder-explanation{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;border-top:1px solid var(--line);padding-top:2.5rem}.recorder-explanation h2{font-size:2.3rem!important}.split-figure{margin:2rem 0;background:#e5e6e5;padding:1rem}.split-figure svg{display:block;width:100%;height:auto}.split-figure figcaption{font-size:.85rem;line-height:1.6;color:#45515e;padding:.5rem}.recorder-proof{margin:4rem auto;max-width:48rem}.recorder-proof summary{cursor:pointer;font-weight:600}.recorder-proof details{border-top:1px solid var(--line);padding:1rem 0}.recorder-proof li{padding-bottom:.5rem}.paper-link{display:inline-block;margin:.25rem 1rem .25rem 0}.recorder-lab :focus-visible{outline:3px solid #586597;outline-offset:5px}@media(max-width:760px){.lab-heading,.signal-bank,.energy-account,.lab-actions{padding-left:1rem;padding-right:1rem}.lab-heading{align-items:start}.lab-heading h2{font-size:1.3rem!important}.count-readout{gap:.6rem}.count-readout output{font-size:2.6rem}.port-row{grid-template-columns:minmax(0,1fr);gap:1rem}.row-label{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.row-label small{margin:0;text-align:right;max-width:11rem}.ports{gap:.3rem}.port-orb{width:2.1rem;height:2.1rem}.port-orb i{height:.75rem}.cell.written .port-orb:after{line-height:2rem}.port{font-size:.6rem}.energy-figures{grid-template-columns:1fr 1fr;gap:.8rem}.energy-figures dd{font-size:1.05rem}.recorder-explanation{grid-template-columns:1fr;gap:1.5rem}.recorder-opening h1{max-width:14ch}.lab-actions .status{min-height:6rem}.controls button{flex:1 1 auto}}@media(prefers-reduced-motion:reduce){.energy-bar span{transition:none}}@media print{.signal-bank{background:#fff;color:#172333}.row-label small,.empty-ports{color:#45515e}.recorder-explanation{display:block}.recorder-lab{break-inside:avoid}}
