body.bare{height:100vh;overflow:hidden}#root,astro-island{display:contents}.grow{flex:1}.small{font-size:12.5px}.mono{font-family:var(--mono)}.pad{padding:.5rem .75rem}.row{align-items:center;gap:.5rem;display:flex}button.icon{padding:.3em}.primary kbd{color:inherit;border-color:color-mix(in srgb, currentColor 40%, transparent);background:0 0}button.link{color:var(--accent);font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.pill{background:var(--bg-3);color:var(--muted);white-space:nowrap;border-radius:999px;padding:.1em .5em;font-size:11px}.pill.bad{color:var(--bad)}.note{border-radius:var(--radius);background:var(--accent-soft);margin:.4rem 0;padding:.45rem .7rem;font-size:13px}.warn{color:var(--warn)}.bad{color:var(--bad)}.app{flex-direction:column;height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--bg);align-items:center;gap:.5rem;min-height:46px;padding:.4rem .75rem;display:flex}.topbar .brand{color:var(--fg);align-items:center;gap:.45rem;margin-right:.5rem;text-decoration:none;display:inline-flex}.switcher{background:var(--bg-2);max-width:14rem;padding:.3em .5em}.switcher.env{max-width:12rem}.banner{background:var(--accent-soft);border-bottom:1px solid var(--line);padding:.4rem .9rem;font-size:13px}.banner.bad{background:color-mix(in srgb, var(--bad) 12%, transparent)}.sync{white-space:nowrap;align-items:center;gap:.35rem;padding:0 .4rem;font-size:12.5px;display:inline-flex}.sync .dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.sync-synced .dot{background:var(--ok)}.sync-syncing .dot,.sync-connecting .dot{background:var(--warn);animation:1.2s infinite pulse}.sync-offline .dot,.sync-signed_out .dot{background:var(--bad)}.sync-local .dot{background:var(--accent)}@keyframes pulse{50%{opacity:.35}}.presence{display:flex}.avatar{color:#fff;border:2px solid var(--bg);border-radius:50%;place-items:center;width:24px;height:24px;margin-left:-6px;font-size:12px;font-weight:700;display:grid}.body{flex:1;min-height:0;display:flex}.rail{border-right:1px solid var(--line);background:var(--bg-2);flex-direction:column;align-items:center;gap:.25rem;width:48px;padding:.5rem 0;display:flex}.rail button{color:var(--muted);border-radius:var(--radius);background:0 0;border:0;padding:.45rem}.rail button:hover{color:var(--fg);background:var(--bg-3)}.rail button.on{color:var(--accent);background:var(--accent-soft)}.sidebar{resize:horizontal;border-right:1px solid var(--line);background:var(--bg-2);width:280px;min-width:220px;max-width:45vw;overflow:auto}.work{flex-direction:column;flex:1;min-width:0;display:flex}.section{flex-direction:column;padding-bottom:1rem;display:flex}.section-head{justify-content:space-between;align-items:center;padding:.55rem .75rem .3rem;display:flex}.section-head h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0;font-size:12px}.section .filter{margin:.25rem .6rem .4rem;padding:.3em .55em;font-size:13px}.group{color:var(--muted);margin:.6rem .75rem .2rem;font-size:11px;font-weight:600}.list{margin:0;padding:0 .35rem;list-style:none}.list li{border-radius:6px;align-items:center;display:flex}.list li:hover{background:var(--bg-3)}.list li.active .row-btn{color:var(--accent)}.row-btn{background:0 0;border:0;flex:1;justify-content:flex-start;gap:.45rem;min-width:0;padding:.3rem .45rem;font-size:13px}.row-btn:hover{background:0 0}.row-btn .label{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;overflow:hidden}.history-row .code{font-family:var(--mono);font-size:11.5px}.history-row .code.ok{color:var(--ok)}.history-row .code.bad{color:var(--bad)}.trash-row{gap:.25rem;padding:.3rem .45rem}.trash-info{flex-direction:column;flex:1;min-width:0;font-size:13px;display:flex}.trash-info .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.empty-hint{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;display:flex}.tree,.tree ul{margin:0;padding:0;list-style:none}.tree{padding:0 .35rem}.tree-row{border-radius:6px;align-items:center;min-height:28px;display:flex;position:relative}.tree-row:hover{background:var(--bg-3)}.tree-row.drop-inside{background:var(--accent-soft);outline:1px dashed var(--accent)}.tree-row.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.tree-row.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.twisty{width:18px;height:18px;color:var(--muted);background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.twisty svg{transition:transform .12s}.twisty.open svg{transform:rotate(90deg)}.tree-label{background:0 0;border:0;flex:1;justify-content:flex-start;gap:.4rem;min-width:0;padding:.2rem .3rem;font-size:13px}.tree-label:hover{background:0 0}.tree-label .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-more{opacity:0}.tree-row:hover .row-more,.row-more:focus-visible{opacity:1}.rename{flex:1;padding:.15em .4em;font-size:13px}.method{font:700 10.5px/1 var(--mono);min-width:2.6em;display:inline-block}.menu{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--shadow);min-width:190px;color:var(--fg);margin:0;padding:.3rem;position:fixed;inset:auto}.menu button{background:0 0;border:0;border-radius:6px;justify-content:space-between;width:100%;padding:.4rem .6rem;font-size:13px;display:flex}.menu button:hover:not(:disabled){background:var(--bg-3)}.menu button.danger{color:var(--bad)}.menu hr{border:0;border-top:1px solid var(--line);margin:.25rem 0}.ctx-backdrop{z-index:50;position:fixed;inset:0}.ctx{z-index:51}.tabstrip{border-bottom:1px solid var(--line);background:var(--bg-2);scrollbar-width:thin;align-items:stretch;min-height:36px;display:flex;overflow-x:auto}.tab{border-right:1px solid var(--line);cursor:pointer;max-width:220px;color:var(--muted);user-select:none;align-items:center;gap:.35rem;padding:0 .4rem 0 .7rem;font-size:13px;display:flex}.tab.on{background:var(--bg);color:var(--fg);box-shadow:inset 0 -2px 0 var(--accent)}.tab.dragging{opacity:.5}.tab-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tab-kind{color:var(--muted);font-size:11px}.tab-close{color:var(--muted);visibility:hidden;background:0 0;border:0;padding:0 .3rem;font-size:16px;line-height:1}.tab:hover .tab-close,.tab.on .tab-close{visibility:visible}.new-tab{margin:0 .25rem}.dirty-dot{background:var(--warn);border-radius:50%;flex:none;width:7px;height:7px}.tab-body{flex:1;min-height:0;overflow:auto}.welcome,.panel-msg{text-align:center;padding:3rem 2rem}.welcome h1{margin:0 0 .5rem}.welcome-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1.2rem;display:flex}.request-panel{height:100%;min-height:0;display:grid}.request-editor{min-height:0;padding:.6rem .9rem;overflow:auto}.splitter{cursor:row-resize;background:var(--line);opacity:.6}.splitter:hover{background:var(--accent);opacity:1}.req-head{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.req-name{field-sizing:content;background:0 0;border-color:#0000;min-width:8rem;max-width:40rem;margin:0;font-size:15px;font-weight:600}.req-name:hover,.req-name:focus{border-color:var(--line)}h2.req-name{padding:.4em .6em}.protocol{padding:.3em;font-size:12px}.url-row{align-items:stretch;gap:.5rem;display:flex}.method-input{width:6.5rem;font:700 13px var(--mono);text-transform:uppercase}.var-input{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);flex:1;min-width:0;padding:0 .5rem;overflow:hidden}.var-input:focus-within{border-color:var(--accent)}.var-input .cm-editor{background:0 0}.var-input .cm-scroller{scrollbar-width:none;overflow-x:auto}.cm-var{color:var(--accent);background:var(--accent-soft);border-radius:3px}.cm-var-unknown{color:var(--bad);background:color-mix(in srgb, var(--bad) 10%, transparent)}.var-tip{font:12px var(--mono);word-break:break-all;max-width:28rem;padding:.35rem .55rem}.send{display:flex}.send>button:first-child{border-top-right-radius:0;border-bottom-right-radius:0;min-width:5.5rem}.send-mode{border-left:1px solid color-mix(in srgb, var(--accent-fg) 30%, transparent)!important;border-top-left-radius:0!important;border-bottom-left-radius:0!important;font-size:12.5px!important}.mode-hint{margin:.3rem 0 0}.section-body{padding:.6rem 0}.subtabs{border-bottom:1px solid var(--line);align-items:center;gap:.15rem;margin-top:.6rem;display:flex;overflow-x:auto}.subtabs>button{color:var(--muted);background:0 0;border:0;border-radius:0;padding:.45rem .65rem;font-size:13px;box-shadow:inset 0 -2px #0000}.subtabs>button.on{color:var(--fg);box-shadow:inset 0 -2px 0 var(--accent)}.subtabs .count{color:var(--accent);margin-left:.2rem;font-size:11px}.subtabs-right{margin-left:auto}table.kv{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}table.kv th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:.3rem .35rem;font-size:12px;font-weight:500}table.kv td{border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);vertical-align:middle;text-overflow:ellipsis;padding:.15rem .2rem;overflow:hidden}table.kv td input,table.kv td select{background:0 0;border-color:#0000;width:100%;padding:.3em .4em;font-size:13px}table.kv td input:hover,table.kv td input:focus,table.kv td select:hover{border-color:var(--line);background:var(--bg)}table.kv .kv-on{text-align:center;width:2rem}table.kv .kv-on input{width:auto}table.kv .kv-x{width:2rem}table.kv tr.kv-off td:not(.kv-on){opacity:.5}table.kv tr.kv-auto td{color:var(--muted);padding:.3rem .45rem;font-size:12.5px}table.vars th:nth-child(3){width:34%}table.vars th:nth-child(4){width:9.5rem}.secret-cell,.ext-cell,.file-cell{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.ext-cell select{width:9rem!important}.file-name{font-size:12.5px}.radio-row{flex-wrap:wrap;align-items:center;gap:.9rem;margin-bottom:.5rem;font-size:13px;display:flex}.radio-row label{color:var(--fg);align-items:center;gap:.3rem;font-size:13px;display:inline-flex}.code{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex;overflow:auto}.code>.cm-editor{flex:1}.graphql{grid-template-columns:3fr 2fr;gap:.75rem;display:grid}@media (width<=900px){.graphql{grid-template-columns:1fr}}.field{flex-direction:column;gap:.25rem;margin-bottom:.5rem;font-size:13px;display:flex}.field>span{color:var(--muted);font-size:12.5px}.field .req{color:var(--bad)}.form-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:0 .9rem;display:grid}.form-grid .wide,.field.wide{grid-column:1/-1}.auth-editor>.field{max-width:20rem}.settings-list{flex-direction:column;max-width:46rem;display:flex}.setting{border-bottom:1px solid var(--line);color:var(--fg);justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 0;font-size:13px;display:flex}.setting input:not([type=checkbox]),.setting select{width:14rem}.assertions{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.entity-panel,.history-panel{flex-direction:column;gap:.4rem;min-height:100%;padding:.6rem .9rem;display:flex}.history-panel .response{border-top:1px solid var(--line);flex:1}.response{flex-direction:column;min-height:0;padding:.4rem .9rem .8rem;display:flex;overflow:auto}.response.empty{text-align:center;justify-content:center;align-items:center}.response-status{align-items:center;gap:.8rem;padding:.3rem 0;font-size:13px;display:flex}.status{font-weight:700;font-family:var(--mono)}.status.ok{color:var(--ok)}.status.warn{color:var(--warn)}.status.bad{color:var(--bad)}.status.info{color:#2f7fd8}.via{color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.05rem .5rem;font-size:11.5px}.response-error{margin:.3rem 0}.response-body{flex:1;min-height:0;padding-top:.5rem}.body-toolbar{align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.seg{border:1px solid var(--line);border-radius:var(--radius);display:inline-flex;overflow:hidden}.seg button{background:0 0;border:0;border-radius:0;padding:.25rem .65rem;font-size:12.5px}.seg button.on{background:var(--accent-soft);color:var(--accent)}pre.raw,pre.console,pre.cmd{background:var(--code-bg);border:1px solid var(--line);border-radius:var(--radius);white-space:pre-wrap;word-break:break-all;max-height:60vh;margin:0;padding:.6rem .8rem;font-size:12.5px;overflow:auto}.preview{border:1px solid var(--line);border-radius:var(--radius);background:#fff;width:100%;height:60vh}.preview-img{border:1px solid var(--line);border-radius:var(--radius);background:repeating-conic-gradient(#ccc 0 25%, #fff 0 50%) 0 0 / 16px 16px;max-width:100%;max-height:60vh}.tests{margin:0;padding:0;font-size:13px;list-style:none}.tests li{border-bottom:1px solid var(--line);padding:.3rem 0}.tests .badge{font:700 10.5px var(--mono);border-radius:4px;margin-right:.4rem;padding:.1rem .35rem}.tests .pass .badge{color:var(--ok);background:color-mix(in srgb, var(--ok) 14%, transparent)}.tests .fail .badge{color:var(--bad);background:color-mix(in srgb, var(--bad) 14%, transparent)}.tests .skip .badge{color:var(--muted);background:var(--bg-3)}.waterfall{max-width:44rem;font-size:13px}.wf-row{grid-template-columns:9rem 1fr 5rem;align-items:center;gap:.6rem;padding:.25rem 0;display:grid}.wf-row.total{border-top:1px solid var(--line);font-weight:600}.wf-track{background:var(--bg-3);border-radius:3px;height:10px;position:relative}.wf-row.total .wf-track{background:0 0}.wf-bar{background:var(--accent);border-radius:3px;position:absolute;top:0;bottom:0}.wf-ms{text-align:right;font-family:var(--mono);font-size:12px}.spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.json-tree{flex-direction:column;gap:.4rem;display:flex}.jt-filter{font-family:var(--mono);font-size:12.5px}.jt{font:12.5px/1.6 var(--mono);background:var(--code-bg);border:1px solid var(--line);border-radius:var(--radius);max-height:65vh;padding:.4rem .6rem;overflow:auto}.jt-row{white-space:nowrap}.jt-toggle{color:var(--muted);background:0 0;border:0;width:1.1rem;padding:0 .2rem 0 0;font-size:11px}.jt-key{color:#9b59d0}.jt-string{color:var(--ok)}.jt-number{color:#2f7fd8}.jt-boolean,.jt-null{color:var(--warn)}.jt-punct,.jt-summary{color:var(--muted)}.tok-keyword,.tok-operatorKeyword{color:#9b59d0}.tok-string,.tok-string2{color:var(--ok)}.tok-number,.tok-bool,.tok-atom{color:#2f7fd8}.tok-propertyName{color:#c2410c}.tok-comment{color:var(--muted);font-style:italic}.tok-typeName,.tok-className{color:#0e7490}.tok-variableName.tok-definition{color:var(--fg)}.tok-tagName{color:#9b59d0}.tok-attributeName{color:#c2410c}.tok-invalid{color:var(--bad)}dialog.modal{border:1px solid var(--line);background:var(--bg);width:min(34rem,100vw - 2rem);color:var(--fg);box-shadow:var(--shadow);border-radius:12px;max-height:calc(100vh - 4rem);padding:0}dialog.modal.wide{width:min(46rem,100vw - 2rem);margin-top:0;top:10vh}dialog.modal::backdrop{background:#0006}dialog.modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.7rem 1rem;display:flex}dialog.modal header h2{margin:0;font-size:15px}.modal-body{max-height:70vh;padding:.9rem 1rem;overflow:auto}dialog.modal footer{border-top:1px solid var(--line);justify-content:flex-end;gap:.5rem;padding:.7rem 1rem;display:flex}.pair .row input{width:8rem;font:600 18px var(--mono);letter-spacing:.2em;text-align:center}.shortcuts{border-collapse:collapse;width:100%;font-size:13.5px}.shortcuts td{border-bottom:1px solid var(--line);padding:.35rem 0}.shortcuts td:last-child{text-align:right}.shortcuts kbd{margin-left:.25rem}.palette-input{width:100%;padding:.6em .8em;font-size:15px}.palette-list{max-height:55vh;margin:.5rem 0 0;padding:0;list-style:none;overflow:auto}.palette-list li{cursor:pointer;border-radius:6px;align-items:baseline;gap:.6rem;padding:.45rem .6rem;font-size:13.5px;display:flex}.palette-list li.on{background:var(--accent-soft)}.pa-group{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex:none;width:6.5rem;font-size:11px}.pa-label{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:50%;overflow:hidden}.pa-hint{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.command-runner h3{margin:.5rem 0 .2rem}.schema-form{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:0 .9rem;margin:.6rem 0;display:grid}.schema-form>p,.schema-form>div{grid-column:1/-1}.toasts{z-index:100;flex-direction:column;gap:.5rem;max-width:min(28rem,100vw - 2rem);display:flex;position:fixed;bottom:1rem;right:1rem}.toast{background:var(--fg);color:var(--bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:.6rem .9rem;font-size:13.5px}.toast.error{background:var(--bad);color:#fff}.toast.ok{background:var(--ok);color:#fff}.gate{flex-direction:column;min-height:100vh;display:flex}.gate-card{text-align:center;max-width:30rem;margin:12vh auto 0;padding:0 1rem}.gate-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;margin:1.2rem 0;display:flex}.gate form{justify-content:center;margin-top:1rem}@media (width<=760px){.sidebar{z-index:20;box-shadow:var(--shadow);position:absolute;top:46px;bottom:0;left:48px}.switcher{max-width:8rem}.sync .muted,.presence{display:none}.url-row{flex-wrap:wrap}.method-input{width:5.5rem}}.history-item .history-del{opacity:0;padding:0 .4rem}.history-item:hover .history-del,.history-item .history-del:focus-visible{opacity:1}.history-item input[type=checkbox]{margin:0 .2rem 0 .4rem}.panel{flex-direction:column;gap:.5rem;max-width:64rem;padding:.6rem .9rem 2rem;display:flex}.panel h3{margin:.9rem 0 .3rem;font-size:13px}.panel .form-grid select,.panel .form-grid input:not([type=checkbox]){box-sizing:border-box;width:100%}.panel .seg{align-self:flex-start}.actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.copy-field{align-items:stretch;gap:.4rem;display:flex}.copy-field input{min-width:0;font:12.5px var(--mono);flex:1}.copy-field.block{flex-direction:column;align-items:flex-start}.copy-field.block pre{box-sizing:border-box;width:100%}.once{border:1px solid var(--warn);background:color-mix(in srgb, var(--warn) 10%, transparent);border-radius:var(--radius);flex-direction:column;gap:.45rem;padding:.6rem .8rem;font-size:13px;display:flex}.once p{margin:0}.note.bad{background:color-mix(in srgb, var(--bad) 12%, transparent);color:var(--fg)}table.data-table{border-collapse:collapse;width:100%;font-size:13px}table.data-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:.3rem .4rem;font-size:12px;font-weight:500}table.data-table td{border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);vertical-align:middle;padding:.3rem .4rem}table.data-table td select{padding:.2em .4em}.state-dot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.state-dot.passed,.state-dot.ok,.state-dot.on{background:var(--ok)}.state-dot.failed,.state-dot.error,.state-dot.bad{background:var(--bad)}.state-dot.running,.state-dot.queued{background:var(--warn);animation:1.2s infinite pulse}.badge{font:700 10.5px var(--mono);background:var(--bg-3);color:var(--muted);white-space:nowrap;border-radius:4px;padding:.1rem .35rem}.badge.bad{color:var(--bad);background:color-mix(in srgb, var(--bad) 14%, transparent)}.badge.ok{color:var(--ok);background:color-mix(in srgb, var(--ok) 14%, transparent)}.badge.warn{color:var(--warn);background:color-mix(in srgb, var(--warn) 14%, transparent)}.spec-panel{box-sizing:border-box;flex-direction:column;gap:.4rem;min-height:100%;padding:.6rem .9rem;display:flex}.spec-editor{grid-template-rows:minmax(16rem,1fr);display:grid}.side-group{justify-content:space-between;align-items:center;margin:.6rem .4rem .1rem .75rem;display:flex}.side-group h3{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:11px;font-weight:600}.list .meta{color:var(--muted);white-space:nowrap;font-size:11.5px}.run-detail details{border-bottom:1px solid var(--line);padding:.3rem 0;font-size:13px}.run-detail summary{cursor:pointer;align-items:center;gap:.6rem;display:flex}.run-detail summary .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.run-detail .tests{margin:.3rem 0 .3rem 1.4rem}.kv-summary{flex-wrap:wrap;gap:1.2rem;font-size:13px;display:flex}.kv-summary div{flex-direction:column;display:flex}.kv-summary span:first-child{color:var(--muted);font-size:11.5px}.settings-body{max-width:52rem;padding:0 1.2rem 40vh}.settings-body>section{border-bottom:1px solid var(--line);padding:.9rem 0 1.1rem;scroll-margin-top:.5rem}.settings-body>section>h2{margin:0 0 .25rem;font-size:15px}.settings-body h3{margin:.9rem 0 .3rem;font-size:13px}.settings-body .row{flex-wrap:wrap}.settings-body .row input:not([type=checkbox]),.settings-body .row select{width:auto}.run-detail .response{max-height:28rem;padding:.3rem 0 0}.proto-result{gap:.3rem}.proto-result .response{padding:0;overflow:visible}.stream{flex-direction:column;flex:1;min-height:0;display:flex}.stream-bar{flex-wrap:wrap;align-items:center;gap:.5rem;padding:.2rem 0 .4rem;font-size:13px;display:flex}.stream-bar select,.stream-filter{padding:.2em .45em;font-size:12.5px}.stream-filter{min-width:10rem}.stream-status:before{content:"";background:var(--muted);border-radius:50%;width:8px;height:8px;margin-right:.35rem;display:inline-block}.stream-status.open:before{background:var(--ok)}.stream-status.connecting:before{background:var(--warn);animation:1.2s infinite pulse}.stream-log{border:1px solid var(--line);border-radius:var(--radius);background:var(--code-bg);min-height:6rem;font:12.5px/1.45 var(--mono);flex:1;overflow:auto}.msg{border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.2rem .5rem;display:flex}.msg:hover{background:color-mix(in srgb, var(--accent) 5%, transparent)}.msg-dir{width:1ch;font-weight:700}.msg.sent .msg-dir{color:var(--warn)}.msg.received .msg-dir{color:var(--ok)}.msg.error{color:var(--bad)}.msg.info{color:var(--muted)}.msg-time{color:var(--muted);min-width:4.5rem}.msg-event{background:var(--accent-soft);color:var(--accent);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:16rem;padding:0 .4rem;font-size:11px;overflow:hidden}.msg-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.msg-full{white-space:pre-wrap;word-break:break-word;flex-basis:100%;margin:.2rem 0 0}.composer{flex-direction:column;gap:.4rem;display:flex}.composer-event{width:14rem}.saved-msgs{flex-direction:column;gap:.15rem;margin:.3rem 0 0;padding:0;list-style:none;display:flex}.saved-msgs li{align-items:center;gap:.4rem;min-width:0;font-size:12.5px;display:flex}.saved-msgs .msg-text{font-family:var(--mono)}.grpc-method,.mcp-head,.soap-head{flex-wrap:wrap;margin-top:.45rem}.grpc-method input.grow{min-width:14rem}.grpc-messages{flex-direction:column;gap:.5rem;display:flex}.grpc-message .row{margin-bottom:.2rem}.gql-explorer{flex-direction:column;gap:.4rem;font-size:13px;display:flex}.gql-explorer h3{margin:.2rem 0;font-size:14px}.gql-list{flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.gql-list .deprecated{opacity:.6;text-decoration:line-through}.gql-list button.link{font-size:13px}.mcp-tools{flex-direction:column;gap:.2rem;margin:.3rem 0;padding:0;list-style:none;display:flex}.mcp-tool{justify-content:flex-start;gap:.6rem;width:100%;font-size:13px}.mcp-tool .muted{text-overflow:ellipsis;overflow:hidden}.mcp-tool-form{border-left:2px solid var(--accent-soft);margin-left:.6rem;padding:.3rem .8rem .8rem}.llm-head{margin-top:.45rem}.llm-text{white-space:pre-wrap;word-break:break-word;padding:.4rem 0;font-size:14px;line-height:1.55}.wide-text{width:100%;font-family:var(--mono);font-size:13px}.sql-grid{flex:1;min-height:0;overflow:auto}.sql-grid table.kv{table-layout:auto}.sql-grid td{white-space:nowrap;max-width:30rem}.oauth-manager{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.3rem;margin:.6rem 0;padding:.6rem .7rem;display:flex}.oauth-manager .row{flex-wrap:wrap}.device-code strong{letter-spacing:.08em;font-size:16px}.runner{flex-direction:column;gap:.6rem;min-height:100%;padding:.6rem .9rem;display:flex}.runner-grid{grid-template-columns:minmax(16rem,1fr) 2fr;align-items:start;gap:1rem;display:grid}@media (width<=900px){.runner-grid{grid-template-columns:1fr}}.run-order{border:1px solid var(--line);border-radius:var(--radius);max-height:22rem;margin:0;padding:0;list-style:none;overflow:auto}.run-order li{border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);align-items:center;gap:.4rem;padding:.2rem .4rem;font-size:13px;display:flex}.run-order li .label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.run-summary{flex-wrap:wrap;align-items:center;gap:1rem;font-size:13px;display:flex}.run-summary strong{font-size:18px}.run-results{width:100%}.run-results td{white-space:normal!important}.run-results .fail{color:var(--bad)}.run-results .pass{color:var(--ok)}.progress{background:var(--bg-3);border-radius:999px;height:6px;overflow:hidden}.progress>div{background:var(--accent);height:100%;transition:width .2s}.charts{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.8rem;display:grid}.chart{border:1px solid var(--line);border-radius:var(--radius);padding:.4rem .6rem}.chart h4{color:var(--muted);justify-content:space-between;margin:0 0 .2rem;font-size:12.5px;font-weight:600;display:flex}.chart h4 span{color:var(--fg);font-family:var(--mono)}.chart svg{width:100%;height:120px;display:block}.chart .grid{stroke:var(--line);stroke-width:1px}.chart .series{fill:none;stroke:var(--accent);stroke-width:2px;vector-effect:non-scaling-stroke}.chart .series.bad{stroke:var(--bad)}.chart .area{fill:var(--accent-soft);stroke:none}.chart text{fill:var(--muted);font-size:10px}.import-drop{border:2px dashed var(--line);border-radius:var(--radius);text-align:center;margin-bottom:.75rem;padding:1rem;font-size:13px}.import-drop.over{border-color:var(--accent);background:var(--accent-soft)}.import-result ul{margin:.3rem 0;padding-left:1.2rem;font-size:13px}.codegen-head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.presence-dots{flex:none;margin:0 .2rem;display:inline-flex}.pdot{color:#fff;border:1.5px solid var(--bg-2);border-radius:50%;place-items:center;width:16px;height:16px;margin-left:-4px;font-size:9.5px;font-weight:700;display:grid}.pdot.more{background:var(--muted)}.row.wrap{flex-wrap:wrap}button.small{padding:.2em .55em;font-size:12.5px}.md{overflow-wrap:anywhere;font-size:13.5px}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p,.md ul,.md ol,.md blockquote,.md pre{margin:.4rem 0}.md ul,.md ol{padding-left:1.3rem}.md h3,.md h4,.md h5,.md h6{margin:.6rem 0 .3rem;font-size:14px}.md pre{background:var(--code-bg);border:1px solid var(--line);white-space:pre;border-radius:6px;padding:.45rem .6rem;font-size:12px;overflow:auto}.md code{background:var(--bg-3);border-radius:4px;padding:0 .25em;font-size:.9em}.md pre code{background:0 0;padding:0}.md blockquote{border-left:3px solid var(--line);color:var(--muted);padding-left:.6rem}table.field-diff{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12.5px}table.field-diff th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:.25rem .35rem;font-weight:500}table.field-diff th:first-child{width:28%}table.field-diff td{vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:.25rem .35rem}table.field-diff pre{white-space:pre-wrap;word-break:break-word;max-height:14rem;margin:0;font-size:12px;overflow:auto}.fd-before{background:color-mix(in srgb, var(--bad) 7%, transparent)}.fd-after{background:color-mix(in srgb, var(--ok) 8%, transparent)}.item-history{grid-template-columns:minmax(16rem,24rem) 1fr;height:100%;min-height:0;display:grid}.ih-list{border-right:1px solid var(--line);padding:.6rem .6rem 1rem;overflow:auto}.ih-title{margin:0 0 .5rem;font-size:15px}.ih-ops{margin:0;padding:0;list-style:none}.ih-op{text-align:left;white-space:normal;background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;padding:.4rem .5rem;display:flex}.ih-op.on{background:var(--accent-soft)}.ih-when{color:var(--muted);font-size:12px}.ih-who{font-size:13px}.ih-fields{font:11.5px var(--mono);overflow-wrap:anywhere}.ih-preview{min-width:0;padding:.6rem .9rem 1rem;overflow:auto}.ih-preview h3{margin:0;font-size:14px}.ih-preview h4{color:var(--muted);margin:.9rem 0 .4rem;font-size:13px}@media (width<=760px){.item-history{grid-template-columns:1fr}.ih-list{border-right:0;border-bottom:1px solid var(--line);max-height:40vh}}.sidebar:has(.ai-section){width:360px}.ai-section{flex-direction:column;height:100%;min-height:0;display:flex}.ai-section .section-head{gap:.5rem}.ai-section .section-head .row{gap:.1rem;min-width:0}.ai-section .section-head button{text-overflow:ellipsis;max-width:12rem;padding:.2em .45em;font-size:12px;overflow:hidden}.ai-log{flex-direction:column;flex:1;gap:.5rem;min-height:0;padding:.3rem .65rem .6rem;display:flex;overflow:auto}.ai-intro{flex-direction:column;align-items:flex-start;gap:.2rem;display:flex}.ai-example{white-space:normal;text-align:left;color:var(--accent)}.ai-msg{font-size:13.5px}.ai-msg.user{background:var(--accent-soft);border-radius:10px 10px 2px;align-self:flex-end;max-width:92%;padding:.35rem .6rem}.ai-msg.user p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.ai-msg.bot.streaming:after{content:"▍";color:var(--accent);animation:1s infinite pulse}.ai-note{color:var(--muted);margin:0}.ai-note.error{color:var(--bad)}.ai-tool{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:.3rem .5rem;font-size:12.5px}.ai-tool.awaiting{border-color:var(--warn);box-shadow:0 0 0 1px color-mix(in srgb, var(--warn) 40%, transparent)}.ai-tool.error .ai-tool-head>.small{color:var(--bad)}.ai-tool.done .ai-tool-head>.small{color:var(--ok)}.ai-tool.rejected .ai-tool-head>.small,.ai-tool.running .ai-tool-head>.small{color:var(--muted)}.ai-tool-head{align-items:center;gap:.35rem;display:flex}.ai-tool-head .mono{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.ai-approve{flex-direction:column;gap:.4rem;margin-top:.35rem;display:flex}.ai-approve p{margin:0}.ai-sure{color:var(--bad);align-items:center;gap:.35rem;display:flex}pre.ai-json{background:var(--code-bg);border:1px solid var(--line);white-space:pre-wrap;word-break:break-word;border-radius:6px;max-height:16rem;margin:.25rem 0 0;padding:.35rem .5rem;font-size:11.5px;overflow:auto}.ai-input{border-top:1px solid var(--line);background:var(--bg-2);flex-direction:column;gap:.35rem;padding:.45rem .65rem .6rem;display:flex}.ai-input textarea{resize:vertical;width:100%;min-height:3.2rem;font-size:13.5px}.ai-attach{color:var(--muted);flex-wrap:wrap;gap:.7rem;display:flex}.ai-attach label{align-items:center;gap:.25rem;display:inline-flex}.ai-settings .field input,.ai-settings .field select{width:100%}.ai-settings p{margin:.3rem 0 .6rem}.ai-settings .ai-connect{flex-direction:column;gap:.35rem;margin:.2rem 0 .8rem;display:flex}.ai-settings .ai-connect button{align-self:flex-start}.catalog{max-width:72rem;padding:1rem 1.2rem 2rem}.catalog-head{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.6rem;display:flex}.catalog-head h1{margin:0;font-size:20px}.catalog-head input{flex:1;min-width:12rem;max-width:28rem}.tag-filter,.api-tags{flex-wrap:wrap;gap:.3rem;margin:.4rem 0 .8rem;display:flex}.api-tags{margin:.3rem 0 0}button.tag{background:var(--bg-3);color:var(--muted);border-color:#0000;border-radius:999px;padding:.1em .6em;font-size:12px}button.tag.on{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.api-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);flex-direction:column;gap:.3rem;padding:.7rem .8rem;display:flex}.api-card p{margin:0}.api-name{text-align:left;white-space:normal;font-weight:600;text-decoration:none}.api-desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.api-links{flex-wrap:wrap;gap:.8rem;margin-top:.2rem;display:flex}.search-hit{align-items:flex-start}.hit-text{text-align:left;flex-direction:column;flex:1;min-width:0;display:flex}.hit-sub{text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.git-folder{flex-direction:column;gap:.1rem;min-width:0;display:flex}.git-path{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.git-branch select{flex:1;min-width:0;font-size:13px}.git-commit{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.git-commit .field,.git-commit input,.git-commit textarea{width:100%}.git-commit p{margin:0}.git-resolve{gap:.35rem;padding:0 .45rem .35rem 2.2rem}.git-commit textarea{resize:vertical;font-size:13px}.git-code{font:700 11px/1 var(--mono);min-width:1.7em;color:var(--warn)}.git-code.s-added{color:var(--ok)}.git-code.s-deleted,.git-code.s-conflict{color:var(--bad)}.git-log li{flex-direction:column;align-items:flex-start;gap:.05rem;padding:.25rem .45rem}.git-log .label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.git-diff-panel{flex-direction:column;gap:.6rem;padding:.6rem .9rem 2rem;display:flex;overflow:auto}.git-diff-block h3{margin:0 0 .25rem;font-weight:600}.git-diff{background:var(--code-bg);border:1px solid var(--line);border-radius:var(--radius);font:12.5px/1.45 var(--mono);white-space:pre;margin:0;padding:.5rem 0;overflow:auto}.git-diff span{padding:0 .75rem;display:block}.git-diff .add{background:color-mix(in srgb, var(--ok) 14%, transparent)}.git-diff .del{background:color-mix(in srgb, var(--bad) 14%, transparent)}.git-diff .hunk{color:var(--accent)}.git-diff .meta{color:var(--muted)}
