/* ============================================================
   Propdirectory Custom Stylesheet
   Slogan: Home Search to the Next Level
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800;900&display=swap');

:root {
  /* Propdirectory Brand Identity */
  --pd-green: #0D6F39;
  --pd-green-dark: #095228;
  --pd-green-light: #EBF7F0;
  --pd-gold: #F2A900;
  --pd-gold-dark: #D49200;
  --pd-gold-light: #FEF8EC;
  --pd-dark: #0B1913;
  --pd-dark-surface: #12241C;
  --pd-gray-50: #F8F9FA;
  --pd-gray-100: #F1F4F2;
  --pd-gray-200: #E2E8E4;
  --pd-gray-300: #CBD5CF;
  --pd-gray-400: #94A39B;
  --pd-gray-500: #64746C;
  --pd-gray-600: #47554E;
  --pd-gray-700: #33413B;
  --pd-gray-800: #1E2923;
  --pd-red: #E02424;

  /* Backward Compatibility Aliases */
  --sy-yellow: var(--pd-gold);
  --sy-yellow-dark: var(--pd-gold-dark);
  --sy-yellow-light: var(--pd-gold-light);
  --sy-dark: var(--pd-dark);
  --sy-dark-surface: var(--pd-dark-surface);
  --sy-green: var(--pd-green);
  --sy-red: var(--pd-red);
}

* {
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  box-sizing: border-box;
}

body {
  background-color: #F8F9FA;
  color: #1F2937;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
}

/* Custom Scrollbars */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: #F1F4F2;
}
::-webkit-scrollbar-thumb {
  background: #CBD5CF;
  border-radius: 9999px;
}
::-webkit-scrollbar-thumb:hover {
  background: #94A39B;
}

.scrollbar-none::-webkit-scrollbar {
  display: none;
}
.scrollbar-none {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* Propdirectory Ask AI Shimmer Button */
.sqy-askai-btn, .pd-askai-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 16px;
  border-radius: 999px;
  border: 1.5px solid transparent;
  cursor: pointer;
  font-weight: 700;
  font-size: 13px;
  white-space: nowrap;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(96.7deg, var(--pd-green), var(--pd-gold), #10B981) border-box;
  background-size: 100% 100%, 220% 220%;
  animation: pd-askai-flow 4s linear infinite;
  transition: transform 0.2s, box-shadow 0.2s;
}

.sqy-askai-btn:hover, .pd-askai-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(13, 111, 57, 0.25);
}

@keyframes pd-askai-flow {
  0% { background-position: 0 0, 0% 50%; }
  50% { background-position: 0 0, 100% 50%; }
  100% { background-position: 0 0, 0% 50%; }
}

/* Hero Section Gradient & Backdrop */
.hero-gradient-overlay {
  background: linear-gradient(180deg, rgba(11, 25, 19, 0.88) 0%, rgba(11, 25, 19, 0.96) 100%);
}

.hero-search-container {
  box-shadow: 0 20px 45px -15px rgba(11, 25, 19, 0.45);
}

/* Tab Active Styles */
.property-tab-active {
  background: #ffffff !important;
  color: #111827 !important;
  font-weight: 700;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

/* Card Badge Gradients */
.badge-rera {
  background: linear-gradient(135deg, #0D6F39 0%, #084D26 100%);
}

.badge-hot {
  background: linear-gradient(135deg, #DC2626 0%, #B91C1C 100%);
}

.badge-launch {
  background: linear-gradient(135deg, #F2A900 0%, #D49200 100%);
}

/* Project Number Watermark */
.project-rank-watermark {
  -webkit-text-stroke: 4px rgba(226, 232, 228, 0.85);
  color: transparent;
  font-weight: 900;
  line-height: 1;
}

/* Image Hover Zoom */
.property-card-img {
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.property-card:hover .property-card-img {
  transform: scale(1.06);
}

/* Autocomplete Dropdown Transition */
.autocomplete-dropdown {
  transform-origin: top center;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

/* Floating Action Button */
.floating-assistant-btn {
  animation: pulse-ring 2.5s infinite;
}

@keyframes pulse-ring {
  0% {
    box-shadow: 0 0 0 0 rgba(13, 111, 57, 0.6);
  }
  70% {
    box-shadow: 0 0 0 16px rgba(13, 111, 57, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(13, 111, 57, 0);
  }
}

/* Modal Animations */
.modal-overlay {
  transition: opacity 0.25s ease-in-out;
}

.modal-content {
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease-in-out;
}

/* Toast Notification Animation */
.toast-notification {
  animation: slide-in-bottom 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes slide-in-bottom {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Range input styling */
input[type=range] {
  accent-color: #0D6F39;
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .hero-search-tabs {
    overflow-x: auto;
    white-space: nowrap;
  }
}
