/* Fotos: diseño compacto consistente con el panel corporativo */
.lot-table-preview{display:flex;align-items:center;gap:10px;min-width:200px}.lot-thumb{width:54px;height:48px;border-radius:4px;object-fit:cover;border:1px solid #d9dfe5;flex:none;background:#f3f6f8}.lot-thumb-empty{display:flex;align-items:center;justify-content:center;font-size:10px;color:#778394}.photos-modal{width:min(780px,94vw);max-height:88vh;overflow:auto}.lot-photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:12px;margin:14px 0}.lot-photo-gallery figure{margin:0;border:1px solid #e0e6ec;padding:7px;border-radius:5px}.lot-photo-gallery img{width:100%;height:120px;object-fit:cover;border-radius:3px}.lot-photo-gallery figcaption{font-size:11px;color:#627182;margin:5px 0}.photo-upload{border-top:1px solid #e5e9ef;padding:14px 0}.photo-upload label{display:block;font-weight:600;margin-bottom:8px}.photo-upload input{max-width:100%}.photo-upload #photo-progress{font-size:12px;color:#266b70}.lot-art-image{position:relative;height:auto;min-height:175px;padding:0!important;background:#e9eff2!important;display:flex;align-items:stretch;justify-content:center;overflow:hidden}.lot-art-image>img{width:100%;height:192px;object-fit:cover;display:block}.lot-art-image .lot-label{position:absolute;bottom:8px;left:8px;background:#102334dd;color:white;padding:4px 8px;border-radius:3px}.lot-art-image .photo-count{position:absolute;top:8px;right:8px;background:#102334dd;color:white;padding:4px 7px;font-size:11px;border-radius:3px}.lot-mini-photos{position:absolute;right:5px;bottom:5px;display:flex;gap:3px;max-width:40%}.lot-mini-photos img{width:32px;height:32px;object-fit:cover;border:1px solid white;border-radius:2px}.lot-art-image .lot-label~*{pointer-events:none}@media(max-width:600px){.lot-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.5.5 · Gestor de fotografías: presentación profesional y estados de carga. */
.org-context{display:flex;align-items:center;flex-wrap:wrap;gap:9px;background:#fff;border:1px solid #e0e5e9;border-radius:4px;padding:11px 13px;margin-bottom:12px;color:#4b5d6c;font-size:12px}
.org-context strong{color:#233644}.org-context span{margin-right:auto}.org-context .mini-btn{white-space:nowrap;text-decoration:none;color:#245f68}
.photos-modal.photo-manager{width:min(900px,95vw);max-width:900px;max-height:min(90vh,940px);overflow:auto}
.photo-manager-head{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:1px solid #e3e7eb}
.photo-manager-head h2{font-size:17px;line-height:1.35;overflow-wrap:anywhere;margin:4px 0 6px}
.photo-manager-head p{margin:0;color:#6d7c88;font-size:12px}
.photo-manager-kicker{font-size:10px;font-weight:700;color:#486d75;letter-spacing:.5px}
.photo-manager-close{background:transparent;color:#61707d;border:1px solid #dce2e6;border-radius:4px;font-size:22px;line-height:24px;min-width:32px;min-height:32px;flex:none}
.photo-manager-body{padding:19px 21px 8px}
.photo-manager .lot-photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 20px}
.photo-manager .lot-photo-card{margin:0;min-width:0;border:1px solid #dce3e9;border-radius:5px;padding:0;background:#fff;overflow:hidden;display:flex;flex-direction:column}
.photo-manager .lot-photo-frame{aspect-ratio:4/3;position:relative;background:#f1f4f6;overflow:hidden}
.photo-manager .lot-photo-frame img{width:100%;height:100%;display:block;object-fit:contain;border:0;border-radius:0;background:#f1f4f6}
.photo-manager .lot-photo-frame img:not([src]){visibility:hidden}
.photo-cover-badge{position:absolute;left:9px;top:9px;font-size:10px;background:#1f5262;color:#fff;padding:4px 7px;border-radius:3px;font-weight:600}
.photo-manager .lot-photo-card figcaption{display:flex;justify-content:space-between;gap:7px;color:#61707e;font-size:11px;padding:10px 11px 5px;margin:0}
.photo-manager .lot-photo-card figcaption span:first-child{color:#2f3e4d;font-weight:650}
.photo-manager .photo-delete{align-self:flex-start;border:0;background:transparent;padding:6px 11px 12px;color:#9a4242;text-decoration:underline;font-size:11px}
.photo-manager .photo-delete:hover{color:#6e2525}
.photo-manager .photo-upload{border:1px dashed #bdcbd2;border-radius:5px;background:#fafcfd;padding:17px;margin:0 0 16px}
.photo-manager .photo-upload label{font-size:13px;color:#2b3e4b;font-weight:650;margin-bottom:10px}
.photo-manager .photo-upload label span{font-size:11px;color:#647583;font-weight:400}
.photo-manager .photo-upload input{display:block;font-size:12px;max-width:100%;margin-bottom:8px}
.photo-manager .photo-upload .form-help{font-size:11px;line-height:1.6;margin:3px 0 0;color:#617181}
.photo-manager .photo-upload #photo-progress{font-size:12px;color:#236c73;margin:10px 0 0}
.photo-manager .photo-limit-note{font-size:12px;color:#657382;padding:5px 0 15px}
.photo-manager .photo-empty{border:1px dashed #d6e0e5;border-radius:5px;padding:36px 15px;text-align:center;margin-bottom:16px;background:#fbfcfd}
.photo-manager .photo-empty strong{font-size:13px;color:#32424f}.photo-manager .photo-empty p{font-size:12px;color:#6a7885;margin:7px 0 0}
.photo-manager .photo-manager-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
.photo-manager .photo-manager-footer span{font-size:11px;color:#70808c}
img[data-lot-photo]:not([src]){background:#f0f3f6;color:#71818d}
img[data-lot-photo].lot-photo-error{background:#f9eded;outline:1px solid #eac9c9}
@media(max-width:700px){.photo-manager .lot-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-manager-body{padding:15px}.photo-manager-head{padding:15px}}
@media(max-width:440px){.photo-manager .lot-photo-gallery{grid-template-columns:1fr}.org-context{align-items:start}.org-context span{width:100%}}

/* La falla de una miniatura nunca debe cubrir el documento ni el contenido del panel. */
.lot-photo-frame,.lot-art-image,.lot-main-photo,.lot-gallery-thumb{position:relative}
.lot-photo-frame>.lot-photo-unavailable,.lot-art-image>.lot-photo-unavailable,.lot-main-photo>.lot-photo-unavailable,.lot-gallery-thumb>.lot-photo-unavailable{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:8px;text-align:center;background:#f5f5f5;color:#6a6f76;font-size:11px;line-height:1.4;pointer-events:none}
.lot-table-preview>.lot-photo-unavailable{display:none}


/* v0.6.2 · Lotes: las fotos nunca modifican la altura de la tabla.
   Las dimensiones se mantienen incluso después de que photo-view.js quita
   data-rn-photo-state al terminar de cargar la imagen. */
.data-table .lot-table-preview{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  min-width:0;
}
.data-table .lot-table-details{max-width:310px;min-width:0}
.data-table .lot-thumbs-strip{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:6px;
  max-width:100%;
  min-height:48px;
}
.data-table .lot-thumbs-strip .lot-thumb-frame,
.data-table .lot-thumbs-strip .lot-thumb-empty{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 54px;
  width:54px;
  max-width:54px;
  min-width:54px;
  height:48px;
  max-height:48px;
  min-height:48px;
  overflow:hidden;
  position:relative;
  background:#f3f6f8;
  border:1px solid #d9dfe5;
  border-radius:4px;
}
.data-table .lot-thumbs-strip .lot-thumb-frame>img.lot-thumb{
  display:block;
  flex:none;
  width:100%!important;
  max-width:100%!important;
  height:100%!important;
  max-height:100%!important;
  min-width:0;
  min-height:0;
  object-fit:cover;
  object-position:center;
  border:0;
  border-radius:0;
}
.data-table .lot-thumbs-strip .lot-thumb-empty{
  font-size:10px;
  color:#778394;
  text-align:center;
}
@media(max-width:650px){
  .data-table .lot-thumbs-strip{gap:5px}
}

/* v0.9.9 — Botones consistentes en la galería de fotografías. */
.photo-manager .photo-manager-close{
 display:grid;place-items:center;flex:0 0 40px;min-width:40px;min-height:40px;
 padding:0;font-size:22px;line-height:1;border:1px solid #cbd5de;
 border-radius:5px;background:#fff;color:#41576a;cursor:pointer;
}
.photo-manager .photo-manager-close:hover{background:#f2f6f8;border-color:#aabcc8}
.photo-manager .lot-photo-card .photo-delete{
 display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;
 min-height:38px;margin:0 11px 12px;padding:8px 12px;box-sizing:border-box;
 border:1px solid #dcb8b8;border-radius:5px;background:#fff;color:#983a3a;
 font-size:12px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;
}
.photo-manager .lot-photo-card .photo-delete:hover{background:#fdf4f3;color:#7d2929;border-color:#cb9090}
.photo-manager .lot-photo-card figcaption{align-items:center;min-height:39px;padding:9px 11px;flex-wrap:wrap}
.photo-manager .photo-upload input[type=file]{
 display:block;box-sizing:border-box;width:100%;min-height:46px;
 border:1px solid #d5dfe6;border-radius:5px;background:#fff;
 padding:4px 8px;font-size:12px;color:#465b6b;cursor:pointer;
}
.photo-manager .photo-upload input[type=file]::file-selector-button{
 min-height:36px;margin-right:10px;padding:7px 12px;border:1px solid #cbd5de;
 border-radius:4px;background:#fff;color:#344958;font:inherit;font-weight:600;cursor:pointer;
}
.photo-manager .photo-upload input[type=file]::file-selector-button:hover{background:#f2f6f8}
.photo-manager .photo-manager-footer{
 display:flex;justify-content:space-between;align-items:center;gap:12px;
 padding:14px 20px;margin:0;border-top:1px solid #e0e7ed;
}
.photo-manager .photo-manager-footer .btn{min-height:40px;padding:9px 15px;cursor:pointer}
.photo-manager button:focus-visible,.photo-manager input[type=file]:focus-visible{outline:2px solid #168786;outline-offset:2px}
@media(max-width:440px){.photo-manager .photo-manager-footer{padding:13px 15px;flex-wrap:wrap}.photo-manager .photo-manager-footer span{max-width:100%;overflow-wrap:anywhere}}

/* v1.2.2 — Fotografías y videos de YouTube como elementos de una sola galería. */
#lot-media-gallery .lot-thumbnails[hidden],
#lot-media-gallery .lot-main-photo[hidden],
#lot-media-gallery .lot-empty-photo[hidden],
#lot-media-gallery .rn-gallery-video-player[hidden]{display:none!important}
#lot-media-gallery .lot-gallery-video{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#e9f0f4;color:#1c465a;line-height:1.2;padding:4px;min-height:64px}
#lot-media-gallery .lot-gallery-video.active{background:#d4eeee;border-color:var(--catalog-brand-color,#236c73)}
#lot-media-gallery .rn-gallery-play{font-size:19px;line-height:1}
#lot-media-gallery .rn-gallery-play-name{font-size:10px;font-weight:700}
#lot-media-gallery .rn-gallery-video-player{background:#13212d;border-radius:5px;overflow:hidden;aspect-ratio:4/3;display:grid;place-items:center;min-height:0}
#lot-media-gallery .rn-gallery-video-player iframe,
#lot-media-gallery .rn-gallery-video-player video{display:block;width:100%;aspect-ratio:16/9;border:0;background:#09121a}
#lot-media-gallery .lot-gallery-thumb:focus-visible{outline:2px solid var(--catalog-brand-color,#236c73);outline-offset:3px}

/* v1.4.0: vista previa seleccionada, protegida contra íconos de imagen rota */
.rn-selected-photo{position:relative}
.rn-selected-photo>img{display:none}
.rn-selected-photo.is-preview-loaded>img{display:block}
.rn-selection-placeholder{display:flex;justify-content:center;align-items:center;min-height:80px;background:#eff4f6;color:#426071;font-weight:700;font-size:13px}
.rn-selected-photo.is-preview-loaded>.rn-selection-placeholder{display:none}
