/* Estilos específicos Extractor de URLs */
.grid-layout { display: grid; grid-template-columns: 1fr 300px 1fr; gap: 2rem; }
textarea { width: 100%; height: 450px; padding: 1rem; border: 1px solid var(--border); border-radius: 12px; background: var(--bg); color: var(--text); font-family: inherit; resize: none; }
.panel-stats { margin-top: 0.5rem; font-size: 0.8rem; color: var(--text-muted); }
.settings-panel { background: var(--card); padding: 1.5rem; border-radius: 16px; border: 1px solid var(--border); display: flex; flex-direction: column; gap: 1.5rem; }
.options-grid { display: flex; flex-direction: column; gap: 0.75rem; }
.checkbox-label { display: flex; align-items: center; gap: 0.6rem; font-size: 0.85rem; cursor: pointer; }
select, input[type="text"] { width: 100%; padding: 0.75rem; border-radius: 8px; border: 1px solid var(--border); background: var(--bg); color: var(--text); }
.result-stats { display: flex; gap: 1rem; margin-top: 1.5rem; }
.stat-card { flex: 1; background: var(--bg); padding: 1rem; border-radius: 12px; text-align: center; border: 1px solid var(--border); }
.stat-label { display: block; font-size: 0.7rem; text-transform: uppercase; color: var(--text-muted); font-weight: 600; }
.stat-val { font-size: 1.5rem; font-weight: 700; color: var(--primary); }
.action-buttons { display: flex; flex-direction: column; gap: 0.75rem; }
button { padding: 0.85rem; border: none; border-radius: 10px; font-weight: 600; cursor: pointer; color: white; transition: opacity 0.2s; }
.btn-primary { background: var(--primary); }
.btn-secondary { background: var(--text-muted); }
.btn-danger { background: var(--danger); }
.btn-info { background: var(--info); }
.hidden { display: none; }
@media (max-width: 950px) { .grid-layout { grid-template-columns: 1fr; } .settings-panel { order: -1; } }
