.dp-form label {
    display: block;
    margin-bottom: 5px;
}

.dp-form > div {
    padding: 5px 0;
}

.dp-form label.required::after {
    display: inline-block;
    content: "*";
    color: red;
    margin-left: 5px;
}

.dp-form input,
.dp-form textarea,
.dp-form select {
    width: 100% !important;
    padding: 10px;
    box-sizing: border-box;
}

.dp-form textarea {
    height: 150px;
}

.dp-form button,
.dp-button {
    width: 100% !important;
    padding: 14px 20px;
    margin: 8px 0;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.dp-table {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: auto;
}

.dp-table * {
    text-align: left;
}

.dp-table .dp-row {
    display: flex;
    flex-direction: row;
}

.dp-table .dp-cell {
    flex: 1;
    padding: 5px;
    border: 1px solid #ddd;
}

.dp-table .dp-header.dp-cell {
    font-weight: bold;
}

.dp-form.working p,
.dp-form.success p {
    display: none!important;
}
.dp-form.working .working-message {
    display: block!important;
}
.dp-form.success .success-message {
    display: block!important;
}
.dp-form.error .error-message {
    display: block!important;
}
