.diff-layout { display: flex; flex-direction: column; gap: 20px; }
.diff-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }

/* Estilo Profissional de Diff */
.diff-container {
	background: #0f172a;
	border-radius: var(--conv-radius);
	border: 1px solid #334155;
	overflow: hidden;
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.85rem;
}

.diff-line {
	display: flex;
	border-bottom: 1px solid #1e293b;
	min-height: 24px;
	line-height: 1.5;
}

.line-num {
	width: 40px;
	padding: 0 10px;
	background: #1e293b;
	color: #64748b;
	text-align: right;
	user-select: none;
	flex-shrink: 0;
}

.line-content {
	padding: 0 15px;
	white-space: pre-wrap;
	word-break: break-all;
	width: 100%;
}

/* Cores de Alteração */
.line-added { background: #064e3b; color: #4ade80; }
.line-removed { background: #7f1d1d; color: #f87171; }
.line-changed { background: #1e293b; color: #e2e8f0; }

.diff-header {
	background: #1e293b;
	padding: 10px 20px;
	color: #94a3b8;
	font-size: 0.7rem;
	font-weight: 800;
	text-transform: uppercase;
	border-bottom: 2px solid var(--conv-primary);
}

.diff-legend {
	display: flex;
	gap: 20px;
	padding: 10px;
	font-size: 0.7rem;
	font-weight: 700;
}

.legend-item { display: flex; align-items: center; gap: 6px; }
.box { width: 12px; height: 12px; border-radius: 3px; }

@media (max-width: 600px) { .diff-inputs { grid-template-columns: 1fr; } }