.header{display:flex;align-items:center;gap:var(--space-4);height:48px;padding:0 var(--space-4);background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0}.logo{display:flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:20px;white-space:nowrap}.logo>.btn-icon{color:var(--accent)}.logo-accent{color:var(--accent)}.logo-tagline{font-weight:400;font-size:12px;color:var(--muted);padding-left:var(--space-3);border-left:1px solid var(--border)}@media(max-width:960px){.logo-tagline{display:none}}.search-box{flex:1;max-width:400px;margin:0 auto;text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel2);color:var(--muted)}.header-actions{display:flex;gap:var(--space-2)}.header-actions button{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel2);color:var(--text);cursor:pointer}.btn-icon{flex-shrink:0}.header-actions button:hover:not(:disabled){border-color:var(--blue)}.header-actions button:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.header-actions button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.header-actions button.primary:hover:not(:disabled){border-color:var(--accent);opacity:.9}.header-actions button.dim{background:transparent;border-color:transparent;color:var(--muted)}.header-actions button.dim:hover:not(:disabled){border-color:var(--border);color:var(--text)}.theme-toggle{display:inline-flex;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel2);overflow:hidden}.theme-toggle .theme-seg{display:inline-flex;align-items:center;justify-content:center;width:30px;padding:var(--space-1) 0;border:none;border-radius:0;background:transparent;color:var(--muted);cursor:pointer}.theme-toggle .theme-seg:hover{color:var(--text)}.theme-toggle .theme-seg-active{background:var(--accent);color:var(--on-accent)}.theme-toggle .theme-seg:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.mobile-tab-bar{position:sticky;top:0;z-index:10;background:var(--panel);border-bottom:1px solid var(--border)}.mobile-tab{position:relative;flex:1;padding:var(--space-2) 0;border:none;background:none;color:var(--muted);font-size:13px;border-bottom:2px solid transparent}.mobile-tab-active{color:var(--text);border-bottom-color:var(--accent)}.mobile-tab-badge{position:absolute;top:4px;right:calc(50% - 22px);width:6px;height:6px;border-radius:50%;background:var(--error)}.header-actions button:disabled{opacity:.5;cursor:default}.repair-highlight{border-color:var(--amber)!important;color:var(--amber)!important}.tool-highlight{border-color:var(--accent)!important;animation:tool-highlight-pulse 1.4s ease-in-out 2}@keyframes tool-highlight-pulse{0%,to{box-shadow:0 0 #4cc38a80}50%{box-shadow:0 0 0 4px #4cc38a40}}.menu-container{position:relative}.menu-dropdown{position:absolute;top:calc(100% + var(--space-1));right:0;z-index:20;display:flex;flex-direction:column;min-width:200px;padding:var(--space-1);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--panel);box-shadow:0 8px 24px #00000040}.menu-dropdown-left{right:auto;left:0}.menu-dropdown button[role=menuitem]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:none;background:none;color:var(--text);text-align:left;border-radius:var(--radius-sm);font-size:13px}.menu-dropdown button[role=menuitem]:hover:not(:disabled){background:var(--panel2)}.menu-dropdown button[role=menuitem]:disabled{opacity:.5;cursor:default}.menu-shortcut{color:var(--muted);font-size:11px}.menu-separator{height:1px;margin:var(--space-1) 0;background:var(--border)}.menu-label{padding:var(--space-1) var(--space-3);color:var(--muted);font-size:11px;text-transform:uppercase}.menu-radio-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);font-size:13px;color:var(--text);cursor:pointer}.toast-stack{position:fixed;bottom:40px;right:var(--space-4);z-index:50;display:flex;flex-direction:column;gap:var(--space-2)}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:13px;box-shadow:0 8px 24px #00000040}.toast-error{border-color:var(--error);color:var(--error)}.toast-dismiss{border:none;background:none;color:inherit;cursor:pointer;font-size:12px}.pwa-update-toast{bottom:auto;top:var(--space-4);left:var(--space-4);right:auto}.pwa-update-toast .toast-dismiss{padding:var(--space-1) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--accent);color:var(--bg);font-size:12px}.pane{height:100%;padding:var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-mono)}.inspector-pane{padding:0;display:flex;flex-direction:column}.inspector-body{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4)}.inspector-card{background:var(--panel2);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3)}.inspector-card h3{margin:0 0 var(--space-2);font-size:12px;text-transform:uppercase;color:var(--muted);font-family:var(--font-ui)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:2px}.breadcrumb-segment{color:var(--blue);background:none;border:none;padding:2px 4px;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-mono);font-size:13px}.breadcrumb-segment:hover{background:var(--panel)}.breadcrumb-segment:focus-visible,.pane-toolbar button:focus-visible,.pane-toolbar select:focus-visible,.details-list dd button:focus-visible,.preview-long-string button:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.breadcrumb-sep{color:var(--muted);margin:0 2px}.preview-color{display:flex;align-items:center;gap:var(--space-2)}.color-swatch{width:20px;height:20px;border-radius:var(--radius-sm);border:1px solid var(--border);display:inline-block}.preview-image img{max-height:200px;max-width:100%;border-radius:var(--radius-sm)}.preview-date{font-size:13px;line-height:1.6;display:flex;flex-direction:column;gap:2px}.date-relative{font-size:15px;font-weight:600;color:var(--amber)}.date-unix-badge{align-self:flex-start;margin-top:var(--space-1);padding:2px 6px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel);color:var(--amber);font-size:11px}.preview-image-meta{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2);color:var(--muted);font-size:12px}.preview-image-failed{display:flex;flex-direction:column;gap:var(--space-2);font-size:13px;color:var(--muted)}.preview-image-meta a,.preview-image-failed a{color:var(--accent)}.preview-embedded-json,.preview-long-string{display:flex;flex-direction:column;gap:var(--space-2);font-size:13px}.preview-embedded-json button,.preview-long-string button{align-self:flex-start;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:12px;cursor:pointer}.details-list{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-3);margin:0;font-size:13px}.details-list dt{color:var(--muted)}.details-list dd{margin:0;overflow-wrap:anywhere}.details-list dd button{background:none;border:none;padding:0;margin:0;color:var(--blue);font:inherit;text-align:left;cursor:pointer}.details-list dd button:hover{text-decoration:underline}.precision-note{margin:var(--space-2) 0 0;color:var(--amber);font-size:12px}.raw-pane{position:relative;padding:0;overflow:hidden;display:flex;flex-direction:column}.pane-toolbar{display:flex;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-3);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 8%,var(--panel2));flex-shrink:0}.pane-toolbar .menu-container{flex-shrink:0}.pane-toolbar button,.pane-toolbar select{flex-shrink:0;white-space:nowrap;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:12px}.pane-toolbar button{display:inline-flex;align-items:center;gap:var(--space-1);cursor:pointer}.pane-toolbar button:hover:not(:disabled){border-color:var(--blue)}.pane-toolbar button:disabled{opacity:.5;cursor:default}.pane-toolbar-tight .btn-label{display:none}.cm-host{position:relative;flex:1;min-height:0;overflow:auto}.cm-host .cm-editor{height:100%}.raw-pane-empty-overlay{position:absolute;inset:0;pointer-events:none;background:transparent}.raw-pane-empty-overlay .raw-pane-empty-actions{display:flex;gap:var(--space-2);pointer-events:auto}.raw-pane-banner{flex-shrink:0;padding:var(--space-2) var(--space-4);background:var(--panel2);border-bottom:1px solid var(--border);color:var(--text);font-size:12px}.drop-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#0006;color:#fff;font-size:18px;pointer-events:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted-text{color:var(--muted)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100%;color:var(--muted)}.empty-state button{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel2);color:var(--text);cursor:pointer}.empty-state button:hover:not(:disabled){border-color:var(--blue)}.raw-pane-empty-overlay{font-family:var(--font-ui);text-align:center;padding:0 var(--space-4)}.hero-brand{display:flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:26px;color:var(--text)}.hero-brand .btn-icon{color:var(--accent)}.hero-tagline{margin:0;font-size:14px;color:var(--text)}.tree-pane{display:flex;flex-direction:column;padding:0}.tree-error-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--panel2);border-bottom:1px solid var(--error);color:var(--error);font-size:12px;flex-shrink:0}.tree-error-banner button{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel2);color:var(--text);font-size:12px}.tree-empty,.inspector-empty{flex:1;font-family:var(--font-ui);text-align:center;padding:var(--space-4)}.tree-empty p,.inspector-empty p{margin:0}.empty-state-title{font-size:22px;font-weight:700;color:var(--text);user-select:none}.tree-scroll{flex:1;overflow:auto;outline:none}.tree-row{display:flex;align-items:center;height:26px;line-height:26px;white-space:nowrap;cursor:pointer;font-size:13px}.tree-row:hover{background:var(--panel2)}.tree-row-selected{background:var(--sel)}.tree-gutter{flex-shrink:0;text-align:right;color:var(--muted);padding-left:var(--space-2);padding-right:var(--space-2);box-sizing:content-box;user-select:none}.tree-indent{flex-shrink:0}.tree-toggle{flex-shrink:0;width:14px;text-align:center;color:var(--muted);user-select:none}.tree-key{color:var(--blue);margin-right:var(--space-1);flex-shrink:0}.tree-array-index{color:var(--muted)}.tree-value{overflow:hidden;text-overflow:ellipsis;margin-right:var(--space-2)}.tree-value-string{color:var(--accent)}.tree-value-number{color:var(--amber)}.tree-value-boolean,.tree-value-null{color:var(--pink)}.tree-value-object,.tree-value-array{color:var(--muted)}.tree-type-badge{display:none;margin-left:auto;color:var(--muted);font-size:11px;padding-right:var(--space-3);flex-shrink:0}.tree-row-selected .tree-type-badge{display:inline}.status-bar{display:flex;align-items:center;justify-content:space-between;height:28px;padding:0 var(--space-4);background:var(--panel);border-top:1px solid var(--border);font-size:12px;color:var(--muted);flex-shrink:0}.status-left{display:flex;align-items:center;gap:var(--space-3)}.status-privacy{display:flex;align-items:center;gap:var(--space-2)}.status-privacy-link{color:var(--blue)}.status-privacy-link:hover{text-decoration:underline}.status-valid{color:var(--accent)}.status-invalid{color:var(--error)}.status-parsing{color:var(--amber)}.status-parse-ms{color:var(--panel);cursor:default}.status-parse-ms::selection{color:var(--text);background:var(--sel)}.search-overlay{position:fixed;inset:0;z-index:60;display:flex;justify-content:center;padding-top:15vh;background:#0006}.search-palette{width:min(560px,90vw);max-height:60vh;display:flex;flex-direction:column;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--panel);box-shadow:0 16px 48px #00000059;overflow:hidden}.search-input{padding:var(--space-3) var(--space-4);border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);font-family:var(--font-mono);font-size:14px;outline:none}.search-empty{padding:var(--space-4)}.search-results{list-style:none;margin:0;padding:var(--space-1);overflow-y:auto}.search-result{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;font-size:13px}.search-result-active{background:var(--sel)}.search-result-path{color:var(--muted);font-size:11px}.search-result-text{color:var(--text);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-text mark{background:var(--amber);color:var(--bg);border-radius:2px}.search-footer{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);color:var(--muted);font-size:11px}.app-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-columns{display:flex;flex:1;min-height:0}.col{min-width:0;overflow:auto;background:var(--panel)}.col-raw{min-width:220px}.col-tree{flex:1;background:var(--bg)}.col-inspector{min-width:280px}.resizer{width:4px;cursor:col-resize;background:var(--border);flex-shrink:0}.resizer:hover{background:var(--blue)}.mobile-tab-bar,.inspector-overlay-backdrop{display:none}@media(min-width:900px)and (max-width:1199px){.col-inspector{display:block;position:fixed;top:48px;right:0;bottom:28px;width:min(360px,90vw)!important;transform:translate(100%);transition:transform .2s ease;z-index:45;box-shadow:-8px 0 24px #0000004d}.col-inspector.inspector-overlay-visible{transform:translate(0)}.inspector-overlay-backdrop{display:block;position:fixed;inset:48px 0 28px;z-index:44;background:#00000040}}@media(max-width:899px){.mobile-tab-bar{display:flex}.app-columns{flex-direction:column}.col-raw,.col-inspector{width:100%!important;min-width:0;flex:1}.resizer,.app-columns[data-active-tab=raw] .col-tree,.app-columns[data-active-tab=raw] .col-inspector,.app-columns[data-active-tab=explorer] .col-raw,.app-columns[data-active-tab=explorer] .col-inspector,.app-columns[data-active-tab=inspector] .col-raw,.app-columns[data-active-tab=inspector] .col-tree{display:none}.col-inspector{position:static;transform:none;width:100%}.inspector-overlay-backdrop{display:none}}
