:root{--accent-h:290;--accent-c:.2;--radius-scale:1;--density:1;--ui-font:"IBM Plex Sans", system-ui, sans-serif;--mono-font:"IBM Plex Mono", ui-monospace, monospace;--r-xs:calc(4px * var(--radius-scale));--r-sm:calc(6px * var(--radius-scale));--r-md:calc(9px * var(--radius-scale));--r-lg:calc(14px * var(--radius-scale));--r-xl:calc(20px * var(--radius-scale));--row-h:calc(30px * var(--density));--ctrl-h:calc(34px * var(--density));--pad:calc(12px * var(--density));--pad-sm:calc(8px * var(--density));--accent:oklch(.55 var(--accent-c) var(--accent-h));--accent-strong:oklch(.49 var(--accent-c) var(--accent-h));--accent-soft:oklch(.55 var(--accent-c) var(--accent-h) / .13);--accent-line:oklch(.55 var(--accent-c) var(--accent-h) / .35);--on-accent:#fff;--m-get:oklch(60% .15 152);--m-post:oklch(66% .15 70);--m-put:oklch(60% .13 250);--m-patch:oklch(58% .17 305);--m-delete:oklch(58% .18 25);--m-other:oklch(60% .02 290);--ok:oklch(60% .14 152);--info:oklch(60% .13 250);--warn:oklch(70% .14 70);--err:oklch(58% .18 25)}[data-theme=light]{--bg:oklch(98.5% .003 290);--surface:oklch(100% 0 0);--surface-2:oklch(97.5% .004 290);--surface-3:oklch(96% .006 290);--border:oklch(91.5% .006 290);--border-strong:oklch(85% .01 290);--text:oklch(27% .012 290);--text-2:oklch(47% .014 290);--text-3:oklch(62% .012 290);--shadow-sm:0 1px 2px oklch(40% .02 290/.08), 0 1px 3px oklch(40% .02 290/.06);--shadow-md:0 4px 12px oklch(40% .03 290/.1), 0 2px 4px oklch(40% .02 290/.06);--shadow-lg:0 12px 32px oklch(35% .03 290/.16), 0 4px 8px oklch(40% .02 290/.06);--canvas-bg:oklch(97% .004 290);--canvas-dot:oklch(85% .01 290);--code-key:oklch(48% .16 280);--code-string:oklch(50% .13 150);--code-number:oklch(55% .15 55);--code-bool:oklch(55% .17 310);--code-null:oklch(60% .02 290);--code-punct:oklch(55% .012 290)}[data-theme=dark]{--bg:oklch(16.5% .012 290);--surface:oklch(20.5% .014 290);--surface-2:oklch(23.5% .016 290);--surface-3:oklch(27% .018 290);--border:oklch(30% .018 290);--border-strong:oklch(40% .022 290);--text:oklch(95% .004 290);--text-2:oklch(74% .012 290);--text-3:oklch(58% .014 290);--shadow-sm:0 1px 2px oklch(0% 0 0/.3), 0 1px 3px oklch(0% 0 0/.24);--shadow-md:0 4px 14px oklch(0% 0 0/.36), 0 2px 4px oklch(0% 0 0/.28);--shadow-lg:0 16px 40px oklch(0% 0 0/.5), 0 4px 10px oklch(0% 0 0/.34);--canvas-bg:oklch(14.5% .012 290);--canvas-dot:oklch(30% .018 290);--accent:oklch(.66 var(--accent-c) var(--accent-h));--accent-strong:oklch(.6 var(--accent-c) var(--accent-h));--accent-soft:oklch(.66 var(--accent-c) var(--accent-h) / .18);--code-key:oklch(78% .12 280);--code-string:oklch(78% .13 150);--code-number:oklch(81% .12 65);--code-bool:oklch(78% .13 312);--code-null:oklch(64% .02 290);--code-punct:oklch(62% .014 290)}*{box-sizing:border-box}.t-key{color:var(--code-key)}.t-str{color:var(--code-string)}.t-num{color:var(--code-number)}.t-bool{color:var(--code-bool)}.t-null{color:var(--code-null)}.t-punct{color:var(--code-punct)}.t-comment{color:var(--text-3);font-style:italic}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--ui-font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;font-size:14px;line-height:1.45}#app{height:100vh;overflow:hidden}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}a{color:inherit}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-3);background-clip:padding-box}::-webkit-scrollbar-track{background:0 0}.mono{font-family:var(--mono-font)}.focusable:focus-visible,input:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--accent-line);outline-offset:1px}.t{transition:background .14s,color .14s,border-color .14s,box-shadow .14s,transform .14s}.row-hover{cursor:default}.row-hover:hover{box-shadow:inset 0 0 0 2000px color-mix(in oklch, var(--text) 5%, transparent)}.row-actions{transition:opacity .12s}.row-hover:hover .row-actions{opacity:1!important}.app-shell{grid-template-rows:auto 1fr;height:100vh;display:grid}.app-body{min-height:0;display:flex}
