/* 39GO SOCIAL — Nearby Visual Polish V4.3.1
   Readability first: high contrast, calm surfaces, clear hierarchy.
*/
:root{
  --np-ink:#17251d;
  --np-soft:#4d6256;
  --np-surface:#fffefb;
  --np-surface-2:#f2f7f2;
  --np-line:#d9e3db;
  --np-green:#3f7654;
  --np-green-dark:#28503a;
  --np-green-soft:#e4f1e7;
  --np-gold:#b97a11;
  --np-shadow:0 12px 34px rgba(29,50,37,.12);
}

html[data-theme="night"]{
  --np-ink:#f5faf6;
  --np-soft:#b7c7bd;
  --np-surface:#142019;
  --np-surface-2:#0d1712;
  --np-line:#2c4135;
  --np-green:#79cf9d;
  --np-green-dark:#a7e7bf;
  --np-green-soft:#1b3627;
  --np-gold:#ffd07a;
  --np-shadow:0 14px 38px rgba(0,0,0,.32);
}

/* ---------- Nearby page canvas ---------- */
body .page.radar-page,
body .page.friends-page[data-social-friends="1"]{
  color:var(--np-ink)!important;
  background:
    radial-gradient(circle at 16% 0,rgba(92,127,82,.10),transparent 32%),
    linear-gradient(180deg,var(--np-surface),var(--np-surface-2))!important;
}

body .radar-page .topbar,
body .friends-page[data-social-friends="1"] .friends-head{
  color:var(--np-ink)!important;
}

body .radar-page .topbar strong,
body .friends-page[data-social-friends="1"] .friends-head strong{
  color:var(--np-ink)!important;
  -webkit-text-fill-color:var(--np-ink)!important;
  opacity:1!important;
  font-weight:900!important;
  letter-spacing:-.01em;
}

body .radar-page .topbar small,
body .friends-page[data-social-friends="1"] .friends-head small,
body #nearbyStatus,
body #listStatus{
  color:var(--np-soft)!important;
  -webkit-text-fill-color:var(--np-soft)!important;
  opacity:1!important;
  font-weight:750!important;
  line-height:1.35!important;
}

/* ---------- Radar ---------- */
body .radar-page .live-radar,
body.go39-warm-utility .radar-page .live-radar,
body.go39-global-premium .radar-page .live-radar,
body.go39-global-pro .radar-page .live-radar{
  background:
    radial-gradient(circle at 50% 50%,rgba(78,126,87,.12) 0 8%,transparent 8.5%),
    repeating-radial-gradient(circle at center,transparent 0 18%,rgba(38,70,49,.09) 18.3% 18.8%,transparent 19% 36%),
    linear-gradient(180deg,#fcfffc,#edf5ee)!important;
  border:1px solid #cfddd2!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 20px 46px rgba(31,56,40,.13)!important;
}

html[data-theme="night"] body .radar-page .live-radar,
html[data-theme="night"] body.go39-warm-utility .radar-page .live-radar,
html[data-theme="night"] body.go39-global-premium .radar-page .live-radar,
html[data-theme="night"] body.go39-global-pro .radar-page .live-radar{
  background:
    radial-gradient(circle at 50% 50%,rgba(112,201,148,.10) 0 8%,transparent 8.5%),
    repeating-radial-gradient(circle at center,transparent 0 18%,rgba(168,222,188,.10) 18.3% 18.8%,transparent 19% 36%),
    linear-gradient(180deg,#17241c,#0e1812)!important;
  border-color:#31483a!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 22px 48px rgba(0,0,0,.34)!important;
}

body .radar-page .radar-haze{opacity:.18!important;filter:blur(30px)!important}
body .radar-page .radar-haze.h1{background:#62a176!important}
body .radar-page .radar-haze.h2{background:#d9ba65!important}
body .radar-page .radar-haze.h3{background:#8bb898!important}

body .radar-page .live-center{
  background:radial-gradient(circle at 35% 35%,#fff 0,#a6d4b4 28%,#4c8762 68%,#2f6545 100%)!important;
  border:2px solid rgba(255,255,255,.92)!important;
  box-shadow:0 0 0 9px rgba(76,135,98,.13),0 5px 20px rgba(40,84,57,.30)!important;
}

/* Person avatar and distance pill */
body .radar-page .live-person-avatar{
  border:3px solid #fff!important;
  background:linear-gradient(135deg,#507a5c,#83b894)!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(20,42,28,.24),0 0 0 2px rgba(63,118,84,.12)!important;
}
html[data-theme="night"] body .radar-page .live-person-avatar{
  border-color:#eaf7ef!important;
}

body .radar-page .live-person-distance{
  top:62px!important;
  min-width:58px!important;
  max-width:92px!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:rgba(20,31,25,.92)!important;
  border:1px solid rgba(255,255,255,.30)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.05!important;
  letter-spacing:.01em;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
  box-shadow:0 7px 18px rgba(0,0,0,.20)!important;
}

/* ---------- Range buttons ---------- */
body .radar-page .radius-bar{
  background:rgba(255,255,255,.96)!important;
  border:1px solid var(--np-line)!important;
  box-shadow:var(--np-shadow)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
html[data-theme="night"] body .radar-page .radius-bar{
  background:rgba(19,31,24,.96)!important;
}

body .radar-page .radius-btn{
  color:var(--np-soft)!important;
  -webkit-text-fill-color:var(--np-soft)!important;
  background:transparent!important;
  opacity:1!important;
  font-weight:850!important;
  border:1px solid transparent!important;
}
body .radar-page .radius-btn.active{
  color:var(--np-green-dark)!important;
  -webkit-text-fill-color:var(--np-green-dark)!important;
  background:var(--np-green-soft)!important;
  border-color:rgba(63,118,84,.22)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.26)!important;
}

/* ---------- Bottom navigation ---------- */
body .radar-page .bottom-nav,
body .friends-page[data-social-friends="1"] .bottom-nav{
  background:rgba(255,255,255,.97)!important;
  border:1px solid var(--np-line)!important;
  box-shadow:0 14px 38px rgba(30,52,37,.14)!important;
  backdrop-filter:blur(20px)!important;
  -webkit-backdrop-filter:blur(20px)!important;
}
html[data-theme="night"] body .radar-page .bottom-nav,
html[data-theme="night"] body .friends-page[data-social-friends="1"] .bottom-nav{
  background:rgba(18,29,23,.97)!important;
}

body .radar-page .bottom-nav a,
body .friends-page[data-social-friends="1"] .bottom-nav a,
body .radar-page .bottom-nav a small,
body .friends-page[data-social-friends="1"] .bottom-nav a small{
  color:var(--np-soft)!important;
  -webkit-text-fill-color:var(--np-soft)!important;
  opacity:1!important;
}
body .radar-page .bottom-nav a.active,
body .friends-page[data-social-friends="1"] .bottom-nav a.active,
body .radar-page .bottom-nav a.active small,
body .friends-page[data-social-friends="1"] .bottom-nav a.active small{
  color:var(--np-green-dark)!important;
  -webkit-text-fill-color:var(--np-green-dark)!important;
  background:var(--np-green-soft)!important;
}
body .bottom-nav .nav-sos-link,
body .bottom-nav .nav-sos-link small{
  color:#c94444!important;
  -webkit-text-fill-color:#c94444!important;
}

/* ---------- People / Nearby list ---------- */
body .friends-page[data-social-friends="1"] .social-tabs{
  gap:8px!important;
  padding:10px 14px 8px!important;
}
body .friends-page[data-social-friends="1"] .social-tab{
  background:var(--np-surface)!important;
  color:var(--np-soft)!important;
  -webkit-text-fill-color:var(--np-soft)!important;
  border:1px solid var(--np-line)!important;
  opacity:1!important;
  box-shadow:0 4px 12px rgba(31,56,40,.05)!important;
}
body .friends-page[data-social-friends="1"] .social-tab.active{
  background:var(--np-green-soft)!important;
  color:var(--np-green-dark)!important;
  -webkit-text-fill-color:var(--np-green-dark)!important;
  border-color:rgba(63,118,84,.28)!important;
}
body .friends-page[data-social-friends="1"] .social-tab b{
  background:rgba(63,118,84,.13)!important;
  color:var(--np-green-dark)!important;
  -webkit-text-fill-color:var(--np-green-dark)!important;
  opacity:1!important;
}

body .friends-page[data-social-friends="1"] .friend-row,
body .friends-page[data-social-friends="1"] .accepted-friend-row{
  background:var(--np-surface)!important;
  border:1px solid var(--np-line)!important;
  color:var(--np-ink)!important;
  box-shadow:0 7px 20px rgba(31,56,40,.08)!important;
}

body .friends-page[data-social-friends="1"] .friend-info strong,
body .friends-page[data-social-friends="1"] .accepted-friend-copy strong{
  color:var(--np-ink)!important;
  -webkit-text-fill-color:var(--np-ink)!important;
  opacity:1!important;
  font-weight:900!important;
}
body .friends-page[data-social-friends="1"] .friend-info small,
body .friends-page[data-social-friends="1"] .accepted-friend-copy small,
body .friends-page[data-social-friends="1"] .distance,
body .friends-page[data-social-friends="1"] .social-section-title{
  color:var(--np-soft)!important;
  -webkit-text-fill-color:var(--np-soft)!important;
  opacity:1!important;
  font-weight:700!important;
}

/* Online state gets a distinct readable green */
body .friends-page[data-social-friends="1"] .friend-info small{
  line-height:1.35!important;
}
body .friends-page[data-social-friends="1"] .empty-state{
  color:var(--np-soft)!important;
  -webkit-text-fill-color:var(--np-soft)!important;
  opacity:1!important;
  font-weight:800!important;
  background:rgba(255,255,255,.48)!important;
  border:1px dashed var(--np-line)!important;
  border-radius:18px!important;
  margin:18px 14px!important;
  padding:28px 18px!important;
}
html[data-theme="night"] body .friends-page[data-social-friends="1"] .empty-state{
  background:rgba(255,255,255,.035)!important;
}

/* ---------- Action buttons ---------- */
body .friends-page[data-social-friends="1"] .chat-button,
body .friends-page[data-social-friends="1"] .accepted-friend-chat{
  background:var(--np-green)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1px solid transparent!important;
  box-shadow:0 6px 16px rgba(48,103,71,.18)!important;
}
body .friends-page[data-social-friends="1"] .social-mini-btn{
  background:var(--np-green-soft)!important;
  color:var(--np-green-dark)!important;
  -webkit-text-fill-color:var(--np-green-dark)!important;
}
body .friends-page[data-social-friends="1"] .social-mini-btn.pending,
body .friends-page[data-social-friends="1"] .social-mini-btn.ghost,
body .friends-page[data-social-friends="1"] .social-more-btn{
  background:rgba(85,99,90,.10)!important;
  color:var(--np-soft)!important;
  -webkit-text-fill-color:var(--np-soft)!important;
}

/* ---------- Header buttons ---------- */
body .radar-page .round-link,
body .friends-page[data-social-friends="1"] .back-link{
  background:var(--np-surface)!important;
  border:1px solid var(--np-line)!important;
  color:var(--np-ink)!important;
  -webkit-text-fill-color:var(--np-ink)!important;
  box-shadow:0 7px 18px rgba(31,56,40,.09)!important;
}

/* Compatibility with broad legacy theme selectors */
body.go39-warm-utility .radar-page :is(strong,small,button,a,span),
body.go39-global-premium .radar-page :is(strong,small,button,a,span),
body.go39-global-pro .radar-page :is(strong,small,button,a,span),
body.go39-warm-utility .friends-page[data-social-friends="1"] :is(strong,small,button,a,span),
body.go39-global-premium .friends-page[data-social-friends="1"] :is(strong,small,button,a,span),
body.go39-global-pro .friends-page[data-social-friends="1"] :is(strong,small,button,a,span){
  opacity:1;
}

/* ---------- Mobile refinement ---------- */
@media(max-width:420px){
  body .radar-page .topbar{padding-left:16px!important;padding-right:16px!important}
  body .radar-page .topbar strong{font-size:25px!important}
  body .radar-page .topbar small{font-size:12px!important}
  body .radar-page .live-person-distance{
    top:57px!important;
    min-width:52px!important;
    padding:5px 7px!important;
    font-size:11px!important;
  }
  body .radar-page .radius-btn{
    min-height:42px!important;
    padding:8px 10px!important;
    font-size:12px!important;
  }
  body .friends-page[data-social-friends="1"] .friend-row,
  body .friends-page[data-social-friends="1"] .accepted-friend-row{
    border-radius:17px!important;
  }
}

/* Accessibility */
@media(prefers-reduced-motion:reduce){
  body .radar-page .radar-haze,
  body .radar-page .live-person-pulse{animation:none!important}
}
