/* =========================================================
   Rabbit Workspace OS v135 — Loading page visibility
   Tema premium coordinato alle sidebar blu → verde acqua.
   Intervento esclusivamente visuale.
   ========================================================= */

:root{
  --rabbit-loading-blue:#2f7df0;
  --rabbit-loading-blue-deep:#1f66d8;
  --rabbit-loading-teal:#18b99c;
  --rabbit-loading-ink:#11253d;
  --rabbit-loading-muted:#61748a;
  --rabbit-loading-panel:#f7fbff;
  --rabbit-loading-border:rgba(47,125,240,.28);
}

#loading.rabbit-loading-cover{
  background:
    radial-gradient(circle at 12% 14%,rgba(47,125,240,.20),transparent 28%),
    radial-gradient(circle at 88% 84%,rgba(24,185,156,.20),transparent 30%),
    linear-gradient(145deg,#e8f2ff 0%,#f5fbff 45%,#e6fbf5 100%)!important;
  backdrop-filter:blur(14px) saturate(112%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(112%)!important;
}

#loading .rabbit-loading-shell{
  width:min(780px,calc(100vw - 38px))!important;
}

#loading .rabbit-loading-glow{
  filter:blur(24px)!important;
  opacity:.56!important;
}

#loading .rabbit-loading-glow-a{
  background:radial-gradient(circle,rgba(47,125,240,.46),rgba(47,125,240,0) 68%)!important;
}

#loading .rabbit-loading-glow-b{
  background:radial-gradient(circle,rgba(24,185,156,.42),rgba(24,185,156,0) 68%)!important;
}

#loading .rabbit-loading-panel{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  padding:36px!important;
  border-radius:32px!important;
  color:var(--rabbit-loading-ink)!important;
  background:
    radial-gradient(circle at 8% 4%,rgba(47,125,240,.09),transparent 32%),
    radial-gradient(circle at 96% 94%,rgba(24,185,156,.10),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(242,248,255,.96))!important;
  border:2px solid var(--rabbit-loading-border)!important;
  box-shadow:
    0 34px 86px rgba(31,102,216,.18),
    0 12px 32px rgba(17,37,61,.12),
    inset 0 1px 0 rgba(255,255,255,.98)!important;
}

#loading .rabbit-loading-panel::before{
  inset:6px!important;
  border-radius:25px!important;
  border:1px solid rgba(255,255,255,.94)!important;
  box-shadow:inset 0 0 0 1px rgba(47,125,240,.05)!important;
}

#loading .rabbit-loading-panel::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:8px!important;
  z-index:2!important;
  background:linear-gradient(90deg,var(--rabbit-loading-blue),#278bdc 48%,var(--rabbit-loading-teal))!important;
  box-shadow:0 6px 18px rgba(47,125,240,.18)!important;
}

#loading .rabbit-loading-brand{
  gap:20px!important;
}

#loading .rabbit-loading-brand-icon{
  width:84px!important;
  height:84px!important;
  border-radius:26px!important;
  background:linear-gradient(145deg,#ffffff,#e8f4ff)!important;
  border:1px solid rgba(47,125,240,.22)!important;
  box-shadow:
    12px 12px 28px rgba(134,158,184,.24),
    -10px -10px 24px rgba(255,255,255,.94),
    inset 0 1px 0 #fff!important;
}

#loading .rabbit-loading-brand-icon img{
  width:58px!important;
  height:58px!important;
  filter:drop-shadow(0 10px 18px rgba(31,102,216,.18))!important;
}

#loading .rabbit-loading-kicker{
  min-height:30px!important;
  padding:0 12px!important;
  margin-bottom:10px!important;
  border-radius:999px!important;
  color:#165f9f!important;
  background:linear-gradient(135deg,#edf6ff,#e8fff8)!important;
  border:1px solid rgba(47,125,240,.18)!important;
  box-shadow:0 8px 18px rgba(31,102,216,.08)!important;
  letter-spacing:.14em!important;
}

#loading .rabbit-loading-kicker::before{
  background:var(--rabbit-loading-teal)!important;
  box-shadow:0 0 0 7px rgba(24,185,156,.14)!important;
}

#loading .rabbit-loading-brand-copy h3{
  color:var(--rabbit-loading-ink)!important;
  text-shadow:none!important;
  font-size:clamp(30px,4vw,44px)!important;
  letter-spacing:-.045em!important;
}

#loading .rabbit-loading-brand-copy p{
  color:var(--rabbit-loading-muted)!important;
  font-size:15px!important;
  line-height:1.55!important;
  font-weight:650!important;
}

#loading .rabbit-loading-progress{
  height:18px!important;
  margin:30px 0 18px!important;
  padding:3px!important;
  background:#e2ebf4!important;
  border:1px solid rgba(47,125,240,.18)!important;
  box-shadow:
    inset 4px 4px 8px rgba(170,185,201,.55),
    inset -4px -4px 8px rgba(255,255,255,.96)!important;
}

#loading .rabbit-loading-progress span{
  top:3px!important;
  bottom:3px!important;
  height:auto!important;
  background:linear-gradient(90deg,var(--rabbit-loading-blue),#37a0dd,var(--rabbit-loading-teal),#8ee8d5)!important;
  box-shadow:
    0 0 22px rgba(47,125,240,.34),
    0 0 12px rgba(24,185,156,.22)!important;
}

#loading .rabbit-loading-steps{
  gap:12px!important;
}

#loading .rabbit-loading-step{
  min-height:58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  color:#64778c!important;
  background:rgba(246,250,255,.94)!important;
  border:1px solid rgba(174,194,216,.48)!important;
  box-shadow:
    7px 7px 16px rgba(177,191,207,.30),
    -7px -7px 16px rgba(255,255,255,.92)!important;
}

#loading .rabbit-loading-step.is-active{
  transform:translateY(-2px)!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--rabbit-loading-blue),#2d91d5 54%,var(--rabbit-loading-teal))!important;
  border-color:rgba(255,255,255,.68)!important;
  box-shadow:
    0 16px 30px rgba(47,125,240,.22),
    inset 0 1px 0 rgba(255,255,255,.32)!important;
}

#loading .rabbit-loading-status-line{
  min-height:48px!important;
  margin-top:20px!important;
  padding:0 16px!important;
  border-radius:16px!important;
  color:#143657!important;
  background:linear-gradient(135deg,#eff7ff,#edfdf9)!important;
  border:1px solid rgba(47,125,240,.16)!important;
  box-shadow:inset 2px 2px 5px rgba(166,184,202,.18),inset -2px -2px 5px #fff!important;
}

#loading .rabbit-loading-pulse-dot{
  width:11px!important;
  height:11px!important;
  background:var(--rabbit-loading-teal)!important;
}

#loading .rabbit-loading-note{
  margin-top:16px!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  color:#718298!important;
  background:rgba(239,246,253,.72)!important;
  border:1px solid rgba(174,194,216,.30)!important;
}

@media (max-width:780px){
  #loading .rabbit-loading-shell{
    width:min(94vw,620px)!important;
  }

  #loading .rabbit-loading-panel{
    padding:28px 22px!important;
    border-radius:28px!important;
  }

  #loading .rabbit-loading-panel::before{
    border-radius:21px!important;
  }

  #loading .rabbit-loading-brand{
    grid-template-columns:auto 1fr!important;
    align-items:center!important;
  }

  #loading .rabbit-loading-brand-icon{
    width:70px!important;
    height:70px!important;
    border-radius:22px!important;
  }

  #loading .rabbit-loading-brand-icon img{
    width:48px!important;
    height:48px!important;
  }

  #loading .rabbit-loading-steps{
    grid-template-columns:1fr!important;
  }
}

@media (max-width:480px){
  #loading .rabbit-loading-panel{
    padding:25px 17px 20px!important;
  }

  #loading .rabbit-loading-brand{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    text-align:center!important;
  }

  #loading .rabbit-loading-kicker{
    justify-content:center!important;
  }

  #loading .rabbit-loading-brand-copy p{
    margin-inline:auto!important;
  }

  #loading .rabbit-loading-status-line{
    align-items:center!important;
    font-size:13px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  #loading .rabbit-loading-glow,
  #loading .rabbit-loading-progress span,
  #loading .rabbit-loading-pulse-dot{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}
