/* ── Manuales responsive: mobile ≤767px ── */
@media (max-width: 767px) {

    /* ── Header: título + selector compacto ── */
    .manuales-header {
        flex-direction: column;
        align-items: flex-start;
        padding: 12px 14px;
        gap: 6px;
    }

    .manuales-header h2 {
        font-size: 1.5rem;
        font-weight: 700;
    }

    .manuales-select-cliente {
        min-width: 0;
        width: 100%;
        font-size: 0.85rem;
        padding: 6px 10px;
    }

    /* ── Árbol: ocupa todo el ancho, altura compacta ── */
    .manuales-wrap {
        display: flex;
        flex-direction: column;
        grid-template-columns: unset;
        grid-template-areas: unset;
    }

    .manuales-tree {
        width: 100%;
        max-width: 100%;
        border-right: none;
        border-bottom: 1px solid var(--border, #e2e8f0);
        max-height: 160px;
        flex-shrink: 0;
    }

    .manuales-tree-header {
        padding: 8px 12px;
    }

    .manuales-tree-scroll {
        overflow-x: auto;
        overflow-y: auto;
    }

    /* ── Botones toolbar y cards: solo icono en mobile ── */
    .manuales-toolbar .btn-label,
    .item-card-menu .btn-label {
        display: none;
    }

    /* ── Toolbar: breadcrumb + acciones en fila ── */
    .manuales-toolbar {
        flex-wrap: nowrap;
        align-items: center;
        gap: 6px;
        padding: 6px 10px;
    }

    .manuales-breadcrumb {
        font-size: 0.78rem;
        flex: 1;
        order: 1;
    }

    .toolbar-actions {
        order: 2;
        flex-shrink: 0;
        justify-content: flex-end;
    }

    /* ── Búsqueda: oculta por defecto, visible al pulsar 🔍 ── */
    .manuales-search-wrap {
        display: none;
        padding: 6px 10px;
    }

    .manuales-search-wrap.search-open {
        display: block;
    }

    /* ── Botón toggle búsqueda: solo visible en mobile ── */
    .btn-toggle-search {
        display: inline-flex;
    }

    /* ── Contenido: oculto en raíz, visible al seleccionar carpeta ── */
    .manuales-contenido {
        display: none;
    }

    .manuales-wrap.has-carpeta .manuales-contenido {
        display: flex;
        flex-direction: column;
    }

    /* ── Área de archivos ── */
    .manuales-files-area {
        padding: 10px;
    }

    /* ── Cards: 15 col base → carpetas ×3=5/fila, archivos ×5=3/fila ── */
    .manuales-grid {
        grid-template-columns: repeat(15, 1fr);
        gap: 6px;
    }

    .item-card.carpeta-card {
        grid-column: span 3;
        padding: 8px 4px;
        gap: 4px;
        border-radius: 8px;
    }

    .item-card.archivo-card {
        grid-column: span 5;
        padding: 8px 6px;
        gap: 4px;
        border-radius: 8px;
    }

    .item-card.carpeta-card .item-icon {
        font-size: 1.6rem;
    }

    .item-card.archivo-card .item-icon {
        font-size: 2rem;
    }

    .item-card .item-nombre {
        font-size: 0.62rem;
        -webkit-line-clamp: 1;
    }

    .item-card.archivo-card .item-nombre {
        font-size: 0.68rem;
        -webkit-line-clamp: 2;
    }

    .item-card .item-meta {
        display: none;
    }

    .item-card.archivo-card .item-meta {
        display: block;
        font-size: 0.62rem;
    }

    .item-card .item-card-menu {
        position: static;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 3px;
        opacity: 1;
        justify-content: center;
    }

    .item-card .item-card-menu button {
        font-size: 0.6rem;
        padding: 2px 4px;
    }

    /* ── Lista ── */
    .item-row {
        padding: 6px 8px;
    }

    .item-row .item-meta {
        font-size: 0.7rem;
    }

    /* ── Visor PDF fullscreen ── */
    .modal-visor {
        margin: 0;
        border-radius: 0;
        height: 100%;
    }

    .modal-small {
        margin: 12px;
        max-width: calc(100vw - 24px);
    }
}
