/* --- Migliora spaziatura e leggibilità form --- */
    .pmpro_form .pmpro_card {
        margin-bottom: 28px !important;
        padding: 28px 32px !important;
        border-radius: 12px !important;
        border: 1px solid #e2e8f0 !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
    }
    
    .pmpro_form .pmpro_card_title {
        font-size: 22px !important;
        font-weight: 700 !important;
        color: #1a2340 !important;
        margin-bottom: 16px !important;
        padding-bottom: 12px !important;
        border-bottom: 2px solid #0170B9 !important;
    }
    
    .pmpro_form .pmpro_form_heading {
        font-size: 20px !important;
        font-weight: 700 !important;
        color: #1a2340 !important;
        margin-top: 8px !important;
    }
    
    /* Spaziatura tra i campi */
    .pmpro_form .pmpro_form_field {
        margin-bottom: 18px !important;
    }
    
    .pmpro_form label {
        font-weight: 600 !important;
        color: #2d3748 !important;
        margin-bottom: 6px !important;
        display: block !important;
    }
    
    .pmpro_form input[type="text"],
    .pmpro_form input[type="email"],
    .pmpro_form input[type="tel"],
    .pmpro_form input[type="date"],
    .pmpro_form input[type="url"],
    .pmpro_form select,
    .pmpro_form textarea {
        padding: 10px 14px !important;
        border: 1.5px solid #d1d9e6 !important;
        border-radius: 8px !important;
        font-size: 15px !important;
        transition: border-color 0.2s !important;
        background: #f8fafc !important;
    }
    
    .pmpro_form input:focus,
    .pmpro_form select:focus,
    .pmpro_form textarea:focus {
        border-color: #0170B9 !important;
        box-shadow: 0 0 0 3px rgba(1,112,185,0.1) !important;
        outline: none !important;
    }
    
    /* Link nel form: stile discreto, NO evidenziatore azzurro */
    .pmpro_form a,
    .pmpro_form a:visited {
        color: #0170B9 !important;
        background-color: transparent !important;
        border-bottom: 1px solid #0170B9 !important;
        padding: 0 1px !important;
        border-radius: 0 !important;
        text-decoration: none !important;
        transition: color 0.2s !important;
    }
    .pmpro_form a:hover,
    .pmpro_form a:focus {
        color: #005a94 !important;
        background-color: transparent !important;
        border-bottom-color: #005a94 !important;
    }
    
    /* Checkbox più leggibili */
    .pmpro_form .pmpro_checkout-field-tos label,
    .pmpro_form label:has(input[type="checkbox"]) {
        display: flex !important;
        align-items: flex-start !important;
        gap: 10px !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        padding: 10px 0 !important;
    }
    
    .pmpro_form input[type="checkbox"] {
        margin-top: 3px !important;
        min-width: 18px !important;
        min-height: 18px !important;
        accent-color: #0170B9 !important;
    }
    
    /* Bottone submit più grande e chiaro */
    .pmpro_form .pmpro_btn,
    .pmpro_form input[type="submit"],
    .pmpro_form button[type="submit"] {
        background: linear-gradient(135deg, #0170B9, #005a94) !important;
        color: #fff !important;
        border: none !important;
        padding: 16px 40px !important;
        font-size: 17px !important;
        font-weight: 700 !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        transition: all 0.3s !important;
        margin-top: 20px !important;
        letter-spacing: 0.3px !important;
    }
    
    .pmpro_form .pmpro_btn:hover,
    .pmpro_form input[type="submit"]:hover,
    .pmpro_form button[type="submit"]:hover {
        background: linear-gradient(135deg, #005a94, #003d66) !important;
        transform: translateY(-1px) !important;
        box-shadow: 0 4px 12px rgba(1,112,185,0.3) !important;
    }
    
    /* Testo costo più chiaro */
    .pmpro_level_cost_text {
        font-size: 16px !important;
        padding: 12px 16px !important;
        background: #f0f7ff !important;
        border-left: 3px solid #0170B9 !important;
        border-radius: 0 8px 8px 0 !important;
        margin-top: 16px !important;
    }
    
    /* Sezione materiali opzionali */
    .pmpro_addon_packages,
    .pmpro_form .pmpro_card:has([type="checkbox"]:not(.pmpro_checkout-field-tos *)) {
        background: #fafbfc !important;
    }
    
    /* Mobile responsive miglioramenti */
    @media (max-width: 768px) {
        .pmpro_form .pmpro_card {
            padding: 20px 16px !important;
            margin-bottom: 20px !important;
        }
        
        .pmpro_form .pmpro_card_title {
            font-size: 19px !important;
        }
        
        .pmpro_form .pmpro_btn,
        .pmpro_form input[type="submit"],
        .pmpro_form button[type="submit"] {
            width: 100% !important;
            text-align: center !important;
            padding: 16px 24px !important;
        }
    }