/* ===== DARK THEME ===== */
body.theme-dark {
  background-color: var(--bg-dark);
  color: var(--text-dark);
  background-image: radial-gradient(circle at 20% 20%, rgba(var(--primary-dark-rgb), 0.4), transparent 50%), radial-gradient(circle at 80% 0%, rgba(var(--secondary-dark-rgb), 0.35), transparent 40%), linear-gradient(145deg, rgba(var(--bg-dark-rgb), 0.95), rgba(var(--bg-dark-alt-rgb), 0.9));
  background-attachment: fixed;
}

.theme-dark .navbar-custom {
  background: linear-gradient(120deg, rgba(var(--bg-dark-rgb), 0.95), rgba(var(--bg-dark-alt-rgb), 0.9));
  border-bottom: 1px solid rgba(var(--accent-dark-rgb), 0.25);
  box-shadow: 0 20px 50px rgba(var(--bg-dark-rgb), 0.55);
}

.theme-dark .brand-logo-dark {
  display: block;
}

.theme-dark .nav-link {
  color: rgba(var(--text-dark-rgb), 0.75) !important;
}

.theme-dark .nav-link:hover,
.theme-dark .nav-link.active {
  color: var(--accent-dark) !important;
}

.theme-dark .navbar-bottom {
  background: linear-gradient(120deg, rgba(var(--bg-dark-rgb), 0.95), rgba(var(--bg-dark-alt-rgb), 0.9));
  border-top: 1px solid rgba(var(--accent-dark-rgb), 0.2);
  box-shadow: 0 10px 40px rgba(var(--bg-dark-rgb), 0.45);
}

.theme-dark .resort-title {
  color: rgba(var(--text-dark-rgb), 0.85);
}

.theme-dark .info-link {
  color: rgba(var(--text-dark-rgb), 0.7);
}

.theme-dark .info-link:hover {
  color: var(--accent-dark);
}

.theme-dark .theme-toggle,
.theme-dark .lang-toggle {
  border: 1px solid rgba(var(--accent-dark-rgb), 0.4);
  color: var(--text-dark);
}

.theme-dark .theme-toggle:hover,
.theme-dark .lang-toggle:hover {
  background: linear-gradient(135deg, rgba(var(--secondary-dark-rgb), 0.35), rgba(var(--primary-dark-rgb), 0.25));
  border-color: rgba(var(--accent-dark-rgb), 0.65);
  color: var(--text-dark);
}

.theme-dark .btn-reserve {
  border: 1px solid rgba(var(--accent-dark-rgb), 0.45);
  color: var(--text-dark);
}

.theme-dark .btn-reserve {
  background: linear-gradient(135deg, rgba(var(--secondary-dark-rgb), 0.35), rgba(var(--bg-dark-alt-rgb), 0.25));
  transition: all 0.3s ease;
}

.theme-dark .btn-reserve:hover {
  background: linear-gradient(135deg, rgba(var(--secondary-dark-rgb), 0.55), rgba(var(--bg-dark-alt-rgb), 0.4));
  border-color: rgba(var(--accent-dark-rgb), 0.9);
  color: var(--text-dark);
  box-shadow: 0 15px 30px rgba(var(--bg-dark-rgb), 0.45);
}

/* Pastikan navbar bottom actions mobile terlihat di dark theme */
@media (max-width: 768px) {
  .theme-dark .navbar-bottom-actions-mobile {
    display: flex !important;
    visibility: visible !important;
  }

  /* Pastikan tombol switcher di mobile terlihat di dark theme */
  .theme-dark .switcher-group-mobile {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .theme-dark .switcher-group-mobile .theme-toggle,
  .theme-dark .switcher-group-mobile .lang-toggle {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

.theme-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23e5d2b8' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.theme-dark .facility-card {
  background: transparent;
  border: none;
  box-shadow: 0 20px 45px rgba(var(--bg-dark-rgb), 0.55);
}

.theme-dark .facility-card:hover {
  box-shadow: 0 10px 30px var(--shadow-dark);
  border: none;
}

.theme-dark .facility-icon {
  color: var(--accent-dark);
}

.theme-dark .service-card {
  background: linear-gradient(145deg, rgba(var(--bg-dark-rgb), 0.85), rgba(var(--bg-dark-alt-rgb), 0.75));
  border: 2px solid rgba(var(--accent-dark-rgb), 0.35);
  box-shadow: 0 18px 40px rgba(var(--bg-dark-rgb), 0.5);
}

.theme-dark .service-icon {
  color: var(--accent-dark);
}

.theme-dark .map-container {
  border-color: rgba(var(--secondary-dark-rgb), 0.4);
}

.theme-dark .contact-icon {
  color: var(--accent-dark);
}

.theme-dark .contact-card a:hover {
  color: var(--accent-dark);
}

.theme-dark .footer {
  background: linear-gradient(135deg, rgba(var(--bg-dark-rgb), 0.97), rgba(var(--bg-dark-alt-rgb), 0.9));
  border-color: rgba(var(--secondary-dark-rgb), 0.35);
  box-shadow: 0 -20px 60px rgba(var(--bg-dark-rgb), 0.6);
}

.theme-dark .social-link {
  color: var(--text-dark);
  border: 2px solid var(--accent-dark);
}

.theme-dark .social-link:hover {
  background: var(--accent-dark);
  color: var(--bg-dark);
  transform: scale(1.1);
}
