/* Custom Heritage Styling for Best Kabsa App */

:root {
  --color-sand: #FDF8F0;
  --color-saffron: #E5A93B;
  --color-terracotta: #8C3B1E;
  --color-crimson: #A82810;
  --color-dark: #38160A;
}

/* Base resets & typography */
body {
  font-family: 'Tajawal', sans-serif;
  background-color: var(--color-sand);
  color: var(--color-dark);
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

h1, h2, h3, .font-serif {
  font-family: 'Amiri', serif;
}

/* Active tab button styling */
.tab-btn.active-tab {
  background-color: #ffffff;
  color: var(--color-terracotta);
  box-shadow: 0 2px 8px rgba(140, 59, 30, 0.12);
  border: 1px solid rgba(222, 194, 160, 0.6);
}

/* Custom Range Slider Styling */
input[type=range] {
  -webkit-appearance: none;
  height: 8px;
  background: #E8D7C3;
  border-radius: 6px;
  outline: none;
}

input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--color-terracotta);
  cursor: pointer;
  box-shadow: 0 2px 6px rgba(0,0,0,0.25);
  border: 2px solid #ffffff;
  transition: transform 0.1s ease;
}

input[type=range]::-webkit-slider-thumb:active {
  transform: scale(1.2);
}

/* Smooth transitions for tabs */
.tab-pane {
  animation: fadeIn 0.25s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Card Glow and Hover Effects */
.kabsa-card {
  transition: all 0.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.kabsa-card:active {
  transform: scale(0.97);
}

.kabsa-card.selected {
  border-color: var(--color-terracotta);
  background: linear-gradient(145deg, #FFF6E9, #FFFFFF);
  box-shadow: 0 4px 14px rgba(140, 59, 30, 0.15);
}

/* Pulsing highlight for active step */
.step-card-active {
  border-color: var(--color-saffron) !important;
  box-shadow: 0 0 0 2px rgba(229, 169, 59, 0.3), 0 4px 12px rgba(0,0,0,0.06);
}