.duo-upload-order-controls {
    display: flex;
    align-items: center;
    gap: .25rem;
    margin: 0 0 .4rem;
}

.duo-upload-order-controls button {
    width: 2.75rem;
    min-height: 2.75rem;
    padding: .25rem;
    border: 1px solid currentColor;
    border-radius: .25rem;
    background: transparent;
    color: inherit;
    font-size: 1.15rem;
    line-height: 1;
    cursor: pointer;
}

.duo-upload-order-controls [data-duo-action="drag"] {
    touch-action: none;
    cursor: grab;
    font-size: 1.5rem;
}

.duo-upload-order-controls button:disabled {
    opacity: .35;
    cursor: default;
}

.duo-upload-order-controls button:focus-visible,
.duo-upload-order-status button:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}

.duo-upload-order-dragging {
    outline: 2px solid currentColor;
    outline-offset: 2px;
    opacity: .85;
}

.duo-upload-order-dragging [data-duo-action="drag"] {
    cursor: grabbing;
}

.duo-upload-order-status {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem .75rem;
    margin: .75rem 0 1rem;
    font-size: .9rem;
}

.duo-upload-order-status[hidden],
.duo-upload-order-status button[hidden] {
    display: none;
}

.duo-upload-order-status button {
    padding: .35rem .65rem;
    border: 1px solid currentColor;
    border-radius: .25rem;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.duo-upload-order-error {
    color: #9b2923;
}

/* Product upload previews only; dropzones, limits and native upload controls stay native. */
.wcuf_product_ajax_container .duo-upload-compact-container {
    border: 0;
    padding: 0;
    background: transparent;
}

/* A completed single-file field already has its own descriptive heading. */
.wcuf_product_ajax_container .wcuf_to_hide_when_performing_data_transimssion > .duo-upload-compact-container:first-child {
    margin-top: .5rem;
}

.wcuf_product_ajax_container .duo-upload-compact-container > h4 {
    display: none;
}

.wcuf_product_ajax_container .duo-upload-compact-list {
    --duo-upload-accent: #149ea3;
    padding: .15rem .75rem;
    margin: 0;
    border: 0;
    border-radius: .25rem;
    background: #f9f9f9;
    color: #333;
    list-style: none;
}

.wcuf_product_ajax_container .duo-upload-compact-list .duo-upload-compact-row {
    display: grid;
    grid-template-columns: 4rem minmax(0, 1fr) 2rem;
    align-items: center;
    gap: .25rem .65rem;
    width: 100%;
    min-height: 4.5rem;
    margin: 0;
    padding: .65rem 0;
    border: 0;
    border-bottom: 1px solid #e2dfe3;
    border-radius: 0;
    box-sizing: border-box;
    background: transparent;
    overflow: visible;
}

.wcuf_product_ajax_container .duo-upload-compact-list .duo-upload-compact-row:last-child {
    border-bottom: 0;
}

.wcuf_product_ajax_container .duo-upload-compact-list .duo-upload-audio-row {
    grid-template-columns: 1.5rem 2rem minmax(0, 1fr) 1.75rem 1.75rem 2rem;
}

.duo-upload-compact-list .duo-upload-file-info {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
}

.duo-upload-compact-list .duo-upload-audio-row .duo-upload-file-info {
    grid-column: 3;
}

.duo-upload-compact-list .wcuf_preview_file_title {
    margin: 0;
    padding: 0;
    font-size: .9rem;
    line-height: 1.4;
    word-break: normal;
    overflow-wrap: anywhere;
}

.duo-upload-compact-list .wcuf_preview_quantity,
.duo-upload-compact-list .wcuf_preview_price,
.duo-upload-compact-list .wcuf_preview_feedback {
    font-size: .8rem;
    line-height: 1.4;
    color: #666;
    margin-right: .5rem;
}

.duo-upload-compact-list .wcuf_preview_quantity:empty,
.duo-upload-compact-list .wcuf_preview_price:empty,
.duo-upload-compact-list .wcuf_preview_feedback:empty {
    display: none;
}

.duo-upload-compact-list .duo-upload-file-info .wcuf_preview_quantity:not(:empty)::before,
.duo-upload-compact-list .duo-upload-file-info .wcuf_preview_price:not(:empty)::before,
.duo-upload-compact-list .duo-upload-file-info .wcuf_preview_feedback:not(:empty)::before {
    content: none;
}

.duo-upload-compact-list .duo-upload-order-controls {
    display: contents;
}

.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list .duo-upload-order-controls button,
.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button[data-duo-player-toggle] {
    min-height: 2.5rem;
    width: 100%;
    padding: 0;
    margin: 0 !important;
    border: 0;
    background: transparent;
    color: var(--duo-upload-accent);
    font-size: 1.15rem;
    line-height: 1;
}

.duo-upload-compact-list [data-duo-action="drag"] {
    grid-column: 1;
    grid-row: 1;
    font-size: 1.45rem;
}

.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button[data-duo-player-toggle] {
    grid-column: 2;
    grid-row: 1;
    min-height: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: #e5f2f2;
    font-size: .85rem;
    cursor: pointer;
}

.duo-upload-compact-list [data-duo-action="up"] {
    grid-column: 4;
    grid-row: 1;
}

.duo-upload-compact-list [data-duo-action="down"] {
    grid-column: 5;
    grid-row: 1;
}

.duo-upload-compact-list .wcuf_delete_single_file_stored_on_server {
    grid-column: 3;
    grid-row: 1;
    justify-self: center;
    width: 2rem;
    height: 2.5rem;
    margin: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px 16px;
    opacity: .7;
}

.duo-upload-compact-list .duo-upload-audio-row .wcuf_delete_single_file_stored_on_server {
    grid-column: 6;
}

.duo-upload-compact-list .duo-upload-media {
    grid-column: 2 / -1;
    width: min(100%, 28rem);
    min-width: 0;
}

.duo-upload-compact-list .duo-upload-media[hidden] {
    display: none;
}

.duo-upload-compact-list .duo-upload-media audio.wcuf_audio_control {
    display: block;
    width: 100%;
    min-width: 0;
    margin: .35rem 0 0;
}

.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button.duo-upload-thumbnail {
    grid-column: 1;
    grid-row: 1;
    padding: 0;
    margin: 0 !important;
    border: 0;
    background: transparent;
    cursor: zoom-in;
}

.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list .duo-upload-order-controls button:hover,
.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list .duo-upload-order-controls button:focus,
.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button.duo-upload-thumbnail:hover,
.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button.duo-upload-thumbnail:focus {
    border: 0;
    color: var(--duo-upload-accent);
    background: transparent;
}

.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button[data-duo-player-toggle]:hover,
.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button[data-duo-player-toggle]:focus {
    border: 0;
    color: var(--duo-upload-accent);
    background: #d6ebec;
}

.duo-upload-compact-list .duo-upload-thumbnail img.wcuf_file_preview_list_item_image {
    display: block;
    width: 4rem !important;
    height: 4rem !important;
    max-width: 100% !important;
    max-height: none !important;
    object-fit: contain;
    margin: 0;
}

.wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list .duo-upload-image-expanded button.duo-upload-thumbnail {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: center;
    max-width: 100%;
    cursor: zoom-out;
}

.duo-upload-compact-list .duo-upload-image-expanded .duo-upload-thumbnail img.wcuf_file_preview_list_item_image {
    width: auto !important;
    height: auto !important;
    max-height: 26rem !important;
}

.duo-upload-compact-list .duo-upload-compact-row > .download_small_button,
.duo-upload-compact-list .duo-upload-compact-row > .vanupfi_pdf_preview_button,
.duo-upload-compact-list .duo-upload-compact-row > video {
    grid-column: 2 / -1;
    max-width: 100%;
}

.duo-upload-compact-list button:focus-visible,
.duo-upload-compact-list [role="button"]:focus-visible {
    outline: 2px solid var(--duo-upload-accent);
    outline-offset: 2px;
}

@media (max-width: 600px), (pointer: coarse) {
    .wcuf_product_ajax_container .duo-upload-compact-list .duo-upload-audio-row {
        grid-template-columns: 2.25rem minmax(0, 1fr) 2.75rem 2.75rem;
        column-gap: .4rem;
    }
    .duo-upload-compact-list .duo-upload-audio-row .duo-upload-file-info {
        grid-column: 2 / 4;
    }
    .duo-upload-compact-list .duo-upload-audio-row [data-duo-action="up"],
    .duo-upload-compact-list .duo-upload-audio-row [data-duo-action="down"] {
        grid-column: 3;
        grid-row: 2;
        width: 2.75rem;
        min-height: 2.75rem;
    }
    .duo-upload-compact-list .duo-upload-audio-row [data-duo-action="down"] { grid-column: 4; }
    .wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list .duo-upload-audio-row button[data-duo-player-toggle] {
        grid-column: 1;
        grid-row: 2;
        width: 2.25rem;
    }
    .duo-upload-compact-list .duo-upload-audio-row .wcuf_delete_single_file_stored_on_server {
        grid-column: 4;
        width: 2.75rem;
        height: 2.75rem;
    }
    .duo-upload-compact-list [data-duo-action="drag"] { min-height: 2.75rem; }
    .wcuf_product_ajax_container .duo-upload-compact-container .duo-upload-compact-list button[data-duo-player-toggle] { min-height: 2.75rem; }
    .duo-upload-compact-list .duo-upload-media { grid-column: 1 / -1; }
}
