#json-formatter textarea {
    display: block;
    width: 100%;
    min-height: 160px;
    padding: 10px 12px;
    resize: vertical;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    color: var(--text);
    font: 0.875rem/1.5 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

#json-formatter-results {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

#json-formatter-output {
    cursor: copy;
}

#json-formatter-stats {
    font-size: 0.8rem;
    color: var(--text-muted);
}

#json-formatter-message {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

#json-formatter-message.json-error {
    color: #ff8b8b;
}

#json-formatter button:disabled {
    opacity: 0.5;
    cursor: default;
}

#json-formatter textarea:focus-visible,
#json-formatter button:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 2px;
}
