.neoScoreCore{
  position:absolute;z-index:-1;left:50%;top:46%;width:132px;height:132px;
  transform:translate(-50%,-50%);pointer-events:none;
}
.neoScoreCore:before,.neoScoreCore:after,.neoScoreCore i{
  content:"";position:absolute;border-radius:50%
}
.neoScoreCore:before{
  inset:0;border:1px solid rgba(106,241,255,.17);
  border-left-color:transparent;border-right-color:rgba(78,119,255,.09);
  animation:scoreRing 10s linear infinite;
}
.neoScoreCore:after{
  inset:13px;border:1px dashed rgba(111,219,255,.15);
  border-bottom-color:transparent;animation:scoreRingReverse 7s linear infinite;
}
.neoScoreCore i:nth-child(1){
  inset:27px;border:1px solid rgba(85,187,255,.12);
  border-top-color:rgba(121,246,255,.36);animation:scoreRing 5s linear infinite;
}
.neoScoreCore i:nth-child(2){
  width:5px;height:5px;left:10px;top:62px;background:#7cf8ff;
  box-shadow:0 0 12px #7cf8ff;
  animation:scoreOrbit 5s linear infinite;transform-origin:56px 4px;
}
.neoScoreCore i:nth-child(3){
  inset:43px;background:radial-gradient(circle,rgba(94,231,255,.13),rgba(62,110,255,.035) 55%,transparent 72%);
  filter:blur(2px);animation:coreBreath 2.1s ease-in-out infinite;
}
.neoScoreCore i:nth-child(4){
  left:18px;right:18px;top:50%;height:1px;border-radius:0;
  background:linear-gradient(90deg,transparent,rgba(106,238,255,.28),transparent);
  box-shadow:0 0 9px rgba(106,238,255,.18);
}
.scoreValue{position:relative;z-index:2;text-shadow:none!important}
.scoreValue:before,.scoreValue:after{
  content:"";position:absolute;top:50%;width:22px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(112,242,255,.52));opacity:.40;
}
.scoreValue:before{right:calc(100% + 10px)}
.scoreValue:after{left:calc(100% + 10px);transform:scaleX(-1)}
.score small{position:relative;z-index:2}
.scoreProb{z-index:2}

/* ===== TEAM CONNECTION ===== */
.matchBody{position:relative}
.matchBody:before{
  content:"";position:absolute;z-index:-1;left:16%;right:16%;top:44%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(104,238,255,.14) 25%,rgba(116,190,255,.20) 50%,rgba(104,238,255,.14) 75%,transparent);
  box-shadow:0 0 12px rgba(82,207,255,.05);
}
.matchBody:after{
  content:"";position:absolute;z-index:-1;width:6px;height:6px;left:50%;top:44%;
  transform:translate(-50%,-50%);border-radius:50%;background:#6ef5ff;
  box-shadow:0 0 0 4px rgba(110,245,255,.05),0 0 18px rgba(110,245,255,.25);
  animation:railPulse 2s ease-in-out infinite;
}
.team{position:relative}
.team:before{
  content:"";position:absolute;left:50%;top:-9px;width:58px;height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(103,238,255,.28),transparent);
  opacity:.55;
}
.team b{position:relative}
.team b:after{
  content:"";display:block;width:16px;height:1px;margin:6px auto 0;
  background:var(--hud-cyan);opacity:.32;box-shadow:0 0 7px var(--hud-cyan)
}

/* ===== LIVE SCANNER ===== */
.matchMeta .matchHint{position:relative;overflow:hidden}
.matchMeta .matchHint:after{
  content:"";position:absolute;top:0;bottom:0;width:26px;left:-40px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  transform:skewX(-18deg);animation:hintSweep 4.8s ease-in-out infinite;
}

/* ===== DATA PANELS ===== */
.formBlock,.scoreAlternative,.scorerSingle{backdrop-filter:blur(8px)}
.formBlock:after{
  content:"DATA VECTOR";position:absolute;right:12px;top:9px;color:#36536e;
  font-size:5px;font-weight:1000;letter-spacing:1px
}
.scoreAlternative:after{
  content:"PRED";position:absolute;right:10px;bottom:6px;color:#304c65;
  font-size:5px;font-weight:1000;letter-spacing:1px;opacity:.72
}
.scorerSingle:before{
  content:"TARGET NODE";position:absolute;left:12px;top:8px;color:#304e68;
  font-size:5px;font-weight:1000;letter-spacing:1px
}
.pill{position:relative;overflow:hidden}
.pill:before{
  content:"\0025C9 ";margin-right:6px;color:#75f7ff;text-shadow:0 0 8px #75f7ff;
  animation:railPulse 1.7s ease-in-out infinite
}

/* ===== TOP PICK ENERGY ===== */
.topPickCard:after{
  content:"";position:absolute;z-index:0;inset:-45%;pointer-events:none;
  background:conic-gradient(from 0deg,transparent 0 72%,rgba(89,235,255,.055) 78%,transparent 84%);
  animation:topHalo 12s linear infinite;
}
.topPickCard>*{position:relative;z-index:1}
.topPickCard .neoScoreCore:before{
  border-color:rgba(112,247,255,.38);border-left-color:transparent;
  box-shadow:0 0 28px rgba(84,228,255,.08)
}
.topPickCard .scoreValue{
  filter:drop-shadow(0 0 10px rgba(124,247,255,.26)) drop-shadow(0 0 34px rgba(69,140,255,.11))
}

/* ===== HOLOGRAPHIC MODALS ===== */
.privateAnalysisOverlay.active .matchAnalysisModal,
.privateTopPickOverlay.active .topPickModal{
  animation:holoPanelIn .46s cubic-bezier(.16,.8,.2,1) both
}
.matchAnalysisModal:after,.topPickModal:after{
  content:"AI ANALYSIS NODE // ACTIVE";position:absolute;top:14px;left:18px;
  color:#4a718d;font-size:5px;font-weight:1000;letter-spacing:1.15px;pointer-events:none
}

/* ===== DESKTOP HUD CURSOR ===== */
.neoCursor{
  position:fixed;z-index:99990;width:22px;height:22px;margin:-11px 0 0 -11px;
  border:1px solid rgba(112,243,255,.38);border-radius:50%;pointer-events:none;
  opacity:0;transition:opacity .2s ease,transform .12s ease;mix-blend-mode:screen;
}
.neoCursor:before{
  content:"";position:absolute;inset:7px;border-radius:50%;background:#8df9ff;
  box-shadow:0 0 12px #75efff
}
.neoCursor:after{
  content:"";position:absolute;left:50%;top:-7px;width:1px;height:36px;
  background:linear-gradient(transparent,rgba(115,244,255,.22),transparent)
}
@media(hover:hover) and (pointer:fine){body.neoCursorActive .neoCursor{opacity:.72}}

/* ===== MOBILE ===== */
@media(max-width:560px){
  .neoBootCore{width:190px;height:190px;margin-top:-84px}
  .neoBootText{top:58%}
  .neoBootText b{font-size:19px;letter-spacing:3.5px}
  .neoBootText span{font-size:7px;letter-spacing:1.8px}
  .neoSystemRail{gap:6px;padding:7px 8px;font-size:6px;letter-spacing:.75px}
  .neoSystemRail span:nth-child(3){display:none}
  .neoSystemRail span:not(:last-child):after{margin-left:1px}
  .neoCardTelemetry{left:18px;right:18px;top:11px;font-size:5px}
  .matchMeta{padding-top:13px}
  .neoScoreCore{width:111px;height:111px;top:47%}
  .neoScoreCore i:nth-child(2){transform-origin:46px 4px}
  .score{min-height:116px}
  .scoreValue:before,.scoreValue:after{width:12px}
  .matchBody:before{left:12%;right:12%}
  .formBlock:after,.scoreAlternative:after,.scorerSingle:before{display:none}
}
@media(max-width:390px){.neoSystemRail span:nth-child(2){display:none}}
@media(max-width:760px){.neoCursor{display:none!important}}
@media(prefers-reduced-motion:reduce){
  .neoBoot:before,.neoBoot:after,.neoBootGrid,.neoBootRings i,.neoBootCore:before,
  .neoBootProgress i,.neoCardTelemetry b:after,.neoScoreCore:before,.neoScoreCore:after,
  .neoScoreCore i,.matchMeta .matchHint:after,.topPickCard:after,.pill:before{
    animation:none!important
  }
}

/* ===== KEYFRAMES ===== */
@keyframes bootFloor{to{background-position:0 52px,52px 0}}
@keyframes bootScan{0%{top:-25%}100%{top:125%}}
@keyframes bootStars{to{background-position:170px 170px,-210px 210px,260px -260px}}
@keyframes ringSpin{to{transform:rotate(360deg)}}
@keyframes ringSpinReverse{to{transform:rotate(-360deg)}}
@keyframes bootProgress{0%{width:0}22%{width:18%}52%{width:56%}76%{width:82%}100%{width:100%}}
@keyframes coreBreath{0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.05)}}
@keyframes railPulse{0%,100%{opacity:.46}50%{opacity:1}}
@keyframes cursorBlink{0%,48%{opacity:1}49%,100%{opacity:0}}
@keyframes telemetrySweep{0%{left:-38px}100%{left:100%}}
@keyframes scoreRing{to{transform:rotate(360deg)}}
@keyframes scoreRingReverse{to{transform:rotate(-360deg)}}
@keyframes scoreOrbit{to{transform:rotate(360deg)}}
@keyframes hintSweep{0%,70%{left:-40px}100%{left:calc(100% + 40px)}}
@keyframes topHalo{to{transform:rotate(360deg)}}
@keyframes holoPanelIn{
  0%{opacity:0;transform:translateY(22px) scale(.94);filter:blur(8px)}
  100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
#loginBox .field{
  display:block!important;
}
#loginBox #email,
#loginBox #password{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
}
#loginBox #password{
  min-height:42px!important;
}
#loginBox .authButtons{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
  margin-top:15px!important;
}
#loginBox .authButtons #loginBtn,
#loginBox .authButtons #registerBtn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  opacity:1!important;
  visibility:visible!important;
}
@media(max-width:560px){
  #authGate{
    align-items:flex-start!important;
    justify-content:flex-start!important;
    overflow-y:auto!important;
    padding-top:16px!important;
    padding-bottom:24px!important;
  }
  .authShell{
    padding:18px 15px!important;
  }
  .authBrand{
    margin-bottom:14px!important;
  }
  .authBrand img{
    width:46px!important;
    height:46px!important;
  }
  .authBrand b{
    font-size:27px!important;
  }
  #loginBox .field{
    margin-bottom:9px!important;
  }
  #loginBox .authButtons{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin-top:12px!important;
  }
  #loginBox .authButtons #loginBtn,
  #loginBox .authButtons #registerBtn{
    min-height:42px!important;
    padding:10px 8px!important;
    font-size:10px!important;
  }
  .authUtility{
    margin-top:8px!important;
  }
  .privacyMini{
    margin-top:9px!important;
    padding:8px 9px!important;
  }
}
.marketIntel{
  display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:11px;
}
.marketIntelBox{
  padding:11px 12px 10px;border-radius:15px;
  background:linear-gradient(180deg,rgba(12,20,34,.82),rgba(6,11,22,.90));
  border:1px solid rgba(97,246,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.marketIntelTitle{
  text-align:center;color:#9cfaff;font-size:8px;font-weight:1000;letter-spacing:1.15px;text-transform:uppercase;margin-bottom:8px;
}
.marketIntelTriplet{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;text-align:center}
.marketIntelTriplet span{padding:6px 4px;border-radius:10px;background:rgba(255,255,255,.022);border:1px solid rgba(255,255,255,.04)}
.marketIntelTriplet small{display:block;color:#758197;font-size:7px;font-weight:1000;letter-spacing:.75px;text-transform:uppercase;margin-bottom:3px}
.marketIntelTriplet b{display:block;color:#f5fbff;font-size:15px;line-height:1;font-weight:1000}
.marketIntelConfidence{margin-top:7px;text-align:center;color:#71819a;font-size:7px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}
@media(max-width:560px){
  .marketIntel{grid-template-columns:1fr}
  .marketIntelBox{padding:10px}
}
/* ==========================================================
   FIX DEFINITIVO 29/09/2026
   - Boot JARVIS realmente fullscreen e centrato
   - Overlay ADMIN realmente fixed sopra l'app
   - Controlli header sempre cliccabili
   ========================================================== */
html,body{width:100%;min-height:100%;}
