.customize-control-ast-responsive-spacing .customize-control-title { display: inline-block; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-outer-wrapper { display: flex; position: relative; } .customize-control-ast-responsive-spacing .ast-spacing-input-item { margin: 0 2px; -moz-appearance: textfield; } .customize-control-ast-responsive-spacing .ast-spacing-input-item input[type=number] { -moz-appearance: textfield; } .customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-inner-spin-button, .customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-units-screen-wrap { position: relative; top: -5px; left: -10px; display: inline-block; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-btns { position: relative; top: 1px; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-btns > li { display: none; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-btns > li.active { display: inline-block; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type="button"] { padding: 0; cursor: pointer; background: none; border: none; outline: none; width: 100%; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type="button"] > i { font-size: 15px; vertical-align: middle; } .customize-control-ast-responsive-spacing .input-wrapper.ast-spacing-responsive-wrapper { display: inline-flex; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-units { position: absolute; font-size: 12px; line-height: 16px; text-transform: uppercase; font-weight: 500; top: -32px; left: 0; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit { display: inline-block; margin-right: 6px; width: 18px; text-align: center; user-select: none; opacity: 0.6; } .customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit.active { opacity: 1; color: var(--ast-customizer-color-1); } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper { display: none; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li { text-align: center; -webkit-box-flex: 1; -ms-flex: auto; flex: auto; cursor: pointer; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input { text-align: center; display: block; font-size: 12px; padding: 15px 0; width: 100%; height: 28px; border: 1px solid var(--ast-customizer-color-7); border-radius: 3px; box-shadow: none; transition: all 0.3s; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:hover, .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:focus, .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:active { border-color: #1e8cbe; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li .ast-spacing-connected { color: #1e8cbe; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper.active { display: flex; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper span.ast-spacing-title { text-transform: uppercase; font-size: 10px; color: var(--ast-customizer-color-6); } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link { order: 2; margin-right: 2px; margin-top: 4px; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .dashicons { padding: 2px 0; font-size: 12px; line-height: 28px; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .ast-spacing-connected { display: none; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-disconnected { display: none; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-connected { display: block; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link span { width: 100%; height: 32px; line-height: 28px; font-size: 14px; border-radius: 0 3px 3px 0; background-color: transparent; } .customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link svg { pointer-events: none; } .customize-control-ast-responsive-spacing .ast-spacing-wrapper > li:nth-child(2) { margin-right: 0; } /* 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; }