/* Estilos específicos de la herramienta */
.grid-layout { display: grid; gap: 2rem; }
label { display: block; font-weight: 600; margin-bottom: 0.5rem; }
textarea { width: 100%; height: 200px; padding: 1rem; border: 1px solid var(--border); border-radius: 12px; background: var(--bg); color: var(--text); font-family: inherit; resize: vertical; }
.controls-group { background: var(--card); padding: 1.5rem; border-radius: 12px; border: 1px solid var(--border); display: flex; flex-wrap: wrap; gap: 1.5rem; align-items: flex-end; }
.control-item { flex: 1; min-width: 200px; }
select, input[type="text"] { width: 100%; padding: 0.625rem; border: 1px solid var(--border); border-radius: 8px; background: var(--bg); color: var(--text); }
.button-actions { display: flex; gap: 1rem; margin-top: 1rem; }
.button-actions button { flex: 1; padding: 0.75rem; border: none; border-radius: 8px; font-weight: 600; cursor: pointer; transition: opacity 0.2s; color: white; }
.btn-primary { background: var(--primary); }
.btn-secondary { background: var(--text-muted); }
.btn-success { background: var(--success); }
.btn-info { background: var(--info); }
.result-stats { display: flex; gap: 1rem; margin: 1.5rem 0; }
.stat-card { flex: 1; background: var(--bg); padding: 1rem; border-radius: 10px; text-align: center; border: 1px solid var(--border); }
.stat-label { display: block; font-size: 0.75rem; text-transform: uppercase; color: var(--text-muted); }
.stat-value { font-size: 1.5rem; font-weight: 700; color: var(--primary); }
.hidden { display: none; }
