/* Detalle de lote: componentes locales, navbar y footer compartidos. */
body.ld-site { margin:0; background:#f5f8fb; color:#101a2c; font-family:'Plus Jakarta Sans',Arial,sans-serif; }
html:has(body.ld-site) { background:#f5f8fb; }
.ld-site .hidden { display:none !important; }
/* Misma anchura que la portada (index_diseno.css → .home-page .shell): hasta 1920px con márgenes
   laterales fluidos. El navbar y el pie compartidos se alinean con el contenido solo en esta página. */
.ld-page { position:relative; isolation:isolate; width:calc(min(100%,1920px) - 2 * clamp(16px,2.5vw,40px)); margin:0 auto; padding:16px 0 28px; }
.ld-site :is(.rc-nav__inner,.rc-footer__inner) { max-width:1920px; padding-inline:clamp(16px,2.5vw,40px); }
.ld-page::before,.ld-page::after { content:''; position:absolute; z-index:-1; pointer-events:none; width:130px; height:130px; background:linear-gradient(135deg,#ef0022 0 49%,#ffca00 49% 72%,transparent 72%); }
/* Las esquinas decorativas sobresalen hacia el margen lateral sin pasarse de él. */
.ld-page::before { top:0; left:calc(-1 * min(32px,2.5vw)); clip-path:polygon(0 0,100% 0,0 100%); }
.ld-page::after { right:calc(-1 * min(32px,2.5vw)); bottom:0; transform:rotate(180deg); clip-path:polygon(0 0,100% 0,0 100%); }
@media(max-width:1000px) { .ld-page { width:calc(100% - 40px); }.ld-page::before { left:-20px; }.ld-page::after { right:-20px; }.ld-site :is(.rc-nav__inner,.rc-footer__inner) { padding-inline:20px; } }
@media(max-width:700px) { .ld-page { width:calc(100% - 32px); }.ld-page::before { left:-16px; }.ld-page::after { right:-16px; }.ld-site :is(.rc-nav__inner,.rc-footer__inner) { padding-inline:16px; } }
@media(max-width:360px) { .ld-page { width:calc(100% - 24px); }.ld-page::before { left:-12px; }.ld-page::after { right:-12px; }.ld-site :is(.rc-nav__inner,.rc-footer__inner) { padding-inline:12px; } }
.ld-page * { box-sizing:border-box; }
.ld-page :is(h1,h2,p,dl,dd) { margin:0; }
.ld-page :is(button,input) { font:inherit; }
.ld-page button { cursor:pointer; }
.ld-page a { text-decoration:none; color:inherit; }
.ld-page :is(button,a,input):focus-visible { outline:3px solid #ffb800; outline-offset:3px; }
.ld-page-top { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:43px; margin-bottom:14px; }
.ld-breadcrumb { display:flex; align-items:center; gap:12px; min-width:0; color:#7183a0; font-size:11px; }
.ld-breadcrumb a { display:inline-flex; align-items:center; gap:6px; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ld-breadcrumb a:hover { color:#ed0021; }
.ld-breadcrumb > i { font-size:9px; flex-shrink:0; }
.ld-breadcrumb > span { font-weight:800; color:#101a2c; white-space:nowrap; }
.ld-outline-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:10px 14px; border:1px solid #d5dfed; border-radius:6px; background:#fff; font-size:11px; font-weight:750; white-space:nowrap; }
.ld-outline-button:hover { border-color:#e60020; color:#e60020; }
.ld-hero { display:grid; grid-template-columns:minmax(0,1.22fr) minmax(0,1fr); gap:24px; align-items:start; }
.ld-media,.ld-summary { min-width:0; }
.ld-gallery-stage { position:relative; overflow:hidden; border:1px solid #dce4eb; border-radius:8px; background:#eaf0f4; }
.ld-gallery-stage .lot-carousel,.ld-gallery-stage .rc-single-image { width:100%; height:var(--carousel-height,auto); aspect-ratio:1.36; margin:0; }
.ld-gallery-stage .slick-list,.ld-gallery-stage .slick-track,.ld-gallery-stage .slick-slide,.ld-gallery-stage .slick-slide > div,.ld-gallery-stage .slick-slide > div > div { height:100%; }
.ld-gallery-stage img { display:block; width:100%; height:100%; object-fit:contain; cursor:zoom-in; }
.ld-status-chips { display:flex; align-items:center; flex-wrap:wrap; gap:10px; position:absolute; top:16px; left:16px; z-index:3; max-width:calc(100% - 84px); }
.ld-live-badge,.ld-viewers-badge { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:36px; padding:8px 13px; border-radius:8px; color:#fff; font-size:12px; font-weight:800; line-height:1; box-shadow:0 4px 15px #0002; }
.ld-live-badge { background:linear-gradient(120deg,#00b65c,#008637); }
.ld-live-badge .connection-dot { width:9px; height:9px; border-radius:50%; background:#fff; box-shadow:0 0 0 4px #ffffff24; }
.ld-status-inactive { background:#172639; font-size:10px; }
.ld-viewers-badge { background:linear-gradient(120deg,#ff001f,#e3001a); }
.ld-gallery-zoom,.ld-gallery-arrow { position:absolute; z-index:4; display:flex; align-items:center; justify-content:center; width:39px; height:39px; border:1px solid #e6ebef; border-radius:50%; background:#fff; color:#111d2d; box-shadow:0 3px 14px #0002; }
.ld-gallery-zoom { top:16px; right:16px; }
.ld-gallery-arrow { top:52%; transform:translateY(-50%); }
.ld-gallery-prev { left:11px; }
.ld-gallery-next { right:11px; }
.ld-gallery-arrow:hover,.ld-gallery-zoom:hover { color:#f00020; }
.ld-photo-counter { position:absolute; left:13px; bottom:12px; z-index:3; color:#fff; background:#08131ed9; border-radius:5px; padding:5px 9px; font-size:12px; font-weight:700; }
.ld-thumbnails { display:flex; gap:8px; padding:9px 1px 3px; overflow-x:auto; scrollbar-width:thin; }
.ld-thumbnail { flex:0 0 calc((100% - 40px)/6); min-width:55px; aspect-ratio:1; border:2px solid transparent; padding:0; overflow:hidden; border-radius:7px; background:#e6ecf1; }
.ld-thumbnail.is-active { border:3px solid #f00020; box-shadow:0 0 0 1px #ffb6c1; }
.ld-thumbnail img { display:block; width:100%; height:100%; object-fit:cover; }
.ld-media .skeleton-wrapper { height:100%; width:100%; }
.ld-product-card { border:1px solid #e0e9f2; padding:12px; border-radius:8px; background:#fff; box-shadow:0 4px 24px #203a5410; }
.ld-product-top { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:10px; }
.ld-lot-badge { display:inline-flex; padding:9px 12px; border-radius:6px; background:#101b2c; color:#fff; font-size:11px; font-weight:800; white-space:nowrap; }
.ld-meta { flex:1; min-width:100px; font-size:10px; color:#7a8eae; line-height:1.7; }
.ld-meta > span { padding:0 3px; color:#bcc7d6; }
.ld-product-actions { display:flex; align-items:center; gap:6px; margin-left:auto; }
.ld-favorite,.ld-share { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:32px; padding:6px 8px; background:#fff; color:#12203b; border:1px solid #dce5ef; border-radius:6px; font-size:9px !important; font-weight:750 !important; }
.ld-favorite i,.ld-share i { font-size:14px; }
.ld-favorite.is-favorite,.ld-similar-favorite.is-favorite { color:#f00020; }
.ld-product-card .rc-lot-title { font-size:clamp(20px,2vw,28px); font-weight:850; line-height:1.2; letter-spacing:-.7px; text-transform:uppercase; margin:0 0 6px; overflow-wrap:anywhere; }
.ld-product-subtitle { font-size:12px; line-height:1.5; color:#465d80; margin-bottom:8px !important; }
.ld-category { display:inline-flex; padding:5px 10px; border-radius:5px; background:linear-gradient(110deg,#ffd200,#ffb500); color:#111c2b; font-size:11px; font-weight:850; text-transform:uppercase; margin:4px 0 10px; }
.ld-demand-block { margin:0; font-size:10px; }
.ld-demand-block #fomo-alta-demanda-banner { margin:0 0 10px; padding:8px; border-width:1px; animation:none; }
.ld-demand-block #fomo-alta-demanda-banner .fa-lg { font-size:12px; }
.ld-bid-panel { border:1px solid #ffc9d3; padding:12px 10px; border-radius:8px; background:linear-gradient(110deg,#fff9f9,#fff4f5); margin:0; }
.ld-offer-header { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:12px; align-items:start; margin-bottom:10px; }
.ld-offer-main { display:flex; align-items:center; gap:9px; min-width:0; }
.ld-auction-symbol { display:flex; align-items:center; justify-content:center; width:60px; height:60px; flex-shrink:0; color:#fff; background:linear-gradient(135deg,#ff0024,#e0001d); border-radius:50%; font-size:29px; }
.ld-offer-main > div { min-width:0; flex:1; container-type:inline-size; }
.ld-offer-label { display:block; font-size:12px; font-weight:800; margin-bottom:5px; }
.ld-current-offer { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px; color:#f00020; font-size:clamp(21px,2.4vw,34px); font-weight:850; letter-spacing:-1px; line-height:1.15; }
.ld-current-offer > span { white-space:nowrap; }
.ld-current-offer > em { font-size:clamp(13px,1.6vw,20px); font-weight:450; color:#40577d; font-style:normal; letter-spacing:0; }
.ld-active-note { color:#f00020; font-size:10px; margin-top:5px !important; }
.ld-active-note .live-dot { width:7px; height:7px; background:#f00020; border-radius:50%; display:inline-block; margin-right:4px; }
/* Precio retail (mercado) junto a la oferta actual, para comparar */
.ld-retail { display:flex; flex-wrap:wrap; align-items:center; gap:3px 7px; margin-top:5px !important; color:#40577d; font-size:11px; line-height:1.3; }
.ld-retail strong { color:#243e68; font-weight:800; white-space:nowrap; }
.ld-retail-ahorro { display:inline-flex; align-items:center; gap:3px; padding:1px 8px; border:1px solid #bfe8cf; border-radius:999px; background:#ebf9f1; color:#0f7a3d; font-size:10.5px; font-weight:800; white-space:nowrap; }
.ld-countdown { border-left:1px solid #ecdbe2; padding-left:12px; min-width:0; }
.ld-countdown-label { display:flex; align-items:center; gap:7px; font-size:10px; font-weight:750; margin-bottom:9px; white-space:nowrap; }
.ld-countdown-label i { color:#f00020; font-size:22px; }
.ld-countdown #countdown { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; color:#11213c; }
.ld-countdown-unit { display:flex; flex-direction:column; align-items:center; gap:3px; padding:7px 2px; border:1px solid #ffadb9; border-radius:5px; background:#fff9fa; min-width:0; }
.ld-countdown-unit b { font-size:17px; font-weight:800; }
.ld-countdown-unit small { font-size:9px; color:#71839f; }
.ld-offer-minimum { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px; background:#ffe9e9; border-radius:4px; padding:7px 9px; color:#7585a0; font-size:10px; margin:8px 0 12px !important; }
.ld-offer-minimum strong { color:#152340; }
.ld-bid-controls { display:grid; grid-template-columns:1.2fr repeat(4,minmax(0,1fr)); gap:6px; margin:12px 0 8px; }
.ld-bid-controls button,.ld-bid-amount { display:flex; align-items:center; justify-content:center; min-width:0; min-height:37px; border:1px solid #dce6f2; background:#fff; border-radius:5px; color:#233b65; font-size:11px !important; font-weight:750 !important; }
.ld-bid-controls button:hover { border-color:#f00020; color:#f00020; background:#fff1f4; }
.ld-bid-amount { gap:6px; padding:5px 8px; }
.ld-bid-amount > span { flex-shrink:0; color:#13213b; }
.ld-bid-amount input { width:100%; min-width:0; padding:0; border:0; outline:0; background:transparent; color:inherit; font-weight:750; appearance:textfield; }
.ld-bid-amount input::-webkit-inner-spin-button { appearance:none; }
/* Recuadro principal para escribir la oferta; los incrementos van aparte y son opcionales */
.ld-bid-entry { margin:12px 0 10px; }
.ld-bid-entry-label { display:block; margin-bottom:5px; color:#233b65; font-size:12px; font-weight:750; }
.ld-bid-entry .ld-bid-amount { justify-content:flex-start; min-height:52px; padding:8px 14px; gap:8px; border:2px solid #dce6f2; border-radius:8px; font-size:22px !important; cursor:text; transition:border-color .15s, box-shadow .15s; }
.ld-bid-entry .ld-bid-amount:focus-within { border-color:#f00020; box-shadow:0 0 0 3px rgba(240,0,32,.12); }
.ld-bid-entry .ld-bid-amount input { font-size:inherit; }
.ld-bid-entry .ld-bid-amount > em { flex-shrink:0; font-style:normal; font-size:12px; font-weight:700; color:#71839f; }
.ld-bid-quick-label { margin:0 0 5px; color:#71839f; font-size:11px; font-weight:600; }
.ld-bid-quick-label small { font-weight:400; }
.ld-bid-controls.ld-bid-controls--quick { grid-template-columns:repeat(4,minmax(0,1fr)); margin:0 0 12px; }
.ld-bid-panel .rc-bid-form { display:block; margin:0; }
.ld-bid-panel .rc-bid-form > * { margin-left:0; }
.ld-bid-panel #btn-aumentar-limite { margin-top:8px; }
.ld-bid-panel #btn-pujar-modal,.ld-bid-panel > button,.ld-primary-button { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; min-height:46px; border:1px solid #ff183d; border-radius:6px; color:#fff; background:linear-gradient(110deg,#ff0024,#df001b); box-shadow:inset 0 1px #ffffff1a,0 3px 9px #ed002017; font-size:12px; font-weight:800; text-decoration:none; }
.ld-bid-panel #btn-pujar-modal:hover:not(:disabled),.ld-primary-button:hover { background:#d9001b; }
.ld-bid-panel button:disabled { cursor:not-allowed; }
.ld-guarantee-note { position:relative; color:#e60022; font-size:11px; line-height:1.6; margin-top:8px !important; padding-left:30px; }
.ld-guarantee-note > i { position:absolute; left:3px; top:2px; font-size:22px; }
.ld-guarantee-note > a { display:block; color:#365ef3; font-weight:700; margin-top:0 !important; }
.ld-support { font-size:10px; color:#7785a0; margin:2px 0; }
.ld-support summary { cursor:pointer; }
.ld-support a { color:#15803d; }
.ld-bid-panel #oferta-minima-helper { color:#6f7d94; margin-top:6px; font-size:10px; }
.ld-bid-panel .rc-guarantee-meter { margin-top:12px; padding:10px !important; font-size:11px !important; }
.ld-bid-panel .rc-guarantee-meter > div:last-of-type:not(#garantia-alerta) { flex-wrap:wrap; gap:4px; }
.ld-alert { padding:12px 15px; border:1px solid #fecdd3; border-radius:7px; background:#fff0f3; color:#b91c1c; font-size:12px; margin-bottom:14px; }
.ld-price-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:8px; }
.ld-price-grid > div { display:flex; align-items:center; gap:15px; min-width:0; min-height:70px; padding:12px 15px; border:1px solid #e0e9f3; border-radius:7px; background:#fff; }
.ld-price-grid > div > i { color:#f00020; font-size:26px; flex-shrink:0; }
.ld-price-grid > div > span { display:flex; flex-direction:column; gap:5px; min-width:0; }
.ld-price-grid small { color:#4f658c; font-size:11px; }
.ld-price-grid strong { font-size:14px; font-weight:850; }
.ld-price-grid em { font-size:11px; font-style:normal; font-weight:500; }
.ld-price-grid time { font-size:11px; color:#243e68; line-height:1.4; }
.ld-summary-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; font-size:10px; color:#6e809d; }
.ld-summary-tools button { background:transparent; border:0; padding:2px 0; color:inherit; }
.ld-summary-tools span { display:flex; gap:14px; }
.ld-summary-tools a:hover,.ld-summary-tools button:hover { color:#f00020; }
.ld-details { margin-top:22px; }
.ld-page .rc-detail-tabs { display:grid; grid-template-columns:1fr 1fr 1.08fr 1fr; gap:6px; padding:7px; border:1px solid #07101c; border-radius:8px; background:#07101c; margin-bottom:16px; }
.ld-page .rc-detail-tab { display:flex; align-items:center; justify-content:center; gap:15px; min-height:48px; padding:8px; border:1px solid #354355; border-radius:5px; color:#edf1f7; background:linear-gradient(#162232,#0b1421); font-size:12px; font-weight:750; }
.ld-page .rc-detail-tab i { font-size:23px; }
.ld-page .rc-detail-tab.border-blue-500 { background:linear-gradient(110deg,#ff0024,#df001b); border-color:#ff2041; color:#fff; }
.ld-page .rc-detail-tab:hover { border-color:#e80022; }
.ld-page .tab-content { transition:opacity .2s; }
.ld-info-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:12px; align-items:start; }
.ld-info-main,.ld-info-aside { display:flex; flex-direction:column; gap:16px; min-width:0; }
.ld-card { padding:16px; border:1px solid #e1eaf4; border-radius:7px; background:#fff; box-shadow:0 2px 15px #3f617807; min-width:0; }
.ld-card h2 { display:flex; align-items:center; gap:10px; font-size:16px; font-weight:850; line-height:1.3; letter-spacing:-.45px; margin-bottom:14px; }
.ld-card h2 > i { font-size:24px; color:#f00020; flex-shrink:0; }
.ld-card h2 > small { margin-left:auto; padding:4px 7px; border-radius:4px; background:#f3f6fa; font-size:10px; color:#8392a9; letter-spacing:0; white-space:nowrap; }
.ld-card-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:14px; }
.ld-card-heading h2 { margin:0; }
.ld-card-heading > a { font-size:10px; font-weight:750; white-space:nowrap; }
.ld-description-text { font-size:12px; line-height:1.7; color:#405a82; overflow-wrap:anywhere; }
.ld-notes { font-size:11px; line-height:1.6; border-left:3px solid #f00020; background:#fff4f5; padding:9px 12px; margin-top:12px !important; color:#a93143; }
.ld-spec-tables { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ld-spec-table { min-width:0; border:1px solid #e3ebf5; border-radius:4px; overflow:hidden; }
.ld-spec-table > div { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr); border-top:1px solid #e3ebf5; min-height:34px; font-size:10px; line-height:1.5; }
.ld-spec-table > div:first-child { border-top:0; }
.ld-spec-table dt { display:flex; align-items:center; gap:10px; padding:7px 10px; background:#f6f9fc; color:#788aaa; border-right:1px solid #e3ebf5; min-width:0; }
.ld-spec-table dt i { color:#14253f; font-size:12px; width:15px; text-align:center; flex-shrink:0; }
.ld-spec-table dd { padding:7px 11px; color:#405a82; overflow-wrap:anywhere; min-width:0; }
.ld-location { display:grid; grid-template-columns:1.3fr 1fr; gap:14px; align-items:center; }
.ld-map-art { border-radius:5px; overflow:hidden; background:#eaf0ed; aspect-ratio:1.95; }
.ld-map-art svg { width:100%; height:100%; display:block; }
.ld-location strong { font-size:10px; font-weight:800; }
.ld-location p { font-size:11px; line-height:1.6; color:#7585a2; margin:3px 0 15px; overflow-wrap:anywhere; }
.ld-location .ld-outline-button { padding:9px 10px; font-size:9px; background:#f7faff; white-space:normal; }
.ld-muted,.ld-panel-empty { font-size:12px; color:#8795ac; line-height:1.7; }
.ld-panel-empty { padding:24px 10px; text-align:center; background:#f8fafc; border-radius:6px; }
.ld-page .rc-gallery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.rc-gallery-grid > div { border:1px solid #e0e8f2; border-radius:7px; overflow:hidden; }
.rc-gallery-grid img { width:100%; aspect-ratio:4/3; display:block; object-fit:contain; cursor:zoom-in; background:#f3f6f9; }
.rc-gallery-grid span { display:block; padding:8px 10px; font-size:10px; color:#7286a5; }
.ld-table-scroll { overflow:auto; }
.ld-page .rc-bid-table { width:100%; border-collapse:collapse; font-size:12px; text-align:left; }
.ld-page .rc-bid-table th { padding:12px; font-size:10px; color:#7c8ba2; background:#f3f7fb; text-transform:uppercase; }
.ld-page .rc-bid-table td { padding:12px; border-bottom:1px solid #e7edf5; color:#455f82; white-space:nowrap; }
.ld-page .rc-bid-table td:first-child { color:#ef0021; font-weight:800; }
.ld-page .ratio-16x9 { aspect-ratio:16/9; background:#111827; border-radius:6px; overflow:hidden; max-width:850px; margin:auto; }
.ld-page .ratio-16x9 iframe { width:100%; height:100%; border:0; display:block; }
.ld-similar { margin-top:16px; }
.ld-similar-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.ld-similar-card { display:grid; grid-template-columns:41% minmax(0,1fr); gap:10px; padding:6px; border:1px solid #e0e8f2; border-radius:6px; min-width:0; }
.ld-similar-image { background:#edf2f6; border-radius:4px; overflow:hidden; }
.ld-similar-image img { width:100%; height:100%; min-height:106px; object-fit:contain; display:block; }
.ld-similar-card > div { position:relative; padding:3px 4px 33px 0; min-width:0; }
.ld-similar-favorite { position:absolute; top:3px; right:3px; padding:0; border:0; background:none; color:#15243c; font-size:13px !important; }
.ld-similar-number { display:block; color:#f00020; font-size:11px; font-weight:800; padding-right:17px; }
.ld-similar-title { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:11px; color:#405b82 !important; line-height:1.4; margin-top:3px; }
.ld-similar-card small { display:block; font-size:9px; color:#8c9cbc; margin-top:4px; }
.ld-similar-card strong { position:absolute; bottom:5px; left:0; color:#956000; font-size:15px; font-weight:850; letter-spacing:-.5px; }
.ld-similar-go { position:absolute; right:0; bottom:0; display:flex; justify-content:center; align-items:center; width:33px; height:33px; background:linear-gradient(120deg,#ffd200,#ffbf00); border-radius:4px; color:#111d2a; }
.ld-feedback { position:fixed; bottom:24px; left:50%; transform:translateX(-50%); z-index:100; max-width:calc(100% - 40px); padding:12px 20px; background:#102037; color:#fff; border-radius:8px; font-size:12px; box-shadow:0 5px 25px #0003; }
.ld-empty { display:flex; align-items:center; flex-direction:column; gap:16px; text-align:center; padding:60px 25px; margin:30px auto; max-width:650px; }
.ld-empty > i { font-size:50px; color:#f00020; }
.ld-empty h1 { font-size:25px; font-weight:850; }
.ld-empty p { color:#7c8aa0; font-size:13px; }
.ld-empty a { width:auto; padding:10px 24px; }
.ld-site .zoom-modal { display:flex; align-items:center; justify-content:center; position:fixed; inset:0; z-index:10001; padding:65px 18px 20px; background:#030816ed; }
.ld-site .zoom-modal-content { position:relative; display:flex; align-items:center; justify-content:center; width:min(100%,1120px); height:min(82vh,760px); overflow:hidden; border:1px solid #ffffff26; border-radius:8px; background:#050812; }
.ld-site .zoom-modal-content img { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; transform-origin:center; touch-action:none; will-change:transform; user-select:none; -webkit-user-drag:none; }
.ld-site .zoom-modal-toolbar { position:absolute; z-index:10002; top:15px; left:50%; transform:translateX(-50%); display:flex; gap:8px; }
.ld-site .zoom-modal-toolbar button,.ld-site .close-modal-btn { display:flex; align-items:center; justify-content:center; width:38px; height:38px; border:1px solid #ffffff33; border-radius:6px; background:#1c293ce6; color:#fff; }
.ld-site .close-modal-btn { position:absolute; top:10px; right:10px; font-size:28px; }
.ld-site .zoom-modal-toolbar button:hover,.ld-site .close-modal-btn:hover { background:#ef0021; }
.ld-site #modal-confirmacion { position:fixed; inset:0; z-index:10000; display:flex; align-items:center; justify-content:center; padding:20px; background:#071427aa; backdrop-filter:blur(4px); }
.ld-site .rc-modal-card { width:min(440px,100%); padding:26px; border:1px solid #e2eaf4; border-radius:13px; background:#fff; box-shadow:0 20px 90px #0004; }
.ld-site .rc-modal-card img { height:70px; width:auto; margin:0 auto 15px; }
.ld-site .rc-modal-card h3 { font-size:22px; font-weight:800; color:#10203b; }
.ld-site .rc-modal-card p { margin:20px 0; font-size:14px; color:#516482; line-height:1.7; }
.ld-site .rc-modal-card button { border:0; border-radius:6px; padding:11px 16px; font-weight:750; font-size:12px; }
.ld-site #btn-confirmar-puja { background:#f00020; color:#fff; }
.ld-site .mobile-sticky-cta { display:none; }
@media(max-width:1100px) {
 .ld-hero { gap:18px; }
 .ld-auction-symbol { width:46px; height:46px; font-size:24px; }
 .ld-offer-header { gap:9px; }
 .ld-countdown { padding-left:9px; }
 .ld-countdown-label { font-size:9px; }
 .ld-countdown-label i { font-size:18px; }
 .ld-offer-label { font-size:11px; }
 .ld-current-offer { font-size:25px; }
 .ld-current-offer > em { font-size:15px; }
 .ld-countdown-unit b { font-size:14px; }
 .ld-price-grid > div { padding:12px; gap:10px; }
 .ld-price-grid > div > i { font-size:23px; }
 .ld-product-card .rc-lot-title { font-size:22px; }
 .ld-card { padding:14px; }
 .ld-card h2 { font-size:14px; }
 .ld-spec-table dt { padding:7px; gap:6px; }
 .ld-spec-table dd { padding:7px; }
}
@media(max-width:850px) {
 .ld-similar-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ld-hero { grid-template-columns:1fr; gap:20px; }
 .ld-gallery-stage .lot-carousel,.ld-gallery-stage .rc-single-image { aspect-ratio:1.45; }
 .ld-current-offer { font-size:33px; }
 .ld-auction-symbol { width:60px; height:60px; font-size:29px; }
 .ld-offer-header { grid-template-columns:1.35fr 1fr; gap:20px; }
 .ld-product-top { flex-wrap:nowrap; }
 .ld-info-grid { grid-template-columns:1fr; }
 .ld-info-aside { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:start; }
 .ld-page .rc-detail-tab { gap:10px; font-size:11px; min-height:44px; }
 .ld-page .rc-detail-tab i { font-size:19px; }
 .ld-page .rc-gallery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:600px) {
 .ld-page { padding-top:12px; padding-bottom:15px; }
 .ld-page::before,.ld-page::after { width:70px; height:70px; }
 .ld-page-top { flex-direction:column; align-items:flex-start; gap:10px; margin-bottom:13px; }
 .ld-breadcrumb { font-size:9px; gap:7px; width:100%; }
 .ld-breadcrumb a:nth-of-type(2) { max-width:65%; }
 .ld-page-top .ld-outline-button { padding:8px 10px; font-size:10px; align-self:flex-end; }
 .ld-status-chips { top:11px; left:11px; gap:6px; max-width:calc(100% - 60px); }
 .ld-live-badge,.ld-viewers-badge { font-size:9px; min-height:29px; padding:7px 9px; gap:6px; }
 .ld-status-inactive { font-size:8px; }
 .ld-gallery-zoom { top:10px; right:10px; width:31px; height:31px; font-size:12px; }
 .ld-gallery-arrow { width:31px; height:31px; font-size:12px; }
 .ld-photo-counter { left:10px; bottom:9px; font-size:10px; }
 .ld-product-top { flex-wrap:wrap; gap:7px; }
 .ld-lot-badge { font-size:9px; padding:7px 10px; }
 .ld-meta { font-size:9px; }
 .ld-product-actions { margin-left:0; }
 .ld-favorite,.ld-share { min-height:29px; font-size:9px !important; }
 .ld-product-card .rc-lot-title { font-size:21px; }
 .ld-offer-header { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:9px; }
 .ld-offer-main { gap:7px; }
 .ld-auction-symbol { width:41px; height:41px; font-size:20px; }
 .ld-current-offer { font-size:25px; }
 .ld-current-offer > em { font-size:13px; }
 .ld-offer-label { font-size:10px; }
 .ld-countdown-label { font-size:9px; gap:5px; }
 .ld-countdown-label i { font-size:16px; }
 .ld-countdown { padding-left:8px; }
 .ld-countdown-unit { padding:6px 1px; }
 .ld-countdown-unit b { font-size:14px; }
 .ld-countdown-unit small { font-size:8px; }
 .ld-active-note { font-size:8px; }
 .ld-bid-controls { gap:4px; }
 .ld-bid-controls button,.ld-bid-amount { font-size:9px !important; }
 .ld-bid-amount { padding:5px; gap:3px; }
 .ld-price-grid > div { min-height:67px; padding:10px; gap:9px; }
 .ld-price-grid small,.ld-price-grid time { font-size:9px; }
 .ld-price-grid strong { font-size:12px; }
 .ld-price-grid > div > i { font-size:22px; }
 .ld-details { margin-top:17px; }
 .ld-page .rc-detail-tabs { grid-template-columns:1fr 1fr; gap:5px; padding:6px; }
 .ld-page .rc-detail-tab { min-height:41px; justify-content:flex-start; padding-left:13px; }
 .ld-card h2 { font-size:14px; gap:8px; }
 .ld-card h2 > i { font-size:22px; }
 .ld-spec-tables,.ld-info-aside { grid-template-columns:1fr; gap:10px; }
 .ld-location { grid-template-columns:1.1fr 1fr; }
 .ld-location > div:last-child { display:block; }
 .ld-location p { margin-bottom:10px; }
 .ld-description-text { font-size:11px; }
 .ld-similar-grid { grid-template-columns:1fr; gap:8px; }
 .ld-similar-card { grid-template-columns:90px minmax(0,1fr); }
 .ld-similar-image img { min-height:95px; }
 .ld-similar-title { font-size:12px; }
 .ld-similar-card strong { font-size:17px; }
 .ld-page .rc-gallery-grid { grid-template-columns:1fr 1fr; gap:9px; }
 .ld-site .mobile-sticky-cta { display:flex; font-family:inherit; border-top:1px solid #e2e8f0; box-shadow:0 -4px 20px #1b304514; transform:translateY(100%); transition:transform .2s; }
 .ld-site .mobile-sticky-cta.visible { transform:translateY(0); }
 .ld-site .mobile-sticky-cta button { background:#f00020; font-size:12px; }
 .ld-site .mobile-sticky-cta span:last-child { color:#f00020; }
 .ld-site .rc-footer { padding-bottom:70px; }
 .ld-site .zoom-modal { padding:65px 10px 10px; }
}
@media(prefers-reduced-motion:reduce) { .ld-site *, .ld-site *::before,.ld-site *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }
.ld-page .ld-current-offer.ld-price-long { font-size:clamp(14px,calc(170cqw / var(--ld-price-digits,12)),30px); }

/* Efectos del cierre extendido y de las pujas existentes. */
@keyframes pulse-green {
    0% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.4); }
    70% { box-shadow: 0 0 0 8px rgba(22, 163, 74, 0); }
    100% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0); }
}
.winning-pulse {
    animation: pulse-green 2s infinite;
}
.live-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: #dc2626;
    border-radius: 50%;
    animation: pulse-red 1.5s infinite;
    margin-right: 4px;
}
@keyframes pulse-red {
    0% { box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7); }
    70% { box-shadow: 0 0 0 6px rgba(220, 38, 38, 0); }
    100% { box-shadow: 0 0 0 0 rgba(220, 38, 38, 0); }
}

/* Lluvia de tristeza cuando te superan (caras tristes + corazones rotos cayendo) */
@keyframes rc-fall-emoji {
    0%   { transform: translateY(-12vh) rotate(0deg);   opacity: 1; }
    100% { transform: translateY(110vh) rotate(200deg); opacity: 0; }
}
.rc-emoji-tristeza {
    position: fixed;
    top: 0;
    z-index: 9998;
    pointer-events: none;
    user-select: none;
    will-change: transform, opacity;
    animation-name: rc-fall-emoji;
    animation-timing-function: linear;
    animation-fill-mode: forwards;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.18));
}

/* Sticky CTA Mobile */
.mobile-sticky-cta {
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.mobile-sticky-cta.visible {
    transform: translateY(0);
}

/* Estilos Premium para el Tour (Driver.js) */
.driver-popover {
    border-radius: 16px !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
    padding: 24px !important;
    font-family: inherit !important;
    border: 1px solid #f1f5f9 !important;
}
.driver-popover-title {
    font-size: 18px !important;
    font-weight: 900 !important;
    color: #0f172a !important;
    margin-bottom: 10px !important;
}
.driver-popover-description {
    font-size: 14px !important;
    color: #475569 !important;
    line-height: 1.6 !important;
}
.driver-popover-footer {
    margin-top: 24px !important;
}
.driver-popover-footer button {
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    text-shadow: none !important;
    border: none !important;
    transition: all 0.2s !important;
}
.driver-popover-next-btn {
    background-color: #2563eb !important; /* blue-600 */
    color: white !important;
}
.driver-popover-next-btn:hover {
    background-color: #1d4ed8 !important; /* blue-700 */
}
.driver-popover-prev-btn {
    background-color: #f1f5f9 !important;
    color: #475569 !important;
}
.driver-popover-prev-btn:hover {
    background-color: #e2e8f0 !important;
}
.driver-popover-close-btn {
    color: #cbd5e1 !important;
    top: 15px !important;
    right: 15px !important;
}
.driver-popover-close-btn:hover {
    color: #ef4444 !important;
}

/* FOMO Panic Mode Styles */
@keyframes fomo-pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.04); color: #ef4444; text-shadow: 0 0 10px rgba(239, 68, 68, 0.6); }
    100% { transform: scale(1); }
}
@keyframes fomo-heartbeat {
    0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.7); }
    15% { transform: scale(1.03); box-shadow: 0 0 0 10px rgba(22, 163, 74, 0); }
    30% { transform: scale(1); box-shadow: 0 0 0 0 rgba(22, 163, 74, 0); }
    45% { transform: scale(1.03); box-shadow: 0 0 0 10px rgba(22, 163, 74, 0); }
    100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(22, 163, 74, 0); }
}
.fomo-heartbeat-btn {
    animation: fomo-heartbeat 1.5s infinite;
    background-color: #15803d !important;
}
@keyframes fomo-flash-extend {
    0% { background-color: rgba(254, 240, 138, 0); }
    20% { background-color: rgba(254, 240, 138, 0.8); }
    100% { background-color: rgba(254, 240, 138, 0); }
}
.fomo-flash-body {
    animation: fomo-flash-extend 1.5s ease-out;
}
.fomo-panic {
    animation: fomo-pulse 1s infinite ease-in-out;
    color: #ef4444 !important;
    font-weight: 900 !important;
}
