/* ============================================
   Theme: Soft - نرم و ملایم
   ============================================ */

:root {
  --primary: #a78bfa;
  --accent: #f0abfc;
  --background-light: #fef3f2;
  --subtle-light: #fef7ff;
  --text-light: #4a4a5c;
  --muted-light: #9ca3af;
  --border-light: #fce7f3;
}

/* Soft Hero Gradient */
.hero-gradient {
  background: linear-gradient(135deg, #fef7ff 0%, #fce7f3 50%, #fde2e4 100%);
  position: relative;
}
.hero-gradient::before {
  background-image: 
    radial-gradient(circle at 20% 30%, rgba(167, 139, 250, 0.15) 0%, transparent 50%),
    radial-gradient(circle at 80% 70%, rgba(240, 171, 252, 0.15) 0%, transparent 50%);
}
/* Soft Card Hover */
.card-hover {
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(167, 139, 250, 0.2);
  backdrop-filter: blur(10px);
}
.card-hover:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px -8px rgba(167, 139, 250, 0.2);
  border-color: rgba(167, 139, 250, 0.4);
  background: rgba(255, 255, 255, 0.85);
}

/* Soft Stepper Card */
.stepper-card {
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(167, 139, 250, 0.25);
  backdrop-filter: blur(10px);
}
.stepper-card:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 10px 28px -8px rgba(167, 139, 250, 0.25);
  border-color: rgba(167, 139, 250, 0.45);
}

/* Disable backdrop-filter on mobile for better performance */
@media (max-width: 768px) {
  .card-hover,
  .stepper-card,
  [class*="backdrop-blur"] {
    backdrop-filter: none !important;
  }
  
  .card-hover {
    background: rgba(255, 255, 255, 0.95) !important;
  }
  
  .stepper-card {
    background: rgba(255, 255, 255, 0.9) !important;
  }
}

/* Soft Border Radius */
.rounded-xl {
  border-radius: 2rem !important;
}
.rounded-2xl {
  border-radius: 3rem !important;
}

/* Soft Shadows */
.shadow-md {
  box-shadow: 0 2px 12px rgba(167, 139, 250, 0.1) !important;
}
.shadow-lg {
  box-shadow: 0 4px 20px rgba(167, 139, 250, 0.15) !important;
}
.shadow-xl {
  box-shadow: 0 8px 28px rgba(167, 139, 250, 0.2) !important;
}

/* Soft Glow Effects */
.glow-primary {
  box-shadow: 0 0 20px rgba(167, 139, 250, 0.3), 0 4px 12px rgba(167, 139, 250, 0.15);
}
.glow-accent {
  box-shadow: 0 0 25px rgba(240, 171, 252, 0.4), 0 6px 16px rgba(240, 171, 252, 0.2);
}

/* Soft Trust Bar */
.trust-bar {
  background: linear-gradient(90deg, rgba(167, 139, 250, 0.1) 0%, rgba(240, 171, 252, 0.1) 100%);
  border: 1px solid rgba(167, 139, 250, 0.2);
  backdrop-filter: blur(15px);
}

/* Soft Stars Pattern */
.stars-pattern {
  opacity: 0.3;
  background-image: 
    radial-gradient(2px 2px at 20px 30px, rgba(167, 139, 250, 0.4), transparent),
    radial-gradient(1.5px 1.5px at 60px 80px, rgba(240, 171, 252, 0.3), transparent),
    radial-gradient(2px 2px at 100px 50px, rgba(167, 139, 250, 0.35), transparent);
}

/* Soft Header */
header {
  background: rgba(254, 247, 255, 0.8) !important;
  backdrop-filter: blur(20px) saturate(180%);
  border-bottom: 1px solid rgba(167, 139, 250, 0.2);
}

/* Soft Buttons */
button.bg-accent {
  background: linear-gradient(135deg, #f0abfc 0%, #e879f9 100%) !important;
  color: #4a4a5c !important;
  font-weight: 500;
}
button.bg-accent:hover {
  background: linear-gradient(135deg, #e879f9 0%, #d946ef 100%) !important;
  box-shadow: 0 6px 20px rgba(240, 171, 252, 0.3);
}

/* Soft Spacing */
section {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 768px) {
  section {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

/* Soft Typography */
h1, h2, h3 {
  font-weight: 500;
  letter-spacing: 0.01em;
  color: #6b5b95;
}

/* Soft Transitions */
* {
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

