/* Theme variables */
:root {
  /* Light theme (default) */
  --primary-color: rgba(153, 18, 68, 1);
  --secondary-color: rgba(55, 198, 255, 1);
  --text-color: #1a202c;
  --text-light: #4a5568;
  --background-color: #ffffff;
  --glass-bg: rgba(255, 255, 255, 0.8);
  --glass-border: rgba(255, 255, 255, 0.2);
  --glass-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  --hover-transform: translateY(-2px) scale(1.01);
  --active-transform: translateY(1px) scale(0.99);
  --theme-transition: all 0.3s ease;
  --gradient-start: #ffb6c1;
  --gradient-end: #87ceeb;
}

/* Dark theme */
[data-theme="dark"] {
  --primary-color: rgba(255, 82, 145, 1);
  --secondary-color: rgba(64, 206, 255, 1);
  --text-color: #f7fafc;
  --text-light: #e2e8f0;
  --background-color: #0f172a;
  --glass-bg: rgba(15, 23, 42, 0.9);
  --glass-border: rgba(255, 255, 255, 0.08);
  --glass-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
  --gradient-start: #ff527f;
  --gradient-end: #40ceff;
}

/* Theme controls container */
.theme-controls {
  display: flex;
  margin-left: auto;
  gap: 0.5rem;
}

/* Theme toggle button */
.theme-toggle {
  padding: 0.75rem;
  border-radius: 12px;
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  color: var(--primary-color);
  cursor: pointer;
  backdrop-filter: blur(5px);
  transition: var(--theme-transition);
  font-size: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  box-shadow: var(--glass-shadow);
  position: relative;
  z-index: 1000;
}

.theme-toggle i {
  color: var(--primary-color);
  transition: var(--theme-transition);
}

.theme-toggle:hover {
  background: var(--primary-color);
  transform: var(--hover-transform);
}

.theme-toggle:hover i {
  color: var(--background-color);
}

.theme-toggle:active {
  transform: var(--active-transform);
}

[data-theme="dark"] .theme-toggle i {
  color: var(--secondary-color);
}

[data-theme="dark"] .theme-toggle:hover {
  background: var(--secondary-color);
}

[data-theme="dark"] .theme-toggle:hover i {
  color: var(--background-color);
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .theme-toggle {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    font-size: 0.875rem;
  }
}
