
  /* Loader overlay */
  .loader-overlay{
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    background: rgba(8, 10, 20, 0.88);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 9999;
    transition: opacity .25s ease, visibility .25s ease;
  }
  .loader-overlay.is-hidden{
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  .loader-card{
    width: min(360px, calc(100vw - 32px));
    padding: 18px 18px 16px;
    border-radius: 16px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow: 0 10px 30px rgba(0,0,0,0.35);
    display: flex;
    align-items: center;
    gap: 14px;
  }
  .spinner{
    width: 44px;
    height: 44px;
    position: relative;
    flex: 0 0 auto;
  }
  .spinner span{
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 3px solid rgba(255,255,255,0.20);
    border-top-color: rgba(255,255,255,0.95);
    animation: spin 0.9s linear infinite;
  }
  .spinner span:nth-child(2){
    inset: 6px;
    animation-duration: 1.1s;
    border-top-color: rgba(255,255,255,0.75);
  }
  .spinner span:nth-child(3){
    inset: 12px;
    animation-duration: 1.3s;
    border-top-color: rgba(255,255,255,0.55);
  }
  .spinner span:nth-child(4){
    inset: 18px;
    animation-duration: 1.5s;
    border-top-color: rgba(255,255,255,0.40);
  }
  @keyframes spin { to { transform: rotate(360deg); } }

  .loader-title{
    font: 600 14px/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color: rgba(255,255,255,0.96);
    letter-spacing: 0.2px;
  }
  .loader-sub{
    margin-top: 4px;
    font: 400 12px/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color: rgba(255,255,255,0.70);
  }

  /* Respectă setarea userului pentru reducerea animațiilor */
  @media (prefers-reduced-motion: reduce){
    .spinner span{ animation: none; }
    .loader-overlay{ transition: none; }
  }
