:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101113;--panel:#17191d;--panel-2:#20232a;--toolbar-bg:#14161a;--panel-head-bg:#15171b;--line:#303640;--fg:#e4e8ee;--muted:#98a2b3;--accent:#58a6ff;--accent-2:#79c0ff;--accent-fill:color-mix(in srgb, var(--accent) 16%, var(--panel));--status-ok:#3fb950;--danger:#ff7b72;--warn:#e3b341;--selection:#2f6feb;--shadow:#00000038;--output-focus-line:var(--line);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f8fa;--panel:#fff;--panel-2:#eef2f6;--toolbar-bg:#eef2f6;--panel-head-bg:#f6f8fa;--line:#d0d7de;--fg:#1f2328;--muted:#57606a;--accent:#0969da;--accent-2:#0969da;--accent-fill:color-mix(in srgb, var(--accent) 10%, var(--panel));--status-ok:#1a7f37;--danger:#cf222e;--warn:#9a6700;--selection:#cce0ff;--shadow:#1f23281f;--output-focus-line:var(--fg)}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--fg)}button,select,textarea,input{font:inherit}.shell{grid-template-rows:auto minmax(0,1fr) auto;min-width:320px;height:100%;min-height:0;display:grid;overflow:hidden}.toolbar{border-bottom:1px solid var(--line);background:var(--toolbar-bg);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.brand{color:var(--fg);letter-spacing:0;margin-right:4px;font-weight:700;text-decoration:none}.brand:hover{color:var(--accent-2)}select,button,.toggle{background:var(--panel);color:var(--fg);border:1px solid var(--line);border-radius:6px;min-height:34px}select{padding:0 10px}select:hover{border-color:var(--line);box-shadow:none;color:var(--accent-2)}button{cursor:pointer;padding:0 10px}.icon-btn{justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;display:inline-flex}button:hover,select:hover,.toggle:hover{border-color:var(--muted)}button.active{border-color:var(--accent);color:var(--accent)}.modes{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.mode-section{align-items:center;gap:6px;display:inline-flex}.mode-label{color:var(--muted);font-size:12px}.mode-group{white-space:nowrap;flex-wrap:nowrap;display:inline-flex}.mode-group button{border-radius:0;position:relative}.mode-group button:hover,.mode-group button.active{z-index:1}.mode-group button:hover{border-color:var(--line);box-shadow:none;color:var(--accent-2)}.mode-group button.programmatic-focus{border-color:var(--line);box-shadow:none;color:var(--accent-2);outline:none}.mode-group button.active{background:var(--accent-fill);border-color:var(--line);border-bottom-color:var(--accent);color:var(--accent);border-bottom-width:3px;padding-top:1px}.mode-group button+button{margin-left:-1px}.mode-group button:first-child{border-radius:6px 0 0 6px}.mode-group button:last-child{border-radius:0 6px 6px 0}.mode-group button:only-child{border-radius:6px}.codegen-options{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:8px;display:inline-flex}.codegen-label{color:var(--muted);font-size:12px}.codegen-toggle-group{white-space:nowrap;flex-wrap:nowrap;display:inline-flex}.codegen-toggle-group .toggle{border-radius:0;position:relative}:is(.codegen-toggle-group .toggle:has(input:checked),.codegen-toggle-group .toggle:has(input:focus-visible)){z-index:1}.codegen-toggle-group .toggle:hover{z-index:2}.codegen-toggle-group .toggle+.toggle{margin-left:-1px}.codegen-toggle-group .toggle:first-child{border-radius:6px 0 0 6px}.codegen-toggle-group .toggle:last-child{border-radius:0 6px 6px 0}.toggle{color:var(--fg);align-items:center;gap:6px;padding:0 9px;display:inline-flex}.toggle:has(input:disabled){opacity:.48;cursor:default}.toggle:has(input:disabled):hover{border-color:var(--line)}.codegen-toggle-group .toggle:hover:not(:has(input:disabled)){border-color:var(--line);box-shadow:none;color:var(--accent-2);z-index:2}select:focus,.toolbar-icon-btn:focus,.toolbar-icon-btn:hover,select:focus-visible,.toolbar-icon-btn:focus-visible,.mode-group button:focus-visible,.result-tabs button:focus-visible{border-color:var(--line);box-shadow:none;color:var(--accent-2);outline:none}select.run-focus-handoff,select.run-focus-handoff:focus,select.run-focus-handoff:hover{border-color:var(--line);box-shadow:none;color:var(--fg);outline:none}.mode-group button.active:focus-visible{background:var(--accent-fill);border-color:var(--line);border-bottom-color:var(--accent);color:var(--accent);border-bottom-width:3px}.spacer{flex:1}.toolbar-icon-btn{background:var(--panel-head-bg);flex:none}.workspace{--workspace-editor-size:50%;grid-template-columns:minmax(0, var(--workspace-editor-size)) 8px minmax(min(260px, 25%), 1fr);min-height:0;display:grid;overflow:hidden}.editor-pane,.result-pane{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.workspace-splitter{background:var(--panel-head-bg);cursor:col-resize;touch-action:none;min-width:8px;min-height:0;position:relative}.workspace-splitter:before{content:"";background:var(--line);width:1px;position:absolute;inset:0 auto 0 3px}.workspace-splitter:hover:before,.workspace-splitter.dragging:before,.workspace-splitter:focus-visible:before{background:var(--accent);width:3px;inset:0 auto 0 2px}.workspace-splitter:focus-visible{outline:none}.pane-head,.result-tabs{border-bottom:1px solid var(--line);min-height:38px;color:var(--muted);background:var(--panel-head-bg);align-items:center;gap:8px;padding:0 12px;display:flex}.source-head{gap:10px}.result-tabs{gap:0}.args-label{color:var(--muted)}.program-args{background:var(--panel);color:var(--fg);border:1px solid var(--line);border-radius:6px;flex:1;width:auto;min-width:0;min-height:30px;padding:0 9px;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.program-args:focus-visible{border-color:var(--line);box-shadow:none;outline:none}.program-args.program-args-inactive{color:var(--muted)}.program-args.arg-warning{animation:.22s step-end arg-warning-bell}@keyframes arg-warning-bell{0%,to{background:var(--panel);color:var(--fg);border-color:var(--line);box-shadow:none}45%{background:var(--fg);color:var(--panel);border-color:var(--fg);box-shadow:0 0 0 3px color-mix(in srgb, var(--fg) 45%, transparent)}}@media (prefers-reduced-motion:reduce){.program-args.arg-warning{background:var(--fg);color:var(--panel);border-color:var(--fg);box-shadow:0 0 0 3px color-mix(in srgb, var(--fg) 45%, transparent);animation:none}}.result-tabs button{border-radius:0;min-height:28px;padding:0 9px;position:relative}.result-tabs button+button{margin-left:-1px}.result-tabs button:first-child{border-radius:6px 0 0 6px}.result-tabs button:last-child{border-radius:0 6px 6px 0}.result-tabs button:hover,.result-tabs button.active{z-index:1}.result-tabs button:hover{border-color:var(--line);box-shadow:none;color:var(--accent-2)}.result-tabs button.active{background:var(--accent-fill);border-color:var(--line);border-bottom-color:var(--accent);color:var(--accent);border-bottom-width:3px;padding-top:1px}.mode-group button.active,.result-tabs button.active{color:var(--accent)}.result-tabs button.has-content:after{content:"";background:var(--danger);width:12px;height:12px;box-shadow:0 0 0 2px var(--panel-head-bg);border-radius:50%;position:absolute;top:-5px;right:-5px}#editor,.output-container{flex:1;min-height:0;display:flex;position:relative}.copy-btn{background:var(--panel-head-bg);color:var(--fg);border:1px solid var(--line);opacity:0;pointer-events:none;z-index:10;cursor:pointer;transition:opacity .2s,color .1s,border-color .1s;position:absolute;top:8px;right:18px}#editor:focus-within .copy-btn,.output-container:focus-within .copy-btn,#editor:hover .copy-btn,.output-container:hover .copy-btn{opacity:1;pointer-events:auto}.copy-btn:hover{background:var(--toolbar-bg);border-color:var(--muted);color:var(--accent-2)}.copy-btn:focus-visible{border-color:var(--line);box-shadow:none;color:var(--accent-2);opacity:1;outline:none}.cm-editor{flex:1;height:100%;min-height:0;font-size:14px}.cm-scroller{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.cm-tooltip.cm-tooltip-lint{background:var(--panel);color:var(--fg);border:1px solid var(--line);box-shadow:0 8px 24px var(--shadow)}.cm-tooltip-lint .cm-diagnostic{background:var(--panel);color:var(--fg)}.cm-tooltip-lint .cm-diagnostic-error{border-left-color:var(--danger)}.cm-tooltip-lint .cm-diagnostic-warning{border-left-color:var(--warn)}.cm-tooltip-lint .cm-diagnostic-info{border-left-color:var(--accent-2)}.diagnostics{border-bottom:1px solid var(--line);max-height:36%;overflow:auto}.diagnostics:empty{display:none}.diagnostic{text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;grid-template-columns:auto auto 1fr;gap:10px;width:100%;min-height:auto;padding:9px 12px;display:grid}.diagnostic .code{color:var(--danger);font-weight:700}.diagnostic.warning .code{color:var(--warn)}.diagnostic .loc{color:var(--muted);white-space:nowrap}.output{white-space:pre-wrap;word-break:break-word;unicode-bidi:plaintext;flex:1;margin:0;padding:12px;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;overflow:auto}.output:focus{outline:none}.result-pane:has(.output:focus) .diagnostics:not([hidden]):not(:empty){border-bottom-style:dotted;border-bottom-color:var(--output-focus-line)}:is(.result-pane:has(.output:focus):has(.diagnostics[hidden]) .result-tabs,.result-pane:has(.output:focus):has(.diagnostics:empty) .result-tabs){border-bottom-style:dotted;border-bottom-color:var(--output-focus-line)}.status{border-top:1px solid var(--line);background:var(--panel-head-bg);color:var(--muted);align-items:center;gap:14px;min-height:36px;padding:8px 12px;display:flex}.status-message{flex-wrap:wrap;align-items:center;gap:14px;min-width:0;display:flex}.theme-toggle{white-space:nowrap;align-items:center;margin-left:auto;display:inline-flex;position:relative}.theme-option{text-align:center;border-radius:0;min-width:34px;padding:0;position:relative}.theme-option:hover,.theme-option.active{z-index:1}.theme-option:hover{border-color:var(--line);box-shadow:none;color:var(--accent-2)}.theme-option.active{background:var(--accent-fill);border-color:var(--line);border-bottom-color:var(--accent);color:var(--accent);border-bottom-width:3px;padding-top:1px}.theme-option+.theme-option{margin-left:-1px}.theme-option:first-of-type{border-radius:6px 0 0 6px}.theme-option:last-of-type{border-radius:0 6px 6px 0}.theme-option:focus-visible{border-color:var(--line);box-shadow:none;color:var(--accent-2);outline:none}.theme-option.active:focus-visible{background:var(--accent-fill);border-color:var(--line);border-bottom-color:var(--accent);color:var(--accent);border-bottom-width:3px}.theme-menu{z-index:20;background:var(--panel);border:1px solid var(--line);min-width:190px;max-width:min(280px,100vw - 24px);max-height:min(360px,100vh - 96px);box-shadow:0 12px 32px var(--shadow);border-radius:6px;flex-direction:column;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0;overflow:auto}.theme-menu[hidden]{display:none}.theme-menu-option{text-align:left;border-color:#0000;width:100%;min-height:30px;padding:0 9px}.theme-menu-option:hover,.theme-menu-option:focus-visible{box-shadow:none;color:var(--accent-2);border-color:#0000;outline:none}.theme-menu-option.active{background:var(--accent-fill);color:var(--accent);border-color:#0000}.provenance-dialog{width:min(1100px,100vw - 28px);max-width:calc(100vw - 28px);height:min(80vh,100vh - 28px);max-height:calc(100vh - 28px);color:var(--fg);background:var(--panel);border:1px solid var(--line);box-shadow:0 20px 60px var(--shadow);border-radius:8px;padding:0}.provenance-dialog::backdrop{background:color-mix(in srgb, var(--bg) 68%, transparent)}.provenance-dialog-frame{flex-direction:column;height:100%;min-height:0;display:flex}.provenance-dialog-head{border-bottom:1px solid var(--line);background:var(--panel-head-bg);align-items:center;gap:12px;padding:10px 12px;display:flex}.provenance-dialog-head form{margin-left:auto}.about-tabs{gap:4px;display:flex}.about-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 12px;font-size:13px}.about-tabs button:hover,.about-tabs button:focus-visible{color:var(--fg);outline:none}.about-tabs button.active{color:var(--fg);background:var(--panel-2);border-color:var(--line);font-size:15px;font-weight:700}.about-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.about-panel[hidden]{display:none}.provenance-close:hover,.provenance-close:focus-visible{border-color:var(--line);box-shadow:none;color:var(--accent-2);outline:none}.about-intro{border-bottom:1px solid var(--line);padding:14px 14px 12px;font-size:14px;line-height:1.5}.about-intro p{margin:0 0 10px}.about-intro p:last-child{margin-bottom:0}.about-intro a{color:var(--accent);overflow-wrap:anywhere}.about-intro a:hover,.about-intro a:focus-visible{color:var(--accent-2)}.provenance-output{white-space:pre-wrap;word-break:break-word;margin:0;padding:14px;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55}.ok{color:var(--status-ok)}.bad{color:var(--danger)}.warn{color:var(--warn)}@media (max-width:720px){.workspace{--workspace-editor-size:50%;grid-template-columns:1fr;grid-template-rows:minmax(0, var(--workspace-editor-size)) 8px minmax(min(160px, 25%), 1fr)}.workspace-splitter{cursor:row-resize;min-width:0;min-height:8px}.workspace-splitter:before{width:auto;height:1px;inset:3px 0 auto}.workspace-splitter:hover:before,.workspace-splitter.dragging:before,.workspace-splitter:focus-visible:before{width:auto;height:3px;inset:2px 0 auto}}@media (max-width:1024px){.toolbar{gap:6px 8px;padding:6px 10px}.toolbar select,.toolbar button,.toolbar .toggle{min-height:28px;font-size:13px}.toolbar select,.toolbar button{padding:0 8px}.toolbar .toggle{padding:0 7px}.toolbar .icon-btn{width:28px;min-width:28px;height:28px;min-height:28px;padding:0}.brand{font-size:15px}.mode-label,.codegen-label{font-size:11px}.modes{display:contents}.pane-head,.result-tabs{min-height:32px}.result-tabs button{min-height:24px}.program-args{min-height:26px;font-size:12px}.cm-editor{font-size:13px}.output{font-size:12px}.status{gap:8px;min-height:28px;padding:4px 10px;font-size:13px}.status-message{gap:8px}.theme-option{min-width:28px;min-height:24px}}
