
/* ===== MegaMenu UL/LI tipo TodoConsolas ===== */
.rbcm-mm__nav { position: relative; margin: 10px 0; }
.rbcm-mm__ul { list-style:none; margin:0; padding:0; }
.rbcm-mm__li { position: relative; }

.rbcm-mm__li.is-open > .rbcm-mm__ul--lvl2,
.rbcm-mm__li.is-open > .rbcm-mm__ul--lvl3{
  opacity:1;
  visibility:visible;
  transform: translateX(0);
}

.rbcm-mm__a{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:14px;
  color:#fff;
  text-decoration:none;
  background:transparent;
  font-weight:800;
}

.rbcm-mm__a:hover,
.rbcm-mm__a:focus{
  background: rgba(255,255,255,.12);
  color:#fff;
}

.rbcm-mm__li.is-current > .rbcm-mm__a{
  background:#498f86;
}

/* Lvl1 ocupa ancho completo */
.rbcm-mm__ul--lvl1 { width:100%; }

/* Submenús: ocultos por defecto */
.rbcm-mm__ul--lvl2,
.rbcm-mm__ul--lvl3{
  position:absolute;
  top:0;
  left:100%;
  min-width:220px;
  background: linear-gradient(180deg, #2c2f36 0%, #1d1f23 100%);;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:10px;
  opacity:0;
  visibility:hidden;
  transform: translateX(10px);
  transition: .15s ease;
  z-index:9999;
  backdrop-filter: blur(10px);
}

/* Mostrar en hover/focus-within */
.rbcm-mm__li--lvl1:hover > .rbcm-mm__ul--lvl2,
.rbcm-mm__li--lvl1:focus-within > .rbcm-mm__ul--lvl2{
  opacity:1;
  visibility:visible;
  transform: translateX(0);
}

.rbcm-mm__li--lvl2:hover > .rbcm-mm__ul--lvl3,
.rbcm-mm__li--lvl2:focus-within > .rbcm-mm__ul--lvl3{
  opacity:1;
  visibility:visible;
  transform: translateX(0);
}

/* evita que el theme meta hover azul en links */
.rbcm-mm a:hover,
.rbcm-mm a:focus{
  color:#fff;
}

/* ===== FiboSearch suggestions por encima ===== */
.dgwt-wcas-suggestions-wrapp,
.dgwt-wcas-suggestions-wrapp *{
  z-index: 999999;
}
.dgwt-wcas-search-wrapp{
  position: relative;
  z-index: 999999;
}

/* ===== Toolbar (desktop + mobile) ===== */
.rbcm-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:10px 0;
  position:relative;
}
.rbcm-toolbar__spacer{flex:1 1 auto}
.rbcm-toolbar__right{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:10px;
  position:relative;
}
.rbcm-btn{
  border:1px solid rgba(255,255,255,.35);
  background:rgba(0,0,0,.25);
  color:#fff;
  padding:10px 20px;
  border-radius:14px;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.rbcm-caret{opacity:.85; font-weight:900}
.rbcm-sort{
  position:absolute;
  right:0;
  top:46px;
  display:none;
  background:#1f2328;
  border:1px solid rgba(255,255,255,.15);
  border-radius:12px;
  overflow:hidden;
  min-width:240px;
  z-index:50;
}
.rbcm-sort.is-open{display:block}
.rbcm-sort__item{
  display:block;
  padding:12px 14px;
  color:#fff !important;
  text-decoration:none;
  font-weight:700;
}
.rbcm-sort__item:hover{background:rgba(255,255,255,.08)}
@media (min-width: 1025px){
  .rbcm-btn--filter{display:none} /* sidebar ya está visible */
}

/* ===== Filters ===== */
.rbcm-filters{color:#fff}
.rbcm-resetbar{margin:14px 0}
.rbcm-resetbar a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  padding:3px 2px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  text-decoration:none;
  background:rgba(255,255,255,.06);
}
.rbcm-resetbar a:hover{background:rgba(255,255,255,.10);
color:#fff!important;}

.rbcm-box{
  background:rgba(0,0,0,.25);
  border-radius:16px;
  padding:16px;
  margin:14px 0;
  overflow:hidden
}
.rbcm-title{font-weight:900; letter-spacing:.04em; opacity:.9; margin:0 0 10px}
.rbcm-row{display:flex; flex-direction:column; gap:10px}
.rbcm-check{display:flex; align-items:center; gap:10px; font-weight:700}
.rbcm-check input{transform:scale(1.05)}

.rbcm-actions{display:flex; gap:10px; margin-top:12px}
.rbcm-btn2{
  background:#3ab6a6;
  border:0;
  border-radius:12px;
  color:#08323d;
  font-weight:900;
  padding:10px 12px;
  cursor:pointer;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center
}
.rbcm-btn3{
  background:transparent;
  border:1px solid rgba(255,255,255,.25);
  border-radius:14px;
  color:#fff;
  width:100%;
  text-align:center;
  padding:4px 2px;
  background: rgba(255,255,255,.06);
  cursor:pointer;
  text-decoration:none
}
.rbcm-btn3:hover {
  color:#fff;
}
/* ===== Price UI (como ejemplo) ===== */

.rbcm-pricebox .rbcm-range{
  position: relative;
  height: 28px;
  margin: 12px auto;
}

/* INPUT RANGE */
.rbcm-pricebox .rbcm-range input[type="range"]{
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  pointer-events: none;
  z-index: 2;
}

/* TRACK */
.rbcm-pricebox .rbcm-range input[type="range"]::-webkit-slider-runnable-track{
  height: 6px;
  background: rgba(58,182,166,.35);
  border-radius: 999px;
}

.rbcm-pricebox .rbcm-range input[type="range"]::-moz-range-track{
  height: 6px;
  background: rgba(58,182,166,.35);
  border-radius: 999px;
}

/* THUMB */
.rbcm-pricebox .rbcm-range input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance: none;
  pointer-events: auto;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #3ab6a6;
  border: 2px solid rgba(0,0,0,.35);
  cursor: pointer;
}

.rbcm-pricebox .rbcm-range input[type="range"]::-moz-range-thumb{
  pointer-events: auto;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #3ab6a6;
  border: 2px solid rgba(0,0,0,.35);
  cursor: pointer;
}

/* DOBLE RANGE: el segundo encima */
.rbcm-pricebox .rbcm-range input[type="range"]:last-child{
  z-index: 3;
}

.rbcm-pricebox .rbcm-price-inputs{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.rbcm-pricebox .rbcm-money{
  position:relative;
  width:120px;
}
.rbcm-pricebox .rbcm-money input{
  width:100%;
  height:40px;
  padding:0 28px 0 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.06);
  color:#fff;
  font-weight:900;
  outline:none;
}
.rbcm-pricebox .rbcm-money input:focus{
  border-color:#3ab6a6;
  box-shadow:0 0 0 2px rgba(58,182,166,.25);
}

.rbcm-pricebox .rbcm-eur{
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  font-weight:900;
  opacity:.9;
  pointer-events:none;
}

.rbcm-pricebox .rbcm-price-sep{opacity:.8; font-weight:900}


/* ===== MegaMenu: forzar 2 columnas (no apilar) ===== */
.rbcm-mm__cols{
  display:flex;
  flex-wrap:nowrap;
  align-items:flex-start;
  gap:12px;
}

.rbcm-mm__left{
  flex:0 0 52%;
  min-width:180px;
}

.rbcm-mm__right{
  flex:1 1 auto;
  min-width:160px;
}

/* que no lo “corte” el contenedor */
.rbcm-mm__panel,
.rbcm-mm__cols{
  overflow:visible;
}

/* ===== Drawer (animado) ===== */
.rbcm-drawer{
  position:fixed;
  inset:0;
  display:block;          /* importante: para poder animar */
  z-index:999999;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition: opacity .18s ease, visibility .18s ease;
}

.rbcm-drawer.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.rbcm-drawer__overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.55);
  opacity:0;
  transition: opacity .18s ease;
}

.rbcm-drawer.is-open .rbcm-drawer__overlay{
  opacity:1;
}

.rbcm-drawer__panel{
  position:absolute;
  top:0;
  left:0;
  right:auto;
  height:100%;
  width:min(420px, 92vw);
  background:#1f2328;
  padding:14px;
  overflow:auto;

  transform: translateX(-104%);
  transition: transform .22s ease;
  will-change: transform;
}

.rbcm-drawer.is-open .rbcm-drawer__panel{
  transform: translateX(0);
}

.rbcm-drawer__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#fff;
  font-weight:900;
  font-size:18px;
  padding:8px 4px 14px
}

.rbcm-drawer__close{
  border:0;
  background:transparent;
  color:#fff;
  font-size:18px;
  cursor:pointer
}

@media (min-width: 1025px){
  .rbcm-drawer{display:none;}
}

/* Limitar items + botón "mostrar más" */
.rbcm-check.is-hidden { display:none; }

.rbcm-morewrap{
  margin-top: 8px;
}

.rbcm-morebtn{
  width: 100%;
  border: 1px solid rgba(255,255,255,.20);
  background: rgba(255,255,255,.06);
  color:#fff;
  padding:10px 12px;
  border-radius: 12px;
  font-weight: 900;
  cursor: pointer;
}
.rbcm-morebtn:hover{
  background: rgba(255,255,255,.10);
}
