/* Theme Picker Styles */
.theme-picker {
  position: fixed;
  top: 50%;
  right: -170px; /* hidden off-screen, ~15% of width visible */
  transform: translateY(-50%);
  width: 200px;
  background: rgba(255, 255, 255, 0.85);
  color: #333;
  backdrop-filter: blur(12px);
  border-radius: 12px 0 0 12px;
  padding: 0.75rem 1rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  font-family: 'Inter', sans-serif;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  transition: right 0.3s ease;
}
.theme-picker.open { right: 0; }
.theme-picker .handle {
  position: absolute;
  left: -40px; /* handle peeks out of hidden picker */
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  cursor: pointer;
  z-index: 10000;
}
.theme-picker input[type="color"] {
  border: none;
  width: 32px;
  height: 32px;
  padding: 0;
  border-radius: 6px;
  cursor: pointer;
}
.theme-picker label {
  font-size: 0.9rem;
  color: #333;
}
.swatch-row {
  display: flex;
  gap: 0.4rem;
  margin-top: 0.4rem;
}
.swatch {
  width: 24px;
  height: 24px;
  border-radius: 4px;
  cursor: pointer;
  border: 2px solid transparent;
}
.swatch.active { border-color: #000; }
