/*
 * Okta form styles
 */

/* Form layout and base styling */

/* Build clearfix into o-form fieldset */
.o-form-fieldset:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.o-form-fieldset {
    display: inline-block;
    margin-bottom: 20px;
}

/*
.o-form-fieldset:last-child {
    margin-bottom: 0;
}
*/

/* Required for helper to work with Opera \*/
* html .o-form-fieldset {
    height: 1%;
}
.o-form-fieldset {
    display: block;
}

/* end clearfix */

.o-form-label,
.o-form-input {
    float: left;
    font-size: 12px;
}

.o-form-label {
    width: 38%;
    font-weight: bold;
    padding: 7px 10px 7px 0;
    line-height: 16px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    color: #5e5e5e;
}

.o-form-label a.icon-16 {
    display: inline;
    margin-left: 6px;
    top: -1px;
}

.o-form-input {
    width: 62%;
}

/* Input and label */

.o-form label {
    font-size: 12px;
    color: #5e5e5e;
}

.o-form .input-fix,
.o-form .textarea-fix {
    border-radius: 3px;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.o-form select {
    width: 62%;
    margin-top: 6px; /* For standard select boxes, not Chosen */
}

.o-form-wide select {
    width: 100%;
}

.o-form .input-fix {
    height: 30px;
}

.o-form .input-fix input[type="text"],
.o-form .input-fix input[type="password"],
.o-form .textarea-fix textarea {
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 6px 8px;
    line-height: 16px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.o-form .textarea-fix textarea {
    height: auto;
    min-height: 30px;
    max-width: 100% !important;
}

.o-form-input ::-webkit-input-placeholder {
    color: #a1a1a1;
    opacity: 1;
    filter: alpha(opacity=1);
    font-family: "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}

.o-form-input :-moz-placeholder {
    color: #a1a1a1;
    opacity: 1;
    filter: alpha(opacity=1);
    font-family: "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}

.o-form-input ::-moz-placeholder {
    color: #a1a1a1;
    opacity: 1;
    filter: alpha(opacity=1);
    font-family: "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}

.o-form-input :-ms-input-placeholder {
    color: #a1a1a1;
    opacity: 1;
    filter: alpha(opacity=1);
    font-family: "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}


/* Multiple inputs on the separate lines */

.o-form-control + .o-form-control {
    margin-top: 20px;
}

/* Multiple inputs on the same line */

.o-form-multi-input {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.o-form-multi-input-2 .o-form-control,
.o-form-multi-input-3 .o-form-control,
.o-form-multi-input-4 .o-form-control{
    margin-top: 0;
}

.o-form-multi-input-2 .o-form-control {
    width: 49%;
}

.o-form-multi-input-3 .o-form-control {
    width: 32%;
}

.o-form-multi-input-2 .o-form-control + .o-form-control,
.o-form-multi-input-3 .o-form-control + .o-form-control {
    margin-left: 2%;
}

.o-form-multi-input-2 .chzn-done + .o-form-control,  /* Ugly, need to work around the fact that the original select is in the dom */
.o-form-multi-input-3 .chzn-done + .o-form-control {
    margin-left: 0;
}

/* Temporary overrides: Uzi has this solved in the JS */
.o-form-multi-input-2 .chzn-container {
    width: 49% !important;
}

.o-form-multi-input-3 .chzn-container {
    width: 32% !important;
}

.o-form-wide .chzn-container {
    width: 100% !important;
}



/*
 * Custom input/select hybrid
 */
.text-select .input-fix {
    width: 84%;
    border-right: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.chzn-container-single.text-select .chzn-single {
    width: 16%;
    height: 30px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-color: #bbb #bbb #b1b1b1 #bbb;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.text-select.chzn-with-drop input[type=text] {
    border-color: #888;
    border-bottom-left-radius: 0;
    box-shadow: 0 -1px 0 0 #aaa inset;
}


/*
 * Custom checkboxes, radios
 */

/*	wrapper divs */
.custom-checkbox, .custom-radio {
    position: relative;
    clear: both;
}

/* input, label positioning */
.custom-checkbox input,
.custom-radio input {
    /* experimental : make sure this doesn't break older browsers */
    opacity: 0;
    filter: Alpha(Opacity=0);
    /* end experimental */
    position: absolute;
    left: 0;
    top: 7px;
    margin: 0;
}

.custom-checkbox label, .custom-radio label {
    display: block;
    position: relative;
    font-size: 12px;
    line-height: 16px;
    margin: 0;
    padding: 7px 10px 7px 24px;
    cursor: pointer;
}

.custom-checkbox label {
    background: url(/img/ui/forms/checkbox.png) no-repeat;
}

.custom-radio label {
    background: url(/img/ui/forms/radiobutton.png) no-repeat;
}

.custom-checkbox + .o-form-explain,
.custom-radio + .o-form-explain,
.custom-checkbox + input + .o-form-explain,  /* some ajax-forms form add hidden inputs */
.custom-radio + input + .o-form-explain {
    padding-top: 0;
}

/* Miscellanous input types */

.o-form-input kbd {
    box-shadow: 0 1px 1px rgba(150, 150, 150, 0.16) inset;
    background: #fff;
    padding: 10px;
    display: block;
    border-radius: 3px;
    border: 1px solid #cacaca;
}

/* Button bar */

.o-form-button-bar {
    background: #f2f2f2;
    padding: 10px;
    box-shadow: 0 1px 1px rgba(175, 175, 175, 0.16);
    border-width: 1px;
    border-style: solid;
    border-color: #dadada #dddddd;
    margin-top: -1px;
    border-radius: 0 0 3px 3px;
    text-align: right;
}

.o-form-button-bar .button + .button {
    margin-left: 10px;
}

/* Edit/read toggle variant */
/* The primary heading for the form and can contain the edit-toggle button */

.o-form-title-bar {
  position: relative;
  padding: 0 20px;
  margin: 0;
  line-height: 44px;
  font-size: 17px;
  color: #fff;
  border: 1px solid #181818;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  box-shadow: inset 0 1px 0 #6e6e6e;
  background: #555555;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzU1NTU1NSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM0NDQ0NDQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top,  #555555 0%, #444444 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#555555), color-stop(100%,#444444));
  background: -webkit-linear-gradient(top,  #555555 0%,#444444 100%);
  background: -o-linear-gradient(top,  #555555 0%,#444444 100%);
  background: -ms-linear-gradient(top,  #555555 0%,#444444 100%);
  background: linear-gradient(to bottom,  #555555 0%,#444444 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#555555', endColorstr='#444444',GradientType=0 );
}

/* Potential future style
.o-form-title-bar {
  padding: 0 20px;
  line-height: 44px;
  font-size: 17px;
  background: #f2f2f2;
  color: #5e5e5e;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-width: 1px 1px 0;
  border-style: solid;
  border-color: #ddd;
  margin: 0;
}
*/

.o-form-toggle {
  position: absolute;
  right: 8px;
  top: 8px;
}

.o-form-toggle a {
  display: block;
  width: 68px;
  height: 26px;
  line-height: 26px;
  font-size: 12px;
  text-align: center;
  text-decoration: none;
  border: 1px solid #171717;
  border-radius: 3px;
  color: #fff;
  box-shadow: inset 0 1px 0 #949494, 0 1px 0 0 #5c5c5c;
  text-shadow: 0 1px 0 #585858;
  background: #777;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9Ijc1JSIgc3RvcC1jb2xvcj0iI2Y0ZjRmNCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
  background: -moz-linear-gradient(top,  #818181 0%, #6b6b6b 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#818181), color-stop(100%,#6b6b6b));
  background: -webkit-linear-gradient(top,  #818181 0%,#6b6b6b 100%);
  background: -o-linear-gradient(top,  #818181 0%,#6b6b6b 100%);
  background: -ms-linear-gradient(top,  #818181 0%,#6b6b6b 100%);
  background: linear-gradient(to bottom,  #818181 0%,#6b6b6b 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#818181', endColorstr='#6b6b6b',GradientType=0 );
}

/* data list overrides: data list does not use the dark heading */

.data-list .o-form-title-bar {
  padding: 0;
  margin: 0 0 15px;
  color: #5e5e5e;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.data-list .o-form-toggle {
  right: 0;
}
/* Differs from link-button only in height and width */
.data-list .o-form-toggle a {
  display: block;
  font-size: 12px;
  height: 26px;
  line-height: 26px;
  padding: 0;
  width: 60px;
  border-radius: 3px;
  border-color: #bbb #bbb #b1b1b1;
  border-width: 1px;
  border-style: solid;
  color: #303030;
  text-align: center;
  box-shadow: 0 1px 0 rgba(160,160,160,0.24);
  text-shadow: 0 1px 0 #fff;
  cursor: pointer;
  background: #ffffff;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZmVmZWYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top,  #ffffff 0%, #eeeeee 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#eeeeee));
  background: -webkit-linear-gradient(top,  #ffffff 0%,#eeeeee 100%);
  background: -o-linear-gradient(top,  #ffffff 0%,#eeeeee 100%);
  background: -ms-linear-gradient(top,  #ffffff 0%,#eeeeee 100%);
  background: linear-gradient(to bottom,  #ffffff 0%,#eeeeee 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
}
.data-list .o-form-toggle a:hover,
.data-list .o-form-toggle a:focus {
  color: #303030;
  border-color: #9d9d9d #9d9d9d #949494;
  box-shadow: 0 1px 0 rgba(160,160,160,0.1);
  text-decoration: none;
  background: #ffffff;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIzMyUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZjFmMWYxIiBzdG9wLW9wYWNpdHk9IjEiLz4KICA8L2xpbmVhckdyYWRpZW50PgogIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjZ3JhZC11Y2dnLWdlbmVyYXRlZCkiIC8+Cjwvc3ZnPg==);
  background: -moz-linear-gradient(top,  #ffffff 33%, #f1f1f1 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(33%,#ffffff), color-stop(100%,#f1f1f1));
  background: -webkit-linear-gradient(top,  #ffffff 33%,#f1f1f1 100%);
  background: -o-linear-gradient(top,  #ffffff 33%,#f1f1f1 100%);
  background: -ms-linear-gradient(top,  #ffffff 33%,#f1f1f1 100%);
  background: linear-gradient(to bottom,  #ffffff 33%,#f1f1f1 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f1f1f1',GradientType=0 );
}

/* Headings and explain text */



/* A sub section within a form, not the title bar */
.o-form-head {
    color: #8e8e8e;
    line-height: 30px;
    margin: 0 0 15px;
    padding: 0;
    font-size: 15px;
}

/* A variant of the o-form-head, should be used as a level beneath o-form-head */
.o-form-subhead {
    color: #5f8e00;
    font-size: 14px;
    font-weight: normal;
    line-height: 30px;
    margin: 0 0 15px;
    padding: 0;
}

.o-form-fieldset + .o-form-head,
.o-form-explain + .o-form-head,
.o-form-separator {
    border-top: 1px solid #e3e3e3;
    margin-top: 30px;
    padding-top: 30px;
}

.o-form-explain + .o-form-fieldset {
    margin-top: 20px;
}

.o-form-explain {
    color: #888;
}

.o-form-input .o-form-explain {
    clear: both;
    line-height: 16px;
    padding: 8px 0 6px;
}

.o-form-tooltip.icon-only {
    margin-left: 6px;
    vertical-align: top;
}

.simplemodal-wrap .o-form-head{
    padding: 0 10px;
    font-weight: normal;
    line-height: 36px;
    background: #444;
    color: #fff;
    border-bottom: 3px solid #7caa18;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}

.simplemodal-wrap .o-form-wrap{
    padding: 0 20px;
}

.simplemodal-wrap .o-form-button-bar{
    border-radius: 0;
}

/*
 * Themes and layouts
 */

.o-form-theme {
    padding: 20px;
    background: #f9f9f9;
    border-width: 1px;
    border-style: solid;
    box-shadow: 0 1px 1px rgba(175, 175, 175, 0.16);
    border-color: #ddd #ddd #d2d2d2;
    border-radius: 4px;
}

.o-form-has-title-bar {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.o-form-has-button-bar {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

/* 3:4 proportion */

.o-form-3-4 .o-form-label {
    width: 25%;
}

.o-form-3-4 .o-form-input {
    width: 75%;
}


/*
 * States
 */

.o-form .o-form-focus {
    border: 1px solid #888;
    /*box-shadow: 0 0 2px rgba(175,175,175, 0.5); */
    box-shadow: 0 1px 1px #ffffff;
}

/* Read mode overrides */

.o-form-read-mode .o-form-input {
    padding: 7px 10px;
    line-height: 16px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.o-form-read-mode  .custom-checkbox:first-child,
.o-form-read-mode .custom-radio:first-child {
    margin-top: -8px;
}

/* Checkbox and radio states */

/* Edit mode */
.custom-checkbox label,
.custom-radio label {
    background-position: -16px -13px;
}

.custom-checkbox label.hover,
.custom-checkbox label.focus,
.custom-radio label.hover,
.custom-radio label.focus {
    background-position: -16px -113px;
}

.custom-checkbox label.checked,
.custom-radio label.checked {
    background-position: -16px -213px;
}

.custom-checkbox label.checked.hover,
.custom-checkbox label.checked.focus {
    background-position: -16px -313px;
}

/* Label top */

.o-form-label-top .o-form-label,
.o-form-label-top .o-form-input {
    width: 100%;
}

.o-form-read-mode .o-form-label-top .o-form-input {
    padding-left: 0;
    padding-right: 0;
}

/* Read only mode */

.o-form-read-mode .custom-checkbox label {
    background-position: -16px -413px;
}

.o-form-read-mode .custom-radio label {
    background-position: -16px -313px;
}

.o-form-read-mode .custom-checkbox label.hover,
.o-form-read-mode .custom-checkbox label.focus {
    background-position: -16px -513px;
    cursor: text;
}

.o-form-read-mode .custom-radio label.hover,
.o-form-read-mode .custom-radio label.focus {
    background-position: -16px -413px;
    cursor: text;
}

.o-form-read-mode .custom-checkbox label.checked {
    background-position: -16px -613px;
}

.o-form-read-mode .custom-radio label.checked {
    background-position: -16px -513px;
}

.o-form-read-mode .custom-checkbox label.checked.hover,
.o-form-read-mode .custom-checkbox label.checked.focus {
    background-position: -16px -713px;
    cursor: text;
}

/* disabled state */
.o-form-disabled {
    opacity: 0.4;
    filter:alpha(opacity=40);
}


/* data-list styles */

.data-list-inline-form .o-form-head {
    color: #444444;
    font-size: 16px;
    margin: 0;
}

.data-list-inline-form .o-form-button-bar {
    border-width: 1px 0 0;
    margin: 5px -30px -20px;
}




