/* Secretik — unified intimacy map styles v92 */
.intim-map-section{padding:28px 0 80px}
.intim-map-layout{display:block}
.intim-map-card{position:relative;width:100%;height:680px;min-height:680px;border:1px solid rgba(255,91,169,.18);border-radius:18px;overflow:hidden;background:#0d1017;box-shadow:0 18px 50px rgba(0,0,0,.22)}
#secretikIntimMap{width:100%;height:680px}
.intim-map-side,.intim-map-legend{display:none!important}
.intim-map-empty-state{height:100%;min-height:680px;display:grid;place-content:center;text-align:center;color:#777e8c;background:#0d1017;padding:30px}
.intim-map-empty-state div{font:700 22px Georgia,serif;color:#fff;margin-bottom:8px}
.intim-map-empty-state span{font-size:12px;line-height:1.6}

/* Map markers */
.intim-photo-marker{position:relative;width:58px;height:58px;border-radius:50%;overflow:visible;background:#161922;border:3px solid #fff;box-shadow:0 4px 16px rgba(0,0,0,.38);cursor:pointer;box-sizing:border-box}
.intim-photo-marker img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;background:#1a1d26}
.intim-photo-marker-placeholder{width:100%;height:100%;display:grid;place-items:center;border-radius:50%;font-size:25px;color:#ff4fa3;background:#171b25}
.intim-photo-marker-badge{position:absolute;right:-5px;top:-7px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#ff4fa3;color:#fff;border:2px solid #fff;font-size:11px;font-weight:800;line-height:1;box-shadow:0 2px 7px rgba(0,0,0,.28)}
.intim-photo-marker.individual .intim-photo-marker-badge,.intim-photo-marker.massage .intim-photo-marker-badge,.intim-photo-marker.salon .intim-photo-marker-badge{background:#ff4fa3;color:#fff}

/* Mini profile: compact card with balanced vertical height and side gutters. */
.intim-mini-profile{
  width:376px;height:220px;min-width:376px;max-width:376px;
  min-height:220px;max-height:220px;
  display:flex;align-items:flex-start;gap:12px;
  margin:0;padding:0;box-sizing:border-box;overflow:hidden;
  font-family:Arial,Helvetica,sans-serif;color:#171a21;background:#fff;
}
.intim-mini-photo{
  width:132px;height:204px;min-width:132px;max-width:132px;
  min-height:204px;max-height:204px;flex:0 0 132px;margin:0;
  border-radius:10px;overflow:hidden;background:#ececf0;box-sizing:border-box;
}
.intim-mini-photo img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important}
.intim-mini-photo-placeholder{width:100%;height:100%;display:grid;place-items:center;background:#f0f0f4;color:#ff4fa3;font-size:30px}
.intim-mini-info{
  min-width:0;max-width:232px;flex:1 1 auto;height:220px;min-height:220px;max-height:220px;
  padding:8px 0 0;display:flex;flex-direction:column;align-items:flex-start;box-sizing:border-box;overflow:hidden;
}
.intim-mini-type{display:inline-flex;align-items:center;width:max-content;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:800;line-height:1;margin:0 0 4px;color:#fff;background:#ff4fa3}
.intim-mini-name{font-size:21px;font-weight:800;line-height:1.05;margin:0 0 4px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.intim-mini-location{font-size:12px;color:#747985;line-height:1.2;margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.intim-mini-specs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 6px}
.intim-mini-specs span{font-size:10px;color:#555b66;background:#f1f2f5;border-radius:5px;padding:4px 6px;line-height:1}
.intim-mini-services,.intim-mini-price{display:none!important}

/* Two price cards only: 1 hour + 2 hours. */
.intim-mini-prices{
  width:205px;max-width:205px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;margin:0 0 7px;padding:0;box-sizing:border-box;
  font-family:Arial,Helvetica,sans-serif;flex:0 0 auto;
}
.intim-mini-price-card{min-width:0;background:#f7f7fa;border:1px solid #e4e5eb;border-radius:8px;padding:5px 6px 4px;box-sizing:border-box;overflow:hidden}
.intim-mini-price-title{font-size:9px;color:#555b66;margin:0 0 2px;font-weight:700;line-height:1.1}
.intim-mini-price-row{display:flex;align-items:center;justify-content:space-between;gap:2px;min-height:16px;border-top:1px solid #e7e7ec;line-height:1;min-width:0;overflow:hidden}
.intim-mini-price-row span{font-size:7px;color:#747985;white-space:nowrap;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis}
.intim-mini-price-row b{font-size:8.5px;line-height:1;color:#ef3993;white-space:nowrap;flex:0 0 auto;min-width:max-content;display:block}
.intim-mini-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:8px 12px;min-height:32px;box-sizing:border-box;border-radius:8px;background:linear-gradient(135deg,#ff65ae,#f33b91);color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:700;line-height:1;box-shadow:0 5px 14px rgba(255,45,145,.2);margin:0}
.intim-mini-button:hover{filter:brightness(1.05)}

/* V94: clean custom legacy map balloon. The legacy map balloon shell is replaced
   by our own layout, so there is no native header/content reservation. */
.secretik-mini-balloon{
  position:absolute;
  left:0;top:0;
  width:410px;height:230px;
  box-sizing:border-box;
  background:#fff;
  border-radius:16px;
  box-shadow:0 12px 30px rgba(0,0,0,.18);
  overflow:visible;
  font-family:Arial,Helvetica,sans-serif;
}
.secretik-mini-balloon-content{
  position:absolute;
  left:15px;top:25px;
  width:380px;height:190px;
  overflow:visible;
}
.secretik-mini-balloon-content .intim-mini-profile{
  width:380px!important;height:190px!important;
  min-width:380px!important;max-width:380px!important;
  min-height:190px!important;max-height:190px!important;
  margin:0!important;padding:0!important;
  display:flex!important;align-items:center!important;gap:10px!important;
  background:transparent!important;box-shadow:none!important;
  overflow:visible!important;box-sizing:border-box!important;
}
.secretik-mini-balloon-content .intim-mini-photo{
  width:118px!important;height:176px!important;
  min-width:118px!important;max-width:118px!important;
  min-height:176px!important;max-height:176px!important;
  flex:0 0 118px!important;
  margin:0!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
.secretik-mini-balloon-content .intim-mini-info{
  width:252px!important;height:190px!important;
  min-width:252px!important;max-width:252px!important;
  min-height:190px!important;max-height:190px!important;
  flex:0 0 252px!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
.secretik-mini-balloon-content .intim-mini-type{font-size:8px!important;padding:3px 7px!important;margin:0 0 4px!important}
.secretik-mini-balloon-content .intim-mini-name{font-size:20px!important;line-height:1.05!important;margin:0 0 4px!important}
.secretik-mini-balloon-content .intim-mini-location{font-size:11px!important;margin:0 0 5px!important}
.secretik-mini-balloon-content .intim-mini-specs{gap:3px!important;margin:0 0 5px!important}
.secretik-mini-balloon-content .intim-mini-specs span{font-size:9px!important;padding:4px 5px!important}
.secretik-mini-balloon-content .intim-mini-prices{
  width:252px!important;max-width:252px!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px!important;margin:0 0 6px!important;
}
.secretik-mini-balloon-content .intim-mini-price-card{padding:4px 6px 3px!important;border-radius:7px!important}
.secretik-mini-balloon-content .intim-mini-price-title{font-size:8px!important;margin-bottom:2px!important}
.secretik-mini-balloon-content .intim-mini-price-row{min-height:14px!important}
.secretik-mini-balloon-content .intim-mini-price-row span{font-size:6.5px!important}
.secretik-mini-balloon-content .intim-mini-price-row b{font-size:8px!important}
.secretik-mini-balloon-content .intim-mini-button{font-size:11px!important;padding:7px 11px!important;min-height:30px!important;border-radius:8px!important}
.secretik-mini-balloon-close{
  position:absolute;right:8px;top:7px;
  width:30px;height:30px;
  margin:0;padding:0;
  border:0;background:transparent;
  color:#a5a5aa;
  font:400 28px/28px Arial,sans-serif;
  cursor:pointer;z-index:50;
  pointer-events:auto;
}
.secretik-mini-balloon-close:hover{color:#555}
.secretik-mini-balloon-tail{
  position:absolute;left:50%;bottom:-9px;
  width:18px;height:18px;
  margin-left:-9px;
  background:#fff;
  transform:rotate(45deg);
  box-shadow:4px 4px 8px rgba(0,0,0,.08);
}
@media(max-width:650px){
  .intim-map-section{padding-top:20px}
  .intim-map-card,#secretikIntimMap{height:460px;min-height:460px;border-radius:14px}
  .intim-map-empty-state{min-height:460px}
  .secretik-mini-balloon{width:350px;height:205px;border-radius:14px}
  .secretik-mini-balloon-content{left:10px;top:22px;width:330px;height:170px}
  .secretik-mini-balloon-content .intim-mini-profile{
    width:330px!important;height:170px!important;
    min-width:330px!important;max-width:330px!important;
    min-height:170px!important;max-height:170px!important;
    gap:8px!important;
  }
  .secretik-mini-balloon-content .intim-mini-photo{
    width:100px!important;height:154px!important;
    min-width:100px!important;max-width:100px!important;
    min-height:154px!important;max-height:154px!important;
    flex-basis:100px!important;border-radius:10px!important;
  }
  .secretik-mini-balloon-content .intim-mini-info{
    width:222px!important;height:170px!important;
    min-width:222px!important;max-width:222px!important;
    min-height:170px!important;max-height:170px!important;
    flex-basis:222px!important;
  }
  .secretik-mini-balloon-content .intim-mini-name{font-size:17px!important}
  .secretik-mini-balloon-content .intim-mini-location{font-size:9px!important}
  .secretik-mini-balloon-content .intim-mini-specs span{font-size:7px!important;padding:3px 4px!important}
  .secretik-mini-balloon-content .intim-mini-prices{width:222px!important;max-width:222px!important;gap:4px!important}
  .secretik-mini-balloon-content .intim-mini-price-card{padding:3px 4px 2px!important;border-radius:6px!important}
  .secretik-mini-balloon-content .intim-mini-price-title{font-size:6.5px!important}
  .secretik-mini-balloon-content .intim-mini-price-row{min-height:13px!important}
  .secretik-mini-balloon-content .intim-mini-price-row span{font-size:5px!important}
  .secretik-mini-balloon-content .intim-mini-price-row b{font-size:6.5px!important}
  .secretik-mini-balloon-content .intim-mini-button{font-size:9px!important;padding:6px 9px!important;min-height:27px!important;border-radius:7px!important}
  .secretik-mini-balloon-close{right:5px;top:5px;width:28px;height:28px;font-size:25px;line-height:25px}
  .secretik-mini-balloon-tail{bottom:-8px;width:16px;height:16px;margin-left:-8px}
}
