/* ACE Enrollment Form styles */
.ace-form-wrap { max-width: 700px; margin: 0 auto; font-family: Arial, sans-serif; }

.ace-form-messages {
    display: none;
    padding: 12px 16px;
    border-radius: 4px;
    margin-bottom: 16px;
    font-weight: 600;
}
.ace-form-messages:not(:empty) { display: block; }
.ace-form-success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.ace-form-error   { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }

.ace-enrollment fieldset {
    border: 1px solid #dee2e6;
    border-radius: 6px;
    padding: 16px 20px;
    margin-bottom: 20px;
}
.ace-enrollment legend {
    font-weight: 700;
    color: #003366;
    padding: 0 8px;
    font-size: 1em;
}

.ace-enrollment label {
    display: block;
    margin-bottom: 12px;
    font-size: .9em;
    color: #333;
    font-weight: 600;
}
.ace-enrollment label input,
.ace-enrollment label textarea,
.ace-enrollment label select {
    display: block;
    width: 100%;
    margin-top: 4px;
    padding: 8px 10px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    font-size: 1em;
    box-sizing: border-box;
    font-weight: 400;
}
.ace-enrollment label input:focus,
.ace-enrollment label textarea:focus {
    outline: none;
    border-color: #003366;
    box-shadow: 0 0 0 2px rgba(0,51,102,.15);
}

.req { color: #dc3545; }

.ace-form-submit {
    background: #003366;
    color: #fff;
    border: none;
    padding: 12px 28px;
    font-size: 1em;
    border-radius: 4px;
    cursor: pointer;
    transition: background .2s;
}
.ace-form-submit:hover  { background: #00509e; }
.ace-form-submit:disabled { background: #6c757d; cursor: not-allowed; }
