/* MS Drive Library v2.7 */
.msdl-wrap{margin:24px 0;font-family:inherit}.msdl-header{margin-bottom:18px}.msdl-header h2{margin:0 0 6px;font-size:clamp(22px,2.5vw,32px)}.msdl-header p{margin:0;color:#666}.msdl-folder-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.msdl-folder-card{height:72px;border:0;border-radius:15px;background:#eef2f6;display:flex;align-items:center;gap:16px;padding:0 18px;cursor:pointer;text-align:left;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.msdl-folder-card:hover{transform:translateY(-2px);background:#e8edf4;box-shadow:0 5px 14px rgba(0,0,0,.11)}.msdl-folder-card-icon{font-size:27px}.msdl-folder-card-name{font-size:18px;font-weight:600;color:#222;flex:1}.msdl-folder-dots{font-size:25px;color:#333}.msdl-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}.msdl-photo-card{background:#fff;border:1px solid #e6e6e6;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.07)}.msdl-photo-button,.msdl-folder-tile,.msdl-pdf-tile{display:flex;width:100%;border:0;padding:0;margin:0;cursor:pointer;background:#f1f1f1;aspect-ratio:4/3;overflow:hidden;align-items:center;justify-content:center}.msdl-photo-button{cursor:zoom-in;display:block}.msdl-photo-button img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}.msdl-photo-card:hover img{transform:scale(1.04)}.msdl-folder-tile{background:linear-gradient(135deg,#fff7d6,#ffd966)}.msdl-folder-tile span{font-size:70px}.msdl-pdf-tile{flex-direction:column;gap:8px;background:linear-gradient(135deg,#fff,#ffe5e5)}.msdl-pdf-big{background:#d71920;color:#fff;border-radius:8px;padding:9px 8px;font-weight:900;font-size:16px;letter-spacing:.5px}.msdl-pdf-tile small{font-size:13px;color:#555;font-weight:700}.msdl-photo-info{padding:12px;text-align:center}.msdl-photo-info h3{font-size:14px;margin:0 0 8px;word-break:break-word}.msdl-breadcrumb{display:flex;gap:12px;align-items:center;margin-bottom:14px;padding:10px 0;background:transparent;border:0}.msdl-back{border:0;background:#0d6efd;color:#fff;border-radius:8px;padding:7px 12px;cursor:pointer}.msdl-breadcrumb.is-hidden{display:none}.msdl-current-folder{font-weight:700;font-size:18px}.msdl-drive-list{border:1px solid #e6e6e6;border-radius:14px;overflow:hidden;background:#fff}.msdl-drive-head,.msdl-drive-row{display:grid;grid-template-columns:minmax(240px,1.8fr) 130px 180px 110px;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid #eee}.msdl-drive-head{font-weight:700;background:#f8f9fa;color:#444}.msdl-drive-row:last-child{border-bottom:0}.msdl-drive-name{display:flex;gap:12px;align-items:center;text-align:left;border:0;background:transparent;padding:0;cursor:pointer;color:#222}.msdl-drive-name span{font-size:22px;width:28px;text-align:center}.msdl-drive-name strong{font-size:15px}.msdl-small-link{color:#0d6efd;text-decoration:none;font-weight:600}.msdl-btn{display:inline-block;border:0;padding:8px 13px;border-radius:9px;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:600;cursor:pointer}.msdl-btn-primary{background:#0d6efd}.msdl-btn-secondary{background:#198754}.msdl-alert,.msdl-empty{padding:14px 16px;border-radius:10px;margin:20px 0}.msdl-alert{background:#fff3cd;border:1px solid #ffec99;color:#664d03}.msdl-empty{background:#f8f9fa;border:1px solid #e9ecef;color:#495057}.msdl-lightbox,.msdl-pdf-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.86);z-index:999999}.msdl-lightbox.is-open,.msdl-pdf-modal.is-open{display:flex}.msdl-lightbox img{max-width:94vw;max-height:86vh;object-fit:contain;border-radius:8px;background:#fff}.msdl-lightbox-close{position:fixed;top:18px;right:24px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#111;font-size:30px;cursor:pointer}.msdl-pdf-panel{width:min(1100px,96vw);height:min(850px,92vh);background:#fff;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.msdl-pdf-topbar{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e5e5e5}.msdl-pdf-close{width:36px;height:36px;border:0;border-radius:50%;background:#f1f1f1;font-size:26px;cursor:pointer}.msdl-pdf-frame{width:100%;flex:1;border:0}.msdl-pdf-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid #e5e5e5}.msdl-pdf-download.is-hidden{display:none!important}@media(max-width:760px){.msdl-folder-cards{grid-template-columns:1fr}.msdl-drive-head{display:none}.msdl-drive-row{grid-template-columns:1fr;gap:6px}.msdl-drive-row span{font-size:13px}.msdl-pdf-panel{height:94vh;width:98vw}}

/* MS Drive Library v2.9 - PDF compacto */
.msdl-pdf-tile{
  flex-direction:column!important;
  gap:0!important;
  background:linear-gradient(135deg,#fff,#fff3f3)!important;
  align-items:center!important;
  justify-content:center!important;
}
.msdl-pdf-big{
  background:#d71920!important;
  color:#fff!important;
  border-radius:8px!important;
  padding:8px 11px!important;
  font-weight:800!important;
  font-size:16px!important;
  letter-spacing:.5px!important;
  line-height:1!important;
}
.msdl-pdf-tile small{
  display:none!important;
}


/* MS Drive Library v3.0 - PDF compacto con icono más grande */
.msdl-gallery .msdl-item-pdf{
  max-width:190px!important;
}
.msdl-gallery .msdl-item-pdf .msdl-pdf-tile{
  min-height:92px!important;
  height:92px!important;
  aspect-ratio:auto!important;
  background:linear-gradient(135deg,#fff,#fff3f3)!important;
}
.msdl-gallery .msdl-item-pdf .msdl-pdf-big{
  background:#d71920!important;
  color:#fff!important;
  border-radius:9px!important;
  padding:10px 14px!important;
  font-size:22px!important;
  font-weight:900!important;
  letter-spacing:.5px!important;
  line-height:1!important;
}
.msdl-gallery .msdl-item-pdf .msdl-photo-info{
  padding:10px 10px 12px!important;
}
.msdl-gallery .msdl-item-pdf .msdl-photo-info h3{
  font-size:12px!important;
  line-height:1.25!important;
  margin-bottom:10px!important;
}
.msdl-card-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:7px 12px!important;
  border-radius:7px!important;
  font-size:12px!important;
  font-weight:800!important;
  text-decoration:none!important;
  cursor:pointer!important;
  border:1px solid #0d6efd!important;
  margin:2px 4px!important;
}
.msdl-card-btn-view{
  color:#0d6efd!important;
  background:#fff!important;
}
.msdl-card-btn-download{
  color:#fff!important;
  background:#0d6efd!important;
}
.msdl-gallery .msdl-item-pdf .msdl-small-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:7px 12px!important;
  border-radius:7px!important;
  font-size:12px!important;
  font-weight:800!important;
  text-decoration:none!important;
  color:#fff!important;
  background:#0d6efd!important;
  border:1px solid #0d6efd!important;
  margin:2px 4px!important;
}


/* v3.1 PDF + loader */
.msdl-gallery .msdl-item-pdf .msdl-pdf-big{
  font-size:19px!important;   /* antes 22 */
  padding:9px 13px!important;
}
.msdl-loading{
 display:flex;flex-direction:column;align-items:center;justify-content:center;
 padding:50px 10px;color:#555;font-weight:600;
}
.msdl-spinner{
 width:42px;height:42px;border:4px solid #d9d9d9;border-top-color:#0d6efd;
 border-radius:50%;animation:msdlspin .8s linear infinite;margin-bottom:12px;
}
@keyframes msdlspin{to{transform:rotate(360deg);}}


/* v3.2 Skeleton loading tipo Drive */
.msdl-skeleton-wrap{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
  gap:18px;
  width:100%;
}
.msdl-skeleton-card{
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 8px 22px rgba(0,0,0,.07);
  padding-bottom:14px;
}
.msdl-skeleton-thumb{
  height:145px;
  background:linear-gradient(90deg,#eeeeee 25%,#f7f7f7 37%,#eeeeee 63%);
  background-size:400% 100%;
  animation:msdlShimmer 1.15s ease-in-out infinite;
}
.msdl-skeleton-line{
  height:13px;
  margin:14px 18px 0;
  border-radius:8px;
  background:linear-gradient(90deg,#eeeeee 25%,#f7f7f7 37%,#eeeeee 63%);
  background-size:400% 100%;
  animation:msdlShimmer 1.15s ease-in-out infinite;
}
.msdl-skeleton-line.short{
  width:55%;
}
@keyframes msdlShimmer{
  0%{background-position:100% 0}
  100%{background-position:0 0}
}

/*v3.3*/
.msdl-gallery .msdl-item-pdf .msdl-pdf-tile{background:linear-gradient(180deg,#fff8f8,#fff)!important;min-height:86px!important}
.msdl-pdf-big{display:flex!important;align-items:center;justify-content:center;background:radial-gradient(circle,#ffe8e8 0%,#fff6f6 70%)!important;border-radius:18px!important;padding:8px!important;box-shadow:0 10px 25px rgba(213,0,0,.18)!important}
.msdl-pdf-big svg{width:82px;height:96px}
.msdl-gallery .msdl-item-pdf .msdl-photo-info h3{font-size:13px!important;font-weight:700!important;line-height:1.3!important}


/* MS Drive Library v3.5 - Aspecto visual */
.msdl-folder-content{
  animation:msdlFadeIn .28s ease both;
}
@keyframes msdlFadeIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}

.msdl-photo-card,
.msdl-folder-card{
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease!important;
}
.msdl-photo-card:hover,
.msdl-folder-card:hover{
  transform:translateY(-4px)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.16)!important;
}
.msdl-photo-button img{
  transition:transform .32s ease, filter .32s ease!important;
}
.msdl-photo-card:hover .msdl-photo-button img{
  transform:scale(1.045)!important;
  filter:saturate(1.05)!important;
}
.msdl-pdf-tile,
.msdl-folder-tile{
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease!important;
}
.msdl-photo-card:hover .msdl-pdf-tile,
.msdl-photo-card:hover .msdl-folder-tile{
  transform:scale(1.015)!important;
  filter:brightness(1.02)!important;
}

/* Lightbox pro */
.msdl-lightbox{
  backdrop-filter:blur(4px);
}
.msdl-lightbox img{
  transition:transform .18s ease!important;
  cursor:zoom-in;
}
.msdl-lightbox.is-zoomed img{
  transform:scale(1.65)!important;
  cursor:zoom-out;
}
.msdl-lightbox-nav{
  position:fixed;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:64px;
  border:0;
  border-radius:14px;
  background:rgba(255,255,255,.92);
  color:#111;
  font-size:46px;
  line-height:1;
  cursor:pointer;
  z-index:1000000;
  box-shadow:0 8px 24px rgba(0,0,0,.25);
}
.msdl-lightbox-prev{left:22px}
.msdl-lightbox-next{right:22px}
.msdl-lightbox-counter{
  position:fixed;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  background:rgba(255,255,255,.94);
  color:#111;
  font-weight:700;
  font-size:14px;
  border-radius:999px;
  padding:8px 14px;
  box-shadow:0 6px 18px rgba(0,0,0,.2);
  z-index:1000000;
}
.msdl-lightbox-nav:hover,
.msdl-lightbox-close:hover{
  transform:translateY(-50%) scale(1.04);
}
.msdl-lightbox-close:hover{
  transform:scale(1.06);
}

/* Botones PDF más vivos */
.msdl-card-btn,
.msdl-small-link,
.msdl-btn{
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease!important;
}
.msdl-card-btn:hover,
.msdl-small-link:hover,
.msdl-btn:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 6px 15px rgba(13,110,253,.28)!important;
}

@media(max-width:760px){
  .msdl-lightbox-nav{
    width:42px;
    height:54px;
    font-size:38px;
  }
  .msdl-lightbox-prev{left:10px}
  .msdl-lightbox-next{right:10px}
}


/* MS Drive Library v3.6 - alineación y descarga opcional */
.msdl-gallery .msdl-photo-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
}

.msdl-gallery .msdl-item-pdf{
  text-align:center!important;
}

.msdl-gallery .msdl-item-pdf .msdl-pdf-tile{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:118px!important;
  height:118px!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0!important;
  border-radius:16px 16px 0 0!important;
  background:
    radial-gradient(circle at center, rgba(215,25,32,.15) 0%, rgba(215,25,32,.08) 42%, rgba(255,255,255,.75) 78%),
    linear-gradient(135deg,#fff,#fff2f2)!important;
}

.msdl-gallery .msdl-item-pdf .msdl-pdf-big{
  margin:0 auto!important;
  transform:none!important;
  font-size:19px!important;
  padding:9px 13px!important;
}

.msdl-gallery .msdl-item-pdf .msdl-photo-info{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:12px 12px 14px!important;
  gap:9px!important;
}

.msdl-gallery .msdl-item-pdf .msdl-photo-info h3{
  display:block!important;
  width:100%!important;
  margin:0 auto!important;
  text-align:center!important;
  font-size:12px!important;
  line-height:1.25!important;
  word-break:break-word!important;
}

.msdl-gallery .msdl-item-pdf .msdl-card-btn,
.msdl-gallery .msdl-item-pdf .msdl-small-link{
  margin:0 auto!important;
}

.msdl-gallery .msdl-item-pdf .msdl-card-btn-download.is-hidden,
.msdl-gallery .msdl-item-pdf .msdl-small-link.is-hidden{
  display:none!important;
}


/* MS Drive Library v3.7 - pulido final PDF */
/* Mantiene distribución v3.6, solo ajusta proporción */
.msdl-gallery .msdl-item-pdf .msdl-pdf-tile{
  min-height:104px!important;
  height:104px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:
    radial-gradient(circle at center, rgba(215,25,32,.14) 0%, rgba(215,25,32,.075) 42%, rgba(255,255,255,.76) 78%),
    linear-gradient(135deg,#fff,#fff2f2)!important;
}

.msdl-gallery .msdl-item-pdf .msdl-pdf-big{
  font-size:16.5px!important;
  padding:7px 11px!important;
  border-radius:8px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.45px!important;
}

.msdl-gallery .msdl-item-pdf .msdl-photo-info{
  padding:10px 11px 13px!important;
  gap:8px!important;
  text-align:center!important;
  align-items:center!important;
}

.msdl-gallery .msdl-item-pdf .msdl-photo-info h3{
  font-size:12px!important;
  line-height:1.25!important;
  margin:0 auto!important;
  text-align:center!important;
}

.msdl-gallery .msdl-item-pdf .msdl-card-btn,
.msdl-gallery .msdl-item-pdf .msdl-small-link{
  margin:0 auto!important;
}

/*v3.7.1*/
.msdl-gallery .msdl-item-pdf .msdl-pdf-big{transform:scale(.90)!important;transform-origin:center center!important;padding:6px 10px!important;}


/* v3.7.2 - ajuste final del tamaño del icono PDF */
.msdl-gallery .msdl-item-pdf .msdl-pdf-big{
    transform:scale(.90)!important;
    transform-origin:center center!important;
}


/* MS Drive Library v4.0 clean - solo buscador */
.msdl-toolbar{
  margin:0 0 18px;
}
.msdl-search-box{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  max-width:520px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:10px 14px;
  box-shadow:0 4px 14px rgba(0,0,0,.06);
}
.msdl-search-box span{
  opacity:.75;
}
.msdl-search-input{
  width:100%;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:15px;
  color:#222;
}
.msdl-no-results{
  padding:16px 18px;
  border-radius:14px;
  background:#fff3cd;
  border:1px solid #ffec99;
  color:#664d03;
  font-weight:600;
  margin-top:12px;
}
@media(max-width:760px){
  .msdl-search-box{
    max-width:none;
  }
}


/* MS Drive Library v4.1 - miniaturas reales PDF */
.msdl-gallery .msdl-item-pdf .msdl-pdf-thumb-tile{
  overflow:hidden!important;
  position:relative!important;
  background:
    radial-gradient(circle at center, rgba(215,25,32,.10) 0%, rgba(215,25,32,.055) 42%, rgba(255,255,255,.8) 78%),
    linear-gradient(135deg,#fff,#fff6f6)!important;
}
.msdl-gallery .msdl-item-pdf .msdl-pdf-thumb{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block;
  border:0!important;
  background:#fff!important;
}
.msdl-gallery .msdl-item-pdf .msdl-pdf-fallback{
  display:none;
  align-items:center!important;
  justify-content:center!important;
  transform:scale(.60)!important;
  transform-origin:center center!important;
  margin:auto!important;
}
.msdl-gallery .msdl-item-pdf .msdl-pdf-thumb-tile:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 -20px 34px rgba(0,0,0,.03);
}


/* MS Drive Library v4.3 - ajuste PDF */
.msdl-gallery .msdl-item-pdf .msdl-pdf-fallback,
.msdl-gallery .msdl-item-pdf .msdl-pdf-big{
  transform:scale(.50)!important;
  transform-origin:center center!important;
}
.msdl-gallery .msdl-item-pdf .msdl-pdf-thumb{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
