.dropzone{border:2px dashed var(--accent);border-radius:16px;padding:2.75rem 1rem;text-align:center;background:var(--accent-soft);color:var(--accent-strong);cursor:pointer;transition:background-color 0.2s ease,border-color 0.2s ease,color 0.2s ease}.dropzone.dragover{background:rgba(0,102,204,0.18);border-color:var(--accent-strong)}.file-list{list-style:none;padding:0;margin:1.25rem 0 0;display:flex;flex-direction:column;gap:0.85rem}.file-list__item{background:var(--surface);border:1px solid var(--border-color);border-radius:12px;padding:0.85rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;box-shadow:var(--shadow-soft)}.file-meta{display:flex;flex-direction:column;gap:0.25rem;overflow:hidden}.file-meta strong{color:var(--text-primary);font-weight:600;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.file-meta span{color:var(--text-muted);font-size:0.9rem}.file-list__item button{background:transparent;color:var(--accent);border:1px solid rgba(0,102,204,0.25);padding:0.45rem 0.6rem;border-radius:8px;margin-top:0;transition:background-color 0.2s ease,color 0.2s ease}.file-list__item button:hover,.file-list__item button:focus{background:var(--accent-soft);color:var(--accent-strong)}.progress-message{margin-top:1rem;font-weight:600;color:var(--accent-strong)}.error-message{margin-top:1rem;font-weight:600;color:#d64545}body[data-mode="dark"] .error-message{color:#ff8484}body[data-mode="dark"] .dropzone{color:#c8d8ff}