/**
 * Safari/Mac — Backdrop, Animation, Scrolling, Form, Flex, Touch & Color Fixes
 */

/* Safari backdrop-filter fix */
.glass-card, .glass-sticky-bar, [class*="backdrop-blur"], [class*="backdrop-filter"] {
  -webkit-backdrop-filter: blur(12px) saturate(150%); backdrop-filter: blur(12px) saturate(150%);
  -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0);
}

/* Smooth animations on Mac */
.cube, .floating-cube, [class*="animate-"], [class*="transition"] {
  -webkit-transform: translateZ(0); transform: translateZ(0);
  -webkit-backface-visibility: hidden; backface-visibility: hidden;
  -webkit-perspective: 1000px; perspective: 1000px;
}

/* Smooth scrolling for Mac */
html { -webkit-overflow-scrolling: touch; scroll-behavior: smooth; }

/* Fix sticky positioning on Safari */
.sticky, [class*="sticky"] { position: -webkit-sticky; position: sticky; }

/* Fix select appearance on Safari */
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

/* Fix input zoom on mobile Safari */
@media screen and (max-width: 768px) {
  input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], select, textarea {
    font-size: 16px !important;
  }
}

/* Safari flexbox gap fallback */
@supports not (gap: 1rem) {
  .flex > * + * { margin-left: 1rem; }
  .flex-wrap > * { margin: 0.5rem; }
}

/* Disable hover effects on touch devices but keep for Mac trackpad */
@media (hover: hover) and (pointer: fine) {
  .hover\:scale-105:hover { -webkit-transform: scale(1.05); transform: scale(1.05); }
}

/* P3 color space support for Mac displays */
@supports (color: color(display-p3 1 1 1)) {
  :root { --accent-400: color(display-p3 0.49 0.65 0.96); }
}
