@tailwind base; @tailwind components; @tailwind utilities; /* Next.js error overlay styles */ [data-nextjs-dialog-backdrop] { position: fixed; inset: 0; background-color: rgba(0, 0, 0, 0.5); z-index: 9999; } /* Prevent white flash on admin pages */ @layer base { html { background-color: rgb(249 250 251); } html.dark { background-color: rgb(17 24 39); } body { @apply bg-gray-50 dark:bg-gray-900 transition-none; } /* Disable transitions on page load to prevent flash */ .no-transitions * { transition: none !important; } } /* Shimmer animation for sale banner */ @keyframes shimmer { 0% { transform: translateX(-100%); } 100% { transform: translateX(200%); } } .animate-shimmer { animation: shimmer 3s ease-in-out infinite; } /* Safari form styling fixes */ @layer base { /* Remove Safari's default styling for form inputs */ input[type="text"], input[type="email"], input[type="url"], input[type="tel"], input[type="number"], input[type="password"], input[type="search"], select, textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; } /* Fix Safari select arrow */ select { background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e"); background-repeat: no-repeat; background-position: right 0.7rem center; background-size: 1em; padding-right: 2.5rem; } /* Dark mode select arrow */ .dark select { background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d1d5db' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e"); } /* Ensure consistent border radius on iOS */ input, select, textarea { border-radius: 0.375rem; } /* Remove iOS zoom on focus */ @media screen and (max-width: 768px) { input[type="text"], input[type="email"], input[type="url"], input[type="tel"], input[type="number"], input[type="password"], input[type="search"], select, textarea { font-size: 16px; } } }