nui-upload-list { display: block; min-width: 0; color: var(--nui-text); font-family: var(--nui-font-sans); font-size: var(--nui-font-size-sm); }
.nui-upload-list { min-width: 0; border: 1px solid var(--nui-border); border-radius: var(--nui-radius-sm); background: var(--nui-panel); }
.nui-upload-list-header { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 32px; padding: 3px 8px; border-bottom: 1px solid var(--nui-border); color: var(--nui-text-muted); font-size: var(--nui-font-size-xs); }
.nui-upload-list-header > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.nui-upload-list-header > button { flex: 0 0 auto; }
.nui-upload-list-scroll { max-height: 240px; overflow-y: auto; overscroll-behavior: contain; }
.nui-upload-list-row { display: flex; align-items: center; gap: 8px; min-width: 0; min-height: 45px; padding: 4px 8px; border-bottom: 1px solid var(--nui-border); }
.nui-upload-list-row:last-child { border-bottom: 0; }
.nui-upload-list-thumb { position: relative; display: grid; flex: 0 0 36px; place-items: center; width: 36px; height: 36px; overflow: hidden; border-radius: var(--nui-radius-sm); background: var(--nui-raised-hover); color: var(--nui-text-muted); }
.nui-upload-list-thumb img { width: 100%; height: 100%; object-fit: contain; }
.nui-upload-list-thumb.is-image-error img { display: none; }
.nui-upload-list-image-error { display: none; }
.nui-upload-list-thumb.is-image-error .nui-upload-list-image-error { display: block; }
.nui-upload-list-detail { flex: 1 1 auto; min-width: 0; }
.nui-upload-list-primary { display: flex; align-items: center; gap: 7px; min-width: 0; }
.nui-upload-list-name { flex: 1 1 auto; min-width: 0; overflow: hidden; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.nui-upload-list-size { flex: 0 0 auto; color: var(--nui-text-muted); font-size: var(--nui-font-size-xs); white-space: nowrap; }
.nui-upload-list-badge { flex: 0 0 auto; padding: 1px 5px; border-radius: var(--nui-radius-sm); background: var(--nui-raised-hover); color: var(--nui-text-muted); font-size: var(--nui-font-size-xs); white-space: nowrap; }
.nui-upload-list-row.is-done .nui-upload-list-badge { color: var(--nui-success); }
.nui-upload-list-row.is-info .nui-upload-list-badge { color: var(--nui-info); }
.nui-upload-list-row.is-error .nui-upload-list-badge { color: var(--nui-danger); }
.nui-upload-list-row.is-uploading .nui-upload-list-badge { color: var(--nui-accent-fg); background: var(--nui-accent-fill); }
.nui-upload-list-message { overflow: hidden; color: var(--nui-text-muted); font-size: var(--nui-font-size-xs); text-overflow: ellipsis; white-space: nowrap; }
.nui-upload-list-row.is-error .nui-upload-list-message { color: var(--nui-danger); }
.nui-upload-list-progress { height: 3px; margin-top: 3px; overflow: hidden; border-radius: 2px; background: var(--nui-raised-hover); }
.nui-upload-list-progress > span { display: block; height: 100%; background: var(--nui-accent); }
.nui-upload-list-progress > span.is-indeterminate { width: 35%; animation: nui-upload-list-indeterminate 1.2s ease-in-out infinite alternate; }
.nui-upload-list-actions { flex: 0 0 auto; max-width: 40%; }
.nui-upload-list-empty { margin: 0; padding: 12px 8px; color: var(--nui-text-muted); text-align: center; }
@keyframes nui-upload-list-indeterminate { from { transform: translateX(-100%); } to { transform: translateX(290%); } }
@media (prefers-reduced-motion: reduce) { .nui-upload-list-progress > span.is-indeterminate { animation: none; width: 100%; opacity: .5; } }
@media (max-width: 480px) { .nui-upload-list-row { flex-wrap: wrap; } .nui-upload-list-actions { flex-basis: 100%; max-width: none; margin-left: 44px; } }
