.cart__form-top {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.cart__form-top > p {
    flex: 1 1 calc(24% - 10px);
    margin: 0;
}

.cart__form-top > p:last-of-type {
    flex-basis: 100%;
}

.cart__form-top > .kp-admin-section,
.cart__form-top > .cart__table,
.cart__form-top > .cart__form-remove {
    flex: 1 1 100%;
}

.kp-admin-section {
    margin: 0 0 8px;
    padding: 0px 20px;
    border: 1px solid #e4ddd1;
    background: #faf8f3;
}

.kp-admin-section--compact {
    margin-top: 18px;
}

.kp-admin-section__title {
    margin: 0 0 14px;
    color: #2f3b47;
    font-size: 18px;
    font-weight: 700;
}

.kp-admin-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(240px, 1fr));
    gap: 10px 24px;
}

.kp-admin-select {
    width: 100%;
    min-height: 40px;
}

.kp-admin-textarea {
    min-height: 72px;
}

.kp-admin-manual-delivery {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px dashed #d7cdbd;
}

.kp-admin-manual-delivery__fields {
    display: flex;
    gap: 12px;
    margin-top: 12px;
}

.kp-admin-manual-delivery__fields .input_field {
    flex: 1 1 0;
}

.kp-admin-discount-note {
    margin: 10px 0 0;
    color: #db4616;
    font-weight: 700;
}

.kp-admin-totals {
    margin: 18px 0 8px;
    padding: 14px 16px;
    background: #f8f5ef;
    border: 1px solid #ece3d5;
}

.kp-admin-button {
    width: 100%;
    max-width: 320px;
}

.kp-admin-competitors {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.kp-admin-competitor {
    display: grid;
    grid-template-columns: 140px 1fr 140px;
    gap: 12px;
    align-items: center;
}

.kp-admin-competitor__toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    color: #2f3b47;
}

.kp-admin-competitor input[type="checkbox"] {
    margin: 0;
    width: 16px !important;
    height: 16px !important;
    opacity: 1 !important;
    position: static !important;
    appearance: checkbox !important;
    -webkit-appearance: checkbox !important;
    visibility: visible !important;
    display: inline-block !important;
    accent-color: #db4616;
}

.kp-admin-manual-delivery__fields.is-disabled {
    opacity: 0.55;
}

@media (max-width: 900px) {
    .cart__form-top > p {
        flex-basis: 100%;
    }

    .kp-admin-grid {
        grid-template-columns: 1fr;
    }

    .kp-admin-manual-delivery__fields,
    .kp-admin-competitor {
        display: block;
    }

    .kp-admin-competitor > * + * {
        margin-top: 10px;
    }
}
