/* Chrome Browser Header Compatibility Fixes */

/* Chrome-specific header spacing and gap fixes */
@supports (-webkit-appearance: none) {
    /* Chrome-specific header adjustments */
    header {
        /* Fix gap issues in Chrome */
        min-height: 70px !important;
        box-sizing: border-box !important;
        -webkit-box-sizing: border-box !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        
        /* Chrome-specific padding adjustments */
        padding: 12px 32px !important;
        margin: 0 !important;
        
        /* Fix for Chrome's backdrop-filter rendering */
        -webkit-backdrop-filter: blur(12px) !important;
        backdrop-filter: blur(12px) !important;
        
        /* Chrome-specific background fix */
        background: rgba(255, 255, 255, 0.95) !important;
        -webkit-background-clip: padding-box !important;
        background-clip: padding-box !important;
    }
    
    /* Chrome navigation spacing fixes */
    nav {
        display: flex !important;
        align-items: center !important;
        gap: 24px !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Chrome nav link spacing */
    nav a {
        display: inline-block !important;
        margin: 0 !important;
        padding: 8px 16px !important;
        line-height: 1.4 !important;
        white-space: nowrap !important;
        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;
    }
    
    /* Chrome logo positioning fix */
    header img {
        height: 42px !important;
        width: auto !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
    }
    
    /* Chrome mobile menu toggle fix */
    .mobile-menu-toggle {
        display: none !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        width: 44px !important;
        height: 44px !important;
        padding: 8px !important;
        margin: 0 !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
    }
    
    /* Chrome hamburger line spacing */
    .hamburger-line {
        display: block !important;
        width: 24px !important;
        height: 2px !important;
        background: var(--color-text) !important;
        margin: 3px 0 !important;
        transition: all 0.3s ease !important;
        -webkit-transition: all 0.3s ease !important;
    }
}

/* Edge Browser Header Compatibility (keep consistent) */
@supports (-ms-ime-align: auto) {
    header {
        /* Match Chrome spacing for consistency */
        padding: 12px 32px !important;
        min-height: 70px !important;
        box-sizing: border-box !important;
    }
    
    nav {
        gap: 24px !important;
    }
    
    nav a {
        padding: 8px 16px !important;
    }
}

/* Firefox compatibility fixes */
@-moz-document url-prefix() {
    header {
        padding: 12px 32px !important;
        min-height: 70px !important;
        box-sizing: border-box !important;
    }
    
    nav {
        gap: 24px !important;
    }
    
    nav a {
        padding: 8px 16px !important;
    }
}

/* Safari compatibility fixes */
@supports (-webkit-touch-callout: none) {
    header {
        /* Safari-specific header fixes */
        -webkit-transform: translateZ(0) !important;
        transform: translateZ(0) !important;
        will-change: transform !important;
        
        /* Safari spacing consistency */
        padding: 12px 32px !important;
        min-height: 70px !important;
        box-sizing: border-box !important;
    }
    
    nav {
        gap: 24px !important;
        -webkit-transform: translateZ(0) !important;
        transform: translateZ(0) !important;
    }
    
    nav a {
        padding: 8px 16px !important;
        -webkit-font-smoothing: antialiased !important;
    }
}

/* Mobile browser header fixes */
@media (max-width: 768px) {
    @supports (-webkit-appearance: none) {
        /* Chrome mobile header */
        header {
            padding: 8px 16px !important;
            min-height: 60px !important;
            flex-wrap: nowrap !important;
        }
        
        nav {
            gap: 16px !important;
        }
        
        nav a {
            padding: 6px 12px !important;
            font-size: 14px !important;
        }
        
        .mobile-menu-toggle {
            display: flex !important;
        }
    }
}

/* Webkit-specific gap fixes for Chrome */
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {
    /* Chrome-specific selector */
    header {
        /* Force consistent spacing in Chrome */
        display: -webkit-flex !important;
        display: flex !important;
        -webkit-justify-content: space-between !important;
        justify-content: space-between !important;
        -webkit-align-items: center !important;
        align-items: center !important;
        
        /* Remove any unwanted gaps */
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        border-spacing: 0 !important;
        
        /* Chrome background rendering fix */
        -webkit-background-composite: source-over !important;
    }
    
    nav {
        /* Chrome nav gap consistency */
        display: -webkit-flex !important;
        display: flex !important;
        -webkit-gap: 24px !important;
        gap: 24px !important;
        -webkit-align-items: center !important;
        align-items: center !important;
        
        /* Remove margins that cause gaps */
        margin: 0 !important;
        padding: 0 !important;
    }
    
    nav a {
        /* Chrome link spacing */
        -webkit-box-sizing: border-box !important;
        box-sizing: border-box !important;
        display: -webkit-inline-box !important;
        display: inline-block !important;
        vertical-align: middle !important;
    }
}

/* Force consistency across all browsers */
* {
    -webkit-box-sizing: border-box !important;
    -moz-box-sizing: border-box !important;
    box-sizing: border-box !important;
}

/* Header container force consistent rendering */
header * {
    -webkit-box-sizing: border-box !important;
    -moz-box-sizing: border-box !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    vertical-align: baseline !important;
}

/* Navigation specific cross-browser fixes */
nav a {
    /* Ensure consistent link rendering across browsers */
    text-rendering: optimizeLegibility !important;
    -webkit-font-feature-settings: "liga" !important;
    font-feature-settings: "liga" !important;
    -webkit-text-decoration-skip: ink !important;
    text-decoration-skip-ink: auto !important;
}

/* Remove any browser-specific default spacing */
header, nav, nav a {
    -webkit-margin-before: 0 !important;
    -webkit-margin-after: 0 !important;
    -webkit-margin-start: 0 !important;
    -webkit-margin-end: 0 !important;
    -webkit-padding-before: 0 !important;
    -webkit-padding-after: 0 !important;
    -webkit-padding-start: 0 !important;
    -webkit-padding-end: 0 !important;
}

/* High DPI display fixes for header spacing */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    header {
        /* Ensure crisp rendering on high DPI displays */
        -webkit-transform: translateZ(0) !important;
        transform: translateZ(0) !important;
        backface-visibility: hidden !important;
        -webkit-backface-visibility: hidden !important;
    }
    
    nav a {
        /* Crisp text rendering on retina displays */
        -webkit-font-smoothing: subpixel-antialiased !important;
        -moz-osx-font-smoothing: auto !important;
    }
}

/* Chrome-specific chat button positioning fixes */
@supports (-webkit-appearance: none) {
    .smart-chat-btn,
    .smart-chat-toggle,
    #smartChatButton,
    div.smart-chat-btn,
    div#smartChatButton {
        position: fixed !important;
        bottom: 20px !important;
        right: 20px !important;
        z-index: 999999 !important;
        -webkit-transform: translateZ(0) !important;
        transform: translateZ(0) !important;
        will-change: transform !important;
        backface-visibility: hidden !important;
        -webkit-backface-visibility: hidden !important;
    }
    
    /* Chrome-specific icon centering */
    .smart-chat-btn .chat-icon,
    div.smart-chat-btn .chat-icon {
        display: flex !important;
        -webkit-box-pack: center !important;
        -webkit-box-align: center !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        height: 100% !important;
    }
}

/* Firefox-specific chat button fixes */
@-moz-document url-prefix() {
    .smart-chat-btn,
    div.smart-chat-btn {
        position: fixed !important;
        bottom: 20px !important;
        right: 20px !important;
        z-index: 999999 !important;
    }
}