.vd-withdrawal {
    max-width: 730px;
    margin-block: 32px;
    padding: clamp(16px, 4vw, 28px);
    border: 1px solid #dce1d2;
    border-radius: 6px;
    background: var(--cream);
    scroll-margin-top: 96px;
}

.entry-content .vd-withdrawal h2 {
    margin-top: 0;
}

.vd-withdrawal-fields {
    display: grid;
    gap: 14px 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.vd-withdrawal-field:last-child {
    grid-column: 1 / -1;
}

.vd-withdrawal-field label,
.vd-withdrawal-field > small {
    display: block;
}

.vd-withdrawal-field label {
    margin-bottom: 4px;
    font-weight: 600;
}

.vd-withdrawal-field small {
    color: #565d51;
    font-weight: 400;
}

.vd-withdrawal-field input,
.vd-withdrawal-field textarea {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 8px 10px;
    color: var(--ink);
    background: #fff;
    border: 1px solid #969c8f;
    border-radius: 4px;
}

.vd-withdrawal-field textarea {
    resize: vertical;
}

.vd-withdrawal-field [aria-invalid="true"] {
    border-color: #8b321d;
}

.vd-withdrawal .vd-withdrawal-error {
    color: #8b321d;
}

.vd-withdrawal-review {
    display: grid;
    grid-template-columns: minmax(0, 12em) minmax(0, 1fr);
    gap: 8px 16px;
    margin: 0;
}

.vd-withdrawal-review dt {
    font-weight: 600;
}

.vd-withdrawal-review dd {
    margin: 0;
    white-space: pre-wrap;
}

.vd-withdrawal-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.vd-withdrawal-actions .btn {
    min-height: 44px;
    border: 1px solid transparent;
    justify-content: center;
    background: var(--orange);
    color: #fff;
}

.vd-withdrawal-actions .btn:hover,
.vd-withdrawal-actions .btn:focus-visible {
    background: var(--ink);
    color: #fff;
}

.entry-content .vd-withdrawal-actions .btn.outline {
    background: #fff;
    border-color: #969c8f;
    color: var(--ink);
}

.entry-content .vd-withdrawal-actions .btn.outline:hover,
.entry-content .vd-withdrawal-actions .btn.outline:focus-visible {
    background: #ecebe5;
}

.vd-withdrawal-actions .btn:focus-visible {
    outline: 3px solid var(--orange);
    outline-offset: 3px;
}

.entry-content .vd-withdrawal-email {
    margin: 14px 0 0;
    font-size: 14px;
}

.entry-content .vd-withdrawal-status {
    margin-bottom: 0;
}

@media (max-width: 560px) {
    .vd-withdrawal-fields,
    .vd-withdrawal-review {
        grid-template-columns: minmax(0, 1fr);
    }

    .vd-withdrawal-review dd {
        margin-bottom: 6px;
    }

    .vd-withdrawal-actions .btn {
        width: 100%;
    }
}
