/* Hide Apple Pay option by default */
.payment-options .gchoice:has(input[value="Apple Pay"]) {
    display: none !important;
}

/* Show Apple Pay when enabled */
.payment-options .gfield_radio .gchoice.apple-pay-enabled {
    display: block !important;
}

.apple-pay-button {
    display: none; /* Hide by default */
    appearance: -apple-pay-button;
    -webkit-appearance: -apple-pay-button;
    -apple-pay-button-type: donate;
    margin: 0;
    max-width: 350px;
    
    /* Apple Pay button custom properties */
    --apple-pay-button-width: 200px;
    --apple-pay-button-height: 40px;
    --apple-pay-button-border-radius: 10px;
    --apple-pay-button-padding: 6px 25px;
    --apple-pay-button-box-sizing: border-box;
    
    /* Use the custom properties */
    width: var(--apple-pay-button-width);
    height: var(--apple-pay-button-height);
    padding: var(--apple-pay-button-padding);
    border-radius: var(--apple-pay-button-border-radius);
    box-sizing: var(--apple-pay-button-box-sizing);
}

/* Visual hiding class for when Apple Pay is active */
.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Show button when Apple Pay is available */
.apple-pay-available .apple-pay-button {
    display: inline-block;
}

.apple-pay-button:focus {
    outline: none;
    box-shadow: 0 0 0 2px #0073aa;
}

.gform_wrapper .apple-pay-button-container {
    margin-bottom: 15px;
}



.apple-pay-error {
    color: #dc3232;
    padding: 10px;
    margin: 10px 0;
    border-left: 4px solid #dc3232;
    background: #fff;
}

.apple-pay-message {
    padding: 10px;
    margin: 10px 0;
    border-left: 4px solid #46b450;
    background: #fff;
}

.dashicons-apple:before {
    font-family: dashicons;
    content: "\f120";
}


/* Optional: Different button styles */
.apple-pay-button.white {
    -apple-pay-button-style: white;
}

.apple-pay-button.white-outline {
    -apple-pay-button-style: white-outline;
}

.form_button.gform-apple-pay-enabled {
    display: none !important;
}

i.gform-icon.gform-icon--apple {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
}

i.gform-icon.gform-icon--apple:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTEuMDMgOC4yNGMtLjAxLTEuMi41NC0yLjEgMS42NC0yLjgtLjYyLS45LTEuNTYtMS40LTIuOC0xLjUtMS4yLS4xLTIuNS43LTIuOS43LS41IDAtMS42LS42LTIuNS0uNi0xLjkgMC0zLjggMS41LTMuOCA0LjQgMCAuOS4yIDEuOC41IDIuNy40IDEuMiAyIDQuMiAzLjUgNC4yLjguMSAxLjQtLjYgMi41LS42IDEuMSAwIDEuNi42IDIuNS42IDEuNiAwIDMtMi43IDMuNC00LS45LS40LTEuNS0xLjUtMS41LTEuN3ptLTEuOS01LjRjMS0xLjEuOC0yLjYuOC0yLjYtLjguMS0xLjcuOS0yLjIgMS43LS42LjktLjcgMi4xLS42IDIuNi45LjEgMS42LS41IDItMS43eiIvPjwvc3ZnPg==");
}

.gform-apple-pay-separator {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 20px 0;
    max-width: 350px;
}

.gform-apple-pay-separator-line {
    flex-grow: 1;
    height: 1px;
    background-color: #ccc;
}

.gform-apple-pay-separator-text {
    margin: 0 10px;
    color: #666;
    font-size: 14px;
}
