.file-upload{width:100%}.file-upload__label{margin-bottom:.5rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--color-text)}.file-upload__required{color:var(--color-primary);margin-left:.25rem}.file-upload__dropzone{position:relative;width:100%;border-radius:.375rem;border-width:1px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;min-height:3rem;display:flex;align-items:center;justify-content:space-between;padding:.75rem;gap:.5rem}.file-upload__dropzone:hover:not(.is-disabled){border-color:color-mix(in oklab,var(--color-border),var(--color-primary) 40%)}.file-upload__dropzone.is-droppable{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;min-height:5.5rem;text-align:center}.file-upload__dropzone.is-dragging{box-shadow:0 0 0 3px color-mix(in oklab,var(--color-primary),white 80%);border-color:var(--color-primary)}.file-upload__dropzone.is-disabled{opacity:.6;cursor:not-allowed}.file-upload__input{display:none}.file-upload__content{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.75rem}.file-upload__hint{font-size:.875rem;line-height:1.25rem;color:var(--color-muted)}.file-upload__accept{font-size:.75rem;line-height:1rem;color:color-mix(in oklab,var(--color-muted),black 20%)}.file-upload__filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;color:var(--color-text);max-width:70%}.file-upload__clear{border-radius:.375rem;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:600;color:var(--color-primary);border:1px solid var(--color-primary);background:var(--color-surface);transition:all .2s ease}.file-upload__clear:hover{background:var(--color-primary);color:white}.file-upload__helper{color:var(--color-muted)}.file-upload__error,.file-upload__helper{margin-top:.5rem;font-size:.75rem;line-height:1rem}.file-upload__error{color:#b91c1c}