.nearby-v2-card{max-width:760px;margin:0 auto}
.nearby-v2-privacy{margin:.8rem 0 1rem}
.nearby-v2-gps,.nearby-v2-where,.nearby-v2-places{display:grid;gap:.9rem;padding:1rem;border:1px solid rgba(216,180,83,.28);border-radius:16px;background:linear-gradient(145deg,rgba(8,49,83,.82),rgba(5,35,64,.9))}
.nearby-v2-where,.nearby-v2-places{margin-top:.9rem}
.nearby-v2-gps-head,.nearby-v2-where-head,.nearby-v2-places-head{display:flex;align-items:flex-start;gap:.75rem}
.nearby-v2-pin,.nearby-v2-compass,.nearby-v2-search-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:rgba(216,180,83,.13);border:1px solid rgba(216,180,83,.32);font-size:1.25rem}
.nearby-v2-gps-head small,.nearby-v2-where-head small,.nearby-v2-places-head small{display:block;color:#d8b453;text-transform:uppercase;letter-spacing:.07em;font-size:.68rem;font-weight:800}
.nearby-v2-gps-head strong,.nearby-v2-where-head strong,.nearby-v2-places-head strong{display:block;margin-top:.18rem;color:#fff;font-size:1.05rem}
.nearby-v2-gps-head p,.nearby-v2-where-head p,.nearby-v2-places-head p{margin:.24rem 0 0;color:#cfe2ef;line-height:1.42}
.nearby-v2-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.nearby-v2-values>div{padding:.72rem;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);min-width:0}
.nearby-v2-values small{display:block;color:#a9c6d9;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}
.nearby-v2-values b{display:block;margin-top:.22rem;color:#fff;font-size:.92rem;overflow-wrap:anywhere}
.nearby-v2-locate,.nearby-v2-search{width:100%;min-height:48px}
.nearby-v2-status,.nearby-v2-where-status,.nearby-v2-places-status{min-height:1.2em;margin:0;color:#a9d9c4;font-size:.82rem;text-align:center}
.nearby-v2-status.error,.nearby-v2-where-status.error,.nearby-v2-places-status.error{color:#ffd0c7}
.nearby-v2-where-meta{margin:0;padding:.68rem .75rem;border-radius:11px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);color:#a9c6d9;font-size:.78rem;line-height:1.35}
.nearby-v2-where.ready{border-color:rgba(74,196,139,.38)}
.nearby-v2-where.ready .nearby-v2-compass{background:rgba(74,196,139,.12);border-color:rgba(74,196,139,.32)}
.nearby-v2-where.busy{border-color:rgba(216,180,83,.4)}
.nearby-v2-where.warning{border-color:rgba(231,154,24,.38)}
.nearby-v2-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
.nearby-v2-category{display:flex;align-items:center;justify-content:center;gap:.35rem;min-height:43px;padding:.55rem .45rem;border:1px solid rgba(216,180,83,.26);border-radius:11px;background:rgba(255,255,255,.055);color:#e9f4fb;font-weight:750;font-size:.76rem}
.nearby-v2-category.active{border-color:rgba(216,180,83,.72);background:rgba(216,180,83,.14);color:#fff2bd}
.nearby-v2-results{display:grid;gap:.58rem}
.nearby-v2-empty,.nearby-v2-loading{display:grid;place-items:center;gap:.28rem;padding:1rem;text-align:center;border-radius:13px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07)}
.nearby-v2-empty>span,.nearby-v2-loading>span{font-size:1.3rem}
.nearby-v2-empty b,.nearby-v2-loading b{color:#fff}
.nearby-v2-empty small,.nearby-v2-loading small{color:#b8cfdd;line-height:1.4}
.nearby-v2-empty.warning{border-color:rgba(231,154,24,.3)}
.nearby-v2-place{display:grid;grid-template-columns:34px 1fr;gap:.65rem;padding:.75rem;border-radius:13px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.085)}
.nearby-v2-place-rank{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:rgba(216,180,83,.14);border:1px solid rgba(216,180,83,.28);color:#f3d98a;font-weight:850}
.nearby-v2-place-copy{min-width:0}
.nearby-v2-place-title{display:flex;gap:.48rem;align-items:flex-start}
.nearby-v2-place-title>span{font-size:1.05rem}
.nearby-v2-place-title h3{margin:0;color:#fff;font-size:.95rem;line-height:1.25}
.nearby-v2-place-title small{display:block;margin-top:.15rem;color:#a9c6d9;font-size:.7rem}
.nearby-v2-place-copy p{margin:.35rem 0 0;color:#cfe2ef;font-size:.78rem;line-height:1.35}
.nearby-v2-place-copy p.muted{opacity:.7}
.nearby-v2-no-distance{display:inline-flex;margin-top:.45rem;padding:.24rem .42rem;border-radius:8px;background:rgba(216,180,83,.08);color:#e5cd8a;font-size:.68rem}
.nearby-v2-next{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem;padding:.82rem .9rem;border-radius:13px;background:rgba(216,180,83,.08);border:1px solid rgba(216,180,83,.18)}
.nearby-v2-next b{color:#f3d98a}
.nearby-v2-next span{color:#cfe2ef;line-height:1.4;font-size:.86rem}
@media(max-width:520px){
  .nearby-v2-categories{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .nearby-v2-values{grid-template-columns:1fr 1fr}
  .nearby-v2-gps,.nearby-v2-where,.nearby-v2-places{padding:.85rem}
  .nearby-v2-values b{font-size:.84rem}
}
.nearby-v2-route-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.5rem}
.nearby-v2-walk,.nearby-v2-route-pending,.nearby-v2-route-unavailable{display:inline-flex;align-items:center;min-height:30px;padding:.3rem .48rem;border-radius:9px;font-size:.72rem;font-weight:800}
.nearby-v2-walk{background:rgba(74,196,139,.12);border:1px solid rgba(74,196,139,.28);color:#bcebd4}
.nearby-v2-route-pending{background:rgba(216,180,83,.09);border:1px solid rgba(216,180,83,.22);color:#f0d994}
.nearby-v2-route-unavailable{background:rgba(231,154,24,.08);border:1px solid rgba(231,154,24,.2);color:#ffd6a1}
.nearby-v2-directions{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:.3rem .52rem;border-radius:9px;border:1px solid rgba(122,190,235,.28);background:rgba(122,190,235,.09);color:#d7efff;text-decoration:none;font-size:.72rem;font-weight:800}
.nearby-v2-directions:active{transform:translateY(1px)}

/* T20.21.2 · Reforma exclusivamente estética de “Cerca de mí”.
   No modifica GPS, búsqueda, categorías, rutas, radios, endpoints ni lógica JS. */
.nearby-v2-card{
  max-width:760px;
  background:linear-gradient(180deg,rgba(5,35,64,.98),rgba(3,27,51,.99));
  border:1px solid rgba(216,180,83,.24);
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}
.nearby-v2-privacy{
  border-radius:14px;
  border-color:rgba(216,180,83,.2);
}
.nearby-v2-gps,.nearby-v2-where,.nearby-v2-places{
  position:relative;
  overflow:hidden;
  gap:.82rem;
  padding:1rem;
  border-color:rgba(216,180,83,.24);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(9,53,89,.9),rgba(5,34,62,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 8px 24px rgba(0,0,0,.09);
}
.nearby-v2-gps::before,.nearby-v2-where::before,.nearby-v2-places::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,rgba(216,180,83,.85),rgba(216,180,83,.1));
  pointer-events:none;
}
.nearby-v2-where.ready::before{
  background:linear-gradient(180deg,rgba(74,196,139,.9),rgba(74,196,139,.12));
}
.nearby-v2-pin,.nearby-v2-compass,.nearby-v2-search-icon{
  flex-basis:44px;
  width:44px;
  height:44px;
  border-radius:14px;
  background:linear-gradient(145deg,rgba(216,180,83,.18),rgba(216,180,83,.08));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.nearby-v2-gps-head strong,.nearby-v2-where-head strong,.nearby-v2-places-head strong{
  font-size:1.08rem;
  letter-spacing:-.01em;
}
.nearby-v2-gps-head p,.nearby-v2-where-head p,.nearby-v2-places-head p{
  color:#d7e8f2;
}
.nearby-v2-locate,.nearby-v2-search{
  min-height:50px;
  border-radius:13px;
  font-weight:850;
  letter-spacing:.01em;
  box-shadow:0 6px 16px rgba(0,0,0,.14);
}
.nearby-v2-categories{
  gap:.55rem;
}
.nearby-v2-category{
  min-height:46px;
  padding:.62rem .5rem;
  border-radius:13px;
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  transition:transform .12s ease,border-color .12s ease,background .12s ease;
}
.nearby-v2-category.active{
  border-color:rgba(216,180,83,.82);
  background:linear-gradient(145deg,rgba(216,180,83,.2),rgba(216,180,83,.1));
  box-shadow:inset 0 0 0 1px rgba(216,180,83,.1),0 5px 14px rgba(0,0,0,.08);
}
.nearby-v2-category:active{transform:scale(.985)}
.nearby-v2-results{gap:.68rem}
.nearby-v2-place{
  grid-template-columns:38px 1fr;
  gap:.72rem;
  padding:.82rem;
  border-radius:15px;
  border-color:rgba(255,255,255,.105);
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.04));
  box-shadow:0 5px 15px rgba(0,0,0,.07);
}
.nearby-v2-place-rank{
  width:34px;
  height:34px;
  border-radius:11px;
  background:linear-gradient(145deg,rgba(216,180,83,.2),rgba(216,180,83,.09));
}
.nearby-v2-place-title h3{
  font-size:1rem;
  letter-spacing:-.01em;
}
.nearby-v2-place-copy p{
  margin-top:.38rem;
  color:#d5e7f1;
  font-size:.8rem;
}
.nearby-v2-route-row{
  gap:.5rem;
  margin-top:.58rem;
}
.nearby-v2-walk,.nearby-v2-route-pending,.nearby-v2-route-unavailable,.nearby-v2-directions{
  min-height:32px;
  border-radius:10px;
  padding:.34rem .55rem;
  font-size:.73rem;
}
.nearby-v2-walk{
  background:linear-gradient(145deg,rgba(74,196,139,.16),rgba(74,196,139,.08));
  border-color:rgba(74,196,139,.34);
}
.nearby-v2-directions{
  background:linear-gradient(145deg,rgba(122,190,235,.14),rgba(122,190,235,.07));
  border-color:rgba(122,190,235,.34);
}
.nearby-v2-empty,.nearby-v2-loading{
  border-radius:15px;
  padding:1.08rem;
}
.nearby-v2-next{
  border-radius:15px;
  padding:.88rem .95rem;
}
@media(max-width:430px){
  .nearby-v2-gps,.nearby-v2-where,.nearby-v2-places{padding:.88rem;border-radius:17px}
  .nearby-v2-category{font-size:.77rem;min-height:45px}
  .nearby-v2-place{padding:.78rem .72rem}
}
