/*
Theme Name: TheGem Elementor Child
Description: Multi-Purpose Wordpress Theme
Author: Codex Themes.
Theme URI: http://codex-themes.com/thegem/
Author URI: http://codex-themes.com/thegem/
Template: thegem-elementor
Version: 1.0
Tags: one-column, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, flexible-header, full-width-template, theme-options, translation-ready, dark, light
License: GNU General Public License
License URI: license.txt
*/

/* ==========================================================================
   Neo Versatile Custom Styles: JJH Support Services Onboarding Form
   ========================================================================== */

/* Universal Input High-Clarity Framework */
.jjh-onboarding-form input[type="text"],
.jjh-onboarding-form input[type="email"],
.jjh-onboarding-form input[type="tel"],
.jjh-onboarding-form input[type="date"],
.jjh-onboarding-form select,
.jjh-onboarding-form textarea {
    border: 2px solid #1a2e40 !important;
    background-color: #f8f9fa !important;
    color: #1a2e40 !important;
    border-radius: 6px !important;
    padding: 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    font-size: 15px !important;
    margin-top: 6px !important;
    font-family: inherit;
}

/* Field Interaction Focus States */
.jjh-onboarding-form input:focus,
.jjh-onboarding-form select:focus,
.jjh-onboarding-form textarea:focus {
    background-color: #ffffff !important;
    border-color: #d4af37 !important;
    box-shadow: 0 0 8px rgba(212, 175, 55, 0.4) !important;
    outline: none !important;
}

/* High-Visibility Custom Radio & Checkbox Buttons */
.jjh-onboarding-form input[type="radio"],
.jjh-onboarding-form input[type="checkbox"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    border: 2px solid #1a2e40 !important;
    background-color: #f8f9fa !important;
    width: 22px !important;
    height: 22px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    margin-right: 10px !important;
    cursor: pointer !important;
    position: relative !important;
}

.jjh-onboarding-form input[type="radio"] { border-radius: 50% !important; }
.jjh-onboarding-form input[type="checkbox"] { border-radius: 4px !important; }

/* Checked Active States Fill */
.jjh-onboarding-form input[type="radio"]:checked,
.jjh-onboarding-form input[type="checkbox"]:checked {
    background-color: #1a2e40 !important;
    border-color: #d4af37 !important;
}

.jjh-onboarding-form input[type="radio"]:checked::before {
    content: "" !important;
    position: absolute !important;
    top: 6px !important;
    left: 6px !important;
    width: 6px !important;
    height: 6px !important;
    background-color: #ffffff !important;
    border-radius: 50% !important;
}

.jjh-onboarding-form input[type="checkbox"]:checked::before {
    content: "✓" !important;
    position: absolute !important;
    top: -1px !important;
    left: 4px !important;
    font-size: 15px !important;
    color: #ffffff !important;
    font-weight: bold !important;
}

/* Target Animations for CF7 Conditional Reveal Groups */
.wpcf7-conditional-field {
    animation: jjhFadeInEngine 0.4s ease-in-out forwards !important;
}

@keyframes jjhFadeInEngine {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Layout Grid Layout Structures */
.jjh-onboarding-form .form-field-block { 
    margin-bottom: 22px !important; 
}
.jjh-onboarding-form label {
    display: block !important; 
    font-weight: 700 !important; 
    color: #1a2e40 !important; 
    font-size: 15px !important;
    margin-top: 10px;
}
.jjh-onboarding-form .form-row { 
    display: flex !important; 
    gap: 20px !important; 
    margin-bottom: 22px !important; 
}
.jjh-onboarding-form .form-col { 
    flex: 1 !important; 
}
.jjh-onboarding-form span.wpcf7-list-item { 
    display: block !important; 
    margin: 12px 0 !important; 
}
.jjh-onboarding-form span.wpcf7-list-item-label { 
    font-weight: 500 !important; 
    color: #333333 !important; 
}

/* Elite Corporate Action Button */
.jjh-onboarding-form .jjh-btn {
    background-color: #1a2e40 !important;
    color: #ffffff !important;
    border: 2px solid #1a2e40 !important;
    padding: 16px 32px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    border-radius: 4px !important;
    width: 100% !important;
    cursor: pointer !important;
    margin-top: 15px;
    transition: all 0.3s ease !important;
}
.jjh-onboarding-form .jjh-btn:hover {
    background-color: #d4af37 !important;
    border-color: #d4af37 !important;
    color: #1a2e40 !important;
}
