
.uniForm{ margin: 0; padding: 0; position: relative;} /* reset stuff */
  
  /* Some generals and more resets */
  .uniForm fieldset{ border: none; margin: 0; padding: 0; }
    .uniForm fieldset legend{ margin: 0; padding: 0; }
    
    /* This are the main units that contain form elements */
    .uniForm .ctrlHolder,
    .uniForm .buttonHolder{ margin: 0; padding: 0; clear: both; display:inline-block; }
	.uniForm .ctrlHolder,
    .uniForm .buttonHolder{ display:block; }
    
    /* Clear all floats */ 
    .uniForm:after,
      .uniForm .buttonHolder:after, 
      .uniForm .ctrlHolder:after, 
        .uniForm .ctrlHolder .multiField:after,
          .uniForm .inlineLabel:after{ content: "."; display: block; height: 0; line-height: 0; font-size: 0; clear: both; min-height: 0; visibility: hidden; }
      
      .uniForm button{ cursor: pointer; }

/* ------------------------------------------------------------------------------ */
/* ##########################   DEFAULT LAYOUT   ################################ */
/* ------------------------------------------------------------------------------ */
/*       Styles for form controls where labels are above the input elements       */
/* ------------------------------------------------------------------------------ */

      .uniForm label,
      .uniForm .label{ display: block; float: none; margin: 0 0 .5em 0; padding: 0; line-height: 100%; width: auto; font-weight:bold; line-height:1.333}
      
      /* Float the input elements */
      .uniForm .textInput,
      .uniForm .fileUpload,
      .uniForm .selectInput,
      .uniForm select,
      .uniForm textarea{ 
	    float: left; 
		width: 100%;
        margin:0;
        font-size:100%;
        color:#333;	 
	   }
	   
      * html .uniForm .textInput,
      * html .uniForm .fileUpload,
      * html .uniForm .selectInput,
      * html .uniForm select,
      * html .uniForm textarea{ 
        width: 97%;
       }	   

      .uniForm input[type='text'],
	  .uniForm .textInput,
      .uniForm .selectInput,
      .uniForm select,
      .uniForm textarea{ 	   
	    background-color:#fff;   
        border-top:1px solid #7c7c7c;
        border-left:1px solid #c3c3c3;
        border-right:1px solid #c3c3c3;
        border-bottom:1px solid #ddd;   
      }
		.uniForm textarea{
		  font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
		}
		.uniForm select{
		  font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
		  margin:1px 0;
		  height:2em; padding:2px;
		}
	  
      /* Postition the hints */
      .uniForm .formHint{ /*float: right; width: 43%;*/ margin:.3em 0 0; clear: both; }
	  .uniForm .blockLabels .formHint{ float: right; width: 43%; clear:none; }
      
      .uniForm .blockLabels .textInput,
      .uniForm .blockLabels .fileUpload,
      .uniForm .blockLabels .selectInput,
      .uniForm .blockLabels select,
      .uniForm .blockLabels textarea{ 
        width: 53%;
       }	  
	  
      /* Position the elements inside combo boxes (multiple inputs/selects/checkboxes/radio buttons per unit) */
      .uniForm ul{ float: left; width: 53%; margin: 0; padding: 0; }
        .uniForm ul li{ margin: 0 0 .5em 0; list-style: none; }
          .uniForm ul li label{ margin: 0; float: none; display: block; overflow: visible; }
        /* Alternate layout */
        .uniForm ul.alternate li{ float: left; width: 30%; margin-right: 3%; }
          .uniForm ul.alternate li label{ float: none; display: block; width: 98%; }
            .uniForm ul .textInput,
            .uniForm ul .selectInput,
            .uniForm ul select,
            .uniForm ul.alternate .textInput,
            .uniForm ul.alternate .selectInput,
            .uniForm ul.alternate select{ width: 98%; margin-top: .5em; display: block; float: none; }
            
        /* Required fields asterisk styling */
        .uniForm label em,
        .uniForm .label em{ float: left; width: 1em; margin: 0 0 0 -1em; }

/* ------------------------------------------------------------------------------ */
/* #########################   ALTERNATE LAYOUT   ############################### */
/* ------------------------------------------------------------------------------ */
/*    Styles for form controls where labels are in line with the input elements   */
/*    Set the class of the parent (preferably to a fieldset) to .inlineLabels     */
/* ------------------------------------------------------------------------------ */

      .uniForm .inlineLabels label,
      .uniForm .inlineLabels .label{ float: left; margin: .3em 2% 0 0; padding: 0; line-height: 1.333; position: relative; width: 32%; }
      
      /* Float the input elements */
      .uniForm .inlineLabels .textInput,
      .uniForm .inlineLabels .fileUpload,
      .uniForm .inlineLabels .selectInput,
      .uniForm .inlineLabels select,
      .uniForm .inlineLabels textarea{ float: left; width: 64%; }

    /* Postition the hints */
    .uniForm .inlineLabels .formHint{ margin-left:34%; clear:none; }
    
    /* Position the elements inside combo boxes (multiple inputs/selects/checkboxes/radio buttons per unit) */
    .uniForm .inlineLabels ul{ float: left; width: 66%; }
      .uniForm .inlineLabels ul li{ margin: .5em 0; }
        .uniForm .inlineLabels ul li label{ float: none; display: block; width: 100%;  }
      /* Alternate layout */
      .uniForm .inlineLabels ul.alternate li{ margin-right: 3%; margin-top: .25em; }
          .uniForm .inlineLabels ul li label .textInput,
          .uniForm .inlineLabels ul li label textarea,
          .uniForm .inlineLabels ul li label select{ float: none; display: block; width: 98%;  }
    
    /* Required fields asterisk styling */
    .uniForm .inlineLabels label em,
    .uniForm .inlineLabels .label em{ display: block; float: none; margin: 0; position: absolute; right: -10px; }

/* ----------------------------------------------------------------------------- */
/* ########################### Additional Stuff ################################ */
/* ----------------------------------------------------------------------------- */

  /* Generals */
    .uniForm legend{ color: inherit; }
    
      .uniForm .secondaryAction{ float: left; }
      
	  .uniForm .inlineLabel { font-weight:normal !important; }
	  
      /* .inlineLabel is used for inputs within labels - checkboxes and radio buttons */
      .uniForm .inlineLabel input,
      .uniForm .inlineLabels .inlineLabel input,
      .uniForm .blockLabels .inlineLabel input,
      /* class .inlineLabel is depreciated */
      .uniForm label input{ float: none; display: inline; margin: 0; padding: 0; border: none;
	   vertical-align:text-bottom;}
            
      .uniForm .buttonHolder .inlineLabel,
      .uniForm .buttonHolder label{ float: left; margin: .5em 0 0 0; width: auto; max-width: 60%; text-align: left; }
      
      /* When you don't want to use a label */
      .uniForm .inlineLabels .noLabel ul{ margin-left: 34%; /* Match to width of label + gap to field */ }
      
      /* Classes for control of the widths of the fields */
      .uniForm .small { width: 30% !important; }
      .uniForm .medium{ width: 45% !important; }
      .uniForm .large {  } /* Large is default and should match the value you set for .textInput, textarea or select */
      .uniForm .auto  { width: auto !important; }
      .uniForm .small,
      .uniForm .medium,
      .uniForm .auto{ margin-right: 4px; }

/* Columns */
.uniForm .col{ float: left; }
.uniForm .col{ width: 50%; }