/* Custom rules that Tailwind utilities can't express */

[x-cloak] { display: none !important; }

body {
  font-family: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, system-ui, 'Apple SD Gothic Neo', 'Noto Sans KR', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.font-serif {
  font-family: 'Cormorant Garamond', 'Pretendard Variable', serif;
  letter-spacing: 0.01em;
}

/* Subtle elevation on product card hover */
.product-card {
  transition: box-shadow 0.4s ease, transform 0.4s ease;
}
.product-card:hover {
  box-shadow: 0 24px 60px -20px rgba(0, 0, 0, 0.25), 0 8px 24px -12px rgba(183, 110, 121, 0.18);
  transform: translateY(-4px);
}

/* Marquee */
@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.animate-marquee {
  animation: marquee 35s linear infinite;
}

/* Selection */
::selection {
  background: #B76E79;
  color: #fff;
}

/* Scrollbar (webkit) */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: #ddd; border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: #B76E79; }

/* Focus visible — accessibility */
button:focus-visible,
a:focus-visible,
input:focus-visible {
  outline: 2px solid #B76E79;
  outline-offset: 2px;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .product-card,
  .animate-marquee,
  * {
    animation: none !important;
    transition: none !important;
  }
}
