.toolhub-json .toolhub-card { overflow: hidden; }
.toolhub-json__status { margin-bottom: 1rem; padding: .75rem .9rem; border: 1px solid var(--thub-border); border-left: 4px solid #667085; border-radius: 8px; background: var(--thub-surface-alt); color: var(--thub-text); font-weight: 650; }
.toolhub-json__status.is-valid { border-color: #a6f4c5; border-left-color: #079455; background: #ecfdf3; color: #05603a; }
.toolhub-json__status.is-invalid { border-color: #f2b8b5; border-left-color: var(--thub-error); background: var(--thub-error-soft); color: #7a271a; }
.toolhub-json__status.is-working { border-left-color: var(--thub-accent); background: var(--thub-accent-soft); }
.toolhub-json__toolbar { display: grid; grid-template-columns: minmax(150px, 220px) auto minmax(0, 1fr); gap: 1rem; align-items: end; margin-bottom: 1rem; }
.toolhub-json__sort { align-self: center; }
.toolhub-json__sort-help { margin: 0; }
.toolhub-json__views { display: inline-flex; max-width: 100%; margin-bottom: .75rem; padding: 3px; border-radius: 9px; background: #e9edf3; }
.toolhub-json__view { min-height: 40px; margin: 0; padding: .45rem .85rem; border: 0; border-radius: 7px; background: transparent; color: #3d4656; cursor: pointer; font: inherit; font-weight: 700; }
.toolhub-json__view.is-active { background: #fff; color: var(--thub-accent-dark); box-shadow: 0 1px 4px rgba(23, 32, 51, .16); }
.toolhub-json__view:focus-visible { outline: 3px solid rgba(23, 105, 224, .28); outline-offset: 2px; }
.toolhub-json__editor { min-height: 390px; resize: vertical; white-space: pre; overflow: auto; tab-size: 2; font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; font-size: .9rem; line-height: 1.55; }
.toolhub-json__tree-panel { min-height: 390px; max-height: 620px; overflow: auto; border: 1px solid #b8c2d1; border-radius: 9px; background: #fff; }
.toolhub-json__tree { min-width: 0; padding: 1rem; font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; font-size: .86rem; overflow-wrap: anywhere; }
.toolhub-json__tree details { margin-left: 1rem; }
.toolhub-json__tree > details { margin-left: 0; }
.toolhub-json__tree summary { padding: .2rem 0; cursor: pointer; }
.toolhub-json__tree-key { color: #7f56d9; font-weight: 700; }
.toolhub-json__tree-value--string { color: #067647; }
.toolhub-json__tree-value--number { color: #175cd3; }
.toolhub-json__tree-value--boolean { color: #b54708; }
.toolhub-json__tree-value--null { color: #667085; font-style: italic; }
.toolhub-json__tree-row { padding: .18rem 0 .18rem 1rem; }
.toolhub-json__tree-more { min-height: 36px; margin: .5rem 0 .5rem 1rem; padding: .4rem .7rem; font-size: .82rem; }
.toolhub-json__search { margin-top: 1rem; }
.toolhub-json__search-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: .65rem; }
.toolhub-json__actions { align-items: center; }
.toolhub-json__file-label { margin: 0; }
.toolhub-json__advanced { margin-top: 1.25rem; }
.toolhub-json__stats { margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid var(--thub-border); }
@media (max-width: 700px) {
	.toolhub-json__toolbar { grid-template-columns: minmax(0, 1fr); align-items: start; }
	.toolhub-json__search-row { grid-template-columns: minmax(0, 1fr); }
	.toolhub-json__editor, .toolhub-json__tree-panel { min-height: 320px; }
}
@media (max-width: 520px) {
	.toolhub-json__views { display: flex; }
	.toolhub-json__view { flex: 1 1 50%; }
}
