/* JSON Formatter — Theme: Cyan (#06B6D4) */
:root { --accent: #06B6D4; --accent-dim: rgba(6,182,212,0.15); --accent-glow: rgba(6,182,212,0.3); }
.accent-text { color: var(--accent); }

.json-toolbar { display: flex; gap: var(--space-2); margin-bottom: var(--space-4); flex-wrap: wrap; align-items: center; }
.indent-select { margin-left: auto; }
.indent-select .input-field { width: 120px; }

.json-editor-wrap { position: relative; }
.json-editor {
  width: 100%; min-height: 400px; font-family: var(--font-mono); font-size: var(--text-sm);
  line-height: 1.6; padding: var(--space-4); background: var(--bg-secondary); border: 2px solid var(--border-medium);
  border-radius: var(--radius-lg); color: var(--text-primary); resize: vertical; outline: none;
  tab-size: 4; white-space: pre; overflow-x: auto;
}
.json-editor:focus { border-color: var(--accent); box-shadow: 0 0 0 4px var(--accent-dim); }
.json-editor::placeholder { color: var(--text-muted); }

.json-status { margin-top: var(--space-2); font-size: var(--text-sm); font-family: var(--font-mono); padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm); }
.json-status.valid { color: #22C55E; background: rgba(34,197,94,0.1); }
.json-status.invalid { color: #EF4444; background: rgba(239,68,68,0.1); }
.json-status.info { color: var(--accent); background: var(--accent-dim); }

.tree-section h2 { font-size: var(--text-xl); margin-bottom: var(--space-4); }
.tree-container { font-family: var(--font-mono); font-size: var(--text-sm); line-height: 1.8; max-height: 500px; overflow-y: auto; }
.tree-key { color: #EC4899; }
.tree-string { color: #22C55E; }
.tree-number { color: #F59E0B; }
.tree-boolean { color: #8B5CF6; }
.tree-null { color: var(--text-muted); }
.tree-toggle { cursor: pointer; user-select: none; padding: 0 4px; color: var(--text-muted); }
.tree-toggle:hover { color: var(--accent); }
.tree-branch { padding-left: 20px; }
.tree-branch.collapsed { display: none; }

@media (max-width: 768px) { .json-editor { min-height: 250px; font-size: var(--text-xs); } }
