*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:#101820;color:#e7edf2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button,select{background:#213242;border:1px solid #35506a;border-radius:6px;color:#e7edf2;cursor:pointer;height:32px;padding:0 12px}button:hover,select:hover{border-color:#5aa9e6}button:disabled{cursor:default;opacity:.45}input{background:#0b1218;border:1px solid #35506a;border-radius:6px;color:#e7edf2;height:32px;min-width:260px;padding:0 10px}.app-shell{display:flex;flex-direction:column;height:100%;min-width:0}.toolbar{align-items:center;background:#152331;border-bottom:1px solid #263b4f;display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px}.wordmark{color:#fff;font-size:17px;font-weight:800;margin-right:4px}.wordmark span{color:#5aa9e6}.tabs{background:#0b1218;border:1px solid #263b4f;border-radius:8px;display:flex;gap:2px;padding:3px}.tabs button{background:transparent;border:0;color:#9db0bf;height:26px;text-transform:capitalize}.tabs button.active{background:#263b4f;color:#7ec8ff}.toolbar-spacer{flex:1;min-width:8px}.toolbar-group{align-items:center;display:flex;gap:6px}.toolbar-group+.toolbar-group{border-left:1px solid #263b4f;margin-left:2px;padding-left:8px}.step-group button{padding:0 10px}.split-button{display:flex;position:relative}.split-main{border-bottom-right-radius:0;border-right-width:0;border-top-right-radius:0;font-weight:700}.split-caret{border-bottom-left-radius:0;border-top-left-radius:0;font-size:11px;min-width:24px;padding:0 7px}.split-button:has(.split-main:hover) .split-caret,.split-button:has(.split-caret:hover) .split-main{border-color:#5aa9e6}.run-action .split-main,.run-action .split-caret{background:#1c6b3d;border-color:#2b8750}.split-menu{background:#16242f;border:1px solid #35506a;border-radius:8px;box-shadow:0 12px 28px #03080d8c;display:flex;flex-direction:column;max-height:min(60vh,460px);min-width:280px;padding:8px;position:absolute;top:calc(100% + 6px);z-index:40}.split-menu-right{right:0}.split-menu-left{left:0}.menu-field{display:flex;flex-direction:column;gap:5px;padding:2px 4px 10px}.menu-field label{color:#9db0bf;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.menu-field input{min-width:0;width:100%}.menu-scroll{border-top:1px solid #263b4f;min-height:0;overflow-y:auto;padding-top:6px}.menu-section h4{color:#7ec8ff;font-size:11px;letter-spacing:.04em;margin:6px 4px 4px;text-transform:uppercase}.menu-item{background:transparent;border:0;border-radius:6px;height:28px;overflow:hidden;padding:0 8px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.menu-item:hover{background:#22394d}.menu-choice{align-items:flex-start;display:flex;gap:8px;height:auto;padding:7px 8px;white-space:normal}.menu-choice.selected{background:#1b2f40}.menu-check{color:#7ec8ff;flex:none;width:12px}.menu-choice strong{display:block;font-weight:600}.menu-choice small{color:#9db0bf;display:block;font-size:11px;line-height:1.4}.status-bar{background:#0d151d;border-bottom:1px solid #223447;color:#aab9c5;font-size:12px;min-height:30px;padding:7px 14px}.empty-state{flex:1;overflow:auto;padding:24px}.empty-state h1{font-size:22px;margin:0 0 18px}.example-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.example-group{min-width:0}.example-group h2{color:#7ec8ff;font-size:12px;letter-spacing:.03em;margin:0 0 8px;text-transform:uppercase}.example-group button{display:block;margin:0 0 6px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.workspace{display:flex;flex:1;min-height:0}.run-summary{align-items:center;background:#0b1218;border:1px solid #35506a;border-radius:999px;display:flex;gap:7px;font-size:12px;max-width:220px;padding:6px 10px;white-space:nowrap}.run-summary strong{color:#7ec8ff;overflow:hidden;text-overflow:ellipsis}.run-summary span{color:#9db0bf}.dialog-backdrop{align-items:center;background:#03080dad;display:flex;justify-content:center;inset:0;padding:20px;position:fixed;z-index:1000}.scope-dialog{background:#152331;border:1px solid #5aa9e6;border-radius:8px;box-shadow:0 18px 48px #0000006b;max-width:420px;min-width:min(360px,100%);overflow:hidden}.scope-dialog header,.scope-dialog footer{align-items:center;background:#0d151d;display:flex;padding:12px 14px}.scope-dialog header{border-bottom:1px solid #263b4f}.scope-dialog footer{border-top:1px solid #263b4f;gap:8px;justify-content:flex-end}.scope-dialog h2{color:#7ec8ff;font-size:15px;margin:0}.scope-form{padding:8px 14px}.scope-row{align-items:center;border-bottom:1px solid #263b4f;display:flex;justify-content:space-between;padding:8px 0}.scope-row:last-child{border-bottom:0}.scope-row span{color:#e7edf2;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px}.scope-row input{min-width:0;text-align:center;width:72px}.constraint-dock{background:#16242f;border:1px solid #35506a;border-radius:10px;box-shadow:0 16px 40px #03080d99;display:flex;flex-direction:column;max-height:min(46vh,400px);position:fixed;right:18px;top:96px;width:380px;z-index:60}.constraint-dock>header{align-items:center;border-bottom:1px solid #263b4f;cursor:move;display:flex;justify-content:space-between;padding:10px 12px;touch-action:none;-webkit-user-select:none;user-select:none}.constraint-dock h3{font-size:13px;margin:0}.constraint-dock>header button{background:transparent;border:0;color:#9db0bf;font-size:17px;height:24px;padding:0 6px}.constraint-dock-body{min-height:0;overflow-y:auto;padding:4px 12px 12px}.constraint-dock-group h4{align-items:center;color:#7ec8ff;display:flex;font-size:11px;gap:6px;letter-spacing:.04em;margin:12px 0 6px;text-transform:uppercase}.constraint-dock-group.muted ul,.constraint-dock-group.muted .constraint-dock-empty{opacity:.45}.constraint-dock-group h4 em{background:#4a2a20;border-radius:999px;color:#ffab7a;font-size:10px;font-style:normal;letter-spacing:.04em;padding:1px 7px;text-transform:uppercase}.constraint-dock-group h4 small{background:#22394d;border-radius:999px;color:#cfe0ee;font-size:10px;letter-spacing:0;padding:1px 7px}.constraint-dock-group ul{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.constraint-dock-group li{background:#0f1b25;border:1px solid #24384a;border-radius:6px;padding:7px 9px}.constraint-dock-group code{color:#e7edf2;display:block;font-family:Cascadia Mono,Consolas,monospace;font-size:11.5px;white-space:pre-wrap;word-break:break-word}.constraint-dock-group li small{color:#8ea2b2;display:block;font-size:11px;margin-top:3px}.constraint-dock-empty{color:#8ea2b2;font-size:12px;margin:0}.constraint-editor{background:#101c27;border-top:1px solid #263b4f;display:flex;flex-direction:column;gap:6px;padding:10px 12px 12px}.constraint-editor label{color:#cfe0ee;font-size:12px;font-weight:600}.constraint-editor label small{color:#8ea2b2;display:block;font-weight:400;margin-top:2px}.constraint-editor textarea{background:#0b1218;border:1px solid #35506a;border-radius:6px;color:#e7edf2;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;line-height:1.5;padding:8px 10px;resize:vertical;width:100%}.constraint-editor textarea::placeholder{color:#5d7183}.constraint-editor-actions{display:flex;gap:8px;justify-content:flex-end}.header-action{height:24px;margin-left:auto;padding:0 10px}.als-article{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.view-panel,.source-view{flex:1;min-height:0;min-width:0;overflow:auto}.view-panel{padding:16px}.simulation-layout{align-items:stretch;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 360px;height:100%;min-height:0;overflow:hidden}.simulation-layout.state-tree-closed{grid-template-columns:minmax(0,1fr)}.graph-panel,.trace-panel,.source-view article{background:#0d151d;border:1px solid #263b4f;border-radius:8px;min-width:0;overflow:hidden}.graph-panel{display:flex;flex-direction:column;min-height:0}.panel-header,.source-view header{align-items:center;background:#152331;border-bottom:1px solid #263b4f;display:flex;justify-content:space-between;min-height:38px;padding:9px 12px}.panel-header h2{font-size:14px;margin:0}.panel-header span{color:#9db0bf;font-size:12px}.panel-meta{align-items:center;display:flex;gap:8px}.panel-meta button,.panel-close{height:24px;padding:0 8px}.panel-close{background:transparent;border:0;color:#9db0bf;font-size:17px}.statechart-component{display:flex;flex:1;flex-direction:column;min-height:0}.graph-controls{align-items:center;background:#101c27;border-bottom:1px solid #263b4f;display:flex;gap:6px;min-height:39px;padding:5px 10px}.graph-controls button{height:28px;min-width:32px;padding:0 10px}.graph-controls .overlay-controls{align-items:center;display:flex;gap:6px;margin-left:auto}button.toggle-off{border-color:#7a4a2c;color:#ffab7a}.graph-controls button.toggle-on{background:#0277bd;border-color:#0288d1;color:#fff}.statechart-graph-shell{flex:1;min-height:0;position:relative}.statechart-canvas{height:100%;width:100%}.trace-panel{display:grid;grid-template-rows:auto minmax(0,1fr) minmax(0,1fr);min-height:0}.state-tree-graph-shell,.state-tree-empty{min-height:0;width:100%}.state-tree-graph-shell{position:relative}.state-tree-canvas{height:100%;width:100%}.state-tree-empty{align-items:center;color:#9db0bf;display:flex;font-size:12px;justify-content:center;padding:20px;text-align:center}.selection-details{background:#152331;border-top:1px solid #263b4f;box-sizing:border-box;min-width:0;min-height:0;overflow:auto;width:100%}.selection-details>header{align-items:center;background:#152331;border-bottom:1px solid #31475b;display:flex;justify-content:space-between;min-height:42px;padding:8px 12px;position:sticky;top:0;z-index:2}.selection-details h3{font-size:14px;margin:0}.selection-details>header button{background:transparent;border:0;color:#9db0bf;font-size:18px;height:26px;padding:0 4px}.selection-details dl{box-sizing:border-box;margin:0;padding:10px 12px;width:100%}.detail-row{display:grid;font-size:12px;gap:12px;grid-template-columns:86px minmax(0,1fr);padding:4px 0}.detail-row dt{color:#9db0bf}.detail-row dd{color:#e7edf2;margin:0;min-width:0;overflow-wrap:anywhere;text-align:right;white-space:pre-wrap}.selection-placeholder{color:#78909c;font-size:12px;margin:0;padding:18px 12px}.snapshot-details details{border-top:1px solid #263b4f;padding:9px 12px 12px}.snapshot-details summary{color:#9db0bf;cursor:pointer;font-size:11px}.snapshot-details pre{font-size:10px;margin:9px 0 0;max-height:180px}.graph-inspector{background:#152331;border-right:1px solid #263b4f;bottom:0;box-shadow:8px 0 18px #00000047;left:0;overflow:auto;position:absolute;top:0;transform:translate(-100%);transition:transform .14s ease;width:300px;z-index:8}.graph-inspector.open{transform:translate(0)}.graph-inspector h3{border-bottom:1px solid #263b4f;font-size:14px;margin:0;overflow:hidden;padding:12px;text-overflow:ellipsis;white-space:nowrap}.inspector-close{background:transparent;border:0;color:#9db0bf;float:right;font-size:18px;height:38px;padding:0 12px}.graph-inspector dl{display:grid;gap:8px;grid-template-columns:1fr auto;margin:0;padding:12px}.graph-inspector dt{color:#9db0bf}.graph-inspector dd{margin:0;min-width:0;overflow:hidden;overflow-wrap:anywhere;text-align:right}.event-overlay,.variable-overlay{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:5}.event-group,.variable-group{align-items:flex-start;display:flex;flex-direction:column;gap:3px;overflow:hidden;position:absolute}.variable-group{align-content:flex-start;flex-direction:row;flex-wrap:wrap}.event-chip{align-items:center;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border:1px solid;border-radius:10px;display:inline-flex;font-size:10px;font-weight:600;gap:5px;line-height:1.45;padding:2px 7px;white-space:nowrap}.event-chip small{font-size:8px;font-weight:700;opacity:.75}.event-dot{border-radius:50%;flex:0 0 6px;height:6px;width:6px}.event-chip.active{background:#00e67629;border-color:#00e676;color:#b9f6ca}.event-chip.active .event-dot{background:#00e676;box-shadow:0 0 6px #00e676}.event-chip.inactive{background:#0f1923c2;border-color:#37474f;color:#6d8290}.event-chip.inactive .event-dot{background:#455a64}.variable-chip{align-items:center;background:#0f1923e6;border:1px solid #7e57c2;border-radius:4px;color:#e6dcff;display:grid;font-size:10px;flex:0 1 auto;gap:6px;grid-template-columns:auto minmax(0,1fr);line-height:1.45;max-width:100%;padding:3px 7px}.variable-name{color:#c4b5fd;font-weight:700}.variable-value{color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snapshot-list{padding:12px}.snapshot-list details{background:#101c27;border:1px solid #263b4f;border-radius:6px;margin-bottom:8px}.snapshot-list summary{align-items:center;cursor:pointer;display:flex;font-weight:700;justify-content:space-between;padding:8px 10px}.snapshot-list summary span{color:#9db0bf;font-size:11px;font-weight:500}.snapshot-select{background:transparent;border:0;color:#e7edf2;font-weight:700;height:auto;padding:0}.snapshot-select:hover{color:#7ec8ff}.trace-timeline{border-bottom:1px solid #263b4f;display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}.trace-timeline-wrap>header{align-items:center;background:#101c27;display:flex;justify-content:space-between;padding:5px 12px 0}.trace-timeline-wrap>header strong{color:#7ec8ff;font-size:11px}.trace-timeline-wrap>header button{background:transparent;border:0;color:#9db0bf;font-size:16px;height:24px;padding:0 5px}.trace-timeline button{border-radius:999px;font-size:12px;height:26px;min-width:42px}.trace-timeline button.active{background:#f2bd4a;border-color:#f2bd4a;color:#101820;font-weight:800}.trace-facts{border-bottom:1px solid #263b4f;display:grid;gap:7px;padding:9px 12px}.trace-facts>span{color:#d7e1ea;font-size:11px;overflow-wrap:anywhere}.trace-facts small{color:#72879a;display:inline-block;margin-right:7px;min-width:58px}.solver-info-popup{background:#1a2a3a;border:1px solid #4fc3f7;border-radius:6px;box-shadow:0 4px 20px #00000080;max-height:340px;max-width:440px;overflow:auto;padding:12px 16px;position:fixed;width:min(440px,calc(100vw - 16px));z-index:1100}.solver-info-popup h3{color:#7ec8ff;font-size:13px;margin:0 0 8px}.solver-info-popup dl{display:grid;font-size:11px;gap:4px 8px;grid-template-columns:auto minmax(0,1fr);margin:0}.solver-info-popup dt{color:#78909c}.solver-info-popup dd{margin:0;overflow-wrap:anywhere}.solver-variable{display:contents}.solver-info-popup pre{border-top:1px solid #35506a;font-size:11px;margin-top:10px;max-height:170px}.events-variables-view{flex:1;height:100%;min-height:0;min-width:0;overflow:auto;padding:16px}.data-table{border-collapse:collapse;font-size:12px;margin-bottom:22px;min-width:520px}.data-table caption{color:#7ec8ff;font-size:13px;font-weight:700;padding:6px 0;text-align:left}.data-table th,.data-table td{border:1px solid #263b4f;padding:5px 12px;text-align:left;white-space:nowrap}.data-table thead th{background:#213242;color:#d7e1ea}.data-table tbody th{background:#152331;color:#d7e1ea}.data-table button{background:transparent;border:0;color:inherit;font-weight:700;height:auto;padding:0}.data-table .active-step,.data-table .active-row>th{color:#f2bd4a}.data-table td.taken{color:#00e676}.data-table td.unstable{color:#ff9800}.data-table .table-empty,.table-empty{color:#9db0bf}.solver-table th{vertical-align:top}.solver-table pre{background:#0d151d;max-height:280px;max-width:720px;min-width:360px;white-space:pre-wrap}.snapshot-facts{border-top:1px solid #263b4f;color:#9db0bf;display:flex;flex-wrap:wrap;font-size:11px;gap:10px;padding:8px 10px 0}pre{color:#d7e1ea;font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;line-height:1.5;margin:0;overflow:auto;padding:10px}.source-view{display:grid;gap:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.source-view article{border-radius:0}.source-view header{color:#7ec8ff;font-size:12px;font-weight:800}.source-view header strong{color:#7ec8ff}.source-view header span{color:#72879a;font-size:11px}.source-view pre{height:calc(100% - 38px);white-space:pre}.muted{color:#9db0bf;padding:16px}@media(max-width:900px){.simulation-layout,.source-view{grid-template-columns:1fr}.trace-panel{height:auto}}.ask-bar{bottom:18px;display:flex;flex-direction:column;align-items:center;gap:10px;left:50%;position:fixed;transform:translate(-50%);z-index:70}.ask-pill{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121e2aad;border:1px solid rgba(122,158,190,.38);border-radius:999px;box-shadow:0 8px 26px #03080d6b;display:flex;gap:10px;height:44px;padding:0 8px 0 14px;width:min(420px,80vw)}.ask-pill:hover{background:#162432d1;border-color:#7a9ebe99}.ask-glyph{color:#9db0bf;flex:none;font-size:14px}.ask-placeholder{color:#9db0bf;flex:1;text-align:center}.ask-pill-active input{background:transparent;border:0;color:#e7edf2;flex:1;height:100%;min-width:0;padding:0}.ask-pill-active input:focus{outline:none}.ask-send{background:#1c6b3d;border:1px solid #2b8750;border-radius:999px;flex:none;font-size:15px;height:30px;padding:0;width:30px}.ask-stop{background:#8a3434;border-color:#ae4a4a;font-size:10px}.ask-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121e2ae6;border:1px solid rgba(122,158,190,.38);border-radius:12px;box-shadow:0 16px 40px #03080d8c;display:flex;flex-direction:column;max-height:min(52vh,440px);width:min(560px,88vw)}.ask-panel>header{align-items:center;border-bottom:1px solid rgba(122,158,190,.22);display:flex;justify-content:space-between;padding:8px 10px 8px 14px}.ask-panel h3{font-size:13px;margin:0}.ask-panel>header div{display:flex;gap:6px}.ask-panel>header button{height:26px;padding:0 10px}.ask-close{background:transparent;border:0;color:#9db0bf;font-size:17px;min-width:26px;padding:0}.ask-transcript{display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;padding:12px 14px}.ask-message{border-radius:10px;font-size:13px;line-height:1.5;max-width:84%;padding:8px 11px;white-space:pre-wrap;word-break:break-word}.ask-user{align-self:flex-end;background:#1f4468}.ask-assistant{align-self:flex-start;background:#1a2836}.ask-waiting{color:#9db0bf;font-style:italic}.ask-activity,.ask-stale{align-self:flex-start;color:#9db0bf;font-size:11px;line-height:1.4;padding:0 3px}.ask-stale{color:#e2b957}:root{--surface-app: #10151d;--surface-panel: #18212c;--surface-raised: #233143;--border-subtle: #344559;--text-primary: #eef3f8;--text-secondary: #b3c0d0;--accent-action: #6ab7ff;--state-active: #58d79b;--state-warning: #f0bf63;--state-error: #ff8585;--focus-ring: #a5d8ff;color-scheme:dark}[hidden]{display:none!important}body{background:var(--surface-app);color:var(--text-primary);font-size:14px}button,select{height:36px;background:var(--surface-panel);border-color:var(--border-subtle);transition:background .12s,border-color .12s}button:hover:not(:disabled){background:var(--surface-raised);border-color:#68849c}button:disabled{opacity:.45}button.primary{background:var(--accent-action);border-color:var(--accent-action);color:#101b27;font-weight:700}button.primary:hover:not(:disabled){background:#a5d8ff}button.quiet{background:transparent;border-color:transparent;font-size:20px;padding:0 10px}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}input,textarea{min-width:0;background:#101923;border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:6px}input{height:38px}textarea{font:13px/1.6 Cascadia Mono,Consolas,monospace;padding:12px;resize:vertical;width:100%}input::placeholder,textarea::placeholder{color:#8599ad}summary{cursor:pointer;color:var(--text-secondary);padding:12px 0;font-size:13px}pre{font-size:13px;line-height:1.65}.help{color:var(--text-secondary);font-size:13px;line-height:1.6}.notice{border-left:3px solid var(--state-warning);background:#30291e;color:#efdab4;padding:12px;font-size:13px;line-height:1.6}.validation-error{color:var(--state-error)}.eyebrow{color:#89a8c0;font-size:11px;font-weight:700;letter-spacing:.12em;margin:0 0 8px}.app-shell{height:100dvh;overflow:hidden}.app-header{min-height:72px;display:flex;align-items:center;gap:24px;padding:14px 24px;border-bottom:1px solid #293544;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-symbol{width:32px;height:32px;display:grid;place-items:center;color:#9bd1fc;font-size:34px}.wordmark{font-size:18px;font-weight:750;letter-spacing:-.04em}.wordmark span{color:var(--text-secondary);font-weight:400;letter-spacing:-.02em}.model-identity{display:flex;flex-direction:column;gap:4px;max-width:180px}.model-identity small{font-size:10px;color:#93a9bd;letter-spacing:.12em}.model-identity strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.tabs{border:0;background:transparent;gap:4px;padding:0}.tabs button{height:36px;font-size:13px;padding:0 12px;color:var(--text-secondary)}.tabs button.active{background:#253b50;color:#bfe3ff}.header-actions{display:flex;gap:8px;margin-left:auto}.command-bar{display:flex;gap:20px;align-items:center;padding:12px 24px;background:#141d27;border-bottom:1px solid #293544;flex-wrap:wrap}.command-group{display:flex;gap:8px}.mode-control{color:var(--text-secondary);display:flex;align-items:center;gap:8px;font-size:12px}.mode-control select{font-size:13px}.snapshot-badge{color:#c8d6e4;border-left:1px solid var(--border-subtle);padding-left:18px;font-size:13px}.command-end{margin-left:auto;display:flex;gap:8px}.command-end button[aria-expanded=true]{background:#253b50;border-color:#5b829f}.split-menu{background:var(--surface-panel);min-width:290px;max-width:calc(100vw - 32px)}.split-menu .help{margin:6px 8px 10px}.menu-item{height:36px}.status-bar{order:10;display:flex;align-items:center;gap:9px;min-height:34px;flex:none;border-top:1px solid #293544;border-bottom:0;padding:8px 24px;color:var(--text-secondary);font-size:12px}.status-error{color:var(--state-error)}.status-dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--state-active)}.status-error .status-dot{background:var(--state-error)}.status-dot.pending{background:var(--state-warning)}.status-operation{margin-left:auto;white-space:nowrap}.welcome{flex:1;overflow:auto;padding:48px max(24px,calc((100% - 1080px)/2))}.welcome-intro{margin-bottom:40px}.welcome-intro h1{font-size:clamp(32px,4vw,48px);line-height:1.15;font-weight:600;letter-spacing:-.045em;margin:14px 0 18px}.welcome-intro>p:not(.eyebrow){font-size:16px;line-height:1.7;color:var(--text-secondary)}.workflow-hint{display:flex;flex-wrap:wrap;gap:28px;color:#7ca6c5;font:12px Consolas,monospace;margin-top:28px}.workflow-hint b{color:#c3d1df;font:13px system-ui;margin-left:8px}.path-form{padding:20px;background:#17212c;border:1px solid #2c3e50;border-radius:10px;margin-bottom:32px}.path-form label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.input-action{display:flex;gap:10px}.input-action input{flex:1;width:100%}.path-form small{display:block;margin-top:8px;font-size:12px}.library-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.library-heading h2{font-size:16px;margin:0;font-weight:600}.library-heading h2 span{margin-left:8px;color:#8fa7bc;font-size:12px}.library-heading input{width:280px}.model-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:10px}.model-card{height:auto;min-height:78px;padding:16px;display:grid;grid-template-columns:24px minmax(0,1fr) 16px;gap:12px;align-items:center;text-align:left;background:#17202b;border:1px solid #2b3a4b;border-radius:8px}.model-card strong{display:block;font-size:14px;font-weight:550;overflow-wrap:anywhere}.model-card small{display:block;color:#9bafc1;font-size:11px;margin-top:7px}.model-card>span:last-child{color:#7c9bb3}.model-icon{font-size:26px;color:#82b8df}.workspace{display:flex;flex:1;min-height:0;min-width:0;padding:16px;gap:0;overflow:hidden}.main-content{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.main-content>.graph-panel{flex:1}.graph-panel{background:#101923;border-color:#304153;border-radius:10px}.panel-header{padding:16px 18px;background:#17222e;min-height:65px}.panel-header h2{font-size:16px;font-weight:600}.panel-header .eyebrow{font-size:10px;margin-bottom:4px}.graph-controls{background:#131e29;border-bottom-color:#2b3a4b;padding:8px 12px;flex-wrap:wrap}.graph-controls button{height:32px;font-size:12px}.graph-controls .overlay-controls{flex-wrap:wrap}.graph-legend{padding:12px 16px;border-top:1px solid #2b3a4b;display:flex;align-items:center;flex-wrap:wrap;gap:16px;font-size:11px;color:#a6bbcd}.graph-legend span{display:flex;align-items:center;gap:6px}.graph-legend span:last-child{margin-left:auto}.graph-legend i{width:8px;height:8px;display:inline-block;border-radius:2px}.legend-active{background:var(--state-active)}.legend-selected{border:2px solid #a5d8ff}.legend-default{background:#f9a825}.panel-resizer{width:14px;flex:none;cursor:col-resize;touch-action:none;position:relative}.panel-resizer:after{content:"";position:absolute;width:2px;height:32px;background:#526c83;border-radius:2px;top:calc(50% - 16px);left:6px}.support-panel{width:var(--support-width, 360px);flex:none;min-height:0;overflow:auto;background:#17212c;border:1px solid #304153;border-radius:10px}.support-tabs{display:flex;align-items:center;justify-content:space-between;padding:8px;border-bottom:1px solid #304153;background:#17212c;position:sticky;top:0;z-index:5}.support-tabs nav{display:flex;gap:2px}.support-tabs nav button{border-color:transparent;background:transparent;font-size:12px;padding:0 10px}.support-tabs nav button.active{background:#294055;color:#c2e5ff}.panel-section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-section-heading h2{font-size:14px;font-weight:600;margin:0}.panel-section-heading h2 span{font-size:11px;color:#a3b5c6;display:block;margin-top:4px;font-weight:400}.panel-section-heading button{height:32px;font-size:12px;padding:0 8px}.explore-panel>.panel-section-heading{padding:16px}.explore-tree{height:235px;min-height:180px;display:flex;background:#111b26}.tree-legend{display:flex;gap:16px;padding:10px 16px;font-size:11px;color:#b6c8d8}.selection-details{background:transparent}.selection-details>header{background:#1c2a38}.selection-details .detail-row{font-size:13px;grid-template-columns:90px minmax(0,1fr);padding:7px 0}.detail-row dd{text-align:left}.selection-placeholder{font-size:13px;line-height:1.5;color:#b3c0d0}.object-browser{padding:0 16px 16px;border-top:1px solid #304153}.object-browser input{width:100%;font-size:12px}.object-list{display:flex;flex-direction:column;gap:4px;margin-top:10px;max-height:280px;overflow:auto}.object-list button{height:auto;text-align:left;padding:10px;overflow-wrap:anywhere;font:12px/1.5 Consolas,monospace}.object-list small{display:block;color:#a8bed0;font:10px system-ui;margin-bottom:3px}.configuration-panel{padding:16px}.configuration-panel>section{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #304153}.configuration-panel label{display:block;margin:18px 0 8px;font-size:13px}.configuration-panel .constraint-editor-actions{margin-top:10px;gap:6px}.configuration-panel .constraint-editor-actions button{font-size:12px;padding:0 10px}.configuration-panel pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#101923}[role=switch][aria-checked=true]{background:#285841;border-color:#4b9672}.modal{color:var(--text-primary);background:var(--surface-panel);border:1px solid #526c83;border-radius:12px;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;overflow:auto;box-shadow:0 24px 90px #0008}.modal::backdrop{background:#050b12bb;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-header{position:sticky;top:0;background:var(--surface-panel);border-bottom:1px solid #344559;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;z-index:3}.modal-header h2{font-size:18px;margin:0}.modal-body,.modal>.model-library{padding:20px}.modal-footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:16px 20px;border-top:1px solid #344559}.modal .scope-row{padding:12px 0}.ask-bar{position:static;transform:none;width:100%;padding:16px;align-items:stretch;gap:16px}.ask-panel{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;box-shadow:none;width:100%;max-height:none}.ask-panel>header{padding:0 0 8px}.ask-transcript{max-height:44vh;padding:12px 0}.ask-message{max-width:100%;font-size:13px}.ask-pill{width:100%;background:#101923;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-radius:8px;min-height:48px;padding-left:12px}.ask-pill:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.ask-pill-active input{font-size:13px}.ask-send{background:#6ab7ff;color:#101b27;border:0}.assistant-context{color:#99b8d0;font-size:12px;margin:0;border-bottom:1px solid #304153;padding-bottom:12px;overflow-wrap:anywhere}.assistant-welcome{display:flex;flex-direction:column;gap:8px;padding:24px 0}.assistant-welcome>span{color:#99cffa;font-size:30px}.assistant-welcome h2{font-size:18px;margin:4px 0}.assistant-welcome p{font-size:13px;line-height:1.6;color:var(--text-secondary);margin:0 0 12px}.assistant-welcome button{height:auto;padding:12px;text-align:left;font-size:13px}.events-variables-view{padding:0}.data-table{min-width:100%;font-size:13px}.data-table th,.data-table td{border:0;border-bottom:1px solid #304153;padding:12px 16px}.data-table caption{font-size:16px;padding:16px;color:#eef3f8;background:#18212c}.data-table thead th{position:sticky;top:0;z-index:2;background:#233143}.data-table tbody th{position:sticky;left:0;background:#18212c;z-index:1}.data-table thead th:first-child{left:0;z-index:3}.data-table .active-step,.data-table .active-row>th{color:#c6e6ff;box-shadow:inset 0 -3px #6ab7ff}.table-scroll{max-width:100%;overflow:auto;max-height:52vh;margin-bottom:20px;border:1px solid #304153;border-radius:8px}.table-scroll .data-table{margin-bottom:0}.data-table td.changed{background:#243c36;color:#c6f4de}.change-marker{display:inline-block;margin-left:8px;font-size:10px;color:#9fe5bd}.table-controls{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:16px}.table-controls h1{font-size:20px;margin:0}.table-controls label{display:flex;align-items:center;gap:8px;font-size:12px}.table-controls input{min-width:0;width:16px;height:16px}.raw-details{border:1px solid #304153;border-radius:8px;padding:0 16px}.source-shell{display:flex;flex-direction:column;flex:1;min-height:0}.source-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;font-size:13px;color:#b3c0d0}.source-view{border:1px solid #304153;border-radius:8px;overflow:hidden}.source-view article{display:flex;flex-direction:column;min-height:0}.source-view pre{height:auto;flex:1;min-height:0}.source-view header{flex:none}.source-switch{display:none}.event-chip,.variable-chip{font-size:12px}.event-chip small{font-size:10px}@media(max-width:1199px){.app-header{gap:12px;padding:12px 16px}.wordmark span{display:none}.command-bar{gap:12px;padding:12px 16px}.snapshot-badge{margin-left:auto}.command-end{margin-left:0}}@media(max-width:999px){.support-open .main-content{display:none}.support-panel{width:100%}.panel-resizer{display:none}.explore-tree{height:300px}.source-switch{display:flex;gap:4px}.source-view{grid-template-columns:minmax(0,1fr)}.source-dsh .alloy-source,.source-als .dash-source{display:none}.tabs{order:3;width:100%}.app-header .model-identity{max-width:160px}.graph-controls .overlay-controls{margin-left:0}}@media(max-width:600px){.welcome{padding:28px 20px}.welcome-intro{margin-bottom:28px}.workflow-hint{gap:12px;flex-direction:column}.library-heading{align-items:stretch;flex-direction:column}.library-heading input{width:100%}.input-action{flex-direction:column}.header-actions button{font-size:12px;padding:0 8px}.model-identity{display:none}.command-group{gap:4px;flex-wrap:wrap}.command-group button{font-size:12px;padding:0 8px}.command-bar{gap:8px}.command-end button{font-size:12px}.snapshot-badge{font-size:11px;padding-left:8px}.workspace{padding:8px}.status-bar{padding:8px 12px}.status-operation{display:none}.graph-legend{gap:8px}.graph-legend span:last-child{width:100%;margin-left:0}.panel-header{padding:12px}.panel-header>span{font-size:11px}.table-controls{align-items:flex-start;flex-direction:column}.desktop-break{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}button,input,select,textarea{font-family:inherit}.configuration-panel textarea{font-family:Cascadia Mono,Consolas,monospace}
