/* Custom styling for Jaipur Project Distance Calculator */

/* Custom Smooth Transitions */
button, input, select, a {
  transition: all 0.15s ease-in-out;
}

/* Toast show animation */
.toast-visible {
  transform: translateY(0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Highlight distance values */
.distance-cell {
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
}

/* Custom Scrollbar for drawers and lists */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 9999px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Leaflet Map Customizations */
.leaflet-container {
  font-family: 'Inter', sans-serif !important;
  z-index: 10;
}

.custom-project-pin {
  display: flex;
  align-items: center;
  justify-content: center;
}

.pin-pulse {
  width: 24px;
  height: 24px;
  background: rgba(239, 68, 68, 0.4);
  border-radius: 50%;
  animation: pulse-ring 1.8s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pin-dot {
  width: 12px;
  height: 12px;
  background: #dc2626;
  border: 2px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(0,0,0,0.3);
}

@keyframes pulse-ring {
  0% { transform: scale(0.6); opacity: 0.9; }
  50% { transform: scale(1.6); opacity: 0.3; }
  100% { transform: scale(2.0); opacity: 0; }
}

/* Custom Leaflet Popups */
.leaflet-popup-content-wrapper {
  border-radius: 12px !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1) !important;
  padding: 2px !important;
}

.leaflet-popup-content {
  margin: 10px 14px !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

/* Luxury Real Estate Accents & Glow */
.gold-gradient-text {
  background: linear-gradient(135deg, #d97706 0%, #f59e0b 50%, #b45309 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.luxury-card {
  box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.06), 0 2px 6px -2px rgba(15, 23, 42, 0.04);
}

.luxury-card:hover {
  box-shadow: 0 10px 25px -4px rgba(15, 23, 42, 0.1), 0 4px 8px -2px rgba(15, 23, 42, 0.06);
}

/* Print Presentation Brochure Optimization */
@media print {
  header, footer, #input-hero-card, #action-buttons-bar, .no-print, button, #toast, #modal-settings, #modal-refs, #modal-history, #modal-bulk, #modal-compare {
    display: none !important;
  }
  
  body {
    background: #ffffff !important;
    color: #0f172a !important;
    font-size: 11pt !important;
  }

  main {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #results-container {
    display: block !important;
    space-y: 16px !important;
  }

  #presentation-brand-header {
    display: block !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    background: #090d16 !important;
    color: #ffffff !important;
    border: 1px solid #d97706 !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    margin-bottom: 16px !important;
  }

  #presentation-brand-header * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  #location-score-card {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    border-radius: 12px !important;
    margin-bottom: 16px !important;
  }

  .print-page-break {
    page-break-after: always;
  }

  #interactive-map {
    height: 320px !important;
  }
}
