.nazivi {
    border-collapse: collapse;
    width: 100%;
    font-family: sans-serif;
  }
  .nazivi h2 {
    margin: 0 0 10px 0;
    font-size: 16px;
    color: #333;
    text-align: center;
  }
  .nazivi tr td {
    padding: 4px 8px;
    border-bottom: 1px solid #eee;
  }
  .godina {
    color: #666;
    font-weight: normal;
  }
  .nazivi tr td b {
    color: #000;
  }
  .nazivi tr:last-child td {
    border-top: 2px solid #333;
    font-weight: bold;
  }
  /* Hover effects for TIFY buttons */
    .tify-header-button:hover {
      background: rgba(0,0,0,0.05) !important;
    }
    
    .tify-page-select-list li a:hover {
      background-color: #f0f0f0 !important;
    }
    
    .tify-page-select-button:hover {
      background: #333 !important;
      cursor: pointer;
    }
    
    .tify-header-button:disabled:hover {
      background: transparent !important;
    }
    
    /* Ensure proper z-index for dropdowns */
    .tify-page-select-dropdown {
      z-index: 100001 !important;
    }
    
    .tify-header-popup {
      z-index: 100001 !important;
    }
    
     .fixed.inset-0 {
      z-index: 9999999 !important;
    }
    .modal, 
    #thumbnailsModal, 
    #infoModal {
      z-index: 9999999 !important;
    }
    .tify-header-button-group.-page-select .tify-page-select button {
  background: black;
  color: white;
  font-family: "FW", sans-serif;
  line-height: 34px;
  font-size: 28px;padding:0 5px;
}

/* Layer dropdown styles */
.layer-card {
  transition: background-color 0.2s ease;
}

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}



/* Custom CSS classes to replace Tailwind */
.fixed {
  position: fixed;
}

.left-0 {
  left: 0;
}

.right-0 {
  right: 0;
}

.text-white {
  color: white;
}

.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.shadow-md {
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.max-w-7xl {
  max-width: 80rem;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.flex {
  display: flex;
}

.items-center {
  align-items: center;
}

.justify-between {
  justify-content: space-between;
}

.space-x-3 > * + * {
  margin-left: 0.75rem;
}

.w-5 {
  width: 1.25rem;
}

.h-5 {
  height: 1.25rem;
}

.text-sm {
  font-size: 0.875rem;
}

.font-medium {
  font-weight: 500;
}

.font-bold {
  font-weight: 700;
}

.text-xs {
  font-size: 0.75rem;
}

.text-gray-700 {
  color: #374151;
}

.whitespace-nowrap {
  white-space: nowrap;
}

.cursor-pointer {
  cursor: pointer;
}

.w-24 {
  width: 6rem;
}

.h-4 {
  height: 1rem;
}

.bottom-4 {
  bottom: 1rem;
}

.left-4 {
  left: 4rem;
}

.bg-white {
  background-color: white;
}

.bg-white\/90 {
  background-color: rgba(255, 255, 255, 0.9);
}

.backdrop-blur-xl {
  backdrop-filter: blur(24px);
}

.shadow-2xl {
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.rounded-2xl {
  border-radius: 1rem;
}

.p-3 {
  padding: 0.75rem;
}

.z-\[1000\] {
  z-index: 1000;
}

.z-\[1000000001\] {
  z-index: 1000000001;
}

.z-\[1000000002\] {
  z-index: 1000000002;
}

.z-\[1000\] {
  z-index: 1000;
}

.min-w-80 {
  min-width: 20rem;
}

.max-w-md {
  max-width: 28rem;
}

.bg-green-100 {
  background-color: #dcfce7;
}

.text-green-600 {
  color: #16a34a;
}

.text-green-700 {
  color: #15803d;
}

.bg-yellow-100 {
  background-color: #fef3c7;
}

.text-yellow-600 {
  color: #d97706;
}

.text-yellow-700 {
  color: #a16207;
}

.bg-orange-100 {
  background-color: #ffedd5;
}

.text-orange-600 {
  color: #ea580c;
}

.text-orange-700 {
  color: #c2410c;
}

.bg-purple-100 {
  background-color: #f3e8ff;
}

.text-purple-600 {
  color: #9333ea;
}

.text-purple-700 {
  color: #7c3aed;
}

.bg-blue-100 {
  background-color: #dbeafe;
}

.text-blue-600 {
  color: #2563eb;
}

.text-blue-700 {
  color: #1d4ed8;
}

.text-blue-200 {
  color: #bfdbfe;
}

.bg-blue-800 {
  background-color: #1e40af;
}

.p-4 {
  padding: 1rem;
}

.border-b {
  border-bottom: 1px solid #e5e7eb;
}

.cursor-pointer {
  cursor: pointer;
}

.hover\:bg-gray-50:hover {
  background-color: #f9fafb;
}

.opacity-50 {
  opacity: 0.5;
}

.cursor-not-allowed {
  cursor: not-allowed;
}

.aspect-video {
  aspect-ratio: 16 / 9;
}

.rounded {
  border-radius: 0.25rem;
}

.mb-3 {
  margin-bottom: 0.75rem;
}

.items-center {
  align-items: center;
}

.justify-center {
  justify-content: center;
}

.font-medium {
  font-weight: 500;
}

.text-sm {
  font-size: 0.875rem;
}

.font-medium {
  font-weight: 500;
}

.text-xs {
  font-size: 0.75rem;
}

.text-gray-600 {
  color: #4b5563;
}

.mt-1 {
  margin-top: 0.25rem;
}

.mt-2 {
  margin-top: 0.5rem;
}

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.text-lg {
  font-size: 1.125rem;
}

.font-semibold {
  font-weight: 600;
}

.text-gray-800 {
  color: #1f2937;
}

.text-sm {
  font-size: 0.875rem;
}

.text-gray-600 {
  color: #4b5563;
}

.mt-1 {
  margin-top: 0.25rem;
}

.divide-y > * + * {
  border-top: 1px solid #e5e7eb;
}

.bg-gray-50 {
  background-color: #f9fafb;
}

.p-4 {
  padding: 1rem;
}

.border-b {
  border-bottom: 1px solid #e5e7eb;
}

.rounded-lg {
  border-radius: 0.5rem;
}

.shadow-2xl {
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.border {
  border: 1px solid #e5e7eb;
}

.min-w-80 {
  min-width: 20rem;
}

.max-w-md {
  max-width: 28rem;
}

/* Additional custom styles */
.gradient-green {
  background: linear-gradient(to right, #14532d, #15803d);
}

.gradient-yellow {
  background: linear-gradient(to right, #713f12, #a16207);
}

.gradient-orange {
  background: linear-gradient(to right, #7c2d12, #c2410c);
}

.gradient-purple {
  background: linear-gradient(to right, #581c87, #7c3aed);
}

.gradient-blue {
  background: linear-gradient(to right, #1e3a8a, #1d4ed8);
}
@media (max-width: 768px) {
  .tify-page-select-button {
    font-size: 70% !important;
  }
  .tify-pagination-button{
    padding:2px !important;
  }
}
/* Street names popup styles */
.nazivi {
  border-collapse: collapse;
  width: 100%;
  margin: 10px 0;
  font-family: Arial, sans-serif;
  font-size: 14px;
}

.nazivi h2 {
  margin: 0 0 10px 0;
  font-size: 16px;
  color: #333;
  border-bottom: 1px solid #ddd;
  padding-bottom: 5px;
}

.nazivi td {
  padding: 5px 8px;
  border-bottom: 1px solid #eee;
  vertical-align: top;
}

.nazivi .godina {
  width: 60px;
  color: #666;
  font-size: 12px;
  text-align: left;
  font-weight: normal;
}

.nazivi b {
  color: #333;
  font-weight: 600;
}

/* Leaflet popup customization for street names */
.leaflet-popup-content-wrapper {
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.leaflet-popup-content {
  margin: 15px;
  line-height: 1.4;
}
/* Pagination button styles */
.tify-pagination-button:not(:disabled):hover {
  background: #8f9d97 !important;
  border-color: #8f9d97 !important;
  color: white !important;
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.tify-pagination-button:disabled:hover {
  transform: none;
  box-shadow: none;
}
.info-button {
  display: inline-flex; /* Allows icon and text to sit side-by-side */
  align-items: center; /* Vertically aligns icon and text */
  gap: 8px; /* Spacing between icon and text */
  padding: 8px 16px;
  border: none;
  border-radius: 4px;
  background-color: #473331; /* Example background color */
  color: white; /* Text and icon color (due to currentColor in SVG) */
  font-family: sans-serif;
  font-size: 16px;
  cursor: pointer;
  transition: background-color 0.3s ease; /* Smooth hover effect */
}

.info-button:hover {
  background-color: #222; /* Darker background on hover */
}

.info-icon {
  width: 20px; /* Adjust icon size */
  height: 20px;
  /* fill: currentColor; - Handled by the HTML attribute, but can be set here */
}

.info-text {
  /* No specific styles needed if currentColor is used for SVG fill */
}

/* Ensure zoom control is properly positioned in bottom left */
.leaflet-control-zoom.leaflet-control-bottomleft {
  margin-bottom: 20px;
  margin-left: 10px;
}