/* Estilos de las páginas «Más allá de Excel» y «Macros en vídeo» (2026-10-24).
   Aparte de styles.css para no tocar la hoja que comparten las demás páginas. */

/* 8 tarjetas: en 3 columnas la última fila quedaba coja; en pantallas anchas, 4. */
@media (min-width: 1100px) {
    .services-grid.services-grid--cuatro {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* .prose ul pone viñeta y sangría: aquí son etiquetas, no una lista de texto. */
.prose .herramientas-lista {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 18px 0 22px;
    padding: 0;
    list-style: none;
}
.prose .herramientas-lista li {
    margin: 0;
    line-height: 1.4;
    white-space: nowrap;
    padding: 6px 14px;
    border-radius: 999px;
    background: var(--bg-alt);
    border: 1px solid rgba(37, 99, 235, 0.18);
    font-size: 0.92rem;
    font-weight: 500;
}

.video-lista {
    display: grid;
    gap: 56px;
    max-width: 980px;
    margin: 0 auto;
}
.video-item {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 36px;
    align-items: start;
}
.video-item video {
    width: 100%;
    /* height:auto: sin esto manda el atributo height="1280" y el reproductor
       salía el doble de alto, con franjas negras. */
    height: auto;
    aspect-ratio: 9 / 16;
    border-radius: 18px;
    background: #0b1220;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22);
    display: block;
}
.video-num {
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.85rem;
    color: var(--primary);
    letter-spacing: 0.08em;
}
.video-item h3 {
    margin: 6px 0 10px;
    font-size: 1.45rem;
}
.video-pregunta {
    font-weight: 600;
    font-size: 1.05rem;
    margin: 0 0 14px;
}
.video-item p {
    margin: 0 0 12px;
    line-height: 1.65;
}
.video-dificil {
    border-left: 3px solid var(--accent);
    padding: 4px 0 4px 14px;
    color: #334155;
}
.video-dato {
    display: inline-block;
    margin-top: 6px;
    padding: 8px 14px;
    border-radius: 10px;
    background: rgba(6, 214, 160, 0.12);
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.9rem;
    font-weight: 500;
}

@media (max-width: 760px) {
    .video-item {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .video-item video {
        max-width: 320px;
        margin: 0 auto;
    }
}

/* ===== Guías con código VBA y tablas (2026-10-31) ===== */
.prose pre.codigo {
    background: #0f172a;
    color: #e2e8f0;
    font-family: var(--font-mono);
    font-size: 0.88rem;
    line-height: 1.6;
    padding: 18px 20px;
    border-radius: var(--radius-sm);
    overflow-x: auto;
    margin: 18px 0 26px;
    tab-size: 4;
    font-variant-ligatures: none;
}
.prose pre.codigo code { font-family: inherit; color: inherit; background: none; padding: 0; }
.prose :not(pre) > code {
    font-variant-ligatures: none;
    font-family: var(--font-mono);
    font-size: 0.9em;
    background: var(--bg-alt);
    border: 1px solid var(--border);
    border-radius: 4px;
    padding: 1px 6px;
    color: var(--dark);
}
.prose .tabla-scroll { overflow-x: auto; margin: 18px 0 26px; }
.prose table { border-collapse: collapse; width: 100%; font-size: 0.95rem; }
.prose th, .prose td { border: 1px solid var(--border); padding: 10px 12px; text-align: left; vertical-align: top; line-height: 1.5; }
.prose th { background: var(--bg-alt); color: var(--dark); font-weight: 600; }
.prose .respuesta-directa {
    font-size: 1.05rem;
    padding: 18px 22px;
    border: 1px solid rgba(37, 99, 235, 0.25);
    background: rgba(37, 99, 235, 0.05);
    border-radius: var(--radius-sm);
    margin: 0 0 28px;
}
.prose .respuesta-directa p:last-child { margin-bottom: 0; }
.prose .video-guia {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 24px;
    align-items: start;
    margin: 26px 0 30px;
}
.prose .video-guia video {
    width: 100%;
    height: auto;
    aspect-ratio: 9 / 16;
    border-radius: 14px;
    background: #0b1220;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.2);
    display: block;
}
.prose .video-guia p { margin-bottom: 10px; }
@media (max-width: 640px) {
    .prose .video-guia { grid-template-columns: 1fr; }
    .prose .video-guia video { max-width: 260px; margin: 0 auto; }
}
