@border: #bbb;
@highlight: #ff0;


* {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.ruFileWrap .ruBrowse, .RadComboBox .rcbInput {
    box-sizing: content-box;
}

.rcbActionButton .t-font-icon {
    vertical-align: top;
}

.RadComboBox .rcbInput {
    padding: 0 !important;
}

article, aside, details, dialog, figcaption, figure, footer, header, hgroup, main, meter, nav, section, summary {
    display: block;
}

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

output {
    display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden] {
    display: none;
}

html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
}

a, a:active, a:hover {
    outline: 0;
    color: inherit;
}

a:visited {
    color: inherit;
}

a:focus {
    outline: dashed 1px @border;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    font-weight: 400;
}

h1 {
    font-size: 2em;
}

h2 {
    font-size: 1.5em;
}

h3 {
    font-size: 1.2em;
}

h4 {
    font-size: 1.1em;
}

h5, h6 {
    font-size: 1em;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b, strong {
    font-weight: bold;
}

blockquote {
    margin: 0 1em;
}

dfn {
    font-style: italic;
}

mark {
    background: @highlight;
    color: inherit;
}

p, pre {
    margin: 0 0 .5em 0;
}

code, kbd, pre, samp {
    font-family: monospace,serif;
    _font-family: 'courier new',monospace;
    font-size: 1em;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

q {
    quotes: none;
}

q:before, q:after {
    content: '';
    content: none;
}

small {
    font-size: 75%;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

dl, menu, ol, ul {
    margin: 0;
}

dd {
    margin: 0 0 0 1em;
}

menu, ol, ul {
    padding: 0 0 0 1em;
}

nav ul, nav ol {
    list-style: none;
    list-style-image: none;
}

img {
    border: 0;
    max-width: 100%;
    -ms-interpolation-mode: bicubic;
}

td img{
    max-width:none; //fallback para não restringir tamanho máximo de imagens dentro de table.
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 0;
}

form {
    margin: 0;
}

fieldset {
    border: 1px solid @border;
    margin: 0;
    padding: .5em;
}

legend {
    font-size: 1.1em;
    border: 0;
    padding: 0 .2em;
    white-space: normal;
    *margin-left: -7px;
}

button, input, select, textarea {
    font-family:inherit;
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
    *vertical-align: middle;
}

button, input {
    line-height: normal;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
    *overflow: visible;
}

button[disabled], input[disabled] {
    cursor: default;
}

input[type="checkbox"], input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
    margin-left: 2px;
    margin-right: 2px;
    *height: 13px;
    *width: 13px;
    vertical-align: sub;
    *vertical-align: middle;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    empty-cells:show;
    table-layout:auto;
}

th {
    font-weight: 600;
}

.ir {
    text-indent: 100%;
    text-wrap: none;
    white-space: nowrap;
    overflow: hidden;
    min-width: 0;
    min-height: 0;
}

.clear:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}

.clear {
    display: inline-block;
}

input[type=checkbox] + label[for], input[type=radio] + label[for] {
    margin-left: 0.2em;
}

span.checkbox label + input {
    margin-left: 1.5em;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,.80);
}


.loading {
    pointer-events: none;

    @-moz-keyframes loading-anim-body {
        0%, 60% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }

    @-webkit-keyframes loading-anim-body {
        0%, 60% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }

    @keyframes loading-anim-body {
        0%, 60% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }

    &:after {
        -moz-animation: loading-anim-body 2s ease-in-out forwards;
        -o-animation: loading-anim-body 2s ease-in-out forwards;
        -webkit-animation: loading-anim-body 2s ease-in-out forwards;
        animation: loading-anim-body 2s ease-in-out forwards;
    }

    &, &:after {
        cursor: wait;
    }

    &:after {
        pointer-events: auto;
    }
}

body {
    .loading {
        position: relative;

        @-moz-keyframes loading-anim {
            0%, 60% {
                opacity: 0;
            }

            100% {
                opacity: .4;
            }
        }

        @-webkit-keyframes loading-anim {
            0%, 60% {
                opacity: 0;
            }

            100% {
                opacity: .4;
            }
        }

        @keyframes loading-anim {
            0%, 60% {
                opacity: 0;
            }

            100% {
                opacity: .4;
            }
        }

        &:after {
            -moz-animation: loading-anim 2s ease-in-out forwards;
            -o-animation: loading-anim 2s ease-in-out forwards;
            -webkit-animation: loading-anim 2s ease-in-out forwards;
            animation: loading-anim 2s ease-in-out forwards;
        }

        &:after {
            margin: -.2em;
        }
    }

    &.loading:after {
        position: fixed;
        max-width: 100%;
        max-height: 100%;
        max-width: 100vw;
        max-height: 100vh;
    }
}

.loading:after {
    content: "";
    cursor: wait;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,.7) url("data:image/gif;base64, ") no-repeat center center;
}

.break-word {
    -ms-word-break: break-all;
    word-break: break-all;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.clear(@display: inline-block) {
    display: @display;

    &:after {
        visibility: hidden;
        display: block;
        font-size: 0;
        content: " ";
        clear: both;
        height: 0;
    }
}

.ir() {
    text-indent: 100%;
    text-wrap: none;
    white-space: nowrap;
    overflow: hidden;
}


.config {
    &, fieldset {
        > div, label {
            > span:first-child {
                margin: .2em 0;
            }

            input[type=password], input[type=text], input[type=number], input[type=time], input[type=date], select, input[type=submit], input:not([type]), textarea {
                padding: .3em;
            }
        }
    }
}

/*evita quebra de coluna ou pagina no elemento*/
.no-break {
    -webkit-column-break-inside: avoid;
    column-break-inside: avoid;
    page-break-inside: avoid;
    -webkit-break-inside: avoid;
    break-inside: avoid;
}

.fields {
    &:not(.no-columns) {
        column-width: 25em;
        column-gap: 2em;
        /*column-rule: solid 1px @theme-color;*/
    }

    textarea {
        font-family: inherit;
        min-height: 6em;
    }

    > .checkbox {
        display: block;
        margin: 0 0 1em 0;
    }

    > fieldset {
        .no-break;
    }

    &, > fieldset, > div {

        > label {
            .no-break;
        }

        > label, > div {
            display: block;
            margin: 0 0 1em 0;
            position: relative;

            > span:first-child {
                color: @theme-color;
                margin: .2em 0;
            }

            > span:first-child, > input[type=text], > input[type=password], input:not([type]), > select, > input[type=submit], > textarea, > .RadComboBox {
                display: block;
                width: 100%;
            }

            input[type=password], input[type=text], input[type=number], input[type=time], input[type=date], select, input[type=submit], input:not([type]), textarea {
                padding: .3em;
            }

            > .checkbox {
                display: block;
                margin: .5em 0;
            }
        }

        div.RadPicker div {
            margin: 0;

            input {
                padding: .1em;
            }
        }

        > input[type=submit] {
            display: block;
            width: 100%;
            padding: .3em;
        }
    }
}

.controls {
    margin: 0 0 .2em 0;

    > label, > div {
        margin: 0 0 .2em 0;
    }
}

.actions {
    display: block;
    text-align: center;
    padding: .5em;
    -webkit-column-span: all;
    column-span: all;

    input, button {
        margin: .5em .2em;
    }
}

img.user, .user img {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAQAAACQEyoRAAAAoklEQVR4Ae3WuQ0DMAxDUY6RWVxqCbfZfwmnSmd8EGbuCOqfb5la12fV79Jz1aamTQM71mVTY82Ennv2jvPcZcBUBXQE07YAXQaMuKI546aI59x00003/X467Xxv6NfBvOvkb6xkzjld7/rRg3nDdqR05ekpof15+6lPnE8583Fi1QFqDiAj9B4OoIO5mrFY0Vxx/gpZuD0KWcAVAlBNv46+AR5dvGwF+g/lAAAAAElFTkSuQmCC);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    background-color: @theme-color;
    max-width: 3.5em;
    max-width: 3.5rem;
    max-height: 3.5em;
    max-height: 3.5rem;
}

.user {
    color: @theme-color;
}

.edit-buttons() {
    a.edit-item {
        background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAQAAACR313BAAAAqElEQVR4AWNABzEW0Y+jL0Y7gdiYkizRF2P+x/yP/h2jhU3aKnpm9O/o/0BogynJF/085nxMTsxhIMSitx2s72/04hgZTEmF6O9AW4EwZjEWe6NXAqVA8Cs2vVYgF4Nd3YgpyRR9Eir5NIYH0+AIsLEgBQnY/NsZXRHzGSh5NpoJU5InOgdIysQcjbHDptckxgxMlmAPaa8YvWiHmKwYBuzSdsBAxBpHAOsbUDqNSb6gAAAAAElFTkSuQmCC);
        background-repeat: no-repeat;
        background-position-x: center;
        background-position-y: center;
        background-repeat: no-repeat;
        width: 10px;
        text-decoration: none;
    }

    a.remove-item {
        background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAQAAACR313BAAAAsUlEQVR4AV1PZVoFMRCbi+F6AyTB9VC43guXv9gDKtv5Nms1i0xjZpjEPZat17BcvY1XB07yE4mB6y3IdQQkfnLS8IzkvSFws4Den+sLkxwE+n2zsPcbdsBx57yrWoeUIgnkvkMiSFUrBarxkqnp5x1Av+3ASiGwX5vFXgSuM9AfGXDL0HPgaudh31Po/odlw7OUigKPyarj0TjL7wJ2o3DfHb45Wy6LeMfmMAnfOW+WAfd3uEhFfBL7AAAAAElFTkSuQmCC);
        background-repeat: no-repeat;
        background-position-x: center;
        background-position-y: center;
        background-repeat: no-repeat;
        width: 10px;
        text-decoration: none;
    }

    a.config-item {
        background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAQAAACR313BAAAAw0lEQVR4AW2QJUzHURCAL1HQnoj0gjSkF5z7cPro6Ot99ETB6aPgWtC+oQUt2PvfLrztJ3ty8u1UdE9fSs+TIiL6RdSYef7bCY5dLZ4HehImB7nTDpZoSNFZSIs+mHaQi8YhXQyxTGQ1H+3QIn8YY5oq4YuYjkMeXFvVGpEMVo90bZ0Bnc10zh9NuuMl1nVAfwgp2vEJU3RxhUXyQ8xgO4E9LmjEoAeE7FLb6GBMtzGojrPRD/wlPUVf8KZvmee/nTGRCi87AvsmJtglAAAAAElFTkSuQmCC);
        background-repeat: no-repeat;
        background-position-x: center;
        background-position-y: center;
        background-repeat: no-repeat;
        width: 10px;
        text-decoration: none;
    }

    a.clear-item {
        background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAAAAAAevcqWAAAAAnRSTlMAAHaTzTgAAAB8SURBVHgBnY8bAMQwDIbj7j4cRn8MFqfF4rBaPJzbcFg8LZ5TNFgc7v3w+/pKmjcdVFWt9DIKZJpPedY8dG3TdkPW/Uu5uXG26eZEcOJ3nTRPJ/lQqez2fbvfoX/RByT4gHLpnyijxPSnXhA8R/ggZ35LYN53snu6g2PCFYMxTq5Bjq1xAAAAAElFTkSuQmCC);
        background-repeat: no-repeat;
        background-position-x: center;
        background-position-y: center;
        background-repeat: no-repeat;
        width: 10px;
        text-decoration: none;
    }

    a.add-item {
        background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAQAAACR313BAAABBElEQVR4AXVRJVSmURCd3aV3tCAdpxfcnXsP/RykIJH2N1wTFVjc6UjD3d2lIfHxvuHD4U4ZlzvyAv5FGvpwggecYQg5+CvvgB9nYLjFNnjQxjUazCHoLYgj3DCLbgWFCTjDBUK0Lad4o6rQB1HUKgbghAv0EqbAIMetq4Rhj6vHWZ3CTh5oWw3zPSxc4oRgj+1OW5azHGMwWFItTIQ1uBPeoU4EMTQfBcUiqOKTrYZTHYI+9mGFBme0GhNsuIY3gv/4ZTYWMCFMomHOD+E4qxe6d1PvZgRKkfDxbqsiAEf8ytoJr6AlmsAZOpy30MMmh3PO2eA7+JcZ7LM19mMcYR68RPEMBRuR6nDLG7cAAAAASUVORK5CYII=);
        background-repeat: no-repeat;
        background-position-x: center;
        background-position-y: center;
        background-repeat: no-repeat;
        width: 10px;
        text-decoration: none;
    }
}
