.asf-form-wrapper {
    max-width: 650px;
    margin: 30px auto;
    padding: 25px;
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 12px;
}

.asf-form label,
.asf-form fieldset {
    display: block;
    margin-bottom: 18px;
}

.asf-form input,
.asf-form textarea {
    width: 100%;
    padding: 10px;
    margin-top: 6px;
    border: 1px solid #bbb;
    border-radius: 6px;
}

.asf-form fieldset label {
    display: block;
    margin: 8px 0;
}

.asf-form button {
    padding: 12px 22px;
    border: none;
    border-radius: 6px;
    background: #1d4ed8;
    color: white;
    cursor: pointer;
}

.asf-form button:hover {
    background: #153da8;
}

.asf-invalid {
    border-color: #dc2626 !important;
    background: #fff5f5;
}

.asf-success {
    padding: 12px;
    margin-bottom: 18px;
    background: #dcfce7;
    border: 1px solid #22c55e;
    color: #166534;
}

.asf-error {
    padding: 12px;
    margin-bottom: 18px;
    background: #fee2e2;
    border: 1px solid #ef4444;
    color: #991b1b;
}