.ast-checkout-labels-as-placeholders form #customer_details .form-row{position:relative}.ast-checkout-labels-as-placeholders form #customer_details .form-row label{-webkit-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;position:absolute;transition:all .2s ease-out;font-size:12px;margin-top:.5em;padding:0 1.02em;line-height:1.625;opacity:0}.ast-checkout-labels-as-placeholders form #customer_details .form-row.ast-float-label label{opacity:1}.ast-checkout-labels-as-placeholders form #customer_details .form-row.ast-float-label #billing_address_2,.ast-checkout-labels-as-placeholders form #customer_details .form-row.ast-float-label #shipping_address_2{padding:.75em .8em}.ast-checkout-labels-as-placeholders form #customer_details .form-row .wc-terms-and-conditions label,.ast-checkout-labels-as-placeholders form #customer_details .form-row fieldset label{position:relative;opacity:1;line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem;padding:0;pointer-events:auto}.ast-checkout-labels-as-placeholders form #customer_details .form-row label.checkbox{position:relative;opacity:1;line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem;padding:0;pointer-events:auto}.ast-checkout-labels-as-placeholders form input[type=email],.ast-checkout-labels-as-placeholders form input[type=number],.ast-checkout-labels-as-placeholders form input[type=password],.ast-checkout-labels-as-placeholders form input[type=tel],.ast-checkout-labels-as-placeholders form input[type=text],.ast-checkout-labels-as-placeholders form select,.ast-checkout-labels-as-placeholders form textarea{padding:.75em .8em;transition:all .2s ease;box-sizing:border-box;font-size:16px;line-height:normal}.ast-checkout-labels-as-placeholders form .ast-float-label input[type=email],.ast-checkout-labels-as-placeholders form .ast-float-label input[type=number],.ast-checkout-labels-as-placeholders form .ast-float-label input[type=password],.ast-checkout-labels-as-placeholders form .ast-float-label input[type=tel],.ast-checkout-labels-as-placeholders form .ast-float-label input[type=text],.ast-checkout-labels-as-placeholders form .ast-float-label select,.ast-checkout-labels-as-placeholders form .ast-float-label textarea{padding:1.3em .8em .2em .8em} /* Focus Management Styles - WCAG 2.1 Compliance */ /* Added for keyboard accessibility and screen reader support */ /* Button Focus Styles */ .hvac-button:focus, .hvac-content .button:focus, .hvac-content button:focus, .hvac-content input[type="submit"]:focus, .hvac-email-submit:focus, .hvac-filter-submit:focus, .hvac-certificate-actions button:focus, .hvac-certificate-actions a:focus { outline: 2px solid #005fcc; outline-offset: 2px; box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.2); border-radius: 4px; } /* Input Focus Styles */ .hvac-form-input:focus, .hvac-content input[type="text"]:focus, .hvac-content input[type="email"]:focus, .hvac-content input[type="password"]:focus, .hvac-content input[type="url"]:focus, .hvac-content textarea:focus, .hvac-content select:focus, .hvac-email-form-row input:focus, .hvac-email-form-row textarea:focus, .hvac-filter-group input:focus, .hvac-filter-group select:focus { outline: 2px solid #005fcc; outline-offset: 2px; border-color: #005fcc; box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.2); } /* Link Focus Styles */ .hvac-content a:focus, .hvac-event-link:focus, .hvac-certificate-link:focus, .hvac-attendee-profile-icon:focus, .hvac-dashboard-nav a:focus, .hvac-email-navigation a:focus { outline: 2px solid #005fcc; outline-offset: 2px; text-decoration: underline; background-color: rgba(0, 95, 204, 0.1); border-radius: 2px; } /* Interactive Element Focus Styles */ .hvac-attendee-checkbox:focus, .hvac-select-all-container input[type="checkbox"]:focus, .hvac-modal-close:focus, .hvac-certificate-table tr:focus { outline: 2px solid #005fcc; outline-offset: 2px; box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.2); } /* High Contrast Mode Support */ @media (prefers-contrast: high) { .hvac-content *:focus { outline: 3px solid #000000; outline-offset: 2px; background-color: #ffff00; color: #000000; } } /* Focus-visible polyfill support */ /* Reset focus for mouse users while preserving keyboard accessibility */ .js-focus-visible :focus:not(.focus-visible) { outline: none; box-shadow: none; } /* Ensure focus is visible for keyboard users */ .js-focus-visible .focus-visible { outline: 2px solid #005fcc; outline-offset: 2px; }