/* bulk-sorting.css — Custom stylesheet for bulk-data-sorting.html */

/* Theme Variables for Sorting Agent */
.bulksorting-body {
  --palette-teal: #00f0ff;       /* Electric Cyan */
  --palette-purple: #9d4edd;     /* Bright Neon Violet */
  --palette-orange: #ff007f;     /* Hot Rose */
  --palette-blue-glow: rgba(0, 240, 255, 0.15);
  --palette-purple-glow: rgba(157, 78, 221, 0.15);
}

/* Page Scroll Smoothness */
html:has(body.bulksorting-body) {
  scroll-behavior: smooth;
}

/* Custom Hero Layout overrides for Sorting Agent */
.bulksorting-body .linkgenerator-hero-banner {
  background: radial-gradient(ellipse 80% 60% at 70% 18%, rgba(0, 240, 255, 0.12), transparent 55%),
              radial-gradient(ellipse 70% 55% at 12% 88%, rgba(157, 78, 221, 0.12), transparent 52%),
              radial-gradient(ellipse 45% 35% at 55% 95%, rgba(255, 0, 127, 0.06), transparent 50%),
              linear-gradient(165deg, #0d0f1a 0%, #030408 50%, #0d0e19 100%) !important;
}

/* Accent highlight styling for the title */
.bulksorting-body .linkgenerator-hero-banner__accent--blue {
  color: var(--palette-teal) !important;
  text-shadow: 0 0 15px rgba(0, 240, 255, 0.4);
}

.bulksorting-body .linkgenerator-hero-banner__accent--yellow {
  color: var(--palette-purple) !important;
  text-shadow: 0 0 15px rgba(157, 78, 221, 0.4);
}

/* Showcase Section Styles */
.bulksorting-body .accuracy-showcase {
  background: radial-gradient(circle at 20% 30%, rgba(0, 240, 255, 0.05), transparent 45%),
              radial-gradient(circle at 80% 70%, rgba(157, 78, 221, 0.05), transparent 45%),
              linear-gradient(180deg, #05060b 0%, #0c0d16 100%) !important;
  padding: 6rem 0;
  position: relative;
  overflow: hidden;
}

.bulksorting-body .accuracy-showcase__title span {
  background: linear-gradient(135deg, var(--palette-teal), var(--palette-purple));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

.bulksorting-body .accuracy-showcase__frame {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.6), 
              0 0 40px rgba(0, 240, 255, 0.1);
  background: rgba(13, 15, 26, 0.6);
  backdrop-filter: blur(10px);
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.6s ease;
}

.bulksorting-body .accuracy-showcase__frame:hover {
  transform: scale(1.01) translateY(-5px);
  box-shadow: 0 35px 80px rgba(0, 0, 0, 0.8), 
              0 0 50px rgba(157, 78, 221, 0.2);
}

/* Process Section Timeline */
.bulksorting-body .yourtutor-process {
  background: linear-gradient(180deg, #0c0d16 0%, #030408 100%) !important;
  padding: 6rem 0;
}

.bulksorting-body .yourtutor-process__title span {
  background: linear-gradient(135deg, var(--palette-teal), var(--palette-purple));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.bulksorting-body .yourtutor-process__card {
  background: rgba(255, 255, 255, 0.02) !important;
  border: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-radius: 16px !important;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
  position: relative;
  overflow: hidden;
}

.bulksorting-body .yourtutor-process__card::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1.5px;
  background: linear-gradient(135deg, var(--palette-teal), var(--palette-purple), var(--palette-orange));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.bulksorting-body .yourtutor-process__item:hover .yourtutor-process__card {
  transform: translateY(-8px);
  background: rgba(255, 255, 255, 0.05) !important;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.4), 
              0 0 20px rgba(0, 240, 255, 0.1);
}

.bulksorting-body .yourtutor-process__item:hover .yourtutor-process__card::after {
  opacity: 0.8;
}

/* Audience/Who Needs It Section styling */
.bulksorting-body .ecomm-audience-section {
  background: linear-gradient(180deg, #030408 0%, #090a12 100%) !important;
  position: relative;
  padding: 6rem 0;
}

.bulksorting-body .ecomm-audience-section::before {
  content: '';
  position: absolute;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(157, 78, 221, 0.05) 0%, transparent 70%);
  top: 10%;
  left: -10%;
  pointer-events: none;
}

.bulksorting-body .ecomm-audience-section .section-badge {
  background: rgba(0, 240, 255, 0.08);
  border: 1px solid rgba(0, 240, 255, 0.2);
  color: var(--palette-teal);
  font-family: 'DM Mono', monospace;
  font-size: 0.9rem;
  letter-spacing: 2px;
  padding: 6px 16px;
  border-radius: 50px;
  display: inline-block;
  margin-bottom: 2rem;
  text-transform: uppercase;
}

.bulksorting-body .audience-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
}

.bulksorting-body .audience-card {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 16px;
  padding: 2.5rem;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  position: relative;
}

.bulksorting-body .audience-card::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1.5px;
  background: linear-gradient(135deg, var(--palette-teal), var(--palette-purple));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.bulksorting-body .audience-card:hover {
  transform: translateY(-8px);
  background: rgba(255, 255, 255, 0.04);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3), 
              0 0 25px rgba(0, 240, 255, 0.1);
}

.bulksorting-body .audience-card:hover::after {
  opacity: 0.8;
}

.bulksorting-body .audience-card .icon {
  font-size: 2.2rem;
  margin-bottom: 1.25rem;
  display: inline-block;
  transition: transform 0.4s ease;
}

.bulksorting-body .audience-card:hover .icon {
  transform: scale(1.2) rotate(10deg);
}

.bulksorting-body .audience-card h3 {
  font-size: 1.35rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: #fff;
}

.bulksorting-body .audience-card p {
  color: rgba(255, 255, 255, 0.65);
  font-size: 0.95rem;
  line-height: 1.6;
  margin: 0;
}

/* FAQ Accordion Styling */
.bulksorting-body .yourtutor-faq {
  background: linear-gradient(180deg, #090a12 0%, #05060b 100%) !important;
  padding: 6rem 0;
}

.bulksorting-body .yourtutor-faq__title {
  color: #fff !important;
}

.bulksorting-body .yourtutor-faq__chip {
  background: rgba(157, 78, 221, 0.08) !important;
  border: 1px solid rgba(157, 78, 221, 0.2) !important;
  color: var(--palette-purple) !important;
}

.bulksorting-body .yourtutor-faq__pill {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: rgba(255, 255, 255, 0.8) !important;
}

.bulksorting-body .yourtutor-faq__item {
  background: rgba(255, 255, 255, 0.02) !important;
  border: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-radius: 12px !important;
  margin-bottom: 12px !important;
  transition: all 0.3s ease !important;
}

.bulksorting-body .yourtutor-faq__item:hover {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(0, 240, 255, 0.15) !important;
}

.bulksorting-body .yourtutor-faq__btn {
  background: transparent !important;
  color: #fff !important;
  font-weight: 500 !important;
  padding: 1.25rem 1.5rem !important;
}

.bulksorting-body .yourtutor-faq__btn:not(.collapsed) {
  color: var(--palette-teal) !important;
}

.bulksorting-body .yourtutor-faq__body {
  color: rgba(255, 255, 255, 0.7) !important;
  padding: 0 1.5rem 1.5rem 1.5rem !important;
  line-height: 1.6 !important;
}

/* Entrance Scroll Reveal Animation */
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s cubic-bezier(0.215, 0.61, 0.355, 1), 
              transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.reveal-on-scroll.revealed {
  opacity: 1;
  transform: translateY(0);
}
