span.required {
    color: red;
}

input[type="submit"],
input[type="button"] {
    padding: 2px 7px;
}

input[type="text"],
input[type="password"],
select,
textarea {
    background: #ffffff;
    color: #2f4f4f;
    margin: 0.2em 0 0.5em 0;
    padding: 5px;
    width: 200px;
    border: 1px solid #CCCCCC;
    border-radius: 3px;
    line-height: 16px;
    display: inline-block;
    font-weight: 400;
}
select {
    width: 212px;
}

input[type="text"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus {
    background-color: #e6e6fa;
    border-color: #87ceeb;
    color: #151515;
}

input[type="text"]:hover,
input[type="password"]:hover,
select:hover,
textarea:hover {
    outline: 0 none;
    box-shadow: 0 1px 1px #87ceeb inset, 0 0 8px #87ceeb;
}

input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
    cursor: not-allowed;
    background-color: #eeeeee;
}

input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"][readonly],
input[type="checkbox"][readonly] {
    background-color: transparent;
}

input[disabled="disabled"]:hover,
select[disabled="disabled"]:hover,
textarea[disabled="disabled"]:hover {
    box-shadow: 0 0;
}

.error,
input.error,
select.error,
textarea.error {
    color: #CC0000;
}

input.error,
select.error,
textarea.error {
    background-color: #FFEEEE;
    color: #CC0000;
    border-color: #CC0000;
}

form span.error-message {
    color: #CC0000;
    font-size: 12px;
    padding: 0 2px 2px;
    vertical-align: baseline;
}

legend {
    border-bottom: 1px solid #E5E5E5;
    color: #333333;
    display: block;
    width: 100%;
    line-height: 40px;
    font-size: 21px;
    padding: 0;
    margin-bottom: 20px;
}

.control-group {
    margin-bottom: 10px;
}
form label {
    display: block;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 20px;
}
.form-vertical .control-group {
    margin-left: 70px;
}
.form-vertical .control-group input[type="text"],
.form-vertical .control-group input[type="password"],
.form-vertical .control-group select,
.form-vertical .control-group textarea {
    width: 400px;
}
.form-vertical span.error-message {
    display: block;
}

.form-horizontal label {
    width: 200px;
    text-align: right;
    display: inline-block;
    line-height: 35px;
    vertical-align: middle;
}
.form-horizontal div.controls label {
    width: auto;
}
.form-horizontal div.controls {
    margin-left: 10px;
    display: inline-block;
}
.form-horizontal div.action-controls {
    padding-left: 145px;
}
.form-horizontal span.error-message {
    display: inline;
    margin-left: 5px;
}

.form-horizontal .ui-buttonset .controls label {
    line-height: normal;
    font-weight: normal;
}

.form-inline label, .form-inline .control-group, .form-inline div.controls {
    display: inline-block;
}
.form-inline label {
    margin-left: 5px;
    margin-right: 5px;
}
.form-inline div.error, .form-inline span.error-message {
    display: none;
}

.control-group.label-top label, .control-group.label-top span.error-message {
    vertical-align: top;
}

.control-group.captcha .click-able {
    cursor: pointer;
}
.captcha a {
    margin-left: 10px;
}

.radio {
    margin-right: 10px;
}
.radio, div.controls .radio label {
    display: inline-block;
    cursor: pointer;
    margin-bottom: 5px;
}
.radio input[type="radio"], .radio input[type="checkbox"]{
    padding: 0;
}
.radio input[type="radio"]:checked, .radio input[type="checkbox"]:checked {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) inset, 0 0 8px rgba(82, 168, 236, 0.6);
}

.action-controls {
    border-top: 1px solid #d3d3d3;
    padding: 10px 0 0 70px;
    margin-bottom: 20px;
}

.btn {
    display: inline-block;
    *display: inline;
    padding: 4px 12px;
    margin-bottom: 0;
    *margin-left: .3em;
    font-size: 14px;
    line-height: 20px;
    *line-height: 20px;
    color: #333333;
    text-align: center;
    /*text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);*/
    vertical-align: middle;
    cursor: pointer;
    background-color: #f5f5f5;
    *background-color: #e6e6e6;
    background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
    background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
    background-repeat: repeat-x;
    border: 1px solid #bbbbbb;
    *border: 0;
    border-color: #e6e6e6 #e6e6e6 #bfbfbf;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    border-bottom-color: #a2a2a2;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffffff', endColorstr = '#ffe6e6e6', GradientType = 0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
    *zoom: 1;
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
    letter-spacing: 1px;
}
.btn:hover,
.btn:active,
.btn.active,
.btn.disabled,
.btn[disabled] {
    color: #333333;
    background-color: #e6e6e6;
    *background-color: #d9d9d9;
}
.btn:active,
.btn.active {
    background-color: #cccccc  \9;
}

.btn:first-child {
    *margin-left: 0;
}

.btn:hover {
    color: #333333;
    text-decoration: none;
    background-color: #e6e6e6;
    *background-color: #d9d9d9;
    /* Buttons in IE7 don't get borders, so darken on hover */

    background-position: 0 -15px;
    -webkit-transition: background-position 0.1s linear;
    -moz-transition: background-position 0.1s linear;
    -o-transition: background-position 0.1s linear;
    transition: background-position 0.1s linear;
}
.btn:focus {
    outline: thin dotted #333;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -3px;
}
.btn.active,
.btn:active {
    background-color: #e6e6e6;
    background-color: #d9d9d9  \9;
    background-image: none;
    outline: 0;
    -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
    -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
}
.btn.disabled,
.btn[disabled] {
    cursor: default;
    background-color: #e6e6e6;
    background-image: none;
    opacity: 0.65;
    filter: alpha(opacity = 65);
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.btn-large {
    padding: 11px 19px;
    font-size: 17.5px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
}
.btn-large [class^="icon-"],
.btn-large [class*=" icon-"] {
    margin-top: 2px;
}

.btn-small {
    padding: 2px 10px;
    font-size: 11.9px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
.btn-small [class^="icon-"],
.btn-small [class*=" icon-"] {
    margin-top: 0;
}

.btn-mini {
    padding: 1px 6px;
    font-size: 10.5px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
    width: 100%;
}

.btn-primary.active,
.btn-warning.active,
.btn-danger.active,
.btn-success.active,
.btn-info.active,
.btn-inverse.active {
    color: rgba(255, 255, 255, 0.75);
}

.btn {
    border-color: #c5c5c5;
    border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25);
}

.btn-primary {
    color: #ffffff;
    /*text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);*/
    background-color: #006dcc;
    *background-color: #0044cc;
    background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
    background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
    background-image: -o-linear-gradient(top, #0088cc, #0044cc);
    background-image: linear-gradient(to bottom, #0088cc, #0044cc);
    background-repeat: repeat-x;
    border-color: #0044cc #0044cc #002a80;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ff0088cc', endColorstr = '#ff0044cc', GradientType = 0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.btn-primary.disabled,
.btn-primary[disabled] {
    color: #ffffff;
    background-color: #0044cc;
    *background-color: #003bb3;
}

.btn-warning {
    color: #ffffff;
    /*text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);*/
    background-color: #faa732;
    *background-color: #f89406;
    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;
    border-color: #f89406 #f89406 #ad6704;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#fffbb450', endColorstr = '#fff89406', GradientType = 0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
.btn-warning:hover,
.btn-warning:active,
.btn-warning.active,
.btn-warning.disabled,
.btn-warning[disabled] {
    color: #ffffff;
    background-color: #f89406;
    *background-color: #df8505;
}

.btn-danger {
    color: #ffffff;
    /*text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);*/
    background-color: #da4f49;
    *background-color: #bd362f;
    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;
    border-color: #bd362f #bd362f #802420;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffee5f5b', endColorstr = '#ffbd362f', GradientType = 0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
.btn-danger:hover,
.btn-danger:active,
.btn-danger.active,
.btn-danger.disabled,
.btn-danger[disabled] {
    color: #ffffff;
    background-color: #bd362f;
    *background-color: #a9302a;
}

.btn-success {
    color: #ffffff;
    /*text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);*/
    background-color: #5bb75b;
    *background-color: #51a351;
    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;
    border-color: #51a351 #51a351 #387038;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ff62c462', endColorstr = '#ff51a351', GradientType = 0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
.btn-success:hover,
.btn-success:active,
.btn-success.active,
.btn-success.disabled,
.btn-success[disabled] {
    color: #ffffff;
    background-color: #51a351;
    *background-color: #499249;
}

.btn-info {
    color: #ffffff;
    /*text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);*/
    background-color: #49afcd;
    *background-color: #2f96b4;
    background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
    background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
    background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
    background-image: linear-gradient(to bottom, #5bc0de, #2f96b4);
    background-repeat: repeat-x;
    border-color: #2f96b4 #2f96b4 #1f6377;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ff5bc0de', endColorstr = '#ff2f96b4', GradientType = 0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
.btn-info:hover,
.btn-info:active,
.btn-info.active,
.btn-info.disabled,
.btn-info[disabled] {
    color: #ffffff;
    background-color: #2f96b4;
    *background-color: #2a85a0;
}

.btn-inverse {
    color: #ffffff;
    /*text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);*/
    background-color: #363636;
    *background-color: #222222;
    background-image: -moz-linear-gradient(top, #444444, #222222);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));
    background-image: -webkit-linear-gradient(top, #444444, #222222);
    background-image: -o-linear-gradient(top, #444444, #222222);
    background-image: linear-gradient(to bottom, #444444, #222222);
    background-repeat: repeat-x;
    border-color: #222222 #222222 #000000;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ff444444', endColorstr = '#ff222222', GradientType = 0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
.btn-inverse:hover,
.btn-inverse:active,
.btn-inverse.active,
.btn-inverse.disabled,
.btn-inverse[disabled] {
    color: #ffffff;
    background-color: #222222;
    *background-color: #151515;
}

button.btn,
input[type="submit"].btn {
    *padding-top: 3px;
    *padding-bottom: 3px;
}
button.btn::-moz-focus-inner,
input[type="submit"].btn::-moz-focus-inner {
    padding: 0;
    border: 0;
}
button.btn.btn-large,
input[type="submit"].btn.btn-large {
    *padding-top: 7px;
    *padding-bottom: 7px;
}
button.btn.btn-small,
input[type="submit"].btn.btn-small {
    *padding-top: 3px;
    *padding-bottom: 3px;
}
button.btn.btn-mini,
input[type="submit"].btn.btn-mini {
    *padding-top: 1px;
    *padding-bottom: 1px;
}

.btn-link,
.btn-link:active,
.btn-link[disabled] {
    background-color: transparent;
    background-image: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
.btn-link {
    color: #0088cc;
    cursor: pointer;
    border-color: transparent;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}

.btn-link:hover {
    color: #005580;
    text-decoration: underline;
    background-color: transparent;
}
.btn-link[disabled]:hover {
    color: #333333;
    text-decoration: none;
}

.close {
    float: right;
    font-size: 20px;
    font-weight: bold;
    line-height: 20px;
    color: #000000;
    text-shadow: 0 1px 0 #ffffff;
    opacity: 0.2;
    filter: alpha(opacity = 20);
}

.close:hover {
    color: #000000;
    text-decoration: none;
    cursor: pointer;
    opacity: 0.4;
    filter: alpha(opacity = 40);
}

button.close {
    padding: 0;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
}

.alert {
    padding: 8px 35px 8px 14px;
    margin-bottom: 20px;
    color: #c09853;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    background-color: #fcf8e3;
    border: 1px solid #fbeed5;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.alert h4 {
    margin: 0;
}
.alert .close {
    position: relative;
    top: -2px;
    right: -21px;
    line-height: 20px;
}
.alert-success {
    color: #468847;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}
.alert-danger,
.alert-error {
    color: #b94a48;
    background-color: #f2dede;
    border-color: #eed3d7;
}
.alert-warning {

}
.alert-info {
    color: #3a87ad;
    background-color: #d9edf7;
    border-color: #bce8f1;
}
.alert-block {
    padding-top: 14px;
    padding-bottom: 14px;
}
.alert-block > p,
.alert-block > ul {
    margin-bottom: 0;
    list-style: disc;
}
.alert-block ul {
    margin-left: 20px;
}
.alert-block p + p {
    margin-top: 5px;
}