/* Jarvis v4 — neural observatory. The operational structure stays intact; the
   visual hierarchy is quieter so the three-dimensional organism can lead. */
:root{
  --bg:#030712;
  --bg-2:#07101d;
  --panel:rgba(7,15,29,.82);
  --solid:#091425;
  --raise:#101f34;
  --line:rgba(132,177,211,.16);
  --line-2:rgba(145,208,232,.27);
  --line-3:rgba(174,229,245,.42);
  --ink:#e8f2f8;
  --ink-2:#afc1cf;
  --ink-3:#71879a;
  --hud:#78d8ea;
  --hud-2:#9be7ee;
  --hud-3:rgba(115,210,227,.28);
  --jv-grad:linear-gradient(145deg,#dffcff 0%,#7cdae6 47%,#d5ad71 100%);
}

html,body{background:#030712}
.app{background:
  radial-gradient(ellipse at 50% 42%,rgba(18,63,85,.22),transparent 38%),
  radial-gradient(ellipse at 54% 112%,rgba(165,116,50,.09),transparent 36%),
  #030712}
.rail,.hdr{background:rgba(4,10,20,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.rail{border-right-color:rgba(136,190,216,.12)}
.hdr{border-bottom-color:rgba(136,190,216,.12)}
.logo{color:#09202b;box-shadow:0 0 26px rgba(117,222,232,.25)}
.rail a,.rail .rbtn{border:1px solid transparent}
.rail a:hover,.rail .rbtn:hover{background:rgba(114,209,225,.08);color:#d8edf3;border-color:rgba(114,209,225,.12)}
.rail a[aria-current="page"]{background:linear-gradient(135deg,rgba(111,213,229,.16),rgba(203,159,101,.06));color:#e6fbff;border-color:rgba(123,216,230,.22);box-shadow:inset 2px 0 #7fdae7}

.side{gap:10px}
.hud{border-radius:10px;border-color:rgba(132,190,217,.17);background:linear-gradient(155deg,rgba(10,24,41,.9),rgba(5,13,26,.82));box-shadow:0 18px 54px rgba(0,0,0,.24),inset 0 1px rgba(219,247,255,.025);backdrop-filter:blur(18px)}
.hud::before{width:32px;background:linear-gradient(90deg,#7bdcea,transparent);opacity:.75}
.hud h4{color:#8edce7;letter-spacing:.14em}

.vista-seg{border-radius:10px;border-color:rgba(135,195,220,.22);background:rgba(5,14,27,.76);box-shadow:0 12px 34px rgba(0,0,0,.3);backdrop-filter:blur(16px)}
.vista-seg button{letter-spacing:.08em;color:#8097a9}
.vista-seg button.on{color:#ecfbff;background:rgba(117,215,229,.14);box-shadow:inset 0 -2px #7ddce8}
.legend.leg-v2{top:57px;border-radius:8px;border-color:rgba(133,192,216,.14);background:rgba(4,11,22,.58);color:#73899c;backdrop-filter:blur(11px);opacity:.78}
.legend.leg-v2 .sep{opacity:.35}

/* Labels behave like precise annotations, rather than opaque cards thrown on the scene. */
.lb3{filter:drop-shadow(0 5px 10px rgba(0,0,0,.5))}
.lb3 b{text-shadow:0 1px 2px #000,0 0 10px color-mix(in srgb,var(--c,#8fdde8) 34%,transparent)}
.lb3.lb-man{padding:6px 11px 7px;border:1px solid rgba(151,223,234,.25);border-radius:9px;background:linear-gradient(160deg,rgba(10,27,43,.92),rgba(4,10,21,.72));box-shadow:0 8px 24px rgba(0,0,0,.3)}
.lb3.lb-man .k{color:#d6b77d;letter-spacing:.16em}
.lb3.lb-man b{font-family:var(--font);font-size:13px;letter-spacing:.025em;text-transform:none}
.lb3.lb-ag b{padding:3px 7px;border:1px solid rgba(147,210,229,.16);border-radius:7px;background:rgba(4,12,23,.68)}
.lb3.lb-nome{border-radius:9px;background:rgba(5,14,27,.82);border-color:rgba(133,210,225,.22);box-shadow:0 12px 30px rgba(0,0,0,.28)}
.lb3.lb-nome b{font-family:var(--font);font-size:12px;letter-spacing:.09em}
.lb3.lb-rep,.lb3.lb-piano{border-radius:10px;background:linear-gradient(150deg,rgba(9,24,39,.92),rgba(4,11,23,.8));border-color:rgba(132,205,220,.23);box-shadow:0 14px 40px rgba(0,0,0,.34)}
.lb3.lb-rep .rs{border-radius:7px;background:rgba(5,13,24,.7)}
.lb3.lb-op b{padding:2px 6px;border-radius:6px;background:rgba(3,10,20,.55);color:#bcd1de}
.lb3 .st{border-radius:6px;background:rgba(2,9,18,.76);letter-spacing:.045em}

.dock{border-color:rgba(136,202,222,.23);background:rgba(6,15,28,.9);box-shadow:0 16px 52px rgba(0,0,0,.42),0 0 28px rgba(104,207,223,.06);backdrop-filter:blur(20px)}
.orb{background:var(--jv-grad);color:#08212b;box-shadow:0 0 24px rgba(105,218,229,.25)}
.tip{color:#62788b}
#net .ntip{border-radius:10px;background:rgba(6,15,28,.96);border-color:rgba(136,208,226,.28)}

@media (prefers-reduced-motion:reduce){
  .lb3,.hud,.vista-seg,.rail a{transition-duration:.01ms!important;animation-duration:.01ms!important}
}

@media(max-width:760px){
  .legend.leg-v2{display:none}
  .vista-seg{top:9px;max-width:calc(100vw - 24px);overflow:auto;scrollbar-width:none}
  .vista-seg button{min-height:42px}
  .lb3.lb-rep,.lb3.lb-piano{max-width:170px;min-width:0}
}
