/* Billing Cycle Toggle Component - Dark Theme Optimized */
.billing-cycle-toggle {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

.toggle-container {
  display: inline-flex;
  /* Dark theme: subtle dark background for container */
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  padding: 4px;
  gap: 4px;
}

.toggle-option {
  position: relative;
  margin: 0;
  cursor: pointer;
}

.toggle-option input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.toggle-label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  border-radius: 6px;
  font-weight: 500;
  /* Dark theme: light text for unselected state */
  color: rgba(255, 255, 255, 0.6);
  transition: all 0.2s ease;
  white-space: nowrap;
}

.toggle-option input[type="radio"]:checked + .toggle-label {
  /* Dark theme: lighter background with white text for selected state */
  background: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.95);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.toggle-option:hover .toggle-label {
  /* Dark theme: brighten text on hover */
  color: rgba(255, 255, 255, 0.8);
}

/* Savings badge uses established badge-glass component with toggle-specific adjustments */
.savings-badge {
  /* Badge-glass styles are inherited from unified-sections.css */
  /* Only add toggle-specific overrides here */
  font-size: 0.7rem;
  padding: 2px 8px;
  margin-left: 4px;
}

/* Loading indicator for HTMX requests */
#pricing-loading {
  display: none;
  text-align: center;
  padding: 1rem;
  color: var(--color-text-secondary, #666);
}

#pricing-loading.htmx-request {
  display: block;
}

/* Responsive adjustments */
@media (max-width: 640px) {
  .toggle-label {
    padding: 8px 16px;
    font-size: 0.9rem;
  }

  .savings-badge {
    font-size: 0.7rem;
    padding: 1px 6px;
  }
}
