@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://grahame.dev/csirac/assets/jost-cyrillic-wght-normal-CjwCQKo9.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://grahame.dev/csirac/assets/jost-latin-ext-wght-normal-BDUtSsKd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://grahame.dev/csirac/assets/jost-latin-wght-normal-ObQm3Zd1.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Source Code Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(https://grahame.dev/csirac/assets/source-code-pro-cyrillic-ext-wght-normal-BODHZjil.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Source Code Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(https://grahame.dev/csirac/assets/source-code-pro-cyrillic-wght-normal-aqTvhEeI.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Source Code Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Source Code Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(https://grahame.dev/csirac/assets/source-code-pro-greek-wght-normal-BvT6WsG1.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Source Code Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(https://grahame.dev/csirac/assets/source-code-pro-vietnamese-wght-normal-B6x53GZG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Source Code Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(https://grahame.dev/csirac/assets/source-code-pro-latin-ext-wght-normal-0UZNSh4u.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Source Code Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(https://grahame.dev/csirac/assets/source-code-pro-latin-wght-normal-BP8Zz55n.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#fbfaf6;--ink:#1c1c1c;--ink-dim:#6b6b66;--ink-strong:#000;--accent:#0f7a33;--error-ink:#a81f1f;--panel:#f6f5f1;--rule:#d8d5cc;--display:"Jost Variable", "Jost", "Futura", "Century Gothic", sans-serif;--mono:"Source Code Pro Variable", "Source Code Pro", ui-monospace, monospace;font-family:var(--mono);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:15px;line-height:1.4}h1,h2,h3,p,label,button,select,.subtitle,.tape-detail,.viewer-note,.credit,.operating-notes,.options-message,.reader-head,.reader-tape,.reader-count,.reader-selector,.printer-head,.machine-state-head,.listing th,.listing td.what,.viewer-mount,.error{font-family:var(--display)}pre,code,textarea,input,.binary,.reg,.register-row,.store-row,.column-head,.menu-item,.listing .punches,.listing .word,.listing .mnemonic-cell,.listing .num,.settings-text,.decimal-readout,.data-text,.prompt-count{font-family:var(--mono)}*{box-sizing:border-box}body{color:var(--ink);background:#e4e0d6;margin:0}.app{width:100%;max-width:1120px;margin:0 auto;padding:1rem}.screen{background:var(--paper);border:1px solid var(--rule);margin-bottom:1rem;padding:1rem 1.25rem}h1,h2,h3{margin:0 0 .5rem;font-weight:700}h1{text-transform:uppercase;color:var(--ink-strong);margin:0 0 .6rem;font-size:3.6rem;font-weight:400;line-height:1.1}h2{color:var(--ink-strong);margin-top:1.25rem;font-size:2rem}h3{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.08em;font-size:.9rem}button{font:inherit;color:var(--ink);border:1px solid var(--rule);cursor:pointer;background:0 0;padding:.15rem .5rem}button:hover:not(:disabled){color:var(--paper);background:var(--ink)}button:disabled{opacity:.4;cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary:focus-visible{outline-color:var(--ink-strong)}button.primary{color:var(--paper);background:var(--accent);border-color:var(--accent);font-weight:600}button.primary:hover:not(:disabled){background:var(--ink);border-color:var(--ink)}input,select{font:inherit;color:var(--ink-strong);background:var(--paper);border:1px solid var(--rule);margin-left:.4rem;padding:.1rem .3rem}input[aria-invalid=true]{border-color:var(--error-ink)}pre{font:inherit;white-space:pre-wrap;margin:0}.error{color:var(--error-ink)}.subtitle{color:var(--ink-dim);letter-spacing:.01em;margin-top:0;margin-bottom:1.75rem}.tape-list{margin:0;padding:0;list-style:none}.tape-list li{border-top:1px solid var(--rule);grid-template-columns:calc(19ch + 1.5rem) 1fr;align-items:start;gap:1rem;padding:.5rem 0;display:grid}.tape-list li>*{min-width:0}.tape-list li>button{white-space:nowrap;width:100%}.tape-detail p{color:var(--ink-dim);margin:.25rem 0 0}.tape-data{color:var(--accent)}.tape-data select{max-width:100%}.tape-upload{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.tape-upload input[type=file]{flex:auto;min-width:0;max-width:100%}.tape-upload label{align-items:center;min-width:0;display:flex}.settings-text{color:var(--ink);white-space:pre;overflow-x:auto}.console-screen{flex-direction:column;gap:.6rem;display:flex}.registers{flex-direction:column;gap:.1rem;display:flex}.register-row{white-space:pre;gap:1.5rem;display:flex}.reg{white-space:pre}.indicator-head,.mnemonic{color:var(--ink-strong);margin-left:auto}.binary{letter-spacing:.02em}.columns{grid-template-columns:auto auto;justify-content:start;align-items:start;gap:1.5rem;display:grid}.column-head{color:var(--ink-strong);white-space:pre;margin-bottom:.2rem}.store-row{white-space:pre}.store-index{color:var(--ink-dim);margin-right:1ch}.operations-menu{flex-direction:column;align-items:start;gap:.05rem;display:flex}.menu-item{text-align:left;white-space:pre;border:none;padding:0 .2rem}.menu-item:before{content:"› ";color:var(--ink-dim)}.menu-item:hover:before{color:inherit}.menu-readout{color:var(--ink-dim);white-space:pre;gap:.4rem;padding:0 .2rem;display:flex}.menu-note{color:var(--accent);padding-left:.2rem}.menu-entry{padding:.2rem}.menu-entry label{color:var(--accent);flex-direction:column;display:flex}.menu-entry input{width:10rem;margin:.2rem 0 0}.crt-bank{background:0 0;width:100%;margin:0 0 .6rem;display:block}.decimal-readout{color:var(--accent)}.printer-output{border:1px solid var(--rule);background:var(--paper);width:fit-content;max-width:100%;margin-bottom:.6rem;padding:.4rem .6rem}.printer-head,.machine-state-head{color:var(--ink-dim);font-size:.85rem}.printer-output pre{color:var(--ink-strong);max-width:100%;max-height:12rem;overflow:auto}.machine-state{border:1px solid var(--rule);width:fit-content;max-width:100%;margin-bottom:.6rem;padding:.5rem .75rem .6rem;overflow-x:auto}.machine-state-head{margin-bottom:.4rem}.switch-panel{border:1px solid var(--rule);width:fit-content;max-width:100%;margin-bottom:.6rem;padding:.4rem .6rem .5rem;overflow-x:auto}.switch-row{align-items:center;gap:.6rem;margin-top:.3rem;display:flex}.switch-name,.switch-value{font-family:var(--mono);color:var(--ink-strong);white-space:nowrap;flex:none}.switch-value{color:var(--accent)}.switch-bank{gap:.5rem;display:flex}.switch-group{gap:.2rem;display:flex}.switch{background:0 0;border:none;flex-direction:column;align-items:center;gap:.1rem;padding:0;display:flex}.switch:hover:not(:disabled){color:inherit;background:0 0}.switch-lever{border:1px solid var(--rule);background:var(--panel);width:.8rem;height:1.5rem;position:relative}.switch-lever:after{content:"";background:var(--ink-dim);height:45%;position:absolute;bottom:1px;left:1px;right:1px}.switch.up .switch-lever:after{background:var(--accent);top:1px;bottom:auto}button.switch:hover .switch-lever{border-color:var(--ink)}.switch-number{font-family:var(--mono);color:var(--ink-dim);font-size:.6rem;line-height:1}.prompt-line{border-top:1px solid var(--rule);color:var(--ink-strong);flex-wrap:wrap;align-items:center;gap:.75rem;padding-top:.5rem;display:flex}.prompt-action{color:var(--ink-strong)}.prompt-action.secondary{color:var(--ink-dim)}.prompt-status{color:var(--accent)}.prompt-status.fault{color:var(--ink-strong);background:var(--error-ink);padding:0 .4rem;font-weight:700}.prompt-status.running{color:var(--paper);background:var(--accent);padding:0 .4rem;font-weight:700}.operating-notes{border-left:3px solid var(--accent);color:var(--ink-strong);background:#f2f6ef;margin:0;padding:.4rem .6rem}.prompt-count{color:var(--ink-dim);margin-left:auto}.cursor{animation:1s steps(2,start) infinite blink}@keyframes blink{to{visibility:hidden}}@media (prefers-reduced-motion:reduce){.cursor{animation:none}}.overlay{background:#2828248c;justify-content:center;align-items:start;padding:2rem 1rem;display:flex;position:fixed;inset:0;overflow:auto}.options-screen,.tape-viewer{background:var(--paper);border:1px solid var(--rule);min-width:0;padding:1rem 1.25rem}.options-screen{width:min(900px,100%);margin:0}.options-group{border-top:1px solid var(--rule);padding:.4rem 0}.option-row{flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;padding:.1rem 0;display:flex}.option-button{text-align:left;border:none}.option-label{align-items:center;display:flex}.option-value{color:var(--accent);margin-left:auto}.options-message{color:var(--accent)}.memory-editor{flex-wrap:wrap}.tape-viewer{width:min(1180px,100%);margin:0}.viewer-head{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.viewer-head h2{margin:0}.viewer-tabs{gap:.4rem;margin-right:auto;display:flex}.viewer-tabs .active{color:var(--paper);background:var(--ink)}.viewer-note{color:var(--ink-dim);max-width:90ch;margin:.5rem 0}.viewer-note strong{color:var(--accent)}.viewer-toggle{color:var(--ink-dim);align-items:center;gap:.4rem;margin-bottom:.5rem;display:flex}.listing{border-collapse:collapse;width:100%;font-size:.9rem}.listing th{text-align:left;color:var(--ink-strong);border-bottom:1px solid var(--rule);background:var(--paper);padding:.2rem .5rem;position:sticky;top:0}.listing td{vertical-align:top;white-space:pre;padding:.1rem .5rem}.listing td.what{white-space:normal;color:var(--ink-dim)}.listing .num{text-align:right;color:var(--ink-dim)}.listing .punches{color:var(--ink-strong);background:var(--panel)}.listing .kind{color:var(--ink-dim);font-size:.85rem}.listing .word{color:var(--accent);font-size:.85rem}.listing .mnemonic-cell{color:var(--ink-strong);font-weight:700}.listing .row-primary td.punches{border-left:3px solid var(--accent)}.listing .row-control td.punches{border-left:3px solid #b4671b}.listing .row-heading td{color:var(--ink)}.listing .row-blank td,.listing .row-lead-in td{opacity:.45}.unplaced{color:#b4671b}.data-text{color:var(--ink-strong);background:#f2f6ef;max-height:30rem;padding:.5rem;overflow:auto}.credit{color:var(--ink-dim);border-top:1px solid var(--rule);padding-top:.75rem;font-size:.85rem}.credit strong{color:var(--ink)}.credit-links{flex-wrap:wrap;gap:1.25rem;display:flex}.tape-comment{color:var(--ink);margin-left:.5rem}.tape-editor label{color:var(--ink-strong);flex-direction:column;display:flex}.tape-editor textarea{font:inherit;color:var(--ink-strong);background:var(--paper);border:1px solid var(--rule);resize:vertical;white-space:pre;overflow-wrap:normal;width:100%;margin:.3rem 0 0;padding:.4rem .6rem;overflow-x:auto}.interprogram-examples{margin:.6rem 0 .4rem}.interprogram-examples select{max-width:100%}.tape-launch{margin:.6rem 0 1.2rem}.viewer-mount{border-left:3px solid var(--accent);color:var(--ink-strong);background:#f2f6ef;flex-wrap:wrap;align-items:center;gap:.75rem;margin:.5rem 0;padding:.4rem .6rem;display:flex}.prompt-action.active{color:var(--paper);background:var(--ink)}code{color:var(--accent)}.tape-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:.6rem;display:flex}.console-screen .tape-row{max-width:80ch}.readers{flex-direction:column;display:flex}.reader-head{color:var(--ink-dim);white-space:nowrap;align-items:center;gap:.4rem;display:flex}.reader.live .reader-head{color:var(--ink-strong)}.reader-lamp{border:1px solid var(--rule);background:#ddd9cf;border-radius:50%;width:.55rem;height:.55rem}.reader.live .reader-lamp{background:var(--accent);box-shadow:0 0 5px var(--accent)}.reader-tape,.reader-count{color:var(--ink-dim);white-space:nowrap;font-size:.8rem}.tape-strip{margin:.2rem 0;display:block}.reader-selector{color:var(--ink-strong);white-space:nowrap;margin-bottom:.3rem}.reader-selector-label{color:var(--ink-dim)}.reader-pair{gap:.75rem;display:flex}.option-total{color:var(--accent)}.walkthrough{border-left:3px solid var(--accent);background:#f2f6ef;padding:.5rem .75rem}.walkthrough p{margin:0 0 .4rem}.walkthrough ol,.narration-steps{margin:0;padding-left:1.4rem}.walkthrough li{margin-bottom:.15rem}.walkthrough-says{font-family:var(--mono);background:var(--paper);border:1px solid var(--rule);margin-right:.5rem;padding:0 .3rem;font-size:.85rem}.walkthrough-does{color:var(--ink-strong)}.listing tr.under-head td{box-shadow:inset 3px 0 0 var(--accent);background:#e4f0e4}.listing tr.in-register td{background:#f6ece0;box-shadow:inset 3px 0 #b4671b}.listing tr.row-unreadable td{color:#a11}.listing tr.row-unreadable .kind{font-style:italic}a{color:var(--ink);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.15em}a:hover{color:var(--accent)}.interprogram-column{max-width:80ch}.interprogram-source{width:100%;font-family:var(--mono);border:1px solid var(--rule);background:var(--paper);color:var(--ink);resize:vertical;tab-size:4;padding:.6rem;font-size:.95rem;line-height:1.5}.watched-run{flex-direction:column;gap:.6rem;margin-top:.8rem;display:flex}.narration{max-width:44ch}.narration-steps{color:var(--ink-dim)}.narration-step{margin-bottom:.3rem}.narration-step.done{opacity:.55}.narration-step.current{color:var(--ink-strong)}.narration-step.current::marker{color:var(--accent);font-weight:700}.narration-step.starting{color:var(--ink-strong);animation:1s steps(2,start) infinite blink}.narration-step.starting::marker{color:var(--accent);font-weight:700}@media (prefers-reduced-motion:reduce){.narration-step.starting{animation:none}}.narration-now{color:var(--accent);margin:.4rem 0 0}.mode-control{align-items:center;gap:.4rem;display:flex}.mode-label{color:var(--ink-dim)}.prompt-right{align-items:center;gap:.75rem;margin-left:auto;display:flex}.prompt-right .prompt-count{margin-left:0}.interprogram-output:not(:empty){margin-top:1.2rem}.interprogram-messages{border-left:3px solid var(--error-ink);margin:.8rem 0;padding-left:.6rem}.interprogram-messages pre{color:var(--error-ink);margin:0}.wordmark{margin:0;line-height:0}.csirac-logo{height:6rem;margin:0;padding:0}@media (width<=40rem){.app{padding:.5rem}.screen,.options-screen,.tape-viewer{padding:.75rem}.overlay{padding:1rem .5rem}button,select,input:not([type=checkbox]){min-height:2.75rem;padding:.4rem .7rem}.switch{min-height:0;padding:0 .15rem}.switch-lever{width:1.1rem;height:2.1rem}.csirac-logo{height:4rem}h2{font-size:1.5rem}.tape-list li{grid-template-columns:1fr;gap:.4rem}.tape-list li>button{justify-self:start;width:auto}.tape-data{display:block}.tape-data select{width:100%;margin-left:0}.tape-upload label{flex-direction:column;align-items:start;gap:.2rem}.tape-upload input{margin-left:0}.listing{display:block;overflow-x:auto}.listing td.what{white-space:nowrap}}
