/**
 * Sketchy Mode Styles
 * Hand-drawn aesthetic styling for geometry canvas
 */

/* Sketchy labels use handwritten fonts */
.sketchy-label {
  font-family: 'Caveat', 'Comic Neue', 'Architects Daughter', cursive !important;
  font-weight: 600;
}

/* Subtle shadow for sketchy elements */
.sketchy {
  filter: drop-shadow(0 0 0.3px rgba(0, 0, 0, 0.08));
}

/* Mode indicator badge */
.geometry-mode-indicator {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  z-index: 100;
  transition: all 0.3s ease;
  cursor: pointer;
  user-select: none;
}

.geometry-mode-indicator.precise {
  background: linear-gradient(135deg, #3b82f6, #1d4ed8);
  color: white;
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.3);
}

.geometry-mode-indicator.sketchy {
  background: linear-gradient(135deg, #f59e0b, #d97706);
  color: white;
  box-shadow: 0 2px 8px rgba(245, 158, 11, 0.3);
  font-family: 'Caveat', cursive;
  font-size: 14px;
}

.geometry-mode-indicator:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Sketchy appear animation */
@keyframes sketchy-appear {
  0% {
    opacity: 0;
    transform: scale(0.97);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.sketchy.animate-in {
  animation: sketchy-appear 0.3s ease-out forwards;
}

/* Toggle button styling */
.sketchy-mode-toggle {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 1000;
}

.sketchy-mode-toggle.precise {
  background: #3b82f6;
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4);
}

.sketchy-mode-toggle.sketchy {
  background: #f59e0b;
  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4);
}

.sketchy-mode-toggle:hover {
  transform: scale(1.08);
}

.sketchy-mode-toggle svg {
  width: 20px;
  height: 20px;
  fill: white;
}
