html,
body {
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  background: #080808;
  overflow: hidden;
  position: fixed;
  touch-action: none;
}

canvas {
  display: block;
  image-rendering: pixelated;
}

h1 {
  position: fixed;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  color: #90cc28;
  text-align: center;
  font-family: monospace;
  font-weight: normal;
  font-size: 10px;
  z-index: 999;
  margin: 0;
}

a {
  color: #f4b0a0;
}

#controls-container {
  position: fixed;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 10px;
  z-index: 999;
}

#size-slider {
  pointer-events: auto;
}

#resolution-display {
  color: #f0ecd8;
  font-family: monospace;
  font-size: 8px;
  pointer-events: none;
}

#shutter-button {
  position: fixed;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  width: 120px;
  height: 80px;
  background: radial-gradient(
    circle at center,
    #f0ecd8 0%,
    #f4b0a0 35%,
    #90cc28 68%,
    #206818 100%
  );
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow:
    inset 0 0 20px rgba(224, 80, 48, 0.3),
    0 0 30px rgba(144, 204, 40, 0.3);
  z-index: 1000;
  filter: blur(4px);
}

#shutter-button:hover {
  background: radial-gradient(
    circle at center,
    rgba(240, 236, 216, 0.85) 0%,
    rgba(244, 176, 160, 0.9) 35%,
    rgba(144, 204, 40, 0.95) 68%,
    rgba(32, 104, 24, 0.9) 100%
  );
  box-shadow:
    inset 0 0 20px rgba(224, 80, 48, 0.5),
    0 0 40px rgba(144, 204, 40, 0.5);
}

#shutter-button:active {
  transform: translateX(-50%) scale(0.95);
  background: radial-gradient(
    circle at center,
    rgba(240, 236, 216, 0.85) 0%,
    rgba(244, 176, 160, 0.8) 35%,
    rgba(144, 204, 40, 0.95) 68%,
    rgba(32, 104, 24, 0.9) 100%
  );
  box-shadow:
    inset 0 0 10px rgba(224, 80, 48, 0.3),
    0 0 20px rgba(144, 204, 40, 0.2);
  filter: blur(10px);
}

#flip-button {
  position: fixed;
  bottom: 50px;
  left: calc(50% - 150px);
  width: 50px;
  height: 50px;
  cursor: pointer;
  display: none;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  transition: all 0.2s ease;
  /* box-shadow: 0 0 15px rgba(62, 88, 121, 0.4); */
  z-index: 1001;
  pointer-events: auto;
}

/* #flip-button:hover {
  background: rgba(62, 88, 121, 0.8);
  box-shadow: 0 0 25px rgba(62, 88, 121, 0.6);
} */

#flip-button:active {
  transform: scale(0.95);
}

@media (max-width: 600px) {
  #flip-button {
    display: flex;
  }
}

#lens-selector {
  position: fixed;
  bottom: 140px;
  left: 50%;
  transform: translateX(-50%);
  display: none;
  gap: 12px;
  z-index: 1001;
}

.lens-btn {
  background: none;
  border: none;
  color: #48a8c8;
  font-family: monospace;
  font-size: 10px;
  cursor: pointer;
  padding: 4px 8px;
  transition: color 0.2s ease;
}

.lens-btn:hover {
  color: #f0ecd8;
}

.lens-btn.active {
  color: #f4b0a0;
}

.lens-btn.disabled {
  color: #184c88;
  cursor: default;
}
