/* Custom Base Tweaks */
:root {
  -webkit-tap-highlight-color: transparent;
}

body {
  font-feature-settings: "cv02", "cv03", "cv04", "cv11";
}

/* Hide scrollbar for clean chip sliders */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* Active bottom navigation state */
.nav-item.active {
  color: #00875a;
}
.nav-item.active span:first-child {
  transform: scale(1.1);
  transition: transform 0.15s ease-out;
}

/* Active Top Role switch */
.active-role {
  background-color: #ffffff;
  color: #00875a;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

/* Card hover transitions on desktop */
@media (hover: hover) {
  .service-card {
    transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.18s cubic-bezier(0.16, 1, 0.3, 1);
  }
  .service-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px -6px rgba(0, 0, 0, 0.08);
  }
}

/* Direction lock for specific technical inputs */
[dir="ltr"] {
  direction: ltr !important;
  text-align: left !important;
}

/* Subtle micro-shadows */
.shadow-2xs {
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.04);
}

/* Animations */
@keyframes fadeInScale {
  from {
    opacity: 0;
    transform: scale(0.96);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

.modal-animate {
  animation: fadeInScale 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Payment Gateway Option Selector */
.payment-option input:checked + div {
  border-color: #00875a;
  background-color: #ecfdf5;
}

/* Dispute and Moderation Badges */
.badge-disputed {
  background-color: #fee2e2;
  color: #991b1b;
  border: 1px solid #fecaca;
}