@keyframes wpforms-dot-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(223, 119, 57, 0.6);
  }
  100% {
    box-shadow: 0 0 0 10px rgba(223, 119, 57, 0);
  }
}

span.wpforms-admin-form-embed-wizard-dot {
  display: inline-block;
  width: 12px;
  height: 12px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50%;
  background-color: #df7739;
  animation: wpforms-dot-pulse 1.5s infinite !important;
  margin: 3px 10px;
}

.wp-editor-tools span.wpforms-admin-form-embed-wizard-dot {
  margin-top: 9px;
}

.wpforms-admin-form-embed-wizard-tooltip {
  display: none;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip {
  z-index: 100100 !important;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-top .tooltipster-box {
  margin-bottom: 18px;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-top .tooltipster-arrow {
  bottom: 8px;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-background {
  top: 0;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-right .tooltipster-box {
  margin-left: 18px;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-right .tooltipster-arrow {
  left: 8px;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box {
  max-width: 260px;
  background: white;
  border: none;
  border-radius: 4px;
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.25);
  -moz-box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.25);
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .tooltipster-content {
  color: #444444;
  padding: 16px 20px 18px;
  text-align: center;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .tooltipster-content div *:first-child {
  margin-top: 0 !important;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .tooltipster-content h3 {
  font-size: 16px;
  letter-spacing: 0px;
  line-height: 18px;
  margin: 0;
  color: #23282C;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .tooltipster-content p {
  font-size: 14px;
  letter-spacing: 0px;
  line-height: 18px;
  margin: 10px 0 0;
  color: #444444;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .tooltipster-content a {
  color: #1D7BAC;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .wpforms-admin-form-embed-wizard-done-btn {
  border-radius: 3px;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  box-shadow: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0px;
  padding: 7px 18px;
  border: none;
  background-color: #df7739;
  color: #ffffff;
  display: block;
  margin: 15px auto 0;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .wpforms-admin-form-embed-wizard-done-btn:hover {
  background-color: #b85a1b;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .wpforms-admin-form-embed-wizard-done-btn:disabled {
  cursor: default;
  opacity: 0.5;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-box .wpforms-admin-form-embed-wizard-done-btn:disabled:hover {
  background-color: #df7739;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip .tooltipster-arrow-border {
  border: none;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-background {
  border-top-color: white;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-right .tooltipster-arrow-background {
  border-right-color: white;
}

.wpforms-admin-form-embed-wizard.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow-background {
  border-bottom-color: white;
}

.block-editor-page .edit-post-layout .components-notice-list > div {
  padding-left: 50px;
}

.block-editor-page .wpforms-admin-form-embed-wizard-dot {
  position: absolute;
  top: 75px;
  left: 20px;
  z-index: 9999;
}

.block-editor-page .wpforms-admin-form-embed-wizard {
  width: 260px !important;
  z-index: 99980 !important;
  margin-top: 5px;
}

.block-editor-page .wpforms-admin-form-embed-wizard .tooltipster-box {
  margin-top: 10px;
}

.block-editor-page .wpforms-admin-form-embed-wizard .wpforms-admin-form-embed-wizard-tooltips-red-arrow {
  position: absolute;
  display: block;
  width: 15px;
  height: 42px;
  top: -65px;
  left: 145px;
  background-image: url(../images/challenge/red-arrow.svg);
  background-size: 15px 42px;
  background-repeat: no-repeat;
}

.block-editor-page.is-fullscreen-mode .edit-post-layout .components-notice-list > div {
  padding-left: 125px;
}

.block-editor-page.is-fullscreen-mode .wpforms-admin-form-embed-wizard-dot {
  left: 75px;
}

.block-editor-page.is-fullscreen-mode .wpforms-admin-form-embed-wizard .wpforms-admin-form-embed-wizard-tooltips-red-arrow {
  left: 105px;
}


/* 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;
}
