@open-sans: "Open Sans",sans-serif;
@text-color: #4d5258;

fieldset {
  border: none;
}

*::-moz-placeholder,
::-webkit-input-placeholder {
    color: #838383;
    font-style: italic;
}

select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #333;
}


input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
textarea {
    font-size: 1.1em;
    padding: 0 0.545454545454545em;
    height: 2.36363636363636em; /* 26px */
    border: 1px #b6b6b6 solid;
    border-radius: 2px;
    box-shadow: inset 0px 2px 2px rgba(0,0,0,0.1);
    color: #333;
    width: 18.1818em;
    
    &:hover {
        border-color: #62afdb;
    }
    
    &:focus {
        border-color: #62afdb;
        box-shadow: #62afdb 0 0 5px;
    }
    
    &.error {
        border-color: #ba1212;
        transition: all .33s ease-in-out;
        -moz-transition: all .33s ease-in-out;
        -webkit-transition: all .33s ease-in-out;

        &:focus {
            box-shadow: 0 0 5px #ba1212;
        }
    }
    
    &.tiny {
        width: 4.54545454545455em;
    }
    
    &.small {
        width: 9.09090909090909em;
    }
    
    &.medium {
        width: 18.1818em;
    }
    
    &.large {
        width: 27.2727272727273em;
    }
    
    &.xlarge {
        width: 36.3636363636364em
    }
}

textarea {
    padding: 0.45em 0.545454545454545em;
    height: auto;
}

input[type="text"][readonly],
input[type="password"][readonly],
input[type="email"][readonly],
input[type="number"][readonly],
textarea[readonly] {
    background-color: #f0f0f0;
    
    &:hover {
        border-color: #62afdb;
    }
    
    &:focus {
        border-color: #b6b6b6;
        box-shadow: none;
    }
}

.input-below {
    clear: both;
    display: inline-block;
    margin-left: 10.9090909090909em;
    margin-top: 0.45454545454545em;
    padding-left: 3.63636363636364em;
}

input[type="button"],
button,
a.button {
    font-size: 1.3em;
    padding: 0.30769230769231em 1.07692307692308em;
    border-width: 1px;
    border-radius: 2px;
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.04em;
    box-shadow: 0px 2px 2px rgba(0,0,0,0.15);
    
    &.btn-primary {
        background-image: linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -o-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -moz-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -webkit-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -ms-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -webkit-gradient(
          linear,
          left top,
          left bottom,
          color-stop(0.0, #00A9EC),
          color-stop(1,0, #009BD3)
        );
        border-color: #21799e;
        border-style: solid;
        
        &:hover,
        &:focus {
            background-color: #009BD3;
        }
        
        &:active {
            background-color: #0099d4;
        }
    }
    
    &.disabled {
        border-color: #cfcdcd;
        color: #838383;
        background-color: transparent;
        background-image: none;
        box-shadow: none;
        font-weight: normal;
        letter-spacing: 0.06363636363636em;
        
        &:hover {
            cursor: default;
        }
        
        &:active {
            box-shadow: none;
        }
    }
    
    &:hover,
    &:focus {
        background-image: none;
        cursor: pointer;
    }
    
    &:active {
        background-image: none;
        cursor: pointer;
        box-shadow: inset 0 0 5px 2px rgba(0,0,0,0.25);
    }
}

input[type="checkbox"] {
    margin-right: 0.5em;
}

/* Code from Hylke */

button,
a.button {
  border-color: #21799e;
  background-image: linear-gradient(top, #fafafa 0%, #ededed 100%);
  background-image: -o-linear-gradient(top, #fafafa 0%, #ededed 100%);
  background-image: -moz-linear-gradient(top, #fafafa 0%, #ededed 100%);
  background-image: -webkit-linear-gradient(top, #fafafa 0%, #ededed 100%);
  background-image: -ms-linear-gradient(top, #fafafa 0%, #ededed 100%);
  background-image: -webkit-gradient(
	  linear,
	  left top,
	  left bottom,
	  color-stop(0.0, #fafafa),
	  color-stop(1,0, #ededed)
  );
  color: #fff;
  padding: 4px 14px;
  border: 1px #bbb solid;
  border-radius: 2px;
  color: #4d5258;
  font-weight: bold;
  font-size: 1.1em;
  letter-spacing: 0.4px;
  cursor: pointer;
      padding-top: 0;
      padding-bottom: 0;
      line-height: 2.18181818181818em;
}

button.primary,
.button.primary {
  border-color: #21799e;
  background-image: linear-gradient(top, #00A9EC 0%, #009BD3 100%);
  background-image: -o-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
  background-image: -moz-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
  background-image: -webkit-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
  background-image: -ms-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
  background-image: -webkit-gradient(
	  linear,
	  left top,
	  left bottom,
	  color-stop(0.0, #00A9EC),
	  color-stop(1,0, #009BD3)
  );
  color: #fff;
}

button.primary:hover,
button.primary:focus,
.button.primary:hover,
.button.primary:focus {
  background-color: #009BD3;
}

button.primary:enabled:active,
.button.primary:enabled:active {
  background-color: #0099d4;
  box-shadow: inset 0 0 5px 3px #0074ae;
}

.destructive {
    background-image: linear-gradient(top, #D90000 0%, #AD0101 100%);
    background-image: -o-linear-gradient(top, #D90000 0%, #AD0101 100%);
    background-image: -moz-linear-gradient(top, #D90000 0%, #AD0101 100%);
    background-image: -webkit-linear-gradient(top, #D90000 0%, #AD0101 100%);
    background-image: -ms-linear-gradient(top, #D90000 0%, #AD0101 100%);
    background-image: -webkit-gradient(
        linear,
        left top,
        left bottom,
        color-stop(0.0, #D90000),
        color-stop(1,0, #AD0101)
        );
    border-color: #350000;
    color: #FFFFFF;
    
    &:hover {
        background-color: #AD0101;
    }
    
    &:enabled:active {
        background-color: #AD0101;
        box-shadow: 0 0 5px 3px #750101 inset;
    }
}


/* Code from Gabriel */

button.primary,
.button.primary {
    background-color: #00a2df;
    
    &:hover,
    &:active,
    &:focus {
        background-image: none;
        color: #fff;
    }
}

.rcue-login-register.register .two-fields {
    
    input[type="text"] {
        width: 121px;
        min-width: 0;
    }
    
    input + input {
        margin-left: 10px;
    }  
} 

.search-comp {
    position: relative;
    display: inline-block;
    font-size: 0.90909090909091em;
    
    input[type="text"] {
        padding-right: 2.45454545454545em;
    }
    
    .icon-search {
        position: absolute;
        right: 0.2em;
        top: 0.6em;
        opacity: 0.5;
        filter: alpha(opacity=50);
        
        &:hover,
        &:active,
        &:focus {
            background-image: url('img/sprites.png');
            opacity: 1;
            filter: alpha(opacity=100);
            -webkit-transition: ease-in-out opacity 0.25s;
            -moz-transition: ease-in-out opacity 0.25s;
            -o-transition: ease-in-out opacity 0.25s;
            transition: ease-in-out opacity 0.25s;
        }
        
        &+ .tooltip {
            width: 20em;
            font-weight: normal;
        }
    }
    
    &+ span {
        font-size: 1.1em;
        font-weight: normal;
        color: #A1A1A1;
        
        span {
            margin-left: 0.45454545454545em;
            margin-right: 0.45454545454545em;
            display: inline-block;
        }
        
        .link {
            font-size: 0.90909090909091em;
        }
    }
}

.feedback-aligner {
    position: fixed;
    top: 1.5em;
    text-align: center;
    width: 100%;
    height: 0;
    z-index: 100;
    
    .feedback {
        position: relative;
        display: inline-block;
        text-align: left;
        border-width: 1px;
        
        p {
            border-width: 1px;
        }
    }
}

.feedback {
    position: absolute;
    opacity: 0;
    transition: opacity .33s ease-in-out;
    -moz-transition: opacity .33s ease-in-out;
    -webkit-transition: opacity .33s ease-in-out;
    
    p {
        padding: 0.90909090909091em 3.63636363636364em;
        border-style: solid;
        border-width: 1px 1px 0px 1px;
        background-repeat: no-repeat;
        background-position: 1.27272727272727em center;
        font-size: 1.1em;
        line-height: 1.4em;
        border-radius: 2px;
        color: #4d5258;
        margin-bottom: 0;
    }
   
    &.show {
        opacity: 1;
    }
    
    &.bottom-left {
        background-position: left bottom;
        background-repeat: no-repeat;
        padding-bottom: 1em;
        
        p {
            background-position: 1.27272727272727em 1.63636363636364em;
        }
    }

    &.error {
        background-image: url(img/feedback-error-arrow-down.png);
        
        p {
            border-color: #b91415;
            background-image: url(img/feedback-error-sign.png);
            background-color: #f8e7e7;
        }
    }
    
    &.success {
        background-image: url(img/feedback-success-arrow-down.png);
                
        p {
            border-color: #4b9e39;
            background-image: url(img/feedback-success-sign.png);
            background-color: #e4f1e1;
        }
    }
    
    &.warning {
        
        p {
            border-color: #f17528;
            background-image: url(img/feedback-warning-sign.png);
            background-color: #fef1e9;
        }
        
    }
    
    &.info {
        
        p {
            border-color: #5994b2;
            background-image: url(img/feedback-info-sign.png);
            background-color: #e4f3fa;
        }
        
    }
    
    &.inline {
        opacity: 1;
        position: relative;
        margin-bottom: 20px;
        
        p {
            border-width: 1px;
        }
    }
    
    .button {
        display: inline-block;
        font-size: 0.90909090909091em;
        margin-left: 0.90909090909091em;
    }
}

button,
a.button {
    background-color: #eeeeee;
}

a.button {
    display: inline-block;
    
    &:hover {
        color: #4D5258;
        text-decoration: none;
    }
}

button[class^="icon-"] {
    border: none;
    box-shadow: none;
    background-color: transparent;
    padding: 0;
    line-height: 1em;
    
    &:hover {
        background-image: url(img/sprites.png);
    }
}

button.link {
    border: none;
    background-color: transparent;
    background: none;
    box-shadow: none;
    font-weight: normal;
    font-size: 1em;
    color: 	#0099D3;
    letter-spacing: 0;
    padding: 0;
    
    &:hover {
        text-decoration: underline;
    }
}

legend {
    font-size: 1em;
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: #e9e8e8;
    padding-top: 2em;
    display: block;
    margin-bottom: 0;
    padding-bottom: 0.8em;
    cursor: pointer;
    
    .icon-collapse {
        vertical-align: baseline;
    }
    
    .text {
        font-weight: bold;
        font-size: 1.25em;
    }
    
    .icon-info {
        background-image: url(img/sprites-gray.png);
        margin-left: 1em;
        vertical-align: baseline;
        
        &:hover {
            background-image: url(img/sprites.png);
        }
    }
}

fieldset.border-top {
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: #e9e8e8;
    padding-top: 2em;
    clear: both;
}

.form-group {
    display: block;
    margin-bottom: 1em;
    position: relative;
    
    &> label {
        font-size: 1.1em;
        font-weight: 300;
        width: 10em;
        margin-right: 0.90909090909091em;
        margin-bottom: 0;
        float: left;
        margin-top: 0.45454545454545em;
        font-weight: 400;
        
        &.two-lines {
            margin-top: -2px;
        }
        
        &+ span {
            font-size: 1.1em;
            display: inline-block;
            margin-top: 0.454545454545455em;
        }
        
        &+ .onoffswitch {
            float: left;
        }
        
        &.pull-left {
            margin-top: 4px;
        }
    }
    
    .required {
        font-size: 1.1em;
        color: #CB2915;
        display: inline-block;
        margin-top: -0.09090909090909em;
    }
}

legend + .form-group {
    padding-top: 1em;
}

legend + table {
    margin-top: 1em;
}

.code {
    font-family: Courier, ​monospace;
}

.onoffswitch {
    -moz-user-select: none;
    height: 26px;
    position: relative;
    width: 62px;
    
    .onoffswitch-checkbox {
        display: none;
    }
    
    .onoffswitch-label {
        border: 1px solid #bbb;
        border-radius: 2px;
        cursor: pointer;
        display: block;
        overflow: hidden;
        width: 62px;
    }
    
    .onoffswitch-inner {
        display: block;
        margin-left: -100%;
        transition: margin 0.3s ease-in 0s;
        width: 200%;
    }
    
    .onoffswitch-inner > span {
        -moz-box-sizing: border-box;
        color: white;
        float: left;
        font-size: 11px;
        font-family: @open-sans;
        font-weight: bold;
        height: 24px;
        line-height: 24px;
        padding: 0;
        width: 50%;
    }
    
    .onoffswitch-switch {
        background-image: linear-gradient(top, #fafafa 0%, #ededed 100%);
        background-image: -o-linear-gradient(top, #fafafa 0%, #ededed 100%);
        background-image: -moz-linear-gradient(top, #fafafa 0%, #ededed 100%);
        background-image: -webkit-linear-gradient(top, #fafafa 0%, #ededed 100%);
        background-image: -ms-linear-gradient(top, #fafafa 0%, #ededed 100%);
        background-image: -webkit-gradient(
            linear,
            left top,
            left bottom,
            color-stop(0.0, #fafafa),
            color-stop(1,0, #ededed)
        );
        border: 1px solid #aaa;
        border-radius: 2px;
        bottom: 0;
        margin: 0;
        position: absolute;
        right: 39px;
        top: 0;
        transition: all 0.3s ease-in 0s;
        -webkit-transition: all 0.3s ease-in 0s;
        width: 23px;
    }
    
    
    .onoffswitch-inner .onoffswitch-active {
        background-image: linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -o-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -moz-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -webkit-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -ms-linear-gradient(top, #00A9EC 0%, #009BD3 100%);
        background-image: -webkit-gradient(
            linear,
            left top,
            left bottom,
            color-stop(0.0, #00A9EC),
            color-stop(1,0, #009BD3)
        );
        color: #FFFFFF;
        padding-left: 10px;
    }
    
    &.disabled .onoffswitch-inner .onoffswitch-active,
    &.disabled .onoffswitch-inner .onoffswitch-inactive {
        background-image: none;
        background-color: #e5e5e5;
        color: #9d9fa1;
    }
    
    .onoffswitch-inner .onoffswitch-inactive {
        background: linear-gradient(#FEFEFE, #E8E8E8) repeat scroll 0 0 transparent;
        color: @text-color;
        padding-right: 10px;
        text-align: right;
    }
    
    .onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
        margin-left: 0;
    }
    
    .onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
        right: 0;
    }
}

input[type="text"], 
input[type="password"], 
input[type="email"] {
    &.tiny {
        min-width: 40px;
        width: 40px;
    }
}

.select-rcue,
.select2-container .select2-choice {
    height: 2.6em;
    border: 1px #b6b6b6 solid;
    border-radius: 2px;
    box-shadow: inset 0px 2px 2px rgba(0,0,0,0.1);
    color: #333;
    background: #fff url(img/select-arrow.png) no-repeat right center;
    overflow: hidden;
    min-width: 75px;
    padding: 0 0.9em 0 0;
    display: inline-block;
    font-family: @open-sans;
}    
    
.select-rcue {    
    
    &:hover {
        border-color: #62afdb;
    }
    
    &:focus {
        border-color: #62afdb;
        box-shadow: #62afdb 0 0 5px;
    }
    
    &.error {
        border-color: #ba1212;
        background-color: #f8e7e7;
        transition: all .33s ease-in-out;
        -moz-transition: all .33s ease-in-out;
        -webkit-transition: all .33s ease-in-out;

        &:focus {
            box-shadow: 0 0 5px #ba1212;
        }
    }

    select {
        height: 30px;
        line-height: 30px;
        margin-top: -2px;
        margin-left: -2px;
        font-size: 1.1em;
        padding: 5px 0.545454545454545em;
        background-color: transparent;
        border: none;
        width: 150%;
        font-family: "Open Sans", sans-serif;
    }
    
    option {
        line-height: 2em;
        padding: 0.363636em 0.909091em;
        
        &:hover {
            background-color: #d5ecf9;
        }
    }
}

.select2-container {
    float: left;
    margin-top: 0.3em;
    margin-bottom: 0.3em;
    
    .select2-choice {
    
        &> .select2-chosen {
            line-height: 2.1em;
            padding-left: 0.90909090909091em;
            margin-right: 0;
            font-size: 1.1em;
            padding-right: 2.36363636363636em;
            padding-right: 26px;
        }
        
        .select2-arrow {
            display: none;
        }
    }
}

.select2-dropdown-open {

    .select2-choice,
    .select2-choices {
        border-bottom: none;
        border-radius: 2px 2px 0 0;
        background-image: url(img/chosen-arrow-down.png);
        background-color: transparent;
        background-repeat: no-repeat;
        background-position: right top;
        box-shadow: none;
    }
    
    background-color: #fff;
}

.select2-dropdown-open,
.select2-dropdown-open.select2-drop-above {
    
    .select2-choice,
    .select2-choices {
        border-color: #62AFDB;
    }
}

.select2-search input {
    min-width: 0;
}

.select2-drop-active {
    border-radius: 0 0 2px 2px;
    margin-top: -1px;
    padding-top: 4px;
}

.select2-container.select2-drop-above .select2-choice {
    border-radius: 0 0 2px 2px;
    background-image: url(img/chosen-arrow-up.png);
    background-repeat: no-repeat;
    background-position: right 0;
    box-shadow: none;
}

.select2-drop.select2-drop-above {
    border-radius: 2px 2px 0 0;
    padding-top: 0;
    margin-top: 2px;
}

.select2-drop.select2-drop-above.select2-drop-active,
.select2-drop-active {
    border-color: #62AFDB;
}

.select2-results {
    padding-left: 0;
    margin-right: 0;
    
    li {
        border-top: 1px solid transparent;
        border-bottom: 1px solid transparent;
    }
    
    .select2-result-label,
    .select2-no-results, 
    .select2-searching, 
    .select2-selection-limit {
        font-size: 1.1em;
        padding-left: 1.09090909090909em;
    }
    
    .select2-no-results, 
    .select2-searching, 
    .select2-selection-limit {
        color: #838383;
        padding-top: 3px;
        padding-bottom: 4px;
    }
    
    .select2-highlighted {
        background-color: #d5ecf9;
        border-top: 1px solid #a7d7f1;
        border-bottom: 1px solid #a7d7f1;
        color: #4d5258;
    }
}

.select2-container-multi .select2-choices  {
    width: 40em;
}

.input-group input + .select-rcue {
    border-radius: 0 2px 2px 0;
    border-left: 0;
    display: inline-block;
}

.input-select .input-group input {
    float: left;
}

.tokenfield.form-control {
    width: 40em;
    float: left;
    min-height: 2.6em;
    border: 1px #b6b6b6 solid;
    border-radius: 2px;
    box-shadow: inset 0px 2px 2px rgba(0,0,0,0.1);
    padding: 0 0.7em;
    margin-bottom: 0;
    font-size: 1em;
    height: auto;
    outline: 0 none;
        
    .token {
        display: inline-block;
        background-color: #d4ecf8;
        border: 1px solid #a3d7f0;
        border-radius: 1px;
        padding: 0 0.3em 0 0.7em;
        margin-right: 0.7em;
        margin-top: 0.3em;
        margin-bottom: 0.3em;
        outline: 0 none;
            
        span {
            float: left; 
            font-size: 1.1em;
            line-height: 1.45454545454545em;
        }
        
        .close {
            text-indent: -99999em;
            width: 1.6em;
            height: 1.6em;
            line-height: 1.6em;
            background: url(img/btn-close-blue.png) no-repeat center center;
            margin-left: 0.3em;
            padding: 0;
            border: none;
            font-size: 1em;
            opacity: 1;
        }
    }
    
    input {
        padding: 0;
        border: none;
        font-size: 1.1em;
        line-height: 1.63636363636364em;
        height: 1.63636363636364em;
        margin: 0.272727272727273em 0;
        box-shadow: none;
        outline: 0 none;
        float: left;
    }   
    
    &:hover {
        border-color: #62afdb;
    }
    
    &:focus {
        border-color: #62afdb;
        box-shadow: #62afdb 0 0 5px;
    } 
}

.token {
    float: left;
    background-color: #d4ecf8;
    border: 1px solid #a3d7f0;
    border-radius: 1px;
    padding: 0 0.3em 0 0.7em;
    margin-right: 0.7em;
    margin-top: 0.3em;
    margin-bottom: 0.3em;
    outline: 0 none;
        
    span {
        float: left;
        font-size: 1.1em;
        line-height: 1.45454545454545em;
    }
    
    .close {
        text-indent: -9999999em;
        width: 1.6em;
        height: 1.6em;
        line-height: 1.6em;
        background: url(img/btn-close-blue.png) no-repeat center center;
        margin-left: 0.3em;
        padding: 0;
        border: none;
        font-size: 1em;
        opacity: 1;
    }
}

.form-actions {
    float: right;
    margin-top: 3em;
    margin-bottom: 5em;
    
    .primary,
    .destructive {
        float: right;
        margin-left: 0.90909090909091em;
    }
    
    a {
        font-size: 1.1em;
        margin-right: 0.90909090909091em;
    }
}

.changing-selectors {

    &.application {
        padding-left: 12em;
    }

    .select-title {
    
        display: inline-block;
        
        label {
            font-size: 1.1em;
            margin-left: 0.2em;
            margin-bottom: 0.3em;
            margin-top: 0.5em;
            display: block;
            font-weight: normal;
        }
        
    }
    
    select {
        min-height: 150px;
        font-size: 1.1em;
        padding: 0.545454545454545em;
        min-width: 18.1818181818182em;
        border: 1px #b6b6b6 solid;
        border-radius: 2px;
        box-shadow: inset 0px 2px 2px rgba(0,0,0,0.1);
        color: #333;
        max-width: 200px;
        width: auto;
        min-width: 150px;
        display: inline-block;
        
        &:hover {
            border-color: #62afdb;
        }
                
        option {
            padding: 0.36363636363636em 0.45454545454545em;
            display: block;
            
            &[disabled="disabled"] {
                color: #aaa;
            }
        }
    }
    
    .middle-buttons {
        display: inline-block;
        width: 4.5em;
        margin-left: 0.8em;
        margin-right: 0.8em;
        vertical-align: middle;
        
        button {
            
            &:first-child {
                margin-bottom: 0.5em;
            }
            
            &.disabled span {
                opacity: 0.4;
                filter: alpha(opacity=40);
            }
            
            span {
                margin-right: 0;
            }
        }
    }
}

.breadcrumb {
    
    background: none;
    margin: 5px 0 0 0;
    padding: 0;
    
    li {
        
        a {
            font-size: 1.1em;
        }
    }
    
    > li + li:before {
        content: "» ";
    }
}