.file-upload{border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px 14px;transition:background .15s,border-color .15s}
.file-upload-label{font-size:17px;font-weight:600;margin:0 0 12px}
.file-upload-panel{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center}
.file-upload-icon{width:48px;height:48px;border-radius:var(--radius);display:grid;place-items:center;background:var(--mist);color:var(--primary)}
.file-upload-icon svg{width:24px;height:24px}
.file-upload-copy{min-width:0;display:grid;gap:4px}
.file-upload-copy strong{font-size:15px;font-weight:600}
.file-upload-copy span{font-size:13px;color:var(--muted);line-height:1.45}
.file-add{white-space:nowrap;min-height:44px}
.file-upload-hint{font-size:12px;color:var(--muted);margin:12px 0 0 64px}
.file-upload.is-dragover{border-color:var(--primary);background:var(--mist)}
.file-list{display:grid;margin-top:14px}
.file-upload-empty{border-top:1px solid var(--line);padding-top:12px;font-size:13px;color:var(--muted)}
.file-upload-item{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding:12px 0}
.file-upload-item>span{display:grid;gap:3px;min-width:0;overflow-wrap:anywhere}
.file-upload-item strong{font-size:14px;font-weight:500}
.file-upload-item small{font:11px/1.4 Mono,monospace;color:var(--muted)}
.file-upload-item button{margin-left:auto;flex:0 0 auto}
.file-upload-total{border-top:1px solid var(--line);padding-top:10px;text-align:right;color:var(--muted);font:11px/1.5 Mono,monospace}
.file-upload-status,.file-native-input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;border-radius:0!important;background:transparent!important}
@media(max-width:560px){.file-upload{padding:16px 14px 12px}.file-upload-panel{grid-template-columns:40px minmax(0,1fr);gap:12px}.file-upload-icon{width:40px;height:40px}.file-upload-copy strong{font-size:14px}.file-add{grid-column:2;justify-self:start}.file-upload-hint{margin-left:52px}}
@media(prefers-reduced-motion:reduce){.file-upload{transition:none}}
