.diff-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-bottom: var(--spacing-lg);
    background-color: var(--color-light-gray);
    padding: 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
}

.diff-controls select {
    padding: 0.6rem;
    font-size: 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    background-color: var(--color-white);
    color: var(--color-text);
}

[data-theme="dark"] .diff-controls {
    background-color: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .diff-controls select {
    background-color: #2a2a2a;
}

.diff-input-layout {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
}

@media (min-width: 800px) {
    .diff-input-layout {
        flex-direction: row;
        align-items: stretch;
    }
}

.editor-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#text-original, #text-modified {
    width: 100%;
    height: 250px;
    padding: var(--spacing-md);
    font-size: 1rem;
    font-family: monospace;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    background-color: var(--color-white);
    color: var(--color-text);
    resize: vertical;
    white-space: pre;
    overflow-wrap: normal;
    overflow-x: auto;
}

[data-theme="dark"] #text-original, [data-theme="dark"] #text-modified {
    background-color: var(--color-light-gray);
}

.diff-output-box {
    width: 100%;
    min-height: 200px;
    padding: var(--spacing-md);
    font-size: 1.05rem;
    font-family: monospace;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    background-color: #f8f9fa;
    color: var(--color-text);
    white-space: pre-wrap;
    word-break: break-word;
    overflow-y: auto;
    line-height: 1.6;
}

[data-theme="dark"] .diff-output-box {
    background-color: #1a1a1a;
}

.legend-item {
    display: inline-block;
    margin-right: 15px;
}

.diff-added {
    background-color: #e6ffed;
    color: #1e7e34;
    text-decoration: none;
    font-weight: bold;
    border-radius: 3px;
}

.diff-removed {
    background-color: #ffeef0;
    color: #d73a49;
    text-decoration: line-through;
    opacity: 0.8;
    border-radius: 3px;
}

[data-theme="dark"] .diff-added {
    background-color: rgba(30, 126, 52, 0.3);
    color: #81c784;
}

[data-theme="dark"] .diff-removed {
    background-color: rgba(211, 47, 47, 0.3);
    color: #ff8a80;
}