/* Safari/iOS Specific Fixes and Compatibility */

/* Prevent iOS Safari from zooming on input focus */
@supports (-webkit-touch-callout: none) {
    input, textarea, select {
        font-size: 16px !important;
    }
}

/* Fix iOS Safari sticky positioning */
.topbar-menu {
    position: -webkit-sticky;
    position: sticky;
}

/* Smooth scrolling for iOS */
* {
    -webkit-overflow-scrolling: touch;
}

/* Fix for iOS Safari bottom bar */
@supports (-webkit-touch-callout: none) {
    .main-content {
        min-height: -webkit-fill-available;
    }

    .login-container {
        height: -webkit-fill-available;
    }
}

/* Better tap highlights for iOS */
a, button, .menu-link, .submenu a {
    -webkit-tap-highlight-color: rgba(240, 116, 0, 0.2);
    -webkit-touch-callout: none;
}

/* Prevent text selection on interactive elements */
.menu-link, .hamburger-btn, .home-btn, .theme-toggle-btn {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Webkit prefixes for transforms (for older Safari) */
.hamburger-btn span,
.home-btn:hover,
.theme-toggle-btn:hover {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

/* Webkit prefixes for transitions */
.topbar-nav,
.submenu,
.menu-link,
.hamburger-btn span {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/* Fix for flexbox in older Safari */
.topbar-menu,
.topbar-left,
.topbar-right,
.topbar-nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

/* Fix flex alignment in Safari */
.topbar-menu {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

/* Prevent rubber band scrolling on body when menu is open */
body.menu-open {
    position: fixed;
    width: 100%;
    overflow: hidden;
}

/* Better scroll behavior for iOS */
.topbar-nav {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
}

/* Fix for SVG rendering in Safari */
svg {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}

/* Smooth animations for Safari */
@media (prefers-reduced-motion: no-preference) {
    * {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}

/* Fix for backdrop-filter on iOS (if needed in future) */
@supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
    .topbar-menu {
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
    }
}

/* Prevent iOS text size adjustment */
html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

/* Better rendering on Retina displays */
@media only screen and (-webkit-min-device-pixel-ratio: 2),
       only screen and (min-device-pixel-ratio: 2),
       only screen and (min-resolution: 192dpi),
       only screen and (min-resolution: 2dppx) {
    body {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}
