.card::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:22px;
  background:linear-gradient(45deg,#7c4dff,#4dd0e1,#ff4081);
  z-index:-1;
  opacity:0;
  filter:blur(20px);
  transition:.4s;
}
.card:hover::before{opacity:1}
.card{position:relative}
.card-btn{
  position:relative;
  overflow:hidden;
}
.card-btn span{
  position:absolute;
  border-radius:50%;
  transform:scale(0);
  animation:ripple .6s linear;
  background:rgba(255,255,255,.5);
}
@keyframes ripple{
  to{transform:scale(4);opacity:0}
}
#stars{
  position:fixed;
  inset:0;
  z-index:-1;
  background:transparent;
}
.trail{
  position:fixed;
  width:10px;height:10px;
  border-radius:50%;
  pointer-events:none;
  background:radial-gradient(circle,#7c4dff,transparent);
  animation:trailFade .8s linear forwards;
}
@keyframes trailFade{
  to{transform:scale(4);opacity:0}
}
.toast{
  position:fixed;
  bottom:30px;
  left:50%;
  transform:translateX(-50%) translateY(40px);
  background:rgba(0,0,0,.7);
  backdrop-filter:blur(10px);
  padding:14px 28px;
  border-radius:40px;
  color:#fff;
  opacity:0;
  transition:.4s;
  z-index:2000;
}
.toast.show{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}
/* ====== GLOBAL ENHANCEMENTS ====== */
body{
  background:
    radial-gradient(circle at top,#0b1a3a,#050c1c 65%);
}

/* smooth everywhere */
*{
  transition: background .3s,color .3s,transform .3s;
}

/* ====== CARDS UPGRADE ====== */
.card{
  position:relative;
  overflow:hidden;
}
.card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,
    transparent,
    rgba(124,77,255,.15),
    transparent);
  opacity:0;
}
.card:hover::after{
  opacity:1;
  animation:shine 1.5s linear;
}
@keyframes shine{
  from{transform:translateX(-100%)}
  to{transform:translateX(100%)}
}

/* ====== BUTTON RIPPLE ====== */
.card-btn{
  position:relative;
  overflow:hidden;
}
.card-btn span{
  position:absolute;
  border-radius:50%;
  transform:scale(0);
  animation:ripple .6s linear;
  background:rgba(255,255,255,.5);
}
@keyframes ripple{
  to{transform:scale(4);opacity:0}
}

/* ====== MODAL DRAMA ====== */
.modal.active .modal-content{
  animation:pop .6s cubic-bezier(.16,1,.3,1);
}
@keyframes pop{
  from{transform:scale(.85);opacity:0}
  to{transform:scale(1);opacity:1}
}

/* ====== GLOW ON HOVER ====== */
.card:hover{
  box-shadow:0 75px 60px rgba(124,77,255,.35);
  transform:translateY(-10px) scale(1.03);
}

/* ====== SOFT FLOAT ====== */
.big-unit{
  animation:float 3s ease-in-out infinite;
}
@keyframes float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}

/* ===== AMOLED MODE ===== */
body.amoled{
  background:#000 !important;
}

body.amoled .top-bar,
body.amoled .sidebar,
body.amoled .card,
body.amoled .modal,
body.amoled .big-unit{
  background:rgba(0,0,0,.85) !important;
  border-color:rgba(255,255,255,.08) !important;
}

body.amoled .card:hover{
  box-shadow:0 0 25px rgba(124,77,255,.4);
}

body.amoled .card-btn{
  filter:saturate(1.1);
}

/* زر صغير أنيق */
.amoled-btn{
  position:fixed;
  bottom:20px;
  right:20px;
  width:54px;
  height:54px;
  border-radius:50%;
  border:none;
  cursor:pointer;
  background:linear-gradient(135deg,#7c4dff,#4dd0e1);
  color:#fff;
  font-size:22px;
  box-shadow:0 10px 30px rgba(0,0,0,.5);
  z-index:9999;
}


/* ================= SAFE ENHANCEMENTS ================= */

/* Smooth Motion */
*{
  scroll-behavior:smooth;
}

/* Scroll Reveal (مبدئي) */
.card{

  opacity:1;

  transform:none;

}
}
.card.reveal{
  opacity:1;
  transform:none;
  transition:opacity .7s ease,transform .7s ease;
}

/* Highlight أقرب مناسبة */
.card.highlight{
  outline:3px solid #7c4dff;
  outline-offset:6px;
  box-shadow:0 0 30px rgba(124,77,255,.4);
}

/* Focus Mode */
body.focus .container{
  filter:blur(2px) brightness(.8);
}

/* Idle Animation */
@keyframes idleFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
body.idle .card{
  animation:idleFloat 4s ease-in-out infinite;
}

/* Offline Hint */
.offline-hint{
  position:fixed;
  top:80px;
  left:50%;
  transform:translateX(-50%);
  background:rgba(0,0,0,.7);
  color:#fff;
  padding:10px 22px;
  border-radius:30px;
  font-size:14px;
  z-index:9999;
  display:none;
}

/* Time-based UI */
body.morning{--accent:#4dd0e1}
body.evening{--accent:#ff9800}
body.night{--accent:#7c4dff}

/* ===== GLASS PERSIST ===== */
.glass-on .card,
.glass-on .modal,
.glass-on .sidebar{
  backdrop-filter:blur(18px);
}

/* ===== 3D PERSIST ===== */
.threeD-on .card{
  transform-style:preserve-3d;
}
.threeD-on .card:hover{
  transform:rotateX(6deg) rotateY(-6deg) translateY(-10px);
}