/* ===== Biblioteca (Bootstrap 5) - estilos acotados a .bib para no pisar style.css del sitio ===== */
            .bib{--bib:#124170;--bib-dark:#0d3158;--bib-soft:#eaf1f8;--bib-line:#e3e9f0;
                 padding:120px 0 60px;background:#f5f7fa;overflow:visible}
            @media(max-width:991.98px){.bib{padding-top:95px}}
            .bib h1,.bib h2,.bib h3,.bib h4,.bib h5{line-height:1.3;letter-spacing:0}
            .bib .bib-title{font-size:clamp(1.5rem,4.5vw,2.1rem);color:var(--bib);margin:0 0 .35rem}
            .bib .bib-lead{color:#6b7785;margin:0 0 1.5rem}
            .bib a{text-decoration:none}
            .bib ul,.bib ol,.bib dl{margin-bottom:0}
            /* formularios: anula los input/select/label globales de style.css */
            .bib label,.bib .form-label{display:block;margin:0 0 .35rem;font-weight:600;font-size:.9rem;color:#33404d}
            .bib .form-control,.bib .form-select{width:100%;height:auto;margin:0;padding:.65rem .9rem;font-size:1rem;
                 border:1px solid #cdd6e0;border-radius:.6rem;background-color:#fff;box-shadow:none}
            .bib .form-select{padding-right:2.25rem}
            .bib .form-control:focus,.bib .form-select:focus{border-color:var(--bib);box-shadow:0 0 0 .2rem rgba(18,65,112,.15)}
            /* botones */
            .bib .btn{text-transform:none;font-family:inherit;font-weight:600;letter-spacing:0;white-space:normal;
                 border-width:1px;border-radius:.6rem;padding:.65rem 1.2rem;font-size:1rem}
            .bib .btn-sm{padding:.4rem .9rem;font-size:.9rem}
            .bib .btn-bib{background:var(--bib);border-color:var(--bib);color:#fff}
            .bib .btn-bib:hover,.bib .btn-bib:focus{background:var(--bib-dark);border-color:var(--bib-dark);color:#fff}
            .bib .btn-outline-bib{background:#fff;border-color:var(--bib);color:var(--bib)}
            .bib .btn-outline-bib:hover{background:var(--bib);color:#fff}
            /* tarjetas */
            .bib .bib-box{background:#fff;border:1px solid var(--bib-line);border-radius:.9rem;box-shadow:0 2px 12px rgba(18,65,112,.06)}
            .bib .bib-search{padding:1.25rem}
            @media(min-width:768px){.bib .bib-search{padding:1.75rem}}
            .bib .bib-item{overflow:hidden;margin-bottom:1rem;transition:box-shadow .2s,transform .2s}
            .bib .bib-item:hover{box-shadow:0 8px 22px rgba(18,65,112,.14);transform:translateY(-2px)}
            .bib .bib-cover{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:.5rem;background:#e9eef4}
            .bib .bib-item .bib-cover-wrap{padding:.9rem}
            .bib .bib-item h3{font-size:1.1rem;margin:0 0 .4rem}
            .bib .bib-item h3 a{color:var(--bib)}
            .bib .bib-item h3 a:hover{text-decoration:underline}
            .bib .bib-meta{margin:0 0 .25rem;color:#4a5662;font-size:.95rem;overflow-wrap:anywhere}
            .bib .bib-meta i{width:1.3em;color:#8a97a5}
            .bib .bib-cdu{background:var(--bib-soft);color:var(--bib);font-weight:600;border-radius:.4rem;padding:.3em .6em;font-size:.8rem}
            /* paginación: anula .pagination a{float:left...} de style.css */
            .bib .pagination{flex-wrap:wrap;justify-content:center;gap:.25rem;margin:1.5rem 0 0;padding:0}
            .bib .pagination li{list-style:none;margin:0}
            .bib .pagination .page-link{float:none;display:block;margin:0;padding:.5rem .85rem;color:var(--bib);
                 border:1px solid var(--bib-line);border-radius:.5rem!important;background:#fff;line-height:1.2}
            .bib .pagination .page-link:hover{background:var(--bib-soft)}
            .bib .pagination .active .page-link{background:var(--bib);border-color:var(--bib);color:#fff}
            .bib .pagination .disabled .page-link{color:#a5afba;background:#f1f4f7}
            .bib .bib-pageinfo{text-align:center;color:#6b7785;font-size:.9rem;margin-top:.75rem}
            /* detalle */
            .bib .bib-field{display:flex;flex-wrap:wrap;padding:.65rem 0;border-bottom:1px solid var(--bib-line)}
            .bib .bib-field:last-child{border-bottom:0}
            .bib .bib-label{flex:0 0 100%;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#7b8794}
            .bib .bib-value{flex:0 0 100%;overflow-wrap:anywhere}
            @media(min-width:576px){.bib .bib-label{flex:0 0 28%;max-width:28%;padding-top:.15rem}.bib .bib-value{flex:0 0 72%;max-width:72%}}
            .bib .bib-h{font-size:1.1rem;color:var(--bib);margin:0 0 .9rem}
            .bib .bib-h i{margin-right:.4rem}
            .bib .bib-tag{display:inline-block;margin:0 .35rem .45rem 0;padding:.4em .8em;border-radius:50rem;font-size:.85rem;font-weight:500;
                 background:var(--bib-soft);color:var(--bib);border:1px solid transparent}
            .bib .bib-tag:hover{background:var(--bib);color:#fff}
            .bib .bib-index{padding-left:1.2rem;margin:0}
            .bib .bib-index li{margin-bottom:.3rem;overflow-wrap:anywhere}
            @media(min-width:768px){.bib .bib-index.cols{columns:2;column-gap:2rem}}
            .bib .list-group{margin:0;padding:0}
            .bib .list-group-item{margin:0;padding:.75rem 0;border-color:var(--bib-line)}
            .bib .alert{border-radius:.7rem;margin-bottom:1.25rem}