﻿/* ----- Global styles */

    html, body {
        margin: 0px;
        padding: 0px;
    }

    body {
        background: #FFFFFF;
        font-family: "Open Sans", sans-serif;
        font-size: 13px;
        color: #333;
    }

    footer {
        position: fixed;
        height: 25px;
        left: 0px;
        right: 0px;
        bottom: 0px;
        text-align: center;
    }

/* Content styles */

    pre {
        padding: 0px;
        margin: 0px;
        font-family: "Open Sans", sans-serif;
        font-size: 13px;
        color: #333;
    }

    h1 {
        font-family: "Open Sans", sans-serif;
        margin: 0px 0px 10px 0px;
        padding: 0px;
    }

    h2 {
        font-family: "Open Sans", sans-serif;
        margin: 0px 0px 12px 0px;
        padding: 0px;
        font-size: 1.5em;
        line-height: 1.8;
        border-bottom: 1px solid #777777;
        font-weight: bold;
    }

    .small-font {
        font-size: 11px;
    }

/* Nav styles */

    .horizontal-nav, .vertical-nav {
        list-style-type: none;
        padding: 0px;
        margin: 0px;
    }

    .horizontal-nav li {
        float: left;
    }

/* Button styles */

    button, input[type=submit], input[type=button], .button {
        font-family: "Open Sans", sans-serif;
        padding: 8px 20px 8px 20px;
        background-color: #ffffff;
        border: 1px solid #CCCCCC;
        color: #5A5A5A;
        font-weight: bold;
        border-radius: 3px;
        cursor: pointer;
    }

    .main-button {
        background-color: #435A67 !important;
        border: 1px solid #435A67 !important;
        color: #ffffff !important;
    }

    .hidden-button {
        background-color: #ffffff !important;
        border: 1px solid #ffffff !important;
        color: #5A5A5A !important;
    }

    .sub-button {
        background-color: #E7E7E7 !important;
        border: 1px solid #E7E7E7 !important;
        color: #929292 !important;
    }

    .header-button {
        font-size: 13px !important;
        font-weight: bold !important;
    }

    .label-button {
        line-height: 36px;
    }

/* Input styles */

    .textarea, input[type=text], input[type=password] {
        font-family: "Open Sans", sans-serif;
        width: 100%;
        padding: 8px;
        border-radius: 3px;
        border: 1px solid #CCCCCC;
        resize: none;
    }

    input[type=text].medium {
        width: 200px;
        font-size: 13px;
    }

    .textarea.medium {
        height: 100px;
        resize: none;
    }

    .textarea.tall {
        height: 300px;
        resize: none;
    }

    .textarea.large {
        width: 400px;
        font-size: 13px;
    }

    input[type=text].large {
        width: 400px;
        font-size: 13px;
    }

    input[type=text].date-picker {
        width: 100px;
        font-size: 13px;
    }

    select {
        width: 250px;
        font-family: "Open Sans", sans-serif;
        padding: 8px;
        border-radius: 3px;
        border: 1px solid #CCCCCC;
    }

    select.small {
        width: 85px;
        font-size: 13px;
    }

    select.multiselect {
        height: 100px;
    }

/* Link styles*/

    a, .link {
        color: #D63036;
        text-decoration: none;
        cursor: pointer;
    }

    a:hover, .link:hover {
        text-decoration: underline;
    }

    .nonselectable {
        cursor: default;
    }

    .selectable {
        cursor: pointer;
    }

    .non-highlighting {
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

/* Positioning styles */

    .full {
        width: 100% !important;
    }

    .half {
        width: 50% !important;
    }

    .left {
        position: relative;
        float: left;
    }

    .right {
        position: relative;
        float: right;
    }

    .middle {
        position: relative;
        margin: 0px auto;
    }

    .clear {
        clear: both;
    }

    .top {
        vertical-align: top;
    }

    .centered {
        text-align: center;
    }

    .left-aligned {
        text-align: left;
    }

    .right-aligned {
        text-align: right;
    }

    .force-wrap {
        overflow-wrap: break-word;
    }

/* Spacing styles */

    .small-top-spacer {
        margin-top: 5px !important;
    }

    .top-spacer {
        margin-top: 10px !important;
    }

    .bottom-spacer {
        margin-bottom: 10px;
    }

    .small-bottom-spacer {
        margin-bottom: 5px;
    }

    .small-left-spacer {
        margin-left: 5px;
    }

    .small-right-spacer {
        margin-right: 5px;
    }

    .right-spacer {
        margin-right: 10px;
    }

    .large-right-spacer {
        margin-right: 20px;
    }

/* Table styles */

    table {
        border-collapse: collapse;
        margin: 0px;
    }

    .table {
        display: table;
        margin: 0px;
    }

    .table.auto {
        width: auto;
    }

    .table .row {
        display: table-row;
    }

    .table .cell {
        display: table-cell;
    }

    td.large-top-spacer, .cell.large-top-spacer {
        padding-top: 30px;
    }

    td.large-bottom-spacer, .cell.large-bottom-spacer {
        padding-bottom: 30px;
    }

    td.large-right-spacer, .cell.large-right-spacer {
        padding-right: 30px;
    }

    td.small-top-spacer, .cell.small-top-spacer {
        padding-top: 2px;
    }

    td.small-bottom-spacer, .cell.small-bottom-spacer {
        padding-bottom: 5px;
    }

    td.small-right-spacer, .cell.small-right-spacer {
        padding-right: 5px;
    }

    td.left-spacer, .cell.small-left-spacer {
        padding-left: 10px;
    }

    td.top-spacer, .cell.top-spacer {
        padding-top: 8px;
    }

    td.bottom-spacer, .cell.bottom-spacer {
        padding-bottom: 8px;
    }

    td.left-spacer, .cell.left-spacer {
        padding-left: 20px;
    }

    td.right-spacer, .cell.right-spacer {
        padding-right: 20px;
    }
    td.spacer, .cell.spacer {
        padding-bottom: 8px;
    }

/* Form styles */

    .form .label {
        display: block;
        text-align: left;
        font-family: "Open Sans", sans-serif;
        font-size: 13px;
        color: #333;
        font-weight: bold;
        margin-bottom: 5px;
        padding: 0px;
        line-height: 25px;
    }

    .form .input {
        padding-right: 18px;
    }

    #code-container {
        padding-right: 3px;
    }

    #code-nav-container {
        padding-top: 10px;
    }
    
    #code-input-container.fullscreen {
        position: fixed;
        top: 0px;
        bottom: 0px;
        right: 0px;
        left: 0px;
        z-index: 999;
        background-color: #ffffff;
    }

    #code-input-container.fullscreen #code-container {
        position: absolute;
        top: 0px;
        bottom: 200px;
        right: 0px;
        left: 0px;
        padding: 10px 12px 0px 10px;
    }
    
    #code-input-container.fullscreen #code-nav-container {
        position: absolute;
        height: 180px;
        bottom: 0px;
        right: 0px;
        left: 0px;
        padding: 10px;
    }

    #code-input-container.fullscreen #code-editor {
        height: 100%;
    }

    #code-input-container.fullscreen #compile-successful, #code-input-container.fullscreen #compile-failed {
        height: 105px;
        overflow: auto;
    }

    .form.spacer, .form .spacer {
        margin-bottom: 10px;
    }

    .form.main {
        width: 600px;
        margin: 0px auto;
        margin-top: 100px;
    }

/* Validation styles */

    .client-notification {
        margin: 15px 0px 15px 0px;
        padding: 10px;
        background-color: rgba(255,0,0,0.75);
        color: #ffffff;
        font-weight: bold;
    }

    .field-validation-error, .error-code {
        font-weight: bold;
        color: #ff0000;
    }

    .error-code {
        margin-bottom: 15px;
    }

    .success-code {
        font-weight: bold;
        color: #458B00;
        margin-bottom: 15px;
    }

    .warning-code {
        font-weight: bold;
        color: #b38603;
        margin-bottom: 15px;
    }

/* Modal styles */

    #modal-overlay {
        position: fixed;
        top: 0px;
        bottom: 0px;
        left: 0px;
        right: 0px;
        background-color: rgba(0,0,0,0.8);
        z-index: 1100;
        overflow: auto;
        display: none;
    }

    #modal-overlay > div {
        position: relative;
        max-width: 450px;
        margin: 0 auto;
        top: 60px;
        padding: 15px;
        margin-bottom: 20px;
        border-radius: 3px;
        background: #ffffff;
    }

/* Weird datepicker fixing */

        .dropdown-menu {
            font-size: 13px !important;
        }

        .datepicker-inline {
            width: auto !important;
        }