/* custom_extdoc_orderupload 0.11.0 */
.extdoc-helper-hidden {
    display: none !important;
}

/* Main basket row: the technical item is replaced in JS by this neutral upload panel. */
.cart-items-body.extdoc-helper-row {
    display: flex !important;
    width: 100%;
    margin-top: .5rem;
    margin-bottom: .5rem;
}

.extdoc-upload-shell {
    width: 100%;
    padding: 1rem 1.1rem;
    border: 1px solid #d9dee3;
    border-radius: .25rem;
    background: #f8f9fa;
}

.extdoc-upload-shell__title {
    margin: 0 0 .25rem 0;
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 600;
    color: inherit;
}

.extdoc-upload-shell__description {
    margin: 0 0 .85rem 0;
    color: #707070;
}

.extdoc-upload-shell .extdoc-native-upload,
.extdoc-upload-shell .upload-filedata,
.extdoc-upload-shell .file-input,
.extdoc-upload-shell .file-caption,
.extdoc-upload-shell .input-group {
    width: 100%;
    max-width: 100%;
}

.extdoc-upload-shell .extdoc-native-upload,
.extdoc-upload-shell .upload-filedata {
    margin-bottom: 0 !important;
}

.extdoc-upload-shell .current-upload[data-extdoc-original-filename] {
    display: inline-block;
    margin-bottom: .35rem;
    font-weight: 500;
}

.extdoc-upload-shell .uploadifyMsg:empty,
.extdoc-upload-shell .uploadifyMsg:has(.current-upload:empty) {
    margin-bottom: 0 !important;
}

.extdoc-helper-divider {
    display: none !important;
}

.extdoc-zero-count {
    display: none !important;
}

/* Checkout: replace the technical article row with one neutral file reference. */
.checkout-items-item.extdoc-checkout-document-row {
    display: flex !important;
}

.extdoc-checkout-document {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .35rem;
    padding: .35rem 0 .6rem;
}

.extdoc-checkout-document__label {
    font-weight: 600;
}

.extdoc-checkout-document__filename {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.extdoc-checkout-document__separator {
    margin-top: .5rem;
    margin-bottom: .5rem;
}

/* Hide the helper immediately in table-based mini-cart summaries before JS runs. */
tr:has(a[href*="/Dokument-zu-Auftrag-angefuegt"]) {
    display: none !important;
}


/* Uploaded file status + explicit native deletion control. */
.extdoc-upload-shell .uploadifyMsg {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .35rem;
}

.extdoc-upload-shell .extdoc-remove-upload {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.45rem;
    height: 1.45rem;
    padding: 0;
    margin: 0 0 .35rem .1rem;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #707070;
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
}

.extdoc-upload-shell .extdoc-remove-upload:hover,
.extdoc-upload-shell .extdoc-remove-upload:focus {
    color: #b90000;
    background: rgba(185, 0, 0, .06);
    outline: none;
}

.extdoc-upload-shell .extdoc-remove-upload:focus-visible {
    box-shadow: 0 0 0 .18rem rgba(0, 161, 205, .2);
}

.extdoc-upload-shell .extdoc-remove-upload.is-loading,
.extdoc-upload-shell .extdoc-remove-upload:disabled {
    opacity: .45;
    cursor: wait;
}

.extdoc-upload-shell .extdoc-remove-upload-error {
    flex: 0 0 100%;
    margin: -.15rem 0 .6rem 0;
    color: #b90000;
    font-size: .8rem;
}


.extdoc-diagnostic-box {
    margin: 1rem 0 1.5rem;
    padding: 1rem;
    border: 2px solid #a56823;
    background: #fff8ee;
    color: #343a40;
    font-size: 0.875rem;
}
.extdoc-diagnostic-box h4 { margin-bottom: .75rem; font-weight: 600; }
.extdoc-diagnostic-box details { margin-top: .75rem; }
.extdoc-diagnostic-box summary { cursor: pointer; margin-bottom: .5rem; }
.extdoc-diagnostic-box table { background: #fff; margin-bottom: .5rem; }
.extdoc-diag-ok { color: #1C871E; font-weight: 700; }
.extdoc-diag-bad { color: #b90000; font-weight: 700; }
