.file-selector-overlay { z-index: 2000; align-items: center; } .file-selector { width: 90%; max-width: 600px; height: 80vh; color: var(--text-primary); background-color: var(--bg-secondary); border-radius: 15px; display: flex; flex-direction: column; position: relative; overflow: hidden; } .file-selector-header { display: flex; align-items: center; padding: 10px; border-bottom: 2px solid var(--border-color); } .current-path .separator { color: var(--text-secondary); padding: 0 4px; } .back-button { background: none; border: none; fill: var(--border-color); user-select: none; } .current-path { flex-grow: 1; font-size: 16px; overflow: scroll; white-space: nowrap; user-select: none; } .close-selector { background: none; border: none; font-size: 20px; color: var(--border-color); padding: 0 5px; } .file-list { flex-grow: 1; overflow-y: auto; padding: 10px; transition: transform 0.3s ease, opacity 0.3s ease; } .file-list.switching { transform: scale(0.95); opacity: 0; } .file-item { display: flex; align-items: center; padding: 10px; border-radius: 8px; position: relative; overflow: hidden; user-select: none; svg { flex-shrink: 0; margin-right: 10px; fill: var(--text-secondary); } } .file-item span { flex-grow: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }