/* CoCo Map 3D V3.3 · Results Explorer */
:root{--c3r-w:344px;--c3r-gap:16px;}
#mapa-wrap .c3r-rail{position:absolute;z-index:10135;right:14px;top:190px;bottom:18px;width:var(--c3r-w);display:flex;flex-direction:column;border:1px solid rgba(31,61,58,.12);border-radius:22px;background:rgba(249,250,248,.94);box-shadow:0 20px 55px rgba(21,44,42,.16);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden;color:#123f42;transition:transform .25s cubic-bezier(.2,.8,.2,1),opacity .2s ease;}
#mapa-wrap:not(.fs) .c3r-rail,#mapa-wrap:not(.fs) .c3r-reopen{display:none!important;}
.c3r-rail-head{flex:0 0 auto;padding:15px 44px 12px 16px;border-bottom:1px solid rgba(28,62,58,.09);position:relative;background:rgba(255,255,255,.64);}
.c3r-rail-head>div>span{display:block;font:900 8px/1 Inter,sans-serif;letter-spacing:.11em;color:#6d817b;}
.c3r-rail-head strong{display:block;margin-top:5px;font:850 18px/1.1 Quicksand,Inter,sans-serif;letter-spacing:-.03em;color:#0a4548;}
.c3r-rail-head small{display:block;margin-top:4px;font:650 9px/1.35 Inter,sans-serif;color:#84918d;}
.c3r-collapse{position:absolute;right:10px;top:10px;width:32px;height:32px;border:0;border-radius:10px;background:#eef3f1;color:#52706a;font:800 20px/1 Inter,sans-serif;cursor:pointer;}
.c3r-list-wrap{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:9px 9px 12px;scrollbar-width:thin;scrollbar-color:#c9d7d3 transparent;}
.c3r-list{display:flex;flex-direction:column;gap:8px;}
.c3r-card{display:grid;grid-template-columns:88px 1fr;min-height:86px;border:1px solid rgba(25,62,59,.10);border-radius:15px;background:rgba(255,255,255,.91);overflow:hidden;cursor:pointer;box-shadow:0 5px 14px rgba(23,47,45,.055);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;}
.c3r-card:hover{transform:translateY(-1px);border-color:rgba(16,139,113,.28);box-shadow:0 9px 21px rgba(23,47,45,.11);}
.c3r-card.is-selected{border-color:#16a184;box-shadow:0 0 0 2px rgba(22,161,132,.10),0 9px 21px rgba(23,47,45,.11);}
.c3r-card.is-coco{border-color:rgba(13,125,104,.30);background:linear-gradient(135deg,rgba(243,255,250,.98),rgba(255,255,255,.95));}
.c3r-photo{width:88px;height:100%;min-height:86px;background:#e7eeeb;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.c3r-photo img{width:100%;height:100%;object-fit:cover;display:block;}.c3r-photo.fail{background:linear-gradient(145deg,#e4f0ec,#f4f7f5);color:#66817a;font:900 10px/1 Inter,sans-serif;}
.c3r-card-body{padding:9px 10px 8px;min-width:0;}.c3r-card-top{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:15px;}
.c3r-coco-badge{font:900 6.8px/1 Inter,sans-serif;color:#0b7f69;letter-spacing:.02em;white-space:nowrap;}.c3r-delta{font:850 7.5px/1 Inter,sans-serif;padding:3px 5px;border-radius:999px;background:#eef2f0;color:#6d7f7a;white-space:nowrap;}.c3r-delta.good{background:#e8f8f2;color:#0a8d72}.c3r-delta.fair{background:#f0faf6;color:#3f9b84}.c3r-delta.high{background:#fff0ee;color:#c65c55}.c3r-delta.estimate{background:#263d40;color:#fff}.c3r-price{display:block;margin-top:5px;font:900 15px/1 Inter,sans-serif;color:#0d4245;}.c3r-card h4{margin:4px 0 0;font:800 10px/1.25 Inter,sans-serif;color:#294a48;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}.c3r-card p{margin:4px 0 0;font:650 8px/1.25 Inter,sans-serif;color:#84928e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.c3r-more{padding:11px 3px 2px;text-align:center;color:#8a9894;font:700 8px/1.2 Inter,sans-serif;}.c3r-more button{margin-top:7px;width:100%;height:34px;border:1px solid rgba(20,66,62,.12);border-radius:10px;background:#eef4f1;color:#42625d;font:850 9px/1 Inter,sans-serif;cursor:pointer;}.c3r-empty{padding:26px 15px;text-align:center;border:1px dashed rgba(32,65,62,.14);border-radius:14px;color:#6f817c}.c3r-empty b{display:block;font:850 12px/1.2 Inter,sans-serif}.c3r-empty span{display:block;margin-top:5px;font:650 9px/1.4 Inter,sans-serif}
.c3r-selected-slot:empty{display:none}.c3r-selected-slot{padding:9px 9px 0;background:rgba(247,250,248,.84);flex:0 0 auto;max-height:47%;overflow-y:auto;}
.c3r-selected{position:relative;border:1px solid rgba(20,88,78,.17);border-radius:17px;background:#fff;overflow:hidden;box-shadow:0 10px 26px rgba(22,49,47,.12)}.c3r-selected.is-coco{border-color:rgba(15,143,116,.38);box-shadow:0 10px 28px rgba(15,143,116,.13)}
.c3r-photo.large{width:100%;height:118px;min-height:118px;}.c3r-selected-body{padding:11px 12px 12px}.c3r-selected-x{position:absolute;right:8px;top:8px;z-index:3;width:31px;height:31px;border:1px solid rgba(20,60,57,.10);border-radius:10px;background:rgba(255,255,255,.93);color:#46645f;font-size:19px;cursor:pointer}.c3r-selected-kicker{padding-right:34px;font:900 7.2px/1.2 Inter,sans-serif;letter-spacing:.07em;color:#0d8b70}.c3r-selected-price{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:6px}.c3r-selected-price strong{font:900 19px/1 Quicksand,Inter,sans-serif;color:#0b4245}.c3r-selected h3{margin:7px 0 0;font:850 11px/1.3 Inter,sans-serif;color:#254643}.c3r-selected p{margin:5px 0 0;font:650 8.5px/1.4 Inter,sans-serif;color:#7b8b86}.c3r-full{margin-top:10px;width:100%;height:38px;border:0;border-radius:11px;background:#063f47;color:#fff;font:850 9px/1 Inter,sans-serif;cursor:pointer}.c3r-full span{font-size:13px;margin-left:4px}
.c3r-mobile-handle{display:none}.c3r-reopen{display:none;position:absolute;z-index:10134;right:14px;top:205px;width:48px;height:48px;border:1px solid rgba(20,63,60,.13);border-radius:15px;background:rgba(255,255,255,.95);box-shadow:0 10px 28px rgba(20,47,45,.14);color:#15534f;cursor:pointer}.c3r-reopen span{font-size:18px}.c3r-reopen b{position:absolute;right:-5px;top:-5px;min-width:20px;height:20px;padding:0 4px;border-radius:999px;background:#0e8b73;color:#fff;display:grid;place-items:center;font:900 7px/1 Inter,sans-serif}.c3r-reopen.on{display:block}.c3r-rail.is-collapsed{transform:translateX(calc(100% + 24px));opacity:0;pointer-events:none}
/* Keep map tools clear of the desktop rail */
@media (min-width:901px){body.coco-results-ready #mapa-wrap.fs #ley-tgl{right:calc(var(--c3r-w) + 30px)!important}body.coco-results-ready #mapa-wrap.fs #btn-ubic{right:calc(var(--c3r-w) + 30px)!important}body.coco-results-ready #mapa-wrap.fs #cot-flot{right:calc(var(--c3r-w) + 22px)!important}body.coco-results-ready #mapa-wrap.fs .c3d-property-preview{display:none!important}}
/* Mobile / tablet: bottom sheet */
@media (max-width:900px){
  :root{--c3r-w:auto}.c3r-rail-head{display:none}#mapa-wrap .c3r-rail{position:absolute;left:8px;right:8px;top:auto;bottom:8px;width:auto;height:min(62dvh,570px);border-radius:22px;transform:translateY(calc(100% - 62px));transition:transform .28s cubic-bezier(.2,.8,.2,1);z-index:10145;background:rgba(250,251,249,.98)}#mapa-wrap .c3r-rail.is-expanded{transform:translateY(0)}#mapa-wrap .c3r-rail.is-collapsed{transform:translateY(calc(100% + 20px));opacity:1}.c3r-mobile-handle{display:flex;flex:0 0 61px;width:100%;border:0;background:rgba(255,255,255,.96);align-items:center;padding:8px 13px;gap:10px;color:#244c49;text-align:left;cursor:pointer;border-bottom:1px solid rgba(28,62,58,.08)}.c3r-mobile-handle>i{position:absolute;top:6px;left:50%;transform:translateX(-50%);width:36px;height:4px;border-radius:999px;background:#d7dfdc}.c3r-mobile-handle>span{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.c3r-mobile-handle b{font:850 12px/1.15 Inter,sans-serif}.c3r-mobile-handle small{font:650 8px/1.2 Inter,sans-serif;color:#83918d}.c3r-mobile-handle em{font:900 15px/1 Inter,sans-serif;font-style:normal;color:#67807a;transition:transform .2s ease}.c3r-rail.is-expanded .c3r-mobile-handle em{transform:rotate(180deg)}.c3r-selected-slot{max-height:none;padding-top:8px}.c3r-list-wrap{padding-bottom:14px}.c3r-card{grid-template-columns:96px 1fr;min-height:92px}.c3r-photo{width:96px;min-height:92px}.c3r-photo.large{height:132px;width:100%}.c3r-reopen{right:10px;top:auto;bottom:78px}.c3r-reopen.on{display:block}body.coco-results-ready #mapa-wrap.fs #cot-flot{bottom:72px!important}body.coco-results-ready #mapa-wrap.fs #btn-ubic{bottom:124px!important}body.coco-results-ready #mapa-wrap.fs #ley-tgl{bottom:176px!important}body.coco-results-ready #mapa-wrap.fs .c3d-intel{bottom:74px!important}#mapa-wrap:has(.c3r-rail.is-expanded) .c3d-intel,#mapa-wrap:has(.c3r-rail.is-expanded) #cot-flot,#mapa-wrap:has(.c3r-rail.is-expanded) #btn-ubic,#mapa-wrap:has(.c3r-rail.is-expanded) #ley-tgl{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.c3d-property-preview{display:none!important}}
@media (max-width:520px){#mapa-wrap .c3r-rail{left:6px;right:6px;bottom:6px;height:min(68dvh,600px);}.c3r-selected{display:grid;grid-template-columns:98px 1fr}.c3r-photo.large{width:98px;height:100%;min-height:142px}.c3r-selected-body{padding:12px 11px}.c3r-selected-price{align-items:flex-start;flex-direction:column}.c3r-selected h3{-webkit-line-clamp:2}.c3r-card-top{align-items:flex-start}.c3r-coco-badge{max-width:92px;white-space:normal;line-height:1.15}}
@media (prefers-reduced-motion:reduce){#mapa-wrap .c3r-rail,.c3r-card{transition:none!important}}


/* V3.3.1 desktop swap: results left, intel right, CTA centered */
@media (min-width:901px){
  #mapa-wrap .c3r-rail{left:14px;right:auto;}
  .c3r-reopen{left:14px;right:auto;}
  .c3r-rail.is-collapsed{transform:translateX(calc(-100% - 24px));}
  body.coco-results-ready #mapa-wrap.fs #ley-tgl,
  body.coco-results-ready #mapa-wrap.fs #btn-ubic{right:18px!important;left:auto!important;}
  body.coco-results-ready #mapa-wrap.fs #cot-flot{left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:18px!important;}
}

@media (min-width:901px){
  body.coco-map3d-v2 #mapa-wrap #cot-flot{left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:18px!important;min-width:248px!important;height:56px!important;min-height:56px!important;padding:0 26px!important;border-radius:18px!important;font-size:14px!important;display:inline-flex!important;place-items:unset!important;}
  body.coco-map3d-v2 #mapa-wrap #cot-flot .ui-ico{width:18px!important;height:18px!important;margin:0!important;}
}
@media (max-width:900px){
  body.coco-map3d-v2 #mapa-wrap #cot-flot{left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:calc(78px + env(safe-area-inset-bottom))!important;width:min(280px,calc(100% - 24px))!important;height:52px!important;min-height:52px!important;padding:0 18px!important;border-radius:16px!important;font-size:13px!important;display:inline-flex!important;place-items:unset!important;}
  body.coco-map3d-v2 #mapa-wrap #cot-flot .ui-ico{width:18px!important;height:18px!important;margin:0!important;}
}


/* =========================================================
   CoCo V3.4 · layout estable desktop + mobile sheet manual
   ========================================================= */
@media (min-width:901px){
  #mapa-wrap .c3r-rail{
    left:18px!important;right:auto!important;top:188px!important;bottom:18px!important;
    width:344px!important;
  }
  #mapa-wrap .c3r-reopen{left:18px!important;right:auto!important;}
  #mapa-wrap .c3r-rail.is-collapsed{transform:translateX(calc(-100% - 28px))!important;}
  body.coco-results-ready #mapa-wrap .c3d-intel{
    left:auto!important;right:82px!important;bottom:18px!important;width:295px!important;
  }
  body.coco-results-ready #mapa-wrap.fs #cot-flot{
    left:50%!important;right:auto!important;bottom:18px!important;transform:translateX(-50%)!important;
  }
  body.coco-results-ready #mapa-wrap.fs #ley-tgl,
  body.coco-results-ready #mapa-wrap.fs #btn-ubic{right:18px!important;left:auto!important;}
}
@media (max-width:900px){
  /* El estado comprimido es el estado natural al navegar. */
  #mapa-wrap .c3r-rail:not(.is-expanded):not(.is-collapsed){
    transform:translateY(calc(100% - 62px))!important;
  }
  body.coco-results-ready #mapa-wrap .c3d-intel{left:auto!important;right:9px!important;}
}


/* V3.5 — rail editorial: más fino, alto y alineado */
@media (min-width:1101px){
  :root{--c3r-w:292px;--c3r-gap:14px;}
  #mapa-wrap .c3r-rail{
    left:16px!important;right:auto!important;top:16px!important;bottom:16px!important;
    width:var(--c3r-w)!important;border-radius:20px!important;
    box-shadow:0 16px 42px rgba(21,44,42,.13)!important;
  }
  .c3r-rail-head{padding:13px 40px 10px 13px!important;}
  .c3r-rail-head strong{font-size:16px!important;margin-top:4px!important;}
  .c3r-rail-head small{font-size:8.2px!important;margin-top:3px!important;}
  .c3r-collapse{width:30px!important;height:30px!important;right:8px!important;top:8px!important;}
  .c3r-list-wrap{padding:7px 7px 10px!important;}
  .c3r-list{gap:6px!important;}
  .c3r-card{grid-template-columns:72px 1fr!important;min-height:74px!important;border-radius:13px!important;}
  .c3r-photo{width:72px!important;min-height:74px!important;}
  .c3r-card-body{padding:7px 8px 6px!important;}
  .c3r-price{font-size:13px!important;margin-top:4px!important;}
  .c3r-card h4{font-size:9px!important;margin-top:3px!important;line-height:1.2!important;}
  .c3r-card p{font-size:7.3px!important;margin-top:3px!important;}
  .c3r-delta{font-size:6.8px!important;padding:3px 5px!important;}
  .c3r-coco-badge{font-size:6.3px!important;}
  .c3r-selected-slot{padding:7px 7px 0!important;max-height:44%!important;}
  .c3r-photo.large{height:96px!important;min-height:96px!important;}
  .c3r-selected-body{padding:9px 10px 10px!important;}
  .c3r-selected-price strong{font-size:17px!important;}
  .c3r-selected h3{font-size:10px!important;}
  .c3r-full{height:34px!important;margin-top:8px!important;}
  .c3r-reopen{left:16px!important;right:auto!important;top:18px!important;}
  .c3r-rail.is-collapsed{transform:translateX(calc(-100% - 30px))!important;}
}

@media (max-width:900px){
  .c3r-mobile-handle{padding-right:14px!important;}
  .c3r-mobile-handle em{display:none!important;}
}
