.files-browser { min-width:0; }
.files-panel { padding:24px; border:1px solid var(--line); border-radius:20px; background:var(--paper); }
.files-toolbar,.files-crumbs,.files-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.files-toolbar { margin-bottom:12px; }
.files-crumbs { margin:18px 0; overflow-wrap:anywhere; }
.files-crumbs button { max-width:100%; overflow-wrap:anywhere; white-space:normal; }
.files-table-wrap { overflow-x:auto; margin-top:16px; }
.files-table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; }
.files-table th,.files-table td { padding:14px 10px; border-bottom:1px solid var(--line); vertical-align:middle; }
.files-table th { font-weight:600; white-space:nowrap; }
.files-table td:first-child { min-width:190px; max-width:460px; overflow-wrap:anywhere; }
.files-name { text-align:left; white-space:normal; overflow-wrap:anywhere; }
.files-actions { min-width:175px; }
.files-download { display:inline-block; padding:8px; text-decoration:underline; }
.files-preview { white-space:pre-wrap; overflow-wrap:anywhere; max-height:60vh; overflow:auto; padding:16px; background:var(--page); border-radius:12px; font-size:13px; }
.files-dialog { width:min(760px,94vw); max-height:90dvh; overflow:auto; }
.files-dialog h2 { overflow-wrap:anywhere; }
.files-dialog label { display:grid; gap:8px; margin:16px 0; }
.files-dialog textarea { width:100%; font-family:monospace; }
@media(max-width:600px) { .files-panel { padding:14px; } .files-toolbar { gap:8px; } .files-toolbar button { flex:1 1 42%; } .files-table { font-size:12px; } }
