.json-viewer-container{font-family:Monaco,Menlo,Ubuntu Mono,monospace}.json-viewer-grid{display:grid;gap:1.5rem}@media (min-width:1024px){.json-viewer-grid{gap:2rem}}.json-panel{background:var(--card-bg);border:1px solid var(--card-border);border-radius:10px;box-shadow:0 2px 8px #0000000d;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.json-panel--alt{background:#f9fafb}.dark .json-panel--alt,body.dark .json-panel--alt{background:#0f172a}.json-square{width:100%;aspect-ratio:1/1;max-height:clamp(200px,45vh,520px);max-width:100%}.jv-theme .json-panel:hover{border-color:#007bff59;box-shadow:0 6px 16px #00000014}.jv-theme .json-panel:focus-within{border-color:#007bff;box-shadow:0 0 0 3px #007bff26,0 6px 16px #00000014}.json-viewer-container{transition:border-color .2s ease,box-shadow .2s ease}.jv-theme .json-viewer-container:focus-within,.jv-theme .json-viewer-container:hover{border-color:#007bff;box-shadow:inset 0 0 0 2px #007bff1f}.jv-btn{display:inline-block;width:100%;background:#007bff;color:#fff;border:1px solid #007bff33;border-radius:10px;padding:.7rem 1rem;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform .12s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease;box-shadow:0 4px 12px #007bff2e}.jv-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px #007bff47;background:#0069d9}.jv-btn:active{transform:translateY(0)}.jv-btn:disabled{opacity:.6;cursor:not-allowed}.json-tree-node{transition:all .2s ease;flex-wrap:wrap}.json-tree-node:hover{background-color:#3b82f60d;border-radius:4px}.json-key{color:#7c3aed;font-weight:600}.json-string{color:#059669}.json-number{color:#2563eb}.json-boolean{color:#dc2626}.json-null{font-style:italic}.json-bracket,.json-null{color:#6b7280}.json-toggle-btn{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;border:none;background:#0000;cursor:pointer;color:#6b7280;transition:all .2s ease;border-radius:2px}.json-toggle-btn:hover{background-color:#3b82f61a;color:#2563eb}.json-search-highlight{background-color:#fef3c7;padding:1px 2px;border-radius:2px;font-weight:600}.json-viewer-container,.json-viewer-container pre{word-break:break-word;overflow-wrap:break-word;line-height:1.5}.json-viewer-container pre{white-space:pre-wrap}.json-tree-node :is(.json-boolean,.json-key,.json-null,.json-number,.json-string){word-break:break-word;overflow-wrap:break-word;white-space:inherit}.json-table{border-collapse:collapse;width:100%}.json-table th{background-color:#f9fafb;border-bottom:2px solid #e5e7eb;text-align:left;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.json-table td,.json-table th{padding:12px;color:#374151;font-size:.875rem}.json-table td{border-bottom:1px solid #e5e7eb}.json-table tr:hover{background-color:#f9fafb}.json-table .path-cell{font-family:monospace;color:#6b7280}.json-table .key-cell{color:#7c3aed;font-weight:600}.json-table .value-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.json-table .type-cell{color:#059669;font-weight:500;font-size:.75rem;text-transform:uppercase}.layout-container{max-width:1400px;margin:0 auto;padding:20px}.toolbar-section{justify-content:space-between;gap:20px;margin-bottom:30px;padding:20px;background:#f8f9fa;border-radius:12px;border:1px solid #e9ecef}.toolbar-group,.toolbar-section{display:flex;align-items:center;flex-wrap:wrap}.toolbar-group{gap:10px}.main-content{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px;align-items:start}@media (max-width:1024px){.main-content{grid-template-columns:1fr}.toolbar-section{flex-direction:column;align-items:stretch}}.editor-panel,.viewer-panel{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:8px}.collapse-controls,.search-controls,.view-controls{display:flex;align-items:center;gap:10px}.json-viewer{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:20px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.5;overflow-x:auto}.json-key{color:#881391;font-weight:700}.json-string{color:#c41a16}.json-boolean,.json-number{color:#1c00cf}.json-null{color:gray}