
    * { transition: all 0.2s ease; }
    body { font-family: 'Inter', sans-serif; -webkit-tap-highlight-color: transparent; }
    ::-webkit-scrollbar { width: 5px; height: 5px; }
    ::-webkit-scrollbar-track { background: #f3e8ff; border-radius: 10px; }
    ::-webkit-scrollbar-thumb { background: #a855f7; border-radius: 10px; }
    .dark ::-webkit-scrollbar-track { background: #2d1f3a; }
    .dark ::-webkit-scrollbar-thumb { background: #c084fc; }
    .glass-nav { backdrop-filter: blur(16px); background: rgba(255,250,253,0.85); border-bottom: 1px solid rgba(168,85,247,0.2); }
    .dark .glass-nav { background: rgba(12,10,20,0.92); border-bottom: 1px solid rgba(168,85,247,0.3); }
    .btn-press:active { transform: scale(0.96); }
    .shortlink-card { transition: all 0.25s cubic-bezier(0.2,0,0,1); }
    .shortlink-card:hover { transform: translateY(-3px); box-shadow: 0 20px 30px -12px rgba(139,92,246,0.25); }
    .activity-item { animation: slideIn 0.25s ease-out; }
    .gradient-text { background: linear-gradient(135deg, #a855f7, #ec4899); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
    .balance-card { background: linear-gradient(135deg, #9333ea, #7c3aed, #db2777); background-size: 200% 200%; }
    .table-row-transition:hover { background: rgba(168,85,247,0.05); transition: 0.1s; }
    .dark .table-row-transition:hover { background: rgba(168,85,247,0.15); }
    #mobileMenu {
    transition: all 0.3s ease-in-out;
    transform-origin: top;
    animation: slideDown 0.3s ease-out;
  }
  
  @keyframes slideDown {
    from {
      opacity: 0;
      transform: translateY(-20px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  #mobileOverlay {
    transition: all 0.3s ease;
  }
  
  #mobileOverlay:not(.hidden) {
    animation: fadeIn 0.3s ease-out;
  }
  
  @keyframes fadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  
  
#alertModal:not(.hidden){
    animation:backdropIn .25s ease;
}

#alertModal:not(.hidden) .modal-box{
    animation:modalSpring .55s cubic-bezier(.175,.885,.32,1.275);
}

#alertModal:not(.hidden) #alertIconWrap{
    animation:iconBounce .7s cubic-bezier(.175,.885,.32,1.275);
}

@keyframes backdropIn{
    from{
        opacity:0;
        backdrop-filter:blur(0);
    }
    to{
        opacity:1;
        backdrop-filter:blur(12px);
    }
}

@keyframes modalSpring{
    0%{
        opacity:0;
        transform:translateY(60px) scale(.75);
    }
    60%{
        opacity:1;
        transform:translateY(-8px) scale(1.03);
    }
    100%{
        opacity:1;
        transform:translateY(0) scale(1);
    }
}

@keyframes iconBounce{
    0%{
        opacity:0;
        transform:scale(0) rotate(-180deg);
    }
    70%{
        transform:scale(1.15) rotate(10deg);
    }
    100%{
        opacity:1;
        transform:scale(1) rotate(0);
    }
}