:root{--fg: #24292f;--bg: #ffffff;--panel: #f6f8fa;--border: #d0d7de;--accent: #0969da;--ok: #1a7f37;--err: #cf222e;--hl: #fff3c2;font-size:16px}html[data-font=l]{font-size:18px}html[data-font=xl]{font-size:22px}*{box-sizing:border-box}body{margin:0;color:var(--fg);background:var(--bg);font-family:Noto Sans CJK JP,Hiragino Sans,sans-serif;height:100vh;height:100dvh;display:flex;flex-direction:column}#topbar{display:flex;align-items:baseline;gap:1rem;padding:.4rem 1rem;border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap}#topbar h1{font-size:1.1rem;margin:0}#subtitle{margin:0;color:#57606a;font-size:.85rem}#example-select{max-width:18rem;font-size:.9rem}#example-label{margin-left:auto;font-size:.85rem}#app-nav{display:flex;gap:.8rem;font-size:.85rem}#app-nav a{color:var(--accent);text-decoration:none}#app-nav a:hover{text-decoration:underline}#app-nav a.current{color:var(--fg);font-weight:700;text-decoration:none}#font-buttons button,#toolbar button,#btn-reveal,.editor-actions button,#tabs button{font-size:.85rem;padding:.15rem .6rem;border:1px solid var(--border);background:var(--bg);border-radius:4px;cursor:pointer}#font-buttons button.active,#tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff}#layout{flex:1;display:grid;grid-template-columns:minmax(20rem,2fr) 3fr;min-height:0}#left{display:flex;flex-direction:column;border-right:1px solid var(--border);min-width:0;min-height:0}#editor{flex:1;min-height:0;overflow:auto}.cm-editor{height:100%;font-size:.95rem}.cm-ast-hover{background:var(--hl)}.cm-ast-selected{background:#b6ddff;box-shadow:inset 0 -2px 0 var(--accent)}.cm-ast-error{background:#ffebe9}#status{padding:.3rem .8rem;border-top:1px solid var(--border);font-size:.85rem;min-height:1.7rem}#status.ok{color:var(--ok)}#status.err{color:var(--err)}#status.pending{color:#57606a}#right{display:flex;flex-direction:column;min-width:0;min-height:0}#tabs{display:flex;gap:.4rem;align-items:center;padding:.4rem .8rem;border-bottom:1px solid var(--border)}#opt-line-label{margin-left:auto;font-size:.85rem}#opt-comments-label{font-size:.85rem}#compile-bar{flex:none;display:flex;align-items:center;gap:.7rem;padding:.4rem .8rem;border-bottom:1px solid var(--border);background:var(--panel)}#btn-compile{font-size:.9rem;font-weight:700;padding:.25rem 1.1rem;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:4px;cursor:pointer}#btn-compile:hover{filter:brightness(1.1)}#btn-compile.dirty{box-shadow:0 0 0 3px #cfe4fb}#compile-bar .key-hint{color:#57606a;font-size:.78rem}#opt-auto-label{margin-left:auto;font-size:.85rem}#asm-output{min-height:0}#asm-output.stale{opacity:.45}#asm-output.placeholder{color:#57606a;white-space:pre-wrap}.pane{flex:1;min-height:0;display:none;overflow:auto}.pane.active{display:flex;flex-direction:column}#pane-tree{position:relative}#tree-svg{flex:1;width:100%;min-height:0;cursor:grab;touch-action:none}#tree-svg:active{cursor:grabbing}.hint{margin:0;padding:.3rem .8rem;font-size:.78rem;color:#57606a;border-top:1px solid var(--border)}.tree-edge{stroke:#8c959f;stroke-width:1.2}.tree-edge-label{font:11px Inconsolata,monospace;fill:#57606a;text-anchor:middle}.tree-box{fill:#eef4fb;stroke:#69c;stroke-width:1.2}.tree-box.no-line{fill:#f3f4f6;stroke:#8c959f}.tree-box.collapsed{stroke-dasharray:4 2}.tree-node{cursor:pointer}.tree-node.hovered .tree-box{stroke:var(--accent);stroke-width:2.2}.tree-node.selected .tree-box{stroke:var(--accent);stroke-width:3}.tree-node:focus-visible .tree-box{stroke-dasharray:3 2}.tree-fold circle{fill:#fff;stroke:#69c}.tree-fold text{font:700 12px sans-serif;text-anchor:middle}.tree-fold:focus-visible circle{stroke:var(--accent);stroke-width:2.5}.tree-kind{font:700 13px Inconsolata,monospace;text-anchor:middle}.tree-sub{font:11px Inconsolata,monospace;fill:#57606a;text-anchor:middle}.tree-badge circle{fill:#fff8c5;stroke:#d4a72c}.tree-badge text{font:11px sans-serif;text-anchor:middle}#token-table{border-collapse:collapse;font:.9rem Inconsolata,monospace;margin:.5rem}#token-table th,#token-table td{border:1px solid var(--border);padding:.15rem .7rem;text-align:left}#token-table th{background:var(--panel)}pre{margin:0;padding:.8rem;font:.9rem/1.45 Inconsolata,monospace;white-space:pre;overflow:auto;flex:1}body.landing{display:block;height:auto}#cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:1rem;padding:1.5rem;max-width:60rem}.card{display:block;padding:1rem 1.2rem;border:1px solid var(--border);border-radius:8px;text-decoration:none;color:inherit;background:var(--bg)}.card:hover{border-color:var(--accent);background:var(--panel)}.card h2{margin:0 0 .4rem;font-size:1.05rem;color:var(--accent)}.card p{margin:0 0 .3rem;font-size:.9rem;line-height:1.5}.card-meta{color:#57606a;font-size:.8rem!important}#landing-foot{padding:0 1.5rem 1.5rem;max-width:60rem;color:#57606a;font-size:.85rem;line-height:1.6}#sim-head{flex:none;position:sticky;top:0;z-index:20;background:var(--bg)}#toolbar{display:flex;align-items:center;gap:.4rem;padding:.4rem 1rem;border-bottom:1px solid var(--border)}#toolbar .spacer{flex:1}#counters{font-size:.85rem;color:#57606a}#counters b{color:var(--fg);font-family:Inconsolata,monospace}#toolbar button:disabled{opacity:.4;cursor:default}#sim-layout{flex:1;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);min-height:min(12rem,40vh)}#asm-pane{display:flex;flex-direction:column;border-right:1px solid var(--border);min-width:0;min-height:0}@media(max-width:60rem){#sim-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,3fr) minmax(0,2fr)}#asm-pane{border-right:none;border-bottom:1px solid var(--border)}}.pane-head{display:flex;align-items:center;gap:.6rem;padding:.3rem .8rem;border-bottom:1px solid var(--border);background:var(--panel);font-size:.85rem}.pane-head>span:first-child{font-weight:700}.pane-note{color:#57606a;font-size:.78rem;font-weight:400}.pane-head button{margin-left:auto}#asm-view{flex:1;overflow:auto;position:relative;overscroll-behavior:contain;font:.9rem/1.5 Inconsolata,monospace;padding:.3rem 0}.asm-line{display:flex;white-space:pre}.asm-gutter{width:3.2rem;flex:none;text-align:right;padding-right:.6rem;color:#8c959f;cursor:pointer;-webkit-user-select:none;user-select:none}.asm-gutter:hover{background:var(--border)}.asm-text{padding-left:.4rem}.asm-line.current{background:#ddf4ff}.asm-line.current .asm-text{font-weight:700}.asm-line.breakpoint .asm-gutter{background:#cf222e;color:#fff}.asm-line.faulted{background:#ffebe9}.asm-line.flash{animation:flash .8s}@keyframes flash{0%{background:var(--hl)}to{background:transparent}}#asm-editor{display:flex;flex-direction:column;flex:none;border-top:1px solid var(--border)}#asm-editor[hidden]{display:none}#asm-input{height:12rem;max-height:40vh;font:.9rem Inconsolata,monospace;border:none;border-bottom:1px solid var(--border);padding:.5rem;resize:vertical}.editor-actions{display:flex;gap:.4rem;padding:.4rem .8rem}#asm-error{padding:.5rem .8rem;background:#ffebe9;color:var(--err);font-size:.85rem;border-top:1px solid var(--border);white-space:pre-wrap}#state-pane{overflow:auto;overscroll-behavior:contain;padding:.6rem .8rem;min-width:0;min-height:0}.state-block{margin-bottom:1rem}.state-block h3{margin:0 0 .3rem;font-size:.85rem;display:flex;gap:.5rem;align-items:baseline}#state-pane table{border-collapse:collapse;font:.85rem Inconsolata,monospace;width:100%}#state-pane td{padding:.05rem .4rem;border-bottom:1px solid #f0f2f4}.reg-name{color:var(--accent);width:3.5rem}.reg-dec{text-align:right;width:8rem}.reg-hex{color:#57606a}tr.changed{background:var(--hl)}.stack-addr{color:#57606a;width:7rem}.stack-val{text-align:right}.stack-val.uninit{color:#b0b7be}.stack-width{color:#8a929b;font-size:.85em}.stack-mark{color:var(--accent);font-weight:700;width:3.5rem}tr.in-frame .stack-addr{color:var(--fg)}tr.below-sp{opacity:.45}.data-name{color:var(--accent);width:6rem}.data-value{word-break:break-all}#stdout-pre{background:#1f2328;color:#e6edf3;padding:.5rem;border-radius:4px;min-height:2.5rem;font:.85rem Inconsolata,monospace;white-space:pre-wrap;flex:none}#warnings{border:1px solid #d4a72c;background:#fff8c5;border-radius:6px;padding:.5rem .7rem;margin-bottom:1rem}#warnings h3{margin:0 0 .4rem;font-size:.9rem}#warning-list{margin:0;padding-left:1.1rem;font-size:.85rem;line-height:1.5}#warning-list li{margin-bottom:.5rem;cursor:pointer}.warn-symptom{color:#7d4e00;font-size:.8rem}.workspace{--fg: #243247;--bg: #fff;--panel: #f7f9fc;--border: #e0e6ef;--accent: #245fc7;--muted: #59687d;font-size:1rem;background:#f1f4f8;line-height:1.5}.workspace [hidden]{display:none!important}.workspace button,.workspace summary,.workspace select{font-family:inherit}.workspace button{transition:background-color .12s,border-color .12s}.workspace button:disabled{opacity:.42;cursor:default}.workspace :is(button,input,summary,select,textarea,a):focus-visible{outline:3px solid #80a9ee;outline-offset:3px}.workspace #topbar{padding:.7rem 1.4rem;background:var(--bg);align-items:center;gap:.75rem 1.6rem;flex:none}.workspace #topbar h1{display:flex;align-items:center;gap:.65rem;font-size:1.05rem;font-weight:700;letter-spacing:.01em}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:7px;background:#ebf1fd;color:var(--accent);font:700 .9rem monospace}.workspace #app-nav{gap:1.1rem;font-size:.8rem}.workspace #app-nav a{color:var(--muted)}.workspace #app-nav a:hover{color:var(--accent)}.workspace #font-buttons{display:flex;align-items:center;gap:.15rem;margin-left:auto;color:var(--muted);font-size:.75rem;white-space:nowrap}.workspace #font-buttons button{border-color:transparent;padding:.25rem .5rem;border-radius:5px;min-height:2rem;background:transparent;font-size:.75rem}.workspace #font-buttons button.active{color:var(--accent);background:#ebf1fd}.workspace #layout{padding:1.15rem 1.4rem 1.4rem;gap:1rem;grid-template-columns:minmax(18rem,1fr) minmax(0,2fr)}.workspace #left,.workspace #right{border:1px solid var(--border);border-radius:12px;background:var(--bg);box-shadow:0 2px 6px #24324705;overflow:hidden}.workspace #right{container-type:inline-size}.source-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.25rem .7rem;padding:.85rem 1rem;min-height:3.5rem;flex:none}.source-head h2{margin:0;font-size:.9rem;font-weight:650}.source-head .pane-note{font-size:.7rem}.source-picker{display:flex;flex-direction:column;gap:.3rem;margin:0 1rem .8rem;font-size:.75rem;color:var(--muted);flex:none}.source-picker .example-select{width:100%;min-width:0;max-width:none;min-height:2.25rem;border:1px solid var(--border);border-radius:6px;background:var(--panel);padding:.3rem .5rem;color:var(--fg);font-size:.8rem}.workspace #editor{border-top:1px solid var(--border)}.workspace .cm-editor{font-size:1rem}.workspace .cm-scroller{line-height:1.7}.workspace .cm-content{padding:.65rem 0}.workspace .cm-gutters{background:#fafbfd;color:#8592a5;border-right:1px solid #edf0f5}.workspace .cm-activeLine,.workspace .cm-activeLineGutter{background:#f3f6fd}.source-footer{padding:.65rem 1rem;flex:none;border-top:1px solid var(--border);background:#fafbfd}.workspace #status{border:0;padding:0;min-height:0;font-size:.75rem}#source-context{margin:.25rem 0 0;color:var(--muted);font-size:.7rem;line-height:1.6}.cm-execution{background:#dafbe1;box-shadow:inset 0 -2px 0 var(--ok)}.observation-head{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .75rem;padding:.55rem .9rem;min-height:3.5rem;border-bottom:1px solid var(--border);flex:none}.workspace #tabs{gap:.2rem;padding:0;border:0;flex:none}.workspace #tabs button{min-height:2.25rem;border:0;border-radius:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:.875rem;padding:.4rem .5rem;white-space:nowrap}.workspace #tabs button[aria-selected=true]{border-bottom-color:var(--accent);color:var(--accent);font-weight:650}.workspace #tabs button:hover{color:var(--accent);background:#f5f8fd}.workspace #compile-bar{padding:0;border:0;background:transparent;gap:.35rem;margin-left:.35rem;flex:1;flex-wrap:wrap;position:relative}.workspace #btn-compile{min-height:2.25rem;padding:.4rem .9rem;border-radius:7px;font-size:.875rem;font-weight:650;box-shadow:0 1px 2px #245fc71a}.workspace #btn-compile.dirty{box-shadow:0 0 0 2px #dbe7fb}.workspace #btn-edit,#compile-options summary{min-height:2.25rem;border:1px solid transparent;border-radius:6px;color:var(--muted);background:transparent;padding:.4rem .55rem;font-size:.75rem;cursor:pointer}.workspace #btn-edit:hover,#compile-options summary:hover{background:var(--panel);color:var(--fg)}#compile-options{position:static}.workspace #btn-edit{margin-left:auto}#compile-options summary{list-style:none}#compile-options summary::-webkit-details-marker{display:none}#compile-options[open] summary{background:var(--panel);border-color:var(--border)}.options-popover{position:absolute;z-index:30;top:calc(100% + .4rem);right:0;width:min(19rem,calc(100vw - 4rem));padding:1rem;border:1px solid var(--border);border-radius:10px;background:var(--bg);box-shadow:0 8px 30px #2432471a;font-size:.8rem}.options-popover label{display:flex;align-items:center;gap:.45rem;cursor:pointer}.options-popover p{color:var(--muted);font-size:.75rem;line-height:1.6;margin:.6rem 0}.shortcut-note{display:block;padding-top:.6rem;border-top:1px solid var(--border);color:var(--muted);font-size:.7rem}#asm-status{padding:.5rem 1rem;flex:none;font-size:.75rem;line-height:1.6;overflow-wrap:anywhere;background:#fafbfd;color:var(--muted);border-bottom:1px solid var(--border)}#asm-status.ok{color:#23744e}#asm-status.ok:before{content:"✓";font-weight:700;margin-right:.45rem}#asm-status.err{color:var(--err);background:#fff3f1;border-bottom-color:#f5d6d1}#asm-status.err:before{content:"!";font-weight:700;margin-right:.45rem}#ast-error{margin:0;padding:.7rem 1rem;color:var(--err);background:#fff3f1;font-size:.8rem;flex:none}.ast-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem 1rem;padding:.7rem 1rem;border-bottom:1px solid var(--border);flex:none}#ast-tabs{display:flex;align-items:center;gap:.1rem;border-radius:7px;background:#edf1f7;padding:.2rem;flex:none}#ast-tabs button{min-height:2rem;padding:.25rem .7rem;font-size:.8rem;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}#ast-tabs button.active{background:var(--bg);color:var(--fg);border-color:#e1e6ef;box-shadow:0 1px 3px #2432470a;font-weight:600}#ast-tabs button:hover{color:var(--accent)}#ast-display-options{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}#ast-display-options label{display:flex;align-items:center;gap:.45rem;min-height:2rem;font-size:.75rem;cursor:pointer}.workspace input[type=checkbox]{accent-color:var(--accent);width:.95rem;height:.95rem;flex:none;margin:0}.option-name{display:block;color:var(--fg)}#ast-asm-help{display:block;margin-top:.1rem;color:var(--muted);font-size:.72rem}#opt-line-label{margin-left:0;color:var(--muted)}#ast-content{display:flex;flex-direction:column;flex:1;min-height:0}.ast-pane{display:none;flex:1;min-height:0;min-width:0;overflow:auto}.ast-pane.active{display:flex;flex-direction:column}#ast-pane-tree{position:relative;background:radial-gradient(#dce3ef .8px,transparent .8px) 0 0 / 18px 18px}.workspace #tree-svg{flex:1}.workspace .tree-box{fill:#fff;stroke:#aabbd4}.workspace .tree-box.no-line{fill:#f8fafc;stroke:#c3cddc}.workspace .tree-node.selected .tree-box{fill:#edf4ff}.tree-controls{position:absolute;top:.6rem;right:.6rem;display:flex;gap:.1rem;z-index:2;background:var(--bg);border:1px solid var(--border);border-radius:7px;padding:.2rem;box-shadow:0 1px 4px #24324708}.tree-controls button{min-height:2rem;min-width:2rem;padding:.2rem .4rem;font-size:.7rem;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.tree-controls button:hover{background:var(--panel);color:var(--fg)}.tree-guide{position:absolute;z-index:3;bottom:.7rem;left:.7rem;max-width:calc(100% - 1.4rem);border:1px solid var(--border);border-radius:7px;background:var(--bg);box-shadow:0 1px 4px #24324708}.tree-guide summary{padding:.45rem .65rem;cursor:pointer;font-size:.7rem;color:var(--muted)}.tree-guide>div{padding:0 .75rem .4rem;max-width:25rem;max-height:15rem;overflow:auto;font-size:.75rem;line-height:1.7}.tree-guide p{margin:.35rem 0 .65rem}#ast-asm-strip{display:flex;flex-direction:column;flex:0 1 45%;min-height:0;border-top:1px solid var(--border);background:#fbfcfe}.strip-head{display:flex;align-items:center;gap:.4rem;padding:.6rem .8rem;flex:none;border-bottom:1px solid var(--border)}.strip-head>span{font-size:.8rem;font-weight:600;margin-right:auto}.strip-head button{min-height:2rem;padding:.25rem .4rem;font-size:.7rem;border:1px solid var(--border);border-radius:5px;background:var(--bg);cursor:pointer;color:var(--muted)}#ast-asm-status{margin:0;padding:.45rem .8rem;line-height:1.6;font-size:.7rem;flex:none}#ast-asm-lines{position:relative;min-height:2rem;flex:1;overflow:auto;overscroll-behavior:contain;padding:.35rem 0;font:1rem/1.75 monospace;white-space:pre}#ast-asm-lines .asm-line{padding:0 .8rem;cursor:pointer}#ast-asm-lines .hit{background:#deebff;box-shadow:inset 3px 0 0 var(--accent)}#ast-asm-lines .asm-line:hover{background:#edf4ff}.workspace #token-table{font-size:.9rem;border:0;margin:.6rem}.workspace #token-table th,.workspace #token-table td{border:0;border-bottom:1px solid var(--border);padding:.4rem .75rem}.workspace #token-table th{position:sticky;top:0;color:var(--muted);font-weight:500;background:var(--panel)}.workspace #sexp-pre{font-size:1rem;line-height:1.7;padding:1rem}.workspace #pane-machine{overflow:hidden}.workspace #toolbar{padding:.6rem .9rem;gap:.45rem;flex:none;flex-wrap:wrap;background:#fafbfd}.workspace #toolbar button{min-height:2.25rem;padding:.35rem .65rem;border-radius:6px;font-size:.75rem}.step-controls{display:flex;gap:1px}.step-controls #btn-back{border-radius:6px 0 0 6px}.step-controls #btn-step{border-radius:0 6px 6px 0;border-color:#b8cdef;background:#edf4ff;color:var(--accent)}.workspace #btn-run{border-color:#c4d5ed;color:var(--accent)}.workspace #btn-stop{color:var(--err);border-color:#f0c2bc}.workspace #btn-reset{margin-left:.3rem;border-color:transparent;background:transparent;color:var(--muted)}.workspace #counters{margin-left:auto;font-size:.7rem;font-variant-numeric:tabular-nums}.workspace #sim-layout{min-height:0;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-template-rows:1fr}.workspace .pane-head{padding:.65rem .9rem;background:var(--bg);font-size:.8rem;justify-content:space-between;flex-wrap:wrap;gap:.2rem .6rem;flex:none}.workspace #asm-hint{font-size:.72rem}.workspace #asm-view{font-size:1rem;line-height:1.7;padding:.4rem 0}.workspace .asm-gutter{font:inherit;width:2.8rem;border:0;border-right:1px solid #edf0f5;border-radius:0;background:#fafbfd;color:#8592a5}.workspace .asm-gutter[aria-pressed=true]{background:var(--err);color:#fff}.workspace .asm-line.current{background:#edf4ff;box-shadow:inset 3px 0 0 var(--accent)}.workspace .asm-text{padding-left:.75rem;cursor:pointer}#asm-view.stale{opacity:.5}#asm-view .empty{padding:1.25rem;color:var(--muted);white-space:normal;font-family:sans-serif;font-size:.85rem}.workspace #state-pane{padding:.8rem;background:#f7f9fc}.workspace .state-block{padding:.8rem;margin-bottom:.7rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);overflow:auto}.workspace .state-block h3{font-size:.8rem;font-weight:650;margin-bottom:.55rem}.workspace #state-pane table{font-size:.85rem;line-height:1.8;font-variant-numeric:tabular-nums}.workspace #state-pane td{padding:.1rem .25rem}.workspace .reg-dec{width:auto}.workspace .reg-hex{color:var(--muted)}#run-context{padding:.45rem .9rem;margin:0;flex:none;border-top:1px solid var(--border);font-size:.72rem;line-height:1.6;background:#fafbfd}.workspace #pane-machine[data-view=asm] :is(#toolbar,#state-pane,#run-context){display:none}.workspace #pane-machine[data-view=asm] #sim-layout{grid-template-columns:1fr;grid-template-rows:1fr}.workspace #pane-machine[data-view=asm] #asm-pane{border:0}.workspace #asm-editor{width:min(52rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);margin:auto;padding:1.4rem;border:1px solid var(--border);border-radius:12px;box-shadow:0 16px 64px #24324733;display:none}.workspace #asm-editor[open]{display:flex}.workspace #asm-editor::backdrop{background:#24324766}.workspace #asm-editor h2{font-size:1.1rem;margin:0 0 .5rem}.import-options{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:.8rem 0}.import-options label{font-size:.85rem}.import-options .file-label{margin-left:auto}.import-options .example-select{max-width:24rem;font-size:.85rem}.workspace #asm-input{flex:1;width:100%;min-height:10rem;height:40vh;font:1rem/1.7 monospace;border:1px solid var(--border);border-radius:7px}.workspace .editor-actions{justify-content:flex-end;padding:.9rem 0 0}.workspace .editor-actions button{min-height:2.25rem;border-radius:6px}.workspace #btn-load{color:#fff;background:var(--accent);border-color:var(--accent)}@container (min-width: 720px){#ast-content:has(#ast-asm-strip:not([hidden])){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#ast-content #ast-asm-strip{border-top:0;border-left:1px solid var(--border)}}@container (max-width: 719px){.workspace #sim-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,1.3fr) minmax(0,1fr)}.workspace #asm-pane{border-right:0;border-bottom:1px solid var(--border)}.workspace #state-pane{display:grid;align-content:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.workspace .state-block{margin:0}.workspace #warnings{grid-column:1 / -1}}@media(max-width:900px),(max-height:560px){.workspace{height:auto;min-height:100dvh}.workspace #topbar{padding:.65rem 1rem}.workspace #layout{flex:none;padding:.8rem 1rem 1rem;grid-template-columns:1fr;grid-template-rows:minmax(16rem,30dvh) minmax(30rem,calc(70dvh - 6rem));gap:.8rem}.source-head{padding:.65rem 1rem}.source-picker{margin-bottom:.6rem}}@media(max-width:520px){.workspace #topbar{gap:.6rem 1rem}.workspace #topbar h1{font-size:.95rem}.workspace #app-nav{font-size:.7rem}.workspace #font-buttons{margin-left:0}.workspace #layout{padding:.6rem;gap:.7rem;grid-template-rows:minmax(17rem,32dvh) minmax(35rem,72dvh)}.observation-head{padding:.5rem .65rem}.workspace #compile-bar{margin-left:0}.workspace #tabs{width:100%;justify-content:space-between}.workspace #tabs button{flex:1;padding:.3rem .2rem}.ast-toolbar{padding:.65rem;gap:.65rem}#ast-display-options{width:100%;justify-content:space-between}.workspace #state-pane{grid-template-columns:1fr}.workspace #counters{flex-basis:100%;margin-left:0}}@media(prefers-reduced-motion:reduce){.workspace button{transition:none}.workspace .asm-line.flash{animation:none}}
