/* Estilos específicos Generador de Nombres */
.tool-layout { display: grid; grid-template-columns: 300px 1fr; gap: 2.5rem; }
.config-sidebar { background: var(--card); padding: 1.5rem; border-radius: 16px; border: 1px solid var(--border); height: fit-content; }
.sidebar-group { margin-bottom: 1.25rem; }
.sidebar-group label { display: block; font-weight: 600; font-size: 0.85rem; margin-bottom: 0.4rem; }
input[type="text"], select { width: 100%; padding: 0.75rem; border-radius: 8px; border: 1px solid var(--border); background: var(--bg); color: var(--text); }
.btn-block { width: 100%; margin-top: 0.5rem; padding: 0.8rem; border: none; border-radius: 8px; font-weight: 700; cursor: pointer; transition: opacity 0.2s; }
.btn-primary { background: var(--primary); color: white; }
.btn-secondary { background: var(--text-muted); color: white; }
.results-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 1.5rem; }
.name-card { background: var(--card); border: 1px solid var(--border); border-radius: 16px; padding: 1.5rem; text-align: center; transition: transform 0.2s; box-shadow: var(--shadow); }
.name-card:hover { transform: translateY(-3px); border-color: var(--primary); }
.brand-name { display: block; font-size: 1.4rem; font-weight: 800; margin-bottom: 0.5rem; color: var(--primary); }
.premium-font { font-family: 'Playfair Display', serif; }
.score { font-size: 0.75rem; font-weight: 700; background: #f59e0b; color: white; padding: 2px 8px; border-radius: 20px; }
.domain { display: block; font-size: 0.8rem; color: var(--success); margin: 0.5rem 0; font-weight: 600; }
.copy-btn { padding: 0.4rem 1rem; font-size: 0.8rem; border-radius: 6px; background: var(--bg); border: 1px solid var(--border); color: var(--text); cursor: pointer; }
.empty-state { grid-column: 1/-1; text-align: center; padding: 3rem; color: var(--text-muted); }
@media (max-width: 900px) { .tool-layout { grid-template-columns: 1fr; } .config-sidebar { order: -1; } }
