/* Layout base */
.ulp-wrap{max-width:1200px;margin:0 auto;}
.ulp-main{background:#f5f7fb;border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.06);padding:6px;margin-bottom:16px;}
.ulp-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.08);overflow:hidden;border:1px solid #e6e9f2;min-width:340px;max-width:420px;scroll-snap-align:start}
.ulp-card .ulp-pdf{background:#fff;border:0;display:block;border-bottom:1px solid #eef1f6;}
.ulp-card-meta{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.ulp-fname{font-size:.95rem;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%;}
.ulp-btn{display:inline-block;background:#0d63c9;color:#fff !important;padding:6px 10px;border-radius:6px;text-decoration:none}
.ulp-btn:hover{background:#0a56ad}

/* Grid de miniaturas */
.ulp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}

/* Carrusel horizontal */
.ulp-carousel-wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:10px}
.ulp-carousel{display:flex;gap:16px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory;scroll-behavior:smooth}
.ulp-carousel::-webkit-scrollbar{height:8px}
.ulp-carousel::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}
.ulp-nav{border:1px solid #d0d7e6;background:#fff;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:20px;line-height:1;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.ulp-nav:hover{background:#f1f5f9}

/* Paginador */
.ulp-pagebar{margin:18px 0;text-align:right}
.ulp-pagebar ul{list-style:none;margin:0;padding:0;display:inline-flex;gap:4px;flex-wrap:wrap}
.ulp-pagebar li a,.ulp-pagebar li span{display:block;padding:6px 10px;border:1px solid #d0d7e6;border-radius:6px;background:#fff;color:#1e293b;text-decoration:none;font-size:.92rem}
.ulp-pagebar li.active a{background:#0d63c9;color:#fff;border-color:#0d63c9}
.ulp-pagebar li.disabled span{opacity:.5}
.ulp-pagebar li.dots span{border:none;background:transparent}
