/* Layout base */
.rlc-archive.rlc-dark{ background:#0b0b0c; color:#f2f2f2; }
.container{ max-width:1200px; margin:0 auto; padding:1rem; }
.rlc-hero-title{ font-size:clamp(2rem,5vw,3rem); margin:1rem 0 1rem; font-weight:800; }
.rlc-grid{ display:grid; grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); gap:1rem; }

/* Card */
.rlc-card{ border:1px solid #2b2b2b; background:#111; border-radius:12px; overflow:hidden; position:relative; isolation:isolate; }
.rlc-card img{ width:100%; height:180px; object-fit:cover; display:block; pointer-events:none !important; }
.rlc-body{ padding:.75rem; position:relative; z-index:2; }
.rlc-title{ margin:0 0 .3rem; font-size:1rem; }
.rlc-meta{ display:flex; gap:.5rem; opacity:.9; flex-wrap:wrap; font-size:.9rem; }
.rlc-price-line{ display:flex; gap:.5rem; align-items:center; margin-top:.5rem; }
.rlc-price-badge{ background:#111; border:1px solid #333; border-radius:10px; padding:.2rem .5rem; font-weight:700; }
.rlc-fee{ opacity:.9; font-size:.95rem; }
.rlc-card-actions{ display:flex; gap:.5rem; flex-wrap:wrap; margin-top:.5rem; position:relative; z-index:3; }

/* Botones */
.rlc-btn{ display:inline-block; padding:.5rem .9rem; border-radius:999px; border:1px solid rgba(255,255,255,.25); text-decoration:none; font-weight:600; cursor:pointer !important; }
.rlc-btn-primary{ background:#7c3aed; border-color:#7c3aed; color:#fff; }
.rlc-btn-ghost{ background:transparent; color:#fff; }

/* Full-card overlay submit */
.rlc-card-form{ position:relative; }
.rlc-card-overlay{ position:absolute; inset:0; border:0; background:transparent; cursor:pointer !important; z-index:1; }
.rlc-card .rlc-card-actions .rlc-btn{ position:relative; z-index:5; } /* por encima del overlay */

/* Modal */
#rlc-modal-root{ position:fixed; inset:0; z-index:9999; }
.rlc-modal-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.6); display:flex; align-items:center; justify-content:center; padding:1rem; }
.rlc-modal{ background:#0f0f10; color:#fff; width:min(900px,100%); border-radius:16px; overflow:hidden; border:1px solid #242424; position:relative; }
.rlc-modal-close{ position:absolute; right:.5rem; top:.3rem; font-size:1.6rem; line-height:1; text-decoration:none; color:#fff; }
.rlc-modal-header{ display:flex; justify-content:space-between; align-items:baseline; gap:1rem; padding:1rem 1.25rem; border-bottom:1px solid #242424; }
.rlc-modal-grid{ display:grid; grid-template-columns:1.2fr 1fr; gap:1rem; padding:1rem 1.25rem 1.25rem; }
.rlc-modal-media img{ width:100%; height:auto; border-radius:12px; }
.rlc-specs{ list-style:none; padding:0; margin:0 0 1rem; display:grid; grid-template-columns:1fr 1fr; gap:.5rem 1rem; }
.rlc-fin-grid{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:.5rem; margin:.5rem 0; }
.rlc-fin-grid input{ background:#111; color:#eee; border:1px solid #333; border-radius:8px; padding:.4rem .5rem; }
.rlc-cuota{ display:flex; align-items:baseline; gap:.5rem; }
.rlc-cuota-val{ font-weight:700; }
@media(max-width:900px){ .rlc-modal-grid{ grid-template-columns:1fr; } }


/* ----- UI polish (3.0.1) ----- */

/* Tipografía y contraste */
.rlc-archive.rlc-dark{background:#0a0a0b;color:#eaeaea}
.rlc-hero-title{letter-spacing:.2px}

/* Tarjeta */
.rlc-card{border:1px solid #1f1f21;background:#111;border-radius:16px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.rlc-card img{height:200px}
.rlc-title{font-weight:700;font-size:1.05rem}
.rlc-price-badge{background:#121214;border:1px solid #2a2a2e;border-radius:12px;padding:.25rem .6rem}
.rlc-fee{opacity:.8}

/* Botones */
.rlc-btn{border-radius:12px;padding:.55rem 1rem;border:1px solid #2f2f36;transition:transform .04s ease,filter .2s}
.rlc-btn:hover{filter:brightness(1.06)}
.rlc-btn:active{transform:translateY(1px)}
.rlc-btn-primary{background:#7c3aed;border-color:#7c3aed}
.rlc-btn-ghost{background:#0f0f12}

/* Modal */
#rlc-modal-root .rlc-modal{background:#101013;border:1px solid #24242a;border-radius:18px;box-shadow:0 18px 60px rgba(0,0,0,.45)}
.rlc-modal-header{padding:1.2rem 1.4rem;border-bottom:1px solid #222}
.rlc-modal-header h2{font-size:1.9rem;line-height:1.2;margin:0}
.rlc-modal-header .rlc-price{font-weight:800;font-size:1.1rem;background:#15151a;border:1px solid #2a2a30;border-radius:10px;padding:.35rem .6rem}
.rlc-modal-grid{gap:1.2rem;padding:1.2rem 1.4rem 1.5rem}
.rlc-modal-media img{border-radius:14px}
.rlc-specs li{background:#111218;border:1px solid #232330;border-radius:10px;padding:.45rem .6rem}
.rlc-fin-grid input{background:#0f1016;border:1px solid #2a2a33;border-radius:10px;padding:.5rem .6rem}
.rlc-cuota{margin-top:.25rem}
.rlc-cuota-val{font-size:1.3rem}

/* Cerrar */
.rlc-modal-close{right:.8rem;top:.6rem;font-size:1.8rem;opacity:.9}
.rlc-modal-close:hover{opacity:1}

/* Responsivo */
@media (max-width:900px){
  .rlc-modal-header h2{font-size:1.5rem}
  .rlc-modal-header .rlc-price{font-size:1rem}
}


/* 3.0.2 hero + filters */
.rlc-hero{position:relative; overflow:hidden; border:1px solid #1d1d22; border-radius:20px; padding:2rem; margin:1rem 0 1.25rem; background:radial-gradient(1200px 500px at 10% 10%, rgba(124,58,237,.18), transparent 60%), #0d0d10}
.rlc-hero-kicker{font-size:.9rem; opacity:.9; margin-bottom:.25rem}
.rlc-hero-title{font-size:clamp(2rem,5vw,3rem); font-weight:900; margin:0 0 .5rem}
.rlc-hero-sub{max-width:70ch; opacity:.9}
.rlc-hero-actions{display:flex; gap:.6rem; margin-top:1rem}
.rlc-hero-video{position:absolute; right:-10%; bottom:-10%; width:min(700px,60%); opacity:.15; pointer-events:none; filter:saturate(.9)}

.rlc-filters{margin:.5rem 0 1rem}
.rlc-filters-form{display:flex; flex-wrap:wrap; gap:.5rem}
.rlc-filters-form input{background:#101016;border:1px solid #2a2a33;border-radius:12px;padding:.55rem .7rem;color:#eaeaea}
@media(max-width:900px){ .rlc-hero-video{display:none} }


/* 3.1.0 grid + filters + pager */
.rlc-grid{grid-template-columns:repeat(3, minmax(0,1fr))}
@media(max-width:1100px){.rlc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.rlc-grid{grid-template-columns:1fr}}

.rlc-card{transition:transform .12s ease, box-shadow .2s}
.rlc-card:hover{transform:translateY(-2px); box-shadow:0 10px 28px rgba(0,0,0,.35)}

.rlc-filters-form select{background:#101016;border:1px solid #2a2a33;border-radius:12px;padding:.55rem .7rem;color:#eaeaea}

.rlc-resultbar{display:flex; justify-content:space-between; align-items:center; gap:1rem; margin:.2rem 0 .6rem}
.rlc-pager .page-numbers{display:inline-block; padding:.3rem .55rem; border:1px solid #2a2a33; border-radius:8px; margin-left:.25rem}
.rlc-pager .current{background:#7c3aed; border-color:#7c3aed; color:#fff}


/* 3.2.0 infinite scroll */
#rlc-infinite-sentinel{height:1px}


/* === 3.3.0 Visual polish === */

/* Fondo con profundidad */
body.rlc-archive.rlc-dark{
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(124,58,237,.10), transparent 60%),
    radial-gradient(800px 500px at 100% 10%, rgba(59,130,246,.08), transparent 55%),
    #0a0a0b;
}

/* Hero mejorado */
.rlc-hero{
  position:relative;
  border-radius:22px;
  background:
    radial-gradient(1200px 500px at 20% -10%, rgba(124,58,237,.22), transparent 60%),
    radial-gradient(800px 400px at 100% 10%, rgba(59,130,246,.18), transparent 55%),
    #0d0d10;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 10px 40px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.03);
}
.rlc-hero-title{font-size:clamp(2.2rem,4.8vw,3.2rem);letter-spacing:.2px}
.rlc-hero-actions .rlc-btn-primary{box-shadow:0 10px 30px rgba(124,58,237,.25)}

/* Tarjetas “glass” */
.rlc-grid{gap:1.1rem}
.rlc-card{
  background:rgba(17,17,18,.85);
  border-radius:18px;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 12px 28px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.02);
  backdrop-filter:saturate(120%) blur(6px);
  overflow:hidden;
  transition:transform .14s ease, box-shadow .2s ease;
}
.rlc-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(0,0,0,.42)}
.rlc-card img{height:220px; transition:transform .35s ease}
.rlc-card:hover img{transform:scale(1.025)}
.rlc-body{padding:.9rem}

/* chips meta */
.rlc-meta{gap:.45rem}
.rlc-meta span{
  display:inline-flex; align-items:center; gap:.35rem;
  background:#141418; border:1px solid #26262f; color:#cfcfd6;
  padding:.28rem .55rem; border-radius:999px; font-size:.85rem
}

/* precio y cuota */
.rlc-price-line{align-items:center; gap:.6rem}
.rlc-price-badge{
  background:linear-gradient(180deg,#17171c 0%,#121216 100%);
  border:1px solid #2a2a33; border-radius:999px;
  padding:.28rem .65rem; box-shadow:inset 0 1px 0 rgba(255,255,255,.06)
}
.rlc-fee{opacity:.85}

/* botones */
.rlc-btn{border-radius:12px;padding:.55rem 1rem;border:1px solid #2f2f36}
.rlc-btn-primary{
  background:#7c3aed;border-color:#7c3aed;color:#fff;
  box-shadow:0 6px 16px rgba(124,58,237,.35)
}
.rlc-btn-primary:hover{filter:brightness(1.06)}
.rlc-btn-ghost{background:#0f0f12;color:#e9e9f1}

/* badge de estado */
.rlc-badge{
  position:absolute; left:.65rem; top:.65rem;
  background:#10b981; color:#02130e; font-weight:700;
  border-radius:10px; padding:.25rem .5rem; font-size:.8rem;
  border:1px solid rgba(255,255,255,.08); z-index:6
}

/* skeleton loader */
.rlc-skel{
  border-radius:18px; background:#101013; border:1px solid #1c1c1f;
  height:320px; animation:rlc-skel 1.2s infinite linear;
}
@keyframes rlc-skel{
  0%{background:#0f1013}
  50%{background:#121319}
  100%{background:#0f1013}
}

/* 3.5.0 extras */
.rlc-sticky{ position:sticky; top:0; z-index:50; backdrop-filter:blur(6px); background:linear-gradient(180deg, rgba(10,10,11,.85), rgba(10,10,11,.6)); padding:.5rem .5rem; border-radius:14px; border:1px solid rgba(255,255,255,.05) }
.rlc-compare{display:inline-flex; align-items:center; gap:.35rem; font-size:.9rem; opacity:.9}
.rlc-cost{width:100%; border-collapse:separate; border-spacing:0 .35rem; margin:.5rem 0 1rem}
.rlc-cost td{background:#111218; border:1px solid #242433; padding:.45rem .55rem; border-radius:10px}
.rlc-cost-total td{font-weight:700; background:#171722}
.rlc-inspect{margin-top:1rem}
.rlc-ins-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:.5rem; margin-bottom:.5rem}
.rlc-ins-grid input, .rlc-inspect textarea{background:#0f1016;border:1px solid #2a2a33;border-radius:10px;padding:.5rem .6rem;color:#eaeaea}
.rlc-alert{background:#0e1a12; border:1px solid #173d2a; color:#9ef0c1; padding:.5rem .6rem; border-radius:10px; margin:.5rem 0}
@media(max-width:900px){ .rlc-ins-grid{grid-template-columns:1fr 1fr} }


/* 3.6.0 disclaimers + CTA */
.rlc-disclaimer{background:#141418;border:1px solid #26262f;border-radius:12px;padding:.75rem .9rem;color:#d8d8de;margin:.5rem 0 1rem}
.rlc-disclaimer p{margin:.35rem 0}
.rlc-inspect-cta{margin:.4rem 0 1rem}


/* 3.6.1 disclaimers + CTA */
.rlc-disclaimer{background:#141418;border:1px solid #26262f;border-radius:12px;padding:.75rem .9rem;color:#d8d8de;margin:.5rem 0 1rem}
.rlc-disclaimer p{margin:.35rem 0}
.rlc-inspect-cta{margin:.4rem 0 1rem}


/* 3.6.2 inline WA next to Details */
.rlc-details + .rlc-wa-inline{ margin-left:.5rem }


/* ===== 3.6.3 Tarjeta premium ===== */
.rlc-grid{gap:1.25rem}
.rlc-card{
  position:relative;
  border-radius:20px;
  background:linear-gradient(180deg,#121215 0%,#0d0d10 100%);
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 14px 40px rgba(0,0,0,.45), inset 0 0 0 1px rgba(255,255,255,.02);
  overflow:hidden;
  transition:transform .16s ease, box-shadow .2s ease, border-color .2s ease;
}
.rlc-card:hover{
  transform:translateY(-4px);
  border-color:rgba(124,58,237,.22);
  box-shadow:0 18px 50px rgba(0,0,0,.55);
}
.rlc-card img{
  height:260px;
  width:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.05) contrast(1.02);
  transition:transform .35s ease;
}
.rlc-card:hover img{transform:scale(1.015)}
.rlc-badge{
  left:.8rem; top:.8rem;
  background:#10b981; color:#05130c;
  font-weight:800; letter-spacing:.2px;
  box-shadow:0 6px 20px rgba(16,185,129,.25);
}
.rlc-body{padding:1rem 1rem 1.1rem}
.rlc-title, .rlc-body h3{margin:.1rem 0 .35rem; font-size:1.05rem; font-weight:800; letter-spacing:.2px}
.rlc-meta{gap:.5rem; margin:.1rem 0 .6rem}
.rlc-meta span{
  background:#15161b; border:1px solid #272836; color:#d7d8de;
  padding:.32rem .62rem; border-radius:999px; font-size:.85rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.rlc-price-line{align-items:center; gap:.65rem; margin-bottom:.75rem}
.rlc-price-badge{
  background:linear-gradient(180deg,#171720 0%,#111118 100%);
  border:1px solid #2b2b36; border-radius:12px;
  padding:.42rem .7rem; font-weight:900; font-size:1.02rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.rlc-fee{opacity:.85}
.rlc-actions{display:flex; align-items:center; gap:.5rem}
.rlc-btn{border-radius:12px; padding:.58rem 1rem}
.rlc-btn-primary{background:#7c3aed;border-color:#7c3aed;color:#fff;box-shadow:0 10px 22px rgba(124,58,237,.35)}
.rlc-btn-primary:hover{filter:brightness(1.07)}
.rlc-details + .rlc-wa-inline{ margin-left:.5rem }
.rlc-wa-inline{background:#0f1116;border:1px solid #2b2d3a;color:#e9e9f3}
.rlc-wa-inline:hover{border-color:#34d399;color:#dffcea}
.rlc-card:after{content:""; position:absolute; inset:auto 0 0 0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);}
@media(max-width:640px){
  .rlc-actions{flex-wrap:wrap}
  .rlc-actions .rlc-btn{flex:1 1 auto}
}


/* ===== 3.6.4 Precio + cuota ===== */
.rlc-price-line{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:.75rem;
  margin:.6rem 0 .9rem;
}
.rlc-price-badge{
  background:radial-gradient(120% 120% at 0% 0%, #1b1b26 0%, #111118 55%);
  border:1px solid #2f2f3a;
  padding:.46rem .75rem;
  border-radius:14px;
  font-weight:900;
  font-size:1.15rem;
  letter-spacing:.1px;
  color:#ffffff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  font-variant-numeric:tabular-nums;
}
/* cuota mensual compacta a la derecha en forma de chip */
.rlc-fee{
  color:#c7c9d3;
  background:#0f1116;
  border:1px solid #2a2c38;
  border-radius:12px;
  padding:.34rem .6rem;
  font-size:.92rem;
  line-height:1;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.rlc-fee em, .rlc-fee strong{font-style:normal;font-weight:700;color:#e6e8ef}
/* en pantallas pequeñas, pila vertical ordenada */
@media(max-width:600px){
  .rlc-price-line{flex-direction:column; align-items:flex-start; gap:.45rem}
  .rlc-fee{padding:.3rem .55rem}
}


/* ===== 3.7.0 Overlay precio/cuota + wishlist + skeleton ===== */
.rlc-card .rlc-media{position:relative;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.06)}
.rlc-card .rlc-price-overlay{
  position:absolute; left:0; right:0; bottom:0;
  padding:.75rem .9rem;
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.45) 55%, rgba(0,0,0,.78) 100%);
  display:flex; align-items:center; justify-content:space-between; gap:.5rem;
}
.rlc-card .rlc-price-overlay .rlc-price-badge{
  background:rgba(9,10,16,.75);
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px; padding:.38rem .6rem; font-weight:900; font-size:1.08rem;
  color:#fff; backdrop-filter: blur(6px);
}
.rlc-card .rlc-price-overlay .rlc-fee{
  background:rgba(9,10,16,.55);
  border:1px solid rgba(255,255,255,.14);
  border-radius:10px; padding:.28rem .55rem; font-size:.9rem; color:#e6e7ee;
  backdrop-filter: blur(6px); white-space:nowrap;
}
/* ocultamos la línea de precio del body */
.rlc-card.has-overlay .rlc-price-line{display:none}

/* wishlist botón flotante */
.rlc-wish{
  position:absolute; right:.8rem; top:.8rem;
  width:36px; height:36px; border-radius:999px;
  background:rgba(0,0,0,.45); border:1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(6px);
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  color:#fff; transition:transform .1s ease, background .2s, border-color .2s;
}
.rlc-wish:hover{transform:scale(1.06); background:rgba(0,0,0,.6)}
.rlc-wish.is-active{background:#ec489a; border-color:#ec489a}
.rlc-wish svg{width:18px;height:18px; fill:currentColor}

/* skeleton */
.rlc-skel{animation:rlcShimmer 1.2s infinite linear; background:linear-gradient(90deg,#16161b 0%,#1b1b22 50%,#16161b 100%); background-size:200% 100%}
@keyframes rlcShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}


/* 3.7.2 encabezado con CTA a la derecha */
.rlc-section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:1rem 0 .75rem}
.rlc-section-head h3{margin:0;font-size:1.25rem;font-weight:800}
@media (max-width:640px){
  .rlc-section-head{flex-wrap:wrap}
  .rlc-section-head a{width:100%}
}

/* modal spacing and no cuts */
#rlc-modal-root .rlc-modal h3{margin:1.2rem 0 .6rem;line-height:1.2}
#rlc-modal-root .rlc-modal p{margin:.45rem 0}
#rlc-modal-root .rlc-modal{overflow:visible}
#rlc-modal-root .rlc-modal .rlc-card, 
#rlc-modal-root .rlc-modal .rlc-box{overflow:visible}

/* fee note style */
.rlc-fee-note{font-size:.78rem;color:#a9acb8;opacity:.95;margin:.2rem 0 .4rem}
.rlc-card.has-overlay .rlc-fee-note{margin-top:.35rem}


/* 3.7.7 kill-switch: oculta cualquier formulario/campos tras "Pedir inspección" */
.rlc-section-head ~ form,
.rlc-section-head ~ .rlc-inspect,
.rlc-section-head ~ .rlc-inspect-fields,
.rlc-section-head ~ .inspect-fields,
.rlc-section-head ~ .wpcf7,
.rlc-section-head ~ .wpcf7-form,
.rlc-section-head ~ div input,
.rlc-section-head ~ div select,
.rlc-section-head ~ div textarea,
.rlc-section-head ~ div label,
.rlc-section-head ~ div .button,
.rlc-section-head ~ div .btn { display:none !important; }


/* 3.7.8 ultra-strong: oculta cualquier bloque inmediato bajo "Pedir inspección" */
.rlc-section-head + * { display:none !important; }
/* por compatibilidad con maquetadores que envuelven con contenedores */
.rlc-section-head + div, 
.rlc-section-head + section, 
.rlc-section-head + form { display:none !important; }
