.btn
{
    font-size: 14px;
    line-height: 20px;

    display: inline-block;

    margin-bottom: 0;
    padding: 4px 12px;

    cursor: pointer;
    text-align: center;
    vertical-align: middle;

    color: #333;
    border: 1px solid #bbb;
    border-color: #e6e6e6 #e6e6e6 #bfbfbf;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    border-bottom-color: #a2a2a2;
    -webkit-border-radius: 4px;
       -moz-border-radius: 4px;
            border-radius: 4px;
    background-color: #f5f5f5;
    background-image:    -moz-linear-gradient(top, #fff, #e6e6e6);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#e6e6e6));
    background-image: -webkit-linear-gradient(top, #fff, #e6e6e6);
    background-image:      -o-linear-gradient(top, #fff, #e6e6e6);
    background-image:         linear-gradient(to bottom, #fff, #e6e6e6);
    background-repeat: repeat-x;
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
       -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
            box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    text-shadow: 0 1px 1px rgba(255, 255, 255, .75);
}
.btn-success
{
    color: #fff;
    border-color: #51a351 #51a351 #387038;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    background-color: #5bb75b;
    background-image:    -moz-linear-gradient(top, #62c462, #51a351);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
    background-image: -webkit-linear-gradient(top, #62c462, #51a351);
    background-image:      -o-linear-gradient(top, #62c462, #51a351);
    background-image:         linear-gradient(to bottom, #62c462, #51a351);
    background-repeat: repeat-x;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
}
.btn-primary
{
    color: #fff;
    border-color: #04c #04c #002a80;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    background-color: #006dcc;
    background-image:    -moz-linear-gradient(top, #08c, #04c);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c));
    background-image: -webkit-linear-gradient(top, #08c, #04c);
    background-image:      -o-linear-gradient(top, #08c, #04c);
    background-image:         linear-gradient(to bottom, #08c, #04c);
    background-repeat: repeat-x;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
}
.btn-warning
{
    color: #fff;
    border-color: #f89406 #f89406 #ad6704;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    background-color: #faa732;
    background-image:    -moz-linear-gradient(top, #fbb450, #f89406);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
    background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
    background-image:      -o-linear-gradient(top, #fbb450, #f89406);
    background-image:         linear-gradient(to bottom, #fbb450, #f89406);
    background-repeat: repeat-x;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
}
.btn-danger
{
    color: #fff;
    border-color: #bd362f #bd362f #802420;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    background-color: #da4f49;
    background-image:    -moz-linear-gradient(top, #ee5f5b, #bd362f);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
    background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
    background-image:      -o-linear-gradient(top, #ee5f5b, #bd362f);
    background-image:         linear-gradient(to bottom, #ee5f5b, #bd362f);
    background-repeat: repeat-x;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
}
.progress
{
    overflow: hidden;

    height: 20px;
    margin-bottom: 20px;

    -webkit-border-radius: 4px;
       -moz-border-radius: 4px;
            border-radius: 4px;
    background-color: #f7f7f7;
    background-image:    -moz-linear-gradient(top,#f5f5f5,#f9f9f9);
    background-image: -webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));
    background-image: -webkit-linear-gradient(top,#f5f5f5,#f9f9f9);
    background-image:      -o-linear-gradient(top,#f5f5f5,#f9f9f9);
    background-image:         linear-gradient(to bottom,#f5f5f5,#f9f9f9);
    background-repeat: repeat-x;
    -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
       -moz-box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
            box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
}
.progress-success.progress-striped .bar,
.progress-striped .bar-success
{
    background-color: #62c462;
    background-image: -webkit-gradient(linear,0 100%,100% 0,color-stop(.25,rgba(255,255,255,.15)),color-stop(.25,transparent),color-stop(.5,transparent),color-stop(.5,rgba(255,255,255,.15)),color-stop(.75,rgba(255,255,255,.15)),color-stop(.75,transparent),to(transparent));
    background-image: -webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    background-image:    -moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    background-image:      -o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    background-image:         linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
}
.progress.active .bar
{
    -webkit-animation: progress-bar-stripes 2s linear infinite;
       -moz-animation: progress-bar-stripes 2s linear infinite;
        -ms-animation: progress-bar-stripes 2s linear infinite;
         -o-animation: progress-bar-stripes 2s linear infinite;
            animation: progress-bar-stripes 2s linear infinite;
}
.progress-striped .bar
{
    background-color: #149bdf;
    background-image: -webkit-gradient(linear,0 100%,100% 0,color-stop(.25,rgba(255,255,255,.15)),color-stop(.25,transparent),color-stop(.5,transparent),color-stop(.5,rgba(255,255,255,.15)),color-stop(.75,rgba(255,255,255,.15)),color-stop(.75,transparent),to(transparent));
    background-image: -webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    background-image:    -moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    background-image:      -o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    background-image:         linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
    -webkit-background-size: 40px 40px;
       -moz-background-size: 40px 40px;
         -o-background-size: 40px 40px;
            background-size: 40px 40px;
}
.progress .bar
{
    font-size: 12px;

    float: left;

    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    width: 0;
    height: 100%;

    -webkit-transition: width .6s ease;
       -moz-transition: width .6s ease;
         -o-transition: width .6s ease;
            transition: width .6s ease;
    text-align: center;

    color: #fff;
    background-color: #0e90d2;
    background-image:    -moz-linear-gradient(top,#149bdf,#0480be);
    background-image: -webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));
    background-image: -webkit-linear-gradient(top,#149bdf,#0480be);
    background-image:      -o-linear-gradient(top,#149bdf,#0480be);
    background-image:         linear-gradient(to bottom,#149bdf,#0480be);
    background-repeat: repeat-x;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
       -moz-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
            box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
    text-shadow: 0 -1px 0 rgba(0,0,0,.25);
}

/* Fix fileupload style */
#fileupload .controls span
{
    float: left;
}
#fileupload .controls button
{
    float: right;

    margin-left: 10px;
}
#fileupload .fileupload-progress
{
    float: left;

    width: 100%;
}
#fileupload .template-upload
{
    display: -webkit-box;
    display:    -moz-box;
    display: -webkit-flex;
    display:    -moz-flex;
    display: -ms-flexbox;
    display:         flex;

    vertical-align: top;

    -webkit-box-pack: justify;
       -moz-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
        -ms-justify-content: space-between;
         -o-justify-content: space-between;
            justify-content: space-between;
    -ms-flex-pack: justify;
    -webkit-box-align: start;
       -moz-box-align: start;
    -webkit-align-items: flex-start;
       -moz-align-items: flex-start;
        -ms-align-items: flex-start;
         -o-align-items: flex-start;
            align-items: flex-start;
    -ms-flex-align: start;
}
#fileupload .template-upload td
{
    margin-right: 10px;
    padding: 10px;

    -webkit-box-flex: 1;
       -moz-box-flex: 1;
    -webkit-flex: 1 auto;
       -moz-flex: 1 auto;
        -ms-flex: 1 auto;
            flex: 1 auto;
}
#fileupload .template-upload .preview
{
    min-width: 80px;
    min-height: 60px;
}
#fileupload .template-upload .name input
{
    width: 100%;
}
#fileupload .template-upload .details
{
    width: auto;
    min-width: 100px;
    margin-left: 50px;
}
#fileupload .template-upload .details > *
{
    float: left;
}
#fileupload .template-upload .details .size,
#fileupload .template-upload .details .size + div,
#fileupload .template-upload .details .size + div .progress
{
    width: 100%;
}
#fileupload .template-upload .details .actions
{
    display: -webkit-box;
    display:    -moz-box;
    display: -webkit-flex;
    display:    -moz-flex;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
}
#fileupload .template-upload .details .start,
#fileupload .template-upload .details .cancel
{
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
    -webkit-flex: 1 auto;
       -moz-flex: 1 auto;
        -ms-flex: 1 auto;
            flex: 1 auto;
}
#fileupload .template-upload .details .start button,
#fileupload .template-upload .details .cancel button
{
    width: 100%;
}
#fileupload .template-upload .details .cancel
{
    margin-left: 10px;
}
#fileupload .template-download
{
    display: -webkit-box;
    display:    -moz-box;
    display: -webkit-flex;
    display:    -moz-flex;
    display: -ms-flexbox;
    display:         flex;

    vertical-align: top;

    -webkit-box-pack: justify;
       -moz-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
        -ms-justify-content: space-between;
         -o-justify-content: space-between;
            justify-content: space-between;
    -ms-flex-pack: justify;
    -webkit-box-align: start;
       -moz-box-align: start;
    -webkit-align-items: flex-start;
       -moz-align-items: flex-start;
        -ms-align-items: flex-start;
         -o-align-items: flex-start;
            align-items: flex-start;
    -ms-flex-align: start;
}
#fileupload .template-download td
{
    margin-right: 10px;
    padding: 10px;

    -webkit-box-flex: 1;
       -moz-box-flex: 1;
    -webkit-flex: 1 auto;
       -moz-flex: 1 auto;
        -ms-flex: 1 auto;
            flex: 1 auto;
}
#fileupload .results,
#fileupload .results .files
{
    width: 100%;
}
