/* =========================================================
   AMS — Estilos generales (single product + sala de subastas)
   ========================================================= */

/* Ajuste fino opcional si el tema baja la galería unos px */
:root{ --ams-gallery-nudge: 0px; } /* antes -10px */

/* ---------------------- 1) MOSAICO 2×2 (SINGLE PRODUCT) ---------------------- */
.single-product .woocommerce-product-gallery .ams-tiles-2x2{
  display:grid; grid-template-columns:repeat(2,1fr); gap:0; width:100%;
}
.single-product .woocommerce-product-gallery .ams-tiles-2x2 > figure{
  margin:0; padding:0; border:0; aspect-ratio:1/1; overflow:hidden; line-height:0; cursor:zoom-in;
}
.single-product .woocommerce-product-gallery .ams-tiles-2x2 a{ display:block; width:100%; height:100%; pointer-events:auto; }
.single-product .woocommerce-product-gallery .ams-tiles-2x2 img{
  width:100% !important; height:100% !important; max-width:none !important; max-height:none !important;
  object-fit:cover !important; object-position:center !important; display:block !important; border:0 !important;
  transition:transform .45s ease !important; transform-origin:center !important; will-change:transform;
}
@media (hover:hover){
  .single-product .woocommerce-product-gallery .ams-tiles-2x2 a:hover img,
  .single-product .woocommerce-product-gallery .ams-tiles-2x2 figure:hover img{
    transform:scale(1.18) !important; cursor:zoom-in !important;
  }
}
@media (hover:none),(pointer:coarse){
  .single-product .woocommerce-product-gallery .ams-tiles-2x2 img{ transform:none !important; }
}
@media (max-width:520px){
  .single-product .woocommerce-product-gallery .ams-tiles-2x2{ grid-template-columns:1fr; }
}

/* Ocultar miniaturas/galería nativas que interfieren */
.single-product .woocommerce-product-gallery .flex-control-thumbs,
.single-product .flex-control-thumbs,
.single-product [class*="gallery-selector"],
.single-product .woocommerce-product-gallery ~ .gallery-selector{
  display:none !important; visibility:hidden !important; height:0 !important; max-height:0 !important;
  overflow:hidden !important; margin:0 !important; padding:0 !important; border:0 !important;
}

/* ----------- 2) GALERÍA ALINEADA ARRIBA + NAV DE LOTES (SINGLE) ----------- */
.single-product div.product{ align-items:flex-start !important; }
.single-product div.product .images{ align-self:flex-start !important; margin-top:0 !important; padding-top:0 !important; }
.single-product .woocommerce-product-gallery{
  aspect-ratio:auto !important; min-height:0 !important;
  display:flex !important; flex-direction:column !important; align-items:stretch !important; justify-content:flex-start !important;
  gap:14px !important; margin-top:0 !important; padding-top:0 !important; position:relative !important;
}
@media (min-width:768px){
  .single-product div.product .images{ margin-top:var(--ams-gallery-nudge) !important; }
}

/* Navegación por lotes (single) */
.single-product .woocommerce-product-gallery > .ams-tiles-2x2{ order:1; width:100% !important; }
.single-product .woocommerce-product-gallery > .ams-lot-nav{
  order:2; width:100% !important; margin:0 !important;
  display:flex !important; justify-content:center !important; align-items:center !important; gap:12px !important;
}
.single-product .ams-lot-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 16px; border-radius:12px; font-weight:700; text-decoration:none;
  border:1px solid rgba(0,0,0,.12); box-shadow:0 2px 8px rgba(0,0,0,.06);
  background:#fff; color:#111;
}
.single-product .ams-lot-btn:hover{ filter:brightness(.98); }
.single-product .ams-lot-btn.is-disabled{ opacity:.5; pointer-events:none; }

/* ----------- 3) LUPA / ZOOM DEL TEMA: OCULTAR ----------- */
.single-product .woocommerce-product-gallery__trigger,
.single-product .woocommerce-product-gallery .zoom-icon,
.single-product .woocommerce-product-gallery .pswp__button--zoom,
.single-product .woocommerce-product-gallery .wc-zoom-button{
  display:none !important;
}

/* ----------- 4) OCULTAR BADGE “No. Lote / SKU” (single) ----------- */
.single-product .ams-sku-badge,
.single-product .ams-sku-badge--single,
.single-product .woocommerce-product-gallery .ams-sku-badge,
.single-product .woocommerce-product-gallery .ams-sku-badge--single,
.single-product .woocommerce-product-gallery [aria-label="No. Lote"]{
  display:none !important; visibility:hidden !important;
}

/* ----------- 5) CAJA DE SUBASTA (single) ----------- */
.single-product .entry-summary .ams-auction-box{ background:transparent !important; border:0 !important; padding:0 !important; margin:0 0 22px !important; }
.single-product .entry-summary .ams-auction-box::after{ content:""; display:block; height:1px; margin-top:16px; background:rgba(0,0,0,.06); }
.single-product .entry-summary .ams-auction-rows{ display:grid; row-gap:22px; margin-bottom:12px; }
.single-product .entry-summary .ams-row{ display:grid; grid-template-columns:1fr 1fr; column-gap:44px; align-items:start; }
.single-product .entry-summary .ams-row p{ margin:.1rem 0 .15rem; }

.single-product .entry-summary .ams-tag{ border:1px solid #59b36e; background:#eaf7ee; color:#1d572a; padding:10px 12px; border-radius:10px; font-weight:600; display:inline-flex; }
.single-product .entry-summary .ams-countdown{ display:flex; align-items:center; gap:8px; margin-top:.55rem; }
.single-product .entry-summary .ams-countdown span{ min-width:42px; text-align:center; background:#f3f3f3; border-radius:10px; padding:8px 10px; font-weight:700; }
.single-product .entry-summary .ams-countdown small{ color:#666; margin-right:6px; }
.single-product .entry-summary .ams-countdown.ams-finished span{ background:#f3f3f3; color:#888; }
.single-product .entry-summary .ams-bid-btn{ background:#26a269; color:#fff; border:0; border-radius:12px; padding:12px 20px; font-weight:700; text-decoration:none; box-shadow:0 4px 12px rgba(38,162,105,.25); display:inline-flex; align-items:center; gap:.5rem; margin-top:.6rem; }
.single-product .entry-summary .ams-bid-btn:hover{ filter:brightness(.95); }
.single-product .entry-summary .ams-bid-btn.is-placeholder{ opacity:.75; cursor:not-allowed; }
.single-product .entry-summary .ams-finished-label{ display:none; margin-left:.6rem; background:#f3e7e7; color:#9a1d1d; border:1px solid #e2bcbc; padding:8px 12px; border-radius:10px; font-weight:700; }
@media (max-width:900px){ .single-product .entry-summary .ams-row{ grid-template-columns:1fr; row-gap:8px; } }

/* ----------- 6) SIMPLE LIGHTBOX ----------- */
.slb_wrap .slb_nav, .slb_wrap .slb_prev, .slb_wrap .slb_next, .slb_wrap .slb_close{ display:block !important; opacity:1 !important; visibility:visible !important; z-index:999999 !important; }
.slb_wrap .slb_prev, .slb_wrap .slb_next{ position:fixed !important; top:50% !important; transform:translateY(-50%) !important; background:transparent !important; border:0 !important; box-shadow:none !important; padding:8px !important; }
.slb_wrap .slb_prev{ left:18px !important; } .slb_wrap .slb_next{ right:18px !important; }
.slb_wrap .slb_prev .slb_template_tag, .slb_wrap .slb_next .slb_template_tag, .slb_wrap .slb_close .slb_template_tag{ font-size:48px !important; line-height:1; color:#fff !important; text-shadow:0 0 8px rgba(0,0,0,.7); }
.slb_wrap .slb_prev .slb_template_tag:empty::before{ content:'‹'; }
.slb_wrap .slb_next .slb_template_tag:empty::before{ content:'›'; }
.slb_wrap .slb_close .slb_template_tag:empty::before{ content:'×'; }
.slb_overlay{ background:rgba(0,0,0,.85) !important; z-index:999998 !important; }
.slb_content{ display:flex !important; align-items:center !important; justify-content:center !important; }
.slb_image_wrap, .slb_image{ max-width:90vw !important; max-height:90vh !important; }

/* ----------- 7) CATÁLOGO / WOOF ----------- */
#ams-catalog{ display:grid; grid-template-columns:280px 1fr; gap:24px; align-items:start; }
#ams-filters .woof{ width:100%; }
.woof_products_top_panel, .woof_submit_search_form_container, .woof_ajax_overlay{ display:none !important; }
#ams-filters{ position:sticky; top:96px; }
@media (max-width:1024px){ #ams-catalog{ grid-template-columns:1fr; } #ams-filters{ position:static; } }

/* ----------- 8) OCULTAR “AÑADIR AL CARRITO” ----------- */
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product button.button,
.single-product .single_add_to_cart_button,
.single-product form.cart .button{ display:none !important; }

/* ===== Badge naranja del No. Lote (catálogo) ===== */
.woocommerce ul.products li.product,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{ position: relative; }
.woocommerce ul.products li.product .ams-sku-badge,
.woocommerce ul.products li.product [aria-label="No. Lote"]{
  position:absolute; top:8px; left:8px; z-index:3;
  display:inline-flex; align-items:center; padding:6px 10px; border-radius:8px;
  background:#ffb000; color:#111; font:700 12px/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  box-shadow:0 6px 14px rgba(0,0,0,.18); pointer-events:none;
}

/* =========================================================
   SINGLE PRODUCT — Galería vs Información (desktop)
   ========================================================= */
:root{ --ams-gallery-col: 44%; --ams-gap: 24px; --ams-shift-gallery: 40px; --ams-shift-summary: 0px; }
@media (min-width:1024px){
  .single-product div.product{
    grid-template-columns:var(--ams-gallery-col) calc(100% - var(--ams-gallery-col)) !important;
    column-gap:var(--ams-gap) !important; gap:var(--ams-gap) !important;
  }
  .single-product div.product .images{ flex:0 0 var(--ams-gallery-col) !important; max-width:var(--ams-gallery-col) !important; padding-left:0 !important; }
  .single-product .woocommerce-product-gallery{ width:100% !important; max-width:100% !important; transform:translateX(var(--ams-shift-gallery)); will-change:transform; }
  .single-product div.product .summary{
    flex:1 1 calc(100% - var(--ams-gallery-col)) !important;
    max-width:calc(100% - var(--ams-gallery-col)) !important;
    margin-left:0 !important; padding-left:0 !important;
    transform:none !important; align-self:flex-start !important;
  }
}
@media (max-width:1023px){
  .single-product .woocommerce-product-gallery,
  .single-product div.product .summary{ transform:none !important; }
}

/* ============== Utilidades galería (comparten sala/ficha) ============== */
.ams-frame{max-width:620px;margin:0 auto;}
#amsMainImg{height:440px;object-fit:contain;background:#fff;width:100%;}

/* =========================================================
   SALA DE SUBASTAS — Layout de “cards”
   ========================================================= */

/* Contenedor máximo con scroll horizontal si no cabe */
.ams-room-wrap{max-width:1240px;margin:0 auto;padding:0 16px;overflow-x:auto;}

/* Grid principal — tres columnas: Lotes | Galería | Derecha (Sistema+Historial) */
.ams-room{
  min-width:1180px;           /* evita que desaparezca la derecha */
  display:grid;
  grid-template-columns: 300px minmax(520px, 620px) minmax(420px, 520px);
  gap:24px;
  align-items:start;
}

/* Tarjeta genérica */
.ams-card{ border:1px solid #e5e7eb; border-radius:14px; background:#fff; padding:18px; }

/* Lotes + scroll */
.ams-lots{ max-height:calc(100vh - 180px); overflow-y:auto; padding-right:6px; position:relative; }
.ams-lots::-webkit-scrollbar{ width:8px; }
.ams-lots::-webkit-scrollbar-thumb{ background:#d1d5db; border-radius:6px; }

.ams-lots .lot{
  display:flex;align-items:center;justify-content:space-between;
  border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;margin-bottom:10px;background:#fff
}
.ams-lots .lot.is-current{outline:2px solid #111}
.ams-lots .badge{font:700 12px/1 system-ui; padding:5px 8px;border-radius:999px}
.badge-online{background:#e6f6ee;color:#106a3b;border:1px solid #b6e7cd}
.badge-next{background:#fff3e0;color:#8a4b00;border:1px solid #ffd8a8}
.badge-wait{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}

/* Estado del lote según mi puja */
.ams-lots .lot.lot-win{ background:#e6f6ee; border-color:#b6e7cd; }
.ams-lots .lot.lot-lose{ background:#fee2e2; border-color:#fecaca; }

/* Derecha: dos tarjetas lado a lado (Sistema | Historial) */
.ams-right{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* Tiles contador + textos */
.ams-tiles{display:flex;gap:12px;margin-bottom:14px}
.ams-tile{min-width:58px;text-align:center;border:1px solid #e5e7eb;border-radius:12px;padding:10px 8px;background:#fff}
.ams-tile b{display:block;font-size:18px}
.ams-muted{color:#6b7280}
.ams-alert{background:#fee2e2;color:#7f1d1d;border:1px solid #fecaca;border-radius:10px;padding:10px 12px}

/* Tabla historial */
.ams-table{width:100%;border-collapse:collapse}
.ams-table th,.ams-table td{padding:10px;border-bottom:1px solid #eee;text-align:left}
.ams-pager{display:flex;gap:8px;margin-top:10px}

/* Bloqueo invitado (difuminado) + overlay CTA */
.ams-guest-lock{ filter: blur(5px); pointer-events: none; position: relative; }
.ams-guest-overlay{
  position:absolute; inset:0; display:grid; place-items:center;
  background:rgba(255,255,255,.85); text-align:center; padding:20px; border-radius:14px;
}

/* Responsivo sala */
@media (max-width: 1400px){
  .ams-room{grid-template-columns: 280px minmax(500px, 580px) minmax(380px, 480px);}
  #amsMainImg{height:420px;}
}
@media (max-width: 1200px){
  .ams-room{grid-template-columns: 1fr;}
  .ams-right{grid-template-columns:1fr;}
  .ams-frame{max-width:100%}
  #amsMainImg{height:400px;}
}

/* ===== Timer alineado con etiqueta + estado peligro (≤30 s) ===== */
.ams-timer{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:14px; }
.ams-timer-label{ font-weight:600; color:#6b7280; margin-right:4px; }
.ams-timer.danger .ams-tile{ background:#fee2e2; border-color:#fecaca; }
.ams-timer.danger .ams-tile b{ color:#7f1d1d; }
.ams-timer.danger .ams-muted{ color:#7f1d1d; }
