.navbar[data-v-555a9ef6]{background:var(--surface);border-bottom:1px solid var(--border-light);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:200;transition:background .3s ease,border-color .3s ease}.nav-container[data-v-555a9ef6]{max-width:1280px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:56px;gap:.5rem}.nav-logo[data-v-555a9ef6]{text-decoration:none;font-weight:700;font-size:1rem;color:var(--accent);white-space:nowrap}.logo-text[data-v-555a9ef6]{letter-spacing:-.02em}.theme-toggle[data-v-555a9ef6]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--surface-hover);border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);transition:all .2s ease;flex-shrink:0}.theme-toggle[data-v-555a9ef6]:hover{color:var(--accent);background:var(--accent-light);border-color:var(--accent)}.nav-toggle[data-v-555a9ef6]{display:none;background:transparent;border:none;color:var(--text);padding:.25rem}.nav-links[data-v-555a9ef6]{display:flex;gap:.25rem;list-style:none;margin:0;padding:0;overflow-x:auto;scrollbar-width:none}.nav-links[data-v-555a9ef6]::-webkit-scrollbar{display:none}.nav-links a[data-v-555a9ef6]{display:block;padding:.5rem .875rem;font-size:.875rem;font-weight:500;color:var(--text-muted);text-decoration:none;border-radius:var(--radius-sm);transition:all .2s ease;white-space:nowrap}.nav-links a[data-v-555a9ef6]:hover{color:var(--accent);background:var(--accent-light)}.nav-links a.router-link-exact-active[data-v-555a9ef6]{color:var(--accent);background:var(--accent-light);font-weight:600}@media(max-width:768px){.nav-toggle[data-v-555a9ef6]{display:flex;align-items:center;justify-content:center}.nav-links[data-v-555a9ef6]{display:none;position:absolute;top:56px;left:0;right:0;flex-direction:column;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow);padding:.5rem;gap:.125rem}.nav-links.open[data-v-555a9ef6]{display:flex}.nav-links a[data-v-555a9ef6]{padding:.75rem 1rem}}.app-layout[data-v-66f8a9a0]{min-height:100vh;display:flex;flex-direction:column}.site-footer[data-v-66f8a9a0]{margin-top:auto;padding:2.5rem 1.5rem 1.5rem;background:var(--surface);border-top:1px solid var(--border-light);transition:background .3s ease,border-color .3s ease}.footer-content[data-v-66f8a9a0]{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 3fr;gap:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border-light)}.footer-brand[data-v-66f8a9a0]{max-width:300px}.footer-logo[data-v-66f8a9a0]{font-size:1.125rem;font-weight:700;color:var(--accent);text-decoration:none;letter-spacing:-.02em}.footer-tagline[data-v-66f8a9a0]{margin:.5rem 0 0;font-size:.8125rem;color:var(--text-muted);line-height:1.6}.footer-links[data-v-66f8a9a0]{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.footer-col h4[data-v-66f8a9a0]{font-size:.8125rem;font-weight:700;color:var(--text);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.footer-col nav[data-v-66f8a9a0]{display:flex;flex-direction:column;gap:.5rem}.footer-col a[data-v-66f8a9a0]{font-size:.8125rem;color:var(--text-muted);text-decoration:none;transition:color .2s ease}.footer-col a[data-v-66f8a9a0]:hover{color:var(--accent)}.footer-bottom[data-v-66f8a9a0]{max-width:1280px;margin:1.5rem auto 0;text-align:center}.footer-bottom p[data-v-66f8a9a0]{margin:0;font-size:.75rem;color:var(--text-subtle)}.footer-note[data-v-66f8a9a0]{margin-top:.25rem!important;font-style:italic}@media(max-width:768px){.footer-content[data-v-66f8a9a0]{grid-template-columns:1fr;gap:1.5rem}.footer-links[data-v-66f8a9a0]{grid-template-columns:repeat(2,1fr);gap:1.5rem}.footer-brand[data-v-66f8a9a0]{max-width:none}}@media(max-width:480px){.footer-links[data-v-66f8a9a0]{grid-template-columns:1fr}}:root{--bg: #f8fafc;--bg-gradient: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 50%, #e2e8f0 100%);--surface: #ffffff;--surface-hover: #f8fafc;--surface-elevated: #ffffff;--border: #e2e8f0;--border-light: #f1f5f9;--text: #0f172a;--text-muted: #64748b;--text-subtle: #94a3b8;--accent: #6366f1;--accent-hover: #4f46e5;--accent-light: #eef2ff;--add: #22c55e;--add-bg: rgba(34, 197, 94, .12);--remove: #ef4444;--remove-bg: rgba(239, 68, 68, .12);--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .05);--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--diff-removed-bg: #fecaca;--diff-removed-text: #991b1b;--diff-removed-border: #dc2626;--diff-added-bg: #bbf7d0;--diff-added-text: #166534;--diff-added-border: #22c55e;--json-null: #6b7280;--json-bool: #8b5cf6;--json-num: #3b82f6;--json-str: #14b8a6;--json-key: #6366f1;--loading-bg: rgba(99, 102, 241, .1)}[data-theme=dark]{--bg: #0f172a;--bg-gradient: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #1e293b 100%);--surface: #1e293b;--surface-hover: #334155;--surface-elevated: #1e293b;--border: #334155;--border-light: #1e293b;--text: #f1f5f9;--text-muted: #94a3b8;--text-subtle: #64748b;--accent: #818cf8;--accent-hover: #6366f1;--accent-light: rgba(99, 102, 241, .15);--add: #4ade80;--add-bg: rgba(74, 222, 128, .12);--remove: #f87171;--remove-bg: rgba(248, 113, 113, .12);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -2px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -4px rgba(0, 0, 0, .2);--diff-removed-bg: rgba(248, 113, 113, .25);--diff-removed-text: #fca5a5;--diff-removed-border: #f87171;--diff-added-bg: rgba(74, 222, 128, .25);--diff-added-text: #86efac;--diff-added-border: #4ade80;--json-null: #9ca3af;--json-bool: #a78bfa;--json-num: #60a5fa;--json-str: #2dd4bf;--json-key: #818cf8;--loading-bg: rgba(99, 102, 241, .15)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg-gradient);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease}#app{min-height:100vh}button{font-family:var(--font-sans);cursor:pointer;border:none;border-radius:var(--radius-sm);font-weight:500}textarea{font-family:var(--font-mono);resize:vertical}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--accent-light);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--surface-hover) 25%,var(--border-light) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all .25s ease}.slide-enter-from{opacity:0;transform:translateY(10px)}.slide-leave-to{opacity:0;transform:translateY(-10px)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-subtle)}.empty-state svg{margin-bottom:1rem;opacity:.4}.empty-state p{margin:0;font-size:.875rem}.tree-view{font-family:var(--font-mono);font-size:.8125rem;line-height:1.6;padding:1rem 1.25rem;background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:auto;max-height:60vh}.tree-node{padding-left:1.5rem;position:relative}.tree-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:.25rem}.tree-toggle:before{content:"▼";font-size:.6rem;color:var(--text-subtle);transition:transform .15s;display:inline-block;width:12px}.tree-toggle.collapsed:before{transform:rotate(-90deg)}.tree-summary{color:var(--text-subtle);font-style:italic;margin-left:.25rem}.tree-key{color:var(--json-key)}.tree-null{color:var(--json-null)}.tree-bool{color:var(--json-bool)}.tree-num{color:var(--json-num)}.tree-str{color:var(--json-str)}.tree-bracket{color:var(--text-muted)}
