/**
 * styles.css — All styles
 * Extracted from production file (tinkle.txt, updated 2 weeks prior)
 */

body {
font-family: 'Kanit', sans-serif;
scroll-behavior: smooth;
cursor: auto;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
a, button, [role="button"], .cursor-pointer {
cursor: pointer !important;
}
.cursor-zoom-in { cursor: zoom-in !important; }
.cursor-zoom-out { cursor: zoom-out !important; }
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

.masonry-grid { columns: 2; column-gap: 1rem; }
@media (min-width: 768px) { .masonry-grid { columns: 3; } }
@media (min-width: 1024px) { .masonry-grid { columns: 4; } }
.masonry-item { break-inside: avoid; margin-bottom: 1rem; }

@keyframes subtle-float {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-4px); }
}
.animate-subtle-float { animation: subtle-float 3s ease-in-out infinite; }

.dashed-line {
background-image: linear-gradient(to right, #d6d3d1 50%, rgba(255,255,255,0) 0%);
background-position: top;
background-size: 15px 2px;
background-repeat: repeat-x;
}

.hide-arrows::-webkit-outer-spin-button,
.hide-arrows::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
.hide-arrows {
-moz-appearance: textfield;
}

input[type="number"], input[type="text"] {
-webkit-user-select: auto;
user-select: auto;
}

@media (max-width: 639px) {
.product-card-title { font-size: 0.875rem; margin-bottom: 0.25rem; }
.product-card-cat { font-size: 0.65rem; margin-bottom: 0.25rem; }
.product-card-button { font-size: 0.65rem; padding: 0.25rem 0.5rem; }
.product-card-img-container { height: 9rem; }
}.scrolling-text-container {
overflow: hidden;
white-space: nowrap;
position: relative;
mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
-webkit-mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
}
.scrolling-text-content {
display: inline-block;
animation: scroll 25s linear infinite;
}

@keyframes scroll {
0% { transform: translateX(0); }
100% { transform: translateX(-50%); }
}

.scrolling-text-content:hover { animation-play-state: paused; }

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-calendar-picker-indicator { opacity: 1; cursor: pointer; }

input[type="date"] { display: flex; align-items: center; }
input[type="date"]::-webkit-datetime-edit { padding: 0; line-height: normal; display: flex; align-items: center; height: 100%; }

@keyframes pop {
0% { transform: scale(0.8); opacity: 0; }
50% { transform: scale(1.1); opacity: 1; }
100% { transform: scale(1); opacity: 1; }
}
.animate-pop { animation: pop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards; }

@keyframes flash {
0% { background-color: rgba(255,255,255,0.8); }
100% { background-color: transparent; }
}
.animate-flash { animation: flash 0.5s ease-out forwards; }
