.donation-form-container {
    margin: 0 auto;
    max-width: 600px
}

.donation-form-container .donation-form {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1);
    padding: 2rem
}

.donation-form-container .donation-form h3 {
    color: #333;
    font-size: 1.75rem;
    margin: 0 0 1.5rem;
    text-align: center
}

.donation-form-container .donation-form .donation-label {
    color: #444;
    display: block;
    font-weight: 600;
    margin-bottom: .75rem
}

.donation-form-container .donation-form .donation-amounts {
    margin-bottom: 1.5rem
}

.donation-form-container .donation-form .amount-buttons {
    display: flex;
    flex-wrap: nowrap;
    gap: .5rem
}

.donation-form-container .donation-form .amount-button {
    background: #f9f9f9;
    border: 2px solid #ddd;
    border-radius: 6px;
    cursor: pointer;
    flex: 1 1 auto;
    font-size: 1rem;
    font-weight: 600;
    min-width: 0;
    padding: 1rem .5rem;
    transition: all .3s ease;
    white-space: nowrap
}

.donation-form-container .donation-form .amount-button:hover {
    background: #f0f8ff;
    border-color: #0073aa
}

.donation-form-container .donation-form .amount-button.selected {
    background: #0073aa;
    border-color: #0073aa;
    color: #fff
}

.donation-form-container .donation-form .custom-amount-input {
    margin-bottom: 1.5rem
}

.donation-form-container .donation-form .custom-amount-input label {
    color: #444;
    display: block;
    font-weight: 600;
    margin-bottom: .5rem
}

.donation-form-container .donation-form .custom-amount-input input {
    border: 2px solid #ddd;
    border-radius: 6px;
    font-size: 1rem;
    padding: .75rem;
    transition: border-color .3s ease;
    width: 100%
}

.donation-form-container .donation-form .custom-amount-input input:focus {
    border-color: #0073aa;
    outline: none
}

.donation-form-container .donation-form .donation-email {
    margin-bottom: 1.5rem
}

.donation-form-container .donation-form .donation-email label {
    color: #444;
    display: block;
    font-weight: 600;
    margin-bottom: .5rem
}

.donation-form-container .donation-form .donation-email input {
    border: 2px solid #ddd;
    border-radius: 6px;
    font-size: 1rem;
    padding: .75rem;
    transition: border-color .3s ease;
    width: 100%
}

.donation-form-container .donation-form .donation-email input:focus {
    border-color: #0073aa;
    outline: none
}

.donation-form-container .donation-form .donation-company {
    margin-bottom: 1.5rem
}

.donation-form-container .donation-form .donation-company .checkbox-label {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-size: 1rem
}

.donation-form-container .donation-form .donation-company .checkbox-label input[type=checkbox] {
    cursor: pointer;
    height: 20px;
    margin-right: .75rem;
    width: 20px
}

.donation-form-container .donation-form .donation-company .checkbox-label span {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.donation-form-container .donation-form .tax-deduction-info {
    background: #e8f4f8;
    border-left: 4px solid #0073aa;
    border-radius: 6px;
    margin-bottom: 1.5rem;
    padding: 1.25rem
}

.donation-form-container .donation-form .tax-deduction-info p {
    color: #333;
    font-size: 1rem;
    margin: .5rem 0
}

.donation-form-container .donation-form .tax-deduction-info p.final-amount {
    color: #0073aa;
    font-size: 1.25rem;
    margin-top: 1rem
}

.donation-form-container .donation-form .tax-deduction-info p.tax-rate-info {
    color: #666;
    font-size: .875rem;
    font-style: italic
}

.donation-form-container .donation-form .tax-deduction-info p strong {
    font-weight: 700
}

.donation-form-container .donation-form .donation-submit {
    background: #0073aa;
    border: none;
    border-radius: 6px;
    color: #fff;
    cursor: pointer;
    font-size: 1.125rem;
    font-weight: 600;
    padding: 1rem;
    transition: background .3s ease;
    width: 100%
}

.donation-form-container .donation-form .donation-submit:hover:not(:disabled) {
    background: #005a87
}

.donation-form-container .donation-form .donation-submit:disabled {
    background: #ccc;
    cursor: not-allowed
}

.donation-form-container .donation-form .error-message {
    background: #f8d7da;
    border: 1px solid #f5c6cb;
    border-radius: 6px;
    color: #721c24;
    margin-top: 1rem;
    padding: 1rem
}

.donation-form-container .donation-form .success-message {
    background: #d4edda;
    border: 1px solid #c3e6cb;
    border-radius: 6px;
    color: #155724;
    margin-top: 1rem;
    padding: 1rem
}

.donation-form-container .donation-form .loading {
    color: #0073aa;
    font-weight: 600;
    padding: 1rem;
    text-align: center
}

@media (max-width: 768px) {
    .donation-form-container .donation-form {
        padding: 1.5rem
    }

    .donation-form-container .donation-form .amount-buttons {
        flex-wrap: wrap
    }

    .donation-form-container .donation-form .amount-button {
        flex: 0 0 calc(50% - 0.25rem);
        min-width: 0
    }
}
