
    /* Inherit theme colors */
    :root {
      --gacf-primary-color: #0073aa; --gacf-success-color: #46b450; --gacf-error-color: #dc3232;
      --gacf-border-color: #ddd; --gacf-text-color: #333; --gacf-bg-color: #fff;
    }
    .gacf-form-container { animation: fadeIn 0.5s ease-in-out; }
    .gacf-field-wrap { margin-bottom: 1.5em; }
    .gacf-form label { display: block; font-weight: bold; margin-bottom: 0.5em; color: var(--gacf-text-color); }
    .gacf-form input[type="text"], .gacf-form input[type="email"], .gacf-form input[type="url"], .gacf-form input[type="number"], .gacf-form input[type="date"], .gacf-form textarea, .gacf-form select {
        width: 100%; padding: 12px; border: 1px solid var(--gacf-border-color); border-radius: 4px;
        transition: border-color 0.3s ease; background-color: var(--gacf-bg-color); color: var(--gacf-text-color);
    }
    .gacf-form input:focus, .gacf-form textarea:focus, .gacf-form select:focus {
        border-color: var(--gacf-primary-color); outline: none; box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
    }
    .gacf-required { color: var(--gacf-error-color); }
    .gacf-submit-button {
        background-color: var(--gacf-primary-color); color: #fff; border: none; padding: 12px 25px; border-radius: 4px;
        cursor: pointer; font-size: 1em; transition: all 0.3s ease; position: relative;
    }
    .gacf-submit-button:hover { opacity: 0.9; transform: translateY(-2px); }
    .gacf-submit-button .gacf-btn-spinner { display: none; }
    .gacf-submit-button.loading .gacf-btn-text { visibility: hidden; }
    .gacf-submit-button.loading .gacf-btn-spinner { display: inline-block; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
    .gacf-form-response { margin-top: 1em; padding: 1em; border-radius: 4px; display: none; }
    .gacf-form-response.success { background-color: #e7f7e8; border-left: 4px solid var(--gacf-success-color); color: #1e4620; }
    .gacf-form-response.error { background-color: #fbeaea; border-left: 4px solid var(--gacf-error-color); color: #5a1414; }
    .gacf-honeypot-field { display: none !important; }
    @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
    