.directory-browser-modal { width: min(960px, 90vw); height: min(85vh, 900px); max-height: 90vh; border-radius: var(--radius-xl); } .directory-browser-panel { display: flex; flex-direction: column; height: 100%; } .directory-browser-header { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-xl); padding: 1.5rem; border-bottom: 1px solid var(--border-base); background-color: var(--surface-secondary); } .directory-browser-heading { display: flex; flex-direction: column; gap: var(--space-sm); } .directory-browser-title { font-size: var(--font-size-2xl); line-height: var(--line-height-tight); font-weight: var(--font-weight-semibold); color: var(--text-primary); } .directory-browser-description { font-size: var(--font-size-xl); line-height: var(--line-height-relaxed); color: var(--text-secondary); } .directory-browser-body { flex: 1; min-height: 0; padding: 1.5rem; display: flex; flex-direction: column; gap: var(--space-lg); background-color: var(--surface-base); } .directory-browser-current { display: flex; align-items: center; justify-content: space-between; gap: var(--space-md); width: 100%; } .directory-browser-current-meta { display: flex; flex-direction: column; gap: var(--space-2xs); } .directory-browser-current-label { font-size: var(--font-size-sm); text-transform: uppercase; letter-spacing: 0.04em; color: var(--text-secondary); } .directory-browser-current-path { font-family: var(--font-family-mono); font-size: var(--font-size-base); color: var(--text-primary); } .directory-browser-current-select { width: auto; } .directory-browser-current-actions { display: flex; align-items: center; gap: var(--space-sm); flex-wrap: wrap; justify-content: flex-end; } .directory-browser-close { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: var(--radius-full); border: 1px solid var(--border-base); background-color: var(--surface-base); color: var(--text-primary); transition: background-color 0.15s ease; } .directory-browser-close:hover { background-color: var(--surface-hover); } .directory-browser-list { flex: 1; min-height: 0; } .directory-browser-row { display: flex; align-items: center; gap: var(--space-md); } .directory-browser-row-main { flex: 1; display: flex; align-items: center; gap: var(--space-md); text-align: left; background: transparent; border: none; color: var(--text-primary); padding: 0; cursor: pointer; } .directory-browser-row-icon { width: 36px; height: 36px; border-radius: var(--radius-lg); background-color: var(--surface-secondary); display: inline-flex; align-items: center; justify-content: center; color: var(--text-muted); } .directory-browser-row-name { font-size: var(--font-size-lg); font-weight: var(--font-weight-medium); } .directory-browser-row-spinner { width: 18px; height: 18px; color: var(--text-muted); } .directory-browser-select { width: auto; min-width: 90px; } .directory-browser-select:hover { background-color: var(--selection-highlight-bg); border-color: var(--accent-primary); color: var(--accent-primary); } .directory-browser-loading { display: inline-flex; align-items: center; gap: var(--space-sm); color: var(--text-secondary); }