.btn-file {
    position: relative;
    overflow: hidden;
}

.btn-file input[type=file] {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 100%;
    min-height: 100%;
    font-size: 100px;
    text-align: right;
    filter: alpha(opacity=0);
    opacity: 0;
    outline: none;
    cursor: inherit;
    display: block;
}

.instructions {
    font-size: 18px;
    font-style: italic;
    margin-bottom: 30px;
}

body { /* just for this demo. */
    padding: 30px;
}

.btn { /* just for this demo. */
    margin-top: 5px;
}

.btn-arrow-right,
.btn-arrow-left {
    position: relative;
    padding-left: 18px;
    padding-right: 18px;
}

.btn-arrow-right {
    display: inline-block;
    cursor: default;
    margin-right: 30px;
    padding-left: 36px;
}

.btn-arrow-right:hover {
    background-color: #5cb85c;
    border-color: #4cae4c;
}

.btn-arrow-right:before,
.btn-arrow-right:after,
.btn-arrow-left:before,
.btn-arrow-left:after { /* make two squares (before and after), looking similar to the button */
    content: "";
    position: absolute;
    top: 5px; /* move it down because of rounded corners */
    width: 22px; /* same as height */
    height: 22px; /* button_outer_height / sqrt(2) */
    background: inherit; /* use parent background */
    border: inherit; /* use parent border */
    border-left-color: transparent; /* hide left border */
    border-bottom-color: transparent; /* hide bottom border */
    border-radius: 0px 4px 0px 0px; /* round arrow corner, the shorthand property doesn't accept "inherit" so it is set to 4px */
    -webkit-border-radius: 0px 4px 0px 0px;
    -moz-border-radius: 0px 4px 0px 0px;
}

.btn-arrow-right:before,
.btn-arrow-right:after {
    transform: rotate(45deg); /* rotate right arrow squares 45 deg to point right */
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
}

.btn-arrow-right:before,
.btn-arrow-left:before { /* align the "before" square to the left */
    left: -11px;
}

.btn-arrow-right:after,
.btn-arrow-left:after { /* align the "after" square to the right */
    right: -11px;
}

.btn-arrow-right:after,
.btn-arrow-left:before { /* bring arrow pointers to front */
    z-index: 1;
}

.btn-arrow-right:before,
.btn-arrow-left:after { /* hide arrow tails background */
    background-color: white;
}

.btn-delete {
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 0px;
    top: 0px;
    color: grey;
    background-color: white;
    border: 1px solid #333;
}

.btn-delete:hover {
    text-decoration: none;
}

.btn-embedded {
    margin-left: 30px;
}

.logo {
    max-width: 100%;
}

#btnSubmit {
    margin-bottom: 20px;
    box-shadow: 5px 5px 5px black;
    border: 2px solid black;
    font-weight: 600;
    font-size: 1.25em;
    border-radius: 10px;
}

#btnSubmit:hover {
    box-shadow: 2px 2px 2px black;
}

#btnSubmit:active {
    box-shadow: 0 0 0 black;
}

#cropInstructions {
    margin-bottom: 20px;
}

#imagePreviewArea {
    margin-bottom: 20px;
}

#largeCanvas {
    position: absolute;
    left: -500px;
}

#nameField {
    max-width: 400px;
}

#uploadField {
    margin-bottom: 20px;
}