
.fancyform input[type="submit"] {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-transition-property: background;
    -moz-transition-property: background;
    -o-transition-property: background;
    transition-property: background;
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s;
/*    border: 1px solid #444;*/
/*    background: #333;
    color: white;*/
    padding: 10px 25px;
    display: inline-block;
    cursor: pointer;
    }

.fancyform input[type="submit"]:hover {
/*    background: #555;*/
}

.fancyform .register-table  {
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    padding: 10px;
}

.fancyform .invalid {
    background: #EDD2CC !important;
}

.fancyform .form-component {
    margin: 5px !important;
	
}



.fancyform .form-component > label:first-child
{
	/*padding: 0.5em;
	min-width:50px;
    float: left;*/
    color: #333;
}

.fancyform .form-buttons {
   /* text-align: center;*/
    /*clear: both;*/
    /*margin-top: 1em !important;*/
	margin-left: 5px;
}



.fancyform .form-buttons input:not(:last-child) {
    margin-right: 5px;
}

.fancyform .radio-vertical
{
    float: left;
}

.fancyform .radio-vertical label
{
    display: block;
    clear: both;
    margin: 3px 0px !important;
    
}

.fancyform .radio-horizontal label
{
    margin: 0px 10px 0px 0px !important;
}

/*
    Fancy Form
*/

.fancyform {
 /*max-width: 670px;*/
 
    margin: 0 auto;
	padding: 1em;
	text-align:left;
}


.fancyform *
{
  
    margin: 0px auto;
    padding: 0px;
    text-decoration: none;
    list-style-type: none;
    border: 0;
    outline: 0;
    border-radius: 0;	
   
}

.fancyform *:focus
{
    border-bottom-style: inset;
}
.fancyform label{
	padding: 2px;
	text-align:right;
}
.fancyform input:not([type="submit"]), .fancyform textarea, .fancyform select
{
    width: 100%;
   /* min-width: 400px;*/
    padding: 4px;
    background: #fafafa;
    border: 1px solid #ccc; 
}

.fancyform input:not([type="submit"]):focus, .fancyform textarea:focus
{
    /* border-left: 2px solid #ccc;
    margin-left: -1px;
    margin-right: -1px;
    border-right: 2px solid #ccc; */
    box-shadow: 0 2px 0px #f99e45;
    border-bottom: 0;
    margin-bottom: 1px;
}

/*** radio, checkbox ***/

.fancyform input[type="radio"],.fancyform input[type="checkbox"]
{
    display: none;
}

.fancyform input[type="radio"] + label:before,.fancyform input[type="checkbox"] + label:before
{
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;    
    vertical-align: middle;
    background: #fafafa;
    border: 1px solid #ccc;
    margin-right: 5px;
    margin-bottom: 3px;
}

.fancyform input[type="radio"] + label:before
{
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    border: 1px solid #ccc;
}

.fancyform input[type="radio"]:checked + label:before, .fancyform input[type="checkbox"]:checked + label:before
{
    background: #333;
    border: 1px solid #ac5b0f;
}


/*** file ***/

.fancyform input[type="file"]
{
    cursor: pointer;
    border: 0;
    background: transparent;
}

.fancyform input[type="file"]::-webkit-file-upload-button {
    cursor: pointer;
    background: #ddd;
    border: 0;
    border-bottom: 2px solid #bababa;
    padding: 5px 10px;
    outline: 0;
}

.fancyform input[type="file"]::-webkit-file-upload-button:hover
{
    background: #333;
    border-bottom: 2px solid #ac5b0f;
    color: #fafafa;
}

.fancyform input[type="file"]:focus
{
    box-shadow: 0 0 0 red;
}

/*** select ***/

.fancyform select
{
    /*min-width: 200px;*/
    outline: 0;
    padding: 3px 0px 3px 0px;  
    background: #fafafa;
    border: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
   /* width: calc(100% - 130px);*/
}

.fancyform select[size]:not([size="1"]), .fancyform select[multiple]
{
    padding: 0px;
}
