:root{--bg:#0b0f14;--header-bg:#0f1419;--panel:#121922;--border:#243044;--text:#e6edf3;--muted:#8b9cb3;--accent:#38bdf8;--accent-soft:#38bdf81f;--hover:#ffffff0f;--editor-bg:#0f1419;--editor-gutter:#0c1016;--editor-fg:#d4d4d8;--font-mono:ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, sans-serif}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}#root{min-height:100vh}.btn{font:inherit;border:1px solid var(--border);cursor:pointer;background:var(--panel);color:var(--text);border-radius:6px;padding:.4rem .75rem;font-size:.8125rem}.btn:hover:not(:disabled){background:var(--hover)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent-soft);color:var(--accent);border-color:#38bdf873}.btn.primary:hover:not(:disabled){background:#38bdf838}.btn.secondary{background:0 0}.layout{background:var(--bg);min-height:100vh;color:var(--text);flex-direction:column;display:flex}.layout-header{border-bottom:1px solid var(--border);background:var(--header-bg);flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;padding:.65rem 1.25rem;display:flex}.layout-brand{align-items:center;gap:.5rem;display:flex}.layout-logo{font-family:var(--font-mono);color:var(--accent);font-size:1.1rem;font-weight:700}.layout-title{font-size:1rem;font-weight:600}.layout-nav{flex-wrap:wrap;gap:.25rem .5rem;display:flex}.nav-link{color:var(--muted);border-radius:6px;padding:.35rem .65rem;font-size:.875rem;text-decoration:none}.nav-link:hover{color:var(--text);background:var(--hover)}.nav-link.active{color:var(--accent);background:var(--accent-soft)}.layout-main{box-sizing:border-box;flex:1;width:100%;max-width:1400px;margin:0 auto;padding:1rem 1.25rem 1.5rem}@media print{.layout-header{display:none}.layout-main{max-width:none;padding:0}}.tree-view{font-family:var(--font-mono);border:1px solid var(--border);background:var(--editor-bg);border-radius:8px;max-height:min(70vh,520px);padding:.75rem;font-size:.8125rem;line-height:1.5;overflow:auto}.tree-block{display:block}.tree-toggle{text-align:left;width:100%;color:inherit;cursor:pointer;font:inherit;background:0 0;border:none;border-radius:4px;align-items:baseline;gap:.25rem;padding:.15rem 0;display:flex}.tree-toggle:hover{background:#ffffff0d}.tree-row{padding:.1rem 0;position:relative}.tree-caret{width:1rem;color:var(--muted);font-size:.65rem;display:inline-block}.tree-key{color:#93c5fd}.tree-string{color:#86efac;word-break:break-all}.tree-null,.tree-meta{color:var(--muted)}.tree-primitive{color:#fcd34d}.tree-unknown{color:#fca5a5}.tree-img-pop{z-index:50;background:var(--panel);border:1px solid var(--border);pointer-events:none;border-radius:6px;max-width:min(320px,90vw);padding:4px;position:fixed;box-shadow:0 8px 24px #00000059}.tree-img-pop img{object-fit:contain;max-width:280px;max-height:200px;display:block}.graph-panel{border:1px solid var(--border);background:var(--editor-bg);border-radius:8px;overflow:hidden}.graph-panel canvas{display:block;width:100%!important}.graph-empty,.graph-truncate{color:var(--muted);margin:0;padding:.75rem;font-size:.875rem}.graph-truncate{border-bottom:1px solid var(--border);background:var(--accent-soft);color:var(--text)}.repair-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.repair-dialog{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.75rem;width:100%;max-width:720px;max-height:min(85vh,640px);padding:1.25rem;display:flex;box-shadow:0 16px 48px #00000059}.repair-dialog h2{margin:0;font-size:1.1rem}.repair-hint{color:var(--muted);margin:0;font-size:.875rem;line-height:1.45}.repair-label{color:var(--muted);font-size:.8rem}.repair-preview{background:var(--editor-bg);border:1px solid var(--border);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;border-radius:8px;flex:1;min-height:120px;margin:0;padding:.75rem;font-size:.8rem;overflow:auto}.repair-error{color:#f87171;margin:0;font-size:.9rem}.repair-actions{justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.page-title{margin:0 0 .35rem;font-size:1.35rem;font-weight:600}.page-lead{color:var(--muted);max-width:56rem;margin:0 0 1rem;font-size:.9rem;line-height:1.45}.banner{background:#f871711f;border:1px solid #f8717159;border-radius:8px;margin-bottom:.75rem;padding:.65rem .85rem;font-size:.875rem}.toolbar{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-bottom:.75rem;display:flex}.toolbar-group{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.toolbar-label{color:var(--muted);align-items:center;gap:.35rem;font-size:.8rem;display:flex}.select{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.25rem .4rem;font-size:.8rem}.toggle{color:var(--muted);cursor:pointer;align-items:center;gap:.35rem;font-size:.8rem;display:flex}.tabs{gap:.25rem;margin-bottom:.5rem;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;border-radius:6px 6px 0 0;padding:.4rem .85rem;font-size:.875rem}.tab:hover{color:var(--text);background:var(--hover)}.tab.active{color:var(--accent);background:var(--panel);border-color:var(--border)}.home-body{border:1px solid var(--border);background:var(--panel);border-radius:0 8px 8px;overflow:hidden}.panel-alt{min-height:200px}.panel-error{color:var(--muted);margin:0;padding:1rem;font-size:.9rem}@media print{.no-print{display:none!important}.home-body{border:none;overflow:visible}.cm-editor{max-height:none!important}}.converter-page{max-width:100%}.converter-actions{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:.75rem;display:flex}.converter-split{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=960px){.converter-split{grid-template-columns:1fr 1fr}}.converter-pane{min-width:0}.pane-title{color:var(--muted);margin:0 0 .35rem;font-size:.85rem;font-weight:600}.converter-output,.converter-preview{border:1px solid var(--border);background:var(--editor-bg);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;min-height:min(55vh,420px);max-height:min(55vh,420px);color:var(--editor-fg);border-radius:8px;margin:0;padding:.75rem;font-size:.78rem;overflow:auto}.converter-details{color:var(--muted);margin-top:1rem;font-size:.875rem}.converter-details summary{cursor:pointer;color:var(--accent)}.converter-preview{min-height:120px;max-height:240px;margin-top:.5rem}.jse-theme-dark{--jse-theme:dark;--jse-theme-color:#2f6dd0;--jse-theme-color-highlight:#467cd2;--jse-background-color:#1e1e1e;--jse-text-color:#d4d4d4;--jse-text-color-inverse:#4d4d4d;--jse-main-border:1px solid #4f4f4f;--jse-menu-color:#fff;--jse-modal-background:#2f2f2f;--jse-modal-overlay-background:#00000080;--jse-modal-code-background:#2f2f2f;--jse-tooltip-color:var(--jse-text-color);--jse-tooltip-background:#4b4b4b;--jse-tooltip-border:1px solid #737373;--jse-tooltip-action-button-color:inherit;--jse-tooltip-action-button-background:#737373;--jse-panel-background:#333;--jse-panel-background-border:1px solid #464646;--jse-panel-color:var(--jse-text-color);--jse-panel-color-readonly:#737373;--jse-panel-border:1px solid #3c3c3c;--jse-panel-button-color-highlight:#e5e5e5;--jse-panel-button-background-highlight:#464646;--jse-navigation-bar-background:#656565;--jse-navigation-bar-background-highlight:#7e7e7e;--jse-navigation-bar-dropdown-color:var(--jse-text-color);--jse-context-menu-background:#4b4b4b;--jse-context-menu-background-highlight:#595959;--jse-context-menu-separator-color:#595959;--jse-context-menu-color:var(--jse-text-color);--jse-context-menu-pointer-background:#737373;--jse-context-menu-pointer-background-highlight:#818181;--jse-context-menu-pointer-color:var(--jse-context-menu-color);--jse-key-color:#9cdcfe;--jse-value-color:var(--jse-text-color);--jse-value-color-number:#b5cea8;--jse-value-color-boolean:#569cd6;--jse-value-color-null:#569cd6;--jse-value-color-string:#ce9178;--jse-value-color-url:#ce9178;--jse-delimiter-color:#949494;--jse-edit-outline:2px solid var(--jse-text-color);--jse-selection-background-color:#464646;--jse-selection-background-inactive-color:#333;--jse-hover-background-color:#343434;--jse-active-line-background-color:#ffffff0f;--jse-search-match-background-color:#343434;--jse-collapsed-items-background-color:#333;--jse-collapsed-items-selected-background-color:#565656;--jse-collapsed-items-link-color:#b2b2b2;--jse-collapsed-items-link-color-highlight:#ec8477;--jse-search-match-color:#724c27;--jse-search-match-outline:1px solid #966535;--jse-search-match-active-color:#9f6c39;--jse-search-match-active-outline:1px solid #bb7f43;--jse-tag-background:#444;--jse-tag-color:#bdbdbd;--jse-table-header-background:#333;--jse-table-header-background-highlight:#424242;--jse-table-row-odd-background:#ffffff1a;--jse-input-background:#3d3d3d;--jse-input-border:var(--jse-main-border);--jse-button-background:gray;--jse-button-background-highlight:#7a7a7a;--jse-button-color:#e0e0e0;--jse-button-secondary-background:#494949;--jse-button-secondary-background-highlight:#5d5d5d;--jse-button-secondary-background-disabled:#9d9d9d;--jse-button-secondary-color:var(--jse-text-color);--jse-a-color:#55abff;--jse-a-color-highlight:#4387c9;--jse-svelte-select-background:#3d3d3d;--jse-svelte-select-border:1px solid #4f4f4f;--list-background:#3d3d3d;--item-hover-bg:#505050;--multi-item-bg:#5b5b5b;--input-color:#d4d4d4;--multi-clear-bg:#8a8a8a;--multi-item-clear-icon-color:#d4d4d4;--multi-item-outline:1px solid #696969;--list-shadow:0 2px 8px 0 #0006;--jse-color-picker-background:#656565;--jse-color-picker-border-box-shadow:#8c8c8c 0 0 0 1px}.json-editor-page{max-width:100%}.json-editor-host{border:1px solid var(--border);border-radius:8px;min-height:min(75vh,720px);overflow:hidden}.json-editor-host .jse-main{min-height:min(75vh,720px)}
