
:root{
  --bg:#030205;--panel:#08060c;--panel2:#0d0912;--line:rgba(139,92,246,.18);
  --text:#f7f5fb;--muted:#8d8498;--acid:#9b6cff;--acid2:#5c2ca8;--danger:#ff567a;
  --shadow:0 28px 90px rgba(0,0,0,.62)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:
radial-gradient(circle at 50% -12%,rgba(115,61,190,.19),transparent 32%),
radial-gradient(circle at 15% 28%,rgba(54,20,88,.13),transparent 27%),
linear-gradient(180deg,#020103,#050307 50%,#020103);color:var(--muted);font-size:9px;letter-spacing:.16em;margin-top:1px;text-transform:uppercase}
.secure{font:600 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#7ea889;border:1px solid var(--line);padding:8px 9px;border-radius:99px;background:#08050d}
.screen{display:none;animation:in .38s cubic-bezier(.22,.8,.25,1)}.screen.active{display:block}@keyframes in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.eyebrow{font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.19em;color:var(--acid);text-transform:uppercase;margin:12px 0 14px}
h1,h2{letter-spacing:-.055em;margin:0}h1{font-size:clamp(39px,11vw,62px);line-height:.98;max-width:500px}h2{font-size:31px;line-height:1.02}.lead{font-size:16px;line-height:1.55;color:#aab5ad;margin:18px 0 22px;max-width:480px}
.glow{color:var(--acid);text-shadow:0 0 24px rgba(155,108,255,.18)}
.hero-orb{margin:24px auto 10px;width:215px;height:215px;position:relative;display:grid;place-items:center}
.ring,.ring2{position:absolute;border-radius:50%;border:1px solid rgba(155,108,255,.18);inset:0;animation:spin 13s linear infinite}.ring:before,.ring2:before{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 18px var(--acid);left:50%;top:-4px}.ring2{inset:25px;animation-direction:reverse;animation-duration:8s;border-style:dashed}.core{width:116px;height:116px;border-radius:50%;background:radial-gradient(circle,rgba(155,108,255,.17),rgba(155,108,255,.025) 61%,transparent 64%);border:1px solid rgba(155,108,255,.32);display:grid;place-items:center;box-shadow:0 0 60px rgba(127,75,235,.08),inset 0 0 40px rgba(140,89,255,.04)}.core svg{width:46px;color:var(--acid)}
@keyframes spin{to{transform:rotate(360deg)}}
.card{background:linear-gradient(180deg,rgba(14,19,17,.97),rgba(8,11,10,.97));border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow);position:relative;overflow:hidden}.card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 30%,rgba(155,108,255,.025),transparent 68%)}
.input-wrap{display:flex;align-items:center;background:#07050a;border:1px solid rgba(255,255,255,.10);border-radius:17px;padding:3px 3px 3px 15px;transition:.2s}.input-wrap:focus-within{border-color:rgba(155,108,255,.48);box-shadow:0 0 0 4px rgba(155,108,255,.06)}.at{color:var(--acid);font-weight:800;font-size:18px}input{width:100%;background:transparent;border:0;outline:0;color:white;padding:16px 10px;font-size:17px;font-weight:650}
.btn{appearance:none;border:0;width:100%;cursor:pointer;border-radius:16px;padding:17px 18px;font-size:14px;font-weight:850;letter-spacing:.02em;background:linear-gradient(135deg,var(--acid),#7c4dff);color:#021006;box-shadow:0 13px 40px rgba(126,80,255,.12);transition:.18s}.btn:active{transform:scale(.985)}.btn.secondary{background:#0b0710;color:#c9d4cc;border:1px solid var(--line);box-shadow:none}.input-wrap .btn{width:auto;padding:14px 17px;border-radius:13px;white-space:nowrap}
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.trust div{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);padding:12px 9px;border-radius:14px;text-align:center;font-size:10px;color:#88958c}.trust b{display:block;color:#d7e0da;font-size:11px;margin-bottom:3px}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.terminal{margin-top:18px;border-top:1px solid rgba(255,255,255,.06);padding-top:14px;font:11px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;color:#617066}.terminal i{color:var(--acid);font-style:normal}
.profile{display:flex;gap:15px;align-items:center}.avatar{width:78px;height:78px;border-radius:22px;object-fit:cover;background:#121714;border:1px solid rgba(155,108,255,.24);padding:2px}.pname{font-size:19px;font-weight:850;letter-spacing:-.03em}.handle{color:var(--acid);font:600 13px ui-monospace,monospace;margin-top:3px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.stat{padding:13px 8px;background:#07050a;border:1px solid rgba(255,255,255,.06);border-radius:14px;text-align:center}.stat b{display:block;font-size:17px}.stat span{font-size:9px;color:#68756c;text-transform:uppercase;letter-spacing:.08em}
.scan{padding:30px 0 10px}.scanline{height:2px;width:100%;background:linear-gradient(90deg,transparent,var(--acid),transparent);box-shadow:0 0 18px var(--acid);animation:scan 1.5s ease-in-out infinite}@keyframes scan{0%,100%{transform:translateY(0);opacity:.25}50%{transform:translateY(140px);opacity:1}}.loadertext{text-align:center;margin-top:160px}.loadertext strong{display:block;font-size:18px}.loadertext span{color:#748078;font:11px/1.5 ui-monospace,monospace}
.progress{height:7px;border-radius:99px;background:#100b16;overflow:hidden;margin-top:16px}.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#5c2ca8,#9b6cff);transition:width .4s}
.signal-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.signal-head span{font:11px ui-monospace,monospace;color:var(--acid)}
.signals{display:grid;gap:9px}.signal{display:flex;align-items:center;gap:12px;padding:11px;background:#07050a;border:1px solid rgba(255,255,255,.065);border-radius:16px}.signal img{width:48px;height:48px;border-radius:14px;object-fit:cover;background:#121714}.signal .copy{min-width:0;flex:1}.signal b,.signal p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.signal b{font-size:13px}.signal p{margin:3px 0 0;color:#67756b;font-size:11px}.pulse{width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 13px var(--acid)}.blurred{filter:blur(5px);opacity:.48}.lockrow{position:relative}.locktag{position:absolute;right:12px;top:50%;transform:translateY(-50%);font:700 9px ui-monospace,monospace;color:#cfe8d5;background:#111813;border:1px solid var(--line);border-radius:99px;padding:6px 8px}
.notice{margin-top:13px;padding:12px 13px;border-radius:14px;background:rgba(155,108,255,.045);border:1px solid var(--line);color:#7e9183;font-size:10px;line-height:1.5}.notice b{color:#bcd1c1}
.apkbox{text-align:center;padding:28px 20px}.appicon{width:78px;height:78px;margin:0 auto 17px;border-radius:24px;background:linear-gradient(145deg,#8e5cff,#3a155e);display:grid;place-items:center;box-shadow:0 15px 45px rgba(139,92,246,.16);font-size:31px}.apkmeta{display:flex;justify-content:center;gap:15px;color:#718078;font-size:10px;margin:14px 0 20px}.apkmeta b{color:#dae3dd;display:block;font-size:12px}
.steps{display:grid;gap:8px;margin:14px 0 18px}.step{display:flex;gap:12px;text-align:left;align-items:center;background:#07050a;border:1px solid rgba(255,255,255,.06);padding:12px;border-radius:14px}.step i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(155,108,255,.08);color:var(--acid);font:700 11px ui-monospace,monospace}.step b{font-size:12px}.step small{display:block;color:#69766d;margin-top:2px}
.footer{text-align:center;color:#485249;font-size:9px;line-height:1.6;margin:28px 12px 0}.footer a{color:#6a796e}
.toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%,15px);width:min(calc(100% - 28px),520px);padding:13px 15px;border-radius:13px;background:#171c18;border:1px solid var(--line);opacity:0;pointer-events:none;transition:.25s;color:#ccd7cf;font-size:12px;z-index:50}.toast.on{opacity:1;transform:translate(-50%,0)}
@media(min-width:700px){.shell{padding-top:28px}.card{padding:24px}}

/* Interactive public-connection radar */
.radar-stage{height:360px;margin:16px 0 22px;position:relative;border-radius:28px;overflow:hidden;border:1px solid rgba(155,108,255,.13);background:radial-gradient(circle,rgba(155,108,255,.09),transparent 52%),#050307;box-shadow:inset 0 0 70px rgba(0,0,0,.55),0 22px 70px rgba(0,0,0,.28)}
.radar-grid{position:absolute;inset:-14%;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 48px,rgba(155,108,255,.10) 49px 50px),linear-gradient(90deg,transparent 49.8%,rgba(155,108,255,.10) 50%,transparent 50.2%),linear-gradient(transparent 49.8%,rgba(155,108,255,.10) 50%,transparent 50.2%)}
.radar-sweep{position:absolute;inset:-25%;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 305deg,rgba(155,108,255,.01) 310deg,rgba(155,108,255,.20) 358deg,rgba(155,108,255,.35) 360deg);animation:radarRotate 4.6s linear infinite;transform-origin:center}
@keyframes radarRotate{to{transform:rotate(360deg)}}
.radar-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;text-align:center}.radar-center img{width:68px;height:68px;border-radius:50%;object-fit:cover;border:3px solid var(--acid);box-shadow:0 0 0 7px rgba(155,108,255,.08),0 0 30px rgba(155,108,255,.28)}.radar-center span{display:block;margin-top:9px;font:800 8px ui-monospace,monospace;letter-spacing:.16em;color:var(--acid)}
.orbit-person{--angle:calc(360deg / var(--n) * var(--i));position:absolute;left:50%;top:50%;z-index:5;width:58px;height:58px;margin:-29px;border:0;background:transparent;cursor:pointer;transform:rotate(var(--angle)) translateX(125px) rotate(calc(-1 * var(--angle)));animation:personPop .5s both;animation-delay:calc(var(--i) * 80ms)}
@keyframes personPop{from{opacity:0;scale:.6}to{opacity:1;scale:1}}
.orbit-person img{width:52px;height:52px;object-fit:cover;border-radius:50%;border:2px solid rgba(155,108,255,.7);box-shadow:0 0 0 4px rgba(0,0,0,.55),0 0 18px rgba(155,108,255,.22)}.orbit-person:after{content:"";position:absolute;width:6px;height:6px;background:var(--acid);box-shadow:0 0 10px var(--acid);border-radius:50%;right:1px;top:4px}.orbit-person span{position:absolute;left:50%;top:57px;transform:translateX(-50%);max-width:92px;padding:4px 6px;border-radius:8px;background:rgba(4,8,5,.86);color:#b8c8bc;font:700 8px ui-monospace,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-head{display:flex;justify-content:space-between;align-items:end;margin:4px 2px 10px}.rail-head b{display:block;font-size:14px}.rail-head small{display:block;color:#66736a;font-size:10px;margin-top:3px}.rail-head>span{color:var(--acid);font:700 8px ui-monospace,monospace;letter-spacing:.1em}
.people-rail{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 13px;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-16px}.people-rail::-webkit-scrollbar{display:none}
.person-card{scroll-snap-align:start;flex:0 0 126px;min-height:176px;border:1px solid rgba(255,255,255,.07);border-radius:19px;padding:10px;background:linear-gradient(180deg,#0b0710,#07050a);color:white;text-align:left;cursor:pointer;position:relative;overflow:hidden}.person-card:active{transform:scale(.98)}
.person-photo-wrap{position:relative;width:100%;aspect-ratio:1;border-radius:14px;overflow:hidden;background:#120d19;margin-bottom:9px}.person-photo-wrap img{width:100%;height:100%;object-fit:cover}.person-card strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-card small{display:block;color:#718077;font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-card em{display:block;color:var(--acid);font:700 8px ui-monospace,monospace;font-style:normal;margin-top:8px}
.verified,.mini-lock,.online-dot{position:absolute}.verified{right:6px;bottom:6px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#8b5cf6;color:#03200d;font-weight:950;font-size:11px}.online-dot{right:7px;bottom:7px;width:9px;height:9px;border-radius:50%;background:var(--acid);box-shadow:0 0 12px var(--acid);border:2px solid #080c09}.mini-lock{right:6px;bottom:6px;background:#07050ad9;border:1px solid rgba(155,108,255,.2);color:var(--acid);padding:5px 6px;border-radius:7px;font:800 7px ui-monospace,monospace}.person-card.is-locked .person-photo-wrap img{filter:blur(5px) brightness(.55);transform:scale(1.07)}
.activity-card{margin-top:10px}.activity-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.activity-title b{font-size:13px}.activity-title small{display:block;color:#647169;font-size:9px;margin-top:2px}.activity-title>span{font:800 8px ui-monospace,monospace;color:var(--acid)}
.activity-preview{display:grid;gap:7px}.activity-row{display:flex;width:100%;align-items:center;gap:10px;text-align:left;border:1px solid rgba(255,255,255,.055);background:#07050a;color:white;border-radius:14px;padding:9px;cursor:pointer}.activity-row img{width:43px;height:43px;border-radius:13px;object-fit:cover}.activity-row>div:nth-child(2){min-width:0;flex:1}.activity-row b,.activity-row span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-row b{font-size:11px}.activity-row span{font-size:9px;color:#627067;margin-top:3px}.activity-meta{display:flex!important;align-items:center;gap:5px;white-space:nowrap}.activity-meta i{width:5px;height:5px;border-radius:50%;background:var(--acid);box-shadow:0 0 8px var(--acid)}.activity-meta small{color:#6d7c72;font:700 7px ui-monospace,monospace}
.app-gate{display:flex;gap:12px;align-items:center;margin:13px 0;padding:14px;border-radius:15px;background:linear-gradient(120deg,rgba(155,108,255,.08),rgba(155,108,255,.025));border:1px solid rgba(155,108,255,.14)}.gate-icon{flex:0 0 38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(155,108,255,.1);color:var(--acid);font-size:22px}.app-gate b{font-size:11px}.app-gate p{margin:3px 0 0;color:#718077;font-size:9px;line-height:1.45}
.person-modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.74);backdrop-filter:blur(12px);display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:.25s}.person-modal.on{opacity:1;pointer-events:auto}.person-sheet{width:min(100%,560px);border:1px solid rgba(155,108,255,.14);border-bottom:0;border-radius:28px 28px 0 0;background:linear-gradient(180deg,#0d0813,#050307);padding:26px 20px max(24px,env(safe-area-inset-bottom));text-align:center;position:relative;transform:translateY(35px);transition:.3s}.person-modal.on .person-sheet{transform:none}
.sheet-close{position:absolute;right:16px;top:14px;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:#100b16;color:#9cab9f;font-size:22px;cursor:pointer}.sheet-rings{width:106px;height:106px;border-radius:50%;margin:8px auto 15px;padding:8px;border:1px dashed rgba(155,108,255,.28);box-shadow:0 0 40px rgba(155,108,255,.06)}.sheet-rings img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid rgba(155,108,255,.55)}.sheet-badge{display:inline-block;color:var(--acid);border:1px solid rgba(155,108,255,.17);background:rgba(155,108,255,.045);border-radius:99px;padding:6px 8px;font:800 7px ui-monospace,monospace;letter-spacing:.11em}.person-sheet h3{font-size:23px;margin:10px 0 2px;letter-spacing:-.04em}.person-sheet>p{margin:0;color:#7b8a80;font:600 11px ui-monospace,monospace}.sheet-info{display:flex;gap:9px;align-items:flex-start;text-align:left;margin:18px 0;padding:12px;border-radius:13px;background:#07050a;border:1px solid rgba(255,255,255,.055);color:#7a897f;font-size:10px;line-height:1.5}.sheet-info i{flex:0 0 6px;height:6px;border-radius:50%;background:var(--acid);box-shadow:0 0 9px var(--acid);margin-top:4px}
@media(max-width:390px){.radar-stage{height:325px}.orbit-person{transform:rotate(var(--angle)) translateX(110px) rotate(calc(-1 * var(--angle)));width:52px;height:52px;margin:-26px}.orbit-person img{width:46px;height:46px}.person-card{flex-basis:118px}}

/* progressive discovery list */
.discovery-head{display:flex;justify-content:space-between;align-items:end;margin:3px 2px 10px}.discovery-head b{display:block;font-size:14px}.discovery-head small{display:block;color:#66736a;font-size:10px;margin-top:3px}.discovery-head>span{color:var(--acid);font:800 8px ui-monospace,monospace;letter-spacing:.1em}
.discovery-list{display:grid;gap:7px;max-height:430px;overflow:auto;scrollbar-width:none;margin-bottom:18px}.discovery-list::-webkit-scrollbar{display:none}
.discovery-row{width:100%;display:flex;align-items:center;gap:11px;padding:10px 11px;border:1px solid rgba(155,108,255,.09);border-radius:15px;background:linear-gradient(90deg,rgba(155,108,255,.035),rgba(255,255,255,.015));color:white;text-align:left;cursor:pointer;animation:discoverIn .48s cubic-bezier(.2,.8,.25,1) both;position:relative;overflow:hidden}
.discovery-row:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(155,108,255,.08),transparent 70%);transform:translateX(-120%);animation:rowSweep 1.2s ease-out}
@keyframes discoverIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@keyframes rowSweep{to{transform:translateX(120%)}}
.discover-avatar{width:46px;height:46px;border-radius:50%;position:relative;flex:0 0 46px}.discover-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid rgba(155,108,255,.55);box-shadow:0 0 14px rgba(155,108,255,.10)}.discover-avatar i{position:absolute;right:1px;bottom:2px;width:9px;height:9px;border-radius:50%;background:var(--acid);border:2px solid #08050d;box-shadow:0 0 11px var(--acid)}
.discover-copy{min-width:0;flex:1}.discover-copy b,.discover-copy span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discover-copy b{font-size:12px}.discover-copy span{margin-top:2px;font-size:9px;color:#68766d}
.discover-status{text-align:right;white-space:nowrap}.discover-status small{display:block;color:var(--acid);font:800 7px ui-monospace,monospace;letter-spacing:.08em}.discover-status em{display:block;color:#5f6c63;font:700 7px ui-monospace,monospace;font-style:normal;margin-top:4px}
.pre-hidden{opacity:.08!important;filter:blur(4px);transform:scale(.96);pointer-events:none}.person-card,.activity-row{transition:opacity .42s,filter .42s,transform .42s}
.orbit-enter{animation:orbitBirth .55s cubic-bezier(.18,.85,.25,1.2) both!important}
@keyframes orbitBirth{0%{opacity:0;scale:.25;filter:blur(6px)}65%{opacity:1;scale:1.16;filter:blur(0)}100%{opacity:1;scale:1}}

/* v4 — actual FOLLOWING profiles appearing inside radar */
#orbitPeople{position:absolute;inset:0;z-index:6;pointer-events:none}
.radar-friend{
  position:absolute;
  transform:translate(-50%,-50%);
  width:72px;
  padding:0;
  border:0;
  background:transparent;
  color:white;
  cursor:pointer;
  pointer-events:auto;
  text-align:center;
  z-index:7
}
.radar-friend-ring{
  width:58px;
  height:58px;
  margin:0 auto;
  border-radius:50%;
  padding:3px;
  background:conic-gradient(#a67cff,#8f5cff,#5a2aa2,#a67cff);
  box-shadow:
    0 0 0 3px rgba(3,8,5,.92),
    0 0 0 4px rgba(155,108,255,.16),
    0 0 20px rgba(150,105,255,.19);
  position:relative
}
.radar-friend-ring:after{
  content:"";
  position:absolute;
  right:-1px;
  bottom:2px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--acid);
  border:2px solid #08050d;
  box-shadow:0 0 12px var(--acid)
}
.radar-friend img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
  display:block;
  background:#100b16
}
.radar-friend>span{
  display:block;
  max-width:72px;
  margin-top:6px;
  padding:3px 5px;
  border-radius:7px;
  background:rgba(3,7,4,.86);
  color:#d5e6d9;
  font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  box-shadow:0 3px 12px rgba(0,0,0,.35)
}
.radar-friend-enter{
  animation:radarFriendBirth .58s cubic-bezier(.18,.88,.24,1.18) both
}
@keyframes radarFriendBirth{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.18);filter:blur(7px)}
  55%{opacity:1;transform:translate(-50%,-50%) scale(1.18);filter:blur(0)}
  100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
.radar-friend:hover .radar-friend-ring{
  box-shadow:
    0 0 0 3px rgba(3,8,5,.92),
    0 0 0 4px rgba(155,108,255,.34),
    0 0 28px rgba(150,105,255,.33)
}
/* old orbit bubbles no longer used */
.orbit-person{display:none!important}

@media(max-width:390px){
  .radar-friend{width:62px}
  .radar-friend-ring{width:49px;height:49px}
  .radar-friend>span{max-width:62px;font-size:7px}
}

/* v12 — black + deep purple visual system */
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 50% 28%,rgba(100,47,170,.06),transparent 38%)}
.top{border-bottom:1px solid rgba(155,108,255,.055)}
.mark{background:linear-gradient(145deg,rgba(155,108,255,.18),rgba(63,24,100,.04));border-color:rgba(155,108,255,.28)}
.secure{color:#aa91cf;border-color:rgba(155,108,255,.14);background:#08050d}
.card{background:linear-gradient(180deg,rgba(13,9,18,.98),rgba(5,3,8,.985));border-color:rgba(155,108,255,.14)}
.btn{background:linear-gradient(135deg,#a879ff,#7340d7 52%,#542394);color:white;box-shadow:0 15px 46px rgba(113,56,195,.22),inset 0 1px rgba(255,255,255,.18)}
.btn.secondary{background:#0a0710;border-color:rgba(155,108,255,.15);color:#c8bdd5}
.input-wrap{background:#050307;border-color:rgba(155,108,255,.12)}
.input-wrap:focus-within{border-color:rgba(155,108,255,.58);box-shadow:0 0 0 4px rgba(155,108,255,.07),0 0 30px rgba(102,50,171,.08)}
.notice{background:rgba(119,66,187,.055);border-color:rgba(155,108,255,.15);color:#958aa2}
.radar-stage{background:radial-gradient(circle,rgba(103,49,170,.12),transparent 54%),#030205;border-color:rgba(155,108,255,.18);box-shadow:inset 0 0 85px rgba(0,0,0,.8),0 24px 80px rgba(0,0,0,.46)}
.radar-grid{background:repeating-radial-gradient(circle,transparent 0 48px,rgba(155,108,255,.13) 49px 50px),linear-gradient(90deg,transparent 49.8%,rgba(155,108,255,.10) 50%,transparent 50.2%),linear-gradient(transparent 49.8%,rgba(155,108,255,.10) 50%,transparent 50.2%)}
.radar-sweep{background:conic-gradient(from 0deg,transparent 0 308deg,rgba(155,108,255,.015) 314deg,rgba(123,65,204,.22) 354deg,rgba(166,124,255,.48) 360deg)}
.radar-center img{border-color:#9b6cff;box-shadow:0 0 0 7px rgba(155,108,255,.09),0 0 34px rgba(155,108,255,.38)}
.radar-friend-ring{background:conic-gradient(#c09aff,#a169ff,#6e36c2,#c09aff);box-shadow:0 0 0 3px rgba(3,2,5,.94),0 0 0 4px rgba(155,108,255,.18),0 0 24px rgba(155,108,255,.22)}
.radar-friend-ring:after,.discover-avatar i,.online-dot,.activity-meta i,.sheet-info i{background:#9b6cff;box-shadow:0 0 12px #9b6cff}
.discovery-row{border-color:rgba(155,108,255,.10);background:linear-gradient(90deg,rgba(155,108,255,.045),rgba(255,255,255,.012))}
.discovery-row:before{background:linear-gradient(110deg,transparent 20%,rgba(155,108,255,.09),transparent 70%)}
.person-card{background:linear-gradient(180deg,#0b0710,#050307);border-color:rgba(155,108,255,.09)}
.app-gate{background:linear-gradient(120deg,rgba(155,108,255,.09),rgba(81,37,129,.025));border-color:rgba(155,108,255,.16)}
.gate-icon{background:rgba(155,108,255,.10);color:#b286ff}
.person-sheet{background:linear-gradient(180deg,#0d0813,#030205);border-color:rgba(155,108,255,.17)}

/* Cinematic @ lookup */
.lookup-cinema{min-height:640px;position:relative;overflow:hidden;border:1px solid rgba(155,108,255,.15);border-radius:28px;background:radial-gradient(circle at 50% 34%,rgba(114,61,184,.16),transparent 24%),linear-gradient(180deg,#07040c,#030205 72%);box-shadow:0 35px 120px rgba(0,0,0,.68),inset 0 0 80px rgba(87,35,140,.04);padding:58px 24px 28px;text-align:center}
.cinema-grid{position:absolute;inset:-18%;opacity:.34;background:linear-gradient(rgba(155,108,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(155,108,255,.055) 1px,transparent 1px);background-size:34px 34px;transform:perspective(500px) rotateX(58deg) translateY(120px);transform-origin:center bottom}
.cinema-noise{position:absolute;inset:0;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}
.cinema-orbit{position:absolute;left:50%;top:190px;border-radius:50%;border:1px solid rgba(155,108,255,.21);transform:translate(-50%,-50%)}
.orbit-a{width:250px;height:250px;animation:cinemaSpin 4s linear infinite}.orbit-b{width:175px;height:175px;border-style:dashed;animation:cinemaSpin 2.8s linear infinite reverse}.cinema-orbit:before,.cinema-orbit:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#a970ff;box-shadow:0 0 18px #9b6cff}.cinema-orbit:before{top:-4px;left:50%}.cinema-orbit:after{bottom:15%;right:6%}
@keyframes cinemaSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.cinema-core{position:relative;z-index:3;width:96px;height:96px;border-radius:28px;margin:82px auto 22px;display:grid;place-items:center;background:radial-gradient(circle,rgba(160,103,255,.24),rgba(99,43,164,.08) 58%,rgba(0,0,0,.25));border:1px solid rgba(174,126,255,.37);box-shadow:0 0 0 8px rgba(155,108,255,.035),0 0 54px rgba(122,65,204,.22);animation:corePulse 1.8s ease-in-out infinite}
@keyframes corePulse{50%{transform:scale(1.055);box-shadow:0 0 0 13px rgba(155,108,255,.018),0 0 72px rgba(137,78,226,.34)}}
.ig-glyph{font-size:48px;color:#b789ff;text-shadow:0 0 30px rgba(155,108,255,.65)}
.lookup-user{position:relative;z-index:3;color:#c8a7ff;font:800 12px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;margin-bottom:9px}.lookup-fx-title{position:relative;z-index:3;font-size:28px;font-weight:900;letter-spacing:-.045em}.lookup-fx-sub{position:relative;z-index:3;color:#7f718d;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace;margin-top:8px;min-height:16px}
.lookup-fx-console{position:relative;z-index:3;text-align:left;width:min(100%,390px);margin:30px auto 16px;border:1px solid rgba(155,108,255,.10);background:rgba(4,2,7,.78);border-radius:14px;padding:13px 14px;min-height:104px;box-shadow:inset 0 0 34px rgba(104,48,171,.035)}.lookup-fx-console span{display:block;color:#70637c;font:9px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace}.lookup-fx-console span:last-child{color:#b28ae8}.lookup-fx-console span:before{color:#7e49c2}
.lookup-fx-progress{position:relative;z-index:3;width:min(100%,390px);height:5px;margin:0 auto;background:#100a17;border-radius:99px;overflow:hidden;border:1px solid rgba(155,108,255,.09)}.lookup-fx-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#4b1f7c,#8a50df,#bf8dff);box-shadow:0 0 15px rgba(174,119,255,.56);transition:width .35s ease}
.lookup-fx-note{position:relative;z-index:3;display:block;margin-top:14px;color:#514857;font-size:8px;line-height:1.5}
@media(max-width:390px){.lookup-cinema{min-height:590px;padding-left:16px;padding-right:16px}.cinema-orbit{top:175px}.orbit-a{width:225px;height:225px}.orbit-b{width:155px;height:155px}.cinema-core{margin-top:77px}}

/* =========================================================
   v13 — MOBILE FIRST VISUAL REBUILD
   Functional logic untouched. Android-first visual layer.
   ========================================================= */

:root{
  --bg:#050308;
  --surface:#0b0710;
  --surface-2:#100a17;
  --surface-3:#15101c;
  --purple:#8b5cf6;
  --purple-2:#6d3ed4;
  --purple-soft:#b997ff;
  --text:#f7f4fb;
  --muted:#968ba3;
  --line:rgba(165,122,255,.14);
  --line-strong:rgba(165,122,255,.24);
  --shadow:0 18px 60px rgba(0,0,0,.38);
}

/* reset the accidental oversized/serif look */
html{
  background:var(--bg);
  color-scheme:dark;
  -webkit-text-size-adjust:100%;
}
body{
  margin:0!important;
  width:100%;
  min-width:320px;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 50% -8%, rgba(92,45,155,.18), transparent 30%),
    linear-gradient(180deg,#050308 0%,#07040a 42%,#040206 100%)!important;
  color:var(--text)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
  font-size:16px!important;
  line-height:1.45!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body:before{
  opacity:.08!important;
  background-size:32px 32px!important;
}
body:after{
  background:none!important;
}

.shell{
  width:100%!important;
  max-width:520px!important;
  min-height:100dvh;
  margin:0 auto!important;
  padding:
    max(14px,env(safe-area-inset-top))
    14px
    max(30px,env(safe-area-inset-bottom))!important;
}

/* Header */
.top{
  min-height:54px;
  padding:0 2px 12px!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:0!important;
}
.brand{
  gap:9px!important;
  font-size:15px!important;
  line-height:1.05!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
}
.brand small{
  font-size:7px!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  margin-top:4px!important;
  color:#6f6579!important;
}
.mark{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px;
  border-radius:12px!important;
  background:linear-gradient(145deg,rgba(139,92,246,.16),rgba(80,41,134,.07))!important;
  border:1px solid rgba(164,118,255,.20)!important;
  box-shadow:none!important;
}
.mark svg{
  width:19px!important;
  height:19px!important;
  stroke:#ad86ff!important;
}
.secure{
  padding:7px 9px!important;
  font-size:8px!important;
  border-radius:999px!important;
  color:#a893c3!important;
  border-color:rgba(169,125,255,.15)!important;
  background:rgba(12,7,17,.9)!important;
}

/* Screen rhythm */
.screen{
  width:100%;
}
.eyebrow{
  margin:14px 0 12px!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.15em!important;
  color:#a979ff!important;
}

/* Typography */
h1,h2,h3{
  margin:0!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:var(--text)!important;
  text-transform:none!important;
}
h1{
  max-width:440px!important;
  font-size:clamp(34px,9vw,48px)!important;
  line-height:.98!important;
  letter-spacing:-.052em!important;
  font-weight:900!important;
}
h2{
  font-size:clamp(27px,7vw,34px)!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
  font-weight:850!important;
}
h3{
  font-size:22px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}
.glow{
  color:#b182ff!important;
  text-shadow:0 0 22px rgba(145,89,237,.22)!important;
}
.lead{
  max-width:450px!important;
  margin:14px 0 20px!important;
  color:#a69bab!important;
  font-size:14px!important;
  line-height:1.55!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Cards */
.card{
  width:100%;
  border-radius:22px!important;
  padding:16px!important;
  background:
    linear-gradient(180deg,rgba(15,10,21,.97),rgba(8,5,12,.98))!important;
  border:1px solid rgba(164,118,255,.12)!important;
  box-shadow:var(--shadow)!important;
}
.card:after{
  display:none!important;
}

/* Form */
.input-wrap{
  width:100%;
  min-height:58px;
  padding:4px 4px 4px 14px!important;
  border-radius:16px!important;
  background:#07040a!important;
  border:1px solid rgba(166,120,255,.12)!important;
}
.input-wrap:focus-within{
  border-color:rgba(164,118,255,.45)!important;
  box-shadow:0 0 0 4px rgba(139,92,246,.055)!important;
}
.at{
  color:#a979ff!important;
  font-size:17px!important;
}
input{
  min-width:0;
  padding:15px 8px!important;
  font-size:16px!important;
  font-weight:650!important;
  color:#fff!important;
}
.btn{
  min-height:54px;
  border-radius:15px!important;
  padding:15px 16px!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:850!important;
  letter-spacing:.015em!important;
  text-transform:none!important;
  color:#fff!important;
  background:linear-gradient(135deg,#9a67f8,#7d4be0 58%,#6130ba)!important;
  box-shadow:0 12px 32px rgba(96,46,176,.22)!important;
}
.btn:active{
  transform:scale(.985)!important;
}
.input-wrap .btn{
  min-height:46px;
  width:auto!important;
  padding:12px 14px!important;
  font-size:11px!important;
  border-radius:12px!important;
}
.btn.secondary{
  background:#0c0811!important;
  border:1px solid rgba(164,118,255,.13)!important;
  color:#bfb3c9!important;
  box-shadow:none!important;
}

/* Home */
.hero-orb{
  width:170px!important;
  height:170px!important;
  margin:22px auto 12px!important;
}
.hero-orb .core{
  width:94px!important;
  height:94px!important;
}
.hero-orb .core svg{
  width:39px!important;
}
.trust{
  margin:13px 0!important;
  gap:7px!important;
}
.trust div{
  min-height:56px;
  padding:10px 6px!important;
  border-radius:13px!important;
  font-size:8px!important;
  color:#766c80!important;
  background:rgba(255,255,255,.015)!important;
  border-color:rgba(255,255,255,.055)!important;
}
.trust b{
  margin-bottom:4px!important;
  font-size:9px!important;
  color:#c4b8cf!important;
}
.terminal{
  margin-top:12px!important;
  padding:12px!important;
  border:1px solid rgba(161,114,255,.08)!important;
  border-radius:13px;
  background:#07040a;
  font-size:8px!important;
  line-height:1.7!important;
  color:#665e6d!important;
}
.terminal i{
  color:#a977ff!important;
}

/* Confirm profile */
.profile{
  gap:13px!important;
}
.avatar{
  width:68px!important;
  height:68px!important;
  border-radius:19px!important;
  border:1px solid rgba(169,125,255,.24)!important;
  padding:1px!important;
}
.pname{
  font-size:17px!important;
  line-height:1.15!important;
}
.handle{
  margin-top:4px!important;
  font-size:11px!important;
  color:#b68cff!important;
}
.stats{
  margin:15px 0!important;
  gap:7px!important;
}
.stat{
  padding:11px 5px!important;
  border-radius:12px!important;
  background:#08050b!important;
}
.stat b{
  font-size:15px!important;
}
.stat span{
  margin-top:2px;
  font-size:7px!important;
  letter-spacing:.08em!important;
}

/* Cinematic lookup - make it compact and polished */
.lookup-cinema{
  min-height:530px!important;
  padding:38px 18px 24px!important;
  border-radius:24px!important;
  border-color:rgba(158,112,247,.13)!important;
  background:
    radial-gradient(circle at 50% 28%,rgba(105,54,175,.14),transparent 25%),
    linear-gradient(180deg,#09050e,#040206 72%)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.44)!important;
}
.cinema-grid{
  opacity:.18!important;
  background-size:30px 30px!important;
}
.cinema-orbit{
  top:155px!important;
}
.orbit-a{
  width:210px!important;
  height:210px!important;
}
.orbit-b{
  width:145px!important;
  height:145px!important;
}
.cinema-core{
  width:82px!important;
  height:82px!important;
  border-radius:24px!important;
  margin:72px auto 18px!important;
}
.ig-glyph{
  font-size:40px!important;
}
.lookup-user{
  margin-bottom:7px!important;
  font-size:10px!important;
}
.lookup-fx-title{
  font-size:24px!important;
  line-height:1.05!important;
}
.lookup-fx-sub{
  margin-top:7px!important;
  font-size:9px!important;
}
.lookup-fx-console{
  width:100%!important;
  min-height:91px!important;
  margin:24px auto 13px!important;
  padding:11px 12px!important;
  border-radius:12px!important;
}
.lookup-fx-console span{
  font-size:8px!important;
  line-height:1.75!important;
}
.lookup-fx-progress{
  width:100%!important;
}
.lookup-fx-note{
  margin-top:11px!important;
  font-size:7px!important;
}

/* Scanning */
.scan{
  padding:20px 14px 14px!important;
  min-height:330px;
}
.loadertext{
  margin-top:125px!important;
}
.loadertext strong{
  font-size:16px!important;
}
.loadertext span{
  font-size:9px!important;
}

/* Radar */
.signal-head{
  gap:10px;
  align-items:flex-start!important;
}
.signal-head h2{
  max-width:370px;
}
.signal-head>span{
  flex:0 0 auto;
  padding-top:7px;
  font-size:8px!important;
}
.radar-stage{
  width:100%;
  height:auto!important;
  aspect-ratio:1.12/1!important;
  max-height:390px;
  margin:16px 0 18px!important;
  border-radius:24px!important;
  overflow:hidden;
  border-color:rgba(158,112,247,.16)!important;
}
.radar-grid{
  inset:-18%!important;
}
.radar-center img{
  width:60px!important;
  height:60px!important;
}
.radar-center span{
  margin-top:7px!important;
  font-size:7px!important;
}
.radar-friend{
  width:62px!important;
}
.radar-friend-ring{
  width:49px!important;
  height:49px!important;
  padding:2px!important;
}
.radar-friend>span{
  max-width:62px!important;
  margin-top:4px!important;
  font-size:6.5px!important;
  padding:3px 4px!important;
}
.radar-friend-ring:after{
  width:8px!important;
  height:8px!important;
}

/* discovered followers */
.discovery-head{
  margin:4px 2px 9px!important;
}
.discovery-head b,.rail-head b{
  font-size:13px!important;
}
.discovery-head small,.rail-head small{
  font-size:8px!important;
}
.discovery-head>span,.rail-head>span{
  font-size:7px!important;
}
.discovery-list{
  max-height:390px!important;
  gap:6px!important;
  margin-bottom:16px!important;
}
.discovery-row{
  gap:10px!important;
  min-height:62px;
  padding:9px 10px!important;
  border-radius:14px!important;
}
.discover-avatar{
  width:43px!important;
  height:43px!important;
  flex-basis:43px!important;
}
.discover-copy b{
  font-size:11px!important;
}
.discover-copy span{
  font-size:8px!important;
}
.discover-status small,.discover-status em{
  font-size:6.5px!important;
}

/* horizontal connection cards */
.people-rail{
  gap:9px!important;
  margin-right:-14px!important;
  padding-bottom:11px!important;
}
.person-card{
  flex-basis:112px!important;
  min-height:157px!important;
  border-radius:17px!important;
  padding:8px!important;
}
.person-photo-wrap{
  border-radius:12px!important;
  margin-bottom:8px!important;
}
.person-card strong{
  font-size:10px!important;
}
.person-card small{
  font-size:8px!important;
}
.person-card em{
  font-size:7px!important;
}

/* activity area */
.activity-card{
  margin-top:8px!important;
}
.activity-title{
  margin-bottom:8px!important;
}
.activity-title b{
  font-size:12px!important;
}
.activity-title small{
  font-size:8px!important;
}
.activity-row{
  gap:9px!important;
  padding:8px!important;
  border-radius:12px!important;
}
.activity-row img{
  width:40px!important;
  height:40px!important;
  border-radius:11px!important;
}
.activity-row b{
  font-size:10px!important;
}
.activity-row span{
  font-size:8px!important;
}
.activity-meta small{
  font-size:6px!important;
}
.app-gate{
  margin:11px 0!important;
  padding:12px!important;
  border-radius:13px!important;
}
.gate-icon{
  flex-basis:34px!important;
  height:34px!important;
  border-radius:10px!important;
}
.app-gate b{
  font-size:10px!important;
}
.app-gate p{
  font-size:8px!important;
  line-height:1.45!important;
}

/* Notice and install */
.notice{
  margin-top:11px!important;
  padding:11px 12px!important;
  border-radius:12px!important;
  font-size:9px!important;
  line-height:1.55!important;
}
.apkbox{
  padding:24px 16px!important;
}
.appicon{
  width:68px!important;
  height:68px!important;
  border-radius:21px!important;
  margin-bottom:15px!important;
  font-size:27px!important;
  background:linear-gradient(145deg,#9b6cff,#4c237e)!important;
}
.apkmeta{
  gap:12px!important;
  margin:12px 0 17px!important;
  font-size:8px!important;
}
.apkmeta b{
  font-size:10px!important;
}
.steps{
  margin:12px 0 16px!important;
}
.step{
  gap:10px!important;
  padding:10px!important;
  border-radius:12px!important;
}
.step i{
  width:27px!important;
  height:27px!important;
  font-size:9px!important;
}
.step b{
  font-size:10px!important;
}
.step small{
  font-size:8px!important;
}

/* sheet */
.person-sheet{
  padding:22px 16px max(22px,env(safe-area-inset-bottom))!important;
  border-radius:24px 24px 0 0!important;
}
.sheet-rings{
  width:92px!important;
  height:92px!important;
  margin-bottom:13px!important;
}
.person-sheet h3{
  font-size:21px!important;
}
.sheet-info{
  margin:15px 0!important;
  padding:11px!important;
  font-size:9px!important;
}

/* footer */
.footer{
  margin:22px 12px 0!important;
  font-size:7px!important;
  line-height:1.55!important;
  color:#554d5d!important;
}

/* Android ergonomic rules */
button,input{
  -webkit-tap-highlight-color:transparent;
}
button{
  touch-action:manipulation;
}
.screen.active{
  animation:screenIn .28s ease both!important;
}
@keyframes screenIn{
  from{opacity:0;transform:translateY(7px)}
  to{opacity:1;transform:none}
}

/* 360px Android */
@media(max-width:380px){
  .shell{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  h1{
    font-size:34px!important;
  }
  h2{
    font-size:27px!important;
  }
  .lead{
    font-size:13px!important;
  }
  .brand{
    font-size:14px!important;
  }
  .secure{
    font-size:7px!important;
    padding:7px 8px!important;
  }
  .radar-stage{
    aspect-ratio:1/1!important;
  }
  .radar-friend{
    width:56px!important;
  }
  .radar-friend-ring{
    width:44px!important;
    height:44px!important;
  }
  .radar-friend>span{
    max-width:56px!important;
  }
}

/* Larger Android / compact tablet */
@media(min-width:480px){
  .shell{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .card{
    padding:18px!important;
  }
}

/* =========================================================
   v14 — ANDROID READABILITY PASS
   Same layout/logic; larger readable typography.
   ========================================================= */

body{
  font-size:16px!important;
}

/* Header */
.brand{font-size:17px!important}
.brand small{font-size:9px!important;letter-spacing:.10em!important}
.secure{font-size:10px!important;padding:8px 11px!important}

/* Section labels */
.eyebrow{
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  margin:16px 0 13px!important;
}

/* Main text */
h1{font-size:clamp(36px,9.5vw,48px)!important;line-height:1.01!important}
h2{font-size:clamp(29px,7.5vw,36px)!important;line-height:1.05!important}
h3{font-size:24px!important}
.lead{
  font-size:16px!important;
  line-height:1.55!important;
  color:#b2a7bc!important;
}

/* Inputs / buttons */
input{font-size:17px!important}
.at{font-size:18px!important}
.btn{font-size:14px!important;min-height:56px!important}
.input-wrap .btn{font-size:12px!important;min-height:48px!important}

/* Home helper text */
.trust div{font-size:10px!important;line-height:1.35!important}
.trust b{font-size:11px!important}
.terminal{font-size:10px!important;line-height:1.65!important}

/* Profile confirmation */
.pname{font-size:19px!important}
.handle{font-size:13px!important}
.stat b{font-size:17px!important}
.stat span{font-size:9px!important}

/* Lookup animation */
.lookup-user{font-size:12px!important}
.lookup-fx-title{font-size:27px!important}
.lookup-fx-sub{font-size:11px!important}
.lookup-fx-console span{font-size:10px!important;line-height:1.7!important}
.lookup-fx-note{font-size:9px!important;line-height:1.45!important}

/* Scanner */
.loadertext strong{font-size:18px!important}
.loadertext span{font-size:11px!important}

/* Radar */
.signal-head>span{font-size:10px!important}
.radar-center span{font-size:9px!important;font-weight:800!important}
.radar-friend{
  width:70px!important;
}
.radar-friend-ring{
  width:54px!important;
  height:54px!important;
}
.radar-friend>span{
  max-width:70px!important;
  font-size:8px!important;
  line-height:1.15!important;
  padding:4px 5px!important;
}

/* Main discovered-list headings */
.discovery-head b,.rail-head b{
  font-size:15px!important;
  line-height:1.25!important;
}
.discovery-head small,.rail-head small{
  font-size:10px!important;
  line-height:1.35!important;
}
.discovery-head>span,.rail-head>span{
  font-size:9px!important;
}

/* Followers list */
.discovery-row{
  min-height:70px!important;
  padding:10px 11px!important;
}
.discover-avatar{
  width:48px!important;
  height:48px!important;
  flex-basis:48px!important;
}
.discover-copy b{
  font-size:13px!important;
  line-height:1.25!important;
}
.discover-copy span{
  font-size:10px!important;
  line-height:1.3!important;
  margin-top:3px!important;
}
.discover-status small,.discover-status em{
  font-size:8px!important;
  line-height:1.3!important;
}

/* Connection cards */
.person-card{
  flex-basis:126px!important;
  min-height:172px!important;
}
.person-card strong{font-size:12px!important}
.person-card small{font-size:10px!important}
.person-card em{font-size:9px!important}

/* Activity */
.activity-title b{font-size:14px!important}
.activity-title small{font-size:10px!important}
.activity-row b{font-size:12px!important}
.activity-row span{font-size:10px!important}
.activity-meta small{font-size:8px!important}

/* App gate */
.app-gate b{font-size:12px!important}
.app-gate p{font-size:10px!important;line-height:1.5!important}
.notice{font-size:11px!important;line-height:1.55!important}

/* Install */
.apkmeta{font-size:10px!important}
.apkmeta b{font-size:12px!important}
.step b{font-size:12px!important}
.step small{font-size:10px!important;line-height:1.45!important}
.step i{font-size:11px!important}

/* Bottom sheet */
.sheet-info{font-size:11px!important}
.footer{
  font-size:9px!important;
  line-height:1.55!important;
}

/* Small Android: don't shrink typography back down */
@media(max-width:380px){
  h1{font-size:35px!important}
  h2{font-size:29px!important}
  .lead{font-size:15px!important}
  .brand{font-size:16px!important}
  .secure{font-size:9px!important}
  .radar-friend{width:64px!important}
  .radar-friend-ring{width:50px!important;height:50px!important}
  .radar-friend>span{max-width:64px!important;font-size:7.5px!important}
}

/* Typical Android widths 390–430 */
@media(min-width:390px) and (max-width:440px){
  .shell{padding-left:15px!important;padding-right:15px!important}
  .lead{font-size:16px!important}
  .discovery-row{min-height:72px!important}
}

/* =========================================================
   v15 — STRONGER ANDROID TYPOGRAPHY
   Larger text without breaking layout
   ========================================================= */

body{font-size:17px!important}

.brand{font-size:19px!important}
.brand small{font-size:10px!important}
.secure{font-size:11px!important}

.eyebrow{
  font-size:12px!important;
  letter-spacing:.11em!important;
}

h1{
  font-size:clamp(38px,10vw,50px)!important;
}
h2{
  font-size:clamp(31px,8vw,38px)!important;
}
h3{
  font-size:25px!important;
}

.lead{
  font-size:17px!important;
  line-height:1.58!important;
}

input{font-size:18px!important}
.btn{font-size:15px!important}
.input-wrap .btn{font-size:13px!important}

.trust div{font-size:11px!important}
.trust b{font-size:12px!important}
.terminal{font-size:11px!important}

.pname{font-size:21px!important}
.handle{font-size:14px!important}
.stat b{font-size:19px!important}
.stat span{font-size:10px!important}

.lookup-user{font-size:13px!important}
.lookup-fx-title{font-size:29px!important}
.lookup-fx-sub{font-size:12px!important}
.lookup-fx-console span{font-size:11px!important}
.lookup-fx-note{font-size:10px!important}

.loadertext strong{font-size:20px!important}
.loadertext span{font-size:12px!important}

.signal-head>span{font-size:11px!important}

.radar-center span{
  font-size:10px!important;
}

.radar-friend{
  width:76px!important;
}
.radar-friend-ring{
  width:58px!important;
  height:58px!important;
}
.radar-friend>span{
  max-width:76px!important;
  font-size:9px!important;
  padding:4px 6px!important;
}

.discovery-head b,
.rail-head b{
  font-size:17px!important;
}
.discovery-head small,
.rail-head small{
  font-size:12px!important;
}
.discovery-head>span,
.rail-head>span{
  font-size:10px!important;
}

.discovery-row{
  min-height:78px!important;
  padding:12px!important;
}
.discover-avatar{
  width:52px!important;
  height:52px!important;
  flex-basis:52px!important;
}
.discover-copy b{
  font-size:15px!important;
}
.discover-copy span{
  font-size:12px!important;
  margin-top:4px!important;
}
.discover-status small,
.discover-status em{
  font-size:9px!important;
}

.person-card{
  flex-basis:138px!important;
  min-height:186px!important;
}
.person-card strong{
  font-size:14px!important;
}
.person-card small{
  font-size:11px!important;
}
.person-card em{
  font-size:10px!important;
}

.activity-title b{
  font-size:16px!important;
}
.activity-title small{
  font-size:12px!important;
}
.activity-row{
  min-height:62px!important;
}
.activity-row b{
  font-size:14px!important;
}
.activity-row span{
  font-size:11px!important;
}
.activity-meta small{
  font-size:9px!important;
}

.app-gate b{
  font-size:14px!important;
}
.app-gate p{
  font-size:12px!important;
}

.notice{
  font-size:12px!important;
}

.apkmeta{font-size:11px!important}
.apkmeta b{font-size:13px!important}
.step b{font-size:14px!important}
.step small{font-size:12px!important}
.step i{font-size:12px!important}

.sheet-info{
  font-size:12px!important;
}

.footer{
  font-size:10px!important;
}

/* Typical Android phones */
@media(max-width:380px){
  body{font-size:16px!important}
  .brand{font-size:18px!important}
  h1{font-size:36px!important}
  h2{font-size:30px!important}
  .lead{font-size:16px!important}
  .discover-copy b{font-size:14px!important}
  .discover-copy span{font-size:11px!important}
  .person-card strong{font-size:13px!important}
  .person-card small{font-size:10px!important}
  .activity-row b{font-size:13px!important}
  .activity-row span{font-size:10px!important}
}

@media(min-width:390px) and (max-width:440px){
  .lead{font-size:17px!important}
  .discovery-row{min-height:80px!important}
}

/* =========================================================
   v16 — REAL TYPOGRAPHY BOOST + FOLLOWERS VISUAL PASS
   ========================================================= */

/* Base */
html body{
  font-size:18px!important;
}

/* Header */
html body .brand{
  font-size:22px!important;
  line-height:1.05!important;
}
html body .brand small{
  font-size:11px!important;
}
html body .secure{
  font-size:12px!important;
}

/* Section labels */
html body .eyebrow{
  font-size:13px!important;
  line-height:1.25!important;
}

/* Main headings */
html body h1{
  font-size:clamp(40px,10.5vw,54px)!important;
  line-height:1.02!important;
}
html body h2{
  font-size:clamp(34px,8.6vw,42px)!important;
  line-height:1.07!important;
}
html body h3{
  font-size:28px!important;
}

/* Paragraphs */
html body .lead{
  font-size:18px!important;
  line-height:1.6!important;
}
html body .notice{
  font-size:14px!important;
  line-height:1.6!important;
}

/* Form */
html body input{
  font-size:19px!important;
}
html body .btn{
  font-size:16px!important;
  min-height:58px!important;
}
html body .input-wrap .btn{
  font-size:14px!important;
}

/* Profile confirm */
html body .pname{
  font-size:23px!important;
}
html body .handle{
  font-size:16px!important;
}
html body .stat b{
  font-size:21px!important;
}
html body .stat span{
  font-size:11px!important;
}

/* Discovery / followers list */
html body .discovery-head b,
html body .rail-head b{
  font-size:20px!important;
  line-height:1.2!important;
}
html body .discovery-head small,
html body .rail-head small{
  font-size:13px!important;
}
html body .discovery-head>span,
html body .rail-head>span{
  font-size:11px!important;
}

html body .discovery-row{
  min-height:88px!important;
  padding:14px!important;
  gap:13px!important;
}
html body .discover-avatar{
  width:58px!important;
  height:58px!important;
  flex-basis:58px!important;
}
html body .discover-copy b{
  font-size:17px!important;
  line-height:1.2!important;
}
html body .discover-copy span{
  font-size:14px!important;
  line-height:1.25!important;
  margin-top:5px!important;
}
html body .discover-status small{
  font-size:10px!important;
}
html body .discover-status em{
  font-size:10px!important;
}

/* Horizontal cards */
html body .person-card{
  flex-basis:152px!important;
  min-height:206px!important;
  padding:10px!important;
}
html body .person-card strong{
  font-size:16px!important;
}
html body .person-card small{
  font-size:13px!important;
}
html body .person-card em{
  font-size:11px!important;
}

/* Activity list */
html body .activity-title b{
  font-size:18px!important;
}
html body .activity-title small{
  font-size:13px!important;
}
html body .activity-row{
  min-height:72px!important;
  padding:11px!important;
}
html body .activity-row img{
  width:48px!important;
  height:48px!important;
}
html body .activity-row b{
  font-size:16px!important;
}
html body .activity-row span{
  font-size:13px!important;
}
html body .activity-meta small{
  font-size:10px!important;
}

/* Radar labels */
html body .radar-center span{
  font-size:11px!important;
}
html body .radar-friend{
  width:82px!important;
}
html body .radar-friend-ring{
  width:62px!important;
  height:62px!important;
}
html body .radar-friend>span{
  max-width:82px!important;
  font-size:10px!important;
  line-height:1.15!important;
  padding:5px 6px!important;
}

/* Lookup animation */
html body .lookup-user{
  font-size:14px!important;
}
html body .lookup-fx-title{
  font-size:31px!important;
}
html body .lookup-fx-sub{
  font-size:13px!important;
}
html body .lookup-fx-console span{
  font-size:12px!important;
}
html body .lookup-fx-note{
  font-size:11px!important;
}

/* App gate / install */
html body .app-gate b{
  font-size:16px!important;
}
html body .app-gate p{
  font-size:14px!important;
}
html body .apkmeta{
  font-size:13px!important;
}
html body .apkmeta b{
  font-size:15px!important;
}
html body .step b{
  font-size:16px!important;
}
html body .step small{
  font-size:14px!important;
}
html body .footer{
  font-size:11px!important;
}

/* Android 360-390: still readable, not tiny */
@media(max-width:390px){
  html body{font-size:17px!important}
  html body .brand{font-size:20px!important}
  html body h1{font-size:38px!important}
  html body h2{font-size:32px!important}
  html body .lead{font-size:17px!important}

  html body .discover-copy b{font-size:16px!important}
  html body .discover-copy span{font-size:13px!important}
  html body .person-card strong{font-size:15px!important}
  html body .person-card small{font-size:12px!important}
  html body .activity-row b{font-size:15px!important}
  html body .activity-row span{font-size:12px!important}
}

/* Header logo + pulsing purple ONLINE */
.brand-logo{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  flex:1!important;
}
.site-logo{
  display:block!important;
  width:auto!important;
  height:44px!important;
  max-width:225px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:drop-shadow(0 0 12px rgba(139,92,246,.22))!important;
}
.secure{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
}
.online-dot-header{
  width:8px!important;
  height:8px!important;
  border-radius:50%!important;
  display:inline-block!important;
  background:#a875ff!important;
  box-shadow:0 0 10px rgba(168,117,255,.85)!important;
  animation:onlineDotPulse 1.2s ease-in-out infinite!important;
}
.online-text{
  color:#b994ff!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  animation:onlineTextPulse 1.2s ease-in-out infinite!important;
}
@keyframes onlineDotPulse{
  0%,100%{opacity:.35;transform:scale(.8);box-shadow:0 0 4px rgba(168,117,255,.25)}
  50%{opacity:1;transform:scale(1.12);box-shadow:0 0 0 4px rgba(168,117,255,.10),0 0 18px rgba(168,117,255,.95)}
}
@keyframes onlineTextPulse{
  0%,100%{opacity:.5;text-shadow:0 0 2px rgba(168,117,255,.15)}
  50%{opacity:1;text-shadow:0 0 8px rgba(168,117,255,.55)}
}
@media(max-width:390px){
  .site-logo{height:40px!important;max-width:195px!important}
  .online-dot-header{width:7px!important;height:7px!important}
}

/* Benefit copy under radar */
.radar-benefit-copy{
  margin:16px 0 14px;
  padding:16px;
  border:1px solid rgba(168,117,255,.14);
  border-radius:16px;
  background:
    radial-gradient(circle at 100% 0%,rgba(135,79,220,.11),transparent 38%),
    linear-gradient(180deg,rgba(16,10,24,.96),rgba(8,5,12,.98));
}
.radar-benefit-kicker{
  display:block;
  color:#a875ff;
  font-size:11px;
  font-weight:850;
  letter-spacing:.10em;
  margin-bottom:8px;
}
.radar-benefit-copy h3{
  margin:0 0 8px!important;
  font-size:22px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}
.radar-benefit-copy p{
  margin:0;
  color:#a99eb2;
  font-size:14px;
  line-height:1.55;
}
.radar-benefit-points{
  display:grid;
  gap:6px;
  margin-top:12px;
}
.radar-benefit-points span{
  color:#cfc3d9;
  font-size:13px;
  line-height:1.35;
}
@media(max-width:390px){
  .radar-benefit-copy{padding:14px}
  .radar-benefit-copy h3{font-size:20px!important}
  .radar-benefit-copy p{font-size:13px}
  .radar-benefit-points span{font-size:12px}
}


/* =========================================================
   RADAR — BORDA ROXA ANIMADA
   Efeito inspirado no vídeo enviado, sem alterar a estrutura.
   ========================================================= */
.radar-stage{
  isolation:isolate;
  border-color:rgba(168,117,255,.20)!important;
  overflow:hidden!important;
}

/* brilho que percorre todo o perímetro */
.radar-stage::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:30px;
  padding:2px;
  background:conic-gradient(
    from var(--radar-border-angle,0deg),
    transparent 0deg,
    transparent 250deg,
    rgba(108,50,190,.10) 275deg,
    rgba(155,108,255,.65) 315deg,
    #d3b7ff 338deg,
    #9b6cff 350deg,
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
  z-index:20;
  animation:radarBorderTravel 4.2s linear infinite;
  filter:drop-shadow(0 0 5px rgba(155,108,255,.55));
}

/* segundo brilho difuso, dando sensação de energia na borda */
.radar-stage::after{
  content:"";
  position:absolute;
  inset:-12px;
  border-radius:38px;
  pointer-events:none;
  z-index:19;
  background:conic-gradient(
    from var(--radar-border-angle2,180deg),
    transparent 0 300deg,
    rgba(128,66,220,.03) 310deg,
    rgba(155,108,255,.22) 338deg,
    transparent 360deg
  );
  animation:radarBorderTravelReverse 6.8s linear infinite;
  filter:blur(10px);
  opacity:.9;
}

@property --radar-border-angle{
  syntax:"<angle>";
  initial-value:0deg;
  inherits:false;
}
@property --radar-border-angle2{
  syntax:"<angle>";
  initial-value:180deg;
  inherits:false;
}

@keyframes radarBorderTravel{
  to{--radar-border-angle:360deg}
}
@keyframes radarBorderTravelReverse{
  to{--radar-border-angle2:-180deg}
}

/* fallback para navegadores Android sem @property */
@supports not (background:paint(something)){
  .radar-stage::before{
    animation:radarBorderFallback 4.2s linear infinite;
  }
}
@keyframes radarBorderFallback{
  to{transform:rotate(360deg)}
}

/* pulsação discreta do contorno, sem mexer no radar interno */
.radar-stage{
  animation:radarOuterBreath 3.2s ease-in-out infinite;
}
@keyframes radarOuterBreath{
  0%,100%{
    box-shadow:
      inset 0 0 85px rgba(0,0,0,.8),
      0 24px 80px rgba(0,0,0,.46),
      0 0 0 1px rgba(155,108,255,.02);
  }
  50%{
    box-shadow:
      inset 0 0 85px rgba(0,0,0,.8),
      0 24px 80px rgba(0,0,0,.46),
      0 0 20px rgba(124,65,205,.12),
      0 0 0 1px rgba(185,145,255,.09);
  }
}

@media (prefers-reduced-motion:reduce){
  .radar-stage,
  .radar-stage::before,
  .radar-stage::after{
    animation:none!important;
  }
}

/* =========================================================
   VISUAL BOOST — bordas energizadas + globe HUD
   Functional code untouched.
   ========================================================= */

/* Common animated border helper on the main interactive surfaces */
.card,
.lookup-cinema,
.scan,
.radar-stage{
  position:relative!important;
  isolation:isolate!important;
}

/* Stronger static rim */
.card,
.lookup-cinema,
.scan{
  border:1px solid rgba(174,126,255,.24)!important;
  box-shadow:
    0 20px 65px rgba(0,0,0,.42),
    inset 0 0 38px rgba(91,38,153,.035),
    0 0 0 1px rgba(139,92,246,.025)!important;
}

/* moving edge light used on cards/screens */
.card::before,
.lookup-cinema::before,
.scan::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:25;
  pointer-events:none;
  border-radius:inherit;
  padding:1.5px;
  background:conic-gradient(
    from var(--panel-energy-angle,0deg),
    transparent 0 262deg,
    rgba(124,65,205,.04) 275deg,
    rgba(155,108,255,.45) 314deg,
    #d7bdff 337deg,
    #9b6cff 349deg,
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  filter:drop-shadow(0 0 6px rgba(155,108,255,.48));
  animation:panelEnergyTravel 5s linear infinite;
}

@property --panel-energy-angle{
  syntax:"<angle>";
  initial-value:0deg;
  inherits:false;
}
@keyframes panelEnergyTravel{
  to{--panel-energy-angle:360deg}
}

/* Lookup input becomes much more obvious */
#lookup .card{
  background:
    radial-gradient(circle at 60% 0%,rgba(124,67,205,.08),transparent 42%),
    linear-gradient(180deg,#100919,#08050d)!important;
}
#lookup .input-wrap{
  min-height:66px!important;
  background:#0c0712!important;
  border:1.5px solid rgba(185,143,255,.34)!important;
  box-shadow:
    inset 0 0 22px rgba(107,51,180,.055),
    0 0 0 1px rgba(155,108,255,.03),
    0 0 20px rgba(106,50,175,.07)!important;
}
#lookup .input-wrap:focus-within{
  border-color:#a875ff!important;
  box-shadow:
    0 0 0 4px rgba(155,108,255,.10),
    0 0 25px rgba(155,108,255,.18),
    inset 0 0 24px rgba(111,56,180,.07)!important;
}
#lookup input{
  color:#fff!important;
  font-weight:750!important;
}
#lookup input::placeholder{
  color:#b8a8c9!important;
  opacity:.82!important;
}
#lookup .at{
  color:#be94ff!important;
  text-shadow:0 0 12px rgba(168,117,255,.45)!important;
}

/* Button gets an active glow */
#lookupBtn{
  box-shadow:
    0 10px 30px rgba(102,47,185,.30),
    0 0 18px rgba(149,91,245,.13)!important;
}

/* Lookup cinema edge becomes clearly visible */
.lookup-cinema{
  border-color:rgba(190,146,255,.30)!important;
  box-shadow:
    0 25px 85px rgba(0,0,0,.54),
    inset 0 0 60px rgba(111,54,181,.05),
    0 0 24px rgba(107,52,177,.10)!important;
}

/* Confirmation card stronger glow */
#confirm .card{
  border-color:rgba(177,129,255,.28)!important;
}
#confirm .avatar{
  box-shadow:
    0 0 0 2px rgba(155,108,255,.16),
    0 0 20px rgba(155,108,255,.18)!important;
}

/* Processing/scanning card */
#scanning .scan{
  border-color:rgba(177,129,255,.28)!important;
  background:
    radial-gradient(circle at 50% 40%,rgba(111,54,181,.06),transparent 38%),
    linear-gradient(180deg,#0d0813,#07040a)!important;
}
#scanning .progress{
  height:8px!important;
  border:1px solid rgba(160,113,244,.14)!important;
  background:#100918!important;
  box-shadow:inset 0 0 8px rgba(0,0,0,.55)!important;
}
#scanning .progress i{
  background:linear-gradient(90deg,#5a28a5,#8e55ec,#c297ff)!important;
  box-shadow:0 0 15px rgba(169,112,255,.65)!important;
}

/* Make radar perimeter much brighter */
.radar-stage{
  border:1px solid rgba(185,143,255,.34)!important;
  box-shadow:
    inset 0 0 85px rgba(0,0,0,.74),
    0 22px 75px rgba(0,0,0,.42),
    0 0 25px rgba(107,52,177,.14)!important;
}
.radar-stage::before{
  padding:2.5px!important;
  background:conic-gradient(
    from var(--radar-border-angle,0deg),
    transparent 0 225deg,
    rgba(118,54,202,.06) 250deg,
    rgba(147,86,241,.30) 288deg,
    rgba(177,124,255,.85) 323deg,
    #eadcff 342deg,
    #a970ff 352deg,
    transparent 360deg
  )!important;
  filter:
    drop-shadow(0 0 5px rgba(177,119,255,.85))
    drop-shadow(0 0 10px rgba(128,64,220,.48))!important;
}
.radar-stage::after{
  opacity:1!important;
}

/* =========================================================
   Animated digital globe above the radar
   ========================================================= */
.radar-world{
  position:absolute;
  top:10px;
  left:50%;
  width:72px;
  height:72px;
  transform:translateX(-50%);
  z-index:15;
  pointer-events:none;
  filter:drop-shadow(0 0 13px rgba(164,105,255,.42));
  animation:worldFloat 3s ease-in-out infinite;
}
.world-core{
  position:absolute;
  inset:7px;
  border:1.5px solid rgba(189,146,255,.82);
  border-radius:50%;
  overflow:hidden;
  background:
    radial-gradient(circle at 38% 32%,rgba(195,156,255,.18),transparent 26%),
    radial-gradient(circle,rgba(99,45,163,.12),rgba(20,9,31,.38));
  box-shadow:
    inset 0 0 18px rgba(155,108,255,.16),
    0 0 12px rgba(155,108,255,.20);
  animation:worldPulse 2.2s ease-in-out infinite;
}
.world-longitude,
.world-latitude{
  position:absolute;
  display:block;
  border:1px solid rgba(186,143,255,.46);
  border-radius:50%;
}
.world-longitude{
  top:4px;
  bottom:4px;
  left:50%;
  width:27px;
  transform:translateX(-50%);
}
.world-longitude.w2{
  width:46px;
  opacity:.45;
}
.world-latitude{
  left:5px;
  right:5px;
  height:18px;
  top:17px;
}
.world-latitude.l2{
  top:29px;
  height:1px;
  border-radius:0;
  border-left:0;
  border-right:0;
  border-bottom:0;
}
.world-latitude.l3{
  top:auto;
  bottom:12px;
  height:17px;
}
.world-dot{
  position:absolute;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#c39bff;
  box-shadow:0 0 8px #b47cff;
}
.world-dot.d1{left:18px;top:13px}
.world-dot.d2{right:14px;top:31px}
.world-dot.d3{left:29px;bottom:10px}

.world-orbit{
  position:absolute;
  left:2px;
  right:2px;
  top:50%;
  height:22px;
  transform:translateY(-50%) rotate(-14deg);
  border:1px solid rgba(172,120,255,.40);
  border-radius:50%;
  animation:worldOrbit 3.3s linear infinite;
}
.world-orbit::after{
  content:"";
  position:absolute;
  right:7px;
  top:-3px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#d3b5ff;
  box-shadow:0 0 9px #b374ff;
}
@keyframes worldOrbit{
  to{transform:translateY(-50%) rotate(346deg)}
}
@keyframes worldFloat{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-4px)}
}
@keyframes worldPulse{
  0%,100%{opacity:.72}
  50%{opacity:1}
}

/* Leave visual room at top so globe doesn't overlap friends */
.radar-stage{
  padding-top:15px!important;
}

@media(max-width:390px){
  .radar-world{
    width:64px;
    height:64px;
    top:8px;
  }
  #lookup .input-wrap{
    min-height:62px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .card::before,
  .lookup-cinema::before,
  .scan::before,
  .radar-world,
  .world-core,
  .world-orbit{
    animation:none!important;
  }
}

/* =========================================================
   HOME WORLD — uploaded globe + animated purple perimeter
   ========================================================= */

/* Hide legacy home orb if cached markup survives */
.hero-orb{display:none!important}

/* Remove spacing once used by the radar globe */
.radar-stage{padding-top:0!important}

.hero-world-wrap{
  position:relative;
  width:min(82vw,330px);
  aspect-ratio:1/1;
  margin:24px auto 22px;
  display:grid;
  place-items:center;
  isolation:isolate;
}

.hero-world-frame{
  position:relative;
  width:88%;
  height:88%;
  border-radius:50%;
  overflow:hidden;
  z-index:3;
  background:#050209;
  border:1px solid rgba(185,143,255,.26);
  box-shadow:
    0 0 0 1px rgba(155,108,255,.04),
    0 0 32px rgba(111,49,190,.24),
    0 0 75px rgba(91,35,156,.17),
    inset 0 0 28px rgba(155,108,255,.07);
}

.hero-world-img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  border-radius:50%;
  transform:scale(1.015);
}

/* Animated bright rim */
.hero-world-frame::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:50%;
  padding:3px;
  background:conic-gradient(
    from var(--world-border-angle,0deg),
    transparent 0 235deg,
    rgba(120,58,204,.08) 258deg,
    rgba(159,96,255,.55) 305deg,
    #e6d4ff 336deg,
    #a86cff 350deg,
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  z-index:6;
  pointer-events:none;
  filter:
    drop-shadow(0 0 6px rgba(185,133,255,.8))
    drop-shadow(0 0 15px rgba(133,71,225,.5));
  animation:worldBorderRun 4.4s linear infinite;
}

@property --world-border-angle{
  syntax:"<angle>";
  initial-value:0deg;
  inherits:false;
}
@keyframes worldBorderRun{
  to{--world-border-angle:360deg}
}

/* Outer orbital energy ring */
.hero-world-energy{
  position:absolute;
  inset:0;
  border-radius:50%;
  z-index:1;
  background:conic-gradient(
    from 0deg,
    transparent 0 285deg,
    rgba(122,57,213,.02) 300deg,
    rgba(155,108,255,.23) 335deg,
    transparent 360deg
  );
  filter:blur(10px);
  animation:worldEnergySpin 7s linear infinite;
}
@keyframes worldEnergySpin{
  to{transform:rotate(360deg)}
}

/* Thin orbit around globe */
.hero-world-wrap::before{
  content:"";
  position:absolute;
  inset:2%;
  border-radius:50%;
  border:1px solid rgba(168,112,255,.18);
  z-index:2;
  animation:worldOrbitBreathe 3s ease-in-out infinite;
}
.hero-world-wrap::after{
  content:"";
  position:absolute;
  inset:-3%;
  border-radius:50%;
  border:1px dashed rgba(149,92,242,.14);
  z-index:0;
  animation:worldOuterOrbit 12s linear infinite;
}
@keyframes worldOuterOrbit{
  to{transform:rotate(360deg)}
}
@keyframes worldOrbitBreathe{
  0%,100%{opacity:.4;transform:scale(.985)}
  50%{opacity:.95;transform:scale(1.015)}
}

/* Scanner line passing over the world */
.hero-world-scan{
  position:absolute;
  left:10%;
  right:10%;
  height:2px;
  top:50%;
  z-index:5;
  background:linear-gradient(90deg,transparent,#a86cff,#e1ccff,#a86cff,transparent);
  box-shadow:0 0 10px rgba(175,116,255,.75);
  opacity:.55;
  animation:worldScan 4.8s ease-in-out infinite;
  pointer-events:none;
}
@keyframes worldScan{
  0%,100%{transform:translateY(-105px);opacity:0}
  20%{opacity:.5}
  50%{opacity:.85}
  80%{opacity:.5}
  100%{transform:translateY(105px);opacity:0}
}

/* tiny orbiting points */
.hero-world-pulse{
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#c49aff;
  box-shadow:0 0 11px #ad72ff;
  z-index:7;
}
.hero-world-pulse.p1{
  top:11%;
  right:17%;
  animation:worldPointPulse 1.8s ease-in-out infinite;
}
.hero-world-pulse.p2{
  bottom:15%;
  left:11%;
  animation:worldPointPulse 1.8s .7s ease-in-out infinite;
}
@keyframes worldPointPulse{
  0%,100%{opacity:.25;transform:scale(.7)}
  50%{opacity:1;transform:scale(1.25)}
}

@media(max-width:390px){
  .hero-world-wrap{
    width:min(84vw,300px);
    margin:20px auto 20px;
  }
  .hero-world-scan{
    left:12%;
    right:12%;
  }
}

@media(prefers-reduced-motion:reduce){
  .hero-world-frame::before,
  .hero-world-energy,
  .hero-world-wrap::before,
  .hero-world-wrap::after,
  .hero-world-scan,
  .hero-world-pulse{
    animation:none!important;
  }
}

/* =========================================================
   HOME GLOBE — ORIGINAL EQUIRECTANGULAR ENGINE
   Uses assets/img/mapaa.png and keeps the globe perfectly round.
   ========================================================= */
.hero-world-frame{
  position:relative!important;
  overflow:visible!important;
  background:transparent!important;
  display:grid!important;
  place-items:center!important;
}

.hero-globe-canvas-host{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  z-index:3;
  border-radius:50%;
  overflow:visible;
}

#shadowGlobeCanvas{
  display:block;
  width:100%;
  height:100%;
  border-radius:50%;
  filter:
    drop-shadow(0 0 12px rgba(155,108,255,.34))
    drop-shadow(0 0 26px rgba(100,45,180,.24));
}

/* hide any obsolete globe image/canvas */
.hero-world-img,
.hero-world-canvas{
  display:none!important;
}

/* keep animated perimeter outside the real sphere */
.hero-world-frame::before{
  z-index:8!important;
}
.hero-world-scan{
  z-index:9!important;
}

.hero-presenter{position:relative;width:min(100%,520px);margin:22px auto 8px;display:flex;justify-content:center;align-items:flex-end;overflow:hidden}
.hero-presenter:before{content:"";position:absolute;width:82%;aspect-ratio:1;left:50%;bottom:-18%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(139,78,255,.20),rgba(97,40,180,.08) 42%,transparent 70%);filter:blur(8px)}
.hero-presenter img{position:relative;z-index:1;display:block;width:min(100%,480px);height:auto;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 35px rgba(81,28,145,.25))}
@media(max-width:600px){.hero-presenter{width:calc(100% + 16px);margin:18px -8px 4px}.hero-presenter img{width:100%;max-width:460px}}

/* =========================================================
   HOME MATCH — referência visual enviada pelo usuário
   Apenas a tela inicial. Fluxo e lógica permanecem intactos.
   ========================================================= */
#home{
  padding-top:4px!important;
}

/* Header mais parecido com a referência */
#home ~ *{} /* scope separator */
.top{
  min-height:62px!important;
  padding:5px 0 10px!important;
  align-items:center!important;
}
.site-logo{
  height:46px!important;
  max-width:205px!important;
  filter:drop-shadow(0 0 13px rgba(151,77,255,.32))!important;
}
.secure{
  min-height:32px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  background:rgba(11,6,18,.82)!important;
  border:1px solid rgba(157,96,255,.24)!important;
}
.online-text{font-size:10px!important;letter-spacing:.11em!important}
.online-dot-header{width:8px!important;height:8px!important}

/* Hero */
#home .eyebrow{
  margin:20px 0 15px!important;
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.17em!important;
  color:#b477ff!important;
}
#home h1{
  max-width:500px!important;
  margin:0!important;
  font-size:clamp(40px,9.8vw,52px)!important;
  line-height:1.055!important;
  letter-spacing:-.052em!important;
  font-weight:900!important;
}
#home h1 .glow{
  color:#9e5cff!important;
  text-shadow:0 0 22px rgba(152,82,255,.24)!important;
}
#home .lead{
  max-width:492px!important;
  margin:16px 0 14px!important;
  font-size:16px!important;
  line-height:1.65!important;
  color:#aaa0b2!important;
}

/* Globo com tamanho e respiro da referência */
#home .hero-world-wrap{
  width:min(72vw,300px)!important;
  margin:14px auto 20px!important;
}
#home .hero-world-frame{
  width:88%!important;
  height:88%!important;
}
#home #shadowGlobeCanvas{
  width:100%!important;
  height:100%!important;
}

/* CTA */
#home #startBtn{
  min-height:58px!important;
  border-radius:15px!important;
  margin:0!important;
  padding:16px 18px!important;
  font-size:15px!important;
  letter-spacing:.015em!important;
  font-weight:900!important;
  background:linear-gradient(100deg,#9c64ff 0%,#8146e7 54%,#6b31cf 100%)!important;
  box-shadow:0 12px 34px rgba(104,43,196,.25)!important;
}

/* 3 cards */
#home .trust{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin:11px 0 0!important;
}
#home .trust div{
  min-height:72px!important;
  padding:12px 6px 10px!important;
  border-radius:13px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  font-size:10px!important;
  line-height:1.25!important;
  color:#857b8d!important;
  background:linear-gradient(180deg,rgba(17,10,25,.76),rgba(8,5,12,.88))!important;
  border:1px solid rgba(161,105,255,.14)!important;
}
#home .trust b{
  font-size:12px!important;
  line-height:1.1!important;
  margin:0 0 6px!important;
  color:#cfc4da!important;
}

/* Apresentadora — igual à composição da referência: logo abaixo dos cards */
#home .hero-presenter{
  position:relative!important;
  width:calc(100% + 28px)!important;
  margin:0 -14px -2px!important;
  padding-top:0!important;
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  overflow:hidden!important;
  min-height:0!important;
  background:
    radial-gradient(circle at 50% 46%,rgba(112,45,205,.19),transparent 37%),
    radial-gradient(circle at 50% 82%,rgba(72,24,128,.13),transparent 46%)!important;
}
#home .hero-presenter:before{
  content:""!important;
  position:absolute!important;
  width:94%!important;
  aspect-ratio:1!important;
  left:50%!important;
  top:3%!important;
  bottom:auto!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  border:1px solid rgba(143,78,235,.11)!important;
  background:radial-gradient(circle,rgba(137,72,240,.08),transparent 67%)!important;
  filter:none!important;
}
#home .hero-presenter:after{
  content:"";
  position:absolute;
  width:74%;
  aspect-ratio:1;
  left:50%;
  top:10%;
  transform:translateX(-50%);
  border-radius:50%;
  border:1px solid rgba(143,78,235,.08);
  pointer-events:none;
}
#home .hero-presenter img{
  position:relative!important;
  z-index:2!important;
  width:min(100%,500px)!important;
  max-width:none!important;
  height:auto!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center top!important;
  filter:drop-shadow(0 20px 34px rgba(49,13,87,.32))!important;
}

/* Terminal vem depois, como continuação da página */
#home .terminal{
  position:relative!important;
  z-index:3!important;
  margin-top:12px!important;
}

@media(max-width:390px){
  .site-logo{height:40px!important;max-width:178px!important}
  #home h1{font-size:38px!important;line-height:1.045!important}
  #home .lead{font-size:15px!important;line-height:1.58!important}
  #home .hero-world-wrap{width:min(76vw,278px)!important}
  #home #startBtn{min-height:56px!important;font-size:14px!important}
  #home .trust div{min-height:68px!important;padding:10px 4px!important}
  #home .trust b{font-size:11px!important}
  #home .hero-presenter{width:calc(100% + 24px)!important;margin-left:-12px!important;margin-right:-12px!important}
  #home .hero-presenter img{width:104%!important}
}

@media(min-width:480px){
  #home h1{font-size:51px!important}
  #home .hero-presenter img{width:500px!important}
}

/* ===== Digital purple aura around presenter ===== */
#home .hero-presenter{
  isolation:isolate!important;
  overflow:hidden!important;
  background:
    radial-gradient(ellipse at 50% 48%,rgba(139,68,255,.23) 0%,rgba(86,28,160,.10) 35%,transparent 67%),
    linear-gradient(180deg,transparent 0%,rgba(52,15,91,.08) 55%,transparent 100%)!important;
}
#home .hero-presenter:before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  width:92%!important;
  height:76%!important;
  left:4%!important;
  top:8%!important;
  border-radius:48%!important;
  border:1px solid rgba(173,105,255,.28)!important;
  background:
    repeating-radial-gradient(circle at 50% 48%,transparent 0 48px,rgba(150,78,255,.09) 49px 50px,transparent 51px 78px),
    radial-gradient(circle at 50% 50%,rgba(135,62,255,.16),transparent 64%)!important;
  box-shadow:
    0 0 24px rgba(140,66,255,.15),
    inset 0 0 30px rgba(130,54,244,.07)!important;
  animation:presenterPulse 3.2s ease-in-out infinite!important;
}
#home .hero-presenter:after{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  inset:5% 3% 7%!important;
  width:auto!important;height:auto!important;
  left:auto!important;top:auto!important;
  transform:none!important;
  border:0!important;
  border-radius:38%!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,transparent 0 8%,rgba(161,89,255,.55) 8.2% 8.5%,transparent 8.7% 91%,rgba(161,89,255,.45) 91.2% 91.5%,transparent 91.7%),
    repeating-linear-gradient(0deg,transparent 0 24px,rgba(139,69,255,.035) 25px,transparent 26px),
    repeating-linear-gradient(90deg,transparent 0 35px,rgba(139,69,255,.025) 36px,transparent 37px)!important;
  opacity:.65!important;
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 75%,transparent)!important;
  mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 75%,transparent)!important;
  animation:digitalFlicker 4.6s steps(1,end) infinite!important;
}
#home .hero-presenter img{
  z-index:3!important;
  filter:
    drop-shadow(0 0 8px rgba(167,92,255,.16))
    drop-shadow(0 0 24px rgba(128,51,230,.25))
    drop-shadow(0 24px 40px rgba(45,8,82,.38))!important;
}
@keyframes presenterPulse{
  0%,100%{opacity:.72;filter:brightness(.92)}
  50%{opacity:1;filter:brightness(1.15)}
}
@keyframes digitalFlicker{
  0%,89%,93%,100%{opacity:.58}
  90%{opacity:.2}
  91%{opacity:.88}
  92%{opacity:.34}
}
/* orbiting neon nodes */
#home .hero-presenter .digital-node{display:none}

#home .presenter-particles,#home .presenter-particles:before,#home .presenter-particles:after{
  position:absolute;content:"";z-index:2;pointer-events:none;border-radius:50%;
}
#home .presenter-particles{
  width:5px;height:5px;left:9%;top:31%;
  background:#b877ff;
  box-shadow:0 0 10px #9b58ff, 355px 40px 0 -1px #8e48ff, 320px 215px 0 -1px #b877ff, 42px 275px 0 -1px #8743e8, 380px 330px 0 -1px #a968ff, 65px 420px 0 -1px #a968ff;
  animation:particleFloat 5s ease-in-out infinite;
}
#home .presenter-particles:before{width:2px;height:34px;left:25px;top:45px;background:linear-gradient(#a75fff,transparent);box-shadow:325px 95px 0 rgba(153,79,255,.55)}
#home .presenter-particles:after{width:42px;height:1px;left:5px;top:180px;background:linear-gradient(90deg,transparent,#a65cff,transparent);box-shadow:335px 130px 0 rgba(160,87,255,.55)}
@keyframes particleFloat{0%,100%{transform:translateY(0);opacity:.55}50%{transform:translateY(-10px);opacity:1}}
