/*
 * import-modal.css — self-contained styling for the import + bank-request
 * modals.
 *
 * The import fields use raw Tailwind utilities, but the Tailwind Play CDN (on
 * buchhaltung pages) does not reliably generate utilities for content injected
 * dynamically into the UnifiedModal after page load — so the modal rendered
 * unstyled (sections not hidden, tiles not boxed). These rules are static
 * (loaded via <link> on every page) and scoped to the modal container, so the
 * modal renders correctly regardless of the page's Tailwind setup.
 *
 * The invoice-upload partial (expenses/invoice_upload_fields.html) is also
 * included by the Buchung detail page, which renders full-page and therefore
 * sits OUTSIDE #unified-modal-container. Those rules are scoped
 * :is(#unified-modal-container, .iv-upload-scope) — the partial always wraps
 * itself in .iv-upload-scope. :is() takes its highest-specificity argument, so
 * these stay at exactly the specificity they had before (1,1,0).
 */

/* ── Critical: visibility toggles + visually-hidden inputs ── */
:is(#unified-modal-container, .iv-upload-scope) .hidden { display: none !important; }
:is(#unified-modal-container, .iv-upload-scope) .sr-only {
    position: absolute !important;
    width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important;
    overflow: hidden !important; clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important; border: 0 !important;
}

/* ── Scope wrapper ── */
#unified-modal-container #import-form,
#unified-modal-container #bank-not-listed-form { color: #374151; }

#unified-modal-container #import-form p,
#unified-modal-container #bank-not-listed-form p { margin: 0; }

/* Guidance / helper text */
#unified-modal-container #import-form .text-sm { font-size: .875rem; line-height: 1.5; }
#unified-modal-container #import-form .text-xs,
#unified-modal-container #bank-not-listed-form .text-xs { font-size: .75rem; line-height: 1.4; }
#unified-modal-container .text-gray-600 { color: #4b5563; }
#unified-modal-container .text-gray-500 { color: #6b7280; }
#unified-modal-container .text-gray-700 { color: #374151; }
#unified-modal-container .text-gray-800 { color: #1f2937; }
#unified-modal-container .text-red-600 { color: #dc2626; }
#unified-modal-container .text-blue-700,
#unified-modal-container a.font-medium { color: #1d4ed8; }
#unified-modal-container .font-medium { font-weight: 500; }
#unified-modal-container .font-semibold { font-weight: 600; }

/* Section spacing */
#unified-modal-container #keyword-field,
#unified-modal-container #format-chip { margin-top: 1rem; }
#unified-modal-container #excel-fields {
    margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid #e5e7eb;
}
#unified-modal-container #excel-fields > * + * { margin-top: 1.25rem; }
#unified-modal-container #import-form label.block,
#unified-modal-container #bank-not-listed-form label { display: block; margin-bottom: .375rem; }

/* ── Dropzone ── */
#unified-modal-container #import-dropzone {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    width: 100%; border: 2px dashed #d1d5db; border-radius: .5rem;
    background: #f9fafb; padding: 2rem 1.5rem; text-align: center; cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease;
}
#unified-modal-container #import-dropzone:hover { background: #f3f4f6; }
#unified-modal-container #import-dropzone.is-drag {
    border-color: #2563eb; background: #eff6ff; box-shadow: 0 0 0 2px #3b82f6;
}
#unified-modal-container #dz-default,
#unified-modal-container #dz-selected { display: flex; flex-direction: column; align-items: center; }
#unified-modal-container #dz-default.hidden,
#unified-modal-container #dz-selected.hidden { display: none !important; }
#unified-modal-container #import-dropzone i { font-size: 2rem; color: #9ca3af; margin-bottom: .5rem; }
#unified-modal-container #import-dropzone .text-success-600 { color: #16a34a; }

/* ── Text inputs ── */
#unified-modal-container #import-form input[type="text"],
#unified-modal-container #import-form input[type="number"],
#unified-modal-container #bank-not-listed-form input[type="text"],
#unified-modal-container #bank-not-listed-form textarea,
#unified-modal-container #import-form select {
    display: block; width: 100%;
    border: 1px solid #d1d5db; border-radius: .375rem; background: #fff;
    padding: .5rem .75rem; color: #111827; font-size: .875rem;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,.05);
}
#unified-modal-container #import-form input[type="number"]#id_skip_rows { width: 8rem; }
#unified-modal-container #import-form input:focus,
#unified-modal-container #import-form select:focus,
#unified-modal-container #bank-not-listed-form input:focus,
#unified-modal-container #bank-not-listed-form textarea:focus {
    outline: none; border-color: #3b82f6; box-shadow: 0 0 0 1px #3b82f6;
}

/* ── Source tiles ── */
#unified-modal-container #source-group > p:first-child { font-size: .875rem; font-weight: 500; }
#unified-modal-container #source-group .grid {
    display: grid; grid-template-columns: 1fr; gap: .5rem;
}
@media (min-width: 640px) {
    #unified-modal-container #source-group .grid { grid-template-columns: 1fr 1fr; }
}
#unified-modal-container #source-group label.cursor-pointer { cursor: pointer; display: block; margin: 0; }
#unified-modal-container .source-radio + span {
    display: flex; align-items: center; gap: .75rem; width: 100%;
    border: 1px solid #d1d5db; border-radius: .5rem; background: #fff;
    padding: .625rem .75rem; transition: border-color .15s ease, background .15s ease;
}
#unified-modal-container .source-radio + span:hover { border-color: #9ca3af; }
#unified-modal-container .source-radio:checked + span {
    border-color: #2563eb; background: #eff6ff; box-shadow: 0 0 0 1px #2563eb;
}
#unified-modal-container .source-radio + span i { font-size: 1.125rem; color: #6b7280; }
#unified-modal-container #source-group .uppercase {
    text-transform: uppercase; letter-spacing: .05em; font-size: .75rem;
    font-weight: 600; color: #9ca3af; margin: .75rem 0 .375rem;
}

/* ── Format chip + hint ── */
#unified-modal-container #format-chip > span {
    display: inline-flex; align-items: center; gap: .5rem; border-radius: 9999px;
    background: #eff6ff; border: 1px solid #dbeafe; color: #1d4ed8;
    padding: .25rem .75rem; font-size: .875rem; font-weight: 500;
}
#unified-modal-container #source-hint {
    margin-top: .75rem; border: 1px solid #dbeafe; background: #eff6ff; color: #1e40af;
    border-radius: .375rem; padding: .5rem .75rem; font-size: .75rem;
}

/* ── Bank-not-listed modal ── */
#unified-modal-container .bnl-intro {
    border: 1px solid #dbeafe; background: #eff6ff; color: #1e40af;
    border-radius: .5rem; padding: .75rem; font-size: .875rem; line-height: 1.5;
    margin-bottom: 1rem;
}
#unified-modal-container #bank-not-listed-form > * + * { margin-top: 1rem; }
#unified-modal-container #bank-not-listed-form input[type="file"] { font-size: .875rem; }

/* ============================================================================
 * User-request detail modal (Fehler / Korrektur, Feature-Wunsch, …)
 * Scoped, static styles so the fragment renders identically regardless of the
 * host page's Tailwind build. Tiered layout: report → context → chat → action.
 * ==========================================================================*/
#unified-modal-container .urq-body {
    color: #374151;
    font-size: .875rem;
    line-height: 1.5;
}
#unified-modal-container .urq-body > * + * { margin-top: 1.25rem; }
#unified-modal-container .urq-label { font-weight: 600; color: #374151; }

/* ── Meta strip ── */
#unified-modal-container .urq-meta {
    display: flex; flex-wrap: wrap; align-items: center; gap: .5rem;
}
#unified-modal-container .urq-meta-item { color: #6b7280; font-size: .8125rem; }
#unified-modal-container .urq-meta-spacer { flex: 1 1 auto; }
#unified-modal-container .urq-id-chip {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: .72rem; color: #6b7280;
    background: #f3f4f6; border: 1px solid #e5e7eb; border-radius: .375rem;
    padding: .125rem .5rem;
}

/* ── Report (primary content, plain + prominent, no box) ── */
#unified-modal-container .urq-report-field { margin-bottom: .5rem; color: #374151; }
#unified-modal-container .urq-report-text {
    margin: 0; font-size: 1rem; line-height: 1.6; color: #1f2937;
    white-space: pre-wrap; overflow-wrap: anywhere; text-wrap: pretty;
}

/* ── Technischer Kontext (quiet collapsible panel) ── */
#unified-modal-container .urq-context {
    border: 1px solid #e5e7eb; border-radius: .5rem; background: #f9fafb; overflow: hidden;
}
#unified-modal-container .urq-context-summary {
    display: flex; align-items: center; gap: .5rem;
    padding: .625rem .875rem; cursor: pointer;
    font-weight: 500; font-size: .8125rem; color: #374151;
    list-style: none; user-select: none;
}
#unified-modal-container .urq-context-summary::-webkit-details-marker { display: none; }
#unified-modal-container .urq-context-summary::before {
    content: "\203A"; /* › */
    display: inline-block; color: #9ca3af; font-size: 1rem; line-height: 1;
    transition: transform .15s ease;
}
#unified-modal-container .urq-context[open] .urq-context-summary::before { transform: rotate(90deg); }
#unified-modal-container .urq-context[open] .urq-context-summary { border-bottom: 1px solid #e5e7eb; }
#unified-modal-container .urq-context-body { padding: .75rem .875rem; }
#unified-modal-container .urq-dl {
    display: grid; grid-template-columns: minmax(6rem, max-content) 1fr;
    column-gap: 1rem; row-gap: .375rem; margin: 0;
}
#unified-modal-container .urq-dl dt { font-weight: 500; color: #6b7280; font-size: .72rem; margin: 0; }
#unified-modal-container .urq-dl dd { color: #374151; font-size: .72rem; margin: 0; min-width: 0; }
#unified-modal-container .urq-mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .7rem;
}
#unified-modal-container .urq-break { overflow-wrap: anywhere; word-break: break-word; }
#unified-modal-container .urq-ua { margin-top: .625rem; font-size: .72rem; color: #6b7280; }
#unified-modal-container .urq-ua .urq-label { font-weight: 600; }
#unified-modal-container .urq-console { margin-top: .75rem; }
#unified-modal-container .urq-console .urq-label { font-size: .72rem; }
#unified-modal-container .urq-console-list {
    list-style: none; margin: .375rem 0 0; padding: 0;
    display: flex; flex-direction: column; gap: .375rem;
}
#unified-modal-container .urq-console-error {
    background: #fef2f2; border: 1px solid #fecaca; border-radius: .375rem;
    padding: .375rem .5rem; font-size: .72rem; color: #7f1d1d; overflow-wrap: anywhere;
}
#unified-modal-container .urq-console-msg { font-weight: 600; }
#unified-modal-container .urq-console-src { color: #b91c1c; }

/* ── Attachments ── */
#unified-modal-container .urq-attach-list {
    list-style: none; margin: .375rem 0 0; padding: 0;
    display: flex; flex-direction: column; gap: .25rem;
}
#unified-modal-container .urq-attach-link { color: #1d4ed8; text-decoration: none; font-size: .875rem; }
#unified-modal-container .urq-attach-link:hover { text-decoration: underline; }

/* ── Non-staff answer block ── */
#unified-modal-container .urq-answer {
    border: 1px solid #e5e7eb; background: #f9fafb; border-radius: .5rem; padding: .75rem .875rem;
}
#unified-modal-container .urq-answer-text {
    margin: .25rem 0 0; color: #1f2937; white-space: pre-wrap; overflow-wrap: anywhere;
}

/* ── Support-Chat transcript ── */
#unified-modal-container .urq-chat-head {
    display: flex; align-items: center; gap: .5rem;
    font-weight: 600; font-size: .8125rem; color: #374151; margin-bottom: .625rem;
}
#unified-modal-container .urq-chat-head i { color: #6b7280; }
#unified-modal-container .urq-chat-thread { display: flex; flex-direction: column; gap: .5rem; }
#unified-modal-container .urq-msg {
    max-width: 85%; align-self: flex-start;
    background: #f3f4f6; border: 1px solid #eceef1; border-radius: .625rem;
    padding: .5rem .7rem;
}
#unified-modal-container .urq-msg--support {
    align-self: flex-end; background: #eff6ff; border-color: #dbeafe;
}
#unified-modal-container .urq-msg-head {
    display: flex; align-items: baseline; gap: .5rem; margin-bottom: .2rem;
}
#unified-modal-container .urq-msg-sender { font-weight: 600; font-size: .75rem; color: #374151; }
#unified-modal-container .urq-msg--support .urq-msg-sender { color: #1d4ed8; }
#unified-modal-container .urq-msg-time { font-size: .6875rem; color: #9ca3af; }
#unified-modal-container .urq-msg-body {
    font-size: .8125rem; color: #1f2937; line-height: 1.45;
    white-space: pre-wrap; overflow-wrap: anywhere;
}
#unified-modal-container .urq-chat-empty { font-size: .75rem; color: #9ca3af; }
#unified-modal-container .urq-chat-hint { margin-top: .625rem; font-size: .72rem; color: #6b7280; }

/* ── Admin action zone ── */
#unified-modal-container .urq-form {
    border-top: 1px solid #e5e7eb; padding-top: 1rem;
    display: flex; flex-direction: column; gap: .875rem;
}
#unified-modal-container .urq-field { display: flex; flex-direction: column; }
#unified-modal-container .urq-field-label {
    font-size: .8125rem; font-weight: 500; color: #374151; margin-bottom: .375rem;
}
#unified-modal-container .urq-input {
    width: 100%; border: 1px solid #d1d5db; border-radius: .375rem; background: #fff;
    padding: .5rem .75rem; color: #111827; font-size: .875rem; font-family: inherit;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,.05);
}
#unified-modal-container .urq-input:focus {
    outline: none; border-color: #3b82f6; box-shadow: 0 0 0 1px #3b82f6;
}
#unified-modal-container .urq-textarea { resize: vertical; min-height: 4.5rem; line-height: 1.45; }
#unified-modal-container .urq-error { font-size: .8125rem; color: #dc2626; margin: 0; }

/* ── Hidden copy source: present in DOM (clipboard .value + execCommand) but
 *    permanently offscreen, so no flash and no display:none selection issue. ── */
#unified-modal-container .urq-copy-src {
    position: absolute; left: -9999px; top: 0;
    width: 1px; height: 1px; opacity: 0; pointer-events: none;
}

/* ── Copy button transient success state ── */
#unified-modal-container .urq-copy-btn.is-copied {
    color: #15803d; border-color: #86efac; background: #f0fdf4;
}

@media (prefers-reduced-motion: reduce) {
    #unified-modal-container .urq-context-summary::before { transition: none; }
}

/* ============================================================================
 * Unified Buchhaltung import modal (buchhaltung/import_modal.html)
 * Shared bh-import-* pieces + the Transaktionen (ti-*) and Rechnungen (iv-*)
 * tab panels. Static + scoped for the same Tailwind-Play-CDN reason as above.
 * ==========================================================================*/

/* ── Per-tab footer groups (toggled by switchBuchhaltungImportTab) ── */
#unified-modal-container .bh-import-footer {
    display: flex; align-items: center; justify-content: flex-end; gap: .75rem;
}
#unified-modal-container .bh-import-footer.hidden { display: none !important; }
@media (max-width: 640px) {
    #unified-modal-container .bh-import-footer { flex-direction: column; gap: .5rem; width: 100%; }
    #unified-modal-container .bh-import-footer .um-btn { width: 100%; justify-content: center; }
}

/* ── Shared pieces ── */
:is(#unified-modal-container, .iv-upload-scope) .bh-import-error-box {
    margin-bottom: .75rem; border: 1px solid #fecaca; background: #fef2f2;
    border-radius: .5rem; padding: .75rem; font-size: .875rem; color: #991b1b;
}
:is(#unified-modal-container, .iv-upload-scope) .bh-import-error-box p { margin: 0; }
#unified-modal-container .bh-import-error-box p + p { margin-top: .25rem; }
:is(#unified-modal-container, .iv-upload-scope) .bh-import-intro {
    font-size: .875rem; color: #4b5563; line-height: 1.5; margin: 0 0 .75rem;
}
#unified-modal-container .bh-import-label {
    display: block; font-size: .875rem; font-weight: 500; color: #374151; margin: 0 0 .5rem;
}

/* Self-containment: never rely on the host page's preflight for sizing */
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dropzone,
:is(#unified-modal-container, .iv-upload-scope) .bh-import-error-box,
#unified-modal-container .ti-source-radio + span,
:is(#unified-modal-container, .iv-upload-scope) .iv-file-list,
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-summary,
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-new,
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-box,
#unified-modal-container .bh-import-help { box-sizing: border-box; }

/* Dropzone (same look as #import-dropzone on the Ausgaben tab) */
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dropzone {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    width: 100%; border: 2px dashed #d1d5db; border-radius: .5rem;
    background: #f9fafb; padding: 2rem 1.5rem; text-align: center; cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease;
    margin: 1rem 0 0;
}
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dropzone:hover { background: #f3f4f6; }
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dropzone.is-drag {
    border-color: #2563eb; background: #eff6ff; box-shadow: 0 0 0 2px #3b82f6;
}
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dz-state { display: flex; flex-direction: column; align-items: center; }
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dz-state.hidden { display: none !important; }
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dropzone i { font-size: 2rem; color: #9ca3af; margin-bottom: .5rem; }
#unified-modal-container .bh-import-dropzone .ti-dz-check { color: #16a34a; }
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dz-line { font-size: .875rem; color: #374151; margin: 0 0 .25rem; }
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dz-cta { font-weight: 600; color: #1d4ed8; }
:is(#unified-modal-container, .iv-upload-scope) .bh-import-dz-sub { font-size: .75rem; color: #6b7280; margin: 0; }
#unified-modal-container .bh-import-dz-filename {
    font-size: .875rem; font-weight: 500; color: #111827; margin: 0 0 .25rem;
    overflow-wrap: anywhere;
}

/* Collapsible help (native <details>) */
#unified-modal-container .bh-import-help {
    margin-top: 1rem; border: 1px solid #e5e7eb; border-radius: .5rem;
    background: #f9fafb; overflow: hidden;
}
#unified-modal-container .bh-import-help summary {
    display: flex; align-items: center; gap: .5rem;
    padding: .625rem .875rem; cursor: pointer; user-select: none; list-style: none;
    font-size: .8125rem; font-weight: 500; color: #374151;
}
#unified-modal-container .bh-import-help summary::-webkit-details-marker { display: none; }
#unified-modal-container .bh-import-help summary i { color: #6b7280; }
#unified-modal-container .bh-import-help[open] summary { border-bottom: 1px solid #e5e7eb; }
#unified-modal-container .bh-import-help-body {
    padding: .75rem .875rem; display: flex; flex-direction: column; gap: .75rem;
}
#unified-modal-container .bh-import-help-block {
    border: 1px solid #dbeafe; background: #eff6ff; border-radius: .5rem; padding: .75rem;
}
#unified-modal-container .bh-import-help-block h4 {
    display: flex; align-items: center; gap: .5rem; margin: 0 0 .375rem;
    font-size: .8125rem; font-weight: 600; color: #1e40af;
}
#unified-modal-container .bh-import-help-block ol {
    margin: 0; padding-left: 1.25rem; font-size: .8125rem; color: #1e3a8a;
    display: flex; flex-direction: column; gap: .125rem;
}

/* ── Transaktionen tab: source tiles ── */
#unified-modal-container .ti-source-grid {
    display: grid; grid-template-columns: 1fr; gap: .5rem;
}
@media (min-width: 640px) {
    #unified-modal-container .ti-source-grid { grid-template-columns: 1fr 1fr; }
}
#unified-modal-container .ti-source-tile { cursor: pointer; display: block; margin: 0; }
#unified-modal-container .ti-source-radio + span {
    display: flex; align-items: center; gap: .75rem; width: 100%;
    border: 1px solid #d1d5db; border-radius: .5rem; background: #fff;
    padding: .625rem .75rem; transition: border-color .15s ease, background .15s ease;
}
#unified-modal-container .ti-source-radio + span:hover { border-color: #9ca3af; }
#unified-modal-container .ti-source-radio:checked + span {
    border-color: #2563eb; background: #eff6ff; box-shadow: 0 0 0 1px #2563eb;
}
#unified-modal-container .ti-source-radio + span > i { font-size: 1.25rem; color: #6b7280; flex-shrink: 0; }
#unified-modal-container .ti-source-radio:checked + span > i { color: #2563eb; }
#unified-modal-container .ti-source-text { display: flex; flex-direction: column; min-width: 0; }
#unified-modal-container .ti-source-name { font-size: .875rem; font-weight: 600; color: #1f2937; }
#unified-modal-container .ti-source-desc { font-size: .75rem; color: #6b7280; }

/* ── Rechnungen tab: file list + duplicate review ── */
:is(#unified-modal-container, .iv-upload-scope) .iv-multi-hint {
    display: flex; align-items: center; gap: .375rem; margin-top: .375rem;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-file-list {
    margin-top: .75rem; border: 1px solid #bbf7d0; background: #f0fdf4;
    border-radius: .5rem; padding: .625rem .75rem; font-size: .8125rem;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-file-list.hidden { display: none !important; }
:is(#unified-modal-container, .iv-upload-scope) .iv-file-list-title { font-weight: 600; color: #166534; margin: 0 0 .375rem; }
:is(#unified-modal-container, .iv-upload-scope) .iv-file-row {
    display: flex; align-items: center; gap: .5rem; color: #374151; overflow-wrap: anywhere;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-file-row i { color: #dc2626; flex-shrink: 0; }
:is(#unified-modal-container, .iv-upload-scope) .iv-file-row i.iv-file-img { color: #7c3aed; }
:is(#unified-modal-container, .iv-upload-scope) .iv-file-count { margin-top: .375rem; font-size: .75rem; font-weight: 500; color: #4b5563; }

:is(#unified-modal-container, .iv-upload-scope) .iv-duplicate-ui { margin-top: .75rem; }
:is(#unified-modal-container, .iv-upload-scope) .iv-duplicate-ui.hidden { display: none !important; }
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-summary {
    display: flex; flex-wrap: wrap; align-items: center; gap: .375rem 1.25rem;
    border: 1px solid #e5e7eb; background: #fff; border-radius: .5rem;
    padding: .625rem .75rem; font-size: .8125rem; color: #374151; margin-bottom: .75rem;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-summary .iv-sum-import { color: #15803d; font-weight: 600; }
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-summary .iv-sum-skip { color: #6b7280; }
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-new {
    border: 1px solid #bbf7d0; background: #f0fdf4; border-radius: .5rem;
    padding: .625rem .75rem; margin-bottom: .75rem; font-size: .8125rem;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-new h4 {
    margin: 0 0 .375rem; font-size: .8125rem; font-weight: 600; color: #166534;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-box {
    border: 1px solid #fde68a; background: #fffbeb; border-radius: .5rem; padding: .75rem;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-box h4 {
    margin: 0 0 .25rem; font-size: .8125rem; font-weight: 600; color: #92400e;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-box .iv-dup-hint { margin: 0 0 .5rem; font-size: .75rem; color: #a16207; }
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-rows { display: flex; flex-direction: column; gap: .375rem; }
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-row {
    display: flex; align-items: center; justify-content: space-between; gap: .5rem;
    background: #fef3c7; border-radius: .375rem; padding: .375rem .625rem;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-row label {
    display: flex; align-items: center; gap: .5rem; cursor: pointer; margin: 0;
    font-size: .8125rem; color: #78350f; min-width: 0; overflow-wrap: anywhere;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-checkbox { width: 1rem; height: 1rem; flex-shrink: 0; accent-color: #d97706; }
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-badge {
    display: inline-block; padding: .0625rem .375rem; border-radius: .25rem;
    background: #fde68a; color: #92400e; font-size: .6875rem; font-weight: 600; flex-shrink: 0;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-meta { color: #a16207; }
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-view {
    flex-shrink: 0; font-size: .75rem; color: #1d4ed8; text-decoration: none; white-space: nowrap;
}
:is(#unified-modal-container, .iv-upload-scope) .iv-dup-view:hover { text-decoration: underline; }
