/* ===== CUSTOM HAMMER CURSOR ===== */

/* Çekiç SVG cursor - Normal durum (Beyaz dış çizgi ile) */
body, html {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none'%3E%3Cg transform='scale(-1 1) translate(-24 0)'>%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 2 2, auto;
}

/* Tıklanabilir elementler için işaretçi (Sarı çekiç, beyaz dış çizgi) */
a, button, input[type="submit"], input[type="button"], .btn, .clickable {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none'%3E%3Cg transform='scale(-1 1) translate(-24 0)'>%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' stroke='%23ffffff' stroke-width='4.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' stroke='%23ffffff' stroke-width='4.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' stroke='%23ffffff' stroke-width='4.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' stroke='%23ffd400' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' stroke='%23ffd400' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' stroke='%23ffd400' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 2 2, pointer;
}

/* Çekiç vurma animasyonu için keyframes */
@keyframes hammer-hit {
  0% {
    transform: rotate(0deg) translateY(0);
  }
  50% {
    transform: rotate(-25deg) translateY(-3px);
  }
  100% {
    transform: rotate(0deg) translateY(0);
  }
}

/* Active state - Tıklama sırasında (Dolu sarı çekiç, beyaz dış çizgi) */
body.hammer-active *,
body.hammer-active {
  /* Döndürülmüş (vurur pozisyon) çekiç SVG */
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cg transform='scale(-1 1) translate(-24 0) rotate(30 12 12)'>%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' stroke='%23ffffff' stroke-width='4' fill='%23ffffff' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' stroke='%23ffffff' stroke-width='4' fill='%23ffffff' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' stroke='%23ffffff' stroke-width='4' fill='%23ffffff' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' fill='%23ffd400' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' fill='%23ffd400' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' fill='%23ffd400' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 8 14, auto !important;
}

/* Çekiç vurma efekti için wrapper */
.hammer-hit-effect {
  position: fixed;
  pointer-events: none;
  z-index: 99999;
  animation: hammer-hit 0.3s ease-out;
}

/* Tıklama dalgası efekti */
@keyframes ripple-effect {
  0% {
    transform: scale(0);
    opacity: 1;
  }
  100% {
    transform: scale(4);
    opacity: 0;
  }
}

.click-ripple {
  position: fixed;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 212, 0, 0.6) 0%, rgba(10, 29, 59, 0.3) 70%, transparent 100%);
  width: 40px;
  height: 40px;
  pointer-events: none;
  animation: ripple-effect 0.6s ease-out;
  z-index: 99998;
  transform-origin: center;
}

/* Çekiç çarpma işareti - "BAM!" efekti */
@keyframes bam-effect {
  0% {
    transform: scale(0) rotate(-15deg);
    opacity: 0;
  }
  50% {
    transform: scale(1.2) rotate(5deg);
    opacity: 1;
  }
  100% {
    transform: scale(1) rotate(0deg);
    opacity: 0;
  }
}

.hammer-impact {
  position: fixed;
  pointer-events: none;
  z-index: 99999;
  font-weight: 900;
  font-size: 24px;
  color: #ffd400;
  text-shadow: 
    2px 2px 0 #0a1d3b,
    -1px -1px 0 #0a1d3b,
    1px -1px 0 #0a1d3b,
    -1px 1px 0 #0a1d3b;
  animation: bam-effect 0.5s ease-out;
}

/* Input ve textarea için text cursor */
input[type="text"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="tel"],
textarea,
[contenteditable="true"] {
  cursor: text !important;
}

/* Yüklenme durumu için bekle cursoru */
.loading,
body.loading * {
  cursor: wait !important;
}

/* Sürüklenebilir elementler için (Beyaz dış çizgi) */
.draggable,
[draggable="true"] {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m15 12-8.5 8.5c-.83.83-2.17.83-3 0 0 0 0 0 0 0a2.12 2.12 0 0 1 0-3L12 9' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.64 15 22 10.64' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 2 2, move;
}

/* Carousel/slider için grab cursor */
.product-showcase {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 11V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v0'/%3E%3Cpath d='M14 10V4a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v2'/%3E%3Cpath d='M10 10.5V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v8'/%3E%3Cpath d='M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15'/%3E%3C/svg%3E") 16 16, grab !important;
}

.product-showcase:active {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='%23ffd400' stroke='%230a1d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 11V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v0'/%3E%3Cpath d='M14 10V4a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v2'/%3E%3Cpath d='M10 10.5V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v8'/%3E%3Cpath d='M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15'/%3E%3C/svg%3E") 16 16, grabbing !important;
}

/* Disable için yasak işareti */
[disabled],
.disabled {
  cursor: not-allowed !important;
}

/* Responsive - Mobilde normal cursor */
@media (max-width: 768px) {
  body, html,
  a, button, input[type="submit"], input[type="button"], .btn, .clickable {
    cursor: auto !important;
  }
  
  .click-ripple,
  .hammer-impact {
    display: none;
  }
}
