/* Gravity Forms, Ultimate Member & Plugin AI submit buttons */
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"].gform_button,
.gform_wrapper button.gform_button,
#um-submit-btn,
.use-this-text-btn,
.um .um-button:not(.um-social-login-btns .um-button),
.um input[type="submit"].um-button:not(.um-social-login-btns .um-button),
.um a.um-button:not(.um-social-login-btns .um-button),
button.gcoai-regenerate {
    background-color: var(--ss-color-form-accent) !important;
    color: var(--ss-color-text-inverse) !important;
    border-radius: 60px !important;
    font-family: var(--ss-font-body) !important;
    font-weight: var(--ss-font-weight-bold) !important;
    line-height: 1em !important;
    font-size: 18px !important;
    border: none !important;
    box-shadow: 0px 0px 0 #00000026 !important;
    padding: 17px 35px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: box-shadow 0.2s ease, background 0.2s ease !important;
    cursor: pointer !important;
    appearance: none !important;
}

/* Custom Generate Button Styling */
button.gcoai-trigger {
    background: url('https://sagescreen.io/wp-content/uploads/2025/09/ss_sage_gen.png') no-repeat center center !important;
    background-size: contain !important;
    width: 36px !important;
    height: 36px !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    transition: transform 0.2s ease, opacity 0.2s ease !important;
    position: absolute !important;
    bottom: -650px !important;
    right: 10px !important;
    z-index: 10 !important;
    text-indent: -9999px !important; /* Hide any text */
    overflow: hidden !important;
}

/* Position the textarea container relatively for absolute positioning */
.gform_wrapper .gfield_contains_required textarea,
.gform_wrapper textarea {
    position: relative !important;
}

/* Create a wrapper for the textarea to contain the button */
.gform_wrapper .gfield {
    position: relative !important;
}

/* Hover effect for generate button */
button.gcoai-trigger:hover:not(.loading) {
    transform: scale(1.05) !important;
    opacity: 0.9 !important;
}

.use-this-text-btn {
    margin-left: 48px !important;
}

/* Hover effect for other buttons */
.use-this-text-btn:hover,
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type="submit"].gform_button:hover,
.gform_wrapper button.gform_button:hover,
#um-submit-btn:hover,
.um .um-button:not(.um-social-login-btns .um-button):hover,
.um input[type="submit"].um-button:not(.um-social-login-btns .um-button):hover,
.um a.um-button:not(.um-social-login-btns .um-button):hover,
button.gcoai-regenerate:hover {
    filter: brightness(1.08) !important;
    color: var(--ss-color-text-inverse) !important;
}

/* Gravity Forms & Ultimate Member input/textarea fields */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper textarea,
.um input[type="text"].um-form-field,
.um input[type="email"].um-form-field,
.um input[type="password"].um-form-field,
.um textarea.um-form-field,
.um select.um-form-field {
    border-radius: 12px !important;
    color: var(--ss-color-text) !important;
    border: 1px solid var(--ss-color-border) !important;
    background: transparent !important;
    font-family: var(--ss-font-body) !important;
    font-weight: var(--ss-font-weight-normal) !important;
    font-size: var(--ss-font-size-website) !important;
    padding: 12px 15px !important;
    box-sizing: border-box !important;
}

/* Add extra padding to textarea to make room for the button */
.gform_wrapper textarea {
    padding-bottom: 80px !important; /* Extra space for the button */
}

/* Placeholder styling */
.gform_wrapper ::placeholder,
.um ::placeholder {
    color: var(--ss-color-text) !important;
    opacity: 0.7 !important;
}

/* Focus state */
.gform_wrapper input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus,
.gform_wrapper input[type="url"]:focus,
.gform_wrapper input[type="tel"]:focus,
.gform_wrapper input[type="number"]:focus,
.gform_wrapper input[type="password"]:focus,
.gform_wrapper textarea:focus,
.um input[type="text"].um-form-field:focus,
.um input[type="email"].um-form-field:focus,
.um input[type="password"].um-form-field:focus,
.um textarea.um-form-field:focus,
.um select.um-form-field:focus {
    border: 2px solid var(--ss-color-form-accent) !important;
    outline: none !important;
    box-shadow: 0 0 0 1px var(--ss-color-form-accent) !important;
}

/* Gravity Forms & Ultimate Member select fields */
.gform_wrapper select,
.um select.um-form-field {
    border-radius: 12px !important;
    color: var(--ss-color-text) !important;
    border: 1px solid var(--ss-color-border) !important;
    background: transparent !important;
    font-family: var(--ss-font-body) !important;
    font-weight: var(--ss-font-weight-normal) !important;
    font-size: var(--ss-font-size-website) !important;
    padding: 12px 15px !important;
    box-sizing: border-box !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10'%3E%3Cpath fill='%23454F5E' d='M7 10L0 0h14L7 10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 14px 10px !important;
}

/* Sub-labels (e.g. First, Last in Name fields) */
.gform_wrapper .gform-field-label.gform-field-label--type-sub,
.gform_wrapper .gfield_label_before_complex .gform-field-label.gform-field-label--type-sub,
.um .um-field-label .um-field-label-text {
    color: var(--ss-color-text) !important;
    font-family: var(--ss-font-body) !important;
    font-weight: var(--ss-font-weight-normal) !important;
    font-size: var(--ss-font-size-website) !important;
    opacity: 0.9 !important;
}

/* === FIX SELECTS: revert to native so selection works === */
.gform_wrapper select,
.um select.um-form-field {
    -webkit-appearance: auto !important;
    -moz-appearance: auto !important;
    appearance: auto !important;
    background-image: none !important; /* remove custom arrow overlay */
    padding-right: 12px !important; /* shrink right padding now that arrow is gone */
    /* keep your visual system */
    border-radius: 12px !important;
    border: 1px solid var(--ss-color-border) !important;
    background-color: transparent !important;
    color: var(--ss-color-text) !important;
    font-family: var(--ss-font-body) !important;
    font-weight: var(--ss-font-weight-normal) !important;
    font-size: var(--ss-font-size-website) !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
    /* make sure clicks register */
    pointer-events: auto !important;
    user-select: auto !important;
}

/* Some browsers honor option styling; harmless where ignored */
.gform_wrapper select option,
.um select.um-form-field option {
    background-color: var(--ss-color-bg) !important;
    color: var(--ss-color-text) !important;
    font-family: var(--ss-font-body) !important;
    font-weight: var(--ss-font-weight-normal) !important;
}

/* Focus: keep your high-contrast ring without custom UI */
.gform_wrapper select:focus,
.um select.um-form-field:focus {
    outline: none !important;
    box-shadow: 0 0 0 1px var(--ss-color-form-accent) !important;
    border: 2px solid var(--ss-color-form-accent) !important;
}

/* === SELECT TEXT CLIPPING FIX (place last) === */
.gform_wrapper select,
.um select.um-form-field {
    line-height: normal !important; /* stop baseline clipping */
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    min-height: 44px !important; /* ensure vertical room */
    background-clip: padding-box !important; /* avoid bg overlay cuts */
    display: block !important; /* avoid inline quirks */
    width: 100% !important; /* consistent sizing */
}

/* Optional: slightly tighter for Safari/WebKit */
@supports (-webkit-appearance: menulist-button) {
    .gform_wrapper select,
    .um select.um-form-field {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
        min-height: 40px !important;
    }
}

