/**
 * Ajax Search Pro Accessibility Styles
 * 
 * This CSS file provides styling for the accessibility-enhanced buttons
 * while maintaining the visual appearance of the original icons.
 */

/* Accessibility button base styles */
.accessibility-button {
    /* Reset button defaults */
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font: inherit;
    color: inherit;
    cursor: pointer;
    outline: none;
    
    /* Maintain original display and positioning */
    display: inline-block;
    vertical-align: middle;
    
    /* Ensure proper sizing */
    box-sizing: border-box;
    
    /* Remove default button styling */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* Ensure buttons maintain original icon positioning */
.accessibility-button.promagnifier,
.accessibility-button.proclose {
    position: relative;
    z-index: 1;
}

/* Tab order control using CSS */
.accessibility-button.promagnifier {
    /* Ensure search button is focusable in tab order */
    position: relative;
    z-index: 1;
}

.accessibility-button.proclose {
    /* Ensure close button is focusable in tab order */
    position: relative;
    z-index: 1;
}

/* Close button visibility control */
.accessibility-button.proclose.hidden {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Maintain original icon dimensions and spacing */
.accessibility-button .innericon {
    display: block;
}

.accessibility-button .asp_text_button {
    display: block;
}

.accessibility-button .asp_clear {
    display: block;
}


/* Ensure proper alignment in compact mode */
.accessibility-button[class*="hiddend"] {
    display: none !important;
}

/* Maintain responsive behavior */
@media (max-width: 768px) {
    .accessibility-button:focus {
        outline-width: 3px;
        outline-offset: 3px;
    }
}

/* Ensure buttons work properly in different themes */
.ajaxsearchpro .accessibility-button {
    /* Override any theme-specific button styles */
    text-decoration: none;
    text-transform: none;
    letter-spacing: normal;
    word-spacing: normal;
}

/* Ensure proper stacking context */
.accessibility-button {
    position: relative;
    z-index: auto;
}

/* Screen reader only text (for additional context if needed) */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
